@kth/om-kursen-ladok-client 1.3.1 → 1.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/createApiClient.js +43 -42
  2. package/dist/createApiClient.js.map +1 -1
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +3 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/mapCourseRound.d.ts +1 -0
  7. package/dist/mapCourseRound.js +2 -1
  8. package/dist/mapCourseRound.js.map +1 -1
  9. package/dist/mapProgramInstans.d.ts +3 -4
  10. package/dist/mapProgramInstans.js +4 -37
  11. package/dist/mapProgramInstans.js.map +1 -1
  12. package/dist/utils/filterCourseRoundUtils.d.ts +7 -0
  13. package/dist/utils/filterCourseRoundUtils.js +20 -0
  14. package/dist/utils/filterCourseRoundUtils.js.map +1 -0
  15. package/dist/utils/gradingScalesUtils.js +1 -1
  16. package/dist/utils/gradingScalesUtils.js.map +1 -1
  17. package/dist/utils/index.d.ts +1 -0
  18. package/dist/utils/index.js +1 -0
  19. package/dist/utils/index.js.map +1 -1
  20. package/dist/utils/partOfProgrammeUtil.js +3 -8
  21. package/dist/utils/partOfProgrammeUtil.js.map +1 -1
  22. package/dist/utils/periodUtil.d.ts +1 -0
  23. package/dist/utils/periodUtil.js +5 -1
  24. package/dist/utils/periodUtil.js.map +1 -1
  25. package/dist/utils/programStrukturUtil.js +1 -1
  26. package/dist/utils/programStrukturUtil.js.map +1 -1
  27. package/dist/utils/programUtil.d.ts +14 -0
  28. package/dist/utils/programUtil.js +146 -0
  29. package/dist/utils/programUtil.js.map +1 -0
  30. package/dist/utils/studyYearUtil.d.ts +1 -0
  31. package/dist/utils/studyYearUtil.js +25 -4
  32. package/dist/utils/studyYearUtil.js.map +1 -1
  33. package/dist/utils/typeChecking.d.ts +1 -0
  34. package/dist/utils/typeChecking.js +8 -0
  35. package/dist/utils/typeChecking.js.map +1 -0
  36. package/package.json +3 -3
@@ -20,12 +20,11 @@ const mapUtbildningsplan_1 = require("./mapUtbildningsplan");
20
20
  const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
21
21
  const examinationModulesUtil_1 = require("./utils/examinationModulesUtil");
22
22
  const programStrukturUtil_1 = require("./utils/programStrukturUtil");
23
- const mapProgramTillfalle_1 = require("./mapProgramTillfalle");
24
23
  const courseSyllabusUtil_1 = require("./utils/courseSyllabusUtil");
25
24
  const mapCourseSyllabus_1 = require("./mapCourseSyllabus");
26
25
  const gradingScalesUtils_1 = require("./utils/gradingScalesUtils");
27
- const mapProgramInstans_1 = require("./mapProgramInstans");
28
26
  const partOfProgrammeUtil_1 = require("./utils/partOfProgrammeUtil");
27
+ const programUtil_1 = require("./utils/programUtil");
29
28
  const mergeApiResponses = (a, b, uniqueItemKey) => {
30
29
  var _a, _b, _c, _d, _e, _f, _g, _h;
31
30
  if (a.type === 'error')
@@ -61,36 +60,33 @@ const filterAndMapCourseRounds = (response, language, partOfProgrammes) => {
61
60
  return response.items
62
61
  .map(x => (0, mapCourseRound_1.mapCourseRound)(x, language, partOfProgrammes === null || partOfProgrammes === void 0 ? void 0 : partOfProgrammes[x.tillfalle_uid]))
63
62
  .filter(x => x !== undefined)
64
- .filter(x => { var _a; return !((_a = x.tillfalleskod) === null || _a === void 0 ? void 0 : _a.startsWith('OM')); } // TODO: "om-tillfällen" shouldn't be displayed on "Om kursen" - I've asked Sussane if we chould have solution an other solution than the tillfälleskod for this.
65
- );
63
+ .filter(utils_1.removeCourseRoundsBasedOnTillfalleskod)
64
+ .filter(utils_1.removeCourseRoundsBasedOnFinansieringsform);
66
65
  };
67
- const filterAndMapProgramTillfalle = (response, language) => {
68
- if (response.type === 'error') {
69
- throw new Error(`API error: ${response.responseInfo.message}`);
70
- }
71
- return response.items
72
- .map(x => (0, mapProgramTillfalle_1.mapProgramTillfalle)(x, language))
73
- .filter(x => x !== undefined)
74
- .filter(x => { var _a; return (_a = x.lokalmarkning) === null || _a === void 0 ? void 0 : _a.some(attr => attr.markningsnyckel.code === 'KURSLISTA' && attr.markningsvarde.code === 'JA'); });
66
+ const filterAndMapEducationalTypes = (utbildningsniva, utbildningstyp) => {
67
+ var _a, _b;
68
+ if (!utbildningsniva || !utbildningstyp)
69
+ return [];
70
+ const ladokTypes = (_b = (_a = utbildningstyp === null || utbildningstyp === void 0 ? void 0 : utbildningstyp.data) === null || _a === void 0 ? void 0 : _a.Utbildningstyp) !== null && _b !== void 0 ? _b : [];
71
+ const preparatoryTypes = [ladok_attributvarde_utils_1.EDUCATIONAL_TYPE_CODE_FOR_PREPARATORY_LEVEL]; // Hard coded
72
+ const basicTypes = ladokTypes
73
+ .filter(typ => String(typ.NivaInomStudieordningID) === ladok_attributvarde_utils_1.EducationalLevelCode.Basic)
74
+ .map(x => x.Kod);
75
+ const advancedTypes = ladokTypes
76
+ .filter(typ => String(typ.NivaInomStudieordningID) === ladok_attributvarde_utils_1.EducationalLevelCode.Advanced)
77
+ .map(x => x.Kod);
78
+ const researchTypes = ladokTypes
79
+ .filter(typ => String(typ.NivaInomStudieordningID) === ladok_attributvarde_utils_1.EducationalLevelCode.Research)
80
+ .map(x => x.Kod);
81
+ const levelMap = new Map([
82
+ [ladok_attributvarde_utils_1.EducationalLevelCode.Preparatory, preparatoryTypes],
83
+ [ladok_attributvarde_utils_1.EducationalLevelCode.Basic, basicTypes],
84
+ [ladok_attributvarde_utils_1.EducationalLevelCode.Advanced, advancedTypes],
85
+ [ladok_attributvarde_utils_1.EducationalLevelCode.Research, researchTypes],
86
+ ]);
87
+ return utbildningsniva === null || utbildningsniva === void 0 ? void 0 : utbildningsniva.flatMap(level => levelMap.get(level) || []);
75
88
  };
76
- const filterAndMapProgramInstans = (response, periods, code, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
77
- if (response.type === 'error') {
78
- throw new Error(`API error in filterAndMapProgramInstans: ${response.responseInfo.message}`);
79
- }
80
- const mappedPrograms = [];
81
- for (const item of response.items) {
82
- const mapped = yield (0, mapProgramInstans_1.mapProgramInstans)(item, language, ladokClient);
83
- if (mapped)
84
- mappedPrograms.push(mapped);
85
- }
86
- if (code) {
87
- return (0, utils_1.findValidProgramForCode)(code, periods, mappedPrograms);
88
- }
89
- else {
90
- const sortedPrograms = mappedPrograms.sort((a, b) => { var _a, _b; return ((_a = Number(b.versionsnummer)) !== null && _a !== void 0 ? _a : 0) - ((_b = Number(a.versionsnummer)) !== null && _b !== void 0 ? _b : 0); });
91
- return sortedPrograms[0];
92
- }
93
- });
89
+ const ATTRIBUT_VARDEN_FOR_COURSE_ROUNDS = 'utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser, utbildning.lokalt.attribut.29.fullsatt';
94
90
  const createApiClient = (config) => {
95
91
  const ladokClient = (0, ladok_mellanlager_client_1.createClient)(config);
96
92
  return {
@@ -124,6 +120,11 @@ const createApiClient = (config) => {
124
120
  if (kodEllerBenamning && kodEllerBenamning.length < 3) {
125
121
  return { errorCode: 'errorKodEllerBenamning' };
126
122
  }
123
+ const utbildningstyp = yield ladokClient.utbildningstyp(); // TODO: Use cached values
124
+ if (utbildningstyp.type === 'error' || !(utbildningstyp === null || utbildningstyp === void 0 ? void 0 : utbildningstyp.data)) {
125
+ return { errorCode: `Failed to fetch valid utbildningstyp data: ${utbildningstyp.responseInfo}` };
126
+ }
127
+ const educationalTypes = filterAndMapEducationalTypes(utbildningsniva, utbildningstyp);
127
128
  let continuationToken = undefined;
128
129
  let allCourses = [];
129
130
  const MAX_ITERATIONS = 4;
@@ -132,7 +133,7 @@ const createApiClient = (config) => {
132
133
  if (iterationCount >= MAX_ITERATIONS) {
133
134
  return { errorCode: 'search-error-overflow' };
134
135
  }
135
- const requestQuery = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (kodEllerBenamning ? { kodEllerBenamning } : { kodEllerBenamning: '*' })), (!startPeriod && { terminkodStart: defaultPeriod })), (startPeriod && { startPeriod: startPeriod[0] })), (utbildningsniva && { utbildningsniva: utbildningsniva[0] })), (organisation && { organisation })), (sprak && { sprak })), (avvecklad && { avvecklad })), (continuationToken !== null && continuationToken !== undefined && { continuationToken })), { attributVarden: 'utbildningstyp,utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser,utbildning.attribut.organisation,utbildning.attribut.startperiod', instansAttributVarden: 'utbildningstyp,', antalTraffar: '100' });
136
+ const requestQuery = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, (kodEllerBenamning ? { kodEllerBenamning } : { kodEllerBenamning: '*' })), (!startPeriod && { terminkodStart: defaultPeriod })), (startPeriod && { startPeriod: startPeriod.join(',') })), (educationalTypes && { utbildningsniva: educationalTypes.join(',') })), (organisation && { organisation })), (sprak && { sprak })), (avvecklad && { avvecklad })), (continuationToken !== null && continuationToken !== undefined && { continuationToken })), { attributVarden: 'utbildningstyp,utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser,utbildning.attribut.organisation,utbildning.attribut.startperiod', instansAttributVarden: 'utbildningstyp,', antalTraffar: '100' });
136
137
  const requestHeader = Object.assign({}, (continuationToken !== null && continuationToken !== undefined && { continuationToken }));
