@kth/om-kursen-ladok-client 3.0.0 → 3.1.0

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 (38) hide show
  1. package/dist/attributVardenConstants.d.ts +3 -0
  2. package/dist/attributVardenConstants.js +32 -1
  3. package/dist/attributVardenConstants.js.map +1 -1
  4. package/dist/createApiClient.js +2 -0
  5. package/dist/createApiClient.js.map +1 -1
  6. package/dist/index.d.ts +2 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/kth/KTHPeriod/KTHPeriod.d.ts +1 -0
  9. package/dist/kth/KTHPeriod/KTHPeriod.js.map +1 -1
  10. package/dist/kth/KTHPeriod/extractKTHPeriodSemesterFromLasperiodsfordelning.d.ts +1 -1
  11. package/dist/kth/KTHPeriod/extractKTHPeriodSemesterFromLasperiodsfordelning.js +5 -2
  12. package/dist/kth/KTHPeriod/extractKTHPeriodSemesterFromLasperiodsfordelning.js.map +1 -1
  13. package/dist/kth/KTHPeriod/getKTHPeriodSemesters.d.ts +2 -2
  14. package/dist/report/createReportApi.d.ts +3 -0
  15. package/dist/report/createReportApi.js +22 -0
  16. package/dist/report/createReportApi.js.map +1 -0
  17. package/dist/report/getSchedulingReport.d.ts +4 -0
  18. package/dist/report/getSchedulingReport.js +228 -0
  19. package/dist/report/getSchedulingReport.js.map +1 -0
  20. package/dist/report/index.d.ts +4 -0
  21. package/dist/report/index.js +10 -0
  22. package/dist/report/index.js.map +1 -0
  23. package/dist/report/mapCourseInstanceToSchedulingReportCourse.d.ts +14 -0
  24. package/dist/report/mapCourseInstanceToSchedulingReportCourse.js +111 -0
  25. package/dist/report/mapCourseInstanceToSchedulingReportCourse.js.map +1 -0
  26. package/dist/report/types.d.ts +33 -0
  27. package/dist/report/types.js +3 -0
  28. package/dist/report/types.js.map +1 -0
  29. package/dist/types/OmKursenLadokApiClient.d.ts +2 -0
  30. package/dist/utils/concurrentTasks.js +13 -7
  31. package/dist/utils/concurrentTasks.js.map +1 -1
  32. package/dist/utils/partOfProgrammeUtil.d.ts +1 -1
  33. package/dist/utils/partOfProgrammeUtil.js +13 -4
  34. package/dist/utils/partOfProgrammeUtil.js.map +1 -1
  35. package/dist/utils/programmeStructureUtil.d.ts +7 -0
  36. package/dist/utils/programmeStructureUtil.js +4 -3
  37. package/dist/utils/programmeStructureUtil.js.map +1 -1
  38. package/package.json +1 -1
@@ -1,6 +1,9 @@
1
1
  export declare const ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES: string;
2
+ export declare const INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES: string;
2
3
  export declare const INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SEARCH: string;
3
4
  export declare const INSTANS_ATTRIBUT_VARDEN_FOR_PROGRAMME_VERSION: string;
4
5
  export declare const INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_SYLLABUS: string;
5
6
  export declare const ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE: string;
6
7
  export declare const INSTANS_ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE: string;
8
+ export declare const ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING: string;
9
+ export declare const INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING: string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.INSTANS_ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE = exports.ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE = exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_SYLLABUS = exports.INSTANS_ATTRIBUT_VARDEN_FOR_PROGRAMME_VERSION = exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SEARCH = exports.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES = void 0;
3
+ exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING = exports.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING = exports.INSTANS_ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE = exports.ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE = exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_SYLLABUS = exports.INSTANS_ATTRIBUT_VARDEN_FOR_PROGRAMME_VERSION = exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SEARCH = exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES = exports.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES = void 0;
4
4
  // Results in more than 20 attributvarden
