@royalschedule/maps 2.1.20 → 2.2.1

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 (171) hide show
  1. package/dist/Admentum/from/schedules.js +20 -17
  2. package/dist/Admentum/from/schedules.js.map +1 -1
  3. package/dist/SS12000/from/activities.js +12 -19
  4. package/dist/SS12000/from/activities.js.map +1 -1
  5. package/dist/SS12000/from/calendar-events.js +1 -1
  6. package/dist/SS12000/from/calendar-events.js.map +1 -1
  7. package/dist/SS12000/from/duties.js +1 -1
  8. package/dist/SS12000/from/duties.js.map +1 -1
  9. package/dist/SS12000/from/groups.js +1 -1
  10. package/dist/SS12000/from/groups.js.map +1 -1
  11. package/dist/SS12000/from/resources.js +1 -1
  12. package/dist/SS12000/from/resources.js.map +1 -1
  13. package/dist/SS12000/from/rooms.js +1 -1
  14. package/dist/SS12000/from/rooms.js.map +1 -1
  15. package/dist/SS12000/to/teachers.d.ts +1 -1
  16. package/dist/SS12000/to/teachers.js +3 -13
  17. package/dist/SS12000/to/teachers.js.map +1 -1
  18. package/dist/Skola24/from/assert-week-overlap.js.map +1 -1
  19. package/dist/Skola24/from/course-and-events.d.ts +9 -0
  20. package/dist/Skola24/from/course-and-events.js +314 -0
  21. package/dist/Skola24/from/course-and-events.js.map +1 -0
  22. package/dist/Skola24/from/course-events.js +43 -4
  23. package/dist/Skola24/from/course-events.js.map +1 -1
  24. package/dist/Skola24/from/courses.d.ts +10 -4
  25. package/dist/Skola24/from/courses.js +81 -43
  26. package/dist/Skola24/from/courses.js.map +1 -1
  27. package/dist/Skola24/from/events.d.ts +11 -0
  28. package/dist/Skola24/from/events.js +146 -0
  29. package/dist/Skola24/from/events.js.map +1 -0
  30. package/dist/Skola24/from/filter-on-period.d.ts +7 -0
  31. package/dist/Skola24/from/filter-on-period.js +24 -0
  32. package/dist/Skola24/from/filter-on-period.js.map +1 -0
  33. package/dist/Skola24/from/groups.d.ts +2 -2
  34. package/dist/Skola24/from/groups.js +4 -4
  35. package/dist/Skola24/from/groups.js.map +1 -1
  36. package/dist/Skola24/from/index.js.map +1 -1
  37. package/dist/Skola24/from/locations.d.ts +2 -2
  38. package/dist/Skola24/from/locations.js +3 -3
  39. package/dist/Skola24/from/locations.js.map +1 -1
  40. package/dist/Skola24/from/schedule.d.ts +4 -3
  41. package/dist/Skola24/from/schedule.js +101 -35
  42. package/dist/Skola24/from/schedule.js.map +1 -1
  43. package/dist/Skola24/from/teachers.d.ts +2 -2
  44. package/dist/Skola24/from/teachers.js +3 -3
  45. package/dist/Skola24/from/teachers.js.map +1 -1
  46. package/dist/Skola24/types/Course.d.ts +6 -0
  47. package/dist/Skola24/types/Course.js +6 -0
  48. package/dist/Skola24/types/Course.js.map +1 -0
  49. package/dist/Skola24/types/Group-group-link.d.ts +4 -0
  50. package/dist/Skola24/types/Group-group-link.js +6 -0
  51. package/dist/Skola24/types/Group-group-link.js.map +1 -0
  52. package/dist/Skola24/types/Group-student-link.d.ts +4 -0
  53. package/dist/Skola24/types/Group-student-link.js +6 -0
  54. package/dist/Skola24/types/Group-student-link.js.map +1 -0
  55. package/dist/Skola24/types/Group.d.ts +5 -0
  56. package/dist/Skola24/types/Group.js +6 -0
  57. package/dist/Skola24/types/Group.js.map +1 -0
  58. package/dist/Skola24/types/Lesson-group-link.d.ts +4 -0
  59. package/dist/Skola24/types/Lesson-group-link.js +6 -0
  60. package/dist/Skola24/types/Lesson-group-link.js.map +1 -0
  61. package/dist/Skola24/types/Lesson-period-link.d.ts +4 -0
  62. package/dist/Skola24/types/Lesson-period-link.js +6 -0
  63. package/dist/Skola24/types/Lesson-period-link.js.map +1 -0
  64. package/dist/Skola24/types/Lesson-room-link.d.ts +4 -0
  65. package/dist/Skola24/types/Lesson-room-link.js +6 -0
  66. package/dist/Skola24/types/Lesson-room-link.js.map +1 -0
  67. package/dist/Skola24/types/Lesson-teacher-link.d.ts +4 -0
  68. package/dist/Skola24/types/Lesson-teacher-link.js +6 -0
  69. package/dist/Skola24/types/Lesson-teacher-link.js.map +1 -0
  70. package/dist/Skola24/types/Lesson.d.ts +9 -0
  71. package/dist/Skola24/types/Lesson.js +6 -0
  72. package/dist/Skola24/types/Lesson.js.map +1 -0
  73. package/dist/Skola24/types/Meta.d.ts +7 -0
  74. package/dist/Skola24/types/Meta.js +6 -0
  75. package/dist/Skola24/types/Meta.js.map +1 -0
  76. package/dist/Skola24/types/Period.d.ts +5 -0
  77. package/dist/Skola24/types/Period.js +6 -0
  78. package/dist/Skola24/types/Period.js.map +1 -0
  79. package/dist/Skola24/types/Plan-group-link.d.ts +4 -0
  80. package/dist/Skola24/types/Plan-group-link.js +6 -0
  81. package/dist/Skola24/types/Plan-group-link.js.map +1 -0
  82. package/dist/Skola24/types/Plan-period-link.d.ts +4 -0
  83. package/dist/Skola24/types/Plan-period-link.js +6 -0
  84. package/dist/Skola24/types/Plan-period-link.js.map +1 -0
  85. package/dist/Skola24/types/Plan-teacher-link.d.ts +6 -0
  86. package/dist/Skola24/types/Plan-teacher-link.js +6 -0
  87. package/dist/Skola24/types/Plan-teacher-link.js.map +1 -0
  88. package/dist/Skola24/types/Plan.d.ts +5 -0
  89. package/dist/Skola24/types/Plan.js +6 -0
  90. package/dist/Skola24/types/Plan.js.map +1 -0
  91. package/dist/Skola24/types/Room.d.ts +5 -0
  92. package/dist/Skola24/types/Room.js +6 -0
  93. package/dist/Skola24/types/Room.js.map +1 -0
  94. package/dist/Skola24/types/Schedule.d.ts +34 -0
  95. package/dist/Skola24/types/Schedule.js +6 -0
  96. package/dist/Skola24/types/Schedule.js.map +1 -0
  97. package/dist/Skola24/types/Subject.d.ts +4 -0
  98. package/dist/Skola24/types/Subject.js +6 -0
  99. package/dist/Skola24/types/Subject.js.map +1 -0
  100. package/dist/Skola24/types/Teacher.d.ts +6 -0
  101. package/dist/Skola24/types/Teacher.js +6 -0
  102. package/dist/Skola24/types/Teacher.js.map +1 -0
  103. package/dist/Skola24_old/from/assert-week-overlap.d.ts +1 -0
  104. package/dist/Skola24_old/from/assert-week-overlap.js +28 -0
  105. package/dist/Skola24_old/from/assert-week-overlap.js.map +1 -0
  106. package/dist/Skola24_old/from/course-events.d.ts +6 -0
  107. package/dist/Skola24_old/from/course-events.js +127 -0
  108. package/dist/Skola24_old/from/course-events.js.map +1 -0
  109. package/dist/Skola24_old/from/courses.d.ts +5 -0
  110. package/dist/Skola24_old/from/courses.js +55 -0
  111. package/dist/Skola24_old/from/courses.js.map +1 -0
  112. package/dist/Skola24_old/from/groups.d.ts +3 -0
  113. package/dist/Skola24_old/from/groups.js +14 -0
  114. package/dist/Skola24_old/from/groups.js.map +1 -0
  115. package/dist/Skola24_old/from/index.d.ts +4 -0
  116. package/dist/Skola24_old/from/index.js +20 -0
  117. package/dist/Skola24_old/from/index.js.map +1 -0
  118. package/dist/Skola24_old/from/locations.d.ts +3 -0
  119. package/dist/Skola24_old/from/locations.js +14 -0
  120. package/dist/Skola24_old/from/locations.js.map +1 -0
  121. package/dist/Skola24_old/from/schedule.d.ts +3 -0
  122. package/dist/Skola24_old/from/schedule.js +68 -0
  123. package/dist/Skola24_old/from/schedule.js.map +1 -0
  124. package/dist/Skola24_old/from/teachers.d.ts +3 -0
  125. package/dist/Skola24_old/from/teachers.js +14 -0
  126. package/dist/Skola24_old/from/teachers.js.map +1 -0
  127. package/dist/Skola24_old/index.d.ts +4 -0
  128. package/dist/Skola24_old/index.js +20 -0
  129. package/dist/Skola24_old/index.js.map +1 -0
  130. package/dist/Skola24_old/types/TA-group-link.d.ts +4 -0
  131. package/dist/Skola24_old/types/TA-group-link.js +6 -0
  132. package/dist/Skola24_old/types/TA-group-link.js.map +1 -0
  133. package/dist/Skola24_old/types/TA-teacher-link.d.ts +4 -0
  134. package/dist/Skola24_old/types/TA-teacher-link.js +6 -0
  135. package/dist/Skola24_old/types/TA-teacher-link.js.map +1 -0
  136. package/dist/Skola24_old/types/TA.d.ts +8 -0
  137. package/dist/Skola24_old/types/TA.js +6 -0
  138. package/dist/Skola24_old/types/TA.js.map +1 -0
  139. package/dist/Skola24_old/types/group-student-link.d.ts +4 -0
  140. package/dist/Skola24_old/types/group-student-link.js +6 -0
  141. package/dist/Skola24_old/types/group-student-link.js.map +1 -0
  142. package/dist/Skola24_old/types/group.d.ts +4 -0
  143. package/dist/Skola24_old/types/group.js +6 -0
  144. package/dist/Skola24_old/types/group.js.map +1 -0
  145. package/dist/Skola24_old/types/lesson-group-link.d.ts +4 -0
  146. package/dist/Skola24_old/types/lesson-group-link.js +6 -0
  147. package/dist/Skola24_old/types/lesson-group-link.js.map +1 -0
  148. package/dist/Skola24_old/types/lesson-room-link.d.ts +4 -0
  149. package/dist/Skola24_old/types/lesson-room-link.js +6 -0
  150. package/dist/Skola24_old/types/lesson-room-link.js.map +1 -0
  151. package/dist/Skola24_old/types/lesson-teacher-link.d.ts +4 -0
  152. package/dist/Skola24_old/types/lesson-teacher-link.js +6 -0
  153. package/dist/Skola24_old/types/lesson-teacher-link.js.map +1 -0
  154. package/dist/Skola24_old/types/lesson.d.ts +9 -0
  155. package/dist/Skola24_old/types/lesson.js +6 -0
  156. package/dist/Skola24_old/types/lesson.js.map +1 -0
  157. package/dist/Skola24_old/types/room.d.ts +4 -0
  158. package/dist/Skola24_old/types/room.js +6 -0
  159. package/dist/Skola24_old/types/room.js.map +1 -0
  160. package/dist/Skola24_old/types/schedule.d.ts +24 -0
  161. package/dist/Skola24_old/types/schedule.js +6 -0
  162. package/dist/Skola24_old/types/schedule.js.map +1 -0
  163. package/dist/Skola24_old/types/teacher.d.ts +5 -0
  164. package/dist/Skola24_old/types/teacher.js +6 -0
  165. package/dist/Skola24_old/types/teacher.js.map +1 -0
  166. package/dist/core/types/divisions.d.ts +2 -2
  167. package/dist/core/types/index.d.ts +2 -0
  168. package/dist/core/types/meta.d.ts +4 -0
  169. package/dist/core/types/meta.js +6 -0
  170. package/dist/core/types/meta.js.map +1 -0
  171. package/package.json +1 -1
