@royalschedule/maps 2.0.4 → 2.0.8
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/RS/index.d.ts +3 -0
- package/dist/RS/index.js +3 -0
- package/dist/RS/index.js.map +1 -1
- package/dist/RS/v2/from/available-dependencies.d.ts +3 -0
- package/dist/RS/v2/from/available-dependencies.js +59 -0
- package/dist/RS/v2/from/available-dependencies.js.map +1 -0
- package/dist/RS/v2/from/break-lengths.d.ts +3 -0
- package/dist/RS/v2/from/break-lengths.js +25 -0
- package/dist/RS/v2/from/break-lengths.js.map +1 -0
- package/dist/RS/v2/from/collections.d.ts +5 -0
- package/dist/RS/v2/from/collections.js +94 -0
- package/dist/RS/v2/from/collections.js.map +1 -0
- package/dist/RS/v2/from/course-events.d.ts +5 -0
- package/dist/RS/v2/from/course-events.js +113 -0
- package/dist/RS/v2/from/course-events.js.map +1 -0
- package/dist/RS/v2/from/days.d.ts +4 -0
- package/dist/RS/v2/from/days.js +26 -0
- package/dist/RS/v2/from/days.js.map +1 -0
- package/dist/RS/v2/from/dependencies.d.ts +4 -0
- package/dist/RS/v2/from/dependencies.js +59 -0
- package/dist/RS/v2/from/dependencies.js.map +1 -0
- package/dist/RS/v2/from/groups.d.ts +5 -0
- package/dist/RS/v2/from/groups.js +63 -0
- package/dist/RS/v2/from/groups.js.map +1 -0
- package/dist/RS/v2/from/index.d.ts +16 -0
- package/dist/RS/v2/from/index.js +49 -0
- package/dist/RS/v2/from/index.js.map +1 -0
- package/dist/RS/v2/from/intervals.d.ts +4 -0
- package/dist/RS/v2/from/intervals.js +28 -0
- package/dist/RS/v2/from/intervals.js.map +1 -0
- package/dist/RS/v2/from/locked-times.d.ts +4 -0
- package/dist/RS/v2/from/locked-times.js +28 -0
- package/dist/RS/v2/from/locked-times.js.map +1 -0
- package/dist/RS/v2/from/placements.d.ts +7 -0
- package/dist/RS/v2/from/placements.js +32 -0
- package/dist/RS/v2/from/placements.js.map +1 -0
- package/dist/RS/v2/from/schedules.d.ts +4 -0
- package/dist/RS/v2/from/schedules.js +92 -0
- package/dist/RS/v2/from/schedules.js.map +1 -0
- package/dist/RS/v2/from/settings.d.ts +5 -0
- package/dist/RS/v2/from/settings.js +39 -0
- package/dist/RS/v2/from/settings.js.map +1 -0
- package/dist/RS/v2/from/teachers.d.ts +4 -0
- package/dist/RS/v2/from/teachers.js +62 -0
- package/dist/RS/v2/from/teachers.js.map +1 -0
- package/dist/RS/v2/index.d.ts +7 -0
- package/dist/RS/v2/index.js +36 -0
- package/dist/RS/v2/index.js.map +1 -0
- package/dist/RS/v2/to/available-dependencies.d.ts +5 -0
- package/dist/RS/v2/to/available-dependencies.js +43 -0
- package/dist/RS/v2/to/available-dependencies.js.map +1 -0
- package/dist/RS/v2/to/break-lengths.d.ts +4 -0
- package/dist/RS/v2/to/break-lengths.js +28 -0
- package/dist/RS/v2/to/break-lengths.js.map +1 -0
- package/dist/RS/v2/to/collections.d.ts +7 -0
- package/dist/RS/v2/to/collections.js +105 -0
- package/dist/RS/v2/to/collections.js.map +1 -0
- package/dist/RS/v2/to/configurations.d.ts +5 -0
- package/dist/RS/v2/to/configurations.js +35 -0
- package/dist/RS/v2/to/configurations.js.map +1 -0
- package/dist/RS/v2/to/constraints.d.ts +5 -0
- package/dist/RS/v2/to/constraints.js +60 -0
- package/dist/RS/v2/to/constraints.js.map +1 -0
- package/dist/RS/v2/to/course-events/common.d.ts +1 -0
- package/dist/RS/v2/to/course-events/common.js +12 -0
- package/dist/RS/v2/to/course-events/common.js.map +1 -0
- package/dist/RS/v2/to/course-events/days.d.ts +8 -0
- package/dist/RS/v2/to/course-events/days.js +23 -0
- package/dist/RS/v2/to/course-events/days.js.map +1 -0
- package/dist/RS/v2/to/course-events/dependencies.d.ts +8 -0
- package/dist/RS/v2/to/course-events/dependencies.js +26 -0
- package/dist/RS/v2/to/course-events/dependencies.js.map +1 -0
- package/dist/RS/v2/to/course-events/groups.d.ts +9 -0
- package/dist/RS/v2/to/course-events/groups.js +43 -0
- package/dist/RS/v2/to/course-events/groups.js.map +1 -0
- package/dist/RS/v2/to/course-events/in-locations.d.ts +3 -0
- package/dist/RS/v2/to/course-events/in-locations.js +26 -0
- package/dist/RS/v2/to/course-events/in-locations.js.map +1 -0
- package/dist/RS/v2/to/course-events/index.d.ts +5 -0
- package/dist/RS/v2/to/course-events/index.js +85 -0
- package/dist/RS/v2/to/course-events/index.js.map +1 -0
- package/dist/RS/v2/to/course-events/intervals.d.ts +8 -0
- package/dist/RS/v2/to/course-events/intervals.js +20 -0
- package/dist/RS/v2/to/course-events/intervals.js.map +1 -0
- package/dist/RS/v2/to/course-events/meta.d.ts +15 -0
- package/dist/RS/v2/to/course-events/meta.js +39 -0
- package/dist/RS/v2/to/course-events/meta.js.map +1 -0
- package/dist/RS/v2/to/days.d.ts +4 -0
- package/dist/RS/v2/to/days.js +20 -0
- package/dist/RS/v2/to/days.js.map +1 -0
- package/dist/RS/v2/to/default.d.ts +4 -0
- package/dist/RS/v2/to/default.js +44 -0
- package/dist/RS/v2/to/default.js.map +1 -0
- package/dist/RS/v2/to/dependencies.d.ts +5 -0
- package/dist/RS/v2/to/dependencies.js +55 -0
- package/dist/RS/v2/to/dependencies.js.map +1 -0
- package/dist/RS/v2/to/groups.d.ts +5 -0
- package/dist/RS/v2/to/groups.js +69 -0
- package/dist/RS/v2/to/groups.js.map +1 -0
- package/dist/RS/v2/to/index.d.ts +15 -0
- package/dist/RS/v2/to/index.js +52 -0
- package/dist/RS/v2/to/index.js.map +1 -0
- package/dist/RS/v2/to/intervals.d.ts +4 -0
- package/dist/RS/v2/to/intervals.js +24 -0
- package/dist/RS/v2/to/intervals.js.map +1 -0
- package/dist/RS/v2/to/locked-times.d.ts +5 -0
- package/dist/RS/v2/to/locked-times.js +81 -0
- package/dist/RS/v2/to/locked-times.js.map +1 -0
- package/dist/RS/v2/to/schedules.d.ts +5 -0
- package/dist/RS/v2/to/schedules.js +36 -0
- package/dist/RS/v2/to/schedules.js.map +1 -0
- package/dist/RS/v2/to/settings.d.ts +4 -0
- package/dist/RS/v2/to/settings.js +26 -0
- package/dist/RS/v2/to/settings.js.map +1 -0
- package/dist/RS/v2/to/teachers.d.ts +5 -0
- package/dist/RS/v2/to/teachers.js +69 -0
- package/dist/RS/v2/to/teachers.js.map +1 -0
- package/dist/RS/v2/types/areas.d.ts +4 -0
- package/dist/RS/v2/types/areas.js +6 -0
- package/dist/RS/v2/types/areas.js.map +1 -0
- package/dist/RS/v2/types/available-dependencies.d.ts +4 -0
- package/dist/RS/v2/types/available-dependencies.js +6 -0
- package/dist/RS/v2/types/available-dependencies.js.map +1 -0
- package/dist/RS/v2/types/break-lengths.d.ts +6 -0
- package/dist/RS/v2/types/break-lengths.js +6 -0
- package/dist/RS/v2/types/break-lengths.js.map +1 -0
- package/dist/RS/v2/types/collections.d.ts +22 -0
- package/dist/RS/v2/types/collections.js +6 -0
- package/dist/RS/v2/types/collections.js.map +1 -0
- package/dist/RS/v2/types/configurations.d.ts +5 -0
- package/dist/RS/v2/types/configurations.js +6 -0
- package/dist/RS/v2/types/configurations.js.map +1 -0
- package/dist/RS/v2/types/constraints.d.ts +14 -0
- package/dist/RS/v2/types/constraints.js +6 -0
- package/dist/RS/v2/types/constraints.js.map +1 -0
- package/dist/RS/v2/types/course-events.d.ts +21 -0
- package/dist/RS/v2/types/course-events.js +6 -0
- package/dist/RS/v2/types/course-events.js.map +1 -0
- package/dist/RS/v2/types/days.d.ts +4 -0
- package/dist/RS/v2/types/days.js +6 -0
- package/dist/RS/v2/types/days.js.map +1 -0
- package/dist/RS/v2/types/default.d.ts +18 -0
- package/dist/RS/v2/types/default.js +6 -0
- package/dist/RS/v2/types/default.js.map +1 -0
- package/dist/RS/v2/types/dependencies.d.ts +12 -0
- package/dist/RS/v2/types/dependencies.js +6 -0
- package/dist/RS/v2/types/dependencies.js.map +1 -0
- package/dist/RS/v2/types/groups.d.ts +22 -0
- package/dist/RS/v2/types/groups.js +6 -0
- package/dist/RS/v2/types/groups.js.map +1 -0
- package/dist/RS/v2/types/index.d.ts +28 -0
- package/dist/RS/v2/types/index.js +6 -0
- package/dist/RS/v2/types/index.js.map +1 -0
- package/dist/RS/v2/types/intervals.d.ts +4 -0
- package/dist/RS/v2/types/intervals.js +6 -0
- package/dist/RS/v2/types/intervals.js.map +1 -0
- package/dist/RS/v2/types/locked-times.d.ts +7 -0
- package/dist/RS/v2/types/locked-times.js +6 -0
- package/dist/RS/v2/types/locked-times.js.map +1 -0
- package/dist/RS/v2/types/out-options.d.ts +7 -0
- package/dist/RS/v2/types/out-options.js +6 -0
- package/dist/RS/v2/types/out-options.js.map +1 -0
- package/dist/RS/v2/types/placements.d.ts +8 -0
- package/dist/RS/v2/types/placements.js +6 -0
- package/dist/RS/v2/types/placements.js.map +1 -0
- package/dist/RS/v2/types/schedules.d.ts +12 -0
- package/dist/RS/v2/types/schedules.js +6 -0
- package/dist/RS/v2/types/schedules.js.map +1 -0
- package/dist/RS/v2/types/settings.d.ts +12 -0
- package/dist/RS/v2/types/settings.js +6 -0
- package/dist/RS/v2/types/settings.js.map +1 -0
- package/dist/core/identify/index.js +9 -0
- package/dist/core/identify/index.js.map +1 -1
- package/dist/core/types/division-settings.d.ts +7 -6
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _getDate = _interopRequireDefault(require("../../../common/get-date"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = intervals => {
|
|
13
|
+
return intervals.map(interval => {
|
|
14
|
+
var {
|
|
15
|
+
beg,
|
|
16
|
+
end
|
|
17
|
+
} = interval;
|
|
18
|
+
if (beg == null) throw new Error('Interval beg is undefined');
|
|
19
|
+
if (end == null) throw new Error('Interval end is undefined');
|
|
20
|
+
return {
|
|
21
|
+
start: (0, _getDate.default)(0, beg.toFixed(2).replace('.', ':')),
|
|
22
|
+
end: (0, _getDate.default)(0, end.toFixed(2).replace('.', ':'))
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
exports.default = _default;
|
|
28
|
+
//# sourceMappingURL=intervals.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/from/intervals.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;eAKgB,SAAD,IAA4C;AACzD,SAAO,SAAS,CAAC,GAAV,CAAe,QAAD,IAAuB;AAC1C,QAAM;AAAE,MAAA,GAAF;AAAO,MAAA;AAAP,QAAe,QAArB;AAEA,QAAI,GAAG,IAAI,IAAX,EAAiB,MAAM,IAAI,KAAJ,CAAU,2BAAV,CAAN;AACjB,QAAI,GAAG,IAAI,IAAX,EAAiB,MAAM,IAAI,KAAJ,CAAU,2BAAV,CAAN;AAEjB,WAAO;AACL,MAAA,KAAK,EAAE,sBAAQ,CAAR,EAAW,GAAG,CAAC,OAAJ,CAAY,CAAZ,EAAe,OAAf,CAAuB,GAAvB,EAA4B,GAA5B,CAAX,CADF;AAEL,MAAA,GAAG,EAAI,sBAAQ,CAAR,EAAW,GAAG,CAAC,OAAJ,CAAY,CAAZ,EAAe,OAAf,CAAuB,GAAvB,EAA4B,GAA5B,CAAX;AAFF,KAAP;AAID,GAVM,CAAP;AAWD,C","sourceRoot":"","file":"intervals.js"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _getDate = _interopRequireDefault(require("../../../common/get-date"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = lockedTimes => {
|
|
13
|
+
return lockedTimes.reduce((acc, lockedTime) => {
|
|
14
|
+
if (lockedTime.day == null) throw new Error('A locked time missing days field');
|
|
15
|
+
if (lockedTime.start == null) throw new Error('A locked time missing start field');
|
|
16
|
+
if (!lockedTime.length) throw new Error('A locked time missing length field');
|
|
17
|
+
var start = (0, _getDate.default)(lockedTime.day, lockedTime.start.toFixed(2).replace('.', ':'));
|
|
18
|
+
var end = start.clone().add(lockedTime.length, 'minutes');
|
|
19
|
+
return acc.concat({
|
|
20
|
+
displayName: lockedTime.name,
|
|
21
|
+
start: start,
|
|
22
|
+
end: end
|
|
23
|
+
});
|
|
24
|
+
}, []);
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
exports.default = _default;
|
|
28
|
+
//# sourceMappingURL=locked-times.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/from/locked-times.ts"],"names":[],"mappings":";;;;;;;AAEA;;;;eAMgB,WAAD,IAAkD;AAC/D,SAAO,WAAW,CAAC,MAAZ,CAAmB,CAAC,GAAD,EAAW,UAAX,KAAqC;AAE7D,QAAI,UAAU,CAAC,GAAX,IAAkB,IAAtB,EACE,MAAM,IAAI,KAAJ,CAAU,kCAAV,CAAN;AAEF,QAAI,UAAU,CAAC,KAAX,IAAoB,IAAxB,EACE,MAAM,IAAI,KAAJ,CAAU,mCAAV,CAAN;AAEF,QAAI,CAAE,UAAU,CAAC,MAAjB,EACE,MAAM,IAAI,KAAJ,CAAU,oCAAV,CAAN;AAEF,QAAM,KAAK,GAAG,sBAAQ,UAAU,CAAC,GAAnB,EAAwB,UAAU,CAAC,KAAX,CAAkB,OAAlB,CAA0B,CAA1B,EAA6B,OAA7B,CAAqC,GAArC,EAA0C,GAA1C,CAAxB,CAAd;AACA,QAAM,GAAG,GAAK,KAAK,CAAC,KAAN,GAAc,GAAd,CAAkB,UAAU,CAAC,MAA7B,EAAqC,SAArC,CAAd;AAEA,WAAO,GAAG,CAAC,MAAJ,CAAW;AAChB,MAAA,WAAW,EAAE,UAAU,CAAC,IADR;AAEhB,MAAA,KAAK,EAAQ,KAFG;AAGhB,MAAA,GAAG,EAAU;AAHG,KAAX,CAAP;AAKD,GAnBM,EAmBJ,EAnBI,CAAP;AAoBD,C","sourceRoot":"","file":"locked-times.js"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Configuration } from '../types/configurations';
|
|
2
|
+
import { CourseEvent } from '../../../core/types/course-events';
|
|
3
|
+
declare type Options = {
|
|
4
|
+
idKey?: '_id' | 'id' | 'ids';
|
|
5
|
+
};
|
|
6
|
+
declare const _default: (configuration: Configuration, options?: Options) => CourseEvent[];
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = function _default(configuration) {
|
|
13
|
+
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
14
|
+
var idKey = options.idKey || 'id';
|
|
15
|
+
var {
|
|
16
|
+
events
|
|
17
|
+
} = configuration !== null && configuration !== void 0 ? configuration : {};
|
|
18
|
+
return events === null || events === void 0 ? void 0 : events.map(event => {
|
|
19
|
+
var _event$dependencies;
|
|
20
|
+
|
|
21
|
+
return {
|
|
22
|
+
[idKey]: event.id,
|
|
23
|
+
parked: false,
|
|
24
|
+
inLocations: (_event$dependencies = event.dependencies) !== null && _event$dependencies !== void 0 ? _event$dependencies : [],
|
|
25
|
+
start: _moment.default.utc('1970-01-05T00:00').add(event.day, 'days').add(event.start, 'minutes').toISOString(),
|
|
26
|
+
end: _moment.default.utc('1970-01-05T00:00').add(event.day, 'days').add(event.end, 'minutes').toISOString()
|
|
27
|
+
};
|
|
28
|
+
});
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
exports.default = _default;
|
|
32
|
+
//# sourceMappingURL=placements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/from/placements.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;eAYe,kBAAC,aAAD,EAAuE;AAAA,MAAxC,OAAwC,uEAArB,EAAqB;AAEpF,MAAM,KAAK,GAAsB,OAAO,CAAC,KAAR,IAAiB,IAAlD;AAEA,MAAM;AAAE,IAAA;AAAF,MAAa,aAAb,aAAa,aAAb,cAAa,aAAb,GAA8B,EAApC;AAEA,SAAO,MAAP,aAAO,MAAP,uBAAO,MAAM,CAAE,GAAR,CAAa,KAAD,IAAqB;AAAA;;AACtC,WAAO;AACL,OAAC,KAAD,GAAc,KAAK,CAAC,EADf;AAEL,MAAA,MAAM,EAAQ,KAFT;AAGL,MAAA,WAAW,yBAAG,KAAK,CAAC,YAAT,qEAAyB,EAH/B;AAIL,MAAA,KAAK,EAAS,gBAAO,GAAP,CAAW,kBAAX,EAA+B,GAA/B,CAAmC,KAAK,CAAC,GAAzC,EAA8C,MAA9C,EAAsD,GAAtD,CAA0D,KAAK,CAAC,KAAhE,EAAuE,SAAvE,EAAkF,WAAlF,EAJT;AAKL,MAAA,GAAG,EAAW,gBAAO,GAAP,CAAW,kBAAX,EAA+B,GAA/B,CAAmC,KAAK,CAAC,GAAzC,EAA8C,MAA9C,EAAsD,GAAtD,CAA0D,KAAK,CAAC,GAAhE,EAAqE,SAArE,EAAgF,WAAhF;AALT,KAAP;AAOD,GARM,CAAP;AASD,C","sourceRoot":"","file":"placements.js"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _dependencies = _interopRequireDefault(require("./dependencies"));
|
|
9
|
+
|
|
10
|
+
var _teachers = _interopRequireDefault(require("./teachers"));
|
|
11
|
+
|
|
12
|
+
var _groups = _interopRequireDefault(require("./groups"));
|
|
13
|
+
|
|
14
|
+
var _collections = _interopRequireDefault(require("./collections"));
|
|
15
|
+
|
|
16
|
+
var _settings = _interopRequireDefault(require("./settings"));
|
|
17
|
+
|
|
18
|
+
var _placements2 = _interopRequireDefault(require("./placements"));
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
+
|
|
24
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
25
|
+
|
|
26
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
27
|
+
|
|
28
|
+
var _default2 = schedule => {
|
|
29
|
+
var {
|
|
30
|
+
input: {
|
|
31
|
+
settings,
|
|
32
|
+
default: _default,
|
|
33
|
+
dependencies,
|
|
34
|
+
groups,
|
|
35
|
+
events,
|
|
36
|
+
areas
|
|
37
|
+
}
|
|
38
|
+
} = schedule;
|
|
39
|
+
var [configuration, ..._] = schedule.output || [];
|
|
40
|
+
var teachers;
|
|
41
|
+
var locations;
|
|
42
|
+
if (!settings) throw new Error("Settings cannot be undefined");
|
|
43
|
+
if (dependencies) locations = (0, _dependencies.default)(dependencies, settings);
|
|
44
|
+
if (groups) teachers = (0, _teachers.default)(groups, settings);
|
|
45
|
+
if (groups) groups = (0, _groups.default)(groups, settings);
|
|
46
|
+
if (events) events = (0, _collections.default)(events, (teachers || []).map(x => x.ids), (groups || []).map(x => x.ids), settings);
|
|
47
|
+
settings = (0, _settings.default)(settings, _default);
|
|
48
|
+
|
|
49
|
+
if (configuration) {
|
|
50
|
+
var _events;
|
|
51
|
+
|
|
52
|
+
var _placements = (0, _placements2.default)(configuration, {
|
|
53
|
+
idKey: 'ids'
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
var i = -1;
|
|
57
|
+
(_events = events) === null || _events === void 0 ? void 0 : _events.forEach(collection => {
|
|
58
|
+
var _collection$events;
|
|
59
|
+
|
|
60
|
+
(_collection$events = collection.events) === null || _collection$events === void 0 ? void 0 : _collection$events.forEach(event => {
|
|
61
|
+
i++;
|
|
62
|
+
|
|
63
|
+
var _placedEvent = _placements.find(_ref => {
|
|
64
|
+
var {
|
|
65
|
+
ids
|
|
66
|
+
} = _ref;
|
|
67
|
+
return ids == event.ids;
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
if (_placedEvent) return Object.assign(event, _placedEvent);
|
|
71
|
+
return Object.assign(event, _placements[i]);
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({}, locations && {
|
|
77
|
+
locations
|
|
78
|
+
}), teachers && {
|
|
79
|
+
teachers
|
|
80
|
+
}), groups && {
|
|
81
|
+
groups
|
|
82
|
+
}), events && {
|
|
83
|
+
courses: events
|
|
84
|
+
}), areas && {
|
|
85
|
+
area: areas
|
|
86
|
+
}), settings && {
|
|
87
|
+
settings
|
|
88
|
+
});
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
exports.default = _default2;
|
|
92
|
+
//# sourceMappingURL=schedules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/from/schedules.ts"],"names":[],"mappings":";;;;;;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;gBAEgB,QAAD,IAAiC;AAE9C,MAAI;AACF,IAAA,KAAK,EAAE;AACL,MAAA,QADK;AAEL,MAAA,OAAO,EAAE,QAFJ;AAGL,MAAA,YAHK;AAIL,MAAA,MAJK;AAKL,MAAA,MALK;AAML,MAAA;AANK;AADL,MASK,QATT;AAWA,MAAM,CAAC,aAAD,EAAgB,GAAG,CAAnB,IAAwB,QAAQ,CAAC,MAAT,IAAmB,EAAjD;AAEA,MAAI,QAAJ;AACA,MAAI,SAAJ;AAEA,MAAI,CAAE,QAAN,EACE,MAAM,IAAI,KAAJ,gCAAN;AAEF,MAAI,YAAJ,EACE,SAAS,GAAM,2BAAgB,YAAhB,EAA8B,QAA9B,CAAf;AACF,MAAI,MAAJ,EACE,QAAQ,GAAO,uBAAY,MAAZ,EAAoB,QAApB,CAAf;AACF,MAAI,MAAJ,EACE,MAAM,GAAS,qBAAU,MAAV,EAAkB,QAAlB,CAAf;AACF,MAAI,MAAJ,EACE,MAAM,GAAS,0BAAe,MAAf,EACe,CAAC,QAAQ,IAAI,EAAb,EAAiB,GAAjB,CAAsB,CAAD,IAAY,CAAC,CAAC,GAAnC,CADf,EAEe,CAAC,MAAM,IAAI,EAAX,EAAe,GAAf,CAAoB,CAAD,IAAY,CAAC,CAAC,GAAjC,CAFf,EAGe,QAHf,CAAf;AAIF,EAAA,QAAQ,GAAS,uBAAY,QAAZ,EAAsB,QAAtB,CAAjB;;AAEA,MAAI,aAAJ,EAAmB;AAAA;;AACjB,QAAM,WAAW,GAAG,0BAAc,aAAd,EAA6B;AAAE,MAAA,KAAK,EAAE;AAAT,KAA7B,CAApB;;AAEA,QAAI,CAAC,GAAW,CAAC,CAAjB;AAEA,eAAA,MAAM,UAAN,0CAAQ,OAAR,CAAiB,UAAD,IAAoB;AAAA;;AAClC,4BAAA,UAAU,CAAC,MAAX,0EAAmB,OAAnB,CAA4B,KAAD,IAAe;AACxC,QAAA,CAAC;;AACD,YAAM,YAAY,GAAQ,WAAW,CAAC,IAAZ,CAAiB;AAAA,cAAC;AAAE,YAAA;AAAF,WAAD;AAAA,iBAAa,GAAG,IAAI,KAAK,CAAC,GAA1B;AAAA,SAAjB,CAA1B;;AAEA,YAAI,YAAJ,EACE,OAAO,MAAM,CAAC,MAAP,CAAc,KAAd,EAAqB,YAArB,CAAP;AAEF,eAAO,MAAM,CAAC,MAAP,CAAc,KAAd,EAAqB,WAAW,CAAC,CAAD,CAAhC,CAAP;AACD,OARD;AASD,KAVD;AAWD;;AAED,iGACK,SAAS,IAAI;AAAE,IAAA;AAAF,GADlB,GAEK,QAAQ,IAAK;AAAE,IAAA;AAAF,GAFlB,GAGK,MAAM,IAAO;AAAE,IAAA;AAAF,GAHlB,GAIK,MAAM,IAAO;AAAE,IAAA,OAAO,EAAE;AAAX,GAJlB,GAKK,KAAK,IAAQ;AAAE,IAAA,IAAI,EAAE;AAAR,GALlB,GAMK,QAAQ,IAAK;AAAE,IAAA;AAAF,GANlB;AAQD,C","sourceRoot":"","file":"schedules.js"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Settings } from '../types/settings';
|
|
2
|
+
import { Default } from '../types/default';
|
|
3
|
+
import { DivisionSettings } from '../../../core/types/division-settings';
|
|
4
|
+
declare const _default_1: (settings: Settings, _default: Default) => DivisionSettings;
|
|
5
|
+
export default _default_1;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default2 = (settings, _default) => {
|
|
13
|
+
var _default$intervals$0$, _default$intervals$0$2, _default$potentialCen;
|
|
14
|
+
|
|
15
|
+
var EMBL = _default.eventMinBreakLength;
|
|
16
|
+
var MNDWH = _default.maxNumDailyWorkingHours;
|
|
17
|
+
return {
|
|
18
|
+
numDays: settings.numDays,
|
|
19
|
+
discretization: settings.discretization,
|
|
20
|
+
dayStart: (_default$intervals$0$ = _default.intervals[0].beg) === null || _default$intervals$0$ === void 0 ? void 0 : _default$intervals$0$.toFixed(2).replace('.', ':'),
|
|
21
|
+
dayEnd: (_default$intervals$0$2 = _default.intervals[0].end) === null || _default$intervals$0$2 === void 0 ? void 0 : _default$intervals$0$2.toFixed(2).replace('.', ':'),
|
|
22
|
+
defaultDependencyMinimumBreakLength: _default.dependencyMinBreakLength,
|
|
23
|
+
defaultGroupMinimumBreakLength: _default.groupMinBreakLength,
|
|
24
|
+
defaultEventMinimumBreakLength: _lodash.default.isObject(EMBL) ? 0.5 * (EMBL.bef + EMBL.aft) : _lodash.default.isNumber(EMBL) ? EMBL : 0,
|
|
25
|
+
potentialCenter: (_default$potentialCen = _default.potentialCenter) === null || _default$potentialCen === void 0 ? void 0 : _default$potentialCen.toFixed(2).replace('.', ':'),
|
|
26
|
+
defaultEventDensity: _default.eventDensity,
|
|
27
|
+
defaultMaxNumWorkingHours: _default.maxNumWorkingHours,
|
|
28
|
+
defaultMaxNumDailyWorkingHours: _lodash.default.isArray(MNDWH) ? MNDWH[0] : MNDWH,
|
|
29
|
+
defaultDependencyRank: _default.dependencyRank,
|
|
30
|
+
defaultGroupRank: _default.groupRank,
|
|
31
|
+
defaultDayRank: _default.dayRank,
|
|
32
|
+
defaultEventWeight: _default.eventWeight,
|
|
33
|
+
defaultGroupWeight: _default.groupWeight,
|
|
34
|
+
defaultCourseWeight: _default.collectionWeight
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
exports.default = _default2;
|
|
39
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/from/settings.ts"],"names":[],"mappings":";;;;;;;AAIA;;;;gBAEe,CAAC,QAAD,EAAqB,QAArB,KAA4D;AAAA;;AAEzE,MAAI,IAAI,GAAI,QAAQ,CAAC,mBAArB;AACA,MAAI,KAAK,GAAG,QAAQ,CAAC,uBAArB;AAEA,SAAO;AACL,IAAA,OAAO,EAA8B,QAAQ,CAAC,OADzC;AAEL,IAAA,cAAc,EAAuB,QAAQ,CAAC,cAFzC;AAIL,IAAA,QAAQ,2BAA6B,QAAQ,CAAC,SAAT,CAAmB,CAAnB,EAAsB,GAAnD,0DAA6B,sBAA2B,OAA3B,CAAmC,CAAnC,EAAsC,OAAtC,CAA8C,GAA9C,EAAmD,GAAnD,CAJhC;AAKL,IAAA,MAAM,4BAA+B,QAAQ,CAAC,SAAT,CAAmB,CAAnB,EAAsB,GAArD,2DAA+B,uBAA2B,OAA3B,CAAmC,CAAnC,EAAsC,OAAtC,CAA8C,GAA9C,EAAmD,GAAnD,CALhC;AAOL,IAAA,mCAAmC,EAAE,QAAQ,CAAC,wBAPzC;AAQL,IAAA,8BAA8B,EAAO,QAAQ,CAAC,mBARzC;AASL,IAAA,8BAA8B,EAAO,gBAAE,QAAF,CAAW,IAAX,IAAmB,OAAK,IAAI,CAAC,GAAL,GAAW,IAAI,CAAC,GAArB,CAAnB,GAA+C,gBAAE,QAAF,CAAW,IAAX,IAAmB,IAAnB,GAA0B,CATzG;AAWL,IAAA,eAAe,2BAAsB,QAAQ,CAAC,eAA/B,0DAAsB,sBAA0B,OAA1B,CAAkC,CAAlC,EAAqC,OAArC,CAA6C,GAA7C,EAAkD,GAAlD,CAXhC;AAYL,IAAA,mBAAmB,EAAkB,QAAQ,CAAC,YAZzC;AAcL,IAAA,yBAAyB,EAAY,QAAQ,CAAC,kBAdzC;AAeL,IAAA,8BAA8B,EAAO,gBAAE,OAAF,CAAU,KAAV,IAAmB,KAAK,CAAC,CAAD,CAAxB,GAA8B,KAf9D;AAiBL,IAAA,qBAAqB,EAAgB,QAAQ,CAAC,cAjBzC;AAkBL,IAAA,gBAAgB,EAAqB,QAAQ,CAAC,SAlBzC;AAmBL,IAAA,cAAc,EAAuB,QAAQ,CAAC,OAnBzC;AAqBL,IAAA,kBAAkB,EAAmB,QAAQ,CAAC,WArBzC;AAsBL,IAAA,kBAAkB,EAAmB,QAAQ,CAAC,WAtBzC;AAuBL,IAAA,mBAAmB,EAAkB,QAAQ,CAAC;AAvBzC,GAAP;AAyBD,C","sourceRoot":"","file":"settings.js"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _breakLengths = _interopRequireDefault(require("./break-lengths"));
|
|
9
|
+
|
|
10
|
+
var _days = _interopRequireDefault(require("./days"));
|
|
11
|
+
|
|
12
|
+
var _lockedTimes = _interopRequireDefault(require("./locked-times"));
|
|
13
|
+
|
|
14
|
+
var _intervals = _interopRequireDefault(require("./intervals"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
21
|
+
|
|
22
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
23
|
+
|
|
24
|
+
var _default = (teachers, settings) => {
|
|
25
|
+
var idKey = settings.groupIdKey;
|
|
26
|
+
if (!idKey) throw new Error('property "groupIdKey" in settings is undefined');
|
|
27
|
+
return teachers.reduce((acc, teacher) => {
|
|
28
|
+
var _teacher$days, _teacher$intervals, _teacher$lockedTimes;
|
|
29
|
+
|
|
30
|
+
if (!['personal', 'classes'].includes(teacher.group_type)) throw new Error('property "group_type" must exist on all entries in "groups" array');
|
|
31
|
+
if (!teacher[idKey]) throw new Error('A teacher does not have a unique key');
|
|
32
|
+
if (teacher.group_type != 'personal') return acc;
|
|
33
|
+
return acc.concat(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
34
|
+
ids: teacher[idKey]
|
|
35
|
+
}, teacher.name && {
|
|
36
|
+
displayName: teacher.name
|
|
37
|
+
}), 'forbidOverlappingEvents' in teacher && {
|
|
38
|
+
forbidOverlappingEvents: teacher.forbidOverlappingEvents
|
|
39
|
+
}), 'maxNumWorkingHours' in teacher && {
|
|
40
|
+
maxNumWorkingHours: teacher.maxNumWorkingHours
|
|
41
|
+
}), 'maxNumDailyWorkingHours' in teacher && {
|
|
42
|
+
maxNumDailyWorkingHours: teacher.maxNumDailyWorkingHours
|
|
43
|
+
}), 'minBreakLength' in teacher && {
|
|
44
|
+
minBreakLength: (0, _breakLengths.default)(teacher.minBreakLength)
|
|
45
|
+
}), 'disableDayLengthPunishment' in teacher && {
|
|
46
|
+
disableDayLengthPunishment: teacher.disableDayLengthPunishment
|
|
47
|
+
}), 'weight' in teacher && {
|
|
48
|
+
weight: teacher.weight
|
|
49
|
+
}), 'rank' in teacher && {
|
|
50
|
+
rank: teacher.rank
|
|
51
|
+
}), ((_teacher$days = teacher.days) === null || _teacher$days === void 0 ? void 0 : _teacher$days.length) && {
|
|
52
|
+
days: (0, _days.default)(teacher.days, settings)
|
|
53
|
+
}), ((_teacher$intervals = teacher.intervals) === null || _teacher$intervals === void 0 ? void 0 : _teacher$intervals.length) && {
|
|
54
|
+
intervals: (0, _intervals.default)(teacher.intervals)
|
|
55
|
+
}), ((_teacher$lockedTimes = teacher.lockedTimes) === null || _teacher$lockedTimes === void 0 ? void 0 : _teacher$lockedTimes.length) && {
|
|
56
|
+
lockedTimes: (0, _lockedTimes.default)(teacher.lockedTimes)
|
|
57
|
+
}));
|
|
58
|
+
}, []);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
exports.default = _default;
|
|
62
|
+
//# sourceMappingURL=teachers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/from/teachers.ts"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;eAMe,CAAC,QAAD,EACC,QADD,KACqC;AAElD,MAAM,KAAK,GAAgB,QAAQ,CAAC,UAApC;AAEA,MAAI,CAAE,KAAN,EACE,MAAM,IAAI,KAAJ,CAAU,gDAAV,CAAN;AAEF,SAAO,QAAQ,CAAC,MAAT,CAAgB,CAAC,GAAD,EAAa,OAAb,KAA+B;AAAA;;AAEpD,QAAI,CAAE,CAAC,UAAD,EAAa,SAAb,EAAwB,QAAxB,CAAiC,OAAO,CAAC,UAAzC,CAAN,EACE,MAAM,IAAI,KAAJ,CAAU,mEAAV,CAAN;AAEF,QAAI,CAAE,OAAO,CAAC,KAAD,CAAb,EACE,MAAM,IAAI,KAAJ,CAAU,sCAAV,CAAN;AAEF,QAAI,OAAO,CAAC,UAAR,IAAsB,UAA1B,EACE,OAAO,GAAP;AAEF,WAAO,GAAG,CAAC,MAAJ;AACL,MAAA,GAAG,EAAyE,OAAO,CAAC,KAAD;AAD9E,OAEF,OAAO,CAAC,IAAR,IAA2C;AAAE,MAAA,WAAW,EAAiB,OAAO,CAAC;AAAtC,KAFzC,GAGF,6BAAgC,OAAhC,IAA2C;AAAE,MAAA,uBAAuB,EAAK,OAAO,CAAC;AAAtC,KAHzC,GAIF,wBAAgC,OAAhC,IAA2C;AAAE,MAAA,kBAAkB,EAAU,OAAO,CAAC;AAAtC,KAJzC,GAKF,6BAAgC,OAAhC,IAA2C;AAAE,MAAA,uBAAuB,EAAK,OAAO,CAAC;AAAtC,KALzC,GAMF,oBAAgC,OAAhC,IAA2C;AAAE,MAAA,cAAc,EAAc,2BAAY,OAAO,CAAC,cAApB;AAA9B,KANzC,GAOF,gCAAgC,OAAhC,IAA2C;AAAE,MAAA,0BAA0B,EAAE,OAAO,CAAC;AAAtC,KAPzC,GAQF,YAAgC,OAAhC,IAA2C;AAAE,MAAA,MAAM,EAAsB,OAAO,CAAC;AAAtC,KARzC,GASF,UAAgC,OAAhC,IAA2C;AAAE,MAAA,IAAI,EAAwB,OAAO,CAAC;AAAtC,KATzC,GAUF,kBAAC,OAAO,CAAC,IAAT,kDAAC,cAAc,MAAf,KAA2C;AAAE,MAAA,IAAI,EAAwB,mBAAK,OAAO,CAAC,IAAb,EAAmB,QAAnB;AAA9B,KAVzC,GAWF,uBAAC,OAAO,CAAC,SAAT,uDAAC,mBAAmB,MAApB,KAA2C;AAAE,MAAA,SAAS,EAAmB,wBAAU,OAAO,CAAC,SAAlB;AAA9B,KAXzC,GAYF,yBAAC,OAAO,CAAC,WAAT,yDAAC,qBAAqB,MAAtB,KAA2C;AAAE,MAAA,WAAW,EAAiB,0BAAW,OAAO,CAAC,WAAnB;AAA9B,KAZzC,EAAP;AAcD,GAzBM,EAyBJ,EAzBI,CAAP;AA0BD,C","sourceRoot":"","file":"teachers.js"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
V2: true
|
|
8
|
+
};
|
|
9
|
+
exports.V2 = void 0;
|
|
10
|
+
|
|
11
|
+
var _from2 = _interopRequireDefault(require("./from"));
|
|
12
|
+
|
|
13
|
+
var _to2 = _interopRequireDefault(require("./to"));
|
|
14
|
+
|
|
15
|
+
var _types = require("./types");
|
|
16
|
+
|
|
17
|
+
Object.keys(_types).forEach(function (key) {
|
|
18
|
+
if (key === "default" || key === "__esModule") return;
|
|
19
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
20
|
+
if (key in exports && exports[key] === _types[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function get() {
|
|
24
|
+
return _types[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
30
|
+
|
|
31
|
+
class V2 {}
|
|
32
|
+
|
|
33
|
+
exports.V2 = V2;
|
|
34
|
+
V2.to = _to2.default;
|
|
35
|
+
V2.from = _from2.default;
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/RS/v2/index.ts"],"names":[],"mappings":";;;;;;;;;;AAAA;;AACA;;AACA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AAEM,MAAO,EAAP,CAAS;;;AACN,EAAA,CAAA,EAAA,GAAO,YAAP;AACA,EAAA,CAAA,IAAA,GAAO,cAAP","sourceRoot":"","file":"index.js"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { OutOptions } from '../types/out-options';
|
|
2
|
+
import { AvailableDependency } from '../types/available-dependencies';
|
|
3
|
+
import { AvailableLocation as Source } from '../../../core/types/available-locations';
|
|
4
|
+
declare const _default: (availableLocations: Source[], options: OutOptions) => AvailableDependency[][];
|
|
5
|
+
export default _default;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
9
|
+
|
|
10
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
11
|
+
|
|
12
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
13
|
+
|
|
14
|
+
var _default = (availableLocations, options) => {
|
|
15
|
+
var idKey = options.idKey || 'id';
|
|
16
|
+
if (!idKey) throw new Error('property "idKey" in options is undefined');
|
|
17
|
+
return (availableLocations || []).reduce((acc, locationSet) => {
|
|
18
|
+
var _locationSet$location, _locationSet$location2, _location$idKey, _location$idKey$toStr;
|
|
19
|
+
|
|
20
|
+
if (!(locationSet !== null && locationSet !== void 0 && (_locationSet$location = locationSet.locations) !== null && _locationSet$location !== void 0 && _locationSet$location.length)) return acc;
|
|
21
|
+
if (locationSet.groupIndex == null) return acc;
|
|
22
|
+
var {
|
|
23
|
+
groupIndex
|
|
24
|
+
} = locationSet;
|
|
25
|
+
if (!acc[groupIndex]) acc[groupIndex] = [];
|
|
26
|
+
var location = (_locationSet$location2 = locationSet.locations) === null || _locationSet$location2 === void 0 ? void 0 : _locationSet$location2[0];
|
|
27
|
+
if (!location) return acc;
|
|
28
|
+
var dependency = location === null || location === void 0 ? void 0 : (_location$idKey = location[idKey]) === null || _location$idKey === void 0 ? void 0 : (_location$idKey$toStr = _location$idKey.toString) === null || _location$idKey$toStr === void 0 ? void 0 : _location$idKey$toStr.call(_location$idKey);
|
|
29
|
+
if (!dependency) return acc;
|
|
30
|
+
var {
|
|
31
|
+
rank
|
|
32
|
+
} = locationSet;
|
|
33
|
+
acc[groupIndex].push(_objectSpread({
|
|
34
|
+
dependency
|
|
35
|
+
}, rank != null && {
|
|
36
|
+
rank
|
|
37
|
+
}));
|
|
38
|
+
return acc;
|
|
39
|
+
}, []).filter(arr => !!(arr !== null && arr !== void 0 && arr.length));
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
exports.default = _default;
|
|
43
|
+
//# sourceMappingURL=available-dependencies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/to/available-dependencies.ts"],"names":[],"mappings":";;;;;;;;;;;;;eAMe,CAAC,kBAAD,EACC,OADD,KAC4D;AAEzE,MAAM,KAAK,GAAyB,OAAO,CAAC,KAAR,IAAiB,IAArD;AAEA,MAAI,CAAE,KAAN,EACE,MAAM,IAAI,KAAJ,CAAU,0CAAV,CAAN;AAEF,SAAO,CAAC,kBAAkB,IAAI,EAAvB,EACJ,MADI,CACG,CAAC,GAAD,EAA+B,WAA/B,KAAsD;AAAA;;AAC9D,QAAI,EAAE,WAAF,aAAE,WAAF,wCAAE,WAAW,CAAE,SAAf,kDAAE,sBAAwB,MAA1B,CAAJ,EAAsC,OAAO,GAAP;AAEtC,QAAI,WAAW,CAAC,UAAZ,IAA0B,IAA9B,EAAoC,OAAO,GAAP;AAEpC,QAAM;AAAE,MAAA;AAAF,QAAiB,WAAvB;AAEA,QAAI,CAAE,GAAG,CAAC,UAAD,CAAT,EAAuB,GAAG,CAAC,UAAD,CAAH,GAAkB,EAAlB;AAEvB,QAAM,QAAQ,6BAAmB,WAAW,CAAC,SAA/B,2DAAmB,uBAAwB,CAAxB,CAAjC;AAEA,QAAI,CAAE,QAAN,EAAgB,OAAO,GAAP;AAEhB,QAAM,UAAU,GAAG,QAAH,aAAG,QAAH,0CAAG,QAAQ,CAAG,KAAH,CAAX,6EAAG,gBAAmB,QAAtB,0DAAG,2CAAnB;AAEA,QAAI,CAAE,UAAN,EAAkB,OAAO,GAAP;AAElB,QAAM;AAAE,MAAA;AAAF,QAAW,WAAjB;AAEA,IAAA,GAAG,CAAC,UAAD,CAAH,CAAgB,IAAhB;AACE,MAAA;AADF,OAEK,IAAI,IAAI,IAAR,IAAgB;AAAE,MAAA;AAAF,KAFrB;AAIA,WAAO,GAAP;AACD,GAzBM,EAyBJ,EAzBI,EAyBA,MAzBA,CAyBQ,GAAD,IAAuC,CAAC,EAAC,GAAD,aAAC,GAAD,eAAC,GAAG,CAAE,MAAN,CAzB/C,CAAP;AA0BD,C","sourceRoot":"","file":"available-dependencies.js"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _default = breakLength => {
|
|
9
|
+
switch (typeof breakLength) {
|
|
10
|
+
case 'boolean':
|
|
11
|
+
case 'number':
|
|
12
|
+
return breakLength;
|
|
13
|
+
|
|
14
|
+
case 'object':
|
|
15
|
+
if (!Array.isArray(breakLength)) throw new Error('breakLength is object but not an array');
|
|
16
|
+
var [bef, aft] = breakLength;
|
|
17
|
+
return {
|
|
18
|
+
bef,
|
|
19
|
+
aft
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
default:
|
|
23
|
+
throw new Error('breakLength is neither boolan, number or number array');
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
exports.default = _default;
|
|
28
|
+
//# sourceMappingURL=break-lengths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/to/break-lengths.ts"],"names":[],"mappings":";;;;;;;eAKgB,WAAD,IAAqC;AAClD,UAAQ,OAAO,WAAf;AACE,SAAK,SAAL;AACA,SAAK,QAAL;AACE,aAAO,WAAP;;AACF,SAAK,QAAL;AACE,UAAI,CAAE,KAAK,CAAC,OAAN,CAAc,WAAd,CAAN,EACE,MAAM,IAAI,KAAJ,CAAU,wCAAV,CAAN;AACF,UAAM,CAAC,GAAD,EAAM,GAAN,IAAa,WAAnB;AACA,aAAO;AAAE,QAAA,GAAF;AAAO,QAAA;AAAP,OAAP;;AACF;AACE,YAAM,IAAI,KAAJ,CAAU,uDAAV,CAAN;AAVJ;AAYD,C","sourceRoot":"","file":"break-lengths.js"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Collection } from '../types/collections';
|
|
2
|
+
import { OutOptions } from '../types/out-options';
|
|
3
|
+
import { Course as SourceCourse } from '../../../core/types/courses';
|
|
4
|
+
import { CourseEvent } from '../../../core/types/course-events';
|
|
5
|
+
import { OverlapGroup } from '../../../core/types/overlap-groups';
|
|
6
|
+
declare const _default: (courses: SourceCourse | SourceCourse[], events: CourseEvent | CourseEvent[] | undefined, overlapGroups: OverlapGroup[] | undefined, options: OutOptions) => (Collection[] | Collection)[];
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _days = _interopRequireDefault(require("./days"));
|
|
9
|
+
|
|
10
|
+
var _lockedTimes = _interopRequireDefault(require("./locked-times"));
|
|
11
|
+
|
|
12
|
+
var _intervals = _interopRequireDefault(require("./intervals"));
|
|
13
|
+
|
|
14
|
+
var _availableDependencies = _interopRequireDefault(require("./available-dependencies"));
|
|
15
|
+
|
|
16
|
+
var _courseEvents = _interopRequireDefault(require("./course-events"));
|
|
17
|
+
|
|
18
|
+
var _breakLengths = _interopRequireDefault(require("./break-lengths"));
|
|
19
|
+
|
|
20
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
+
|
|
22
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
+
|
|
24
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
25
|
+
|
|
26
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
27
|
+
|
|
28
|
+
var _default = function _default(courses) {
|
|
29
|
+
var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
30
|
+
var overlapGroups = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
|
|
31
|
+
var options = arguments.length > 3 ? arguments[3] : undefined;
|
|
32
|
+
var idKey = options.idKey || 'id';
|
|
33
|
+
courses = Array.isArray(courses) ? courses : [courses];
|
|
34
|
+
events = Array.isArray(events) ? events : [events];
|
|
35
|
+
return courses.reduce((acc, course) => {
|
|
36
|
+
var _course$idKey, _course$locations, _course$intervals, _course$days, _course$lockedTimes, _course$teachers, _course$groups;
|
|
37
|
+
|
|
38
|
+
if (!course[idKey]) throw new Error('A course does not have a unique key');
|
|
39
|
+
if (course.events) course.events = course.events.map(event => {
|
|
40
|
+
var _event = events.find(_ref => {
|
|
41
|
+
var {
|
|
42
|
+
id
|
|
43
|
+
} = _ref;
|
|
44
|
+
return event.id == id;
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
if (_event) Object.assign(event, _event);
|
|
48
|
+
event.course = course;
|
|
49
|
+
return event;
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
var doc = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
53
|
+
id: (_course$idKey = course[idKey]) === null || _course$idKey === void 0 ? void 0 : _course$idKey.toString()
|
|
54
|
+
}, 'weight' in course && {
|
|
55
|
+
weight: course.weight
|
|
56
|
+
}), 'density' in course && {
|
|
57
|
+
density: course.density
|
|
58
|
+
}), course.potentialCenter && {
|
|
59
|
+
potentialCenter: parseFloat(course.potentialCenter)
|
|
60
|
+
}), ((_course$locations = course.locations) === null || _course$locations === void 0 ? void 0 : _course$locations.length) && {
|
|
61
|
+
dependencies: (0, _availableDependencies.default)(course.locations, options)
|
|
62
|
+
}), ((_course$intervals = course.intervals) === null || _course$intervals === void 0 ? void 0 : _course$intervals.length) && {
|
|
63
|
+
intervals: (0, _intervals.default)(course.intervals)
|
|
64
|
+
}), ((_course$days = course.days) === null || _course$days === void 0 ? void 0 : _course$days.length) && {
|
|
65
|
+
days: (0, _days.default)(course.days)
|
|
66
|
+
}), course.events && {
|
|
67
|
+
events: (0, _courseEvents.default)(course.events, options)
|
|
68
|
+
}), course.minBreakLength != null && {
|
|
69
|
+
minBreakLength: (0, _breakLengths.default)(course.minBreakLength)
|
|
70
|
+
}), ((_course$lockedTimes = course.lockedTimes) === null || _course$lockedTimes === void 0 ? void 0 : _course$lockedTimes.length) && {
|
|
71
|
+
lockedTimes: (0, _lockedTimes.default)(course.lockedTimes, options)
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
if (course.teachers || course.groups) Object.assign(doc, {
|
|
75
|
+
groups: [...new Set(((_course$teachers = course.teachers) !== null && _course$teachers !== void 0 ? _course$teachers : []).concat((_course$groups = course.groups) !== null && _course$groups !== void 0 ? _course$groups : []).map(x => [x[idKey].toString()]))]
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
if (options.meta) {
|
|
79
|
+
Object.assign(doc, _objectSpread(_objectSpread(_objectSpread({}, 'color' in course && {
|
|
80
|
+
color: course.color
|
|
81
|
+
}), 'ids' in course && {
|
|
82
|
+
ids: course.ids
|
|
83
|
+
}), course.displayName && {
|
|
84
|
+
name: course.displayName
|
|
85
|
+
}));
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
if (course.overlapGroup) {
|
|
89
|
+
var overlapGroup = course.overlapGroup.id.toString();
|
|
90
|
+
var index = overlapGroups.map(_ref2 => {
|
|
91
|
+
var {
|
|
92
|
+
id
|
|
93
|
+
} = _ref2;
|
|
94
|
+
return id;
|
|
95
|
+
}).indexOf(overlapGroup);
|
|
96
|
+
acc[index] = acc[index].concat(doc);
|
|
97
|
+
return acc;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
return acc.concat(doc);
|
|
101
|
+
}, Array(overlapGroups.length).fill([]));
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
exports.default = _default;
|
|
105
|
+
//# sourceMappingURL=collections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/RS/v2/to/collections.ts"],"names":[],"mappings":"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","sourceRoot":"","file":"collections.js"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { CourseEvent } from '../../../core/types/course-events';
|
|
2
|
+
import { OutOptions } from '../types/out-options';
|
|
3
|
+
import { Configuration } from '../types/configurations';
|
|
4
|
+
declare const _default: (events: CourseEvent[], options: OutOptions) => Configuration[];
|
|
5
|
+
export default _default;
|