@royalschedule/maps 2.2.37 → 2.2.40
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/SchoolSoft/file/to/index.d.ts +6 -1
- package/dist/SchoolSoft/file/to/schedules.d.ts +6 -1
- package/dist/SchoolSoft/file/to/schedules.js +22 -7
- package/dist/SchoolSoft/file/to/schedules.js.map +1 -1
- package/dist/SchoolSoft/file/types/events.d.ts +2 -0
- package/dist/core/identify/index.js +11 -38
- package/dist/core/identify/index.js.map +1 -1
- package/dist/core/types/identify.d.ts +1 -1
- package/package.json +1 -1
- package/dist/SchoolSoft/from/index.d.ts +0 -8
- package/dist/SchoolSoft/from/index.js +0 -20
- package/dist/SchoolSoft/from/index.js.map +0 -1
- package/dist/SchoolSoft/from/schedules.d.ts +0 -9
- package/dist/SchoolSoft/from/schedules.js +0 -266
- package/dist/SchoolSoft/from/schedules.js.map +0 -1
- package/dist/SchoolSoft/to/index.d.ts +0 -3
- package/dist/SchoolSoft/to/index.js +0 -20
- package/dist/SchoolSoft/to/index.js.map +0 -1
- package/dist/SchoolSoft/to/schedules.d.ts +0 -4
- package/dist/SchoolSoft/to/schedules.js +0 -44
- package/dist/SchoolSoft/to/schedules.js.map +0 -1
- package/dist/SchoolSoft/types/events.d.ts +0 -19
- package/dist/SchoolSoft/types/events.js +0 -6
- package/dist/SchoolSoft/types/events.js.map +0 -1
- package/dist/SchoolSoft/types/index.d.ts +0 -4
- package/dist/SchoolSoft/types/index.js +0 -6
- package/dist/SchoolSoft/types/index.js.map +0 -1
|
@@ -1,3 +1,8 @@
|
|
|
1
1
|
export default class {
|
|
2
|
-
static schedules: (courseEvents: import("../../../core/types/course-events").CourseEvent[]
|
|
2
|
+
static schedules: (courseEvents: import("../../../core/types/course-events").CourseEvent[], options?: {
|
|
3
|
+
interval?: {
|
|
4
|
+
start: string;
|
|
5
|
+
end: string;
|
|
6
|
+
} | undefined;
|
|
7
|
+
} | undefined) => import("xlsx").WorkBook;
|
|
3
8
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import XLSX from 'xlsx';
|
|
2
2
|
import { CourseEvent } from '../../../core/types/course-events';
|
|
3
|
-
declare const _default: (courseEvents: CourseEvent[]
|
|
3
|
+
declare const _default: (courseEvents: CourseEvent[], options?: {
|
|
4
|
+
interval?: {
|
|
5
|
+
start: string;
|
|
6
|
+
end: string;
|
|
7
|
+
} | undefined;
|
|
8
|
+
} | undefined) => XLSX.WorkBook;
|
|
4
9
|
export default _default;
|
|
@@ -11,21 +11,36 @@ var _moment = _interopRequireDefault(require("moment"));
|
|
|
11
11
|
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
13
|
|
|
14
|
-
var _default = courseEvents => {
|
|
14
|
+
var _default = (courseEvents, options) => {
|
|
15
|
+
var inweek = '';
|
|
16
|
+
|
|
17
|
+
if (options !== null && options !== void 0 && options.interval) {
|
|
18
|
+
var {
|
|
19
|
+
start,
|
|
20
|
+
end
|
|
21
|
+
} = options.interval;
|
|
22
|
+
|
|
23
|
+
var diff = _moment.default.duration((0, _moment.default)(start).diff((0, _moment.default)(end)));
|
|
24
|
+
|
|
25
|
+
inweek = Array(diff.weeks()).fill((0, _moment.default)(start).week()).map((val, index) => val + index).join(',');
|
|
26
|
+
}
|
|
27
|
+
|
|
15
28
|
var events = courseEvents.reduce((acc, event) => {
|
|
29
|
+
var _event$course, _event$weeks$join, _event$weeks;
|
|
30
|
+
|
|
16
31
|
if (event.parked) return acc;
|
|
17
32
|
var teachers = event.teachers == null ? event.course.teachers : event.teachers;
|
|
18
33
|
var room = event.inLocations.filter(x => x !== null).map(locations => locations.ids).join(', ');
|
|
19
34
|
return acc.concat({
|
|
20
|
-
|
|
35
|
+
groupid: event.course.ids,
|
|
21
36
|
dayid: _moment.default.utc(event.start).day() - 1,
|
|
22
37
|
starttime: _moment.default.utc(event.start).format('HHmm'),
|
|
23
38
|
length: _moment.default.utc(event.end).diff(_moment.default.utc(event.start), 'minutes'),
|
|
24
|
-
|
|
25
|
-
subject:
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
39
|
+
teacherid: (teachers || []).map(teacher => teacher.ids).join(', '),
|
|
40
|
+
subject: (_event$course = event.course) === null || _event$course === void 0 ? void 0 : _event$course.subject,
|
|
41
|
+
exweek: '',
|
|
42
|
+
room,
|
|
43
|
+
inweek: (_event$weeks$join = (_event$weeks = event.weeks) === null || _event$weeks === void 0 ? void 0 : _event$weeks.join(',')) !== null && _event$weeks$join !== void 0 ? _event$weeks$join : inweek
|
|
29
44
|
});
|
|
30
45
|
}, []);
|
|
31
46
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedules.js","mappings":";;;;;;;AAAA;;AACA;;;;
|
|
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]}
|
|
@@ -3,11 +3,13 @@ export declare type Day = 'Mån' | 'Tis' | 'Ons' | 'Tor' | 'Fre' | 'Lör' | 'Sö
|
|
|
3
3
|
export interface Event {
|
|
4
4
|
id?: string;
|
|
5
5
|
group?: string;
|
|
6
|
+
groupid?: string;
|
|
6
7
|
dayid?: number;
|
|
7
8
|
day?: Day;
|
|
8
9
|
starttime?: Time;
|
|
9
10
|
length?: number;
|
|
10
11
|
teacher?: string;
|
|
12
|
+
teacherid?: string;
|
|
11
13
|
subject?: string;
|
|
12
14
|
room?: string;
|
|
13
15
|
period?: string;
|
|
@@ -34,63 +34,36 @@ function identify(schedule) {
|
|
|
34
34
|
var collections = Array.isArray(schedule) ? _reduceSchedule(schedule) : Object.keys(schedule);
|
|
35
35
|
if (!collections.length) return similarities;
|
|
36
36
|
|
|
37
|
-
_constants.maps.forEach(
|
|
37
|
+
_constants.maps.forEach(x => {
|
|
38
38
|
var {
|
|
39
39
|
structure,
|
|
40
40
|
map,
|
|
41
41
|
name,
|
|
42
42
|
meta
|
|
43
|
-
} =
|
|
43
|
+
} = x;
|
|
44
44
|
|
|
45
45
|
try {
|
|
46
46
|
var _collections = Array.isArray(structure) ? structure : Object.keys(structure);
|
|
47
47
|
|
|
48
48
|
if (Array.isArray(schedule)) {
|
|
49
|
-
if (!Array.isArray(structure)) return similarities.none.push(
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
if (_lodash.default.isEqual(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections))) return similarities.strong.push({
|
|
54
|
-
map,
|
|
55
|
-
name
|
|
56
|
-
});
|
|
57
|
-
if (_lodash.default.difference(_lodash.default.sortBy(_collections), _lodash.default.sortBy(collections)).length < _collections.length) return similarities.weak.push({
|
|
58
|
-
map,
|
|
59
|
-
name
|
|
60
|
-
});
|
|
61
|
-
return similarities.none.push({
|
|
62
|
-
map,
|
|
63
|
-
name
|
|
64
|
-
});
|
|
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);
|
|
65
53
|
}
|
|
66
54
|
|
|
67
|
-
if (meta && _lodash.default.isMatch(schedule.meta, meta)) return similarities.determined =
|
|
68
|
-
map,
|
|
69
|
-
name
|
|
70
|
-
};
|
|
55
|
+
if (meta && _lodash.default.isMatch(schedule.meta, meta)) return similarities.determined = x;
|
|
71
56
|
if (_collections.every(collection => {
|
|
72
57
|
if (!(collection in schedule)) return false;
|
|
73
58
|
return _reduceSchedule(schedule[collection]).every(key => structure[collection].includes(key));
|
|
74
|
-
})) return similarities.strong.push(
|
|
75
|
-
map,
|
|
76
|
-
name
|
|
77
|
-
});
|
|
59
|
+
})) return similarities.strong.push(x);
|
|
78
60
|
if (_collections.some(collection => {
|
|
79
61
|
if (!(collection in schedule)) return false;
|
|
80
62
|
return _reduceSchedule(schedule[collection]).some(key => structure[collection].includes(key));
|
|
81
|
-
})) return similarities.weak.push(
|
|
82
|
-
|
|
83
|
-
name
|
|
84
|
-
});
|
|
85
|
-
return similarities.none.push({
|
|
86
|
-
map,
|
|
87
|
-
name
|
|
88
|
-
});
|
|
63
|
+
})) return similarities.weak.push(x);
|
|
64
|
+
return similarities.none.push(x);
|
|
89
65
|
} catch (err) {
|
|
90
|
-
similarities.error.push(
|
|
91
|
-
map,
|
|
92
|
-
name
|
|
93
|
-
});
|
|
66
|
+
similarities.error.push(x);
|
|
94
67
|
}
|
|
95
68
|
});
|
|
96
69
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","mappings":";;;;;;;AAAA;;AAEA;;;;AAGA,SAASA,eAAT,CAA0BC,IAA1B,EAAiD;AAC/C,MAAIC,IAAI,GAAgB,IAAIC,GAAJ,EAAxB;;AAEA,MAAIC,KAAK,CAACC,OAAN,CAAcJ,IAAd,CAAJ,EAAyB;AACvBA,QAAI,CAACK,IAAL,GAAYC,OAAZ,CAAqBC,GAAD,IAAcC,MAAM,CAACP,IAAP,CAAYM,GAAZ,EAAiBD,OAAjB,CAA0BG,GAAD,IAAiBR,IAAI,CAACS,GAAL,CAASD,GAAT,CAA1C,CAAlC;AACD,GAFD,MAEO;AACLD,UAAM,CAACP,IAAP,CAAYD,IAAZ,EAAkBM,OAAlB,CAA2BG,GAAD,IAAiBR,IAAI,CAACS,GAAL,CAASD,GAAT,CAA3C;AACD;;AAED,SAAON,KAAK,CAACQ,IAAN,CAAWV,IAAX,CAAP;AACD;;AAEK,SAAUW,QAAV,CAAoBC,QAApB,EAAiC;AACrC,MAAIC,YAAY,GAAmB;AACjCC,QAAI,EAAQ,EADqB;AAEjCC,QAAI,EAAQ,EAFqB;AAGjCC,UAAM,EAAM,EAHqB;AAIjCC,SAAK,EAAO;AAJqB,GAAnC;AAOA,MAAI,CAAEL,QAAN,EACE,OAAOC,YAAP;AAEF,MAAMK,WAAW,GAAahB,KAAK,CAACC,OAAN,CAAcS,QAAd,IAA0Bd,eAAe,CAACc,QAAD,CAAzC,GAAsDL,MAAM,CAACP,IAAP,CAAYY,QAAZ,CAApF;AAEA,MAAI,CAAEM,WAAW,CAACC,MAAlB,EACE,OAAON,YAAP;;AAEFO,kBAAKf,OAAL,
|
|
1
|
+
{"version":3,"file":"index.js","mappings":";;;;;;;AAAA;;AAEA;;;;AAGA,SAASA,eAAT,CAA0BC,IAA1B,EAAiD;AAC/C,MAAIC,IAAI,GAAgB,IAAIC,GAAJ,EAAxB;;AAEA,MAAIC,KAAK,CAACC,OAAN,CAAcJ,IAAd,CAAJ,EAAyB;AACvBA,QAAI,CAACK,IAAL,GAAYC,OAAZ,CAAqBC,GAAD,IAAcC,MAAM,CAACP,IAAP,CAAYM,GAAZ,EAAiBD,OAAjB,CAA0BG,GAAD,IAAiBR,IAAI,CAACS,GAAL,CAASD,GAAT,CAA1C,CAAlC;AACD,GAFD,MAEO;AACLD,UAAM,CAACP,IAAP,CAAYD,IAAZ,EAAkBM,OAAlB,CAA2BG,GAAD,IAAiBR,IAAI,CAACS,GAAL,CAASD,GAAT,CAA3C;AACD;;AAED,SAAON,KAAK,CAACQ,IAAN,CAAWV,IAAX,CAAP;AACD;;AAEK,SAAUW,QAAV,CAAoBC,QAApB,EAAiC;AACrC,MAAIC,YAAY,GAAmB;AACjCC,QAAI,EAAQ,EADqB;AAEjCC,QAAI,EAAQ,EAFqB;AAGjCC,UAAM,EAAM,EAHqB;AAIjCC,SAAK,EAAO;AAJqB,GAAnC;AAOA,MAAI,CAAEL,QAAN,EACE,OAAOC,YAAP;AAEF,MAAMK,WAAW,GAAahB,KAAK,CAACC,OAAN,CAAcS,QAAd,IAA0Bd,eAAe,CAACc,QAAD,CAAzC,GAAsDL,MAAM,CAACP,IAAP,CAAYY,QAAZ,CAApF;AAEA,MAAI,CAAEM,WAAW,CAACC,MAAlB,EACE,OAAON,YAAP;;AAEFO,kBAAKf,OAAL,CAAagB,CAAC,IAAG;AACf,QAAM;AAAEC,eAAF;AAAaC,SAAb;AAAkBC,UAAlB;AAAwBC;AAAxB,QAAiCJ,CAAvC;;AAEA,QAAI;AACF,UAAMK,YAAY,GAAGxB,KAAK,CAACC,OAAN,CAAcmB,SAAd,IAA2BA,SAA3B,GAAuCf,MAAM,CAACP,IAAP,CAAYsB,SAAZ,CAA5D;;AAKA,UAAIpB,KAAK,CAACC,OAAN,CAAcS,QAAd,CAAJ,EAA6B;AAE3B,YAAI,CAAEV,KAAK,CAACC,OAAN,CAAcmB,SAAd,CAAN,EACE,OAAOT,YAAY,CAACC,IAAb,CAAkBa,IAAlB,CAAuBN,CAAvB,CAAP;AAEF,YAAIO,gBAAEC,OAAF,CAAUD,gBAAEE,MAAF,CAASJ,YAAT,CAAV,EAAkCE,gBAAEE,MAAF,CAASZ,WAAT,CAAlC,CAAJ,EACE,OAAOL,YAAY,CAACG,MAAb,CAAoBW,IAApB,CAAyBN,CAAzB,CAAP;AAEF,YAAIO,gBAAEG,UAAF,CAAaH,gBAAEE,MAAF,CAASJ,YAAT,CAAb,EAAqCE,gBAAEE,MAAF,CAASZ,WAAT,CAArC,EAA4DC,MAA5D,GAAqEO,YAAY,CAACP,MAAtF,EACE,OAAON,YAAY,CAACE,IAAb,CAAkBY,IAAlB,CAAuBN,CAAvB,CAAP;AAEF,eAAOR,YAAY,CAACC,IAAb,CAAkBa,IAAlB,CAAuBN,CAAvB,CAAP;AACD;;AASD,UAAII,IAAI,IAAIG,gBAAEI,OAAF,CAAUpB,QAAQ,CAACa,IAAnB,EAAyBA,IAAzB,CAAZ,EACE,OAAOZ,YAAY,CAACoB,UAAb,GAA0BZ,CAAjC;AAKF,UAAIK,YAAY,CAACQ,KAAb,CAAoBC,UAAD,IAAuB;AAC5C,YAAI,EAAGA,UAAU,IAAIvB,QAAjB,CAAJ,EACE,OAAO,KAAP;AAEF,eAAOd,eAAe,CAACc,QAAQ,CAACuB,UAAD,CAAT,CAAf,CAAsCD,KAAtC,CAA6C1B,GAAD,IAAiBc,SAAS,CAACa,UAAD,CAAT,CAAsBC,QAAtB,CAA+B5B,GAA/B,CAA7D,CAAP;AACD,OALG,CAAJ,EAKI,OAAOK,YAAY,CAACG,MAAb,CAAoBW,IAApB,CAAyBN,CAAzB,CAAP;AAKJ,UAAIK,YAAY,CAACW,IAAb,CAAmBF,UAAD,IAAuB;AAC3C,YAAI,EAAGA,UAAU,IAAIvB,QAAjB,CAAJ,EACE,OAAO,KAAP;AACF,eAAOd,eAAe,CAACc,QAAQ,CAACuB,UAAD,CAAT,CAAf,CAAsCE,IAAtC,CAA4C7B,GAAD,IAAiBc,SAAS,CAACa,UAAD,CAAT,CAAsBC,QAAtB,CAA+B5B,GAA/B,CAA5D,CAAP;AACD,OAJG,CAAJ,EAII,OAAOK,YAAY,CAACE,IAAb,CAAkBY,IAAlB,CAAuBN,CAAvB,CAAP;AAEJ,aAAOR,YAAY,CAACC,IAAb,CAAkBa,IAAlB,CAAuBN,CAAvB,CAAP;AACD,KAlDD,CAkDE,OAAMiB,GAAN,EAAW;AACXzB,kBAAY,CAACI,KAAb,CAAmBU,IAAnB,CAAwBN,CAAxB;AACD;AACF,GAxDD;;AA0DA,SAAOR,YAAP;AACD","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]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { maps } from './../constants';
|
|
2
|
-
export declare type MapInstance =
|
|
2
|
+
export declare type MapInstance = typeof maps[number];
|
|
3
3
|
export declare type MapName = typeof maps[number]['name'];
|
|
4
4
|
export declare type IdentifiedMaps = {
|
|
5
5
|
none: MapInstance[];
|
package/package.json
CHANGED
|
@@ -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;
|
|
@@ -1,266 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _lodash = _interopRequireDefault(require("lodash"));
|
|
9
|
-
|
|
10
|
-
var _getDate = _interopRequireDefault(require("../../common/get-date"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
function ownKeys(object, enumerableOnly) {
|
|
19
|
-
var keys = Object.keys(object);
|
|
20
|
-
|
|
21
|
-
if (Object.getOwnPropertySymbols) {
|
|
22
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
23
|
-
enumerableOnly && (symbols = symbols.filter(function (sym) {
|
|
24
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
25
|
-
})), keys.push.apply(keys, symbols);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
return keys;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
function _objectSpread(target) {
|
|
32
|
-
for (var i = 1; i < arguments.length; i++) {
|
|
33
|
-
var source = null != arguments[i] ? arguments[i] : {};
|
|
34
|
-
i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {
|
|
35
|
-
_defineProperty(target, key, source[key]);
|
|
36
|
-
}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {
|
|
37
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
return target;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
function _defineProperty(obj, key, value) {
|
|
45
|
-
if (key in obj) {
|
|
46
|
-
Object.defineProperty(obj, key, {
|
|
47
|
-
value: value,
|
|
48
|
-
enumerable: true,
|
|
49
|
-
configurable: true,
|
|
50
|
-
writable: true
|
|
51
|
-
});
|
|
52
|
-
} else {
|
|
53
|
-
obj[key] = value;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
return obj;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
var days = ['Mån', 'Tis', 'Ons', 'Tor', 'Fre', 'Lör', 'Sön'];
|
|
60
|
-
|
|
61
|
-
function _parseWeeks(weeks, set) {
|
|
62
|
-
var method = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'add';
|
|
63
|
-
if (!weeks) return;
|
|
64
|
-
var intervals = weeks.split(',').map(_lodash.default.trim);
|
|
65
|
-
intervals.forEach(interval => {
|
|
66
|
-
if (!interval.includes('-')) return set[method](Number(interval));
|
|
67
|
-
var [start, end] = interval.split('-').map(Number);
|
|
68
|
-
Array(end - start + 1).fill(start).forEach((val, index) => set[method](val + index));
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
var _default = (input, options) => {
|
|
73
|
-
if (!input) throw new Error('(SchoolSoft::From::Schedules) Input was undefined');
|
|
74
|
-
if (_lodash.default.isString(input)) throw new Error('(SchoolSoft::From::Schedules) Input was of type string. Is required to be of object type');
|
|
75
|
-
var teachers = new Set();
|
|
76
|
-
var groups = new Set();
|
|
77
|
-
var locations = new Set();
|
|
78
|
-
var events = input.reduce((acc, event) => {
|
|
79
|
-
var _locations2;
|
|
80
|
-
|
|
81
|
-
if (!('length' in event)) return acc;
|
|
82
|
-
var weeks = new Set();
|
|
83
|
-
var {
|
|
84
|
-
inweek,
|
|
85
|
-
exweek,
|
|
86
|
-
realweeks
|
|
87
|
-
} = event;
|
|
88
|
-
|
|
89
|
-
try {
|
|
90
|
-
_parseWeeks(inweek, weeks, 'add');
|
|
91
|
-
|
|
92
|
-
_parseWeeks(realweeks, weeks, 'add');
|
|
93
|
-
|
|
94
|
-
if (weeks.size == 0) Array(51).fill(1).forEach((val, index) => weeks.add(val + index));
|
|
95
|
-
|
|
96
|
-
_parseWeeks(exweek, weeks, 'delete');
|
|
97
|
-
} catch (err) {
|
|
98
|
-
console.error(err);
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
if (options !== null && options !== void 0 && options.interval) {
|
|
102
|
-
var {
|
|
103
|
-
start: _start,
|
|
104
|
-
end: _end
|
|
105
|
-
} = options.interval;
|
|
106
|
-
if (_start > 52 || _start <= 0) throw new Error("(SchoolSoft::From::Schedules) Interval::start is invalid. value ".concat(_start));
|
|
107
|
-
if (_end > 52 || _end <= 0) throw new Error("(SchoolSoft::From::Schedules) Interval::end is invalid. value ".concat(_end));
|
|
108
|
-
|
|
109
|
-
if (_start > _end) {
|
|
110
|
-
if (!Array.from(weeks).some(week => week >= _start && week <= 52 || week <= _end)) return acc;
|
|
111
|
-
} else {
|
|
112
|
-
if (!Array.from(weeks).some(week => week >= _start && week <= _end)) return acc;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
var start, end;
|
|
117
|
-
var {
|
|
118
|
-
starttime,
|
|
119
|
-
subject,
|
|
120
|
-
day,
|
|
121
|
-
length,
|
|
122
|
-
teacher,
|
|
123
|
-
group,
|
|
124
|
-
room
|
|
125
|
-
} = event;
|
|
126
|
-
|
|
127
|
-
if (day && starttime) {
|
|
128
|
-
var _day = days.indexOf(day);
|
|
129
|
-
|
|
130
|
-
if (_day > 4) return acc;
|
|
131
|
-
start = (0, _getDate.default)(_day, "".concat(starttime.substring(0, 2), ":").concat(starttime.substring(2, 4)));
|
|
132
|
-
end = start.clone().add(length, 'm');
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
var _teachers;
|
|
136
|
-
|
|
137
|
-
var _groups;
|
|
138
|
-
|
|
139
|
-
var _locations;
|
|
140
|
-
|
|
141
|
-
if (teacher) {
|
|
142
|
-
_teachers = teacher.split(',').map(x => x.trim());
|
|
143
|
-
|
|
144
|
-
_teachers.forEach(_teacher => teachers.add(_teacher));
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
if (group) {
|
|
148
|
-
_groups = group.split(',').map(x => x.trim());
|
|
149
|
-
|
|
150
|
-
_groups.forEach(_group => groups.add(_group));
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
if (room) {
|
|
154
|
-
_locations = _lodash.default.sortBy(room.split(',').map(x => x.trim()));
|
|
155
|
-
|
|
156
|
-
_locations.forEach(_location => locations.add(_location));
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
return acc.concat(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
|
|
160
|
-
ids: event.id,
|
|
161
|
-
preferredDuration: event.length,
|
|
162
|
-
weeks: _lodash.default.sortBy(Array.from(weeks))
|
|
163
|
-
}, subject && {
|
|
164
|
-
subject
|
|
165
|
-
}), start && {
|
|
166
|
-
start
|
|
167
|
-
}), end && {
|
|
168
|
-
end
|
|
169
|
-
}), event.group && {
|
|
170
|
-
groups: _groups
|
|
171
|
-
}), event.teacher && {
|
|
172
|
-
teachers: _teachers
|
|
173
|
-
}), event.room && {
|
|
174
|
-
inLocations: _locations,
|
|
175
|
-
locations: (_locations2 = _locations) === null || _locations2 === void 0 ? void 0 : _locations2.map((_location, index) => ({
|
|
176
|
-
locations: [_location],
|
|
177
|
-
groupIndex: index
|
|
178
|
-
}))
|
|
179
|
-
}));
|
|
180
|
-
}, []);
|
|
181
|
-
var set = new Set(events);
|
|
182
|
-
var courses = new Set([]);
|
|
183
|
-
|
|
184
|
-
var _loop = function _loop(element) {
|
|
185
|
-
var _ref;
|
|
186
|
-
|
|
187
|
-
set.delete(element);
|
|
188
|
-
var events = [element];
|
|
189
|
-
var {
|
|
190
|
-
subject,
|
|
191
|
-
groups,
|
|
192
|
-
teachers,
|
|
193
|
-
inLocations,
|
|
194
|
-
locations
|
|
195
|
-
} = element;
|
|
196
|
-
delete element.groups;
|
|
197
|
-
delete element.subject;
|
|
198
|
-
|
|
199
|
-
for (var event of set) {
|
|
200
|
-
if (event.subject != subject) continue;
|
|
201
|
-
if (groups !== null && groups !== void 0 && groups.length && !_lodash.default.isEqual(_lodash.default.sortBy(event.groups), _lodash.default.sortBy(groups))) continue;
|
|
202
|
-
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;
|
|
203
|
-
delete event.groups;
|
|
204
|
-
delete event.subject;
|
|
205
|
-
events.push(event);
|
|
206
|
-
set.delete(event);
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
var course = _objectSpread(_objectSpread({
|
|
210
|
-
displayName: "".concat(subject, "-").concat((_ref = groups !== null && groups !== void 0 ? groups : teachers) === null || _ref === void 0 ? void 0 : _ref.join(' '))
|
|
211
|
-
}, groups && {
|
|
212
|
-
groups
|
|
213
|
-
}), {}, {
|
|
214
|
-
events
|
|
215
|
-
});
|
|
216
|
-
|
|
217
|
-
if (events.every(_ref2 => {
|
|
218
|
-
var {
|
|
219
|
-
teachers: _teachers
|
|
220
|
-
} = _ref2;
|
|
221
|
-
return _lodash.default.isEqual(_lodash.default.sortBy(teachers), _lodash.default.sortBy(_teachers));
|
|
222
|
-
})) {
|
|
223
|
-
var _course$events;
|
|
224
|
-
|
|
225
|
-
course.teachers = teachers;
|
|
226
|
-
(_course$events = course.events) === null || _course$events === void 0 ? void 0 : _course$events.forEach(event => delete event.teachers);
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
if (events.every(_ref3 => {
|
|
230
|
-
var {
|
|
231
|
-
inLocations: _inLocations
|
|
232
|
-
} = _ref3;
|
|
233
|
-
return _lodash.default.isEqual(_lodash.default.sortBy(inLocations), _lodash.default.sortBy(_inLocations));
|
|
234
|
-
})) {
|
|
235
|
-
var _course$events2;
|
|
236
|
-
|
|
237
|
-
course.locations = locations;
|
|
238
|
-
(_course$events2 = course.events) === null || _course$events2 === void 0 ? void 0 : _course$events2.forEach(event => delete event.locations);
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
courses.add(course);
|
|
242
|
-
};
|
|
243
|
-
|
|
244
|
-
for (var element of set) {
|
|
245
|
-
_loop(element);
|
|
246
|
-
}
|
|
247
|
-
|
|
248
|
-
return {
|
|
249
|
-
courses: Array.from(courses),
|
|
250
|
-
teachers: Array.from(teachers).map(ids => ({
|
|
251
|
-
ids,
|
|
252
|
-
displayName: ids
|
|
253
|
-
})),
|
|
254
|
-
groups: Array.from(groups).map(ids => ({
|
|
255
|
-
ids,
|
|
256
|
-
displayName: ids
|
|
257
|
-
})),
|
|
258
|
-
locations: Array.from(locations).map(ids => ({
|
|
259
|
-
ids,
|
|
260
|
-
displayName: ids
|
|
261
|
-
}))
|
|
262
|
-
};
|
|
263
|
-
};
|
|
264
|
-
|
|
265
|
-
exports.default = _default;
|
|
266
|
-
//# sourceMappingURL=schedules.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schedules.js","mappings":"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","names":["days","_parseWeeks","weeks","set","method","intervals","split","map","_","trim","forEach","interval","includes","Number","start","end","Array","fill","val","index","input","options","Error","isString","teachers","Set","groups","locations","events","reduce","acc","event","inweek","exweek","realweeks","size","add","err","console","error","from","some","week","starttime","subject","day","length","teacher","group","room","_day","indexOf","substring","clone","_teachers","_groups","_locations","x","_teacher","_group","sortBy","_location","concat","ids","id","preferredDuration","inLocations","_locations2","groupIndex","courses","element","delete","isEqual","push","course","displayName","_ref","join","every","_ref2","_ref3","_inLocations","_loop"],"sourceRoot":"","sources":["../../../src/SchoolSoft/from/schedules.ts"],"sourcesContent":[null]}
|
|
@@ -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/to/index.ts"],"sourcesContent":[null]}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _xlsx = _interopRequireDefault(require("xlsx"));
|
|
9
|
-
|
|
10
|
-
var _moment = _interopRequireDefault(require("moment"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
var _default = courseEvents => {
|
|
19
|
-
var events = courseEvents.reduce((acc, event) => {
|
|
20
|
-
if (event.parked) return acc;
|
|
21
|
-
var teachers = event.teachers == null ? event.course.teachers : event.teachers;
|
|
22
|
-
var room = event.inLocations.filter(x => x !== null).map(locations => locations.ids).join(', ');
|
|
23
|
-
return acc.concat({
|
|
24
|
-
group: event.course.ids,
|
|
25
|
-
dayid: _moment.default.utc(event.start).day() - 1,
|
|
26
|
-
starttime: _moment.default.utc(event.start).format('HHmm'),
|
|
27
|
-
length: _moment.default.utc(event.end).diff(_moment.default.utc(event.start), 'minutes'),
|
|
28
|
-
teacher: (teachers || []).map(teacher => teacher.ids).join(', '),
|
|
29
|
-
subject: '',
|
|
30
|
-
room: room,
|
|
31
|
-
inweek: '',
|
|
32
|
-
exweek: ''
|
|
33
|
-
});
|
|
34
|
-
}, []);
|
|
35
|
-
|
|
36
|
-
var wb = _xlsx.default.utils.book_new();
|
|
37
|
-
|
|
38
|
-
_xlsx.default.utils.book_append_sheet(wb, _xlsx.default.utils.json_to_sheet(events), 'royal schedule export');
|
|
39
|
-
|
|
40
|
-
return wb;
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
exports.default = _default;
|
|
44
|
-
//# sourceMappingURL=schedules.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schedules.js","mappings":";;;;;;;AAAA;;AACA;;;;;;;;eAUgBA,YAAD,IAA+C;AAC5D,MAAIC,MAAM,GAAGD,YAAY,CAACE,MAAbF,CAAoB,CAACG,GAAD,EAAeC,KAAf,KAAqC;AACpE,QAAIA,KAAK,CAACC,MAAV,EACE,OAAOF,GAAP;AAEF,QAAIG,QAAQ,GAAeF,KAAK,CAACE,QAANF,IAAkB,IAAlBA,GAA0BA,KAAK,CAACG,MAANH,CAAyBE,QAAnDF,GAA8DA,KAAK,CAACE,QAA/F;AAEA,QAAIE,IAAI,GAAmBJ,KAAK,CAACK,WAANL,CACkBM,MADlBN,CAC0BO,CAAD,IAAYA,CAAC,KAAK,IAD3CP,EAEkBQ,GAFlBR,CAEuBS,SAAD,IAAyBA,SAAS,CAACC,GAFzDV,EAGkBW,IAHlBX,CAGuB,IAHvBA,CAA3B;AAKA,WAAOD,GAAG,CAACa,MAAJb,CAAW;AAChBc,WAAK,EAAOb,KAAK,CAACG,MAANH,CAAwBU,GADpB;AAEhBI,WAAK,EAAMC,gBAAOC,GAAPD,CAAWf,KAAK,CAACiB,KAAjBF,EAAwBG,GAAxBH,KAAgC,CAF3B;AAGhBI,eAAS,EAAEJ,gBAAOC,GAAPD,CAAWf,KAAK,CAACiB,KAAjBF,EAAwBK,MAAxBL,CAA+B,MAA/BA,CAHK;AAIhBM,YAAM,EAAKN,gBAAOC,GAAPD,CAAWf,KAAK,CAACsB,GAAjBP,EAAsBQ,IAAtBR,CAA2BA,gBAAOC,GAAPD,CAAWf,KAAK,CAACiB,KAAjBF,CAA3BA,EAAoD,SAApDA,CAJK;AAKhBS,aAAO,EAAI,CAACtB,QAAQ,IAAI,EAAb,EAAiBM,GAAjB,CAAsBgB,OAAD,IAAsBA,OAAO,CAACd,GAAnD,EAAwDC,IAAxD,CAA6D,IAA7D,CALK;AAMhBc,aAAO,EAAI,EANK;AAOhBrB,UAAI,EAAOA,IAPK;AAQhBsB,YAAM,EAAK,EARK;AAShBC,YAAM,EAAK;AATK,KAAX5B,CAAP;AAXW,KAsBV,EAtBUH,CAAb;;AAwBA,MAAIgC,EAAE,GAAGC,cAAKC,KAALD,CAAWE,QAAXF,EAAT;;AAEAA,gBAAKC,KAALD,CAAWG,iBAAXH,CAA6BD,EAA7BC,EAAiCA,cAAKC,KAALD,CAAWI,aAAXJ,CAAyBhC,MAAzBgC,CAAjCA,EAAmE,uBAAnEA;;AAEA,SAAOD,EAAP","names":["courseEvents","events","reduce","acc","event","parked","teachers","course","room","inLocations","filter","x","map","locations","ids","join","concat","group","dayid","moment","utc","start","day","starttime","format","length","end","diff","teacher","subject","inweek","exweek","wb","XLSX","utils","book_new","book_append_sheet","json_to_sheet"],"sourceRoot":"","sources":["../../../src/SchoolSoft/to/schedules.ts"],"sourcesContent":[null]}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export declare type Time = `${number}${number}${number}${number}`;
|
|
2
|
-
export declare type Day = 'Mån' | 'Tis' | 'Ons' | 'Tor' | 'Fre' | 'Lör' | 'Sön';
|
|
3
|
-
export interface Event {
|
|
4
|
-
id?: string;
|
|
5
|
-
group?: string;
|
|
6
|
-
dayid?: number;
|
|
7
|
-
day?: Day;
|
|
8
|
-
starttime?: Time;
|
|
9
|
-
length?: number;
|
|
10
|
-
teacher?: string;
|
|
11
|
-
subject?: string;
|
|
12
|
-
room?: string;
|
|
13
|
-
period?: string;
|
|
14
|
-
experiod?: string;
|
|
15
|
-
inweek?: string;
|
|
16
|
-
exweek?: string;
|
|
17
|
-
exclass?: 0 | 1;
|
|
18
|
-
realweeks?: string;
|
|
19
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","mappings":"","names":[],"sourceRoot":"","sources":[],"sourcesContent":[]}
|