@balena/pinejs 19.7.2-build-esm-36f468424324d7ef7578ae401fc681c9f8f63e03-3 → 19.7.2-build-update-deps-a909ee054f395de407ec4e1275fd0f5b7514fe29-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/.versionbot/CHANGELOG.yml +3 -3
  2. package/CHANGELOG.md +1 -1
  3. package/{Gruntfile.cts → Gruntfile.ts} +22 -9
  4. package/bin/abstract-sql-compiler.js +1 -1
  5. package/bin/odata-compiler.js +1 -1
  6. package/bin/sbvr-compiler.js +1 -1
  7. package/build/{browser.cts → browser.ts} +1 -1
  8. package/build/{config.cts → config.ts} +1 -5
  9. package/build/{module.cts → module.ts} +1 -1
  10. package/build/{server.cts → server.ts} +1 -1
  11. package/out/bin/abstract-sql-compiler.js +19 -17
  12. package/out/bin/abstract-sql-compiler.js.map +1 -1
  13. package/out/bin/odata-compiler.js +21 -19
  14. package/out/bin/odata-compiler.js.map +1 -1
  15. package/out/bin/sbvr-compiler.js +54 -19
  16. package/out/bin/sbvr-compiler.js.map +1 -1
  17. package/out/bin/utils.d.ts +3 -3
  18. package/out/bin/utils.js +53 -21
  19. package/out/bin/utils.js.map +1 -1
  20. package/out/config-loader/config-loader.d.ts +7 -7
  21. package/out/config-loader/config-loader.js +63 -23
  22. package/out/config-loader/config-loader.js.map +1 -1
  23. package/out/config-loader/env.d.ts +1 -1
  24. package/out/config-loader/env.js +66 -24
  25. package/out/config-loader/env.js.map +1 -1
  26. package/out/data-server/sbvr-server.d.ts +3 -3
  27. package/out/data-server/sbvr-server.js +42 -5
  28. package/out/data-server/sbvr-server.js.map +1 -1
  29. package/out/database-layer/db.d.ts +3 -3
  30. package/out/database-layer/db.js +83 -37
  31. package/out/database-layer/db.js.map +1 -1
  32. package/out/express-emulator/express.js.map +1 -1
  33. package/out/extended-sbvr-parser/extended-sbvr-parser.js +11 -8
  34. package/out/extended-sbvr-parser/extended-sbvr-parser.js.map +1 -1
  35. package/out/http-transactions/transactions.d.ts +2 -2
  36. package/out/http-transactions/transactions.js +4 -4
  37. package/out/http-transactions/transactions.js.map +1 -1
  38. package/out/migrator/async.d.ts +2 -2
  39. package/out/migrator/async.js +60 -20
  40. package/out/migrator/async.js.map +1 -1
  41. package/out/migrator/migrations.js +2 -1
  42. package/out/migrator/sync.d.ts +6 -6
  43. package/out/migrator/sync.js +61 -20
  44. package/out/migrator/sync.js.map +1 -1
  45. package/out/migrator/utils.d.ts +4 -4
  46. package/out/migrator/utils.js +97 -42
  47. package/out/migrator/utils.js.map +1 -1
  48. package/out/odata-metadata/odata-metadata-generator.js +14 -7
  49. package/out/odata-metadata/odata-metadata-generator.js.map +1 -1
  50. package/out/passport-pinejs/mount-login-router.d.ts +1 -1
  51. package/out/passport-pinejs/mount-login-router.js +41 -4
  52. package/out/passport-pinejs/mount-login-router.js.map +1 -1
  53. package/out/passport-pinejs/passport-pinejs.d.ts +3 -3
  54. package/out/passport-pinejs/passport-pinejs.js +46 -11
  55. package/out/passport-pinejs/passport-pinejs.js.map +1 -1
  56. package/out/pinejs-session-store/pinejs-session-store.d.ts +1 -1
  57. package/out/pinejs-session-store/pinejs-session-store.js +48 -11
  58. package/out/pinejs-session-store/pinejs-session-store.js.map +1 -1
  59. package/out/sbvr-api/abstract-sql.d.ts +3 -3
  60. package/out/sbvr-api/abstract-sql.js +65 -22
  61. package/out/sbvr-api/abstract-sql.js.map +1 -1
  62. package/out/sbvr-api/cached-compile.js +15 -8
  63. package/out/sbvr-api/cached-compile.js.map +1 -1
  64. package/out/sbvr-api/common-types.js +2 -1
  65. package/out/sbvr-api/control-flow.d.ts +1 -1
  66. package/out/sbvr-api/control-flow.js +25 -12
  67. package/out/sbvr-api/control-flow.js.map +1 -1
  68. package/out/sbvr-api/dev.js +2 -1
  69. package/out/sbvr-api/errors.d.ts +1 -1
  70. package/out/sbvr-api/errors.js +95 -47
  71. package/out/sbvr-api/errors.js.map +1 -1
  72. package/out/sbvr-api/express-extension.d.ts +2 -2
  73. package/out/sbvr-api/express-extension.js +2 -1
  74. package/out/sbvr-api/hooks.d.ts +4 -4
  75. package/out/sbvr-api/hooks.js +35 -23
  76. package/out/sbvr-api/hooks.js.map +1 -1
  77. package/out/sbvr-api/odata-response.d.ts +2 -2
  78. package/out/sbvr-api/odata-response.js +29 -19
  79. package/out/sbvr-api/odata-response.js.map +1 -1
  80. package/out/sbvr-api/permissions.d.ts +9 -9
  81. package/out/sbvr-api/permissions.js +159 -106
  82. package/out/sbvr-api/permissions.js.map +1 -1
  83. package/out/sbvr-api/sbvr-utils.d.ts +18 -40
  84. package/out/sbvr-api/sbvr-utils.js +285 -222
  85. package/out/sbvr-api/sbvr-utils.js.map +1 -1
  86. package/out/sbvr-api/translations.d.ts +1 -1
  87. package/out/sbvr-api/translations.js +17 -10
  88. package/out/sbvr-api/translations.js.map +1 -1
  89. package/out/sbvr-api/uri-parser.d.ts +7 -7
  90. package/out/sbvr-api/uri-parser.js +84 -39
  91. package/out/sbvr-api/uri-parser.js.map +1 -1
  92. package/out/sbvr-api/user.js +2 -1
  93. package/out/server-glue/global-ext.d.ts +3 -0
  94. package/out/server-glue/module.d.ts +16 -16
  95. package/out/server-glue/module.js +59 -20
  96. package/out/server-glue/module.js.map +1 -1
  97. package/out/server-glue/sbvr-loader.d.ts +1 -2
  98. package/out/server-glue/sbvr-loader.js +11 -4
  99. package/out/server-glue/sbvr-loader.js.map +1 -1
  100. package/out/server-glue/server.d.ts +2 -2
  101. package/out/server-glue/server.js +59 -17
  102. package/out/server-glue/server.js.map +1 -1
  103. package/out/tasks/common.d.ts +1 -1
  104. package/out/tasks/common.js +9 -3
  105. package/out/tasks/common.js.map +1 -1
  106. package/out/tasks/index.d.ts +8 -8
  107. package/out/tasks/index.js +63 -25
  108. package/out/tasks/index.js.map +1 -1
  109. package/out/tasks/tasks.js +2 -1
  110. package/out/tasks/worker.d.ts +3 -3
  111. package/out/tasks/worker.js +51 -14
  112. package/out/tasks/worker.js.map +1 -1
  113. package/out/webresource-handler/handlers/NoopHandler.d.ts +1 -1
  114. package/out/webresource-handler/handlers/NoopHandler.js +5 -1
  115. package/out/webresource-handler/handlers/NoopHandler.js.map +1 -1
  116. package/out/webresource-handler/handlers/S3Handler.d.ts +1 -1
  117. package/out/webresource-handler/handlers/S3Handler.js +24 -17
  118. package/out/webresource-handler/handlers/S3Handler.js.map +1 -1
  119. package/out/webresource-handler/handlers/index.d.ts +2 -2
  120. package/out/webresource-handler/handlers/index.js +18 -2
  121. package/out/webresource-handler/handlers/index.js.map +1 -1
  122. package/out/webresource-handler/index.d.ts +3 -3
  123. package/out/webresource-handler/index.js +85 -35
  124. package/out/webresource-handler/index.js.map +1 -1
  125. package/package.json +33 -33
  126. package/src/bin/abstract-sql-compiler.ts +3 -3
  127. package/src/bin/odata-compiler.ts +3 -3
  128. package/src/bin/sbvr-compiler.ts +2 -2
  129. package/src/bin/utils.ts +15 -23
  130. package/src/config-loader/config-loader.ts +12 -12
  131. package/src/config-loader/env.ts +3 -3
  132. package/src/data-server/sbvr-server.ts +4 -4
  133. package/src/database-layer/db.ts +11 -18
  134. package/src/extended-sbvr-parser/extended-sbvr-parser.ts +5 -5
  135. package/src/http-transactions/transactions.js +4 -4
  136. package/src/migrator/async.ts +5 -5
  137. package/src/migrator/sync.ts +8 -8
  138. package/src/migrator/utils.ts +7 -7
  139. package/src/odata-metadata/odata-metadata-generator.ts +2 -3
  140. package/src/passport-pinejs/mount-login-router.ts +3 -3
  141. package/src/passport-pinejs/passport-pinejs.ts +6 -6
  142. package/src/pinejs-session-store/pinejs-session-store.ts +4 -4
  143. package/src/sbvr-api/abstract-sql.ts +6 -6
  144. package/src/sbvr-api/cached-compile.ts +2 -2
  145. package/src/sbvr-api/control-flow.ts +1 -1
  146. package/src/sbvr-api/errors.ts +1 -1
  147. package/src/sbvr-api/express-extension.ts +2 -2
  148. package/src/sbvr-api/hooks.ts +5 -5
  149. package/src/sbvr-api/odata-response.ts +4 -8
  150. package/src/sbvr-api/permissions.ts +19 -19
  151. package/src/sbvr-api/sbvr-utils.ts +33 -39
  152. package/src/sbvr-api/translations.ts +1 -1
  153. package/src/sbvr-api/uri-parser.ts +10 -10
  154. package/src/server-glue/global-ext.d.ts +3 -0
  155. package/src/server-glue/module.ts +20 -20
  156. package/src/server-glue/sbvr-loader.ts +27 -15
  157. package/src/server-glue/server.ts +24 -13
  158. package/src/tasks/common.ts +1 -1
  159. package/src/tasks/index.ts +14 -14
  160. package/src/tasks/worker.ts +8 -8
  161. package/src/webresource-handler/handlers/NoopHandler.ts +1 -5
  162. package/src/webresource-handler/handlers/S3Handler.ts +1 -1
  163. package/src/webresource-handler/handlers/index.ts +2 -2
  164. package/src/webresource-handler/index.ts +10 -10
  165. package/tsconfig.dev.json +2 -4
  166. package/tsconfig.json +1 -1
  167. package/typings/lf-to-abstract-sql.d.ts +2 -2
  168. package/typings/memoizee.d.ts +2 -2
