@balena/pinejs 19.7.2 → 20.0.0-build-esm-724decc895c0df04c6238f249763a742cc5efa39-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 (170) hide show
  1. package/.pinejs-cache.json +1 -1
  2. package/.versionbot/CHANGELOG.yml +45 -1
  3. package/CHANGELOG.md +8 -0
  4. package/{Gruntfile.ts → Gruntfile.cts} +9 -22
  5. package/VERSION +1 -1
  6. package/bin/abstract-sql-compiler.js +1 -1
  7. package/bin/odata-compiler.js +1 -1
  8. package/bin/sbvr-compiler.js +1 -1
  9. package/build/{browser.ts → browser.cts} +1 -1
  10. package/build/{config.ts → config.cts} +5 -1
  11. package/build/{module.ts → module.cts} +1 -1
  12. package/build/{server.ts → server.cts} +1 -1
  13. package/out/bin/abstract-sql-compiler.js +17 -19
  14. package/out/bin/abstract-sql-compiler.js.map +1 -1
  15. package/out/bin/odata-compiler.js +19 -21
  16. package/out/bin/odata-compiler.js.map +1 -1
  17. package/out/bin/sbvr-compiler.js +19 -54
  18. package/out/bin/sbvr-compiler.js.map +1 -1
  19. package/out/bin/utils.d.ts +3 -3
  20. package/out/bin/utils.js +21 -53
  21. package/out/bin/utils.js.map +1 -1
  22. package/out/config-loader/config-loader.d.ts +7 -7
  23. package/out/config-loader/config-loader.js +23 -63
  24. package/out/config-loader/config-loader.js.map +1 -1
  25. package/out/config-loader/env.d.ts +1 -1
  26. package/out/config-loader/env.js +24 -66
  27. package/out/config-loader/env.js.map +1 -1
  28. package/out/data-server/sbvr-server.d.ts +3 -3
  29. package/out/data-server/sbvr-server.js +5 -42
  30. package/out/data-server/sbvr-server.js.map +1 -1
  31. package/out/database-layer/db.d.ts +3 -3
  32. package/out/database-layer/db.js +37 -83
  33. package/out/database-layer/db.js.map +1 -1
  34. package/out/express-emulator/express.js.map +1 -1
  35. package/out/extended-sbvr-parser/extended-sbvr-parser.js +8 -11
  36. package/out/extended-sbvr-parser/extended-sbvr-parser.js.map +1 -1
  37. package/out/http-transactions/transactions.d.ts +2 -2
  38. package/out/http-transactions/transactions.js +4 -4
  39. package/out/http-transactions/transactions.js.map +1 -1
  40. package/out/migrator/async.d.ts +2 -2
  41. package/out/migrator/async.js +20 -60
  42. package/out/migrator/async.js.map +1 -1
  43. package/out/migrator/migrations.js +1 -2
  44. package/out/migrator/sync.d.ts +6 -6
  45. package/out/migrator/sync.js +20 -61
  46. package/out/migrator/sync.js.map +1 -1
  47. package/out/migrator/utils.d.ts +4 -4
  48. package/out/migrator/utils.js +42 -97
  49. package/out/migrator/utils.js.map +1 -1
  50. package/out/odata-metadata/odata-metadata-generator.js +7 -14
  51. package/out/odata-metadata/odata-metadata-generator.js.map +1 -1
  52. package/out/passport-pinejs/mount-login-router.d.ts +1 -1
  53. package/out/passport-pinejs/mount-login-router.js +4 -41
  54. package/out/passport-pinejs/mount-login-router.js.map +1 -1
  55. package/out/passport-pinejs/passport-pinejs.d.ts +3 -3
  56. package/out/passport-pinejs/passport-pinejs.js +11 -46
  57. package/out/passport-pinejs/passport-pinejs.js.map +1 -1
  58. package/out/pinejs-session-store/pinejs-session-store.d.ts +1 -1
  59. package/out/pinejs-session-store/pinejs-session-store.js +11 -48
  60. package/out/pinejs-session-store/pinejs-session-store.js.map +1 -1
  61. package/out/sbvr-api/abstract-sql.d.ts +3 -3
  62. package/out/sbvr-api/abstract-sql.js +22 -65
  63. package/out/sbvr-api/abstract-sql.js.map +1 -1
  64. package/out/sbvr-api/cached-compile.js +8 -15
  65. package/out/sbvr-api/cached-compile.js.map +1 -1
  66. package/out/sbvr-api/common-types.js +1 -2
  67. package/out/sbvr-api/control-flow.d.ts +1 -1
  68. package/out/sbvr-api/control-flow.js +12 -25
  69. package/out/sbvr-api/control-flow.js.map +1 -1
  70. package/out/sbvr-api/dev.js +1 -2
  71. package/out/sbvr-api/errors.d.ts +1 -1
  72. package/out/sbvr-api/errors.js +47 -95
  73. package/out/sbvr-api/errors.js.map +1 -1
  74. package/out/sbvr-api/express-extension.d.ts +2 -2
  75. package/out/sbvr-api/express-extension.js +1 -2
  76. package/out/sbvr-api/hooks.d.ts +4 -4
  77. package/out/sbvr-api/hooks.js +23 -35
  78. package/out/sbvr-api/hooks.js.map +1 -1
  79. package/out/sbvr-api/odata-response.d.ts +2 -2
  80. package/out/sbvr-api/odata-response.js +19 -29
  81. package/out/sbvr-api/odata-response.js.map +1 -1
  82. package/out/sbvr-api/permissions.d.ts +9 -9
  83. package/out/sbvr-api/permissions.js +106 -159
  84. package/out/sbvr-api/permissions.js.map +1 -1
  85. package/out/sbvr-api/sbvr-utils.d.ts +40 -18
  86. package/out/sbvr-api/sbvr-utils.js +222 -285
  87. package/out/sbvr-api/sbvr-utils.js.map +1 -1
  88. package/out/sbvr-api/translations.d.ts +1 -1
  89. package/out/sbvr-api/translations.js +10 -17
  90. package/out/sbvr-api/translations.js.map +1 -1
  91. package/out/sbvr-api/uri-parser.d.ts +7 -7
  92. package/out/sbvr-api/uri-parser.js +39 -84
  93. package/out/sbvr-api/uri-parser.js.map +1 -1
  94. package/out/sbvr-api/user.js +1 -2
  95. package/out/server-glue/global-ext.d.ts +0 -3
  96. package/out/server-glue/module.d.ts +16 -16
  97. package/out/server-glue/module.js +20 -59
  98. package/out/server-glue/module.js.map +1 -1
  99. package/out/server-glue/sbvr-loader.d.ts +2 -1
  100. package/out/server-glue/sbvr-loader.js +4 -11
  101. package/out/server-glue/sbvr-loader.js.map +1 -1
  102. package/out/server-glue/server.d.ts +2 -2
  103. package/out/server-glue/server.js +17 -59
  104. package/out/server-glue/server.js.map +1 -1
  105. package/out/tasks/common.d.ts +1 -1
  106. package/out/tasks/common.js +3 -9
  107. package/out/tasks/common.js.map +1 -1
  108. package/out/tasks/index.d.ts +8 -8
  109. package/out/tasks/index.js +25 -63
  110. package/out/tasks/index.js.map +1 -1
  111. package/out/tasks/tasks.js +1 -2
  112. package/out/tasks/worker.d.ts +3 -3
  113. package/out/tasks/worker.js +14 -51
  114. package/out/tasks/worker.js.map +1 -1
  115. package/out/webresource-handler/handlers/NoopHandler.d.ts +1 -1
  116. package/out/webresource-handler/handlers/NoopHandler.js +1 -5
  117. package/out/webresource-handler/handlers/NoopHandler.js.map +1 -1
  118. package/out/webresource-handler/handlers/index.d.ts +1 -2
  119. package/out/webresource-handler/handlers/index.js +1 -18
  120. package/out/webresource-handler/handlers/index.js.map +1 -1
  121. package/out/webresource-handler/index.d.ts +3 -3
  122. package/out/webresource-handler/index.js +37 -87
  123. package/out/webresource-handler/index.js.map +1 -1
  124. package/package.json +15 -14
  125. package/src/bin/abstract-sql-compiler.ts +3 -3
  126. package/src/bin/odata-compiler.ts +3 -3
  127. package/src/bin/sbvr-compiler.ts +2 -2
  128. package/src/bin/utils.ts +23 -15
  129. package/src/config-loader/config-loader.ts +12 -12
  130. package/src/config-loader/env.ts +3 -3
  131. package/src/data-server/sbvr-server.ts +4 -4
  132. package/src/database-layer/db.ts +18 -11
  133. package/src/extended-sbvr-parser/extended-sbvr-parser.ts +5 -5
  134. package/src/http-transactions/transactions.js +4 -4
  135. package/src/migrator/async.ts +5 -5
  136. package/src/migrator/sync.ts +8 -8
  137. package/src/migrator/utils.ts +7 -7
  138. package/src/odata-metadata/odata-metadata-generator.ts +3 -2
  139. package/src/passport-pinejs/mount-login-router.ts +3 -3
  140. package/src/passport-pinejs/passport-pinejs.ts +6 -6
  141. package/src/pinejs-session-store/pinejs-session-store.ts +4 -4
  142. package/src/sbvr-api/abstract-sql.ts +6 -6
  143. package/src/sbvr-api/cached-compile.ts +2 -2
  144. package/src/sbvr-api/control-flow.ts +1 -1
  145. package/src/sbvr-api/errors.ts +1 -1
  146. package/src/sbvr-api/express-extension.ts +2 -2
  147. package/src/sbvr-api/hooks.ts +5 -5
  148. package/src/sbvr-api/odata-response.ts +8 -4
  149. package/src/sbvr-api/permissions.ts +19 -19
  150. package/src/sbvr-api/sbvr-utils.ts +39 -33
  151. package/src/sbvr-api/translations.ts +1 -1
  152. package/src/sbvr-api/uri-parser.ts +10 -10
  153. package/src/server-glue/global-ext.d.ts +0 -3
  154. package/src/server-glue/module.ts +20 -20
  155. package/src/server-glue/sbvr-loader.ts +15 -27
  156. package/src/server-glue/server.ts +13 -24
  157. package/src/tasks/common.ts +1 -1
  158. package/src/tasks/index.ts +14 -14
  159. package/src/tasks/worker.ts +8 -8
  160. package/src/webresource-handler/handlers/NoopHandler.ts +5 -1
  161. package/src/webresource-handler/handlers/index.ts +1 -2
  162. package/src/webresource-handler/index.ts +13 -13
  163. package/tsconfig.dev.json +4 -2
  164. package/tsconfig.json +1 -1
  165. package/typings/lf-to-abstract-sql.d.ts +2 -2
  166. package/typings/memoizee.d.ts +2 -2
  167. package/out/webresource-handler/handlers/S3Handler.d.ts +0 -28
  168. package/out/webresource-handler/handlers/S3Handler.js +0 -104
  169. package/out/webresource-handler/handlers/S3Handler.js.map +0 -1
  170. package/src/webresource-handler/handlers/S3Handler.ts +0 -143