@@ -26,28 +26,31 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
26
26
  function _default(schedule) {
27
27
  if (schedule.schools.length != 1) {
28
28
  return {
29
- importErrors: ["Recieved ".concat(schedule.schools.length, " number of schools: only a single school is allowed.")]
29
+ meta: {
30
+ errors: ["Recieved ".concat(schedule.schools.length, " number of schools: only a single school is allowed.")]
31
+ }
30
32
  };
31
33
  }
32
34
 
33
35
  var school = schedule.schools[0];
34
- var importErrors = [];
35
- var importWarnings = [];
36
- var locations = (0, _locations2.default)(schedule.rooms, importErrors, importWarnings);
37
- var teachers = (0, _teachers2.default)(schedule.schedule_groups, schedule.lessons, importErrors, importWarnings);
38
- var groups = (0, _groups2.default)(schedule.primary_groups, importErrors, importWarnings);
39
- var courses = (0, _courses2.default)(schedule.schedule_groups, school, importErrors, importWarnings);
40
- var events = (0, _events2.default)(schedule.lessons, courses, teachers, importErrors, importWarnings);
41
- return _objectSpread(_objectSpread(_objectSpread({}, {
42
- groups,
43
- teachers,
36
+ var errors = [];
37
+ var warnings = [];
38
+ var locations = (0, _locations2.default)(schedule.rooms, errors, warnings);
39
+ var teachers = (0, _teachers2.default)(schedule.schedule_groups, schedule.lessons, errors, warnings);
40
+ var groups = (0, _groups2.default)(schedule.primary_groups, errors, warnings);
41
+ var courses = (0, _courses2.default)(schedule.schedule_groups, school, errors, warnings);
42
+ var events = (0, _events2.default)(schedule.lessons, courses, teachers, errors, warnings);
43
+ return {
44
44
  locations,
45
+ teachers,
46
+ groups,
45
47
  courses,
46
- events
47
- }), importErrors.length ? {
48
- importErrors
49
- } : {}), importWarnings.length ? {
50
- importWarnings
51
- } : {});
48
+ events,
49
+ meta: _objectSpread(_objectSpread({}, errors.length ? {
50
+ errors: errors
51
+ } : {}), warnings.length ? {
52
+ warnings: warnings
53
+ } : {})
54
+ };
52
55
  }
