@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.
- package/.dockerignore +4 -0
- package/.github/workflows/flowzone.yml +21 -0
- package/.husky/pre-commit +4 -0
- package/.pinejs-cache.json +1 -0
- package/.resinci.yml +1 -0
- package/.versionbot/CHANGELOG.yml +9678 -2001
- package/CHANGELOG.md +2975 -2
- package/Dockerfile +14 -0
- package/Gruntfile.ts +3 -6
- package/README.md +10 -1
- package/VERSION +1 -0
- package/build/browser.ts +1 -1
- package/build/config.ts +0 -1
- package/docker-compose.npm-test.yml +11 -0
- package/docs/AdvancedUsage.md +77 -63
- package/docs/GettingStarted.md +90 -41
- package/docs/Migrations.md +102 -1
- package/docs/ProjectConfig.md +12 -21
- package/docs/Testing.md +7 -0
- package/out/bin/abstract-sql-compiler.js +17 -17
- package/out/bin/abstract-sql-compiler.js.map +1 -1
- package/out/bin/odata-compiler.js +23 -20
- package/out/bin/odata-compiler.js.map +1 -1
- package/out/bin/sbvr-compiler.js +22 -22
- package/out/bin/sbvr-compiler.js.map +1 -1
- package/out/bin/utils.d.ts +2 -2
- package/out/bin/utils.js +3 -3
- package/out/bin/utils.js.map +1 -1
- package/out/config-loader/config-loader.d.ts +9 -8
- package/out/config-loader/config-loader.js +135 -78
- package/out/config-loader/config-loader.js.map +1 -1
- package/out/config-loader/env.d.ts +41 -16
- package/out/config-loader/env.js +46 -2
- package/out/config-loader/env.js.map +1 -1
- package/out/data-server/sbvr-server.d.ts +2 -19
- package/out/data-server/sbvr-server.js +44 -38
- package/out/data-server/sbvr-server.js.map +1 -1
- package/out/database-layer/db.d.ts +32 -14
- package/out/database-layer/db.js +120 -41
- package/out/database-layer/db.js.map +1 -1
- package/out/express-emulator/express.js +10 -11
- package/out/express-emulator/express.js.map +1 -1
- package/out/http-transactions/transactions.d.ts +2 -18
- package/out/http-transactions/transactions.js +29 -21
- package/out/http-transactions/transactions.js.map +1 -1
- package/out/migrator/async.d.ts +7 -0
- package/out/migrator/async.js +168 -0
- package/out/migrator/async.js.map +1 -0
- package/out/migrator/migrations.sbvr +43 -0
- package/out/migrator/sync.d.ts +9 -0
- package/out/migrator/sync.js +106 -0
- package/out/migrator/sync.js.map +1 -0
- package/out/migrator/utils.d.ts +78 -0
- package/out/migrator/utils.js +283 -0
- package/out/migrator/utils.js.map +1 -0
- package/out/odata-metadata/odata-metadata-generator.js +10 -13
- package/out/odata-metadata/odata-metadata-generator.js.map +1 -1
- package/out/passport-pinejs/passport-pinejs.d.ts +1 -1
- package/out/passport-pinejs/passport-pinejs.js +8 -7
- package/out/passport-pinejs/passport-pinejs.js.map +1 -1
- package/out/pinejs-session-store/pinejs-session-store.d.ts +1 -1
- package/out/pinejs-session-store/pinejs-session-store.js +20 -6
- package/out/pinejs-session-store/pinejs-session-store.js.map +1 -1
- package/out/sbvr-api/abstract-sql.d.ts +3 -2
- package/out/sbvr-api/abstract-sql.js +9 -9
- package/out/sbvr-api/abstract-sql.js.map +1 -1
- package/out/sbvr-api/cached-compile.js +1 -1
- package/out/sbvr-api/cached-compile.js.map +1 -1
- package/out/sbvr-api/common-types.d.ts +6 -5
- package/out/sbvr-api/control-flow.d.ts +8 -1
- package/out/sbvr-api/control-flow.js +36 -9
- package/out/sbvr-api/control-flow.js.map +1 -1
- package/out/sbvr-api/errors.d.ts +47 -40
- package/out/sbvr-api/errors.js +78 -77
- package/out/sbvr-api/errors.js.map +1 -1
- package/out/sbvr-api/express-extension.d.ts +4 -0
- package/out/sbvr-api/hooks.d.ts +16 -15
- package/out/sbvr-api/hooks.js +74 -48
- package/out/sbvr-api/hooks.js.map +1 -1
- package/out/sbvr-api/odata-response.d.ts +2 -2
- package/out/sbvr-api/odata-response.js +28 -30
- package/out/sbvr-api/odata-response.js.map +1 -1
- package/out/sbvr-api/permissions.d.ts +17 -16
- package/out/sbvr-api/permissions.js +369 -304
- package/out/sbvr-api/permissions.js.map +1 -1
- package/out/sbvr-api/sbvr-utils.d.ts +33 -15
- package/out/sbvr-api/sbvr-utils.js +397 -235
- package/out/sbvr-api/sbvr-utils.js.map +1 -1
- package/out/sbvr-api/translations.d.ts +6 -0
- package/out/sbvr-api/translations.js +150 -0
- package/out/sbvr-api/translations.js.map +1 -0
- package/out/sbvr-api/uri-parser.d.ts +23 -17
- package/out/sbvr-api/uri-parser.js +33 -27
- package/out/sbvr-api/uri-parser.js.map +1 -1
- package/out/sbvr-api/user.sbvr +2 -0
- package/out/server-glue/module.d.ts +6 -6
- package/out/server-glue/module.js +4 -2
- package/out/server-glue/module.js.map +1 -1
- package/out/server-glue/server.js +5 -5
- package/out/server-glue/server.js.map +1 -1
- package/package.json +89 -73
- package/pinejs.png +0 -0
- package/repo.yml +9 -9
- package/src/bin/abstract-sql-compiler.ts +5 -7
- package/src/bin/odata-compiler.ts +11 -13
- package/src/bin/sbvr-compiler.ts +11 -17
- package/src/bin/utils.ts +3 -5
- package/src/config-loader/config-loader.ts +167 -53
- package/src/config-loader/env.ts +106 -6
- package/src/data-server/sbvr-server.js +44 -38
- package/src/database-layer/db.ts +205 -64
- package/src/express-emulator/express.js +10 -11
- package/src/http-transactions/transactions.js +29 -21
- package/src/migrator/async.ts +323 -0
- package/src/migrator/migrations.sbvr +43 -0
- package/src/migrator/sync.ts +152 -0
- package/src/migrator/utils.ts +458 -0
- package/src/odata-metadata/odata-metadata-generator.ts +12 -15
- package/src/passport-pinejs/passport-pinejs.ts +9 -7
- package/src/pinejs-session-store/pinejs-session-store.ts +15 -1
- package/src/sbvr-api/abstract-sql.ts +17 -14
- package/src/sbvr-api/common-types.ts +2 -1
- package/src/sbvr-api/control-flow.ts +45 -11
- package/src/sbvr-api/errors.ts +82 -77
- package/src/sbvr-api/express-extension.ts +6 -1
- package/src/sbvr-api/hooks.ts +123 -50
- package/src/sbvr-api/odata-response.ts +23 -28
- package/src/sbvr-api/permissions.ts +548 -415
- package/src/sbvr-api/sbvr-utils.ts +581 -259
- package/src/sbvr-api/translations.ts +248 -0
- package/src/sbvr-api/uri-parser.ts +63 -49
- package/src/sbvr-api/user.sbvr +2 -0
- package/src/server-glue/module.ts +16 -10
- package/src/server-glue/server.ts +5 -5
- package/tsconfig.dev.json +1 -0
- package/tsconfig.json +1 -2
- package/typings/lf-to-abstract-sql.d.ts +6 -9
- package/typings/memoizee.d.ts +1 -1
- package/.github/CODEOWNERS +0 -1
- package/circle.yml +0 -37
- package/docs/todo.txt +0 -22
- package/out/migrator/migrator.d.ts +0 -20
- package/out/migrator/migrator.js +0 -188
- package/out/migrator/migrator.js.map +0 -1
- package/src/migrator/migrator.ts +0 -286
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"uri-parser.js","sourceRoot":"","sources":["../../src/sbvr-api/uri-parser.ts"],"names":[],"mappings":";;;AAWA,oDAAoD;AACvC,QAAA,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC;AACnD,yEAAkE;AAClE,4BAA4B;AAC5B,
|
1
|
+
{"version":3,"file":"uri-parser.js","sourceRoot":"","sources":["../../src/sbvr-api/uri-parser.ts"],"names":[],"mappings":"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"}
|
package/out/sbvr-api/user.sbvr
CHANGED
@@ -51,6 +51,8 @@ Term: api key
|
|
51
51
|
Fact type: api key has key
|
52
52
|
Necessity: each api key has exactly one key
|
53
53
|
Necessity: each key is of exactly one api key
|
54
|
+
Fact type: api key has expiry date
|
55
|
+
Necessity: each api key has at most one expiry date.
|
54
56
|
Fact type: api key has role
|
55
57
|
Note: An 'api key' will inherit all the 'permissions' that the 'role' has.
|
56
58
|
Fact type: api key has permission
|
@@ -1,7 +1,9 @@
|
|
1
|
+
/// <reference types="mocha" />
|
1
2
|
import type * as Express from 'express';
|
2
3
|
import './sbvr-loader';
|
4
|
+
import * as dbModule from '../database-layer/db';
|
3
5
|
import * as configLoader from '../config-loader/config-loader';
|
4
|
-
import * as
|
6
|
+
import * as migratorUtils from '../migrator/utils';
|
5
7
|
export * as dbModule from '../database-layer/db';
|
6
8
|
export { PinejsSessionStore } from '../pinejs-session-store/pinejs-session-store';
|
7
9
|
export * as sbvrUtils from '../sbvr-api/sbvr-utils';
|
@@ -11,8 +13,6 @@ export * as env from '../config-loader/env';
|
|
11
13
|
export * as types from '../sbvr-api/common-types';
|
12
14
|
export * as hooks from '../sbvr-api/hooks';
|
13
15
|
export type { configLoader as ConfigLoader };
|
14
|
-
export type {
|
15
|
-
|
16
|
-
|
17
|
-
params: string;
|
18
|
-
}) => Promise<ReturnType<typeof configLoader.setup>>;
|
16
|
+
export type { migratorUtils as Migrator };
|
17
|
+
declare let envDatabaseOptions: dbModule.DatabaseOptions<string>;
|
18
|
+
export declare const init: <T extends string>(app: Express.Application, config?: string | configLoader.Config, databaseOptions?: dbModule.DatabaseOptions<string> | dbModule.DatabaseOptions<T>) => Promise<ReturnType<typeof configLoader.setup>>;
|
@@ -4,8 +4,9 @@ exports.init = exports.hooks = exports.types = exports.env = exports.errors = ex
|
|
4
4
|
require("./sbvr-loader");
|
5
5
|
const dbModule = require("../database-layer/db");
|
6
6
|
const configLoader = require("../config-loader/config-loader");
|
7
|
-
const migrator = require("../migrator/
|
7
|
+
const migrator = require("../migrator/sync");
|
8
8
|
const sbvrUtils = require("../sbvr-api/sbvr-utils");
|
9
|
+
const env_1 = require("../config-loader/env");
|
9
10
|
exports.dbModule = require("../database-layer/db");
|
10
11
|
var pinejs_session_store_1 = require("../pinejs-session-store/pinejs-session-store");
|
11
12
|
Object.defineProperty(exports, "PinejsSessionStore", { enumerable: true, get: function () { return pinejs_session_store_1.PinejsSessionStore; } });
|
@@ -44,6 +45,7 @@ else {
|
|
44
45
|
const init = async (app, config, databaseOptions = envDatabaseOptions) => {
|
45
46
|
try {
|
46
47
|
const db = dbModule.connect(databaseOptions);
|
48
|
+
dbModule.registerTransactionLockNamespace(env_1.PINEJS_ADVISORY_LOCK.namespaceKey, env_1.PINEJS_ADVISORY_LOCK.namespaceId);
|
47
49
|
await sbvrUtils.setup(app, db);
|
48
50
|
const cfgLoader = await configLoader.setup(app);
|
49
51
|
await cfgLoader.loadConfig(migrator.config);
|
@@ -63,7 +65,7 @@ const init = async (app, config, databaseOptions = envDatabaseOptions) => {
|
|
63
65
|
return cfgLoader;
|
64
66
|
}
|
65
67
|
catch (err) {
|
66
|
-
console.error('Error initialising server', err
|
68
|
+
console.error('Error initialising server', err);
|
67
69
|
process.exit(1);
|
68
70
|
}
|
69
71
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/server-glue/module.ts"],"names":[],"mappings":";;;AAEA,yBAAuB;AAEvB,iDAAiD;AACjD,+DAA+D;AAC/D,
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/server-glue/module.ts"],"names":[],"mappings":";;;AAEA,yBAAuB;AAEvB,iDAAiD;AACjD,+DAA+D;AAC/D,6CAA6C;AAG7C,oDAAoD;AACpD,8CAA4D;AAE5D,mDAAiD;AACjD,qFAAkF;AAAzE,0HAAA,kBAAkB,OAAA;AAC3B,sDAAoD;AACpD,yDAAuD;AACvD,+CAA6C;AAC7C,8CAA4C;AAC5C,oDAAkD;AAClD,6CAA2C;AAI3C,IAAI,kBAAoD,CAAC;AACzD,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,EAAE;IACpC,kBAAkB,GAAG;QACpB,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,YAAY;KACpB,CAAC;CACF;KAAM;IACN,IAAI,WAAmB,CAAC;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;QAC7B,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;KACvC;SAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAI,EAAE;QAC7C,WAAW,GAAG,+CAA+C,CAAC;KAC9D;SAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE;QAC1C,WAAW,GAAG,gCAAgC,CAAC;KAC/C;SAAM;QACN,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;KAC3D;IACD,kBAAkB,GAAG;QACpB,MAAM,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACtD,MAAM,EAAE,WAAW;KACnB,CAAC;CACF;AAEM,MAAM,IAAI,GAAG,KAAK,EACxB,GAAwB,EACxB,MAAqC,EACrC,kBAE+B,kBAAkB,EACA,EAAE;IACnD,IAAI;QACH,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QAE7C,QAAQ,CAAC,gCAAgC,CACxC,0BAAoB,CAAC,YAAY,EACjC,0BAAoB,CAAC,WAAW,CAChC,CAAC;QACF,MAAM,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChD,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAE5C,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE;YACpC,MAAM,UAAU,GAAG,2CAAa,4BAA4B,EAAC,CAAC;YAC9D,MAAM,YAAY,GAAG,OAAO,CAAC,mCAAmC,CAAC,CAAC;YAClE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;YACvD,QAAQ,CAAC,IAAI,CACZ,SAAS;iBACP,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC;iBAC/B,IAAI,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAChD,CAAC;SACF;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE;YACxC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC;SACvD;QACD,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE5B,OAAO,SAAS,CAAC;KACjB;IAAC,OAAO,GAAQ,EAAE;QAClB,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;QAChD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAChB;AACF,CAAC,CAAC;AAvCW,QAAA,IAAI,QAuCf"}
|
@@ -63,12 +63,12 @@ exports.initialised = Pinejs.init(app)
|
|
63
63
|
!process.env.DISABLE_DEFAULT_AUTH) {
|
64
64
|
app.post('/login', passportPinejs.login((err, user, req, res) => {
|
65
65
|
if (err) {
|
66
|
-
console.error('Error logging in', err
|
67
|
-
res.
|
66
|
+
console.error('Error logging in', err);
|
67
|
+
res.status(500).end();
|
68
68
|
}
|
69
69
|
else if (user === false) {
|
70
70
|
if (req.xhr === true) {
|
71
|
-
res.
|
71
|
+
res.status(401).end();
|
72
72
|
}
|
73
73
|
else {
|
74
74
|
res.redirect('/login.html');
|
@@ -76,7 +76,7 @@ exports.initialised = Pinejs.init(app)
|
|
76
76
|
}
|
77
77
|
else {
|
78
78
|
if (req.xhr === true) {
|
79
|
-
res.
|
79
|
+
res.status(200).end();
|
80
80
|
}
|
81
81
|
else {
|
82
82
|
res.redirect('/');
|
@@ -92,7 +92,7 @@ exports.initialised = Pinejs.init(app)
|
|
92
92
|
});
|
93
93
|
})
|
94
94
|
.catch((err) => {
|
95
|
-
console.error('Error initialising server', err
|
95
|
+
console.error('Error initialising server', err);
|
96
96
|
process.exit(1);
|
97
97
|
});
|
98
98
|
//# sourceMappingURL=server.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server-glue/server.ts"],"names":[],"mappings":"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
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server-glue/server.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@balena/pinejs",
|
3
|
-
"version": "15.0.0
|
3
|
+
"version": "15.0.0",
|
4
4
|
"main": "out/server-glue/module",
|
5
5
|
"repository": "git@github.com:balena-io/pinejs.git",
|
6
6
|
"license": "Apache-2.0",
|
@@ -11,113 +11,129 @@
|
|
11
11
|
},
|
12
12
|
"scripts": {
|
13
13
|
"prepublish": "require-npm4-to-publish",
|
14
|
-
"
|
15
|
-
"prepare": "npm run build",
|
14
|
+
"prepare": "node -e \"try { require('husky').install() } catch (e) {if (e.code !== 'MODULE_NOT_FOUND') throw e}\" && npm run build",
|
16
15
|
"build": "grunt build",
|
17
16
|
"webpack-browser": "grunt browser",
|
18
17
|
"webpack-module": "grunt module",
|
19
18
|
"webpack-server": "grunt server",
|
20
19
|
"webpack-build": "npm run webpack-browser && npm run webpack-module && npm run webpack-server",
|
21
|
-
"lint": "balena-lint -e js -e ts
|
22
|
-
"test": "npm run lint && npm run build && npm run webpack-build",
|
23
|
-
"
|
20
|
+
"lint": "balena-lint -e js -e ts src build typings Gruntfile.ts && npx tsc --project tsconfig.dev.json --noEmit",
|
21
|
+
"test": "npm run lint && npm run build && npm run webpack-build && npm run test:compose",
|
22
|
+
"test:compose": "trap 'docker-compose -f docker-compose.npm-test.yml down ; echo Stopped ; exit 0' SIGINT; docker-compose -f docker-compose.npm-test.yml up -d && sleep 2 && DATABASE_URL=postgres://docker:docker@localhost:5431/postgres npm run mocha",
|
23
|
+
"mocha": "TS_NODE_FILES=true mocha",
|
24
|
+
"prettify": "balena-lint -e js -e ts --fix src build typings Gruntfile.ts"
|
24
25
|
},
|
25
26
|
"dependencies": {
|
26
|
-
"@balena/abstract-sql-compiler": "
|
27
|
-
"@balena/abstract-sql-to-typescript": "^
|
28
|
-
"@balena/
|
29
|
-
"@balena/
|
30
|
-
"@balena/odata-
|
31
|
-
"@balena/
|
32
|
-
"@balena/sbvr-
|
33
|
-
"@types
|
34
|
-
"@types/body-parser": "^1.19.
|
35
|
-
"@types/compression": "^1.7.
|
36
|
-
"@types/cookie-parser": "^1.4.
|
27
|
+
"@balena/abstract-sql-compiler": "^9.0.2",
|
28
|
+
"@balena/abstract-sql-to-typescript": "^2.0.0",
|
29
|
+
"@balena/env-parsing": "^1.1.5",
|
30
|
+
"@balena/lf-to-abstract-sql": "^5.0.0",
|
31
|
+
"@balena/odata-parser": "^3.0.0",
|
32
|
+
"@balena/odata-to-abstract-sql": "^6.0.1",
|
33
|
+
"@balena/sbvr-parser": "^1.4.3",
|
34
|
+
"@balena/sbvr-types": "^5.0.0",
|
35
|
+
"@types/body-parser": "^1.19.2",
|
36
|
+
"@types/compression": "^1.7.2",
|
37
|
+
"@types/cookie-parser": "^1.4.3",
|
37
38
|
"@types/deep-freeze": "^0.1.2",
|
38
|
-
"@types/express": "^4.17.
|
39
|
-
"@types/express-session": "^1.17.
|
40
|
-
"@types/lodash": "^4.14.
|
41
|
-
"@types/memoizee": "^0.4.
|
42
|
-
"@types/method-override": "0.0.
|
43
|
-
"@types/multer": "^1.4.
|
44
|
-
"@types/mysql": "^2.15.
|
45
|
-
"@types/node": "^
|
46
|
-
"@types/passport": "^0.
|
47
|
-
"@types/passport-local": "1.0.
|
39
|
+
"@types/express": "^4.17.17",
|
40
|
+
"@types/express-session": "^1.17.7",
|
41
|
+
"@types/lodash": "^4.14.194",
|
42
|
+
"@types/memoizee": "^0.4.8",
|
43
|
+
"@types/method-override": "^0.0.32",
|
44
|
+
"@types/multer": "^1.4.7",
|
45
|
+
"@types/mysql": "^2.15.21",
|
46
|
+
"@types/node": "^18.16.1",
|
47
|
+
"@types/passport": "^1.0.12",
|
48
|
+
"@types/passport-local": "^1.0.35",
|
48
49
|
"@types/passport-strategy": "^0.2.35",
|
49
|
-
"@types/pg": "^
|
50
|
-
"@types/randomstring": "^1.1.
|
51
|
-
"@types/websql": "0.0.27",
|
52
|
-
"
|
53
|
-
"
|
54
|
-
"
|
55
|
-
"
|
56
|
-
"express-session": "^1.17.1",
|
50
|
+
"@types/pg": "^8.6.6",
|
51
|
+
"@types/randomstring": "^1.1.8",
|
52
|
+
"@types/websql": "^0.0.27",
|
53
|
+
"commander": "^10.0.1",
|
54
|
+
"deep-freeze": "^0.0.1",
|
55
|
+
"eventemitter3": "^5.0.0",
|
56
|
+
"express-session": "^1.17.3",
|
57
57
|
"lodash": "^4.17.21",
|
58
58
|
"memoizee": "^0.4.15",
|
59
|
-
"pinejs-client-core": "^6.
|
60
|
-
"randomstring": "^1.
|
61
|
-
"typed-error": "^3.2.
|
59
|
+
"pinejs-client-core": "^6.12.3",
|
60
|
+
"randomstring": "^1.2.3",
|
61
|
+
"typed-error": "^3.2.2"
|
62
62
|
},
|
63
63
|
"devDependencies": {
|
64
|
-
"@balena/lint": "^
|
65
|
-
"@
|
66
|
-
"@types/
|
67
|
-
"@types/
|
68
|
-
"grunt": "^
|
64
|
+
"@balena/lint": "^6.2.2",
|
65
|
+
"@faker-js/faker": "^7.6.0",
|
66
|
+
"@types/chai": "^4.3.4",
|
67
|
+
"@types/chai-as-promised": "^7.1.5",
|
68
|
+
"@types/grunt": "^0.4.27",
|
69
|
+
"@types/mocha": "^10.0.1",
|
70
|
+
"@types/supertest": "^2.0.12",
|
71
|
+
"@types/terser-webpack-plugin": "^5.2.0",
|
72
|
+
"@types/webpack": "^5.28.1",
|
73
|
+
"chai": "^4.3.7",
|
74
|
+
"grunt": "^1.6.1",
|
69
75
|
"grunt-check-dependencies": "^1.0.0",
|
70
|
-
"grunt-cli": "^1.3
|
71
|
-
"grunt-contrib-clean": "^2.0.
|
72
|
-
"grunt-contrib-concat": "^1.0
|
76
|
+
"grunt-cli": "^1.4.3",
|
77
|
+
"grunt-contrib-clean": "^2.0.1",
|
78
|
+
"grunt-contrib-concat": "^2.1.0",
|
73
79
|
"grunt-contrib-copy": "^1.0.0",
|
74
80
|
"grunt-contrib-rename": "^0.2.0",
|
75
81
|
"grunt-gitinfo": "^0.1.9",
|
76
82
|
"grunt-text-replace": "^0.4.0",
|
77
83
|
"grunt-ts": "^6.0.0-beta.22",
|
78
|
-
"grunt-webpack": "^
|
79
|
-
"husky": "^
|
80
|
-
"lint-staged": "^
|
84
|
+
"grunt-webpack": "^5.0.0",
|
85
|
+
"husky": "^8.0.3",
|
86
|
+
"lint-staged": "^13.2.2",
|
81
87
|
"load-grunt-tasks": "^5.1.0",
|
88
|
+
"mocha": "^10.2.0",
|
89
|
+
"pinejs-client-supertest": "^1.4.0",
|
82
90
|
"raw-loader": "^4.0.2",
|
83
91
|
"require-npm4-to-publish": "^1.0.0",
|
84
|
-
"
|
85
|
-
"
|
86
|
-
"ts-
|
87
|
-
"
|
88
|
-
"
|
89
|
-
"webpack
|
92
|
+
"supertest": "^6.3.3",
|
93
|
+
"terser-webpack-plugin": "^5.3.7",
|
94
|
+
"ts-loader": "^9.4.2",
|
95
|
+
"ts-node": "^10.9.1",
|
96
|
+
"typescript": "^5.0.4",
|
97
|
+
"webpack": "^5.81.0",
|
98
|
+
"webpack-dev-server": "^4.13.3"
|
90
99
|
},
|
91
100
|
"optionalDependencies": {
|
92
|
-
"bcrypt": "^5.0
|
93
|
-
"body-parser": "^1.
|
101
|
+
"bcrypt": "^5.1.0",
|
102
|
+
"body-parser": "^1.20.2",
|
94
103
|
"compression": "^1.7.4",
|
95
|
-
"cookie-parser": "^1.4.
|
96
|
-
"express": "^4.
|
104
|
+
"cookie-parser": "^1.4.6",
|
105
|
+
"express": "^4.18.2",
|
97
106
|
"method-override": "^3.0.0",
|
98
|
-
"multer": "
|
107
|
+
"multer": "1.4.5-lts.1",
|
99
108
|
"mysql": "^2.18.1",
|
100
|
-
"passport": "^0.
|
109
|
+
"passport": "^0.6.0",
|
101
110
|
"passport-local": "^1.0.0",
|
102
|
-
"pg": "^8.
|
103
|
-
"pg-connection-string": "^2.
|
104
|
-
"serve-static": "^1.
|
111
|
+
"pg": "^8.10.0",
|
112
|
+
"pg-connection-string": "^2.5.0",
|
113
|
+
"serve-static": "^1.15.0"
|
105
114
|
},
|
106
115
|
"engines": {
|
107
|
-
"node": ">=
|
108
|
-
"npm": ">=
|
109
|
-
},
|
110
|
-
"husky": {
|
111
|
-
"hooks": {
|
112
|
-
"pre-commit": "lint-staged"
|
113
|
-
}
|
116
|
+
"node": ">=16.13.0",
|
117
|
+
"npm": ">=8.0.0"
|
114
118
|
},
|
115
119
|
"lint-staged": {
|
116
120
|
"*.js": [
|
117
|
-
"balena-lint --
|
121
|
+
"balena-lint --fix"
|
118
122
|
],
|
119
123
|
"*.ts": [
|
120
|
-
"balena-lint --
|
124
|
+
"balena-lint --fix"
|
121
125
|
]
|
126
|
+
},
|
127
|
+
"mocha": {
|
128
|
+
"extension": [
|
129
|
+
".test.ts"
|
130
|
+
],
|
131
|
+
"require": "ts-node/register/transpile-only",
|
132
|
+
"exit": true,
|
133
|
+
"timeout": 60000,
|
134
|
+
"recursive": true
|
135
|
+
},
|
136
|
+
"versionist": {
|
137
|
+
"publishedAt": "2023-05-17T09:05:27.152Z"
|
122
138
|
}
|
123
139
|
}
|
package/pinejs.png
ADDED
Binary file
|
package/repo.yml
CHANGED
@@ -1,20 +1,20 @@
|
|
1
|
-
type: '
|
1
|
+
type: 'docker'
|
2
2
|
upstream:
|
3
|
-
- repo: 'abstract-sql-compiler'
|
3
|
+
- repo: '@balena/abstract-sql-compiler'
|
4
4
|
url: 'https://github.com/balena-io-modules/abstract-sql-compiler'
|
5
|
-
- repo: 'abstract-sql-to-typescript'
|
5
|
+
- repo: '@balena/abstract-sql-to-typescript'
|
6
6
|
url: 'https://github.com/balena-io-modules/abstract-sql-to-typescript'
|
7
|
-
- repo: 'lf-to-abstract-sql'
|
7
|
+
- repo: '@balena/lf-to-abstract-sql'
|
8
8
|
url: 'https://github.com/balena-io-modules/lf-to-abstract-sql'
|
9
|
-
- repo: 'odata-parser'
|
9
|
+
- repo: '@balena/odata-parser'
|
10
10
|
url: 'https://github.com/balena-io-modules/odata-parser'
|
11
|
-
- repo: 'odata-to-abstract-sql'
|
11
|
+
- repo: '@balena/odata-to-abstract-sql'
|
12
12
|
url: 'https://github.com/balena-io-modules/odata-to-abstract-sql'
|
13
13
|
- repo: 'pinejs-client-core'
|
14
|
-
url: 'https://github.com/balena-io/pinejs-client-js'
|
15
|
-
- repo: 'sbvr-parser'
|
14
|
+
url: 'https://github.com/balena-io-modules/pinejs-client-js'
|
15
|
+
- repo: '@balena/sbvr-parser'
|
16
16
|
url: 'https://github.com/balena-io-modules/sbvr-parser'
|
17
|
-
- repo: 'sbvr-types'
|
17
|
+
- repo: '@balena/sbvr-types'
|
18
18
|
url: 'https://github.com/balena-io-modules/sbvr-types'
|
19
19
|
- repo: 'typed-error'
|
20
20
|
url: 'https://github.com/balena-io-modules/typed-error'
|
@@ -7,12 +7,11 @@ import {
|
|
7
7
|
|
8
8
|
import type * as SbvrUtils from '../sbvr-api/sbvr-utils';
|
9
9
|
|
10
|
-
import
|
10
|
+
import { program } from 'commander';
|
11
11
|
|
12
12
|
const runCompile = (inputFile: string, outputFile?: string) => {
|
13
|
-
const {
|
14
|
-
|
15
|
-
} = require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
13
|
+
const { generateSqlModel } =
|
14
|
+
require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
16
15
|
const abstractSql = getAbstractSqlModelFromFile(inputFile);
|
17
16
|
const sqlModel = generateSqlModel(abstractSql, program.opts().engine);
|
18
17
|
|
@@ -20,9 +19,8 @@ const runCompile = (inputFile: string, outputFile?: string) => {
|
|
20
19
|
};
|
21
20
|
|
22
21
|
const generateTypes = (inputFile: string, outputFile?: string) => {
|
23
|
-
const {
|
24
|
-
|
25
|
-
} = require('@balena/abstract-sql-to-typescript') as typeof import('@balena/abstract-sql-to-typescript');
|
22
|
+
const { abstractSqlToTypescriptTypes } =
|
23
|
+
require('@balena/abstract-sql-to-typescript') as typeof import('@balena/abstract-sql-to-typescript');
|
26
24
|
const abstractSql = getAbstractSqlModelFromFile(inputFile);
|
27
25
|
const types = abstractSqlToTypescriptTypes(abstractSql);
|
28
26
|
|
@@ -1,35 +1,34 @@
|
|
1
1
|
import { getAbstractSqlModelFromFile, version, writeAll } from './utils';
|
2
|
-
|
3
2
|
import type * as AbstractSql from '../sbvr-api/abstract-sql';
|
4
3
|
import type * as UriParser from '../sbvr-api/uri-parser';
|
5
4
|
import type { SqlResult } from '@balena/abstract-sql-compiler';
|
6
5
|
|
7
|
-
import
|
6
|
+
import { program } from 'commander';
|
8
7
|
|
9
8
|
const generateAbstractSqlQuery = (modelFile: string, odata: string) => {
|
10
|
-
const {
|
11
|
-
|
12
|
-
translateUri,
|
13
|
-
} = require('../sbvr-api/uri-parser') as typeof UriParser;
|
9
|
+
const { memoizedParseOdata, translateUri } =
|
10
|
+
require('../sbvr-api/uri-parser') as typeof UriParser;
|
14
11
|
const odataAST = memoizedParseOdata(odata);
|
12
|
+
const vocabulary = '';
|
15
13
|
return translateUri({
|
16
14
|
engine: program.opts().engine,
|
17
15
|
method: 'GET',
|
18
16
|
url: odata,
|
19
17
|
resourceName: odataAST.tree.resource,
|
18
|
+
originalResourceName: odataAST.tree.resource,
|
20
19
|
odataQuery: odataAST.tree,
|
21
20
|
odataBinds: odataAST.binds,
|
22
21
|
values: {},
|
23
|
-
vocabulary
|
22
|
+
vocabulary,
|
24
23
|
abstractSqlModel: getAbstractSqlModelFromFile(modelFile),
|
25
24
|
custom: {},
|
25
|
+
translateVersions: [vocabulary],
|
26
26
|
});
|
27
27
|
};
|
28
28
|
|
29
29
|
const parseOData = (odata: string, outputFile?: string) => {
|
30
|
-
const {
|
31
|
-
|
32
|
-
} = require('../sbvr-api/uri-parser') as typeof UriParser;
|
30
|
+
const { memoizedParseOdata } =
|
31
|
+
require('../sbvr-api/uri-parser') as typeof UriParser;
|
33
32
|
const result = memoizedParseOdata(odata);
|
34
33
|
const json = JSON.stringify(result, null, 2);
|
35
34
|
writeAll(json, outputFile);
|
@@ -62,9 +61,8 @@ const compileOData = (
|
|
62
61
|
outputFile?: string,
|
63
62
|
) => {
|
64
63
|
const translatedRequest = generateAbstractSqlQuery(modelFile, odata);
|
65
|
-
const {
|
66
|
-
|
67
|
-
} = require('../sbvr-api/abstract-sql') as typeof AbstractSql;
|
64
|
+
const { compileRequest } =
|
65
|
+
require('../sbvr-api/abstract-sql') as typeof AbstractSql;
|
68
66
|
const compiledRequest = compileRequest(translatedRequest);
|
69
67
|
let output;
|
70
68
|
if (program.opts().json) {
|
package/src/bin/sbvr-compiler.ts
CHANGED
@@ -2,15 +2,14 @@ import { version, writeAll, writeSqlModel } from './utils';
|
|
2
2
|
|
3
3
|
import type * as SbvrUtils from '../sbvr-api/sbvr-utils';
|
4
4
|
|
5
|
-
import
|
5
|
+
import { program } from 'commander';
|
6
6
|
import * as fs from 'fs';
|
7
7
|
|
8
8
|
const getSE = (inputFile: string) => fs.readFileSync(inputFile, 'utf8');
|
9
9
|
|
10
10
|
const parse = (inputFile: string, outputFile?: string) => {
|
11
|
-
const {
|
12
|
-
|
13
|
-
} = require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
11
|
+
const { generateLfModel } =
|
12
|
+
require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
14
13
|
const seModel = getSE(inputFile);
|
15
14
|
const result = generateLfModel(seModel);
|
16
15
|
const json = JSON.stringify(result, null, 2);
|
@@ -18,10 +17,8 @@ const parse = (inputFile: string, outputFile?: string) => {
|
|
18
17
|
};
|
19
18
|
|
20
19
|
const transform = (inputFile: string, outputFile?: string) => {
|
21
|
-
const {
|
22
|
-
|
23
|
-
generateAbstractSqlModel,
|
24
|
-
} = require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
20
|
+
const { generateLfModel, generateAbstractSqlModel } =
|
21
|
+
require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
25
22
|
const seModel = getSE(inputFile);
|
26
23
|
const lfModel = generateLfModel(seModel);
|
27
24
|
const result = generateAbstractSqlModel(lfModel);
|
@@ -30,9 +27,8 @@ const transform = (inputFile: string, outputFile?: string) => {
|
|
30
27
|
};
|
31
28
|
|
32
29
|
const runCompile = (inputFile: string, outputFile?: string) => {
|
33
|
-
const {
|
34
|
-
|
35
|
-
} = require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
30
|
+
const { generateModels } =
|
31
|
+
require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
36
32
|
const seModel = getSE(inputFile);
|
37
33
|
const models = generateModels(
|
38
34
|
{ apiRoot: 'sbvr-compiler', modelText: seModel },
|
@@ -43,17 +39,15 @@ const runCompile = (inputFile: string, outputFile?: string) => {
|
|
43
39
|
};
|
44
40
|
|
45
41
|
const generateTypes = (inputFile: string, outputFile?: string) => {
|
46
|
-
const {
|
47
|
-
|
48
|
-
} = require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
42
|
+
const { generateModels } =
|
43
|
+
require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
49
44
|
const seModel = getSE(inputFile);
|
50
45
|
const models = generateModels(
|
51
46
|
{ apiRoot: 'sbvr-compiler', modelText: seModel },
|
52
47
|
program.opts().engine,
|
53
48
|
);
|
54
|
-
const {
|
55
|
-
|
56
|
-
} = require('@balena/abstract-sql-to-typescript') as typeof import('@balena/abstract-sql-to-typescript');
|
49
|
+
const { abstractSqlToTypescriptTypes } =
|
50
|
+
require('@balena/abstract-sql-to-typescript') as typeof import('@balena/abstract-sql-to-typescript');
|
57
51
|
const types = abstractSqlToTypescriptTypes(models.abstractSql);
|
58
52
|
|
59
53
|
writeAll(types, outputFile);
|
package/src/bin/utils.ts
CHANGED
@@ -82,14 +82,12 @@ export const getAbstractSqlModelFromFile = (
|
|
82
82
|
} else {
|
83
83
|
throw new Error('Unrecognised config file');
|
84
84
|
}
|
85
|
-
const {
|
86
|
-
|
87
|
-
generateAbstractSqlModel,
|
88
|
-
} = require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
85
|
+
const { generateLfModel, generateAbstractSqlModel } =
|
86
|
+
require('../sbvr-api/sbvr-utils') as typeof SbvrUtils;
|
89
87
|
let lfModel;
|
90
88
|
try {
|
91
89
|
lfModel = generateLfModel(seModel);
|
92
|
-
} catch (e) {
|
90
|
+
} catch (e: any) {
|
93
91
|
throw new Error(
|
94
92
|
`Got '${e.message}' whilst trying to parse the model file as sbvr, if you're using a transpiled language for the model file you will need to either transpile in advance or run via its loader`,
|
95
93
|
);
|