@@ -1,3 +1,39 @@
1
+ - commits:
2
+ - subject: Drop exposed S3 handler in favor of @balena/pinejs-webresource-s3 handler
3
+ hash: 724decc895c0df04c6238f249763a742cc5efa39
4
+ body: ""
5
+ footer:
6
+ Change-type: major
7
+ change-type: major
8
+ author: Otavio Jacobi
9
+ nested: []
10
+ - subject: Update commander to 13.x
11
+ hash: 78a099606f287bc0df4001425788a7ad1c708ba1
12
+ body: ""
13
+ footer:
14
+ Change-type: major
15
+ change-type: major
16
+ author: Pagan Gazzard
17
+ nested: []
18
+ - subject: Update chai to 5.x
19
+ hash: 04952e365972ca26a8734e3e9e31434ae3515902
20
+ body: ""
21
+ footer:
22
+ Change-type: patch
23
+ change-type: patch
24
+ author: Pagan Gazzard
25
+ nested: []
26
+ - subject: Convert to ESM
27
+ hash: 03fe33f53910a935c23eb721db25c984d6c8caae
28
+ body: ""
29
+ footer:
30
+ Change-type: patch
31
+ change-type: patch
32
+ author: Pagan Gazzard
33
+ nested: []
34
+ version: 20.0.0
35
+ title: ""
36
+ date: 2025-01-03T11:32:12.742Z
1
37
  - commits:
