@balena/pinejs 15.0.0-true-boolean-911aca4062d3132ad3c34712014739b6849fa13a → 15.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. package/.dockerignore +4 -0
  2. package/.github/workflows/flowzone.yml +21 -0
  3. package/.husky/pre-commit +4 -0
  4. package/.pinejs-cache.json +1 -0
  5. package/.resinci.yml +1 -0
  6. package/.versionbot/CHANGELOG.yml +9678 -2001
  7. package/CHANGELOG.md +2975 -2
  8. package/Dockerfile +14 -0
  9. package/Gruntfile.ts +3 -6
  10. package/README.md +10 -1
  11. package/VERSION +1 -0
  12. package/build/browser.ts +1 -1
  13. package/build/config.ts +0 -1
  14. package/docker-compose.npm-test.yml +11 -0
  15. package/docs/AdvancedUsage.md +77 -63
  16. package/docs/GettingStarted.md +90 -41
  17. package/docs/Migrations.md +102 -1
  18. package/docs/ProjectConfig.md +12 -21
  19. package/docs/Testing.md +7 -0
  20. package/out/bin/abstract-sql-compiler.js +17 -17
  21. package/out/bin/abstract-sql-compiler.js.map +1 -1
  22. package/out/bin/odata-compiler.js +23 -20
  23. package/out/bin/odata-compiler.js.map +1 -1
  24. package/out/bin/sbvr-compiler.js +22 -22
  25. package/out/bin/sbvr-compiler.js.map +1 -1
  26. package/out/bin/utils.d.ts +2 -2
  27. package/out/bin/utils.js +3 -3
  28. package/out/bin/utils.js.map +1 -1
  29. package/out/config-loader/config-loader.d.ts +9 -8
  30. package/out/config-loader/config-loader.js +135 -78
  31. package/out/config-loader/config-loader.js.map +1 -1
  32. package/out/config-loader/env.d.ts +41 -16
  33. package/out/config-loader/env.js +46 -2
  34. package/out/config-loader/env.js.map +1 -1
  35. package/out/data-server/sbvr-server.d.ts +2 -19
  36. package/out/data-server/sbvr-server.js +44 -38
  37. package/out/data-server/sbvr-server.js.map +1 -1
  38. package/out/database-layer/db.d.ts +32 -14
  39. package/out/database-layer/db.js +120 -41
  40. package/out/database-layer/db.js.map +1 -1
  41. package/out/express-emulator/express.js +10 -11
  42. package/out/express-emulator/express.js.map +1 -1
  43. package/out/http-transactions/transactions.d.ts +2 -18
  44. package/out/http-transactions/transactions.js +29 -21
  45. package/out/http-transactions/transactions.js.map +1 -1
  46. package/out/migrator/async.d.ts +7 -0
  47. package/out/migrator/async.js +168 -0
  48. package/out/migrator/async.js.map +1 -0
  49. package/out/migrator/migrations.sbvr +43 -0
  50. package/out/migrator/sync.d.ts +9 -0
  51. package/out/migrator/sync.js +106 -0
  52. package/out/migrator/sync.js.map +1 -0
  53. package/out/migrator/utils.d.ts +78 -0
  54. package/out/migrator/utils.js +283 -0
  55. package/out/migrator/utils.js.map +1 -0
  56. package/out/odata-metadata/odata-metadata-generator.js +10 -13
  57. package/out/odata-metadata/odata-metadata-generator.js.map +1 -1
  58. package/out/passport-pinejs/passport-pinejs.d.ts +1 -1
  59. package/out/passport-pinejs/passport-pinejs.js +8 -7
  60. package/out/passport-pinejs/passport-pinejs.js.map +1 -1
  61. package/out/pinejs-session-store/pinejs-session-store.d.ts +1 -1
  62. package/out/pinejs-session-store/pinejs-session-store.js +20 -6
  63. package/out/pinejs-session-store/pinejs-session-store.js.map +1 -1
  64. package/out/sbvr-api/abstract-sql.d.ts +3 -2
  65. package/out/sbvr-api/abstract-sql.js +9 -9
  66. package/out/sbvr-api/abstract-sql.js.map +1 -1
  67. package/out/sbvr-api/cached-compile.js +1 -1
  68. package/out/sbvr-api/cached-compile.js.map +1 -1
  69. package/out/sbvr-api/common-types.d.ts +6 -5
  70. package/out/sbvr-api/control-flow.d.ts +8 -1
  71. package/out/sbvr-api/control-flow.js +36 -9
  72. package/out/sbvr-api/control-flow.js.map +1 -1
  73. package/out/sbvr-api/errors.d.ts +47 -40
  74. package/out/sbvr-api/errors.js +78 -77
  75. package/out/sbvr-api/errors.js.map +1 -1
  76. package/out/sbvr-api/express-extension.d.ts +4 -0
  77. package/out/sbvr-api/hooks.d.ts +16 -15
  78. package/out/sbvr-api/hooks.js +74 -48
  79. package/out/sbvr-api/hooks.js.map +1 -1
  80. package/out/sbvr-api/odata-response.d.ts +2 -2
  81. package/out/sbvr-api/odata-response.js +28 -30
  82. package/out/sbvr-api/odata-response.js.map +1 -1
  83. package/out/sbvr-api/permissions.d.ts +17 -16
  84. package/out/sbvr-api/permissions.js +369 -304
  85. package/out/sbvr-api/permissions.js.map +1 -1
  86. package/out/sbvr-api/sbvr-utils.d.ts +33 -15
  87. package/out/sbvr-api/sbvr-utils.js +397 -235
  88. package/out/sbvr-api/sbvr-utils.js.map +1 -1
  89. package/out/sbvr-api/translations.d.ts +6 -0
  90. package/out/sbvr-api/translations.js +150 -0
  91. package/out/sbvr-api/translations.js.map +1 -0
  92. package/out/sbvr-api/uri-parser.d.ts +23 -17
  93. package/out/sbvr-api/uri-parser.js +33 -27
  94. package/out/sbvr-api/uri-parser.js.map +1 -1
  95. package/out/sbvr-api/user.sbvr +2 -0
  96. package/out/server-glue/module.d.ts +6 -6
  97. package/out/server-glue/module.js +4 -2
  98. package/out/server-glue/module.js.map +1 -1
  99. package/out/server-glue/server.js +5 -5
  100. package/out/server-glue/server.js.map +1 -1
  101. package/package.json +89 -73
  102. package/pinejs.png +0 -0
  103. package/repo.yml +9 -9
  104. package/src/bin/abstract-sql-compiler.ts +5 -7
  105. package/src/bin/odata-compiler.ts +11 -13
  106. package/src/bin/sbvr-compiler.ts +11 -17
  107. package/src/bin/utils.ts +3 -5
  108. package/src/config-loader/config-loader.ts +167 -53
  109. package/src/config-loader/env.ts +106 -6
  110. package/src/data-server/sbvr-server.js +44 -38
  111. package/src/database-layer/db.ts +205 -64
  112. package/src/express-emulator/express.js +10 -11
  113. package/src/http-transactions/transactions.js +29 -21
  114. package/src/migrator/async.ts +323 -0
  115. package/src/migrator/migrations.sbvr +43 -0
  116. package/src/migrator/sync.ts +152 -0
  117. package/src/migrator/utils.ts +458 -0
  118. package/src/odata-metadata/odata-metadata-generator.ts +12 -15
  119. package/src/passport-pinejs/passport-pinejs.ts +9 -7
  120. package/src/pinejs-session-store/pinejs-session-store.ts +15 -1
  121. package/src/sbvr-api/abstract-sql.ts +17 -14
  122. package/src/sbvr-api/common-types.ts +2 -1
  123. package/src/sbvr-api/control-flow.ts +45 -11
  124. package/src/sbvr-api/errors.ts +82 -77
  125. package/src/sbvr-api/express-extension.ts +6 -1
  126. package/src/sbvr-api/hooks.ts +123 -50
  127. package/src/sbvr-api/odata-response.ts +23 -28
  128. package/src/sbvr-api/permissions.ts +548 -415
  129. package/src/sbvr-api/sbvr-utils.ts +581 -259
  130. package/src/sbvr-api/translations.ts +248 -0
  131. package/src/sbvr-api/uri-parser.ts +63 -49
  132. package/src/sbvr-api/user.sbvr +2 -0
  133. package/src/server-glue/module.ts +16 -10
  134. package/src/server-glue/server.ts +5 -5
  135. package/tsconfig.dev.json +1 -0
  136. package/tsconfig.json +1 -2
  137. package/typings/lf-to-abstract-sql.d.ts +6 -9
  138. package/typings/memoizee.d.ts +1 -1
  139. package/.github/CODEOWNERS +0 -1
  140. package/circle.yml +0 -37
  141. package/docs/todo.txt +0 -22
  142. package/out/migrator/migrator.d.ts +0 -20
  143. package/out/migrator/migrator.js +0 -188
  144. package/out/migrator/migrator.js.map +0 -1
  145. package/src/migrator/migrator.ts +0 -286
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+ var _a;
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.PinejsSessionStore = exports.Store = void 0;
4
5
  const express_session_1 = require("express-session");
