@tellescope/schema 0.0.7 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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 } from "@tellescope/types-utilities";
3
+ import { EnduserSession, ConfiguredSession, JourneyState, UserSession } 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>>) => 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: ConfiguredSession | 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: ConfiguredSession | 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;
@@ -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":"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"}
package/lib/esm/schema.js CHANGED
@@ -9,107 +9,10 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- import "@tellescope/types";
13
- // import "@tellescope/types-server"
14
12
  import { booleanValidator, dateValidator, emailValidator, fieldsValidator, journeysValidator, journeyStateValidator, journeyStatesValidator, phoneValidator, nameValidator, nonNegNumberValidator, mongoIdValidator, mongoIdStringValidator, listOfMongoIdStringValidator, preferenceValidator, objectAnyFieldsValidator, stringValidator, stringValidator100, listOfStringsValidator,
15
13
  //listOfMongoIdValidator,
16
- emailEncodingValidator, numberToDateValidator, SMSMessageValidator, chatRoomTopicValidator, chatRoomTypeValidator, idStringToDateValidator, subdomainValidator, accountTypeValidator, messageTemplateTypeValidator, stringValidator250, stringValidator5000, listOfDisplayNameInfo, } from "@tellescope/validation";
14
+ emailEncodingValidator, numberToDateValidator, SMSMessageValidator, chatRoomTopicValidator, chatRoomTypeValidator, idStringToDateValidator, subdomainValidator, accountTypeValidator, messageTemplateTypeValidator, stringValidator250, stringValidator5000, listOfDisplayNameInfo, fileTypeValidator, fileSizeValidator, } from "@tellescope/validation";
17
15
  import { CREATOR_ONLY_ACCESS, DEFAULT_OPERATIONS, PLACEHOLDER_ID, } from "@tellescope/constants";
