@royalschedule/maps 2.2.39 → 2.2.42

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 (37) hide show
  1. package/dist/SchoolSoft/api/from/schedules.js +21 -5
  2. package/dist/SchoolSoft/api/from/schedules.js.map +1 -1
  3. package/dist/SchoolSoft/api/types/index.d.ts +2 -0
  4. package/dist/SchoolSoft/api/types/lesson.d.ts +4 -0
  5. package/dist/SchoolSoft/api/types/lesson.js +6 -0
  6. package/dist/SchoolSoft/api/types/lesson.js.map +1 -0
  7. package/dist/SchoolSoft/api/types/schedule.d.ts +2 -0
  8. package/dist/SchoolSoft/file/to/schedules.js +4 -3
  9. package/dist/SchoolSoft/file/to/schedules.js.map +1 -1
  10. package/dist/core/constants/index.d.ts +49 -0
  11. package/dist/core/constants/index.js +88 -0
  12. package/dist/core/constants/index.js.map +1 -0
  13. package/dist/core/identify/index.d.ts +1 -13
  14. package/dist/core/identify/index.js +14 -118
  15. package/dist/core/identify/index.js.map +1 -1
  16. package/dist/core/index.d.ts +1 -0
  17. package/dist/core/index.js +17 -0
  18. package/dist/core/index.js.map +1 -1
  19. package/dist/core/types/identify.d.ts +10 -0
  20. package/dist/core/types/identify.js +6 -0
  21. package/dist/core/types/identify.js.map +1 -0
  22. package/dist/core/types/index.d.ts +4 -0
  23. package/dist/index.d.ts +1 -1
  24. package/dist/index.js +13 -13
  25. package/dist/vKlass/from/index.d.ts +4 -0
  26. package/dist/vKlass/from/index.js +16 -0
  27. package/dist/vKlass/from/index.js.map +1 -0
  28. package/dist/vKlass/from/schedule.d.ts +3 -0
  29. package/dist/vKlass/from/schedule.js +87 -0
  30. package/dist/vKlass/from/schedule.js.map +1 -0
  31. package/dist/vKlass/index.d.ts +4 -0
  32. package/dist/vKlass/index.js +16 -0
  33. package/dist/vKlass/index.js.map +1 -0
  34. package/dist/vKlass/types/index.d.ts +40 -0
  35. package/dist/vKlass/types/index.js +6 -0
  36. package/dist/vKlass/types/index.js.map +1 -0
  37. package/package.json +1 -1
@@ -40,7 +40,7 @@ var _default = data => {
40
40
  ids: x.id,
41
41
  displayName: x.name
42
42
  });