53
56
  //# sourceMappingURL=schedules.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedules.js","mappings":";;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAKc,kBACZA,QADY,EACM;AAMlB,MAAIA,QAAQ,CAACC,OAAT,CAAiBC,MAAjB,IAA2B,CAA/B,EAAkC;AAChC,WAAO;AAAEC,kBAAY,EAAE,oBAAaH,QAAQ,CAACC,OAAT,CAAiBC,MAA9B;AAAhB,KAAP;AACD;;AACD,MAAIE,MAAM,GAAGJ,QAAQ,CAACC,OAAT,CAAiB,CAAjB,CAAb;AAGA,MAAIE,YAAY,GAAe,EAA/B;AACA,MAAIE,cAAc,GAAa,EAA/B;AAEA,MAAMC,SAAS,GAA4B,yBAAWN,QAAQ,CAACO,KAApB,EAAsDJ,YAAtD,EAAoEE,cAApE,CAA3C;AACA,MAAMG,QAAQ,GAA6B,wBAAUR,QAAQ,CAACS,eAAnB,EAAoCT,QAAQ,CAACU,OAA7C,EAAsDP,YAAtD,EAAoEE,cAApE,CAA3C;AACA,MAAMM,MAAM,GAA+B,sBAAQX,QAAQ,CAACY,cAAjB,EAAsDT,YAAtD,EAAoEE,cAApE,CAA3C;AACA,MAAMQ,OAAO,GAA8B,uBAASb,QAAQ,CAACS,eAAlB,EAAmCL,MAAnC,EAAsDD,YAAtD,EAAoEE,cAApE,CAA3C;AACA,MAAMS,MAAM,GAA+B,sBAAQd,QAAQ,CAACU,OAAjB,EAA0BG,OAA1B,EAAmCL,QAAnC,EAAsDL,YAAtD,EAAoEE,cAApE,CAA3C;AAEA,uDAAY;AAAEM,UAAF;AAAUH,YAAV;AAAoBF,aAApB;AAA+BO,WAA/B;AAAwCC;AAAxC,GAAZ,GACaX,YAAY,CAACD,MAAb,GAAwB;AAAEC;AAAF,GAAxB,GAA6C,EAD1D,GAEaE,cAAc,CAACH,MAAf,GAAwB;AAAEG;AAAF,GAAxB,GAA6C,EAF1D;AAGD","names":["schedule","schools","length","importErrors","school","importWarnings","locations","rooms","teachers","schedule_groups","lessons","groups","primary_groups","courses","events"],"sourceRoot":"","sources":["../../../src/Admentum/from/schedules.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"schedules.js","mappings":";;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAKc,kBACZA,QADY,EACM;AAMlB,MAAIA,QAAQ,CAACC,OAAT,CAAiBC,MAAjB,IAA2B,CAA/B,EAAkC;AAChC,WAAO;AAAEC,UAAI,EAAE;AAAEC,cAAM,EAAE,oBAAaJ,QAAQ,CAACC,OAAT,CAAiBC,MAA9B;AAAV;AAAR,KAAP;AACD;;AACD,MAAIG,MAAM,GAAGL,QAAQ,CAACC,OAAT,CAAiB,CAAjB,CAAb;AAGA,MAAIG,MAAM,GAAe,EAAzB;AACA,MAAIE,QAAQ,GAAa,EAAzB;AAEA,MAAMC,SAAS,GAA4B,yBAAWP,QAAQ,CAACQ,KAApB,EAAsDJ,MAAtD,EAA8DE,QAA9D,CAA3C;AACA,MAAMG,QAAQ,GAA6B,wBAAUT,QAAQ,CAACU,eAAnB,EAAoCV,QAAQ,CAACW,OAA7C,EAAsDP,MAAtD,EAA8DE,QAA9D,CAA3C;AACA,MAAMM,MAAM,GAA+B,sBAAQZ,QAAQ,CAACa,cAAjB,EAAsDT,MAAtD,EAA8DE,QAA9D,CAA3C;AACA,MAAMQ,OAAO,GAA8B,uBAASd,QAAQ,CAACU,eAAlB,EAAmCL,MAAnC,EAAsDD,MAAtD,EAA8DE,QAA9D,CAA3C;AACA,MAAMS,MAAM,GAA+B,sBAAQf,QAAQ,CAACW,OAAjB,EAA0BG,OAA1B,EAAmCL,QAAnC,EAAsDL,MAAtD,EAA8DE,QAA9D,CAA3C;AAEA,SAAO;AAAEC,aAAF;AAAaE,YAAb;AAAuBG,UAAvB;AAA+BE,WAA/B;AAAwCC,UAAxC;AACEZ,QAAI,kCACGC,MAAM,CAACF,MAAP,GAAkB;AAAEE,YAAM,EAAIA;AAAZ,KAAlB,GAA2C,EAD9C,GAEGE,QAAQ,CAACJ,MAAT,GAAkB;AAAEI,cAAQ,EAAEA;AAAZ,KAAlB,GAA2C,EAF9C;AADN,GAAP;AAMD","names":["schedule","schools","length","meta","errors","school","warnings","locations","rooms","teachers","schedule_groups","lessons","groups","primary_groups","courses","events"],"sourceRoot":"","sources":["../../../src/Admentum/from/schedules.ts"],"sourcesContent":[null]}
