@royalschedule/maps 2.2.55 → 2.2.56

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 (111) hide show
  1. package/dist/Admentum/types/course-section.d.ts +0 -0
  2. package/dist/Admentum/types/course-section.js +2 -0
  3. package/dist/Admentum/types/course-section.js.map +1 -0
  4. package/dist/Admentum/types/course.d.ts +0 -0
  5. package/dist/Admentum/types/course.js +2 -0
  6. package/dist/Admentum/types/course.js.map +1 -0
  7. package/dist/Admentum/types/lesson.d.ts +22 -0
  8. package/dist/{Skola24/types/Lesson.js → Admentum/types/lesson.js} +1 -1
  9. package/dist/Admentum/types/lesson.js.map +1 -0
  10. package/dist/Admentum/types/primary-group.d.ts +4 -0
  11. package/dist/Admentum/types/primary-group.js +6 -0
  12. package/dist/Admentum/types/primary-group.js.map +1 -0
  13. package/dist/Admentum/types/room.d.ts +4 -0
  14. package/dist/{Skola24/types/Room.js → Admentum/types/room.js} +1 -1
  15. package/dist/Admentum/types/room.js.map +1 -0
  16. package/dist/Admentum/types/schedule-group.d.ts +18 -0
  17. package/dist/Admentum/types/schedule-group.js +6 -0
  18. package/dist/Admentum/types/schedule-group.js.map +1 -0
  19. package/dist/Admentum/types/schedule.d.ts +15 -0
  20. package/dist/{Skola24/types/Schedule.js → Admentum/types/schedule.js} +1 -1
  21. package/dist/Admentum/types/schedule.js.map +1 -0
  22. package/dist/Admentum/types/school.d.ts +4 -0
  23. package/dist/{Skola24/types/Teacher.js → Admentum/types/school.js} +1 -1
  24. package/dist/Admentum/types/school.js.map +1 -0
  25. package/dist/Admentum/types/user.d.ts +5 -0
  26. package/dist/{Skola24/types/Group.js → Admentum/types/user.js} +1 -1
  27. package/dist/Admentum/types/user.js.map +1 -0
  28. package/dist/SchoolSoft/to/index.js.map +1 -1
  29. package/dist/SchoolSoft/to/schedules.js +1 -1
  30. package/dist/SchoolSoft/to/schedules.js.map +1 -1
  31. package/dist/SchoolSoft/types/events.d.ts +1 -9
  32. package/dist/Skola24/from/assert-week-overlap.d.ts +1 -0
  33. package/dist/Skola24/from/assert-week-overlap.js +28 -0
  34. package/dist/Skola24/from/assert-week-overlap.js.map +1 -0
  35. package/dist/Skola24/from/course-events.d.ts +6 -0
  36. package/dist/Skola24/from/course-events.js +127 -0
  37. package/dist/Skola24/from/course-events.js.map +1 -0
  38. package/dist/Skola24/from/courses.d.ts +5 -0
  39. package/dist/Skola24/from/courses.js +55 -0
  40. package/dist/Skola24/from/courses.js.map +1 -0
  41. package/dist/Skola24/types/TA-group-link.d.ts +4 -0
  42. package/dist/Skola24/types/TA-group-link.js +6 -0
  43. package/dist/Skola24/types/TA-group-link.js.map +1 -0
  44. package/dist/Skola24/types/TA-teacher-link.d.ts +4 -0
  45. package/dist/Skola24/types/TA-teacher-link.js +6 -0
  46. package/dist/Skola24/types/TA-teacher-link.js.map +1 -0
  47. package/dist/Skola24/types/TA.d.ts +8 -0
  48. package/dist/Skola24/types/TA.js +6 -0
  49. package/dist/Skola24/types/TA.js.map +1 -0
  50. package/dist/Skola24/types/{Group-student-link.d.ts → group-student-link.d.ts} +0 -0
  51. package/dist/Skola24/types/{Group-student-link.js → group-student-link.js} +1 -1
  52. package/dist/Skola24/types/group-student-link.js.map +1 -0
  53. package/dist/Skola24/types/{Group.d.ts → group.d.ts} +0 -0
  54. package/dist/Skola24/types/group.js +6 -0
  55. package/dist/Skola24/types/group.js.map +1 -0
  56. package/dist/Skola24/types/{Lesson-group-link.d.ts → lesson-group-link.d.ts} +0 -0
  57. package/dist/Skola24/types/{Lesson-group-link.js → lesson-group-link.js} +1 -1
  58. package/dist/Skola24/types/lesson-group-link.js.map +1 -0
  59. package/dist/Skola24/types/{Lesson-room-link.d.ts → lesson-room-link.d.ts} +0 -0
  60. package/dist/Skola24/types/{Lesson-room-link.js → lesson-room-link.js} +1 -1
  61. package/dist/Skola24/types/lesson-room-link.js.map +1 -0
  62. package/dist/Skola24/types/{Lesson-teacher-link.d.ts → lesson-teacher-link.d.ts} +0 -0
  63. package/dist/Skola24/types/lesson-teacher-link.js +6 -0
  64. package/dist/Skola24/types/lesson-teacher-link.js.map +1 -0
  65. package/dist/Skola24/types/{Lesson.d.ts → lesson.d.ts} +0 -0
  66. package/dist/Skola24/types/lesson.js +6 -0
  67. package/dist/Skola24/types/lesson.js.map +1 -0
  68. package/dist/Skola24/types/{Room.d.ts → room.d.ts} +0 -0
  69. package/dist/Skola24/types/room.js +6 -0
  70. package/dist/Skola24/types/room.js.map +1 -0
  71. package/dist/Skola24/types/{Schedule.d.ts → schedule.d.ts} +0 -0
  72. package/dist/Skola24/types/schedule.js +6 -0
  73. package/dist/Skola24/types/schedule.js.map +1 -0
  74. package/dist/Skola24/types/{Teacher.d.ts → teacher.d.ts} +0 -0
  75. package/dist/Skola24/types/teacher.js +6 -0
  76. package/dist/Skola24/types/teacher.js.map +1 -0
  77. package/dist/core/identify/index.d.ts +12 -1
  78. package/dist/core/identify/index.js +75 -34
  79. package/dist/core/identify/index.js.map +1 -1
  80. package/dist/core/index.d.ts +0 -1
  81. package/dist/core/index.js +0 -17
  82. package/dist/core/index.js.map +1 -1
  83. package/dist/core/types/index.d.ts +0 -4
  84. package/dist/{core → identify}/constants/index.d.ts +1 -1
  85. package/dist/{core → identify}/constants/index.js +2 -2
  86. package/dist/{core → identify}/constants/index.js.map +1 -1
  87. package/dist/identify/index.d.ts +4 -0
  88. package/dist/identify/index.js +80 -0
  89. package/dist/identify/index.js.map +1 -0
  90. package/dist/{core/types/identify.d.ts → identify/types/index.d.ts} +1 -1
  91. package/dist/identify/types/index.js +6 -0
  92. package/dist/identify/types/index.js.map +1 -0
  93. package/package.json +3 -2
  94. package/dist/SchoolSoft/from/index.d.ts +0 -8
  95. package/dist/SchoolSoft/from/index.js +0 -20
  96. package/dist/SchoolSoft/from/index.js.map +0 -1
  97. package/dist/SchoolSoft/from/schedules.d.ts +0 -9
  98. package/dist/SchoolSoft/from/schedules.js +0 -266
  99. package/dist/SchoolSoft/from/schedules.js.map +0 -1
  100. package/dist/Skola24/types/Group-student-link.js.map +0 -1
  101. package/dist/Skola24/types/Group.js.map +0 -1
  102. package/dist/Skola24/types/Lesson-group-link.js.map +0 -1
  103. package/dist/Skola24/types/Lesson-room-link.js.map +0 -1
  104. package/dist/Skola24/types/Lesson-teacher-link.js +0 -6
  105. package/dist/Skola24/types/Lesson-teacher-link.js.map +0 -1
  106. package/dist/Skola24/types/Lesson.js.map +0 -1
  107. package/dist/Skola24/types/Room.js.map +0 -1
  108. package/dist/Skola24/types/Schedule.js.map +0 -1
  109. package/dist/Skola24/types/Teacher.js.map +0 -1
  110. package/dist/core/types/identify.js +0 -6
  111. package/dist/core/types/identify.js.map +0 -1
