@royalschedule/maps 4.0.35 → 4.0.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/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.map +1 -1
- package/dist/Additio/from/schedules.d.ts +0 -1
- package/dist/Additio/from/schedules.js +4 -2
- package/dist/Additio/from/schedules.js.map +1 -1
- package/dist/Additio/from/teachers.js.map +1 -1
- package/dist/Additio/to/index.d.ts +0 -2
- package/dist/Additio/to/schedules.js +4 -2
- package/dist/Additio/to/schedules.js.map +1 -1
- 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.map +1 -1
- package/dist/Admentum/from/schedules.d.ts +0 -1
- package/dist/Admentum/from/schedules.js +6 -3
- package/dist/Admentum/from/schedules.js.map +1 -1
- package/dist/Admentum/from/teachers.js.map +1 -1
- package/dist/Admentum/to/index.d.ts +0 -1
- package/dist/Admentum/to/schedules.js +7 -4
- package/dist/Admentum/to/schedules.js.map +1 -1
- package/dist/Excel/index.d.ts +0 -1
- package/dist/Excel/v1/from/index.js +1 -1
- package/dist/Excel/v1/from/index.js.map +1 -1
- package/dist/Excel/v1/index.d.ts +3 -4
- package/dist/Excel/v2/from/index.js +54 -45
- package/dist/Excel/v2/from/index.js.map +1 -1
- package/dist/Excel/v2/index.d.ts +3 -4
- package/dist/IdunSoft/from/courses.js.map +1 -1
- package/dist/IdunSoft/from/events.js +2 -1
- package/dist/IdunSoft/from/events.js.map +1 -1
- package/dist/IdunSoft/from/groups.js.map +1 -1
- package/dist/IdunSoft/from/index.js.map +1 -1
- package/dist/IdunSoft/from/locations.js.map +1 -1
- package/dist/IdunSoft/from/schedules.d.ts +0 -1
- package/dist/IdunSoft/from/schedules.js.map +1 -1
- package/dist/IdunSoft/from/teachers.js.map +1 -1
- package/dist/IdunSoft/to/index.d.ts +0 -1
- package/dist/IdunSoft/to/schedules.js +6 -3
- package/dist/IdunSoft/to/schedules.js.map +1 -1
- package/dist/InfoMentor/to/index.d.ts +0 -1
- package/dist/InfoMentor/to/schedules.js +2 -1
- package/dist/InfoMentor/to/schedules.js.map +1 -1
- package/dist/PlanDigital/from/index.js.map +1 -1
- package/dist/PlanDigital/from/schedules.js +11 -9
- package/dist/PlanDigital/from/schedules.js.map +1 -1
- package/dist/PlanDigital/index.d.ts +0 -1
- package/dist/Quiculum/file/to/index.d.ts +0 -1
- package/dist/Quiculum/file/to/schedules.js +9 -5
- package/dist/Quiculum/file/to/schedules.js.map +1 -1
- package/dist/RS/from/division.d.ts +0 -1
- package/dist/RS/from/division.js +2 -1
- package/dist/RS/from/division.js.map +1 -1
- package/dist/RS/from/index.js.map +1 -1
- package/dist/RS/from/schedules.d.ts +0 -1
- package/dist/RS/from/schedules.js.map +1 -1
- package/dist/RS/make-connected.d.ts +1 -3
- package/dist/RS/make-connected.js +42 -34
- package/dist/RS/make-connected.js.map +1 -1
- package/dist/RS/to/index.js.map +1 -1
- package/dist/RS/to/initial-configuration.js +6 -4
- package/dist/RS/to/initial-configuration.js.map +1 -1
- package/dist/RS/to/input/collections.js.map +1 -1
- package/dist/RS/to/input/default.js +2 -1
- package/dist/RS/to/input/default.js.map +1 -1
- package/dist/RS/to/input/dependencies.js +2 -1
- package/dist/RS/to/input/dependencies.js.map +1 -1
- package/dist/RS/to/input/dynamic-locked-times.js +2 -1
- package/dist/RS/to/input/dynamic-locked-times.js.map +1 -1
- package/dist/RS/to/input/events.js.map +1 -1
- package/dist/RS/to/input/groups.js.map +1 -1
- package/dist/RS/to/input/individuals.js +2 -1
- package/dist/RS/to/input/individuals.js.map +1 -1
- package/dist/RS/to/input/input.js +2 -1
- package/dist/RS/to/input/input.js.map +1 -1
- package/dist/RS/to/input/intervals.js +4 -2
- package/dist/RS/to/input/intervals.js.map +1 -1
- package/dist/RS/to/input/periods.js +4 -2
- package/dist/RS/to/input/periods.js.map +1 -1
- package/dist/RS/to/input/settings.js.map +1 -1
- package/dist/RS/to/input/teachers.js.map +1 -1
- package/dist/RS/to/input/util/attach-locked-times.js.map +1 -1
- package/dist/RS/to/input/util/parse-days.js.map +1 -1
- package/dist/RS/to/input/util/parse-group-references.js.map +1 -1
- package/dist/RS/to/input/util/parse-intervals.js +4 -2
- package/dist/RS/to/input/util/parse-intervals.js.map +1 -1
- package/dist/RS/to/input/util/parse-location-references.js +2 -1
- package/dist/RS/to/input/util/parse-location-references.js.map +1 -1
- package/dist/RS/to/input/util/parse-max-working-hours.js.map +1 -1
- package/dist/RS/to/input/util/parse-minimum-break-length.js.map +1 -1
- package/dist/RS/to/input/util/util.js +2 -1
- package/dist/RS/to/input/util/util.js.map +1 -1
- package/dist/RS/to/schedules.js.map +1 -1
- package/dist/RS/types/to.d.ts +0 -1
- package/dist/SS12000/from/activities.js +2 -1
- package/dist/SS12000/from/activities.js.map +1 -1
- package/dist/SS12000/from/calendar-events.js.map +1 -1
- package/dist/SS12000/from/duties.js.map +1 -1
- package/dist/SS12000/from/groups.js.map +1 -1
- package/dist/SS12000/from/index.js.map +1 -1
- package/dist/SS12000/from/persons.js.map +1 -1
- package/dist/SS12000/from/resources.js.map +1 -1
- package/dist/SS12000/from/rooms.js.map +1 -1
- package/dist/SS12000/from/syllabuses.js.map +1 -1
- package/dist/SS12000/index.d.ts +0 -1
- package/dist/SS12000/to/activities.js.map +1 -1
- package/dist/SS12000/to/calendar-events.js.map +1 -1
- package/dist/SS12000/to/common.js.map +1 -1
- package/dist/SS12000/to/duties.js.map +1 -1
- package/dist/SS12000/to/groups.js.map +1 -1
- package/dist/SS12000/to/index.d.ts +0 -1
- package/dist/SS12000/to/persons.js.map +1 -1
- package/dist/SS12000/to/resources.js.map +1 -1
- package/dist/SS12000/to/rooms.js.map +1 -1
- package/dist/SS12000/to/syllabuses.js.map +1 -1
- package/dist/SchoolSoft/api/from/index.js.map +1 -1
- package/dist/SchoolSoft/api/from/schedules.js +12 -8
- package/dist/SchoolSoft/api/from/schedules.js.map +1 -1
- package/dist/SchoolSoft/api/index.d.ts +0 -1
- package/dist/SchoolSoft/file/from/index.js.map +1 -1
- package/dist/SchoolSoft/file/from/schedules.js +87 -83
- package/dist/SchoolSoft/file/from/schedules.js.map +1 -1
- package/dist/SchoolSoft/file/index.d.ts +0 -1
- package/dist/SchoolSoft/file/to/index.d.ts +0 -1
- package/dist/SchoolSoft/file/to/schedules.js +2 -1
- package/dist/SchoolSoft/file/to/schedules.js.map +1 -1
- package/dist/SchoolSoft/index.d.ts +0 -1
- package/dist/Schoolity/txt/to/index.d.ts +0 -1
- package/dist/Schoolity/txt/to/schedules.js +12 -5
- package/dist/Schoolity/txt/to/schedules.js.map +1 -1
- package/dist/Skola24/mdb/from/course-and-events.js +5 -3
- 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 +0 -1
- package/dist/Skola24/mdb/from/schedule.js.map +1 -1
- package/dist/Skola24/mdb/from/teachers.js.map +1 -1
- package/dist/Skola24/txt/from/calendar-exceptions.js +2 -1
- 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 +34 -31
- package/dist/Skola24/txt/from/period.js.map +1 -1
- package/dist/Skola24/txt/from/schedules.d.ts +0 -1
- package/dist/Skola24/txt/from/schedules.js +10 -6
- package/dist/Skola24/txt/from/schedules.js.map +1 -1
- package/dist/Skola24/txt/from/util.js.map +1 -1
- package/dist/Skola24/txt/index.d.ts +0 -1
- package/dist/Skola24/txt/to/index.d.ts +0 -1
- package/dist/Skola24/txt/to/schedules.js +12 -5
- package/dist/Skola24/txt/to/schedules.js.map +1 -1
- package/dist/common/constants.js.map +1 -1
- package/dist/common/functions.js.map +1 -1
- package/dist/common/get-date.js.map +1 -1
- package/dist/common/make-chainable/index.js.map +1 -1
- package/dist/common/types.d.ts +3 -1
- package/dist/core/from/configurations.js.map +1 -1
- package/dist/core/from/courses.js.map +1 -1
- package/dist/core/from/events.js.map +1 -1
- package/dist/core/from/exceptions.js.map +1 -1
- package/dist/core/from/groups.js.map +1 -1
- package/dist/core/from/index.js.map +1 -1
- package/dist/core/from/locations.js.map +1 -1
- package/dist/core/from/locked-times.js.map +1 -1
- package/dist/core/from/overlap-groups.js.map +1 -1
- package/dist/core/from/periods.js.map +1 -1
- package/dist/core/from/persons.js.map +1 -1
- package/dist/core/from/root-intervals.js.map +1 -1
- package/dist/core/from/schedules.js.map +1 -1
- package/dist/core/from/settings.js.map +1 -1
- package/dist/core/from/syllabuses.js.map +1 -1
- package/dist/core/from/teachers.js.map +1 -1
- package/dist/core/index.d.ts +0 -1
- package/dist/core/interfaces/other/companies.js.map +1 -1
- package/dist/core/interfaces/other/operations.d.ts +0 -1
- package/dist/core/interfaces/vertices/companies.d.ts +0 -1
- package/dist/core/interfaces/vertices/configurations.d.ts +0 -1
- package/dist/core/interfaces/vertices/conversations.d.ts +24 -0
- package/dist/core/interfaces/vertices/courses.d.ts +0 -1
- package/dist/core/interfaces/vertices/division-settings.d.ts +0 -1
- package/dist/core/interfaces/vertices/divisions.d.ts +0 -1
- package/dist/core/interfaces/vertices/events.d.ts +0 -1
- package/dist/core/interfaces/vertices/exceptions.d.ts +0 -1
- package/dist/core/interfaces/vertices/generations.d.ts +0 -2
- package/dist/core/interfaces/vertices/groups.d.ts +0 -1
- package/dist/core/interfaces/vertices/index.d.ts +14 -1
- package/dist/core/interfaces/vertices/locations.d.ts +0 -1
- package/dist/core/interfaces/vertices/locked-times.d.ts +0 -2
- package/dist/core/interfaces/vertices/messages.d.ts +21 -0
- package/dist/core/interfaces/vertices/overlap-groups.d.ts +0 -1
- package/dist/core/interfaces/vertices/periods.d.ts +0 -2
- package/dist/core/interfaces/vertices/persons.d.ts +0 -1
- package/dist/core/interfaces/vertices/properties/belongs-to.d.ts +0 -1
- package/dist/core/interfaces/vertices/properties/coalesced.d.ts +0 -1
- package/dist/core/interfaces/vertices/root-intervals.d.ts +0 -2
- package/dist/core/interfaces/vertices/syllabuses.d.ts +0 -1
- package/dist/core/interfaces/vertices/teachers.d.ts +0 -1
- package/dist/core/interfaces/vertices/threads.d.ts +0 -1
- package/dist/core/interfaces/vertices/users.d.ts +0 -1
- package/dist/core/interfaces/vertices/util/custom-vertex-export/index.d.ts +6 -6
- package/dist/core/interfaces/vertices/util/custom-vertex-export/util.d.ts +4 -4
- package/dist/core/interfaces/vertices/util/deep-vertex-export/index.d.ts +9 -9
- package/dist/core/interfaces/vertices/util/edges.d.ts +7 -7
- package/dist/core/interfaces/vertices/util/util.d.ts +24 -20
- package/dist/core/interfaces/vertices/util/vertex-query/index.d.ts +11 -11
- package/dist/core/interfaces/vertices/util/vertex.d.ts +2 -2
- package/dist/core/interfaces/vertices/vertex-query.d.ts +32 -27
- package/dist/core/interfaces/vertices/vertex-query.js +8 -0
- package/dist/core/interfaces/vertices/vertex-query.js.map +1 -1
- package/dist/core/to/configurations.js +2 -1
- package/dist/core/to/configurations.js.map +1 -1
- package/dist/core/to/courses.js +2 -1
- package/dist/core/to/courses.js.map +1 -1
- package/dist/core/to/division.js.map +1 -1
- package/dist/core/to/events.js +2 -1
- package/dist/core/to/events.js.map +1 -1
- package/dist/core/to/exceptions.js +2 -1
- package/dist/core/to/exceptions.js.map +1 -1
- package/dist/core/to/groups.js +2 -1
- package/dist/core/to/groups.js.map +1 -1
- package/dist/core/to/locations.js +2 -1
- package/dist/core/to/locations.js.map +1 -1
- package/dist/core/to/locked-times.js +2 -1
- package/dist/core/to/locked-times.js.map +1 -1
- package/dist/core/to/overlap-groups.js +2 -1
- package/dist/core/to/overlap-groups.js.map +1 -1
- package/dist/core/to/periods.js +2 -1
- package/dist/core/to/periods.js.map +1 -1
- package/dist/core/to/persons.js +2 -1
- package/dist/core/to/persons.js.map +1 -1
- package/dist/core/to/root-intervals.js +2 -1
- package/dist/core/to/root-intervals.js.map +1 -1
- package/dist/core/to/schedules.d.ts +0 -1
- package/dist/core/to/schedules.js.map +1 -1
- package/dist/core/to/settings.js +2 -1
- package/dist/core/to/settings.js.map +1 -1
- package/dist/core/to/syllabuses.js +2 -1
- package/dist/core/to/syllabuses.js.map +1 -1
- package/dist/core/to/teachers.js +2 -1
- package/dist/core/to/teachers.js.map +1 -1
- package/dist/core/to/util.d.ts +0 -2
- package/dist/core/to/util.js +2 -1
- package/dist/core/to/util.js.map +1 -1
- package/dist/core/types/index.d.ts +0 -1
- package/dist/core/util.js +2 -1
- package/dist/core/util.js.map +1 -1
- package/dist/identify/constants/index.js.map +1 -1
- package/dist/identify/index.js +2 -1
- package/dist/identify/index.js.map +1 -1
- 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/index.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 +0 -2
- package/dist/sdui/from/schedules.js.map +1 -1
- package/dist/sdui/from/school-years.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/to/classes.js.map +1 -1
- package/dist/sdui/to/courses.js.map +1 -1
- package/dist/sdui/to/holidays.js.map +1 -1
- package/dist/sdui/to/hours.js.map +1 -1
- package/dist/sdui/to/index.d.ts +0 -2
- package/dist/sdui/to/lessons.js.map +1 -1
- package/dist/sdui/to/rooms.js.map +1 -1
- package/dist/sdui/to/schedules.js.map +1 -1
- package/dist/sdui/to/school-years.js.map +1 -1
- package/dist/sdui/to/substitution-plans.js +6 -3
- package/dist/sdui/to/substitution-plans.js.map +1 -1
- package/dist/sdui/to/teachers.js.map +1 -1
- package/dist/vKlass/from/index.js.map +1 -1
- package/dist/vKlass/from/schedule.d.ts +0 -1
- package/dist/vKlass/from/schedule.js.map +1 -1
- package/dist/vKlass/to/schedules.js +17 -6
- package/dist/vKlass/to/schedules.js.map +1 -1
- package/package.json +1 -1
- package/dist/core/interfaces/index.d.ts +0 -23
- package/dist/core/interfaces/other/index.d.ts +0 -6
- package/dist/core/interfaces/vertices/util/index.d.ts +0 -6
|
@@ -7,26 +7,26 @@ import { FLATTEN_KEY, _Flatten } from "./util.js";
|
|
|
7
7
|
|
|
8
8
|
//#region src/core/interfaces/vertices/util/vertex-query/index.d.ts
|
|
9
9
|
declare namespace HandleEdge {
|
|
10
|
-
type Plain<E
|
|
11
|
-
type Wrapped<E
|
|
10
|
+
type Plain<E extends EdgeBase<any, any>, D extends SupportedDepths> = E extends Plain.Edge<infer U> ? _VertexQuery<U, D> : never;
|
|
11
|
+
type Wrapped<E extends EdgeBase<any, any>, D extends SupportedDepths> = E extends Wrapped.Edge<infer K extends string, infer V extends Vertex<Collection>, object> ? ({
|
|
12
12
|
[FLATTEN_KEY]: true;
|
|
13
13
|
} & { [k in K]: V extends any ? _VertexQuery<V, D> : never }) : never;
|
|
14
|
-
type Coalesced<E
|
|
14
|
+
type Coalesced<E extends EdgeBase<any, any>, D extends SupportedDepths> = (E extends Coalesced.Edge<infer V, any, object> ? V : null) extends (infer V extends Vertex<Collection>) ? {
|
|
15
15
|
[FLATTEN_KEY]: true;
|
|
16
16
|
[Coalesced.Util.Keys.TO]: MakeMixed<
|
|
17
17
|
// must mix here to support all different vertex types
|
|
18
18
|
V extends any ? _VertexQuery<V, D> : never>;
|
|
19
19
|
} : never;
|
|
20
|
-
type GroupWithExclude<E
|
|
20
|
+
type GroupWithExclude<E extends EdgeBase<any, any>, D extends SupportedDepths> = E extends GroupWithExclude.Edge<infer G extends Vertex<Collection>, infer P extends Vertex<Collection>, object> ? {
|
|
21
21
|
[FLATTEN_KEY]: true;
|
|
22
22
|
[GroupWithExclude.Util.Keys.TO]: G extends any ? _VertexQuery<G, D> : never;
|
|
23
23
|
[GroupWithExclude.Util.Keys.EXCLUDE]: P extends any ? _VertexQuery<P, D> : never;
|
|
24
24
|
} : never;
|
|
25
|
-
type AvailableLocation<E
|
|
25
|
+
type AvailableLocation<E extends EdgeBase<any, any>, D extends SupportedDepths> = E extends AvailableLocation.Edge<infer L extends Vertex<Collection>, object> ? {
|
|
26
26
|
[FLATTEN_KEY]: true;
|
|
27
27
|
[AvailableLocation.Util.Keys.LOCATIONS]: L extends any ? _VertexQuery<L, D> : never;
|
|
28
28
|
} : never;
|
|
29
|
-
type ThreadMessage<E
|
|
29
|
+
type ThreadMessage<E extends EdgeBase<any, any>, D extends SupportedDepths> = E extends ThreadMessage.Edge<infer U extends Vertex<Collection>, infer T extends Vertex<Collection>, object> ? {
|
|
30
30
|
[FLATTEN_KEY]: true;
|
|
31
31
|
[ThreadMessage.Util.Keys.USER]: U extends any ? _VertexQuery<U, D> : never;
|
|
32
32
|
[ThreadMessage.Util.Keys.TAGGED_PERSONS]: T extends any ? _VertexQuery<T, D> : never;
|
|
@@ -35,17 +35,17 @@ declare namespace HandleEdge {
|
|
|
35
35
|
/**
|
|
36
36
|
*
|
|
37
37
|
*/
|
|
38
|
-
type _VertexQuery<V
|
|
39
|
-
[SELECT_KEY]: Array<AllKeysOf<V
|
|
38
|
+
type _VertexQuery<V extends Vertex<Collection>, D extends SupportedDepths> = D extends MinDepth ? {
|
|
39
|
+
[SELECT_KEY]: Array<AllKeysOf<V>>;
|
|
40
40
|
} : {
|
|
41
|
-
[EXPAND_KEY]: { [K in keyof PickEdges<V
|
|
41
|
+
[EXPAND_KEY]: { [K in keyof PickEdges<V> as V[K] extends never ? K : never]: InvalidEdgeMessage } & _Flatten<RemoveNeverValues<{ [K in keyof PickEdges<V> as V[K] extends never ? never : K]-?: NonNullable<V[K]> extends EdgeWrapper<EdgeMultiplicity, infer E extends EdgeBase<any, any> | null | undefined> ? (HandleEdge.Plain<NonNullable<E>, Decrement<D>> | HandleEdge.Wrapped<NonNullable<E>, Decrement<D>> | HandleEdge.Coalesced<NonNullable<E>, Decrement<D>> | HandleEdge.GroupWithExclude<NonNullable<E>, Decrement<D>> | HandleEdge.AvailableLocation<NonNullable<E>, Decrement<D>> | HandleEdge.ThreadMessage<NonNullable<E>, Decrement<D>>) : never }>>;
|
|
42
42
|
} & {
|
|
43
|
-
[SELECT_KEY]: Array<AllKeysOf<V
|
|
43
|
+
[SELECT_KEY]: Array<AllKeysOf<V>>;
|
|
44
44
|
};
|
|
45
45
|
/**
|
|
46
46
|
*
|
|
47
47
|
*/
|
|
48
|
-
type VertexQuery<V
|
|
48
|
+
type VertexQuery<V extends Vertex<Collection>> = DeepPartial<_VertexQuery<V, MaxDepth>>;
|
|
49
49
|
//#endregion
|
|
50
50
|
export { VertexQuery };
|
|
51
51
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -5,7 +5,7 @@ import { Types } from "mongoose";
|
|
|
5
5
|
/**
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
|
-
type RealCollection = 'settings' | 'divisionSettings' | 'exceptions' | 'groups' | 'teachers' | 'locations' | 'configurations' | 'courses' | 'events' | 'generations' | 'lockedTimes' | 'overlapGroups' | 'periods' | 'rootIntervals' | 'persons' | 'syllabuses' | 'divisions' | 'companies' | 'users' | 'threads';
|
|
8
|
+
type RealCollection = 'settings' | 'divisionSettings' | 'exceptions' | 'groups' | 'teachers' | 'locations' | 'configurations' | 'courses' | 'events' | 'generations' | 'lockedTimes' | 'overlapGroups' | 'periods' | 'rootIntervals' | 'persons' | 'syllabuses' | 'divisions' | 'companies' | 'users' | 'threads' | 'conversations' | 'messages';
|
|
9
9
|
/**
|
|
10
10
|
*
|
|
11
11
|
*/
|
|
@@ -66,5 +66,5 @@ type OmitVertexProperties<T extends object> = Omit<T, keyof Vertex<Collection>>;
|
|
|
66
66
|
type PickVertexProperties<T extends Vertex<Collection>> = Pick<T, keyof Vertex<Collection>>;
|
|
67
67
|
type VertexFactory<C extends Collection, T extends object = object> = Vertex<C> & T;
|
|
68
68
|
//#endregion
|
|
69
|
-
export { Collection, IDKey, IDType, OmitInternalVertexKeys, OmitVertexProperties, PickVertexProperties, PrivateIDKey, PrivateIDType,
|
|
69
|
+
export { Collection, IDKey, IDType, OmitInternalVertexKeys, OmitVertexProperties, PickVertexProperties, PrivateIDKey, PrivateIDType, PublicIDKey, RealCollection, Vertex, VertexFactory };
|
|
70
70
|
//# sourceMappingURL=vertex.d.ts.map
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { VertexQuery } from "./util/vertex-query/index.js";
|
|
2
2
|
import { AssertNoInvalidExpandKeys } from "./util/custom-vertex-export/assert-no-invalid-expand-keys.js";
|
|
3
3
|
import { CustomVertexExport } from "./util/custom-vertex-export/index.js";
|
|
4
|
-
import "./util/index.js";
|
|
5
4
|
import { PeriodVertex } from "./periods.js";
|
|
6
5
|
import { RootIntervalVertex } from "./root-intervals.js";
|
|
7
6
|
import { DivisionSettingsVertex } from "./division-settings.js";
|
|
@@ -21,6 +20,8 @@ import { LockedTimeVertex } from "./locked-times.js";
|
|
|
21
20
|
import { TeacherVertex } from "./teachers.js";
|
|
22
21
|
import { CompanyVertex } from "./companies.js";
|
|
23
22
|
import { ConfigurationVertex } from "./configurations.js";
|
|
23
|
+
import { MessageVertex } from "./messages.js";
|
|
24
|
+
import { ConversationVertex } from "./conversations.js";
|
|
24
25
|
|
|
25
26
|
//#region src/core/interfaces/vertices/vertex-query.d.ts
|
|
26
27
|
type VertexRecord = {
|
|
@@ -47,17 +48,19 @@ type VertexRecord = {
|
|
|
47
48
|
companies: CompanyVertex;
|
|
48
49
|
users: UserVertex;
|
|
49
50
|
threads: ThreadVertex;
|
|
51
|
+
conversations: ConversationVertex;
|
|
52
|
+
messages: MessageVertex;
|
|
50
53
|
};
|
|
51
|
-
type BaseQueryRecord<C
|
|
54
|
+
type BaseQueryRecord<C extends keyof VertexRecord> = VertexQuery<VertexRecord[C]>;
|
|
52
55
|
/**
|
|
53
56
|
* See {@link createVertexQuery}
|
|
54
57
|
*/
|
|
55
|
-
declare class VertexQuery$1<C
|
|
58
|
+
declare class VertexQuery$1<C extends keyof VertexRecord, Q extends BaseQueryRecord<C> & AssertNoInvalidExpandKeys<VertexRecord[C], Q>> {
|
|
56
59
|
private readonly _collection;
|
|
57
60
|
private readonly _query;
|
|
58
|
-
constructor(_collection: C
|
|
59
|
-
get collection(): C
|
|
60
|
-
get query(): Q
|
|
61
|
+
constructor(_collection: C, _query: Q);
|
|
62
|
+
get collection(): C;
|
|
63
|
+
get query(): Q;
|
|
61
64
|
}
|
|
62
65
|
/**
|
|
63
66
|
* Infers the result type for a query created via createVertexQuery.
|
|
@@ -82,27 +85,29 @@ type Infer<T extends VertexQuery$1<any, any>> = T extends VertexQuery$1<infer C,
|
|
|
82
85
|
* type GroupType = Infer<typeof groupQuery>;
|
|
83
86
|
*/
|
|
84
87
|
declare namespace createVertexQuery {
|
|
85
|
-
function division<Q
|
|
86
|
-
function settings<Q
|
|
87
|
-
function exception<Q
|
|
88
|
-
function event<Q
|
|
89
|
-
function scheduleEvent<Q
|
|
90
|
-
function calendarEvent<Q
|
|
91
|
-
function course<Q
|
|
92
|
-
function generation<Q
|
|
93
|
-
function location<Q
|
|
94
|
-
function lockedTime<Q
|
|
95
|
-
function overlapGroup<Q
|
|
96
|
-
function period<Q
|
|
97
|
-
function person<Q
|
|
98
|
-
function student<Q
|
|
99
|
-
function rootInterval<Q
|
|
100
|
-
function syllabus<Q
|
|
101
|
-
function group<Q
|
|
102
|
-
function teacher<Q
|
|
103
|
-
function configuration<Q
|
|
104
|
-
function thread<Q
|
|
105
|
-
function
|
|
88
|
+
function division<Q extends VertexQuery<DivisionVertex> & AssertNoInvalidExpandKeys<DivisionVertex, Q>>(query: Q): VertexQuery$1<"divisions", Q>;
|
|
89
|
+
function settings<Q extends VertexQuery<DivisionSettingsVertex> & AssertNoInvalidExpandKeys<DivisionSettingsVertex, Q>>(query: Q): VertexQuery$1<"settings", Q>;
|
|
90
|
+
function exception<Q extends VertexQuery<ExceptionVertex> & AssertNoInvalidExpandKeys<ExceptionVertex, Q>>(query: Q): VertexQuery$1<"exceptions", Q>;
|
|
91
|
+
function event<Q extends VertexQuery<EventVertex> & AssertNoInvalidExpandKeys<EventVertex, Q>>(query: Q): VertexQuery$1<"events", Q>;
|
|
92
|
+
function scheduleEvent<Q extends VertexQuery<ScheduleEventVertex> & AssertNoInvalidExpandKeys<ScheduleEventVertex, Q>>(query: Q): VertexQuery$1<"scheduleEvents", Q>;
|
|
93
|
+
function calendarEvent<Q extends VertexQuery<CalendarEventVertex> & AssertNoInvalidExpandKeys<CalendarEventVertex, Q>>(query: Q): VertexQuery$1<"calendarEvents", Q>;
|
|
94
|
+
function course<Q extends VertexQuery<CourseVertex> & AssertNoInvalidExpandKeys<CourseVertex, Q>>(query: Q): VertexQuery$1<"courses", Q>;
|
|
95
|
+
function generation<Q extends VertexQuery<GenerationVertex> & AssertNoInvalidExpandKeys<GenerationVertex, Q>>(query: Q): VertexQuery$1<"generations", Q>;
|
|
96
|
+
function location<Q extends VertexQuery<LocationVertex> & AssertNoInvalidExpandKeys<LocationVertex, Q>>(query: Q): VertexQuery$1<"locations", Q>;
|
|
97
|
+
function lockedTime<Q extends VertexQuery<LockedTimeVertex> & AssertNoInvalidExpandKeys<LockedTimeVertex, Q>>(query: Q): VertexQuery$1<"lockedTimes", Q>;
|
|
98
|
+
function overlapGroup<Q extends VertexQuery<OverlapGroupVertex> & AssertNoInvalidExpandKeys<OverlapGroupVertex, Q>>(query: Q): VertexQuery$1<"overlapGroups", Q>;
|
|
99
|
+
function period<Q extends VertexQuery<PeriodVertex> & AssertNoInvalidExpandKeys<PeriodVertex, Q>>(query: Q): VertexQuery$1<"periods", Q>;
|
|
100
|
+
function person<Q extends VertexQuery<PersonVertex> & AssertNoInvalidExpandKeys<PersonVertex, Q>>(query: Q): VertexQuery$1<"persons", Q>;
|
|
101
|
+
function student<Q extends VertexQuery<PersonVertex> & AssertNoInvalidExpandKeys<PersonVertex, Q>>(query: Q): VertexQuery$1<"students", Q>;
|
|
102
|
+
function rootInterval<Q extends VertexQuery<RootIntervalVertex> & AssertNoInvalidExpandKeys<RootIntervalVertex, Q>>(query: Q): VertexQuery$1<"rootIntervals", Q>;
|
|
103
|
+
function syllabus<Q extends VertexQuery<SyllabusVertex> & AssertNoInvalidExpandKeys<SyllabusVertex, Q>>(query: Q): VertexQuery$1<"syllabuses", Q>;
|
|
104
|
+
function group<Q extends VertexQuery<GroupVertex> & AssertNoInvalidExpandKeys<GroupVertex, Q>>(query: Q): VertexQuery$1<"groups", Q>;
|
|
105
|
+
function teacher<Q extends VertexQuery<TeacherVertex> & AssertNoInvalidExpandKeys<TeacherVertex, Q>>(query: Q): VertexQuery$1<"teachers", Q>;
|
|
106
|
+
function configuration<Q extends VertexQuery<ConfigurationVertex> & AssertNoInvalidExpandKeys<ConfigurationVertex, Q>>(query: Q): VertexQuery$1<"configurations", Q>;
|
|
107
|
+
function thread<Q extends VertexQuery<ThreadVertex> & AssertNoInvalidExpandKeys<ThreadVertex, Q>>(query: Q): VertexQuery$1<"threads", Q>;
|
|
108
|
+
function conversation<Q extends VertexQuery<ConversationVertex> & AssertNoInvalidExpandKeys<ConversationVertex, Q>>(query: Q): VertexQuery$1<"conversations", Q>;
|
|
109
|
+
function message<Q extends VertexQuery<MessageVertex> & AssertNoInvalidExpandKeys<MessageVertex, Q>>(query: Q): VertexQuery$1<"messages", Q>;
|
|
110
|
+
function user<Q extends VertexQuery<UserVertex> & AssertNoInvalidExpandKeys<UserVertex, Q>>(query: Q): VertexQuery$1<"users", Q>;
|
|
106
111
|
}
|
|
107
112
|
//#endregion
|
|
108
113
|
export { Infer, VertexQuery$1 as VertexQuery, createVertexQuery };
|
|
@@ -99,6 +99,14 @@ let createVertexQuery;
|
|
|
99
99
|
return new VertexQuery("threads", query);
|
|
100
100
|
}
|
|
101
101
|
_createVertexQuery.thread = thread;
|
|
102
|
+
function conversation(query) {
|
|
103
|
+
return new VertexQuery("conversations", query);
|
|
104
|
+
}
|
|
105
|
+
_createVertexQuery.conversation = conversation;
|
|
106
|
+
function message(query) {
|
|
107
|
+
return new VertexQuery("messages", query);
|
|
108
|
+
}
|
|
109
|
+
_createVertexQuery.message = message;
|
|
102
110
|
function user(query) {
|
|
103
111
|
return new VertexQuery("users", query);
|
|
104
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vertex-query.js","names":["_collection: C","_query: Q"],"sources":["../../../../src/core/interfaces/vertices/vertex-query.ts"],"sourcesContent":["import type { AssertNoInvalidExpandKeys, Collection, CustomVertexExport } from './util';\nimport type { TeacherVertex } from './teachers';\nimport type { ExceptionVertex } from './exceptions';\nimport type { EventVertex, ScheduleEventVertex, CalendarEventVertex } from './events';\nimport type { CourseVertex } from './courses';\nimport type { DivisionSettingsVertex } from './division-settings';\nimport type { DivisionVertex } from './divisions';\nimport type { GenerationVertex } from './generations';\nimport type { GroupVertex } from './groups';\nimport type { LocationVertex } from './locations';\nimport type { LockedTimeVertex } from './locked-times';\nimport type { OverlapGroupVertex } from './overlap-groups';\nimport type { PeriodVertex } from './periods';\nimport type { PersonVertex } from './persons';\nimport type { RootIntervalVertex } from './root-intervals';\nimport type { SyllabusVertex } from './syllabuses';\nimport type { ConfigurationVertex } from './configurations';\nimport type { CompanyVertex } from './companies';\nimport type { UserVertex } from './users';\nimport type { ThreadVertex } from './threads';\nimport type { VertexQuery as Query } from './util/vertex-query';\nimport type { TypeEqual } from 'ts-expect';\nimport { expectType } from 'ts-expect';\n\n\nexport type VertexRecord = {\n divisions: DivisionVertex;\n divisionSettings: DivisionSettingsVertex;\n settings: DivisionSettingsVertex;\n teachers: TeacherVertex;\n exceptions: ExceptionVertex;\n events: EventVertex;\n scheduleEvents: ScheduleEventVertex;\n calendarEvents: CalendarEventVertex;\n courses: CourseVertex;\n generations: GenerationVertex;\n groups: GroupVertex;\n locations: LocationVertex;\n lockedTimes: LockedTimeVertex;\n overlapGroups: OverlapGroupVertex;\n periods: PeriodVertex;\n persons: PersonVertex;\n students: PersonVertex;\n rootIntervals: RootIntervalVertex;\n syllabuses: SyllabusVertex;\n configurations: ConfigurationVertex;\n companies: CompanyVertex;\n users: UserVertex;\n threads: ThreadVertex;\n};\nexport type BaseQueryRecord<C extends keyof VertexRecord> = Query<VertexRecord[C]>;\n{\n // the keys must all be a collection\n type Mismatches = keyof {\n [K in keyof VertexRecord as K extends Collection ? never : K]: true\n };\n expectType<TypeEqual<Mismatches, never>>(true);\n}\n\n/**\n * See {@link createVertexQuery}\n */\nexport class VertexQuery <\n C extends keyof VertexRecord,\n Q extends BaseQueryRecord<C> & AssertNoInvalidExpandKeys<VertexRecord[C], Q>\n> {\n constructor (\n private readonly _collection: C,\n private readonly _query: Q\n ) {}\n\n get collection () { return this._collection }\n get query () { return this._query }\n}\n\n\n/**\n * Infers the result type for a query created via createVertexQuery.\n *\n * @example\n * const personQuery = createVertexQuery('persons', { select: ['id', 'firstName'] });\n * type PersonType = Infer<typeof personQuery>;\n */\nexport type Infer<T extends VertexQuery<any, any>> = // eslint-disable-line @typescript-eslint/no-explicit-any\n T extends VertexQuery<infer C, infer Q>\n ? CustomVertexExport<VertexRecord[C], Q>\n : never;\n\n\n/**\n * Builds a typed vertex query for a given vertex type using a select/expand shape.\n *\n * Use together with Infer<T> to obtain the serialized result type.\n *\n * @typeParam Q - The select/expand query shape for that vertex.\n *\n * @example\n * const groupQuery = createVertexQuery.group({\n * select: ['id', 'displayName'],\n * expand: { members: { select: ['id'] } }\n * });\n * type GroupType = Infer<typeof groupQuery>;\n */\nexport namespace createVertexQuery {\n //\n // The following did not work: it seems we need to define Q as an completely independent type parameter (?)\n //\n // export function createVertexQuery <\n // C extends keyof VertexRecord,\n // const Q extends Query<VertexRecord[C]>\n // > (\n // collection: C,\n // query: Q\n // ) {\n // return new VertexQuery(collection, query);\n // }\n\n export function division <Q extends Query<DivisionVertex > & AssertNoInvalidExpandKeys<DivisionVertex, Q>> (query: Q) { return new VertexQuery('divisions', query) }\n export function settings <Q extends Query<DivisionSettingsVertex> & AssertNoInvalidExpandKeys<DivisionSettingsVertex, Q>> (query: Q) { return new VertexQuery('settings', query) }\n export function exception <Q extends Query<ExceptionVertex > & AssertNoInvalidExpandKeys<ExceptionVertex, Q>> (query: Q) { return new VertexQuery('exceptions', query) }\n export function event <Q extends Query<EventVertex > & AssertNoInvalidExpandKeys<EventVertex, Q>> (query: Q) { return new VertexQuery('events', query) }\n export function scheduleEvent<Q extends Query<ScheduleEventVertex > & AssertNoInvalidExpandKeys<ScheduleEventVertex, Q>> (query: Q) { return new VertexQuery('scheduleEvents', query) }\n export function calendarEvent<Q extends Query<CalendarEventVertex > & AssertNoInvalidExpandKeys<CalendarEventVertex, Q>> (query: Q) { return new VertexQuery('calendarEvents', query) }\n export function course <Q extends Query<CourseVertex > & AssertNoInvalidExpandKeys<CourseVertex, Q>> (query: Q) { return new VertexQuery('courses', query) }\n export function generation <Q extends Query<GenerationVertex > & AssertNoInvalidExpandKeys<GenerationVertex, Q>> (query: Q) { return new VertexQuery('generations', query) }\n export function location <Q extends Query<LocationVertex > & AssertNoInvalidExpandKeys<LocationVertex, Q>> (query: Q) { return new VertexQuery('locations', query) }\n export function lockedTime <Q extends Query<LockedTimeVertex > & AssertNoInvalidExpandKeys<LockedTimeVertex, Q>> (query: Q) { return new VertexQuery('lockedTimes', query) }\n export function overlapGroup <Q extends Query<OverlapGroupVertex > & AssertNoInvalidExpandKeys<OverlapGroupVertex, Q>> (query: Q) { return new VertexQuery('overlapGroups', query) }\n export function period <Q extends Query<PeriodVertex > & AssertNoInvalidExpandKeys<PeriodVertex, Q>> (query: Q) { return new VertexQuery('periods', query) }\n export function person <Q extends Query<PersonVertex > & AssertNoInvalidExpandKeys<PersonVertex, Q>> (query: Q) { return new VertexQuery('persons', query) }\n export function student <Q extends Query<PersonVertex > & AssertNoInvalidExpandKeys<PersonVertex, Q>> (query: Q) { return new VertexQuery('students', query) }\n export function rootInterval <Q extends Query<RootIntervalVertex > & AssertNoInvalidExpandKeys<RootIntervalVertex, Q>> (query: Q) { return new VertexQuery('rootIntervals', query) }\n export function syllabus <Q extends Query<SyllabusVertex > & AssertNoInvalidExpandKeys<SyllabusVertex, Q>> (query: Q) { return new VertexQuery('syllabuses', query) }\n export function group <Q extends Query<GroupVertex > & AssertNoInvalidExpandKeys<GroupVertex, Q>> (query: Q) { return new VertexQuery('groups', query) }\n export function teacher <Q extends Query<TeacherVertex > & AssertNoInvalidExpandKeys<TeacherVertex, Q>> (query: Q) { return new VertexQuery('teachers', query) }\n export function configuration<Q extends Query<ConfigurationVertex > & AssertNoInvalidExpandKeys<ConfigurationVertex, Q>> (query: Q) { return new VertexQuery('configurations', query) }\n export function thread <Q extends Query<ThreadVertex > & AssertNoInvalidExpandKeys<ThreadVertex, Q>> (query: Q) { return new VertexQuery('threads', query) }\n export function user <Q extends Query<UserVertex > & AssertNoInvalidExpandKeys<UserVertex, Q>> (query: Q) { return new VertexQuery('users', query) }\n}"],"mappings":";;;AAwDE,WAAyC,KAAK;;;;AAMhD,IAAa,cAAb,MAGE;CACA,YACE,AAAiBA,aACjB,AAAiBC,QACjB;EAFiB;EACA;;CAGnB,IAAI,aAAc;AAAE,SAAO,KAAK;;CAChC,IAAI,QAAc;AAAE,SAAO,KAAK;;;;;CA6CzB,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,aAAoB,MAAM;;;CACrL,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB,MAAM;;;CACrL,SAAS,UAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,cAAoB,MAAM;;;CACrL,SAAS,MAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,UAAoB,MAAM;;;CACrL,SAAS,cAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,kBAAoB,MAAM;;;CACrL,SAAS,cAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,kBAAoB,MAAM;;;CACrL,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB,MAAM;;;CACrL,SAAS,WAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,eAAoB,MAAM;;;CACrL,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,aAAoB,MAAM;;;CACrL,SAAS,WAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,eAAoB,MAAM;;;CACrL,SAAS,aAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,iBAAoB,MAAM;;;CACrL,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB,MAAM;;;CACrL,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB,MAAM;;;CACrL,SAAS,QAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB,MAAM;;;CACrL,SAAS,aAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,iBAAoB,MAAM;;;CACrL,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,cAAoB,MAAM;;;CACrL,SAAS,MAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,UAAoB,MAAM;;;CACrL,SAAS,QAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB,MAAM;;;CACrL,SAAS,cAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,kBAAoB,MAAM;;;CACrL,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB,MAAM;;;CACrL,SAAS,KAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,SAAoB,MAAM"}
|
|
1
|
+
{"version":3,"file":"vertex-query.js","names":["_collection: C","_query: Q"],"sources":["../../../../src/core/interfaces/vertices/vertex-query.ts"],"sourcesContent":["import type { AssertNoInvalidExpandKeys, Collection, CustomVertexExport } from './util';\nimport type { TeacherVertex } from './teachers';\nimport type { ExceptionVertex } from './exceptions';\nimport type { EventVertex, ScheduleEventVertex, CalendarEventVertex } from './events';\nimport type { CourseVertex } from './courses';\nimport type { DivisionSettingsVertex } from './division-settings';\nimport type { DivisionVertex } from './divisions';\nimport type { GenerationVertex } from './generations';\nimport type { GroupVertex } from './groups';\nimport type { LocationVertex } from './locations';\nimport type { LockedTimeVertex } from './locked-times';\nimport type { OverlapGroupVertex } from './overlap-groups';\nimport type { PeriodVertex } from './periods';\nimport type { PersonVertex } from './persons';\nimport type { RootIntervalVertex } from './root-intervals';\nimport type { SyllabusVertex } from './syllabuses';\nimport type { ConfigurationVertex } from './configurations';\nimport type { CompanyVertex } from './companies';\nimport type { UserVertex } from './users';\nimport type { ThreadVertex } from './threads';\nimport type { ConversationVertex } from './conversations';\nimport type { MessageVertex } from './messages';\nimport type { VertexQuery as Query } from './util/vertex-query';\nimport type { TypeEqual } from 'ts-expect';\nimport { expectType } from 'ts-expect';\n\n\nexport type VertexRecord = {\n divisions: DivisionVertex;\n divisionSettings: DivisionSettingsVertex;\n settings: DivisionSettingsVertex;\n teachers: TeacherVertex;\n exceptions: ExceptionVertex;\n events: EventVertex;\n scheduleEvents: ScheduleEventVertex;\n calendarEvents: CalendarEventVertex;\n courses: CourseVertex;\n generations: GenerationVertex;\n groups: GroupVertex;\n locations: LocationVertex;\n lockedTimes: LockedTimeVertex;\n overlapGroups: OverlapGroupVertex;\n periods: PeriodVertex;\n persons: PersonVertex;\n students: PersonVertex;\n rootIntervals: RootIntervalVertex;\n syllabuses: SyllabusVertex;\n configurations: ConfigurationVertex;\n companies: CompanyVertex;\n users: UserVertex;\n threads: ThreadVertex;\n conversations: ConversationVertex;\n messages: MessageVertex;\n};\nexport type BaseQueryRecord<C extends keyof VertexRecord> = Query<VertexRecord[C]>;\n{\n // the keys must all be a collection\n type Mismatches = keyof {\n [K in keyof VertexRecord as K extends Collection ? never : K]: true\n };\n expectType<TypeEqual<Mismatches, never>>(true);\n}\n\n/**\n * See {@link createVertexQuery}\n */\nexport class VertexQuery <\n C extends keyof VertexRecord,\n Q extends BaseQueryRecord<C> & AssertNoInvalidExpandKeys<VertexRecord[C], Q>\n> {\n constructor (\n private readonly _collection: C,\n private readonly _query: Q\n ) {}\n\n get collection () { return this._collection }\n get query () { return this._query }\n}\n\n\n/**\n * Infers the result type for a query created via createVertexQuery.\n *\n * @example\n * const personQuery = createVertexQuery('persons', { select: ['id', 'firstName'] });\n * type PersonType = Infer<typeof personQuery>;\n */\nexport type Infer<T extends VertexQuery<any, any>> = // eslint-disable-line @typescript-eslint/no-explicit-any\n T extends VertexQuery<infer C, infer Q>\n ? CustomVertexExport<VertexRecord[C], Q>\n : never;\n\n\n/**\n * Builds a typed vertex query for a given vertex type using a select/expand shape.\n *\n * Use together with Infer<T> to obtain the serialized result type.\n *\n * @typeParam Q - The select/expand query shape for that vertex.\n *\n * @example\n * const groupQuery = createVertexQuery.group({\n * select: ['id', 'displayName'],\n * expand: { members: { select: ['id'] } }\n * });\n * type GroupType = Infer<typeof groupQuery>;\n */\nexport namespace createVertexQuery {\n //\n // The following did not work: it seems we need to define Q as an completely independent type parameter (?)\n //\n // export function createVertexQuery <\n // C extends keyof VertexRecord,\n // const Q extends Query<VertexRecord[C]>\n // > (\n // collection: C,\n // query: Q\n // ) {\n // return new VertexQuery(collection, query);\n // }\n\n export function division <Q extends Query<DivisionVertex > & AssertNoInvalidExpandKeys<DivisionVertex, Q>> (query: Q) { return new VertexQuery('divisions', query) }\n export function settings <Q extends Query<DivisionSettingsVertex> & AssertNoInvalidExpandKeys<DivisionSettingsVertex, Q>> (query: Q) { return new VertexQuery('settings', query) }\n export function exception <Q extends Query<ExceptionVertex > & AssertNoInvalidExpandKeys<ExceptionVertex, Q>> (query: Q) { return new VertexQuery('exceptions', query) }\n export function event <Q extends Query<EventVertex > & AssertNoInvalidExpandKeys<EventVertex, Q>> (query: Q) { return new VertexQuery('events', query) }\n export function scheduleEvent<Q extends Query<ScheduleEventVertex > & AssertNoInvalidExpandKeys<ScheduleEventVertex, Q>> (query: Q) { return new VertexQuery('scheduleEvents', query) }\n export function calendarEvent<Q extends Query<CalendarEventVertex > & AssertNoInvalidExpandKeys<CalendarEventVertex, Q>> (query: Q) { return new VertexQuery('calendarEvents', query) }\n export function course <Q extends Query<CourseVertex > & AssertNoInvalidExpandKeys<CourseVertex, Q>> (query: Q) { return new VertexQuery('courses', query) }\n export function generation <Q extends Query<GenerationVertex > & AssertNoInvalidExpandKeys<GenerationVertex, Q>> (query: Q) { return new VertexQuery('generations', query) }\n export function location <Q extends Query<LocationVertex > & AssertNoInvalidExpandKeys<LocationVertex, Q>> (query: Q) { return new VertexQuery('locations', query) }\n export function lockedTime <Q extends Query<LockedTimeVertex > & AssertNoInvalidExpandKeys<LockedTimeVertex, Q>> (query: Q) { return new VertexQuery('lockedTimes', query) }\n export function overlapGroup <Q extends Query<OverlapGroupVertex > & AssertNoInvalidExpandKeys<OverlapGroupVertex, Q>> (query: Q) { return new VertexQuery('overlapGroups', query) }\n export function period <Q extends Query<PeriodVertex > & AssertNoInvalidExpandKeys<PeriodVertex, Q>> (query: Q) { return new VertexQuery('periods', query) }\n export function person <Q extends Query<PersonVertex > & AssertNoInvalidExpandKeys<PersonVertex, Q>> (query: Q) { return new VertexQuery('persons', query) }\n export function student <Q extends Query<PersonVertex > & AssertNoInvalidExpandKeys<PersonVertex, Q>> (query: Q) { return new VertexQuery('students', query) }\n export function rootInterval <Q extends Query<RootIntervalVertex > & AssertNoInvalidExpandKeys<RootIntervalVertex, Q>> (query: Q) { return new VertexQuery('rootIntervals', query) }\n export function syllabus <Q extends Query<SyllabusVertex > & AssertNoInvalidExpandKeys<SyllabusVertex, Q>> (query: Q) { return new VertexQuery('syllabuses', query) }\n export function group <Q extends Query<GroupVertex > & AssertNoInvalidExpandKeys<GroupVertex, Q>> (query: Q) { return new VertexQuery('groups', query) }\n export function teacher <Q extends Query<TeacherVertex > & AssertNoInvalidExpandKeys<TeacherVertex, Q>> (query: Q) { return new VertexQuery('teachers', query) }\n export function configuration<Q extends Query<ConfigurationVertex > & AssertNoInvalidExpandKeys<ConfigurationVertex, Q>> (query: Q) { return new VertexQuery('configurations', query) }\n export function thread <Q extends Query<ThreadVertex > & AssertNoInvalidExpandKeys<ThreadVertex, Q>> (query: Q) { return new VertexQuery('threads', query) } export function conversation <Q extends Query<ConversationVertex > & AssertNoInvalidExpandKeys<ConversationVertex, Q>> (query: Q) { return new VertexQuery('conversations', query) }\n export function message <Q extends Query<MessageVertex > & AssertNoInvalidExpandKeys<MessageVertex, Q>> (query: Q) { return new VertexQuery('messages', query) } export function user <Q extends Query<UserVertex > & AssertNoInvalidExpandKeys<UserVertex, Q>> (query: Q) { return new VertexQuery('users', query) }\n}"],"mappings":";;;AA4DE,WAAyC;;;;AAM3C,IAAa,cAAb,MAGE;CACA,YACE,AAAiBA,aACjB,AAAiBC,QACjB;EAFiB;EACA;;CAGnB,IAAI,aAAc;AAAE,SAAO,KAAK;;CAChC,IAAI,QAAc;AAAE,SAAO,KAAK;;;;;CA6CzB,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,aAAoB;;;CAC/K,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB;;;CAC/K,SAAS,UAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,cAAoB;;;CAC/K,SAAS,MAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,UAAoB;;;CAC/K,SAAS,cAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,kBAAoB;;;CAC/K,SAAS,cAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,kBAAoB;;;CAC/K,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB;;;CAC/K,SAAS,WAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,eAAoB;;;CAC/K,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,aAAoB;;;CAC/K,SAAS,WAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,eAAoB;;;CAC/K,SAAS,aAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,iBAAoB;;;CAC/K,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB;;;CAC/K,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB;;;CAC/K,SAAS,QAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB;;;CAC/K,SAAS,aAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,iBAAoB;;;CAC/K,SAAS,SAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,cAAoB;;;CAC/K,SAAS,MAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,UAAoB;;;CAC/K,SAAS,QAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB;;;CAC/K,SAAS,cAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,kBAAoB;;;CAC/K,SAAS,OAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,WAAoB;;;CAAiB,SAAS,aAA8G,OAAU;AAAE,SAAO,IAAI,YAAY,iBAAoB;;;CAC9W,SAAS,QAA8G,OAAU;AAAE,SAAO,IAAI,YAAY,YAAoB;;;CAAiB,SAAS,KAA+G,OAAU;AAAE,SAAO,IAAI,YAAY,SAAoB"}
|
|
@@ -4,8 +4,9 @@ import { omitEdgesAndInternalProperties } from "./util.js";
|
|
|
4
4
|
var configurations_default = (configurations, _options) => {
|
|
5
5
|
return configurations.map((x) => {
|
|
6
6
|
const edges = {};
|
|
7
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
7
8
|
return {
|
|
8
|
-
...
|
|
9
|
+
...nonEdges,
|
|
9
10
|
...edges
|
|
10
11
|
};
|
|
11
12
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configurations.js","names":["edges: SerializedEdgesOnlyVertexExport<ConfigurationVertex>"],"sources":["../../../src/core/to/configurations.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport type { BaseOptions } from '../../common/types';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { ConfigurationVertex } from '../interfaces/vertices/configurations';\n\nexport default (\n configurations: Types.Mixed.Configuration[],\n _options: BaseOptions\n): OutTypes.configuration[] => {\n return configurations\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<ConfigurationVertex> = {\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<ConfigurationVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;AAMA,8BACE,gBACA,aAC6B;AAC7B,QAAO,eACJ,KAAI,MAAK;EACR,MAAMA,QAA8D
|
|
1
|
+
{"version":3,"file":"configurations.js","names":["edges: SerializedEdgesOnlyVertexExport<ConfigurationVertex>"],"sources":["../../../src/core/to/configurations.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport type { BaseOptions } from '../../common/types';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { ConfigurationVertex } from '../interfaces/vertices/configurations';\n\nexport default (\n configurations: Types.Mixed.Configuration[],\n _options: BaseOptions\n): OutTypes.configuration[] => {\n return configurations\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<ConfigurationVertex> = {\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<ConfigurationVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;AAMA,8BACE,gBACA,aAC6B;AAC7B,QAAO,eACJ,KAAI,MAAK;EACR,MAAMA,QAA8D;EAEpE,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
package/dist/core/to/courses.js
CHANGED
|
@@ -29,8 +29,9 @@ var courses_default = (courses, options) => {
|
|
|
29
29
|
locations: [getVertexId(x$1.locations[0], options)]
|
|
30
30
|
}))
|
|
31
31
|
};
|
|
32
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
32
33
|
return {
|
|
33
|
-
...
|
|
34
|
+
...nonEdges,
|
|
34
35
|
...edges
|
|
35
36
|
};
|
|
36
37
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"courses.js","names":["edges: SerializedEdgesOnlyVertexExport<CourseVertex>","x"],"sources":["../../../src/core/to/courses.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { CourseVertex } from '../interfaces/vertices/courses';\n\n\nexport default (\n courses: Types.Mixed.Course[],\n options: BaseOptions\n): OutTypes.course[] => {\n return courses\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<CourseVertex> = {\n period: x.period ? getVertexId(x.period, options) : undefined,\n overlapGroup: x.overlapGroup ? getVertexId(x.overlapGroup, options) : undefined,\n // overlapSpecies: x.overlapSpecies ? getVertexId(x.overlapSpecies, options) : undefined,\n syllabus: x.syllabus ? getVertexId(x.syllabus, options) : undefined,\n events: x.events ?.map(x => getVertexId(x, options)),\n lockedTimes: x.lockedTimes ?.map(x => getVertexId(x, options)),\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n teachers: x.teachers ?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n participants: x.participants?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n groups: x.groups ?.map(x => ({ ...x, to: getVertexId(x.to, options), exclude: x.exclude?.map(y => getVertexId(y, options)) })),\n locations: x.locations ?.map(x => ({ ...x, locations: [getVertexId(x.locations[0], options)] as [string] })),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<CourseVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAQA,uBACE,SACA,YACsB;AACtB,QAAO,QACJ,KAAI,MAAK;EACR,MAAMA,QAAuD;GAC3D,QAAgB,EAAE,SAAiB,YAAY,EAAE,QAAgB,
|
|
1
|
+
{"version":3,"file":"courses.js","names":["edges: SerializedEdgesOnlyVertexExport<CourseVertex>","x"],"sources":["../../../src/core/to/courses.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { CourseVertex } from '../interfaces/vertices/courses';\n\n\nexport default (\n courses: Types.Mixed.Course[],\n options: BaseOptions\n): OutTypes.course[] => {\n return courses\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<CourseVertex> = {\n period: x.period ? getVertexId(x.period, options) : undefined,\n overlapGroup: x.overlapGroup ? getVertexId(x.overlapGroup, options) : undefined,\n // overlapSpecies: x.overlapSpecies ? getVertexId(x.overlapSpecies, options) : undefined,\n syllabus: x.syllabus ? getVertexId(x.syllabus, options) : undefined,\n events: x.events ?.map(x => getVertexId(x, options)),\n lockedTimes: x.lockedTimes ?.map(x => getVertexId(x, options)),\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n teachers: x.teachers ?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n participants: x.participants?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n groups: x.groups ?.map(x => ({ ...x, to: getVertexId(x.to, options), exclude: x.exclude?.map(y => getVertexId(y, options)) })),\n locations: x.locations ?.map(x => ({ ...x, locations: [getVertexId(x.locations[0], options)] as [string] })),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<CourseVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAQA,uBACE,SACA,YACsB;AACtB,QAAO,QACJ,KAAI,MAAK;EACR,MAAMA,QAAuD;GAC3D,QAAgB,EAAE,SAAiB,YAAY,EAAE,QAAgB,WAAW;GAC5E,cAAgB,EAAE,eAAiB,YAAY,EAAE,cAAgB,WAAW;GAE5E,UAAgB,EAAE,WAAiB,YAAY,EAAE,UAAgB,WAAW;GAC5E,QAAgB,EAAE,QAAc,KAAI,QAAK,YAAYC,KAAG;GACxD,aAAgB,EAAE,aAAc,KAAI,QAAK,YAAYA,KAAG;GACxD,YAAgB,EAAE,YAAc,KAAI,QAAK,YAAYA,KAAG;GACxD,UAAgB,EAAE,UAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,IAAI,YAAYA,IAAE,IAAI;;GACxE,cAAgB,EAAE,cAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,IAAI,YAAYA,IAAE,IAAI;;GACxE,QAAgB,EAAE,QAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,IAAI,YAAYA,IAAE,IAAI;IAAU,SAASA,IAAE,SAAS,KAAI,MAAK,YAAY,GAAG;;GAC9H,WAAgB,EAAE,WAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,WAAW,CAAC,YAAYA,IAAE,UAAU,IAAI;;;EAE5F,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"division.js","names":[],"sources":["../../../src/core/to/division.ts"],"sourcesContent":["import { pick } from 'lodash-es';\nimport type { Types } from '../types';\nimport type { BaseOptions } from '../../common/types';\nimport type { OutTypes } from './schedules';\n\nexport default (\n division: Types.Mixed.Division,\n options: BaseOptions\n): Pick<OutTypes.division, 'displayName' | 'start' | 'end'> => {\n return pick(division, 'displayName', 'start', 'end');\n};\n"],"mappings":";;;AAKA,wBACE,UACA,YAC6D;AAC7D,QAAO,KAAK,UAAU,eAAe,SAAS
|
|
1
|
+
{"version":3,"file":"division.js","names":[],"sources":["../../../src/core/to/division.ts"],"sourcesContent":["import { pick } from 'lodash-es';\nimport type { Types } from '../types';\nimport type { BaseOptions } from '../../common/types';\nimport type { OutTypes } from './schedules';\n\nexport default (\n division: Types.Mixed.Division,\n options: BaseOptions\n): Pick<OutTypes.division, 'displayName' | 'start' | 'end'> => {\n return pick(division, 'displayName', 'start', 'end');\n};\n"],"mappings":";;;AAKA,wBACE,UACA,YAC6D;AAC7D,QAAO,KAAK,UAAU,eAAe,SAAS"}
|
package/dist/core/to/events.js
CHANGED
|
@@ -30,8 +30,9 @@ var events_default = (events, options) => {
|
|
|
30
30
|
inLocations: x.inLocations?.map((x$1) => x$1 ? getVertexId(x$1, options) : null),
|
|
31
31
|
threads: void 0
|
|
32
32
|
};
|
|
33
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
33
34
|
return {
|
|
34
|
-
...
|
|
35
|
+
...nonEdges,
|
|
35
36
|
...edges
|
|
36
37
|
};
|
|
37
38
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","names":["edges: SerializedEdgesOnlyVertexExport<EventVertex>","x"],"sources":["../../../src/core/to/events.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { EventVertex } from '../interfaces/vertices/events';\n\n\n\n\nexport default (\n events: Types.Mixed.Event[],\n options: BaseOptions\n): OutTypes.event[] => {\n return events\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<EventVertex> = {\n period: x.period ? getVertexId(x.period, options) : undefined,\n // overlapGroup: x.overlapGroup ? getVertexId(x.overlapGroup, options) : undefined,\n overlapSpecies: x.overlapSpecies ? getVertexId(x.overlapSpecies, options) : undefined,\n course: x.course ? getVertexId(x.course, options) : undefined,\n lockedTimes: x.lockedTimes ?.map(x => getVertexId(x, options)),\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n teachers: x.teachers ?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n participants: x.participants?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n groups: x.groups ?.map(x => ({ ...x, to: getVertexId(x.to, options), exclude: x.exclude?.map(y => getVertexId(y, options)) })),\n locations: x.locations ?.map(x => ({ ...x, locations: [getVertexId(x.locations[0], options)] as [string] })),\n inLocations: x.inLocations ?.map(x => x ? getVertexId(x, options) : null),\n threads: undefined\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<EventVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n\n"],"mappings":";;;;AAUA,sBACE,QACA,YACqB;AACrB,QAAO,OACJ,KAAI,MAAK;EACR,MAAMA,QAAsD;GAC1D,QAAgB,EAAE,SAAiB,YAAY,EAAE,QAAgB,
|
|
1
|
+
{"version":3,"file":"events.js","names":["edges: SerializedEdgesOnlyVertexExport<EventVertex>","x"],"sources":["../../../src/core/to/events.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { EventVertex } from '../interfaces/vertices/events';\n\n\n\n\nexport default (\n events: Types.Mixed.Event[],\n options: BaseOptions\n): OutTypes.event[] => {\n return events\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<EventVertex> = {\n period: x.period ? getVertexId(x.period, options) : undefined,\n // overlapGroup: x.overlapGroup ? getVertexId(x.overlapGroup, options) : undefined,\n overlapSpecies: x.overlapSpecies ? getVertexId(x.overlapSpecies, options) : undefined,\n course: x.course ? getVertexId(x.course, options) : undefined,\n lockedTimes: x.lockedTimes ?.map(x => getVertexId(x, options)),\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n teachers: x.teachers ?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n participants: x.participants?.map(x => ({ ...x, to: getVertexId(x.to, options) })),\n groups: x.groups ?.map(x => ({ ...x, to: getVertexId(x.to, options), exclude: x.exclude?.map(y => getVertexId(y, options)) })),\n locations: x.locations ?.map(x => ({ ...x, locations: [getVertexId(x.locations[0], options)] as [string] })),\n inLocations: x.inLocations ?.map(x => x ? getVertexId(x, options) : null),\n threads: undefined\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<EventVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n\n"],"mappings":";;;;AAUA,sBACE,QACA,YACqB;AACrB,QAAO,OACJ,KAAI,MAAK;EACR,MAAMA,QAAsD;GAC1D,QAAgB,EAAE,SAAiB,YAAY,EAAE,QAAgB,WAAW;GAE5E,gBAAgB,EAAE,iBAAiB,YAAY,EAAE,gBAAgB,WAAW;GAC5E,QAAgB,EAAE,SAAiB,YAAY,EAAE,QAAgB,WAAW;GAC5E,aAAgB,EAAE,aAAc,KAAI,QAAK,YAAYC,KAAG;GACxD,YAAgB,EAAE,YAAc,KAAI,QAAK,YAAYA,KAAG;GACxD,UAAgB,EAAE,UAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,IAAI,YAAYA,IAAE,IAAI;;GACxE,cAAgB,EAAE,cAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,IAAI,YAAYA,IAAE,IAAI;;GACxE,QAAgB,EAAE,QAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,IAAI,YAAYA,IAAE,IAAI;IAAU,SAASA,IAAE,SAAS,KAAI,MAAK,YAAY,GAAG;;GAC9H,WAAgB,EAAE,WAAc,KAAI,SAAM;IAAE,GAAGA;IAAG,WAAW,CAAC,YAAYA,IAAE,UAAU,IAAI;;GAC1F,aAAgB,EAAE,aAAc,KAAI,QAAKA,MAAI,YAAYA,KAAG,WAAW;GACvE,SAAgB;;EAElB,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -17,8 +17,9 @@ var exceptions_default = (exceptions, options) => {
|
|
|
17
17
|
exceptions: x.exceptions?.map((x$1) => getVertexId(x$1, options)),
|
|
18
18
|
parentExceptions: x.parentExceptions?.map((x$1) => getVertexId(x$1, options))
|
|
19
19
|
};
|
|
20
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
20
21
|
return {
|
|
21
|
-
...
|
|
22
|
+
...nonEdges,
|
|
22
23
|
...edges
|
|
23
24
|
};
|
|
24
25
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exceptions.js","names":["edges: SerializedEdgesOnlyVertexExport<ExceptionVertex>","x"],"sources":["../../../src/core/to/exceptions.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { ExceptionVertex } from '../interfaces/vertices/exceptions';\nimport { omit } from 'lodash-es';\n\n\nexport default (\n exceptions: Types.Mixed.Exception[],\n options: BaseOptions\n): OutTypes.exception[] => {\n return exceptions\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<ExceptionVertex> = {\n exception: x.exception\n ? {\n ...omit(x.exception, 'to'),\n ...x.exception.to && { to: getVertexId(x.exception.to, options) }\n }\n : undefined,\n sources: x.sources ?.map(x => ({ toModel: x.toModel, to: getVertexId(x.to, options) })),\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n parentExceptions: x.parentExceptions?.map(x => getVertexId(x, options)),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<ExceptionVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;;AASA,0BACE,YACA,YACyB;AACzB,QAAO,WACJ,KAAI,MAAK;EACR,MAAMA,QAA0D;GAC9D,WAAW,EAAE,YACT;IACA,GAAG,KAAK,EAAE,WAAW
|
|
1
|
+
{"version":3,"file":"exceptions.js","names":["edges: SerializedEdgesOnlyVertexExport<ExceptionVertex>","x"],"sources":["../../../src/core/to/exceptions.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { ExceptionVertex } from '../interfaces/vertices/exceptions';\nimport { omit } from 'lodash-es';\n\n\nexport default (\n exceptions: Types.Mixed.Exception[],\n options: BaseOptions\n): OutTypes.exception[] => {\n return exceptions\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<ExceptionVertex> = {\n exception: x.exception\n ? {\n ...omit(x.exception, 'to'),\n ...x.exception.to && { to: getVertexId(x.exception.to, options) }\n }\n : undefined,\n sources: x.sources ?.map(x => ({ toModel: x.toModel, to: getVertexId(x.to, options) })),\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n parentExceptions: x.parentExceptions?.map(x => getVertexId(x, options)),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<ExceptionVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;;AASA,0BACE,YACA,YACyB;AACzB,QAAO,WACJ,KAAI,MAAK;EACR,MAAMA,QAA0D;GAC9D,WAAW,EAAE,YACT;IACA,GAAG,KAAK,EAAE,WAAW;IACrB,GAAG,EAAE,UAAU,MAAM,EAAE,IAAI,YAAY,EAAE,UAAU,IAAI;OAEvD;GACJ,SAAkB,EAAE,SAAkB,KAAI,SAAM;IAAE,SAASC,IAAE;IAAS,IAAI,YAAYA,IAAE,IAAI;;GAC5F,YAAkB,EAAE,YAAkB,KAAI,QAAK,YAAYA,KAAG;GAC9D,kBAAkB,EAAE,kBAAkB,KAAI,QAAK,YAAYA,KAAG;;EAEhE,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
package/dist/core/to/groups.js
CHANGED
|
@@ -13,8 +13,9 @@ var groups_default = (groups, options) => {
|
|
|
13
13
|
parentGroups: x.parentGroups?.map((x$1) => getVertexId(x$1, options)),
|
|
14
14
|
subGroups: x.subGroups?.map((x$1) => getVertexId(x$1, options))
|
|
15
15
|
};
|
|
16
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
16
17
|
return {
|
|
17
|
-
...
|
|
18
|
+
...nonEdges,
|
|
18
19
|
...edges
|
|
19
20
|
};
|
|
20
21
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"groups.js","names":["edges: SerializedEdgesOnlyVertexExport<GroupVertex>","x"],"sources":["../../../src/core/to/groups.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { GroupVertex } from '../interfaces/vertices/groups';\n\nexport default (\n groups: Types.Mixed.Group[],\n options: BaseOptions\n): OutTypes.group[] => {\n return groups\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<GroupVertex> = {\n rootInterval: x.rootInterval ? getVertexId(x.rootInterval, options) : undefined,\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n lockedTimes: x.lockedTimes ?.map(x => getVertexId(x, options)),\n lunch: x.lunch ?.map(x => getVertexId(x, options)),\n members: x.members ?.map(x => getVertexId(x, options)),\n parentGroups: x.parentGroups?.map(x => getVertexId(x, options)),\n subGroups: x.subGroups ?.map(x => getVertexId(x, options)),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<GroupVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,sBACE,QACA,YACqB;AACrB,QAAO,OACJ,KAAI,MAAK;EACR,MAAMA,QAAsD;GAC1D,cAAc,EAAE,eAAe,YAAY,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"groups.js","names":["edges: SerializedEdgesOnlyVertexExport<GroupVertex>","x"],"sources":["../../../src/core/to/groups.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { GroupVertex } from '../interfaces/vertices/groups';\n\nexport default (\n groups: Types.Mixed.Group[],\n options: BaseOptions\n): OutTypes.group[] => {\n return groups\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<GroupVertex> = {\n rootInterval: x.rootInterval ? getVertexId(x.rootInterval, options) : undefined,\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n lockedTimes: x.lockedTimes ?.map(x => getVertexId(x, options)),\n lunch: x.lunch ?.map(x => getVertexId(x, options)),\n members: x.members ?.map(x => getVertexId(x, options)),\n parentGroups: x.parentGroups?.map(x => getVertexId(x, options)),\n subGroups: x.subGroups ?.map(x => getVertexId(x, options)),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<GroupVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,sBACE,QACA,YACqB;AACrB,QAAO,OACJ,KAAI,MAAK;EACR,MAAMA,QAAsD;GAC1D,cAAc,EAAE,eAAe,YAAY,EAAE,cAAc,WAAW;GACtE,YAAc,EAAE,YAAc,KAAI,QAAK,YAAYC,KAAG;GACtD,aAAc,EAAE,aAAc,KAAI,QAAK,YAAYA,KAAG;GACtD,OAAc,EAAE,OAAc,KAAI,QAAK,YAAYA,KAAG;GACtD,SAAc,EAAE,SAAc,KAAI,QAAK,YAAYA,KAAG;GACtD,cAAc,EAAE,cAAc,KAAI,QAAK,YAAYA,KAAG;GACtD,WAAc,EAAE,WAAc,KAAI,QAAK,YAAYA,KAAG;;EAExD,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -9,8 +9,9 @@ var locations_default = (locations, options) => {
|
|
|
9
9
|
lockedTimes: x.lockedTimes?.map((x$1) => getVertexId(x$1, options)),
|
|
10
10
|
lunch: x.lunch?.map((x$1) => getVertexId(x$1, options))
|
|
11
11
|
};
|
|
12
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
12
13
|
return {
|
|
13
|
-
...
|
|
14
|
+
...nonEdges,
|
|
14
15
|
...edges
|
|
15
16
|
};
|
|
16
17
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locations.js","names":["edges: SerializedEdgesOnlyVertexExport<LocationVertex>","x"],"sources":["../../../src/core/to/locations.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { LocationVertex } from '../interfaces/vertices/locations';\n\nexport default (\n locations: Types.Mixed.Location[],\n options: BaseOptions\n): OutTypes.location[] => {\n return locations\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<LocationVertex> = {\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n lockedTimes: x.lockedTimes?.map(x => getVertexId(x, options)),\n lunch: x.lunch ?.map(x => getVertexId(x, options)),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<LocationVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,yBACE,WACA,YACwB;AACxB,QAAO,UACJ,KAAI,MAAK;EACR,MAAMA,QAAyD;GAC7D,YAAa,EAAE,YAAa,KAAI,QAAK,YAAYC,KAAG
|
|
1
|
+
{"version":3,"file":"locations.js","names":["edges: SerializedEdgesOnlyVertexExport<LocationVertex>","x"],"sources":["../../../src/core/to/locations.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { LocationVertex } from '../interfaces/vertices/locations';\n\nexport default (\n locations: Types.Mixed.Location[],\n options: BaseOptions\n): OutTypes.location[] => {\n return locations\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<LocationVertex> = {\n exceptions: x.exceptions ?.map(x => getVertexId(x, options)),\n lockedTimes: x.lockedTimes?.map(x => getVertexId(x, options)),\n lunch: x.lunch ?.map(x => getVertexId(x, options)),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<LocationVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,yBACE,WACA,YACwB;AACxB,QAAO,UACJ,KAAI,MAAK;EACR,MAAMA,QAAyD;GAC7D,YAAa,EAAE,YAAa,KAAI,QAAK,YAAYC,KAAG;GACpD,aAAa,EAAE,aAAa,KAAI,QAAK,YAAYA,KAAG;GACpD,OAAa,EAAE,OAAa,KAAI,QAAK,YAAYA,KAAG;;EAEtD,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -8,8 +8,9 @@ var locked_times_default = (lockedTimes, options) => {
|
|
|
8
8
|
toModel: x$1.toModel,
|
|
9
9
|
to: getVertexId(x$1.to, options)
|
|
10
10
|
})) };
|
|
11
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
11
12
|
return {
|
|
12
|
-
...
|
|
13
|
+
...nonEdges,
|
|
13
14
|
...edges
|
|
14
15
|
};
|
|
15
16
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locked-times.js","names":["edges: SerializedEdgesOnlyVertexExport<LockedTimeVertex>","x"],"sources":["../../../src/core/to/locked-times.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { LockedTimeVertex } from '../interfaces/vertices/locked-times';\n\nexport default (\n lockedTimes: Types.Mixed.LockedTime[],\n options: BaseOptions\n): OutTypes.lockedTime[] => {\n return lockedTimes\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<LockedTimeVertex> = {\n coalesced: x.coalesced?.map(x => ({ toModel: x.toModel, to: getVertexId(x.to, options) })),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<LockedTimeVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,4BACE,aACA,YAC0B;AAC1B,QAAO,YACJ,KAAI,MAAK;EACR,MAAMA,QAA2D,EAC/D,WAAW,EAAE,WAAW,KAAI,SAAM;GAAE,SAASC,IAAE;GAAS,IAAI,YAAYA,IAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"locked-times.js","names":["edges: SerializedEdgesOnlyVertexExport<LockedTimeVertex>","x"],"sources":["../../../src/core/to/locked-times.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { LockedTimeVertex } from '../interfaces/vertices/locked-times';\n\nexport default (\n lockedTimes: Types.Mixed.LockedTime[],\n options: BaseOptions\n): OutTypes.lockedTime[] => {\n return lockedTimes\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<LockedTimeVertex> = {\n coalesced: x.coalesced?.map(x => ({ toModel: x.toModel, to: getVertexId(x.to, options) })),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<LockedTimeVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,4BACE,aACA,YAC0B;AAC1B,QAAO,YACJ,KAAI,MAAK;EACR,MAAMA,QAA2D,EAC/D,WAAW,EAAE,WAAW,KAAI,SAAM;GAAE,SAASC,IAAE;GAAS,IAAI,YAAYA,IAAE,IAAI;;EAEhF,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -15,8 +15,9 @@ var overlap_groups_default = (overlapGroups, options) => {
|
|
|
15
15
|
to: getVertexId(x$1.to, options)
|
|
16
16
|
}))
|
|
17
17
|
};
|
|
18
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
18
19
|
return {
|
|
19
|
-
...
|
|
20
|
+
...nonEdges,
|
|
20
21
|
...edges
|
|
21
22
|
};
|
|
22
23
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlap-groups.js","names":["edges: SerializedEdgesOnlyVertexExport<OverlapGroupVertex>","x"],"sources":["../../../src/core/to/overlap-groups.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { OverlapGroupVertex } from '../interfaces/vertices/overlap-groups';\n\nexport default (\n overlapGroups: Types.Mixed.OverlapGroup[],\n options: BaseOptions\n): OutTypes.overlapGroup[] => {\n return overlapGroups\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<OverlapGroupVertex> = {\n coalesced: x.coalesced?.map(x => ({ toModel: x.toModel, to: getVertexId(x.to, options) })),\n species: x.species ?.map(x => ({ toModel: x.toModel, id: x.id, to: getVertexId(x.to, options) })),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<OverlapGroupVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,8BACE,eACA,YAC4B;AAC5B,QAAO,cACJ,KAAI,MAAK;EACR,MAAMA,QAA6D;GACjE,WAAW,EAAE,WAAW,KAAI,SAAM;IAAE,SAASC,IAAE;IAAmB,IAAI,YAAYA,IAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"overlap-groups.js","names":["edges: SerializedEdgesOnlyVertexExport<OverlapGroupVertex>","x"],"sources":["../../../src/core/to/overlap-groups.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { OverlapGroupVertex } from '../interfaces/vertices/overlap-groups';\n\nexport default (\n overlapGroups: Types.Mixed.OverlapGroup[],\n options: BaseOptions\n): OutTypes.overlapGroup[] => {\n return overlapGroups\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<OverlapGroupVertex> = {\n coalesced: x.coalesced?.map(x => ({ toModel: x.toModel, to: getVertexId(x.to, options) })),\n species: x.species ?.map(x => ({ toModel: x.toModel, id: x.id, to: getVertexId(x.to, options) })),\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<OverlapGroupVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,8BACE,eACA,YAC4B;AAC5B,QAAO,cACJ,KAAI,MAAK;EACR,MAAMA,QAA6D;GACjE,WAAW,EAAE,WAAW,KAAI,SAAM;IAAE,SAASC,IAAE;IAAmB,IAAI,YAAYA,IAAE,IAAI;;GACxF,SAAW,EAAE,SAAW,KAAI,SAAM;IAAE,SAASA,IAAE;IAAS,IAAIA,IAAE;IAAI,IAAI,YAAYA,IAAE,IAAI;;;EAE1F,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
package/dist/core/to/periods.js
CHANGED
|
@@ -4,8 +4,9 @@ import { omitEdgesAndInternalProperties } from "./util.js";
|
|
|
4
4
|
var periods_default = (periods, options) => {
|
|
5
5
|
return periods.map((x) => {
|
|
6
6
|
const edges = {};
|
|
7
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
7
8
|
return {
|
|
8
|
-
...
|
|
9
|
+
...nonEdges,
|
|
9
10
|
...edges
|
|
10
11
|
};
|
|
11
12
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"periods.js","names":["edges: SerializedEdgesOnlyVertexExport<PeriodVertex>"],"sources":["../../../src/core/to/periods.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { PeriodVertex } from '../interfaces/vertices/periods';\n\nexport default (\n periods: Types.Mixed.Period[],\n options: BaseOptions\n): OutTypes.period[] => {\n return periods\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<PeriodVertex> = {\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<PeriodVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;AAMA,uBACE,SACA,YACsB;AACtB,QAAO,QACJ,KAAI,MAAK;EACR,MAAMA,QAAuD
|
|
1
|
+
{"version":3,"file":"periods.js","names":["edges: SerializedEdgesOnlyVertexExport<PeriodVertex>"],"sources":["../../../src/core/to/periods.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { PeriodVertex } from '../interfaces/vertices/periods';\n\nexport default (\n periods: Types.Mixed.Period[],\n options: BaseOptions\n): OutTypes.period[] => {\n return periods\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<PeriodVertex> = {\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<PeriodVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;AAMA,uBACE,SACA,YACsB;AACtB,QAAO,QACJ,KAAI,MAAK;EACR,MAAMA,QAAuD;EAE7D,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
package/dist/core/to/persons.js
CHANGED
|
@@ -5,8 +5,9 @@ import { omitEdgesAndInternalProperties } from "./util.js";
|
|
|
5
5
|
var persons_default = (persons, options) => {
|
|
6
6
|
return persons.map((x) => {
|
|
7
7
|
const edges = { group: x.group ? getVertexId(x.group, options) : void 0 };
|
|
8
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
8
9
|
return {
|
|
9
|
-
...
|
|
10
|
+
...nonEdges,
|
|
10
11
|
...edges
|
|
11
12
|
};
|
|
12
13
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persons.js","names":["edges: SerializedEdgesOnlyVertexExport<PersonVertex>"],"sources":["../../../src/core/to/persons.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { PersonVertex } from '../interfaces/vertices/persons';\n\nexport default (\n persons: Types.Mixed.Person[],\n options: BaseOptions\n): OutTypes.person[] => {\n return persons\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<PersonVertex> = {\n group: x.group ? getVertexId(x.group, options) : undefined,\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<PersonVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,uBACE,SACA,YACsB;AACtB,QAAO,QACJ,KAAI,MAAK;EACR,MAAMA,QAAuD,EAC3D,OAAO,EAAE,QAAQ,YAAY,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"persons.js","names":["edges: SerializedEdgesOnlyVertexExport<PersonVertex>"],"sources":["../../../src/core/to/persons.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { getVertexId } from '../util';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { PersonVertex } from '../interfaces/vertices/persons';\n\nexport default (\n persons: Types.Mixed.Person[],\n options: BaseOptions\n): OutTypes.person[] => {\n return persons\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<PersonVertex> = {\n group: x.group ? getVertexId(x.group, options) : undefined,\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<PersonVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;;AAOA,uBACE,SACA,YACsB;AACtB,QAAO,QACJ,KAAI,MAAK;EACR,MAAMA,QAAuD,EAC3D,OAAO,EAAE,QAAQ,YAAY,EAAE,OAAO,WAAW;EAEnD,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -4,8 +4,9 @@ import { omitEdgesAndInternalProperties } from "./util.js";
|
|
|
4
4
|
var root_intervals_default = (rootIntervals, options) => {
|
|
5
5
|
return rootIntervals.map((x) => {
|
|
6
6
|
const edges = {};
|
|
7
|
+
const nonEdges = omitEdgesAndInternalProperties(x, edges);
|
|
7
8
|
return {
|
|
8
|
-
...
|
|
9
|
+
...nonEdges,
|
|
9
10
|
...edges
|
|
10
11
|
};
|
|
11
12
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"root-intervals.js","names":["edges: SerializedEdgesOnlyVertexExport<RootIntervalVertex>"],"sources":["../../../src/core/to/root-intervals.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { RootIntervalVertex } from '../interfaces/vertices/root-intervals';\n\nexport default (\n rootIntervals: Types.Mixed.RootInterval[],\n options: BaseOptions\n): OutTypes.rootInterval[] => {\n return rootIntervals\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<RootIntervalVertex> = {\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<RootIntervalVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;AAMA,8BACE,eACA,YAC4B;AAC5B,QAAO,cACJ,KAAI,MAAK;EACR,MAAMA,QAA6D
|
|
1
|
+
{"version":3,"file":"root-intervals.js","names":["edges: SerializedEdgesOnlyVertexExport<RootIntervalVertex>"],"sources":["../../../src/core/to/root-intervals.ts"],"sourcesContent":["import type { Types } from '../types';\nimport type { OutTypes } from './schedules';\nimport { omitEdgesAndInternalProperties, type SerializedEdgesOnlyVertexExport, type SerializedEdgesShape } from './util';\nimport type { BaseOptions } from '../../common/types';\nimport type { RootIntervalVertex } from '../interfaces/vertices/root-intervals';\n\nexport default (\n rootIntervals: Types.Mixed.RootInterval[],\n options: BaseOptions\n): OutTypes.rootInterval[] => {\n return rootIntervals\n .map(x => {\n const edges: SerializedEdgesOnlyVertexExport<RootIntervalVertex> = {\n } satisfies SerializedEdgesShape<SerializedEdgesOnlyVertexExport<RootIntervalVertex>>;\n const nonEdges = omitEdgesAndInternalProperties(x, edges);\n\n return { ...nonEdges, ...edges };\n });\n};\n"],"mappings":";;;AAMA,8BACE,eACA,YAC4B;AAC5B,QAAO,cACJ,KAAI,MAAK;EACR,MAAMA,QAA6D;EAEnE,MAAM,WAAW,+BAA+B,GAAG;AAEnD,SAAO;GAAE,GAAG;GAAU,GAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schedules.js","names":["options: BaseOptions","_division","_settings","_exceptions","_periods","_locations","_teachers","_groups","_persons","_courses","_events","_lockedTimes","_overlapGroups","_rootIntervals","_syllabuses","_configurations"],"sources":["../../../src/core/to/schedules.ts"],"sourcesContent":["import type { CoreTypes } from '../';\nimport _exceptions from './exceptions';\nimport _periods from './periods';\nimport _locations from './locations';\nimport _teachers from './teachers';\nimport _groups from './groups';\nimport _persons from './persons';\nimport _courses from './courses';\nimport _events from './events';\nimport _lockedTimes from './locked-times';\nimport _overlapGroups from './overlap-groups';\nimport _rootIntervals from './root-intervals';\nimport _settings from './settings';\nimport _division from './division';\nimport _syllabuses from './syllabuses';\nimport _configurations from './configurations';\nimport type { InternalIdKey } from '../types/common';\nimport type { InternalKeysOmitted } from './util';\nimport type { BaseOptions } from '../../common/types';\n\nexport namespace OutTypes {\n export type division = Omit<InternalKeysOmitted<CoreTypes.Serialized.Division>, InternalIdKey>;\n export type settings = InternalKeysOmitted<CoreTypes.Serialized.Settings>;\n export type configuration = InternalKeysOmitted<CoreTypes.Serialized.Configuration>;\n export type exception = InternalKeysOmitted<CoreTypes.Serialized.Exception>;\n export type period = InternalKeysOmitted<CoreTypes.Serialized.Period>;\n export type location = InternalKeysOmitted<CoreTypes.Serialized.Location>;\n export type teacher = InternalKeysOmitted<CoreTypes.Serialized.Teacher>;\n export type group = InternalKeysOmitted<CoreTypes.Serialized.Group>;\n export type person = InternalKeysOmitted<CoreTypes.Serialized.Person>;\n export type course = InternalKeysOmitted<CoreTypes.Serialized.Course>;\n export type event = InternalKeysOmitted<CoreTypes.Serialized.Event>;\n export type lockedTime = InternalKeysOmitted<CoreTypes.Serialized.LockedTime>;\n export type overlapGroup = InternalKeysOmitted<CoreTypes.Serialized.OverlapGroup>;\n export type rootInterval = InternalKeysOmitted<CoreTypes.Serialized.RootInterval>;\n export type syllabus = InternalKeysOmitted<CoreTypes.Serialized.Syllabus>;\n}\n\ntype Out = {\n division?: OutTypes.division;\n settings?: OutTypes.settings;\n exceptions?: OutTypes.exception[];\n periods?: OutTypes.period[];\n locations?: OutTypes.location[];\n teachers?: OutTypes.teacher[];\n groups?: OutTypes.group[];\n persons?: OutTypes.person[];\n courses?: OutTypes.course[];\n events?: OutTypes.event[];\n lockedTimes?: OutTypes.lockedTime[];\n overlapGroups?: OutTypes.overlapGroup[];\n rootIntervals?: OutTypes.rootInterval[];\n syllabuses?: OutTypes.syllabus[];\n configurations?: OutTypes.configuration[];\n\n meta: { structure: string };\n};\n\nexport default function (\n schedule: Partial<CoreTypes.Mixed.Schedule>\n): Out {\n const options: BaseOptions = {};\n\n return {\n meta: { structure: 'RS/core-2.0.0' },\n ...schedule.divisions && { division: _division (schedule.divisions, options) },\n ...schedule.settings && { settings: _settings (schedule.settings, options) },\n ...schedule.exceptions && { exceptions: _exceptions (schedule.exceptions, options) },\n ...schedule.periods && { periods: _periods (schedule.periods, options) },\n ...schedule.locations && { locations: _locations (schedule.locations, options) },\n ...schedule.teachers && { teachers: _teachers (schedule.teachers, options) },\n ...schedule.groups && { groups: _groups (schedule.groups, options) },\n ...schedule.persons && { persons: _persons (schedule.persons, options) },\n ...schedule.courses && { courses: _courses (schedule.courses, options) },\n ...schedule.events && { events: _events (schedule.events, options) },\n ...schedule.lockedTimes && { lockedTimes: _lockedTimes (schedule.lockedTimes, options) },\n ...schedule.overlapGroups && { overlapGroups: _overlapGroups (schedule.overlapGroups, options) },\n ...schedule.rootIntervals && { rootIntervals: _rootIntervals (schedule.rootIntervals, options) },\n ...schedule.syllabuses && { syllabuses: _syllabuses (schedule.syllabuses, options) },\n ...schedule.configurations && { configurations: _configurations(schedule.configurations, options) },\n };\n}"],"mappings":";;;;;;;;;;;;;;;;;AA0DA,2BACE,UACK;CACL,MAAMA,UAAuB
|
|
1
|
+
{"version":3,"file":"schedules.js","names":["options: BaseOptions","_division","_settings","_exceptions","_periods","_locations","_teachers","_groups","_persons","_courses","_events","_lockedTimes","_overlapGroups","_rootIntervals","_syllabuses","_configurations"],"sources":["../../../src/core/to/schedules.ts"],"sourcesContent":["import type { CoreTypes } from '../';\nimport _exceptions from './exceptions';\nimport _periods from './periods';\nimport _locations from './locations';\nimport _teachers from './teachers';\nimport _groups from './groups';\nimport _persons from './persons';\nimport _courses from './courses';\nimport _events from './events';\nimport _lockedTimes from './locked-times';\nimport _overlapGroups from './overlap-groups';\nimport _rootIntervals from './root-intervals';\nimport _settings from './settings';\nimport _division from './division';\nimport _syllabuses from './syllabuses';\nimport _configurations from './configurations';\nimport type { InternalIdKey } from '../types/common';\nimport type { InternalKeysOmitted } from './util';\nimport type { BaseOptions } from '../../common/types';\n\nexport namespace OutTypes {\n export type division = Omit<InternalKeysOmitted<CoreTypes.Serialized.Division>, InternalIdKey>;\n export type settings = InternalKeysOmitted<CoreTypes.Serialized.Settings>;\n export type configuration = InternalKeysOmitted<CoreTypes.Serialized.Configuration>;\n export type exception = InternalKeysOmitted<CoreTypes.Serialized.Exception>;\n export type period = InternalKeysOmitted<CoreTypes.Serialized.Period>;\n export type location = InternalKeysOmitted<CoreTypes.Serialized.Location>;\n export type teacher = InternalKeysOmitted<CoreTypes.Serialized.Teacher>;\n export type group = InternalKeysOmitted<CoreTypes.Serialized.Group>;\n export type person = InternalKeysOmitted<CoreTypes.Serialized.Person>;\n export type course = InternalKeysOmitted<CoreTypes.Serialized.Course>;\n export type event = InternalKeysOmitted<CoreTypes.Serialized.Event>;\n export type lockedTime = InternalKeysOmitted<CoreTypes.Serialized.LockedTime>;\n export type overlapGroup = InternalKeysOmitted<CoreTypes.Serialized.OverlapGroup>;\n export type rootInterval = InternalKeysOmitted<CoreTypes.Serialized.RootInterval>;\n export type syllabus = InternalKeysOmitted<CoreTypes.Serialized.Syllabus>;\n}\n\ntype Out = {\n division?: OutTypes.division;\n settings?: OutTypes.settings;\n exceptions?: OutTypes.exception[];\n periods?: OutTypes.period[];\n locations?: OutTypes.location[];\n teachers?: OutTypes.teacher[];\n groups?: OutTypes.group[];\n persons?: OutTypes.person[];\n courses?: OutTypes.course[];\n events?: OutTypes.event[];\n lockedTimes?: OutTypes.lockedTime[];\n overlapGroups?: OutTypes.overlapGroup[];\n rootIntervals?: OutTypes.rootInterval[];\n syllabuses?: OutTypes.syllabus[];\n configurations?: OutTypes.configuration[];\n\n meta: { structure: string };\n};\n\nexport default function (\n schedule: Partial<CoreTypes.Mixed.Schedule>\n): Out {\n const options: BaseOptions = {};\n\n return {\n meta: { structure: 'RS/core-2.0.0' },\n ...schedule.divisions && { division: _division (schedule.divisions, options) },\n ...schedule.settings && { settings: _settings (schedule.settings, options) },\n ...schedule.exceptions && { exceptions: _exceptions (schedule.exceptions, options) },\n ...schedule.periods && { periods: _periods (schedule.periods, options) },\n ...schedule.locations && { locations: _locations (schedule.locations, options) },\n ...schedule.teachers && { teachers: _teachers (schedule.teachers, options) },\n ...schedule.groups && { groups: _groups (schedule.groups, options) },\n ...schedule.persons && { persons: _persons (schedule.persons, options) },\n ...schedule.courses && { courses: _courses (schedule.courses, options) },\n ...schedule.events && { events: _events (schedule.events, options) },\n ...schedule.lockedTimes && { lockedTimes: _lockedTimes (schedule.lockedTimes, options) },\n ...schedule.overlapGroups && { overlapGroups: _overlapGroups (schedule.overlapGroups, options) },\n ...schedule.rootIntervals && { rootIntervals: _rootIntervals (schedule.rootIntervals, options) },\n ...schedule.syllabuses && { syllabuses: _syllabuses (schedule.syllabuses, options) },\n ...schedule.configurations && { configurations: _configurations(schedule.configurations, options) },\n };\n}"],"mappings":";;;;;;;;;;;;;;;;;AA0DA,2BACE,UACK;CACL,MAAMA,UAAuB;AAE7B,QAAO;EACL,MAAM,EAAE,WAAW;EACnB,GAAG,SAAS,aAAkB,EAAE,UAAgBC,iBAAgB,SAAS,WAAgB;EACzF,GAAG,SAAS,YAAkB,EAAE,UAAgBC,iBAAgB,SAAS,UAAgB;EACzF,GAAG,SAAS,cAAkB,EAAE,YAAgBC,mBAAgB,SAAS,YAAgB;EACzF,GAAG,SAAS,WAAkB,EAAE,SAAgBC,gBAAgB,SAAS,SAAgB;EACzF,GAAG,SAAS,aAAkB,EAAE,WAAgBC,kBAAgB,SAAS,WAAgB;EACzF,GAAG,SAAS,YAAkB,EAAE,UAAgBC,iBAAgB,SAAS,UAAgB;EACzF,GAAG,SAAS,UAAkB,EAAE,QAAgBC,eAAgB,SAAS,QAAgB;EACzF,GAAG,SAAS,WAAkB,EAAE,SAAgBC,gBAAgB,SAAS,SAAgB;EACzF,GAAG,SAAS,WAAkB,EAAE,SAAgBC,gBAAgB,SAAS,SAAgB;EACzF,GAAG,SAAS,UAAkB,EAAE,QAAgBC,eAAgB,SAAS,QAAgB;EACzF,GAAG,SAAS,eAAkB,EAAE,aAAgBC,qBAAgB,SAAS,aAAgB;EACzF,GAAG,SAAS,iBAAkB,EAAE,eAAgBC,uBAAgB,SAAS,eAAgB;EACzF,GAAG,SAAS,iBAAkB,EAAE,eAAgBC,uBAAgB,SAAS,eAAgB;EACzF,GAAG,SAAS,cAAkB,EAAE,YAAgBC,mBAAgB,SAAS,YAAgB;EACzF,GAAG,SAAS,kBAAkB,EAAE,gBAAgBC,uBAAgB,SAAS,gBAAgB"}
|
package/dist/core/to/settings.js
CHANGED
|
@@ -7,8 +7,9 @@ var settings_default = (settings, options) => {
|
|
|
7
7
|
period: settings.period ? getVertexId(settings.period, options) : void 0,
|
|
8
8
|
defaultRootInterval: settings.defaultRootInterval ? getVertexId(settings.defaultRootInterval, options) : void 0
|
|
9
9
|
};
|
|
10
|
+
const nonEdges = omitEdgesAndInternalProperties(settings, edges);
|
|
10
11
|
return {
|
|
11
|
-
...
|
|
12
|
+
...nonEdges,
|
|
12
13
|
...edges
|
|
13
14
|
};
|
|
14
15
|
};
|