18
- // type RelationshipConstraint<T> = {
19
- // explanation: string; // human readable, for documentation purposes
20
- // evaluate: (v: T, dependencies: Indexable<Partial<DatabaseModel>>) => string | void;
21
- // }
22
- // type DependencyAccessConstraint <T> = { type: 'dependency', foreignModel: ModelName, foreignField: string, accessField: keyof T }
23
- // type AccessConstraint <T> = { type: 'creatorOnly' }
24
- // | { type: 'filter', field: string }
25
- // | DependencyAccessConstraint<T>
26
- // type UniqueArrayConstraint <T> = { array: keyof T, itemKey?: string }
27
- // type Constraint <T> = {
28
- // unique: (keyof T & string | UniqueArrayConstraint<T>)[];
29
- // globalUnique?: (keyof T)[];
30
- // relationship: RelationshipConstraint<Partial<T>>[];
31
- // access?: AccessConstraint<T>[];
32
- // }
33
- // type Initializer <T, R> = (a: T, s: ConfiguredSession) => R
34
- // type EndpointOptions = {
35
- // // parameters used for endpoint that aren't stored in the model
36
- // parameters?: { [index: string]: EscapeBuilder<any> },
37
- // }
38
- // type DependencyDeletionAction = 'delete' | 'unset' | 'setNull' | 'nop'
39
- // type DependecyRelationship = 'foreignKey' | 'value'
40
- // type Dependency <T=DatabaseRecord> = {
41
- // dependsOn: ModelName[], // list of => OR, multiple dependency records => AND
42
- // dependencyField: string,
43
- // relationship: DependecyRelationship,
44
- // onDependencyDelete: DependencyDeletionAction,
45
- // getDependentValues?: (t: T) => JSONType[], // for accessing the values of a Dependency
46
- // filterByDependency?: (foreignValue: JSONType, foreignModel?: DatabaseModel) => { // for filtering against a Dependency
47
- // field: string,
48
- // value: JSONType | 'any',
49
- // },
50
- // }
51
- // type ModelFieldInfo <T, R> = {
52
- // validator: EscapeBuilder<R>,
53
- // readonly?: boolean,
54
- // required?: boolean,
55
- // updatesDisabled?: boolean,
56
- // examples?: JSONType[],
57
- // initializer?: Initializer<Partial<T>, R>, // should include the required fields of T, not just partial
58
- // dependencies?: Dependency<Partial<T>>[],
59
- // }
60
- // export type ModelFields<T> = {
61
- // [K in keyof T]: ModelFieldInfo<T, T[K]>
62
- // }
63
- // type extractFields<Type> = Type extends ModelFields<infer X> ? X : never
64
- // type ArgumentInfo = {
65
- // description?: string;
66
- // }
67
- // type ActionInfo = {
68
- // name?: string,
69
- // description?: string,
70
- // notes?: string[],
71
- // warnings?: string[],
72
- // }
73
- // type CustomAction <P=any, R=any> = {
74
- // op: Operation | 'custom',
75
- // access: CRUD,
76
- // // parameters: InputValidation<P>,
77
- // parameters: ModelFields<P>,
78
- // returns: ModelFields<R>,
79
- // path?: string,
80
- // method?: HTTPMethod,
81
- // } & ActionInfo
82
- // type CustomActionsForModel = {
83
- // [K in ModelName]: { [index: string]: CustomAction }
84
- // }
85
- // type ReadFilter <T> = { [K in keyof T]?: { required: boolean } }
86
- // // m is the original model (or undefined, if create)
87
- // // allows for easier event handling based on specific updates (by comparing args to pre-update model)
88
- // type SideEffectHandler <T, O=any> = (args: Partial<T>[], m: (Partial<T> | undefined)[] | undefined, n: (Partial<T> & { _id: ObjectId })[], s: ConfiguredSession, o: O) => Promise<ErrorInfo[]>;
89
- // type SideEffect = {
90
- // name: string;
91
- // description: string;
92
- // }
93
- // export type Model<T, N extends ModelName> = {
94
- // info: {
95
- // name?: string,
96
- // description?: string,
97
- // sideEffects?: { [K in Operation]?: SideEffect[] }
98
- // },
99
- // fields: ModelFields<T>,
100
- // constraints: Constraint<T>,
101
- // defaultActions: { [K in Operation]?: ActionInfo },
102
- // customActions: CustomActionsForModel[N],
103
- // readFilter?: ReadFilter<T>,
104
- // options?: {
105
- // create?: EndpointOptions,
106
- // }
107
- // }
108
- // type extractModelType<Type> = Type extends Model<infer T, infer N> ? T : never
109
- // type DatabaseModelForName = ToServerModels<ModelForName>
110
- // type Schema = {
111
- // [N in keyof DatabaseModelForName]: Model<DatabaseModelForName[N], ModelName>
112
- // }
113
16
  var sideEffects = {
114
17
  trackJourneyEngagement: {
115
18
  name: "trackJourneyEngagement",
@@ -155,6 +58,83 @@ export var schema = {
155
58
  update: [sideEffects.trackJourneyEngagement],
156
59
  }
157
60
  },
61
+ constraints: {
62
+ unique: ['email', 'phone', 'externalId'],
63
+ relationship: [
64
+ {
65
+ explanation: 'One of email or phone is required',
66
+ evaluate: function (_a) {
67
+ var email = _a.email, phone = _a.phone;
68
+ if (!(email || phone))
69
+ return 'One of email or phone is required';
70
+ }
71
+ }
72
+ ],
73
+ },
74
+ defaultActions: DEFAULT_OPERATIONS,
75
+ enduserActions: { logout: {}, refresh_session: {} },
76
+ fields: __assign(__assign({}, BuiltInFields), { externalId: {
77
+ validator: stringValidator250,
78
+ examples: ['addfed3e-ddea-415b-b52b-df820c944dbb'],
79
+ }, email: {
80
+ validator: emailValidator,
81
+ examples: ['test@tellescope.com'],
82
+ }, emailConsent: {
83
+ validator: booleanValidator,
84
+ examples: BOOLEAN_EXAMPLES,
85
+ initializer: function (e) { return !!e.email; } // set by default on create when provided
86
+ }, phone: {
87
+ validator: phoneValidator,
88
+ examples: ['+14155555555'],
89
+ }, phoneConsent: {
90
+ validator: booleanValidator,
91
+ examples: BOOLEAN_EXAMPLES,
92
+ initializer: function (e) { return !!e.phone; } // set by default on create when provided
93
+ }, hashedPassword: {
94
+ validator: stringValidator100,
95
+ readonly: true,
96
+ }, fname: {
97
+ validator: nameValidator,
98
+ }, lname: {
99
+ validator: nameValidator,
100
+ }, journeys: {
101
+ validator: journeysValidator,
102
+ dependencies: [
103
+ {
104
+ dependsOn: ['journeys'],
105
+ dependencyField: '_id',
106
+ relationship: 'foreignKey',
107
+ onDependencyDelete: 'unset',
108
+ getDependentValues: function (t) { var _a; return Object.keys((_a = t.journeys) !== null && _a !== void 0 ? _a : {}); },
109
+ filterByDependency: function (journeyId) { return ({
110
+ field: "journeys." + journeyId,
111
+ value: 'any',
112
+ }); },
113
+ },
114
+ ]
115
+ }, tags: {
116
+ validator: listOfStringsValidator,
117
+ }, fields: {
118
+ validator: fieldsValidator,
119
+ }, preference: {
120
+ validator: preferenceValidator,
121
+ }, assignedTo: {
122
+ validator: mongoIdStringValidator,
123
+ }, unread: {
124
+ validator: booleanValidator,
125
+ }, lastCommunication: {
126
+ validator: dateValidator,
127
+ }, avatar: {
128
+ validator: stringValidator100,
129
+ dependencies: [
130
+ {
131
+ dependsOn: ['files'],
132
+ dependencyField: 'secureName',
133
+ relationship: 'foreignKey',
134
+ onDependencyDelete: 'unset',
135
+ },
136
+ ]
137
+ } }),
158
138
  customActions: {
159
139
  set_password: {
160
140
  op: "custom", access: 'update', method: "post",
@@ -179,7 +159,7 @@ export var schema = {
179
159
  returns: {
180
160
  isAuthenticated: { validator: booleanValidator, required: true },
181
161
  enduser: { validator: 'enduser' },
182
- } // add enduser eventually, when validator defined
162
+ } // todo: add enduser eventually, when validator defined
183
163
  },
184
164
  refresh_session: {
185
165
  op: "custom", access: 'update', method: "post",
@@ -191,7 +171,7 @@ export var schema = {
191
171
  returns: {
192
172
  authToken: { validator: stringValidator, required: true },
193
173
  enduser: { validator: 'enduser' },
194
- } // add enduser eventually, when validator defined
174
+ } // todo: add enduser eventually, when validator defined
195
175
  },
196
176
  logout: {
197
177
  op: "custom", access: 'update', method: "post",
@@ -202,7 +182,6 @@ export var schema = {
202
182
  returns: {},
203
183
  },
204
184
  },
205
- enduserActions: { logout: {}, refresh_session: {} },
206
185
  publicActions: {
207
186
  login: {
208
187
  op: "custom", access: 'read', method: "post",
@@ -219,69 +198,6 @@ export var schema = {
219
198
  returns: { authToken: { validator: stringValidator5000 } },
220
199
  },
221
200
  },
222
- fields: __assign(__assign({}, BuiltInFields), { email: {
223
- validator: emailValidator,
224
- examples: ['test@tellescope.com'],
225
- }, emailConsent: {
226
- validator: booleanValidator,
227
- examples: BOOLEAN_EXAMPLES,
228
- initializer: function (e) { return !!e.email; } // set by default on create when provided
229
- }, phone: {
230
- validator: phoneValidator,
231
- examples: ['+14155555555'],
232
- }, phoneConsent: {
233
- validator: booleanValidator,
234
- examples: BOOLEAN_EXAMPLES,
235
- initializer: function (e) { return !!e.phone; } // set by default on create when provided
236
- }, hashedPassword: {
237
- validator: stringValidator100,
238
- readonly: true,
239
- }, fname: {
240
- validator: nameValidator,
241
- }, lname: {
242
- validator: nameValidator,
243
- }, journeys: {
244
- validator: journeysValidator,
245
- dependencies: [
246
- {
247
- dependsOn: ['journeys'],
248
- dependencyField: '_id',
249
- relationship: 'foreignKey',
250
- onDependencyDelete: 'unset',
251
- getDependentValues: function (t) { var _a; return Object.keys((_a = t.journeys) !== null && _a !== void 0 ? _a : {}); },
252
- filterByDependency: function (journeyId) { return ({
253
- field: "journeys." + journeyId,
254
- value: 'any',
255
- }); },
256
- },
257
- ]
258
- }, tags: {
259
- validator: listOfStringsValidator,
260
- }, fields: {
261
- validator: fieldsValidator,
262
- }, preference: {
263
- validator: preferenceValidator,
264
- }, assignedTo: {
265
- validator: mongoIdStringValidator,
266
- }, unread: {
267
- validator: booleanValidator,
268
- }, lastCommunication: {
269
- validator: dateValidator,
270
- } }),
271
- constraints: {
272
- unique: ['email', 'phone'],
273
- relationship: [
274
- {
275
- explanation: 'One of email or phone is required',
276
- evaluate: function (_a) {
277
- var email = _a.email, phone = _a.phone;
278
- if (!(email || phone))
279
- return 'One of email or phone is required';
280
- }
281
- }
282
- ],
283
- },
284
- defaultActions: DEFAULT_OPERATIONS,
285
201
  },
286
202
  api_keys: {
287
203
  info: {},
@@ -470,7 +386,7 @@ export var schema = {
470
386
  validator: mongoIdStringValidator,
471
387
  examples: [PLACEHOLDER_ID],
472
388
  readonly: true,
473
- initializer: function (a, s) { return s.userId; },
389
+ initializer: function (a, s) { return s.id; },
474
390
  }, subject: {
475
391
  validator: stringValidator,
476
392
  required: true,
@@ -572,7 +488,7 @@ export var schema = {
572
488
  }, businessUserId: {
573
489
  validator: mongoIdStringValidator,
574
490
  readonly: true,
575
- initializer: function (a, s) { return s.userId; },
491
+ initializer: function (a, s) { return s.id; },
576
492
  dependencies: [{
577
493
  dependsOn: ['users'],
578
494
  dependencyField: '_id',
@@ -671,7 +587,7 @@ export var schema = {
671
587
  }, senderId: {
672
588
  validator: mongoIdStringValidator,
673
589
  readonly: true,
674
- initializer: function (a, s) { var _a; return (_a = s.userId) !== null && _a !== void 0 ? _a : s.enduserId; },
590
+ initializer: function (a, s) { var _a; return (_a = s.id) !== null && _a !== void 0 ? _a : s.id; },
675
591
  examples: [PLACEHOLDER_ID],
676
592
  dependencies: [{
677
593
  dependsOn: ['users', 'endusers'],
@@ -749,6 +665,16 @@ export var schema = {
749
665
  validator: accountTypeValidator,
750
666
  }, roles: {
751
667
  validator: listOfStringsValidator,
668
+ }, avatar: {
669
+ validator: stringValidator100,
670
+ dependencies: [
671
+ {
672
+ dependsOn: ['files'],
673
+ dependencyField: 'secureName',
674
+ relationship: 'foreignKey',
675
+ onDependencyDelete: 'unset',
676
+ },
677
+ ]
752
678
  } })
753
679
  },
754
680
  templates: {
@@ -775,6 +701,67 @@ export var schema = {
775
701
  validator: messageTemplateTypeValidator,
776
702
  initializer: function () { return 'enduser'; }
777
703
  } })
704
+ },
705
+ files: {
706
+ info: {},
707
+ constraints: { unique: [], relationship: [] },
708
+ defaultActions: { read: {}, readMany: {}, update: {} },
709
+ fields: __assign(__assign({}, BuiltInFields), { name: {
710
+ validator: stringValidator250,
711
+ required: true,
712
+ }, size: {
713
+ validator: fileSizeValidator,
714
+ required: true,
715
+ }, type: {
716
+ validator: fileTypeValidator,
717
+ required: true
718
+ }, secureName: {
719
+ validator: stringValidator250,
720
+ readonly: true,
721
+ } }),
722
+ enduserActions: { prepare_file_upload: {} },
723
+ customActions: {
724
+ prepare_file_upload: {
725
+ op: "custom", access: 'create', method: "post",
726
+ name: 'Prepare File Upload',
727
+ path: '/prepare-file-upload',
728
+ description: "Generates an upload link for a file, storing metadata as a File record.",
729
+ parameters: {
730
+ name: {
731
+ validator: stringValidator250,
732
+ required: true,
733
+ },
734
+ size: {
735
+ validator: fileSizeValidator,
736
+ required: true,
737
+ },
738
+ type: {
739
+ validator: fileTypeValidator,
740
+ required: true
741
+ },
742
+ },
743
+ returns: {
744
+ presignedUpload: {
745
+ validator: objectAnyFieldsValidator,
746
+ },
747
+ file: {
748
+ validator: 'file', // todo: add file validator
749
+ },
750
+ },
751
+ },
752
+ file_download_URL: {
753
+ op: "custom", access: 'read', method: "get",
754
+ name: 'Generate File Download',
755
+ path: '/file-download-link',
756
+ description: "Generates a temporary download link for a file.",
757
+ parameters: {
758
+ secureName: { validator: stringValidator250 },
759
+ },
760
+ returns: {
761
+ downloadURL: { validator: stringValidator250 },
762
+ },
763
+ },
764
+ },
778
765
  }
779
766
  };
780
767
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}