@@ -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,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,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":[]}
@@ -1,2 +1,13 @@
1
- import { IdentifiedMaps } from '../types/identify';
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
+ };
2
12
  export declare function identify(schedule: any): IdentifiedMaps;
13
+ export {};
@@ -5,11 +5,65 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.identify = identify;
7
7
 
8
- var _lodash = _interopRequireDefault(require("lodash"));
8
+ var _lodash = require("lodash");
9
9
 
10
- var _constants = require("../constants");
10
+ var _IdunSoft = require("../../IdunSoft");
11
11
 
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ var _RS = require("../../RS");
13
+
14
+ var _index = require("../index");
15
+
16
+ var _a, _b;
17
+
18
+ class Identity {}
19
+
20
+ Identity.to = (_a = class {}, _a.schedules = schedule => schedule, _a);
21
+ Identity.from = (_b = class {}, _b.schedules = schedule => schedule, _b);
22
+ var RS = [{
23
+ input: ['courses', 'dependencies', 'settings', 'groups', 'teachers'],
24
+ output: ['course', 'day', 'dependencies', 'end', 'id', 'start']
25
+ }, {
26
+ events: ['collection', 'day', 'dependencies', 'end', 'id', 'start']
27
+ }];
28
+ var Core = {
29
+ groups: ['id'],
30
+ locations: ['id'],
31
+ teachers: ['id'],
32
+ courses: ['id', 'events', 'groups', 'subject', 'teachers']
33
+ };
34
+ var IdunSoft = {
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 maps = [{
42
+ structure: IdunSoft,
43
+ name: 'IdunSoft',
44
+ map: _IdunSoft.IdunSoftMap
45
+ }, {
46
+ structure: RS[0],
47
+ name: 'Royal Schedule v0',
48
+ map: _RS.RSMap,
49
+ meta: {
50
+ structure: 'RS/algorithm-0.1.3'
51
+ }
52
+ }, {
53
+ structure: RS[1],
54
+ name: 'Royal Schedule v1',
55
+ map: _RS.RSMap.V1,
56
+ meta: {
57
+ structure: 'RS/algorithm-1.0.0'
58
+ }
59
+ }, {
60
+ structure: Core,
61
+ name: 'Royal Schedule',
62
+ map: _index.CoreMap,
63
+ meta: {
64
+ structure: 'RS/core-1.0.0'
65
+ }
66
+ }];
13
67
 
14
68
  function _reduceSchedule(docs) {
15
69
  var keys = new Set();
@@ -27,48 +81,35 @@ function identify(schedule) {
27
81
  var similarities = {
28
82
  none: [],
29
83
  weak: [],
30
- strong: [],
31
- error: []
84
+ strong: []
32
85
  };
33
86
  if (!schedule) return similarities;
34
- var collections = Array.isArray(schedule) ? _reduceSchedule(schedule) : Object.keys(schedule);
87
+ var collections = Object.keys(schedule);
35
88
  if (!collections.length) return similarities;
36
-
37
- _constants.maps.forEach(x => {
89
+ maps.forEach(_ref => {
38
90
  var {
39
91
  structure,
40
92
  map,
41
93
  name,
42
94
  meta
43
- } = x;
95
+ } = _ref;
44
96
 
45
- try {
46
- var _schedule$meta;
97
+ var _collections = Object.keys(structure);
47
98
 
48
- var _collections = Array.isArray(structure) ? structure : Object.keys(structure);
49
-
50
- if (Array.isArray(schedule)) {
51
- if (!Array.isArray(structure)) return similarities.none.push(x);
52
- if (_lodash.default.isEqual(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections))) return similarities.strong.push(x);
53
- if (_lodash.default.difference(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections)).length < _collections.length) return similarities.weak.push(x);
54
- return similarities.none.push(x);
55
- }
56
-
57
- if (meta.structure && meta.structure == ((_schedule$meta = schedule.meta) === null || _schedule$meta === void 0 ? void 0 : _schedule$meta.structure)) return similarities.determined = x;
58
- if (_collections.every(collection => {
59
- if (!(collection in schedule)) return false;
60
- return _reduceSchedule(schedule[collection]).every(key => structure[collection].includes(key));
61
- })) return similarities.strong.push(x);
62
- if (_collections.some(collection => {
63
- if (!(collection in schedule)) return false;
64
- return _reduceSchedule(schedule[collection]).some(key => structure[collection].includes(key));
65
- })) return similarities.weak.push(x);
66
- return similarities.none.push(x);
67
- } catch (err) {
68
- similarities.error.push(x);
69
- }
99
+ if (meta && (0, _lodash.isMatch)(schedule.meta, meta)) similarities.determined = {
100
+ map,
101
+ name
102
+ };else if (_collections.every(collection => schedule[collection] && _reduceSchedule(schedule[collection]).every(key => structure[collection].includes(key)))) similarities.strong.push({
103
+ map,
104
+ name
105
+ });else if (_collections.some(collection => schedule[collection] && _reduceSchedule(schedule[collection]).some(key => structure[collection].includes(key)))) similarities.weak.push({
106
+ map,
107
+ name
108
+ });else similarities.none.push({
109
+ map,
110
+ name
111
+ });
70
112
  });
71
-
72
113
  return similarities;
73
114
  }
74
115
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
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","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":["Identity","_a","schedule","_b","RS","input","output","events","Core","groups","locations","teachers","courses","IdunSoft","Grupp","Lärare","Rum","Ämne","Lektion","maps","structure","name","map","_IdunSoft","_RS","meta","V1","_index","_reduceSchedule","docs","keys","Set","Array","isArray","flat","forEach","doc","Object","key","add","from","identify","similarities","none","weak","strong","collections","length","_ref","_collections","determined","every","collection","includes","push","some"],"sourceRoot":"","sources":["../../../src/core/identify/index.ts"],"sourcesContent":[null]}
@@ -6,4 +6,3 @@ export declare class CoreMap {
6
6
  static to: typeof _to;
7
7
  }
8
8
  export { Types as CoreTypes };
9
- export * from './identify';
@@ -3,29 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- var _exportNames = {
7
- CoreMap: true
8
- };
9
6
  exports.CoreMap = void 0;
10
7
 
11
8
  var _from2 = _interopRequireDefault(require("./from"));
12
9
 
13
10
  var _to2 = _interopRequireDefault(require("./to"));
14
11
 
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
-
29
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
30
13
 
31
14
  class CoreMap {}
@@ -1 +1 @@
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]}
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]}
@@ -12,7 +12,6 @@ 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';
16
15
  export declare module Types {
17
16
  type area = Area;
18
17
  type availableDependency = AvailableLocation;
@@ -28,7 +27,4 @@ export declare module Types {
28
27
  type divisionSettings = DivisionSettings;
29
28
  type teacher = Teacher;
30
29
  type meta = Meta;
31
- type mapName = MapName;
32
- type mapInstance = MapInstance;
33
- type identifiedMaps = IdentifiedMaps;
34
30
  }
@@ -1,4 +1,4 @@
1
- import { CoreMap } from '../index';
1
+ import { CoreMap } from '../../core';
2
2
  import { SchoolSoftMap } from '../../SchoolSoft/file';
3
3
  import { PlanDigitalMap } from '../../PlanDigital';
4
4
  import { AdmentumMap } from '../../Admentum';
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.maps = void 0;
7
7
 
8
- var _index = require("../index");
8
+ var _core = require("../../core");
9
9
 
10
10
  var _file = require("../../SchoolSoft/file");
11
11
 
@@ -135,7 +135,7 @@ var maps = [{
135
135
  }, {
136
136
  structure: core_structure,
137
137
  name: 'Royal Schedule',
138
- map: _index.CoreMap,
138
+ map: _core.CoreMap,
139
139
  meta: {
140
140
  structure: 'RS/core-1.0.0'
141
141
  }
@@ -1 +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","Admentum_structure","schools","schedule","rooms","principals","schedule_groups","primary_groups","schedule_events","schedule_event_instances","lessons","lesson_infos","IdunSoft_structure","Grupp","Lärare","Rum","Ämne","Lektion","Skola24_structure","unit_tblroom","school_tblsubject","school_tblteacher","school_tblgroup","school_tblplan","school_tblcourse","school_tblschedule","school_tblgroup_group","school_tblplan_period","school_tblplan_teacher","school_tblplan_group","unit_tblperiod_date","school_tblschedule_period","school_tblschedule_teacher","school_tblschedule_group","school_tblschedule_room","PlanDigital_structure","SchoolSoft_structure","maps","structure","name","map","AdmentumMap","meta","SchoolSoftMap","PlanDigitalMap","IdunSoftMap","Skola24Map","RSMap","V1","V2","CoreMap"],"sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"sourcesContent":[null]}
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","Admentum_structure","schools","schedule","rooms","principals","schedule_groups","primary_groups","schedule_events","schedule_event_instances","lessons","lesson_infos","IdunSoft_structure","Grupp","Lärare","Rum","Ämne","Lektion","Skola24_structure","unit_tblroom","school_tblsubject","school_tblteacher","school_tblgroup","school_tblplan","school_tblcourse","school_tblschedule","school_tblgroup_group","school_tblplan_period","school_tblplan_teacher","school_tblplan_group","unit_tblperiod_date","school_tblschedule_period","school_tblschedule_teacher","school_tblschedule_group","school_tblschedule_room","PlanDigital_structure","SchoolSoft_structure","maps","structure","name","map","AdmentumMap","meta","SchoolSoftMap","PlanDigitalMap","IdunSoftMap","Skola24Map","RSMap","V1","V2","CoreMap"],"sourceRoot":"","sources":["../../../src/identify/constants/index.ts"],"sourcesContent":[null]}
@@ -0,0 +1,4 @@
1
+ import { IdentifiedMaps } from './types';
2
+ export { MapInstance, MapName, IdentifiedMaps } from './types';
3
+ export { maps } from './constants';
4
+ export declare function identify(schedule: any): IdentifiedMaps;
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.identify = identify;
7
+ Object.defineProperty(exports, "maps", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _constants.maps;
11
+ }
12
+ });
13
+
14
+ var _lodash = _interopRequireDefault(require("lodash"));
15
+
16
+ var _constants = require("./constants");
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
20
+ function _reduceSchedule(docs) {
21
+ var keys = new Set();
22
+
23
+ if (Array.isArray(docs)) {
24
+ docs.flat().forEach(doc => Object.keys(doc).forEach(key => keys.add(key)));
25
+ } else {
26
+ Object.keys(docs).forEach(key => keys.add(key));
27
+ }
28
+
29
+ return Array.from(keys);
30
+ }
31
+
32
+ function identify(schedule) {
33
+ var similarities = {
34
+ none: [],
35
+ weak: [],
36
+ strong: [],
37
+ error: []
38
+ };
39
+ if (!schedule) return similarities;
40
+ var collections = Array.isArray(schedule) ? _reduceSchedule(schedule) : Object.keys(schedule);
41
+ if (!collections.length) return similarities;
42
+
43
+ _constants.maps.forEach(x => {
44
+ var {
45
+ structure,
46
+ map,
47
+ name,
48
+ meta
49
+ } = x;
50
+
51
+ try {
52
+ var _schedule$meta;
53
+
54
+ var _collections = Array.isArray(structure) ? structure : Object.keys(structure);
55
+
56
+ if (Array.isArray(schedule)) {
57
+ if (!Array.isArray(structure)) return similarities.none.push(x);
58
+ if (_lodash.default.isEqual(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections))) return similarities.strong.push(x);
59
+ if (_lodash.default.difference(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections)).length < _collections.length) return similarities.weak.push(x);
60
+ return similarities.none.push(x);
61
+ }
62
+
63
+ if (meta.structure && meta.structure == ((_schedule$meta = schedule.meta) === null || _schedule$meta === void 0 ? void 0 : _schedule$meta.structure)) return similarities.determined = x;
64
+ if (_collections.every(collection => {
65
+ if (!(collection in schedule)) return false;
66
+ return _reduceSchedule(schedule[collection]).every(key => structure[collection].includes(key));
67
+ })) return similarities.strong.push(x);
68
+ if (_collections.some(collection => {
69
+ if (!(collection in schedule)) return false;
70
+ return _reduceSchedule(schedule[collection]).some(key => structure[collection].includes(key));
71
+ })) return similarities.weak.push(x);
72
+ return similarities.none.push(x);
73
+ } catch (err) {
74
+ similarities.error.push(x);
75
+ }
76
+ });
77
+
78
+ return similarities;
79
+ }
80
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
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","determined","every","collection","includes","some","err"],"sourceRoot":"","sources":["../../src/identify/index.ts"],"sourcesContent":[null]}
@@ -1,4 +1,4 @@
1
- import { maps } from './../constants';
1
+ import { maps } from '../constants';
2
2
  export declare type MapInstance = typeof maps[number];