43
- x.studentid.split(sep).forEach(id => {
43
+ x.studentid.split(sep).filter(x => x).forEach(id => {
44
44
  if (studentGroupMap.has(id)) {
45
45
  errors.push("The student with id \"".concat(id, "\" does already belong to a different group."));
46
46
  return;
@@ -49,12 +49,18 @@ var _default = data => {
49
49
  studentGroupMap.set(id, x.id);
50
50
  });
51
51
  });
52
+ var groupSubjectMap = new Map();
53
+ data.lessons.forEach(x => {
54
+ if (x.subject) {
55
+ groupSubjectMap.set(x.group, x.subject);
56
+ }
57
+ });
52
58
  var courses = [];
53
59
  data.groups.forEach(x => {
54
60
  if (x.active != '1') return;
55
61
  if (x.classtype == '1') return;
56
62
  var groupSet = new Set();
57
- x.studentid.split(sep).map(id => {
63
+ x.studentid.split(sep).filter(x => x).map(id => {
58
64
  if (!studentGroupMap.has(id)) {
59
65
  errors.push("The student with id \"".concat(id, "\" does not belong to a group."));
60
66
  return;
@@ -63,7 +69,7 @@ var _default = data => {
63
69
  groupSet.add(studentGroupMap.get(id));
64
70
  });
65
71
  var teacherSet = new Set();
66
- x.teacher.split(sep).map(initial => {
72
+ x.teacher.split(sep).filter(x => x).map(initial => {
67
73
  if (!initialTeacherMap.has(initial)) {
68
74
  errors.push("The teacher with initial \"".concat(initial, "\" does not exist."));
69
75
  return;
@@ -71,12 +77,22 @@ var _default = data => {
71
77
 
72
78
  teacherSet.add(initialTeacherMap.get(initial).ids);
73
79
  });
74
- courses.push({
80
+ var subject = '';
81
+
82
+ if (groupSubjectMap.has(x.name)) {
83
+ subject = groupSubjectMap.get(x.name);
84
+ } else {
85
+ warnings.push("Could not determine the subject of the course \"".concat(x.name, "\" (").concat(x.id, ")."));
86
+ }
87
+
88
+ courses.push(_objectSpread({
75
89
  ids: x.id,
76
90
  displayName: x.name,
77
91
  groups: [...groupSet],
78
92
  teachers: [...teacherSet]
79
- });
93
+ }, subject && {
94
+ subject
95
+ }));
80
96
  });
81
97
  var teachers = [...initialTeacherMap.values()];
82
98
  var events = [];
@@ -1 +1 @@
1
- {"version":3,"file":"schedules.js","mappings":"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","names":["sep","data","errors","warnings","locations","forEach","x","push","ids","id","displayName","name","initialTeacherMap","Map","teachers","active","set","initial","fname","lname","groups","studentGroupMap","classtype","studentid","split","has","courses","groupSet","Set","map","add","get","teacherSet","teacher","values","events","meta","length"],"sourceRoot":"","sources":["../../../../src/SchoolSoft/api/from/schedules.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"schedules.js","mappings":"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","names":["sep","data","errors","warnings","locations","forEach","x","push","ids","id","displayName","name","initialTeacherMap","Map","teachers","active","set","initial","fname","lname","groups","studentGroupMap","classtype","studentid","split","filter","has","groupSubjectMap","lessons","subject","group","courses","groupSet","Set","map","add","get","teacherSet","teacher","values","events","meta","length"],"sourceRoot":"","sources":["../../../../src/SchoolSoft/api/from/schedules.ts"],"sourcesContent":[null]}
@@ -1,10 +1,12 @@
1
1
  import { Location } from './location';
2
2
  import { Teacher } from './teacher';
3
3
  import { Group } from './group';
4
+ import { Lesson } from './lesson';
4
5
  import { Schedule } from './schedule';
5
6
  export declare type Types = {
6
7
  Location: Location;
7
8
  Teacher: Teacher;
8
9
  Group: Group;
10
+ Lesson: Lesson;
9
11
  Schedule: Schedule;
10
12
  };
@@ -0,0 +1,4 @@
1
+ export declare type Lesson = {
2
+ subject: string;
3
+ group: string;
4
+ };
@@ -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":[]}
@@ -1,8 +1,10 @@
1
1
  import { Location } from "./location";
2
2
  import { Teacher } from "./teacher";
3
3
  import { Group } from "./group";
4
+ import { Lesson } from "./lesson";
4
5
  export declare type Schedule = {
5
6
  locations: Location[];
6
7
  teachers: Teacher[];
7
8
  groups: Group[];
9
+ lessons: Lesson[];
8
10
  };
@@ -20,18 +20,19 @@ var _default = (courseEvents, options) => {
20
20
  end
21
21
  } = options.interval;
22
22
 
23
- var diff = _moment.default.duration((0, _moment.default)(start).diff((0, _moment.default)(end)));
23
+ var diff = _moment.default.duration((0, _moment.default)(end).diff((0, _moment.default)(start)));
24
24
 
25
- inweek = Array(diff.weeks()).fill((0, _moment.default)(start).week()).map((val, index) => val + index).join(',');
25
+ inweek = Array(Math.ceil(diff.asWeeks())).fill((0, _moment.default)(start).week()).map((val, index) => val + index).join(',');
26
26
  }
27
27
 
28
28
  var events = courseEvents.reduce((acc, event) => {
29
- var _event$course, _event$weeks$join, _event$weeks;
29
+ var _event$ids, _event$course, _event$weeks$join, _event$weeks;
30
30
 
31
31
  if (event.parked) return acc;
32
32
  var teachers = event.teachers == null ? event.course.teachers : event.teachers;
33
33
  var room = event.inLocations.filter(x => x !== null).map(locations => locations.ids).join(', ');
34
34
  return acc.concat({
35
+ id: (_event$ids = event.ids) !== null && _event$ids !== void 0 ? _event$ids : event.id,
35
36
  groupid: event.course.ids,
36
37
  dayid: _moment.default.utc(event.start).day() - 1,
37
38
  starttime: _moment.default.utc(event.start).format('HHmm'),
@@ -1 +1 @@
1
- {"version":3,"file":"schedules.js","mappings":";;;;;;;AAAA;;AACA;;;;eAUe,CAACA,YAAD,EAA8BC,OAA9B,KAAwG;AACrH,MAAIC,MAAM,GAAW,EAArB;;AAEA,MAAID,OAAJ,aAAIA,OAAJ,eAAIA,OAAO,CAAEE,QAAb,EAAuB;AACrB,QAAM;AAAEC,WAAF;AAASC;AAAT,QAAiBJ,OAAO,CAACE,QAA/B;;AACA,QAAMG,IAAI,GAAGC,gBAAOC,QAAP,CAAgB,qBAAOJ,KAAP,EAAcE,IAAd,CAAmB,qBAAOD,GAAP,CAAnB,CAAhB,CAAb;;AACAH,UAAM,GAAGO,KAAK,CAACH,IAAI,CAACI,KAAL,EAAD,CAAL,CAAoBC,IAApB,CAAyB,qBAAOP,KAAP,EAAcQ,IAAd,EAAzB,EAA+CC,GAA/C,CAAmD,CAACC,GAAD,EAAMC,KAAN,KAAgBD,GAAG,GAAGC,KAAzE,EAAgFC,IAAhF,CAAqF,GAArF,CAAT;AACD;;AAED,MAAIC,MAAM,GAAGjB,YAAY,CAACkB,MAAb,CAAoB,CAACC,GAAD,EAAeC,KAAf,KAAqC;AAAA;;AACpE,QAAIA,KAAK,CAACC,MAAV,EACE,OAAOF,GAAP;AAEF,QAAIG,QAAQ,GAAeF,KAAK,CAACE,QAAN,IAAkB,IAAlB,GAA0BF,KAAK,CAACG,MAAN,CAAyBD,QAAnD,GAA8DF,KAAK,CAACE,QAA/F;AAEA,QAAIE,IAAI,GAAmBJ,KAAK,CAACK,WAAN,CACkBC,MADlB,CAC0BC,CAAD,IAAYA,CAAC,KAAK,IAD3C,EAEkBd,GAFlB,CAEuBe,SAAD,IAAyBA,SAAS,CAACC,GAFzD,EAGkBb,IAHlB,CAGuB,IAHvB,CAA3B;AAKA,WAAOG,GAAG,CAACW,MAAJ,CAAW;AAChBC,aAAO,EAAIX,KAAK,CAACG,MAAN,CAAwBM,GADnB;AAEhBG,WAAK,EAAMzB,gBAAO0B,GAAP,CAAWb,KAAK,CAAChB,KAAjB,EAAwB8B,GAAxB,KAAgC,CAF3B;AAGhBC,eAAS,EAAE5B,gBAAO0B,GAAP,CAAWb,KAAK,CAAChB,KAAjB,EAAwBgC,MAAxB,CAA+B,MAA/B,CAHK;AAIhBC,YAAM,EAAK9B,gBAAO0B,GAAP,CAAWb,KAAK,CAACf,GAAjB,EAAsBC,IAAtB,CAA2BC,gBAAO0B,GAAP,CAAWb,KAAK,CAAChB,KAAjB,CAA3B,EAAoD,SAApD,CAJK;AAKhBkC,eAAS,EAAE,CAAChB,QAAQ,IAAI,EAAb,EAAiBT,GAAjB,CAAsB0B,OAAD,IAAsBA,OAAO,CAACV,GAAnD,EAAwDb,IAAxD,CAA6D,IAA7D,CALK;AAMhBwB,aAAO,mBAAKpB,KAAK,CAACG,MAAX,kDAAK,cAAyBiB,OANrB;AAOhBC,YAAM,EAAK,EAPK;AAQhBjB,UARgB;AAShBtB,YAAM,uCAAEkB,KAAK,CAACV,KAAR,iDAAE,aAAaM,IAAb,CAAkB,GAAlB,CAAF,iEAA4Bd;AATlB,KAAX,CAAP;AAWD,GAtBY,EAsBV,EAtBU,CAAb;;AAwBA,MAAIwC,EAAE,GAAGC,cAAKC,KAAL,CAAWC,QAAX,EAAT;;AAEAF,gBAAKC,KAAL,CAAWE,iBAAX,CAA6BJ,EAA7B,EAAiCC,cAAKC,KAAL,CAAWG,aAAX,CAAyB9B,MAAzB,CAAjC,EAAmE,uBAAnE;;AAEA,SAAOyB,EAAP;AACD,C","names":["courseEvents","options","inweek","interval","start","end","diff","moment","duration","Array","weeks","fill","week","map","val","index","join","events","reduce","acc","event","parked","teachers","course","room","inLocations","filter","x","locations","ids","concat","groupid","dayid","utc","day","starttime","format","length","teacherid","teacher","subject","exweek","wb","XLSX","utils","book_new","book_append_sheet","json_to_sheet"],"sourceRoot":"","sources":["../../../../src/SchoolSoft/file/to/schedules.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"schedules.js","mappings":";;;;;;;AAAA;;AACA;;;;eAUe,CAACA,YAAD,EAA8BC,OAA9B,KAAwG;AACrH,MAAIC,MAAM,GAAW,EAArB;;AAEA,MAAID,OAAJ,aAAIA,OAAJ,eAAIA,OAAO,CAAEE,QAAb,EAAuB;AACrB,QAAM;AAAEC,WAAF;AAASC;AAAT,QAAiBJ,OAAO,CAACE,QAA/B;;AACA,QAAMG,IAAI,GAAGC,gBAAOC,QAAP,CAAgB,qBAAOH,GAAP,EAAYC,IAAZ,CAAiB,qBAAOF,KAAP,CAAjB,CAAhB,CAAb;;AACAF,UAAM,GAAGO,KAAK,CAACC,IAAI,CAACC,IAAL,CAAUL,IAAI,CAACM,OAAL,EAAV,CAAD,CAAL,CAAiCC,IAAjC,CAAsC,qBAAOT,KAAP,EAAcU,IAAd,EAAtC,EAA4DC,GAA5D,CAAgE,CAACC,GAAD,EAAMC,KAAN,KAAgBD,GAAG,GAAGC,KAAtF,EAA6FC,IAA7F,CAAkG,GAAlG,CAAT;AACD;;AAED,MAAIC,MAAM,GAAGnB,YAAY,CAACoB,MAAb,CAAoB,CAACC,GAAD,EAAeC,KAAf,KAAqC;AAAA;;AACpE,QAAIA,KAAK,CAACC,MAAV,EACE,OAAOF,GAAP;AAEF,QAAIG,QAAQ,GAAeF,KAAK,CAACE,QAAN,IAAkB,IAAlB,GAA0BF,KAAK,CAACG,MAAN,CAAyBD,QAAnD,GAA8DF,KAAK,CAACE,QAA/F;AAEA,QAAIE,IAAI,GAAmBJ,KAAK,CAACK,WAAN,CACkBC,MADlB,CAC0BC,CAAD,IAAYA,CAAC,KAAK,IAD3C,EAEkBd,GAFlB,CAEuBe,SAAD,IAAyBA,SAAS,CAACC,GAFzD,EAGkBb,IAHlB,CAGuB,IAHvB,CAA3B;AAKA,WAAOG,GAAG,CAACW,MAAJ,CAAW;AAChBC,QAAE,gBAASX,KAAK,CAACS,GAAf,mDAAsBT,KAAK,CAACW,EADd;AAEhBC,aAAO,EAAIZ,KAAK,CAACG,MAAN,CAAwBM,GAFnB;AAGhBI,WAAK,EAAM5B,gBAAO6B,GAAP,CAAWd,KAAK,CAAClB,KAAjB,EAAwBiC,GAAxB,KAAgC,CAH3B;AAIhBC,eAAS,EAAE/B,gBAAO6B,GAAP,CAAWd,KAAK,CAAClB,KAAjB,EAAwBmC,MAAxB,CAA+B,MAA/B,CAJK;AAKhBC,YAAM,EAAKjC,gBAAO6B,GAAP,CAAWd,KAAK,CAACjB,GAAjB,EAAsBC,IAAtB,CAA2BC,gBAAO6B,GAAP,CAAWd,KAAK,CAAClB,KAAjB,CAA3B,EAAoD,SAApD,CALK;AAMhBqC,eAAS,EAAE,CAACjB,QAAQ,IAAI,EAAb,EAAiBT,GAAjB,CAAsB2B,OAAD,IAAsBA,OAAO,CAACX,GAAnD,EAAwDb,IAAxD,CAA6D,IAA7D,CANK;AAOhByB,aAAO,mBAAKrB,KAAK,CAACG,MAAX,kDAAK,cAAyBkB,OAPrB;AAQhBC,YAAM,EAAK,EARK;AAShBlB,UATgB;AAUhBxB,YAAM,uCAAEoB,KAAK,CAACuB,KAAR,iDAAE,aAAa3B,IAAb,CAAkB,GAAlB,CAAF,iEAA4BhB;AAVlB,KAAX,CAAP;AAYD,GAvBY,EAuBV,EAvBU,CAAb;;AAyBA,MAAI4C,EAAE,GAAGC,cAAKC,KAAL,CAAWC,QAAX,EAAT;;AAEAF,gBAAKC,KAAL,CAAWE,iBAAX,CAA6BJ,EAA7B,EAAiCC,cAAKC,KAAL,CAAWG,aAAX,CAAyBhC,MAAzB,CAAjC,EAAmE,uBAAnE;;AAEA,SAAO2B,EAAP;AACD,C","names":["courseEvents","options","inweek","interval","start","end","diff","moment","duration","Array","Math","ceil","asWeeks","fill","week","map","val","index","join","events","reduce","acc","event","parked","teachers","course","room","inLocations","filter","x","locations","ids","concat","id","groupid","dayid","utc","day","starttime","format","length","teacherid","teacher","subject","exweek","weeks","wb","XLSX","utils","book_new","book_append_sheet","json_to_sheet"],"sourceRoot":"","sources":["../../../../src/SchoolSoft/file/to/schedules.ts"],"sourcesContent":[null]}
@@ -0,0 +1,49 @@
1
+ import { CoreMap } from '../index';
2
+ import { SchoolSoftMap } from '../../SchoolSoft/file';
3
+ import { PlanDigitalMap } from '../../PlanDigital';
4
+ import { IdunSoftMap } from '../../IdunSoft';
5
+ import { RSMap } from '../../RS';
6
+ export declare const maps: readonly [{
7
+ readonly structure: (keyof import("../../SchoolSoft/file/types/events").Event)[];
8
+ readonly name: "SchoolSoft";
9
+ readonly map: typeof SchoolSoftMap;
10
+ readonly meta: {};
11
+ }, {
12
+ readonly structure: (keyof import("../../PlanDigital/types/course").Course)[];
13
+ readonly name: "Plan Digital";
14
+ readonly map: typeof PlanDigitalMap;
15
+ readonly meta: {};
16
+ }, {
17
+ readonly structure: any;
18
+ readonly name: "IdunSoft";
19
+ readonly map: typeof IdunSoftMap;
20
+ readonly meta: {};
21
+ }, {
22
+ readonly structure: any;
23
+ readonly name: "Royal Schedule v0";
24
+ readonly map: typeof RSMap;
25
+ readonly meta: {
26
+ readonly structure: "RS/algorithm-0.1.3";
27
+ };
28
+ }, {
29
+ readonly structure: any;
30
+ readonly name: "Royal Schedule v1";
31
+ readonly map: typeof import("../../RS/v1").V1;
32
+ readonly meta: {
33
+ readonly structure: "RS/algorithm-1.0.0";
34
+ };
35
+ }, {
36
+ readonly structure: any;
37
+ readonly name: "Royal Schedule v2";
38
+ readonly map: typeof import("../../RS/v2").V2;
39
+ readonly meta: {
40
+ readonly structure: "RS/algorithm-2.0.0";
41
+ };
42
+ }, {
43
+ readonly structure: any;
44
+ readonly name: "Royal Schedule";
45
+ readonly map: typeof CoreMap;
46
+ readonly meta: {
47
+ readonly structure: "RS/core-1.0.0";
48
+ };
49
+ }];
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.maps = void 0;
7
+
8
+ var _index = require("../index");
9
+
10
+ var _file = require("../../SchoolSoft/file");
11
+
12
+ var _PlanDigital = require("../../PlanDigital");
13
+
14
+ var _IdunSoft = require("../../IdunSoft");
15
+
16
+ var _RS = require("../../RS");
17
+
18
+ var core_structure = {
19
+ groups: ['id'],
20
+ locations: ['id'],
21
+ teachers: ['id'],
22
+ courses: ['id', 'events', 'groups', 'subject', 'teachers']
23
+ };
24
+ var RS0_structure = {
25
+ input: ['courses', 'dependencies', 'settings', 'groups', 'teachers'],
26
+ output: ['course', 'day', 'dependencies', 'end', 'id', 'start']
27
+ };
28
+ var RS1_structure = {
29
+ events: ['collection', 'day', 'dependencies', 'end', 'id', 'start']
30
+ };
31
+ var RS2_structure = {
32
+ events: ['collection', 'day', 'dependencies', 'end', 'id', 'start']
33
+ };
34
+ var IdunSoft_structure = {
35
+ Grupp: ['ID', 'Klassnamn'],
36
+ Lärare: ['ID', 'Namn'],
37
+ Rum: ['ID', 'Namn'],
38
+ Ämne: ['Ämne', 'Betygskod'],
39
+ Lektion: ['LektionID', 'Ämne', 'Starttid', 'Sluttid', 'Lektionslängd', 'LärareID', 'GruppID', 'RumID', 'VeckodagID']
40
+ };
41
+ var PlanDigital_structure = ['Klass', 'Kurskod', 'Sign', 'Poäng', 'Ht', 'Resurs', 'Vt', 'Summa', 'Period', 'Anteckningar', 'Antal', 'Ämne', 'Kursnamn'];
42
+ var SchoolSoft_structure = ['id', 'group', 'dayid', 'day', 'starttime', 'length', 'teacher', 'subject', 'room', 'period', 'inweek', 'exweek', 'exclass', 'realweeks'];
43
+ var maps = [{
44
+ structure: SchoolSoft_structure,
45
+ name: 'SchoolSoft',
46
+ map: _file.SchoolSoftMap,
47
+ meta: {}
48
+ }, {
49
+ structure: PlanDigital_structure,
50
+ name: 'Plan Digital',
51
+ map: _PlanDigital.PlanDigitalMap,
52
+ meta: {}
53
+ }, {
54
+ structure: IdunSoft_structure,
55
+ name: 'IdunSoft',
56
+ map: _IdunSoft.IdunSoftMap,
57
+ meta: {}
58
+ }, {
59
+ structure: RS0_structure,
60
+ name: 'Royal Schedule v0',
61
+ map: _RS.RSMap,
62
+ meta: {
63
+ structure: 'RS/algorithm-0.1.3'
64
+ }
65
+ }, {
66
+ structure: RS1_structure,
67
+ name: 'Royal Schedule v1',
68
+ map: _RS.RSMap.V1,
69
+ meta: {
70
+ structure: 'RS/algorithm-1.0.0'
71
+ }
72
+ }, {
73
+ structure: RS2_structure,
74
+ name: 'Royal Schedule v2',
75
+ map: _RS.RSMap.V2,
76
+ meta: {
77
+ structure: 'RS/algorithm-2.0.0'
78
+ }
79
+ }, {
80
+ structure: core_structure,
81
+ name: 'Royal Schedule',
82
+ map: _index.CoreMap,
83
+ meta: {
84
+ structure: 'RS/core-1.0.0'
85
+ }
86
+ }];
87
+ exports.maps = maps;
88
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","mappings":"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","names":["core_structure","groups","locations","teachers","courses","RS0_structure","input","output","RS1_structure","events","RS2_structure","IdunSoft_structure","Grupp","Lärare","Rum","Ämne","Lektion","PlanDigital_structure","SchoolSoft_structure","maps","structure","name","map","SchoolSoftMap","meta","PlanDigitalMap","IdunSoftMap","RSMap","V1","V2","CoreMap"],"sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"sourcesContent":[null]}
@@ -1,14 +1,2 @@
1
- declare type MapInstance = {
2
- name: string;
3
- map: any;
4
- meta?: any;
5
- };
6
- export declare type IdentifiedMaps = {
7
- none: MapInstance[];
8
- weak: MapInstance[];
9
- strong: MapInstance[];
10
- determined?: MapInstance;
11
- error: MapInstance[];
12
- };
1
+ import { IdentifiedMaps } from '../types/identify';
13
2
  export declare function identify(schedule: any): IdentifiedMaps;
14
- export {};
@@ -7,89 +7,10 @@ exports.identify = identify;
7
7
 
8
8
  var _lodash = _interopRequireDefault(require("lodash"));
9
9
 
10
- var _file = require("../../SchoolSoft/file");
11
-
12
- var _PlanDigital = require("../../PlanDigital");
13
-
14
- var _IdunSoft = require("../../IdunSoft");
15
-
16
- var _RS = require("../../RS");
17
-
18
- var _index = require("../index");
10
+ var _constants = require("../constants");
19
11
 
20
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
13
 
22
- var _a, _b;
23
-
24
- class Identity {}
25
-
26
- Identity.to = (_a = class {}, _a.schedules = schedule => schedule, _a);
27
- Identity.from = (_b = class {}, _b.schedules = schedule => schedule, _b);
28
- var RS = [{
29
- input: ['courses', 'dependencies', 'settings', 'groups', 'teachers'],
30
- output: ['course', 'day', 'dependencies', 'end', 'id', 'start']
31
- }, {
32
- events: ['collection', 'day', 'dependencies', 'end', 'id', 'start']
33
- }, {
34
- events: ['collection', 'day', 'dependencies', 'end', 'id', 'start']
35
- }];
36
- var Core = {
37
- groups: ['id'],
38
- locations: ['id'],
39
- teachers: ['id'],
40
- courses: ['id', 'events', 'groups', 'subject', 'teachers']
41
- };
42
- var IdunSoft = {
43
- Grupp: ['ID', 'Klassnamn'],
44
- Lärare: ['ID', 'Namn'],
45
- Rum: ['ID', 'Namn'],
46
- Ämne: ['Ämne', 'Betygskod'],
47
- Lektion: ['LektionID', 'Ämne', 'Starttid', 'Sluttid', 'Lektionslängd', 'LärareID', 'GruppID', 'RumID', 'VeckodagID']
48
- };
49
- var PlanDigital = ['Klass', 'Kurskod', 'Sign', 'Poäng', 'Ht', 'Resurs', 'Vt', 'Summa', 'Period', 'Anteckningar', 'Antal', 'Ämne', 'Kursnamn'];
50
- var SchoolSoft = ['id', 'group', 'dayid', 'day', 'starttime', 'length', 'teacher', 'subject', 'room', 'period', 'inweek', 'exweek', 'exclass', 'realweeks'];
51
- var maps = [{
52
- structure: SchoolSoft,
53
- name: 'SchoolSoft',
54
- map: _file.SchoolSoftMap
55
- }, {
56
- structure: PlanDigital,
57
- name: 'Plan Digital',
58
- map: _PlanDigital.PlanDigitalMap
59
- }, {
60
- structure: IdunSoft,
61
- name: 'IdunSoft',
62
- map: _IdunSoft.IdunSoftMap
63
- }, {
64
- structure: RS[0],
65
- name: 'Royal Schedule v0',
66
- map: _RS.RSMap,
67
- meta: {
68
- structure: 'RS/algorithm-0.1.3'
69
- }
70
- }, {
71
- structure: RS[1],
72
- name: 'Royal Schedule v1',
73
- map: _RS.RSMap.V1,
74
- meta: {
75
- structure: 'RS/algorithm-1.0.0'
76
- }
77
- }, {
78
- structure: RS[2],
79
- name: 'Royal Schedule v2',
80
- map: _RS.RSMap.V2,
81
- meta: {
82
- structure: 'RS/algorithm-2.0.0'
83
- }
84
- }, {
85
- structure: Core,
86
- name: 'Royal Schedule',
87
- map: _index.CoreMap,
88
- meta: {
89
- structure: 'RS/core-1.0.0'
90
- }
91
- }];
92
-
93
14
  function _reduceSchedule(docs) {
94
15
  var keys = new Set();
95
16
 
@@ -112,65 +33,40 @@ function identify(schedule) {
112
33
  if (!schedule) return similarities;
113
34
  var collections = Array.isArray(schedule) ? _reduceSchedule(schedule) : Object.keys(schedule);
114
35
  if (!collections.length) return similarities;
115
- maps.forEach(_ref => {
36
+
37
+ _constants.maps.forEach(x => {
116
38
  var {
117
39
  structure,
118
40
  map,
119
41
  name,
120
42
  meta
121
- } = _ref;
43
+ } = x;
122
44
 
123
45
  try {
124
46
  var _collections = Array.isArray(structure) ? structure : Object.keys(structure);
125
47
 
126
48
  if (Array.isArray(schedule)) {
127
- if (!Array.isArray(structure)) return similarities.none.push({
128
- map,
129
- name
130
- });
131
- if (_lodash.default.isEqual(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections))) return similarities.strong.push({
132
- map,
133
- name
134
- });
135
- if (_lodash.default.difference(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections)).length < _collections.length) return similarities.weak.push({
136
- map,
137
- name
138
- });
139
- return similarities.none.push({
140
- map,
141
- name
142
- });
49
+ if (!Array.isArray(structure)) return similarities.none.push(x);
50
+ if (_lodash.default.isEqual(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections))) return similarities.strong.push(x);
51
+ if (_lodash.default.difference(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections)).length < _collections.length) return similarities.weak.push(x);
52
+ return similarities.none.push(x);
143
53
  }
144
54
 
145
- if (meta && _lodash.default.isMatch(schedule.meta, meta)) return similarities.determined = {
146
- map,
147
- name
148
- };
55
+ if (meta && _lodash.default.isMatch(schedule.meta, meta)) return similarities.determined = x;
149
56
  if (_collections.every(collection => {
150
57
  if (!(collection in schedule)) return false;
151
58
  return _reduceSchedule(schedule[collection]).every(key => structure[collection].includes(key));
152
- })) return similarities.strong.push({
153
- map,
154
- name
155
- });
59
+ })) return similarities.strong.push(x);
156
60
  if (_collections.some(collection => {
157
61
  if (!(collection in schedule)) return false;
158
62
  return _reduceSchedule(schedule[collection]).some(key => structure[collection].includes(key));
159
- })) return similarities.weak.push({
160
- map,
161
- name
162
- });
163
- return similarities.none.push({
164
- map,
165
- name
166
- });
63
+ })) return similarities.weak.push(x);
64
+ return similarities.none.push(x);
167
65
  } catch (err) {
168
- similarities.error.push({
169
- map,
170
- name
171
- });
66
+ similarities.error.push(x);
172
67
  }
173
68
  });
69
+
174
70
  return similarities;
175
71
  }
176
72
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"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","names":["Identity","_a","schedule","_b","RS","input","output","events","Core","groups","locations","teachers","courses","IdunSoft","Grupp","Lärare","Rum","Ämne","Lektion","PlanDigital","SchoolSoft","maps","structure","name","map","SchoolSoftMap","PlanDigitalMap","IdunSoftMap","RSMap","meta","V1","V2","CoreMap","_reduceSchedule","docs","keys","Set","Array","isArray","flat","forEach","doc","Object","key","add","from","identify","similarities","none","weak","strong","error","collections","length","_collections","push","_","isEqual","sortBy","difference","isMatch","determined","every","collection","includes","some","err"],"sourceRoot":"","sources":["../../../src/core/identify/index.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"index.js","mappings":"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","names":["_reduceSchedule","docs","keys","Set","Array","isArray","flat","forEach","doc","Object","key","add","from","identify","schedule","similarities","none","weak","strong","error","collections","length","maps","x","structure","map","name","meta","_collections","push","_","isEqual","sortBy","difference","isMatch","determined","every","collection","includes","some","err"],"sourceRoot":"","sources":["../../../src/core/identify/index.ts"],"sourcesContent":[null]}
@@ -6,3 +6,4 @@ export declare class CoreMap {
6
6
  static to: typeof _to;
7
7
  }
8
8
  export { Types as CoreTypes };
9
+ export * from './identify';
@@ -3,12 +3,29 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _exportNames = {
7
+ CoreMap: true
8
+ };
6
9
  exports.CoreMap = void 0;
7
10
 
8
11
  var _from2 = _interopRequireDefault(require("./from"));
9
12
 
10
13
  var _to2 = _interopRequireDefault(require("./to"));
11
14
 
15
+ var _identify = require("./identify");
16
+
17
+ Object.keys(_identify).forEach(function (key) {
18
+ if (key === "default" || key === "__esModule") return;
19
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
20
+ if (key in exports && exports[key] === _identify[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _identify[key];
25
+ }
26
+ });
27
+ });
28
+
12
29
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
30
 
14
31
  class CoreMap {}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":";;;;;;;AAAA;;AACA;;;;AAIM,MAAOA,OAAP,CAAc;;;AACXA,eAAOC,cAAP;AACAD,aAAKE,YAAL","names":["CoreMap","_from","_to"],"sourceRoot":"","sources":["../../src/core/index.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"index.js","mappings":";;;;;;;;;;AAAA;;AACA;;AAWA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;AAPM,MAAOA,OAAP,CAAc;;;AACXA,eAAOC,cAAP;AACAD,aAAKE,YAAL","names":["CoreMap","_from","_to"],"sourceRoot":"","sources":["../../src/core/index.ts"],"sourcesContent":[null]}
@@ -0,0 +1,10 @@
1
+ import { maps } from './../constants';
2
+ export declare type MapInstance = typeof maps[number];
3
+ export declare type MapName = typeof maps[number]['name'];
4
+ export declare type IdentifiedMaps = {
5
+ none: MapInstance[];
6
+ weak: MapInstance[];
7
+ strong: MapInstance[];
8
+ determined?: MapInstance;
9
+ error: MapInstance[];
10
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=identify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identify.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
@@ -12,6 +12,7 @@ import { Division } from './divisions';
12
12
  import { DivisionSettings } from './division-settings';
13
13
  import { Teacher } from './teachers';
14
14
  import { Meta } from './meta';
15
+ import { MapName, MapInstance, IdentifiedMaps } from './identify';
15
16
  export declare module Types {
16
17
  type area = Area;
17
18
  type availableDependency = AvailableLocation;
@@ -27,4 +28,7 @@ export declare module Types {
27
28
  type divisionSettings = DivisionSettings;
28
29
  type teacher = Teacher;
29
30
  type meta = Meta;
31
+ type mapName = MapName;
32
+ type mapInstance = MapInstance;
33
+ type identifiedMaps = IdentifiedMaps;
30
34
  }
package/dist/index.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  export * from './core';
2
- export * from './core/identify';
3
2
  export * from './Admentum';
4
3
  export * from './RS';
5
4
  export * from './SchoolSoft/file';
@@ -7,3 +6,4 @@ export * from './IdunSoft';
7
6
  export * from './InfoMentor';
8
7
  export * from './Skola24';
9
8
  export * from './SS12000';
9
+ export * from './vKlass';
package/dist/index.js CHANGED
@@ -17,19 +17,6 @@ Object.keys(_core).forEach(function (key) {
17
17
  });
18
18
  });
19
19
 
20
- var _identify = require("./core/identify");
21
-
22
- Object.keys(_identify).forEach(function (key) {
23
- if (key === "default" || key === "__esModule") return;
24
- if (key in exports && exports[key] === _identify[key]) return;
25
- Object.defineProperty(exports, key, {
26
- enumerable: true,
27
- get: function get() {
28
- return _identify[key];
29
- }
30
- });
31
- });
32
-
33
20
  var _Admentum = require("./Admentum");
34
21
 
35
22
  Object.keys(_Admentum).forEach(function (key) {
@@ -120,4 +107,17 @@ Object.keys(_SS).forEach(function (key) {
120
107
  }
121
108
  });
122
109
  });
110
+
111
+ var _vKlass = require("./vKlass");
112
+
113
+ Object.keys(_vKlass).forEach(function (key) {
114
+ if (key === "default" || key === "__esModule") return;
115
+ if (key in exports && exports[key] === _vKlass[key]) return;
116
+ Object.defineProperty(exports, key, {
117
+ enumerable: true,
118
+ get: function get() {
119
+ return _vKlass[key];
120
+ }
121
+ });
122
+ });
123
123
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,4 @@
1
+ import _schedule from './schedule';
2
+ export default class {
3
+ static schedules: typeof _schedule;
4
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _schedule2 = _interopRequireDefault(require("./schedule"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ class default_1 {}
13
+
14
+ exports.default = default_1;
15
+ default_1.schedules = _schedule2.default;
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","mappings":";;;;;;;AAAA;;;;AAEc;;;AACLA,sBAAYC,kBAAZ","names":["default_1","_schedule"],"sourceRoot":"","sources":["../../../src/vKlass/from/index.ts"],"sourcesContent":[null]}
@@ -0,0 +1,3 @@
1
+ import { Types } from '../../core/types';
2
+ import { Meta, Schedule } from '../types';
3
+ export default function (src: Schedule, meta: Meta): Types.division;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = _default;
7
+
8
+ var Moment = _interopRequireWildcard(require("moment"));
9
+
10
+ var _momentRange = require("moment-range");
11
+
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+
14
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
15
+
16
+ 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; }
17
+
18
+ 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; }
19
+
20
+ 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; }
21
+
22
+ var moment = (0, _momentRange.extendMoment)(Moment);
23
+
24
+ function _default(src, meta) {
25
+ var warnings = [];
26
+ var errors = [];
27
+ var scheduleRange = moment.range(moment.utc(meta.beg), moment.utc(meta.end));
28
+ var teachers = [];
29
+ src.staff.forEach(x => {
30
+ teachers.push({
31
+ ids: x.ID.toString(),
32
+ displayName: x.Firstname + ' ' + x.Lastname
33
+ });
34
+ });
35
+ var groups = [];
36
+ src.classes.forEach(x => {
37
+ groups.push({
38
+ ids: x.ID.toString(),
39
+ displayName: x.Name
40
+ });
41
+ });
42
+ var groupStaffMap = new Map();
43
+ src.groups_staff.forEach(x => {
44
+ groupStaffMap.has(x.groupId) || groupStaffMap.set(x.groupId, new Set());
45
+ groupStaffMap.get(x.groupId).add(x.userId);
46
+ });
47
+ var studentClassMap = new Map();
48
+ src.classes_students.forEach(x => {
49
+ studentClassMap.has(x.userId) || studentClassMap.set(x.userId, new Set());
50
+ studentClassMap.get(x.userId).add(x.classId);
51
+ });
52
+ var groupClassesMap = new Map();
53
+ src.groups_students.forEach(x => {
54
+ var _studentClassMap$get;
55
+
56
+ groupClassesMap.has(x.groupId) || groupClassesMap.set(x.groupId, new Set());
57
+ (_studentClassMap$get = studentClassMap.get(x.userId)) === null || _studentClassMap$get === void 0 ? void 0 : _studentClassMap$get.forEach(y => groupClassesMap.get(x.groupId).add(y));
58
+ });
59
+ var courses = [];
60
+ src.groups.forEach(x => {
61
+ var _groupStaffMap$get, _groupClassesMap$get;
62
+
63
+ var courseRange = moment.range(moment.utc(x.StartDate), moment.utc(x.EndDate));
64
+ if (!scheduleRange.overlaps(courseRange)) return;
65
+ var teachers = [...((_groupStaffMap$get = groupStaffMap.get(x.ID)) !== null && _groupStaffMap$get !== void 0 ? _groupStaffMap$get : [])].map(x => x.toString());
66
+ var groups = [...((_groupClassesMap$get = groupClassesMap.get(x.ID)) !== null && _groupClassesMap$get !== void 0 ? _groupClassesMap$get : [])].map(x => x.toString());
67
+ courses.push(_objectSpread(_objectSpread({
68
+ ids: x.ID.toString(),
69
+ displayName: x.Name || x.FriendlyName
70
+ }, teachers && {
71
+ teachers
72
+ }), groups && {
73
+ groups
74
+ }));
75
+ });
76
+ return {
77
+ teachers,
78
+ groups,
79
+ courses,
80
+ meta: _objectSpread(_objectSpread({}, errors.length ? {
81
+ errors: errors
82
+ } : {}), warnings.length ? {
83
+ warnings: warnings
84
+ } : {})
85
+ };
86
+ }
87
+ //# sourceMappingURL=schedule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule.js","mappings":"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","names":["moment","Moment","src","meta","warnings","errors","scheduleRange","range","utc","beg","end","teachers","staff","forEach","x","push","ids","ID","toString","displayName","Firstname","Lastname","groups","classes","Name","groupStaffMap","Map","groups_staff","has","groupId","set","Set","get","add","userId","studentClassMap","classes_students","classId","groupClassesMap","groups_students","y","courses","courseRange","StartDate","EndDate","overlaps","map","FriendlyName","length"],"sourceRoot":"","sources":["../../../src/vKlass/from/schedule.ts"],"sourcesContent":[null]}
@@ -0,0 +1,4 @@
1
+ import _from from './from';
2
+ export declare class vKlassMap {
3
+ static from: typeof _from;
4
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.vKlassMap = void 0;
7
+
8
+ var _from2 = _interopRequireDefault(require("./from"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ class vKlassMap {}
13
+
14
+ exports.vKlassMap = vKlassMap;
15
+ vKlassMap.from = _from2.default;
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","mappings":";;;;;;;AAAA;;;;AAEM,MAAOA,SAAP,CAAgB;;;AACbA,iBAAOC,cAAP","names":["vKlassMap","_from"],"sourceRoot":"","sources":["../../src/vKlass/index.ts"],"sourcesContent":[null]}
@@ -0,0 +1,40 @@
1
+ export declare type Staff = {
2
+ ID: number;
3
+ Firstname: string;
4
+ Lastname: string;
5
+ };
6
+ export declare type Group = {
7
+ ID: number;
8
+ Name: string;
9
+ FriendlyName: string;
10
+ StartDate: string;
11
+ EndDate: string;
12
+ };
13
+ export declare type Class = {
14
+ ID: number;
15
+ Name: string;
16
+ };
17
+ export declare type GroupStaffReference = {
18
+ groupId: number;
19
+ userId: number;
20
+ };
21
+ export declare type GroupStudentReference = {
22
+ groupId: number;
23
+ userId: number;
24
+ };
25
+ export declare type ClassStudentReference = {
26
+ classId: number;
27
+ userId: number;
28
+ };
29
+ export declare type Schedule = {
30
+ staff: Staff[];
31
+ groups: Group[];
32
+ classes: Class[];
33
+ groups_staff: GroupStaffReference[];
34
+ groups_students: GroupStudentReference[];
35
+ classes_students: ClassStudentReference[];
36
+ };
37
+ export declare type Meta = {
38
+ beg: string;
39
+ end: string;
40
+ };
@@ -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","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@royalschedule/maps",
3
- "version": "2.2.39",
3
+ "version": "2.2.42",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",