@tellescope/schema 0.0.7 → 0.0.11

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.
@@ -1,4 +1,126 @@
1
- import "@tellescope/types";
1
+ import { ServerModelForName, DatabaseModel, DatabaseRecord, Enduser, ObjectId, ModelName } from "@tellescope/types-server";
2
+ import { ErrorInfo, Indexable, Operation, JSONType, CRUD, HTTPMethod, UserIdentity } from "@tellescope/types-utilities";
3
+ import { EnduserSession, JourneyState, UserSession, AttendeeInfo, MeetingStatus } from "@tellescope/types-models";
4
+ import { EscapeBuilder } from "@tellescope/validation";
5
+ export declare type RelationshipConstraint<T> = {
6
+ explanation: string;
7
+ evaluate: (v: T, dependencies: Indexable<Partial<DatabaseModel>>, session: UserSession | EnduserSession) => string | void;
8
+ };
9
+ export declare type DependencyAccessConstraint<T> = {
10
+ type: 'dependency';
11
+ foreignModel: ModelName;
12
+ foreignField: string;
13
+ accessField: keyof T;
14
+ };
15
+ export declare type AccessConstraint<T> = {
16
+ type: 'creatorOnly';
17
+ } | {
18
+ type: 'filter';
19
+ field: string;
20
+ } | DependencyAccessConstraint<T>;
21
+ export declare type UniqueArrayConstraint<T> = {
22
+ array: keyof T;
23
+ itemKey?: string;
24
+ };
25
+ export declare type Constraint<T> = {
26
+ unique: (keyof T & string | UniqueArrayConstraint<T>)[];
27
+ globalUnique?: (keyof T)[];
28
+ relationship: RelationshipConstraint<Partial<T>>[];
29
+ access?: AccessConstraint<T>[];
30
+ };
31
+ export declare type Initializer<T, R> = (a: T, s: UserSession | EnduserSession) => R;
32
+ export declare type EndpointOptions = {
33
+ parameters?: {
34
+ [index: string]: EscapeBuilder<any>;
35
+ };
36
+ };
37
+ export declare type DependencyDeletionAction = 'delete' | 'unset' | 'setNull' | 'nop';
38
+ export declare type DependecyRelationship = 'foreignKey' | 'value';
39
+ export declare type Dependency<T = DatabaseRecord> = {
40
+ dependsOn: ModelName[];
41
+ dependencyField: string;
42
+ relationship: DependecyRelationship;
43
+ onDependencyDelete: DependencyDeletionAction;
44
+ getDependentValues?: (t: T) => JSONType[];
45
+ filterByDependency?: (foreignValue: JSONType, foreignModel?: DatabaseModel) => {
46
+ field: string;
47
+ value: JSONType | 'any';
48
+ };
49
+ };
50
+ export declare type ModelFieldInfo<T, R> = {
51
+ validator: EscapeBuilder<R>;
52
+ readonly?: boolean;
53
+ required?: boolean;
54
+ updatesDisabled?: boolean;
55
+ examples?: JSONType[];
56
+ initializer?: Initializer<Partial<T>, R>;
57
+ dependencies?: Dependency<Partial<T>>[];
58
+ };
59
+ export declare type ModelFields<T> = {
60
+ [K in keyof T]: ModelFieldInfo<T, T[K]>;
61
+ };
62
+ export declare type extractFields<Type> = Type extends ModelFields<infer X> ? X : never;
63
+ declare type ActionInfo = {
64
+ name?: string;
65
+ description?: string;
66
+ notes?: string[];
67
+ warnings?: string[];
68
+ };
69
+ declare type CustomAction<P = any, R = any> = {
70
+ op: Operation | 'custom';
71
+ access: CRUD;
72
+ parameters: ModelFields<P>;
73
+ returns: R extends Array<any> ? ModelFieldInfo<any, R> : ModelFields<R>;
74
+ path?: string;
75
+ method?: HTTPMethod;
76
+ enduserOnly?: boolean;
77
+ } & ActionInfo;
78
+ export declare type EnduserAction = {
79
+ field?: string;
80
+ } & ActionInfo;
81
+ declare type CustomActionsForModel = {
82
+ [K in ModelName]: {
83
+ [index: string]: CustomAction;
84
+ };
85
+ };
86
+ declare type ReadFilter<T> = {
87
+ [K in keyof T]?: {
88
+ required: boolean;
89
+ };
90
+ };
91
+ export declare type SideEffectHandler<T, O = any> = (args: Partial<T>[], m: (Partial<T> | undefined)[] | undefined, n: (Partial<T> & {
92
+ _id: ObjectId;
93
+ })[], s: UserSession | EnduserSession, o: O) => Promise<ErrorInfo[]>;
94
+ declare type SideEffect = {
95
+ name: string;
96
+ description: string;
97
+ };
98
+ export declare type Model<T, N extends ModelName> = {
99
+ info: {
100
+ name?: string;
101
+ description?: string;
102
+ sideEffects?: {
103
+ [K in Operation]?: SideEffect[];
104
+ };
105
+ };
106
+ fields: ModelFields<T>;
107
+ constraints: Constraint<T>;
108
+ defaultActions: {
109
+ [k in Operation]?: ActionInfo;
110
+ };
111
+ enduserActions?: {
112
+ [index: string]: EnduserAction;
113
+ };
114
+ customActions: CustomActionsForModel[N];
115
+ readFilter?: ReadFilter<T>;
116
+ options?: {
117
+ create?: EndpointOptions;
118
+ };
119
+ };
120
+ export declare type extractModelType<Type> = Type extends Model<infer T, infer N> ? T : never;
121
+ export declare type Schema = {
122
+ [N in keyof ServerModelForName]: Model<ServerModelForName[N], ModelName>;
123
+ };
2
124
  declare const sideEffects: {
3
125
  trackJourneyEngagement: {
4
126
  name: string;
@@ -44,6 +166,21 @@ export declare type CustomActions = {
44
166
  key: string;
45
167
  }>;
46
168
  };
169
+ files: {
170
+ prepare_file_upload: CustomAction<{
171
+ name: string;
172
+ size: number;
173
+ type: string;
174
+ }, {
175
+ presignedUpload: object;
176
+ file: File;
177
+ }>;
178
+ file_download_URL: CustomAction<{
179
+ secureName: string;
180
+ }, {
181
+ downloadURL: string;
182
+ }>;
183
+ };
47
184
  journeys: {
48
185
  update_state: CustomAction<{
49
186
  updates: JourneyState;
@@ -83,6 +220,31 @@ export declare type CustomActions = {
83
220
  authToken: string;
84
221
  }>;
85
222
  };
223
+ meetings: {
224
+ start_meeting: CustomAction<{}, {
225
+ id: string;
226
+ meeting: object;
227
+ host: AttendeeInfo;
228
+ }>;
229
+ end_meeting: CustomAction<{
230
+ id: string;
231
+ }, {}>;
232
+ add_attendees_to_meeting: CustomAction<{
233
+ id: string;
234
+ attendees: UserIdentity[];
235
+ }, {}>;
236
+ my_meetings: CustomAction<{}, {
237
+ id: string;
238
+ updatedAt: string;
239
+ status: MeetingStatus;
240
+ }[]>;
241
+ attendee_info: CustomAction<{
242
+ id: string;
243
+ }, {
244
+ attendee: AttendeeInfo;
245
+ others: UserIdentity[];
246
+ }>;
247
+ };
86
248
  };
87
249
  export declare type PublicActions = {
88
250
  endusers: {
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,CAAA;AAgK1B,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;CAiBhB,CAAA;AACD,oBAAY,eAAe,GAAG,MAAM,OAAO,WAAW,CAAA;AAItD,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;CAiBlB,CAAA;AACD,oBAAY,eAAe,GAAG,OAAO,aAAa,CAAA;AAElD,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAA;SAAC,CAAC,CAAC;KACtD,CAAA;IACD,QAAQ,EAAE;QACR,YAAY,EAAE,YAAY,CAAC;YAAE,OAAO,EAAE,YAAY,CAAC;YAAC,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,EAAE,CAAC,CAAC;KACrF,CAAC;IACF,QAAQ,EAAE;QACR,YAAY,EAAE,YAAY,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,EAAE,EAAG,CAAC,CAAC;QAClE,gBAAgB,EAAE,YAAY,CAC5B;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,EACjC;YAAE,eAAe,EAAE,IAAI,CAAC;YAAC,OAAO,EAAE,OAAO,CAAA;SAAE,GAAG;YAAE,eAAe,EAAE,KAAK,CAAC;YAAC,OAAO,EAAE,IAAI,CAAA;SAAE,CACxF,CAAC;QACF,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,OAAO,EAAE,OAAO,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC3E,MAAM,EAAE,YAAY,CAAC,EAAG,EAAE,EAAG,CAAC,CAAC;KAChC,CAAC;IACF,KAAK,EAAE;QACL,aAAa,EAAE,YAAY,CAAC,EAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC,CAAC;QACjF,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,IAAI,EAAE,WAAW,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC7E,CAAA;CACF,CAAA;AAED,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,YAAY,CAAC;YAAE,EAAE,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,EAAE;YAAE,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC/G,CAAC;CACH,CAAA;AAED,oBAAY,QAAQ,GAAG,MAAM,GAAG;KAC7B,CAAC,IAAI,MAAM,aAAa,GAAG;QAC1B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KAChC;CACF,GAAG;KACD,CAAC,IAAI,MAAM,aAAa,GAAG;QAC1B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KAChC;CACF,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,QA8tBpB,CAAA"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,OAAO,EACP,QAAQ,EACR,SAAS,EACV,MAAM,0BAA0B,CAAA;AACjC,OAAO,EACL,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,UAAU,EAEV,YAAY,EACb,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,cAAc,EAEd,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,aAAa,EACd,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EACL,aAAa,EA0Cd,MAAM,wBAAwB,CAAA;AAQ/B,oBAAY,sBAAsB,CAAC,CAAC,IAAI;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,cAAc,KAAK,MAAM,GAAG,IAAI,CAAC;CAC3H,CAAA;AAED,oBAAY,0BAA0B,CAAE,CAAC,IAAI;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,YAAY,EAAE,SAAS,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC,CAAA;CAAG,CAAA;AAEzI,oBAAY,gBAAgB,CAAE,CAAC,IAAI;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GACjC,0BAA0B,CAAC,CAAC,CAAC,CAAA;AAEjC,oBAAY,qBAAqB,CAAE,CAAC,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAE5E,oBAAY,UAAU,CAAE,CAAC,IAAI;IAC3B,MAAM,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACxD,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;IAC3B,YAAY,EAAE,sBAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,MAAM,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;CAChC,CAAA;AAED,oBAAY,WAAW,CAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,GAAG,cAAc,KAAK,CAAC,CAAA;AAE7E,oBAAY,eAAe,GAAG;IAE5B,UAAU,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;KAAE,CAAC;CACtD,CAAA;AAED,oBAAY,wBAAwB,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,CAAA;AAC7E,oBAAY,qBAAqB,GAAG,YAAY,GAAG,OAAO,CAAA;AAE1D,oBAAY,UAAU,CAAE,CAAC,GAAC,cAAc,IAAI;IAC1C,SAAS,EAAE,SAAS,EAAE,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,qBAAqB,CAAC;IACpC,kBAAkB,EAAE,wBAAwB,CAAC;IAC7C,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC;IAC1C,kBAAkB,CAAC,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,aAAa,KAAK;QAC7E,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,QAAQ,GAAG,KAAK,CAAC;KACzB,CAAC;CACH,CAAA;AAED,oBAAY,cAAc,CAAE,CAAC,EAAE,CAAC,IAAI;IAClC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAG,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAG,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAG,QAAQ,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzC,YAAY,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;CACzC,CAAA;AAED,oBAAY,WAAW,CAAC,CAAC,IAAI;KAC1B,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;CACxC,CAAA;AACD,oBAAY,aAAa,CAAC,IAAI,IAAI,IAAI,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAM/E,aAAK,UAAU,GAAG;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB,CAAA;AAED,aAAK,YAAY,CAAE,CAAC,GAAC,GAAG,EAAE,CAAC,GAAC,GAAG,IAAI;IACjC,EAAE,EAAE,SAAS,GAAG,QAAQ,CAAC;IACzB,MAAM,EAAE,IAAI,CAAC;IAEb,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,UAAU,CAAA;AAEd,oBAAY,aAAa,GAAG;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,UAAU,CAAA;AAEd,aAAK,qBAAqB,GAAG;KAC1B,CAAC,IAAI,SAAS,GAAG;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,CAAA;KAAE;CACpD,CAAA;AAED,aAAK,UAAU,CAAE,CAAC,IAAI;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,OAAO,CAAA;KAAE;CAAE,CAAA;AAKhE,oBAAY,iBAAiB,CAAE,CAAC,EAAE,CAAC,GAAC,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,EAAE,QAAQ,CAAA;CAAE,CAAC,EAAE,EAAE,CAAC,EAAE,WAAW,GAAG,cAAc,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;AAEjN,aAAK,UAAU,GAAG;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB,CAAA;AAED,oBAAY,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,SAAS,IAAI;IAC1C,IAAI,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE;aAAG,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,UAAU,EAAE;SAAE,CAAA;KAClD,CAAC;IACF,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,cAAc,EAAE;SAAG,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,UAAU;KAAE,CAAC;IAClD,cAAc,CAAC,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,CAAA;KAAE,CAAC;IACpD,aAAa,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACxC,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,eAAe,CAAC;KAC1B,CAAA;CACF,CAAA;AACD,oBAAY,gBAAgB,CAAC,IAAI,IAAI,IAAI,SAAS,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAErF,oBAAY,MAAM,GAAG;KAClB,CAAC,IAAI,MAAM,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC;CACzE,CAAA;AAED,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;CAiBhB,CAAA;AACD,oBAAY,eAAe,GAAG,MAAM,OAAO,WAAW,CAAA;AAItD,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;CAiBlB,CAAA;AACD,oBAAY,eAAe,GAAG,OAAO,aAAa,CAAA;AAElD,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAA;SAAC,CAAC,CAAC;KACtD,CAAC;IACF,KAAK,EAAE;QACL,mBAAmB,EAAE,YAAY,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE;YAAE,eAAe,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,IAAI,CAAA;SAAE,CAAC,CAAC;QACzH,iBAAiB,EAAE,YAAY,CAAC;YAAE,UAAU,EAAE,MAAM,CAAA;SAAE,EAAE;YAAE,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAClF,CAAC;IACF,QAAQ,EAAE;QACR,YAAY,EAAE,YAAY,CAAC;YAAE,OAAO,EAAE,YAAY,CAAC;YAAC,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,EAAE,CAAC,CAAC;KACrF,CAAC;IACF,QAAQ,EAAE;QACR,YAAY,EAAE,YAAY,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,EAAE,EAAG,CAAC,CAAC;QAClE,gBAAgB,EAAE,YAAY,CAC5B;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,EACjC;YAAE,eAAe,EAAE,IAAI,CAAC;YAAC,OAAO,EAAE,OAAO,CAAA;SAAE,GAAG;YAAE,eAAe,EAAE,KAAK,CAAC;YAAC,OAAO,EAAE,IAAI,CAAA;SAAE,CACxF,CAAC;QACF,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,OAAO,EAAE,OAAO,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAC3E,MAAM,EAAE,YAAY,CAAC,EAAG,EAAE,EAAG,CAAC,CAAC;KAChC,CAAC;IACF,KAAK,EAAE;QACL,aAAa,EAAE,YAAY,CAAC,EAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,EAAE,EAAE,MAAM,CAAA;SAAE,EAAE,CAAC,CAAC;QACjF,eAAe,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,IAAI,EAAE,WAAW,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC7E,CAAC;IACF,QAAQ,EAAE;QACR,aAAa,EAAE,YAAY,CAAC,EAAG,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,YAAY,CAAA;SAAE,CAAC,CAAC;QACtF,WAAW,EAAE,YAAY,CAAC;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,EAAE,EAAG,CAAC,CAAC;QAC/C,wBAAwB,EAAE,YAAY,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,YAAY,EAAE,CAAA;SAAE,EAAE,EAAG,CAAC,CAAC;QACvF,WAAW,EAAE,YAAY,CAAC,EAAE,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,aAAa,CAAA;SAAE,EAAE,CAAC,CAAA;QACzF,aAAa,EAAE,YAAY,CAAC;YAAE,EAAE,EAAE,MAAM,CAAA;SAAE,EAAE;YAAE,QAAQ,EAAE,YAAY,CAAC;YAAC,MAAM,EAAE,YAAY,EAAE,CAAA;SAAE,CAAC,CAAC;KACjG,CAAC;CACH,CAAA;AAED,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,YAAY,CAAC;YAAE,EAAE,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE,EAAE;YAAE,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC/G,CAAC;CACH,CAAA;AAED,oBAAY,QAAQ,GAAG,MAAM,GAAG;KAC7B,CAAC,IAAI,MAAM,aAAa,GAAG;QAC1B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KAChC;CACF,GAAG;KACD,CAAC,IAAI,MAAM,aAAa,GAAG;QAC1B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,CAAA;KAChC;CACF,CAAA;AAED,eAAO,MAAM,MAAM,EAAE,QA28BpB,CAAA"}