@@ -5,35 +5,28 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
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
8
  var _default = (activities, options) => {
15
9
  if (!Array.isArray(activities)) throw new Error('(SS12000::From::Activities) Activities input is not of array type');
16
10
  return activities.map(activity => {
17
11
  var _activity$groups, _activity$teachers;
18
12
 
19
13
  return {
20
- id: activity.id,
14
+ ids: activity.id,
21
15
  displayName: activity.displayName,
22
16
  type: activity.activityType,
23
- groups: (_activity$groups = activity.groups) === null || _activity$groups === void 0 ? void 0 : _activity$groups.map(group => _objectSpread({
24
- id: group.id
25
- }, group.displayName && {
26
- displayName: group.displayName
27
- })),
28
- teachers: (_activity$teachers = activity.teachers) === null || _activity$teachers === void 0 ? void 0 : _activity$teachers.map(_ref => {
17
+ groups: (_activity$groups = activity.groups) === null || _activity$groups === void 0 ? void 0 : _activity$groups.map(_ref => {
29
18
  var {
30
- duty
19
+ id
31
20
  } = _ref;
32
- return _objectSpread({
33
- id: duty.id
34
- }, duty.displayName && {
35
- displayName: duty.displayName
36
- });
21
+ return id;
22
+ }),
23
+ teachers: (_activity$teachers = activity.teachers) === null || _activity$teachers === void 0 ? void 0 : _activity$teachers.map(_ref2 => {
24
+ var {
25
+ duty: {
26
+ id
27
+ }
28
+ } = _ref2;
29
+ return id;
37
30
  })
38
31
  };
39
32
  });
@@ -1 +1 @@
1
- {"version":3,"file":"activities.js","mappings":";;;;;;;;;;;;;eAMe,CAACA,UAAD,EAAyBC,OAAzB,KAAwG;AACrH,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcH,UAAd,CAAN,EACE,MAAM,IAAII,KAAJ,CAAU,mEAAV,CAAN;AAEF,SAAOJ,UAAU,CAACK,GAAX,CAAgBC,QAAD;AAAA;;AAAA,WACpB;AACEC,QAAE,EAAsBD,QAAQ,CAACC,EADnC;AAEEC,iBAAW,EAAaF,QAAQ,CAACE,WAFnC;AAGEC,UAAI,EAAoBH,QAAQ,CAACI,YAHnC;AAIEC,YAAM,sBAAkBL,QAAQ,CAACK,MAA3B,qDAAkB,iBAAiBN,GAAjB,CAAsBO,KAAD;AACnBL,UAAE,EAAqCK,KAAK,CAACL;AAD1B,SAEhBK,KAAK,CAACJ,WAAN,IAAqB;AAAEA,mBAAW,EAAEI,KAAK,CAACJ;AAArB,OAFL,CAArB,CAJ1B;AAQEK,cAAQ,wBAAgBP,QAAQ,CAACO,QAAzB,uDAAgB,mBAAmBR,GAAnB,CAAuB;AAAA,YAAC;AAAES;AAAF,SAAD;AAAA;AACrBP,YAAE,EAAqCO,IAAI,CAACP;AADvB,WAElBO,IAAI,CAACN,WAAL,IAAoB;AAAEA,qBAAW,EAAGM,IAAI,CAACN;AAArB,SAFF;AAAA,OAAvB;AAR1B,KADoB;AAAA,GAAf,CAAP;AAgBD,C","names":["activities","options","Array","isArray","Error","map","activity","id","displayName","type","activityType","groups","group","teachers","duty"],"sourceRoot":"","sources":["../../../src/SS12000/from/activities.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"activities.js","mappings":";;;;;;;eAMe,CAACA,UAAD,EAAyBC,OAAzB,KAAwG;AACrH,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcH,UAAd,CAAN,EACE,MAAM,IAAII,KAAJ,CAAU,mEAAV,CAAN;AAEF,SAAOJ,UAAU,CAACK,GAAX,CAAgBC,QAAD;AAAA;;AAAA,WACpB;AACEC,SAAG,EAAqBD,QAAQ,CAACE,EADnC;AAEEC,iBAAW,EAAaH,QAAQ,CAACG,WAFnC;AAGEC,UAAI,EAAoBJ,QAAQ,CAACK,YAHnC;AAIEC,YAAM,sBAAkBN,QAAQ,CAACM,MAA3B,qDAAkB,iBAAiBP,GAAjB,CAAqB;AAAA,YAAC;AAAEG;AAAF,SAAD;AAAA,eAAYA,EAAZ;AAAA,OAArB,CAJ1B;AAKEK,cAAQ,wBAAgBP,QAAQ,CAACO,QAAzB,uDAAgB,mBAAmBR,GAAnB,CAAuB;AAAA,YAAC;AAAES,cAAI,EAAE;AAAEN;AAAF;AAAR,SAAD;AAAA,eAAsBA,EAAtB;AAAA,OAAvB;AAL1B,KADoB;AAAA,GAAf,CAAP;AASD,C","names":["activities","options","Array","isArray","Error","map","activity","ids","id","displayName","type","activityType","groups","teachers","duty"],"sourceRoot":"","sources":["../../../src/SS12000/from/activities.ts"],"sourcesContent":[null]}
@@ -17,7 +17,7 @@ var _default = events => {
17
17
  var _event$rooms;
18
18
 
19
19
  return {
20
- id: event.id,
20
+ ids: event.id,
21
21
  start: event.startTime.toString(),
22
22
  end: event.endTime.toString(),
23
23
  duration: (0, _moment.default)(event.endTime).diff(event.endTime, 'm'),
@@ -1 +1 @@
1
- {"version":3,"file":"calendar-events.js","mappings":";;;;;;;AAAA;;AAMA;;;;eAEgBA,MAAD,IAAqD;AAClE,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,MAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,0EAAV,CAAN;AAEF,SAAOH,MAAM,CAACI,GAAP,CAAYC,KAAD;AAAA;;AAAA,WAAY;AAC5BC,QAAE,EAAuBD,KAAK,CAACC,EADH;AAE5BC,WAAK,EAAoBF,KAAK,CAACG,SAAN,CAAiBC,QAAjB,EAFG;AAG5BC,SAAG,EAAsBL,KAAK,CAACM,OAAN,CAAeF,QAAf,EAHG;AAI5BG,cAAQ,EAAiB,qBAAOP,KAAK,CAACM,OAAb,EAAsBE,IAAtB,CAA2BR,KAAK,CAACM,OAAjC,EAA0C,GAA1C,CAJG;AAK5BG,YAAM,EAAmBT,KAAK,CAACU,QAAN,CAAeT,EALZ;AAM5BU,iBAAW,EAAc,oCAAOX,KAAK,CAACY,KAAb,uDAAsB,EAAtB;AANG,KAAZ;AAAA,GAAX,CAAP;AASD,C","names":["events","Array","isArray","Error","map","event","id","start","startTime","toString","end","endTime","duration","diff","course","activity","inLocations","rooms"],"sourceRoot":"","sources":["../../../src/SS12000/from/calendar-events.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"calendar-events.js","mappings":";;;;;;;AAAA;;AAMA;;;;eAEgBA,MAAD,IAAqD;AAClE,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,MAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,0EAAV,CAAN;AAEF,SAAOH,MAAM,CAACI,GAAP,CAAYC,KAAD;AAAA;;AAAA,WAAY;AAC5BC,SAAG,EAAsBD,KAAK,CAACE,EADH;AAE5BC,WAAK,EAAoBH,KAAK,CAACI,SAAN,CAAiBC,QAAjB,EAFG;AAG5BC,SAAG,EAAsBN,KAAK,CAACO,OAAN,CAAeF,QAAf,EAHG;AAI5BG,cAAQ,EAAiB,qBAAOR,KAAK,CAACO,OAAb,EAAsBE,IAAtB,CAA2BT,KAAK,CAACO,OAAjC,EAA0C,GAA1C,CAJG;AAK5BG,YAAM,EAAmBV,KAAK,CAACW,QAAN,CAAeT,EALZ;AAM5BU,iBAAW,EAAc,oCAAOZ,KAAK,CAACa,KAAb,uDAAsB,EAAtB;AANG,KAAZ;AAAA,GAAX,CAAP;AASD,C","names":["events","Array","isArray","Error","map","event","ids","id","start","startTime","toString","end","endTime","duration","diff","course","activity","inLocations","rooms"],"sourceRoot":"","sources":["../../../src/SS12000/from/calendar-events.ts"],"sourcesContent":[null]}
@@ -8,7 +8,7 @@ exports.default = void 0;
8
8
  var _default = duties => {
9
9
  if (!Array.isArray(duties)) throw new Error('(SS12000::From::Duties) Teacher input is not of array type');
10
10
  return duties.map(duty => ({
11
- id: duty.id,
11
+ ids: duty.id,
12
12
  displayName: duty.displayName
13
13
  }));
14
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"duties.js","mappings":";;;;;;;eAIgBA,MAAD,IAAwC;AACrD,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,MAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,4DAAV,CAAN;AAEF,SAAOH,MAAM,CAACI,GAAP,CAAYC,IAAD,KAAW;AAC3BC,MAAE,EAAWD,IAAI,CAACC,EADS;AAE3BC,eAAW,EAAEF,IAAI,CAACE;AAFS,GAAX,CAAX,CAAP;AAID,C","names":["duties","Array","isArray","Error","map","duty","id","displayName"],"sourceRoot":"","sources":["../../../src/SS12000/from/duties.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"duties.js","mappings":";;;;;;;eAIgBA,MAAD,IAAwC;AACrD,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,MAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,4DAAV,CAAN;AAEF,SAAOH,MAAM,CAACI,GAAP,CAAYC,IAAD,KAAW;AAC3BC,OAAG,EAAUD,IAAI,CAACE,EADS;AAE3BC,eAAW,EAAEH,IAAI,CAACG;AAFS,GAAX,CAAX,CAAP;AAID,C","names":["duties","Array","isArray","Error","map","duty","ids","id","displayName"],"sourceRoot":"","sources":["../../../src/SS12000/from/duties.ts"],"sourcesContent":[null]}
@@ -8,7 +8,7 @@ exports.default = void 0;
8
8
  var _default = groups => {
9
9
  if (!Array.isArray(groups)) throw new Error('(SS12000::From::Groups) Gruop input is not of array type');
10
10
  return groups.map(group => ({
11
- id: group.id,
11
+ ids: group.id,
12
12
  displayName: group.displayName
13
13
  }));
14
14
  };
@@ -1 +1 @@
1
- {"version":3,"file":"groups.js","mappings":";;;;;;;eAIgBA,MAAD,IAAuC;AACpD,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,MAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,0DAAV,CAAN;AAEF,SAAOH,MAAM,CAACI,GAAP,CAAYC,KAAD,KAAY;AAC5BC,MAAE,EAAWD,KAAK,CAACC,EADS;AAE5BC,eAAW,EAAEF,KAAK,CAACE;AAFS,GAAZ,CAAX,CAAP;AAID,C","names":["groups","Array","isArray","Error","map","group","id","displayName"],"sourceRoot":"","sources":["../../../src/SS12000/from/groups.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"groups.js","mappings":";;;;;;;eAIgBA,MAAD,IAAuC;AACpD,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,MAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,0DAAV,CAAN;AAEF,SAAOH,MAAM,CAACI,GAAP,CAAYC,KAAD,KAAY;AAC5BC,OAAG,EAAUD,KAAK,CAACE,EADS;AAE5BC,eAAW,EAAEH,KAAK,CAACG;AAFS,GAAZ,CAAX,CAAP;AAID,C","names":["groups","Array","isArray","Error","map","group","ids","id","displayName"],"sourceRoot":"","sources":["../../../src/SS12000/from/groups.ts"],"sourcesContent":[null]}
@@ -8,7 +8,7 @@ exports.default = void 0;
8
8
  var _default = resources => {
9
9
  if (!Array.isArray(resources)) throw new Error('(SS12000::From::Resources) Resources input is not of array type');
10
10
  return resources.map(resource => ({
11
- id: resource.id
11
+ ids: resource.id
12
12
  }));
13
13
  };
14
14
 
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","mappings":";;;;;;;eAIgBA,SAAD,IAAiC;AAC9C,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,SAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,iEAAV,CAAN;AAEF,SAAOH,SAAS,CAACI,GAAV,CAAeC,QAAD,KAAe;AAClCC,MAAE,EAAED,QAAQ,CAACC;AADqB,GAAf,CAAd,CAAP;AAGD,C","names":["resources","Array","isArray","Error","map","resource","id"],"sourceRoot":"","sources":["../../../src/SS12000/from/resources.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"resources.js","mappings":";;;;;;;eAIgBA,SAAD,IAAiC;AAC9C,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,SAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,iEAAV,CAAN;AAEF,SAAOH,SAAS,CAACI,GAAV,CAAeC,QAAD,KAAe;AAClCC,OAAG,EAAED,QAAQ,CAACE;AADoB,GAAf,CAAd,CAAP;AAGD,C","names":["resources","Array","isArray","Error","map","resource","ids","id"],"sourceRoot":"","sources":["../../../src/SS12000/from/resources.ts"],"sourcesContent":[null]}
@@ -14,7 +14,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
14
14
  var _default = locations => {
15
15
  if (!Array.isArray(locations)) throw new Error('(SS12000::From::Room) Room input is not of array type');
16
16
  return locations.map(location => _objectSpread({
17
- id: location.id,
17
+ ids: location.id,
18
18
  displayName: location.displayName
19
19
  }, 'seats' in location && {
20
20
  seats: location.seats
@@ -1 +1 @@
1
- {"version":3,"file":"rooms.js","mappings":";;;;;;;;;;;;;eAIgBA,SAAD,IAA4C;AACzD,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,SAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,uDAAV,CAAN;AAEF,SAAOH,SAAS,CAACI,GAAV,CAAeC,QAAD;AACnBC,MAAE,EAAWD,QAAQ,CAACC,EADH;AAEnBC,eAAW,EAAEF,QAAQ,CAACE;AAFH,KAGf,WAAWF,QAAZ,IAAyB;AAAEG,SAAK,EAAEH,QAAQ,CAACG;AAAlB,GAHT,CAAd,CAAP;AAKD,C","names":["locations","Array","isArray","Error","map","location","id","displayName","seats"],"sourceRoot":"","sources":["../../../src/SS12000/from/rooms.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"rooms.js","mappings":";;;;;;;;;;;;;eAIgBA,SAAD,IAA4C;AACzD,MAAI,CAAEC,KAAK,CAACC,OAAN,CAAcF,SAAd,CAAN,EACE,MAAM,IAAIG,KAAJ,CAAU,uDAAV,CAAN;AAEF,SAAOH,SAAS,CAACI,GAAV,CAAeC,QAAD;AACnBC,OAAG,EAAUD,QAAQ,CAACE,EADH;AAEnBC,eAAW,EAAEH,QAAQ,CAACG;AAFH,KAGf,WAAWH,QAAZ,IAAyB;AAAEI,SAAK,EAAEJ,QAAQ,CAACI;AAAlB,GAHT,CAAd,CAAP;AAKD,C","names":["locations","Array","isArray","Error","map","location","ids","id","displayName","seats"],"sourceRoot":"","sources":["../../../src/SS12000/from/rooms.ts"],"sourcesContent":[null]}
@@ -1,4 +1,4 @@
1
1
  import { Types as CoreTypes } from '../../core/types';
2
2
  import { Teacher } from '../types/teachers';
3
- declare const _default: (teachers: CoreTypes.teacher[], belongsTo?: string | undefined) => Teacher[];
3
+ declare const _default: (teachers: CoreTypes.teacher[]) => Teacher[];
4
4
  export default _default;
@@ -5,29 +5,19 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
 
8
- var _lodash = _interopRequireDefault(require("lodash"));
9
-
10
- function _interopRequireDefault(obj) {
11
- return obj && obj.__esModule ? obj : {
12
- default: obj
13
- };
14
- }
15
-
16
- var _default = (teachers, belongsTo) => {
8
+ var _default = teachers => {
17
9
  if (!Array.isArray(teachers)) throw new Error('(SS12000::To::Teacher) Teacher input is not of array type');
18
- if (!teachers.every(teacher => _lodash.default.has(teacher, 'id'))) throw new Error('(SS12000::To::Teacher) Some teachers are missing "id" values');
19
- if (!belongsTo && !teachers.every(teacher => _lodash.default.has(teacher, 'belongsTo'))) throw new Error('(SS12000::To::Teacher) Some top layer teachers are missing "belongsTo" values');
20
10
  return teachers.map(teacher => {
21
11
  var _teacher$displayName;
22
12
 
23
13
  return {
24
- id: "".concat(belongsTo !== null && belongsTo !== void 0 ? belongsTo : teacher.belongsTo.id, ".").concat(teacher.id),
14
+ id: teacher.id,
25
15
  meta: {
26
16
  created: teacher.createdAt,
27
17
  modified: teacher.updatedAt
28
18
  },
29
19
  person: {
30
- id: "".concat(belongsTo !== null && belongsTo !== void 0 ? belongsTo : teacher.belongsTo.id, ".").concat(teacher.id),
20
+ id: teacher.id,
31
21
  displayName: (_teacher$displayName = teacher.displayName) !== null && _teacher$displayName !== void 0 ? _teacher$displayName : teacher.ids
32
22
  },
33
23
  dutyRole: "Lärare"
@@ -1 +1 @@
1
- {"version":3,"file":"teachers.js","mappings":";;;;;;;AAAA;;;;;;;;eAMe,CAACA,QAAD,EAAgCC,SAAhC,KAAiE;AAC9E,MAAI,CAAEC,KAAK,CAACC,OAAND,CAAcF,QAAdE,CAAN,EACE,MAAM,IAAIE,KAAJ,CAAU,2DAAV,CAAN;AAEF,MAAI,CAAEJ,QAAQ,CAACK,KAATL,CAAgBM,OAAD,IAAaC,gBAAEC,GAAFD,CAAMD,OAANC,EAAe,IAAfA,CAA5BP,CAAN,EACE,MAAM,IAAII,KAAJ,CAAU,8DAAV,CAAN;AAEF,MAAI,CAAEH,SAAF,IAAe,CAAED,QAAQ,CAACK,KAATL,CAAgBM,OAAD,IAAaC,gBAAEC,GAAFD,CAAMD,OAANC,EAAe,WAAfA,CAA5BP,CAArB,EACE,MAAM,IAAII,KAAJ,CAAU,+EAAV,CAAN;AAEF,SAAOJ,QAAQ,CAACS,GAATT,CAAcM,OAAD;AAAA;;AAAA,WAAc;AAChCI,QAAE,YAAcT,SAAd,SAAcA,aAAd,WAAcA,eAAaK,OAAO,CAACL,SAARK,CAAmBI,EAA9C,cAAsDJ,OAAO,CAACI,EAA9D,CAD8B;AAEhCC,UAAI,EAAE;AACJC,eAAO,EAAGN,OAAO,CAACO,SADd;AAEJC,gBAAQ,EAAER,OAAO,CAACS;AAFd,OAF0B;AAMhCC,YAAM,EAAE;AACNN,UAAE,YAAeT,SAAf,SAAeA,aAAf,WAAeA,eAAaK,OAAO,CAACL,SAARK,CAAmBI,EAA/C,cAAuDJ,OAAO,CAACI,EAA/D,CADI;AAENO,mBAAW,0BAAEX,OAAO,CAACW,WAAV,uEAAyBX,OAAO,CAACY;AAFtC,OANwB;AAWhCC,cAAQ,EAAE;AAXsB,KAAd;AAAb,IAAP","names":["teachers","belongsTo","Array","isArray","Error","every","teacher","_","has","map","id","meta","created","createdAt","modified","updatedAt","person","displayName","ids","dutyRole"],"sourceRoot":"","sources":["../../../src/SS12000/to/teachers.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"teachers.js","mappings":";;;;;;;eAIgBA,QAAD,IAA6C;AAC1D,MAAI,CAAEC,KAAK,CAACC,OAAND,CAAcD,QAAdC,CAAN,EACE,MAAM,IAAIE,KAAJ,CAAU,2DAAV,CAAN;AAEF,SAAOH,QAAQ,CAACI,GAATJ,CAAcK,OAAD;AAAA;;AAAA,WAAc;AAChCC,QAAE,EAAED,OAAO,CAACC,EADoB;AAEhCC,UAAI,EAAE;AACJC,eAAO,EAAGH,OAAO,CAACI,SADd;AAEJC,gBAAQ,EAAEL,OAAO,CAACM;AAFd,OAF0B;AAMhCC,YAAM,EAAE;AACNN,UAAE,EAAED,OAAO,CAACC,EADN;AAENO,mBAAW,0BAAER,OAAO,CAACQ,WAAV,uEAAyBR,OAAO,CAACS;AAFtC,OANwB;AAWhCC,cAAQ,EAAE;AAXsB,KAAd;AAAb,IAAP","names":["teachers","Array","isArray","Error","map","teacher","id","meta","created","createdAt","modified","updatedAt","person","displayName","ids","dutyRole"],"sourceRoot":"","sources":["../../../src/SS12000/to/teachers.ts"],"sourcesContent":[null]}
@@ -1 +1 @@
1
- {"version":3,"file":"assert-week-overlap.js","mappings":";;;;;;;AAAA,SAASA,gBAAT,CACEC,KADF,EACe;AAEb,MAAIC,KAAK,GAAa,EAAtB;AACAD,OAAK,CAACE,KAAN,CAAY,GAAZ,EACMC,OADN,CACcC,CAAC,IAAG;AAChB,QAAIA,CAAC,CAACC,QAAF,CAAW,GAAX,CAAJ,EAAqB;AAEnB,UAAI,CAACC,KAAD,EAAQC,GAAR,IAAeH,CAAC,CAACF,KAAF,CAAQ,GAAR,CAAnB;;AACA,WAAK,IAAIM,CAAC,GAAGC,QAAQ,CAACH,KAAD,CAArB,EAA8BE,CAAC,IAAIC,QAAQ,CAACF,GAAD,CAA3C,EAAkDC,CAAC,EAAnD;AACEP,aAAK,CAACS,IAAN,CAAWF,CAAX;AADF;AAED,KALD,MAKO;AAELP,WAAK,CAACS,IAAN,CAAWD,QAAQ,CAACL,CAAD,CAAnB;AACD;AACF,GAXD;AAaA,SAAOH,KAAP;AACD;;AAEK,SAAUU,iBAAV,CACJC,YADI,EAEJC,aAFI,EAEmB;AAEvB,MAAIC,WAAW,GAAGf,gBAAgB,CAACa,YAAD,CAAlC;AACA,SAAO,CAAC,CAAEE,WAAW,CAACC,MAAZ,CAAmBC,CAAC,IAAIH,aAAa,CAACR,QAAd,CAAuBW,CAAvB,CAAxB,EAAmDC,MAA7D;AACD","names":["parseActualWeeks","input","weeks","split","forEach","x","includes","start","end","i","parseInt","push","assertWeekOverlap","_actualWeeks","scheduleWeeks","actualWeeks","filter","w","length"],"sourceRoot":"","sources":["../../../src/Skola24/from/assert-week-overlap.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"assert-week-overlap.js","mappings":";;;;;;;AAAA,SAASA,gBAAT,CACEC,KADF,EACe;AAEb,MAAIC,KAAK,GAAa,EAAtB;AACAD,OAAK,CAACE,KAANF,CAAY,GAAZA,EACMG,OADNH,CACcI,CAAC,IAAG;AAChB,QAAIA,CAAC,CAACC,QAAFD,CAAW,GAAXA,CAAJ,EAAqB;AAEnB,UAAI,CAACE,KAAD,EAAQC,GAAR,IAAeH,CAAC,CAACF,KAAFE,CAAQ,GAARA,CAAnB;;AACA,WAAK,IAAII,CAAC,GAAGC,QAAQ,CAACH,KAAD,CAArB,EAA8BE,CAAC,IAAIC,QAAQ,CAACF,GAAD,CAA3C,EAAkDC,CAAC,EAAnD;AACEP,aAAK,CAACS,IAANT,CAAWO,CAAXP;AADF;AAHF,WAKO;AAELA,WAAK,CAACS,IAANT,CAAWQ,QAAQ,CAACL,CAAD,CAAnBH;AACD;AAVH;AAaA,SAAOA,KAAP;AACD;;AAEK,SAAUU,iBAAV,CACJC,YADI,EAEJC,aAFI,EAEmB;AAEvB,MAAIC,WAAW,GAAGf,gBAAgB,CAACa,YAAD,CAAlC;AACA,SAAO,CAAC,CAAEE,WAAW,CAACC,MAAZD,CAAmBE,CAAC,IAAIH,aAAa,CAACR,QAAdQ,CAAuBG,CAAvBH,CAAxBC,EAAmDG,MAA7D;AACD","names":["parseActualWeeks","input","weeks","split","forEach","x","includes","start","end","i","parseInt","push","assertWeekOverlap","_actualWeeks","scheduleWeeks","actualWeeks","filter","w","length"],"sourceRoot":"","sources":["../../../src/Skola24/from/assert-week-overlap.ts"],"sourcesContent":[null]}
@@ -0,0 +1,9 @@
1
+ import { Types } from '../../core/types';
2
+ import { Plan } from '../types/Plan';
3
+ import { Group } from '../types/Group';
4
+ import { Lesson } from '../types/Lesson';
5
+ import { Meta } from '../types/Meta';
6
+ export default function (groups: Group[], lessons: Lesson[], meta: Meta | undefined, groupPlansMap: Map<number, Set<string>>, planMap: Map<number, Plan>, subjectMap: Map<number, string>, planTeachersMap: Map<number, Set<string>>, groupClassesMap: Map<string, Set<string>>, RSgroups: Types.group[], groupMap: Map<number, Group>, lessonRoomsMap: Map<number, Set<string>>, lessonTeachersMap: Map<number, Set<string>>, lessonGroupsMap: Map<number, Set<string>>, RSteachers: Types.teacher[], warnings: string[], errors: string[]): {
7
+ courses: Types.course[];
8
+ events: Types.courseEvent[];
9
+ };
@@ -0,0 +1,314 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+
8
+ var _moment = _interopRequireDefault(require("moment"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ 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; }
13
+
14
+ 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; }
15
+
16
+ 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; }
17
+
18
+ var separator = ', ';
19
+ var arbetstid = 'Arbetstid'.toLowerCase();
20
+ var firstDay = '1970-01-05';
21
+ var numDays = 5;
22
+ var defaultDayStart = [8, 0];
23
+ var defaultDayEnd = [17, 0];
24
+
25
+ function generateDate(days, hours, minutes) {
26
+ return _moment.default.utc(firstDay).add(days, "days").add(hours, "hours").add(minutes, "minutes");
27
+ }
28
+
29
+ function startAndEnd(lesson) {
30
+ if ("Length" in lesson && "DayOfWeek" in lesson && "StartTime" in lesson) {
31
+ var dateTimeDate = (0, _moment.default)(lesson.StartTime, "MM/DD/YY hh:mm:ss");
32
+ var hours = dateTimeDate.get("hours");
33
+ var minutes = dateTimeDate.get("minutes");
34
+ var start = generateDate(lesson.DayOfWeek, hours, minutes);
35
+ var end = start.clone().add(lesson.Length, "minute");
36
+ return {
37
+ start: start,
38
+ end: end,
39
+ parked: false
40
+ };
41
+ } else {
42
+ return {};
43
+ }
44
+ }
45
+
46
+ function parseActualWeeks(val) {
47
+ if (!val) return [];
48
+ var weeks = [];
49
+ val.split(",").forEach(x => {
50
+ if (x.includes("-")) {
51
+ var [start, end] = x.split("-");
52
+
53
+ for (var i = parseInt(start); i <= parseInt(end); i++) {
54
+ weeks.push(i);
55
+ }
56
+ } else {
57
+ weeks.push(parseInt(x));
58
+ }
59
+ });
60
+ return weeks;
61
+ }
62
+
63
+ function addGroupsFromName(name, groupSet, groupNamePkMap) {
64
+ var regex = /-([^\s-]+)/gi;
65
+ var matches;
66
+
67
+ while (matches = regex.exec(name)) {
68
+ if (groupNamePkMap.has(matches[1])) {
69
+ var PK = groupNamePkMap.get(matches[1]);
70
+ groupSet.add(PK);
71
+ }
72
+ }
73
+ }
74
+
75
+ function getDay(mnt) {
76
+ return mnt.dayOfYear() - _moment.default.utc(firstDay).dayOfYear();
77
+ }
78
+
79
+ function createDefaultIntervals() {
80
+ var intervals = [];
81
+
82
+ for (var d = 0; d < numDays; d++) {
83
+ intervals.push({
84
+ start: generateDate(d, defaultDayStart[0], defaultDayStart[1]),
85
+ end: generateDate(d, defaultDayEnd[0], defaultDayEnd[1])
86
+ });
87
+ }
88
+
89
+ return intervals;
90
+ }
91
+
92
+ function _default(groups, lessons, meta, groupPlansMap, planMap, subjectMap, planTeachersMap, groupClassesMap, RSgroups, groupMap, lessonRoomsMap, lessonTeachersMap, lessonGroupsMap, RSteachers, warnings, errors) {
93
+ var groupNamePkMap = new Map(RSgroups.map(g => [g.displayName, g.ids]));
94
+ var courseMap = new Map();
95
+ groups.forEach(x => {
96
+ var _groupClassesMap$get, _groupPlansMap$get;
97
+
98
+ if (x.bClass) return;
99
+ var plans = groupPlansMap.get(x.PK);
100
+ var subject;
101
+
102
+ if (plans) {
103
+ var _planMap$get;
104
+
105
+ var subjPK = (_planMap$get = planMap.get(parseInt([...plans][0]))) === null || _planMap$get === void 0 ? void 0 : _planMap$get.FKSubject;
106
+ if (subjPK) subject = subjectMap.get(subjPK);
107
+ }
108
+
109
+ var groupSet = (_groupClassesMap$get = groupClassesMap.get(x.PK.toString())) !== null && _groupClassesMap$get !== void 0 ? _groupClassesMap$get : new Set();
110
+
111
+ if (meta !== null && meta !== void 0 && meta.deduceGroupsFromCourseName && x.ID) {
112
+ addGroupsFromName(x.ID, groupSet, groupNamePkMap);
113
+ }
114
+
115
+ var teacherSet = new Set();
116
+ (_groupPlansMap$get = groupPlansMap.get(x.PK)) === null || _groupPlansMap$get === void 0 ? void 0 : _groupPlansMap$get.forEach(p => {
117
+ var _planTeachersMap$get;
118
+
119
+ (_planTeachersMap$get = planTeachersMap.get(parseInt(p))) === null || _planTeachersMap$get === void 0 ? void 0 : _planTeachersMap$get.forEach(t => teacherSet.add(t));
120
+ });
121
+ courseMap.set(x.PK, _objectSpread(_objectSpread(_objectSpread({
122
+ ids: x.PK.toString(),
123
+ displayName: x.ID
124
+ }, subject && {
125
+ subject
126
+ }), (groupSet === null || groupSet === void 0 ? void 0 : groupSet.size) && {
127
+ groups: [...groupSet]
128
+ }), teacherSet.size && {
129
+ teachers: [...teacherSet]
130
+ }));
131
+ });
132
+ var numAdditionalCourses = 0;
133
+ var eventMap = new Map();
134
+ var intervalMap = new Map();
135
+ lessons.forEach(l => {
136
+ var _lessonGroupsMap$get, _lessonGroupsMap$get2;
137
+
138
+ if ((meta === null || meta === void 0 ? void 0 : meta.week) == undefined || !parseActualWeeks(l.CalcActualWeeks).includes(meta.week)) return;
139
+ var coursesIds = [...((_lessonGroupsMap$get = lessonGroupsMap.get(l.PK)) !== null && _lessonGroupsMap$get !== void 0 ? _lessonGroupsMap$get : new Set())].map(id => groupMap.get(parseInt(id))).filter(g => (g === null || g === void 0 ? void 0 : g.bClass) == false).sort((g1, g2) => g1.PK - g2.PK).map(g => g.PK);
140
+
141
+ var event = _objectSpread({
142
+ ids: l.PK.toString(),
143
+ duration: l.Length
144
+ }, startAndEnd(l));
145
+
146
+ var rooms = lessonRoomsMap.get(l.PK);
147
+
148
+ if (rooms !== null && rooms !== void 0 && rooms.size) {
149
+ event.inLocations = [...rooms];
150
+ event.locations = [...rooms].map(l => ({
151
+ locations: [l]
152
+ }));
153
+ }
154
+
155
+ var teachers = lessonTeachersMap.get(l.PK);
156
+ if (teachers !== null && teachers !== void 0 && teachers.size) event.teachers = [...teachers];
157
+ var classes = new Set();
158
+ (_lessonGroupsMap$get2 = lessonGroupsMap.get(l.PK)) === null || _lessonGroupsMap$get2 === void 0 ? void 0 : _lessonGroupsMap$get2.forEach(scheduleGroupId => {
159
+ var _groupClassesMap$get2;
160
+
161
+ (_groupClassesMap$get2 = groupClassesMap.get(scheduleGroupId)) === null || _groupClassesMap$get2 === void 0 ? void 0 : _groupClassesMap$get2.forEach(classId => {
162
+ classes.add(classId);
163
+ });
164
+ });
165
+ var courseHasGroups = coursesIds.some(x => {
166
+ var _courseMap$get;
167
+
168
+ return (_courseMap$get = courseMap.get(x)) === null || _courseMap$get === void 0 ? void 0 : _courseMap$get.groups;
169
+ });
170
+
171
+ if (meta !== null && meta !== void 0 && meta.deduceGroupsFromCourseName && (!courseHasGroups || classes.size)) {
172
+ coursesIds.map(x => {
173
+ var _courseMap$get2;
174
+
175
+ return (_courseMap$get2 = courseMap.get(x)) === null || _courseMap$get2 === void 0 ? void 0 : _courseMap$get2.displayName;
176
+ }).filter(x => !!x).forEach(x => addGroupsFromName(x, classes, groupNamePkMap));
177
+ }
178
+
179
+ if (classes.size) event.groups = [...classes];
180
+ var subject = subjectMap.get(l.FKSubject);
181
+
182
+ if ((subject === null || subject === void 0 ? void 0 : subject.toLowerCase()) == arbetstid) {
183
+ if (!event.start || !event.end) {
184
+ warnings.push("Start or end not set on interval event");
185
+ return;
186
+ }
187
+
188
+ var day = getDay(event.start);
189
+
190
+ if (0 > day || day > numDays - 1) {
191
+ warnings.push("Interval day out of bounds");
192
+ return;
193
+ }
194
+
195
+ teachers === null || teachers === void 0 ? void 0 : teachers.forEach(t => {
196
+ var _intervalMap$get;
197
+
198
+ if (!intervalMap.has(t)) intervalMap.set(t, new Map());
199
+ (_intervalMap$get = intervalMap.get(t)) === null || _intervalMap$get === void 0 ? void 0 : _intervalMap$get.set(day, {
200
+ start: event.start,
201
+ end: event.end
202
+ });
203
+ });
204
+ } else {
205
+ var _eventMap$get;
206
+
207
+ if (!coursesIds.length) {
208
+ var id = --numAdditionalCourses;
209
+ courseMap.set(id, _objectSpread(_objectSpread({
210
+ ids: id.toString()
211
+ }, subject && {
212
+ displayName: subject
213
+ }), subject && {
214
+ subject
215
+ }));
216
+ coursesIds.push(id);
217
+ }
218
+
219
+ var key = coursesIds.join(separator);
220
+ if (!eventMap.has(key)) eventMap.set(key, []);
221
+ (_eventMap$get = eventMap.get(key)) === null || _eventMap$get === void 0 ? void 0 : _eventMap$get.push(event);
222
+ }
223
+ });
224
+ intervalMap.forEach((v, k) => {
225
+ var teacher = RSteachers.find(t => t.ids == k);
226
+
227
+ if (!teacher) {
228
+ warnings.push("An interval referred to the unknown teacher with PK = ".concat(k));
229
+ return;
230
+ }
231
+
232
+ var intervals = createDefaultIntervals();
233
+ var days = [];
234
+ v.forEach((i, d) => {
235
+ days.push({
236
+ day: d
237
+ });
238
+ intervals[d] = i;
239
+ });
240
+ teacher.intervals = intervals;
241
+ if (days.length != numDays) teacher.days = days;
242
+ });
243
+ eventMap.forEach((events, key) => {
244
+ var courseIds = key.split(separator).map(x => parseInt(x));
245
+
246
+ if (courseIds.length > 1) {
247
+ var idss = [];
248
+ var displayNames = [];
249
+ var subjects = new Set();
250
+
251
+ var _groups = new Set();
252
+
253
+ var teachers = new Set();
254
+ courseIds.map(x => courseMap.get(x)).filter(c => !!c).forEach(c => {
255
+ c.ids && idss.push(c.ids);
256
+ c.displayName && displayNames.push(c.displayName);
257
+ c.subject && subjects.add(c.subject);
258
+ c.groups && c.groups.forEach(x => _groups.add(x));
259
+ c.teachers && c.teachers.forEach(x => teachers.add(x));
260
+ });
261
+ var newId = --numAdditionalCourses;
262
+
263
+ var newCourse = _objectSpread(_objectSpread(_objectSpread({
264
+ ids: idss.join(separator),
265
+ displayName: displayNames.join(separator)
266
+ }, subjects.size && {
267
+ subject: [...subjects].join(separator)
268
+ }), _groups.size && {
269
+ groups: [..._groups]
270
+ }), teachers.size && {
271
+ teachers: [...teachers]
272
+ });
273
+
274
+ courseMap.set(newId, newCourse);
275
+ eventMap.set(newId.toString(), [...events]);
276
+ events.length = 0;
277
+ warnings.push("The courses with PKs [".concat(courseIds.join(separator), "] needed to be merged."));
278
+ }
279
+ });
280
+ var populatedCourses = new Set();
281
+ var eventsArray = [];
282
+ eventMap.forEach((events, key) => {
283
+ var _courseMap$get3;
284
+
285
+ var courseIds = key.split(separator).map(x => parseInt(x));
286
+ if (courseIds.length != 1 && events.length) throw "Well this was unexpected...";
287
+ var courseId = courseIds[0];
288
+ var PK = (_courseMap$get3 = courseMap.get(courseId)) === null || _courseMap$get3 === void 0 ? void 0 : _courseMap$get3.ids;
289
+
290
+ if (PK == undefined) {
291
+ errors.push("The events with PKs ".concat(events.map(e => e.ids), " were ignored since their course was not found."));
292
+ return;
293
+ }
294
+
295
+ events.forEach(e => eventsArray.push(_objectSpread(_objectSpread({}, e), {}, {
296
+ course: PK
297
+ })));
298
+ if (events.length) populatedCourses.add(courseId);
299
+ });
300
+
301
+ if (meta !== null && meta !== void 0 && meta.ignoreEmptyCourses) {
302
+ var courses = [...courseMap].filter(_ref => {
303
+ var [k] = _ref;
304
+ return populatedCourses.has(k);
305
+ });
306
+ courseMap = new Map(courses);
307
+ }
308
+
309
+ return {
310
+ courses: [...courseMap.values()],
311
+ events: eventsArray
312
+ };
313
+ }
314
+ //# sourceMappingURL=course-and-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"course-and-events.js","mappings":"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","names":["separator","arbetstid","toLowerCase","firstDay","numDays","defaultDayStart","defaultDayEnd","generateDate","days","hours","minutes","moment","utc","add","startAndEnd","lesson","dateTimeDate","StartTime","get","start","DayOfWeek","end","clone","Length","parked","parseActualWeeks","val","weeks","split","forEach","x","includes","i","parseInt","push","addGroupsFromName","name","groupSet","groupNamePkMap","regex","matches","exec","has","PK","getDay","mnt","dayOfYear","createDefaultIntervals","intervals","d","groups","lessons","meta","groupPlansMap","planMap","subjectMap","planTeachersMap","groupClassesMap","RSgroups","groupMap","lessonRoomsMap","lessonTeachersMap","lessonGroupsMap","RSteachers","warnings","errors","Map","map","g","displayName","ids","courseMap","bClass","plans","subject","subjPK","FKSubject","toString","Set","deduceGroupsFromCourseName","ID","teacherSet","p","t","set","size","teachers","numAdditionalCourses","eventMap","intervalMap","l","week","undefined","CalcActualWeeks","coursesIds","id","filter","sort","g1","g2","event","duration","rooms","inLocations","locations","classes","scheduleGroupId","classId","courseHasGroups","some","day","length","key","join","v","k","teacher","find","events","courseIds","idss","displayNames","subjects","c","newId","newCourse","populatedCourses","eventsArray","courseId","e","course","ignoreEmptyCourses","courses","values"],"sourceRoot":"","sources":["../../../src/Skola24/from/course-and-events.ts"],"sourcesContent":[null]}