137
138
  const result = yield ladokClient.sokKursTillfalleSlim(requestQuery, requestHeader);
138
139
  if (typeof result === 'string') {
@@ -166,7 +167,7 @@ const createApiClient = (config) => {
166
167
  kodEllerBenamning: courseCode,
167
168
  pagaendeDatum: currentDate,
168
169
  striktKod: 'true',
169
- attributVarden: 'utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser',
170
+ attributVarden: ATTRIBUT_VARDEN_FOR_COURSE_ROUNDS,
170
171
  instansAttributVarden: 'utbildningstyp,',
171
172
  });
172
173
  return filterAndMapCourseRounds(result, language);
@@ -176,7 +177,7 @@ const createApiClient = (config) => {
176
177
  const requestObject = {
177
178
  kodEllerBenamning: courseCode,
178
179
  striktKod: 'true',
179
- attributVarden: 'utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser',
180
+ attributVarden: ATTRIBUT_VARDEN_FOR_COURSE_ROUNDS,
180
181
  instansAttributVarden: 'utbildningstyp,',
181
182
  };
182
183
  const [resultPagaendeDatum, resultTerminsKodStart] = yield Promise.all([
@@ -187,7 +188,7 @@ const createApiClient = (config) => {
187
188
  if (!resultActiveAndFutureRounds.items) {
188
189
  return filterAndMapCourseRounds(resultActiveAndFutureRounds, language);
189
190
  }
190
- const periods = yield ladokClient.period();
191
+ const periods = yield ladokClient.period(); // TODO: Use cached values
191
192
  if (periods.type !== 'success') {
192
193
  throw new Error(`API call failed: ${periods.responseInfo.apiError || 'Unknown error'}`);
193
194
  }
@@ -202,7 +203,7 @@ const createApiClient = (config) => {
202
203
  kodEllerBenamning: courseCode,
203
204
  terminkodStart: fromPeriod,
204
205
  striktKod: 'true',
205
- attributVarden: 'utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser',
206
+ attributVarden: ATTRIBUT_VARDEN_FOR_COURSE_ROUNDS,
206
207
  instansAttributVarden: 'utbildningstyp,',
207
208
  });
208
209
  return filterAndMapCourseRounds(result, language);
@@ -212,7 +213,7 @@ const createApiClient = (config) => {
212
213
  kodEllerBenamning: courseCode,
213
214
  startPeriod: startPeriod,
214
215
  striktKod: 'true',
215
- attributVarden: 'utbildning.lokalt.attribut.29.malgrupp.sv,utbildning.lokalt.attribut.29.malgrupp.en,utbildning.lokalt.attribut.29.kortnamn.sv,utbildning.lokalt.attribut.29.kortnamn.en,utbildning.lokalt.attribut.29.urvalskriterier.sv,utbildning.lokalt.attribut.29.urvalskriterier.en,utbildning.attribut.undervisningsform,utbildning.attribut.undervisningstid,utbildning.attribut.undervisningssprak,utbildning.attribut.studieort,utbildning.attribut.finansieringsform,utbildning.attribut.studietakt,status,installt,utbildning.attribut.utbildningstillfalleskod,utbildning.lokalt.attribut.29.minantalplatser,utbildning.attribut.utbildningsplatser',
216
+ attributVarden: ATTRIBUT_VARDEN_FOR_COURSE_ROUNDS,
216
217
  instansAttributVarden: 'utbildningstyp,',
217
218
  });
218
219
  return filterAndMapCourseRounds(result, language);
@@ -253,7 +254,7 @@ const createApiClient = (config) => {
253
254
  instansAttributVarden: 'utbildning.attribut.tilltradesniva',
254
255
  };
255
256
  const response = yield ladokClient.sokProgramTillfalleSlim(requestObject);
256
- const programTillfalleList = filterAndMapProgramTillfalle(response, language);
257
+ const programTillfalleList = (0, programUtil_1.filterAndMapProgramTillfalle)(response, language);
257
258
  return (programTillfalleList === null || programTillfalleList === void 0 ? void 0 : programTillfalleList.length) ? programTillfalleList[0] : undefined;
258
259
  }),