2
38
  - subject: Update dependencies
3
39
  hash: a909ee054f395de407ec4e1275fd0f5b7514fe29
@@ -9,7 +45,7 @@
9
45
  nested: []
10
46
  version: 19.7.2
11
47
  title: ""
12
- date: 2025-01-02T16:35:55.788Z
48
+ date: 2025-01-02T16:47:36.699Z
13
49
  - commits:
14
50
  - subject: Use/export explicit functions for loading SBVR files
15
51
  hash: c47a755613fec8293547c7cfb34cc9e707a7c703
@@ -2058,6 +2094,7 @@
2058
2094
 
2059
2095
 
2060
2096
 
2097
+
2061
2098
 
2062
2099
 
2063
2100
  As balena-lint
@@ -2100,6 +2137,7 @@
2100
2137
 
2101
2138
 
2102
2139
 
2140
+
2103
2141
 
2104
2142
 
2105
2143
  As engine and npm is
@@ -2157,6 +2195,7 @@
2157
2195
 
2158
2196
 
2159
2197
 
2198
+
2160
2199
 
2161
2200
 
2162
2201
  Ensure that the
@@ -2277,6 +2316,7 @@
2277
2316
 
2278
2317
 
2279
2318
 
2319
+
2280
2320
 
2281
2321
 
2282
2322
  This also deprecates
@@ -2325,6 +2365,7 @@
2325
2365
 
2326
2366
 
2327
2367
 
2368
+
2328
2369
 
2329
2370
 
2330
2371
  It can in fact be a
@@ -2374,6 +2415,7 @@
2374
2415
 
2375
2416
 
2376
2417
 
2418
+
2377
2419
 
