@royalschedule/maps 3.3.17 → 4.0.1
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/README.md +1 -0
- package/dist/Additio/from/courses.js.map +1 -1
- package/dist/Additio/from/events.js.map +1 -1
- package/dist/Additio/from/groups.js.map +1 -1
- package/dist/Additio/from/index.js.map +1 -1
- package/dist/Additio/from/locations.js.map +1 -1
- package/dist/Additio/from/persons.js +1 -1
- package/dist/Additio/from/persons.js.map +1 -1
- package/dist/Additio/from/schedules.d.ts +32 -2
- package/dist/Additio/from/schedules.js.map +1 -1
- package/dist/Additio/from/teachers.js.map +1 -1
- package/dist/Additio/index.js.map +1 -1
- package/dist/Additio/to/index.d.ts +12 -12
- package/dist/Additio/to/index.js.map +1 -1
- package/dist/Additio/to/schedules.js +44 -46
- package/dist/Additio/to/schedules.js.map +1 -1
- package/dist/Additio/types/options.d.ts +8 -0
- package/dist/Admentum/from/courses.js.map +1 -1
- package/dist/Admentum/from/events.js.map +1 -1
- package/dist/Admentum/from/groups.js.map +1 -1
- package/dist/Admentum/from/index.js.map +1 -1
- package/dist/Admentum/from/locations.js.map +1 -1
- package/dist/Admentum/from/persons.js +1 -1
- package/dist/Admentum/from/persons.js.map +1 -1
- package/dist/Admentum/from/schedules.d.ts +32 -2
- package/dist/Admentum/from/schedules.js.map +1 -1
- package/dist/Admentum/from/teachers.js.map +1 -1
- package/dist/Admentum/index.js.map +1 -1
- package/dist/Admentum/to/index.d.ts +11 -10
- package/dist/Admentum/to/index.js.map +1 -1
- package/dist/Admentum/to/schedules.js +22 -25
- package/dist/Admentum/to/schedules.js.map +1 -1
- package/dist/Excel/index.d.ts +55 -4
- package/dist/Excel/index.js.map +1 -1
- package/dist/Excel/v1/from/index.js +7 -7
- package/dist/Excel/v1/from/index.js.map +1 -1
- package/dist/Excel/v1/index.d.ts +30 -2
- package/dist/Excel/v1/index.js.map +1 -1
- package/dist/Excel/v2/from/index.js +10 -10
- package/dist/Excel/v2/from/index.js.map +1 -1
- package/dist/Excel/v2/index.d.ts +53 -2
- package/dist/Excel/v2/index.js.map +1 -1
- package/dist/IdunSoft/from/courses.js +4 -3
- package/dist/IdunSoft/from/courses.js.map +1 -1
- package/dist/IdunSoft/from/events.js +43 -32
- package/dist/IdunSoft/from/events.js.map +1 -1
- package/dist/IdunSoft/from/groups.js +5 -4
- package/dist/IdunSoft/from/groups.js.map +1 -1
- package/dist/IdunSoft/from/index.js.map +1 -1
- package/dist/IdunSoft/from/locations.js +4 -3
- package/dist/IdunSoft/from/locations.js.map +1 -1
- package/dist/IdunSoft/from/schedules.d.ts +18 -3
- package/dist/IdunSoft/from/schedules.js +5 -10
- package/dist/IdunSoft/from/schedules.js.map +1 -1
- package/dist/IdunSoft/from/teachers.js +4 -3
- package/dist/IdunSoft/from/teachers.js.map +1 -1
- package/dist/IdunSoft/index.js.map +1 -1
- package/dist/IdunSoft/to/index.d.ts +2 -3
- package/dist/IdunSoft/to/index.js.map +1 -1
- package/dist/IdunSoft/to/schedules.js +22 -21
- package/dist/IdunSoft/to/schedules.js.map +1 -1
- package/dist/InfoMentor/index.js.map +1 -1
- package/dist/InfoMentor/to/index.d.ts +2 -2
- package/dist/InfoMentor/to/index.js.map +1 -1
- package/dist/InfoMentor/to/schedules.js +26 -27
- package/dist/InfoMentor/to/schedules.js.map +1 -1
- package/dist/PlanDigital/from/index.js.map +1 -1
- package/dist/PlanDigital/from/schedules.js +7 -6
- package/dist/PlanDigital/from/schedules.js.map +1 -1
- package/dist/PlanDigital/index.d.ts +106 -5
- package/dist/PlanDigital/index.js +0 -2
- package/dist/PlanDigital/index.js.map +1 -1
- package/dist/PlanDigital/types/index.d.ts +12 -11
- package/dist/Quiculum/file/to/index.d.ts +1 -1
- package/dist/Quiculum/file/to/schedules.js +11 -13
- package/dist/Quiculum/file/to/schedules.js.map +1 -1
- package/dist/RS/from/division.d.ts +7 -0
- package/dist/RS/from/division.js +14 -0
- package/dist/RS/from/division.js.map +1 -0
- package/dist/RS/from/index.js +12 -0
- package/dist/RS/from/index.js.map +1 -0
- package/dist/RS/from/schedules.d.ts +8 -0
- package/dist/RS/from/schedules.js +36 -0
- package/dist/RS/from/schedules.js.map +1 -0
- package/dist/RS/index.d.ts +11 -12
- package/dist/RS/index.js +4 -8
- package/dist/RS/index.js.map +1 -1
- package/dist/RS/make-connected.d.ts +24 -0
- package/dist/RS/make-connected.js +258 -0
- package/dist/RS/make-connected.js.map +1 -0
- package/dist/RS/to/index.js +8 -0
- package/dist/RS/to/index.js.map +1 -0
- package/dist/RS/to/initial-configuration.js +43 -0
- package/dist/RS/to/initial-configuration.js.map +1 -0
- package/dist/RS/to/input/collections.js +57 -0
- package/dist/RS/to/input/collections.js.map +1 -0
- package/dist/RS/{v3/to → to/input}/default.js +10 -18
- package/dist/RS/to/input/default.js.map +1 -0
- package/dist/RS/to/input/dependencies.js +32 -0
- package/dist/RS/to/input/dependencies.js.map +1 -0
- package/dist/RS/to/input/dynamic-locked-times.js +67 -0
- package/dist/RS/to/input/dynamic-locked-times.js.map +1 -0
- package/dist/RS/to/input/events.js +84 -0
- package/dist/RS/to/input/events.js.map +1 -0
- package/dist/RS/to/input/groups.js +36 -0
- package/dist/RS/to/input/groups.js.map +1 -0
- package/dist/RS/to/input/individuals.js +49 -0
- package/dist/RS/to/input/individuals.js.map +1 -0
- package/dist/RS/to/input/input.js +40 -0
- package/dist/RS/to/input/input.js.map +1 -0
- package/dist/RS/to/input/intervals.js +99 -0
- package/dist/RS/to/input/intervals.js.map +1 -0
- package/dist/RS/to/input/periods.js +44 -0
- package/dist/RS/to/input/periods.js.map +1 -0
- package/dist/RS/to/input/settings.js +17 -0
- package/dist/RS/to/input/settings.js.map +1 -0
- package/dist/RS/to/input/teachers.js +36 -0
- package/dist/RS/to/input/teachers.js.map +1 -0
- package/dist/RS/to/input/util/attach-locked-times.js +27 -0
- package/dist/RS/to/input/util/attach-locked-times.js.map +1 -0
- package/dist/RS/to/input/util/parse-days.js +10 -0
- package/dist/RS/to/input/util/parse-days.js.map +1 -0
- package/dist/RS/to/input/util/parse-group-references.js +58 -0
- package/dist/RS/to/input/util/parse-group-references.js.map +1 -0
- package/dist/RS/to/input/util/parse-intervals.js +55 -0
- package/dist/RS/to/input/util/parse-intervals.js.map +1 -0
- package/dist/RS/to/input/util/parse-location-references.js +31 -0
- package/dist/RS/to/input/util/parse-location-references.js.map +1 -0
- package/dist/RS/to/input/util/parse-max-working-hours.js +17 -0
- package/dist/RS/to/input/util/parse-max-working-hours.js.map +1 -0
- package/dist/RS/to/input/util/parse-minimum-break-length.js +19 -0
- package/dist/RS/to/input/util/parse-minimum-break-length.js.map +1 -0
- package/dist/RS/to/input/util/util.js +61 -0
- package/dist/RS/to/input/util/util.js.map +1 -0
- package/dist/RS/to/schedules.d.ts +7 -0
- package/dist/RS/to/schedules.js +40 -0
- package/dist/RS/to/schedules.js.map +1 -0
- package/dist/RS/{v3/types → types}/algorithm-parameters.d.ts +1 -1
- package/dist/RS/types/collections.d.ts +26 -0
- package/dist/RS/types/configurations.d.ts +10 -0
- package/dist/RS/{v3/types → types}/default.d.ts +4 -5
- package/dist/RS/types/dependencies.d.ts +16 -0
- package/dist/RS/types/event-configuration.d.ts +20 -0
- package/dist/RS/types/events.d.ts +27 -0
- package/dist/RS/{v2/types → types}/groups.d.ts +13 -12
- package/dist/RS/types/index.d.ts +45 -0
- package/dist/RS/types/individuals.d.ts +16 -0
- package/dist/RS/{v2/types → types}/locked-times.d.ts +2 -1
- package/dist/RS/types/root-intervals.d.ts +10 -0
- package/dist/RS/types/schedule-data.d.ts +16 -0
- package/dist/RS/{v2/types → types}/settings.d.ts +1 -1
- package/dist/RS/types/shared.d.ts +27 -0
- package/dist/RS/types/to.d.ts +59 -0
- package/dist/SchoolSoft/api/from/index.js.map +1 -1
- package/dist/SchoolSoft/api/from/schedules.js +31 -37
- package/dist/SchoolSoft/api/from/schedules.js.map +1 -1
- package/dist/SchoolSoft/api/index.d.ts +14 -2
- package/dist/SchoolSoft/api/index.js.map +1 -1
- package/dist/SchoolSoft/file/from/index.js.map +1 -1
- package/dist/SchoolSoft/file/from/schedules.js +36 -46
- package/dist/SchoolSoft/file/from/schedules.js.map +1 -1
- package/dist/SchoolSoft/file/index.d.ts +2 -3
- package/dist/SchoolSoft/file/index.js.map +1 -1
- package/dist/SchoolSoft/file/to/index.d.ts +6 -13
- package/dist/SchoolSoft/file/to/schedules.js +40 -42
- package/dist/SchoolSoft/file/to/schedules.js.map +1 -1
- package/dist/SchoolSoft/index.d.ts +2 -3
- package/dist/SchoolSoft/index.js.map +1 -1
- package/dist/Schoolity/txt/index.js.map +1 -1
- package/dist/Schoolity/txt/to/index.d.ts +3 -3
- package/dist/Schoolity/txt/to/index.js.map +1 -1
- package/dist/Schoolity/txt/to/schedules.js +78 -96
- package/dist/Schoolity/txt/to/schedules.js.map +1 -1
- package/dist/Skola24/index.js.map +1 -1
- package/dist/Skola24/mdb/from/course-and-events.js +36 -29
- package/dist/Skola24/mdb/from/course-and-events.js.map +1 -1
- package/dist/Skola24/mdb/from/groups.js.map +1 -1
- package/dist/Skola24/mdb/from/index.js.map +1 -1
- package/dist/Skola24/mdb/from/locations.js.map +1 -1
- package/dist/Skola24/mdb/from/schedule.d.ts +21 -3
- package/dist/Skola24/mdb/from/schedule.js +15 -17
- package/dist/Skola24/mdb/from/schedule.js.map +1 -1
- package/dist/Skola24/mdb/from/teachers.js.map +1 -1
- package/dist/Skola24/mdb/index.js.map +1 -1
- package/dist/Skola24/mdb/types/index.d.ts +7 -0
- package/dist/Skola24/txt/from/calendar-exceptions.js.map +1 -1
- package/dist/Skola24/txt/from/division.js.map +1 -1
- package/dist/Skola24/txt/from/index.js.map +1 -1
- package/dist/Skola24/txt/from/period.js.map +1 -1
- package/dist/Skola24/txt/from/schedules.d.ts +16 -0
- package/dist/Skola24/txt/from/schedules.js +90 -80
- package/dist/Skola24/txt/from/schedules.js.map +1 -1
- package/dist/Skola24/txt/index.d.ts +17 -5
- package/dist/Skola24/txt/index.js.map +1 -1
- package/dist/Skola24/txt/to/index.d.ts +3 -3
- package/dist/Skola24/txt/to/index.js.map +1 -1
- package/dist/Skola24/txt/to/schedules.js +76 -91
- package/dist/Skola24/txt/to/schedules.js.map +1 -1
- package/dist/Skola24/txt/types/index.d.ts +17 -1
- package/dist/common/constants.js +2 -2
- package/dist/common/constants.js.map +1 -1
- package/dist/common/functions.js +16 -21
- package/dist/common/functions.js.map +1 -1
- package/dist/common/get-date.js +5 -6
- package/dist/common/get-date.js.map +1 -1
- package/dist/common/make-chainable/index.js +36 -0
- package/dist/common/make-chainable/index.js.map +1 -0
- package/dist/common/types.d.ts +19 -0
- package/dist/core/from/courses.js +12 -0
- package/dist/core/from/courses.js.map +1 -0
- package/dist/core/from/events.js +13 -0
- package/dist/core/from/events.js.map +1 -0
- package/dist/core/from/exceptions.js +12 -0
- package/dist/core/from/exceptions.js.map +1 -0
- package/dist/core/from/groups.js +12 -0
- package/dist/core/from/groups.js.map +1 -0
- package/dist/core/{v2/from → from}/index.js +1 -1
- package/dist/core/from/index.js.map +1 -0
- package/dist/core/from/locations.js +12 -0
- package/dist/core/from/locations.js.map +1 -0
- package/dist/core/from/locked-times.js +12 -0
- package/dist/core/from/locked-times.js.map +1 -0
- package/dist/core/from/overlap-groups.js +12 -0
- package/dist/core/from/overlap-groups.js.map +1 -0
- package/dist/core/from/periods.js +12 -0
- package/dist/core/from/periods.js.map +1 -0
- package/dist/core/from/persons.js +12 -0
- package/dist/core/from/persons.js.map +1 -0
- package/dist/core/from/root-intervals.js +12 -0
- package/dist/core/from/root-intervals.js.map +1 -0
- package/dist/core/from/schedules.d.ts +7 -0
- package/dist/core/from/schedules.js +35 -0
- package/dist/core/from/schedules.js.map +1 -0
- package/dist/core/{v2/from → from}/syllabuses.js +1 -1
- package/dist/core/from/syllabuses.js.map +1 -0
- package/dist/core/from/teachers.js +12 -0
- package/dist/core/from/teachers.js.map +1 -0
- package/dist/core/index.d.ts +6 -12
- package/dist/core/index.js +4 -6
- package/dist/core/index.js.map +1 -1
- package/dist/core/to/courses.js +43 -0
- package/dist/core/to/courses.js.map +1 -0
- package/dist/core/to/division.js +10 -0
- package/dist/core/to/division.js.map +1 -0
- package/dist/core/to/events.js +43 -0
- package/dist/core/to/events.js.map +1 -0
- package/dist/core/to/exceptions.js +27 -0
- package/dist/core/to/exceptions.js.map +1 -0
- package/dist/core/to/groups.js +23 -0
- package/dist/core/to/groups.js.map +1 -0
- package/dist/core/{v1/to → to}/index.d.ts +1 -1
- package/dist/{RS/v3 → core}/to/index.js +1 -1
- package/dist/core/to/index.js.map +1 -0
- package/dist/core/to/locations.js +19 -0
- package/dist/core/to/locations.js.map +1 -0
- package/dist/core/to/locked-times.js +21 -0
- package/dist/core/to/locked-times.js.map +1 -0
- package/dist/core/to/overlap-groups.js +28 -0
- package/dist/core/to/overlap-groups.js.map +1 -0
- package/dist/core/to/periods.js +17 -0
- package/dist/core/to/periods.js.map +1 -0
- package/dist/core/to/persons.js +23 -0
- package/dist/core/to/persons.js.map +1 -0
- package/dist/core/to/root-intervals.js +17 -0
- package/dist/core/to/root-intervals.js.map +1 -0
- package/dist/core/to/schedules.d.ts +44 -0
- package/dist/core/to/schedules.js +40 -0
- package/dist/core/to/schedules.js.map +1 -0
- package/dist/core/to/settings.js +16 -0
- package/dist/core/to/settings.js.map +1 -0
- package/dist/core/to/syllabuses.js +17 -0
- package/dist/core/to/syllabuses.js.map +1 -0
- package/dist/core/to/teachers.js +24 -0
- package/dist/core/to/teachers.js.map +1 -0
- package/dist/core/to/util.d.ts +14 -0
- package/dist/core/to/util.js +22 -0
- package/dist/core/to/util.js.map +1 -0
- package/dist/core/types/areas.d.ts +10 -0
- package/dist/core/types/common/break-lengths.d.ts +5 -0
- package/dist/core/types/common/days.d.ts +8 -0
- package/dist/core/types/common/index.d.ts +45 -0
- package/dist/core/types/common/intervals.d.ts +20 -0
- package/dist/core/types/common/maximum-schedule-span.d.ts +19 -0
- package/dist/core/{v2/types → types/common}/meta.d.ts +1 -1
- package/dist/core/types/common/planned-schedule-duration.d.ts +13 -0
- package/dist/core/types/common/tag.d.ts +9 -0
- package/dist/core/types/courses.d.ts +58 -0
- package/dist/core/{v2/types → types}/division-settings.d.ts +14 -19
- package/dist/core/types/divisions.d.ts +24 -0
- package/dist/core/types/events.d.ts +54 -0
- package/dist/core/{v2/types → types}/exceptions.d.ts +14 -23
- package/dist/core/types/groups.d.ts +41 -0
- package/dist/core/types/index.d.ts +117 -15
- package/dist/core/types/locations.d.ts +27 -0
- package/dist/core/types/locked-times.d.ts +33 -0
- package/dist/core/types/overlap-groups.d.ts +14 -0
- package/dist/core/types/periods.d.ts +14 -0
- package/dist/core/{v2/types → types}/persons.d.ts +13 -22
- package/dist/core/types/root-intervals.d.ts +13 -0
- package/dist/core/types/schedules.d.ts +44 -0
- package/dist/core/types/syllabus.d.ts +18 -0
- package/dist/core/{v2/types → types}/teachers.d.ts +20 -30
- package/dist/core/util.js +46 -0
- package/dist/core/util.js.map +1 -0
- package/dist/core/vertex-mapping.d.ts +69 -0
- package/dist/identify/constants/index.d.ts +14 -58
- package/dist/identify/constants/index.js +7 -72
- package/dist/identify/constants/index.js.map +1 -1
- package/dist/identify/index.d.ts +1 -1
- package/dist/identify/index.js +38 -29
- package/dist/identify/index.js.map +1 -1
- package/dist/index.d.ts +23 -29
- package/dist/index.js +6 -7
- package/dist/sdui/from/classes.js.map +1 -1
- package/dist/sdui/from/courses.js.map +1 -1
- package/dist/sdui/from/holidays.js.map +1 -1
- package/dist/sdui/from/hours.js.map +1 -1
- package/dist/sdui/from/lessons.js.map +1 -1
- package/dist/sdui/from/rooms.js.map +1 -1
- package/dist/sdui/from/schedules.d.ts +19 -0
- package/dist/sdui/from/schedules.js +3 -3
- package/dist/sdui/from/schedules.js.map +1 -1
- package/dist/sdui/from/school-years.js.map +1 -1
- package/dist/sdui/from/subjects.js.map +1 -1
- package/dist/sdui/from/substitution-plans.js.map +1 -1
- package/dist/sdui/from/teachers.js.map +1 -1
- package/dist/sdui/index.d.ts +19 -11
- package/dist/sdui/index.js.map +1 -1
- package/dist/sdui/to/classes.js +4 -2
- package/dist/sdui/to/classes.js.map +1 -1
- package/dist/sdui/to/courses.js +5 -5
- package/dist/sdui/to/courses.js.map +1 -1
- package/dist/sdui/to/holidays.js +3 -2
- package/dist/sdui/to/holidays.js.map +1 -1
- package/dist/sdui/to/hours.js +4 -2
- package/dist/sdui/to/hours.js.map +1 -1
- package/dist/sdui/to/index.d.ts +11 -12
- package/dist/sdui/to/lessons.js +10 -9
- package/dist/sdui/to/lessons.js.map +1 -1
- package/dist/sdui/to/rooms.js +4 -2
- package/dist/sdui/to/rooms.js.map +1 -1
- package/dist/sdui/to/schedules.js +9 -9
- package/dist/sdui/to/schedules.js.map +1 -1
- package/dist/sdui/to/school-years.js +4 -3
- package/dist/sdui/to/school-years.js.map +1 -1
- package/dist/sdui/to/subjects.js.map +1 -1
- package/dist/sdui/to/substitution-plans.js +12 -11
- package/dist/sdui/to/substitution-plans.js.map +1 -1
- package/dist/sdui/to/teachers.js +4 -4
- package/dist/sdui/to/teachers.js.map +1 -1
- package/dist/sdui/types/index.d.ts +2 -0
- package/dist/vKlass/from/index.js +1 -3
- package/dist/vKlass/from/index.js.map +1 -1
- package/dist/vKlass/from/schedule.d.ts +18 -3
- package/dist/vKlass/from/schedule.js +16 -19
- package/dist/vKlass/from/schedule.js.map +1 -1
- package/dist/vKlass/index.d.ts +6 -4
- package/dist/vKlass/index.js.map +1 -1
- package/dist/vKlass/to/schedules.d.ts +1 -1
- package/dist/vKlass/to/schedules.js +5 -12
- package/dist/vKlass/to/schedules.js.map +1 -1
- package/dist/vKlass/types/index.d.ts +5 -5
- package/package.json +38 -29
- package/dist/PlanDigital/to/index.d.ts +0 -10
- package/dist/PlanDigital/to/index.js +0 -10
- package/dist/PlanDigital/to/index.js.map +0 -1
- package/dist/PlanDigital/to/schedules.js +0 -15
- package/dist/PlanDigital/to/schedules.js.map +0 -1
- package/dist/RS/v0/from/available-dependencies.js +0 -38
- package/dist/RS/v0/from/available-dependencies.js.map +0 -1
- package/dist/RS/v0/from/break-lengths.js +0 -15
- package/dist/RS/v0/from/break-lengths.js.map +0 -1
- package/dist/RS/v0/from/course-events.js +0 -68
- package/dist/RS/v0/from/course-events.js.map +0 -1
- package/dist/RS/v0/from/courses.js +0 -53
- package/dist/RS/v0/from/courses.js.map +0 -1
- package/dist/RS/v0/from/days.js +0 -14
- package/dist/RS/v0/from/days.js.map +0 -1
- package/dist/RS/v0/from/dependencies.js +0 -29
- package/dist/RS/v0/from/dependencies.js.map +0 -1
- package/dist/RS/v0/from/groups.js +0 -32
- package/dist/RS/v0/from/groups.js.map +0 -1
- package/dist/RS/v0/from/index.js +0 -32
- package/dist/RS/v0/from/index.js.map +0 -1
- package/dist/RS/v0/from/intervals.js +0 -15
- package/dist/RS/v0/from/intervals.js.map +0 -1
- package/dist/RS/v0/from/locked-times.js +0 -23
- package/dist/RS/v0/from/locked-times.js.map +0 -1
- package/dist/RS/v0/from/placements.js +0 -20
- package/dist/RS/v0/from/placements.js.map +0 -1
- package/dist/RS/v0/from/schedules.js +0 -44
- package/dist/RS/v0/from/schedules.js.map +0 -1
- package/dist/RS/v0/from/settings.js +0 -24
- package/dist/RS/v0/from/settings.js.map +0 -1
- package/dist/RS/v0/from/teachers.js +0 -31
- package/dist/RS/v0/from/teachers.js.map +0 -1
- package/dist/RS/v0/index.d.ts +0 -43
- package/dist/RS/v0/index.js +0 -12
- package/dist/RS/v0/index.js.map +0 -1
- package/dist/RS/v0/to/available-dependencies.js +0 -17
- package/dist/RS/v0/to/available-dependencies.js.map +0 -1
- package/dist/RS/v0/to/configurations.js +0 -22
- package/dist/RS/v0/to/configurations.js.map +0 -1
- package/dist/RS/v0/to/constraints.js +0 -34
- package/dist/RS/v0/to/constraints.js.map +0 -1
- package/dist/RS/v0/to/course-events/days.js +0 -13
- package/dist/RS/v0/to/course-events/days.js.map +0 -1
- package/dist/RS/v0/to/course-events/dependencies.js +0 -18
- package/dist/RS/v0/to/course-events/dependencies.js.map +0 -1
- package/dist/RS/v0/to/course-events/groups.js +0 -39
- package/dist/RS/v0/to/course-events/groups.js.map +0 -1
- package/dist/RS/v0/to/course-events/in-locations.js +0 -17
- package/dist/RS/v0/to/course-events/in-locations.js.map +0 -1
- package/dist/RS/v0/to/course-events/index.js +0 -52
- package/dist/RS/v0/to/course-events/index.js.map +0 -1
- package/dist/RS/v0/to/course-events/intervals.js +0 -12
- package/dist/RS/v0/to/course-events/intervals.js.map +0 -1
- package/dist/RS/v0/to/course-events/meta.js +0 -21
- package/dist/RS/v0/to/course-events/meta.js.map +0 -1
- package/dist/RS/v0/to/courses.js +0 -56
- package/dist/RS/v0/to/courses.js.map +0 -1
- package/dist/RS/v0/to/days.js +0 -11
- package/dist/RS/v0/to/days.js.map +0 -1
- package/dist/RS/v0/to/dependencies.js +0 -26
- package/dist/RS/v0/to/dependencies.js.map +0 -1
- package/dist/RS/v0/to/groups.js +0 -32
- package/dist/RS/v0/to/groups.js.map +0 -1
- package/dist/RS/v0/to/index.d.ts +0 -46
- package/dist/RS/v0/to/index.js +0 -34
- package/dist/RS/v0/to/index.js.map +0 -1
- package/dist/RS/v0/to/intervals.js +0 -17
- package/dist/RS/v0/to/intervals.js.map +0 -1
- package/dist/RS/v0/to/locked-times.js +0 -43
- package/dist/RS/v0/to/locked-times.js.map +0 -1
- package/dist/RS/v0/to/schedules.js +0 -16
- package/dist/RS/v0/to/schedules.js.map +0 -1
- package/dist/RS/v0/to/settings.js +0 -28
- package/dist/RS/v0/to/settings.js.map +0 -1
- package/dist/RS/v0/to/teachers.js +0 -30
- package/dist/RS/v0/to/teachers.js.map +0 -1
- package/dist/RS/v0/types/areas.d.ts +0 -8
- package/dist/RS/v0/types/available-dependencies.d.ts +0 -8
- package/dist/RS/v0/types/break-lengths.d.ts +0 -9
- package/dist/RS/v0/types/configurations.d.ts +0 -7
- package/dist/RS/v0/types/constraints.d.ts +0 -17
- package/dist/RS/v0/types/course-events.d.ts +0 -26
- package/dist/RS/v0/types/courses.d.ts +0 -27
- package/dist/RS/v0/types/days.d.ts +0 -8
- package/dist/RS/v0/types/dependencies.d.ts +0 -17
- package/dist/RS/v0/types/groups.d.ts +0 -25
- package/dist/RS/v0/types/index.d.ts +0 -31
- package/dist/RS/v0/types/intervals.d.ts +0 -8
- package/dist/RS/v0/types/locked-times.d.ts +0 -11
- package/dist/RS/v0/types/out-options.d.ts +0 -13
- package/dist/RS/v0/types/placements.d.ts +0 -12
- package/dist/RS/v0/types/schedules.d.ts +0 -15
- package/dist/RS/v0/types/settings.d.ts +0 -26
- package/dist/RS/v1/from/available-dependencies.js +0 -38
- package/dist/RS/v1/from/available-dependencies.js.map +0 -1
- package/dist/RS/v1/from/break-lengths.js +0 -15
- package/dist/RS/v1/from/break-lengths.js.map +0 -1
- package/dist/RS/v1/from/collections.js +0 -55
- package/dist/RS/v1/from/collections.js.map +0 -1
- package/dist/RS/v1/from/course-events.js +0 -65
- package/dist/RS/v1/from/course-events.js.map +0 -1
- package/dist/RS/v1/from/days.js +0 -14
- package/dist/RS/v1/from/days.js.map +0 -1
- package/dist/RS/v1/from/dependencies.js +0 -31
- package/dist/RS/v1/from/dependencies.js.map +0 -1
- package/dist/RS/v1/from/groups.js +0 -34
- package/dist/RS/v1/from/groups.js.map +0 -1
- package/dist/RS/v1/from/index.js +0 -32
- package/dist/RS/v1/from/index.js.map +0 -1
- package/dist/RS/v1/from/intervals.js +0 -18
- package/dist/RS/v1/from/intervals.js.map +0 -1
- package/dist/RS/v1/from/locked-times.js +0 -21
- package/dist/RS/v1/from/locked-times.js.map +0 -1
- package/dist/RS/v1/from/placements.js +0 -21
- package/dist/RS/v1/from/placements.js.map +0 -1
- package/dist/RS/v1/from/schedules.js +0 -44
- package/dist/RS/v1/from/schedules.js.map +0 -1
- package/dist/RS/v1/from/settings.js +0 -25
- package/dist/RS/v1/from/settings.js.map +0 -1
- package/dist/RS/v1/from/teachers.js +0 -33
- package/dist/RS/v1/from/teachers.js.map +0 -1
- package/dist/RS/v1/index.d.ts +0 -45
- package/dist/RS/v1/index.js +0 -12
- package/dist/RS/v1/index.js.map +0 -1
- package/dist/RS/v1/to/available-dependencies.js +0 -25
- package/dist/RS/v1/to/available-dependencies.js.map +0 -1
- package/dist/RS/v1/to/break-lengths.js +0 -19
- package/dist/RS/v1/to/break-lengths.js.map +0 -1
- package/dist/RS/v1/to/collections.js +0 -51
- package/dist/RS/v1/to/collections.js.map +0 -1
- package/dist/RS/v1/to/configurations.js +0 -22
- package/dist/RS/v1/to/configurations.js.map +0 -1
- package/dist/RS/v1/to/constraints.js +0 -26
- package/dist/RS/v1/to/constraints.js.map +0 -1
- package/dist/RS/v1/to/course-events/days.js +0 -12
- package/dist/RS/v1/to/course-events/days.js.map +0 -1
- package/dist/RS/v1/to/course-events/dependencies.js +0 -15
- package/dist/RS/v1/to/course-events/dependencies.js.map +0 -1
- package/dist/RS/v1/to/course-events/groups.js +0 -30
- package/dist/RS/v1/to/course-events/groups.js.map +0 -1
- package/dist/RS/v1/to/course-events/in-locations.js +0 -17
- package/dist/RS/v1/to/course-events/in-locations.js.map +0 -1
- package/dist/RS/v1/to/course-events/index.js +0 -47
- package/dist/RS/v1/to/course-events/index.js.map +0 -1
- package/dist/RS/v1/to/course-events/intervals.js +0 -11
- package/dist/RS/v1/to/course-events/intervals.js.map +0 -1
- package/dist/RS/v1/to/course-events/meta.js +0 -21
- package/dist/RS/v1/to/course-events/meta.js.map +0 -1
- package/dist/RS/v1/to/days.js +0 -11
- package/dist/RS/v1/to/days.js.map +0 -1
- package/dist/RS/v1/to/dependencies.js +0 -28
- package/dist/RS/v1/to/dependencies.js.map +0 -1
- package/dist/RS/v1/to/groups.js +0 -34
- package/dist/RS/v1/to/groups.js.map +0 -1
- package/dist/RS/v1/to/index.d.ts +0 -46
- package/dist/RS/v1/to/index.js +0 -34
- package/dist/RS/v1/to/index.js.map +0 -1
- package/dist/RS/v1/to/intervals.js +0 -17
- package/dist/RS/v1/to/intervals.js.map +0 -1
- package/dist/RS/v1/to/locked-times.js +0 -49
- package/dist/RS/v1/to/locked-times.js.map +0 -1
- package/dist/RS/v1/to/schedules.js +0 -16
- package/dist/RS/v1/to/schedules.js.map +0 -1
- package/dist/RS/v1/to/settings.js +0 -34
- package/dist/RS/v1/to/settings.js.map +0 -1
- package/dist/RS/v1/to/teachers.js +0 -34
- package/dist/RS/v1/to/teachers.js.map +0 -1
- package/dist/RS/v1/types/areas.d.ts +0 -8
- package/dist/RS/v1/types/available-dependencies.d.ts +0 -8
- package/dist/RS/v1/types/break-lengths.d.ts +0 -9
- package/dist/RS/v1/types/collections.d.ts +0 -27
- package/dist/RS/v1/types/configurations.d.ts +0 -10
- package/dist/RS/v1/types/constraints.d.ts +0 -17
- package/dist/RS/v1/types/course-events.d.ts +0 -26
- package/dist/RS/v1/types/days.d.ts +0 -8
- package/dist/RS/v1/types/dependencies.d.ts +0 -17
- package/dist/RS/v1/types/groups.d.ts +0 -25
- package/dist/RS/v1/types/index.d.ts +0 -31
- package/dist/RS/v1/types/intervals.d.ts +0 -8
- package/dist/RS/v1/types/locked-times.d.ts +0 -11
- package/dist/RS/v1/types/out-options.d.ts +0 -11
- package/dist/RS/v1/types/placements.d.ts +0 -12
- package/dist/RS/v1/types/schedules.d.ts +0 -16
- package/dist/RS/v1/types/settings.d.ts +0 -31
- package/dist/RS/v2/from/available-dependencies.js +0 -38
- package/dist/RS/v2/from/available-dependencies.js.map +0 -1
- package/dist/RS/v2/from/break-lengths.js +0 -15
- package/dist/RS/v2/from/break-lengths.js.map +0 -1
- package/dist/RS/v2/from/collections.js +0 -57
- package/dist/RS/v2/from/collections.js.map +0 -1
- package/dist/RS/v2/from/course-events.d.ts +0 -12
- package/dist/RS/v2/from/course-events.js +0 -67
- package/dist/RS/v2/from/course-events.js.map +0 -1
- package/dist/RS/v2/from/days.js +0 -14
- package/dist/RS/v2/from/days.js.map +0 -1
- package/dist/RS/v2/from/dependencies.js +0 -31
- package/dist/RS/v2/from/dependencies.js.map +0 -1
- package/dist/RS/v2/from/groups.js +0 -35
- package/dist/RS/v2/from/groups.js.map +0 -1
- package/dist/RS/v2/from/index.js +0 -32
- package/dist/RS/v2/from/index.js.map +0 -1
- package/dist/RS/v2/from/intervals.js +0 -18
- package/dist/RS/v2/from/intervals.js.map +0 -1
- package/dist/RS/v2/from/locked-times.js +0 -21
- package/dist/RS/v2/from/locked-times.js.map +0 -1
- package/dist/RS/v2/from/placements.js +0 -32
- package/dist/RS/v2/from/placements.js.map +0 -1
- package/dist/RS/v2/from/schedules.js +0 -78
- package/dist/RS/v2/from/schedules.js.map +0 -1
- package/dist/RS/v2/from/settings.js +0 -31
- package/dist/RS/v2/from/settings.js.map +0 -1
- package/dist/RS/v2/from/teachers.js +0 -33
- package/dist/RS/v2/from/teachers.js.map +0 -1
- package/dist/RS/v2/index.d.ts +0 -63
- package/dist/RS/v2/index.js +0 -12
- package/dist/RS/v2/index.js.map +0 -1
- package/dist/RS/v2/to/available-dependencies.js +0 -25
- package/dist/RS/v2/to/available-dependencies.js.map +0 -1
- package/dist/RS/v2/to/break-lengths.js +0 -19
- package/dist/RS/v2/to/break-lengths.js.map +0 -1
- package/dist/RS/v2/to/collections.js +0 -60
- package/dist/RS/v2/to/collections.js.map +0 -1
- package/dist/RS/v2/to/configurations.js +0 -23
- package/dist/RS/v2/to/configurations.js.map +0 -1
- package/dist/RS/v2/to/constraints.js +0 -88
- package/dist/RS/v2/to/constraints.js.map +0 -1
- package/dist/RS/v2/to/course-events/days.js +0 -12
- package/dist/RS/v2/to/course-events/days.js.map +0 -1
- package/dist/RS/v2/to/course-events/dependencies.js +0 -14
- package/dist/RS/v2/to/course-events/dependencies.js.map +0 -1
- package/dist/RS/v2/to/course-events/groups.js +0 -38
- package/dist/RS/v2/to/course-events/groups.js.map +0 -1
- package/dist/RS/v2/to/course-events/in-locations.js +0 -18
- package/dist/RS/v2/to/course-events/in-locations.js.map +0 -1
- package/dist/RS/v2/to/course-events/index.js +0 -56
- package/dist/RS/v2/to/course-events/index.js.map +0 -1
- package/dist/RS/v2/to/course-events/intervals.js +0 -11
- package/dist/RS/v2/to/course-events/intervals.js.map +0 -1
- package/dist/RS/v2/to/course-events/meta.js +0 -21
- package/dist/RS/v2/to/course-events/meta.js.map +0 -1
- package/dist/RS/v2/to/days.js +0 -11
- package/dist/RS/v2/to/days.js.map +0 -1
- package/dist/RS/v2/to/default.js +0 -36
- package/dist/RS/v2/to/default.js.map +0 -1
- package/dist/RS/v2/to/dependencies.js +0 -28
- package/dist/RS/v2/to/dependencies.js.map +0 -1
- package/dist/RS/v2/to/destructure.js +0 -40
- package/dist/RS/v2/to/destructure.js.map +0 -1
- package/dist/RS/v2/to/dynamic-locked-times.js +0 -57
- package/dist/RS/v2/to/dynamic-locked-times.js.map +0 -1
- package/dist/RS/v2/to/groups.js +0 -37
- package/dist/RS/v2/to/groups.js.map +0 -1
- package/dist/RS/v2/to/index.d.ts +0 -44
- package/dist/RS/v2/to/index.js +0 -36
- package/dist/RS/v2/to/index.js.map +0 -1
- package/dist/RS/v2/to/intervals.js +0 -32
- package/dist/RS/v2/to/intervals.js.map +0 -1
- package/dist/RS/v2/to/locked-times.js +0 -49
- package/dist/RS/v2/to/locked-times.js.map +0 -1
- package/dist/RS/v2/to/periods.js +0 -48
- package/dist/RS/v2/to/periods.js.map +0 -1
- package/dist/RS/v2/to/persons.js +0 -23
- package/dist/RS/v2/to/persons.js.map +0 -1
- package/dist/RS/v2/to/schedules.js +0 -19
- package/dist/RS/v2/to/schedules.js.map +0 -1
- package/dist/RS/v2/to/settings.js +0 -18
- package/dist/RS/v2/to/settings.js.map +0 -1
- package/dist/RS/v2/to/teachers.js +0 -37
- package/dist/RS/v2/to/teachers.js.map +0 -1
- package/dist/RS/v2/types/areas.d.ts +0 -8
- package/dist/RS/v2/types/available-dependencies.d.ts +0 -8
- package/dist/RS/v2/types/break-lengths.d.ts +0 -9
- package/dist/RS/v2/types/collections.d.ts +0 -29
- package/dist/RS/v2/types/configurations.d.ts +0 -10
- package/dist/RS/v2/types/constraints.d.ts +0 -21
- package/dist/RS/v2/types/course-events.d.ts +0 -30
- package/dist/RS/v2/types/days.d.ts +0 -8
- package/dist/RS/v2/types/default.d.ts +0 -25
- package/dist/RS/v2/types/dependencies.d.ts +0 -17
- package/dist/RS/v2/types/index.d.ts +0 -33
- package/dist/RS/v2/types/intervals.d.ts +0 -9
- package/dist/RS/v2/types/out-options.d.ts +0 -11
- package/dist/RS/v2/types/placements.d.ts +0 -12
- package/dist/RS/v2/types/schedules.d.ts +0 -18
- package/dist/RS/v3/from/division.js +0 -14
- package/dist/RS/v3/from/division.js.map +0 -1
- package/dist/RS/v3/from/index.js +0 -12
- package/dist/RS/v3/from/index.js.map +0 -1
- package/dist/RS/v3/from/schedules.js +0 -34
- package/dist/RS/v3/from/schedules.js.map +0 -1
- package/dist/RS/v3/index.d.ts +0 -21
- package/dist/RS/v3/index.js +0 -12
- package/dist/RS/v3/index.js.map +0 -1
- package/dist/RS/v3/to/available-dependencies.js +0 -26
- package/dist/RS/v3/to/available-dependencies.js.map +0 -1
- package/dist/RS/v3/to/break-lengths.js +0 -19
- package/dist/RS/v3/to/break-lengths.js.map +0 -1
- package/dist/RS/v3/to/collections.js +0 -56
- package/dist/RS/v3/to/collections.js.map +0 -1
- package/dist/RS/v3/to/configurations.js +0 -23
- package/dist/RS/v3/to/configurations.js.map +0 -1
- package/dist/RS/v3/to/constraints.js +0 -77
- package/dist/RS/v3/to/constraints.js.map +0 -1
- package/dist/RS/v3/to/course-events/days.js +0 -12
- package/dist/RS/v3/to/course-events/days.js.map +0 -1
- package/dist/RS/v3/to/course-events/dependencies.js +0 -14
- package/dist/RS/v3/to/course-events/dependencies.js.map +0 -1
- package/dist/RS/v3/to/course-events/groups.js +0 -44
- package/dist/RS/v3/to/course-events/groups.js.map +0 -1
- package/dist/RS/v3/to/course-events/in-locations.js +0 -18
- package/dist/RS/v3/to/course-events/in-locations.js.map +0 -1
- package/dist/RS/v3/to/course-events/index.js +0 -84
- package/dist/RS/v3/to/course-events/index.js.map +0 -1
- package/dist/RS/v3/to/course-events/intervals.js +0 -11
- package/dist/RS/v3/to/course-events/intervals.js.map +0 -1
- package/dist/RS/v3/to/course-events/meta.js +0 -21
- package/dist/RS/v3/to/course-events/meta.js.map +0 -1
- package/dist/RS/v3/to/days.js +0 -11
- package/dist/RS/v3/to/days.js.map +0 -1
- package/dist/RS/v3/to/default.js.map +0 -1
- package/dist/RS/v3/to/dependencies.js +0 -31
- package/dist/RS/v3/to/dependencies.js.map +0 -1
- package/dist/RS/v3/to/destructure.js +0 -33
- package/dist/RS/v3/to/destructure.js.map +0 -1
- package/dist/RS/v3/to/dynamic-locked-times.js +0 -97
- package/dist/RS/v3/to/dynamic-locked-times.js.map +0 -1
- package/dist/RS/v3/to/groups.js +0 -36
- package/dist/RS/v3/to/groups.js.map +0 -1
- package/dist/RS/v3/to/index.d.ts +0 -266
- package/dist/RS/v3/to/index.js.map +0 -1
- package/dist/RS/v3/to/individuals.js +0 -49
- package/dist/RS/v3/to/individuals.js.map +0 -1
- package/dist/RS/v3/to/intervals.js +0 -32
- package/dist/RS/v3/to/intervals.js.map +0 -1
- package/dist/RS/v3/to/locked-times.js +0 -49
- package/dist/RS/v3/to/locked-times.js.map +0 -1
- package/dist/RS/v3/to/periods.js +0 -48
- package/dist/RS/v3/to/periods.js.map +0 -1
- package/dist/RS/v3/to/schedules.js +0 -39
- package/dist/RS/v3/to/schedules.js.map +0 -1
- package/dist/RS/v3/to/settings.js +0 -18
- package/dist/RS/v3/to/settings.js.map +0 -1
- package/dist/RS/v3/to/teachers.js +0 -36
- package/dist/RS/v3/to/teachers.js.map +0 -1
- package/dist/RS/v3/to/util.js +0 -32
- package/dist/RS/v3/to/util.js.map +0 -1
- package/dist/RS/v3/types/areas.d.ts +0 -8
- package/dist/RS/v3/types/available-dependencies.d.ts +0 -8
- package/dist/RS/v3/types/break-lengths.d.ts +0 -9
- package/dist/RS/v3/types/collections.d.ts +0 -31
- package/dist/RS/v3/types/configurations.d.ts +0 -10
- package/dist/RS/v3/types/constraints.d.ts +0 -25
- package/dist/RS/v3/types/course-events.d.ts +0 -32
- package/dist/RS/v3/types/days.d.ts +0 -8
- package/dist/RS/v3/types/dependencies.d.ts +0 -17
- package/dist/RS/v3/types/groups.d.ts +0 -25
- package/dist/RS/v3/types/index.d.ts +0 -33
- package/dist/RS/v3/types/individuals.d.ts +0 -13
- package/dist/RS/v3/types/intervals.d.ts +0 -9
- package/dist/RS/v3/types/locked-times.d.ts +0 -11
- package/dist/RS/v3/types/out-options.d.ts +0 -23
- package/dist/RS/v3/types/placements.d.ts +0 -12
- package/dist/RS/v3/types/root-intervals.d.ts +0 -10
- package/dist/RS/v3/types/schedules.d.ts +0 -24
- package/dist/RS/v3/types/settings.d.ts +0 -12
- package/dist/SS12000/from/activities.js +0 -35
- package/dist/SS12000/from/activities.js.map +0 -1
- package/dist/SS12000/from/calendar-events.js +0 -20
- package/dist/SS12000/from/calendar-events.js.map +0 -1
- package/dist/SS12000/from/duties.js +0 -21
- package/dist/SS12000/from/duties.js.map +0 -1
- package/dist/SS12000/from/groups.js +0 -23
- package/dist/SS12000/from/groups.js.map +0 -1
- package/dist/SS12000/from/index.js +0 -24
- package/dist/SS12000/from/index.js.map +0 -1
- package/dist/SS12000/from/persons.js +0 -43
- package/dist/SS12000/from/persons.js.map +0 -1
- package/dist/SS12000/from/resources.js +0 -9
- package/dist/SS12000/from/resources.js.map +0 -1
- package/dist/SS12000/from/rooms.js +0 -18
- package/dist/SS12000/from/rooms.js.map +0 -1
- package/dist/SS12000/from/syllabuses.js +0 -21
- package/dist/SS12000/from/syllabuses.js.map +0 -1
- package/dist/SS12000/index.d.ts +0 -73
- package/dist/SS12000/index.js +0 -12
- package/dist/SS12000/index.js.map +0 -1
- package/dist/SS12000/to/activities.js +0 -55
- package/dist/SS12000/to/activities.js.map +0 -1
- package/dist/SS12000/to/calendar-events.js +0 -47
- package/dist/SS12000/to/calendar-events.js.map +0 -1
- package/dist/SS12000/to/common.js +0 -16
- package/dist/SS12000/to/common.js.map +0 -1
- package/dist/SS12000/to/duties.js +0 -36
- package/dist/SS12000/to/duties.js.map +0 -1
- package/dist/SS12000/to/groups.js +0 -37
- package/dist/SS12000/to/groups.js.map +0 -1
- package/dist/SS12000/to/index.d.ts +0 -25
- package/dist/SS12000/to/index.js +0 -24
- package/dist/SS12000/to/index.js.map +0 -1
- package/dist/SS12000/to/persons.js +0 -36
- package/dist/SS12000/to/persons.js.map +0 -1
- package/dist/SS12000/to/resources.js +0 -23
- package/dist/SS12000/to/resources.js.map +0 -1
- package/dist/SS12000/to/rooms.js +0 -28
- package/dist/SS12000/to/rooms.js.map +0 -1
- package/dist/SS12000/to/syllabuses.js +0 -30
- package/dist/SS12000/to/syllabuses.js.map +0 -1
- package/dist/SS12000/types/activities.d.ts +0 -41
- package/dist/SS12000/types/calendar-events.d.ts +0 -23
- package/dist/SS12000/types/codes.d.ts +0 -9
- package/dist/SS12000/types/duties.d.ts +0 -23
- package/dist/SS12000/types/duty-assignments.d.ts +0 -13
- package/dist/SS12000/types/groups.d.ts +0 -23
- package/dist/SS12000/types/index.d.ts +0 -21
- package/dist/SS12000/types/organisation.d.ts +0 -20
- package/dist/SS12000/types/persons.d.ts +0 -30
- package/dist/SS12000/types/resources.d.ts +0 -13
- package/dist/SS12000/types/rooms.d.ts +0 -17
- package/dist/SS12000/types/syllabus.d.ts +0 -19
- package/dist/core/v1/from/courses.js +0 -26
- package/dist/core/v1/from/courses.js.map +0 -1
- package/dist/core/v1/from/events.js +0 -12
- package/dist/core/v1/from/events.js.map +0 -1
- package/dist/core/v1/from/groups.js +0 -14
- package/dist/core/v1/from/groups.js.map +0 -1
- package/dist/core/v1/from/index.js +0 -8
- package/dist/core/v1/from/index.js.map +0 -1
- package/dist/core/v1/from/locations.js +0 -14
- package/dist/core/v1/from/locations.js.map +0 -1
- package/dist/core/v1/from/locked-times.js +0 -13
- package/dist/core/v1/from/locked-times.js.map +0 -1
- package/dist/core/v1/from/overlap-groups.js +0 -13
- package/dist/core/v1/from/overlap-groups.js.map +0 -1
- package/dist/core/v1/from/periods.js +0 -14
- package/dist/core/v1/from/periods.js.map +0 -1
- package/dist/core/v1/from/schedules.d.ts +0 -139
- package/dist/core/v1/from/schedules.js +0 -36
- package/dist/core/v1/from/schedules.js.map +0 -1
- package/dist/core/v1/from/teachers.js +0 -14
- package/dist/core/v1/from/teachers.js.map +0 -1
- package/dist/core/v1/index.d.ts +0 -14
- package/dist/core/v1/index.js +0 -12
- package/dist/core/v1/index.js.map +0 -1
- package/dist/core/v1/to/available-locations.js +0 -11
- package/dist/core/v1/to/available-locations.js.map +0 -1
- package/dist/core/v1/to/courses.js +0 -33
- package/dist/core/v1/to/courses.js.map +0 -1
- package/dist/core/v1/to/days.js +0 -13
- package/dist/core/v1/to/days.js.map +0 -1
- package/dist/core/v1/to/events.js +0 -35
- package/dist/core/v1/to/events.js.map +0 -1
- package/dist/core/v1/to/groups.js +0 -24
- package/dist/core/v1/to/groups.js.map +0 -1
- package/dist/core/v1/to/index.js +0 -10
- package/dist/core/v1/to/index.js.map +0 -1
- package/dist/core/v1/to/intervals.js +0 -14
- package/dist/core/v1/to/intervals.js.map +0 -1
- package/dist/core/v1/to/locations.js +0 -20
- package/dist/core/v1/to/locations.js.map +0 -1
- package/dist/core/v1/to/locked-times.js +0 -25
- package/dist/core/v1/to/locked-times.js.map +0 -1
- package/dist/core/v1/to/overlap-groups.js +0 -30
- package/dist/core/v1/to/overlap-groups.js.map +0 -1
- package/dist/core/v1/to/periods.js +0 -10
- package/dist/core/v1/to/periods.js.map +0 -1
- package/dist/core/v1/to/persons.js +0 -22
- package/dist/core/v1/to/persons.js.map +0 -1
- package/dist/core/v1/to/schedules.d.ts +0 -170
- package/dist/core/v1/to/schedules.js +0 -32
- package/dist/core/v1/to/schedules.js.map +0 -1
- package/dist/core/v1/to/settings.js +0 -13
- package/dist/core/v1/to/settings.js.map +0 -1
- package/dist/core/v1/to/teachers.js +0 -20
- package/dist/core/v1/to/teachers.js.map +0 -1
- package/dist/core/v1/types/areas.d.ts +0 -16
- package/dist/core/v1/types/available-locations.d.ts +0 -13
- package/dist/core/v1/types/break-lengths.d.ts +0 -5
- package/dist/core/v1/types/common/coalesced.d.ts +0 -10
- package/dist/core/v1/types/courses.d.ts +0 -54
- package/dist/core/v1/types/days.d.ts +0 -14
- package/dist/core/v1/types/division-settings.d.ts +0 -39
- package/dist/core/v1/types/divisions.d.ts +0 -45
- package/dist/core/v1/types/events.d.ts +0 -60
- package/dist/core/v1/types/groups.d.ts +0 -37
- package/dist/core/v1/types/index.d.ts +0 -41
- package/dist/core/v1/types/intervals.d.ts +0 -17
- package/dist/core/v1/types/locations.d.ts +0 -32
- package/dist/core/v1/types/locked-times.d.ts +0 -39
- package/dist/core/v1/types/meta.d.ts +0 -9
- package/dist/core/v1/types/overlap-groups.d.ts +0 -26
- package/dist/core/v1/types/periods.d.ts +0 -22
- package/dist/core/v1/types/persons.d.ts +0 -40
- package/dist/core/v1/types/teachers.d.ts +0 -34
- package/dist/core/v2/from/courses.js +0 -13
- package/dist/core/v2/from/courses.js.map +0 -1
- package/dist/core/v2/from/events.js +0 -12
- package/dist/core/v2/from/events.js.map +0 -1
- package/dist/core/v2/from/exceptions.js +0 -13
- package/dist/core/v2/from/exceptions.js.map +0 -1
- package/dist/core/v2/from/groups.js +0 -13
- package/dist/core/v2/from/groups.js.map +0 -1
- package/dist/core/v2/from/index.js.map +0 -1
- package/dist/core/v2/from/locations.js +0 -13
- package/dist/core/v2/from/locations.js.map +0 -1
- package/dist/core/v2/from/locked-times.js +0 -13
- package/dist/core/v2/from/locked-times.js.map +0 -1
- package/dist/core/v2/from/overlap-groups.js +0 -13
- package/dist/core/v2/from/overlap-groups.js.map +0 -1
- package/dist/core/v2/from/periods.js +0 -13
- package/dist/core/v2/from/periods.js.map +0 -1
- package/dist/core/v2/from/persons.js +0 -12
- package/dist/core/v2/from/persons.js.map +0 -1
- package/dist/core/v2/from/root-intervals.js +0 -13
- package/dist/core/v2/from/root-intervals.js.map +0 -1
- package/dist/core/v2/from/schedules.d.ts +0 -245
- package/dist/core/v2/from/schedules.js +0 -48
- package/dist/core/v2/from/schedules.js.map +0 -1
- package/dist/core/v2/from/syllabuses.js.map +0 -1
- package/dist/core/v2/from/teachers.js +0 -13
- package/dist/core/v2/from/teachers.js.map +0 -1
- package/dist/core/v2/index.d.ts +0 -16
- package/dist/core/v2/index.js +0 -12
- package/dist/core/v2/index.js.map +0 -1
- package/dist/core/v2/to/available-locations.js +0 -11
- package/dist/core/v2/to/available-locations.js.map +0 -1
- package/dist/core/v2/to/courses.js +0 -44
- package/dist/core/v2/to/courses.js.map +0 -1
- package/dist/core/v2/to/days.js +0 -13
- package/dist/core/v2/to/days.js.map +0 -1
- package/dist/core/v2/to/division.js +0 -10
- package/dist/core/v2/to/division.js.map +0 -1
- package/dist/core/v2/to/events.js +0 -47
- package/dist/core/v2/to/events.js.map +0 -1
- package/dist/core/v2/to/exceptions.js +0 -29
- package/dist/core/v2/to/exceptions.js.map +0 -1
- package/dist/core/v2/to/groups.js +0 -34
- package/dist/core/v2/to/groups.js.map +0 -1
- package/dist/core/v2/to/index.d.ts +0 -9
- package/dist/core/v2/to/index.js +0 -10
- package/dist/core/v2/to/index.js.map +0 -1
- package/dist/core/v2/to/intervals.js +0 -13
- package/dist/core/v2/to/intervals.js.map +0 -1
- package/dist/core/v2/to/locations.js +0 -35
- package/dist/core/v2/to/locations.js.map +0 -1
- package/dist/core/v2/to/locked-times.js +0 -25
- package/dist/core/v2/to/locked-times.js.map +0 -1
- package/dist/core/v2/to/overlap-groups.js +0 -30
- package/dist/core/v2/to/overlap-groups.js.map +0 -1
- package/dist/core/v2/to/periods.js +0 -10
- package/dist/core/v2/to/periods.js.map +0 -1
- package/dist/core/v2/to/persons.js +0 -25
- package/dist/core/v2/to/persons.js.map +0 -1
- package/dist/core/v2/to/root-intervals.js +0 -10
- package/dist/core/v2/to/root-intervals.js.map +0 -1
- package/dist/core/v2/to/schedules.d.ts +0 -249
- package/dist/core/v2/to/schedules.js +0 -40
- package/dist/core/v2/to/schedules.js.map +0 -1
- package/dist/core/v2/to/settings.js +0 -13
- package/dist/core/v2/to/settings.js.map +0 -1
- package/dist/core/v2/to/syllabuses.js +0 -16
- package/dist/core/v2/to/syllabuses.js.map +0 -1
- package/dist/core/v2/to/teachers.js +0 -28
- package/dist/core/v2/to/teachers.js.map +0 -1
- package/dist/core/v2/types/areas.d.ts +0 -16
- package/dist/core/v2/types/available-locations.d.ts +0 -13
- package/dist/core/v2/types/break-lengths.d.ts +0 -5
- package/dist/core/v2/types/common/coalesced.d.ts +0 -10
- package/dist/core/v2/types/common/maximum-schedule-span.d.ts +0 -8
- package/dist/core/v2/types/common/planned-schedule-duration.d.ts +0 -7
- package/dist/core/v2/types/courses.d.ts +0 -76
- package/dist/core/v2/types/days.d.ts +0 -14
- package/dist/core/v2/types/divisions.d.ts +0 -54
- package/dist/core/v2/types/events.d.ts +0 -76
- package/dist/core/v2/types/groups.d.ts +0 -50
- package/dist/core/v2/types/index.d.ts +0 -49
- package/dist/core/v2/types/intervals.d.ts +0 -17
- package/dist/core/v2/types/locations.d.ts +0 -38
- package/dist/core/v2/types/locked-times.d.ts +0 -44
- package/dist/core/v2/types/overlap-groups.d.ts +0 -26
- package/dist/core/v2/types/periods.d.ts +0 -25
- package/dist/core/v2/types/root-intervals.d.ts +0 -23
- package/dist/core/v2/types/schedules.d.ts +0 -38
- package/dist/core/v2/types/syllabus.d.ts +0 -27
- package/dist/vKlass/from/index.d.ts +0 -9
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Day } from "./days.js";
|
|
2
|
-
import { LockedTime } from "./locked-times.js";
|
|
3
|
-
import { Interval } from "./intervals.js";
|
|
4
|
-
import { Dependency } from "./dependencies.js";
|
|
5
|
-
import { AvailableDependency } from "./available-dependencies.js";
|
|
6
|
-
import { CourseEvent } from "./course-events.js";
|
|
7
|
-
import { Collection } from "./collections.js";
|
|
8
|
-
import { Group } from "./groups.js";
|
|
9
|
-
import { Settings } from "./settings.js";
|
|
10
|
-
import { Configuration } from "./configurations.js";
|
|
11
|
-
import { Area } from "./areas.js";
|
|
12
|
-
import { Schedule } from "./schedules.js";
|
|
13
|
-
|
|
14
|
-
//#region src/RS/v1/types/index.d.ts
|
|
15
|
-
declare namespace Types {
|
|
16
|
-
type area = Area;
|
|
17
|
-
type availableDependency = AvailableDependency;
|
|
18
|
-
type configuration = Configuration;
|
|
19
|
-
type courseEvent = CourseEvent;
|
|
20
|
-
type collection = Collection;
|
|
21
|
-
type day = Day;
|
|
22
|
-
type dependency = Dependency;
|
|
23
|
-
type group = Group;
|
|
24
|
-
type interval = Interval;
|
|
25
|
-
type lockedTime = LockedTime;
|
|
26
|
-
type schedule = Schedule;
|
|
27
|
-
type settings = Settings;
|
|
28
|
-
}
|
|
29
|
-
//#endregion
|
|
30
|
-
export { Types };
|
|
31
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
//#region src/RS/v1/types/out-options.d.ts
|
|
2
|
-
type Id = 'id' | '_id' | 'ids';
|
|
3
|
-
interface OutOptions {
|
|
4
|
-
idKey?: Id;
|
|
5
|
-
meta?: boolean;
|
|
6
|
-
isPrivateId?: boolean;
|
|
7
|
-
isPublicId?: boolean;
|
|
8
|
-
}
|
|
9
|
-
//#endregion
|
|
10
|
-
export { OutOptions };
|
|
11
|
-
//# sourceMappingURL=out-options.d.ts.map
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
//#region src/RS/v1/types/placements.d.ts
|
|
2
|
-
interface Placement {
|
|
3
|
-
id: string;
|
|
4
|
-
collection: string;
|
|
5
|
-
dependencies: string[];
|
|
6
|
-
start: number;
|
|
7
|
-
end: number;
|
|
8
|
-
day: number;
|
|
9
|
-
}
|
|
10
|
-
//#endregion
|
|
11
|
-
export { Placement };
|
|
12
|
-
//# sourceMappingURL=placements.d.ts.map
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Configuration } from "./configurations.js";
|
|
2
|
-
import { Constraint } from "./constraints.js";
|
|
3
|
-
|
|
4
|
-
//#region src/RS/v1/types/schedules.d.ts
|
|
5
|
-
type Structure = 'RS/algorithm-1.0.0';
|
|
6
|
-
interface Schedule {
|
|
7
|
-
meta?: {
|
|
8
|
-
structure?: Structure;
|
|
9
|
-
};
|
|
10
|
-
score?: [number, number, number, number];
|
|
11
|
-
input?: Constraint;
|
|
12
|
-
output?: Configuration[];
|
|
13
|
-
}
|
|
14
|
-
//#endregion
|
|
15
|
-
export { Schedule };
|
|
16
|
-
//# sourceMappingURL=schedules.d.ts.map
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Dependency } from "./dependencies.js";
|
|
2
|
-
import { CourseEvent } from "./course-events.js";
|
|
3
|
-
import { Collection } from "./collections.js";
|
|
4
|
-
import { Group } from "./groups.js";
|
|
5
|
-
|
|
6
|
-
//#region src/RS/v1/types/settings.d.ts
|
|
7
|
-
interface Settings {
|
|
8
|
-
defaultDayStart?: number;
|
|
9
|
-
defaultDayEnd?: number;
|
|
10
|
-
discretization?: number;
|
|
11
|
-
defaultPotentialCenter?: number;
|
|
12
|
-
numDays?: number;
|
|
13
|
-
defaultEventMinBreakLength?: number;
|
|
14
|
-
defaultDependencyMinBreakLength?: number;
|
|
15
|
-
defaultMaxNumWorkingHours?: number | boolean;
|
|
16
|
-
defaultMaxNumDailyWorkingHours?: number | boolean;
|
|
17
|
-
defaultDayRank?: number;
|
|
18
|
-
defaultDependencyRank?: number;
|
|
19
|
-
defaultGroupRank?: number;
|
|
20
|
-
defaultEventDensity?: number;
|
|
21
|
-
defaultEventWeight?: number;
|
|
22
|
-
defaultGroupWeight?: number;
|
|
23
|
-
defaultCollectionWeight?: number;
|
|
24
|
-
dependencyIdKey: keyof Dependency;
|
|
25
|
-
groupIdKey: keyof Group;
|
|
26
|
-
collectionIdKey: keyof Collection;
|
|
27
|
-
eventIdKey: keyof CourseEvent;
|
|
28
|
-
}
|
|
29
|
-
//#endregion
|
|
30
|
-
export { Settings };
|
|
31
|
-
//# sourceMappingURL=settings.d.ts.map
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
//#region src/RS/v2/from/available-dependencies.ts
|
|
2
|
-
var available_dependencies_default = (data, settings) => {
|
|
3
|
-
let index = -1;
|
|
4
|
-
return (data ? data : []).reduce((acc, dependency) => {
|
|
5
|
-
switch (typeof dependency) {
|
|
6
|
-
case "string": return acc.concat({
|
|
7
|
-
groupIndex: 0,
|
|
8
|
-
locations: [dependency]
|
|
9
|
-
});
|
|
10
|
-
case "object": if (Array.isArray(dependency)) {
|
|
11
|
-
index++;
|
|
12
|
-
const dependencies = dependency.map((val) => {
|
|
13
|
-
switch (typeof val) {
|
|
14
|
-
case "string": return {
|
|
15
|
-
groupIndex: index,
|
|
16
|
-
locations: [val]
|
|
17
|
-
};
|
|
18
|
-
case "object": return {
|
|
19
|
-
...val.hasOwnProperty("rank") && { rank: val.rank },
|
|
20
|
-
groupIndex: index,
|
|
21
|
-
locations: [val.dependency]
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
return acc.concat(...dependencies);
|
|
26
|
-
} else return acc.concat({
|
|
27
|
-
groupIndex: 0,
|
|
28
|
-
locations: [dependency.dependency],
|
|
29
|
-
...dependency.hasOwnProperty("rank") && { rank: dependency.rank }
|
|
30
|
-
});
|
|
31
|
-
default: throw new Error("(RS::V2::From::AvailableDependencies) course dependency is neither string nor object");
|
|
32
|
-
}
|
|
33
|
-
}, []);
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
//#endregion
|
|
37
|
-
export { available_dependencies_default as default };
|
|
38
|
-
//# sourceMappingURL=available-dependencies.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"available-dependencies.js","names":[],"sources":["../../../../src/RS/v2/from/available-dependencies.ts"],"sourcesContent":["import { Settings } from '../types/settings';\n\nexport default (data: any,\n settings: Settings): any => {\n let index = -1;\n return (data ? data : []).reduce((acc: any, dependency: any) => {\n switch(typeof dependency) {\n case 'string':\n return acc.concat({\n groupIndex: 0,\n locations: [ dependency ]\n });\n case 'object':\n\n /*\n can be\n\n {\n rank?: number,\n dependency: string\n }\n\n or\n [ {...} ]\n\n */\n if (Array.isArray(dependency)) {\n index++;\n\n const dependencies = dependency.map((val) => {\n switch(typeof val) {\n case 'string':\n return {\n groupIndex: index,\n locations: [ val ]\n };\n case 'object':\n return {\n ...val.hasOwnProperty('rank') && { rank: val.rank },\n groupIndex: index,\n locations: [ val.dependency ]\n };\n }\n });\n return acc.concat(...dependencies);\n } else\n return acc.concat({\n groupIndex: 0,\n locations: [ dependency.dependency ],\n ...dependency.hasOwnProperty('rank') && { rank: dependency.rank },\n });\n default:\n throw new Error('(RS::V2::From::AvailableDependencies) course dependency is neither string nor object');\n }\n }, []);\n};"],"mappings":";AAEA,sCAAgB,MACd,aAA4B;CAC5B,IAAI,QAAQ;AACZ,SAAQ,OAAO,OAAO,IAAI,QAAQ,KAAU,eAAoB;AAC9D,UAAO,OAAO,YAAd;GACE,KAAK,SACH,QAAO,IAAI,OAAO;IAChB,YAAY;IACZ,WAAY,CAAE;;GAElB,KAAK,SAcH,KAAI,MAAM,QAAQ,aAAa;AAC7B;IAEA,MAAM,eAAe,WAAW,KAAK,QAAQ;AAC3C,aAAO,OAAO,KAAd;MACE,KAAK,SACH,QAAO;OACL,YAAY;OACZ,WAAY,CAAE;;MAElB,KAAK,SACH,QAAO;OACL,GAAG,IAAI,eAAe,WAAW,EAAE,MAAM,IAAI;OAC7C,YAAY;OACZ,WAAY,CAAE,IAAI;;;;AAI1B,WAAO,IAAI,OAAO,GAAG;SAErB,QAAO,IAAI,OAAO;IAChB,YAAY;IACZ,WAAY,CAAE,WAAW;IACzB,GAAG,WAAW,eAAe,WAAW,EAAE,MAAM,WAAW;;GAEjE,QACE,OAAM,IAAI,MAAM;;IAEnB"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
//#region src/RS/v2/from/break-lengths.ts
|
|
2
|
-
var break_lengths_default = (breakLength) => {
|
|
3
|
-
if (breakLength == null) return null;
|
|
4
|
-
switch (typeof breakLength) {
|
|
5
|
-
case "boolean":
|
|
6
|
-
case "number": return breakLength;
|
|
7
|
-
case "object": if (Array.isArray(breakLength) && breakLength.length == 2) return breakLength;
|
|
8
|
-
else if (breakLength?.bef != null && breakLength?.aft != null) return [breakLength.bef, breakLength.aft];
|
|
9
|
-
default: throw new Error("(RS::V2::From::BreakLengths) Day is neither number, boolean, array or object of type { bef, aft }");
|
|
10
|
-
}
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
//#endregion
|
|
14
|
-
export { break_lengths_default as default };
|
|
15
|
-
//# sourceMappingURL=break-lengths.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"break-lengths.js","names":[],"sources":["../../../../src/RS/v2/from/break-lengths.ts"],"sourcesContent":["import { BreakLength } from '../types/break-lengths';\n\nexport default (breakLength: BreakLength | null | undefined): any => {\n\n if (breakLength == null) return null;\n\n switch(typeof breakLength) {\n case 'boolean':\n case 'number':\n return breakLength;\n case 'object':\n if (Array.isArray(breakLength) && breakLength.length == 2)\n return breakLength;\n else if (breakLength?.bef != null && breakLength?.aft != null)\n return [breakLength.bef, breakLength.aft];\n default:\n throw new Error('(RS::V2::From::BreakLengths) Day is neither number, boolean, array or object of type { bef, aft }');\n }\n};"],"mappings":";AAEA,6BAAgB,gBAAqD;AAEnE,KAAI,eAAe,KAAM,QAAO;AAEhC,SAAO,OAAO,aAAd;EACE,KAAK;EACL,KAAK,SACH,QAAO;EACT,KAAK,SACH,KAAI,MAAM,QAAQ,gBAAgB,YAAY,UAAU,EACtD,QAAO;WACA,aAAa,OAAO,QAAQ,aAAa,OAAO,KACvD,QAAO,CAAC,YAAY,KAAK,YAAY;EACzC,QACE,OAAM,IAAI,MAAM"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import available_dependencies_default from "./available-dependencies.js";
|
|
2
|
-
import break_lengths_default from "./break-lengths.js";
|
|
3
|
-
import days_default from "./days.js";
|
|
4
|
-
import locked_times_default from "./locked-times.js";
|
|
5
|
-
import intervals_default from "./intervals.js";
|
|
6
|
-
import course_events_default from "./course-events.js";
|
|
7
|
-
|
|
8
|
-
//#region src/RS/v2/from/collections.ts
|
|
9
|
-
function _course(course, teachersList, groupsList, settings, overlapGroup = null) {
|
|
10
|
-
const idKey = settings.collectionIdKey;
|
|
11
|
-
if (!idKey) throw new Error("(RS::V2::From::Collections) Property \"collectionIdKey\" in settings is undefined");
|
|
12
|
-
if (!course[idKey]) throw new Error("(RS::V2::From::Collections) A course missing a unique key");
|
|
13
|
-
const doc = {
|
|
14
|
-
ids: course[idKey],
|
|
15
|
-
...course.name && { displayName: course.name },
|
|
16
|
-
...course.subject && { subject: course.subject },
|
|
17
|
-
...course.color && { color: course.color },
|
|
18
|
-
..."minBreakLength" in course && { minBreakLength: break_lengths_default(course.minBreakLength) },
|
|
19
|
-
..."density" in course && { density: course.density },
|
|
20
|
-
..."weight" in course && { weight: course.weight },
|
|
21
|
-
..."potentialCenter" in course && { potentialCenter: course.potentialCenter?.toString() },
|
|
22
|
-
...course.dependencies && { locations: available_dependencies_default(course.dependencies, settings) },
|
|
23
|
-
...course.intervals && { intervals: intervals_default(course.intervals) },
|
|
24
|
-
...course.lockedTimes && { lockedTimes: locked_times_default(course.lockedTimes) },
|
|
25
|
-
...course.days && { days: days_default(course.days, settings) },
|
|
26
|
-
...course.period != void 0 && { period: course.period.toString() }
|
|
27
|
-
};
|
|
28
|
-
doc.teachers = course.groups?.flat().reduce((acc, gId) => {
|
|
29
|
-
if (teachersList.indexOf(gId) != -1) return acc.concat({ to: gId });
|
|
30
|
-
return acc;
|
|
31
|
-
}, []);
|
|
32
|
-
doc.groups = course.groups?.flat().reduce((acc, gId) => {
|
|
33
|
-
if (groupsList.indexOf(gId) != -1) return acc.concat({ to: gId });
|
|
34
|
-
return acc;
|
|
35
|
-
}, []);
|
|
36
|
-
if ((doc.teachers?.length ?? 0) + (doc.groups?.length ?? 0) !== (course.groups || []).length) throw new Error(`(RS::V2::From::Collections) Length of teachers + groups does not match length of groups in input for course ${course[idKey]}`);
|
|
37
|
-
if ((course.events || []).length) doc.events = course_events_default(course.events, course, teachersList, groupsList, settings, overlapGroup);
|
|
38
|
-
return doc;
|
|
39
|
-
}
|
|
40
|
-
const reduceCourses = (courses, teachersList, groupsList, settings, overlapGroup = 0) => {
|
|
41
|
-
return courses.reduce((acc, course) => {
|
|
42
|
-
if (Array.isArray(course)) {
|
|
43
|
-
const _overlapGroup = overlapGroup++;
|
|
44
|
-
return acc.concat(course.reduce((acc$1, innerCourse) => {
|
|
45
|
-
if (!("events" in innerCourse)) return acc$1;
|
|
46
|
-
return acc$1.concat(_course(innerCourse, teachersList, groupsList, settings, _overlapGroup));
|
|
47
|
-
}, []));
|
|
48
|
-
}
|
|
49
|
-
if (!("events" in course)) return acc;
|
|
50
|
-
return acc.concat(_course(course, teachersList, groupsList, settings));
|
|
51
|
-
}, []);
|
|
52
|
-
};
|
|
53
|
-
var collections_default = reduceCourses;
|
|
54
|
-
|
|
55
|
-
//#endregion
|
|
56
|
-
export { collections_default as default };
|
|
57
|
-
//# sourceMappingURL=collections.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collections.js","names":["idKey: keyof Collection","doc: Type","breakLength","availableDependencies","intervals","lockedTime","days","courseEvents","acc"],"sources":["../../../../src/RS/v2/from/collections.ts"],"sourcesContent":["\nimport breakLength from './break-lengths';\nimport days from './days';\nimport lockedTime from './locked-times';\nimport intervals from './intervals';\nimport availableDependencies from './available-dependencies';\nimport courseEvents from './course-events';\n\nimport { Constraint } from '../types/constraints';\nimport { Settings } from '../types/settings';\nimport { Collection } from '../types/collections';\n\nimport { Types as CoreTypes } from '../../../core/types';\nimport { Serialized,\n Deserialized } from '../../../core/types';\n\ntype Type = Deserialized<Omit<CoreTypes.course, 'period' | 'overlapGroup' | 'teachers' | 'groups' | 'events'>> &\n Serialized<Pick<CoreTypes.course, 'period' | 'overlapGroup' | 'teachers' | 'groups'>> &\n { events?: ReturnType<typeof courseEvents> };\nfunction _course (course: Collection,\n teachersList: string[],\n groupsList: string[],\n settings: Settings,\n overlapGroup: number | null = null\n): Type {\n const idKey: keyof Collection = settings.collectionIdKey;\n\n if (!idKey)\n throw new Error('(RS::V2::From::Collections) Property \"collectionIdKey\" in settings is undefined');\n\n if (!course[idKey])\n throw new Error('(RS::V2::From::Collections) A course missing a unique key');\n\n const doc: Type = {\n ids: course[idKey],\n // ...(overlapGroup != null) && { overlapGroup: overlapGroup.toString() },\n ...course.name && { displayName: course.name },\n ...course.subject && { subject: course.subject },\n ...course.color && { color: course.color },\n ...'minBreakLength' in course && { minBreakLength: breakLength(course.minBreakLength) },\n ...'density' in course && { density: course.density },\n ...'weight' in course && { weight: course.weight },\n ...'potentialCenter' in course && { potentialCenter: course.potentialCenter?.toString() },\n ...course.dependencies && { locations: availableDependencies(course.dependencies, settings) },\n ...course.intervals && { intervals: intervals(course.intervals) },\n ...course.lockedTimes && { lockedTimes: lockedTime(course.lockedTimes) },\n ...course.days && { days: days(course.days, settings) },\n ...course.period != undefined && { period: course.period.toString() },\n };\n\n doc.teachers = course.groups?.flat().reduce((acc: NonNullable<CoreTypes.course['teachers']>, gId: string) => {\n if (teachersList.indexOf(gId) != -1)\n return acc.concat({ to: gId });\n return acc;\n }, []) as any;\n\n /* TYPE INCONSISTENCY! */ doc.groups = course.groups?.flat().reduce((acc: NonNullable<CoreTypes.course['groups']>, gId: string) => {\n /* TYPE INCONSISTENCY! */ if (groupsList.indexOf(gId) != -1)\n /* TYPE INCONSISTENCY! */ return acc.concat({ to: gId });\n /* TYPE INCONSISTENCY! */ return acc;\n /* TYPE INCONSISTENCY! */ }, []) as any;\n\n if (((doc.teachers?.length ?? 0) + (doc.groups?.length ?? 0)) !== (course.groups || []).length )\n throw new Error(`(RS::V2::From::Collections) Length of teachers + groups does not match length of groups in input for course ${ course[idKey] }`);\n\n if ((course.events || []).length)\n doc.events = courseEvents(course.events, course, teachersList, groupsList, settings, overlapGroup);\n\n return doc;\n}\n\nconst reduceCourses = (courses: NonNullable<Constraint['events']>,\n teachersList: string[],\n groupsList: string[],\n settings: Settings,\n overlapGroup: number = 0) => {\n\n return courses.reduce((acc: Type[], course) => {\n\n // check if overlap group\n if (Array.isArray(course)) {\n const _overlapGroup = overlapGroup++;\n return acc.concat(\n\n course.reduce((acc: Type[], innerCourse) => {\n if (!('events' in innerCourse))\n return acc;\n return acc.concat(_course(innerCourse, teachersList, groupsList, settings, _overlapGroup));\n }, [])\n );\n }\n\n // if event (not yet supported)\n if (!('events' in course)) return acc;\n\n // is course\n return acc.concat(_course(course, teachersList, groupsList, settings));\n }, []);\n};\n\nexport default reduceCourses;"],"mappings":";;;;;;;;AAmBA,SAAS,QAAS,QAChB,cACA,YACA,UACA,eAA8B,MACvB;CACP,MAAMA,QAA0B,SAAS;AAEzC,KAAI,CAAC,MACH,OAAM,IAAI,MAAM;AAElB,KAAI,CAAC,OAAO,OACV,OAAM,IAAI,MAAM;CAElB,MAAMC,MAAY;EAChB,KAAK,OAAO;EAEZ,GAAG,OAAO,QAAuC,EAAE,aAAiB,OAAO;EAC3E,GAAG,OAAO,WAAuC,EAAE,SAAiB,OAAO;EAC3E,GAAG,OAAO,SAAuC,EAAE,OAAiB,OAAO;EAC3E,GAAG,oBAAqB,UAAyB,EAAE,gBAAiBC,sBAAY,OAAO;EACvF,GAAG,aAAqB,UAAyB,EAAE,SAAiB,OAAO;EAC3E,GAAG,YAAqB,UAAyB,EAAE,QAAiB,OAAO;EAC3E,GAAG,qBAAqB,UAAyB,EAAE,iBAAiB,OAAO,iBAAiB;EAC5F,GAAG,OAAO,gBAAuC,EAAE,WAAiBC,+BAAsB,OAAO,cAAc;EAC/G,GAAG,OAAO,aAAuC,EAAE,WAAiBC,kBAAU,OAAO;EACrF,GAAG,OAAO,eAAuC,EAAE,aAAiBC,qBAAW,OAAO;EACtF,GAAG,OAAO,QAAuC,EAAE,MAAiBC,aAAK,OAAO,MAAM;EACtF,GAAG,OAAO,UAAU,UAA6B,EAAE,QAAiB,OAAO,OAAO;;AAGpF,KAAI,WAAW,OAAO,QAAQ,OAAO,QAAQ,KAAgD,QAAgB;AAC3G,MAAI,aAAa,QAAQ,QAAQ,GAC/B,QAAO,IAAI,OAAO,EAAE,IAAI;AAC1B,SAAO;IACN;AAEuB,KAAI,SAAS,OAAO,QAAQ,OAAO,QAAQ,KAA8C,QAAgB;AACrG,MAAI,WAAW,QAAQ,QAAQ,GAC7B,QAAO,IAAI,OAAO,EAAE,IAAI;AAC1B,SAAO;IACN;AAE/B,MAAM,IAAI,UAAU,UAAU,MAAM,IAAI,QAAQ,UAAU,QAAS,OAAO,UAAU,IAAI,OACtF,OAAM,IAAI,MAAM,+GAAgH,OAAO;AAEzI,MAAK,OAAO,UAAU,IAAI,OACxB,KAAI,SAASC,sBAAa,OAAO,QAAQ,QAAQ,cAAc,YAAY,UAAU;AAEvF,QAAO;;AAGT,MAAM,iBAAiB,SACrB,cACA,YACA,UACA,eAAuB,MAAM;AAE7B,QAAO,QAAQ,QAAQ,KAAa,WAAW;AAG7C,MAAI,MAAM,QAAQ,SAAS;GACzB,MAAM,gBAAgB;AACtB,UAAO,IAAI,OAET,OAAO,QAAQ,OAAa,gBAAgB;AAC1C,QAAI,EAAE,YAAY,aAChB,QAAOC;AACT,WAAOA,MAAI,OAAO,QAAQ,aAAa,cAAc,YAAY,UAAU;MAC1E;;AAKP,MAAI,EAAE,YAAY,QAAS,QAAO;AAGlC,SAAO,IAAI,OAAO,QAAQ,QAAQ,cAAc,YAAY;IAC3D;;AAGL,0BAAe"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Types } from "../../../core/v2/types/index.js";
|
|
2
|
-
import { Deserialized, Serialized } from "../../../core/types/index.js";
|
|
3
|
-
import { Settings } from "../types/settings.js";
|
|
4
|
-
import { CourseEvent } from "../types/course-events.js";
|
|
5
|
-
import { Collection } from "../types/collections.js";
|
|
6
|
-
|
|
7
|
-
//#region src/RS/v2/from/course-events.d.ts
|
|
8
|
-
type ReturnType = Deserialized<Omit<Types.event, 'teachers' | 'groups' | 'period'>> & Serialized<Pick<Types.event, 'teachers' | 'groups' | 'period'>>;
|
|
9
|
-
declare const _default: (courseEvents: (CourseEvent | number)[], course: Collection, teachersList: string[], groupsList: string[], settings: Settings, overlapGroup?: number | null) => ReturnType[];
|
|
10
|
-
//#endregion
|
|
11
|
-
export { _default };
|
|
12
|
-
//# sourceMappingURL=course-events.d.ts.map
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import get_date_default from "../../../common/get-date.js";
|
|
2
|
-
import available_dependencies_default from "./available-dependencies.js";
|
|
3
|
-
import break_lengths_default from "./break-lengths.js";
|
|
4
|
-
import days_default from "./days.js";
|
|
5
|
-
import locked_times_default from "./locked-times.js";
|
|
6
|
-
import intervals_default from "./intervals.js";
|
|
7
|
-
|
|
8
|
-
//#region src/RS/v2/from/course-events.ts
|
|
9
|
-
var course_events_default = (courseEvents, course, teachersList, groupsList, settings, overlapGroup = null) => {
|
|
10
|
-
const collectionIdKey = settings.collectionIdKey;
|
|
11
|
-
const eventIdKey = settings.eventIdKey;
|
|
12
|
-
if (!collectionIdKey) throw new Error("(RS::V2::From::CourseEvents) Property \"collectionIdKey\" in settings is undefined");
|
|
13
|
-
return courseEvents.reduce((acc, event) => {
|
|
14
|
-
switch (typeof event) {
|
|
15
|
-
case "number": return acc.concat({
|
|
16
|
-
duration: event,
|
|
17
|
-
ids: `${course[collectionIdKey]}_${acc.length}`
|
|
18
|
-
});
|
|
19
|
-
case "object":
|
|
20
|
-
if (!event[eventIdKey]) Object.assign(event, { [eventIdKey]: `${course[collectionIdKey]}_${acc.length}` });
|
|
21
|
-
const teachers = event.groups?.flat().reduce((acc$1, gId) => {
|
|
22
|
-
if (teachersList.includes(gId)) return acc$1.concat({ to: gId });
|
|
23
|
-
return acc$1;
|
|
24
|
-
}, []);
|
|
25
|
-
const groups = event.groups?.flat().reduce((acc$1, gId) => {
|
|
26
|
-
if (groupsList.includes(gId)) return acc$1.concat({ to: gId });
|
|
27
|
-
return acc$1;
|
|
28
|
-
}, []);
|
|
29
|
-
let fixedStart = false;
|
|
30
|
-
let start = null;
|
|
31
|
-
let end = null;
|
|
32
|
-
if (event.start) {
|
|
33
|
-
const day = event.day ?? 0;
|
|
34
|
-
fixedStart = true;
|
|
35
|
-
start = get_date_default(day, event.start.toFixed(2).replace(".", ":"));
|
|
36
|
-
end = start.clone().add(event.length, "minutes");
|
|
37
|
-
if (start.day() != end.day()) throw new Error("(RS::V2::From::CourseEvents) Course event have fixed time such that the event span multiple days");
|
|
38
|
-
}
|
|
39
|
-
return acc.concat({
|
|
40
|
-
preferredDuration: event.length,
|
|
41
|
-
parked: !start,
|
|
42
|
-
...event[eventIdKey] && { ids: event[eventIdKey] },
|
|
43
|
-
...event.name && { displayName: event.name },
|
|
44
|
-
...fixedStart && { fixedStart },
|
|
45
|
-
...start && { start },
|
|
46
|
-
...end && { end },
|
|
47
|
-
..."density" in event && { density: event.density },
|
|
48
|
-
..."weight" in event && { weight: event.weight },
|
|
49
|
-
..."potentialCenter" in event && { potentialCenter: event.potentialCenter?.toString() },
|
|
50
|
-
..."minBreakLength" in event && { minBreakLength: break_lengths_default(event.minBreakLength) },
|
|
51
|
-
..."maxLengthVariance" in event && { durationVariance: event.maxLengthVariance },
|
|
52
|
-
...event.intervals && { intervals: intervals_default(event.intervals) },
|
|
53
|
-
...event.lockedTimes && { lockedTimes: locked_times_default(event.lockedTimes) },
|
|
54
|
-
...event.dependencies && { locations: available_dependencies_default(event.dependencies, settings) },
|
|
55
|
-
...groups && { groups },
|
|
56
|
-
...teachers && { teachers },
|
|
57
|
-
...event.days && { days: days_default(event.days, settings) },
|
|
58
|
-
...event.period != void 0 && { period: event.period.toString() }
|
|
59
|
-
});
|
|
60
|
-
default: throw new Error(`(RS::V2::From::CourseEvents) Course event is neither number nor object, course ${course[collectionIdKey]}`);
|
|
61
|
-
}
|
|
62
|
-
}, []);
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
//#endregion
|
|
66
|
-
export { course_events_default as default };
|
|
67
|
-
//# sourceMappingURL=course-events.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"course-events.js","names":["acc","fixedStart: boolean","start: moment.Moment | null","end: moment.Moment | null","day: number","getDate","breakLength","intervals","lockedTime","availableDependencies","days"],"sources":["../../../../src/RS/v2/from/course-events.ts"],"sourcesContent":["import moment from 'moment';\n\nimport breakLength from './break-lengths';\nimport days from './days';\nimport lockedTime from './locked-times';\nimport intervals from './intervals';\nimport availableDependencies from './available-dependencies';\n\nimport { Settings } from '../types/settings';\nimport { CourseEvent } from '../types/course-events';\nimport { Collection } from '../types/collections';\n\nimport getDate from '../../../common/get-date';\nimport { Types as CoreTypes } from '../../../core/types';\nimport { Serialized,\n Deserialized } from '../../../core/types';\n\ntype ReturnType = Deserialized<Omit<CoreTypes.event, 'teachers' | 'groups' | 'period'>> &\n Serialized<Pick<CoreTypes.event, 'teachers' | 'groups'| 'period'>>;\n\nexport default (courseEvents: (CourseEvent | number)[],\n course: Collection,\n teachersList: string[],\n groupsList: string[],\n settings: Settings,\n overlapGroup: number | null = null) => {\n const collectionIdKey = settings.collectionIdKey;\n const eventIdKey = settings.eventIdKey;\n\n if (!collectionIdKey)\n throw new Error('(RS::V2::From::CourseEvents) Property \"collectionIdKey\" in settings is undefined');\n\n return courseEvents.reduce((acc: ReturnType[], event: CourseEvent | number) => {\n\n switch (typeof event) {\n case 'number':\n return acc.concat({\n duration: event,\n ids: `${ course[collectionIdKey] }_${ acc.length }`\n });\n case 'object':\n\n if (!event[eventIdKey]) {\n Object.assign(event, { [eventIdKey]: `${ course[collectionIdKey] }_${ acc.length }` });\n }\n\n const teachers = event.groups?.flat().reduce((acc: Serialized<NonNullable<CoreTypes.event['teachers']>>, gId: string) => {\n if (teachersList.includes(gId))\n return acc.concat({ to: gId });\n return acc;\n }, []) as any;\n\n const groups = event.groups?.flat().reduce((acc: Serialized<NonNullable<CoreTypes.event['groups']>>, gId: string) => {\n if (groupsList.includes(gId))\n return acc.concat({ to: gId });\n return acc;\n }, []);\n\n let fixedStart: boolean = false;\n let start: moment.Moment | null = null;\n let end: moment.Moment | null = null;\n\n // since events with fixed start now may have a variable duration this is not generally true any more\n // however, if that is the case the \"end\" value is overwritten by the \"placement\" function\n if (event.start) {\n const day: number = event.day ?? 0;\n fixedStart = true;\n start = getDate(day, event.start.toFixed(2).replace('.', ':'));\n end = start.clone().add(event.length, 'minutes');\n\n if (start.day() != end.day())\n throw new Error('(RS::V2::From::CourseEvents) Course event have fixed time such that the event span multiple days');\n }\n\n return acc.concat({\n preferredDuration: event.length,\n parked: !start,\n ...event[eventIdKey] && { ids: event[eventIdKey] },\n ...event.name && { displayName: event.name },\n ...fixedStart && { fixedStart: fixedStart },\n ...start && { start: start },\n ...end && { end: end },\n ...'density' in event && { density: event.density },\n ...'weight' in event && { weight: event.weight },\n ...'potentialCenter' in event && { potentialCenter: event.potentialCenter?.toString() },\n ...'minBreakLength' in event && { minBreakLength: breakLength(event.minBreakLength) },\n ...'maxLengthVariance' in event && { durationVariance: event.maxLengthVariance },\n ...event.intervals && { intervals: intervals(event.intervals) },\n ...event.lockedTimes && { lockedTimes: lockedTime(event.lockedTimes) },\n ...event.dependencies && { locations: availableDependencies(event.dependencies, settings) },\n ...groups && { groups: groups },\n ...teachers && { teachers: teachers },\n ...event.days && { days: days(event.days, settings) },\n ...event.period != undefined && { period: event.period.toString() },\n // ...event.forcedOverlapId && overlapGroup && { overlapSpecies: overlapGroup.toString() as any }\n });\n default:\n throw new Error(`(RS::V2::From::CourseEvents) Course event is neither number nor object, course ${ course[collectionIdKey] }`);\n }\n }, []);\n};"],"mappings":";;;;;;;;AAoBA,6BAAgB,cACd,QACA,cACA,YACA,UACA,eAA8B,SAAS;CACvC,MAAM,kBAAmB,SAAS;CAClC,MAAM,aAAmB,SAAS;AAElC,KAAI,CAAC,gBACH,OAAM,IAAI,MAAM;AAElB,QAAO,aAAa,QAAQ,KAAmB,UAAgC;AAE7E,UAAQ,OAAO,OAAf;GACE,KAAK,SACH,QAAO,IAAI,OAAO;IAChB,UAAU;IACV,KAAU,GAAI,OAAO,iBAAkB,GAAI,IAAI;;GAEnD,KAAK;AAEH,QAAI,CAAC,MAAM,YACT,QAAO,OAAO,OAAO,GAAG,aAAa,GAAI,OAAO,iBAAkB,GAAI,IAAI;IAG5E,MAAM,WAAW,MAAM,QAAQ,OAAO,QAAQ,OAA2D,QAAgB;AACvH,SAAI,aAAa,SAAS,KACxB,QAAOA,MAAI,OAAO,EAAE,IAAI;AAC1B,YAAOA;OACN;IAEH,MAAM,SAAS,MAAM,QAAQ,OAAO,QAAQ,OAAyD,QAAgB;AACnH,SAAI,WAAW,SAAS,KACtB,QAAOA,MAAI,OAAO,EAAE,IAAI;AAC1B,YAAOA;OACN;IAEH,IAAIC,aAAmC;IACvC,IAAIC,QAAmC;IACvC,IAAIC,MAAmC;AAIvC,QAAI,MAAM,OAAO;KACf,MAAMC,MAAc,MAAM,OAAO;AACjC,kBAAa;AACb,aAAaC,iBAAQ,KAAK,MAAM,MAAM,QAAQ,GAAG,QAAQ,KAAK;AAC9D,WAAa,MAAM,QAAQ,IAAI,MAAM,QAAQ;AAE7C,SAAI,MAAM,SAAS,IAAI,MACrB,OAAM,IAAI,MAAM;;AAGpB,WAAO,IAAI,OAAO;KAChB,mBAAmB,MAAM;KACzB,QAAmB,CAAC;KACpB,GAAG,MAAM,eAAmC,EAAE,KAAkB,MAAM;KACtE,GAAG,MAAM,QAAmC,EAAE,aAAkB,MAAM;KACtE,GAAG,cAAyC,EAAoB;KAChE,GAAG,SAAyC,EAAoB;KAChE,GAAG,OAAyC,EAAoB;KAChE,GAAG,aAAuB,SAAkB,EAAE,SAAkB,MAAM;KACtE,GAAG,YAAuB,SAAkB,EAAE,QAAkB,MAAM;KACtE,GAAG,qBAAuB,SAAkB,EAAE,iBAAkB,MAAM,iBAAiB;KACvF,GAAG,oBAAuB,SAAkB,EAAE,gBAAkBC,sBAAY,MAAM;KAClF,GAAG,uBAAuB,SAAkB,EAAE,kBAAkB,MAAM;KACtE,GAAG,MAAM,aAAmC,EAAE,WAAkBC,kBAAU,MAAM;KAChF,GAAG,MAAM,eAAmC,EAAE,aAAkBC,qBAAW,MAAM;KACjF,GAAG,MAAM,gBAAmC,EAAE,WAAkBC,+BAAsB,MAAM,cAAc;KAC1G,GAAG,UAAyC,EAAoB;KAChE,GAAG,YAAyC,EAAoB;KAChE,GAAG,MAAM,QAAmC,EAAE,MAAkBC,aAAK,MAAM,MAAM;KACjF,GAAG,MAAM,UAAU,UAAyB,EAAE,QAAkB,MAAM,OAAO;;GAGjF,QACE,OAAM,IAAI,MAAM,kFAAmF,OAAO;;IAE7G"}
|
package/dist/RS/v2/from/days.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
//#region src/RS/v2/from/days.ts
|
|
2
|
-
var days_default = (days, settings) => {
|
|
3
|
-
return days.map((day) => {
|
|
4
|
-
switch (typeof day) {
|
|
5
|
-
case "number": return { day };
|
|
6
|
-
case "object": return day;
|
|
7
|
-
default: throw new Error("(RS::V2::From::Days) day is neither number or object");
|
|
8
|
-
}
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
//#endregion
|
|
13
|
-
export { days_default as default };
|
|
14
|
-
//# sourceMappingURL=days.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"days.js","names":[],"sources":["../../../../src/RS/v2/from/days.ts"],"sourcesContent":["import { Settings } from '../types/settings';\nimport { Day } from '../types/days';\n\nimport { Types as CoreTypes } from '../../../core/types';\n\nexport default (days: (Day | number)[],\n settings: Settings) => {\n\n return days.map((day): CoreTypes.day => {\n switch(typeof day) {\n case 'number':\n return { day };\n case 'object':\n return day;\n default:\n throw new Error('(RS::V2::From::Days) day is neither number or object');\n }\n });\n};\n"],"mappings":";AAKA,oBAAgB,MACd,aAAuB;AAEvB,QAAO,KAAK,KAAK,QAAuB;AACtC,UAAO,OAAO,KAAd;GACE,KAAK,SACH,QAAO,EAAE;GACX,KAAK,SACH,QAAO;GACT,QACE,OAAM,IAAI,MAAM"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import break_lengths_default from "./break-lengths.js";
|
|
2
|
-
import days_default from "./days.js";
|
|
3
|
-
import locked_times_default from "./locked-times.js";
|
|
4
|
-
import intervals_default from "./intervals.js";
|
|
5
|
-
|
|
6
|
-
//#region src/RS/v2/from/dependencies.ts
|
|
7
|
-
var dependencies_default = (dependencies, settings) => {
|
|
8
|
-
const idKey = settings.dependencyIdKey;
|
|
9
|
-
if (!idKey) throw new Error("(RS::V2::From::Dependencies) Property \"dependencyIdKey\" in settings is undefined");
|
|
10
|
-
return dependencies.map((dependency) => {
|
|
11
|
-
switch (typeof dependency) {
|
|
12
|
-
case "string": return { ids: dependency };
|
|
13
|
-
case "object":
|
|
14
|
-
if (!dependency[idKey]) throw new Error("(RS::V2::From::Dependencies) A dependency does not have a unique key");
|
|
15
|
-
return {
|
|
16
|
-
ids: dependency[idKey],
|
|
17
|
-
..."minBreakLength" in dependency && { minBreakLength: break_lengths_default(dependency.minBreakLength) },
|
|
18
|
-
...dependency.name && { displayName: dependency.name },
|
|
19
|
-
...dependency.area && { area: dependency.area },
|
|
20
|
-
...dependency.days && { days: days_default(dependency.days, settings) },
|
|
21
|
-
...dependency.intervals && { intervals: intervals_default(dependency.intervals) },
|
|
22
|
-
...dependency.lockedTimes && { lockedTimes: locked_times_default(dependency.lockedTimes) }
|
|
23
|
-
};
|
|
24
|
-
default: throw new Error("(RS::V2::From::Dependencies) Dependency is neither string nor object");
|
|
25
|
-
}
|
|
26
|
-
}, []);
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
//#endregion
|
|
30
|
-
export { dependencies_default as default };
|
|
31
|
-
//# sourceMappingURL=dependencies.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dependencies.js","names":["idKey: keyof Dependency","breakLength","days","intervals","lockedTime"],"sources":["../../../../src/RS/v2/from/dependencies.ts"],"sourcesContent":["import breakLength from './break-lengths';\nimport days from './days';\nimport lockedTime from './locked-times';\nimport intervals from './intervals';\n\nimport { Dependency } from '../types/dependencies';\nimport { Settings } from '../types/settings';\n\nimport { Types as CoreTypes } from '../../../core/types';\nimport { Deserialized } from '../../../core/types';\n\nexport default (dependencies: (Dependency | string)[],\n settings: Settings): Deserialized<CoreTypes.location>[] => {\n const idKey: keyof Dependency = settings.dependencyIdKey;\n\n if (!idKey)\n throw new Error('(RS::V2::From::Dependencies) Property \"dependencyIdKey\" in settings is undefined');\n\n return dependencies.map(dependency => {\n switch(typeof dependency) {\n case 'string':\n return {\n ids: dependency\n };\n case 'object':\n\n if (!dependency[idKey])\n throw new Error('(RS::V2::From::Dependencies) A dependency does not have a unique key');\n\n return {\n ids: dependency[idKey],\n ...'minBreakLength' in dependency && { minBreakLength: breakLength(dependency.minBreakLength) },\n ...dependency.name && { displayName: dependency.name },\n ...dependency.area && { area: dependency.area },\n ...dependency.days && { days: days(dependency.days, settings) },\n ...dependency.intervals && { intervals: intervals(dependency.intervals) },\n ...dependency.lockedTimes && { lockedTimes: lockedTime(dependency.lockedTimes) },\n };\n default:\n throw new Error('(RS::V2::From::Dependencies) Dependency is neither string nor object');\n\n }\n }, []);\n\n};"],"mappings":";;;;;;AAWA,4BAAgB,cACd,aAAkE;CAClE,MAAMA,QAA0B,SAAS;AAEzC,KAAI,CAAC,MACH,OAAM,IAAI,MAAM;AAElB,QAAO,aAAa,KAAI,eAAc;AACpC,UAAO,OAAO,YAAd;GACE,KAAK,SACH,QAAO,EACL,KAAK;GAET,KAAK;AAEH,QAAI,CAAC,WAAW,OACd,OAAM,IAAI,MAAM;AAElB,WAAO;KACL,KAAK,WAAW;KAChB,GAAG,oBAAoB,cAAc,EAAE,gBAAgBC,sBAAY,WAAW;KAC9E,GAAG,WAAW,QAAuB,EAAE,aAAgB,WAAW;KAClE,GAAG,WAAW,QAAuB,EAAE,MAAgB,WAAW;KAClE,GAAG,WAAW,QAAuB,EAAE,MAAgBC,aAAK,WAAW,MAAM;KAC7E,GAAG,WAAW,aAAuB,EAAE,WAAgBC,kBAAU,WAAW;KAC5E,GAAG,WAAW,eAAuB,EAAE,aAAgBC,qBAAW,WAAW;;GAEjF,QACE,OAAM,IAAI,MAAM;;IAGnB"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import break_lengths_default from "./break-lengths.js";
|
|
2
|
-
import days_default from "./days.js";
|
|
3
|
-
import locked_times_default from "./locked-times.js";
|
|
4
|
-
import intervals_default from "./intervals.js";
|
|
5
|
-
|
|
6
|
-
//#region src/RS/v2/from/groups.ts
|
|
7
|
-
var groups_default = (groups, settings) => {
|
|
8
|
-
const idKey = settings.groupIdKey;
|
|
9
|
-
if (!idKey) throw new Error("(RS::V2::From::Groups) Property \"groupIdKey\" in settings is undefined");
|
|
10
|
-
return groups.reduce((acc, group) => {
|
|
11
|
-
if (!group.group_type) throw new Error("(RS::V2::From::Groups) Property \"group_type\" must exist on all entries in \"groups\" array");
|
|
12
|
-
if (!["personal", "classes"].includes(group.group_type)) throw new Error("(RS::V2::From::Groups) Allowed values of \"group_type\" are \"personal\" and \"classes\"");
|
|
13
|
-
if (!group[idKey]) throw new Error("(RS::V2::From::Groups) A group does not have a unique key");
|
|
14
|
-
if (group.group_type != "classes") return acc;
|
|
15
|
-
return acc.concat({
|
|
16
|
-
species: "class",
|
|
17
|
-
ids: group[idKey],
|
|
18
|
-
...group.name && { displayName: group.name },
|
|
19
|
-
..."forbidOverlappingEvents" in group && { forbidOverlappingEvents: group.forbidOverlappingEvents },
|
|
20
|
-
..."maxNumWorkingHours" in group && { maxNumWorkingHours: group.maxNumWorkingHours },
|
|
21
|
-
..."maxNumDailyWorkingHours" in group && { maxNumDailyWorkingHours: group.maxNumDailyWorkingHours },
|
|
22
|
-
..."minBreakLength" in group && { minBreakLength: break_lengths_default(group.minBreakLength) },
|
|
23
|
-
..."disableDayLengthPunishment" in group && { disableDayLengthPunishment: group.disableDayLengthPunishment },
|
|
24
|
-
..."weight" in group && { weight: group.weight },
|
|
25
|
-
..."rank" in group && { rank: group.rank },
|
|
26
|
-
...group.days?.length && { days: days_default(group.days, settings) },
|
|
27
|
-
...group.intervals?.length && { intervals: intervals_default(group.intervals) },
|
|
28
|
-
...group.lockedTimes?.length && { lockedTimes: locked_times_default(group.lockedTimes) }
|
|
29
|
-
});
|
|
30
|
-
}, []);
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
//#endregion
|
|
34
|
-
export { groups_default as default };
|
|
35
|
-
//# sourceMappingURL=groups.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"groups.js","names":["breakLength","days","intervals","lockedTime"],"sources":["../../../../src/RS/v2/from/groups.ts"],"sourcesContent":["import breakLength from './break-lengths';\nimport days from './days';\nimport lockedTime from './locked-times';\nimport intervals from './intervals';\n\nimport { Group } from '../types/groups';\nimport { Settings } from '../types/settings';\n\nimport { Types as CoreTypes } from '../../../core/types';\nimport { Deserialized } from '../../../core/types';\n\nexport default (groups: Group[],\n settings: Settings) => {\n const idKey = settings.groupIdKey;\n\n if (!idKey)\n throw new Error('(RS::V2::From::Groups) Property \"groupIdKey\" in settings is undefined');\n\n return groups.reduce((acc: Deserialized<CoreTypes.group>[], group) => {\n\n if (!group.group_type)\n throw new Error('(RS::V2::From::Groups) Property \"group_type\" must exist on all entries in \"groups\" array');\n\n if (!['personal', 'classes'].includes(group.group_type))\n throw new Error('(RS::V2::From::Groups) Allowed values of \"group_type\" are \"personal\" and \"classes\"');\n\n if (!group[idKey])\n throw new Error('(RS::V2::From::Groups) A group does not have a unique key');\n\n if (group.group_type != 'classes') return acc;\n\n return acc.concat({\n species: 'class',\n ids: group[idKey],\n ...group.name && { displayName: group.name },\n ...'forbidOverlappingEvents' in group && { forbidOverlappingEvents: group.forbidOverlappingEvents },\n ...'maxNumWorkingHours' in group && { maxNumWorkingHours: group.maxNumWorkingHours },\n ...'maxNumDailyWorkingHours' in group && { maxNumDailyWorkingHours: group.maxNumDailyWorkingHours },\n ...'minBreakLength' in group && { minBreakLength: breakLength(group.minBreakLength) },\n ...'disableDayLengthPunishment' in group && { disableDayLengthPunishment: group.disableDayLengthPunishment },\n ...'weight' in group && { weight: group.weight },\n ...'rank' in group && { rank: group.rank },\n ...group.days?.length && { days: days(group.days, settings) },\n ...group.intervals?.length && { intervals: intervals(group.intervals) },\n ...group.lockedTimes?.length && { lockedTimes: lockedTime(group.lockedTimes) },\n });\n }, []);\n};"],"mappings":";;;;;;AAWA,sBAAgB,QACd,aAAyB;CACzB,MAAM,QAAQ,SAAS;AAEvB,KAAI,CAAC,MACH,OAAM,IAAI,MAAM;AAElB,QAAO,OAAO,QAAQ,KAAsC,UAAU;AAEpE,MAAI,CAAC,MAAM,WACT,OAAM,IAAI,MAAM;AAElB,MAAI,CAAC,CAAC,YAAY,WAAW,SAAS,MAAM,YAC1C,OAAM,IAAI,MAAM;AAElB,MAAI,CAAC,MAAM,OACT,OAAM,IAAI,MAAM;AAElB,MAAI,MAAM,cAAc,UAAW,QAAO;AAE1C,SAAO,IAAI,OAAO;GAChB,SAAS;GACT,KAAS,MAAM;GACf,GAAG,MAAM,QAAmC,EAAE,aAA4B,MAAM;GAChF,GAAG,6BAAgC,SAAS,EAAE,yBAA4B,MAAM;GAChF,GAAG,wBAAgC,SAAS,EAAE,oBAA4B,MAAM;GAChF,GAAG,6BAAgC,SAAS,EAAE,yBAA4B,MAAM;GAChF,GAAG,oBAAgC,SAAS,EAAE,gBAA4BA,sBAAY,MAAM;GAC5F,GAAG,gCAAgC,SAAS,EAAE,4BAA4B,MAAM;GAChF,GAAG,YAAgC,SAAS,EAAE,QAA4B,MAAM;GAChF,GAAG,UAAgC,SAAS,EAAE,MAA4B,MAAM;GAChF,GAAG,MAAM,MAAM,UAA6B,EAAE,MAA4BC,aAAK,MAAM,MAAM;GAC3F,GAAG,MAAM,WAAW,UAAwB,EAAE,WAA4BC,kBAAU,MAAM;GAC1F,GAAG,MAAM,aAAa,UAAsB,EAAE,aAA4BC,qBAAW,MAAM;;IAE5F"}
|
package/dist/RS/v2/from/index.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import available_dependencies_default from "./available-dependencies.js";
|
|
2
|
-
import days_default from "./days.js";
|
|
3
|
-
import locked_times_default from "./locked-times.js";
|
|
4
|
-
import intervals_default from "./intervals.js";
|
|
5
|
-
import course_events_default from "./course-events.js";
|
|
6
|
-
import collections_default from "./collections.js";
|
|
7
|
-
import dependencies_default from "./dependencies.js";
|
|
8
|
-
import groups_default from "./groups.js";
|
|
9
|
-
import placements_default from "./placements.js";
|
|
10
|
-
import teachers_default from "./teachers.js";
|
|
11
|
-
import settings_default from "./settings.js";
|
|
12
|
-
import schedules_default from "./schedules.js";
|
|
13
|
-
|
|
14
|
-
//#region src/RS/v2/from/index.ts
|
|
15
|
-
var from_default = {
|
|
16
|
-
availableDependency: available_dependencies_default,
|
|
17
|
-
courseEvent: course_events_default,
|
|
18
|
-
collection: collections_default,
|
|
19
|
-
day: days_default,
|
|
20
|
-
dependency: dependencies_default,
|
|
21
|
-
group: groups_default,
|
|
22
|
-
interval: intervals_default,
|
|
23
|
-
lockedTime: locked_times_default,
|
|
24
|
-
placement: placements_default,
|
|
25
|
-
schedules: schedules_default,
|
|
26
|
-
setting: settings_default,
|
|
27
|
-
teacher: teachers_default
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
//#endregion
|
|
31
|
-
export { from_default as default };
|
|
32
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_availableDependency","_courseEvent","_collection","_day","_dependency","_group","_interval","_lockedTime","_placement","_schedules","_setting","_teacher"],"sources":["../../../../src/RS/v2/from/index.ts"],"sourcesContent":["import _availableDependency from './available-dependencies';\nimport _courseEvent from './course-events';\nimport _collection from './collections';\nimport _day from './days';\nimport _dependency from './dependencies';\nimport _group from './groups';\nimport _interval from './intervals';\nimport _lockedTime from './locked-times';\nimport _placement from './placements';\nimport _schedules from './schedules';\nimport _setting from './settings';\nimport _teacher from './teachers';\n\nexport default {\n availableDependency: _availableDependency,\n courseEvent: _courseEvent,\n collection: _collection,\n day: _day,\n dependency: _dependency,\n group: _group,\n interval: _interval,\n lockedTime: _lockedTime,\n placement: _placement,\n schedules: _schedules,\n setting: _setting,\n teacher: _teacher,\n};"],"mappings":";;;;;;;;;;;;;;AAaA,mBAAe;CACb,qBAAqBA;CACrB,aAAqBC;CACrB,YAAqBC;CACrB,KAAqBC;CACrB,YAAqBC;CACrB,OAAqBC;CACrB,UAAqBC;CACrB,YAAqBC;CACrB,WAAqBC;CACrB,WAAqBC;CACrB,SAAqBC;CACrB,SAAqBC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import get_date_default from "../../../common/get-date.js";
|
|
2
|
-
|
|
3
|
-
//#region src/RS/v2/from/intervals.ts
|
|
4
|
-
var intervals_default = (intervals) => {
|
|
5
|
-
return intervals.filter((interval) => interval.length == 1).map((interval) => {
|
|
6
|
-
const { beg, end } = interval[0];
|
|
7
|
-
if (beg == null) throw new Error("(RS::V2::From::Intervals) Interval beg is undefined");
|
|
8
|
-
if (end == null) throw new Error("(RS::V2::From::Intervals) Interval end is undefined");
|
|
9
|
-
return {
|
|
10
|
-
start: get_date_default(0, beg.toFixed(2).replace(".", ":")),
|
|
11
|
-
end: get_date_default(0, end.toFixed(2).replace(".", ":"))
|
|
12
|
-
};
|
|
13
|
-
});
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
//#endregion
|
|
17
|
-
export { intervals_default as default };
|
|
18
|
-
//# sourceMappingURL=intervals.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"intervals.js","names":["getDate"],"sources":["../../../../src/RS/v2/from/intervals.ts"],"sourcesContent":["import getDate from '../../../common/get-date';\nimport { Interval } from '../types/intervals';\n\nimport { Types as CoreTypes } from '../../../core/types';\n\nexport default (intervals: Interval[][]): CoreTypes.interval[] => {\n return intervals.filter((interval) => interval.length == 1)\n .map((interval) => {\n const { beg, end } = interval[0];\n\n if (beg == null) throw new Error('(RS::V2::From::Intervals) Interval beg is undefined');\n if (end == null) throw new Error('(RS::V2::From::Intervals) Interval end is undefined');\n\n return {\n start: getDate(0, beg.toFixed(2).replace('.', ':')),\n end: getDate(0, end.toFixed(2).replace('.', ':'))\n };\n });\n};"],"mappings":";;;AAKA,yBAAgB,cAAkD;AAChE,QAAO,UAAU,QAAQ,aAAa,SAAS,UAAU,GACtD,KAAK,aAAa;EACjB,MAAM,EAAE,KAAK,QAAQ,SAAS;AAE9B,MAAI,OAAO,KAAM,OAAM,IAAI,MAAM;AACjC,MAAI,OAAO,KAAM,OAAM,IAAI,MAAM;AAEjC,SAAO;GACL,OAAOA,iBAAQ,GAAG,IAAI,QAAQ,GAAG,QAAQ,KAAK;GAC9C,KAAOA,iBAAQ,GAAG,IAAI,QAAQ,GAAG,QAAQ,KAAK"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import get_date_default from "../../../common/get-date.js";
|
|
2
|
-
|
|
3
|
-
//#region src/RS/v2/from/locked-times.ts
|
|
4
|
-
var locked_times_default = (lockedTimes) => {
|
|
5
|
-
return lockedTimes.reduce((acc, lockedTime) => {
|
|
6
|
-
if (lockedTime.day == null) throw new Error("(RS::V2::From::LockedTimes) A locked time missing day field");
|
|
7
|
-
if (lockedTime.start == null) throw new Error("(RS::V2::From::LockedTimes) A locked time missing start field");
|
|
8
|
-
if (!lockedTime.length) throw new Error("(RS::V2::From::LockedTimes) A locked time missing length field");
|
|
9
|
-
const start = get_date_default(lockedTime.day, lockedTime.start.toFixed(2).replace(".", ":"));
|
|
10
|
-
const end = start.clone().add(lockedTime.length, "minutes");
|
|
11
|
-
return acc.concat({
|
|
12
|
-
displayName: lockedTime.name,
|
|
13
|
-
start,
|
|
14
|
-
end
|
|
15
|
-
});
|
|
16
|
-
}, []);
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
//#endregion
|
|
20
|
-
export { locked_times_default as default };
|
|
21
|
-
//# sourceMappingURL=locked-times.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"locked-times.js","names":["getDate"],"sources":["../../../../src/RS/v2/from/locked-times.ts"],"sourcesContent":["import getDate from '../../../common/get-date';\n\nimport { LockedTime } from '../types/locked-times';\n\nimport { Types as CoreTypes } from '../../../core/types';\nimport { Deserialized } from '../../../core/types';\n\nexport default (lockedTimes: LockedTime[]) => {\n return lockedTimes.reduce((acc: Deserialized<CoreTypes.lockedTime>[], lockedTime) => {\n\n if (lockedTime.day == null)\n throw new Error('(RS::V2::From::LockedTimes) A locked time missing day field');\n\n if (lockedTime.start == null)\n throw new Error('(RS::V2::From::LockedTimes) A locked time missing start field');\n\n if (!lockedTime.length)\n throw new Error('(RS::V2::From::LockedTimes) A locked time missing length field');\n\n const start = getDate(lockedTime.day, lockedTime.start.toFixed(2).replace('.', ':'));\n const end = start.clone().add(lockedTime.length, 'minutes');\n\n return acc.concat({\n displayName: lockedTime.name,\n start: start,\n end: end\n });\n }, []);\n};"],"mappings":";;;AAOA,4BAAgB,gBAA8B;AAC5C,QAAO,YAAY,QAAQ,KAA2C,eAAe;AAEnF,MAAI,WAAW,OAAO,KACpB,OAAM,IAAI,MAAM;AAElB,MAAI,WAAW,SAAS,KACtB,OAAM,IAAI,MAAM;AAElB,MAAI,CAAC,WAAW,OACd,OAAM,IAAI,MAAM;EAElB,MAAM,QAAQA,iBAAQ,WAAW,KAAK,WAAW,MAAM,QAAQ,GAAG,QAAQ,KAAK;EAC/E,MAAM,MAAQ,MAAM,QAAQ,IAAI,WAAW,QAAQ;AAEnD,SAAO,IAAI,OAAO;GAChB,aAAa,WAAW;GACX;GACA;;IAEd"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import moment from "moment";
|
|
2
|
-
import { reduce } from "lodash-es";
|
|
3
|
-
|
|
4
|
-
//#region src/RS/v2/from/placements.ts
|
|
5
|
-
var placements_default = (configuration, options = {}) => {
|
|
6
|
-
const idKey = options.idKey || "id";
|
|
7
|
-
const { events } = configuration ?? {};
|
|
8
|
-
return reduce(events, ([eventAcc, lockedAcc], event) => {
|
|
9
|
-
const dotIndex = event.id.indexOf(".");
|
|
10
|
-
if (dotIndex === -1) return [eventAcc, lockedAcc];
|
|
11
|
-
const collection = event.id.substring(0, dotIndex);
|
|
12
|
-
const id = event.id.substring(dotIndex + 1);
|
|
13
|
-
if (collection == "events") eventAcc = eventAcc.concat({
|
|
14
|
-
[idKey]: id,
|
|
15
|
-
parked: false,
|
|
16
|
-
inLocations: event.dependencies?.filter(Boolean) ?? [],
|
|
17
|
-
start: moment.utc("1970-01-05T00:00").add(event.day, "days").add(event.start, "minutes").toISOString(),
|
|
18
|
-
end: moment.utc("1970-01-05T00:00").add(event.day, "days").add(event.end, "minutes").toISOString()
|
|
19
|
-
});
|
|
20
|
-
if (collection == "lockedTimes") lockedAcc = lockedAcc.concat({
|
|
21
|
-
[idKey]: id,
|
|
22
|
-
parked: false,
|
|
23
|
-
start: moment.utc("1970-01-05T00:00").add(event.day, "days").add(event.start, "minutes").toISOString(),
|
|
24
|
-
end: moment.utc("1970-01-05T00:00").add(event.day, "days").add(event.end, "minutes").toISOString()
|
|
25
|
-
});
|
|
26
|
-
return [eventAcc, lockedAcc];
|
|
27
|
-
}, [[], []]);
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
//#endregion
|
|
31
|
-
export { placements_default as default };
|
|
32
|
-
//# sourceMappingURL=placements.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"placements.js","names":[],"sources":["../../../../src/RS/v2/from/placements.ts"],"sourcesContent":["import moment from 'moment';\nimport { reduce } from 'lodash-es';\n\nimport { Configuration } from '../types/configurations';\nimport { Placement } from '../types/placements';\n\nimport { Types as CoreTypes } from '../../../core/types';\n\ntype Options = {\n idKey?: '_id' | 'id' | 'ids';\n};\n\nexport default (configuration: Configuration, options: Options = {}): [Omit<CoreTypes.event, 'preferredDuration'>[], CoreTypes.lockedTime[]] => {\n\n const idKey= options.idKey || 'id';\n\n const { events } = configuration ?? {};\n\n return reduce(events, ([eventAcc, lockedAcc]: [Omit<CoreTypes.event, 'preferredDuration'>[], CoreTypes.lockedTime[]], event: Placement) => {\n // split on first dot only\n const dotIndex = event.id.indexOf('.');\n if (dotIndex === -1) return [eventAcc, lockedAcc];\n const collection = event.id.substring(0, dotIndex);\n const id = event.id.substring(dotIndex + 1);\n\n if (collection == 'events')\n eventAcc = eventAcc.concat({\n [idKey]: id,\n parked: false,\n inLocations: event.dependencies?.filter(Boolean) ?? [],\n start: moment.utc('1970-01-05T00:00').add(event.day, 'days')\n .add(event.start, 'minutes')\n .toISOString(),\n end: moment.utc('1970-01-05T00:00').add(event.day, 'days')\n .add(event.end, 'minutes')\n .toISOString()\n });\n if (collection == 'lockedTimes')\n lockedAcc = lockedAcc.concat({\n [idKey]: id,\n parked: false,\n start: moment.utc('1970-01-05T00:00').add(event.day, 'days')\n .add(event.start, 'minutes')\n .toISOString(),\n end: moment.utc('1970-01-05T00:00').add(event.day, 'days')\n .add(event.end, 'minutes')\n .toISOString()\n });\n return [eventAcc, lockedAcc];\n }, [[], []]);\n};"],"mappings":";;;;AAYA,0BAAgB,eAA8B,UAAmB,OAA+E;CAE9I,MAAM,QAAO,QAAQ,SAAS;CAE9B,MAAM,EAAE,WAAW,iBAAiB;AAEpC,QAAO,OAAO,SAAS,CAAC,UAAU,YAAoF,UAAqB;EAEzI,MAAM,WAAW,MAAM,GAAG,QAAQ;AAClC,MAAI,aAAa,GAAI,QAAO,CAAC,UAAU;EACvC,MAAM,aAAa,MAAM,GAAG,UAAU,GAAG;EACzC,MAAM,KAAa,MAAM,GAAG,UAAU,WAAW;AAEjD,MAAI,cAAc,SAChB,YAAW,SAAS,OAAO;IACxB,QAAY;GACb,QAAa;GACb,aAAa,MAAM,cAAc,OAAO,YAAY;GACpD,OAAa,OAAO,IAAI,oBAAoB,IAAI,MAAM,KAAK,QACxD,IAAI,MAAM,OAAO,WACjB;GACH,KAAK,OAAO,IAAI,oBAAoB,IAAI,MAAM,KAAK,QAChD,IAAI,MAAM,KAAK,WACf;;AAEP,MAAI,cAAc,cAChB,aAAY,UAAU,OAAO;IAC1B,QAAQ;GACT,QAAS;GACT,OAAS,OAAO,IAAI,oBAAoB,IAAI,MAAM,KAAK,QACpD,IAAI,MAAM,OAAO,WACjB;GACH,KAAK,OAAO,IAAI,oBAAoB,IAAI,MAAM,KAAK,QAChD,IAAI,MAAM,KAAK,WACf;;AAEP,SAAO,CAAC,UAAU;IACjB,CAAC,IAAI"}
|