@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,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,4 @@
1
+ import { BreakLength } from '../types/break-lengths';
2
+ import { BreakLength as Source } from '../../../core/types/break-lengths';
3
+ declare const _default: (breakLength: Source) => BreakLength;
4
+ export default _default;
@@ -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;
@@ -0,0 +1,35 @@
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 = (events, options) => {
13
+ var idKey = options.idKey || 'id';
14
+ return [{
15
+ events: (events || []).reduce((acc, event) => {
16
+ var _event$inLocations$ma, _event$inLocations;
17
+
18
+ if (event.parked) return acc;
19
+
20
+ var mmtMidnight = _moment.default.utc(event.start).clone().startOf('day');
21
+
22
+ return acc.concat({
23
+ id: event[idKey],
24
+ collection: event.course[idKey],
25
+ day: _moment.default.utc(event.start).day() - 1,
26
+ dependencies: (_event$inLocations$ma = (_event$inLocations = event.inLocations) === null || _event$inLocations === void 0 ? void 0 : _event$inLocations.map(x => x ? x[idKey] : null).filter(x => x !== null)) !== null && _event$inLocations$ma !== void 0 ? _event$inLocations$ma : [],
27
+ end: _moment.default.utc(event.end).diff(mmtMidnight, 'minutes'),
28
+ start: _moment.default.utc(event.start).diff(mmtMidnight, 'minutes')
29
+ });
30
+ }, [])
31
+ }];
32
+ };
33
+
34
+ exports.default = _default;
35
+ //# sourceMappingURL=configurations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/to/configurations.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;eASe,CAAC,MAAD,EAAwB,OAAxB,KAAgE;AAE7E,MAAM,KAAK,GAAiC,OAAO,CAAC,KAAR,IAAiB,IAA7D;AAEA,SAAO,CACL;AACE,IAAA,MAAM,EAAE,CAAC,MAAM,IAAI,EAAX,EAAe,MAAf,CAAsB,CAAC,GAAD,EAAa,KAAb,KAAmC;AAAA;;AAC/D,UAAI,KAAK,CAAC,MAAV,EAAkB,OAAO,GAAP;;AAElB,UAAI,WAAW,GAAG,gBAAO,GAAP,CAAW,KAAK,CAAC,KAAjB,EAAwB,KAAxB,GAAgC,OAAhC,CAAwC,KAAxC,CAAlB;;AAEA,aAAO,GAAG,CAAC,MAAJ,CAAW;AAChB,QAAA,EAAE,EAAY,KAAK,CAAC,KAAD,CADH;AAEhB,QAAA,UAAU,EAAK,KAAK,CAAC,MAAN,CAAwB,KAAxB,CAFC;AAGhB,QAAA,GAAG,EAAW,gBAAO,GAAP,CAAW,KAAK,CAAC,KAAjB,EAAwB,GAAxB,KAAgC,CAH9B;AAIhB,QAAA,YAAY,iDAAG,KAAK,CAAC,WAAT,uDAAG,mBAA6B,GAA7B,CAAkC,CAAD,IAAY,CAAC,GAAG,CAAC,CAAC,KAAD,CAAJ,GAAc,IAA5D,EAAkE,MAAlE,CAA0E,CAAD,IAAY,CAAC,KAAK,IAA3F,CAAH,yEAAuG,EAJnG;AAKhB,QAAA,GAAG,EAAW,gBAAO,GAAP,CAAW,KAAK,CAAC,GAAjB,EAAsB,IAAtB,CAA2B,WAA3B,EAAwC,SAAxC,CALE;AAMhB,QAAA,KAAK,EAAS,gBAAO,GAAP,CAAW,KAAK,CAAC,KAAjB,EAAwB,IAAxB,CAA6B,WAA7B,EAA0C,SAA1C;AANE,OAAX,CAAP;AAQD,KAbO,EAaL,EAbK;AADV,GADK,CAAP;AAkBD,C","sourceRoot":"","file":"configurations.js"}
@@ -0,0 +1,5 @@
1
+ import { Division } from '../../../core/types/divisions';
2
+ import { Constraint } from '../types/constraints';
3
+ import { OutOptions } from '../types/out-options';
4
+ declare const _default: (schedule: Division, options?: OutOptions) => Constraint;
5
+ export default _default;
@@ -0,0 +1,57 @@
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
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
20
+ 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; }
21
+
22
+ 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; }
23
+
24
+ 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; }
25
+
26
+ var _default = function _default(schedule) {
27
+ var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
28
+ if (schedule == null) return {};
29
+ var {
30
+ groups,
31
+ teachers,
32
+ locations,
33
+ events,
34
+ overlapGroups,
35
+ courses,
36
+ settings,
37
+ area
38
+ } = schedule;
39
+
40
+ var data = _objectSpread(_objectSpread({
41
+ settings: (0, _settings.default)(settings)
42
+ }, area && {
43
+ areas: {
44
+ breakLengthMatrix: area.breakLengthMatrix,
45
+ list: area.list
46
+ }
47
+ }), {}, {
48
+ events: (0, _collections.default)(courses, events, overlapGroups, options),
49
+ dependencies: (0, _dependencies.default)(locations, options),
50
+ groups: (0, _groups.default)(groups, options).concat((0, _teachers.default)(teachers, options))
51
+ });
52
+
53
+ return data;
54
+ };
55
+
56
+ exports.default = _default;
57
+ //# sourceMappingURL=constraints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/to/constraints.ts"],"names":[],"mappings":";;;;;;;AAKA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;eAEe,kBAAC,QAAD,EAA6D;AAAA,MAAxC,OAAwC,uEAAlB,EAAkB;AAC1E,MAAI,QAAQ,IAAI,IAAhB,EAAsB,OAAO,EAAP;AAEtB,MAAI;AACF,IAAA,MADE;AAEF,IAAA,QAFE;AAGF,IAAA,SAHE;AAIF,IAAA,MAJE;AAKF,IAAA,aALE;AAMF,IAAA,OANE;AAOF,IAAA,QAPE;AAQF,IAAA;AARE,MASA,QATJ;;AAWA,MAAI,IAAI;AACN,IAAA,QAAQ,EAAM,uBAAY,QAAZ;AADR,KAEH,IAAI,IAAI;AACT,IAAA,KAAK,EAAE;AACL,MAAA,iBAAiB,EAAE,IAAI,CAAC,iBADnB;AAEL,MAAA,IAAI,EAAe,IAAI,CAAC;AAFnB;AADE,GAFL;AAQN,IAAA,MAAM,EAAQ,0BAAe,OAAf,EAAyB,MAAzB,EAAiC,aAAjC,EAAgD,OAAhD,CARR;AASN,IAAA,YAAY,EAAE,2BAAgB,SAAhB,EAA4B,OAA5B,CATR;AAUN,IAAA,MAAM,EAAQ,qBAAU,MAAV,EAAmB,OAAnB,EAA4B,MAA5B,CAAmC,uBAAY,QAAZ,EAAuB,OAAvB,CAAnC;AAVR,IAAR;;AAaA,SAAO,IAAP;AACD,C","sourceRoot":"","file":"constraints.js"}
@@ -0,0 +1 @@
1
+ export declare function _shouldInherit(array: any[] | undefined | null, inherit?: boolean | undefined): boolean;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports._shouldInherit = _shouldInherit;
7
+
8
+ function _shouldInherit(array) {
9
+ var inherit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
10
+ return !!(array && !inherit);
11
+ }
12
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/RS/v2/to/course-events/common.ts"],"names":[],"mappings":";;;;;;;AACM,SAAU,cAAV,CAAyB,KAAzB,EAA8F;AAAA,MAApC,OAAoC,uEAAL,KAAK;AAClG,SAAO,CAAC,EAAE,KAAK,IAAI,CAAE,OAAb,CAAR;AACD","sourceRoot":"","file":"common.js"}
@@ -0,0 +1,8 @@
1
+ import { CourseEvent as SourceCourseEvent } from '../../../../core/types/course-events';
2
+ import { OutOptions } from '../../types/out-options';
3
+ import { Day } from '../../types/days';
4
+ declare type Output = {
5
+ days: Day[] | null;
6
+ };
7
+ export default function (event: SourceCourseEvent, options: OutOptions): Output | undefined;
8
+ export {};
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+
8
+ var _days2 = _interopRequireDefault(require("../days"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function _default(event, options) {
13
+ var inherit = event.days === null;
14
+
15
+ if (inherit || !('days' in event)) {
16
+ return undefined;
17
+ } else {
18
+ return {
19
+ days: (0, _days2.default)(event.days)
20
+ };
21
+ }
22
+ }
23
+ //# sourceMappingURL=days.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/RS/v2/to/course-events/days.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;AAWc,kBAAU,KAAV,EACU,OADV,EAC6B;AACzC,MAAM,OAAO,GAAY,KAAK,CAAC,IAAN,KAAe,IAAxC;;AAEA,MAAI,OAAO,IAAI,EAAG,UAAU,KAAb,CAAf,EAAoC;AAClC,WAAO,SAAP;AACD,GAFD,MAEO;AACL,WAAO;AAAE,MAAA,IAAI,EAAE,oBAAM,KAAK,CAAC,IAAZ;AAAR,KAAP;AACD;AACF","sourceRoot":"","file":"days.js"}
@@ -0,0 +1,8 @@
1
+ import { AvailableLocation } from '../../../../core/types/available-locations';
2
+ import { CourseEvent as SourceCourseEvent } from '../../../../core/types/course-events';
3
+ import { OutOptions } from '../../types/out-options';
4
+ declare type Output = {
5
+ dependencies: AvailableLocation[] | AvailableLocation[][] | null;
6
+ };
7
+ export default function (event: SourceCourseEvent, options: OutOptions): Output | undefined;
8
+ export {};
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+
8
+ var _availableDependencies = _interopRequireDefault(require("../available-dependencies"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function _default(event, options) {
13
+ var idKey = options.idKey || 'id';
14
+ if (!event.hasOwnProperty('locations')) return undefined;
15
+ var inherit = event.locations === null;
16
+
17
+ if (inherit) {
18
+ return undefined;
19
+ }
20
+
21
+ var dependencies = (0, _availableDependencies.default)(event.locations, options);
22
+ return {
23
+ dependencies: [...new Set(dependencies)]
24
+ };
25
+ }
26
+ //# sourceMappingURL=dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/RS/v2/to/course-events/dependencies.ts"],"names":[],"mappings":";;;;;;;AAOA;;;;AAMc,kBAAU,KAAV,EACU,OADV,EAC6B;AACzC,MAAM,KAAK,GAAc,OAAO,CAAC,KAAR,IAAiB,IAA1C;AAEA,MAAI,CAAE,KAAK,CAAC,cAAN,CAAqB,WAArB,CAAN,EACE,OAAO,SAAP;AAEF,MAAM,OAAO,GAAY,KAAK,CAAC,SAAN,KAAoB,IAA7C;;AAEA,MAAI,OAAJ,EAAa;AACX,WAAO,SAAP;AACD;;AAED,MAAI,YAAY,GAAG,oCAAsB,KAAK,CAAC,SAA5B,EAA8C,OAA9C,CAAnB;AACA,SAAO;AAAE,IAAA,YAAY,EAAE,CAAC,GAAG,IAAI,GAAJ,CAAQ,YAAR,CAAJ;AAAhB,GAAP;AACD","sourceRoot":"","file":"dependencies.js"}
@@ -0,0 +1,9 @@
1
+ import { Group as SourceGroup } from '../../../../core/types/groups';
2
+ import { Teacher as SourceTeacher } from '../../../../core/types/teachers';
3
+ import { CourseEvent as SourceCourseEvent } from '../../../../core/types/course-events';
4
+ import { OutOptions } from '../../types/out-options';
5
+ declare type MergedOutput = {
6
+ groups: (SourceGroup | SourceTeacher)[][] | null;
7
+ };
8
+ export default function (event: SourceCourseEvent, options: OutOptions): MergedOutput | undefined;
9
+ export {};
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+
8
+ function _default(event, options) {
9
+ var _outputTeachers, _outputGroups;
10
+
11
+ var idKey = options.idKey || 'id';
12
+ var groups = event.groups;
13
+ var teachers = event.teachers;
14
+ var course = event.course;
15
+ var inheritGroups = groups === null;
16
+ var inheritTeachers = teachers === null;
17
+ var outputTeachers;
18
+ var outputGroups;
19
+
20
+ if (inheritGroups && inheritTeachers) {
21
+ outputTeachers = undefined;
22
+ outputGroups = undefined;
23
+ } else if (inheritGroups != inheritTeachers) {
24
+ outputTeachers = inheritTeachers ? course === null || course === void 0 ? void 0 : course.teachers : teachers;
25
+ outputGroups = inheritGroups ? course === null || course === void 0 ? void 0 : course.groups : groups;
26
+ } else {
27
+ outputTeachers = teachers;
28
+ outputGroups = groups;
29
+ }
30
+
31
+ if ((_outputTeachers = outputTeachers) !== null && _outputTeachers !== void 0 && _outputTeachers.length || (_outputGroups = outputGroups) !== null && _outputGroups !== void 0 && _outputGroups.length) {
32
+ var _outputTeachers2, _outputGroups2;
33
+
34
+ var _groups = [...new Set([(_outputTeachers2 = outputTeachers) === null || _outputTeachers2 === void 0 ? void 0 : _outputTeachers2.map(x => x ? x[idKey] : null), (_outputGroups2 = outputGroups) === null || _outputGroups2 === void 0 ? void 0 : _outputGroups2.map(x => x ? x[idKey] : null)].flat())].filter(x => x != null).map(x => [x]);
35
+
36
+ return {
37
+ groups: _groups
38
+ };
39
+ }
40
+
41
+ return undefined;
42
+ }
43
+ //# sourceMappingURL=groups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/RS/v2/to/course-events/groups.ts"],"names":[],"mappings":";;;;;;;AAYc,kBAAU,KAAV,EACU,OADV,EAC6B;AAAA;;AACzC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAR,IAAiB,IAA/B;AAEA,MAAM,MAAM,GAA0C,KAAK,CAAC,MAA5D;AACA,MAAM,QAAQ,GAAwC,KAAK,CAAC,QAA5D;AACA,MAAM,MAAM,GAA0C,KAAK,CAAC,MAA5D;AAEA,MAAM,aAAa,GAAc,MAAM,KAAO,IAA9C;AACA,MAAM,eAAe,GAAY,QAAQ,KAAK,IAA9C;AAEA,MAAI,cAAJ;AACA,MAAI,YAAJ;;AAEA,MAAI,aAAa,IAAI,eAArB,EAAsC;AACpC,IAAA,cAAc,GAAG,SAAjB;AACA,IAAA,YAAY,GAAK,SAAjB;AACD,GAHD,MAGO,IAAI,aAAa,IAAI,eAArB,EAAsC;AAC3C,IAAA,cAAc,GAAI,eAAe,GAAG,MAAH,aAAG,MAAH,uBAAG,MAAM,CAAE,QAAX,GAAsB,QAAvD;AACA,IAAA,YAAY,GAAM,aAAa,GAAK,MAAL,aAAK,MAAL,uBAAK,MAAM,CAAE,MAAb,GAAwB,MAAvD;AACD,GAHM,MAGA;AACL,IAAA,cAAc,GAAG,QAAjB;AACA,IAAA,YAAY,GAAK,MAAjB;AACD;;AAED,MAAI,mBAAA,cAAc,UAAd,kDAAgB,MAAhB,qBAA0B,YAA1B,0CAA0B,cAAc,MAA5C,EAAoD;AAAA;;AAElD,QAAM,OAAM,GAAG,CACb,GAAG,IAAI,GAAJ,CAAQ,qBACT,cADS,qDACT,iBAAgB,GAAhB,CAAqB,CAAD,IAAY,CAAC,GAAG,CAAC,CAAC,KAAD,CAAJ,GAAc,IAA/C,CADS,oBAET,YAFS,mDAET,eAAc,GAAd,CAAmB,CAAD,IAAY,CAAC,GAAG,CAAC,CAAC,KAAD,CAAJ,GAAc,IAA7C,CAFS,EAGT,IAHS,EAAR,CADU,EAKb,MALa,CAKL,CAAD,IAAY,CAAC,IAAI,IALX,EAKiB,GALjB,CAKsB,CAAD,IAAY,CAAC,CAAD,CALjC,CAAf;;AAOA,WAAO;AAAE,MAAA,MAAM,EAAN;AAAF,KAAP;AACD;;AAED,SAAO,SAAP;AACD","sourceRoot":"","file":"groups.js"}
@@ -0,0 +1,3 @@
1
+ import { CourseEvent as SourceCourseEvent } from '../../../../core/types/course-events';
2
+ import { OutOptions } from '../../types/out-options';
3
+ export default function (event: SourceCourseEvent, options: OutOptions): (any | null)[];
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+
8
+ var _availableDependencies = _interopRequireDefault(require("../available-dependencies"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function _default(event, options) {
13
+ var idKey = options.idKey || 'id';
14
+ if (!event) throw new Error("Mapping in-locations failed due to event being undefined");
15
+ var course = event.course || {};
16
+ var inherit = event.locations === null;
17
+ var dependencies = inherit ? (0, _availableDependencies.default)(course.locations, options) : (0, _availableDependencies.default)(event.locations, options);
18
+ var inLocation = event.inLocations || [];
19
+
20
+ if (inLocation.length === dependencies.length) {
21
+ return inLocation.map(x => x === null ? null : x === null || x === void 0 ? void 0 : x[idKey]);
22
+ } else {
23
+ return inLocation.concat(Array(Math.max(dependencies.length - inLocation.length, 0)).fill(null)).map(x => x === null ? null : x === null || x === void 0 ? void 0 : x[idKey]);
24
+ }
25
+ }
26
+ //# sourceMappingURL=in-locations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/RS/v2/to/course-events/in-locations.ts"],"names":[],"mappings":";;;;;;;AAAA;;;;AAOc,kBAAU,KAAV,EAAoC,OAApC,EAAuD;AACnE,MAAM,KAAK,GAAmB,OAAO,CAAC,KAAR,IAAiB,IAA/C;AAEA,MAAI,CAAE,KAAN,EACE,MAAM,IAAI,KAAJ,4DAAN;AAEF,MAAM,MAAM,GAAmB,KAAK,CAAC,MAAN,IAAgB,EAA/C;AAEA,MAAM,OAAO,GAAiB,KAAK,CAAC,SAAN,KAAoB,IAAlD;AAEA,MAAI,YAAY,GAAG,OAAO,GAAG,oCAAsB,MAAM,CAAC,SAA7B,EAA+C,OAA/C,CAAH,GACG,oCAAsB,KAAK,CAAC,SAA5B,EAA8C,OAA9C,CAD7B;AAGD,MAAI,UAAU,GAAU,KAAK,CAAC,WAAN,IAAqB,EAA7C;;AAEC,MAAI,UAAU,CAAC,MAAX,KAAuB,YAAY,CAAC,MAAxC,EAAgD;AAC9C,WAAO,UAAU,CAAC,GAAX,CAAgB,CAAD,IAAa,CAAC,KAAK,IAAP,GAAe,IAAf,GAAsB,CAAtB,aAAsB,CAAtB,uBAAsB,CAAC,CAAG,KAAH,CAAlD,CAAP;AACD,GAFD,MAEO;AACL,WAAO,UAAU,CAAC,MAAX,CAAkB,KAAK,CAAC,IAAI,CAAC,GAAL,CAAS,YAAY,CAAC,MAAb,GAAsB,UAAU,CAAC,MAA1C,EAAkD,CAAlD,CAAD,CAAL,CAA4D,IAA5D,CAAiE,IAAjE,CAAlB,EACW,GADX,CACgB,CAAD,IAAa,CAAC,KAAK,IAAP,GAAe,IAAf,GAAsB,CAAtB,aAAsB,CAAtB,uBAAsB,CAAC,CAAG,KAAH,CADlD,CAAP;AAED;AACF","sourceRoot":"","file":"in-locations.js"}
@@ -0,0 +1,5 @@
1
+ import { CourseEvent } from '../../types/course-events';
2
+ import { OutOptions } from '../../types/out-options';
3
+ import { CourseEvent as SourceCourseEvent } from '../../../../core/types/course-events';
4
+ declare const _default: (courseEvents: SourceCourseEvent[] | SourceCourseEvent, options: OutOptions) => CourseEvent[];
5
+ export default _default;