2378
2420
 
2379
2421
  We know what type
@@ -2428,6 +2470,7 @@
2428
2470
 
2429
2471
 
2430
2472
 
2473
+
2431
2474
 
2432
2475
 
2433
2476
  Update
@@ -2593,6 +2636,7 @@
2593
2636
 
2594
2637
 
2595
2638
 
2639
+
2596
2640
 
2597
2641
 
2598
2642
  This also deprecates
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ All notable changes to this project will be documented in this file
4
4
  automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
5
5
  This project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
+ # v20.0.0
8
+ ## (2025-01-03)
9
+
10
+ * Drop exposed S3 handler in favor of @balena/pinejs-webresource-s3 handler [Otavio Jacobi]
11
+ * Update commander to 13.x [Pagan Gazzard]
12
+ * Update chai to 5.x [Pagan Gazzard]
13
+ * Convert to ESM [Pagan Gazzard]
14
+
7
15
  # v19.7.2
8
16
  ## (2025-01-02)
9
17
 
@@ -3,9 +3,9 @@ import type { WebpackPluginInstance } from 'webpack';
3
3
 
4
4
  import _ from 'lodash';
5
5
  import TerserPlugin from 'terser-webpack-plugin';
6
- import browserConfig from './build/browser';
7
- import moduleConfig from './build/module';
8
- import serverConfig from './build/server';
6
+ import browserConfig from './build/browser.cts';
7
+ import moduleConfig from './build/module.cts';
8
+ import serverConfig from './build/server.cts';
9
9
 
10
10
  const serverConfigs = {
11
11
  browser: browserConfig,
@@ -110,30 +110,18 @@ export = (grunt: typeof Grunt) => {
110
110
  return renames;
111
111
  })(),
112
112
 
113
- replace: {
114
- 'pine.js': {
113
+ replace: _.mapValues(serverConfigs, (_config, task) => {
114
+ return {
115
115
  src: 'out/pine.js',
116
116
  overwrite: true,
117
117
  replacements: [
118
118
  {
119
- from: /nodeRequire/g,
120
- to: 'require',
119
+ from: /sourceMappingURL=pine.js.map/g,
120
+ to: `sourceMappingURL=pine-${task}-<%= grunt.option('version') %>.js.map`,
121
121
  },
122
122
  ],
123
- },
124
- ..._.mapValues(serverConfigs, (_config, task) => {
125
- return {
126
- src: 'out/pine.js',
127
- overwrite: true,
128
- replacements: [
129
- {
130
- from: /sourceMappingURL=pine.js.map/g,
131
- to: `sourceMappingURL=pine-${task}-<%= grunt.option('version') %>.js.map`,
132
- },
133
- ],
134
- };
135
- }),
136
- },
123
+ };
124
+ }),
137
125
 
138
126
  webpack: serverConfigs,
139
127
 
