@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,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _default = (days, settings) => {
9
+ return days.map(day => {
10
+ switch (typeof day) {
11
+ case 'number':
12
+ return {
13
+ day
14
+ };
15
+
16
+ case 'object':
17
+ return day;
18
+
19
+ default:
20
+ throw new Error('day is neither number or object');
21
+ }
22
+ });
23
+ };
24
+
25
+ exports.default = _default;
26
+ //# sourceMappingURL=days.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/from/days.ts"],"names":[],"mappings":";;;;;;;eAGe,CAAC,IAAD,EACC,QADD,KAC4B;AAEzC,SAAO,IAAI,CAAC,GAAL,CAAU,GAAD,IAAa;AAC3B,YAAO,OAAO,GAAd;AACE,WAAK,QAAL;AACE,eAAO;AAAE,UAAA;AAAF,SAAP;;AACF,WAAK,QAAL;AACE,eAAO,GAAP;;AACF;AACE,cAAM,IAAI,KAAJ,CAAU,iCAAV,CAAN;AANJ;AAQD,GATM,CAAP;AAUD,C","sourceRoot":"","file":"days.js"}
@@ -0,0 +1,4 @@
1
+ import { Dependency } from '../types/dependencies';
2
+ import { Settings } from '../types/settings';
3
+ declare const _default: (dependencies: (Dependency | string)[], settings: Settings) => any[];
4
+ export default _default;
@@ -0,0 +1,59 @@
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 = (dependencies, settings) => {
25
+ var idKey = settings.dependencyIdKey;
26
+ if (!idKey) throw new Error('property "dependencyIdKey" in settings is undefined');
27
+ return dependencies.map(dependency => {
28
+ switch (typeof dependency) {
29
+ case 'string':
30
+ return {
31
+ ids: dependency
32
+ };
33
+
34
+ case 'object':
35
+ if (!dependency[idKey]) throw new Error('A dependency does not have a unique key');
36
+ return _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
37
+ ids: dependency[idKey]
38
+ }, 'minBreakLength' in dependency && {
39
+ minBreakLength: (0, _breakLengths.default)(dependency.minBreakLength)
40
+ }), dependency.name && {
41
+ displayName: dependency.name
42
+ }), dependency.area && {
43
+ area: dependency.area
44
+ }), dependency.days && {
45
+ days: (0, _days.default)(dependency.days, settings)
46
+ }), dependency.intervals && {
47
+ intervals: (0, _intervals.default)(dependency.intervals)
48
+ }), dependency.lockedTimes && {
49
+ lockedTimes: (0, _lockedTimes.default)(dependency.lockedTimes)
50
+ });
51
+
52
+ default:
53
+ throw new Error('dependency is neither string nor object');
54
+ }
55
+ }, []);
56
+ };
57
+
58
+ exports.default = _default;
59
+ //# sourceMappingURL=dependencies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/from/dependencies.ts"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;eAKe,CAAC,YAAD,EACC,QADD,KACqC;AAClD,MAAM,KAAK,GAAqB,QAAQ,CAAC,eAAzC;AAEA,MAAI,CAAE,KAAN,EACE,MAAM,IAAI,KAAJ,CAAU,qDAAV,CAAN;AAEF,SAAO,YAAY,CAAC,GAAb,CAAkB,UAAD,IAAoC;AAC1D,YAAO,OAAO,UAAd;AACE,WAAK,QAAL;AACE,eAAO;AACL,UAAA,GAAG,EAAQ;AADN,SAAP;;AAGF,WAAK,QAAL;AAEE,YAAI,CAAE,UAAU,CAAC,KAAD,CAAhB,EACE,MAAM,IAAI,KAAJ,CAAU,yCAAV,CAAN;AAEF;AACE,UAAA,GAAG,EAAoD,UAAU,CAAC,KAAD;AADnE,WAEK,oBAAoB,UAApB,IAAkC;AAAE,UAAA,cAAc,EAAE,2BAAY,UAAU,CAAC,cAAvB;AAAlB,SAFvC,GAGK,UAAU,CAAC,IAAX,IAAkC;AAAE,UAAA,WAAW,EAAK,UAAU,CAAC;AAA7B,SAHvC,GAIK,UAAU,CAAC,IAAX,IAAkC;AAAE,UAAA,IAAI,EAAY,UAAU,CAAC;AAA7B,SAJvC,GAKK,UAAU,CAAC,IAAX,IAAkC;AAAE,UAAA,IAAI,EAAY,mBAAK,UAAU,CAAC,IAAhB,EAAsB,QAAtB;AAAlB,SALvC,GAMK,UAAU,CAAC,SAAX,IAAkC;AAAE,UAAA,SAAS,EAAO,wBAAU,UAAU,CAAC,SAArB;AAAlB,SANvC,GAOK,UAAU,CAAC,WAAX,IAAkC;AAAE,UAAA,WAAW,EAAK,0BAAW,UAAU,CAAC,WAAtB;AAAlB,SAPvC;;AASF;AACE,cAAM,IAAI,KAAJ,CAAU,yCAAV,CAAN;AApBJ;AAuBD,GAxBM,EAwBJ,EAxBI,CAAP;AA0BD,C","sourceRoot":"","file":"dependencies.js"}
@@ -0,0 +1,5 @@
1
+ import { Group } from '../types/groups';
2
+ import { Settings } from '../types/settings';
3
+ import { Group as SourceGroup } from '../../../core/types/groups';
4
+ declare const _default: (groups: Group[], settings: Settings) => SourceGroup[];
5
+ export default _default;
@@ -0,0 +1,63 @@
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 = (groups, settings) => {
25
+ var idKey = settings.groupIdKey;
26
+ if (!idKey) throw new Error('property "groupIdKey" in settings is undefined');
27
+ return groups.reduce((acc, group) => {
28
+ var _group$days, _group$intervals, _group$lockedTimes;
29
+
30
+ if (!group.group_type) throw new Error('property "group_type" must exist on all entries in "groups" array');
31
+ if (!['personal', 'classes'].includes(group.group_type)) throw new Error('Allowed values of "group_type" are "personal" and "classes"');
32
+ if (!group[idKey]) throw new Error('A group does not have a unique key');
33
+ if (group.group_type != 'classes') return acc;
34
+ return acc.concat(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
35
+ ids: group[idKey]
36
+ }, group.name && {
37
+ displayName: group.name
38
+ }), 'forbidOverlappingEvents' in group && {
39
+ forbidOverlappingEvents: group.forbidOverlappingEvents
40
+ }), 'maxNumWorkingHours' in group && {
41
+ maxNumWorkingHours: group.maxNumWorkingHours
42
+ }), 'maxNumDailyWorkingHours' in group && {
43
+ maxNumDailyWorkingHours: group.maxNumDailyWorkingHours
44
+ }), 'minBreakLength' in group && {
45
+ minBreakLength: (0, _breakLengths.default)(group.minBreakLength)
46
+ }), 'disableDayLengthPunishment' in group && {
47
+ disableDayLengthPunishment: group.disableDayLengthPunishment
48
+ }), 'weight' in group && {
49
+ weight: group.weight
50
+ }), 'rank' in group && {
51
+ rank: group.rank
52
+ }), ((_group$days = group.days) === null || _group$days === void 0 ? void 0 : _group$days.length) && {
53
+ days: (0, _days.default)(group.days, settings)
54
+ }), ((_group$intervals = group.intervals) === null || _group$intervals === void 0 ? void 0 : _group$intervals.length) && {
55
+ intervals: (0, _intervals.default)(group.intervals)
56
+ }), ((_group$lockedTimes = group.lockedTimes) === null || _group$lockedTimes === void 0 ? void 0 : _group$lockedTimes.length) && {
57
+ lockedTimes: (0, _lockedTimes.default)(group.lockedTimes)
58
+ }));
59
+ }, []);
60
+ };
61
+
62
+ exports.default = _default;
63
+ //# sourceMappingURL=groups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/from/groups.ts"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;eAOe,CAAC,MAAD,EACC,QADD,KACwC;AACrD,MAAM,KAAK,GAAgB,QAAQ,CAAC,UAApC;AAEA,MAAI,CAAE,KAAN,EACE,MAAM,IAAI,KAAJ,CAAU,gDAAV,CAAN;AAEF,SAAO,MAAM,CAAC,MAAP,CAAc,CAAC,GAAD,EAAa,KAAb,KAA6B;AAAA;;AAEhD,QAAI,CAAE,KAAK,CAAC,UAAZ,EACE,MAAM,IAAI,KAAJ,CAAU,mEAAV,CAAN;AAEF,QAAI,CAAE,CAAC,UAAD,EAAa,SAAb,EAAwB,QAAxB,CAAiC,KAAK,CAAC,UAAvC,CAAN,EACE,MAAM,IAAI,KAAJ,CAAU,6DAAV,CAAN;AAEF,QAAI,CAAE,KAAK,CAAC,KAAD,CAAX,EACE,MAAM,IAAI,KAAJ,CAAU,oCAAV,CAAN;AAEF,QAAI,KAAK,CAAC,UAAN,IAAoB,SAAxB,EAAmC,OAAO,GAAP;AAEnC,WAAO,GAAG,CAAC,MAAJ;AACL,MAAA,GAAG,EAAuE,KAAK,CAAC,KAAD;AAD1E,OAEF,KAAK,CAAC,IAAN,IAAyC;AAAE,MAAA,WAAW,EAAiB,KAAK,CAAC;AAApC,KAFvC,GAGF,6BAAgC,KAAhC,IAAyC;AAAE,MAAA,uBAAuB,EAAK,KAAK,CAAC;AAApC,KAHvC,GAIF,wBAAgC,KAAhC,IAAyC;AAAE,MAAA,kBAAkB,EAAU,KAAK,CAAC;AAApC,KAJvC,GAKF,6BAAgC,KAAhC,IAAyC;AAAE,MAAA,uBAAuB,EAAK,KAAK,CAAC;AAApC,KALvC,GAMF,oBAAgC,KAAhC,IAAyC;AAAE,MAAA,cAAc,EAAc,2BAAY,KAAK,CAAC,cAAlB;AAA9B,KANvC,GAOF,gCAAgC,KAAhC,IAAyC;AAAE,MAAA,0BAA0B,EAAE,KAAK,CAAC;AAApC,KAPvC,GAQF,YAAgC,KAAhC,IAAyC;AAAE,MAAA,MAAM,EAAsB,KAAK,CAAC;AAApC,KARvC,GASF,UAAgC,KAAhC,IAAyC;AAAE,MAAA,IAAI,EAAwB,KAAK,CAAC;AAApC,KATvC,GAUF,gBAAA,KAAK,CAAC,IAAN,4DAAY,MAAZ,KAAyC;AAAE,MAAA,IAAI,EAAwB,mBAAK,KAAK,CAAC,IAAX,EAAiB,QAAjB;AAA9B,KAVvC,GAWF,qBAAA,KAAK,CAAC,SAAN,sEAAiB,MAAjB,KAAyC;AAAE,MAAA,SAAS,EAAmB,wBAAU,KAAK,CAAC,SAAhB;AAA9B,KAXvC,GAYF,uBAAA,KAAK,CAAC,WAAN,0EAAmB,MAAnB,KAAyC;AAAE,MAAA,WAAW,EAAiB,0BAAW,KAAK,CAAC,WAAjB;AAA9B,KAZvC,EAAP;AAcD,GA3BM,EA2BJ,EA3BI,CAAP;AA4BD,C","sourceRoot":"","file":"groups.js"}
@@ -0,0 +1,16 @@
1
+ export default class {
2
+ static availableDependency: (data: any, settings: import("../types/settings").Settings) => any;
3
+ static courseEvent: (courseEvents: (number | import("../types/course-events").CourseEvent)[], course: import("../types/collections").Collection, teachersList: string[], groupsList: string[], settings: import("../types/settings").Settings) => any;
4
+ static collection: (courses: (import("../types/collections").Collection | import("../types/collections").Collection[])[], teachersList: string[], groupsList: string[], settings: import("../types/settings").Settings, overlapGroup?: number) => import("../../../core/types/courses").Course[];
5
+ static day: (days: any, settings: import("../types/settings").Settings) => any;
6
+ static dependency: (dependencies: (string | import("../types/dependencies").Dependency)[], settings: import("../types/settings").Settings) => any[];
7
+ static group: (groups: import("../types/groups").Group[], settings: import("../types/settings").Settings) => import("../../../core/types/groups").Group[];
8
+ static interval: (intervals: import("../types/intervals").Interval[]) => import("../../../core/types/intervals").Interval[];
9
+ static lockedTime: (lockedTimes: import("../types/locked-times").LockedTime[]) => import("../../../core/types/locked-times").LockedTime[];
10
+ static placement: (configuration: import("../types/configurations").Configuration, options?: {
11
+ idKey?: "id" | "_id" | "ids" | undefined;
12
+ }) => import("../../../core/types/course-events").CourseEvent[];
13
+ static schedules: (schedule: import("../types/schedules").Schedule) => import("../../../core/types/divisions").Division;
14
+ static setting: (settings: import("../types/settings").Settings, _default: import("../types/default").Default) => import("../../../core/types/division-settings").DivisionSettings;
15
+ static teacher: (teachers: import("../types/groups").Group[], settings: any) => import("../../../core/types/teachers").Teacher[];
16
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _availableDependencies = _interopRequireDefault(require("./available-dependencies"));
9
+
10
+ var _courseEvents = _interopRequireDefault(require("./course-events"));
11
+
12
+ var _collections = _interopRequireDefault(require("./collections"));
13
+
14
+ var _days = _interopRequireDefault(require("./days"));
15
+
16
+ var _dependencies = _interopRequireDefault(require("./dependencies"));
17
+
18
+ var _groups = _interopRequireDefault(require("./groups"));
19
+
20
+ var _intervals = _interopRequireDefault(require("./intervals"));
21
+
22
+ var _lockedTimes = _interopRequireDefault(require("./locked-times"));
23
+
24
+ var _placements = _interopRequireDefault(require("./placements"));
25
+
26
+ var _schedules2 = _interopRequireDefault(require("./schedules"));
27
+
28
+ var _settings = _interopRequireDefault(require("./settings"));
29
+
30
+ var _teachers = _interopRequireDefault(require("./teachers"));
31
+
32
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
33
+
34
+ class default_1 {}
35
+
36
+ exports.default = default_1;
37
+ default_1.availableDependency = _availableDependencies.default;
38
+ default_1.courseEvent = _courseEvents.default;
39
+ default_1.collection = _collections.default;
40
+ default_1.day = _days.default;
41
+ default_1.dependency = _dependencies.default;
42
+ default_1.group = _groups.default;
43
+ default_1.interval = _intervals.default;
44
+ default_1.lockedTime = _lockedTimes.default;
45
+ default_1.placement = _placements.default;
46
+ default_1.schedules = _schedules2.default;
47
+ default_1.setting = _settings.default;
48
+ default_1.teacher = _teachers.default;
49
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/RS/v2/from/index.ts"],"names":[],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AAEc,MAAA,SAAA,CAAA;;;AACL,SAAA,CAAA,mBAAA,GAAsB,8BAAtB;AACA,SAAA,CAAA,WAAA,GAAsB,qBAAtB;AACA,SAAA,CAAA,UAAA,GAAsB,oBAAtB;AACA,SAAA,CAAA,GAAA,GAAsB,aAAtB;AACA,SAAA,CAAA,UAAA,GAAsB,qBAAtB;AACA,SAAA,CAAA,KAAA,GAAsB,eAAtB;AACA,SAAA,CAAA,QAAA,GAAsB,kBAAtB;AACA,SAAA,CAAA,UAAA,GAAsB,oBAAtB;AACA,SAAA,CAAA,SAAA,GAAsB,mBAAtB;AACA,SAAA,CAAA,SAAA,GAAsB,mBAAtB;AACA,SAAA,CAAA,OAAA,GAAsB,iBAAtB;AACA,SAAA,CAAA,OAAA,GAAsB,iBAAtB","sourceRoot":"","file":"index.js"}
@@ -0,0 +1,4 @@
1
+ import { Interval } from '../types/intervals';
2
+ import { Interval as SourceInterval } from '../../../core/types/intervals';
3
+ declare const _default: (intervals: Interval[]) => SourceInterval[];
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 _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,4 @@
1
+ import { LockedTime } from '../types/locked-times';
2
+ import { LockedTime as SourceLockedTime } from '../../../core/types/locked-times';
3
+ declare const _default: (lockedTimes: LockedTime[]) => SourceLockedTime[];
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 _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,4 @@
1
+ import { Division } from '../../../core/types/divisions';
2
+ import { Schedule } from '../types/schedules';
3
+ declare const _default_1: (schedule: Schedule) => Division;
4
+ export default _default_1;
@@ -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,4 @@
1
+ import { Group } from '../types/groups';
2
+ import { Teacher as SourceTeacher } from '../../../core/types/teachers';
3
+ declare const _default: (teachers: Group[], settings: any) => SourceTeacher[];
4
+ export default _default;
@@ -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,7 @@
1
+ import _from from './from';
2
+ import _to from './to';
3
+ export * from './types';
4
+ export declare class V2 {
5
+ static to: typeof _to;
6
+ static from: typeof _from;
7
+ }