@balena/pinejs 17.1.0-build-joshbwlng-tasks-e8a81b1d884e0039e67661a25a5cb81d46966640-1 → 17.1.0-build-model-based-typings-86a981c89f828217571c93fa010174529a5345f9-1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. package/.pinejs-cache.json +1 -1
  2. package/.versionbot/CHANGELOG.yml +220 -7
  3. package/CHANGELOG.md +65 -2
  4. package/out/config-loader/env.d.ts +0 -4
  5. package/out/config-loader/env.js +1 -5
  6. package/out/config-loader/env.js.map +1 -1
  7. package/out/data-server/sbvr-server.js +3 -2
  8. package/out/data-server/sbvr-server.js.map +1 -1
  9. package/out/database-layer/db.d.ts +0 -3
  10. package/out/database-layer/db.js +0 -17
  11. package/out/database-layer/db.js.map +1 -1
  12. package/out/migrator/migrations.d.ts +113 -0
  13. package/out/migrator/migrations.js +3 -0
  14. package/out/migrator/migrations.js.map +1 -0
  15. package/out/migrator/sync.d.ts +17 -0
  16. package/out/migrator/sync.js +39 -40
  17. package/out/migrator/sync.js.map +1 -1
  18. package/out/sbvr-api/dev.d.ts +41 -0
  19. package/out/sbvr-api/dev.js +3 -0
  20. package/out/sbvr-api/dev.js.map +1 -0
  21. package/out/sbvr-api/hooks.d.ts +26 -26
  22. package/out/sbvr-api/hooks.js.map +1 -1
  23. package/out/sbvr-api/permissions.d.ts +26 -2
  24. package/out/sbvr-api/permissions.js +39 -40
  25. package/out/sbvr-api/permissions.js.map +1 -1
  26. package/out/sbvr-api/sbvr-utils.d.ts +46 -6
  27. package/out/sbvr-api/sbvr-utils.js +44 -44
  28. package/out/sbvr-api/sbvr-utils.js.map +1 -1
  29. package/out/sbvr-api/user.d.ts +467 -0
  30. package/out/sbvr-api/user.js +3 -0
  31. package/out/sbvr-api/user.js.map +1 -0
  32. package/out/server-glue/module.d.ts +0 -1
  33. package/out/server-glue/module.js +1 -4
  34. package/out/server-glue/module.js.map +1 -1
  35. package/package.json +18 -19
  36. package/src/config-loader/env.ts +1 -6
  37. package/src/data-server/sbvr-server.js +3 -2
  38. package/src/database-layer/db.ts +0 -25
  39. package/src/migrator/migrations.ts +120 -0
  40. package/src/migrator/sync.ts +46 -41
  41. package/src/sbvr-api/dev.ts +44 -0
  42. package/src/sbvr-api/hooks.ts +21 -18
  43. package/src/sbvr-api/permissions.ts +50 -44
  44. package/src/sbvr-api/sbvr-utils.ts +90 -53
  45. package/src/sbvr-api/user.ts +421 -0
  46. package/src/server-glue/module.ts +0 -3
  47. package/out/tasks/common.d.ts +0 -4
  48. package/out/tasks/common.js +0 -13
  49. package/out/tasks/common.js.map +0 -1
  50. package/out/tasks/index.d.ts +0 -8
  51. package/out/tasks/index.js +0 -142
  52. package/out/tasks/index.js.map +0 -1
  53. package/out/tasks/tasks.sbvr +0 -60
  54. package/out/tasks/types.d.ts +0 -38
  55. package/out/tasks/types.js +0 -10
  56. package/out/tasks/types.js.map +0 -1
  57. package/out/tasks/worker.d.ts +0 -16
  58. package/out/tasks/worker.js +0 -228
  59. package/out/tasks/worker.js.map +0 -1
  60. package/src/tasks/common.ts +0 -14
  61. package/src/tasks/index.ts +0 -158
  62. package/src/tasks/tasks.sbvr +0 -60
  63. package/src/tasks/types.ts +0 -58
  64. package/src/tasks/worker.ts +0 -281
