@royalschedule/maps 2.0.3 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/dist/Admentum/from/events.d.ts +3 -0
  2. package/dist/Admentum/from/events.js +86 -0
  3. package/dist/Admentum/from/events.js.map +1 -0
  4. package/dist/Admentum/from/schedules.js +4 -2
  5. package/dist/Admentum/from/schedules.js.map +1 -1
  6. package/dist/Admentum/from/teachers.d.ts +3 -2
  7. package/dist/Admentum/from/teachers.js +9 -1
  8. package/dist/Admentum/from/teachers.js.map +1 -1
  9. package/dist/Admentum/types/course-section.d.ts +0 -10
  10. package/dist/Admentum/types/course-section.js +0 -4
  11. package/dist/Admentum/types/lesson.d.ts +22 -0
  12. package/dist/Admentum/types/lesson.js +6 -0
  13. package/dist/Admentum/types/lesson.js.map +1 -0
  14. package/dist/Admentum/types/schedule.d.ts +2 -2
  15. package/dist/RS/index.d.ts +3 -0
  16. package/dist/RS/index.js +3 -0
  17. package/dist/RS/index.js.map +1 -1
  18. package/dist/RS/v2/from/available-dependencies.d.ts +3 -0
  19. package/dist/RS/v2/from/available-dependencies.js +59 -0
  20. package/dist/RS/v2/from/available-dependencies.js.map +1 -0
  21. package/dist/RS/v2/from/break-lengths.d.ts +3 -0
  22. package/dist/RS/v2/from/break-lengths.js +25 -0
  23. package/dist/RS/v2/from/break-lengths.js.map +1 -0
  24. package/dist/RS/v2/from/collections.d.ts +5 -0
  25. package/dist/RS/v2/from/collections.js +94 -0
  26. package/dist/RS/v2/from/collections.js.map +1 -0
  27. package/dist/RS/v2/from/course-events.d.ts +5 -0
  28. package/dist/RS/v2/from/course-events.js +113 -0
  29. package/dist/RS/v2/from/course-events.js.map +1 -0
  30. package/dist/RS/v2/from/days.d.ts +4 -0
  31. package/dist/RS/v2/from/days.js +26 -0
  32. package/dist/RS/v2/from/days.js.map +1 -0
  33. package/dist/RS/v2/from/dependencies.d.ts +4 -0
  34. package/dist/RS/v2/from/dependencies.js +59 -0
  35. package/dist/RS/v2/from/dependencies.js.map +1 -0
  36. package/dist/RS/v2/from/groups.d.ts +5 -0
  37. package/dist/RS/v2/from/groups.js +63 -0
  38. package/dist/RS/v2/from/groups.js.map +1 -0
  39. package/dist/RS/v2/from/index.d.ts +16 -0
  40. package/dist/RS/v2/from/index.js +49 -0
  41. package/dist/RS/v2/from/index.js.map +1 -0
  42. package/dist/RS/v2/from/intervals.d.ts +4 -0
  43. package/dist/RS/v2/from/intervals.js +28 -0
  44. package/dist/RS/v2/from/intervals.js.map +1 -0
  45. package/dist/RS/v2/from/locked-times.d.ts +4 -0
  46. package/dist/RS/v2/from/locked-times.js +28 -0
  47. package/dist/RS/v2/from/locked-times.js.map +1 -0
  48. package/dist/RS/v2/from/placements.d.ts +7 -0
  49. package/dist/RS/v2/from/placements.js +32 -0
  50. package/dist/RS/v2/from/placements.js.map +1 -0
  51. package/dist/RS/v2/from/schedules.d.ts +4 -0
  52. package/dist/RS/v2/from/schedules.js +92 -0
  53. package/dist/RS/v2/from/schedules.js.map +1 -0
  54. package/dist/RS/v2/from/settings.d.ts +5 -0
  55. package/dist/RS/v2/from/settings.js +39 -0
  56. package/dist/RS/v2/from/settings.js.map +1 -0
  57. package/dist/RS/v2/from/teachers.d.ts +4 -0
  58. package/dist/RS/v2/from/teachers.js +62 -0
  59. package/dist/RS/v2/from/teachers.js.map +1 -0
  60. package/dist/RS/v2/index.d.ts +7 -0
  61. package/dist/RS/v2/index.js +36 -0
  62. package/dist/RS/v2/index.js.map +1 -0
  63. package/dist/RS/v2/to/available-dependencies.d.ts +5 -0
  64. package/dist/RS/v2/to/available-dependencies.js +43 -0
  65. package/dist/RS/v2/to/available-dependencies.js.map +1 -0
  66. package/dist/RS/v2/to/break-lengths.d.ts +4 -0
  67. package/dist/RS/v2/to/break-lengths.js +28 -0
  68. package/dist/RS/v2/to/break-lengths.js.map +1 -0
  69. package/dist/RS/v2/to/collections.d.ts +7 -0
  70. package/dist/RS/v2/to/collections.js +105 -0
  71. package/dist/RS/v2/to/collections.js.map +1 -0
  72. package/dist/RS/v2/to/configurations.d.ts +5 -0
  73. package/dist/RS/v2/to/configurations.js +35 -0
  74. package/dist/RS/v2/to/configurations.js.map +1 -0
  75. package/dist/RS/v2/to/constraints.d.ts +5 -0
  76. package/dist/RS/v2/to/constraints.js +57 -0
  77. package/dist/RS/v2/to/constraints.js.map +1 -0
  78. package/dist/RS/v2/to/course-events/common.d.ts +1 -0
  79. package/dist/RS/v2/to/course-events/common.js +12 -0
  80. package/dist/RS/v2/to/course-events/common.js.map +1 -0
  81. package/dist/RS/v2/to/course-events/days.d.ts +8 -0
  82. package/dist/RS/v2/to/course-events/days.js +23 -0
  83. package/dist/RS/v2/to/course-events/days.js.map +1 -0
  84. package/dist/RS/v2/to/course-events/dependencies.d.ts +8 -0
  85. package/dist/RS/v2/to/course-events/dependencies.js +26 -0
  86. package/dist/RS/v2/to/course-events/dependencies.js.map +1 -0
  87. package/dist/RS/v2/to/course-events/groups.d.ts +9 -0
  88. package/dist/RS/v2/to/course-events/groups.js +43 -0
  89. package/dist/RS/v2/to/course-events/groups.js.map +1 -0
  90. package/dist/RS/v2/to/course-events/in-locations.d.ts +3 -0
  91. package/dist/RS/v2/to/course-events/in-locations.js +26 -0
  92. package/dist/RS/v2/to/course-events/in-locations.js.map +1 -0
  93. package/dist/RS/v2/to/course-events/index.d.ts +5 -0
  94. package/dist/RS/v2/to/course-events/index.js +85 -0
  95. package/dist/RS/v2/to/course-events/index.js.map +1 -0
  96. package/dist/RS/v2/to/course-events/intervals.d.ts +8 -0
  97. package/dist/RS/v2/to/course-events/intervals.js +20 -0
  98. package/dist/RS/v2/to/course-events/intervals.js.map +1 -0
  99. package/dist/RS/v2/to/course-events/meta.d.ts +15 -0
  100. package/dist/RS/v2/to/course-events/meta.js +39 -0
  101. package/dist/RS/v2/to/course-events/meta.js.map +1 -0
  102. package/dist/RS/v2/to/days.d.ts +4 -0
  103. package/dist/RS/v2/to/days.js +20 -0
  104. package/dist/RS/v2/to/days.js.map +1 -0
  105. package/dist/RS/v2/to/default.d.ts +4 -0
  106. package/dist/RS/v2/to/default.js +44 -0
  107. package/dist/RS/v2/to/default.js.map +1 -0
  108. package/dist/RS/v2/to/dependencies.d.ts +5 -0
  109. package/dist/RS/v2/to/dependencies.js +55 -0
  110. package/dist/RS/v2/to/dependencies.js.map +1 -0
  111. package/dist/RS/v2/to/groups.d.ts +5 -0
  112. package/dist/RS/v2/to/groups.js +69 -0
  113. package/dist/RS/v2/to/groups.js.map +1 -0
  114. package/dist/RS/v2/to/index.d.ts +15 -0
  115. package/dist/RS/v2/to/index.js +52 -0
  116. package/dist/RS/v2/to/index.js.map +1 -0
  117. package/dist/RS/v2/to/intervals.d.ts +4 -0
  118. package/dist/RS/v2/to/intervals.js +24 -0
  119. package/dist/RS/v2/to/intervals.js.map +1 -0
  120. package/dist/RS/v2/to/locked-times.d.ts +5 -0
  121. package/dist/RS/v2/to/locked-times.js +81 -0
  122. package/dist/RS/v2/to/locked-times.js.map +1 -0
  123. package/dist/RS/v2/to/schedules.d.ts +5 -0
  124. package/dist/RS/v2/to/schedules.js +36 -0
  125. package/dist/RS/v2/to/schedules.js.map +1 -0
  126. package/dist/RS/v2/to/settings.d.ts +4 -0
  127. package/dist/RS/v2/to/settings.js +26 -0
  128. package/dist/RS/v2/to/settings.js.map +1 -0
  129. package/dist/RS/v2/to/teachers.d.ts +5 -0
  130. package/dist/RS/v2/to/teachers.js +69 -0
  131. package/dist/RS/v2/to/teachers.js.map +1 -0
  132. package/dist/RS/v2/types/areas.d.ts +4 -0
  133. package/dist/RS/v2/types/areas.js +6 -0
  134. package/dist/RS/v2/types/areas.js.map +1 -0
  135. package/dist/RS/v2/types/available-dependencies.d.ts +4 -0
  136. package/dist/RS/v2/types/available-dependencies.js +6 -0
  137. package/dist/RS/v2/types/available-dependencies.js.map +1 -0
  138. package/dist/RS/v2/types/break-lengths.d.ts +6 -0
  139. package/dist/RS/v2/types/break-lengths.js +6 -0
  140. package/dist/RS/v2/types/break-lengths.js.map +1 -0
  141. package/dist/RS/v2/types/collections.d.ts +22 -0
  142. package/dist/RS/v2/types/collections.js +6 -0
  143. package/dist/RS/v2/types/collections.js.map +1 -0
  144. package/dist/RS/v2/types/configurations.d.ts +5 -0
  145. package/dist/RS/v2/types/configurations.js +6 -0
  146. package/dist/RS/v2/types/configurations.js.map +1 -0
  147. package/dist/RS/v2/types/constraints.d.ts +14 -0
  148. package/dist/RS/v2/types/constraints.js +6 -0
  149. package/dist/RS/v2/types/constraints.js.map +1 -0
  150. package/dist/RS/v2/types/course-events.d.ts +21 -0
  151. package/dist/RS/v2/types/course-events.js +6 -0
  152. package/dist/RS/v2/types/course-events.js.map +1 -0
  153. package/dist/RS/v2/types/days.d.ts +4 -0
  154. package/dist/RS/v2/types/days.js +6 -0
  155. package/dist/RS/v2/types/days.js.map +1 -0
  156. package/dist/RS/v2/types/default.d.ts +18 -0
  157. package/dist/RS/v2/types/default.js +6 -0
  158. package/dist/RS/v2/types/default.js.map +1 -0
  159. package/dist/RS/v2/types/dependencies.d.ts +12 -0
  160. package/dist/RS/v2/types/dependencies.js +6 -0
  161. package/dist/RS/v2/types/dependencies.js.map +1 -0
  162. package/dist/RS/v2/types/groups.d.ts +22 -0
  163. package/dist/RS/v2/types/groups.js +6 -0
  164. package/dist/RS/v2/types/groups.js.map +1 -0
  165. package/dist/RS/v2/types/index.d.ts +28 -0
  166. package/dist/RS/v2/types/index.js +6 -0
  167. package/dist/RS/v2/types/index.js.map +1 -0
  168. package/dist/RS/v2/types/intervals.d.ts +4 -0
  169. package/dist/RS/v2/types/intervals.js +6 -0
  170. package/dist/RS/v2/types/intervals.js.map +1 -0
  171. package/dist/RS/v2/types/locked-times.d.ts +7 -0
  172. package/dist/RS/v2/types/locked-times.js +6 -0
  173. package/dist/RS/v2/types/locked-times.js.map +1 -0
  174. package/dist/RS/v2/types/out-options.d.ts +7 -0
  175. package/dist/RS/v2/types/out-options.js +6 -0
  176. package/dist/RS/v2/types/out-options.js.map +1 -0
  177. package/dist/RS/v2/types/placements.d.ts +8 -0
  178. package/dist/RS/v2/types/placements.js +6 -0
  179. package/dist/RS/v2/types/placements.js.map +1 -0
  180. package/dist/RS/v2/types/schedules.d.ts +12 -0
  181. package/dist/RS/v2/types/schedules.js +6 -0
  182. package/dist/RS/v2/types/schedules.js.map +1 -0
  183. package/dist/RS/v2/types/settings.d.ts +12 -0
  184. package/dist/RS/v2/types/settings.js +6 -0
  185. package/dist/RS/v2/types/settings.js.map +1 -0
  186. package/dist/core/types/division-settings.d.ts +7 -6
  187. package/package.json +1 -1
