From f56365d6e06288f98e45045809944d585a684edf Mon Sep 17 00:00:00 2001 From: Dmitrii Suchkov Date: Fri, 26 Sep 2025 14:10:09 +0100 Subject: [PATCH] Restrict IP addresses for an assignment see https://bugtracker.codiodev.com/issue/codio-16691 --- package.json | 2 +- src/lib/assignment.ts | 14 ++++++++++++-- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index cc57977..bb40f76 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "codio-api-js", - "version": "0.15.0", + "version": "0.15.3", "description": "JS client to Codio API", "repository": "https://github.com/codio/codio-api-js", "author": "Max Kraev ", diff --git a/src/lib/assignment.ts b/src/lib/assignment.ts index 2d61806..9b34ad6 100644 --- a/src/lib/assignment.ts +++ b/src/lib/assignment.ts @@ -54,6 +54,10 @@ export type AssignmentSettings = { forwardOnlyNavigation: boolean singleLogin: boolean authentication: boolean + restrictedIPRange?: { + enabled: boolean + range: string + } }, releaseGrades?: boolean, isDisabled?: boolean @@ -79,6 +83,10 @@ type AssignmentSettingsRaw = { forwardOnlyNavigation: boolean singleLogin: boolean authentication: boolean + restrictedIPRange?: { + enabled: boolean + range: string + } }, releaseGrades?: boolean, isDisabled?: boolean @@ -311,7 +319,8 @@ function fromRawSettings(res: AssignmentSettingsRaw): AssignmentSettings { shuffleQuestionsOrder: res.examMode?.shuffleQuestionsOrder, forwardOnlyNavigation: res.examMode?.forwardOnlyNavigation, singleLogin: res.examMode?.singleLogin, - authentication: res.examMode?.authentication + authentication: res.examMode?.authentication, + restrictedIPRange: res.examMode?.restrictedIPRange, } : undefined, releaseGrades: res.releaseGrades, isDisabled: res.isDisabled, @@ -390,7 +399,8 @@ function toRawSettings(settings: AssignmentSettings): AssignmentSettingsRaw { shuffleQuestionsOrder: settings.examMode.shuffleQuestionsOrder, forwardOnlyNavigation: settings.examMode.forwardOnlyNavigation, singleLogin: settings.examMode.singleLogin, - authentication: settings.examMode.authentication + authentication: settings.examMode.authentication, + restrictedIPRange: settings.examMode.restrictedIPRange } } if (settings.releaseGrades !== undefined) {