@@ -37,9 +38,9 @@ const asCallback = async (callback, promise) => {
37
38
  err = $err;
38
39
  }
39
40
  try {
40
- callback === null || callback === void 0 ? void 0 : callback(err, result);
41
+ callback?.(err, result);
41
42
  }
42
- catch (_a) {
43
+ catch {
43
44
  }
44
45
  };
45
46
  class PinejsSessionStore extends express_session_1.Store {
@@ -64,11 +65,10 @@ class PinejsSessionStore extends express_session_1.Store {
64
65
  }));
65
66
  });
66
67
  this.set = ((sid, data, callback) => {
67
- var _a, _b;
68
68
  const body = {
69
69
  session_id: sid,
70
70
  data,
71
- expiry_time: (_b = (_a = data === null || data === void 0 ? void 0 : data.cookie) === null || _a === void 0 ? void 0 : _a.expires) !== null && _b !== void 0 ? _b : null,
71
+ expiry_time: data?.cookie?.expires ?? null,
72
72
  };
73
73
  asCallback(callback, sbvr_utils_1.api.session.put({
74
74
  resource: 'session',
@@ -120,7 +120,6 @@ class PinejsSessionStore extends express_session_1.Store {
120
120
  },
121
121
  options: {
122
122
  $count: {
123
- $select: 'session_id',
124
123
  $filter: {
125
124
  expiry_time: {
126
125
  $ge: Date.now(),
@@ -132,7 +131,7 @@ class PinejsSessionStore extends express_session_1.Store {
132
131
  });
133
132
  }
134
133
  }
135
- exports.PinejsSessionStore = PinejsSessionStore;
134
+ _a = PinejsSessionStore;
136
135
  PinejsSessionStore.config = {
137
136
  models: [
138
137
  {
@@ -148,8 +147,23 @@ PinejsSessionStore.config = {
148
147
  ALTER TABLE "session"
149
148
  ADD COLUMN IF NOT EXISTS "modified at" TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL;
150
149
  `,
150
+ '15.0.0-data-types': async (tx, sbvrUtils) => {
151
+ switch (sbvrUtils.db.engine) {
152
+ case 'mysql':
153
+ await tx.executeSql(`\
154
+ ALTER TABLE "session"
155
+ MODIFY "data" JSON NOT NULL;`);
156
+ break;
157
+ case 'postgres':
158
+ await tx.executeSql(`\
159
+ ALTER TABLE "session"
160
+ ALTER COLUMN "data" SET DATA TYPE JSONB USING "data"::JSONB;`);
161
+ break;
162
+ }
163
+ },
151
164
  },
152
165
  },
153
166
  ],
154
167
  };
168
+ exports.PinejsSessionStore = PinejsSessionStore;
155
169
  //# sourceMappingURL=pinejs-session-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pinejs-session-store.js","sourceRoot":"","sources":["../../src/pinejs-session-store/pinejs-session-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pinejs-session-store.js","sourceRoot":"","sources":["../../src/pinejs-session-store/pinejs-session-store.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import * as AbstractSQLCompiler from '@balena/abstract-sql-compiler';
2
2
  import { ODataBinds } from '@balena/odata-to-abstract-sql';
3
+ import * as sbvrUtils from './sbvr-utils';
3
4
  import { ODataRequest } from './uri-parser';
4
- export declare const compileRequest: (request: ODataRequest) => ODataRequest;
5
+ export declare const compileRequest: (request: ODataRequest) => sbvrUtils.ODataRequest;
5
6
  export declare const resolveOdataBind: (odataBinds: ODataBinds, value: any) => any;
6
7
  export declare const getAndCheckBindValues: (request: Required<Pick<ODataRequest, 'vocabulary' | 'odataBinds' | 'values' | 'engine'>>, bindings: AbstractSQLCompiler.Binding[]) => Promise<any[]>;
7
- export declare const isRuleAffected: (rule: AbstractSQLCompiler.SqlRule, request?: ODataRequest | undefined) => boolean;
8
+ export declare const isRuleAffected: (rule: AbstractSQLCompiler.SqlRule, request?: Pick<ODataRequest, 'abstractSqlQuery' | 'modifiedFields' | 'method' | 'vocabulary'>) => boolean;
@@ -6,11 +6,10 @@ const AbstractSQLCompiler = require("@balena/abstract-sql-compiler");
6
6
  const odata_to_abstract_sql_1 = require("@balena/odata-to-abstract-sql");
7
7
  const deepFreeze = require("deep-freeze");
8
8
  const memoize = require("memoizee");
9
- const memoizeWeak = require("memoizee/weak");
10
9
  const env = require("../config-loader/env");
11
10
  const errors_1 = require("./errors");
12
11
  const sbvrUtils = require("./sbvr-utils");
13
- const getMemoizedCompileRule = memoize((engine) => memoizeWeak((abstractSqlQuery) => {
12
+ const getMemoizedCompileRule = memoize((engine) => env.createCache('abstractSqlCompiler', (abstractSqlQuery) => {
14
13
  const sqlQuery = AbstractSQLCompiler[engine].compileRule(abstractSqlQuery);
15
14
  const modifiedFields = AbstractSQLCompiler[engine].getModifiedFields(abstractSqlQuery);
16
15
  if (modifiedFields != null) {
@@ -20,7 +19,7 @@ const getMemoizedCompileRule = memoize((engine) => memoizeWeak((abstractSqlQuery
20
19
  sqlQuery,
21
20
  modifiedFields,
22
21
  };
23
- }, { max: env.cache.abstractSqlCompiler.max }), { primitive: true });
22
+ }, { weak: true }), { primitive: true });
24
23
  const compileRequest = (request) => {
25
24
  if (request.abstractSqlQuery != null) {
26
25
  const { engine } = request;
@@ -41,7 +40,7 @@ const compileRequest = (request) => {
41
40
  };
42
41
  exports.compileRequest = compileRequest;
43
42
  const resolveOdataBind = (odataBinds, value) => {
44
- if (value != null && typeof value === 'object' && odata_to_abstract_sql_1.isBindReference(value)) {
43
+ if (value != null && typeof value === 'object' && (0, odata_to_abstract_sql_1.isBindReference)(value)) {
45
44
  [, value] = odataBinds[value.bind];
46
45
  }
47
46
  return value;
@@ -64,10 +63,11 @@ const getAndCheckBindValues = async (request, bindings) => {
64
63
  if (value === undefined) {
65
64
  value = values[fieldName];
66
65
  }
67
- value = exports.resolveOdataBind(odataBinds, value);
68
- const sqlTableName = odata_to_abstract_sql_1.odataNameToSqlName(tableName);
69
- const sqlFieldName = odata_to_abstract_sql_1.odataNameToSqlName(fieldName);
70
- const maybeField = sqlModelTables[sqlTableName].fields.find((f) => f.fieldName === sqlFieldName);
66
+ value = (0, exports.resolveOdataBind)(odataBinds, value);
67
+ const sqlTableName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(tableName);
68
+ const sqlFieldName = (0, odata_to_abstract_sql_1.odataNameToSqlName)(fieldName);
69
+ const table = sqlModelTables[sqlTableName];
70
+ const maybeField = (table.modifyFields ?? table.fields).find((f) => f.fieldName === sqlFieldName);
71
71
  if (maybeField == null) {
72
72
  throw new Error(`Could not find field '${fieldName}'`);
73
73
  }
@@ -127,7 +127,7 @@ const checkModifiedFields = (ruleReferencedFields, modifiedFields) => {
127
127
  0);
128
128
  };
129
129
  const isRuleAffected = (rule, request) => {
130
- if ((request === null || request === void 0 ? void 0 : request.abstractSqlQuery) == null) {
130
+ if (request?.abstractSqlQuery == null) {
131
131
  return false;
132
132
  }
133
133
  if (rule.ruleReferencedFields == null) {
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-sql.js","sourceRoot":"","sources":["../../src/sbvr-api/abstract-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-sql.js","sourceRoot":"","sources":["../../src/sbvr-api/abstract-sql.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,7 @@ const cachedCompile = (name, version, src, fn) => {
32
32
  catch (e) {
33
33
  }
34
34
  }
35
- cache !== null && cache !== void 0 ? cache : (cache = {});
35
+ cache ??= {};
36
36
  }
37
37
  const key = [name, version, JSON.stringify(src)];
38
38
  let result = _.get(cache, key);
@@ -1 +1 @@
1
- {"version":3,"file":"cached-compile.js","sourceRoot":"","sources":["../../src/sbvr-api/cached-compile.ts"],"names":[],"mappings":";;;AAEA,4BAA4B;AAE5B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,oBAAoB,CAAC;AACxE,IAAI,KAAK,GAML,IAAI,CAAC;AACT,IAAI,EAAyB,CAAC;AAC9B,IAAI;IAEH,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnB;AAAC,OAAO,CAAC,EAAE;CAEX;AAED,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC,MAAM,SAAS,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE;IACjC,IAAI,EAAE,IAAI,IAAI,EAAE;QACf,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;YAC9D,IAAI,GAAG,EAAE;gBACR,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;aAChD;QACF,CAAC,CAAC,CAAC;KACH;AACF,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAEvB,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE;IAClC,KAAK,GAAG,IAAI,CAAC;AACd,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,CAAC;AAEpB,MAAM,aAAa,GAAG,CAC5B,IAAY,EACZ,OAAe,EACf,GAAQ,EACR,EAAW,EACP,EAAE;IACN,IAAI,KAAK,IAAI,IAAI,EAAE;QAClB,IAAI,EAAE,IAAI,IAAI,EAAE;YACf,IAAI;gBACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;aACvD;YAAC,OAAO,CAAC,EAAE;aAEX;SACD;QACD,KAAK,aAAL,KAAK,cAAL,KAAK,IAAL,KAAK,GAAK,EAAE,EAAC;KACb;IACD,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/B,IAAI,MAAM,IAAI,IAAI,EAAE;QACnB,MAAM,GAAG,EAAE,EAAE,CAAC;QACd,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1B,SAAS,EAAE,CAAC;KACZ;IAKD,UAAU,EAAE,CAAC;IACb,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC,CAAC;AA7BW,QAAA,aAAa,iBA6BxB"}
1
+ {"version":3,"file":"cached-compile.js","sourceRoot":"","sources":["../../src/sbvr-api/cached-compile.ts"],"names":[],"mappings":";;;AAEA,4BAA4B;AAE5B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,oBAAoB,CAAC;AACxE,IAAI,KAAK,GAML,IAAI,CAAC;AACT,IAAI,EAAyB,CAAC;AAC9B,IAAI;IAEH,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnB;AAAC,OAAO,CAAC,EAAE;CAEX;AAED,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC,MAAM,SAAS,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE;IACjC,IAAI,EAAE,IAAI,IAAI,EAAE;QACf,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE;YAC9D,IAAI,GAAG,EAAE;gBACR,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;aAChD;QACF,CAAC,CAAC,CAAC;KACH;AACF,CAAC,EAAE,kBAAkB,CAAC,CAAC;AAEvB,MAAM,UAAU,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE;IAClC,KAAK,GAAG,IAAI,CAAC;AACd,CAAC,EAAE,kBAAkB,GAAG,CAAC,CAAC,CAAC;AAEpB,MAAM,aAAa,GAAG,CAC5B,IAAY,EACZ,OAAe,EACf,GAAQ,EACR,EAAW,EACP,EAAE;IACN,IAAI,KAAK,IAAI,IAAI,EAAE;QAClB,IAAI,EAAE,IAAI,IAAI,EAAE;YACf,IAAI;gBACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;aACvD;YAAC,OAAO,CAAC,EAAE;aAEX;SACD;QACD,KAAK,KAAK,EAAE,CAAC;KACb;IACD,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IACjD,IAAI,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC/B,IAAI,MAAM,IAAI,IAAI,EAAE;QACnB,MAAM,GAAG,EAAE,EAAE,CAAC;QACd,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAC1B,SAAS,EAAE,CAAC;KACZ;IAKD,UAAU,EAAE,CAAC;IACb,OAAO,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC,CAAC;AA7BW,QAAA,aAAa,iBA6BxB"}
@@ -1,5 +1,6 @@
1
- export { AnyObject } from 'pinejs-client-core';
2
- declare type Overwrite<T, U> = Pick<T, Exclude<keyof T, keyof U>> & U;
3
- export declare type RequiredField<T, F extends keyof T> = Overwrite<T, Required<Pick<T, F>>>;
4
- export declare type OptionalField<T, F extends keyof T> = Overwrite<T, Partial<Pick<T, F>>>;
5
- export declare type Resolvable<R> = R | PromiseLike<R>;
1
+ export { AnyObject, Dictionary } from 'pinejs-client-core';
2
+ type Overwrite<T, U> = Pick<T, Exclude<keyof T, keyof U>> & U;
3
+ export type RequiredField<T, F extends keyof T> = Overwrite<T, Required<Pick<T, F>>>;
4
+ export type OptionalField<T, F extends keyof T> = Overwrite<T, Partial<Pick<T, F>>>;
5
+ export type Resolvable<R> = R | PromiseLike<R>;
6
+ export type Tail<T extends any[]> = T extends [any, ...infer U] ? U : never;
@@ -1,7 +1,14 @@
1
1
  import type { Resolvable } from './common-types';
2
- export declare type MappingFunction = <T, U>(a: T[], fn: (v: T) => Resolvable<U>) => Promise<Array<U | Error>>;
2
+ import { TypedError } from 'typed-error';
3
+ export type MappingFunction = <T, U>(a: T[], fn: (v: T) => Resolvable<U>) => Promise<Array<U | Error>>;
4
+ export declare const mapSeries: <T, U>(a: T[], fn: (v: T) => Resolvable<U>) => Promise<U[]>;
3
5
  export declare const settleMapSeries: MappingFunction;
4
6
  export declare const getMappingFn: (headers?: {
5
7
  [key: string]: string | string[] | undefined;
6
8
  prefer?: string | string[] | undefined;
7
9
  } | undefined) => MappingFunction;
10
+ export declare const delay: (ms: number) => Promise<void>;
11
+ export declare const fromCallback: <T>(resolver: (callback: (err: any, result?: T | undefined) => void) => void) => Promise<T>;
12
+ export declare class TimeoutError extends TypedError {
13
+ }
14
+ export declare const timeout: <T>(promise: Promise<T>, ms: number, msg?: string) => Promise<T>;
@@ -1,20 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMappingFn = exports.settleMapSeries = void 0;
3
+ exports.timeout = exports.TimeoutError = exports.fromCallback = exports.delay = exports.getMappingFn = exports.settleMapSeries = exports.mapSeries = void 0;
4
4
  const _ = require("lodash");
5
- const settleMapSeries = async (a, fn) => {
5
+ const typed_error_1 = require("typed-error");
6
+ const mapSeries = async (a, fn) => {
6
7
  const results = [];
7
8
  for (const p of a) {
8
- try {
9
- const result = await fn(p);
10
- results.push(result);
11
- }
12
- catch (err) {
13
- results.push(ensureError(err));
14
- }
9
+ results.push(await fn(p));
15
10
  }
16
11
  return results;
17
12
  };
13
+ exports.mapSeries = mapSeries;
14
+ const settleMapSeries = async (a, fn) => await (0, exports.mapSeries)(a, async (p) => {
15
+ try {
16
+ return await fn(p);
17
+ }
18
+ catch (err) {
19
+ return ensureError(err);
20
+ }
21
+ });
18
22
  exports.settleMapSeries = settleMapSeries;
19
23
  const ensureError = (err) => {
20
24
  if (err instanceof Error || _.isError(err)) {
@@ -45,4 +49,27 @@ const getMappingFn = (headers) => {
45
49
  }
46
50
  };
47
51
  exports.getMappingFn = getMappingFn;
52
+ const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
53
+ exports.delay = delay;
54
+ const fromCallback = (resolver) => new Promise((resolve, reject) => {
55
+ resolver((err, result) => {
56
+ if (err) {
57
+ reject(err);
58
+ }
59
+ else {
60
+ resolve(result);
61
+ }
62
+ });
63
+ });
64
+ exports.fromCallback = fromCallback;
65
+ class TimeoutError extends typed_error_1.TypedError {
66
+ }
67
+ exports.TimeoutError = TimeoutError;
68
+ const timeout = async (promise, ms, msg = 'operation timed out') => await Promise.race([
69
+ promise,
70
+ (0, exports.delay)(ms).then(() => {
71
+ throw new TimeoutError(msg);
72
+ }),
73
+ ]);
74
+ exports.timeout = timeout;
48
75
  //# sourceMappingURL=control-flow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"control-flow.js","sourceRoot":"","sources":["../../src/sbvr-api/control-flow.ts"],"names":[],"mappings":";;;AAEA,4BAA4B;AAQrB,MAAM,eAAe,GAAoB,KAAK,EACpD,CAAM,EACN,EAA2B,EAC1B,EAAE;IACH,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;QAClB,IAAI;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACrB;QAAC,OAAO,GAAG,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;SAC/B;KACD;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B;AAGF,MAAM,WAAW,GAAG,CAAC,GAAQ,EAAS,EAAE;IACvC,IAAI,GAAG,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;QAC3C,OAAO,GAAG,CAAC;KACX;IACD,OAAO,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC;AAKF,MAAM,OAAO,GAAoB,KAAK,EACrC,CAAM,EACN,EAA2B,EAC1B,EAAE;IACH,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;QAClB,IAAI;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACrB;QAAC,OAAO,GAAG,EAAE;YACb,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,MAAM;SACN;KACD;IACD,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAIK,MAAM,YAAY,GAAG,CAAC,OAG5B,EAAmB,EAAE;IACrB,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,yBAAyB,EAAE;QACpE,OAAO,uBAAe,CAAC;KACvB;SAAM;QACN,OAAO,OAAO,CAAC;KACf;AACF,CAAC,CAAC;AATW,QAAA,YAAY,gBASvB"}
1
+ {"version":3,"file":"control-flow.js","sourceRoot":"","sources":["../../src/sbvr-api/control-flow.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AnyObject } from './common-types';
1
+ import type { AnyObject, Tail } from './common-types';
2
2
  import { TypedError } from 'typed-error';
3
3
  export declare class PermissionError extends TypedError {
4
4
  }
@@ -15,122 +15,128 @@ export declare class ParsingError extends TypedError {
15
15
  export declare class HttpError extends TypedError {
16
16
  status: number;
17
17
  body?: string | AnyObject | undefined;
18
- constructor(status: number, error?: string | Error, body?: string | AnyObject | undefined);
18
+ headers?: {
19
+ [headerName: string]: any;
20
+ } | undefined;
21
+ constructor(status: number, error?: string | Error, body?: string | AnyObject | undefined, headers?: {
22
+ [headerName: string]: any;
23
+ } | undefined);
19
24
  getResponseBody(): string | AnyObject;
20
25
  }
26
+ type HttpErrorTailArgs = Tail<ConstructorParameters<typeof HttpError>>;
21
27
  export declare class BadRequestError extends HttpError {
22
- constructor(error?: string | Error, body?: string | AnyObject);
28
+ constructor(...args: HttpErrorTailArgs);
23
29
  }
24
30
  export declare class UnauthorizedError extends HttpError {
25
- constructor(error?: string | Error, body?: string | AnyObject);
31
+ constructor(...args: HttpErrorTailArgs);
26
32
  }
27
33
  export declare class PaymentRequired extends HttpError {
28
- constructor(error?: string | Error, body?: string | AnyObject);
34
+ constructor(...args: HttpErrorTailArgs);
29
35
  }
30
36
  export declare class ForbiddenError extends HttpError {
31
- constructor(error?: string | Error, body?: string | AnyObject);
37
+ constructor(...args: HttpErrorTailArgs);
32
38
  }
33
39
  export declare class NotFoundError extends HttpError {
34
- constructor(error?: string | Error, body?: string | AnyObject);
40
+ constructor(...args: HttpErrorTailArgs);
35
41
  }
36
42
  export declare class MethodNotAllowedError extends HttpError {
37
- constructor(error?: string | Error, body?: string | AnyObject);
43
+ constructor(...args: HttpErrorTailArgs);
38
44
  }
39
45
  export declare class NotAcceptableError extends HttpError {
40
- constructor(error?: string | Error, body?: string | AnyObject);
46
+ constructor(...args: HttpErrorTailArgs);
41
47
  }
42
48
  export declare class ProxyAuthenticationRequiredError extends HttpError {
43
- constructor(error?: string | Error, body?: string | AnyObject);
49
+ constructor(...args: HttpErrorTailArgs);
44
50
  }
45
51
  export declare class RequestTimeoutError extends HttpError {
46
- constructor(error?: string | Error, body?: string | AnyObject);
52
+ constructor(...args: HttpErrorTailArgs);
47
53
  }
48
54
  export declare class ConflictError extends HttpError {
49
- constructor(error?: string | Error, body?: string | AnyObject);
55
+ constructor(...args: HttpErrorTailArgs);
50
56
  }
51
57
  export declare class GoneError extends HttpError {
52
- constructor(error?: string | Error, body?: string | AnyObject);
58
+ constructor(...args: HttpErrorTailArgs);
53
59
  }
54
60
  export declare class LengthRequiredError extends HttpError {
55
- constructor(error?: string | Error, body?: string | AnyObject);
61
+ constructor(...args: HttpErrorTailArgs);
56
62
  }
57
63
  export declare class PreconditionFailedError extends HttpError {
58
- constructor(error?: string | Error, body?: string | AnyObject);
64
+ constructor(...args: HttpErrorTailArgs);
59
65
  }
60
66
  export declare class PayloadTooLargeError extends HttpError {
61
- constructor(error?: string | Error, body?: string | AnyObject);
67
+ constructor(...args: HttpErrorTailArgs);
62
68
  }
63
69
  export declare class URITooLongError extends HttpError {
64
- constructor(error?: string | Error, body?: string | AnyObject);
70
+ constructor(...args: HttpErrorTailArgs);
65
71
  }
66
72
  export declare class UnsupportedMediaTypeError extends HttpError {
67
- constructor(error?: string | Error, body?: string | AnyObject);
73
+ constructor(...args: HttpErrorTailArgs);
68
74
  }
69
75
  export declare class RequestedRangeNotSatisfiableError extends HttpError {
70
- constructor(error?: string | Error, body?: string | AnyObject);
76
+ constructor(...args: HttpErrorTailArgs);
71
77
  }
72
78
  export declare class ExpectationFailedError extends HttpError {
73
- constructor(error?: string | Error, body?: string | AnyObject);
79
+ constructor(...args: HttpErrorTailArgs);
74
80
  }
75
81
  export declare class MisdirectedRequestError extends HttpError {
76
- constructor(error?: string | Error, body?: string | AnyObject);
82
+ constructor(...args: HttpErrorTailArgs);
77
83
  }
78
84
  export declare class UnprocessableEntityError extends HttpError {
79
- constructor(error?: string | Error, body?: string | AnyObject);
85
+ constructor(...args: HttpErrorTailArgs);
80
86
  }
81
87
  export declare class LockedError extends HttpError {
82
- constructor(error?: string | Error, body?: string | AnyObject);
88
+ constructor(...args: HttpErrorTailArgs);
83
89
  }
84
90
  export declare class FailedDependencyError extends HttpError {
85
- constructor(error?: string | Error, body?: string | AnyObject);
91
+ constructor(...args: HttpErrorTailArgs);
86
92
  }
87
93
  export declare class UpgradeRequiredError extends HttpError {
88
- constructor(error?: string | Error, body?: string | AnyObject);
94
+ constructor(...args: HttpErrorTailArgs);
89
95
  }
90
96
  export declare class PreconditionRequiredError extends HttpError {
91
- constructor(error?: string | Error, body?: string | AnyObject);
97
+ constructor(...args: HttpErrorTailArgs);
92
98
  }
93
99
  export declare class TooManyRequestsError extends HttpError {
94
- constructor(error?: string | Error, body?: string | AnyObject);
100
+ constructor(...args: HttpErrorTailArgs);
95
101
  }
96
102
  export declare class RequestHeaderFieldsTooLargeError extends HttpError {
97
- constructor(error?: string | Error, body?: string | AnyObject);
103
+ constructor(...args: HttpErrorTailArgs);
98
104
  }
99
105
  export declare class UnavailableForLegalReasonsError extends HttpError {
100
- constructor(error?: string | Error, body?: string | AnyObject);
106
+ constructor(...args: HttpErrorTailArgs);
101
107
  }
102
108
  export declare class InternalRequestError extends HttpError {
103
- constructor(error?: string | Error, body?: string | AnyObject);
109
+ constructor(...args: HttpErrorTailArgs);
104
110
  }
105
111
  export declare class NotImplementedError extends HttpError {
106
- constructor(error?: string | Error, body?: string | AnyObject);
112
+ constructor(...args: HttpErrorTailArgs);
107
113
  }
108
114
  export declare class BadGatewayError extends HttpError {
109
- constructor(error?: string | Error, body?: string | AnyObject);
115
+ constructor(...args: HttpErrorTailArgs);
110
116
  }
111
117
  export declare class ServiceUnavailableError extends HttpError {
112
- constructor(error?: string | Error, body?: string | AnyObject);
118
+ constructor(...args: HttpErrorTailArgs);
113
119
  }
114
120
  export declare class GatewayTimeoutError extends HttpError {
115
- constructor(error?: string | Error, body?: string | AnyObject);
121
+ constructor(...args: HttpErrorTailArgs);
116
122
  }
117
123
  export declare class HTTPVersionNotSupportedError extends HttpError {
118
- constructor(error?: string | Error, body?: string | AnyObject);
124
+ constructor(...args: HttpErrorTailArgs);
119
125
  }
120
126
  export declare class VariantAlsoNegotiatesError extends HttpError {
121
- constructor(error?: string | Error, body?: string | AnyObject);
127
+ constructor(...args: HttpErrorTailArgs);
122
128
  }
123
129
  export declare class InsufficientStorageError extends HttpError {
124
- constructor(error?: string | Error, body?: string | AnyObject);
130
+ constructor(...args: HttpErrorTailArgs);
125
131
  }
126
132
  export declare class LoopDetectedError extends HttpError {
127
- constructor(error?: string | Error, body?: string | AnyObject);
133
+ constructor(...args: HttpErrorTailArgs);
128
134
  }
129
135
  export declare class NotExtendedError extends HttpError {
130
- constructor(error?: string | Error, body?: string | AnyObject);
136
+ constructor(...args: HttpErrorTailArgs);
131
137
  }
132
138
  export declare class NetworkAuthenticationRequiredError extends HttpError {
133
- constructor(error?: string | Error, body?: string | AnyObject);
139
+ constructor(...args: HttpErrorTailArgs);
134
140
  }
135
141
  export declare const statusCodeToError: {
136
142
  400: typeof BadRequestError;
@@ -172,3 +178,4 @@ export declare const statusCodeToError: {
172
178
  510: typeof NotExtendedError;
173
179
  511: typeof NetworkAuthenticationRequiredError;
174
180
  };
181
+ export {};