@kth/om-kursen-ladok-client 1.3.12 → 1.3.13
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.
- package/dist/createApiClient.js +2 -0
- package/dist/createApiClient.js.map +1 -1
- package/dist/search/createSearchApi.js +13 -23
- package/dist/search/createSearchApi.js.map +1 -1
- package/dist/search/types.d.ts +4 -0
- package/dist/search/utbildningsTypIdConstants.d.ts +20 -4
- package/dist/search/utbildningsTypIdConstants.js +17 -16
- package/dist/search/utbildningsTypIdConstants.js.map +1 -1
- package/dist/search/utils/educationalTypeUtils.d.ts +11 -0
- package/dist/search/utils/educationalTypeUtils.js +36 -0
- package/dist/search/utils/educationalTypeUtils.js.map +1 -0
- package/dist/search/utils/getAllEntitiesByUseOfContinuation.js +1 -1
- package/dist/search/utils/getLatestCompletedCourseVersions.d.ts +8 -0
- package/dist/search/utils/getLatestCompletedCourseVersions.js +20 -0
- package/dist/search/utils/getLatestCompletedCourseVersions.js.map +1 -0
- package/dist/search/utils/searchUtils.d.ts +12 -6
- package/dist/search/utils/searchUtils.js +80 -38
- package/dist/search/utils/searchUtils.js.map +1 -1
- package/dist/supportApis/createSupportApis.d.ts +16 -0
- package/dist/supportApis/createSupportApis.js +137 -0
- package/dist/supportApis/createSupportApis.js.map +1 -0
- package/dist/types/OmKursenLadokApiClient.d.ts +2 -0
- package/dist/utils/programStrukturUtil.d.ts +3 -2
- package/dist/utils/programStrukturUtil.js +12 -10
- package/dist/utils/programStrukturUtil.js.map +1 -1
- package/dist/utils/studyYearUtil.d.ts +4 -3
- package/dist/utils/studyYearUtil.js +30 -14
- package/dist/utils/studyYearUtil.js.map +1 -1
- package/package.json +3 -3
package/dist/createApiClient.js
CHANGED
|
@@ -25,6 +25,7 @@ const partOfProgrammeUtil_1 = require("./utils/partOfProgrammeUtil");
|
|
|
25
25
|
const createSearchApi_1 = require("./search/createSearchApi");
|
|
26
26
|
const attributVardenConstants_1 = require("./attributVardenConstants");
|
|
27
27
|
const programUtil_1 = require("./utils/programUtil");
|
|
28
|
+
const createSupportApis_1 = require("./supportApis/createSupportApis");
|
|
28
29
|
const mergeApiResponses = (a, b, uniqueItemKey) => {
|
|
29
30
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
30
31
|
if (a.type === 'error')
|
|
@@ -299,6 +300,7 @@ const createApiClient = (config) => {
|
|
|
299
300
|
const periods = yield ladokClient.period();
|
|
300
301
|
return periods;
|
|
301
302
|
}),
|
|
303
|
+
Support: (0, createSupportApis_1.createSupportApi)(ladokClient),
|
|
302
304
|
};
|
|
303
305
|
};
|
|
304
306
|
exports.createApiClient = createApiClient;
|
|
@@ -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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"}
|
|
@@ -11,7 +11,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.createSearchApi = void 0;
|
|
13
13
|
const searchUtils_1 = require("./utils/searchUtils");
|
|
14
|
-
const SearchError_1 = require("./SearchError");
|
|
15
14
|
const getAllEntitiesByUseOfContinuation_1 = require("./utils/getAllEntitiesByUseOfContinuation");
|
|
16
15
|
const mapSearchResult_1 = require("../mapSearchResult");
|
|
17
16
|
const groupSearchResults_1 = require("../groupSearchResults");
|
|
@@ -22,13 +21,14 @@ const utils_1 = require("../utils");
|
|
|
22
21
|
const mapCourseRoundSearchDTO_1 = require("./utils/mapCourseRoundSearchDTO");
|
|
23
22
|
const mapCourseVersionDTO_1 = require("./utils/mapCourseVersionDTO");
|
|
24
23
|
const typeChecking_1 = require("../utils/typeChecking");
|
|
24
|
+
const createSupportApis_1 = require("../supportApis/createSupportApis");
|
|
25
|
+
const getLatestCompletedCourseVersions_1 = require("./utils/getLatestCompletedCourseVersions");
|
|
25
26
|
const createSearchApi = (ladokClient) => {
|
|
26
27
|
return {
|
|
27
28
|
searchCourses: (searchParams, language) => __awaiter(void 0, void 0, void 0, function* () {
|
|
28
29
|
try {
|
|
29
|
-
(0, searchUtils_1.
|
|
30
|
-
const
|
|
31
|
-
const { requestQuery, filterPeriod } = (0, searchUtils_1.prepareSearchRequestQueryForKursTillfallen)(utbildningstyper, searchParams);
|
|
30
|
+
const cleanSearchParams = (0, searchUtils_1.validateAndCleanSearchParams)(searchParams);
|
|
31
|
+
const { requestQuery, filterPeriod } = (0, searchUtils_1.prepareSearchRequestQueryForKursTillfallen)(cleanSearchParams);
|
|
32
32
|
const allCourses = yield (0, getAllEntitiesByUseOfContinuation_1.getAllEntitiesByUseOfContinuation)(ladokClient.sokKursTillfalleSlim, requestQuery);
|
|
33
33
|
const mappedCourses = allCourses.map(course => (0, mapSearchResult_1.mapKursTillfalleResult)(course, language));
|
|
34
34
|
const groupedCourses = (0, groupSearchResults_1.groupSearchResults)(mappedCourses, filterPeriod);
|
|
@@ -45,15 +45,19 @@ const createSearchApi = (ladokClient) => {
|
|
|
45
45
|
}),
|
|
46
46
|
searchCourseVersions: (searchParams, language) => __awaiter(void 0, void 0, void 0, function* () {
|
|
47
47
|
try {
|
|
48
|
-
(0, searchUtils_1.
|
|
49
|
-
const
|
|
48
|
+
const cleanSearchParams = (0, searchUtils_1.validateAndCleanSearchParams)(searchParams);
|
|
49
|
+
const supportAPI = (0, createSupportApis_1.createSupportApi)(ladokClient);
|
|
50
|
+
const [currentDepartmentList, deprecatedDepartmentList] = yield Promise.all([
|
|
51
|
+
supportAPI.createDepartmentList(language),
|
|
52
|
+
supportAPI.createDepartmentList(language, true),
|
|
53
|
+
]);
|
|
54
|
+
const departmentList = [...currentDepartmentList, ...deprecatedDepartmentList];
|
|
55
|
+
const requestQueryForKursInstans = (0, searchUtils_1.prepareSearchRequestQueryForKursInstans)(cleanSearchParams, departmentList);
|
|
50
56
|
const allCourseVersions = yield (0, getAllEntitiesByUseOfContinuation_1.getAllEntitiesByUseOfContinuation)(ladokClient.sokUtbildningsInstansSlim, requestQueryForKursInstans);
|
|
51
57
|
const gradingScalesCodes = yield (0, gradingScalesUtils_1.getGradingScalesCodes)(ladokClient); // TODO: Use cached values
|
|
52
58
|
const allMappedCourseVersions = allCourseVersions.map(courseVersion => (0, mapCourse_1.mapCourse)(courseVersion, language, gradingScalesCodes));
|
|
53
59
|
const latestCourseVersions = findLatestCourseVersions(allMappedCourseVersions);
|
|
54
|
-
|
|
55
|
-
// TODO Benni add status to CourseVersion
|
|
56
|
-
const latestApprovedCourses = latestCourseVersions;
|
|
60
|
+
const latestApprovedCourses = (0, getLatestCompletedCourseVersions_1.getLatestCompletedCourseVersions)(latestCourseVersions);
|
|
57
61
|
const courseVersionDTOs = latestApprovedCourses.map(mapCourseVersionDTO_1.mapCourseVersionDTO);
|
|
58
62
|
return { searchHits: courseVersionDTOs };
|
|
59
63
|
}
|
|
@@ -68,20 +72,6 @@ const createSearchApi = (ladokClient) => {
|
|
|
68
72
|
};
|
|
69
73
|
};
|
|
70
74
|
exports.createSearchApi = createSearchApi;
|
|
71
|
-
/**
|
|
72
|
-
* This function extracts the utbildningstyp items from the API response.
|
|
73
|
-
* It throws an error if the response is invalid or if the data is not present.
|
|
74
|
-
* @param utbildningstypApiCall
|
|
75
|
-
* @returns
|
|
76
|
-
*/
|
|
77
|
-
const extractUtbildningstypItems = (utbildningstypApiCall) => __awaiter(void 0, void 0, void 0, function* () {
|
|
78
|
-
const utbildningstypResponse = yield utbildningstypApiCall;
|
|
79
|
-
// TODO Benni: this can be refactored more, e.g. enum for type
|
|
80
|
-
if (utbildningstypResponse.type === 'error' || !(utbildningstypResponse === null || utbildningstypResponse === void 0 ? void 0 : utbildningstypResponse.data)) {
|
|
81
|
-
throw SearchError_1.SearchError.unknown(`Failed to fetch valid utbildningstyp data: ${utbildningstypResponse.responseInfo.message}`);
|
|
82
|
-
}
|
|
83
|
-
return utbildningstypResponse.data.Utbildningstyp;
|
|
84
|
-
});
|
|
85
75
|
// TODO Benni: refactor or remove this function if it is not needed anymore (basically a failsafe)
|
|
86
76
|
/**
|
|
87
77
|
* This function takes an array of courseVersions, groups them by their kod, and finds the latest version of each course.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createSearchApi.js","sourceRoot":"","sources":["../../src/search/createSearchApi.ts"],"names":[],"mappings":";;;;;;;;;;;;AAWA,qDAI4B;
|
|
1
|
+
{"version":3,"file":"createSearchApi.js","sourceRoot":"","sources":["../../src/search/createSearchApi.ts"],"names":[],"mappings":"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"}
|
package/dist/search/types.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { EducationalLevelCode } from '@kth/ladok-attributvarde-utils';
|
|
1
2
|
import { Language } from '../utils';
|
|
2
3
|
export type SearchApi = {
|
|
3
4
|
searchCourses: (searchParams: SearchParams, language: Language) => Promise<SearchCourseResponse<CourseRoundSearchDTO>>;
|
|
@@ -15,6 +16,9 @@ export type SearchParams = {
|
|
|
15
16
|
startPeriod?: string[];
|
|
16
17
|
utbildningsniva?: string[];
|
|
17
18
|
};
|
|
19
|
+
export type CleanSearchParams = Omit<SearchParams, 'utbildningsniva'> & {
|
|
20
|
+
utbildningsniva?: EducationalLevelCode[];
|
|
21
|
+
};
|
|
18
22
|
export type CourseVersionDTO = {
|
|
19
23
|
kod: string;
|
|
20
24
|
benamning: string;
|
|
@@ -1,7 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export declare const VERSION_UTBILDNINGSTYP_IDS_BASIC: {
|
|
2
|
+
ID: number;
|
|
3
|
+
Kod: string;
|
|
4
|
+
}[];
|
|
5
|
+
export declare const VERSION_UTBILDNINGSTYP_IDS_ADVANCED: {
|
|
6
|
+
ID: number;
|
|
7
|
+
Kod: string;
|
|
8
|
+
}[];
|
|
9
|
+
export declare const VERSION_UTBILDNINGSTYP_IDS_PREPARATORY: {
|
|
10
|
+
ID: number;
|
|
11
|
+
Kod: string;
|
|
12
|
+
}[];
|
|
13
|
+
export declare const VERSION_UTUBILDNINGSTYP_IDS_RESEARCH: {
|
|
14
|
+
ID: number;
|
|
15
|
+
Kod: string;
|
|
16
|
+
}[];
|
|
17
|
+
export declare const VERSION_UTBILDNINGSTYP_IDS_UPPDRAG: {
|
|
18
|
+
ID: number;
|
|
19
|
+
Kod: string;
|
|
20
|
+
}[];
|
|
5
21
|
/**
|
|
6
22
|
* The utbildningstyp Ids that we are interested in when searching for courseInstances.
|
|
7
23
|
*/
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.INSTANCE_UTBILDNINGSTYP_IDS = exports.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
121910,
|
|
18
|
-
]
|
|
3
|
+
exports.INSTANCE_UTBILDNINGSTYP_IDS = exports.VERSION_UTBILDNINGSTYP_IDS_UPPDRAG = exports.VERSION_UTUBILDNINGSTYP_IDS_RESEARCH = exports.VERSION_UTBILDNINGSTYP_IDS_PREPARATORY = exports.VERSION_UTBILDNINGSTYP_IDS_ADVANCED = exports.VERSION_UTBILDNINGSTYP_IDS_BASIC = void 0;
|
|
4
|
+
exports.VERSION_UTBILDNINGSTYP_IDS_BASIC = [
|
|
5
|
+
{ ID: 22, Kod: '2007GKURS' },
|
|
6
|
+
{ ID: 101992, Kod: 'UPHPGKURS' },
|
|
7
|
+
{ ID: 105630, Kod: '0793GKURS' },
|
|
8
|
+
];
|
|
9
|
+
exports.VERSION_UTBILDNINGSTYP_IDS_ADVANCED = [
|
|
10
|
+
{ ID: 24, Kod: '2007AKURS' },
|
|
11
|
+
{ ID: 101993, Kod: 'UPHPAKURS' },
|
|
12
|
+
{ ID: 105631, Kod: '0793AKURS' },
|
|
13
|
+
];
|
|
14
|
+
exports.VERSION_UTBILDNINGSTYP_IDS_PREPARATORY = [{ ID: 101378, Kod: 'FUPKURS' }];
|
|
15
|
+
exports.VERSION_UTUBILDNINGSTYP_IDS_RESEARCH = [
|
|
16
|
+
{ ID: 101954, Kod: '2007FKURS' },
|
|
17
|
+
{ ID: 121910, Kod: '20073KURS' },
|
|
18
|
+
];
|
|
19
|
+
exports.VERSION_UTBILDNINGSTYP_IDS_UPPDRAG = [{ ID: 102006, Kod: 'UPVKURS' }];
|
|
19
20
|
/**
|
|
20
21
|
* The utbildningstyp Ids that we are interested in when searching for courseInstances.
|
|
21
22
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utbildningsTypIdConstants.js","sourceRoot":"","sources":["../../src/search/utbildningsTypIdConstants.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"utbildningsTypIdConstants.js","sourceRoot":"","sources":["../../src/search/utbildningsTypIdConstants.ts"],"names":[],"mappings":";;;AAAa,QAAA,gCAAgC,GAAG;IAC9C,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;IAC5B,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE;IAChC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE;CACjC,CAAA;AAEY,QAAA,mCAAmC,GAAG;IACjD,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE;IAC5B,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE;IAChC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE;CACjC,CAAA;AAEY,QAAA,sCAAsC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAA;AAEzE,QAAA,oCAAoC,GAAG;IAClD,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE;IAChC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE;CACjC,CAAA;AAEY,QAAA,kCAAkC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAA;AAElF;;GAEG;AACU,QAAA,2BAA2B,GAAG;IACzC,MAAM,EAAE,SAAS;IACjB,EAAE,EAAE,UAAU;IACd,MAAM,EAAE,qBAAqB;IAC7B,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,kBAAkB;IAC1B,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,qBAAqB;CAC9B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAEX,MAAM,kCAAkC,GAAG;IACzC,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;CAC/B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAEX,MAAM,mCAAmC,GAAG;IAC1C,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,qBAAqB;CAC9B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EducationalLevelCode } from '@kth/ladok-attributvarde-utils';
|
|
2
|
+
export declare const getAllVersionUtbildningstyperIDs: () => number[];
|
|
3
|
+
/**
|
|
4
|
+
* Returns the version utbildningstyper for the given educational levels.
|
|
5
|
+
* @param educationalLevels
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare const getVersionUtbildningstyperForEducationalLevels: (educationalLevels: EducationalLevelCode[]) => {
|
|
9
|
+
ID: number;
|
|
10
|
+
Kod: string;
|
|
11
|
+
}[];
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getVersionUtbildningstyperForEducationalLevels = exports.getAllVersionUtbildningstyperIDs = void 0;
|
|
4
|
+
const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
|
|
5
|
+
const utbildningsTypIdConstants_1 = require("../utbildningsTypIdConstants");
|
|
6
|
+
const getAllVersionUtbildningstyperIDs = () => {
|
|
7
|
+
return [
|
|
8
|
+
...utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_PREPARATORY,
|
|
9
|
+
...utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_BASIC,
|
|
10
|
+
...utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_ADVANCED,
|
|
11
|
+
...utbildningsTypIdConstants_1.VERSION_UTUBILDNINGSTYP_IDS_RESEARCH,
|
|
12
|
+
...utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_UPPDRAG,
|
|
13
|
+
].map(utbildningstyp => utbildningstyp.ID);
|
|
14
|
+
};
|
|
15
|
+
exports.getAllVersionUtbildningstyperIDs = getAllVersionUtbildningstyperIDs;
|
|
16
|
+
/**
|
|
17
|
+
* Returns the version utbildningstyper for the given educational levels.
|
|
18
|
+
* @param educationalLevels
|
|
19
|
+
* @returns
|
|
20
|
+
*/
|
|
21
|
+
const getVersionUtbildningstyperForEducationalLevels = (educationalLevels) => {
|
|
22
|
+
return educationalLevels.flatMap(level => {
|
|
23
|
+
switch (level) {
|
|
24
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Preparatory:
|
|
25
|
+
return utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_PREPARATORY;
|
|
26
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Basic:
|
|
27
|
+
return utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_BASIC;
|
|
28
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Advanced:
|
|
29
|
+
return utbildningsTypIdConstants_1.VERSION_UTBILDNINGSTYP_IDS_ADVANCED;
|
|
30
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Research:
|
|
31
|
+
return utbildningsTypIdConstants_1.VERSION_UTUBILDNINGSTYP_IDS_RESEARCH;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
exports.getVersionUtbildningstyperForEducationalLevels = getVersionUtbildningstyperForEducationalLevels;
|
|
36
|
+
//# sourceMappingURL=educationalTypeUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"educationalTypeUtils.js","sourceRoot":"","sources":["../../../src/search/utils/educationalTypeUtils.ts"],"names":[],"mappings":";;;AAAA,8EAAqE;AACrE,4EAMqC;AAE9B,MAAM,gCAAgC,GAAG,GAAa,EAAE;IAC7D,OAAO;QACL,GAAG,kEAAsC;QACzC,GAAG,4DAAgC;QACnC,GAAG,+DAAmC;QACtC,GAAG,gEAAoC;QACvC,GAAG,8DAAkC;KACtC,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,CAAC,CAAA;AAC5C,CAAC,CAAA;AARY,QAAA,gCAAgC,oCAQ5C;AAED;;;;GAIG;AACI,MAAM,8CAA8C,GAAG,CAAC,iBAAyC,EAAE,EAAE;IAC1G,OAAO,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;QACvC,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,gDAAoB,CAAC,WAAW;gBACnC,OAAO,kEAAsC,CAAA;YAC/C,KAAK,gDAAoB,CAAC,KAAK;gBAC7B,OAAO,4DAAgC,CAAA;YACzC,KAAK,gDAAoB,CAAC,QAAQ;gBAChC,OAAO,+DAAmC,CAAA;YAC5C,KAAK,gDAAoB,CAAC,QAAQ;gBAChC,OAAO,gEAAoC,CAAA;QAC/C,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAbY,QAAA,8CAA8C,kDAa1D"}
|
|
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.getAllEntitiesByUseOfContinuation = void 0;
|
|
13
13
|
const SearchError_1 = require("../SearchError");
|
|
14
|
-
const MAX_SEARCH_RESULTS_TO_RETURN =
|
|
14
|
+
const MAX_SEARCH_RESULTS_TO_RETURN = 300; // TODO Benni, make sure to adjust this. We do not want to have more than 250 results in the UI, but here it could be more
|
|
15
15
|
const MAX_CONTINUATION_ITERATIONS = 4;
|
|
16
16
|
const getAllEntitiesByUseOfContinuation = (apiCall, requestQuery) => __awaiter(void 0, void 0, void 0, function* () {
|
|
17
17
|
var _a;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Course } from '../../mapCourse';
|
|
2
|
+
/**
|
|
3
|
+
* Returns only course versions that have been completed at least once.
|
|
4
|
+
* This means that the versionsnummer is greater than 1 or if it is 1, the ladokStatusCode is Complete.
|
|
5
|
+
* @param courseVersions
|
|
6
|
+
* @returns
|
|
7
|
+
*/
|
|
8
|
+
export declare const getLatestCompletedCourseVersions: <T extends Pick<Course, "versionsnummer" | "ladokStatusCode">>(courseVersions: T[]) => T[];
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getLatestCompletedCourseVersions = void 0;
|
|
4
|
+
const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
|
|
5
|
+
/**
|
|
6
|
+
* Returns only course versions that have been completed at least once.
|
|
7
|
+
* This means that the versionsnummer is greater than 1 or if it is 1, the ladokStatusCode is Complete.
|
|
8
|
+
* @param courseVersions
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
const getLatestCompletedCourseVersions = (courseVersions) => {
|
|
12
|
+
return courseVersions.filter(course => {
|
|
13
|
+
const versionsnummer = parseInt(course.versionsnummer, 10);
|
|
14
|
+
if (course.ladokStatusCode === ladok_attributvarde_utils_1.LadokStatusCode.Complete)
|
|
15
|
+
return true;
|
|
16
|
+
return versionsnummer > 1; // If a versionnummer is greater than 1, there once has been at least one completed version
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
exports.getLatestCompletedCourseVersions = getLatestCompletedCourseVersions;
|
|
20
|
+
//# sourceMappingURL=getLatestCompletedCourseVersions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getLatestCompletedCourseVersions.js","sourceRoot":"","sources":["../../../src/search/utils/getLatestCompletedCourseVersions.ts"],"names":[],"mappings":";;;AAAA,8EAAgE;AAGhE;;;;;GAKG;AACI,MAAM,gCAAgC,GAAG,CAC9C,cAAmB,EACd,EAAE;IACP,OAAO,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QACpC,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;QAE1D,IAAI,MAAM,CAAC,eAAe,KAAK,2CAAe,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAA;QAEpE,OAAO,cAAc,GAAG,CAAC,CAAA,CAAC,2FAA2F;IACvH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAVY,QAAA,gCAAgC,oCAU5C"}
|
|
@@ -1,12 +1,18 @@
|
|
|
1
|
-
import { SokUtbildningsInstansSlimQuery,
|
|
2
|
-
import {
|
|
1
|
+
import { SokUtbildningsInstansSlimQuery, SokUtbildningsTillfalleSlimQuery } from '@kth/ladok-mellanlager-client';
|
|
2
|
+
import { CleanSearchParams, SearchParams } from '../types';
|
|
3
|
+
import { SchoolWithDepartments } from '../../supportApis/createSupportApis';
|
|
3
4
|
/**
|
|
5
|
+
* Validates and cleans the search parameters for the search API.
|
|
4
6
|
* Throws an error if the searchParams are invalid.
|
|
5
7
|
* @param searchParams
|
|
8
|
+
* @returns
|
|
9
|
+
* @throws SearchError
|
|
10
|
+
* - noRestrictions: if no search parameters are provided
|
|
11
|
+
* - kodEllerBenamning: if kodEllerBenamning is provided but less than 3 characters
|
|
6
12
|
*/
|
|
7
|
-
export declare const
|
|
8
|
-
export declare const prepareSearchRequestQueryForKursTillfallen: (
|
|
9
|
-
requestQuery:
|
|
13
|
+
export declare const validateAndCleanSearchParams: (searchParams: SearchParams) => CleanSearchParams;
|
|
14
|
+
export declare const prepareSearchRequestQueryForKursTillfallen: (searchParams: CleanSearchParams) => {
|
|
15
|
+
requestQuery: NonNullable<SokUtbildningsTillfalleSlimQuery>;
|
|
10
16
|
filterPeriod: boolean;
|
|
11
17
|
};
|
|
12
|
-
export declare const prepareSearchRequestQueryForKursInstans: (searchParams:
|
|
18
|
+
export declare const prepareSearchRequestQueryForKursInstans: (searchParams: CleanSearchParams, schoolsWithDepartments: SchoolWithDepartments[]) => NonNullable<SokUtbildningsInstansSlimQuery>;
|
|
@@ -1,25 +1,59 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.prepareSearchRequestQueryForKursInstans = exports.prepareSearchRequestQueryForKursTillfallen = exports.
|
|
3
|
+
exports.prepareSearchRequestQueryForKursInstans = exports.prepareSearchRequestQueryForKursTillfallen = exports.validateAndCleanSearchParams = void 0;
|
|
4
4
|
const SearchError_1 = require("../SearchError");
|
|
5
5
|
const utils_1 = require("../../utils");
|
|
6
6
|
const ladok_attributvarde_utils_1 = require("@kth/ladok-attributvarde-utils");
|
|
7
7
|
const utbildningsTypIdConstants_1 = require("../utbildningsTypIdConstants");
|
|
8
8
|
const attributVardenConstants_1 = require("../../attributVardenConstants");
|
|
9
|
+
const educationalTypeUtils_1 = require("./educationalTypeUtils");
|
|
10
|
+
const typeChecking_1 = require("../../utils/typeChecking");
|
|
9
11
|
/**
|
|
12
|
+
* Validates and cleans the search parameters for the search API.
|
|
10
13
|
* Throws an error if the searchParams are invalid.
|
|
11
14
|
* @param searchParams
|
|
15
|
+
* @returns
|
|
16
|
+
* @throws SearchError
|
|
17
|
+
* - noRestrictions: if no search parameters are provided
|
|
18
|
+
* - kodEllerBenamning: if kodEllerBenamning is provided but less than 3 characters
|
|
12
19
|
*/
|
|
13
|
-
const
|
|
14
|
-
const { kodEllerBenamning, organisation, sprak, startPeriod, utbildningsniva, avvecklad } = searchParams;
|
|
15
|
-
if (!avvecklad && !kodEllerBenamning && !organisation && !sprak && !startPeriod && !
|
|
20
|
+
const validateAndCleanSearchParams = (searchParams) => {
|
|
21
|
+
const { kodEllerBenamning, organisation, sprak, startPeriod, utbildningsniva: rawUtbildningsniva, avvecklad, } = searchParams;
|
|
22
|
+
if (!avvecklad && !kodEllerBenamning && !organisation && !sprak && !startPeriod && !rawUtbildningsniva) {
|
|
16
23
|
throw SearchError_1.SearchError.noRestrictions();
|
|
17
24
|
}
|
|
18
25
|
if (kodEllerBenamning && kodEllerBenamning.length < 3) {
|
|
19
26
|
throw SearchError_1.SearchError.kodEllerBenamning();
|
|
20
27
|
}
|
|
28
|
+
const utbildningsniva = rawUtbildningsniva ? cleanUtbildningsnivaParam(rawUtbildningsniva) : undefined;
|
|
29
|
+
return {
|
|
30
|
+
kodEllerBenamning,
|
|
31
|
+
organisation,
|
|
32
|
+
sprak,
|
|
33
|
+
startPeriod,
|
|
34
|
+
utbildningsniva,
|
|
35
|
+
avvecklad,
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
exports.validateAndCleanSearchParams = validateAndCleanSearchParams;
|
|
39
|
+
const cleanUtbildningsnivaParam = (utbildningsniva) => {
|
|
40
|
+
const mappedUtbildningsniva = utbildningsniva.map(mapUtbildningsniva);
|
|
41
|
+
return mappedUtbildningsniva.filter(typeChecking_1.isDefined);
|
|
42
|
+
};
|
|
43
|
+
const mapUtbildningsniva = (utbildningsniva) => {
|
|
44
|
+
switch (utbildningsniva) {
|
|
45
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Preparatory:
|
|
46
|
+
return ladok_attributvarde_utils_1.EducationalLevelCode.Preparatory;
|
|
47
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Advanced:
|
|
48
|
+
return ladok_attributvarde_utils_1.EducationalLevelCode.Advanced;
|
|
49
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Basic:
|
|
50
|
+
return ladok_attributvarde_utils_1.EducationalLevelCode.Basic;
|
|
51
|
+
case ladok_attributvarde_utils_1.EducationalLevelCode.Research:
|
|
52
|
+
return ladok_attributvarde_utils_1.EducationalLevelCode.Research;
|
|
53
|
+
default:
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
21
56
|
};
|
|
22
|
-
exports.validateSearchParams = validateSearchParams;
|
|
23
57
|
const MAX_ANTAL_TRAFFAR = '100';
|
|
24
58
|
// TODO Benni, maybe this does not make things cleaner, observe
|
|
25
59
|
// TODO Benni don't forget this when cleaning up types on query object
|
|
@@ -28,45 +62,53 @@ const DEFAULT_INSTANCE_QUERY_PARAMS = {
|
|
|
28
62
|
instansAttributVarden: 'utbildningstyp',
|
|
29
63
|
antalTraffar: MAX_ANTAL_TRAFFAR,
|
|
30
64
|
};
|
|
31
|
-
const prepareSearchRequestQueryForKursTillfallen = (
|
|
65
|
+
const prepareSearchRequestQueryForKursTillfallen = (searchParams) => {
|
|
32
66
|
const { kodEllerBenamning, organisation, sprak, startPeriod, utbildningsniva, avvecklad } = searchParams;
|
|
33
|
-
const educationalTypes =
|
|
67
|
+
const educationalTypes = getUtbildningsnivaParameterForKursTillfalle(utbildningsniva);
|
|
34
68
|
const filterPeriod = !Boolean(startPeriod);
|
|
35
|
-
const requestQuery = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ kodEllerBenamning: kodEllerBenamning !== null && kodEllerBenamning !== void 0 ? kodEllerBenamning : '*' }, getStartPeriodOrTerminkodStart(startPeriod)), (educationalTypes && { utbildningsniva: educationalTypes
|
|
69
|
+
const requestQuery = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ kodEllerBenamning: kodEllerBenamning !== null && kodEllerBenamning !== void 0 ? kodEllerBenamning : '*' }, getStartPeriodOrTerminkodStart(startPeriod)), (educationalTypes && { utbildningsniva: educationalTypes })), (organisation && { organisation })), (sprak && { sprak })), (avvecklad && { avvecklad })), DEFAULT_INSTANCE_QUERY_PARAMS), { utbildningstypid: utbildningsTypIdConstants_1.INSTANCE_UTBILDNINGSTYP_IDS });
|
|
36
70
|
return { requestQuery, filterPeriod }; // TODO Benni this does two things, filterPeriod should probably be split out
|
|
37
71
|
};
|
|
38
72
|
exports.prepareSearchRequestQueryForKursTillfallen = prepareSearchRequestQueryForKursTillfallen;
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
exports.prepareSearchRequestQueryForKursInstans = prepareSearchRequestQueryForKursInstans;
|
|
49
|
-
const filterAndMapEducationalTypes = ({ utbildningsniva, utbildningstyper: ladokTypes, }) => {
|
|
50
|
-
if (!utbildningsniva)
|
|
51
|
-
return [];
|
|
52
|
-
const preparatoryTypes = [ladok_attributvarde_utils_1.EDUCATIONAL_TYPE_CODE_FOR_PREPARATORY_LEVEL]; // Hard coded
|
|
53
|
-
const basicTypes = ladokTypes
|
|
54
|
-
.filter(typ => String(typ.NivaInomStudieordningID) === ladok_attributvarde_utils_1.EducationalLevelCode.Basic)
|
|
55
|
-
.map(x => x.Kod);
|
|
56
|
-
const advancedTypes = ladokTypes
|
|
57
|
-
.filter(typ => String(typ.NivaInomStudieordningID) === ladok_attributvarde_utils_1.EducationalLevelCode.Advanced)
|
|
58
|
-
.map(x => x.Kod);
|
|
59
|
-
const researchTypes = ladokTypes
|
|
60
|
-
.filter(typ => String(typ.NivaInomStudieordningID) === ladok_attributvarde_utils_1.EducationalLevelCode.Research)
|
|
61
|
-
.map(x => x.Kod);
|
|
62
|
-
const levelMap = new Map([
|
|
63
|
-
[ladok_attributvarde_utils_1.EducationalLevelCode.Preparatory, preparatoryTypes],
|
|
64
|
-
[ladok_attributvarde_utils_1.EducationalLevelCode.Basic, basicTypes],
|
|
65
|
-
[ladok_attributvarde_utils_1.EducationalLevelCode.Advanced, advancedTypes],
|
|
66
|
-
[ladok_attributvarde_utils_1.EducationalLevelCode.Research, researchTypes],
|
|
67
|
-
]);
|
|
68
|
-
return utbildningsniva === null || utbildningsniva === void 0 ? void 0 : utbildningsniva.flatMap(level => levelMap.get(level) || []);
|
|
73
|
+
/**
|
|
74
|
+
* Takes an array of educational levels and returns a comma-separated string of the corresponding utbildningstypKoder.
|
|
75
|
+
* @param educationalLevels
|
|
76
|
+
* @returns
|
|
77
|
+
*/
|
|
78
|
+
const getUtbildningsnivaParameterForKursTillfalle = (educationalLevels) => {
|
|
79
|
+
if (!educationalLevels)
|
|
80
|
+
return undefined;
|
|
81
|
+
return getCommaSeparatedEducationalTypesInFormat('Kod', educationalLevels);
|
|
69
82
|
};
|
|
83
|
+
/**
|
|
84
|
+
* Takes an array of educational levels and returns a comma-separated string of the corresponding utbildningstypIDn.
|
|
85
|
+
* @param educationalLevels
|
|
86
|
+
* @returns
|
|
87
|
+
*/
|
|
88
|
+
const getUtbildningsnivaParameterForKursInstans = (educationalLevels) => {
|
|
89
|
+
if (!educationalLevels)
|
|
90
|
+
return (0, educationalTypeUtils_1.getAllVersionUtbildningstyperIDs)().join(',');
|
|
91
|
+
return getCommaSeparatedEducationalTypesInFormat('ID', educationalLevels);
|
|
92
|
+
};
|
|
93
|
+
const getCommaSeparatedEducationalTypesInFormat = (format, educationalLevels) => {
|
|
94
|
+
const selectedEducationalTypes = (0, educationalTypeUtils_1.getVersionUtbildningstyperForEducationalLevels)(educationalLevels);
|
|
95
|
+
const selectedEducationalTypeIdentifiers = selectedEducationalTypes.map(item => item[format]);
|
|
96
|
+
return selectedEducationalTypeIdentifiers.join(',');
|
|
97
|
+
};
|
|
98
|
+
const getOrganisationsFilter = (organisationer, organisation) => {
|
|
99
|
+
var _a, _b;
|
|
100
|
+
if (organisation && (organisation === null || organisation === void 0 ? void 0 : organisation.length) === 1) {
|
|
101
|
+
return ((_b = (_a = organisationer
|
|
102
|
+
.find(org => org.departmentPrefix === organisation)) === null || _a === void 0 ? void 0 : _a.departments.map(department => department.code).join(',')) !== null && _b !== void 0 ? _b : organisation);
|
|
103
|
+
}
|
|
104
|
+
return organisation;
|
|
105
|
+
};
|
|
106
|
+
const prepareSearchRequestQueryForKursInstans = (searchParams, schoolsWithDepartments) => {
|
|
107
|
+
const { kodEllerBenamning, avvecklad, organisation, utbildningsniva } = searchParams;
|
|
108
|
+
const organisationsFilter = getOrganisationsFilter(schoolsWithDepartments, organisation);
|
|
109
|
+
return Object.assign(Object.assign(Object.assign({ kodEllerBenamning: kodEllerBenamning !== null && kodEllerBenamning !== void 0 ? kodEllerBenamning : '*', antalTraffar: MAX_ANTAL_TRAFFAR }, (avvecklad && { avvecklad })), (organisationsFilter && { organisation: organisationsFilter })), { utbildningstypgrundtyp: 'KURS', utbildningstypid: getUtbildningsnivaParameterForKursInstans(utbildningsniva), instansAttributVarden: attributVardenConstants_1.ATTRIBUT_VARDEN_FOR_COURSE_VERSIONS, senasteversion: 'true' });
|
|
110
|
+
};
|
|
111
|
+
exports.prepareSearchRequestQueryForKursInstans = prepareSearchRequestQueryForKursInstans;
|
|
70
112
|
/**
|
|
71
113
|
* If startPeriod is defined, returns it as an object with startPeriod property and comma-separated values.
|
|
72
114
|
* If not, returns an object with terminkodStart property and the default period.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchUtils.js","sourceRoot":"","sources":["../../../src/search/utils/searchUtils.ts"],"names":[],"mappings":";;;AACA,gDAA4C;AAE5C,uCAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"searchUtils.js","sourceRoot":"","sources":["../../../src/search/utils/searchUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { LadokMellanlagerApiClient } from '@kth/ladok-mellanlager-client';
|
|
2
|
+
import { Language } from '../utils';
|
|
3
|
+
export declare const createSupportApi: (ladokClient: LadokMellanlagerApiClient) => SupportApi;
|
|
4
|
+
export type SupportApi = {
|
|
5
|
+
createDepartmentList: (language: Language, deprecated?: boolean) => Promise<SchoolWithDepartments[]>;
|
|
6
|
+
};
|
|
7
|
+
type DepartmentFlat = {
|
|
8
|
+
name: string;
|
|
9
|
+
code: string;
|
|
10
|
+
};
|
|
11
|
+
export type SchoolWithDepartments = {
|
|
12
|
+
departmentPrefix: string;
|
|
13
|
+
name: string;
|
|
14
|
+
departments: DepartmentFlat[];
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,137 @@
|
|
|
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.createSupportApi = void 0;
|
|
13
|
+
const createSupportApi = (ladokClient) => {
|
|
14
|
+
return {
|
|
15
|
+
createDepartmentList: (language_1, ...args_1) => __awaiter(void 0, [language_1, ...args_1], void 0, function* (language, deprecated = false) {
|
|
16
|
+
var _a, _b, _c, _d;
|
|
17
|
+
const [organisationskopplingsResponse, organisationsResponse] = yield Promise.all([
|
|
18
|
+
ladokClient.organisationskoppling(),
|
|
19
|
+
ladokClient.organisation(),
|
|
20
|
+
]);
|
|
21
|
+
const organisationer = (_b = (_a = organisationsResponse.data) === null || _a === void 0 ? void 0 : _a.Organisationer) !== null && _b !== void 0 ? _b : [];
|
|
22
|
+
const organisationskopplingar = (_d = (_c = organisationskopplingsResponse.data) === null || _c === void 0 ? void 0 : _c.Organisationskopplingar) !== null && _d !== void 0 ? _d : [];
|
|
23
|
+
const schoolsWithDepartments = extractSchoolsWithDepartments({
|
|
24
|
+
organisationer,
|
|
25
|
+
organisationskopplingar,
|
|
26
|
+
language,
|
|
27
|
+
deprecated,
|
|
28
|
+
});
|
|
29
|
+
return schoolsWithDepartments;
|
|
30
|
+
}),
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
exports.createSupportApi = createSupportApi;
|
|
34
|
+
const currentSchoolCodes = ['A', 'C', 'J', 'M', 'S', 'U'];
|
|
35
|
+
const deprecatedSchoolCodes = ['D', 'K', 'H', 'L'];
|
|
36
|
+
const deprecatedOrganisationCodesToInclude = ['DM', 'KD', 'KE', 'KF', 'HA', 'HPN', 'LA', 'LPA'];
|
|
37
|
+
const currentOrganisationCodesToExclude = [
|
|
38
|
+
'AA',
|
|
39
|
+
'AD',
|
|
40
|
+
'ADA',
|
|
41
|
+
'AG',
|
|
42
|
+
'AGA',
|
|
43
|
+
'AI',
|
|
44
|
+
'AIA',
|
|
45
|
+
'AK',
|
|
46
|
+
'AKA',
|
|
47
|
+
'ALA',
|
|
48
|
+
'AM',
|
|
49
|
+
'CA',
|
|
50
|
+
'CBA',
|
|
51
|
+
'CBB',
|
|
52
|
+
'JA',
|
|
53
|
+
'MA',
|
|
54
|
+
'MAD',
|
|
55
|
+
'MAS',
|
|
56
|
+
'MFE',
|
|
57
|
+
'MK',
|
|
58
|
+
'SAC',
|
|
59
|
+
'UTHS',
|
|
60
|
+
'LA',
|
|
61
|
+
]; // TODO This is a list of organisationCodes that has neither current nor cancelled courses. We have to find a better way to do this.
|
|
62
|
+
const getSchoolCodes = (deprecated) => {
|
|
63
|
+
if (deprecated)
|
|
64
|
+
return deprecatedSchoolCodes;
|
|
65
|
+
return currentSchoolCodes;
|
|
66
|
+
};
|
|
67
|
+
const filterDepartments = (departments, deprecated) => {
|
|
68
|
+
if (deprecated) {
|
|
69
|
+
return departments.filter(department => deprecatedOrganisationCodesToInclude.includes(department.code));
|
|
70
|
+
}
|
|
71
|
+
return departments.filter(department => currentOrganisationCodesToExclude.every(code => !department.code.startsWith(code)));
|
|
72
|
+
};
|
|
73
|
+
function extractSchoolsWithDepartments({ organisationer, organisationskopplingar, language, deprecated = false, }) {
|
|
74
|
+
const schoolCodes = getSchoolCodes(deprecated);
|
|
75
|
+
const schoolOrganisations = organisationer.filter(organisation => schoolCodes.includes(organisation.Organisationskod));
|
|
76
|
+
const schoolsWithDepartments = schoolOrganisations.map(school => {
|
|
77
|
+
const departmentHierarchy = getSubDepartments({
|
|
78
|
+
uid: school.Uid,
|
|
79
|
+
organisationskopplingar,
|
|
80
|
+
organisationer,
|
|
81
|
+
language,
|
|
82
|
+
});
|
|
83
|
+
const allDepartments = departmentHierarchy.flatMap(flattenDepartment);
|
|
84
|
+
// This filters out departments like "9A"
|
|
85
|
+
const departments = allDepartments.filter(department => department.code.startsWith(school.Organisationskod));
|
|
86
|
+
departments.sort((a, b) => a.code.localeCompare(b.code));
|
|
87
|
+
const departmentsToShow = filterDepartments(departments, deprecated);
|
|
88
|
+
return {
|
|
89
|
+
departmentPrefix: school.Organisationskod,
|
|
90
|
+
name: getSchoolNameFromLadokOrganisation(school, language),
|
|
91
|
+
departments: departmentsToShow,
|
|
92
|
+
};
|
|
93
|
+
});
|
|
94
|
+
schoolsWithDepartments.sort((a, b) => a.departmentPrefix.localeCompare(b.departmentPrefix));
|
|
95
|
+
return schoolsWithDepartments;
|
|
96
|
+
}
|
|
97
|
+
const getSubDepartments = ({ uid, organisationskopplingar, organisationer, language, }) => {
|
|
98
|
+
const matchingDepartmentKopplingar = organisationskopplingar.filter(koppling => koppling.OverliggandeRef.Uid === uid);
|
|
99
|
+
const matchingDepartments = matchingDepartmentKopplingar
|
|
100
|
+
.map(koppling => {
|
|
101
|
+
var _a;
|
|
102
|
+
const department = organisationer.find(org => org.Uid === koppling.UnderliggandeRef.Uid);
|
|
103
|
+
if (!department || !isCurrentDepartment(department))
|
|
104
|
+
return null;
|
|
105
|
+
const name = getDepartmentNameFromLadokOrganisation(department, language);
|
|
106
|
+
return {
|
|
107
|
+
name,
|
|
108
|
+
code: (_a = department.Organisationskod) !== null && _a !== void 0 ? _a : '',
|
|
109
|
+
departments: getSubDepartments({ uid: department.Uid, organisationskopplingar, organisationer, language }),
|
|
110
|
+
};
|
|
111
|
+
})
|
|
112
|
+
.filter(department => department !== null);
|
|
113
|
+
return matchingDepartments;
|
|
114
|
+
};
|
|
115
|
+
const isCurrentDepartment = (organisation) => {
|
|
116
|
+
var _a, _b;
|
|
117
|
+
return !((_a = organisation.Giltighetsperiod) === null || _a === void 0 ? void 0 : _a.Slutdatum) || new Date((_b = organisation.Giltighetsperiod) === null || _b === void 0 ? void 0 : _b.Slutdatum) > new Date();
|
|
118
|
+
};
|
|
119
|
+
const getSchoolNameFromLadokOrganisation = (org, language) => {
|
|
120
|
+
var _a;
|
|
121
|
+
let name = (_a = org.Benamning[language].split('/')[1]) !== null && _a !== void 0 ? _a : org.Benamning.sv;
|
|
122
|
+
name = name.replace('Skolan för ', '');
|
|
123
|
+
name = `${name.charAt(0).toUpperCase()}${name.slice(1)}`;
|
|
124
|
+
return name;
|
|
125
|
+
};
|
|
126
|
+
const getDepartmentNameFromLadokOrganisation = (org, language) => {
|
|
127
|
+
var _a;
|
|
128
|
+
let name = (_a = org.Benamning[language].split('/')[1]) !== null && _a !== void 0 ? _a : org.Benamning.sv;
|
|
129
|
+
return name;
|
|
130
|
+
};
|
|
131
|
+
const flattenDepartment = ({ name, code, departments }) => {
|
|
132
|
+
if (departments.length === 0) {
|
|
133
|
+
return [{ code, name }];
|
|
134
|
+
}
|
|
135
|
+
return [{ code, name }, ...departments.flatMap(flattenDepartment)];
|
|
136
|
+
};
|
|
137
|
+
//# sourceMappingURL=createSupportApis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createSupportApis.js","sourceRoot":"","sources":["../../src/supportApis/createSupportApis.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,7 @@ import { ProgramTillfalle } from '../mapProgramTillfalle';
|
|
|
10
10
|
import { SearchApi } from '../search/types';
|
|
11
11
|
import { ProgramCurriculum } from '../utils/programUtil';
|
|
12
12
|
import { ProgramSyllabus } from '../mapProgramSyllabus';
|
|
13
|
+
import { SupportApi } from '../supportApis/createSupportApis';
|
|
13
14
|
export type OmKursenLadokApiClient = {
|
|
14
15
|
getLatestCourseVersion: (courseCode: string, language: Language) => Promise<(Course & ResponseInfo) | ResponseInfo>;
|
|
15
16
|
getLatestCourseVersionIncludingCancelled: (courseCode: string, language: Language) => Promise<(Course & ResponseInfo) | ResponseInfo>;
|
|
@@ -34,4 +35,5 @@ export type OmKursenLadokApiClient = {
|
|
|
34
35
|
getAllGradingScales: () => Promise<any>;
|
|
35
36
|
getAllGradingScalesCodes: () => Promise<any>;
|
|
36
37
|
getPeriods: () => Promise<MellanlagringResponse<Period>>;
|
|
38
|
+
Support: SupportApi;
|
|
37
39
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LadokMellanlagerApiClient, Strukturdel } from '@kth/ladok-mellanlager-client';
|
|
1
|
+
import { Fritext, LadokMellanlagerApiClient, Strukturdel } from '@kth/ladok-mellanlager-client';
|
|
2
2
|
import { Language } from './languageUtil';
|
|
3
3
|
import { StructurePartInstance } from '../mapStructureCourses';
|
|
4
4
|
import { StructurePartVersion } from '../mapStructurePartVersions';
|
|
@@ -23,7 +23,7 @@ export declare const handleError: (message: string, error?: any) => {
|
|
|
23
23
|
error: string;
|
|
24
24
|
details: any;
|
|
25
25
|
};
|
|
26
|
-
export declare const fetchStructureByTillfalleUid: (uid: string, ladokClient: LadokMellanlagerApiClient) => Promise<
|
|
26
|
+
export declare const fetchStructureByTillfalleUid: (uid: string, ladokClient: LadokMellanlagerApiClient) => Promise<import("@kth/ladok-mellanlager-client").UtbildningstillfalleStruktur | undefined>;
|
|
27
27
|
export declare const fetchStructureByInstansUid: (uid: string, ladokClient: LadokMellanlagerApiClient) => Promise<Strukturdel[]>;
|
|
28
28
|
export declare const fetchStructurePartInstances: (utbildningstillfalleUIDn: string[], ladokClient: LadokMellanlagerApiClient) => Promise<(import("@kth/ladok-mellanlager-client").UtbildningstillfalleSlim | undefined)[]>;
|
|
29
29
|
export declare const fetchStructurePartsVersions: (utbildningsinstansUIDn: string[], ladokClient: LadokMellanlagerApiClient) => Promise<(import("@kth/ladok-mellanlager-client").UtbildningsinstansSlim | undefined)[]>;
|
|
@@ -33,6 +33,7 @@ type CategorizedStrukturdel = Strukturdel & {
|
|
|
33
33
|
export declare const fetchAndCategorizeStructureParts: (utbildningstillfalleUID: string, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<{
|
|
34
34
|
structureCourses: ProgramCourse[];
|
|
35
35
|
structureSpecializations: StructurePartInstance[];
|
|
36
|
+
freeTexts: Fritext[];
|
|
36
37
|
}>;
|
|
37
38
|
export declare const fetchProgramStructure: (utbildningstillfalleUID: string, language: Language, ladokClient: LadokMellanlagerApiClient) => Promise<ProgramCurriculumFromStructure[]>;
|
|
38
39
|
export {};
|
|
@@ -20,10 +20,9 @@ const handleError = (message, error) => {
|
|
|
20
20
|
};
|
|
21
21
|
exports.handleError = handleError;
|
|
22
22
|
const fetchStructureByTillfalleUid = (uid, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
|
|
23
|
-
var _a;
|
|
24
23
|
try {
|
|
25
24
|
const struktur = yield ladokClient.utbildningstillfalleStruktur(uid);
|
|
26
|
-
return
|
|
25
|
+
return struktur === null || struktur === void 0 ? void 0 : struktur.data;
|
|
27
26
|
}
|
|
28
27
|
catch (error) {
|
|
29
28
|
throw (0, exports.handleError)('Failed to fetch structure', error);
|
|
@@ -197,14 +196,16 @@ function mergeStructurePartInstancesAndVersions(filteredMappedStructurePartsDivi
|
|
|
197
196
|
});
|
|
198
197
|
}
|
|
199
198
|
const fetchAndCategorizeStructureParts = (utbildningstillfalleUID, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
|
|
200
|
-
const
|
|
201
|
-
const
|
|
199
|
+
const structureData = yield (0, exports.fetchStructureByTillfalleUid)(utbildningstillfalleUID, ladokClient);
|
|
200
|
+
const { Strukturdelar = [], Fritexter: freeTexts = [] } = structureData || {};
|
|
201
|
+
const categorizedStrukturParts = categorizeStructureParts(Strukturdelar);
|
|
202
202
|
const structurePartsDevidedByType = yield fetchStructurePartsByType(categorizedStrukturParts, language, ladokClient);
|
|
203
203
|
const { filteredMappedStructurePartsDividedByType, specializationListFromStructure } = separateSpecializations(structurePartsDevidedByType);
|
|
204
204
|
const filteredMappedStructurePartInstancesAndVersions = yield mergeStructurePartInstancesAndVersions(filteredMappedStructurePartsDividedByType, ladokClient, language);
|
|
205
205
|
return {
|
|
206
206
|
structureCourses: filteredMappedStructurePartInstancesAndVersions,
|
|
207
207
|
structureSpecializations: specializationListFromStructure,
|
|
208
|
+
freeTexts,
|
|
208
209
|
};
|
|
209
210
|
});
|
|
210
211
|
exports.fetchAndCategorizeStructureParts = fetchAndCategorizeStructureParts;
|
|
@@ -218,12 +219,13 @@ const getMainProgramInstanceData = (uid, language, ladokClient) => __awaiter(voi
|
|
|
218
219
|
const omfattning = programDetails.data.Tillfallesperioder.reduce((sum, period) => sum + period.Omfattningsvarde, 0);
|
|
219
220
|
const startperiod = (0, ladok_attributvarde_utils_1.extractGrunddata)(programDetails.data.Attributvarden, 'utbildning.attribut.startperiod');
|
|
220
221
|
const lengthInStudyYears = Math.ceil(Number(omfattning) / 60);
|
|
221
|
-
const { structureCourses, structureSpecializations } = yield (0, exports.fetchAndCategorizeStructureParts)(uid, language, ladokClient);
|
|
222
|
+
const { structureCourses, structureSpecializations, freeTexts } = yield (0, exports.fetchAndCategorizeStructureParts)(uid, language, ladokClient);
|
|
222
223
|
return {
|
|
223
224
|
startperiod,
|
|
224
225
|
lengthInStudyYears,
|
|
225
226
|
structureCourses,
|
|
226
227
|
structureSpecializations,
|
|
228
|
+
freeTexts,
|
|
227
229
|
};
|
|
228
230
|
});
|
|
229
231
|
const mapSpecializationCurriculums = (specializations, startperiodCode, lengthInStudyYears, language, ladokClient, allPeriods) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -234,11 +236,11 @@ const mapSpecializationCurriculums = (specializations, startperiodCode, lengthIn
|
|
|
234
236
|
.filter(Boolean)
|
|
235
237
|
.map(entity => (0, mapStructurePartVersions_1.mapStructurePartVersions)(entity, language));
|
|
236
238
|
const specializationsCourseListFromStructure = yield Promise.all(tillfalleUids.map((uid) => __awaiter(void 0, void 0, void 0, function* () {
|
|
237
|
-
const { structureCourses } = yield (0, exports.fetchAndCategorizeStructureParts)(uid, language, ladokClient);
|
|
238
|
-
return structureCourses;
|
|
239
|
+
const { structureCourses, freeTexts } = yield (0, exports.fetchAndCategorizeStructureParts)(uid, language, ladokClient);
|
|
240
|
+
return { structureCourses, freeTexts };
|
|
239
241
|
})));
|
|
240
242
|
return mappedSpecializations.map((spec, index) => ({
|
|
241
|
-
studyYears: (0, studyYearUtil_1.generateStudyYearData)(specializationsCourseListFromStructure[index], allPeriods, startperiodCode, lengthInStudyYears),
|
|
243
|
+
studyYears: (0, studyYearUtil_1.generateStudyYearData)(specializationsCourseListFromStructure[index].structureCourses, specializationsCourseListFromStructure[index].freeTexts, allPeriods, startperiodCode, lengthInStudyYears),
|
|
242
244
|
programmeSpecialization: {
|
|
243
245
|
programmeSpecializationCode: spec.kod,
|
|
244
246
|
title: spec.benamning,
|
|
@@ -247,12 +249,12 @@ const mapSpecializationCurriculums = (specializations, startperiodCode, lengthIn
|
|
|
247
249
|
});
|
|
248
250
|
const fetchProgramStructure = (utbildningstillfalleUID, language, ladokClient) => __awaiter(void 0, void 0, void 0, function* () {
|
|
249
251
|
try {
|
|
250
|
-
const { startperiod, lengthInStudyYears, structureCourses, structureSpecializations } = yield getMainProgramInstanceData(utbildningstillfalleUID, language, ladokClient);
|
|
252
|
+
const { startperiod, lengthInStudyYears, structureCourses, structureSpecializations, freeTexts } = yield getMainProgramInstanceData(utbildningstillfalleUID, language, ladokClient);
|
|
251
253
|
const periodData = yield ladokClient.period(); // TODO: Use cached values
|
|
252
254
|
if (periodData.type === 'error') {
|
|
253
255
|
throw new Error(`API error: ${periodData.responseInfo.message}`);
|
|
254
256
|
}
|
|
255
|
-
const mainStudyYears = (0, studyYearUtil_1.generateStudyYearData)(structureCourses, periodData.data.Period, startperiod === null || startperiod === void 0 ? void 0 : startperiod.code, lengthInStudyYears);
|
|
257
|
+
const mainStudyYears = (0, studyYearUtil_1.generateStudyYearData)(structureCourses, freeTexts, periodData.data.Period, startperiod === null || startperiod === void 0 ? void 0 : startperiod.code, lengthInStudyYears);
|
|
256
258
|
const specializationCurriculums = yield mapSpecializationCurriculums(structureSpecializations, startperiod === null || startperiod === void 0 ? void 0 : startperiod.code, lengthInStudyYears, language, ladokClient, periodData.data.Period);
|
|
257
259
|
return [{ studyYears: mainStudyYears }, ...specializationCurriculums];
|
|
258
260
|
}
|
|
@@ -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":"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"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import { PeriodItem, SokUtbildningsTillfalleItem, SokUtbildningsTillfalleSlimItem } from '@kth/ladok-mellanlager-client';
|
|
1
|
+
import { Fritext, PeriodItem, SokUtbildningsTillfalleItem, SokUtbildningsTillfalleSlimItem } from '@kth/ladok-mellanlager-client';
|
|
2
2
|
import { ProgramCourse } from './programStrukturUtil';
|
|
3
3
|
export declare const LAST_YEAR_TO_USE_SYLLABUSES_FOR_KURSLISTA = 2025;
|
|
4
4
|
export type StudyYear = {
|
|
5
5
|
yearNumber: number;
|
|
6
6
|
courses: ProgramCourse[];
|
|
7
|
+
freeTexts: Fritext[];
|
|
7
8
|
};
|
|
8
9
|
export declare const findMatchingPeriod: (date: string, periods: PeriodItem[]) => PeriodItem | undefined;
|
|
9
10
|
export declare const extractYear: (kod: string) => number;
|
|
10
|
-
export declare const
|
|
11
|
-
export declare const generateStudyYearData: (coursesData: ProgramCourse[], periodDetails: PeriodItem[], mainStartPeriod: string, lengthStudyYear: number) => StudyYear[];
|
|
11
|
+
export declare const getStudyYearFromDate: (periodEndDate: string, periodDetails: PeriodItem[], mainStartPeriod: string) => number | undefined;
|
|
12
|
+
export declare const generateStudyYearData: (coursesData: ProgramCourse[], freeTexts: Fritext[], periodDetails: PeriodItem[], mainStartPeriod: string, lengthStudyYear: number) => StudyYear[];
|
|
12
13
|
export declare const getStudyYearFromSemesters: (programmeStartSemester: string, courseStartSemester: string) => number | null;
|
|
13
14
|
export declare const extractStudyYears: (courseInstance: SokUtbildningsTillfalleItem | SokUtbildningsTillfalleSlimItem, programmeInstance: SokUtbildningsTillfalleItem | SokUtbildningsTillfalleSlimItem, periodItems: PeriodItem[]) => number[];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.extractStudyYears = exports.getStudyYearFromSemesters = exports.generateStudyYearData = exports.
|
|
3
|
+
exports.extractStudyYears = exports.getStudyYearFromSemesters = exports.generateStudyYearData = exports.getStudyYearFromDate = 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;
|
|
@@ -46,7 +46,7 @@ const extractYear = (kod) => {
|
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
48
|
exports.extractYear = extractYear;
|
|
49
|
-
const
|
|
49
|
+
const getStudyYearFromDate = (periodEndDate, periodDetails, mainStartPeriod) => {
|
|
50
50
|
const matchedPeriod = (0, exports.findMatchingPeriod)(periodEndDate, periodDetails);
|
|
51
51
|
if (!matchedPeriod)
|
|
52
52
|
return;
|
|
@@ -54,14 +54,26 @@ const getStudyYearFromEndDate = (periodEndDate, periodDetails, mainStartPeriod)
|
|
|
54
54
|
const startStudyYear = (0, exports.extractYear)(matchedPeriod.Kod);
|
|
55
55
|
return startStudyYear - baseYear + 1;
|
|
56
56
|
};
|
|
57
|
-
exports.
|
|
58
|
-
const generateStudyYearData = (coursesData, periodDetails, mainStartPeriod, lengthStudyYear) => {
|
|
59
|
-
const
|
|
57
|
+
exports.getStudyYearFromDate = getStudyYearFromDate;
|
|
58
|
+
const generateStudyYearData = (coursesData, freeTexts, periodDetails, mainStartPeriod, lengthStudyYear) => {
|
|
59
|
+
const studyYearCourses = {};
|
|
60
|
+
const studyYearFreeTexts = {};
|
|
60
61
|
const baseYear = (0, exports.extractYear)(mainStartPeriod);
|
|
62
|
+
// Step 1: Map Fritexts to study years
|
|
63
|
+
freeTexts.forEach(ft => {
|
|
64
|
+
const studyYear = (0, exports.getStudyYearFromDate)(ft.PlaneradPeriodStartDatum, periodDetails, mainStartPeriod);
|
|
65
|
+
if (studyYear && studyYear >= 1 && studyYear <= lengthStudyYear) {
|
|
66
|
+
if (!studyYearFreeTexts[studyYear]) {
|
|
67
|
+
studyYearFreeTexts[studyYear] = [];
|
|
68
|
+
}
|
|
69
|
+
studyYearFreeTexts[studyYear].push(ft);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
// Step 2: Group courses by study year
|
|
61
73
|
coursesData.forEach(course => {
|
|
62
74
|
const studyYearToPeriods = {};
|
|
63
75
|
for (const period of course.Tillfallesperioder) {
|
|
64
|
-
const studyYear = (0, exports.
|
|
76
|
+
const studyYear = (0, exports.getStudyYearFromDate)(period.ForstaUndervisningsdatum, periodDetails, mainStartPeriod);
|
|
65
77
|
if (!studyYear) {
|
|
66
78
|
console.log(`studyYear could not be found for ${course.kod}`);
|
|
67
79
|
continue;
|
|
@@ -79,16 +91,20 @@ const generateStudyYearData = (coursesData, periodDetails, mainStartPeriod, leng
|
|
|
79
91
|
// Assign each course to its respective study years with only relevant Tillfallesperioder
|
|
80
92
|
Object.entries(studyYearToPeriods).forEach(([yearStr, filteredPeriods]) => {
|
|
81
93
|
const year = Number(yearStr);
|
|
82
|
-
if (!
|
|
83
|
-
|
|
84
|
-
|
|
94
|
+
if (!studyYearCourses[year])
|
|
95
|
+
studyYearCourses[year] = [];
|
|
96
|
+
studyYearCourses[year].push(Object.assign(Object.assign({}, course), { Tillfallesperioder: filteredPeriods }));
|
|
85
97
|
});
|
|
86
98
|
});
|
|
87
|
-
//
|
|
88
|
-
return Array.from({ length: lengthStudyYear }, (_, i) =>
|
|
89
|
-
yearNumber
|
|
90
|
-
|
|
91
|
-
|
|
99
|
+
// Step 3: Return complete study years with optional freeTexts
|
|
100
|
+
return Array.from({ length: lengthStudyYear }, (_, i) => {
|
|
101
|
+
const yearNumber = i + 1;
|
|
102
|
+
return {
|
|
103
|
+
yearNumber,
|
|
104
|
+
courses: studyYearCourses[yearNumber] || [],
|
|
105
|
+
freeTexts: studyYearFreeTexts[yearNumber] || [],
|
|
106
|
+
};
|
|
107
|
+
});
|
|
92
108
|
};
|
|
93
109
|
exports.generateStudyYearData = generateStudyYearData;
|
|
94
110
|
const getStudyYearFromSemesters = (programmeStartSemester, courseStartSemester) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"studyYearUtil.js","sourceRoot":"","sources":["../../src/utils/studyYearUtil.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"studyYearUtil.js","sourceRoot":"","sources":["../../src/utils/studyYearUtil.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": "1.3.
|
|
3
|
+
"version": "1.3.13",
|
|
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.
|
|
25
|
-
"@kth/ladok-mellanlager-client": "0.4.
|
|
24
|
+
"@kth/ladok-attributvarde-utils": "0.1.9",
|
|
25
|
+
"@kth/ladok-mellanlager-client": "0.4.8",
|
|
26
26
|
"date-fns": "^4.1.0",
|
|
27
27
|
"showdown": "^2.1.0"
|
|
28
28
|
}
|