@royalschedule/maps 2.4.7 → 2.4.8
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.
- package/dist/Excel/v1/from/index.js +55 -32
- package/dist/Excel/v1/from/index.js.map +1 -1
- package/dist/Excel/v1/types/index.d.ts +18 -16
- package/dist/PlanDigital/types/course.d.ts +15 -0
- package/dist/{core/types/common.js → PlanDigital/types/course.js} +1 -1
- package/dist/PlanDigital/types/course.js.map +1 -0
- package/dist/PlanDigital/types/period.d.ts +3 -0
- package/dist/PlanDigital/types/period.js +6 -0
- package/dist/PlanDigital/types/period.js.map +1 -0
- package/dist/SchoolSoft/from/index.d.ts +8 -0
- package/dist/SchoolSoft/from/index.js +16 -0
- package/dist/SchoolSoft/from/index.js.map +1 -0
- package/dist/SchoolSoft/from/schedules.d.ts +9 -0
- package/dist/SchoolSoft/from/schedules.js +221 -0
- package/dist/SchoolSoft/from/schedules.js.map +1 -0
- package/dist/SchoolSoft/to/index.d.ts +3 -0
- package/dist/SchoolSoft/to/index.js +16 -0
- package/dist/SchoolSoft/to/index.js.map +1 -0
- package/dist/SchoolSoft/to/schedules.d.ts +4 -0
- package/dist/SchoolSoft/to/schedules.js +36 -0
- package/dist/SchoolSoft/to/schedules.js.map +1 -0
- package/dist/SchoolSoft/types/events.d.ts +19 -0
- package/dist/SchoolSoft/types/events.js +6 -0
- package/dist/SchoolSoft/types/events.js.map +1 -0
- package/dist/SchoolSoft/types/index.d.ts +4 -0
- package/dist/Skola24/types/Meta.d.ts +7 -0
- package/dist/Skola24/types/Meta.js +6 -0
- package/dist/Skola24/types/Meta.js.map +1 -0
- package/dist/core/constants/index.d.ts +71 -0
- package/dist/core/constants/index.js +136 -0
- package/dist/core/constants/index.js.map +1 -0
- package/dist/core/from/courses.js +0 -15
- package/dist/core/from/courses.js.map +1 -1
- package/dist/core/from/events.js +0 -15
- package/dist/core/from/events.js.map +1 -1
- package/dist/core/from/groups.js +0 -15
- package/dist/core/from/groups.js.map +1 -1
- package/dist/core/from/locations.js +0 -15
- package/dist/core/from/locations.js.map +1 -1
- package/dist/core/from/locked-times.js +0 -15
- package/dist/core/from/locked-times.js.map +1 -1
- package/dist/core/from/overlap-groups.js +0 -15
- package/dist/core/from/overlap-groups.js.map +1 -1
- package/dist/core/from/persons.js +0 -15
- package/dist/core/from/persons.js.map +1 -1
- package/dist/core/from/schedules.js +0 -15
- package/dist/core/from/schedules.js.map +1 -1
- package/dist/core/from/teachers.js +0 -15
- package/dist/core/from/teachers.js.map +1 -1
- package/dist/core/identify/index.d.ts +2 -0
- package/dist/core/identify/index.js +65 -0
- package/dist/core/identify/index.js.map +1 -0
- package/dist/core/to/available-locations.js +0 -15
- package/dist/core/to/available-locations.js.map +1 -1
- package/dist/core/to/courses.d.ts +1 -37
- package/dist/core/to/courses.js +10 -43
- package/dist/core/to/courses.js.map +1 -1
- package/dist/core/to/days.d.ts +1 -4
- package/dist/core/to/days.js +0 -15
- package/dist/core/to/days.js.map +1 -1
- package/dist/core/to/events.d.ts +1 -41
- package/dist/core/to/events.js +10 -43
- package/dist/core/to/events.js.map +1 -1
- package/dist/core/to/groups.d.ts +1 -15
- package/dist/core/to/groups.js +0 -15
- package/dist/core/to/groups.js.map +1 -1
- package/dist/core/to/intervals.d.ts +1 -4
- package/dist/core/to/intervals.js.map +1 -1
- package/dist/core/to/locations.js +0 -15
- package/dist/core/to/locations.js.map +1 -1
- package/dist/core/to/locked-times.d.ts +2 -2
- package/dist/core/to/locked-times.js +1 -16
- package/dist/core/to/locked-times.js.map +1 -1
- package/dist/core/to/overlap-groups.js +0 -15
- package/dist/core/to/overlap-groups.js.map +1 -1
- package/dist/core/to/persons.js +0 -15
- package/dist/core/to/persons.js.map +1 -1
- package/dist/core/to/schedules.js +1 -16
- package/dist/core/to/schedules.js.map +1 -1
- package/dist/core/to/settings.js +0 -15
- package/dist/core/to/settings.js.map +1 -1
- package/dist/core/to/teachers.js +0 -15
- package/dist/core/to/teachers.js.map +1 -1
- package/dist/core/types/common/index.d.ts +2 -2
- package/dist/core/types/common/index.js +1 -0
- package/dist/core/types/common/index.js.map +1 -1
- package/dist/core/types/course-events.d.ts +3 -13
- package/dist/core/types/courses.d.ts +3 -14
- package/dist/core/types/identify.d.ts +10 -0
- package/dist/core/types/identify.js +6 -0
- package/dist/core/types/identify.js.map +1 -0
- package/dist/core/types/meta.d.ts +1 -1
- package/dist/core/types/students.d.ts +8 -0
- package/dist/core/types/students.js +6 -0
- package/dist/core/types/students.js.map +1 -0
- package/dist/core/types/teachers.d.ts +2 -0
- package/package.json +1 -1
- package/dist/core/types/common.d.ts +0 -26
- package/dist/core/types/common.js.map +0 -1
- package/dist/core/v2/types/common/index.d.ts +0 -26
- /package/dist/{core/v2/types/common → SchoolSoft/types}/index.js +0 -0
- /package/dist/{core/v2/types/common → SchoolSoft/types}/index.js.map +0 -0
|
@@ -19,10 +19,21 @@ function generateId(map) {
|
|
|
19
19
|
} while (map.has(id));
|
|
20
20
|
return id;
|
|
21
21
|
}
|
|
22
|
-
function
|
|
23
|
-
|
|
22
|
+
function toMultipleOf5(val) {
|
|
23
|
+
var num = _lodash.default.isString(val) ? parseInt(val) : val;
|
|
24
|
+
if (isNaN(num)) throw new Error("toMultipleOf5: ".concat(val, " is not a number"));
|
|
24
25
|
return Math.floor(num / 5) * 5;
|
|
25
26
|
}
|
|
27
|
+
function toInteger(val) {
|
|
28
|
+
var num = _lodash.default.isString(val) ? parseInt(val) : val;
|
|
29
|
+
if (isNaN(num)) throw new Error("toInteger: ".concat(val, " is not a number"));
|
|
30
|
+
return num;
|
|
31
|
+
}
|
|
32
|
+
function toString(x) {
|
|
33
|
+
if (x == undefined) return undefined;
|
|
34
|
+
if (_lodash.default.isNumber(x)) return x.toString();
|
|
35
|
+
return x.trim();
|
|
36
|
+
}
|
|
26
37
|
function _schedules(source) {
|
|
27
38
|
var _source$locations, _source$teachers, _source$students, _source$groups, _source$courses, _source$settings, _source$settings$, _source$locations2, _source$groups2, _source$teachers2, _source$students2, _source$courses2;
|
|
28
39
|
var warnings = [];
|
|
@@ -30,7 +41,7 @@ function _schedules(source) {
|
|
|
30
41
|
var teacherKeys = ['name'];
|
|
31
42
|
var studentKeys = ['first_name', 'last_name', 'SSN', 'sex', 'group'];
|
|
32
43
|
var groupKeys = ['name'];
|
|
33
|
-
var courseKeys = ['name', 'subject', 'groups', 'teachers', 'locations', 'minutes_per_week', 'lesson_durations'];
|
|
44
|
+
var courseKeys = ['name', 'subject', 'groups', 'teachers', 'locations', 'total_hours', 'minutes_per_week', 'lesson_durations'];
|
|
34
45
|
source.locations = (_source$locations = source.locations) === null || _source$locations === void 0 ? void 0 : _source$locations.map(x => _lodash.default.pick(x, locationKeys)).filter(x => Object.values(x).some(y => y !== undefined));
|
|
35
46
|
source.teachers = (_source$teachers = source.teachers) === null || _source$teachers === void 0 ? void 0 : _source$teachers.map(x => _lodash.default.pick(x, teacherKeys)).filter(x => Object.values(x).some(y => y !== undefined));
|
|
36
47
|
source.students = (_source$students = source.students) === null || _source$students === void 0 ? void 0 : _source$students.map(x => _lodash.default.pick(x, studentKeys)).filter(x => Object.values(x).some(y => y !== undefined));
|
|
@@ -64,13 +75,12 @@ function _schedules(source) {
|
|
|
64
75
|
warnings.push("Could not find the locations tab.");
|
|
65
76
|
}
|
|
66
77
|
(_source$locations2 = source.locations) === null || _source$locations2 === void 0 ? void 0 : _source$locations2.forEach(x => {
|
|
67
|
-
var
|
|
68
|
-
var displayName = (_x$name = x.name) === null || _x$name === void 0 ? void 0 : _x$name.trim();
|
|
78
|
+
var displayName = toString(x.name);
|
|
69
79
|
if (!displayName) {
|
|
70
80
|
warnings.push("Skipping a location without a name.");
|
|
71
81
|
return;
|
|
72
82
|
}
|
|
73
|
-
if (locationsNameMap.has(displayName)) {
|
|
83
|
+
if (locationsNameMap.has(displayName.toLowerCase())) {
|
|
74
84
|
warnings.push("The location ".concat(displayName, " is defined multiple times."));
|
|
75
85
|
return;
|
|
76
86
|
}
|
|
@@ -79,7 +89,7 @@ function _schedules(source) {
|
|
|
79
89
|
id,
|
|
80
90
|
displayName
|
|
81
91
|
};
|
|
82
|
-
locationsNameMap.set(displayName, location);
|
|
92
|
+
locationsNameMap.set(displayName.toLowerCase(), location);
|
|
83
93
|
locationsIdMap.set(id, location);
|
|
84
94
|
});
|
|
85
95
|
var groupsIdMap = new Map();
|
|
@@ -88,13 +98,12 @@ function _schedules(source) {
|
|
|
88
98
|
warnings.push("Could not find the groups tab.");
|
|
89
99
|
}
|
|
90
100
|
(_source$groups2 = source.groups) === null || _source$groups2 === void 0 ? void 0 : _source$groups2.forEach(x => {
|
|
91
|
-
var
|
|
92
|
-
var displayName = (_x$name2 = x.name) === null || _x$name2 === void 0 ? void 0 : _x$name2.trim();
|
|
101
|
+
var displayName = toString(x.name);
|
|
93
102
|
if (!displayName) {
|
|
94
103
|
warnings.push("Skipping a group without a name.");
|
|
95
104
|
return;
|
|
96
105
|
}
|
|
97
|
-
if (groupsNameMap.has(displayName)) {
|
|
106
|
+
if (groupsNameMap.has(displayName.toLowerCase())) {
|
|
98
107
|
warnings.push("The group ".concat(displayName, " is defined multiple times."));
|
|
99
108
|
return;
|
|
100
109
|
}
|
|
@@ -103,7 +112,7 @@ function _schedules(source) {
|
|
|
103
112
|
id,
|
|
104
113
|
displayName
|
|
105
114
|
};
|
|
106
|
-
groupsNameMap.set(displayName, group);
|
|
115
|
+
groupsNameMap.set(displayName.toLowerCase(), group);
|
|
107
116
|
groupsIdMap.set(id, group);
|
|
108
117
|
});
|
|
109
118
|
var teachersIdMap = new Map();
|
|
@@ -112,13 +121,12 @@ function _schedules(source) {
|
|
|
112
121
|
warnings.push("Could not find the teachers tab.");
|
|
113
122
|
}
|
|
114
123
|
(_source$teachers2 = source.teachers) === null || _source$teachers2 === void 0 ? void 0 : _source$teachers2.forEach(x => {
|
|
115
|
-
var
|
|
116
|
-
var displayName = (_x$name3 = x.name) === null || _x$name3 === void 0 ? void 0 : _x$name3.trim();
|
|
124
|
+
var displayName = toString(x.name);
|
|
117
125
|
if (!displayName) {
|
|
118
126
|
warnings.push("Skipping a teacher without a name.");
|
|
119
127
|
return;
|
|
120
128
|
}
|
|
121
|
-
if (teachersNameMap.has(displayName)) {
|
|
129
|
+
if (teachersNameMap.has(displayName.toLowerCase())) {
|
|
122
130
|
warnings.push("The teacher ".concat(displayName, " is defined multiple times."));
|
|
123
131
|
return;
|
|
124
132
|
}
|
|
@@ -127,7 +135,7 @@ function _schedules(source) {
|
|
|
127
135
|
id,
|
|
128
136
|
displayName
|
|
129
137
|
};
|
|
130
|
-
teachersNameMap.set(displayName, teacher);
|
|
138
|
+
teachersNameMap.set(displayName.toLowerCase(), teacher);
|
|
131
139
|
teachersIdMap.set(id, teacher);
|
|
132
140
|
});
|
|
133
141
|
var personsIdMap = new Map();
|
|
@@ -135,13 +143,13 @@ function _schedules(source) {
|
|
|
135
143
|
warnings.push("Could not find the students tab.");
|
|
136
144
|
}
|
|
137
145
|
(_source$students2 = source.students) === null || _source$students2 === void 0 ? void 0 : _source$students2.forEach(x => {
|
|
138
|
-
var
|
|
139
|
-
var
|
|
140
|
-
var
|
|
141
|
-
var SSN = (_x$SSN = x.SSN) === null || _x$SSN === void 0 ? void 0 : _x$SSN.trim();
|
|
146
|
+
var firstName = toString(x.first_name);
|
|
147
|
+
var lastName = toString(x.last_name);
|
|
148
|
+
var SSN = toString(x.SSN);
|
|
142
149
|
var groupReference = undefined;
|
|
143
150
|
if (x.group) {
|
|
144
|
-
var
|
|
151
|
+
var key = toString(x.group).toLowerCase();
|
|
152
|
+
var ref = groupsNameMap.get(key);
|
|
145
153
|
if (!ref) {
|
|
146
154
|
warnings.push("The group ".concat(x.group, " referenced from the student ").concat(firstName, " ").concat(lastName, " does not exist."));
|
|
147
155
|
} else {
|
|
@@ -174,23 +182,37 @@ function _schedules(source) {
|
|
|
174
182
|
warnings.push("Could not find the courses tab.");
|
|
175
183
|
}
|
|
176
184
|
(_source$courses2 = source.courses) === null || _source$courses2 === void 0 ? void 0 : _source$courses2.forEach(x => {
|
|
177
|
-
var
|
|
185
|
+
var _toString, _toString2, _toString3, _toString4;
|
|
178
186
|
var courseId = generateId(coursesIdMap);
|
|
179
|
-
var displayName = (
|
|
180
|
-
var subject = x.subject;
|
|
187
|
+
var displayName = (_toString = toString(x.name)) === null || _toString === void 0 ? void 0 : _toString.trim();
|
|
188
|
+
var subject = toString(x.subject);
|
|
189
|
+
var totalHours = undefined;
|
|
190
|
+
if (x.total_hours) {
|
|
191
|
+
try {
|
|
192
|
+
totalHours = toInteger(x.total_hours);
|
|
193
|
+
} catch (e) {
|
|
194
|
+
warnings.push("The total hours \"".concat(x.total_hours, "\" for the course ").concat(displayName, " is not an integer."));
|
|
195
|
+
}
|
|
196
|
+
}
|
|
181
197
|
var minutesPerWeek = undefined;
|
|
182
198
|
if (x.minutes_per_week) {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
minutesPerWeek = val;
|
|
199
|
+
try {
|
|
200
|
+
minutesPerWeek = toMultipleOf5(x.minutes_per_week);
|
|
201
|
+
} catch (e) {
|
|
202
|
+
warnings.push("The minutes per week \"".concat(x.minutes_per_week, "\" for the course ").concat(displayName, " is not an integer."));
|
|
188
203
|
}
|
|
189
204
|
}
|
|
190
205
|
try {
|
|
191
206
|
var durations = [];
|
|
192
207
|
if (_lodash.default.isNumber(x.lesson_durations)) durations = [x.lesson_durations];else if (_lodash.default.isString(x.lesson_durations)) durations = x.lesson_durations.split(',').map(x => x.trim()).map(x => parseInt(x));
|
|
193
|
-
durations = durations.map(x =>
|
|
208
|
+
durations = durations.map(x => {
|
|
209
|
+
try {
|
|
210
|
+
return toMultipleOf5(x);
|
|
211
|
+
} catch (e) {
|
|
212
|
+
warnings.push("The lesson duration \"".concat(x, "\" for the course ").concat(displayName, " is not an integer."));
|
|
213
|
+
return undefined;
|
|
214
|
+
}
|
|
215
|
+
}).filter(x => {
|
|
194
216
|
if (!x) {
|
|
195
217
|
warnings.push("The lesson duration for the course ".concat(displayName, " becomes 0 when truncated to the nearest multiple of 5."));
|
|
196
218
|
return false;
|
|
@@ -210,7 +232,7 @@ function _schedules(source) {
|
|
|
210
232
|
warnings.push("Could not parse the lesson durations \"".concat(x.lesson_durations, "\" for the course ").concat(displayName, "."));
|
|
211
233
|
}
|
|
212
234
|
var locationReferences = [];
|
|
213
|
-
(
|
|
235
|
+
(_toString2 = toString(x.locations)) === null || _toString2 === void 0 ? void 0 : _toString2.split(',').map(x => x.trim().toLowerCase()).forEach(x => {
|
|
214
236
|
var ref = locationsNameMap.get(x);
|
|
215
237
|
if (!ref) {
|
|
216
238
|
warnings.push("The location ".concat(x, " referenced from the course ").concat(displayName, " does not exist."));
|
|
@@ -223,7 +245,7 @@ function _schedules(source) {
|
|
|
223
245
|
locationReferences.push(ref.id);
|
|
224
246
|
});
|
|
225
247
|
var groupReferences = [];
|
|
226
|
-
(
|
|
248
|
+
(_toString3 = toString(x.groups)) === null || _toString3 === void 0 ? void 0 : _toString3.split(',').map(x => x.trim().toLowerCase()).forEach(x => {
|
|
227
249
|
var ref = groupsNameMap.get(x);
|
|
228
250
|
if (!ref) {
|
|
229
251
|
warnings.push("The group ".concat(x, " referenced from the course ").concat(displayName, " does not exist."));
|
|
@@ -238,7 +260,7 @@ function _schedules(source) {
|
|
|
238
260
|
});
|
|
239
261
|
});
|
|
240
262
|
var teacherReferences = [];
|
|
241
|
-
(
|
|
263
|
+
(_toString4 = toString(x.teachers)) === null || _toString4 === void 0 ? void 0 : _toString4.split(',').map(x => x.trim().toLowerCase()).forEach(x => {
|
|
242
264
|
var ref = teachersNameMap.get(x);
|
|
243
265
|
if (!ref) {
|
|
244
266
|
warnings.push("The teacher ".concat(x, " referenced from the course ").concat(displayName, " does not exist."));
|
|
@@ -260,6 +282,7 @@ function _schedules(source) {
|
|
|
260
282
|
groupIndex: 0,
|
|
261
283
|
locations: [x]
|
|
262
284
|
})),
|
|
285
|
+
expectedTotalHours: totalHours,
|
|
263
286
|
displayName,
|
|
264
287
|
subject,
|
|
265
288
|
minutesPerWeek
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_lodash","_interopRequireDefault","require","_nanoid","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","generateId","map","id","nanoid","has","truncateToNearestMultipleOf5","num","_","isString","parseInt","Math","floor","_schedules","_source$locations","_source$teachers","_source$students","_source$groups","_source$courses","_source$settings","_source$settings$","_source$locations2","_source$groups2","_source$teachers2","_source$students2","_source$courses2","warnings","locationKeys","teacherKeys","studentKeys","groupKeys","courseKeys","locations","x","pick","values","some","y","teachers","students","groups","courses","settings","discretization","numDays","dayStart","dayEnd","number_of_days","_source$settings2","_source$settings2$","isNumber","concat","e","locationsIdMap","Map","locationsNameMap","_x$name","displayName","name","trim","location","set","groupsIdMap","groupsNameMap","_x$name2","group","teachersIdMap","teachersNameMap","_x$name3","teacher","personsIdMap","_x$first_name","_x$last_name","_x$SSN","firstName","first_name","lastName","last_name","SSN","groupReference","ref","get","sex","toLowerCase","person","coursesIdMap","eventsIdMap","_x$name4","_x$locations","_x$groups","_x$teachers","courseId","subject","minutesPerWeek","minutes_per_week","val","durations","lesson_durations","split","event","course","preferredDuration","locationReferences","includes","groupReferences","to","teacherReferences","groupIndex","persons","events","meta","default_1","schedules","_default"],"sources":["../../../../src/Excel/v1/from/index.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAAkD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,QAAAC,MAAA,EAAAC,cAAA,QAAAC,IAAA,GAAAC,MAAA,CAAAD,IAAA,CAAAF,MAAA,OAAAG,MAAA,CAAAC,qBAAA,QAAAC,OAAA,GAAAF,MAAA,CAAAC,qBAAA,CAAAJ,MAAA,GAAAC,cAAA,KAAAI,OAAA,GAAAA,OAAA,CAAAC,MAAA,WAAAC,GAAA,WAAAJ,MAAA,CAAAK,wBAAA,CAAAR,MAAA,EAAAO,GAAA,EAAAE,UAAA,OAAAP,IAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,IAAA,EAAAG,OAAA,YAAAH,IAAA;AAAA,SAAAU,cAAAC,MAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAF,CAAA,UAAAG,MAAA,WAAAF,SAAA,CAAAD,CAAA,IAAAC,SAAA,CAAAD,CAAA,QAAAA,CAAA,OAAAf,OAAA,CAAAI,MAAA,CAAAc,MAAA,OAAAC,OAAA,WAAAC,GAAA,IAAAC,eAAA,CAAAP,MAAA,EAAAM,GAAA,EAAAF,MAAA,CAAAE,GAAA,SAAAhB,MAAA,CAAAkB,yBAAA,GAAAlB,MAAA,CAAAmB,gBAAA,CAAAT,MAAA,EAAAV,MAAA,CAAAkB,yBAAA,CAAAJ,MAAA,KAAAlB,OAAA,CAAAI,MAAA,CAAAc,MAAA,GAAAC,OAAA,WAAAC,GAAA,IAAAhB,MAAA,CAAAoB,cAAA,CAAAV,MAAA,EAAAM,GAAA,EAAAhB,MAAA,CAAAK,wBAAA,CAAAS,MAAA,EAAAE,GAAA,iBAAAN,MAAA;AAAA,SAAAO,gBAAAxB,GAAA,EAAAuB,GAAA,EAAAK,KAAA,IAAAL,GAAA,GAAAM,cAAA,CAAAN,GAAA,OAAAA,GAAA,IAAAvB,GAAA,IAAAO,MAAA,CAAAoB,cAAA,CAAA3B,GAAA,EAAAuB,GAAA,IAAAK,KAAA,EAAAA,KAAA,EAAAf,UAAA,QAAAiB,YAAA,QAAAC,QAAA,oBAAA/B,GAAA,CAAAuB,GAAA,IAAAK,KAAA,WAAA5B,GAAA;AAAA,SAAA6B,eAAAG,GAAA,QAAAT,GAAA,GAAAU,YAAA,CAAAD,GAAA,2BAAAT,GAAA,gBAAAA,GAAA,GAAAW,MAAA,CAAAX,GAAA;AAAA,SAAAU,aAAAE,KAAA,EAAAC,IAAA,eAAAD,KAAA,iBAAAA,KAAA,kBAAAA,KAAA,MAAAE,IAAA,GAAAF,KAAA,CAAAG,MAAA,CAAAC,WAAA,OAAAF,IAAA,KAAAG,SAAA,QAAAC,GAAA,GAAAJ,IAAA,CAAAK,IAAA,CAAAP,KAAA,EAAAC,IAAA,2BAAAK,GAAA,sBAAAA,GAAA,YAAAE,SAAA,4DAAAP,IAAA,gBAAAF,MAAA,GAAAU,MAAA,EAAAT,KAAA;AAelD,SAASU,UAAUA,CAAEC,GAAqB;EAExC,IAAIC,EAAU;EACd,GAAG;IACDA,EAAE,GAAG,IAAAC,cAAM,GAAE;GACd,QAAQF,GAAG,CAACG,GAAG,CAACF,EAAE,CAAC;EAEpB,OAAOA,EAAE;AACX;AAEA,SAASG,4BAA4BA,CAAEC,GAAoB;EACzD,IAAIC,eAAC,CAACC,QAAQ,CAACF,GAAG,CAAC,EAAEA,GAAG,GAAGG,QAAQ,CAACH,GAAG,CAAC;EACxC,OAAOI,IAAI,CAACC,KAAK,CAACL,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;AAChC;AAGA,SAASM,UAAUA,CACjBpC,MAAoB;EAAA,IAAAqC,iBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,cAAA,EAAAC,eAAA,EAAAC,gBAAA,EAAAC,iBAAA,EAAAC,kBAAA,EAAAC,eAAA,EAAAC,iBAAA,EAAAC,iBAAA,EAAAC,gBAAA;EAGpB,IAAIC,QAAQ,GAAa,EAAE;EAO3B,IAAMC,YAAY,GAAmD,CAAC,MAAM,CAAC;EAC7E,IAAMC,WAAW,GAAoD,CAAC,MAAM,CAAC;EAC7E,IAAMC,WAAW,GAAoD,CAAC,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC;EACvH,IAAMC,SAAS,GAAsD,CAAC,MAAM,CAAC;EAC7E,IAAMC,UAAU,GAAqD,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;EACnKtD,MAAM,CAACuD,SAAS,IAAAlB,iBAAA,GAAGrC,MAAM,CAACuD,SAAS,cAAAlB,iBAAA,uBAAhBA,iBAAA,CAAkBZ,GAAG,CAAC+B,CAAC,IAAIzB,eAAC,CAAC0B,IAAI,CAACD,CAAC,EAAEN,YAAY,CAAC,CAAC,CAAC7D,MAAM,CAACmE,CAAC,IAAItE,MAAM,CAACwE,MAAM,CAACF,CAAC,CAAC,CAACG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAKzC,SAAS,CAAC,CAAC;EAC/HnB,MAAM,CAAC6D,QAAQ,IAAAvB,gBAAA,GAAItC,MAAM,CAAC6D,QAAS,cAAAvB,gBAAA,uBAAhBA,gBAAA,CAAkBb,GAAG,CAAC+B,CAAC,IAAIzB,eAAC,CAAC0B,IAAI,CAACD,CAAC,EAAEL,WAAW,CAAE,CAAC,CAAC9D,MAAM,CAACmE,CAAC,IAAItE,MAAM,CAACwE,MAAM,CAACF,CAAC,CAAC,CAACG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAKzC,SAAS,CAAC,CAAC;EAC/HnB,MAAM,CAAC8D,QAAQ,IAAAvB,gBAAA,GAAIvC,MAAM,CAAC8D,QAAS,cAAAvB,gBAAA,uBAAhBA,gBAAA,CAAkBd,GAAG,CAAC+B,CAAC,IAAIzB,eAAC,CAAC0B,IAAI,CAACD,CAAC,EAAEJ,WAAW,CAAE,CAAC,CAAC/D,MAAM,CAACmE,CAAC,IAAItE,MAAM,CAACwE,MAAM,CAACF,CAAC,CAAC,CAACG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAKzC,SAAS,CAAC,CAAC;EAC/HnB,MAAM,CAAC+D,MAAM,IAAAvB,cAAA,GAAMxC,MAAM,CAAC+D,MAAS,cAAAvB,cAAA,uBAAhBA,cAAA,CAAkBf,GAAG,CAAC+B,CAAC,IAAIzB,eAAC,CAAC0B,IAAI,CAACD,CAAC,EAAEH,SAAS,CAAI,CAAC,CAAChE,MAAM,CAACmE,CAAC,IAAItE,MAAM,CAACwE,MAAM,CAACF,CAAC,CAAC,CAACG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAKzC,SAAS,CAAC,CAAC;EAC/HnB,MAAM,CAACgE,OAAO,IAAAvB,eAAA,GAAKzC,MAAM,CAACgE,OAAS,cAAAvB,eAAA,uBAAhBA,eAAA,CAAkBhB,GAAG,CAAC+B,CAAC,IAAIzB,eAAC,CAAC0B,IAAI,CAACD,CAAC,EAAEF,UAAU,CAAG,CAAC,CAACjE,MAAM,CAACmE,CAAC,IAAItE,MAAM,CAACwE,MAAM,CAACF,CAAC,CAAC,CAACG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAKzC,SAAS,CAAC,CAAC;EAM/H,IAAM8C,QAAQ,GAA+B;IAC3CC,cAAc,EAAE,CAAC;IACjBC,OAAO,EAAS,CAAC;IACjBC,QAAQ,EAAQ,OAAO;IACvBC,MAAM,EAAU;GACjB;EACD,IAAK,CAAErE,MAAM,CAACiE,QAAQ,EAAE;IACtBhB,QAAQ,CAACxD,IAAI,oCAAoC;;EAEnD,KAAAiD,gBAAA,GAAI1C,MAAM,CAACiE,QAAQ,cAAAvB,gBAAA,gBAAAC,iBAAA,GAAfD,gBAAA,CAAkB,CAAC,CAAC,cAAAC,iBAAA,eAApBA,iBAAA,CAAsB2B,cAAc,EAAE;IAAA,IAAAC,iBAAA,EAAAC,kBAAA;IACxC,IAAML,OAAO,IAAAI,iBAAA,GAAGvE,MAAM,CAACiE,QAAQ,cAAAM,iBAAA,wBAAAC,kBAAA,GAAfD,iBAAA,CAAkB,CAAC,CAAC,cAAAC,kBAAA,uBAApBA,kBAAA,CAAsBF,cAAc;IACpD,IAAI;MACF,IAASvC,eAAC,CAAC0C,QAAQ,CAACN,OAAO,CAAC,EAAEF,QAAQ,CAACE,OAAO,GAAGA,OAAO,CAAC,KACpD,IAAIpC,eAAC,CAACC,QAAQ,CAACmC,OAAO,CAAC,EAAEF,QAAQ,CAACE,OAAO,GAAGlC,QAAQ,CAACkC,OAAO,CAAC;MAGlE,IAAIF,QAAQ,CAACE,OAAO,KAAK,CAAC,IAAIF,QAAQ,CAACE,OAAO,KAAK,CAAC,EAAE;QACpDlB,QAAQ,CAACxD,IAAI,yBAAAiF,MAAA,CAAwBP,OAAO,uBAAmB;QAC/DF,QAAQ,CAACE,OAAO,GAAG,CAAC;;KAEvB,CAAC,OAAOQ,CAAC,EAAE;MACV1B,QAAQ,CAACxD,IAAI,yCAAAiF,MAAA,CAAwCP,OAAO,0BAAsB;;;EAQtF,IAAMS,cAAc,GAAK,IAAIC,GAAG,EAAsB;EACtD,IAAMC,gBAAgB,GAAG,IAAID,GAAG,EAAsB;EACtD,IAAK,CAAE7E,MAAM,CAACuD,SAAS,EAAE;IACvBN,QAAQ,CAACxD,IAAI,qCAAqC;;EAEpD,CAAAmD,kBAAA,GAAA5C,MAAM,CAACuD,SAAS,cAAAX,kBAAA,uBAAhBA,kBAAA,CAAkB3C,OAAO,CAACuD,CAAC,IAAG;IAAA,IAAAuB,OAAA;IAC5B,IAAMC,WAAW,IAAAD,OAAA,GAAGvB,CAAC,CAACyB,IAAI,cAAAF,OAAA,uBAANA,OAAA,CAAQG,IAAI,EAAE;IAClC,IAAK,CAAEF,WAAW,EAAE;MAClB/B,QAAQ,CAACxD,IAAI,uCAAuC;MACpD;;IAGF,IAAIqF,gBAAgB,CAAClD,GAAG,CAACoD,WAAW,CAAC,EAAE;MACrC/B,QAAQ,CAACxD,IAAI,iBAAAiF,MAAA,CAAiBM,WAAW,iCAA8B;MACvE;;IAGF,IAAMtD,EAAE,GAAGF,UAAU,CAACoD,cAAc,CAAC;IACrC,IAAMO,QAAQ,GAAe;MAAEzD,EAAE;MAAEsD;IAAW,CAAE;IAChDF,gBAAgB,CAACM,GAAG,CAACJ,WAAW,EAAEG,QAAQ,CAAC;IAC3CP,cAAc,CAAGQ,GAAG,CAAC1D,EAAE,EAAWyD,QAAQ,CAAC;EAC7C,CAAC,CAAC;EAMF,IAAME,WAAW,GAAK,IAAIR,GAAG,EAAmB;EAChD,IAAMS,aAAa,GAAG,IAAIT,GAAG,EAAmB;EAChD,IAAK,CAAE7E,MAAM,CAAC+D,MAAM,EAAE;IACpBd,QAAQ,CAACxD,IAAI,kCAAkC;;EAEjD,CAAAoD,eAAA,GAAA7C,MAAM,CAAC+D,MAAM,cAAAlB,eAAA,uBAAbA,eAAA,CAAe5C,OAAO,CAACuD,CAAC,IAAG;IAAA,IAAA+B,QAAA;IACzB,IAAMP,WAAW,IAAAO,QAAA,GAAG/B,CAAC,CAACyB,IAAI,cAAAM,QAAA,uBAANA,QAAA,CAAQL,IAAI,EAAE;IAClC,IAAK,CAAEF,WAAW,EAAE;MAClB/B,QAAQ,CAACxD,IAAI,oCAAoC;MACjD;;IAGF,IAAI6F,aAAa,CAAC1D,GAAG,CAACoD,WAAW,CAAC,EAAE;MAClC/B,QAAQ,CAACxD,IAAI,cAAAiF,MAAA,CAAcM,WAAW,iCAA8B;MACpE;;IAGF,IAAMtD,EAAE,GAAGF,UAAU,CAAC6D,WAAW,CAAC;IAClC,IAAMG,KAAK,GAAY;MAAE9D,EAAE;MAAEsD;IAAW,CAAE;IAC1CM,aAAa,CAACF,GAAG,CAACJ,WAAW,EAAEQ,KAAK,CAAC;IACrCH,WAAW,CAAGD,GAAG,CAAC1D,EAAE,EAAW8D,KAAK,CAAC;EACvC,CAAC,CAAC;EAMF,IAAMC,aAAa,GAAK,IAAIZ,GAAG,EAAqB;EACpD,IAAMa,eAAe,GAAG,IAAIb,GAAG,EAAqB;EACpD,IAAK,CAAE7E,MAAM,CAAC6D,QAAQ,EAAE;IACtBZ,QAAQ,CAACxD,IAAI,oCAAoC;;EAEnD,CAAAqD,iBAAA,GAAA9C,MAAM,CAAC6D,QAAQ,cAAAf,iBAAA,uBAAfA,iBAAA,CAAiB7C,OAAO,CAACuD,CAAC,IAAG;IAAA,IAAAmC,QAAA;IAC3B,IAAMX,WAAW,IAAAW,QAAA,GAAGnC,CAAC,CAACyB,IAAI,cAAAU,QAAA,uBAANA,QAAA,CAAQT,IAAI,EAAE;IAClC,IAAK,CAAEF,WAAW,EAAE;MAClB/B,QAAQ,CAACxD,IAAI,sCAAsC;MACnD;;IAGF,IAAIiG,eAAe,CAAC9D,GAAG,CAACoD,WAAW,CAAC,EAAE;MACpC/B,QAAQ,CAACxD,IAAI,gBAAAiF,MAAA,CAAgBM,WAAW,iCAA8B;MACtE;;IAGF,IAAMtD,EAAE,GAAGF,UAAU,CAACiE,aAAa,CAAC;IACpC,IAAMG,OAAO,GAAc;MAAElE,EAAE;MAAEsD;IAAW,CAAE;IAC9CU,eAAe,CAACN,GAAG,CAACJ,WAAW,EAAEY,OAAO,CAAC;IACzCH,aAAa,CAAGL,GAAG,CAAC1D,EAAE,EAAWkE,OAAO,CAAC;EAC3C,CAAC,CAAC;EAMF,IAAMC,YAAY,GAAG,IAAIhB,GAAG,EAAoB;EAChD,IAAK,CAAE7E,MAAM,CAAC8D,QAAQ,EAAE;IACtBb,QAAQ,CAACxD,IAAI,oCAAoC;;EAEnD,CAAAsD,iBAAA,GAAA/C,MAAM,CAAC8D,QAAQ,cAAAf,iBAAA,uBAAfA,iBAAA,CAAiB9C,OAAO,CAACuD,CAAC,IAAG;IAAA,IAAAsC,aAAA,EAAAC,YAAA,EAAAC,MAAA;IAC3B,IAAMC,SAAS,IAAAH,aAAA,GAAGtC,CAAC,CAAC0C,UAAU,cAAAJ,aAAA,uBAAZA,aAAA,CAAcZ,IAAI,EAAE;IACtC,IAAMiB,QAAQ,IAAAJ,YAAA,GAAIvC,CAAC,CAAC4C,SAAS,cAAAL,YAAA,uBAAXA,YAAA,CAAab,IAAI,EAAE;IACrC,IAAMmB,GAAG,IAAAL,MAAA,GAASxC,CAAC,CAAC6C,GAAG,cAAAL,MAAA,uBAALA,MAAA,CAAOd,IAAI,EAAE;IAE/B,IAAIoB,cAAc,GAAuBnF,SAAS;IAClD,IAAIqC,CAAC,CAACgC,KAAK,EAAE;MACX,IAAMe,GAAG,GAAGjB,aAAa,CAACkB,GAAG,CAAChD,CAAC,CAACgC,KAAK,CAAC;MACtC,IAAK,CAAEe,GAAG,EAAE;QACVtD,QAAQ,CAACxD,IAAI,cAAAiF,MAAA,CAAclB,CAAC,CAACgC,KAAK,mCAAAd,MAAA,CAAgCuB,SAAS,OAAAvB,MAAA,CAAIyB,QAAQ,sBAAmB;OAC3G,MAAM;QACLG,cAAc,GAAGC,GAAG,CAAC7E,EAAE;;;IAI3B,IAAI+E,GAAoB;IACxB,IAAIjD,CAAC,CAACiD,GAAG,EAAE;MACT,IAAS1E,eAAC,CAACC,QAAQ,CAACwB,CAAC,CAACiD,GAAG,CAAC,IAAIjD,CAAC,CAACiD,GAAG,CAACC,WAAW,EAAE,IAAI,KAAK,EAAID,GAAG,GAAG,KAAK,CAAC,KACrE,IAAI1E,eAAC,CAACC,QAAQ,CAACwB,CAAC,CAACiD,GAAG,CAAC,IAAIjD,CAAC,CAACiD,GAAG,CAACC,WAAW,EAAE,IAAI,OAAO,EAAED,GAAG,GAAG,OAAO,CAAC,KACvE;QACHxD,QAAQ,CAACxD,IAAI,kBAAAiF,MAAA,CAAkBlB,CAAC,CAACiD,GAAI,yBAAA/B,MAAA,CAAqBuB,SAAS,OAAAvB,MAAA,CAAIyB,QAAQ,OAAI;;;IAIvF,IAAMzE,EAAE,GAAGF,UAAU,CAACqE,YAAY,CAAC;IACnC,IAAMc,MAAM,GAAAhH,aAAA;MAAe+B,EAAE;MAAEuE,SAAS;MAAEE,QAAQ;MAAEM,GAAG;MAAEjB,KAAK,EAAEc;IAAc,GAAKD,GAAG,IAAI;MAAEA,GAAG,EAAE;QAAE9F,KAAK,EAAE8F;MAAG;IAAE,CAAE,CAAE;IACnHR,YAAY,CAACT,GAAG,CAAC1D,EAAE,EAAEiF,MAAM,CAAC;EAC9B,CAAC,CAAC;EAMF,IAAMC,YAAY,GAAG,IAAI/B,GAAG,EAAoB;EAChD,IAAMgC,WAAW,GAAI,IAAIhC,GAAG,EAAmB;EAC/C,IAAK,CAAE7E,MAAM,CAACgE,OAAO,EAAE;IACrBf,QAAQ,CAACxD,IAAI,mCAAmC;;EAElD,CAAAuD,gBAAA,GAAAhD,MAAM,CAACgE,OAAO,cAAAhB,gBAAA,uBAAdA,gBAAA,CAAgB/C,OAAO,CAACuD,CAAC,IAAG;IAAA,IAAAsD,QAAA,EAAAC,YAAA,EAAAC,SAAA,EAAAC,WAAA;IAC1B,IAAMC,QAAQ,GAAM1F,UAAU,CAACoF,YAAY,CAAC;IAC5C,IAAM5B,WAAW,IAAA8B,QAAA,GAAGtD,CAAC,CAACyB,IAAI,cAAA6B,QAAA,uBAANA,QAAA,CAAQ5B,IAAI,EAAE;IAClC,IAAMiC,OAAO,GAAO3D,CAAC,CAAC2D,OAAO;IAG7B,IAAIC,cAAc,GAAuBjG,SAAS;IAClD,IAAIqC,CAAC,CAAC6D,gBAAgB,EAAE;MACtB,IAAMC,GAAG,GAAGzF,4BAA4B,CAAC2B,CAAC,CAAC6D,gBAAgB,CAAC;MAC5D,IAAK,CAAEC,GAAG,EAAE;QACVrE,QAAQ,CAACxD,IAAI,2BAAAiF,MAAA,CAA0BlB,CAAC,CAAC6D,gBAAgB,wBAAA3C,MAAA,CAAoBM,WAAW,6DAA0D;OACnJ,MAAM;QACLoC,cAAc,GAAGE,GAAG;;;IAKxB,IAAI;MACF,IAAIC,SAAS,GAAa,EAAE;MAC5B,IAASxF,eAAC,CAAC0C,QAAQ,CAACjB,CAAC,CAACgE,gBAAgB,CAAC,EAAED,SAAS,GAAG,CAAC/D,CAAC,CAACgE,gBAAgB,CAAC,CAAC,KACrE,IAAIzF,eAAC,CAACC,QAAQ,CAACwB,CAAC,CAACgE,gBAAgB,CAAC,EAAED,SAAS,GAAG/D,CAAC,CAACgE,gBAAgB,CAACC,KAAK,CAAC,GAAG,CAAC,CAAChG,GAAG,CAAC+B,CAAC,IAAIA,CAAC,CAAC0B,IAAI,EAAE,CAAC,CAACzD,GAAG,CAAC+B,CAAC,IAAIvB,QAAQ,CAACuB,CAAC,CAAC,CAAC;MAG3H+D,SAAS,GAAGA,SAAS,CAClB9F,GAAG,CAAC+B,CAAC,IAAI3B,4BAA4B,CAAC2B,CAAC,CAAC,CAAC,CACzCnE,MAAM,CAACmE,CAAC,IAAG;QACV,IAAK,CAAEA,CAAC,EAAE;UACRP,QAAQ,CAACxD,IAAI,uCAAAiF,MAAA,CAAuCM,WAAW,6DAA0D;UACzH,OAAO,KAAK;;QAEd,OAAO,IAAI;MACb,CAAC,CAAC;MAEJuC,SAAS,CAACtH,OAAO,CAACuD,CAAC,IAAG;QACpB,IAAM9B,EAAE,GAAGF,UAAU,CAACqF,WAAW,CAAC;QAClC,IAAMa,KAAK,GAAY;UAAEhG,EAAE;UAAEiG,MAAM,EAAET,QAAQ;UAAEU,iBAAiB,EAAEpE;QAAC,CAAE;QACrEqD,WAAW,CAACzB,GAAG,CAAC1D,EAAE,EAAEgG,KAAK,CAAC;MAC5B,CAAC,CAAC;KACH,CAAC,OAAO/C,CAAC,EAAE;MACV1B,QAAQ,CAACxD,IAAI,2CAAAiF,MAAA,CAA0ClB,CAAC,CAACgE,gBAAgB,wBAAA9C,MAAA,CAAoBM,WAAW,OAAI;;IAI9G,IAAM6C,kBAAkB,GAAa,EAAE;IACvC,CAAAd,YAAA,GAAAvD,CAAC,CAACD,SAAS,cAAAwD,YAAA,uBAAXA,YAAA,CAAaU,KAAK,CAAC,GAAG,CAAC,CAAChG,GAAG,CAAC+B,CAAC,IAAIA,CAAC,CAAC0B,IAAI,EAAE,CAAC,CAACjF,OAAO,CAACuD,CAAC,IAAG;MACrD,IAAM+C,GAAG,GAAGzB,gBAAgB,CAAC0B,GAAG,CAAChD,CAAC,CAAC;MACnC,IAAK,CAAE+C,GAAG,EAAE;QACVtD,QAAQ,CAACxD,IAAI,iBAAAiF,MAAA,CAAiBlB,CAAC,kCAAAkB,MAAA,CAA+BM,WAAW,sBAAmB;QAC5F;;MAGF,IAAI6C,kBAAkB,CAACC,QAAQ,CAACtE,CAAC,CAAC,EAAE;QAClCP,QAAQ,CAACxD,IAAI,iBAAAiF,MAAA,CAAiBlB,CAAC,oDAAAkB,MAAA,CAAiDM,WAAW,OAAI;QAC/F;;MAGF6C,kBAAkB,CAACpI,IAAI,CAAC8G,GAAG,CAAC7E,EAAE,CAAC;IACjC,CAAC,CAAC;IAGF,IAAMqG,eAAe,GAAqB,EAAE;IAC5C,CAAAf,SAAA,GAAAxD,CAAC,CAACO,MAAM,cAAAiD,SAAA,uBAARA,SAAA,CAAUS,KAAK,CAAC,GAAG,CAAC,CAAChG,GAAG,CAAC+B,CAAC,IAAIA,CAAC,CAAC0B,IAAI,EAAE,CAAC,CAACjF,OAAO,CAACuD,CAAC,IAAG;MAClD,IAAM+C,GAAG,GAAGjB,aAAa,CAACkB,GAAG,CAAChD,CAAC,CAAC;MAChC,IAAK,CAAE+C,GAAG,EAAE;QACVtD,QAAQ,CAACxD,IAAI,cAAAiF,MAAA,CAAclB,CAAC,kCAAAkB,MAAA,CAA+BM,WAAW,sBAAmB;QACzF;;MAGF,IAAI+C,eAAe,CAACpE,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACoE,EAAE,IAAIxE,CAAC,CAAC,EAAE;QACxCP,QAAQ,CAACxD,IAAI,cAAAiF,MAAA,CAAclB,CAAC,oDAAAkB,MAAA,CAAiDM,WAAW,OAAI;QAC5F;;MAGF+C,eAAe,CAACtI,IAAI,CAAC;QAAEuI,EAAE,EAAEzB,GAAG,CAAC7E;MAAE,CAAE,CAAC;IACtC,CAAC,CAAC;IAGF,IAAMuG,iBAAiB,GAAqB,EAAE;IAC9C,CAAAhB,WAAA,GAAAzD,CAAC,CAACK,QAAQ,cAAAoD,WAAA,uBAAVA,WAAA,CAAYQ,KAAK,CAAC,GAAG,CAAC,CAAChG,GAAG,CAAC+B,CAAC,IAAIA,CAAC,CAAC0B,IAAI,EAAE,CAAC,CAACjF,OAAO,CAACuD,CAAC,IAAG;MACpD,IAAM+C,GAAG,GAAGb,eAAe,CAACc,GAAG,CAAChD,CAAC,CAAC;MAClC,IAAK,CAAE+C,GAAG,EAAE;QACVtD,QAAQ,CAACxD,IAAI,gBAAAiF,MAAA,CAAgBlB,CAAC,kCAAAkB,MAAA,CAA+BM,WAAW,sBAAmB;QAC3F;;MAGF,IAAIiD,iBAAiB,CAACtE,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACoE,EAAE,IAAIxE,CAAC,CAAC,EAAE;QAC1CP,QAAQ,CAACxD,IAAI,gBAAAiF,MAAA,CAAgBlB,CAAC,oDAAAkB,MAAA,CAAiDM,WAAW,OAAI;QAC9F;;MAGFiD,iBAAiB,CAACxI,IAAI,CAAC;QAAEuI,EAAE,EAAEzB,GAAG,CAAC7E;MAAE,CAAE,CAAC;IACxC,CAAC,CAAC;IAEF,IAAMiG,MAAM,GAAa;MACvBjG,EAAE,EAASwF,QAAQ;MACnBnD,MAAM,EAAKgE,eAAe;MAC1BlE,QAAQ,EAAGoE,iBAAiB;MAC5B1E,SAAS,EAAEsE,kBAAkB,CAACpG,GAAG,CAAC+B,CAAC,KAAK;QAAE0E,UAAU,EAAE,CAAC;QAAE3E,SAAS,EAAE,CAACC,CAAC;MAAC,CAAE,CAAC,CAAC;MAC3EwB,WAAW;MAAEmC,OAAO;MAAEC;KACvB;IACDR,YAAY,CAACxB,GAAG,CAAC8B,QAAQ,EAAES,MAAM,CAAC;EACpC,CAAC,CAAC;EAMF,OAAO;IACL1D,QAAQ;IACRV,SAAS,EAAE,CAAC,GAAGqB,cAAc,CAAClB,MAAM,EAAE,CAAC;IACvCG,QAAQ,EAAG,CAAC,GAAG4B,aAAa,CAAE/B,MAAM,EAAE,CAAC;IACvCyE,OAAO,EAAI,CAAC,GAAGtC,YAAY,CAAGnC,MAAM,EAAE,CAAC;IACvCK,MAAM,EAAK,CAAC,GAAGsB,WAAW,CAAI3B,MAAM,EAAE,CAAC;IACvCM,OAAO,EAAI,CAAC,GAAG4C,YAAY,CAAGlD,MAAM,EAAE,CAAC;IACvC0E,MAAM,EAAK,CAAC,GAAGvB,WAAW,CAAInD,MAAM,EAAE,CAAC;IACvC2E,IAAI,EAAA1I,aAAA,KAECsD,QAAQ,CAAClD,MAAM,IAAI;MAAEkD,QAAQ,EAAEA;IAAQ,CAAE;GAE/C;AACH;AAGA,MAAAqF,SAAA;AACSA,SAAA,CAAAC,SAAS,GAAGnG,UAAU;AAAC,IAAAoG,QAAA,G"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_lodash","_interopRequireDefault","require","_nanoid","obj","__esModule","default","ownKeys","object","enumerableOnly","keys","Object","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","i","arguments","length","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","generateId","map","id","nanoid","has","toMultipleOf5","val","num","_","isString","parseInt","isNaN","Error","concat","Math","floor","toInteger","toString","x","isNumber","trim","_schedules","_source$locations","_source$teachers","_source$students","_source$groups","_source$courses","_source$settings","_source$settings$","_source$locations2","_source$groups2","_source$teachers2","_source$students2","_source$courses2","warnings","locationKeys","teacherKeys","studentKeys","groupKeys","courseKeys","locations","pick","values","some","y","teachers","students","groups","courses","settings","discretization","numDays","dayStart","dayEnd","number_of_days","_source$settings2","_source$settings2$","e","locationsIdMap","Map","locationsNameMap","displayName","name","toLowerCase","location","set","groupsIdMap","groupsNameMap","group","teachersIdMap","teachersNameMap","teacher","personsIdMap","firstName","first_name","lastName","last_name","SSN","groupReference","ref","get","sex","person","coursesIdMap","eventsIdMap","_toString","_toString2","_toString3","_toString4","courseId","subject","totalHours","total_hours","minutesPerWeek","minutes_per_week","durations","lesson_durations","split","event","course","preferredDuration","locationReferences","includes","groupReferences","to","teacherReferences","groupIndex","expectedTotalHours","persons","events","meta","default_1","schedules","_default"],"sources":["../../../../src/Excel/v1/from/index.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -1,31 +1,33 @@
|
|
|
1
|
+
type Value = string | number;
|
|
1
2
|
export declare module Types {
|
|
2
3
|
type Settings = {
|
|
3
|
-
number_of_days?:
|
|
4
|
+
number_of_days?: Value;
|
|
4
5
|
};
|
|
5
6
|
type Location = {
|
|
6
|
-
name?:
|
|
7
|
+
name?: Value;
|
|
7
8
|
};
|
|
8
9
|
type Teacher = {
|
|
9
|
-
name?:
|
|
10
|
+
name?: Value;
|
|
10
11
|
};
|
|
11
12
|
type Student = {
|
|
12
|
-
first_name?:
|
|
13
|
-
last_name?:
|
|
14
|
-
group?:
|
|
15
|
-
sex?:
|
|
16
|
-
SSN?:
|
|
13
|
+
first_name?: Value;
|
|
14
|
+
last_name?: Value;
|
|
15
|
+
group?: Value;
|
|
16
|
+
sex?: Value;
|
|
17
|
+
SSN?: Value;
|
|
17
18
|
};
|
|
18
19
|
type Group = {
|
|
19
|
-
name?:
|
|
20
|
+
name?: Value;
|
|
20
21
|
};
|
|
21
22
|
type Course = {
|
|
22
|
-
name?:
|
|
23
|
-
subject?:
|
|
24
|
-
groups?:
|
|
25
|
-
teachers?:
|
|
26
|
-
locations?:
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
name?: Value;
|
|
24
|
+
subject?: Value;
|
|
25
|
+
groups?: Value;
|
|
26
|
+
teachers?: Value;
|
|
27
|
+
locations?: Value;
|
|
28
|
+
total_hours?: Value;
|
|
29
|
+
minutes_per_week?: Value;
|
|
30
|
+
lesson_durations?: Value;
|
|
29
31
|
};
|
|
30
32
|
type Source = {
|
|
31
33
|
settings?: [] | [Settings];
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface Course {
|
|
2
|
+
Klass: string;
|
|
3
|
+
Kurskod: string;
|
|
4
|
+
Sign: string;
|
|
5
|
+
Poäng: number;
|
|
6
|
+
Ht: number;
|
|
7
|
+
Resurs: 0 | 1;
|
|
8
|
+
Vt: number;
|
|
9
|
+
Summa: number;
|
|
10
|
+
Period: 'LÅ' | 'Vt' | 'Ht';
|
|
11
|
+
Anteckningar: string;
|
|
12
|
+
Antal: number;
|
|
13
|
+
Ämne: string;
|
|
14
|
+
Kursnamn: string;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"course.js","names":[],"sources":[],"sourcesContent":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"period.js","names":[],"sources":[],"sourcesContent":[],"mappings":""}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _schedules2 = _interopRequireDefault(require("./schedules"));
|
|
8
|
+
function _interopRequireDefault(obj) {
|
|
9
|
+
return obj && obj.__esModule ? obj : {
|
|
10
|
+
default: obj
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
class default_1 {}
|
|
14
|
+
exports.default = default_1;
|
|
15
|
+
default_1.schedules = _schedules2.default;
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":["_schedules2","_interopRequireDefault","require","default_1","schedules","default"],"sources":["../../../src/SchoolSoft/from/index.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;;;;;;AAEc,MAAAC,SAAA;;AACLA,SAAA,CAAAC,SAAA,GAAsBJ,WAAA,CAAAK,OAAtB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
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;
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _lodash = _interopRequireDefault(require("lodash"));
|
|
8
|
+
var _getDate = _interopRequireDefault(require("../../common/get-date"));
|
|
9
|
+
function _interopRequireDefault(obj) {
|
|
10
|
+
return obj && obj.__esModule ? obj : {
|
|
11
|
+
default: obj
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function ownKeys(object, enumerableOnly) {
|
|
15
|
+
var keys = Object.keys(object);
|
|
16
|
+
if (Object.getOwnPropertySymbols) {
|
|
17
|
+
var symbols = Object.getOwnPropertySymbols(object);
|
|
18
|
+
enumerableOnly && (symbols = symbols.filter(function (sym) {
|
|
19
|
+
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
20
|
+
})), keys.push.apply(keys, symbols);
|
|
21
|
+
}
|
|
22
|
+
return keys;
|
|
23
|
+
}
|
|
24
|
+
function _objectSpread(target) {
|
|
25
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
26
|
+
var source = null != arguments[i] ? arguments[i] : {};
|
|
27
|
+
i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
|
|
28
|
+
_defineProperty(target, key, source[key]);
|
|
29
|
+
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
|
|
30
|
+
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
return target;
|
|
34
|
+
}
|
|
35
|
+
function _defineProperty(obj, key, value) {
|
|
36
|
+
if (key in obj) {
|
|
37
|
+
Object.defineProperty(obj, key, {
|
|
38
|
+
value: value,
|
|
39
|
+
enumerable: true,
|
|
40
|
+
configurable: true,
|
|
41
|
+
writable: true
|
|
42
|
+
});
|
|
43
|
+
} else {
|
|
44
|
+
obj[key] = value;
|
|
45
|
+
}
|
|
46
|
+
return obj;
|
|
47
|
+
}
|
|
48
|
+
var days = ['Mån', 'Tis', 'Ons', 'Tor', 'Fre', 'Lör', 'Sön'];
|
|
49
|
+
function _parseWeeks(weeks, set) {
|
|
50
|
+
var method = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'add';
|
|
51
|
+
if (!weeks) return;
|
|
52
|
+
var intervals = weeks.split(',').map(_lodash.default.trim);
|
|
53
|
+
intervals.forEach(interval => {
|
|
54
|
+
if (!interval.includes('-')) return set[method](Number(interval));
|
|
55
|
+
var [start, end] = interval.split('-').map(Number);
|
|
56
|
+
Array(end - start + 1).fill(start).forEach((val, index) => set[method](val + index));
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
var _default = (input, options) => {
|
|
60
|
+
if (!input) throw new Error('(SchoolSoft::From::Schedules) Input was undefined');
|
|
61
|
+
if (_lodash.default.isString(input)) throw new Error('(SchoolSoft::From::Schedules) Input was of type string. Is required to be of object type');
|
|
62
|
+
var teachers = new Set();
|
|
63
|
+
var groups = new Set();
|
|
64
|
+
var locations = new Set();
|
|
65
|
+
var events = input.reduce((acc, event) => {
|
|
66
|
+
var _locations2;
|
|
67
|
+
if (!('length' in event)) return acc;
|
|
68
|
+
var weeks = new Set();
|
|
69
|
+
var {
|
|
70
|
+
inweek,
|
|
71
|
+
exweek,
|
|
72
|
+
realweeks
|
|
73
|
+
} = event;
|
|
74
|
+
try {
|
|
75
|
+
_parseWeeks(inweek, weeks, 'add');
|
|
76
|
+
_parseWeeks(realweeks, weeks, 'add');
|
|
77
|
+
if (weeks.size == 0) Array(51).fill(1).forEach((val, index) => weeks.add(val + index));
|
|
78
|
+
_parseWeeks(exweek, weeks, 'delete');
|
|
79
|
+
} catch (err) {
|
|
80
|
+
console.error(err);
|
|
81
|
+
}
|
|
82
|
+
if (options !== null && options !== void 0 && options.interval) {
|
|
83
|
+
var {
|
|
84
|
+
start: _start,
|
|
85
|
+
end: _end
|
|
86
|
+
} = options.interval;
|
|
87
|
+
if (_start > 52 || _start <= 0) throw new Error("(SchoolSoft::From::Schedules) Interval::start is invalid. value ".concat(_start));
|
|
88
|
+
if (_end > 52 || _end <= 0) throw new Error("(SchoolSoft::From::Schedules) Interval::end is invalid. value ".concat(_end));
|
|
89
|
+
if (_start > _end) {
|
|
90
|
+
if (!Array.from(weeks).some(week => week >= _start && week <= 52 || week <= _end)) return acc;
|
|
91
|
+
} else {
|
|
92
|
+
if (!Array.from(weeks).some(week => week >= _start && week <= _end)) return acc;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
var start, end;
|
|
96
|
+
var {
|
|
97
|
+
starttime,
|
|
98
|
+
subject,
|
|
99
|
+
day,
|
|
100
|
+
length,
|
|
101
|
+
teacher,
|
|
102
|
+
group,
|
|
103
|
+
room
|
|
104
|
+
} = event;
|
|
105
|
+
if (day && starttime) {
|
|
106
|
+
var _day = days.indexOf(day);
|
|
107
|
+
if (_day > 4) return acc;
|
|
108
|
+
start = (0, _getDate.default)(_day, "".concat(starttime.substring(0, 2), ":").concat(starttime.substring(2, 4)));
|
|
109
|
+
end = start.clone().add(length, 'm');
|
|
110
|
+
}
|
|
111
|
+
var _teachers;
|
|
112
|
+
var _groups;
|
|
113
|
+
var _locations;
|
|
114
|
+
if (teacher) {
|
|
115
|
+
_teachers = teacher.split(',').map(x => x.trim());
|
|
116
|
+
_teachers.forEach(_teacher => teachers.add(_teacher));
|
|
117
|
+
}
|
|
118
|
+
if (group) {
|
|
119
|
+
_groups = group.split(',').map(x => x.trim());
|
|
120
|
+
_groups.forEach(_group => groups.add(_group));
|
|
121
|
+
}
|
|
122
|
+
if (room) {
|
|
123
|
+
_locations = _lodash.default.sortBy(room.split(',').map(x => x.trim()));
|
|
124
|
+
_locations.forEach(_location => locations.add(_location));
|
|
125
|
+
}
|
|
126
|
+
return acc.concat(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
127
|
+
ids: event.id,
|
|
128
|
+
preferredDuration: event.length,
|
|
129
|
+
weeks: _lodash.default.sortBy(Array.from(weeks))
|
|
130
|
+
}, subject && {
|
|
131
|
+
subject
|
|
132
|
+
}), start && {
|
|
133
|
+
start
|
|
134
|
+
}), end && {
|
|
135
|
+
end
|
|
136
|
+
}), event.group && {
|
|
137
|
+
groups: _groups
|
|
138
|
+
}), event.teacher && {
|
|
139
|
+
teachers: _teachers
|
|
140
|
+
}), event.room && {
|
|
141
|
+
inLocations: _locations,
|
|
142
|
+
locations: (_locations2 = _locations) === null || _locations2 === void 0 ? void 0 : _locations2.map((_location, index) => ({
|
|
143
|
+
locations: [_location],
|
|
144
|
+
groupIndex: index
|
|
145
|
+
}))
|
|
146
|
+
}));
|
|
147
|
+
}, []);
|
|
148
|
+
var set = new Set(events);
|
|
149
|
+
var courses = new Set([]);
|
|
150
|
+
var _loop = function _loop(element) {
|
|
151
|
+
var _ref;
|
|
152
|
+
set.delete(element);
|
|
153
|
+
var events = [element];
|
|
154
|
+
var {
|
|
155
|
+
subject,
|
|
156
|
+
groups,
|
|
157
|
+
teachers,
|
|
158
|
+
inLocations,
|
|
159
|
+
locations
|
|
160
|
+
} = element;
|
|
161
|
+
delete element.groups;
|
|
162
|
+
delete element.subject;
|
|
163
|
+
for (var event of set) {
|
|
164
|
+
if (event.subject != subject) continue;
|
|
165
|
+
if (groups !== null && groups !== void 0 && groups.length && !_lodash.default.isEqual(_lodash.default.sortBy(event.groups), _lodash.default.sortBy(groups))) continue;
|
|
166
|
+
if (!(groups !== null && groups !== void 0 && groups.length) && teachers !== null && teachers !== void 0 && teachers.length && !_lodash.default.isEqual(_lodash.default.sortBy(event.teachers), _lodash.default.sortBy(teachers))) continue;
|
|
167
|
+
delete event.groups;
|
|
168
|
+
delete event.subject;
|
|
169
|
+
events.push(event);
|
|
170
|
+
set.delete(event);
|
|
171
|
+
}
|
|
172
|
+
var course = _objectSpread(_objectSpread({
|
|
173
|
+
displayName: "".concat(subject, "-").concat((_ref = groups !== null && groups !== void 0 ? groups : teachers) === null || _ref === void 0 ? void 0 : _ref.join(' '))
|
|
174
|
+
}, groups && {
|
|
175
|
+
groups
|
|
176
|
+
}), {}, {
|
|
177
|
+
events
|
|
178
|
+
});
|
|
179
|
+
if (events.every(_ref2 => {
|
|
180
|
+
var {
|
|
181
|
+
teachers: _teachers
|
|
182
|
+
} = _ref2;
|
|
183
|
+
return _lodash.default.isEqual(_lodash.default.sortBy(teachers), _lodash.default.sortBy(_teachers));
|
|
184
|
+
})) {
|
|
185
|
+
var _course$events;
|
|
186
|
+
course.teachers = teachers;
|
|
187
|
+
(_course$events = course.events) === null || _course$events === void 0 ? void 0 : _course$events.forEach(event => delete event.teachers);
|
|
188
|
+
}
|
|
189
|
+
if (events.every(_ref3 => {
|
|
190
|
+
var {
|
|
191
|
+
inLocations: _inLocations
|
|
192
|
+
} = _ref3;
|
|
193
|
+
return _lodash.default.isEqual(_lodash.default.sortBy(inLocations), _lodash.default.sortBy(_inLocations));
|
|
194
|
+
})) {
|
|
195
|
+
var _course$events2;
|
|
196
|
+
course.locations = locations;
|
|
197
|
+
(_course$events2 = course.events) === null || _course$events2 === void 0 ? void 0 : _course$events2.forEach(event => delete event.locations);
|
|
198
|
+
}
|
|
199
|
+
courses.add(course);
|
|
200
|
+
};
|
|
201
|
+
for (var element of set) {
|
|
202
|
+
_loop(element);
|
|
203
|
+
}
|
|
204
|
+
return {
|
|
205
|
+
courses: Array.from(courses),
|
|
206
|
+
teachers: Array.from(teachers).map(ids => ({
|
|
207
|
+
ids,
|
|
208
|
+
displayName: ids
|
|
209
|
+
})),
|
|
210
|
+
groups: Array.from(groups).map(ids => ({
|
|
211
|
+
ids,
|
|
212
|
+
displayName: ids
|
|
213
|
+
})),
|
|
214
|
+
locations: Array.from(locations).map(ids => ({
|
|
215
|
+
ids,
|
|
216
|
+
displayName: ids
|
|
217
|
+
}))
|
|
218
|
+
};
|
|
219
|
+
};
|
|
220
|
+
exports.default = _default;
|
|
221
|
+
//# sourceMappingURL=schedules.js.map
|