@@ -167,7 +155,6 @@ export = (grunt: typeof Grunt) => {
167
155
  'webpack:' + task,
168
156
  'gitinfo:describe',
169
157
  'version',
170
- 'replace:pine.js',
171
158
  `replace:${task}`,
172
159
  `concat:${task}`,
173
160
  `rename:${task}`,
package/VERSION CHANGED
@@ -1 +1 @@
1
- 19.7.2
1
+ 20.0.0
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- require('../out/bin/abstract-sql-compiler');
2
+ import '../out/bin/abstract-sql-compiler.js';
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- require('../out/bin/odata-compiler');
2
+ import '../out/bin/odata-compiler.js';
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- require('../out/bin/sbvr-compiler');
2
+ import '../out/bin/sbvr-compiler.js';
@@ -1,6 +1,6 @@
1
1
  import * as webpack from 'webpack';
2
2
  import type { Configuration } from 'webpack';
3
- import sharedConfig from './config';
3
+ import sharedConfig from './config.cts';
4
4
 
5
5
  if (typeof sharedConfig.externals !== 'object') {
6
6
  throw new Error('Expected externals to be an object');
@@ -1,4 +1,4 @@
1
- import type { RequiredField } from '../src/sbvr-api/common-types';
1
+ import type { RequiredField } from '../src/sbvr-api/common-types.js' with { 'resolution-mode': 'import' };
2
2
 
3
3
  import * as path from 'path';
4
4
  import * as webpack from 'webpack';
@@ -46,6 +46,10 @@ const config: RequiredField<
46
46
  },
47
47
  resolve: {
48
48
  extensions: ['.js', '.ts'],
49
+ extensionAlias: {
50
+ '.js': ['.ts', '.js'],
51
+ '.mjs': ['.mts', '.mjs'],
52
+ },
49
53
  },
50
54
  plugins: [new webpack.optimize.LimitChunkCountPlugin({ maxChunks: 1 })],
51
55
  module: {
@@ -1,6 +1,6 @@
1
1
  import * as webpack from 'webpack';
2
2
  import type { Configuration } from 'webpack';
3
- import sharedConfig from './config';
3
+ import sharedConfig from './config.cts';
4
4
 
5
5
  const config: Configuration = {
6
6
  ...sharedConfig,
@@ -1,6 +1,6 @@
1
1
  import * as webpack from 'webpack';
2
2
  import type { Configuration } from 'webpack';
3
- import sharedConfig from './config';
3
+ import sharedConfig from './config.cts';
4
4
 
5
5
  const config: Configuration = {
6
6
  ...sharedConfig,
@@ -1,34 +1,32 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const utils_1 = require("./utils");
4
- const commander_1 = require("commander");
1
+ import { getAbstractSqlModelFromFile, version, writeAll, writeSqlModel, } from './utils.js';
2
+ import { program } from 'commander';
5
3
  const runCompile = async (inputFile, outputFile) => {
6
4
  const { generateSqlModel } = await import('../sbvr-api/sbvr-utils.js');
7
- const abstractSql = (0, utils_1.getAbstractSqlModelFromFile)(inputFile, commander_1.program.opts().model);
8
- const sqlModel = generateSqlModel(abstractSql, commander_1.program.opts().engine);
9
- (0, utils_1.writeSqlModel)(sqlModel, outputFile);
5
+ const abstractSql = await getAbstractSqlModelFromFile(inputFile, program.opts().model);
6
+ const sqlModel = generateSqlModel(abstractSql, program.opts().engine);
7
+ writeSqlModel(sqlModel, outputFile);
10
8
  };
11
9
  const generateTypes = async (inputFile, options) => {
12
10
  const { abstractSqlToTypescriptTypes } = await import('@balena/abstract-sql-to-typescript/generate');
13
- const abstractSql = (0, utils_1.getAbstractSqlModelFromFile)(inputFile, commander_1.program.opts().model);
11
+ const abstractSql = await getAbstractSqlModelFromFile(inputFile, program.opts().model);
14
12
  const types = abstractSqlToTypescriptTypes(abstractSql, {
15
13
  convertSerialToInteger: options.convertSerialToInteger,
16
14
  });
17
- (0, utils_1.writeAll)(types, options.outputFile);
15
+ writeAll(types, options.outputFile);
18
16
  };
19
- commander_1.program
20
- .version(utils_1.version)
17
+ program
18
+ .version(version)
21
19
  .option('-e, --engine <engine>', 'The target database engine (postgres|websql|mysql), default: postgres', /postgres|websql|mysql/, 'postgres')
22
20
  .option('-m, --model <model-name>', 'The target model for config files with multiple models, default: first model');
23
- commander_1.program
21
+ program
24
22
  .command('compile <input-file> [output-file]')
25
23
  .description('compile the input AbstractSql model into SQL')
26
24
  .action(runCompile);
27
- commander_1.program
25
+ program
28
26
  .command('compile-schema <input-file> [output-file]')
29
27
  .description('compile the input AbstractSql model into SQL')
30
28
  .action(runCompile);
31
- commander_1.program
29
+ program
32
30
  .command('generate-types <input-file> [output-file]')
33
31
  .description('generate typescript types from the input AbstractSql')
34
32
  .option('--convert-serial-to-integer', 'Convert serials to integers')
@@ -38,13 +36,13 @@ commander_1.program
38
36
  convertSerialToInteger: opts.convertSerialToInteger,
39
37
  });
40
38
  });
41
- commander_1.program
39
+ program
42
40
  .command('help')
43
41
  .description('print the help')
44
- .action(() => commander_1.program.help());
45
- commander_1.program.arguments('<input-file> [output-file]').action(runCompile);
42
+ .action(() => program.help());
43
+ program.arguments('<input-file> [output-file]').action(runCompile);
46
44
  if (process.argv.length === 2) {
47
- commander_1.program.help();
45
+ program.help();
48
46
  }
