@royalschedule/maps 2.7.10 → 3.0.0

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 (199) hide show
  1. package/dist/RS/index.d.ts +3 -0
  2. package/dist/RS/index.js +2 -0
  3. package/dist/RS/index.js.map +1 -1
  4. package/dist/RS/v3/from/available-dependencies.d.ts +3 -0
  5. package/dist/RS/v3/from/available-dependencies.js +97 -0
  6. package/dist/RS/v3/from/available-dependencies.js.map +1 -0
  7. package/dist/RS/v3/from/break-lengths.d.ts +3 -0
  8. package/dist/RS/v3/from/break-lengths.js +20 -0
  9. package/dist/RS/v3/from/break-lengths.js.map +1 -0
  10. package/dist/RS/v3/from/collections.d.ts +4 -0
  11. package/dist/RS/v3/from/collections.js +12 -0
  12. package/dist/RS/v3/from/collections.js.map +1 -0
  13. package/dist/RS/v3/from/course-events.d.ts +5 -0
  14. package/dist/RS/v3/from/course-events.js +14 -0
  15. package/dist/RS/v3/from/course-events.js.map +1 -0
  16. package/dist/RS/v3/from/days.d.ts +4 -0
  17. package/dist/RS/v3/from/days.js +22 -0
  18. package/dist/RS/v3/from/days.js.map +1 -0
  19. package/dist/RS/v3/from/dependencies.d.ts +6 -0
  20. package/dist/RS/v3/from/dependencies.js +97 -0
  21. package/dist/RS/v3/from/dependencies.js.map +1 -0
  22. package/dist/RS/v3/from/groups.d.ts +5 -0
  23. package/dist/RS/v3/from/groups.js +103 -0
  24. package/dist/RS/v3/from/groups.js.map +1 -0
  25. package/dist/RS/v3/from/index.d.ts +25 -0
  26. package/dist/RS/v3/from/index.js +66 -0
  27. package/dist/RS/v3/from/index.js.map +1 -0
  28. package/dist/RS/v3/from/individuals.d.ts +4 -0
  29. package/dist/RS/v3/from/individuals.js +12 -0
  30. package/dist/RS/v3/from/individuals.js.map +1 -0
  31. package/dist/RS/v3/from/intervals.d.ts +4 -0
  32. package/dist/RS/v3/from/intervals.js +28 -0
  33. package/dist/RS/v3/from/intervals.js.map +1 -0
  34. package/dist/RS/v3/from/locked-times.d.ts +4 -0
  35. package/dist/RS/v3/from/locked-times.js +28 -0
  36. package/dist/RS/v3/from/locked-times.js.map +1 -0
  37. package/dist/RS/v3/from/placements.d.ts +7 -0
  38. package/dist/RS/v3/from/placements.js +39 -0
  39. package/dist/RS/v3/from/placements.js.map +1 -0
  40. package/dist/RS/v3/from/schedules.d.ts +13 -0
  41. package/dist/RS/v3/from/schedules.js +162 -0
  42. package/dist/RS/v3/from/schedules.js.map +1 -0
  43. package/dist/RS/v3/from/settings.d.ts +6 -0
  44. package/dist/RS/v3/from/settings.js +39 -0
  45. package/dist/RS/v3/from/settings.js.map +1 -0
  46. package/dist/RS/v3/from/teachers.d.ts +5 -0
  47. package/dist/RS/v3/from/teachers.js +101 -0
  48. package/dist/RS/v3/from/teachers.js.map +1 -0
  49. package/dist/RS/v3/index.d.ts +6 -0
  50. package/dist/RS/v3/index.js +15 -0
  51. package/dist/RS/v3/index.js.map +1 -0
  52. package/dist/RS/v3/to/available-dependencies.d.ts +6 -0
  53. package/dist/RS/v3/to/available-dependencies.js +39 -0
  54. package/dist/RS/v3/to/available-dependencies.js.map +1 -0
  55. package/dist/RS/v3/to/break-lengths.d.ts +4 -0
  56. package/dist/RS/v3/to/break-lengths.js +24 -0
  57. package/dist/RS/v3/to/break-lengths.js.map +1 -0
  58. package/dist/RS/v3/to/collections.d.ts +7 -0
  59. package/dist/RS/v3/to/collections.js +102 -0
  60. package/dist/RS/v3/to/collections.js.map +1 -0
  61. package/dist/RS/v3/to/configurations.d.ts +6 -0
  62. package/dist/RS/v3/to/configurations.js +29 -0
  63. package/dist/RS/v3/to/configurations.js.map +1 -0
  64. package/dist/RS/v3/to/constraints.d.ts +6 -0
  65. package/dist/RS/v3/to/constraints.js +74 -0
  66. package/dist/RS/v3/to/constraints.js.map +1 -0
  67. package/dist/RS/v3/to/course-events/common.d.ts +1 -0
  68. package/dist/RS/v3/to/course-events/common.js +11 -0
  69. package/dist/RS/v3/to/course-events/common.js.map +1 -0
  70. package/dist/RS/v3/to/course-events/days.d.ts +6 -0
  71. package/dist/RS/v3/to/course-events/days.js +19 -0
  72. package/dist/RS/v3/to/course-events/days.js.map +1 -0
  73. package/dist/RS/v3/to/course-events/dependencies.d.ts +6 -0
  74. package/dist/RS/v3/to/course-events/dependencies.js +20 -0
  75. package/dist/RS/v3/to/course-events/dependencies.js.map +1 -0
  76. package/dist/RS/v3/to/course-events/groups.d.ts +10 -0
  77. package/dist/RS/v3/to/course-events/groups.js +61 -0
  78. package/dist/RS/v3/to/course-events/groups.js.map +1 -0
  79. package/dist/RS/v3/to/course-events/in-locations.d.ts +4 -0
  80. package/dist/RS/v3/to/course-events/in-locations.js +29 -0
  81. package/dist/RS/v3/to/course-events/in-locations.js.map +1 -0
  82. package/dist/RS/v3/to/course-events/index.d.ts +7 -0
  83. package/dist/RS/v3/to/course-events/index.js +99 -0
  84. package/dist/RS/v3/to/course-events/index.js.map +1 -0
  85. package/dist/RS/v3/to/course-events/intervals.d.ts +5 -0
  86. package/dist/RS/v3/to/course-events/intervals.js +16 -0
  87. package/dist/RS/v3/to/course-events/intervals.js.map +1 -0
  88. package/dist/RS/v3/to/course-events/meta.d.ts +16 -0
  89. package/dist/RS/v3/to/course-events/meta.js +34 -0
  90. package/dist/RS/v3/to/course-events/meta.js.map +1 -0
  91. package/dist/RS/v3/to/days.d.ts +3 -0
  92. package/dist/RS/v3/to/days.js +17 -0
  93. package/dist/RS/v3/to/days.js.map +1 -0
  94. package/dist/RS/v3/to/default.d.ts +5 -0
  95. package/dist/RS/v3/to/default.js +49 -0
  96. package/dist/RS/v3/to/default.js.map +1 -0
  97. package/dist/RS/v3/to/dependencies.d.ts +6 -0
  98. package/dist/RS/v3/to/dependencies.js +44 -0
  99. package/dist/RS/v3/to/dependencies.js.map +1 -0
  100. package/dist/RS/v3/to/destructure.d.ts +6 -0
  101. package/dist/RS/v3/to/destructure.js +45 -0
  102. package/dist/RS/v3/to/destructure.js.map +1 -0
  103. package/dist/RS/v3/to/dynamic-locked-times.d.ts +7 -0
  104. package/dist/RS/v3/to/dynamic-locked-times.js +86 -0
  105. package/dist/RS/v3/to/dynamic-locked-times.js.map +1 -0
  106. package/dist/RS/v3/to/groups.d.ts +6 -0
  107. package/dist/RS/v3/to/groups.js +57 -0
  108. package/dist/RS/v3/to/groups.js.map +1 -0
  109. package/dist/RS/v3/to/index.d.ts +23 -0
  110. package/dist/RS/v3/to/index.js +41 -0
  111. package/dist/RS/v3/to/index.js.map +1 -0
  112. package/dist/RS/v3/to/individuals.d.ts +11 -0
  113. package/dist/RS/v3/to/individuals.js +66 -0
  114. package/dist/RS/v3/to/individuals.js.map +1 -0
  115. package/dist/RS/v3/to/intervals.d.ts +4 -0
  116. package/dist/RS/v3/to/intervals.js +41 -0
  117. package/dist/RS/v3/to/intervals.js.map +1 -0
  118. package/dist/RS/v3/to/locked-times.d.ts +5 -0
  119. package/dist/RS/v3/to/locked-times.js +67 -0
  120. package/dist/RS/v3/to/locked-times.js.map +1 -0
  121. package/dist/RS/v3/to/periods.d.ts +10 -0
  122. package/dist/RS/v3/to/periods.js +62 -0
  123. package/dist/RS/v3/to/periods.js.map +1 -0
  124. package/dist/RS/v3/to/persons.d.ts +6 -0
  125. package/dist/RS/v3/to/persons.js +33 -0
  126. package/dist/RS/v3/to/persons.js.map +1 -0
  127. package/dist/RS/v3/to/root-intervals.d.ts +4 -0
  128. package/dist/RS/v3/to/root-intervals.js +25 -0
  129. package/dist/RS/v3/to/root-intervals.js.map +1 -0
  130. package/dist/RS/v3/to/schedules.d.ts +12 -0
  131. package/dist/RS/v3/to/schedules.js +28 -0
  132. package/dist/RS/v3/to/schedules.js.map +1 -0
  133. package/dist/RS/v3/to/settings.d.ts +4 -0
  134. package/dist/RS/v3/to/settings.js +24 -0
  135. package/dist/RS/v3/to/settings.js.map +1 -0
  136. package/dist/RS/v3/to/teachers.d.ts +6 -0
  137. package/dist/RS/v3/to/teachers.js +56 -0
  138. package/dist/RS/v3/to/teachers.js.map +1 -0
  139. package/dist/RS/v3/types/areas.d.ts +4 -0
  140. package/dist/RS/v3/types/areas.js +6 -0
  141. package/dist/RS/v3/types/areas.js.map +1 -0
  142. package/dist/RS/v3/types/available-dependencies.d.ts +4 -0
  143. package/dist/RS/v3/types/available-dependencies.js +6 -0
  144. package/dist/RS/v3/types/available-dependencies.js.map +1 -0
  145. package/dist/RS/v3/types/break-lengths.d.ts +6 -0
  146. package/dist/RS/v3/types/break-lengths.js +6 -0
  147. package/dist/RS/v3/types/break-lengths.js.map +1 -0
  148. package/dist/RS/v3/types/collections.d.ts +25 -0
  149. package/dist/RS/v3/types/collections.js +6 -0
  150. package/dist/RS/v3/types/collections.js.map +1 -0
  151. package/dist/RS/v3/types/configurations.d.ts +5 -0
  152. package/dist/RS/v3/types/configurations.js +6 -0
  153. package/dist/RS/v3/types/configurations.js.map +1 -0
  154. package/dist/RS/v3/types/constraints.d.ts +20 -0
  155. package/dist/RS/v3/types/constraints.js +6 -0
  156. package/dist/RS/v3/types/constraints.js.map +1 -0
  157. package/dist/RS/v3/types/course-events.d.ts +26 -0
  158. package/dist/RS/v3/types/course-events.js +6 -0
  159. package/dist/RS/v3/types/course-events.js.map +1 -0
  160. package/dist/RS/v3/types/days.d.ts +4 -0
  161. package/dist/RS/v3/types/days.js +6 -0
  162. package/dist/RS/v3/types/days.js.map +1 -0
  163. package/dist/RS/v3/types/default.d.ts +20 -0
  164. package/dist/RS/v3/types/default.js +6 -0
  165. package/dist/RS/v3/types/default.js.map +1 -0
  166. package/dist/RS/v3/types/dependencies.d.ts +12 -0
  167. package/dist/RS/v3/types/dependencies.js +6 -0
  168. package/dist/RS/v3/types/dependencies.js.map +1 -0
  169. package/dist/RS/v3/types/groups.d.ts +22 -0
  170. package/dist/RS/v3/types/groups.js +6 -0
  171. package/dist/RS/v3/types/groups.js.map +1 -0
  172. package/dist/RS/v3/types/index.d.ts +28 -0
  173. package/dist/RS/v3/types/index.js +6 -0
  174. package/dist/RS/v3/types/index.js.map +1 -0
  175. package/dist/RS/v3/types/individuals.d.ts +6 -0
  176. package/dist/RS/v3/types/individuals.js +6 -0
  177. package/dist/RS/v3/types/individuals.js.map +1 -0
  178. package/dist/RS/v3/types/intervals.d.ts +5 -0
  179. package/dist/RS/v3/types/intervals.js +6 -0
  180. package/dist/RS/v3/types/intervals.js.map +1 -0
  181. package/dist/RS/v3/types/locked-times.d.ts +7 -0
  182. package/dist/RS/v3/types/locked-times.js +6 -0
  183. package/dist/RS/v3/types/locked-times.js.map +1 -0
  184. package/dist/RS/v3/types/out-options.d.ts +7 -0
  185. package/dist/RS/v3/types/out-options.js +6 -0
  186. package/dist/RS/v3/types/out-options.js.map +1 -0
  187. package/dist/RS/v3/types/placements.d.ts +8 -0
  188. package/dist/RS/v3/types/placements.js +6 -0
  189. package/dist/RS/v3/types/placements.js.map +1 -0
  190. package/dist/RS/v3/types/root-intervals.d.ts +5 -0
  191. package/dist/RS/v3/types/root-intervals.js +6 -0
  192. package/dist/RS/v3/types/root-intervals.js.map +1 -0
  193. package/dist/RS/v3/types/schedules.d.ts +14 -0
  194. package/dist/RS/v3/types/schedules.js +6 -0
  195. package/dist/RS/v3/types/schedules.js.map +1 -0
  196. package/dist/RS/v3/types/settings.d.ts +8 -0
  197. package/dist/RS/v3/types/settings.js +6 -0
  198. package/dist/RS/v3/types/settings.js.map +1 -0
  199. package/package.json +1 -1
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _breakLengths = _interopRequireDefault(require("./break-lengths"));
8
+ var _days = _interopRequireDefault(require("./days"));
9
+ var _lockedTimes = _interopRequireDefault(require("./locked-times"));
10
+ var _intervals = _interopRequireDefault(require("./intervals"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
14
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
15
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
16
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
17
+ var _default = (teachers, settings, options) => {
18
+ if (teachers == null) return [];
19
+ var idKey = options.idKey || 'id';
20
+ return (Array.isArray(teachers) ? teachers : [teachers]).map((teacher, index) => {
21
+ var _teacher$intervals, _teacher$days, _teacher$lockedTimes;
22
+ if (teacher[idKey] == undefined) throw new Error("(RS::V3::To::Teachers) Teachers must have an id, index: ".concat(index));
23
+ var doc = _objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
24
+ id: "teachers.".concat(teacher[idKey].toString()),
25
+ group_type: 'personal'
26
+ }, 'maxNumWorkingHours' in teacher && {
27
+ maxNumWorkingHours: teacher.maxNumWorkingHours
28
+ }), 'disableDayLengthPunishment' in teacher && {
29
+ disableDayLengthPunishment: teacher.disableDayLengthPunishment
30
+ }), {}, {
31
+ minimizeDependencyAlternation: true
32
+ }, 'maxNumDailyWorkingHours' in teacher && {
33
+ maxNumDailyWorkingHours: teacher.maxNumDailyWorkingHours
34
+ }), 'weight' in teacher && {
35
+ weight: teacher.weight
36
+ }), ((_teacher$intervals = teacher.intervals) === null || _teacher$intervals === void 0 ? void 0 : _teacher$intervals.length) && {
37
+ intervals: (0, _intervals.default)(teacher.intervals, settings)
38
+ }), ((_teacher$days = teacher.days) === null || _teacher$days === void 0 ? void 0 : _teacher$days.length) && {
39
+ days: (0, _days.default)(teacher.days, settings.numDays)
40
+ }), ((_teacher$lockedTimes = teacher.lockedTimes) === null || _teacher$lockedTimes === void 0 ? void 0 : _teacher$lockedTimes.length) && {
41
+ lockedTimes: (0, _lockedTimes.default)(teacher.lockedTimes, options)
42
+ }), teacher.minBreakLength != null && {
43
+ minBreakLength: (0, _breakLengths.default)(teacher.minBreakLength)
44
+ });
45
+ if (options.meta) {
46
+ Object.assign(doc, _objectSpread(_objectSpread({}, teacher.ids && {
47
+ ids: teacher.ids
48
+ }), teacher.displayName && {
49
+ name: teacher.displayName
50
+ }));
51
+ }
52
+ return doc;
53
+ }, []);
54
+ };
55
+ exports.default = _default;
56
+ //# sourceMappingURL=teachers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"teachers.js","names":["_breakLengths","_interopRequireDefault","require","_days","_lockedTimes","_intervals","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","_default","teachers","settings","options","idKey","Array","isArray","map","teacher","index","_teacher$intervals","_teacher$days","_teacher$lockedTimes","Error","concat","doc","id","toString","group_type","maxNumWorkingHours","disableDayLengthPunishment","minimizeDependencyAlternation","maxNumDailyWorkingHours","weight","intervals","days","numDays","lockedTimes","minBreakLength","breakLengths","meta","assign","ids","displayName","name","exports"],"sources":["../../../../src/RS/v3/to/teachers.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -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,"file":"areas.js","names":[],"sources":["../../../../src/RS/v3/types/areas.ts"],"sourcesContent":[null],"mappings":""}
@@ -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,"file":"available-dependencies.js","names":[],"sources":["../../../../src/RS/v3/types/available-dependencies.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,6 @@
1
+ type AsymType = {
2
+ bef: number;
3
+ aft: number;
4
+ };
5
+ export 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,"file":"break-lengths.js","names":[],"sources":["../../../../src/RS/v3/types/break-lengths.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,25 @@
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
+ events: (CourseEvent | number)[];
10
+ name?: string;
11
+ subject?: string;
12
+ color?: string;
13
+ potentialCenter?: number;
14
+ density?: number;
15
+ weight?: number;
16
+ minBreakLength?: BreakLength;
17
+ lockedTimes?: LockedTime[];
18
+ intervals?: Interval[][];
19
+ days?: (Day | number)[];
20
+ groups?: (string | {
21
+ individuals: string | string[];
22
+ })[][];
23
+ dependencies?: (AvailableDependency[] | AvailableDependency)[];
24
+ period?: number;
25
+ }
@@ -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,"file":"collections.js","names":[],"sources":["../../../../src/RS/v3/types/collections.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { Placement } from './placements';
2
+ export 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,"file":"configurations.js","names":[],"sources":["../../../../src/RS/v3/types/configurations.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,20 @@
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
+ import { CourseEvent } from './course-events';
8
+ import { Individual } from './individuals';
9
+ import { RootInterval } from './root-intervals';
10
+ export interface Constraint {
11
+ settings?: Settings;
12
+ default?: Default;
13
+ periods?: string;
14
+ areas?: Area;
15
+ events?: (CourseEvent | Collection | (CourseEvent | Collection)[])[];
16
+ groups?: Group[];
17
+ dependencies?: Dependency[];
18
+ individuals?: Individual[];
19
+ intervals?: RootInterval[];
20
+ }
@@ -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,"file":"constraints.js","names":[],"sources":["../../../../src/RS/v3/types/constraints.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,26 @@
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
+ maxLengthVariance?: number;
15
+ start?: number;
16
+ lockedTimes?: LockedTime[];
17
+ intervals?: Interval[][];
18
+ days?: (Day | number)[];
19
+ day?: number;
20
+ groups?: (string | {
21
+ individuals: string | string[];
22
+ })[][];
23
+ dependencies?: (AvailableDependency[] | AvailableDependency | string | string[])[];
24
+ period?: number;
25
+ forcedOverlapId?: string;
26
+ }
@@ -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,"file":"course-events.js","names":[],"sources":["../../../../src/RS/v3/types/course-events.ts"],"sourcesContent":[null],"mappings":""}
@@ -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,"file":"days.js","names":[],"sources":["../../../../src/RS/v3/types/days.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,20 @@
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
+ maxEventLengthVariance: number;
11
+ maxNumWorkingHours: number | boolean;
12
+ maxNumDailyWorkingHours: number | number[] | boolean;
13
+ dependencyRank: number;
14
+ groupRank: number;
15
+ dayRank: number;
16
+ groupWeight: number;
17
+ collectionWeight: number;
18
+ eventWeight: number;
19
+ period?: number;
20
+ }
@@ -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,"file":"default.js","names":[],"sources":["../../../../src/RS/v3/types/default.ts"],"sourcesContent":[null],"mappings":""}
@@ -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,"file":"dependencies.js","names":[],"sources":["../../../../src/RS/v3/types/dependencies.ts"],"sourcesContent":[null],"mappings":""}
@@ -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
+ type GroupType = 'personal' | 'classes' | 'persons';
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,"file":"groups.js","names":[],"sources":["../../../../src/RS/v3/types/groups.ts"],"sourcesContent":[null],"mappings":""}
@@ -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 namespace Types {
15
+ type area = Area;
16
+ type availableDependency = AvailableDependency;
17
+ type configuration = Configuration;
18
+ type courseEvent = CourseEvent;
19
+ type collection = Collection;
20
+ type day = Day;
21
+ type dependency = Dependency;
22
+ type group = Group;
23
+ type interval = Interval;
24
+ type lockedTime = LockedTime;
25
+ type schedule = Schedule;
26
+ type settings = Settings;
27
+ type _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,"file":"index.js","names":[],"sources":["../../../../src/RS/v3/types/index.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,6 @@
1
+ import { Group } from './groups';
2
+ export interface Individual {
3
+ id: string;
4
+ group?: Group['id'];
5
+ individuals?: Individual['id'][];
6
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=individuals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"individuals.js","names":[],"sources":["../../../../src/RS/v3/types/individuals.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,5 @@
1
+ export interface Interval {
2
+ beg?: number;
3
+ end?: number;
4
+ binary?: boolean;
5
+ }
@@ -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,"file":"intervals.js","names":[],"sources":["../../../../src/RS/v3/types/intervals.ts"],"sourcesContent":[null],"mappings":""}
@@ -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,"file":"locked-times.js","names":[],"sources":["../../../../src/RS/v3/types/locked-times.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export type Id = 'id' | '_id';
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,"file":"out-options.js","names":[],"sources":["../../../../src/RS/v3/types/out-options.ts"],"sourcesContent":[null],"mappings":""}
@@ -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,"file":"placements.js","names":[],"sources":["../../../../src/RS/v3/types/placements.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { Interval } from "./intervals";
2
+ export interface RootInterval {
3
+ id?: string;
4
+ value?: Interval[];
5
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=root-intervals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root-intervals.js","names":[],"sources":["../../../../src/RS/v3/types/root-intervals.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import { Division } from '../../../core/v2/types/divisions';
2
+ import { Configuration } from './configurations';
3
+ import { Constraint } from './constraints';
4
+ type Structure = 'RS/algorithm-3.0.0';
5
+ export interface Schedule {
6
+ meta?: {
7
+ structure?: Structure;
8
+ division: Pick<Division, 'displayName' | 'start' | 'end'>;
9
+ };
10
+ score?: [number, number, number, number];
11
+ input?: Constraint;
12
+ output?: Configuration[];
13
+ }
14
+ 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,"file":"schedules.js","names":[],"sources":["../../../../src/RS/v3/types/schedules.ts"],"sourcesContent":[null],"mappings":""}
@@ -0,0 +1,8 @@
1
+ export interface Settings {
2
+ numDays: number;
3
+ discretization: number;
4
+ dependencyIdKey: 'id';
5
+ groupIdKey: 'id';
6
+ collectionIdKey: 'id';
7
+ eventIdKey: 'id';
8
+ }
@@ -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,"file":"settings.js","names":[],"sources":["../../../../src/RS/v3/types/settings.ts"],"sourcesContent":[null],"mappings":""}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@royalschedule/maps",
3
3
  "description": "",
4
- "version": "2.7.10",
4
+ "version": "3.0.0",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "engines": {