3
3
  export declare type MapName = MapInstance['name'];
4
4
  export declare type IdentifiedMaps = {
@@ -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.55",
3
+ "version": "2.2.56",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -19,7 +19,8 @@
19
19
  "dev_vKlass": "ts-node tests/vKlass/index.ts",
20
20
  "dev_PlanDigital": "ts-node tests/PlanDigital/index.ts",
21
21
  "dev_SS12000": "ts-node tests/SS12000/index.ts",
22
- "dev_RS": "ts-node tests/RS/index.ts"
22
+ "dev_RS": "ts-node tests/RS/index.ts",
23
+ "dev_identify": "ts-node tests/identify/index.ts"
23
24
  },
24
25
  "files": [
25
26
  "dist"
@@ -1,8 +0,0 @@
1
- export default class {
2
- static schedules: (input: import("../types/events").Event[], options?: {
3
- interval?: {
4
- start: number;
5
- end: number;
6
- } | undefined;
7
- } | undefined) => import("../../core/types/divisions").Division;
8
- }
@@ -1,20 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _schedules2 = _interopRequireDefault(require("./schedules"));
9
-
10
- function _interopRequireDefault(obj) {
11
- return obj && obj.__esModule ? obj : {
12
- default: obj
13
- };
14
- }
15
-
16
- class default_1 {}
17
-
18
- exports.default = default_1;
19
- default_1.schedules = _schedules2.default;
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","mappings":";;;;;;;AAAA;;;;;;;;AAEc;;;AACLA,sBAAsBC,mBAAtBD","names":["default_1","_schedules"],"sourceRoot":"","sources":["../../../src/SchoolSoft/from/index.ts"],"sourcesContent":[null]}
@@ -1,9 +0,0 @@
1
- import { Event } from '../types/events';
2
- import { Types as CoreTypes } from '../../core/types';
3
- declare const _default: (input: Event[], options?: {
4
- interval?: {
5
- start: number;
6
- end: number;
7
- } | undefined;
8
- } | undefined) => CoreTypes.division;
9
- export default _default;