49
- void commander_1.program.parseAsync(process.argv);
47
+ void program.parseAsync(process.argv);
50
48
  //# sourceMappingURL=abstract-sql-compiler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-sql-compiler.js","sourceRoot":"","sources":["../../src/bin/abstract-sql-compiler.ts"],"names":[],"mappings":";;AAAA,mCAKiB;AAEjB,yCAAoC;AAEpC,MAAM,UAAU,GAAG,KAAK,EAAE,SAAiB,EAAE,UAAmB,EAAE,EAAE;IACnE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,IAAA,mCAA2B,EAC9C,SAAS,EACT,mBAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CACpB,CAAC;IACF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,mBAAO,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC;IAEtE,IAAA,qBAAa,EAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,KAAK,EAC1B,SAAiB,EACjB,OAGC,EACA,EAAE;IACH,MAAM,EAAE,4BAA4B,EAAE,GAAG,MAAM,MAAM,CACpD,6CAA6C,CAC7C,CAAC;IACF,MAAM,WAAW,GAAG,IAAA,mCAA2B,EAC9C,SAAS,EACT,mBAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CACpB,CAAC;IACF,MAAM,KAAK,GAAG,4BAA4B,CAAC,WAAW,EAAE;QACvD,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;KACtD,CAAC,CAAC;IAEH,IAAA,gBAAQ,EAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,mBAAO;KACL,OAAO,CAAC,eAAO,CAAC;KAChB,MAAM,CACN,uBAAuB,EACvB,uEAAuE,EACvE,uBAAuB,EACvB,UAAU,CACV;KACA,MAAM,CACN,0BAA0B,EAC1B,8EAA8E,CAC9E,CAAC;AAEH,mBAAO;KACL,OAAO,CAAC,oCAAoC,CAAC;KAC7C,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,UAAU,CAAC,CAAC;AAErB,mBAAO;KACL,OAAO,CAAC,2CAA2C,CAAC;KACpD,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,UAAU,CAAC,CAAC;AAErB,mBAAO;KACL,OAAO,CAAC,2CAA2C,CAAC;KACpD,WAAW,CAAC,sDAAsD,CAAC;KACnE,MAAM,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;IAC7C,MAAM,aAAa,CAAC,SAAS,EAAE;QAC9B,UAAU;QACV,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;KACnD,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEJ,mBAAO;KACL,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,GAAG,EAAE,CAAC,mBAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE/B,mBAAO,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAEnE,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC/B,mBAAO,CAAC,IAAI,EAAE,CAAC;AAChB,CAAC;AAED,KAAK,mBAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"abstract-sql-compiler.js","sourceRoot":"","sources":["../../src/bin/abstract-sql-compiler.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,2BAA2B,EAC3B,OAAO,EACP,QAAQ,EACR,aAAa,GACb,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,UAAU,GAAG,KAAK,EAAE,SAAiB,EAAE,UAAmB,EAAE,EAAE;IACnE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,MAAM,2BAA2B,CACpD,SAAS,EACT,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CACpB,CAAC;IACF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC;IAEtE,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,KAAK,EAC1B,SAAiB,EACjB,OAGC,EACA,EAAE;IACH,MAAM,EAAE,4BAA4B,EAAE,GAAG,MAAM,MAAM,CACpD,6CAA6C,CAC7C,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,2BAA2B,CACpD,SAAS,EACT,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CACpB,CAAC;IACF,MAAM,KAAK,GAAG,4BAA4B,CAAC,WAAW,EAAE;QACvD,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;KACtD,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;AACrC,CAAC,CAAC;AAEF,OAAO;KACL,OAAO,CAAC,OAAO,CAAC;KAChB,MAAM,CACN,uBAAuB,EACvB,uEAAuE,EACvE,uBAAuB,EACvB,UAAU,CACV;KACA,MAAM,CACN,0BAA0B,EAC1B,8EAA8E,CAC9E,CAAC;AAEH,OAAO;KACL,OAAO,CAAC,oCAAoC,CAAC;KAC7C,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,UAAU,CAAC,CAAC;AAErB,OAAO;KACL,OAAO,CAAC,2CAA2C,CAAC;KACpD,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,UAAU,CAAC,CAAC;AAErB,OAAO;KACL,OAAO,CAAC,2CAA2C,CAAC;KACpD,WAAW,CAAC,sDAAsD,CAAC;KACnE,MAAM,CAAC,6BAA6B,EAAE,6BAA6B,CAAC;KACpE,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE;IAC7C,MAAM,aAAa,CAAC,SAAS,EAAE;QAC9B,UAAU;QACV,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;KACnD,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEJ,OAAO;KACL,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,gBAAgB,CAAC;KAC7B,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAE/B,OAAO,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAEnE,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC/B,OAAO,CAAC,IAAI,EAAE,CAAC;AAChB,CAAC;AAED,KAAK,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -1,13 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const utils_1 = require("./utils");