@@ -0,0 +1,467 @@
1
+ import type { Types } from '@balena/abstract-sql-to-typescript';
2
+ export interface Permission {
3
+ Read: {
4
+ created_at: Types['Date Time']['Read'];
5
+ modified_at: Types['Date Time']['Read'];
6
+ id: Types['Serial']['Read'];
7
+ name: Types['Text']['Read'];
8
+ is_of__role?: Array<RoleHasPermission['Read']>;
9
+ is_of__user?: Array<UserHasPermission['Read']>;
10
+ is_of__api_key?: Array<ApiKeyHasPermission['Read']>;
11
+ user__has__permission?: Array<UserHasPermission['Read']>;
12
+ user_permission?: Array<UserHasPermission['Read']>;
13
+ };
14
+ Write: {
15
+ created_at: Types['Date Time']['Write'];
16
+ modified_at: Types['Date Time']['Write'];
17
+ id: Types['Serial']['Write'];
18
+ name: Types['Text']['Write'];
19
+ };
20
+ }
21
+ export interface Role {
22
+ Read: {
23
+ created_at: Types['Date Time']['Read'];
24
+ modified_at: Types['Date Time']['Read'];
25
+ id: Types['Serial']['Read'];
26
+ name: Types['Text']['Read'];
27
+ role__has__permission?: Array<RoleHasPermission['Read']>;
28
+ user__has__role?: Array<UserHasRole['Read']>;
29
+ user_role?: Array<UserHasRole['Read']>;
30
+ is_of__user?: Array<UserHasRole['Read']>;
31
+ is_of__api_key?: Array<ApiKeyHasRole['Read']>;
32
+ };
33
+ Write: {
34
+ created_at: Types['Date Time']['Write'];
35
+ modified_at: Types['Date Time']['Write'];
36
+ id: Types['Serial']['Write'];
37
+ name: Types['Text']['Write'];
38
+ };
39
+ }
40
+ export interface RoleHasPermission {
41
+ Read: {
42
+ created_at: Types['Date Time']['Read'];
43
+ modified_at: Types['Date Time']['Read'];
44
+ role: {
45
+ __id: Role['Read']['id'];
46
+ } | [Role['Read']];
47
+ permission: {
48
+ __id: Permission['Read']['id'];
49
+ } | [Permission['Read']];
50
+ id: Types['Serial']['Read'];
51
+ is_of__role: {
52
+ __id: Role['Read']['id'];
53
+ } | [Role['Read']];
54
+ };
55
+ Write: {
56
+ created_at: Types['Date Time']['Write'];
57
+ modified_at: Types['Date Time']['Write'];
58
+ role: Role['Write']['id'];
59
+ permission: Permission['Write']['id'];
60
+ id: Types['Serial']['Write'];
61
+ };
62
+ }
63
+ export interface Actor {
64
+ Read: {
65
+ created_at: Types['Date Time']['Read'];
66
+ modified_at: Types['Date Time']['Read'];
67
+ id: Types['Serial']['Read'];
68
+ is_of__user?: Array<User['Read']>;
69
+ api_key?: Array<ApiKey['Read']>;
70
+ };
71
+ Write: {
72
+ created_at: Types['Date Time']['Write'];
73
+ modified_at: Types['Date Time']['Write'];
74
+ id: Types['Serial']['Write'];
75
+ };
76
+ }
77
+ export interface User {
78
+ Read: {
79
+ created_at: Types['Date Time']['Read'];
80
+ modified_at: Types['Date Time']['Read'];
81
+ id: Types['Serial']['Read'];
82
+ actor: {
83
+ __id: Actor['Read']['id'];
84
+ } | [Actor['Read']];
85
+ username: Types['Short Text']['Read'];
86
+ password: Types['Hashed']['Read'];
87
+ user__has__role?: Array<UserHasRole['Read']>;
88
+ user_role?: Array<UserHasRole['Read']>;
89
+ user__has__permission?: Array<UserHasPermission['Read']>;
90
+ user_permission?: Array<UserHasPermission['Read']>;
91
+ };
92
+ Write: {
93
+ created_at: Types['Date Time']['Write'];
94
+ modified_at: Types['Date Time']['Write'];
95
+ id: Types['Serial']['Write'];
96
+ actor: Actor['Write']['id'];
97
+ username: Types['Short Text']['Write'];
98
+ password: Types['Hashed']['Write'];
99
+ };
100
+ }
101
+ export interface UserHasRole {
102
+ Read: {
103
+ created_at: Types['Date Time']['Read'];
104
+ modified_at: Types['Date Time']['Read'];
105
+ user: {
106
+ __id: User['Read']['id'];
107
+ } | [User['Read']];
108
+ role: {
109
+ __id: Role['Read']['id'];
110
+ } | [Role['Read']];
111
+ id: Types['Serial']['Read'];
112
+ expiry_date: Types['Date Time']['Read'] | null;
113
+ is_of__user: {
114
+ __id: User['Read']['id'];
115
+ } | [User['Read']];
116
+ };
117
+ Write: {
118
+ created_at: Types['Date Time']['Write'];
119
+ modified_at: Types['Date Time']['Write'];
120
+ user: User['Write']['id'];
121
+ role: Role['Write']['id'];
122
+ id: Types['Serial']['Write'];
123
+ expiry_date: Types['Date Time']['Write'] | null;
124
+ };
125
+ }
126
+ export interface UserHasPermission {
127
+ Read: {
128
+ created_at: Types['Date Time']['Read'];
129
+ modified_at: Types['Date Time']['Read'];
130
+ user: {
131
+ __id: User['Read']['id'];
132
+ } | [User['Read']];
133
+ permission: {
134
+ __id: Permission['Read']['id'];
135
+ } | [Permission['Read']];
136
+ id: Types['Serial']['Read'];
137
+ expiry_date: Types['Date Time']['Read'] | null;
138
+ is_of__user: {
139
+ __id: User['Read']['id'];
140
+ } | [User['Read']];
141
+ };
142
+ Write: {
143
+ created_at: Types['Date Time']['Write'];
144
+ modified_at: Types['Date Time']['Write'];
145
+ user: User['Write']['id'];
146
+ permission: Permission['Write']['id'];
147
+ id: Types['Serial']['Write'];
148
+ expiry_date: Types['Date Time']['Write'] | null;
149
+ };
150
+ }
151
+ export interface ApiKey {
152
+ Read: {
153
+ created_at: Types['Date Time']['Read'];
154
+ modified_at: Types['Date Time']['Read'];
155
+ id: Types['Serial']['Read'];
156
+ key: Types['Short Text']['Read'];
157
+ expiry_date: Types['Date Time']['Read'] | null;
158
+ is_of__actor: {
159
+ __id: Actor['Read']['id'];
160
+ } | [Actor['Read']];
161
+ name: Types['Text']['Read'] | null;
162
+ description: Types['Text']['Read'] | null;
163
+ api_key__has__role?: Array<ApiKeyHasRole['Read']>;
164
+ api_key__has__permission?: Array<ApiKeyHasPermission['Read']>;
165
+ };
166
+ Write: {
167
+ created_at: Types['Date Time']['Write'];
168
+ modified_at: Types['Date Time']['Write'];
169
+ id: Types['Serial']['Write'];
170
+ key: Types['Short Text']['Write'];
171
+ expiry_date: Types['Date Time']['Write'] | null;
172
+ is_of__actor: Actor['Write']['id'];
173
+ name: Types['Text']['Write'] | null;
174
+ description: Types['Text']['Write'] | null;
175
+ };
176
+ }
177
+ export interface ApiKeyHasRole {
178
+ Read: {
179
+ created_at: Types['Date Time']['Read'];
180
+ modified_at: Types['Date Time']['Read'];
181
+ api_key: {
182
+ __id: ApiKey['Read']['id'];
183
+ } | [ApiKey['Read']];
184
+ role: {
185
+ __id: Role['Read']['id'];
186
+ } | [Role['Read']];
187
+ id: Types['Serial']['Read'];
188
+ is_of__api_key: {
189
+ __id: ApiKey['Read']['id'];
190
+ } | [ApiKey['Read']];
191
+ };
192
+ Write: {
193
+ created_at: Types['Date Time']['Write'];
194
+ modified_at: Types['Date Time']['Write'];
195
+ api_key: ApiKey['Write']['id'];
196
+ role: Role['Write']['id'];
197
+ id: Types['Serial']['Write'];
198
+ };
199
+ }
200
+ export interface ApiKeyHasPermission {
201
+ Read: {
202
+ created_at: Types['Date Time']['Read'];
203
+ modified_at: Types['Date Time']['Read'];
204
+ api_key: {
205
+ __id: ApiKey['Read']['id'];
206
+ } | [ApiKey['Read']];
207
+ permission: {
208
+ __id: Permission['Read']['id'];
209
+ } | [Permission['Read']];
210
+ id: Types['Serial']['Read'];
211
+ is_of__api_key: {
212
+ __id: ApiKey['Read']['id'];
213
+ } | [ApiKey['Read']];
214
+ };
215
+ Write: {
216
+ created_at: Types['Date Time']['Write'];
217
+ modified_at: Types['Date Time']['Write'];
218
+ api_key: ApiKey['Write']['id'];
219
+ permission: Permission['Write']['id'];
220
+ id: Types['Serial']['Write'];
221
+ };
222
+ }
223
+ export interface Permission {
224
+ Read: {
225
+ created_at: Types['Date Time']['Read'];
226
+ modified_at: Types['Date Time']['Read'];
227
+ id: Types['Serial']['Read'];
228
+ name: Types['Text']['Read'];
229
+ is_of__role?: Array<RoleHasPermission['Read']>;
230
+ is_of__user?: Array<UserHasPermission['Read']>;
231
+ is_of__api_key?: Array<ApiKeyHasPermission['Read']>;
232
+ user__has__permission?: Array<UserHasPermission['Read']>;
233
+ user_permission?: Array<UserHasPermission['Read']>;
234
+ };
235
+ Write: {
236
+ created_at: Types['Date Time']['Write'];
237
+ modified_at: Types['Date Time']['Write'];
238
+ id: Types['Serial']['Write'];
239
+ name: Types['Text']['Write'];
240
+ };
241
+ }
242
+ export interface Role {
243
+ Read: {
244
+ created_at: Types['Date Time']['Read'];
245
+ modified_at: Types['Date Time']['Read'];
246
+ id: Types['Serial']['Read'];
247
+ name: Types['Text']['Read'];
248
+ role__has__permission?: Array<RoleHasPermission['Read']>;
249
+ user__has__role?: Array<UserHasRole['Read']>;
250
+ user_role?: Array<UserHasRole['Read']>;
251
+ is_of__user?: Array<UserHasRole['Read']>;
252
+ is_of__api_key?: Array<ApiKeyHasRole['Read']>;
253
+ };
254
+ Write: {
255
+ created_at: Types['Date Time']['Write'];
256
+ modified_at: Types['Date Time']['Write'];
257
+ id: Types['Serial']['Write'];
258
+ name: Types['Text']['Write'];
259
+ };
260
+ }
261
+ export interface RoleHasPermission {
262
+ Read: {
263
+ created_at: Types['Date Time']['Read'];
264
+ modified_at: Types['Date Time']['Read'];
265
+ role: {
266
+ __id: Role['Read']['id'];
267
+ } | [Role['Read']];
268
+ permission: {
269
+ __id: Permission['Read']['id'];
270
+ } | [Permission['Read']];
271
+ id: Types['Serial']['Read'];
272
+ is_of__role: {
273
+ __id: Role['Read']['id'];
274
+ } | [Role['Read']];
275
+ };
276
+ Write: {
277
+ created_at: Types['Date Time']['Write'];
278
+ modified_at: Types['Date Time']['Write'];
279
+ role: Role['Write']['id'];
280
+ permission: Permission['Write']['id'];
281
+ id: Types['Serial']['Write'];
282
+ };
283
+ }
284
+ export interface Actor {
285
+ Read: {
286
+ created_at: Types['Date Time']['Read'];
287
+ modified_at: Types['Date Time']['Read'];
288
+ id: Types['Serial']['Read'];
289
+ is_of__user?: Array<User['Read']>;
290
+ api_key?: Array<ApiKey['Read']>;
291
+ };
292
+ Write: {
293
+ created_at: Types['Date Time']['Write'];
294
+ modified_at: Types['Date Time']['Write'];
295
+ id: Types['Serial']['Write'];
296
+ };
297
+ }
298
+ export interface User {
299
+ Read: {
300
+ created_at: Types['Date Time']['Read'];
301
+ modified_at: Types['Date Time']['Read'];
302
+ id: Types['Serial']['Read'];
303
+ actor: {
304
+ __id: Actor['Read']['id'];
305
+ } | [Actor['Read']];
306
+ username: Types['Short Text']['Read'];
307
+ password: Types['Hashed']['Read'];
308
+ user__has__role?: Array<UserHasRole['Read']>;
309
+ user_role?: Array<UserHasRole['Read']>;
310
+ user__has__permission?: Array<UserHasPermission['Read']>;
311
+ user_permission?: Array<UserHasPermission['Read']>;
312
+ };
313
+ Write: {
314
+ created_at: Types['Date Time']['Write'];
315
+ modified_at: Types['Date Time']['Write'];
316
+ id: Types['Serial']['Write'];
317
+ actor: Actor['Write']['id'];
318
+ username: Types['Short Text']['Write'];
319
+ password: Types['Hashed']['Write'];
320
+ };
321
+ }
322
+ export interface UserHasRole {
323
+ Read: {
324
+ created_at: Types['Date Time']['Read'];
325
+ modified_at: Types['Date Time']['Read'];
326
+ user: {
327
+ __id: User['Read']['id'];
328
+ } | [User['Read']];
329
+ role: {
330
+ __id: Role['Read']['id'];
331
+ } | [Role['Read']];
332
+ id: Types['Serial']['Read'];
333
+ expiry_date: Types['Date Time']['Read'] | null;
334
+ is_of__user: {
335
+ __id: User['Read']['id'];
336
+ } | [User['Read']];
337
+ };
338
+ Write: {
339
+ created_at: Types['Date Time']['Write'];
340
+ modified_at: Types['Date Time']['Write'];
341
+ user: User['Write']['id'];
342
+ role: Role['Write']['id'];
343
+ id: Types['Serial']['Write'];
344
+ expiry_date: Types['Date Time']['Write'] | null;
345
+ };
346
+ }
347
+ export interface UserHasPermission {
348
+ Read: {
349
+ created_at: Types['Date Time']['Read'];
350
+ modified_at: Types['Date Time']['Read'];
351
+ user: {
352
+ __id: User['Read']['id'];
353
+ } | [User['Read']];
354
+ permission: {
355
+ __id: Permission['Read']['id'];
356
+ } | [Permission['Read']];
357
+ id: Types['Serial']['Read'];
358
+ expiry_date: Types['Date Time']['Read'] | null;
359
+ is_of__user: {
360
+ __id: User['Read']['id'];
361
+ } | [User['Read']];
362
+ };
363
+ Write: {
364
+ created_at: Types['Date Time']['Write'];
365
+ modified_at: Types['Date Time']['Write'];
366
+ user: User['Write']['id'];
367
+ permission: Permission['Write']['id'];
368
+ id: Types['Serial']['Write'];
369
+ expiry_date: Types['Date Time']['Write'] | null;
370
+ };
371
+ }
372
+ export interface ApiKey {
373
+ Read: {
374
+ created_at: Types['Date Time']['Read'];
375
+ modified_at: Types['Date Time']['Read'];
376
+ id: Types['Serial']['Read'];
377
+ key: Types['Short Text']['Read'];
378
+ expiry_date: Types['Date Time']['Read'] | null;
379
+ is_of__actor: {
380
+ __id: Actor['Read']['id'];
381
+ } | [Actor['Read']];
382
+ name: Types['Text']['Read'] | null;
383
+ description: Types['Text']['Read'] | null;
384
+ api_key__has__role?: Array<ApiKeyHasRole['Read']>;
385
+ api_key__has__permission?: Array<ApiKeyHasPermission['Read']>;
386
+ };
387
+ Write: {
388
+ created_at: Types['Date Time']['Write'];
389
+ modified_at: Types['Date Time']['Write'];
390
+ id: Types['Serial']['Write'];
391
+ key: Types['Short Text']['Write'];
392
+ expiry_date: Types['Date Time']['Write'] | null;
393
+ is_of__actor: Actor['Write']['id'];
394
+ name: Types['Text']['Write'] | null;
395
+ description: Types['Text']['Write'] | null;
396
+ };
397
+ }
398
+ export interface ApiKeyHasRole {
399
+ Read: {
400
+ created_at: Types['Date Time']['Read'];
401
+ modified_at: Types['Date Time']['Read'];
402
+ api_key: {
403
+ __id: ApiKey['Read']['id'];
404
+ } | [ApiKey['Read']];
405
+ role: {
406
+ __id: Role['Read']['id'];
407
+ } | [Role['Read']];
408
+ id: Types['Serial']['Read'];
409
+ is_of__api_key: {
410
+ __id: ApiKey['Read']['id'];
411
+ } | [ApiKey['Read']];
412
+ };
413
+ Write: {
414
+ created_at: Types['Date Time']['Write'];
415
+ modified_at: Types['Date Time']['Write'];
416
+ api_key: ApiKey['Write']['id'];
417
+ role: Role['Write']['id'];
418
+ id: Types['Serial']['Write'];
419
+ };
420
+ }
421
+ export interface ApiKeyHasPermission {
422
+ Read: {
423
+ created_at: Types['Date Time']['Read'];
424
+ modified_at: Types['Date Time']['Read'];
425
+ api_key: {
426
+ __id: ApiKey['Read']['id'];
427
+ } | [ApiKey['Read']];
428
+ permission: {
429
+ __id: Permission['Read']['id'];
430
+ } | [Permission['Read']];
431
+ id: Types['Serial']['Read'];
432
+ is_of__api_key: {
433
+ __id: ApiKey['Read']['id'];
434
+ } | [ApiKey['Read']];
435
+ };
436
+ Write: {
437
+ created_at: Types['Date Time']['Write'];
438
+ modified_at: Types['Date Time']['Write'];
439
+ api_key: ApiKey['Write']['id'];
440
+ permission: Permission['Write']['id'];
441
+ id: Types['Serial']['Write'];
442
+ };
443
+ }
444
+ export default interface $Model {
445
+ permission: Permission;
446
+ role: Role;
447
+ role__has__permission: RoleHasPermission;
448
+ actor: Actor;
449
+ user: User;
450
+ user__has__role: UserHasRole;
451
+ user__has__permission: UserHasPermission;
452
+ api_key: ApiKey;
453
+ api_key__has__role: ApiKeyHasRole;
454
+ api_key__has__permission: ApiKeyHasPermission;
455
+ permission$sbvr__compiler: Permission;
456
+ role$sbvr__compiler: Role;
457
+ role__has__permission$sbvr__compiler: RoleHasPermission;
458
+ actor$sbvr__compiler: Actor;
459
+ user$sbvr__compiler: User;
460
+ user__has__role$sbvr__compiler: UserHasRole;
461
+ user__has__permission$sbvr__compiler: UserHasPermission;
462
+ api_key$sbvr__compiler: ApiKey;
463
+ api_key__has__role$sbvr__compiler: ApiKeyHasRole;
464
+ api_key__has__permission$sbvr__compiler: ApiKeyHasPermission;
465
+ user_role: UserHasRole;
466
+ user_permission: UserHasPermission;
467
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/sbvr-api/user.ts"],"names":[],"mappings":""}
@@ -12,7 +12,6 @@ export * as errors from '../sbvr-api/errors';
12
12
  export * as env from '../config-loader/env';
13
13
  export * as types from '../sbvr-api/common-types';
14
14
  export * as hooks from '../sbvr-api/hooks';
15
- export * as tasks from '../tasks';
16
15
  export * as webResourceHandler from '../webresource-handler';
17
16
  export type { configLoader as ConfigLoader };
18
17
  export type { migratorUtils as Migrator };
@@ -23,12 +23,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.init = exports.webResourceHandler = exports.tasks = exports.hooks = exports.types = exports.env = exports.errors = exports.permissions = exports.sbvrUtils = exports.mountLoginRouter = exports.PinejsSessionStore = exports.dbModule = void 0;
26
+ exports.init = exports.webResourceHandler = exports.hooks = exports.types = exports.env = exports.errors = exports.permissions = exports.sbvrUtils = exports.mountLoginRouter = exports.PinejsSessionStore = exports.dbModule = void 0;
27
27
  require("./sbvr-loader");
28
28
  const dbModule = __importStar(require("../database-layer/db"));
29
29
  const configLoader = __importStar(require("../config-loader/config-loader"));
30
30
  const migrator = __importStar(require("../migrator/sync"));
31
- const tasks = __importStar(require("../tasks"));
32
31
  const sbvrUtils = __importStar(require("../sbvr-api/sbvr-utils"));
33
32
  const env_1 = require("../config-loader/env");
34
33
  exports.dbModule = __importStar(require("../database-layer/db"));
@@ -42,7 +41,6 @@ exports.errors = __importStar(require("../sbvr-api/errors"));
42
41
  exports.env = __importStar(require("../config-loader/env"));
43
42
  exports.types = __importStar(require("../sbvr-api/common-types"));
44
43
  exports.hooks = __importStar(require("../sbvr-api/hooks"));
45
- exports.tasks = __importStar(require("../tasks"));
46
44
  exports.webResourceHandler = __importStar(require("../webresource-handler"));
47
45
  let envDatabaseOptions;
48
46
  if (dbModule.engines.websql != null) {
@@ -77,7 +75,6 @@ const init = async (app, config, databaseOptions = envDatabaseOptions) => {
77
75
  await sbvrUtils.setup(app, db);
78
76
  const cfgLoader = await configLoader.setup(app);
79
77
  await cfgLoader.loadConfig(migrator.config);
80
- await cfgLoader.loadConfig(tasks.config);
81
78
  const promises = [];
82
79
  if (process.env.SBVR_SERVER_ENABLED) {
83
80
  const sbvrServer = await import('../data-server/sbvr-server.js');
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/server-glue/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/server-glue/module.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/pinejs",
3
- "version": "17.1.0-build-joshbwlng-tasks-e8a81b1d884e0039e67661a25a5cb81d46966640-1",
3
+ "version": "17.1.0-build-model-based-typings-86a981c89f828217571c93fa010174529a5345f9-1",
4
4
  "main": "out/server-glue/module",
5
5
  "type": "commonjs",
6
6
  "repository": "git@github.com:balena-io/pinejs.git",
@@ -19,27 +19,29 @@
19
19
  "webpack-server": "grunt server",
20
20
  "webpack-build": "npm run webpack-browser && npm run webpack-module && npm run webpack-server",
21
21
  "lint": "balena-lint -t tsconfig.dev.json -e js -e ts src build typings Gruntfile.ts && npx tsc --project tsconfig.dev.json --noEmit",
22
- "test": "npm run lint && npm run build && npm run webpack-build && npm run test:compose",
23
- "test:compose": "trap 'docker compose -f docker-compose.npm-test.yml down ; echo Stopped ; exit 0' INT; docker compose -f docker-compose.npm-test.yml up -d && sleep 2 && DATABASE_URL=postgres://docker:docker@localhost:5431/postgres PINEJS_WEBRESOURCE_MAXFILESIZE=1000000000 S3_ENDPOINT=http://localhost:43680 S3_ACCESS_KEY=USERNAME S3_SECRET_KEY=PASSWORD S3_STORAGE_ADAPTER_BUCKET=balena-pine-web-resources S3_REGION=us-east-1 PINEJS_QUEUE_CONCURRENCY=1 npm run mocha",
22
+ "test": "npm run lint && npm run build && npm run webpack-build && npm run test:compose && npm run test:generated-types",
23
+ "test:compose": "trap 'docker compose -f docker-compose.npm-test.yml down ; echo Stopped ; exit 0' INT; docker compose -f docker-compose.npm-test.yml up -d && sleep 2 && DATABASE_URL=postgres://docker:docker@localhost:5431/postgres PINEJS_WEBRESOURCE_MAXFILESIZE=1000000000 S3_ENDPOINT=http://localhost:43680 S3_ACCESS_KEY=USERNAME S3_SECRET_KEY=PASSWORD S3_STORAGE_ADAPTER_BUCKET=balena-pine-web-resources S3_REGION=us-east-1 npm run mocha",
24
+ "test:generated-types": "npm run generate-types && git diff --exit-code ./src/sbvr-api/user.ts ./src/migrator/migrations.ts ./src/sbvr-api/dev.ts",
24
25
  "mocha": "TS_NODE_FILES=true mocha",
25
- "prettify": "balena-lint -t tsconfig.dev.json -e js -e ts --fix src test build typings Gruntfile.ts"
26
+ "prettify": "balena-lint -t tsconfig.dev.json -e js -e ts --fix src test build typings Gruntfile.ts",
27
+ "generate-types": "node ./bin/sbvr-compiler.js generate-types ./src/sbvr-api/user.sbvr ./src/sbvr-api/user.ts && node ./bin/sbvr-compiler.js generate-types ./src/migrator/migrations.sbvr ./src/migrator/migrations.ts && node ./bin/sbvr-compiler.js generate-types ./src/sbvr-api/dev.sbvr ./src/sbvr-api/dev.ts && balena-lint -t tsconfig.dev.json --fix ./src/sbvr-api/user.ts ./src/migrator/migrations.ts ./src/sbvr-api/dev.ts"
26
28
  },
27
29
  "dependencies": {
28
- "@balena/abstract-sql-compiler": "^9.1.4",
29
- "@balena/abstract-sql-to-typescript": "^3.1.1",
30
+ "@balena/abstract-sql-compiler": "^9.2.0",
31
+ "@balena/abstract-sql-to-typescript": "^3.1.2",
30
32
  "@balena/env-parsing": "^1.1.12",
31
33
  "@balena/lf-to-abstract-sql": "^5.0.2",
32
34
  "@balena/odata-parser": "^3.0.8",
33
35
  "@balena/odata-to-abstract-sql": "^6.2.7",
34
36
  "@balena/sbvr-parser": "^1.4.4",
35
- "@balena/sbvr-types": "^7.1.1",
37
+ "@balena/sbvr-types": "^7.1.3",
36
38
  "@types/body-parser": "^1.19.5",
37
39
  "@types/compression": "^1.7.5",
38
40
  "@types/cookie-parser": "^1.4.7",
39
41
  "@types/deep-freeze": "^0.1.5",
40
42
  "@types/express": "^4.17.21",
41
43
  "@types/express-session": "^1.18.0",
42
- "@types/lodash": "^4.17.4",
44
+ "@types/lodash": "^4.17.5",
43
45
  "@types/memoizee": "^0.4.11",
44
46
  "@types/method-override": "^0.0.35",
45
47
  "@types/multer": "^1.4.11",
@@ -51,16 +53,14 @@
51
53
  "@types/pg": "^8.11.6",
52
54
  "@types/randomstring": "^1.3.0",
53
55
  "@types/websql": "^0.0.30",
54
- "ajv": "^8.12.0",
55
56
  "busboy": "^1.6.0",
56
57
  "commander": "^11.1.0",
57
- "cron-parser": "^4.9.0",
58
58
  "deep-freeze": "^0.0.1",
59
59
  "eventemitter3": "^5.0.1",
60
60
  "express-session": "^1.18.0",
61
61
  "lodash": "^4.17.21",
62
62
  "memoizee": "^0.4.17",
63
- "pinejs-client-core": "^6.14.6",
63
+ "pinejs-client-core": "^6.15.0",
64
64
  "randomstring": "^1.3.0",
65
65
  "typed-error": "^3.2.2"
66
66
  },
@@ -91,12 +91,11 @@
91
91
  "grunt-ts": "^6.0.0-beta.22",
92
92
  "grunt-webpack": "^6.0.0",
93
93
  "husky": "^9.0.11",
94
- "json-schema-to-ts": "^3.1.0",
95
- "lint-staged": "^15.2.5",
94
+ "lint-staged": "^15.2.7",
96
95
  "load-grunt-tasks": "^5.1.0",
97
96
  "mocha": "^10.4.0",
98
97
  "on-finished": "^2.4.1",
99
- "pinejs-client-supertest": "^2.0.3",
98
+ "pinejs-client-supertest": "^2.0.4",
100
99
  "raw-loader": "^4.0.2",
101
100
  "request": "^2.88.2",
102
101
  "require-npm4-to-publish": "^1.0.0",
@@ -105,13 +104,13 @@
105
104
  "ts-loader": "^9.5.1",
106
105
  "ts-node": "^10.9.2",
107
106
  "typescript": "^5.4.5",
108
- "webpack": "^5.91.0",
107
+ "webpack": "^5.92.0",
109
108
  "webpack-dev-server": "^4.15.2"
110
109
  },
111
110
  "optionalDependencies": {
112
- "@aws-sdk/client-s3": "^3.590.0",
113
- "@aws-sdk/lib-storage": "^3.590.0",
114
- "@aws-sdk/s3-request-presigner": "^3.590.0",
111
+ "@aws-sdk/client-s3": "^3.596.0",
112
+ "@aws-sdk/lib-storage": "^3.596.0",
113
+ "@aws-sdk/s3-request-presigner": "^3.596.0",
115
114
  "bcrypt": "^5.1.1",
116
115
  "body-parser": "^1.20.2",
117
116
  "compression": "^1.7.4",
@@ -147,6 +146,6 @@
147
146
  "recursive": true
148
147
  },
149
148
  "versionist": {
150
- "publishedAt": "2024-06-14T04:16:50.830Z"
149
+ "publishedAt": "2024-06-14T14:22:13.242Z"
151
150
  }
152
151
  }
@@ -49,7 +49,7 @@ export const cache = {
49
49
  apiKeyActorId: false as CacheOpts,
50
50
  };
51
51
 
52
- import { boolVar, intVar } from '@balena/env-parsing';
52
+ import { boolVar } from '@balena/env-parsing';
53
53
  import memoize from 'memoizee';
54
54
  import memoizeWeak = require('memoizee/weak');
55
55
  export const createCache = <T extends (...args: any[]) => any>(
@@ -146,8 +146,3 @@ export const migrator = {
146
146
  */
147
147
  asyncMigrationIsEnabled: boolVar('PINEJS_ASYNC_MIGRATION_ENABLED', true),
148
148
  };
149
-
150
- export const tasks = {
151
- queueConcurrency: intVar('PINEJS_QUEUE_CONCURRENCY', 0),
152
- queueIntervalMS: intVar('PINEJS_QUEUE_INTERVAL_MS', 1000),
153
- };
@@ -133,14 +133,15 @@ export async function setup(app, sbvrUtils, db) {
133
133
  },
134
134
  },
135
135
  })
136
- .then(async (/** @type { Array<{ [key: string]: any }> } */ result) => {
136
+ .then(async (result) => {
137
137
  if (result.length === 0) {
138
138
  throw new Error('No SE data model found');
139
139
  }
140
140
  const instance = result[0];
141
141
  await sbvrUtils.executeModel(tx, {
142
142
  apiRoot: instance.is_of__vocabulary,
143
- modelText: instance.model_value.value,
143
+ // prettier-ignore
144
+ modelText: /** @type { string } */ (instance.model_value.value),
144
145
  });
145
146
  });
146
147
  await isServerOnAir(true);