259
260
  getProgramVersion: (programCode, semester, language) => __awaiter(void 0, void 0, void 0, function* () {
@@ -261,18 +262,18 @@ const createApiClient = (config) => {
261
262
  kodEllerBenamning: programCode,
262
263
  striktKod: 'true',
263
264
  typ: 'program',
264
- instansAttributVarden: 'utbildning.attribut.organisation,utbildningstyp,utbildning.attribut.giltig.from,utbildning.attribut.tilltradesniva',
265
+ instansAttributVarden: 'utbildning.attribut.organisation,utbildningstyp,utbildning.attribut.giltig.from,utbildning.attribut.tilltradesniva,utbildning.lokalt.attribut.29.sista.antagningstermin.en',
265
266
  };
266
267
  try {
267
268
  const response = yield ladokClient.sokUtbildningsInstansSlim(requestObject);
268
- const periods = yield ladokClient.period();
269
+ const periods = yield ladokClient.period(); // TODO: Use cached values
269
270
  if (periods.type !== 'success') {
270
271
  throw new Error(`API call failed: ${periods.responseInfo.apiError || 'Unknown error'}`);
271
272
  }
272
273
  if (typeof periods.data !== 'object') {
273
274
  throw new Error('periods.data is not an object.');
274
275
  }
275
- const programInstans = yield filterAndMapProgramInstans(response, periods.data.Period, semester, language, ladokClient);
276
+ const programInstans = yield (0, programUtil_1.filterAndMapProgramInstans)(response, periods.data.Period, semester, language, ladokClient);
276
277
  return { programInstans, statusCode: 200 };
277
278
  }
278
279
  catch (error) {
@@ -298,7 +299,7 @@ const createApiClient = (config) => {
298
299
  throw new Error('result.data is not an object.');
299
300
  }
300
301
  const syllabuses = result.data;
301
- const periods = yield ladokClient.period();
302
+ const periods = yield ladokClient.period(); // TODO: Use cached values
302
303
  const UtbildningsinstansUID = syllabuses[1].instans.Uid;
303
304
  const examinationModules = yield (0, examinationModulesUtil_1.getExaminationModules)(UtbildningsinstansUID, language, ladokClient);
304
305
  if (!examinationModules) {
@@ -339,7 +340,7 @@ const createApiClient = (config) => {
339
340
  throw new Error('result.data is not an object.');
340
341
  }
341
342
  const syllabuses = result.data;
342
- const periods = yield ladokClient.period();
343
+ const periods = yield ladokClient.period(); // TODO: Use cached values
343
344
  if (periods.type !== 'success') {
344
345
  throw new Error(`API call failed: ${periods.responseInfo.apiError || 'Unknown error'}`);
345
346
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createApiClient.js","sourceRoot":"","sources":["../src/createApiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createApiClient.js","sourceRoot":"","sources":["../src/createApiClient.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export * from './createApiClient';
2
+ export { EducationalLevelCode } from '@kth/ladok-attributvarde-utils';
package/dist/index.js CHANGED
@@ -14,5 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.EducationalLevelCode = void 0;
17
18
  __exportStar(require("./createApiClient"), exports);
19
+ var ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
20
+ Object.defineProperty(exports, "EducationalLevelCode", { enumerable: true, get: function () { return ladok_attributvarde_utils_1.EducationalLevelCode; } });
18
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,4EAAqE;AAA5D,iIAAA,oBAAoB,OAAA"}
@@ -54,6 +54,7 @@ export type CourseRound = {
54
54
  finansieringsform?: TranslatedGrunddata;
55
55
  utbildningsplatser?: number;
56
56
  minantalplatser?: number;
57
+ fullsatt?: boolean;
57
58
  delAvProgram?: PartOfProgramme[];
58
59
  admissionLinkUrl?: string;
59
60
  schemaUrl?: string;
@@ -48,8 +48,9 @@ const mapCourseRound = (item, language, partOfProgramme) => {
48
48
  studieort: studieort && (0, utils_1.translateGrunddata)(studieort, language),
49
49
  studietakt: studietakt && (0, utils_1.translateStudietakt)(studietakt, language),
50
50
  finansieringsform: finansieringsform && (0, utils_1.translateGrunddata)(finansieringsform, language),
51
- minantalplatser: (0, ladok_attributvarde_utils_1.extractInteger)(attributeValues, 'utbildning.lokalt.attribut.29.minantalplatser'),
52
51
  utbildningsplatser: (0, ladok_attributvarde_utils_1.extractUtbildningsplatser)(attributeValues),
52
+ minantalplatser: (0, ladok_attributvarde_utils_1.extractInteger)(attributeValues, 'utbildning.lokalt.attribut.29.minantalplatser'),
53
+ fullsatt: (0, ladok_attributvarde_utils_1.extractBoolean)(attributeValues, 'utbildning.lokalt.attribut.29.fullsatt'),
53
54
  delAvProgram: partOfProgramme,
54
55
  };
55
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"mapCourseRound.js","sourceRoot":"","sources":["../src/mapCourseRound.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapCourseRound.js","sourceRoot":"","sources":["../src/mapCourseRound.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { GiltigFromType, LadokStatus, Lokalmarkning } from '@kth/ladok-attributvarde-utils';
2
- import { LadokMellanlagerApiClient, SokUtbildningsInstansItem, SokUtbildningsInstansSlimItem } from '@kth/ladok-mellanlager-client';
2
+ import { SokUtbildningsInstansItem, SokUtbildningsInstansSlimItem } from '@kth/ladok-mellanlager-client';
3
3
  import { Language, TranslatedOrganisation, TranslatedTilltradesniva, TranslatedUtbildningstyp } from './utils';
4
- export declare const getPrgramTerms: (kod: string, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<string[]>;
5
4
  export type ProgramInstans = {
6
5
  uid?: string;
7
6
  status?: LadokStatus;
@@ -21,6 +20,6 @@ export type ProgramInstans = {
21
20
  giltigFrom?: GiltigFromType;
22
21
  utbildningstillfalleskod?: string;
23
22
  versionsnummer: string;
24
- approvedStudyProgrammeTerms: string[];
23
+ sistaAntagningstermin?: string;
25
24
  };
26
- export declare const mapProgramInstans: (item: SokUtbildningsInstansItem | SokUtbildningsInstansSlimItem, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<ProgramInstans>;
25
+ export declare const mapProgramInstans: (item: SokUtbildningsInstansItem | SokUtbildningsInstansSlimItem, language: Language) => ProgramInstans;
@@ -1,43 +1,10 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.mapProgramInstans = exports.getPrgramTerms = void 0;
3
+ exports.mapProgramInstans = void 0;
13
4
  const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
14
5
  const utils_1 = require("./utils");
15
6
  const creditsUtil_1 = require("./utils/creditsUtil");
16
- const mapProgramTerm_1 = require("./mapProgramTerm");
17
- const getPrgramTerms = (kod, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
18
- const requestObject = {
19
- kodEllerBenamning: kod,
20
- baraSistaVersion: 'false',
21
- striktKod: 'true',
22
- terminKodStart: 'HT2020',
23
- attributVarden: 'status,utbildning.attribut.lokalmarkning',
24
- };
25
- const response = yield ladokClient.sokProgramTillfalleSlim(requestObject);
26
- if (response === null || response === void 0 ? void 0 : response.items) {
27
- const programTerms = response.items
28
- .map(x => (0, mapProgramTerm_1.mapProgramTerm)(x, language))
29
- .filter(x => x !== undefined)
30
- .filter(x => { var _a; return (_a = x.lokalmarkning) === null || _a === void 0 ? void 0 : _a.some(attr => attr.markningsnyckel.code === 'KURSLISTA' && attr.markningsvarde.code === 'JA'); });
31
- const finalProgramTerms = programTerms
32
- .map(term => (0, utils_1.transformPeriodInDigits)(term.startPeriod))
33
- .filter((period) => typeof period === 'string');
34
- return finalProgramTerms;
35
- }
36
- else
37
- return [];
38
- });
39
- exports.getPrgramTerms = getPrgramTerms;
40
- const mapProgramInstans = (item, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
7
+ const mapProgramInstans = (item, language) => {
41
8
  const attributeValues = item.Attributvarden;
42
9
  const benamning = {
43
10
  sv: item.index['utbildning.attribut.svensk.benamning'],
@@ -65,8 +32,8 @@ const mapProgramInstans = (item, language, ladokClient) => __awaiter(void 0, voi
65
32
  kod: item.index['utbildning.attribut.kod'],
66
33
  giltigFrom: (0, ladok_attributvarde_utils_1.extractGiltigFrom)(attributeValues),
67
34
  versionsnummer: item.index['versionsnummer'],
68
- approvedStudyProgrammeTerms: yield (0, exports.getPrgramTerms)(item.index['utbildning.attribut.kod'], language, ladokClient),
35
+ sistaAntagningstermin: (0, ladok_attributvarde_utils_1.extractString)(attributeValues, 'utbildning.lokalt.attribut.29.sista.antagningstermin.en', 'markdown'),
69
36
  };
70
- });
37
+ };
71
38
  exports.mapProgramInstans = mapProgramInstans;
72
39
  //# sourceMappingURL=mapProgramInstans.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapProgramInstans.js","sourceRoot":"","sources":["../src/mapProgramInstans.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mapProgramInstans.js","sourceRoot":"","sources":["../src/mapProgramInstans.ts"],"names":[],"mappings":";;;AAAA,8EAUuC;AAEvC,mCAQgB;AAChB,qDAAgF;AA2BzE,MAAM,iBAAiB,GAAG,CAC/B,IAA+D,EAC/D,QAAkB,EACF,EAAE;IAClB,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAA;IAE3C,MAAM,SAAS,GAAG;QAChB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,sCAAsC,CAAC;QACtD,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,uCAAuC,CAAC;KACxD,CAAA;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;IAC/D,MAAM,YAAY,GAAG,IAAA,+CAAmB,EAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAC7D,MAAM,cAAc,GAAG,IAAA,iDAAqB,EAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IACjE,MAAM,cAAc,GAAG,IAAA,iDAAqB,EAAC,IAAI,CAAC,cAAc,CAAC,CAAA;IAEjE,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,WAAW;QACrB,MAAM,EAAE,IAAA,8CAAkB,EAAC,IAAI,CAAC,cAAc,CAAC;QAC/C,wBAAwB,EAAE,IAAA,yCAAa,EAAC,eAAe,EAAE,8CAA8C,CAAC;QACxG,SAAS,EAAE,SAAS,CAAC,QAAQ,CAAC;QAC9B,cAAc,EAAE,SAAS,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAE1D,UAAU,EAAE;YACV,MAAM,EAAE,UAAU;YAClB,iBAAiB,EAAE,IAAA,wCAA0B,EAAC,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC;SACpF;QACD,cAAc,EAAE,cAAc,IAAI,IAAA,4BAAc,EAAC,cAAc,EAAE,QAAQ,CAAC;QAC1E,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACtD,YAAY,EAAE,YAAY,IAAI,IAAA,6BAAqB,EAAC,YAAY,EAAE,QAAQ,CAAC;QAE3E,cAAc,EAAE,cAAc,IAAI,IAAA,+BAAuB,EAAC,cAAc,EAAE,QAAQ,CAAC;QAEnF,cAAc,EAAE,cAAc,IAAI,IAAA,gCAAwB,EAAC,cAAc,EAAE,QAAQ,CAAC;QACpF,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC;QAE1C,UAAU,EAAE,IAAA,6CAAiB,EAAC,eAAe,CAAC;QAC9C,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAC5C,qBAAqB,EAAE,IAAA,yCAAa,EAClC,eAAe,EACf,yDAAyD,EACzD,UAAU,CACX;KACF,CAAA;AACH,CAAC,CAAA;AA5CY,QAAA,iBAAiB,qBA4C7B"}
@@ -0,0 +1,7 @@
1
+ import { CourseRound } from '../mapCourseRound';
2
+ export declare const removeCourseRoundsBasedOnTillfalleskod: (courseRound: Pick<CourseRound, "tillfalleskod">) => boolean;
3
+ export declare const removeCourseRoundsBasedOnFinansieringsform: (courseRound: {
4
+ finansieringsform?: {
5
+ code: string;
6
+ };
7
+ }) => boolean;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.removeCourseRoundsBasedOnFinansieringsform = exports.removeCourseRoundsBasedOnTillfalleskod = void 0;
4
+ // kurstillfällen starting with these prefixes should never be shown https://kth-se.atlassian.net/browse/KUI-1761
5
+ const TILLFALLESKOD_PREFIXES_TO_REMOVE = ['OM', 'UPP'];
6
+ // kurstillfällen with these finansieringsform codes should never be shown https://kth-se.atlassian.net/browse/KUI-1761
7
+ const FINANSIERINGSFORM_CODES_TO_REMOVE = ['FOA', 'XER'];
8
+ const removeCourseRoundsBasedOnTillfalleskod = (courseRound) => {
9
+ return !TILLFALLESKOD_PREFIXES_TO_REMOVE.some(prefix => { var _a; return (_a = courseRound.tillfalleskod) === null || _a === void 0 ? void 0 : _a.startsWith(prefix); });
10
+ };
11
+ exports.removeCourseRoundsBasedOnTillfalleskod = removeCourseRoundsBasedOnTillfalleskod;
12
+ const removeCourseRoundsBasedOnFinansieringsform = (courseRound) => {
13
+ var _a;
14
+ if (!courseRound.finansieringsform) {
15
+ return true;
16
+ }
17
+ return !FINANSIERINGSFORM_CODES_TO_REMOVE.includes((_a = courseRound.finansieringsform) === null || _a === void 0 ? void 0 : _a.code);
18
+ };
19
+ exports.removeCourseRoundsBasedOnFinansieringsform = removeCourseRoundsBasedOnFinansieringsform;
20
+ //# sourceMappingURL=filterCourseRoundUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterCourseRoundUtils.js","sourceRoot":"","sources":["../../src/utils/filterCourseRoundUtils.ts"],"names":[],"mappings":";;;AAEA,iHAAiH;AACjH,MAAM,gCAAgC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;AAEtD,uHAAuH;AACvH,MAAM,iCAAiC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;AAEjD,MAAM,sCAAsC,GAAG,CAAC,WAA+C,EAAW,EAAE;IACjH,OAAO,CAAC,gCAAgC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,WAAC,OAAA,MAAA,WAAW,CAAC,aAAa,0CAAE,UAAU,CAAC,MAAM,CAAC,CAAA,EAAA,CAAC,CAAA;AACxG,CAAC,CAAA;AAFY,QAAA,sCAAsC,0CAElD;AAEM,MAAM,0CAA0C,GAAG,CAAC,WAE1D,EAAW,EAAE;;IACZ,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,CAAC,iCAAiC,CAAC,QAAQ,CAAC,MAAA,WAAW,CAAC,iBAAiB,0CAAE,IAAI,CAAC,CAAA;AACzF,CAAC,CAAA;AAPY,QAAA,0CAA0C,8CAOtD"}
@@ -19,7 +19,7 @@ exports.handleError = handleError;
19
19
  const fetchGradingScales = (ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
20
20
  var _a;
21
21
  try {
22
- const gradingScales = yield ladokClient.betygsskala();
22
+ const gradingScales = yield ladokClient.betygsskala(); // TODO: Use cached values
23
23
  return ((_a = gradingScales === null || gradingScales === void 0 ? void 0 : gradingScales.data) === null || _a === void 0 ? void 0 : _a.Betygsskala) || [];
24
24
  }
25
25
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"gradingScalesUtils.js","sourceRoot":"","sources":["../../src/utils/gradingScalesUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,0DAA6E;AAEtE,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,KAAW,EAAE,EAAE;IAC1D,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,eAAe,EAAE,CAAA;AACvE,CAAC,CAAA;AAHY,QAAA,WAAW,eAGvB;AAEM,MAAM,kBAAkB,GAAG,CAAO,WAAsC,EAAE,EAAE;;IACjF,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAA;QACrD,OAAO,CAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,0CAAE,WAAW,KAAI,EAAE,CAAA;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC,CAAA,CAAA;AAPY,QAAA,kBAAkB,sBAO9B;AAEM,MAAM,gBAAgB,GAAG,CAAO,WAAsC,EAAE,EAAE;IAC/E,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,WAAW,CAAC,CAAA;QAC3D,MAAM,mBAAmB,GAAG,IAAA,mCAAgB,EAAC,aAAa,CAAC,CAAA;QAC3D,OAAO,mBAAmB,CAAA;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,oCAAoC,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;AACH,CAAC,CAAA,CAAA;AARY,QAAA,gBAAgB,oBAQ5B;AAEM,MAAM,qBAAqB,GAAG,CAAO,WAAsC,EAAE,EAAE;IACpF,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,WAAW,CAAC,CAAA;QAC3D,MAAM,wBAAwB,GAAG,IAAA,wCAAqB,EAAC,aAAa,CAAC,CAAA;QACrE,OAAO,wBAAwB,CAAA;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,oCAAoC,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;AACH,CAAC,CAAA,CAAA;AARY,QAAA,qBAAqB,yBAQjC"}
1
+ {"version":3,"file":"gradingScalesUtils.js","sourceRoot":"","sources":["../../src/utils/gradingScalesUtils.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,0DAA6E;AAEtE,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,KAAW,EAAE,EAAE;IAC1D,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,eAAe,EAAE,CAAA;AACvE,CAAC,CAAA;AAHY,QAAA,WAAW,eAGvB;AAEM,MAAM,kBAAkB,GAAG,CAAO,WAAsC,EAAE,EAAE;;IACjF,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAA,CAAC,0BAA0B;QAChF,OAAO,CAAA,MAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,0CAAE,WAAW,KAAI,EAAE,CAAA;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,gCAAgC,EAAE,KAAK,CAAC,CAAA;IAC5D,CAAC;AACH,CAAC,CAAA,CAAA;AAPY,QAAA,kBAAkB,sBAO9B;AAEM,MAAM,gBAAgB,GAAG,CAAO,WAAsC,EAAE,EAAE;IAC/E,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,WAAW,CAAC,CAAA;QAC3D,MAAM,mBAAmB,GAAG,IAAA,mCAAgB,EAAC,aAAa,CAAC,CAAA;QAC3D,OAAO,mBAAmB,CAAA;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,oCAAoC,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;AACH,CAAC,CAAA,CAAA;AARY,QAAA,gBAAgB,oBAQ5B;AAEM,MAAM,qBAAqB,GAAG,CAAO,WAAsC,EAAE,EAAE;IACpF,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,IAAA,0BAAkB,EAAC,WAAW,CAAC,CAAA;QAC3D,MAAM,wBAAwB,GAAG,IAAA,wCAAqB,EAAC,aAAa,CAAC,CAAA;QACrE,OAAO,wBAAwB,CAAA;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,oCAAoC,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;AACH,CAAC,CAAA,CAAA;AARY,QAAA,qBAAqB,yBAQjC"}
@@ -2,3 +2,4 @@ export * from './dateUtil';
2
2
  export * from './languageUtil';
3
3
  export * from './periodUtil';
4
4
  export * from './studyYearUtil';
5
+ export * from './filterCourseRoundUtils';
@@ -18,4 +18,5 @@ __exportStar(require("./dateUtil"), exports);
18
18
  __exportStar(require("./languageUtil"), exports);
19
19
  __exportStar(require("./periodUtil"), exports);
20
20
  __exportStar(require("./studyYearUtil"), exports);
21
+ __exportStar(require("./filterCourseRoundUtils"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,iDAA8B;AAC9B,+CAA4B;AAC5B,kDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA0B;AAC1B,iDAA8B;AAC9B,+CAA4B;AAC5B,kDAA+B;AAC/B,2DAAwC"}
@@ -13,11 +13,6 @@ exports.getPartOfProgrammes = void 0;
13
13
  const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
14
14
  const mapPartOfProgramme_1 = require("../mapPartOfProgramme");
15
15
  const studyYearUtil_1 = require("./studyYearUtil");
16
- var EDUCATIONAL_TYPE;
17
- (function (EDUCATIONAL_TYPE) {
18
- EDUCATIONAL_TYPE[EDUCATIONAL_TYPE["Programme"] = 94] = "Programme";
19
- EDUCATIONAL_TYPE[EDUCATIONAL_TYPE["Specialisation"] = 101290] = "Specialisation";
20
- })(EDUCATIONAL_TYPE || (EDUCATIONAL_TYPE = {}));
21
16
  const extractUIDsByEducationType = (structureRefs, educationTypeID) => structureRefs.filter(x => x.UtbildningstypID === educationTypeID).map(x => x.UtbildningsattributbasUID);
22
17
  const fetchEducationalInstances = (utbildningsTillfalleUIDs, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
23
18
  const results = yield Promise.all(utbildningsTillfalleUIDs.map((uid) => __awaiter(void 0, void 0, void 0, function* () {
@@ -56,7 +51,7 @@ const processSpecialisations = (specialisationInstances, courseInstance, periodI
56
51
  return [];
57
52
  const structureRefs = ((_a = (yield ladokClient.strukturListaInnehaller(specialisationInstance.tillfalle_uid)).data) === null || _a === void 0 ? void 0 : _a.Strukturreferenser) ||
58
53
  [];
59
- const [firstProgrammeInstanceUID] = extractUIDsByEducationType(structureRefs, EDUCATIONAL_TYPE.Programme);
54
+ const [firstProgrammeInstanceUID] = extractUIDsByEducationType(structureRefs, ladok_attributvarde_utils_1.EducationalTypeID.Programme);
60
55
  const programmeInstances = yield fetchEducationalInstances([firstProgrammeInstanceUID], ladokClient);
61
56
  return processProgrammes(programmeInstances, courseInstance, periodItems, ladokClient, specialisationInstance);
62
57
  })))).flat();
@@ -64,8 +59,8 @@ const processSpecialisations = (specialisationInstances, courseInstance, periodI
64
59
  const getPartOfProgramme = (courseInstance, periodItems, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
65
60
  var _a;
66
61
  const structureRefs = ((_a = (yield ladokClient.strukturListaInnehaller(courseInstance.tillfalle_uid)).data) === null || _a === void 0 ? void 0 : _a.Strukturreferenser) || [];
67
- const specialisationInstanceUIDs = extractUIDsByEducationType(structureRefs, EDUCATIONAL_TYPE.Specialisation);
68
- const programmeInstanceUIDs = extractUIDsByEducationType(structureRefs, EDUCATIONAL_TYPE.Programme);
62
+ const specialisationInstanceUIDs = extractUIDsByEducationType(structureRefs, ladok_attributvarde_utils_1.EducationalTypeID.Specialisation);
63
+ const programmeInstanceUIDs = extractUIDsByEducationType(structureRefs, ladok_attributvarde_utils_1.EducationalTypeID.Programme);
69
64
  const specialisationInstances = (yield fetchEducationalInstances(specialisationInstanceUIDs, ladokClient)) || [];
70
65
  const programmeInstances = (yield fetchEducationalInstances(programmeInstanceUIDs, ladokClient)) || [];
71
66
  const specialisationParts = yield processSpecialisations(specialisationInstances, courseInstance, periodItems, ladokClient);
@@ -1 +1 @@
1
- {"version":3,"file":"partOfProgrammeUtil.js","sourceRoot":"","sources":["../../src/utils/partOfProgrammeUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"partOfProgrammeUtil.js","sourceRoot":"","sources":["../../src/utils/partOfProgrammeUtil.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export declare const parsePeriod: (period: string) => {
6
6
  } | null;
7
7
  export declare const transformPeriodInDigits: (period: string) => string | null;
8
8
  export declare const transformDigitsInPeriod: (period: string) => string;
9
+ export declare const findPeriodByKod: (kod: string, periods: PeriodItem[]) => PeriodItem | undefined;
9
10
  export declare const findValidProgramForCode: (code: string, periods: PeriodItem[], programs: ProgramInstans[]) => ProgramInstans | undefined;
10
11
  export declare const getPeriodCodeForDate: (date: Date) => string;
11
12
  export declare const getKthStudyPeriod: (date: Date, startPeriod: {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getKthStudyPeriod = exports.getPeriodCodeForDate = exports.findValidProgramForCode = exports.transformDigitsInPeriod = exports.transformPeriodInDigits = exports.parsePeriod = void 0;
3
+ exports.getKthStudyPeriod = exports.getPeriodCodeForDate = exports.findValidProgramForCode = exports.findPeriodByKod = exports.transformDigitsInPeriod = exports.transformPeriodInDigits = exports.parsePeriod = void 0;
4
4
  const parsePeriod = (period) => {
5
5
  const match = period.match(/(VT|HT)(\d{4})/);
6
6
  if (!match) {
@@ -29,6 +29,10 @@ exports.transformDigitsInPeriod = transformDigitsInPeriod;
29
29
  const findPeriodByCode = (code, periods) => {
30
30
  return periods.find(p => p.Kod === code);
31
31
  };
32
+ const findPeriodByKod = (kod, periods) => {
33
+ return periods.find(p => p.Kod === kod);
34
+ };
35
+ exports.findPeriodByKod = findPeriodByKod;
32
36
  const getSortedPrograms = (programs) => {
33
37
  return [...programs].sort((a, b) => (Number(b.versionsnummer) || 0) - (Number(a.versionsnummer) || 0));
34
38
  };
@@ -1 +1 @@
1
- {"version":3,"file":"periodUtil.js","sourceRoot":"","sources":["../../src/utils/periodUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"periodUtil.js","sourceRoot":"","sources":["../../src/utils/periodUtil.ts"],"names":[],"mappings":"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"}
@@ -191,7 +191,7 @@ const mapSpecializationCurriculums = (specializations, startperiodCode, lengthIn
191
191
  const fetchProgramStructure = (utbildningstillfalleUID, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
192
192
  try {
193
193
  const { startperiod, lengthInStudyYears, courseListFromStructure, specializationListFromStructure } = yield getMainProgramInstanceData(utbildningstillfalleUID, language, ladokClient);
194
- const periodData = yield ladokClient.period();
194
+ const periodData = yield ladokClient.period(); // TODO: Use cached values
195
195
  if (periodData.type === 'error') {
196
196
  throw new Error(`API error: ${periodData.responseInfo.message}`);
197
197
  }
@@ -1 +1 @@
1
- {"version":3,"file":"programStrukturUtil.js","sourceRoot":"","sources":["../../src/utils/programStrukturUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"programStrukturUtil.js","sourceRoot":"","sources":["../../src/utils/programStrukturUtil.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,gEAAyF;AACzF,0DAAoF;AACpF,8EAAiE;AACjE,mDAAuD;AAEhD,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,KAAW,EAAE,EAAE;IAC1D,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;IAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,eAAe,EAAE,CAAA;AACvE,CAAC,CAAA;AAHY,QAAA,WAAW,eAGvB;AAEM,MAAM,4BAA4B,GAAG,CAAO,GAAW,EAAE,WAAsC,EAAE,EAAE;;IACxG,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,4BAA4B,CAAC,GAAG,CAAC,CAAA;QACpE,OAAO,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,aAAa,KAAI,EAAE,CAAA;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;IACvD,CAAC;AACH,CAAC,CAAA,CAAA;AAPY,QAAA,4BAA4B,gCAOxC;AAEM,MAAM,0BAA0B,GAAG,CAAO,GAAW,EAAE,WAAsC,EAAE,EAAE;;IACtG,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAA;QAClE,OAAO,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,aAAa,KAAI,EAAE,CAAA;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,2BAA2B,EAAE,KAAK,CAAC,CAAA;IACvD,CAAC;AACH,CAAC,CAAA,CAAA;AAPY,QAAA,0BAA0B,8BAOtC;AAEM,MAAM,2BAA2B,GAAG,CACzC,wBAAkC,EAClC,WAAsC,EACtC,EAAE;IACF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,wBAAwB,CAAC,GAAG,CAAC,CAAM,uBAAuB,EAAC,EAAE;YAC3D,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,MAAM,WAAW,CAAC,wBAAwB,CAAC,uBAAuB,EAAE;oBAC7F,cAAc,EACZ,2HAA2H;iBAC9H,CAAC,CAAA;gBACF,OAAO,kBAAkB,CAAC,IAAI,CAAA;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAA,mBAAW,EAAC,+CAA+C,wBAAwB,GAAG,EAAE,KAAK,CAAC,CAAA;YACtG,CAAC;QACH,CAAC,CAAA,CAAC,CACH,CAAA;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC,CAAA;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,yBAAyB,EAAE,KAAK,CAAC,CAAA;IACrD,CAAC;AACH,CAAC,CAAA,CAAA;AAtBY,QAAA,2BAA2B,+BAsBvC;AAEM,MAAM,2BAA2B,GAAG,CACzC,sBAAgC,EAChC,WAAsC,EACtC,EAAE;IACF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,sBAAsB,CAAC,GAAG,CAAC,CAAM,qBAAqB,EAAC,EAAE;YACvD,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,MAAM,WAAW,CAAC,sBAAsB,CAAC,qBAAqB,EAAE;oBACzF,cAAc,EACZ,mHAAmH;iBACtH,CAAC,CAAA;gBACF,OAAO,kBAAkB,CAAC,IAAI,CAAA;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAA,mBAAW,EAAC,mDAAmD,qBAAqB,GAAG,EAAE,KAAK,CAAC,CAAA;YACvG,CAAC;QACH,CAAC,CAAA,CAAC,CACH,CAAA;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,IAAI,CAAC,CAAA;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,sCAAsC,EAAE,KAAK,CAAC,CAAA;IAClE,CAAC;AACH,CAAC,CAAA,CAAA;AAtBY,QAAA,2BAA2B,+BAsBvC;AAKD,MAAM,WAAW,GAA2B;IAC1C,oBAAoB,EAAE,IAAI;IAC1B,aAAa,EAAE,GAAG;IAClB,MAAM,EAAE,GAAG;CACZ,CAAA;AAED,MAAM,wBAAwB,GAAG,CAAC,aAA4B,EAAE,EAAE;IAChE,OAAO,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;QACrC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;YAChC,uCAAY,WAAW,KAAE,UAAU,EAAE,GAAG,IAAE,CAAC,wBAAwB;QACrE,CAAC;QAED,MAAM,cAAc,GAAG,WAAW,CAAC,cAAc,CAAC,kBAAkB,IAAI,EAAE,CAAA;QAC1E,MAAM,cAAc,GAAG,WAAW,CAAC,cAAc,CAAC,iBAAiB,IAAI,EAAE,CAAA;QAEzE,MAAM,QAAQ,GAAG,WAAW,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,IAAI,WAAW,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,IAAI,GAAG,CAAA;QAE9G,uCAAY,WAAW,KAAE,UAAU,EAAE,QAAQ,IAAE;IACjD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,SAAe,iCAAiC,CAC9C,wBAAkD,EAClD,QAAkB,EAClB,WAAsC;;QAEtC,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAA;QACjF,MAAM,eAAe,GAAG,MAAM,IAAA,mCAA2B,EAAC,kBAAkB,EAAE,WAAW,CAAC,CAAA;QAC1F,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAChD,OAAO,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAA,+CAAyB,EAAC,QAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IACjF,CAAC;CAAA;AAED,MAAM,4BAA4B,GAAG,sBAAsB,CAAA;AAE3D,SAAS,wBAAwB,CAAC,QAAoE;IACpG,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAA;IACpC,OAAO,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,MAAK,4BAA4B,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,MAAK,4BAA4B,CAAA;AACxG,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAkC;IACjE,MAAM,oCAAoC,GAAqB,EAAE,CAAA;IACjE,MAAM,+BAA+B,GAAqB,EAAE,CAAA;IAE5D,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC3B,IAAI,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvF,+BAA+B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAChD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,oCAAoC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACrD,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,oCAAoC,EAAE,+BAA+B,EAAE,CAAA;AAClF,CAAC;AAED,SAAe,oDAAoD,CACjE,4BAAqD,EACrD,WAAsC,EACtC,QAAkB;;QAElB,MAAM,IAAI,GAAG,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA;QAC/E,MAAM,qBAAqB,GAAG,MAAM,IAAA,mCAA2B,EAAC,IAAI,EAAE,WAAW,CAAC,CAAA;QAClF,OAAO,qBAAqB,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC,IAAA,2CAAwB,EAAC,oBAAqB,EAAE,QAAQ,CAAC,CAAC,CAAA;IACrH,CAAC;CAAA;AAED,SAAS,sBAAsB,CAC7B,4BAAqD,EACrD,2BAAmD,EACnD,wBAAkD;IAElD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;IAEnG,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,4BAA4B,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAA;IAErH,OAAO,2BAA2B,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC/C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;QAC/D,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,QAAS,CAAC,GAAG,CAAC,IAAI,GAAG,CAAA;QAExD,qDACK,QAAS,GACT,OAAO,KACV,UAAU,EAAE,UAAU,IACvB;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAEM,MAAM,gCAAgC,GAAG,CAC9C,uBAA+B,EAC/B,QAAkB,EAClB,WAAsC,EACtC,EAAE;IACF,MAAM,cAAc,GAAG,MAAM,IAAA,oCAA4B,EAAC,uBAAuB,EAAE,WAAW,CAAC,CAAA;IAE/F,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,cAAc,CAAC,CAAA;IAEzE,MAAM,uBAAuB,GAAG,MAAM,iCAAiC,CACrE,wBAAwB,EACxB,QAAQ,EACR,WAAW,CACZ,CAAA;IAED,MAAM,EAAE,oCAAoC,EAAE,+BAA+B,EAAE,GAC7E,uBAAuB,CAAC,uBAAuB,CAAC,CAAA;IAElD,MAAM,mCAAmC,GAAG,MAAM,oDAAoD,CACpG,oCAAoC,EACpC,WAAW,EACX,QAAQ,CACT,CAAA;IAED,MAAM,uBAAuB,GAAG,sBAAsB,CACpD,oCAAoC,EACpC,mCAAmC,EACnC,wBAAwB,CACzB,CAAA;IAED,OAAO,EAAE,uBAAuB,EAAE,+BAA+B,EAAE,CAAA;AACrE,CAAC,CAAA,CAAA;AA/BY,QAAA,gCAAgC,oCA+B5C;AAED,MAAM,0BAA0B,GAAG,CAAO,GAAW,EAAE,QAAkB,EAAE,WAAsC,EAAE,EAAE;IACnH,MAAM,cAAc,GAAG,MAAM,WAAW,CAAC,wBAAwB,CAAC,GAAG,EAAE;QACrE,cAAc,EAAE,wDAAwD;KACzE,CAAC,CAAA;IAEF,IAAI,cAAc,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,cAAc,cAAc,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAA;IACtE,CAAC;IAED,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;IACnH,MAAM,WAAW,GAAG,IAAA,4CAAgB,EAAC,cAAc,CAAC,IAAI,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAA;IAC3G,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAA;IAE7D,MAAM,EAAE,uBAAuB,EAAE,+BAA+B,EAAE,GAAG,MAAM,IAAA,wCAAgC,EACzG,GAAG,EACH,QAAQ,EACR,WAAW,CACZ,CAAA;IAED,OAAO;QACL,WAAW;QACX,kBAAkB;QAClB,uBAAuB;QACvB,+BAA+B;KAChC,CAAA;AACH,CAAC,CAAA,CAAA;AAED,MAAM,4BAA4B,GAAG,CACnC,eAAwC,EACxC,eAAuB,EACvB,kBAA0B,EAC1B,QAAkB,EAClB,WAAsC,EACtC,UAAwB,EACxB,EAAE;IACF,MAAM,aAAa,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IACrD,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAA;IAErE,MAAM,cAAc,GAAG,MAAM,IAAA,mCAA2B,EAAC,WAAW,EAAE,WAAW,CAAC,CAAA;IAElF,MAAM,qBAAqB,GAAG,cAAc;SACzC,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAA,2CAAwB,EAAC,MAAO,EAAE,QAAQ,CAAC,CAAC,CAAA;IAE7D,MAAM,sCAAsC,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9D,aAAa,CAAC,GAAG,CAAC,CAAM,GAAG,EAAC,EAAE;QAC5B,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,IAAA,wCAAgC,EAAC,GAAG,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;QACtG,OAAO,uBAAuB,CAAA;IAChC,CAAC,CAAA,CAAC,CACH,CAAA;IAED,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QACjD,UAAU,EAAE,IAAA,qCAAqB,EAC/B,sCAAsC,CAAC,KAAK,CAAC,EAC7C,UAAU,EACV,eAAe,EACf,kBAAkB,CACnB;QACD,uBAAuB,EAAE;YACvB,2BAA2B,EAAE,IAAI,CAAC,GAAG;YACrC,KAAK,EAAE,IAAI,CAAC,SAAS;SACtB;KACF,CAAC,CAAC,CAAA;AACL,CAAC,CAAA,CAAA;AAEM,MAAM,qBAAqB,GAAG,CACnC,uBAA+B,EAC/B,QAAkB,EAClB,WAAsC,EACtC,EAAE;IACF,IAAI,CAAC;QACH,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,+BAA+B,EAAE,GACjG,MAAM,0BAA0B,CAAC,uBAAuB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;QAElF,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAA,CAAC,0BAA0B;QAExE,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,cAAc,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAA;QAClE,CAAC;QAED,MAAM,cAAc,GAAG,IAAA,qCAAqB,EAC1C,uBAAuB,EACvB,UAAU,CAAC,IAAI,CAAC,MAAM,EACtB,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAK,EAClB,kBAAkB,CACnB,CAAA;QACD,MAAM,yBAAyB,GAAG,MAAM,4BAA4B,CAClE,+BAA+B,EAC/B,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAK,EAClB,kBAAkB,EAClB,QAAQ,EACR,WAAW,EACX,UAAU,CAAC,IAAI,CAAC,MAAO,CACxB,CAAA;QAED,OAAO,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,GAAG,yBAAyB,CAAC,CAAA;IACvE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,mBAAW,EAAC,oCAAoC,EAAE,KAAK,CAAC,CAAA;IAChE,CAAC;AACH,CAAC,CAAA,CAAA;AAlCY,QAAA,qBAAqB,yBAkCjC"}
@@ -0,0 +1,14 @@
1
+ import { LadokMellanlagerApiClient, MellanlagringSearchResponse, PeriodItem, SokUtbildningsInstansItem, SokUtbildningsInstansSlimItem, SokUtbildningsTillfalleItem, SokUtbildningsTillfalleSlimItem } from '@kth/ladok-mellanlager-client';
2
+ import { Language } from './languageUtil';
3
+ import { ProgramInstans } from '../mapProgramInstans';
4
+ import { Lokalmarkning } from '@kth/ladok-attributvarde-utils';
5
+ export declare const filterAndMapProgramTillfalle: (response: MellanlagringSearchResponse<SokUtbildningsTillfalleItem | SokUtbildningsTillfalleSlimItem>, language: Language) => import("../mapProgramTillfalle").ProgramTillfalle[];
6
+ export declare const findProgramWithHighestVersionNumber: (programs: ProgramInstans[]) => ProgramInstans | undefined;
7
+ export declare const findProgramWithLowestVersionNumber: (programs: ProgramInstans[]) => ProgramInstans | undefined;
8
+ export declare const selectProgramInstans: (code: string | undefined, periods: PeriodItem[], programs: ProgramInstans[]) => ProgramInstans | undefined;
9
+ export declare const filterAndMapProgramInstans: (response: MellanlagringSearchResponse<SokUtbildningsInstansItem | SokUtbildningsInstansSlimItem>, periods: PeriodItem[], code: string, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<(ProgramInstans & {
10
+ approvedStudyProgrammeTerms: string[];
11
+ firstAdmissionTerm?: string;
12
+ }) | undefined>;
13
+ export declare const hasCourseListMarking: (lokalmarkning: Lokalmarkning[] | undefined) => boolean;
14
+ export declare const getProgramTerms: (program: ProgramInstans, oldestProgram: ProgramInstans, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<string[]>;
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.getProgramTerms = exports.hasCourseListMarking = exports.filterAndMapProgramInstans = exports.selectProgramInstans = exports.findProgramWithLowestVersionNumber = exports.findProgramWithHighestVersionNumber = exports.filterAndMapProgramTillfalle = void 0;
13
+ const mapProgramTillfalle_1 = require("../mapProgramTillfalle");
14
+ const mapProgramInstans_1 = require("../mapProgramInstans");
15
+ const periodUtil_1 = require("./periodUtil");
16
+ const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
17
+ const mapProgramTerm_1 = require("../mapProgramTerm");
18
+ const studyYearUtil_1 = require("./studyYearUtil");
19
+ const typeChecking_1 = require("./typeChecking");
20
+ const SEMESTER_FOR_START_READING_STRUCTURES = {
21
+ code: 'HT2020', // we will increase 2025 by 5 (maximum study year that we have for a program) since there can be ongoing programs until 2025
22
+ }; // Based on the following document: https://confluence.sys.kth.se/confluence/pages/viewpage.action?pageId=262933569
23
+ const DATE_FOR_START_READING_SYLLABUSES = '1998-01-01';
24
+ const SEMESTER_FOR_END_READING_SYLLABUSES = {
25
+ code: 'VT2025',
26
+ date: '2025-06-02',
27
+ }; // Based on the follwoing document: https://confluence.sys.kth.se/confluence/pages/viewpage.action?pageId=262933569
28
+ const filterAndMapProgramTillfalle = (response, language) => {
29
+ if (response.type === 'error') {
30
+ throw new Error(`API error: ${response.responseInfo.message}`);
31
+ }
32
+ return response.items
33
+ .map(x => (0, mapProgramTillfalle_1.mapProgramTillfalle)(x, language))
34
+ .filter(x => x !== undefined)
35
+ .filter(x => (0, exports.hasCourseListMarking)(x.lokalmarkning));
36
+ };
37
+ exports.filterAndMapProgramTillfalle = filterAndMapProgramTillfalle;
38
+ const findProgramWithHighestVersionNumber = (programs) => {
39
+ return programs
40
+ .filter(program => program.versionsnummer !== undefined)
41
+ .sort((a, b) => { var _a, _b; return ((_a = Number(b.versionsnummer)) !== null && _a !== void 0 ? _a : 0) - ((_b = Number(a.versionsnummer)) !== null && _b !== void 0 ? _b : 0); })[0];
42
+ };
43
+ exports.findProgramWithHighestVersionNumber = findProgramWithHighestVersionNumber;
44
+ const findProgramWithLowestVersionNumber = (programs) => {
45
+ return programs
46
+ .filter(program => program.versionsnummer !== undefined)
47
+ .sort((a, b) => { var _a, _b; return ((_a = Number(a.versionsnummer)) !== null && _a !== void 0 ? _a : 0) - ((_b = Number(b.versionsnummer)) !== null && _b !== void 0 ? _b : 0); })[0];
48
+ };
49
+ exports.findProgramWithLowestVersionNumber = findProgramWithLowestVersionNumber;
50
+ const selectProgramInstans = (code, periods, programs) => {
51
+ if (code) {
52
+ return (0, periodUtil_1.findValidProgramForCode)(code, periods, programs);
53
+ }
54
+ return (0, exports.findProgramWithHighestVersionNumber)(programs);
55
+ };
56
+ exports.selectProgramInstans = selectProgramInstans;
57
+ const filterAndMapProgramInstans = (response, periods, code, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
58
+ var _a;
59
+ if (response.type === 'error') {
60
+ throw new Error(`API error in filterAndMapProgramInstans: ${response.responseInfo.message}`);
61
+ }
62
+ const mappedPrograms = response.items
63
+ .map(item => (0, mapProgramInstans_1.mapProgramInstans)(item, language))
64
+ .filter((program) => !!program);
65
+ // A program can have different versions, we need to have the oldest one to know what is the first admission date for the program
66
+ const oldestVersion = (0, exports.findProgramWithLowestVersionNumber)(mappedPrograms);
67
+ const selectedProgram = (0, exports.selectProgramInstans)(code, periods, mappedPrograms);
68
+ if (!selectedProgram || !oldestVersion)
69
+ return undefined;
70
+ const approvedStudyProgrammeTerms = yield (0, exports.getProgramTerms)(selectedProgram, oldestVersion, language, ladokClient);
71
+ return Object.assign(Object.assign({}, selectedProgram), { approvedStudyProgrammeTerms, firstAdmissionTerm: (_a = oldestVersion.giltigFrom) === null || _a === void 0 ? void 0 : _a.code });
72
+ });
73
+ exports.filterAndMapProgramInstans = filterAndMapProgramInstans;
74
+ const hasCourseListMarking = (lokalmarkning) => {
75
+ var _a;
76
+ return ((_a = lokalmarkning === null || lokalmarkning === void 0 ? void 0 : lokalmarkning.some(attr => attr.markningsnyckel.code === ladok_attributvarde_utils_1.MarkningsnyckelCode.Kurslista &&
77
+ attr.markningsvarde.code === ladok_attributvarde_utils_1.MarkningsvardeCode.Ja)) !== null && _a !== void 0 ? _a : false);
78
+ };
79
+ exports.hasCourseListMarking = hasCourseListMarking;
80
+ const getProgramTerms = (program, oldestProgram, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
81
+ var _a, _b, _c;
82
+ const { kod, sistaAntagningstermin } = program;
83
+ const transformedSistaAntagningstermin = sistaAntagningstermin
84
+ ? (0, periodUtil_1.transformDigitsInPeriod)(sistaAntagningstermin)
85
+ : undefined;
86
+ const periods = yield ladokClient.period();
87
+ if (periods.type !== 'success') {
88
+ throw new Error(`API call failed: ${periods.responseInfo.apiError || 'Unknown error'}`);
89
+ }
90
+ if (typeof periods.data !== 'object') {
91
+ throw new Error('periods.data is not an object.');
92
+ }
93
+ const lastAdmissionTermData = transformedSistaAntagningstermin
94
+ ? (0, periodUtil_1.findPeriodByKod)(transformedSistaAntagningstermin, periods.data.Period)
95
+ : undefined;
96
+ // 1. getting period data
97
+ const requestObjectForStructures = {
98
+ kodEllerBenamning: kod,
99
+ baraSistaVersion: 'false',
100
+ striktKod: 'true',
101
+ terminKodStart: SEMESTER_FOR_START_READING_STRUCTURES.code,
102
+ attributVarden: 'status,utbildning.attribut.lokalmarkning',
103
+ antalTraffar: '100',
104
+ };
105
+ const responseForStructures = yield ladokClient.sokProgramTillfalleSlim(requestObjectForStructures);
106
+ // 2. searching for structures
107
+ // here we will sort out invalid syllabuses terms as well, we need syllabuses being valid after the giltigFran data and before sistaAntagningstermin date
108
+ const requestObjectForSyllabuses = {
109
+ kodEllerBenamning: kod,
110
+ striktKod: 'true',
111
+ tillstand: 'BESLUTAD',
112
+ attributVarden: 'utbildning.lokalt.attribut.29.utgava',
113
+ giltigTill: (_a = lastAdmissionTermData === null || lastAdmissionTermData === void 0 ? void 0 : lastAdmissionTermData.TomDatum) !== null && _a !== void 0 ? _a : SEMESTER_FOR_END_READING_SYLLABUSES.date,
114
+ giltigFran: (_c = (_b = oldestProgram.giltigFrom) === null || _b === void 0 ? void 0 : _b.startDay) !== null && _c !== void 0 ? _c : DATE_FOR_START_READING_SYLLABUSES, // we are not able to add giltigTill without giltigFran so this is added for that purpose only
115
+ antalTraffar: '100',
116
+ };
117
+ const responseForSyllabuses = yield ladokClient.sokPlanSlim(requestObjectForSyllabuses);
118
+ // 3. searching for sylabuses
119
+ let programTermsFromStructures = [];
120
+ if (responseForStructures === null || responseForStructures === void 0 ? void 0 : responseForStructures.items) {
121
+ const mappedTerms = responseForStructures.items.map(x => (0, mapProgramTerm_1.mapProgramTerm)(x, language)).filter(Boolean);
122
+ const filteredTerms = mappedTerms.filter(x => (0, exports.hasCourseListMarking)(x.lokalmarkning));
123
+ const startPeriods = filteredTerms.map(x => x.startPeriod);
124
+ programTermsFromStructures = startPeriods;
125
+ }
126
+ // 4. startPeriod for all found structures
127
+ let programTermsFromSyllabuses = [];
128
+ if (responseForSyllabuses === null || responseForSyllabuses === void 0 ? void 0 : responseForSyllabuses.data) {
129
+ const validSyllabuses = responseForSyllabuses.data.filter((syllabus) => !!syllabus && 'GiltigFran' in syllabus);
130
+ const matchedPeriodCodes = validSyllabuses
131
+ .map(x => { var _a; return (_a = (0, studyYearUtil_1.findMatchingPeriod)(x.GiltigFran, periods.data.Period)) === null || _a === void 0 ? void 0 : _a.Kod; })
132
+ .filter(typeChecking_1.isDefined);
133
+ const filteredTerms = matchedPeriodCodes.filter(x => (x === null || x === void 0 ? void 0 : x.includes('VT')) || (x === null || x === void 0 ? void 0 : x.includes('HT')));
134
+ programTermsFromSyllabuses = filteredTerms;
135
+ }
136
+ // 5. converted GiltigFran for all founded syllabuses
137
+ const uniqueProgramTerms = Array.from(new Set([...programTermsFromStructures, ...programTermsFromSyllabuses]));
138
+ const finalProgramTerms = uniqueProgramTerms.length
139
+ ? uniqueProgramTerms
140
+ .map(term => (0, periodUtil_1.transformPeriodInDigits)(term))
141
+ .filter((period) => typeof period === 'string')
142
+ : [];
143
+ return finalProgramTerms;
144
+ });
145
+ exports.getProgramTerms = getProgramTerms;
146
+ //# sourceMappingURL=programUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"programUtil.js","sourceRoot":"","sources":["../../src/utils/programUtil.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ type StudyYear = {
21
21
  yearNumber: number;
22
22
  courses: CourseData[];
23
23
  };
24
+ export declare const findMatchingPeriod: (date: string, periods: PeriodItem[]) => PeriodItem | undefined;
24
25
  export declare const extractYear: (kod: string) => number;
25
26
  export declare const getStudyYearFromEndDate: (periodEndDate: string, periodDetails: PeriodItem[], mainStartPeriod: string) => number | undefined;
26
27
  export declare const generateStudyYearData: (coursesData: CourseData[], periodDetails: PeriodItem[], mainStartPeriod: string, lengthStudyYear: number) => StudyYear[];
@@ -1,11 +1,32 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractStudyYears = exports.getStudyYearFromSemesters = exports.generateStudyYearData = exports.getStudyYearFromEndDate = exports.extractYear = exports.LAST_YEAR_TO_USE_SYLLABUSES_FOR_KURSLISTA = void 0;
3
+ exports.extractStudyYears = exports.getStudyYearFromSemesters = exports.generateStudyYearData = exports.getStudyYearFromEndDate = exports.extractYear = exports.findMatchingPeriod = exports.LAST_YEAR_TO_USE_SYLLABUSES_FOR_KURSLISTA = void 0;
4
4
  const date_fns_1 = require("date-fns");
5
5
  const periodUtil_1 = require("./periodUtil");
6
6
  exports.LAST_YEAR_TO_USE_SYLLABUSES_FOR_KURSLISTA = 2025;
7
7
  const isDateWithinRange = (date, from, to) => (0, date_fns_1.parseISO)(from) <= (0, date_fns_1.parseISO)(date) && (0, date_fns_1.parseISO)(to) >= (0, date_fns_1.parseISO)(date);
8
- const findMatchingPeriod = (date, periods) => periods.find(p => isDateWithinRange(date, p.FromDatum, p.TomDatum));
8
+ const isValidPeriodFormat = (name) => (name.length === 6 && (name.startsWith('VT') || name.startsWith('HT'))) ||
9
+ (name.length === 5 && (name.endsWith('V') || name.endsWith('H')));
10
+ /*
11
+ The result data for this endpoint </kataloginformation/grunddata/period> returns three format of periods ({year}, {year}VT/HT, V/H{year})
12
+ We are not interested to get the {year} format becasue it only returns the year and does not give us a needed inormation.
13
+
14
+ We can assume if we could not find a a matching period either in {year}VT/HT or V/H{year} formts the entered value has an invalid or random format.
15
+
16
+ TODO: since for now we were using only VT and HT in KTH we support those in our calulations.
17
+ */
18
+ const findMatchingPeriod = (date, periods) => {
19
+ // Step 1: Filter only valid formats
20
+ const validPeriods = periods.filter(p => isValidPeriodFormat(p.Kod));
21
+ // Step 2: Sort so VT/HT come first (length 6 first)
22
+ validPeriods.sort((a, b) => {
23
+ const getPriority = (kod) => (kod.startsWith('VT') || kod.startsWith('HT') ? 0 : 1);
24
+ return getPriority(a.Kod) - getPriority(b.Kod);
25
+ });
26
+ // Step 3: Find the first matching period in date range
27
+ return validPeriods.find(p => isDateWithinRange(date, p.FromDatum, p.TomDatum));
28
+ };
29
+ exports.findMatchingPeriod = findMatchingPeriod;
9
30
  const extractYear = (kod) => {
10
31
  let year;
11
32
  if (/^HT|^VT/.test(kod)) {
@@ -26,7 +47,7 @@ const extractYear = (kod) => {
26
47
  };
27
48
  exports.extractYear = extractYear;
28
49
  const getStudyYearFromEndDate = (periodEndDate, periodDetails, mainStartPeriod) => {
29
- const matchedPeriod = findMatchingPeriod(periodEndDate, periodDetails);
50
+ const matchedPeriod = (0, exports.findMatchingPeriod)(periodEndDate, periodDetails);
30
51
  if (!matchedPeriod)
31
52
  return;
32
53
  const baseYear = (0, exports.extractYear)(mainStartPeriod);
@@ -83,7 +104,7 @@ exports.getStudyYearFromSemesters = getStudyYearFromSemesters;
83
104
  const extractStudyYears = (courseInstance, programmeInstance, periodItems) => {
84
105
  return courseInstance.Tillfallesperioder.reduce((acc, { ForstaUndervisningsdatum }) => {
85
106
  var _a;
86
- const matchedPeriod = findMatchingPeriod(ForstaUndervisningsdatum, periodItems);
107
+ const matchedPeriod = (0, exports.findMatchingPeriod)(ForstaUndervisningsdatum, periodItems);
87
108
  const courseSemester = matchedPeriod === null || matchedPeriod === void 0 ? void 0 : matchedPeriod.Kod;
88
109
  const programmeSemester = (_a = programmeInstance.index) === null || _a === void 0 ? void 0 : _a['utbildning.attribut.startperiod.kod'];
89
110
  if (courseSemester && programmeSemester) {
@@ -1 +1 @@
1
- {"version":3,"file":"studyYearUtil.js","sourceRoot":"","sources":["../../src/utils/studyYearUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"studyYearUtil.js","sourceRoot":"","sources":["../../src/utils/studyYearUtil.ts"],"names":[],"mappings":";;;AACA,uCAAmC;AACnC,6CAA0C;AAE7B,QAAA,yCAAyC,GAAG,IAAI,CAAA;AAkB7D,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,IAAY,EAAE,EAAU,EAAW,EAAE,CAC5E,IAAA,mBAAQ,EAAC,IAAI,CAAC,IAAI,IAAA,mBAAQ,EAAC,IAAI,CAAC,IAAI,IAAA,mBAAQ,EAAC,EAAE,CAAC,IAAI,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAA;AAEpE,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAW,EAAE,CACpD,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;AAEnE;;;;;;;EAOE;AAEK,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,OAAqB,EAA0B,EAAE;IAChG,oCAAoC;IACpC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAEpE,oDAAoD;IACpD,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACzB,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAE3F,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;IAChD,CAAC,CAAC,CAAA;IAEF,uDAAuD;IACvD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;AACjF,CAAC,CAAA;AAbY,QAAA,kBAAkB,sBAa9B;AAEM,MAAM,WAAW,GAAG,CAAC,GAAW,EAAU,EAAE;IACjD,IAAI,IAAY,CAAA;IAEhB,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACxB,mCAAmC;QACnC,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACrC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACjC,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAA;IACnC,CAAC;SAAM,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,iCAAiC;QACjC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QAClC,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACpC,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAA;IACnC,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAA;IAC/C,CAAC;AACH,CAAC,CAAA;AAhBY,QAAA,WAAW,eAgBvB;AAEM,MAAM,uBAAuB,GAAG,CACrC,aAAqB,EACrB,aAA2B,EAC3B,eAAuB,EACH,EAAE;IACtB,MAAM,aAAa,GAAG,IAAA,0BAAkB,EAAC,aAAa,EAAE,aAAa,CAAC,CAAA;IACtE,IAAI,CAAC,aAAa;QAAE,OAAM;IAE1B,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,eAAe,CAAC,CAAA;IAC7C,MAAM,cAAc,GAAG,IAAA,mBAAW,EAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAErD,OAAO,cAAc,GAAG,QAAQ,GAAG,CAAC,CAAA;AACtC,CAAC,CAAA;AAZY,QAAA,uBAAuB,2BAYnC;AAEM,MAAM,qBAAqB,GAAG,CACnC,WAAyB,EACzB,aAA2B,EAC3B,eAAuB,EACvB,eAAuB,EACV,EAAE;IACf,MAAM,UAAU,GAAyC,EAAE,CAAA;IAC3D,MAAM,QAAQ,GAAG,IAAA,mBAAW,EAAC,eAAe,CAAC,CAAA;IAE7C,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC3B,MAAM,kBAAkB,GAAqD,EAAE,CAAA;QAE/E,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;YAC/C,MAAM,SAAS,GAAG,IAAA,+BAAuB,EAAC,MAAM,CAAC,uBAAuB,EAAE,aAAa,EAAE,eAAe,CAAC,CAAA;YAEzG,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,oCAAoC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAA;gBAC7D,SAAQ;YACV,CAAC;YAED,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,IAAI,eAAe,EAAE,CAAC;gBACnD,MAAM,eAAe,GAAG,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAA;gBAChD,IAAI,eAAe,GAAG,iDAAyC;oBAAE,OAAM;gBAEvE,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,kBAAkB,CAAC,SAAS,CAAC,GAAG,EAAE,CAAA;gBACpC,CAAC;gBACD,kBAAkB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;QAED,yFAAyF;QACzF,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,eAAe,CAAC,EAAE,EAAE;YACxE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;YAC5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAA;YAE5C,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,iCAChB,MAAM,KACT,kBAAkB,EAAE,eAAe,IACnC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,wDAAwD;IACxD,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACxD,UAAU,EAAE,CAAC,GAAG,CAAC;QACjB,OAAO,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;KACjC,CAAC,CAAC,CAAA;AACL,CAAC,CAAA;AAhDY,QAAA,qBAAqB,yBAgDjC;AAEM,MAAM,yBAAyB,GAAG,CACvC,sBAA8B,EAC9B,mBAA2B,EACZ,EAAE;IACjB,MAAM,uBAAuB,GAAG,IAAA,wBAAW,EAAC,sBAAsB,CAAC,CAAA;IACnE,MAAM,oBAAoB,GAAG,IAAA,wBAAW,EAAC,mBAAmB,CAAC,CAAA;IAE7D,IAAI,CAAC,uBAAuB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACtD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,MAAM,GAAG,uBAAuB,CAAC,QAAQ,KAAK,IAAI,IAAI,oBAAoB,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1G,OAAO,oBAAoB,CAAC,IAAI,GAAG,uBAAuB,CAAC,IAAI,GAAG,MAAM,GAAG,CAAC,CAAA;AAC9E,CAAC,CAAA;AAbY,QAAA,yBAAyB,6BAarC;AAEM,MAAM,iBAAiB,GAAG,CAC/B,cAA6E,EAC7E,iBAAgF,EAChF,WAAyB,EACf,EAAE;IACZ,OAAO,cAAc,CAAC,kBAAkB,CAAC,MAAM,CAAW,CAAC,GAAG,EAAE,EAAE,wBAAwB,EAAE,EAAE,EAAE;;QAC9F,MAAM,aAAa,GAAG,IAAA,0BAAkB,EAAC,wBAAwB,EAAE,WAAW,CAAC,CAAA;QAC/E,MAAM,cAAc,GAAG,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,GAAG,CAAA;QACzC,MAAM,iBAAiB,GAAG,MAAA,iBAAiB,CAAC,KAAK,0CAAG,qCAAqC,CAAC,CAAA;QAE1F,IAAI,cAAc,IAAI,iBAAiB,EAAE,CAAC;YACxC,MAAM,SAAS,GAAG,IAAA,iCAAyB,EAAC,iBAAiB,EAAE,cAAc,CAAC,CAAA;YAC9E,IAAI,SAAS,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC1C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACrB,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC,CAAA;AAnBY,QAAA,iBAAiB,qBAmB7B"}
@@ -0,0 +1 @@
1
+ export declare const isDefined: <T>(value: T) => value is NonNullable<T>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isDefined = void 0;
4
+ const isDefined = (value) => {
5
+ return value !== null && value !== undefined;
6
+ };
7
+ exports.isDefined = isDefined;
8
+ //# sourceMappingURL=typeChecking.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typeChecking.js","sourceRoot":"","sources":["../../src/utils/typeChecking.ts"],"names":[],"mappings":";;;AAAO,MAAM,SAAS,GAAG,CAAI,KAAQ,EAA2B,EAAE;IAChE,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAA;AAC9C,CAAC,CAAA;AAFY,QAAA,SAAS,aAErB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kth/om-kursen-ladok-client",
3
- "version": "1.3.1",
3
+ "version": "1.3.3",
4
4
  "description": "Om kursen specific logic and mappings, uses both @kth/ladok-mellanlager-client and @kth/ladok-attributevarde-utils.",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -21,8 +21,8 @@
21
21
  "build:publish": "npm install --no-workspaces && npm run build"
22
22
  },
23
23
  "dependencies": {
24
- "@kth/ladok-attributvarde-utils": "0.1.0",
25
- "@kth/ladok-mellanlager-client": "0.4.0",
24
+ "@kth/ladok-attributvarde-utils": "0.1.2",
25
+ "@kth/ladok-mellanlager-client": "0.4.2",
26
26
  "date-fns": "^4.1.0",
27
27
  "showdown": "^2.1.0"
28
28
  }