@@ -0,0 +1,5 @@
1
+ import { Division } from '../../../core/types/divisions';
2
+ import { Schedule } from '../types/schedules';
3
+ import { OutOptions } from '../types/out-options';
4
+ declare const _default: (schedule: Division, options?: OutOptions) => Schedule;
5
+ export default _default;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _constraints2 = _interopRequireDefault(require("./constraints"));
9
+
10
+ var _configurations2 = _interopRequireDefault(require("./configurations"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ 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; }
15
+
16
+ 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; }
17
+
18
+ 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; }
19
+
20
+ var _default = function _default(schedule) {
21
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
22
+
23
+ var data = _objectSpread({
24
+ meta: {
25
+ structure: 'RS/algorithm-2.0.0'
26
+ },
27
+ input: (0, _constraints2.default)(schedule, options)
28
+ }, schedule.events && {
29
+ output: (0, _configurations2.default)(schedule.events, options)
30
+ });
31
+
32
+ return data;
33
+ };
34
+
35
+ exports.default = _default;
36
+ //# sourceMappingURL=schedules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/to/schedules.ts"],"names":[],"mappings":";;;;;;;AAKA;;AACA;;;;;;;;;;eAEe,kBAAC,QAAD,EAA2D;AAAA,MAAtC,OAAsC,uEAAhB,EAAgB;;AAExE,MAAI,IAAI;AACN,IAAA,IAAI,EAAO;AAAE,MAAA,SAAS,EAAE;AAAb,KADL;AAEN,IAAA,KAAK,EAAM,2BAAa,QAAb,EAAuB,OAAvB;AAFL,KAGH,QAAQ,CAAC,MAAT,IAAmB;AAAE,IAAA,MAAM,EAAE,8BAAgB,QAAQ,CAAC,MAAzB,EAAiC,OAAjC;AAAV,GAHhB,CAAR;;AAKA,SAAO,IAAP;AACD,C","sourceRoot":"","file":"schedules.js"}
@@ -0,0 +1,4 @@
1
+ import { Settings } from '../types/settings';
2
+ import { DivisionSettings } from '../../../core/types/division-settings';
3
+ declare const _default: (settings: DivisionSettings) => Settings;
4
+ export default _default;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _default = settings => {
9
+ var {
10
+ numDays,
11
+ discretization
12
+ } = settings;
13
+ if (!numDays) throw new Error('(Schedule::Settings) numDays is falsy');
14
+ if (!discretization) throw new Error('(Schedule::Settings) discretization is falsy');
15
+ return {
16
+ numDays,
17
+ discretization,
18
+ dependencyIdKey: 'id',
19
+ groupIdKey: 'id',
20
+ collectionIdKey: 'id',
21
+ eventIdKey: 'id'
22
+ };
23
+ };
24
+
25
+ exports.default = _default;
26
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/to/settings.ts"],"names":[],"mappings":";;;;;;;eAIgB,QAAD,IAAyC;AAEtD,MAAM;AACJ,IAAA,OADI;AAEJ,IAAA;AAFI,MAMF,QANJ;AAQA,MAAK,CAAE,OAAP,EAAuB,MAAM,IAAI,KAAJ,CAAU,uCAAV,CAAN;AACvB,MAAK,CAAE,cAAP,EAAuB,MAAM,IAAI,KAAJ,CAAU,8CAAV,CAAN;AAIvB,SAAO;AACL,IAAA,OADK;AAEL,IAAA,cAFK;AAuBL,IAAA,eAAe,EAAoB,IAvB9B;AAwBL,IAAA,UAAU,EAAyB,IAxB9B;AAyBL,IAAA,eAAe,EAAoB,IAzB9B;AA0BL,IAAA,UAAU,EAAyB;AA1B9B,GAAP;AA4BD,C","sourceRoot":"","file":"settings.js"}
@@ -0,0 +1,5 @@
1
+ import { Group } from '../types/groups';
2
+ import { OutOptions } from '../types/out-options';
3
+ import { Teacher as SourceTeacher } from '../../../core/types/teachers';
4
+ declare const _default: (teachers: SourceTeacher[] | SourceTeacher, options: OutOptions) => Group[];
5
+ export default _default;
@@ -0,0 +1,69 @@
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, options) => {
25
+ var idKey = options.idKey || 'id';
26
+ return (Array.isArray(teachers) ? teachers : [teachers]).map((teacher, index) => {
27
+ var _teacher$intervals, _teacher$days, _teacher$lockedTimes;
28
+
29
+ if (teacher[idKey] == undefined) throw new Error("Teachers must have an id, index: ".concat(index));
30
+
31
+ var doc = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
32
+ id: teacher[idKey].toString(),
33
+ group_type: 'personal'
34
+ }, 'forbidOverlappingEvents' in teacher && {
35
+ forbidOverlappingEvents: teacher.forbidOverlappingEvents
36
+ }), 'maxNumWorkingHours' in teacher && {
37
+ maxNumWorkingHours: teacher.maxNumWorkingHours
38
+ }), 'disableDayLengthPunishment' in teacher && {
39
+ disableDayLengthPunishment: teacher.disableDayLengthPunishment
40
+ }), {}, {
41
+ minimizeDependencyAlternation: true
42
+ }, 'maxNumDailyWorkingHours' in teacher && {
43
+ maxNumDailyWorkingHours: teacher.maxNumDailyWorkingHours
44
+ }), 'weight' in teacher && {
45
+ weight: teacher.weight
46
+ }), ((_teacher$intervals = teacher.intervals) === null || _teacher$intervals === void 0 ? void 0 : _teacher$intervals.length) && {
47
+ intervals: (0, _intervals.default)(teacher.intervals)
48
+ }), ((_teacher$days = teacher.days) === null || _teacher$days === void 0 ? void 0 : _teacher$days.length) && {
49
+ days: (0, _days.default)(teacher.days)
50
+ }), ((_teacher$lockedTimes = teacher.lockedTimes) === null || _teacher$lockedTimes === void 0 ? void 0 : _teacher$lockedTimes.length) && {
51
+ lockedTimes: (0, _lockedTimes.default)(teacher.lockedTimes, options)
52
+ }), teacher.minBreakLength != null && {
53
+ minBreakLength: (0, _breakLengths.default)(teacher.minBreakLength)
54
+ });
55
+
56
+ if (options.meta) {
57
+ Object.assign(doc, _objectSpread(_objectSpread({}, teacher.ids && {
58
+ ids: teacher.ids
59
+ }), teacher.displayName && {
60
+ name: teacher.displayName
61
+ }));
62
+ }
63
+
64
+ return doc;
65
+ }, []);
66
+ };
67
+
68
+ exports.default = _default;
69
+ //# sourceMappingURL=teachers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/to/teachers.ts"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;eAOe,CAAC,QAAD,EACC,OADD,KACoC;AAEjD,MAAM,KAAK,GAAwB,OAAO,CAAC,KAAR,IAAiB,IAApD;AAEA,SAAO,CAAC,KAAK,CAAC,OAAN,CAAc,QAAd,IAA0B,QAA1B,GAAqC,CAAC,QAAD,CAAtC,EAAkD,GAAlD,CAAsD,CAAC,OAAD,EAAyB,KAAzB,KAA0C;AAAA;;AAErG,QAAI,OAAO,CAAC,KAAD,CAAP,IAAkB,SAAtB,EAAiC,MAAM,IAAI,KAAJ,4CAA+C,KAA/C,EAAN;;AAEjC,QAAI,GAAG;AACL,MAAA,EAAE,EAA0E,OAAO,CAAC,KAAD,CAAP,CAAgB,QAAhB,EADvE;AAEL,MAAA,UAAU,EAAkE;AAFvE,OAGF,6BAAgC,OAAhC,IAA2C;AAAE,MAAA,uBAAuB,EAAK,OAAO,CAAC;AAAtC,KAHzC,GAIF,wBAAgC,OAAhC,IAA2C;AAAE,MAAA,kBAAkB,EAAU,OAAO,CAAC;AAAtC,KAJzC,GAKF,gCAAgC,OAAhC,IAA2C;AAAE,MAAA,0BAA0B,EAAE,OAAO,CAAC;AAAtC,KALzC;AAML,MAAA,6BAA6B,EAAE;AAN1B,OAOF,6BAAgC,OAAhC,IAA2C;AAAE,MAAA,uBAAuB,EAAK,OAAO,CAAC;AAAtC,KAPzC,GAQF,YAAgC,OAAhC,IAA2C;AAAE,MAAA,MAAM,EAAsB,OAAO,CAAC;AAAtC,KARzC,GASF,uBAAA,OAAO,CAAC,SAAR,0EAAmB,MAAnB,KAA2C;AAAE,MAAA,SAAS,EAAmB,wBAAU,OAAO,CAAC,SAAlB;AAA9B,KATzC,GAUF,kBAAA,OAAO,CAAC,IAAR,gEAAc,MAAd,KAA2C;AAAE,MAAA,IAAI,EAAwB,mBAAK,OAAO,CAAC,IAAb;AAA9B,KAVzC,GAWF,yBAAA,OAAO,CAAC,WAAR,8EAAqB,MAArB,KAA2C;AAAE,MAAA,WAAW,EAAiB,0BAAY,OAAO,CAAC,WAApB,EAAiC,OAAjC;AAA9B,KAXzC,GAYD,OAAO,CAAC,cAAR,IAA0B,IAA3B,IAA2C;AAAE,MAAA,cAAc,EAAc,2BAAa,OAAO,CAAC,cAArB;AAA9B,KAZzC,CAAP;;AAeA,QAAI,OAAO,CAAC,IAAZ,EAAkB;AAChB,MAAA,MAAM,CAAC,MAAP,CAAc,GAAd,kCACK,OAAO,CAAC,GAAR,IAAyC;AAAE,QAAA,GAAG,EAAyB,OAAO,CAAC;AAAtC,OAD9C,GAEK,OAAO,CAAC,WAAR,IAAyC;AAAE,QAAA,IAAI,EAAwB,OAAO,CAAC;AAAtC,OAF9C;AAID;;AAED,WAAO,GAAP;AACD,GA3BM,EA2BJ,EA3BI,CAAP;AA4BD,C","sourceRoot":"","file":"teachers.js"}
@@ -0,0 +1,4 @@
1
+ export interface Area {
2
+ breakLengthMatrix?: number[];
3
+ list?: string[];
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=areas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"areas.js"}
@@ -0,0 +1,4 @@
1
+ export interface AvailableDependency {
2
+ dependency?: string;
3
+ rank?: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=available-dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"available-dependencies.js"}
@@ -0,0 +1,6 @@
1
+ declare type AsymType = {
2
+ bef: number;
3
+ aft: number;
4
+ };
5
+ export declare type BreakLength = boolean | number | AsymType;
6
+ export {};
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=break-lengths.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"break-lengths.js"}
@@ -0,0 +1,22 @@
1
+ import { Day } from './days';
2
+ import { LockedTime } from './locked-times';
3
+ import { Interval } from './intervals';
4
+ import { CourseEvent } from './course-events';
5
+ import { AvailableDependency } from './available-dependencies';
6
+ import { BreakLength } from './break-lengths';
7
+ export interface Collection {
8
+ id?: string;
9
+ name?: string;
10
+ subject?: string;
11
+ color?: string;
12
+ potentialCenter?: number;
13
+ density?: number;
14
+ weight?: number;
15
+ minBreakLength?: BreakLength;
16
+ events?: (CourseEvent | number)[];
17
+ lockedTimes?: LockedTime[];
18
+ intervals?: Interval[];
19
+ days?: (Day | number)[];
20
+ groups?: string[][];
21
+ dependencies?: (AvailableDependency[] | AvailableDependency)[];
22
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=collections.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"collections.js"}
@@ -0,0 +1,5 @@
1
+ import { Placement } from './placements';
2
+ export declare type Configuration = {
3
+ score?: [number, number, number, number];
4
+ events: Placement[];
5
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=configurations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"configurations.js"}
@@ -0,0 +1,14 @@
1
+ import { Settings } from './settings';
2
+ import { Collection } from './collections';
3
+ import { Group } from './groups';
4
+ import { Area } from './areas';
5
+ import { Dependency } from './dependencies';
6
+ import { Default } from './default';
7
+ export interface Constraint {
8
+ settings?: Settings;
9
+ default?: Default;
10
+ areas?: Area;
11
+ events?: (Collection[] | Collection)[];
12
+ groups?: Group[];
13
+ dependencies?: Dependency[];
14
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=constraints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"constraints.js"}
@@ -0,0 +1,21 @@
1
+ import { Day } from './days';
2
+ import { LockedTime } from './locked-times';
3
+ import { Interval } from './intervals';
4
+ import { AvailableDependency } from './available-dependencies';
5
+ import { BreakLength } from './break-lengths';
6
+ export interface CourseEvent {
7
+ id?: string;
8
+ length?: number;
9
+ name?: string;
10
+ potentialCenter?: number;
11
+ density?: number;
12
+ weight?: number;
13
+ minBreakLength?: BreakLength;
14
+ start?: number;
15
+ lockedTimes?: LockedTime[];
16
+ intervals?: Interval[];
17
+ days?: (Day | number)[];
18
+ day?: number;
19
+ groups?: string[][];
20
+ dependencies?: (AvailableDependency[] | AvailableDependency)[];
21
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=course-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"course-events.js"}
@@ -0,0 +1,4 @@
1
+ export interface Day {
2
+ day?: number;
3
+ rank?: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=days.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"days.js"}
@@ -0,0 +1,18 @@
1
+ import { BreakLength } from './break-lengths';
2
+ import { Interval } from './intervals';
3
+ export interface Default {
4
+ intervals: Interval[];
5
+ dependencyMinBreakLength: number;
6
+ groupMinBreakLength: number;
7
+ eventMinBreakLength: BreakLength;
8
+ potentialCenter: number;
9
+ eventDensity: number;
10
+ maxNumWorkingHours: number | boolean;
11
+ maxNumDailyWorkingHours: number | number[] | boolean;
12
+ dependencyRank: number;
13
+ groupRank: number;
14
+ dayRank: number;
15
+ groupWeight: number;
16
+ collectionWeight: number;
17
+ eventWeight: number;
18
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"default.js"}
@@ -0,0 +1,12 @@
1
+ import { Day } from './days';
2
+ import { LockedTime } from './locked-times';
3
+ import { Interval } from './intervals';
4
+ export interface Dependency {
5
+ id?: string;
6
+ minBreakLength?: number;
7
+ name?: string;
8
+ area?: string;
9
+ days?: (Day | number)[];
10
+ intervals?: Interval[];
11
+ lockedTimes?: LockedTime[];
12
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"dependencies.js"}
@@ -0,0 +1,22 @@
1
+ import { Day } from './days';
2
+ import { LockedTime } from './locked-times';
3
+ import { Interval } from './intervals';
4
+ import { BreakLength } from './break-lengths';
5
+ declare type GroupType = 'personal' | 'classes';
6
+ export interface Group {
7
+ id: string;
8
+ group_type: GroupType;
9
+ name?: string;
10
+ minBreakLength?: BreakLength;
11
+ maxNumWorkingHours?: number | boolean;
12
+ maxNumDailyWorkingHours?: number | number[] | boolean;
13
+ forbidOverlappingEvents?: boolean;
14
+ disableDayLengthPunishment?: boolean;
15
+ minimizeDependencyAlternation?: boolean;
16
+ weight?: number;
17
+ rank?: number;
18
+ lockedTimes?: LockedTime[];
19
+ intervals?: Interval[];
20
+ days?: (Day | number)[];
21
+ }
22
+ export {};
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=groups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"groups.js"}
@@ -0,0 +1,28 @@
1
+ import { Area } from './areas';
2
+ import { AvailableDependency } from './available-dependencies';
3
+ import { Configuration } from './configurations';
4
+ import { CourseEvent } from './course-events';
5
+ import { Collection } from './collections';
6
+ import { Day } from './days';
7
+ import { Dependency } from './dependencies';
8
+ import { Group } from './groups';
9
+ import { Interval } from './intervals';
10
+ import { LockedTime } from './locked-times';
11
+ import { Schedule } from './schedules';
12
+ import { Settings } from './settings';
13
+ import { Default } from './default';
14
+ export declare type Types = {
15
+ area: Area;
16
+ availableDependency: AvailableDependency;
17
+ configuration: Configuration;
18
+ courseEvent: CourseEvent;
19
+ collection: Collection;
20
+ day: Day;
21
+ dependency: Dependency;
22
+ group: Group;
23
+ interval: Interval;
24
+ lockedTime: LockedTime;
25
+ schedule: Schedule;
26
+ settings: Settings;
27
+ default: Default;
28
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"index.js"}
@@ -0,0 +1,4 @@
1
+ export interface Interval {
2
+ beg?: number;
3
+ end?: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=intervals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"intervals.js"}
@@ -0,0 +1,7 @@
1
+ export interface LockedTime {
2
+ id?: string;
3
+ name?: string;
4
+ start?: number;
5
+ length?: number;
6
+ day?: number;
7
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=locked-times.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"locked-times.js"}
@@ -0,0 +1,7 @@
1
+ export declare type Id = 'id' | '_id' | 'ids';
2
+ export interface OutOptions {
3
+ idKey?: Id;
4
+ meta?: boolean;
5
+ isPrivateId?: boolean;
6
+ isPublicId?: boolean;
7
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=out-options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"out-options.js"}
@@ -0,0 +1,8 @@
1
+ export interface Placement {
2
+ id: string;
3
+ collection: string;
4
+ dependencies: string[];
5
+ start: number;
6
+ end: number;
7
+ day: number;
8
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=placements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"placements.js"}
@@ -0,0 +1,12 @@
1
+ import { Configuration } from './configurations';
2
+ import { Constraint } from './constraints';
3
+ declare type Structure = 'RS/algorithm-2.0.0';
4
+ export interface Schedule {
5
+ meta?: {
6
+ structure?: Structure;
7
+ };
8
+ score?: [number, number, number, number];
9
+ input?: Constraint;
10
+ output?: Configuration[];
11
+ }
12
+ export {};
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=schedules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"schedules.js"}
@@ -0,0 +1,12 @@
1
+ import { Dependency } from './dependencies';
2
+ import { CourseEvent } from './course-events';
3
+ import { Collection } from './collections';
4
+ import { Group } from './groups';
5
+ export interface Settings {
6
+ numDays: number;
7
+ discretization: number;
8
+ dependencyIdKey: keyof Dependency;
9
+ groupIdKey: keyof Group;
10
+ collectionIdKey: keyof Collection;
11
+ eventIdKey: keyof CourseEvent;
12
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":"","file":"settings.js"}