5
5
  const ATTRIBUT_VARDEN_FOR_COURSE_VERSIONS = [
6
6
  'utbildning.attribut.betygsskala',
@@ -48,6 +48,13 @@ exports.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES = [
48
48
  'utbildning.lokalt.attribut.29.fullsatt',
49
49
  'utbildning.attribut.startperiod',
50
50
  ].join(',');
51
+ exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES = [
52
+ 'utbildningstyp',
53
+ 'utbildning.attribut.kod',
54
+ 'utbildning.attribut.svensk.benamning',
55
+ 'utbildning.attribut.engelsk.benamning',
56
+ 'utbildning.attribut.omfattning',
57
+ ].join(',');
51
58
  // Results in more than 20 attributvarden
52
59
  const ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SEARCH = [
53
60
  ...exports.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES.split(','),
@@ -145,4 +152,28 @@ exports.INSTANS_ATTRIBUT_VARDEN_FOR_ACTIVE_PROGRAMME_INSTANCE = [
145
152
  'utbildning.attribut.kod',
146
153
  'utbildning.attribut.omfattning',
147
154
  ].join(',');
155
+ exports.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING = [
156
+ 'utbildning.attribut.utbildningsplatser',
157
+ 'utbildning.attribut.startperiod',
158
+ 'utbildning.attribut.finansieringsform',
159
+ 'utbildning.attribut.studietakt',
160
+ 'status',
161
+ 'installt',
162
+ 'utbildning.attribut.utbildningstillfalleskod',
163
+ 'utbildning.lokalt.attribut.29.minantalplatser',
164
+ 'utbildning.lokalt.attribut.29.fullsatt',
165
+ 'utbildning.attribut.organisation',
166
+ ].join(',');
167
+ exports.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING = [
168
+ 'utbildningstyp',
169
+ 'utbildning.attribut.kod',
170
+ 'utbildning.attribut.svensk.benamning',
171
+ 'utbildning.attribut.engelsk.benamning',
172
+ 'utbildning.attribut.omfattning',
173
+ 'versionsnummer',
174
+ 'utbildning.attribut.betygsskala',
175
+ 'avvecklad',
176
+ 'utbildning.lokalt.attribut.29.kortnamn.sv',
177
+ 'utbildning.lokalt.attribut.29.kortnamn.en',
178
+ ].join(',');
148
179
  //# sourceMappingURL=attributVardenConstants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"attributVardenConstants.js","sourceRoot":"","sources":["../src/attributVardenConstants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attributVardenConstants.js","sourceRoot":"","sources":["../src/attributVardenConstants.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ const mergeResponses_1 = require("./utils/mergeResponses");
32
32
  const getAllEntitiesByUseOfContinuation_1 = require("./utils/getAllEntitiesByUseOfContinuation");
33
33
  const responseUtils_1 = require("./utils/responseUtils");
34
34
  const statusUtils_1 = require("./utils/statusUtils");
35
+ const createReportApi_1 = require("./report/createReportApi");
35
36
  const filterAndMapCourseInstances = (items, language, partOfProgrammes) => {
36
37
  return items
37
38
  .map(x => (0, mapCourseInstance_1.mapCourseInstance)(x, language, partOfProgrammes === null || partOfProgrammes === void 0 ? void 0 : partOfProgrammes[x.tillfalle_uid]))
@@ -96,6 +97,7 @@ const createApiClient = (config) => {
96
97
  }),
97
98
  Search: (0, createSearchApi_1.createSearchApi)(ladokClient),
98
99
  Programme: (0, createProgrammeApi_1.createProgrammeApi)(ladokClient),
100
+ Report: (0, createReportApi_1.createReportApi)(ladokClient),
99
101
  getActiveCourseInstances: (courseCode, language) => __awaiter(void 0, void 0, void 0, function* () {
100
102
  const currentDate = (0, utils_1.getFormattedCurrentDate)();
101
103
  const result = yield (0, getAllEntitiesByUseOfContinuation_1.getAllEntitiesByUseOfContinuation)(ladokClient.sokKursTillfalleSlim, Object.assign(Object.assign({}, DEFAULT_COURSE_INSTANCES_QUERY_PARAMS), { kodEllerBenamning: courseCode, pagaendeDatum: currentDate }));
@@ -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":";;;;;;;;;;;;AAAA,4EAUsC;AAGtC,yDAAqD;AACrD,2DAAuD;AACvD,mCAIgB;AAEhB,6DAAyD;AACzD,8EAAoF;AACpF,2EAA4G;AAC5G,2EAAwE;AACxE,mEAKmC;AACnC,2DAAuD;AACvD,mEAAoF;AAEpF,qEAAiE;AACjE,8DAA0D;AAC1D,uEAAgF;AAChF,yDAK8B;AAC9B,uEAAkE;AAClE,qDAAoD;AACpD,uEAAmE;AACnE,2DAA4E;AAC5E,iGAA6F;AAC7F,yDAA8E;AAC9E,qDAAkD;AAClD,8DAA0D;AAE1D,MAAM,2BAA2B,GAAG,CAClC,KAA2E,EAC3E,QAAkB,EAClB,gBAAoD,EACpD,EAAE;IACF,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,qCAAiB,EAAC,CAAC,EAAE,QAAQ,EAAE,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;SAC7E,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC;SAC5B,MAAM,CAAC,iDAAyC,CAAC;SACjD,MAAM,CAAC,qDAA6C,CAAC,CAAA;AAC1D,CAAC,CAAA;AAED,MAAM,qCAAqC,GAAqC;IAC9E,SAAS,EAAE,MAAM;IACjB,cAAc,EAAE,8DAAoC;IACpD,qBAAqB,EAAE,gBAAgB;IACvC,YAAY,EAAE,kCAAiB;CAChC,CAAA;AAEM,MAAM,eAAe,GAAG,CAAC,MAAuC,EAA0B,EAAE;IACjG,MAAM,WAAW,GAAG,IAAA,uCAA4B,EAAC,MAAM,CAAC,CAAA;IACxD,OAAO;QACL,sBAAsB,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,EAAE;YACrD,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EACpD,WAAW,CAAC,qBAAqB,EACjC;gBACE,iBAAiB,EAAE,UAAU;gBAC7B,SAAS,EAAE,MAAM;gBACjB,YAAY,EAAE,kCAAiB;gBAC/B,sBAAsB,EAAE,MAAM;aAC/B,EACD;gBACE,wBAAwB,EAAE,IAAI;gBAC9B,yBAAyB,EAAE,EAAE;aAC9B,CACF,CAAA;YAED,MAAM,WAAW,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;YAEpD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,uCACK,MAAM,CAAC,YAAY,KACtB,UAAU,EAAE,GAAG,EACf,OAAO,EAAE,WAAW,IACrB;YACH,CAAC;YAED,MAAM,MAAM,GAAG,WAAW;iBACvB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,gDAAoB,EAAC,CAAC,CAAC,cAAc,CAAC,GAAG,IAAA,gDAAoB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC;iBAC/F,EAAE,CAAC,CAAC,CAAC,CAAA;YACR,MAAM,kBAAkB,GAAG,MAAM,IAAA,0CAAqB,EAAC,WAAW,CAAC,CAAA;YACnE,MAAM,YAAY,GAAG,IAAA,mCAAgB,EAAC,MAAO,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAA;YAC5E,uCAAY,MAAM,CAAC,YAAY,GAAK,YAAY,EAAE;QACpD,CAAC,CAAA;QAED,wCAAwC,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,EAAE;YACvE,MAAM,aAAa,GAA+B;gBAChD,iBAAiB,EAAE,UAAU;gBAC7B,SAAS,EAAE,MAAM;gBACjB,YAAY,EAAE,kCAAiB;gBAC/B,sBAAsB,EAAE,MAAM;aAC/B,CAAA;YAED,MAAM,CAAC,0BAA0B,EAAE,gCAAgC,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACvF,IAAA,qEAAiC,EAC/B,WAAW,CAAC,qBAAqB,EACjC,aAAa,CACd;gBACD,IAAA,qEAAiC,EAC/B,WAAW,CAAC,qBAAqB,kCAC5B,aAAa,KAAE,SAAS,EAAE,MAAM,IACtC;aACF,CAAC,CAAA;YAEF,MAAM,iBAAiB,GAAG,IAAA,wCAAwB,EAAC,0BAA0B,CAAC,CAAA;YAC9E,MAAM,oBAAoB,GAAG,IAAA,wCAAwB,EAAC,gCAAgC,CAAC,CAAA;YAEvF,MAAM,8BAA8B,GAAG,IAAA,kCAAiB,EACtD,0BAA0B,CAAC,YAAY,EACvC,gCAAgC,CAAC,YAAY,CAC9C,CAAA;YAED,MAAM,qCAAqC,GAAG,IAAA,iCAAgB,EAC5D,iBAAiB,EACjB,oBAAoB,EACpB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAY,CAC1B,CAAA;YAED,IAAI,qCAAqC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvD,uCACK,8BAA8B,KACjC,UAAU,EAAE,GAAG,EACf,OAAO,EAAE,WAAW,IACrB;YACH,CAAC;YAED,MAAM,MAAM,GAAG,qCAAqC;iBACjD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAA,gDAAoB,EAAC,CAAC,CAAC,cAAc,CAAC,GAAG,IAAA,gDAAoB,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC;iBAC/F,EAAE,CAAC,CAAC,CAAC,CAAA;YACR,MAAM,kBAAkB,GAAG,MAAM,IAAA,0CAAqB,EAAC,WAAW,CAAC,CAAA;YACnE,MAAM,YAAY,GAAG,IAAA,mCAAgB,EAAC,MAAO,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAA;YAC5E,uCAAY,8BAA8B,GAAK,YAAY,EAAE;QAC/D,CAAC,CAAA;QAED,MAAM,EAAE,IAAA,iCAAe,EAAC,WAAW,CAAC;QACpC,SAAS,EAAE,IAAA,uCAAkB,EAAC,WAAW,CAAC;QAC1C,MAAM,EAAE,IAAA,iCAAe,EAAC,WAAW,CAAC;QAEpC,wBAAwB,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,EAAE;YACvD,MAAM,WAAW,GAAG,IAAA,+BAAuB,GAAE,CAAA;YAE7C,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EAGpD,WAAW,CAAC,oBAAoB,kCAC7B,qCAAqC,KACxC,iBAAiB,EAAE,UAAU,EAC7B,aAAa,EAAE,WAAW,IAC1B,CAAA;YAEF,MAAM,WAAW,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;YACpD,OAAO,2BAA2B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC3D,CAAC,CAAA;QAED,iCAAiC,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,EAAE;YAChE,MAAM,WAAW,GAAG,IAAA,+BAAuB,GAAE,CAAA;YAE7C,MAAM,aAAa,mCACd,qCAAqC,KACxC,iBAAiB,EAAE,UAAU,GAC9B,CAAA;YAED,MAAM,CAAC,mBAAmB,EAAE,qBAAqB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrE,IAAA,qEAAiC,EAC/B,WAAW,CAAC,oBAAoB,kBAE9B,aAAa,EAAE,WAAW,IACvB,aAAa,EAEnB;gBACD,IAAA,qEAAiC,EAC/B,WAAW,CAAC,oBAAoB,kBAE9B,cAAc,EAAE,IAAA,gCAAW,EAAC,WAAW,CAAC,IACrC,aAAa,EAEnB;aACF,CAAC,CAAA;YAEF,MAAM,wBAAwB,GAAG,IAAA,wCAAwB,EAAC,mBAAmB,CAAC,CAAA;YAC9E,MAAM,0BAA0B,GAAG,IAAA,wCAAwB,EAAC,qBAAqB,CAAC,CAAA;YAElF,MAAM,mCAAmC,GAAG,IAAA,iCAAgB,EAC1D,wBAAwB,EACxB,0BAA0B,EAC1B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAC3B,CAAA;YAED,IAAI,CAAC,mCAAmC,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,2BAA2B,CAAC,mCAAmC,EAAE,QAAQ,CAAC,CAAA;gBACzF,MAAM,QAAQ,GAAG,IAAA,0BAAY,EAAC,MAAM,CAAC,CAAA;gBACrC,OAAO,QAAQ,CAAA;YACjB,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAA,CAAC,0BAA0B;YACrE,MAAM,WAAW,GAAG,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAA;YAEzC,MAAM,gBAAgB,GAAG,MAAM,IAAA,yCAAmB,EAChD,mCAAmC,EACnC,WAAW,CAAC,MAAM,EAClB,WAAW,CACZ,CAAA;YAED,MAAM,MAAM,GAAG,2BAA2B,CAAC,mCAAmC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAA;YAC3G,MAAM,QAAQ,GAAG,IAAA,0BAAY,EAAC,MAAM,CAAC,CAAA;YACrC,OAAO,QAAQ,CAAA;QACjB,CAAC,CAAA;QAED,4BAA4B,EAAE,CAAO,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE;YACvE,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EAGpD,WAAW,CAAC,oBAAoB,kCAC7B,qCAAqC,KACxC,iBAAiB,EAAE,UAAU,EAC7B,cAAc,EAAE,UAAU,IAC1B,CAAA;YAEF,MAAM,WAAW,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;YACpD,OAAO,2BAA2B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC3D,CAAC,CAAA;QAED,qCAAqC,EAAE,CAAO,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE;YACjF,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EAGpD,WAAW,CAAC,oBAAoB,kCAC7B,qCAAqC,KACxC,iBAAiB,EAAE,UAAU,EAC7B,WAAW,EAAE,WAAW,IACxB,CAAA;YAEF,MAAM,WAAW,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;YACpD,OAAO,2BAA2B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC3D,CAAC,CAAA;QACD,kBAAkB,EAAE,CAAO,GAAG,EAAE,QAAQ,EAAE,EAAE;YAC1C,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,mCAAmC,CAAC,GAAG,CAAC,CAAA;YACzE,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAC5G,CAAC,CACF,CAAA,CAAC,wDAAwD;gBAE1D,IAAI,CAAC,IAAI;oBAAE,OAAO,SAAS,CAAA;gBAE3B,OAAO,IAAA,uCAAkB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC,CAAA;QACD,8CAA8C,EAAE,CAAO,uBAAuB,EAAE,QAAQ,EAAE,EAAE;YAC1F,MAAM,oBAAoB,GAAG,MAAM,WAAW,CAAC,wBAAwB,CAAC,uBAAuB,EAAE;gBAC/F,cAAc,EAAE,wBAAwB;aACzC,CAAC,CAAA;YACF,IAAI,oBAAoB,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAA,oBAAoB,aAApB,oBAAoB,uBAApB,oBAAoB,CAAE,IAAI,CAAA,EAAE,CAAC;gBACzE,OAAO,IAAA,oCAAW,EAAC,iDAAiD,EAAE,oBAAoB,CAAC,YAAY,CAAC,CAAA;YAC1G,CAAC;YAED,MAAM,qBAAqB,GAAG,IAAA,yCAAa,EAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAA;YAC/G,MAAM,kBAAkB,GAAG,MAAM,IAAA,8CAAqB,EAAC,qBAAsB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;YACrG,MAAM,2BAA2B,GAAG,IAAA,gDAAuB,EAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;YACzF,OAAO,2BAA2B,CAAA;QACpC,CAAC,CAAA;QACD,4CAA4C,EAAE,CAAO,qBAAqB,EAAE,QAAQ,EAAE,EAAE;YACtF,MAAM,kBAAkB,GAAG,MAAM,IAAA,8CAAqB,EAAC,qBAAqB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;YACpG,MAAM,2BAA2B,GAAG,IAAA,gDAAuB,EAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;YACzF,OAAO,2BAA2B,CAAA;QACpC,CAAC,CAAA;QACD,0BAA0B,EAAE,CAAO,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACtE,MAAM,iBAAiB,GAAG,MAAM,IAAA,qCAAqB,EAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;YAErG,OAAO,iBAAiB,CAAA;QAC1B,CAAC,CAAA;QAED,mBAAmB,EAAE,CAAO,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAC/D,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAM,IAAA,oCAAoB,EAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;gBACnG,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,GAAG,EAAE,CAAA;YAC9C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC,CAAA;QAED,+BAA+B,EAAE,CAAO,uBAAuB,EAAE,QAAQ,EAAE,EAAE;YAC3E,OAAO,MAAM,IAAA,gDAAuB,EAAC,uBAAuB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;QACtF,CAAC,CAAA;QAED,uBAAuB,EAAE,qDAAqE,EAAE,4FAAhE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,GAAG,KAAK;YAC1F,OAAO,MAAM,IAAA,8CAA8B,EAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAA;QAChH,CAAC,CAAA;QACD,iBAAiB,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAC1D,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EAA4B,WAAW,CAAC,OAAO,EAAE;oBACrG,iBAAiB,EAAE,UAAU;oBAC7B,SAAS,EAAE,MAAM;oBACjB,SAAS,EAAE,UAAU;oBACrB,YAAY,EAAE,kCAAiB;iBAChC,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;gBACnD,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAA,CAAC,0BAA0B;gBACrE,MAAM,WAAW,GAAG,IAAA,4BAAY,EAAC,OAAO,CAAC,CAAA;gBAEzC,MAAM,cAAc,GAAG,IAAA,2CAAsB,EAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;gBAEvF,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,gCAAgC,UAAU,gBAAgB,QAAQ,GAAG,CAAC,CAAA;gBACxF,CAAC;gBAED,MAAM,qBAAqB,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAA;gBAExD,MAAM,kBAAkB,GAAG,MAAM,IAAA,8CAAqB,EAAC,qBAAqB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;gBAEpG,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,+DAA+D,qBAAqB,EAAE,CAAC,CAAA;gBACzG,CAAC;gBACD,MAAM,2BAA2B,GAAG,IAAA,gDAAuB,EAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;gBAEzF,MAAM,kBAAkB,GAAG,MAAM,IAAA,0CAAqB,EAAC,WAAW,CAAC,CAAA;gBACnE,MAAM,cAAc,GAAG,IAAA,qCAAiB,EACtC,cAAc,EACd,kBAAkB,EAClB,2BAA2B,EAC3B,QAAQ,CACT,CAAA;gBACD,OAAO,cAAc,CAAA;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAA;YACzD,CAAC;QACH,CAAC,CAAA;QACD,oBAAoB,EAAE,CAAO,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YAChE,MAAM,iBAAiB,GAAG,MAAM,IAAA,gDAAgC,EAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;YAChH,OAAO,iBAAiB,CAAA;QAC1B,CAAC,CAAA;QACD,mBAAmB,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,EAAE;YAClD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EAA4B,WAAW,CAAC,OAAO,EAAE;oBACrG,iBAAiB,EAAE,UAAU;oBAC7B,SAAS,EAAE,MAAM;oBACjB,YAAY,EAAE,kCAAiB;iBAChC,CAAC,CAAA;gBAEF,MAAM,UAAU,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;gBAEnD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;gBACtC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,iDAAiD;gBACtF,MAAM,kBAAkB,GAAG,MAAM,IAAA,0CAAqB,EAAC,WAAW,CAAC,CAAA;gBAEnE,MAAM,qBAAqB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAA;gBAErE,MAAM,kBAAkB,GAAG,MAAM,IAAA,8CAAqB,EAAC,qBAAqB,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;gBAEpG,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,+DAA+D,qBAAqB,EAAE,CAAC,CAAA;gBACzG,CAAC;gBAED,MAAM,2BAA2B,GAAG,IAAA,gDAAuB,EAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;gBAEzF,MAAM,gBAAgB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,QAAa,EAAE,EAAE,CAC5D,IAAA,qCAAiB,EAAC,QAAQ,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,QAAQ,CAAC,CACvF,CAAA;gBACD,OAAO,gBAAgB,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC,CAAA;QACD,2BAA2B,EAAE,CAAO,UAAU,EAAE,QAAQ,EAAE,EAAE;YAC1D,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAA,qEAAiC,EAA4B,WAAW,CAAC,OAAO,EAAE;oBACrG,iBAAiB,EAAE,UAAU;oBAC7B,SAAS,EAAE,MAAM;oBACjB,SAAS,EAAE,UAAU;oBACrB,YAAY,EAAE,kCAAiB;iBAChC,CAAC,CAAA;gBAEF,MAAM,WAAW,GAAG,IAAA,wCAAwB,EAAC,MAAM,CAAC,CAAA;gBAEpD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;gBACvC,IAAI,UAAU,CAAA;gBACd,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO;oBAClB,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC,0CAA0C;;oBAClE,UAAU,GAAG,IAAI,CAAA;gBACtB,MAAM,gBAAgB,GAAG,IAAA,mCAAc,EAAC,UAAU,CAAC,CAAA,CAAC,yGAAyG;gBAC7J,MAAM,gBAAgB,GAAG,IAAA,iDAA4B,EAAC,gBAAgB,CAAC,CAAA,CAAC,oEAAoE;gBAE5I,MAAM,kBAAkB,GAAG,MAAM,IAAA,0CAAqB,EAAC,WAAW,CAAC,CAAA;gBACnE,MAAM,gBAAgB,GAAG,EAAE,CAAA;gBAC3B,MAAM,WAAW,GAAG,IAAI,GAAG,EAAe,CAAA;gBAE1C,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;oBACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAA;oBAEhC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC1B,MAAM,kBAAkB,GAAG,MAAM,IAAA,8CAAqB,EAAC,GAAG,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;wBAElF,IAAI,CAAC,kBAAkB,EAAE,CAAC;4BACxB,MAAM,IAAI,KAAK,CAAC,+DAA+D,GAAG,EAAE,CAAC,CAAA;wBACvF,CAAC;wBAED,MAAM,SAAS,GAAG,IAAA,gDAAuB,EAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAA;wBACvE,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;oBACjC,CAAC;oBAED,MAAM,2BAA2B,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBACxD,MAAM,MAAM,GAAG,IAAA,qCAAiB,EAAC,QAAQ,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,QAAQ,CAAC,CAAA;oBAErG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC/B,CAAC;gBACD,OAAO,gBAAgB,CAAA;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC,CAAA;QACD,mBAAmB,EAAE,GAAS,EAAE;YAC9B,MAAM,aAAa,GAAG,MAAM,IAAA,qCAAgB,EAAC,WAAW,CAAC,CAAA;YACzD,OAAO,aAAa,CAAA;QACtB,CAAC,CAAA;QACD,wBAAwB,EAAE,GAAS,EAAE;YACnC,MAAM,kBAAkB,GAAG,MAAM,IAAA,0CAAqB,EAAC,WAAW,CAAC,CAAA;YACnE,OAAO,kBAAkB,CAAA;QAC3B,CAAC,CAAA;QACD,UAAU,EAAE,GAAS,EAAE;YACrB,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAA;YAC1C,OAAO,OAAO,CAAA;QAChB,CAAC,CAAA;QACD,OAAO,EAAE,IAAA,oCAAgB,EAAC,WAAW,CAAC;KACvC,CAAA;AACH,CAAC,CAAA;AAvXY,QAAA,eAAe,mBAuX3B"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,8 @@ export type { OmKursenLadokApiClient } from './types/OmKursenLadokApiClient';
6
6
  export type { ProgrammeCurriculum } from './utils/programmeUtil';
7
7
  export type { ProgrammeCurriculumStudyYear } from './utils/programmeUtil';
8
8
  export type { ProgrammeCourse } from './utils/programmeStructureUtil';
9
+ export type { SchedulingReport, SchedulingReportProgramme, SchedulingReportCourse } from './report';
10
+ export type { Language } from './utils/languageUtil';
9
11
  export type { Tillfallesperiod } from './mapCourseInstance';
10
12
  export * from './utils/AcademicSemester';
11
13
  export * from './kth';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,4EAAsF;AAA7E,iIAAA,oBAAoB,OAAA;AAAE,4HAAA,eAAe,OAAA;AAC9C,mDAAqD;AAA5C,8GAAA,eAAe,OAAA;AAUxB,2DAAwC;AACxC,wCAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,oDAAiC;AACjC,4EAAsF;AAA7E,iIAAA,oBAAoB,OAAA;AAAE,4HAAA,eAAe,OAAA;AAC9C,mDAAqD;AAA5C,8GAAA,eAAe,OAAA;AAaxB,2DAAwC;AACxC,wCAAqB"}
@@ -4,6 +4,7 @@ export type KTHPeriodLabel = `P${KTHPeriod}`;
4
4
  export type KTHPeriodSemester = {
5
5
  semester: AcademicSemester;
6
6
  period: KTHPeriod;
7
+ credits?: number;
7
8
  };
8
9
  export type KTHPeriodDefinition = {
9
10
  fromDate: Date;
@@ -1 +1 @@
1
- {"version":3,"file":"KTHPeriod.js","sourceRoot":"","sources":["../../../src/kth/KTHPeriod/KTHPeriod.ts"],"names":[],"mappings":";;;AAAA,uCAA8D;AAkBvD,MAAM,eAAe,GAAG,CAAC,SAAoB,EAAE,EAAE;IACtD,OAAO,IAAI,SAAS,EAAoB,CAAA;AAC1C,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAED,MAAM,KAAK,GAAG,YAAY,CAAA;AAEnB,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,EAAE;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACnC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;AACtC,CAAC,CAAA;AAPY,QAAA,cAAc,kBAO1B;AAEM,MAAM,gBAAgB,GAAG,CAAC,CAAS,EAAuB,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAApE,QAAA,gBAAgB,oBAAoD;AAE1E,MAAM,8BAA8B,GAAG,CAAC,MAAiB,EAA8B,EAAE;IAC9F,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,CAAC,CAAC;QACP,KAAK,CAAC,CAAC;QACP,KAAK,CAAC;YACJ,OAAO,sBAAc,CAAC,MAAM,CAAA;QAC9B,KAAK,CAAC,CAAC;QACP,KAAK,CAAC,CAAC;QACP,KAAK,CAAC;YACJ,OAAO,sBAAc,CAAC,MAAM,CAAA;IAChC,CAAC;AACH,CAAC,CAAA;AAXY,QAAA,8BAA8B,kCAW1C;AAEM,MAAM,gBAAgB,GAAG,CAAC,CAAY,EAAE,CAAY,EAAE,EAAE;IAC7D,OAAO,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;AAC1C,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B;AAED,MAAM,YAAY,GAAG,CAAC,SAAoB,EAAE,EAAE;IAC5C,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;IACZ,CAAC;AACH,CAAC,CAAA;AAEM,MAAM,wBAAwB,GAAG,CAAC,CAAoB,EAAE,CAAoB,EAAE,EAAE;IACrF,MAAM,kBAAkB,GAAG,wBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC3E,IAAI,kBAAkB,KAAK,CAAC;QAAE,OAAO,kBAAkB,CAAA;IAEvD,OAAO,IAAA,wBAAgB,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC,CAAA;AALY,QAAA,wBAAwB,4BAKpC;AAEM,MAAM,uBAAuB,GAAG,CAAC,iBAAoC,EAAE,EAAE;IAC9E,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAA,uBAAe,EAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAA;AAC1F,CAAC,CAAA;AAFY,QAAA,uBAAuB,2BAEnC"}
1
+ {"version":3,"file":"KTHPeriod.js","sourceRoot":"","sources":["../../../src/kth/KTHPeriod/KTHPeriod.ts"],"names":[],"mappings":";;;AAAA,uCAA8D;AAmBvD,MAAM,eAAe,GAAG,CAAC,SAAoB,EAAE,EAAE;IACtD,OAAO,IAAI,SAAS,EAAoB,CAAA;AAC1C,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAED,MAAM,KAAK,GAAG,YAAY,CAAA;AAEnB,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAE,EAAE;IAClD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACnC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;AACtC,CAAC,CAAA;AAPY,QAAA,cAAc,kBAO1B;AAEM,MAAM,gBAAgB,GAAG,CAAC,CAAS,EAAuB,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAApE,QAAA,gBAAgB,oBAAoD;AAE1E,MAAM,8BAA8B,GAAG,CAAC,MAAiB,EAA8B,EAAE;IAC9F,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,CAAC,CAAC;QACP,KAAK,CAAC,CAAC;QACP,KAAK,CAAC;YACJ,OAAO,sBAAc,CAAC,MAAM,CAAA;QAC9B,KAAK,CAAC,CAAC;QACP,KAAK,CAAC,CAAC;QACP,KAAK,CAAC;YACJ,OAAO,sBAAc,CAAC,MAAM,CAAA;IAChC,CAAC;AACH,CAAC,CAAA;AAXY,QAAA,8BAA8B,kCAW1C;AAEM,MAAM,gBAAgB,GAAG,CAAC,CAAY,EAAE,CAAY,EAAE,EAAE;IAC7D,OAAO,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAA;AAC1C,CAAC,CAAA;AAFY,QAAA,gBAAgB,oBAE5B;AAED,MAAM,YAAY,GAAG,CAAC,SAAoB,EAAE,EAAE;IAC5C,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;QACV,KAAK,CAAC;YACJ,OAAO,CAAC,CAAA;IACZ,CAAC;AACH,CAAC,CAAA;AAEM,MAAM,wBAAwB,GAAG,CAAC,CAAoB,EAAE,CAAoB,EAAE,EAAE;IACrF,MAAM,kBAAkB,GAAG,wBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC3E,IAAI,kBAAkB,KAAK,CAAC;QAAE,OAAO,kBAAkB,CAAA;IAEvD,OAAO,IAAA,wBAAgB,EAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7C,CAAC,CAAA;AALY,QAAA,wBAAwB,4BAKpC;AAEM,MAAM,uBAAuB,GAAG,CAAC,iBAAoC,EAAE,EAAE;IAC9E,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAA,uBAAe,EAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAA;AAC1F,CAAC,CAAA;AAFY,QAAA,uBAAuB,2BAEnC"}
@@ -1,7 +1,7 @@
1
1
  import { Tillfallesperiod, Lasperiodsfordelning } from '../../mapCourseInstance';
2
2
  import { KTHPeriodSemester } from './KTHPeriod';
3
3
  type RelevantTillfallesperiod = Pick<Tillfallesperiod, 'ForstaUndervisningsdatum'> & {
4
- Lasperiodsfordelning: Pick<Lasperiodsfordelning, 'Lasperiodskod'>[];
4
+ Lasperiodsfordelning: Pick<Lasperiodsfordelning, 'Lasperiodskod' | 'Omfattningsvarde'>[];
5
5
  };
6
6
  export declare const extractKTHPeriodSemesterFromLasperiodsfordelning: (tillfallesperioder: RelevantTillfallesperiod[] | undefined) => KTHPeriodSemester[] | undefined;
7
7
  export {};
@@ -22,7 +22,10 @@ const extractKTHPeriodSemesterFromLasperiodsfordelning = (tillfallesperioder) =>
22
22
  exports.extractKTHPeriodSemesterFromLasperiodsfordelning = extractKTHPeriodSemesterFromLasperiodsfordelning;
23
23
  const strictIsoDate = /^(?:[0-9]{4})-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$/;
24
24
  const isStrictIsoDate = (s) => strictIsoDate.test(s);
25
- const extractKHTPeriodFromLasperiodsfordelning = (yearOfFirstTuitionDate) => ({ Lasperiodskod }) => {
26
- return (0, createKTHPeriodSemester_1.createKTHPeriodSemester)(yearOfFirstTuitionDate, Lasperiodskod);
25
+ const extractKHTPeriodFromLasperiodsfordelning = (yearOfFirstTuitionDate) => ({ Lasperiodskod, Omfattningsvarde, }) => {
26
+ const basePeriod = (0, createKTHPeriodSemester_1.createKTHPeriodSemester)(yearOfFirstTuitionDate, Lasperiodskod);
27
+ if (!basePeriod)
28
+ return undefined;
29
+ return Object.assign(Object.assign({}, basePeriod), (Omfattningsvarde !== undefined && { credits: Omfattningsvarde }));
27
30
  };
28
31
  //# sourceMappingURL=extractKTHPeriodSemesterFromLasperiodsfordelning.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"extractKTHPeriodSemesterFromLasperiodsfordelning.js","sourceRoot":"","sources":["../../../src/kth/KTHPeriod/extractKTHPeriodSemesterFromLasperiodsfordelning.ts"],"names":[],"mappings":";;;AACA,2DAAuE;AACvE,uEAAmE;AACnE,2CAAyE;AAMlE,MAAM,gDAAgD,GAAG,CAC9D,kBAA0D,EACzB,EAAE;IACnC,IAAI,CAAC,IAAA,gCAAiB,EAAC,kBAAkB,CAAC;QAAE,OAAO,SAAS,CAAA;IAE5D,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,EAAE,EAAE;QACnG,IAAI,CAAC,IAAA,gCAAiB,EAAC,oBAAoB,CAAC;YAAE,OAAO,SAAS,CAAA;QAE9D,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC;YAAE,OAAO,SAAS,CAAA;QAEhE,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,wBAAwB,CAAC,CAAA;QAE3D,OAAO,oBAAoB,CAAC,GAAG,CAAC,wCAAwC,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IAC3G,CAAC,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,wBAAS,CAAC,CAAA;IAEtD,iBAAiB,CAAC,IAAI,CAAC,oCAAwB,CAAC,CAAA;IAEhD,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AApBY,QAAA,gDAAgD,oDAoB5D;AAED,MAAM,aAAa,GAAG,0DAA0D,CAAA;AAEhF,MAAM,eAAe,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAErE,MAAM,wCAAwC,GAC5C,CAAC,sBAA8B,EAAE,EAAE,CACnC,CAAC,EAAE,aAAa,EAA+C,EAAiC,EAAE;IAChG,OAAO,IAAA,iDAAuB,EAAC,sBAAsB,EAAE,aAAa,CAAC,CAAA;AACvE,CAAC,CAAA"}
1
+ {"version":3,"file":"extractKTHPeriodSemesterFromLasperiodsfordelning.js","sourceRoot":"","sources":["../../../src/kth/KTHPeriod/extractKTHPeriodSemesterFromLasperiodsfordelning.ts"],"names":[],"mappings":";;;AACA,2DAAuE;AACvE,uEAAmE;AACnE,2CAAyE;AAMlE,MAAM,gDAAgD,GAAG,CAC9D,kBAA0D,EACzB,EAAE;IACnC,IAAI,CAAC,IAAA,gCAAiB,EAAC,kBAAkB,CAAC;QAAE,OAAO,SAAS,CAAA;IAE5D,MAAM,UAAU,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,EAAE,EAAE;QACnG,IAAI,CAAC,IAAA,gCAAiB,EAAC,oBAAoB,CAAC;YAAE,OAAO,SAAS,CAAA;QAE9D,IAAI,CAAC,eAAe,CAAC,wBAAwB,CAAC;YAAE,OAAO,SAAS,CAAA;QAEhE,MAAM,gBAAgB,GAAG,IAAI,IAAI,CAAC,wBAAwB,CAAC,CAAA;QAE3D,OAAO,oBAAoB,CAAC,GAAG,CAAC,wCAAwC,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;IAC3G,CAAC,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,wBAAS,CAAC,CAAA;IAEtD,iBAAiB,CAAC,IAAI,CAAC,oCAAwB,CAAC,CAAA;IAEhD,OAAO,iBAAiB,CAAA;AAC1B,CAAC,CAAA;AApBY,QAAA,gDAAgD,oDAoB5D;AAED,MAAM,aAAa,GAAG,0DAA0D,CAAA;AAEhF,MAAM,eAAe,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAErE,MAAM,wCAAwC,GAC5C,CAAC,sBAA8B,EAAE,EAAE,CACnC,CAAC,EACC,aAAa,EACb,gBAAgB,GACiD,EAAiC,EAAE;IACpG,MAAM,UAAU,GAAG,IAAA,iDAAuB,EAAC,sBAAsB,EAAE,aAAa,CAAC,CAAA;IAEjF,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAA;IAEjC,uCACK,UAAU,GACV,CAAC,gBAAgB,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,EACrE;AACH,CAAC,CAAA"}
@@ -11,6 +11,6 @@ import { KTHPeriodSemester } from './KTHPeriod';
11
11
  * @param ladokPeriodDefinitions Response data from call to ladok mellanlager's period endpoint
12
12
  * @returns
13
13
  */
14
- export declare const getKTHPeriodSemesters: (tillfallesperioder: (Pick<Tillfallesperiod, "ForstaUndervisningsdatum" | "SistaUndervisningsdatum"> & {
15
- Lasperiodsfordelning: Pick<Lasperiodsfordelning, "Lasperiodskod">[];
14
+ export declare const getKTHPeriodSemesters: (tillfallesperioder: (Pick<Tillfallesperiod, "ForstaUndervisningsdatum" | "SistaUndervisningsdatum" | "Omfattningsvarde"> & {
15
+ Lasperiodsfordelning: Pick<Lasperiodsfordelning, "Lasperiodskod" | "Omfattningsvarde">[];
16
16
  })[] | undefined, ladokPeriodDefinitions: PeriodItem[]) => KTHPeriodSemester[];
@@ -0,0 +1,3 @@
1
+ import { LadokMellanlagerApiClient } from '@kth/ladok-mellanlager-client';
2
+ import { ReportApi } from './types';
3
+ export declare const createReportApi: (ladokClient: LadokMellanlagerApiClient) => ReportApi;
@@ -0,0 +1,22 @@
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.createReportApi = void 0;
13
+ const getSchedulingReport_1 = require("./getSchedulingReport");
14
+ const createReportApi = (ladokClient) => {
15
+ return {
16
+ getSemesterCoursesGroupedByProgramme: (semester, language) => __awaiter(void 0, void 0, void 0, function* () {
17
+ return (0, getSchedulingReport_1.getSemesterCoursesGroupedByProgramme)(ladokClient, semester, language);
18
+ }),
19
+ };
20
+ };
21
+ exports.createReportApi = createReportApi;
22
+ //# sourceMappingURL=createReportApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createReportApi.js","sourceRoot":"","sources":["../../src/report/createReportApi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,+DAA4E;AAErE,MAAM,eAAe,GAAG,CAAC,WAAsC,EAAa,EAAE;IACnF,OAAO;QACL,oCAAoC,EAAE,CAAO,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACjE,OAAO,IAAA,0DAAoC,EAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC9E,CAAC,CAAA;KACF,CAAA;AACH,CAAC,CAAA;AANY,QAAA,eAAe,mBAM3B"}
@@ -0,0 +1,4 @@
1
+ import { LadokMellanlagerApiClient } from '@kth/ladok-mellanlager-client';
2
+ import { Language } from '../utils/languageUtil';
3
+ import { SchedulingReport } from './types';
4
+ export declare const getSemesterCoursesGroupedByProgramme: (ladokClient: LadokMellanlagerApiClient, semester: string, language: Language) => Promise<SchedulingReport>;
@@ -0,0 +1,228 @@
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.getSemesterCoursesGroupedByProgramme = void 0;
13
+ const getAllEntitiesByUseOfContinuation_1 = require("../utils/getAllEntitiesByUseOfContinuation");
14
+ const responseUtils_1 = require("../utils/responseUtils");
15
+ const partOfProgrammeUtil_1 = require("../utils/partOfProgrammeUtil");
16
+ const attributVardenConstants_1 = require("../attributVardenConstants");
17
+ const queryConstants_1 = require("../queryConstants");
18
+ const mapCourseInstanceToSchedulingReportCourse_1 = require("./mapCourseInstanceToSchedulingReportCourse");
19
+ const periodUtil_1 = require("../utils/periodUtil");
20
+ const programmeStructureUtil_1 = require("../utils/programmeStructureUtil");
21
+ const COURSE_UTBILDNINGSTYP_IDS = '52,101955,101382,101994,102008';
22
+ /*
23
+ ** 2007KTF – 52
24
+ ** 2007FKTF – 101955
25
+ ** FUPKTF – 101382
26
+ ** UPHPKTF – 101994
27
+ ** UPVKTF – 102008
28
+ */
29
+ // Common base query parameters for all search phases
30
+ const BASE_SEARCH_QUERY = {
31
+ kodEllerBenamning: '*',
32
+ attributVarden: attributVardenConstants_1.ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING,
33
+ instansAttributVarden: attributVardenConstants_1.INSTANS_ATTRIBUT_VARDEN_FOR_COURSE_INSTANCES_SCHEDULING,
34
+ antalTraffar: queryConstants_1.MAX_ANTAL_TRAFFAR,
35
+ utbildningstypgrundtyp: 'KURS',
36
+ utbildningstypid: COURSE_UTBILDNINGSTYP_IDS,
37
+ };
38
+ // Common continuation options for all search phases
39
+ const SEARCH_CONTINUATION_OPTIONS = {
40
+ maxSearchResultsToReturn: 10000,
41
+ maxContinuationIterations: 500,
42
+ };
43
+ const getSemesterDates = (semesterCode, periods) => {
44
+ const period = (0, periodUtil_1.findPeriodByKod)(semesterCode, periods);
45
+ if (!period) {
46
+ throw new Error(`Period not found for semester code: ${semesterCode}`);
47
+ }
48
+ return {
49
+ startDate: period.Giltighetsperiod.Startdatum,
50
+ endDate: period.Giltighetsperiod.Slutdatum,
51
+ };
52
+ };
53
+ const getSemesterCoursesGroupedByProgramme = (ladokClient, semester, language) => __awaiter(void 0, void 0, void 0, function* () {
54
+ const overallStartTime = Date.now();
55
+ const periods = yield ladokClient.period();
56
+ const periodsData = (0, responseUtils_1.throwIfError)(periods);
57
+ const { startDate, endDate } = getSemesterDates(semester, periodsData.Period);
58
+ // Map to deduplicate course instances by tillfalle_uid
59
+ const entityMap = new Map();
60
+ // PHASE 1 – PRIMARY SEARCH (STARTPERIOD-BASED)
61
+ console.log(`Phase 1: Primary search with startPeriod=${semester}`);
62
+ const phase1StartTime = Date.now();
63
+ const phase1Result = yield (0, getAllEntitiesByUseOfContinuation_1.getAllEntitiesByUseOfContinuation)(ladokClient.sokKursTillfalleSlim, Object.assign(Object.assign({}, BASE_SEARCH_QUERY), { startPeriod: semester }), SEARCH_CONTINUATION_OPTIONS);
64
+ const phase1Entities = (0, responseUtils_1.throwIfContinuationError)(phase1Result);
65
+ phase1Entities.forEach(entity => {
66
+ entityMap.set(entity.tillfalle_uid, entity);
67
+ });
68
+ const phase1Duration = ((Date.now() - phase1StartTime) / 1000).toFixed(2);
69
+ console.log(`Phase 1: Found ${phase1Entities.length} course instances (${phase1Duration}s)`);
70
+ // PHASE 2 – SAFETY NET SEARCH (ONGOING AT SEMESTER START)
71
+ console.log(`Phase 2: Safety net search at semester start (${startDate})`);
72
+ const phase2StartTime = Date.now();
73
+ const phase2Result = yield (0, getAllEntitiesByUseOfContinuation_1.getAllEntitiesByUseOfContinuation)(ladokClient.sokKursTillfalleSlim, Object.assign(Object.assign({}, BASE_SEARCH_QUERY), { pagaendeDatum: startDate }), SEARCH_CONTINUATION_OPTIONS);
74
+ const phase2Entities = (0, responseUtils_1.throwIfContinuationError)(phase2Result);
75
+ let phase2NewCount = 0;
76
+ phase2Entities.forEach(entity => {
77
+ if (!entityMap.has(entity.tillfalle_uid)) {
78
+ entityMap.set(entity.tillfalle_uid, entity);
79
+ phase2NewCount++;
80
+ }
81
+ });
82
+ const phase2Duration = ((Date.now() - phase2StartTime) / 1000).toFixed(2);
83
+ console.log(`Phase 2: Found ${phase2Entities.length} total, ${phase2NewCount} new course instances (${phase2Duration}s)`);
84
+ // PHASE 3 – SAFETY NET SEARCH (ONGOING AT SEMESTER END)
85
+ console.log(`Phase 3: Safety net search at semester end (${endDate})`);
86
+ const phase3StartTime = Date.now();
87
+ const phase3Result = yield (0, getAllEntitiesByUseOfContinuation_1.getAllEntitiesByUseOfContinuation)(ladokClient.sokKursTillfalleSlim, Object.assign(Object.assign({}, BASE_SEARCH_QUERY), { pagaendeDatum: endDate }), SEARCH_CONTINUATION_OPTIONS);
88
+ const phase3Entities = (0, responseUtils_1.throwIfContinuationError)(phase3Result);
89
+ let phase3NewCount = 0;
90
+ phase3Entities.forEach(entity => {
91
+ if (!entityMap.has(entity.tillfalle_uid)) {
92
+ entityMap.set(entity.tillfalle_uid, entity);
93
+ phase3NewCount++;
94
+ }
95
+ });
96
+ const phase3Duration = ((Date.now() - phase3StartTime) / 1000).toFixed(2);
97
+ console.log(`Phase 3: Found ${phase3Entities.length} total, ${phase3NewCount} new course instances (${phase3Duration}s)`);
98
+ // AFTER ALL THREE PHASES - Convert to array
99
+ const allEntities = Array.from(entityMap.values());
100
+ const totalSearchDuration = ((Date.now() - overallStartTime) / 1000).toFixed(2);
101
+ console.log(`Total unique course instances after deduplication: ${allEntities.length} (Total search time: ${totalSearchDuration}s)`);
102
+ // Get programme associations
103
+ console.log('Fetching programme associations...');
104
+ const partOfProgrammesStartTime = Date.now();
105
+ const partOfProgrammes = yield (0, partOfProgrammeUtil_1.getPartOfProgrammes)(allEntities, periodsData.Period, ladokClient, true);
106
+ const partOfProgrammesDuration = ((Date.now() - partOfProgrammesStartTime) / 1000).toFixed(2);
107
+ console.log(`Programme associations fetched in ${partOfProgrammesDuration}s`);
108
+ const coursesWithProgrammes = allEntities.map(entity => (0, mapCourseInstanceToSchedulingReportCourse_1.mapCourseInstanceToSchedulingReportCourse)(entity, language, partOfProgrammes[entity.tillfalle_uid] || [], periodsData.Period));
109
+ // Categorize courses by programme
110
+ const { programmes, standaloneCourses } = categorizeCoursesByProgramme(coursesWithProgrammes);
111
+ return {
112
+ programmes,
113
+ standaloneCourses,
114
+ };
115
+ });
116
+ exports.getSemesterCoursesGroupedByProgramme = getSemesterCoursesGroupedByProgramme;
117
+ /**
118
+ * Categorize courses by programme or as standalone courses.
119
+ * Courses are grouped by programme code, and courses without programmes are kept separate.
120
+ */
121
+ const categorizeCoursesByProgramme = (courses) => {
122
+ const programmeMap = new Map();
123
+ const standaloneCourses = [];
124
+ courses.forEach(course => {
125
+ if (!course.partOfProgrammes || course.partOfProgrammes.length === 0) {
126
+ // Course is not part of any programme - "Fristående kurs"
127
+ standaloneCourses.push(course);
128
+ }
129
+ else {
130
+ // Course is part of one or more programmes
131
+ course.partOfProgrammes.forEach((programme) => {
132
+ if (!programmeMap.has(programme.kod)) {
133
+ programmeMap.set(programme.kod, {
134
+ programmeCode: programme.kod,
135
+ programmeName: programme.benamning,
136
+ courses: [],
137
+ });
138
+ }
139
+ const programmeGroup = programmeMap.get(programme.kod);
140
+ // Create course entry for this programme with only the programme-specific partOfProgrammes
141
+ const courseInProgramme = {
142
+ kod: course.kod,
143
+ benamning: course.benamning,
144
+ omfattning: course.omfattning,
145
+ tillfalleskod: course.tillfalleskod,
146
+ startperiod: course.startperiod,
147
+ organisation: course.organisation,
148
+ finansieringsform: course.finansieringsform,
149
+ utbildningsplatser: course.utbildningsplatser,
150
+ status: course.status,
151
+ connectedProgrammes: course.connectedProgrammes,
152
+ weeks: course.weeks,
153
+ kthPeriods: course.kthPeriods,
154
+ studietakt: course.studietakt,
155
+ utbildningstyp: course.utbildningstyp,
156
+ // Include only this specific programme's context
157
+ partOfProgrammes: [programme],
158
+ };
159
+ programmeGroup.courses.push(courseInProgramme);
160
+ });
161
+ }
162
+ });
163
+ // Convert map to array and sort courses within each programme
164
+ const programmes = Array.from(programmeMap.values()).map(group => (Object.assign(Object.assign({}, group), { courses: sortCoursesForProgramme(group.courses) })));
165
+ // Sort programme groups by programme code
166
+ programmes.sort((a, b) => a.programmeCode.localeCompare(b.programmeCode));
167
+ return {
168
+ programmes,
169
+ standaloneCourses,
170
+ };
171
+ };
172
+ /**
173
+ * Sort courses within a programme by:
174
+ * 1. Study year (ascending)
175
+ * 2. Common (shared) courses first, then specialisation-specific courses
176
+ * 3. Course-type priority: Compulsory -> Conditionally elective -> Elective -> Recommended
177
+ * 4. Course code (alphabetically)
178
+ */
179
+ const sortCoursesForProgramme = (courses) => {
180
+ const valinfoRank = (part) => {
181
+ if (!part)
182
+ return 0;
183
+ const desc = part.sv && part.sv.trim().length > 0 ? part.sv : part.en;
184
+ const category = (0, programmeStructureUtil_1.getCategory)(desc);
185
+ switch (category) {
186
+ case programmeStructureUtil_1.ValvillkorCategory.O:
187
+ return 0;
188
+ case programmeStructureUtil_1.ValvillkorCategory.VV:
189
+ return 1;
190
+ case programmeStructureUtil_1.ValvillkorCategory.V:
191
+ return 2;
192
+ case programmeStructureUtil_1.ValvillkorCategory.R:
193
+ return 3;
194
+ default:
195
+ return 0;
196
+ }
197
+ };
198
+ return courses.sort((a, b) => {
199
+ var _a, _b, _c, _d, _e, _f;
200
+ const aPart = (_a = a.partOfProgrammes) === null || _a === void 0 ? void 0 : _a[0];
201
+ const bPart = (_b = b.partOfProgrammes) === null || _b === void 0 ? void 0 : _b[0];
202
+ const aStudyYear = (_c = aPart === null || aPart === void 0 ? void 0 : aPart.arskurs) !== null && _c !== void 0 ? _c : 0;
203
+ const bStudyYear = (_d = bPart === null || bPart === void 0 ? void 0 : bPart.arskurs) !== null && _d !== void 0 ? _d : 0;
204
+ // 1) Study year ascending
205
+ if (aStudyYear !== bStudyYear)
206
+ return aStudyYear - bStudyYear;
207
+ // 2) Common (shared) courses first (no inriktning)
208
+ const aIsShared = !(aPart === null || aPart === void 0 ? void 0 : aPart.inriktning);
209
+ const bIsShared = !(bPart === null || bPart === void 0 ? void 0 : bPart.inriktning);
210
+ if (aIsShared !== bIsShared)
211
+ return aIsShared ? -1 : 1;
212
+ // If both are specialisation courses, group by inriktning code
213
+ if (!aIsShared && !bIsShared) {
214
+ const aInr = (_e = aPart === null || aPart === void 0 ? void 0 : aPart.inriktning) !== null && _e !== void 0 ? _e : '';
215
+ const bInr = (_f = bPart === null || bPart === void 0 ? void 0 : bPart.inriktning) !== null && _f !== void 0 ? _f : '';
216
+ if (aInr !== bInr)
217
+ return aInr.localeCompare(bInr);
218
+ }
219
+ // 3) Course-type priority
220
+ const aValRank = valinfoRank(aPart === null || aPart === void 0 ? void 0 : aPart.valinformation);
221
+ const bValRank = valinfoRank(bPart === null || bPart === void 0 ? void 0 : bPart.valinformation);
222
+ if (aValRank !== bValRank)
223
+ return aValRank - bValRank;
224
+ // 4) Finally, sort alphabetically by course code
225
+ return a.kod.localeCompare(b.kod);
226
+ });
227
+ };
228
+ //# sourceMappingURL=getSchedulingReport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSchedulingReport.js","sourceRoot":"","sources":["../../src/report/getSchedulingReport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { getSemesterCoursesGroupedByProgramme } from './getSchedulingReport';
2
+ export { mapCourseInstanceToSchedulingReportCourse } from './mapCourseInstanceToSchedulingReportCourse';
3
+ export { createReportApi } from './createReportApi';
4
+ export type { ReportApi, SchedulingReport, SchedulingReportProgramme, SchedulingReportCourse } from './types';
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createReportApi = exports.mapCourseInstanceToSchedulingReportCourse = exports.getSemesterCoursesGroupedByProgramme = void 0;
4
+ var getSchedulingReport_1 = require("./getSchedulingReport");
5
+ Object.defineProperty(exports, "getSemesterCoursesGroupedByProgramme", { enumerable: true, get: function () { return getSchedulingReport_1.getSemesterCoursesGroupedByProgramme; } });
6
+ var mapCourseInstanceToSchedulingReportCourse_1 = require("./mapCourseInstanceToSchedulingReportCourse");
7
+ Object.defineProperty(exports, "mapCourseInstanceToSchedulingReportCourse", { enumerable: true, get: function () { return mapCourseInstanceToSchedulingReportCourse_1.mapCourseInstanceToSchedulingReportCourse; } });
8
+ var createReportApi_1 = require("./createReportApi");
9
+ Object.defineProperty(exports, "createReportApi", { enumerable: true, get: function () { return createReportApi_1.createReportApi; } });
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/report/index.ts"],"names":[],"mappings":";;;AAAA,6DAA4E;AAAnE,2IAAA,oCAAoC,OAAA;AAC7C,yGAAuG;AAA9F,sKAAA,yCAAyC,OAAA;AAClD,qDAAmD;AAA1C,kHAAA,eAAe,OAAA"}
@@ -0,0 +1,14 @@
1
+ import { SokUtbildningsTillfalleSlimItem, PeriodItem } from '@kth/ladok-mellanlager-client';
2
+ import { Language } from '../utils/languageUtil';
3
+ import { PartOfProgramme } from '../mapPartOfProgramme';
4
+ import { SchedulingReportCourse } from './types';
5
+ /**
6
+ * Map a course instance entity to CourseInstanceWithProgrammes with scheduling information.
7
+ *
8
+ * @param entity - The course instance entity from Ladok
9
+ * @param language - Language for text fields ('sv' or 'en')
10
+ * @param partOfProgrammes - Programme associations for this course instance
11
+ * @param periodItems - Period definitions for KTH period calculation (optional)
12
+ * @returns Mapped course instance with extended scheduling information
13
+ */
14
+ export declare const mapCourseInstanceToSchedulingReportCourse: (entity: SokUtbildningsTillfalleSlimItem, language: Language, partOfProgrammes: PartOfProgramme[], periodItems?: PeriodItem[]) => SchedulingReportCourse;
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mapCourseInstanceToSchedulingReportCourse = void 0;
4
+ const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
5
+ const utils_1 = require("../utils");
6
+ const creditsUtil_1 = require("../utils/creditsUtil");
7
+ const getKTHPeriodSemesters_1 = require("../kth/KTHPeriod/getKTHPeriodSemesters");
8
+ /**
9
+ * Map a course instance entity to CourseInstanceWithProgrammes with scheduling information.
10
+ *
11
+ * @param entity - The course instance entity from Ladok
12
+ * @param language - Language for text fields ('sv' or 'en')
13
+ * @param partOfProgrammes - Programme associations for this course instance
14
+ * @param periodItems - Period definitions for KTH period calculation (optional)
15
+ * @returns Mapped course instance with extended scheduling information
16
+ */
17
+ const mapCourseInstanceToSchedulingReportCourse = (entity, language, partOfProgrammes, periodItems) => {
18
+ var _a, _b, _c, _d;
19
+ const attributeValues = entity.Attributvarden;
20
+ const instansAttributeValues = entity.instans.Attributvarden;
21
+ // Extract basic course information
22
+ const kod = (0, ladok_attributvarde_utils_1.extractString)(instansAttributeValues, 'utbildning.attribut.kod');
23
+ const benamning = {
24
+ sv: (0, ladok_attributvarde_utils_1.extractString)(instansAttributeValues, 'utbildning.attribut.svensk.benamning'),
25
+ en: (0, ladok_attributvarde_utils_1.extractString)(instansAttributeValues, 'utbildning.attribut.engelsk.benamning'),
26
+ };
27
+ const omfattningValue = (_a = (0, ladok_attributvarde_utils_1.extractString)(instansAttributeValues, 'utbildning.attribut.omfattning', 'omfattning')) !== null && _a !== void 0 ? _a : '';
28
+ const utbildningstyp = (0, ladok_attributvarde_utils_1.extractUtbildningstyp)(instansAttributeValues);
29
+ const studietakt = (0, ladok_attributvarde_utils_1.extractStudietakt)(attributeValues);
30
+ // Extract scheduling-specific fields
31
+ const organisation = (0, ladok_attributvarde_utils_1.extractOrganisation)(attributeValues);
32
+ const finansieringsform = (0, ladok_attributvarde_utils_1.extractGrunddata)(attributeValues, 'utbildning.attribut.finansieringsform');
33
+ const tillfalleskod = (0, ladok_attributvarde_utils_1.extractString)(attributeValues, 'utbildning.attribut.utbildningstillfalleskod');
34
+ const utbildningsplatser = (0, ladok_attributvarde_utils_1.extractUtbildningsplatser)(attributeValues);
35
+ const status = (0, ladok_attributvarde_utils_1.extractLadokStatus)(attributeValues);
36
+ const startperiod = (0, ladok_attributvarde_utils_1.extractStartPeriod)(attributeValues);
37
+ // Extract teaching dates
38
+ const forstaUndervisningsdatum = (_b = entity.Tillfallesperioder.at(0)) === null || _b === void 0 ? void 0 : _b.ForstaUndervisningsdatum;
39
+ const sistaUndervisningsdatum = (_c = entity.Tillfallesperioder.at(-1)) === null || _c === void 0 ? void 0 : _c.SistaUndervisningsdatum;
40
+ const forstaDate = forstaUndervisningsdatum
41
+ ? Object.assign({ date: forstaUndervisningsdatum }, (0, utils_1.getYearAndWeek)(forstaUndervisningsdatum)) : undefined;
42
+ const sistaDate = sistaUndervisningsdatum
43
+ ? Object.assign({ date: sistaUndervisningsdatum }, (0, utils_1.getYearAndWeek)(sistaUndervisningsdatum)) : undefined;
44
+ const weeks = forstaDate && sistaDate
45
+ ? forstaDate.year === sistaDate.year
46
+ ? `${forstaDate.year} week ${forstaDate.week} - week ${sistaDate.week}`
47
+ : `${forstaDate.year} week ${forstaDate.week} - ${sistaDate.year} week ${sistaDate.week}`
48
+ : undefined;
49
+ const kthPeriods = periodItems && entity.Tillfallesperioder ? (0, getKTHPeriodSemesters_1.getKTHPeriodSemesters)(entity.Tillfallesperioder, periodItems) : [];
50
+ // Build formatted connected programmes string from `partOfProgrammes`.
51
+ // Group by programme code AND year, collect specialisations (inriktning) for each combination.
52
+ const connectedProgrammes = (() => {
53
+ if (!partOfProgrammes || partOfProgrammes.length === 0)
54
+ return undefined;
55
+ // Map key: "CODE_YEAR" -> { hasMain, specialisations }
56
+ const map = new Map();
57
+ partOfProgrammes.forEach(p => {
58
+ const year = p.arskurs || 0;
59
+ const key = `${p.kod}_${year}`;
60
+ const entry = map.get(key) || { kod: p.kod, arskurs: year, hasMain: false, specialisations: [] };
61
+ if (p.inriktning) {
62
+ if (!entry.specialisations.includes(p.inriktning))
63
+ entry.specialisations.push(p.inriktning);
64
+ }
65
+ else {
66
+ entry.hasMain = true;
67
+ }
68
+ map.set(key, entry);
69
+ });
70
+ const parts = [];
71
+ for (const info of map.values()) {
72
+ const yearSuffix = info.arskurs ? `${info.arskurs}` : '';
73
+ const specials = info.hasMain ? ['-'].concat(info.specialisations) : info.specialisations;
74
+ const bracket = specials.length > 0 ? ` [${specials.join(', ')}]` : '';
75
+ // Format: CODE{YEAR} [BRACKET]
76
+ parts.push(`${info.kod}${yearSuffix}${bracket}`);
77
+ }
78
+ const result = parts.join(', ');
79
+ return result.length > 0 ? result : undefined;
80
+ })();
81
+ return {
82
+ kod,
83
+ benamning: (_d = benamning[language]) !== null && _d !== void 0 ? _d : '',
84
+ omfattning: (0, creditsUtil_1.formatCreditsWithUnitLabel)(omfattningValue, utbildningstyp, language),
85
+ utbildningstyp: utbildningstyp ? (0, utils_1.translateUtbildningstyp)(utbildningstyp, language).name : '',
86
+ studietakt: studietakt ? (0, utils_1.translateStudietakt)(studietakt, language) : undefined,
87
+ partOfProgrammes,
88
+ tillfalleskod,
89
+ startperiod: startperiod
90
+ ? {
91
+ code: startperiod.code,
92
+ inDigits: (0, utils_1.transformPeriodInDigits)(startperiod.code),
93
+ }
94
+ : undefined,
95
+ organisation: organisation
96
+ ? {
97
+ kod: (0, utils_1.translateOrganisation)(organisation, language).code,
98
+ benamning: (0, utils_1.translateOrganisation)(organisation, language).name,
99
+ organisationType: (0, utils_1.translateOrganisation)(organisation, language).organisationTypeName,
100
+ }
101
+ : undefined,
102
+ finansieringsform: finansieringsform ? (0, utils_1.translateGrunddata)(finansieringsform, language) : undefined,
103
+ utbildningsplatser,
104
+ status,
105
+ connectedProgrammes,
106
+ weeks,
107
+ kthPeriods: kthPeriods.length > 0 ? kthPeriods : undefined,
108
+ };
109
+ };
110
+ exports.mapCourseInstanceToSchedulingReportCourse = mapCourseInstanceToSchedulingReportCourse;
111
+ //# sourceMappingURL=mapCourseInstanceToSchedulingReportCourse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mapCourseInstanceToSchedulingReportCourse.js","sourceRoot":"","sources":["../../src/report/mapCourseInstanceToSchedulingReportCourse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { Language } from '../utils';
2
+ import { PartOfProgramme } from '../mapPartOfProgramme';
3
+ import { CourseInstance } from '../mapCourseInstance';
4
+ import { KTHPeriodSemester } from '../kth/KTHPeriod/KTHPeriod';
5
+ export type ReportApi = {
6
+ getSemesterCoursesGroupedByProgramme: (semester: string, language: Language) => Promise<SchedulingReport>;
7
+ };
8
+ export type SchedulingReportCourse = Pick<CourseInstance, 'tillfalleskod' | 'startperiod' | 'finansieringsform' | 'utbildningsplatser' | 'status' | 'studietakt' | 'utbildningstyp'> & {
9
+ kod: string;
10
+ benamning: string;
11
+ omfattning: string;
12
+ organisation?: {
13
+ kod: string;
14
+ benamning: string;
15
+ organisationType?: string;
16
+ };
17
+ weeks?: string;
18
+ kthPeriods?: KTHPeriodSemester[];
19
+ partOfProgrammes?: PartOfProgramme[];
20
+ connectedProgrammes?: string;
21
+ };
22
+ export type SchedulingReportProgramme = {
23
+ programmeCode: string;
24
+ programmeName: {
25
+ sv: string;
26
+ en: string;
27
+ };
28
+ courses: SchedulingReportCourse[];
29
+ };
30
+ export type SchedulingReport = {
31
+ programmes: SchedulingReportProgramme[];
32
+ standaloneCourses: SchedulingReportCourse[];
33
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/report/types.ts"],"names":[],"mappings":""}
@@ -12,11 +12,13 @@ import { ProgrammeCurriculum } from '../utils/programmeUtil';
12
12
  import { ProgrammeSyllabus } from '../mapProgrammeSyllabus';
13
13
  import { SupportApi } from '../supportApis/createSupportApis';
14
14
  import { ProgrammeApi } from '../programme/types';
15
+ import { ReportApi } from '../report/types';
15
16
  export type OmKursenLadokApiClient = {
16
17
  getLatestCourseVersion: (courseCode: string, language: Language) => Promise<(CourseVersion & ResponseInfo) | ResponseInfo>;
17
18
  getLatestCourseVersionIncludingCancelled: (courseCode: string, language: Language) => Promise<(CourseVersion & ResponseInfo) | ResponseInfo>;
18
19
  Search: SearchApi;
19
20
  Programme: ProgrammeApi;
21
+ Report: ReportApi;
20
22
  getActiveCourseInstances: (courseCode: string, language: Language) => Promise<CourseInstance[] | undefined>;
21
23
  getActiveAndFutureCourseInstances: (courseCode: string, language: Language) => Promise<CourseInstance[] | undefined>;
22
24
  getCourseInstancesFromPeriod: (courseCode: string, fromPeriod: string, language: Language) => Promise<CourseInstance[] | undefined>;
@@ -14,14 +14,20 @@ function executeTasksInConcurrentBatches(asyncTaskFunctions_1) {
14
14
  return __awaiter(this, arguments, void 0, function* (asyncTaskFunctions, maxConcurrentTasks = 30) {
15
15
  const totalTasks = asyncTaskFunctions.length;
16
16
  const orderedResults = new Array(totalTasks);
17
- for (let batchStartIndex = 0; batchStartIndex < totalTasks; batchStartIndex += maxConcurrentTasks) {
18
- const currentBatch = asyncTaskFunctions.slice(batchStartIndex, batchStartIndex + maxConcurrentTasks);
19
- yield Promise.all(currentBatch.map((runTask, taskIndexInBatch) => (() => __awaiter(this, void 0, void 0, function* () {
20
- const result = yield runTask();
21
- const originalIndex = batchStartIndex + taskIndexInBatch;
22
- orderedResults[originalIndex] = result;
23
- }))()));
17
+ let nextIndex = 0;
18
+ const workers = [];
19
+ const runWorker = () => __awaiter(this, void 0, void 0, function* () {
20
+ while (nextIndex < totalTasks) {
21
+ const currentIndex = nextIndex++;
22
+ const result = yield asyncTaskFunctions[currentIndex]();
23
+ orderedResults[currentIndex] = result;
24
+ }
25
+ });
26
+ const workerCount = Math.min(maxConcurrentTasks, totalTasks);
27
+ for (let i = 0; i < workerCount; i++) {
28
+ workers.push(runWorker());
24
29
  }
30
+ yield Promise.all(workers);
25
31
  return orderedResults;
26
32
  });
27
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"concurrentTasks.js","sourceRoot":"","sources":["../../src/utils/concurrentTasks.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0EAsBC;AAtBD,SAAsB,+BAA+B;yDACnD,kBAA2C,EAC3C,qBAA6B,EAAE;QAE/B,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAA;QAC5C,MAAM,cAAc,GAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjD,KAAK,IAAI,eAAe,GAAG,CAAC,EAAE,eAAe,GAAG,UAAU,EAAE,eAAe,IAAI,kBAAkB,EAAE,CAAC;YAClG,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,eAAe,EAAE,eAAe,GAAG,kBAAkB,CAAC,CAAA;YAEpG,MAAM,OAAO,CAAC,GAAG,CACf,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,CAC7C,CAAC,GAAS,EAAE;gBACV,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAA;gBAC9B,MAAM,aAAa,GAAG,eAAe,GAAG,gBAAgB,CAAA;gBACxD,cAAc,CAAC,aAAa,CAAC,GAAG,MAAM,CAAA;YACxC,CAAC,CAAA,CAAC,EAAE,CACL,CACF,CAAA;QACH,CAAC;QAED,OAAO,cAAc,CAAA;IACvB,CAAC;CAAA"}
1
+ {"version":3,"file":"concurrentTasks.js","sourceRoot":"","sources":["../../src/utils/concurrentTasks.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0EA4BC;AA5BD,SAAsB,+BAA+B;yDACnD,kBAA2C,EAC3C,qBAA6B,EAAE;QAE/B,MAAM,UAAU,GAAG,kBAAkB,CAAC,MAAM,CAAA;QAC5C,MAAM,cAAc,GAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;QAEjD,IAAI,SAAS,GAAG,CAAC,CAAA;QAEjB,MAAM,OAAO,GAAoB,EAAE,CAAA;QAEnC,MAAM,SAAS,GAAG,GAAS,EAAE;YAC3B,OAAO,SAAS,GAAG,UAAU,EAAE,CAAC;gBAC9B,MAAM,YAAY,GAAG,SAAS,EAAE,CAAA;gBAChC,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAA;gBACvD,cAAc,CAAC,YAAY,CAAC,GAAG,MAAM,CAAA;YACvC,CAAC;QACH,CAAC,CAAA,CAAA;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAA;QAE5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAA;QAC3B,CAAC;QAED,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QAE1B,OAAO,cAAc,CAAA;IACvB,CAAC;CAAA"}
@@ -14,4 +14,4 @@ import { PartOfProgramme } from '../mapPartOfProgramme';
14
14
  */
15
15
  export declare const fetchEducationalInstancesWithVersionInfo: (utbildningsTillfalleUIDs: string[], ladokClient: LadokMellanlagerApiClient) => Promise<SokUtbildningsTillfalleSlimItem[]>;
16
16
  export declare const processProgrammes: (programmeInstances: SokUtbildningsTillfalleItem[] | SokUtbildningsTillfalleSlimItem[], courseInstance: SokUtbildningsTillfalleItem | SokUtbildningsTillfalleSlimItem, periodItems: PeriodItem[], ladokClient: LadokMellanlagerApiClient, specialisationInstance?: SokUtbildningsTillfalleItem | SokUtbildningsTillfalleSlimItem) => Promise<PartOfProgramme[]>;
17
- export declare const getPartOfProgrammes: (courseInstances: SokUtbildningsTillfalleItem[] | SokUtbildningsTillfalleSlimItem[], periodItems: PeriodItem[], ladokClient: LadokMellanlagerApiClient) => Promise<Record<string, PartOfProgramme[]>>;
17
+ export declare const getPartOfProgrammes: (courseInstances: SokUtbildningsTillfalleItem[] | SokUtbildningsTillfalleSlimItem[], periodItems: PeriodItem[], ladokClient: LadokMellanlagerApiClient, useConcurrentBatches?: boolean) => Promise<Record<string, PartOfProgramme[]>>;
@@ -16,6 +16,7 @@ const studyYearUtil_1 = require("./studyYearUtil");
16
16
  const getAllEntitiesByUseOfContinuation_1 = require("./getAllEntitiesByUseOfContinuation");
17
17
  const responseUtils_1 = require("./responseUtils");
18
18
  const queryConstants_1 = require("../queryConstants");
19
+ const concurrentTasks_1 = require("./concurrentTasks");
19
20
  const extractUIDsByEducationType = (structureRefs, educationTypeID) => structureRefs.filter(x => x.UtbildningstypID == educationTypeID).map(x => x.UtbildningsattributbasUID);
20
21
  /**
21
22
  * Utility function to get a list of educational instances (utbildningstillfällen) with
@@ -104,11 +105,19 @@ const getPartOfProgramme = (courseInstance, periodItems, ladokClient) => __await
104
105
  const uniquePartOfProgrammes = removeDuplicateParts([...specialisationParts, ...programmeParts]);
105
106
  return uniquePartOfProgrammes;
106
107
  });
107
- const getPartOfProgrammes = (courseInstances, periodItems, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
108
+ const getPartOfProgrammes = (courseInstances_1, periodItems_1, ladokClient_1, ...args_1) => __awaiter(void 0, [courseInstances_1, periodItems_1, ladokClient_1, ...args_1], void 0, function* (courseInstances, periodItems, ladokClient, useConcurrentBatches = false) {
108
109
  const partOfProgrammes = {};
109
- yield Promise.all(courseInstances.map((courseInstance) => __awaiter(void 0, void 0, void 0, function* () {
110
- partOfProgrammes[courseInstance.tillfalle_uid] = yield getPartOfProgramme(courseInstance, periodItems, ladokClient);
111
- })));
110
+ const tasks = courseInstances.map(courseInstance => () => __awaiter(void 0, void 0, void 0, function* () {
111
+ const result = yield getPartOfProgramme(courseInstance, periodItems, ladokClient);
112
+ partOfProgrammes[courseInstance.tillfalle_uid] = result;
113
+ return result;
114
+ }));
115
+ if (useConcurrentBatches) {
116
+ yield (0, concurrentTasks_1.executeTasksInConcurrentBatches)(tasks);
117
+ }
118
+ else {
119
+ yield Promise.all(tasks.map(task => task()));
120
+ }
112
121
  return partOfProgrammes;
113
122
  });
114
123
  exports.getPartOfProgrammes = getPartOfProgrammes;
@@ -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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"}
@@ -31,6 +31,13 @@ export declare const fetchStructurePartVersion: (versionUID: string, ladokClient
31
31
  type CategorizedStrukturdel = Strukturdel & {
32
32
  Valvillkor: string;
33
33
  };
34
+ export declare enum ValvillkorCategory {
35
+ VV = "VV",
36
+ R = "R",
37
+ V = "V",
38
+ O = "O"
39
+ }
40
+ export declare const getCategory: (description?: string) => ValvillkorCategory;
34
41
  export declare const fetchAndCategorizeStructureParts: (utbildningstillfalleUID: string, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<{
35
42
  structureCourses: ProgrammeCourse[];
36
43
  structureSpecialisations: StructurePartInstance[];
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.fetchProgrammeStructure = exports.fetchAndCategorizeStructureParts = exports.fetchStructurePartVersion = exports.fetchStructurePartInstance = exports.fetchStructureByInstansUid = exports.fetchStructureByTillfalleUid = exports.handleError = void 0;
12
+ exports.fetchProgrammeStructure = exports.fetchAndCategorizeStructureParts = exports.getCategory = exports.ValvillkorCategory = exports.fetchStructurePartVersion = exports.fetchStructurePartInstance = exports.fetchStructureByInstansUid = exports.fetchStructureByTillfalleUid = exports.handleError = void 0;
13
13
  const mapStructureCourses_1 = require("../mapStructureCourses");
14
14
  const mapStructurePartVersions_1 = require("../mapStructurePartVersions");
15
15
  const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
@@ -72,7 +72,7 @@ var ValvillkorCategory;
72
72
  ValvillkorCategory["R"] = "R";
73
73
  ValvillkorCategory["V"] = "V";
74
74
  ValvillkorCategory["O"] = "O";
75
- })(ValvillkorCategory || (ValvillkorCategory = {}));
75
+ })(ValvillkorCategory || (exports.ValvillkorCategory = ValvillkorCategory = {}));
76
76
  const getDescription = (strukturdel) => {
77
77
  var _a, _b, _c, _d;
78
78
  return (((_b = (_a = strukturdel.Valinformation) === null || _a === void 0 ? void 0 : _a.EngelskBeskrivning) === null || _b === void 0 ? void 0 : _b.toUpperCase()) ||
@@ -94,13 +94,14 @@ const getCategory = (description) => {
94
94
  return ValvillkorCategory.O;
95
95
  }
96
96
  };
97
+ exports.getCategory = getCategory;
97
98
  const categorizeStructureParts = (strukturDelar) => {
98
99
  return strukturDelar
99
100
  .map(strukturdel => {
100
101
  const description = getDescription(strukturdel);
101
102
  if (isInvalidDescription(description))
102
103
  return undefined;
103
- const Valvillkor = getCategory(description);
104
+ const Valvillkor = (0, exports.getCategory)(description);
104
105
  return Object.assign(Object.assign({}, strukturdel), { Valvillkor });
105
106
  })
106
107
  .filter(typeChecking_1.isDefined);
@@ -1 +1 @@
1
- {"version":3,"file":"programmeStructureUtil.js","sourceRoot":"","sources":["../../src/utils/programmeStructureUtil.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"programmeStructureUtil.js","sourceRoot":"","sources":["../../src/utils/programmeStructureUtil.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kth/om-kursen-ladok-client",
3
- "version": "3.0.0",
3
+ "version": "3.1.0",
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": [