@@ -1,9 +1,45 @@
1
- import { setTimeout } from 'node:timers/promises';
2
- import { tasks as tasksEnv } from '../config-loader/env.js';
3
- import * as permissions from '../sbvr-api/permissions.js';
4
- import { PinejsClient } from '../sbvr-api/sbvr-utils.js';
5
- import { sbvrUtils } from '../server-glue/module.js';
6
- import { ajv } from './common.js';
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.Worker = void 0;
37
+ const promises_1 = require("node:timers/promises");
38
+ const env_1 = require("../config-loader/env");
39
+ const permissions = __importStar(require("../sbvr-api/permissions"));
40
+ const sbvr_utils_1 = require("../sbvr-api/sbvr-utils");
41
+ const module_1 = require("../server-glue/module");
42
+ const common_1 = require("./common");
7
43
  const selectColumns = Object.entries({
8
44
  id: 'id',
9
45
  'is executed by-handler': 'is_executed_by__handler',
@@ -15,7 +51,7 @@ const selectColumns = Object.entries({
15
51
  })
16
52
  .map(([key, value]) => `t."${key}" AS "${value}"`)
17
53
  .join(', ');
18
- export class Worker {
54
+ class Worker {
19
55
  client;
20
56
  handlers = {};
21
57
  concurrency;
@@ -24,8 +60,8 @@ export class Worker {
24
60
  executing = 0;
25
61
  constructor(client) {
26
62
  this.client = client;
27
- this.concurrency = tasksEnv.queueConcurrency;
28
- this.interval = tasksEnv.queueIntervalMS;
63
+ this.concurrency = env_1.tasks.queueConcurrency;
64
+ this.interval = env_1.tasks.queueIntervalMS;
29
65
  }
30
66
  canExecute() {
31
67
  return (this.executing < this.concurrency && Object.keys(this.handlers).length > 0);
@@ -41,14 +77,14 @@ export class Worker {
41
77
  }
42
78
  if (handler.validate != null &&
43
79
  !handler.validate(task.is_executed_with__parameter_set)) {
44
- await this.update(tx, task, startedOnTime, 'failed', `Invalid parameter set: ${ajv.errorsText(handler.validate.errors)}`);
80
+ await this.update(tx, task, startedOnTime, 'failed', `Invalid parameter set: ${common_1.ajv.errorsText(handler.validate.errors)}`);
45
81
  return;
46
82
  }
47
83
  let status = 'queued';
48
84
  let error;
49
85
  try {
50
86
  const results = await handler.fn({
51
- api: new PinejsClient({}),
87
+ api: new sbvr_utils_1.PinejsClient({}),
52
88
  params: task.is_executed_with__parameter_set ?? {},
53
89
  });
54
90
  status = results.status;
@@ -126,7 +162,7 @@ export class Worker {
126
162
  if (handlerNames.length === 0) {
127
163
  return;
128
164
  }
129
- await sbvrUtils.db.transaction(async (tx) => {
165
+ await module_1.sbvrUtils.db.transaction(async (tx) => {
130
166
  const result = await tx.executeSql(`SELECT ${selectColumns}
131
167
  FROM task AS t
132
168
  WHERE
@@ -152,7 +188,7 @@ export class Worker {
152
188
  }
153
189
  finally {
154
190
  if (!executed) {
155
- await setTimeout(this.interval);
191
+ await (0, promises_1.setTimeout)(this.interval);
156
192
  }
157
193
  if (this.running) {
158
194
  this.poll();
@@ -164,7 +200,7 @@ export class Worker {
164
200
  this.running = false;
165
201
  }
166
202
  async start() {
167
- if (sbvrUtils.db.engine !== 'postgres') {
203
+ if (module_1.sbvrUtils.db.engine !== 'postgres') {
168
204
  throw new Error('Database does not support tasks, giving up on starting worker');
169
205
  }
170
206
  const handlerNames = Object.keys(this.handlers);
@@ -198,4 +234,5 @@ export class Worker {
198
234
  }
199
235
  }
200
236
  }
237
+ exports.Worker = Worker;
201
238
  //# sourceMappingURL=worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/tasks/worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/tasks/worker.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { WebResourceType as WebResource } from '@balena/sbvr-types';
2
- import type { IncomingFile, UploadResponse, WebResourceHandler } from '../index.js';
2
+ import type { IncomingFile, UploadResponse, WebResourceHandler } from '..';
3
3
  export declare class NoopHandler implements WebResourceHandler {
4
4
  handleFile(resource: IncomingFile): Promise<UploadResponse>;
5
5
  removeFile(): Promise<void>;
@@ -1,4 +1,7 @@
1
- export class NoopHandler {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NoopHandler = void 0;
4
+ class NoopHandler {
2
5
  async handleFile(resource) {
3
6
  resource.stream.resume();
4
7
  return {
@@ -13,4 +16,5 @@ export class NoopHandler {
13
16
  return webResource;
14
17
  }
15
18
  }
19
+ exports.NoopHandler = NoopHandler;
16
20
  //# sourceMappingURL=NoopHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NoopHandler.js","sourceRoot":"","sources":["../../../src/webresource-handler/handlers/NoopHandler.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,WAAW;IAChB,KAAK,CAAC,UAAU,CAAC,QAAsB;QAE7C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO;YACN,QAAQ,EAAE,MAAM;YAChB,IAAI,EAAE,CAAC;SACP,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,UAAU;QACtB,OAAO;IACR,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,WAAwB;QACjD,OAAO,WAAW,CAAC;IACpB,CAAC;CACD"}
1
+ {"version":3,"file":"NoopHandler.js","sourceRoot":"","sources":["../../../src/webresource-handler/handlers/NoopHandler.ts"],"names":[],"mappings":";;;AAGA,MAAa,WAAW;IAChB,KAAK,CAAC,UAAU,CAAC,QAAsB;QAE7C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO;YACN,QAAQ,EAAE,MAAM;YAChB,IAAI,EAAE,CAAC;SACP,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,UAAU;QACtB,OAAO;IACR,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,WAAwB;QACjD,OAAO,WAAW,CAAC;IACpB,CAAC;CACD;AAjBD,kCAiBC"}
@@ -1,4 +1,4 @@
1
- import { type IncomingFile, type UploadResponse, type WebResourceHandler } from '../index.js';
1
+ import { type IncomingFile, type UploadResponse, type WebResourceHandler } from '..';
2
2
  import type { WebResourceType as WebResource } from '@balena/sbvr-types';
3
3
  export interface S3HandlerProps {
4
4
  region: string;
@@ -1,10 +1,16 @@
1
- import { FileSizeExceededError, normalizeHref, WebResourceError, } from '../index.js';
2
- import { S3Client, DeleteObjectCommand, GetObjectCommand, } from '@aws-sdk/client-s3';
3
- import { Upload } from '@aws-sdk/lib-storage';
4
- import { getSignedUrl } from '@aws-sdk/s3-request-presigner';
5
- import { randomUUID } from 'crypto';
6
- import memoize from 'memoizee';
7
- export class S3Handler {
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.S3Handler = void 0;
7
+ const __1 = require("..");
8
+ const client_s3_1 = require("@aws-sdk/client-s3");
9
+ const lib_storage_1 = require("@aws-sdk/lib-storage");
10
+ const s3_request_presigner_1 = require("@aws-sdk/s3-request-presigner");
11
+ const crypto_1 = require("crypto");
12
+ const memoizee_1 = __importDefault(require("memoizee"));
13
+ class S3Handler {
8
14
  config;
9
15
  bucket;
10
16
  maxFileSize;
@@ -28,21 +34,21 @@ export class S3Handler {
28
34
  config.signedUrlCacheExpireTimeSeconds ?? 82800;
29
35
  this.maxFileSize = config.maxSize ?? 52428800;
30
36
  this.bucket = config.bucket;
31
- this.client = new S3Client(this.config);
32
- this.cachedGetSignedUrl = memoize(this.s3SignUrl, {
37
+ this.client = new client_s3_1.S3Client(this.config);
38
+ this.cachedGetSignedUrl = (0, memoizee_1.default)(this.s3SignUrl, {
33
39
  maxAge: this.signedUrlCacheExpireTimeSeconds * 1000,
34
40
  });
35
41
  }
36
42
  async handleFile(resource) {
37
43
  let size = 0;
38
- const key = `${resource.fieldname}_${randomUUID()}_${resource.originalname}`;
44
+ const key = `${resource.fieldname}_${(0, crypto_1.randomUUID)()}_${resource.originalname}`;
39
45
  const params = {
40
46
  Bucket: this.bucket,
41
47
  Key: key,
42
48
  Body: resource.stream,
43
49
  ContentType: resource.mimetype,
44
50
  };
45
- const upload = new Upload({ client: this.client, params });
51
+ const upload = new lib_storage_1.Upload({ client: this.client, params });
46
52
  upload.on('httpUploadProgress', async (ev) => {
47
53
  size = ev.total ?? ev.loaded;
48
54
  if (size > this.maxFileSize) {
@@ -55,16 +61,16 @@ export class S3Handler {
55
61
  catch (err) {
56
62
  resource.stream.resume();
57
63
  if (size > this.maxFileSize) {
58
- throw new FileSizeExceededError(this.maxFileSize);
64
+ throw new __1.FileSizeExceededError(this.maxFileSize);
59
65
  }
60
- throw new WebResourceError(err);
66
+ throw new __1.WebResourceError(err);
61
67
  }
62
68
  const filename = this.getS3URL(key);
63
69
  return { size, filename };
64
70
  }
65
71
  async removeFile(href) {
66
72
  const fileKey = this.getKeyFromHref(href);
67
- const command = new DeleteObjectCommand({
73
+ const command = new client_s3_1.DeleteObjectCommand({
68
74
  Bucket: this.bucket,
69
75
  Key: fileKey,
70
76
  });
@@ -78,11 +84,11 @@ export class S3Handler {
78
84
  return webResource;
79
85
  }
80
86
  s3SignUrl(fileKey) {
81
- const command = new GetObjectCommand({
87
+ const command = new client_s3_1.GetObjectCommand({
82
88
  Bucket: this.bucket,
83
89
  Key: fileKey,
84
90
  });
85
- return getSignedUrl(this.client, command, {
91
+ return (0, s3_request_presigner_1.getSignedUrl)(this.client, command, {
86
92
  expiresIn: this.signedUrlExpireTimeSeconds,
87
93
  });
88
94
  }
@@ -90,8 +96,9 @@ export class S3Handler {
90
96
  return `${this.config.endpoint}/${this.bucket}/${key}`;
91
97
  }
92
98
  getKeyFromHref(href) {
93
- const hrefWithoutParams = normalizeHref(href);
99
+ const hrefWithoutParams = (0, __1.normalizeHref)(href);
94
100
  return hrefWithoutParams.substring(hrefWithoutParams.lastIndexOf('/') + 1);
95
101
  }
96
102
  }
103
+ exports.S3Handler = S3Handler;
97
104
  //# sourceMappingURL=S3Handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"S3Handler.js","sourceRoot":"","sources":["../../../src/webresource-handler/handlers/S3Handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"S3Handler.js","sourceRoot":"","sources":["../../../src/webresource-handler/handlers/S3Handler.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export * from './NoopHandler.js';
2
- export * from './S3Handler.js';
1
+ export * from './NoopHandler';
2
+ export * from './S3Handler';
@@ -1,3 +1,19 @@
1
- export * from './NoopHandler.js';
2
- export * from './S3Handler.js';
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./NoopHandler"), exports);
18
+ __exportStar(require("./S3Handler"), exports);
3
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/webresource-handler/handlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/webresource-handler/handlers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,8CAA4B"}
@@ -1,8 +1,8 @@
1
- import type Express from 'express';
2
- import type stream from 'node:stream';
1
+ import type * as Express from 'express';
2
+ import type * as stream from 'node:stream';
3
3
  import type { WebResourceType as WebResource } from '@balena/sbvr-types';
4
4
  import { TypedError } from 'typed-error';
5
- export * from './handlers/index.js';
5
+ export * from './handlers';
6
6
  export interface IncomingFile {
7
7
  fieldname: string;
8
8
  originalname: string;
@@ -1,21 +1,65 @@
1
- import busboy from 'busboy';
2
- import * as uriParser from '../sbvr-api/uri-parser.js';
3
- import * as sbvrUtils from '../sbvr-api/sbvr-utils.js';
4
- import { getApiRoot, getModel } from '../sbvr-api/sbvr-utils.js';
5
- import { checkPermissions } from '../sbvr-api/permissions.js';
6
- import { NoopHandler } from './handlers/NoopHandler.js';
7
- import { odataNameToSqlName, sqlNameToODataName, } from '@balena/odata-to-abstract-sql';
8
- import { errors, permissions } from '../server-glue/module.js';
9
- import { TypedError } from 'typed-error';
10
- export * from './handlers/index.js';
11
- export class WebResourceError extends TypedError {
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.setupUploadHooks = exports.getDefaultHandler = exports.normalizeHref = exports.getUploaderMiddlware = exports.getWebresourceHandler = exports.setupWebresourceHandler = exports.FileSizeExceededError = exports.WebResourceError = void 0;
43
+ const busboy_1 = __importDefault(require("busboy"));
44
+ const uriParser = __importStar(require("../sbvr-api/uri-parser"));
45
+ const sbvrUtils = __importStar(require("../sbvr-api/sbvr-utils"));
46
+ const sbvr_utils_1 = require("../sbvr-api/sbvr-utils");
47
+ const permissions_1 = require("../sbvr-api/permissions");
48
+ const NoopHandler_1 = require("./handlers/NoopHandler");
49
+ const odata_to_abstract_sql_1 = require("@balena/odata-to-abstract-sql");
50
+ const module_1 = require("../server-glue/module");
51
+ const typed_error_1 = require("typed-error");
52
+ __exportStar(require("./handlers"), exports);
53
+ class WebResourceError extends typed_error_1.TypedError {
12
54
  }
13
- export class FileSizeExceededError extends WebResourceError {
55
+ exports.WebResourceError = WebResourceError;
56
+ class FileSizeExceededError extends WebResourceError {
14
57
  name = 'FileSizeExceededError';
15
58
  constructor(maxSize) {
16
59
  super(`File size exceeded the limit of ${maxSize} bytes.`);
17
60
  }
18
61
  }
62
+ exports.FileSizeExceededError = FileSizeExceededError;
19
63
  const getLogger = (vocab) => {
20
64
  if (vocab) {
21
65
  return sbvrUtils.logger[vocab] ?? console;
@@ -23,21 +67,23 @@ const getLogger = (vocab) => {
23
67
  return console;
24
68
  };
25
69
  let configuredWebResourceHandler;
26
- export const setupWebresourceHandler = (handler) => {
70
+ const setupWebresourceHandler = (handler) => {
27
71
  configuredWebResourceHandler = handler;
28
72
  };
29
- export const getWebresourceHandler = () => {
73
+ exports.setupWebresourceHandler = setupWebresourceHandler;
74
+ const getWebresourceHandler = () => {
30
75
  return configuredWebResourceHandler;
31
76
  };
77
+ exports.getWebresourceHandler = getWebresourceHandler;
32
78
  const isFileInValidPath = async (fieldname, req) => {
33
79
  if (req.method !== 'POST' && req.method !== 'PATCH') {
34
80
  return false;
35
81
  }
36
- const apiRoot = getApiRoot(req);
82
+ const apiRoot = (0, sbvr_utils_1.getApiRoot)(req);
37
83
  if (apiRoot == null) {
38
84
  return false;
39
85
  }
40
- const model = getModel(apiRoot);
86
+ const model = (0, sbvr_utils_1.getModel)(apiRoot);
41
87
  const odataRequest = uriParser.parseOData({
42
88
  url: req.url,
43
89
  method: req.method,
@@ -49,14 +95,14 @@ const isFileInValidPath = async (fieldname, req) => {
49
95
  }
50
96
  const permission = req.method === 'POST' ? 'create' : 'update';
51
97
  const vocab = model.versions[model.versions.length - 1];
52
- const hasPermissions = await checkPermissions(req, permission, odataRequest.resourceName, vocab);
98
+ const hasPermissions = await (0, permissions_1.checkPermissions)(req, permission, odataRequest.resourceName, vocab);
53
99
  if (!hasPermissions) {
54
100
  return false;
55
101
  }
56
- const dbFieldName = odataNameToSqlName(fieldname);
102
+ const dbFieldName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(fieldname);
57
103
  return table.fields.some((field) => field.fieldName === dbFieldName && field.dataType === 'WebResource');
58
104
  };
59
- export const getUploaderMiddlware = (handler) => {
105
+ const getUploaderMiddlware = (handler) => {
60
106
  return (req, res, next) => {
61
107
  if (!req.is('multipart')) {
62
108
  next();
@@ -64,7 +110,7 @@ export const getUploaderMiddlware = (handler) => {
64
110
  }
65
111
  const uploadedFilePaths = [];
66
112
  const completeUploads = [];
67
- const bb = busboy({ headers: req.headers });
113
+ const bb = (0, busboy_1.default)({ headers: req.headers });
68
114
  let isAborting = false;
69
115
  const finishFileUpload = () => {
70
116
  req.unpipe(bb);
@@ -78,7 +124,7 @@ export const getUploaderMiddlware = (handler) => {
78
124
  return await Promise.all(deletions);
79
125
  }
80
126
  catch (err) {
81
- getLogger(getApiRoot(req)).error('Error deleting file', err);
127
+ getLogger((0, sbvr_utils_1.getApiRoot)(req)).error('Error deleting file', err);
82
128
  }
83
129
  };
84
130
  bb.on('file', (fieldname, filestream, info) => {
@@ -128,9 +174,9 @@ export const getUploaderMiddlware = (handler) => {
128
174
  finishFileUpload();
129
175
  await clearFiles();
130
176
  if (err instanceof FileSizeExceededError) {
131
- return sbvrUtils.handleHttpErrors(req, res, new errors.BadRequestError(err.message));
177
+ return sbvrUtils.handleHttpErrors(req, res, new module_1.errors.BadRequestError(err.message));
132
178
  }
133
- getLogger(getApiRoot(req)).error('Error uploading file', err);
179
+ getLogger((0, sbvr_utils_1.getApiRoot)(req)).error('Error uploading file', err);
134
180
  next(err);
135
181
  }
136
182
  });
@@ -138,24 +184,25 @@ export const getUploaderMiddlware = (handler) => {
138
184
  finishFileUpload();
139
185
  await clearFiles();
140
186
  if (err instanceof FileSizeExceededError) {
141
- return sbvrUtils.handleHttpErrors(req, res, new errors.BadRequestError(err.message));
187
+ return sbvrUtils.handleHttpErrors(req, res, new module_1.errors.BadRequestError(err.message));
142
188
  }
143
- getLogger(getApiRoot(req)).error('Error uploading file', err);
189
+ getLogger((0, sbvr_utils_1.getApiRoot)(req)).error('Error uploading file', err);
144
190
  next(err);
145
191
  });
146
192
  req.pipe(bb);
147
193
  };
148
194
  };
195
+ exports.getUploaderMiddlware = getUploaderMiddlware;
149
196
  const getWebResourceFields = (request, useTranslations = true) => {
150
197
  const resourceName = sbvrUtils.resolveSynonym(request);
151
- const sqlResourceName = odataNameToSqlName(resourceName);
198
+ const sqlResourceName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(resourceName);
152
199
  const model = sbvrUtils.getAbstractSqlModel(request).tables[sqlResourceName];
153
200
  const fields = useTranslations
154
201
  ? (model.modifyFields ?? model.fields)
155
202
  : model.fields;
156
203
  return fields
157
204
  .filter((f) => f.dataType === 'WebResource')
158
- .map((f) => sqlNameToODataName(f.fieldName));
205
+ .map((f) => (0, odata_to_abstract_sql_1.sqlNameToODataName)(f.fieldName));
159
206
  };
160
207
  const deleteFiles = async (keysToDelete, webResourceHandler) => {
161
208
  const promises = keysToDelete.map((r) => webResourceHandler.removeFile(r));
@@ -164,7 +211,7 @@ const deleteFiles = async (keysToDelete, webResourceHandler) => {
164
211
  const throwIfWebresourceNotInMultipart = (webResourceFields, { req, request }) => {
165
212
  if (!req.is?.('multipart') &&
166
213
  webResourceFields.some((field) => request.values[field] != null)) {
167
- throw new errors.BadRequestError('Use multipart requests to upload a file.');
214
+ throw new module_1.errors.BadRequestError('Use multipart requests to upload a file.');
168
215
  }
169
216
  };
170
217
  const getCreateWebResourceHooks = (webResourceHandler) => {
@@ -183,12 +230,13 @@ const getCreateWebResourceHooks = (webResourceHandler) => {
183
230
  const getWebResourcesHrefs = (webResources) => {
184
231
  const hrefs = (webResources ?? []).flatMap((resource) => Object.values(resource ?? {})
185
232
  .filter((resourceKey) => resourceKey != null)
186
- .map((resourceKey) => normalizeHref(resourceKey.href)));
233
+ .map((resourceKey) => (0, exports.normalizeHref)(resourceKey.href)));
187
234
  return hrefs;
188
235
  };
189
- export const normalizeHref = (href) => {
236
+ const normalizeHref = (href) => {
190
237
  return href.split('?')[0];
191
238
  };
239
+ exports.normalizeHref = normalizeHref;
192
240
  const getWebResourcesKeysFromRequest = (webResourceFields, { values }) => {
193
241
  return webResourceFields
194
242
  .map((field) => values[field]?.href)
@@ -216,7 +264,7 @@ const getRemoveWebResourceHooks = (webResourceHandler) => {
216
264
  tx.on('end', () => {
217
265
  deletePendingFiles(keysToDelete, request, webResourceHandler);
218
266
  });
219
- throw new errors.BadRequestError('WebResources can only be updated when providing a resource key.');
267
+ throw new module_1.errors.BadRequestError('WebResources can only be updated when providing a resource key.');
220
268
  }
221
269
  const ids = await sbvrUtils.getAffectedIds(args);
222
270
  if (ids.length === 0) {
@@ -228,7 +276,7 @@ const getRemoveWebResourceHooks = (webResourceHandler) => {
228
276
  resource: request.resourceName,
229
277
  passthrough: {
230
278
  tx: args.tx,
231
- req: permissions.root,
279
+ req: module_1.permissions.root,
232
280
  },
233
281
  options: {
234
282
  $select: webResourceFields,
@@ -261,12 +309,14 @@ const deletePendingFiles = (keysToDelete, request, webResourceHandler) => {
261
309
  getLogger(request.vocabulary).error(`Failed to delete pending files`, err);
262
310
  }
263
311
  };
264
- export const getDefaultHandler = () => {
265
- return new NoopHandler();
312
+ const getDefaultHandler = () => {
313
+ return new NoopHandler_1.NoopHandler();
266
314
  };
267
- export const setupUploadHooks = (handler, apiRoot, resourceName) => {
315
+ exports.getDefaultHandler = getDefaultHandler;
316
+ const setupUploadHooks = (handler, apiRoot, resourceName) => {
268
317
  sbvrUtils.addPureHook('DELETE', apiRoot, resourceName, getRemoveWebResourceHooks(handler));
269
318
  sbvrUtils.addPureHook('PATCH', apiRoot, resourceName, getRemoveWebResourceHooks(handler));
270
319
  sbvrUtils.addPureHook('POST', apiRoot, resourceName, getCreateWebResourceHooks(handler));
271
320
  };
321
+ exports.setupUploadHooks = setupUploadHooks;
272
322
  //# sourceMappingURL=index.js.map