4
- const commander_1 = require("commander");
1
+ import { getAbstractSqlModelFromFile, version, writeAll } from './utils.js';
2
+ import { program } from 'commander';
5
3
  const generateAbstractSqlQuery = async (abstractSqlModel, odata) => {
6
4
  const { memoizedParseOdata, translateUri } = await import('../sbvr-api/uri-parser.js');
7
5
  const odataAST = memoizedParseOdata(odata);
8
6
  const vocabulary = '';
9
7
  return translateUri({
10
- engine: commander_1.program.opts().engine,
8
+ engine: program.opts().engine,
11
9
  method: 'GET',
12
10
  url: odata,
13
11
  resourceName: odataAST.tree.resource,
@@ -25,12 +23,12 @@ const parseOData = async (odata, outputFile) => {
25
23
  const { memoizedParseOdata } = await import('../sbvr-api/uri-parser.js');
26
24
  const result = memoizedParseOdata(odata);
27
25
  const json = JSON.stringify(result, null, 2);
28
- (0, utils_1.writeAll)(json, outputFile);
26
+ writeAll(json, outputFile);
29
27
  };
30
28
  const translateOData = async (modelFile, odata, outputFile) => {
31
- const request = await generateAbstractSqlQuery((0, utils_1.getAbstractSqlModelFromFile)(modelFile, commander_1.program.opts().model), odata);
29
+ const request = await generateAbstractSqlQuery(await getAbstractSqlModelFromFile(modelFile, program.opts().model), odata);
32
30
  const json = JSON.stringify(request.abstractSqlQuery, null, 2);
33
- (0, utils_1.writeAll)(json, outputFile);
31
+ writeAll(json, outputFile);
34
32
  };
35
33
  const formatSqlQuery = (sqlQuery) => {
36
34
  if (Array.isArray(sqlQuery)) {
@@ -44,43 +42,43 @@ Bindings: ${JSON.stringify(sqlQuery.bindings, null, 2)}
44
42
  }
45
43
  };
46
44
  const compileOData = async (modelFile, odata, outputFile) => {
47
- const translatedRequest = await generateAbstractSqlQuery((0, utils_1.getAbstractSqlModelFromFile)(modelFile, commander_1.program.opts().model), odata);
45
+ const translatedRequest = await generateAbstractSqlQuery(await getAbstractSqlModelFromFile(modelFile, program.opts().model), odata);
48
46
  const { compileRequest } = await import('../sbvr-api/abstract-sql.js');
49
47
  const compiledRequest = compileRequest(translatedRequest);
50
48
  let output;
51
- if (commander_1.program.opts().json) {
49
+ if (program.opts().json) {
52
50
  output = JSON.stringify(compiledRequest.sqlQuery, null, 2);
53
51
  }
54
52
  else {
55
53
  output = formatSqlQuery(compiledRequest.sqlQuery);
56
54
  }
57
- (0, utils_1.writeAll)(output, outputFile);
55
+ writeAll(output, outputFile);
58
56
  };
59
- commander_1.program
60
- .version(utils_1.version)
57
+ program
58
+ .version(version)
61
59
  .option('-e, --engine <engine>', 'The target database engine (postgres|websql|mysql), default: postgres', /postgres|websql|mysql/, 'postgres')
62
60
  .option('--json', 'Force json output, default: false');
63
- commander_1.program
61
+ program
64
62
  .command('parse <input-url> [output-file]')
65
63
  .description('parse the input OData URL into OData AST')
66
64
  .action(parseOData);
67
- commander_1.program
65
+ program
68
66
  .command('translate <model-file> <input-url> [output-file]')
69
67
  .description('translate the input OData URL into abstract SQL')
70
68
  .option('-m, --model <model-name>', 'The target model for config files with multiple models, default: first model')
71
69
  .action(translateOData);
72
- commander_1.program
70
+ program
73
71
  .command('compile <model-file> <input-url> [output-file]')
74
72
  .description('compile the input OData URL into SQL')
75
73
  .option('-m, --model <model-name>', 'The target model for config files with multiple models, default: first model')
76
74
  .action(compileOData);
77
- commander_1.program
75
+ program
78
76
  .command('help')
79
77
  .description('print the help')
80
- .action(() => commander_1.program.help());
81
- commander_1.program.arguments('<sbvr-file> <input-url> [output-file]').action(compileOData);
78
+ .action(() => program.help());
79
+ program.arguments('<sbvr-file> <input-url> [output-file]').action(compileOData);
82
80
  if (process.argv.length === 2) {
83
- commander_1.program.help();
81
+ program.help();
84
82
  }
85
- void commander_1.program.parseAsync(process.argv);
83
+ void program.parseAsync(process.argv);
86
84
  //# sourceMappingURL=odata-compiler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"odata-compiler.js","sourceRoot":"","sources":["../../src/bin/odata-compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"odata-compiler.js","sourceRoot":"","sources":["../../src/bin/odata-compiler.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,13 @@
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
- const utils_1 = require("./utils");
37
- const commander_1 = require("commander");
38
- const fs = __importStar(require("fs"));
1
+ import { version, writeAll, writeSqlModel } from './utils.js';
2
+ import { program } from 'commander';
3
+ import fs from 'fs';
39
4
  const getSE = (inputFile) => fs.readFileSync(inputFile, 'utf8');
40
5
  const parse = async (inputFile, outputFile) => {
41
6
  const { generateLfModel } = await import('../sbvr-api/sbvr-utils.js');
42
7
  const seModel = getSE(inputFile);
43
8
  const result = generateLfModel(seModel);
44
9
  const json = JSON.stringify(result, null, 2);
45
- (0, utils_1.writeAll)(json, outputFile);
10
+ writeAll(json, outputFile);
46
11
  };
47
12
  const transform = async (inputFile, outputFile) => {
48
13
  const { generateLfModel, generateAbstractSqlModel } = await import('../sbvr-api/sbvr-utils.js');
@@ -50,13 +15,13 @@ const transform = async (inputFile, outputFile) => {
50
15
  const lfModel = generateLfModel(seModel);
51
16
  const result = generateAbstractSqlModel(lfModel);
52
17
  const json = JSON.stringify(result, null, 2);
53
- (0, utils_1.writeAll)(json, outputFile);
18
+ writeAll(json, outputFile);
54
19
  };
55
20
  const runCompile = async (inputFile, outputFile) => {
56
21
  const { generateModels } = await import('../sbvr-api/sbvr-utils.js');
57
22
  const seModel = getSE(inputFile);
58
- const models = generateModels({ apiRoot: 'sbvr-compiler', modelText: seModel }, commander_1.program.opts().engine);
59
- (0, utils_1.writeSqlModel)(models.sql, outputFile);
23
+ const models = generateModels({ apiRoot: 'sbvr-compiler', modelText: seModel }, program.opts().engine);
24
+ writeSqlModel(models.sql, outputFile);
60
25
  };
61
26
  const generateTypes = async (inputFile, outputFile) => {
62
27
  const { generateLfModel, generateAbstractSqlModel } = await import('../sbvr-api/sbvr-utils.js');
@@ -65,34 +30,34 @@ const generateTypes = async (inputFile, outputFile) => {
65
30
  const abstractSql = generateAbstractSqlModel(lfModel);
66
31
  const { abstractSqlToTypescriptTypes } = await import('@balena/abstract-sql-to-typescript/generate');
67
32
  const types = abstractSqlToTypescriptTypes(abstractSql);
68
- (0, utils_1.writeAll)(types, outputFile);
33
+ writeAll(types, outputFile);
69
34
  };
70
- commander_1.program
71
- .version(utils_1.version)
35
+ program
36
+ .version(version)
72
37
  .option('-e, --engine <engine>', 'The target database engine (postgres|websql|mysql), default: postgres', /postgres|websql|mysql/, 'postgres');
73
- commander_1.program
38
+ program
74
39
  .command('parse <input-file> [output-file]')
75
40
  .description('parse the input SBVR file into LF')
76
41
  .action(parse);
77
- commander_1.program
42
+ program
78
43
  .command('transform <input-file> [output-file]')
79
44
  .description('transform the input SBVR file into abstract SQL')
80
45
  .action(transform);
81
- commander_1.program
46
+ program
82
47
  .command('compile <input-file> [output-file]')
83
48
  .description('compile the input SBVR file into SQL')
84
49
  .action(runCompile);
85
- commander_1.program
50
+ program
86
51
  .command('generate-types <input-file> [output-file]')
87
52
  .description('generate typescript types from the input SBVR')
88
53
  .action(generateTypes);
89
- commander_1.program
54
+ program
90
55
  .command('help')
91
56
  .description('print the help')
92
- .action(() => commander_1.program.help());
93
- commander_1.program.arguments('<input-file> [output-file]').action(runCompile);
57
+ .action(() => program.help());
58
+ program.arguments('<input-file> [output-file]').action(runCompile);
94
59
  if (process.argv.length === 2) {
95
- commander_1.program.help();
60
+ program.help();
96
61
  }
97
- void commander_1.program.parseAsync(process.argv);
62
+ void program.parseAsync(process.argv);
98
63
  //# sourceMappingURL=sbvr-compiler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sbvr-compiler.js","sourceRoot":"","sources":["../../src/bin/sbvr-compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sbvr-compiler.js","sourceRoot":"","sources":["../../src/bin/sbvr-compiler.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { SqlModel } from '@balena/abstract-sql-compiler';
2
2
  import type { AbstractSqlModel } from '@balena/abstract-sql-compiler';
3
- import '../server-glue/sbvr-loader';
4
- export { version } from '../config-loader/env';
3
+ import '../server-glue/sbvr-loader.js';
4
+ export { version } from '../config-loader/env.js';
5
5
  export declare const writeAll: (output: string, outputFile?: string) => void;
6
6
  export declare const writeSqlModel: (sqlModel: SqlModel, outputFile?: string) => void;
7
- export declare const getAbstractSqlModelFromFile: (modelFile: string, modelName: string | undefined) => AbstractSqlModel;
7
+ export declare const getAbstractSqlModelFromFile: (modelFile: string, modelName: string | undefined) => Promise<AbstractSqlModel>;