@royalschedule/maps 2.1.21 → 2.2.2

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 (159) 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/to/teachers.d.ts +1 -1
  4. package/dist/SS12000/to/teachers.js +3 -13
  5. package/dist/SS12000/to/teachers.js.map +1 -1
  6. package/dist/Skola24/from/assert-week-overlap.js.map +1 -1
  7. package/dist/Skola24/from/course-and-events.d.ts +9 -0
  8. package/dist/Skola24/from/course-and-events.js +340 -0
  9. package/dist/Skola24/from/course-and-events.js.map +1 -0
  10. package/dist/Skola24/from/course-events.js +43 -4
  11. package/dist/Skola24/from/course-events.js.map +1 -1
  12. package/dist/Skola24/from/courses.d.ts +10 -4
  13. package/dist/Skola24/from/courses.js +81 -43
  14. package/dist/Skola24/from/courses.js.map +1 -1
  15. package/dist/Skola24/from/events.d.ts +11 -0
  16. package/dist/Skola24/from/events.js +146 -0
  17. package/dist/Skola24/from/events.js.map +1 -0
  18. package/dist/Skola24/from/filter-on-period.d.ts +7 -0
  19. package/dist/Skola24/from/filter-on-period.js +24 -0
  20. package/dist/Skola24/from/filter-on-period.js.map +1 -0
  21. package/dist/Skola24/from/groups.d.ts +2 -2
  22. package/dist/Skola24/from/groups.js +4 -4
  23. package/dist/Skola24/from/groups.js.map +1 -1
  24. package/dist/Skola24/from/index.js.map +1 -1
  25. package/dist/Skola24/from/locations.d.ts +2 -2
  26. package/dist/Skola24/from/locations.js +3 -3
  27. package/dist/Skola24/from/locations.js.map +1 -1
  28. package/dist/Skola24/from/schedule.d.ts +4 -3
  29. package/dist/Skola24/from/schedule.js +101 -35
  30. package/dist/Skola24/from/schedule.js.map +1 -1
  31. package/dist/Skola24/from/teachers.d.ts +2 -2
  32. package/dist/Skola24/from/teachers.js +3 -3
  33. package/dist/Skola24/from/teachers.js.map +1 -1
  34. package/dist/Skola24/types/Course.d.ts +6 -0
  35. package/dist/Skola24/types/Course.js +6 -0
  36. package/dist/Skola24/types/Course.js.map +1 -0
  37. package/dist/Skola24/types/Group-group-link.d.ts +4 -0
  38. package/dist/Skola24/types/Group-group-link.js +6 -0
  39. package/dist/Skola24/types/Group-group-link.js.map +1 -0
  40. package/dist/Skola24/types/Group-student-link.d.ts +4 -0
  41. package/dist/Skola24/types/Group-student-link.js +6 -0
  42. package/dist/Skola24/types/Group-student-link.js.map +1 -0
  43. package/dist/Skola24/types/Group.d.ts +5 -0
  44. package/dist/Skola24/types/Group.js +6 -0
  45. package/dist/Skola24/types/Group.js.map +1 -0
  46. package/dist/Skola24/types/Lesson-group-link.d.ts +4 -0
  47. package/dist/Skola24/types/Lesson-group-link.js +6 -0
  48. package/dist/Skola24/types/Lesson-group-link.js.map +1 -0
  49. package/dist/Skola24/types/Lesson-period-link.d.ts +4 -0
  50. package/dist/Skola24/types/Lesson-period-link.js +6 -0
  51. package/dist/Skola24/types/Lesson-period-link.js.map +1 -0
  52. package/dist/Skola24/types/Lesson-room-link.d.ts +4 -0
  53. package/dist/Skola24/types/Lesson-room-link.js +6 -0
  54. package/dist/Skola24/types/Lesson-room-link.js.map +1 -0
  55. package/dist/Skola24/types/Lesson-teacher-link.d.ts +4 -0
  56. package/dist/Skola24/types/Lesson-teacher-link.js +6 -0
  57. package/dist/Skola24/types/Lesson-teacher-link.js.map +1 -0
  58. package/dist/Skola24/types/Lesson.d.ts +9 -0
  59. package/dist/Skola24/types/Lesson.js +6 -0
  60. package/dist/Skola24/types/Lesson.js.map +1 -0
  61. package/dist/Skola24/types/Meta.d.ts +7 -0
  62. package/dist/Skola24/types/Meta.js +6 -0
  63. package/dist/Skola24/types/Meta.js.map +1 -0
  64. package/dist/Skola24/types/Period.d.ts +5 -0
  65. package/dist/Skola24/types/Period.js +6 -0
  66. package/dist/Skola24/types/Period.js.map +1 -0
  67. package/dist/Skola24/types/Plan-group-link.d.ts +4 -0
  68. package/dist/Skola24/types/Plan-group-link.js +6 -0
  69. package/dist/Skola24/types/Plan-group-link.js.map +1 -0
  70. package/dist/Skola24/types/Plan-period-link.d.ts +4 -0
  71. package/dist/Skola24/types/Plan-period-link.js +6 -0
  72. package/dist/Skola24/types/Plan-period-link.js.map +1 -0
  73. package/dist/Skola24/types/Plan-teacher-link.d.ts +6 -0
  74. package/dist/Skola24/types/Plan-teacher-link.js +6 -0
  75. package/dist/Skola24/types/Plan-teacher-link.js.map +1 -0
  76. package/dist/Skola24/types/Plan.d.ts +5 -0
  77. package/dist/Skola24/types/Plan.js +6 -0
  78. package/dist/Skola24/types/Plan.js.map +1 -0
  79. package/dist/Skola24/types/Room.d.ts +5 -0
  80. package/dist/Skola24/types/Room.js +6 -0
  81. package/dist/Skola24/types/Room.js.map +1 -0
  82. package/dist/Skola24/types/Schedule.d.ts +34 -0
  83. package/dist/Skola24/types/Schedule.js +6 -0
  84. package/dist/Skola24/types/Schedule.js.map +1 -0
  85. package/dist/Skola24/types/Subject.d.ts +4 -0
  86. package/dist/Skola24/types/Subject.js +6 -0
  87. package/dist/Skola24/types/Subject.js.map +1 -0
  88. package/dist/Skola24/types/Teacher.d.ts +6 -0
  89. package/dist/Skola24/types/Teacher.js +6 -0
  90. package/dist/Skola24/types/Teacher.js.map +1 -0
  91. package/dist/Skola24_old/from/assert-week-overlap.d.ts +1 -0
  92. package/dist/Skola24_old/from/assert-week-overlap.js +28 -0
  93. package/dist/Skola24_old/from/assert-week-overlap.js.map +1 -0
  94. package/dist/Skola24_old/from/course-events.d.ts +6 -0
  95. package/dist/Skola24_old/from/course-events.js +127 -0
  96. package/dist/Skola24_old/from/course-events.js.map +1 -0
  97. package/dist/Skola24_old/from/courses.d.ts +5 -0
  98. package/dist/Skola24_old/from/courses.js +55 -0
  99. package/dist/Skola24_old/from/courses.js.map +1 -0
  100. package/dist/Skola24_old/from/groups.d.ts +3 -0
  101. package/dist/Skola24_old/from/groups.js +14 -0
  102. package/dist/Skola24_old/from/groups.js.map +1 -0
  103. package/dist/Skola24_old/from/index.d.ts +4 -0
  104. package/dist/Skola24_old/from/index.js +20 -0
  105. package/dist/Skola24_old/from/index.js.map +1 -0
  106. package/dist/Skola24_old/from/locations.d.ts +3 -0
  107. package/dist/Skola24_old/from/locations.js +14 -0
  108. package/dist/Skola24_old/from/locations.js.map +1 -0
  109. package/dist/Skola24_old/from/schedule.d.ts +3 -0
  110. package/dist/Skola24_old/from/schedule.js +68 -0
  111. package/dist/Skola24_old/from/schedule.js.map +1 -0
  112. package/dist/Skola24_old/from/teachers.d.ts +3 -0
  113. package/dist/Skola24_old/from/teachers.js +14 -0
  114. package/dist/Skola24_old/from/teachers.js.map +1 -0
  115. package/dist/Skola24_old/index.d.ts +4 -0
  116. package/dist/Skola24_old/index.js +20 -0
  117. package/dist/Skola24_old/index.js.map +1 -0
  118. package/dist/Skola24_old/types/TA-group-link.d.ts +4 -0
  119. package/dist/Skola24_old/types/TA-group-link.js +6 -0
  120. package/dist/Skola24_old/types/TA-group-link.js.map +1 -0
  121. package/dist/Skola24_old/types/TA-teacher-link.d.ts +4 -0
  122. package/dist/Skola24_old/types/TA-teacher-link.js +6 -0
  123. package/dist/Skola24_old/types/TA-teacher-link.js.map +1 -0
  124. package/dist/Skola24_old/types/TA.d.ts +8 -0
  125. package/dist/Skola24_old/types/TA.js +6 -0
  126. package/dist/Skola24_old/types/TA.js.map +1 -0
  127. package/dist/Skola24_old/types/group-student-link.d.ts +4 -0
  128. package/dist/Skola24_old/types/group-student-link.js +6 -0
  129. package/dist/Skola24_old/types/group-student-link.js.map +1 -0
  130. package/dist/Skola24_old/types/group.d.ts +4 -0
  131. package/dist/Skola24_old/types/group.js +6 -0
  132. package/dist/Skola24_old/types/group.js.map +1 -0
  133. package/dist/Skola24_old/types/lesson-group-link.d.ts +4 -0
  134. package/dist/Skola24_old/types/lesson-group-link.js +6 -0
  135. package/dist/Skola24_old/types/lesson-group-link.js.map +1 -0
  136. package/dist/Skola24_old/types/lesson-room-link.d.ts +4 -0
  137. package/dist/Skola24_old/types/lesson-room-link.js +6 -0
  138. package/dist/Skola24_old/types/lesson-room-link.js.map +1 -0
  139. package/dist/Skola24_old/types/lesson-teacher-link.d.ts +4 -0
  140. package/dist/Skola24_old/types/lesson-teacher-link.js +6 -0
  141. package/dist/Skola24_old/types/lesson-teacher-link.js.map +1 -0
  142. package/dist/Skola24_old/types/lesson.d.ts +9 -0
  143. package/dist/Skola24_old/types/lesson.js +6 -0
  144. package/dist/Skola24_old/types/lesson.js.map +1 -0
  145. package/dist/Skola24_old/types/room.d.ts +4 -0
  146. package/dist/Skola24_old/types/room.js +6 -0
  147. package/dist/Skola24_old/types/room.js.map +1 -0
  148. package/dist/Skola24_old/types/schedule.d.ts +24 -0
  149. package/dist/Skola24_old/types/schedule.js +6 -0
  150. package/dist/Skola24_old/types/schedule.js.map +1 -0
  151. package/dist/Skola24_old/types/teacher.d.ts +5 -0
  152. package/dist/Skola24_old/types/teacher.js +6 -0
  153. package/dist/Skola24_old/types/teacher.js.map +1 -0
  154. package/dist/core/types/divisions.d.ts +2 -2
  155. package/dist/core/types/index.d.ts +2 -0
  156. package/dist/core/types/meta.d.ts +4 -0
  157. package/dist/core/types/meta.js +6 -0
  158. package/dist/core/types/meta.js.map +1 -0
  159. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"schedule.js","mappings":";;;;;;;AAEA;;AACA;;AACA;;AACA;;AACA;;;;AAMc,kBACZA,QADY,EAEZC,IAFY,EAEC;AAMb,MAAIC,KAAK,GAAa,EAAtB;;AACA,MAAID,IAAI,IAAIA,IAAI,CAACE,KAAb,IAAsBF,IAAI,CAACG,GAA/B,EAAoC;AAClC,QAAIC,SAAS,GAAIJ,IAAI,CAACE,KAAL,CAA6BG,GAA7B,CAAiC,GAAjC,CAAjB;AACA,QAAIC,OAAO,GAAMN,IAAI,CAACG,GAAL,CAA6BE,GAA7B,CAAiC,GAAjC,CAAjB;AAEA,QAAID,SAAS,GAAGE,OAAhB,EACE,MAAM,2CAA2CF,SAA3C,GAAuD,OAAvD,GAAiEE,OAAvE;;AAEF,SAAK,IAAIC,CAAC,GAAGH,SAAb,EAAwBG,CAAC,IAAID,OAA7B,EAAsCC,CAAC,EAAvC;AACEN,WAAK,CAACO,IAAN,CAAWD,CAAX;AADF;AAED,GATD,MASO;AAEL,SAAK,IAAIA,EAAC,GAAG,CAAb,EAAgBA,EAAC,IAAI,EAArB,EAAyBA,EAAC,EAA1B;AACEN,WAAK,CAACO,IAAN,CAAWD,EAAX;AADF;AAED;;AAKD,MAAME,SAAS,GAAG,yBAAWV,QAAQ,CAACW,IAApB,CAAlB;AACA,MAAMC,QAAQ,GAAI,wBAAUZ,QAAQ,CAACa,OAAnB,CAAlB;AACA,MAAMC,MAAM,GAAM,sBAAQd,QAAQ,CAACe,KAAjB,CAAlB;AAKA,MAAIC,OAAO,GAAGF,MAAM,CAACG,GAAP,CAAWC,CAAC,IAAIA,CAAC,CAACC,GAAlB,CAAd;AACA,MAAIC,eAAe,GAAG,IAAIC,GAAJ,EAAtB;AACArB,UAAQ,CAACsB,aAAT,CAAuBC,OAAvB,CAA+BL,CAAC,IAAG;AAEjC,QAAIF,OAAO,CAACQ,QAAR,CAAiBN,CAAC,CAACO,KAAnB,CAAJ,EACEL,eAAe,CAACM,GAAhB,CAAoBR,CAAC,CAACS,OAAtB,EAA+BT,CAAC,CAACO,KAAjC;AACH,GAJD;AAMA,MAAIG,eAAe,GAAG,IAAIP,GAAJ,EAAtB;AACArB,UAAQ,CAACsB,aAAT,CAAuBC,OAAvB,CAA+BL,CAAC,IAAG;AAEjC,QAAIE,eAAe,CAACS,GAAhB,CAAoBX,CAAC,CAACS,OAAtB,CAAJ,EAAoC;AAClC,UAAIG,MAAM,GAAGV,eAAe,CAACd,GAAhB,CAAoBY,CAAC,CAACS,OAAtB,CAAb;;AAGA,UAAK,CAAEC,eAAe,CAACC,GAAhB,CAAoBX,CAAC,CAACO,KAAtB,CAAP,EACEG,eAAe,CAACF,GAAhB,CAAoBR,CAAC,CAACO,KAAtB,EAA6B,IAAIM,GAAJ,EAA7B;AAGFH,qBAAe,CAACtB,GAAhB,CAAoBY,CAAC,CAACO,KAAtB,EAA8BO,GAA9B,CAAkCF,MAAlC;AACD,KATD,MAUE,MAAM,2CAA2CZ,CAAC,CAACS,OAAnD;AACH,GAbD;AAoBA,MAAM,CAACM,OAAD,EAAUC,cAAV,IAA4B,uBAASlC,QAAQ,CAACmC,EAAlB,EACSnC,QAAQ,CAACoC,UADlB,EAESpC,QAAQ,CAACqC,QAFlB,EAGST,eAHT,EAISd,MAJT,EAKSZ,KALT,CAAlC;AAMA,MAAMoC,MAAM,GAAG,4BAActC,QAAQ,CAACuC,MAAvB,EACoBvC,QAAQ,CAACwC,cAD7B,EAEoBxC,QAAQ,CAACyC,YAF7B,EAGoBzC,QAAQ,CAAC0C,WAH7B,EAIoBd,eAJpB,EAKoBd,MALpB,EAMoBoB,cANpB,EAOoBhC,KAPpB,CAAf;AASA,SAAO;AAAEQ,aAAF;AAAaE,YAAb;AAAuBE,UAAvB;AAA+BmB,WAA/B;AAAwCK;AAAxC,GAAP;AACD","names":["schedule","meta","weeks","start","end","startWeek","get","endWeek","w","push","locations","room","teachers","teacher","groups","group","classes","map","x","ids","studentClassMap","Map","group_student","forEach","includes","Group","set","Student","groupClassesMap","has","_class","Set","add","courses","groupCourseMap","ta","ta_teacher","ta_group","events","lesson","lesson_teacher","lesson_group","lesson_room"],"sourceRoot":"","sources":["../../../src/Skola24/from/schedule.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"schedule.js","mappings":"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","names":["src","meta","warnings","errors","week","undefined","push","groupMap","Map","school_tblgroup","forEach","x","set","PK","courseMap","school_tblcourse","planMap","school_tblplan","subjectMap","school_tblsubject","ID","planTeachersMap","school_tblplan_teacher","has","FKPlan","Set","get","add","FKTeacher","toString","planGroupsMap","school_tblplan_group","FKGroup","groupPlansMap","lessonRoomsMap","school_tblschedule_room","FKSchedule","FKRoom","lessonTeachersMap","school_tblschedule_teacher","lessonGroupsMap","school_tblschedule_group","groupClassesMap","school_tblgroup_group","FKGroupCon","locations","unit_tblroom","teachers","school_tblteacher","groups","courses","events","school_tblschedule","removeUnreferencedTeachers","unreferencedTeacherSet","map","t","ids","e","delete","c","filter","removeUnreferencedGroups","unreferencedGroupSet","g","length"],"sourceRoot":"","sources":["../../../src/Skola24/from/schedule.ts"],"sourcesContent":[null]}
@@ -1,3 +1,3 @@
1
- import { Teacher } from '../types/teacher';
2
1
  import { Types } from '../../core/types';
3
- export default function (teachers: Teacher[]): Types.teacher[];
2
+ import { Teacher } from '../types/Teacher';
3
+ export default function (teachers: Teacher[], warnings: string[], errors: string[]): Types.teacher[];
@@ -5,10 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = _default;
7
7
 
8
- function _default(teachers) {
8
+ function _default(teachers, warnings, errors) {
9
9
  return teachers.map(x => ({
10
- ids: x.Teacher,
11
- displayName: x.FirstName + " " + x.LastName
10
+ ids: x.PK.toString(),
11
+ displayName: x.FirstName && x.LastName ? x.FirstName + " " + x.LastName : x.ID
12
12
  }));
13
13
  }
14
14
  //# sourceMappingURL=teachers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"teachers.js","mappings":";;;;;;;AAGc,kBACZA,QADY,EACO;AAEnB,SAAOA,QAAQ,CAACC,GAAT,CAAaC,CAAC,KAAK;AACxBC,OAAG,EAAUD,CAAC,CAACE,OADS;AAExBC,eAAW,EAAEH,CAAC,CAACI,SAAF,GAAc,GAAd,GAAoBJ,CAAC,CAACK;AAFX,GAAL,CAAd,CAAP;AAID","names":["teachers","map","x","ids","Teacher","displayName","FirstName","LastName"],"sourceRoot":"","sources":["../../../src/Skola24/from/teachers.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"teachers.js","mappings":";;;;;;;AAIc,kBACZA,QADY,EAEZC,QAFY,EAGZC,MAHY,EAGM;AAGlB,SAAOF,QAAQ,CAACG,GAAT,CAAaC,CAAC,KAAK;AACxBC,OAAG,EAAUD,CAAC,CAACE,EAAF,CAAKC,QAAL,EADW;AAExBC,eAAW,EAAEJ,CAAC,CAACK,SAAF,IAAeL,CAAC,CAACM,QAAjB,GAA4BN,CAAC,CAACK,SAAF,GAAc,GAAd,GAAoBL,CAAC,CAACM,QAAlD,GAA6DN,CAAC,CAACO;AAFpD,GAAL,CAAd,CAAP;AAID","names":["teachers","warnings","errors","map","x","ids","PK","toString","displayName","FirstName","LastName","ID"],"sourceRoot":"","sources":["../../../src/Skola24/from/teachers.ts"],"sourcesContent":[null]}
@@ -0,0 +1,6 @@
1
+ export interface Course {
2
+ PK: number;
3
+ ID: string;
4
+ Name: string;
5
+ FKSubject: number;
6
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Course.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Course.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface GroupGroupLink {
2
+ FKGroup: number;
3
+ FKGroupCon: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Group-group-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Group-group-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface GroupStudentLink {
2
+ Group: string;
3
+ Student: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Group-student-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Group-student-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,5 @@
1
+ export interface Group {
2
+ PK: number;
3
+ ID: string;
4
+ bClass: boolean;
5
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Group.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface LessonGroupLink {
2
+ FKSchedule: number;
3
+ FKGroup: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Lesson-group-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Lesson-group-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface LessonPeriodLink {
2
+ FKSchedule: number;
3
+ FKPeriod: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Lesson-period-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Lesson-period-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface LessonRoomLink {
2
+ FKSchedule: number;
3
+ FKRoom: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Lesson-room-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Lesson-room-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface LessonTeacherLink {
2
+ FKSchedule: number;
3
+ FKTeacher: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Lesson-teacher-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Lesson-teacher-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,9 @@
1
+ export interface Lesson {
2
+ PK: number;
3
+ Length: number;
4
+ StartTime?: string;
5
+ DayOfWeek?: number;
6
+ FKCourse?: number;
7
+ FKSubject?: number;
8
+ CalcActualWeeks?: string;
9
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Lesson.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Lesson.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,7 @@
1
+ export interface Meta {
2
+ week?: number;
3
+ ignoreEmptyCourses?: boolean;
4
+ deduceGroupsFromCourseName?: boolean;
5
+ removeUnreferencedTeachers?: boolean;
6
+ removeUnreferencedGroups?: boolean;
7
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Meta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Meta.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,5 @@
1
+ export interface Period {
2
+ FKPeriod: number;
3
+ StartDate: string;
4
+ EndDate: string;
5
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Period.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Period.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface PlanGroupLink {
2
+ FKPlan: number;
3
+ FKGroup: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Plan-group-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Plan-group-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface PlanPeriodLink {
2
+ FKPlan: number;
3
+ FKPeriod: number;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Plan-period-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Plan-period-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,6 @@
1
+ export interface PlanTeacherLink {
2
+ PK: number;
3
+ FKPlan: number;
4
+ FKTeacher: number;
5
+ bSetMark: number;
6
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Plan-teacher-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Plan-teacher-link.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,5 @@
1
+ export interface Plan {
2
+ PK: number;
3
+ FKCourse: number;
4
+ FKSubject: number;
5
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Plan.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,5 @@
1
+ export interface Room {
2
+ PK: number;
3
+ ID: string;
4
+ Area?: string;
5
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Room.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Room.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,34 @@
1
+ import { Period } from './Period';
2
+ import { Room } from './Room';
3
+ import { Subject } from './Subject';
4
+ import { Teacher } from './Teacher';
5
+ import { Group } from './Group';
6
+ import { Plan } from './Plan';
7
+ import { Course } from './Course';
8
+ import { Lesson } from './Lesson';
9
+ import { GroupGroupLink } from './Group-group-link';
10
+ import { PlanPeriodLink } from './Plan-period-link';
11
+ import { PlanTeacherLink } from './Plan-teacher-link';
12
+ import { PlanGroupLink } from './Plan-group-link';
13
+ import { LessonPeriodLink } from './Lesson-period-link';
14
+ import { LessonRoomLink } from './Lesson-room-link';
15
+ import { LessonTeacherLink } from './Lesson-teacher-link';
16
+ import { LessonGroupLink } from './Lesson-group-link';
17
+ export interface Schedule {
18
+ unit_tblperiod_date: Period[];
19
+ unit_tblroom: Room[];
20
+ school_tblsubject: Subject[];
21
+ school_tblteacher: Teacher[];
22
+ school_tblgroup: Group[];
23
+ school_tblplan: Plan[];
24
+ school_tblcourse: Course[];
25
+ school_tblschedule: Lesson[];
26
+ school_tblgroup_group: GroupGroupLink[];
27
+ school_tblplan_period: PlanPeriodLink[];
28
+ school_tblplan_teacher: PlanTeacherLink[];
29
+ school_tblplan_group: PlanGroupLink[];
30
+ school_tblschedule_period: LessonPeriodLink[];
31
+ school_tblschedule_room: LessonRoomLink[];
32
+ school_tblschedule_teacher: LessonTeacherLink[];
33
+ school_tblschedule_group: LessonGroupLink[];
34
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Schedule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Schedule.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,4 @@
1
+ export interface Subject {
2
+ PK: number;
3
+ ID: string;
4
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Subject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Subject.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1,6 @@
1
+ export interface Teacher {
2
+ PK: number;
3
+ ID: string;
4
+ FirstName?: string;
5
+ LastName?: string;
6
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=Teacher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Teacher.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -0,0 +1 @@
1
+ export declare function assertWeekOverlap(_actualWeeks: string, scheduleWeeks: number[]): boolean;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.assertWeekOverlap = assertWeekOverlap;
7
+
8
+ function parseActualWeeks(input) {
9
+ var weeks = [];
10
+ input.split(",").forEach(x => {
11
+ if (x.includes("-")) {
12
+ var [start, end] = x.split("-");
13
+
14
+ for (var i = parseInt(start); i <= parseInt(end); i++) {
15
+ weeks.push(i);
16
+ }
17
+ } else {
18
+ weeks.push(parseInt(x));
19
+ }
20
+ });
21
+ return weeks;
22
+ }
23
+
24
+ function assertWeekOverlap(_actualWeeks, scheduleWeeks) {
25
+ var actualWeeks = parseActualWeeks(_actualWeeks);
26
+ return !!actualWeeks.filter(w => scheduleWeeks.includes(w)).length;
27
+ }
28
+ //# sourceMappingURL=assert-week-overlap.js.map
@@ -0,0 +1 @@
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_old/from/assert-week-overlap.ts"],"sourcesContent":[null]}
@@ -0,0 +1,6 @@
1
+ import { Lesson } from '../types/lesson';
2
+ import { LessonTeacherLink } from '../types/lesson-teacher-link';
3
+ import { LessonGroupLink } from '../types/lesson-group-link';
4
+ import { LessonRoomLink } from '../types/lesson-room-link';
5
+ import { Types } from '../../core/types';
6
+ export default function (lesson: Lesson[], lessonTeacherLinks: LessonTeacherLink[], lessonGroupLinks: LessonGroupLink[], lessonRoomLinks: LessonRoomLink[], groupClassesMap: Map<string, Set<string>>, classes: Types.group[], groupCourseMap: Map<string, Types.course>, weeks: number[]): Types.courseEvent[];
@@ -0,0 +1,127 @@
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
+ var _assertWeekOverlap = require("./assert-week-overlap");
11
+
12
+ function _interopRequireDefault(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+
18
+ function ownKeys(object, enumerableOnly) {
19
+ var keys = Object.keys(object);
20
+
21
+ if (Object.getOwnPropertySymbols) {
22
+ var symbols = Object.getOwnPropertySymbols(object);
23
+ enumerableOnly && (symbols = symbols.filter(function (sym) {
24
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
25
+ })), keys.push.apply(keys, symbols);
26
+ }
27
+
28
+ return keys;
29
+ }
30
+
31
+ function _objectSpread(target) {
32
+ for (var i = 1; i < arguments.length; i++) {
33
+ var source = null != arguments[i] ? arguments[i] : {};
34
+ i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
35
+ _defineProperty(target, key, source[key]);
36
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
37
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
38
+ });
39
+ }
40
+
41
+ return target;
42
+ }
43
+
44
+ function _defineProperty(obj, key, value) {
45
+ if (key in obj) {
46
+ Object.defineProperty(obj, key, {
47
+ value: value,
48
+ enumerable: true,
49
+ configurable: true,
50
+ writable: true
51
+ });
52
+ } else {
53
+ obj[key] = value;
54
+ }
55
+
56
+ return obj;
57
+ }
58
+
59
+ var startAndEnd = function startAndEnd(lesson) {
60
+ if ("Length" in lesson && "DayOfWeek" in lesson && "Starttime" in lesson) {
61
+ var d = lesson.DayOfWeek;
62
+ var hm = lesson.Starttime.split(":");
63
+
64
+ var start = _moment.default.utc("1970-01-05").add(d, "days").add(hm[0], "hours").add(hm.length == 2 ? hm[1] : 0, "minutes");
65
+
66
+ var end = start.clone().add(lesson.Length, "minute");
67
+ return {
68
+ start: start,
69
+ end: end,
70
+ parked: false
71
+ };
72
+ } else {
73
+ return {};
74
+ }
75
+ };
76
+
77
+ function _default(lesson, lessonTeacherLinks, lessonGroupLinks, lessonRoomLinks, groupClassesMap, classes, groupCourseMap, weeks) {
78
+ var courseEvents = lesson.filter(x => (0, _assertWeekOverlap.assertWeekOverlap)(x.ActualWeeks, weeks)).map(x => _objectSpread({
79
+ ids: x.Lesson.toString(),
80
+ displayName: x.Course || x.Subject,
81
+ duration: x.Length
82
+ }, startAndEnd(x)));
83
+ courseEvents.forEach(x => {
84
+ var teachers = lessonTeacherLinks.filter(y => y.Lesson == parseInt(x.ids)).map(y => y.Teacher);
85
+ if (teachers.length) x.teachers = teachers;
86
+ });
87
+ courseEvents.forEach(x => {
88
+ var groups = lessonGroupLinks.filter(y => y.Lesson == parseInt(x.ids)).map(y => y.Group);
89
+
90
+ if (groups.length == 1) {
91
+ var group = groups[0];
92
+
93
+ if (classes.map(x => x.ids).includes(group)) {
94
+ x.groups = groups;
95
+ } else {
96
+ if (groupClassesMap.has(group)) {
97
+ x.groups = [...groupClassesMap.get(group)];
98
+ x.displayName = group;
99
+ }
100
+ }
101
+ } else if (groups.length > 1) {
102
+ var groupSet = new Set();
103
+ groups.forEach(group => {
104
+ if (groupClassesMap.has(group)) groupClassesMap.get(group).forEach(groupSet.add, groupSet);
105
+ });
106
+ if (groupSet.size) x.groups = [...groupSet];
107
+ }
108
+ });
109
+ courseEvents.forEach(x => {
110
+ var rooms = lessonRoomLinks.filter(y => y.Lesson == parseInt(x.ids)).map(y => y.Room);
111
+
112
+ if (rooms.length) {
113
+ x.inLocations = rooms;
114
+ x.locations = rooms.map((y, i) => ({
115
+ locations: [y],
116
+ groupIndex: i
117
+ }));
118
+ }
119
+ });
120
+ var unknownCourseCounter = 1;
121
+ courseEvents.forEach(x => {
122
+ var groups = lessonGroupLinks.filter(y => y.Lesson == parseInt(x.ids)).map(y => y.Group);
123
+ if (groups.length == 1 && groupCourseMap.has(groups[0])) x.course = groupCourseMap.get(groups[0]).ids;else x.course = "unknown course " + unknownCourseCounter++;
124
+ });
125
+ return courseEvents;
126
+ }
127
+ //# sourceMappingURL=course-events.js.map