@balena/pinejs 15.0.0-true-boolean-7896b116c446d891d7a0d5e4085c02a13bc9c725 → 15.0.1-build-migrations-clarify-marking-sbvr-optional-d6d0ded8eccc6eadb2492f4697918cf0afd00215-1
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 -2002
- package/CHANGELOG.md +2976 -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,6 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.setup = void 0;
|
4
|
+
const utils_1 = require("../migrator/utils");
|
4
5
|
const fs = require("fs");
|
5
6
|
const _ = require("lodash");
|
6
7
|
const path = require("path");
|
@@ -34,96 +35,118 @@ const getOrCreatePermission = async (authApiTx, permissionName) => {
|
|
34
35
|
}
|
35
36
|
};
|
36
37
|
const setup = (app) => {
|
37
|
-
const loadConfig =
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
const { users } = data;
|
45
|
-
if (users != null) {
|
46
|
-
const permissionsCache = {};
|
47
|
-
users.forEach((user) => {
|
48
|
-
if (user.permissions == null) {
|
49
|
-
return;
|
50
|
-
}
|
51
|
-
user.permissions.forEach((permissionName) => {
|
52
|
-
if (permissionsCache[permissionName] != null) {
|
53
|
-
return;
|
54
|
-
}
|
55
|
-
permissionsCache[permissionName] = getOrCreatePermission(authApiTx, permissionName);
|
56
|
-
});
|
38
|
+
const loadConfig = async (data) => {
|
39
|
+
await sbvrUtils.db.transaction(async (tx) => {
|
40
|
+
const authApiTx = sbvrUtils.api.Auth.clone({
|
41
|
+
passthrough: {
|
42
|
+
tx,
|
43
|
+
req: permissions.root,
|
44
|
+
},
|
57
45
|
});
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
}
|
65
|
-
|
66
|
-
|
67
|
-
const permissionID = await permissionsCache[permissionName];
|
68
|
-
await getOrCreate(authApiTx, 'user__has__permission', {
|
69
|
-
user: userID,
|
70
|
-
permission: permissionID,
|
71
|
-
});
|
72
|
-
}));
|
46
|
+
const { users } = data;
|
47
|
+
if (users != null) {
|
48
|
+
const permissionsCache = {};
|
49
|
+
for (const user of users) {
|
50
|
+
if (user.permissions == null) {
|
51
|
+
continue;
|
52
|
+
}
|
53
|
+
for (const permissionName of user.permissions) {
|
54
|
+
permissionsCache[permissionName] ??= getOrCreatePermission(authApiTx, permissionName);
|
73
55
|
}
|
74
56
|
}
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
57
|
+
await Promise.all(users.map(async (user) => {
|
58
|
+
try {
|
59
|
+
const userID = await getOrCreate(authApiTx, 'user', {
|
60
|
+
username: user.username,
|
61
|
+
}, {
|
62
|
+
password: user.password,
|
63
|
+
});
|
64
|
+
if (user.permissions != null) {
|
65
|
+
await Promise.all(user.permissions.map(async (permissionName) => {
|
66
|
+
const permissionID = await permissionsCache[permissionName];
|
67
|
+
await getOrCreate(authApiTx, 'user__has__permission', {
|
68
|
+
user: userID,
|
69
|
+
permission: permissionID,
|
70
|
+
});
|
71
|
+
}));
|
72
|
+
}
|
73
|
+
}
|
74
|
+
catch (e) {
|
75
|
+
e.message = `Could not create or find user "${user.username}": ${e.message}`;
|
76
|
+
throw e;
|
77
|
+
}
|
78
|
+
}));
|
79
|
+
}
|
80
|
+
const modelPromises = _(data.models)
|
81
|
+
.filter((model) => (model.abstractSql != null || model.modelText != null) &&
|
82
|
+
model.apiRoot != null)
|
83
|
+
.keyBy((model) => model.apiRoot)
|
84
|
+
.mapValues(async (model) => {
|
84
85
|
try {
|
86
|
+
const { translateTo, translations } = model;
|
87
|
+
if (translateTo != null) {
|
88
|
+
await null;
|
89
|
+
if (modelPromises[translateTo] == null) {
|
90
|
+
throw new Error(`Cannot translate to non-existent version '${translateTo}'`);
|
91
|
+
}
|
92
|
+
await modelPromises[translateTo];
|
93
|
+
}
|
94
|
+
else if (translations != null) {
|
95
|
+
throw new Error('Cannot have translations without a translateTo target');
|
96
|
+
}
|
85
97
|
await sbvrUtils.executeModel(tx, model);
|
86
98
|
const apiRoute = `/${model.apiRoot}/*`;
|
87
|
-
app
|
88
|
-
|
99
|
+
app
|
100
|
+
.route(apiRoute)
|
101
|
+
.options((_req, res) => res.status(200).end())
|
102
|
+
.get(sbvrUtils.handleODataRequest)
|
103
|
+
.put(sbvrUtils.handleODataRequest)
|
104
|
+
.post(sbvrUtils.handleODataRequest)
|
105
|
+
.patch(sbvrUtils.handleODataRequest)
|
106
|
+
.merge(sbvrUtils.handleODataRequest)
|
107
|
+
.delete(sbvrUtils.handleODataRequest);
|
89
108
|
console.info('Successfully executed ' + model.modelName + ' model.');
|
90
109
|
}
|
91
110
|
catch (err) {
|
92
|
-
const message = `Failed to execute ${model.modelName} model from ${model.modelFile}`;
|
111
|
+
const message = `Failed to execute '${model.modelName}' model from '${model.modelFile}'`;
|
93
112
|
if (_.isError(err)) {
|
94
|
-
err.message = message
|
113
|
+
err.message = `${message} due to: ${err.message}`;
|
95
114
|
throw err;
|
96
115
|
}
|
97
116
|
throw new Error(message);
|
98
117
|
}
|
99
|
-
}
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
118
|
+
})
|
119
|
+
.value();
|
120
|
+
await Promise.all(Object.values(modelPromises));
|
121
|
+
await Promise.all(data.models.map(async (model) => {
|
122
|
+
if (model.customServerCode != null) {
|
123
|
+
let customCode;
|
124
|
+
if (typeof model.customServerCode === 'string') {
|
125
|
+
try {
|
126
|
+
customCode = nodeRequire(model.customServerCode).setup;
|
127
|
+
}
|
128
|
+
catch (e) {
|
129
|
+
e.message = `Error loading custom server code: '${e.message}'`;
|
130
|
+
throw e;
|
131
|
+
}
|
105
132
|
}
|
106
|
-
|
107
|
-
|
108
|
-
throw e;
|
133
|
+
else if (typeof model.customServerCode === 'object') {
|
134
|
+
customCode = model.customServerCode.setup;
|
109
135
|
}
|
136
|
+
else {
|
137
|
+
throw new Error(`Invalid type for customServerCode '${typeof model.customServerCode}'`);
|
138
|
+
}
|
139
|
+
if (typeof customCode !== 'function') {
|
140
|
+
return;
|
141
|
+
}
|
142
|
+
await customCode(app, sbvrUtils, sbvrUtils.db);
|
110
143
|
}
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
else {
|
115
|
-
throw new Error(`Invalid type for customServerCode '${typeof model.customServerCode}'`);
|
116
|
-
}
|
117
|
-
if (typeof customCode !== 'function') {
|
118
|
-
return;
|
119
|
-
}
|
120
|
-
await customCode(app, sbvrUtils, sbvrUtils.db);
|
121
|
-
}
|
122
|
-
}));
|
123
|
-
});
|
144
|
+
}));
|
145
|
+
});
|
146
|
+
};
|
124
147
|
const loadConfigFile = async (configPath) => {
|
125
148
|
console.info('Loading config:', configPath);
|
126
|
-
return await Promise.resolve().then(
|
149
|
+
return await Promise.resolve(`${configPath}`).then(s => require(s));
|
127
150
|
};
|
128
151
|
const loadApplicationConfig = async (config) => {
|
129
152
|
try {
|
@@ -138,7 +161,7 @@ const setup = (app) => {
|
|
138
161
|
root = path.dirname(config);
|
139
162
|
configObj = await loadConfigFile(config);
|
140
163
|
}
|
141
|
-
else if (
|
164
|
+
else if (typeof config === 'object') {
|
142
165
|
root = process.cwd();
|
143
166
|
configObj = config;
|
144
167
|
}
|
@@ -152,29 +175,63 @@ const setup = (app) => {
|
|
152
175
|
return path.join(root, s);
|
153
176
|
};
|
154
177
|
await Promise.all(configObj.models.map(async (model) => {
|
155
|
-
var _a;
|
156
178
|
if (model.modelFile != null) {
|
157
179
|
model.modelText = await fs.promises.readFile(resolvePath(model.modelFile), 'utf8');
|
158
180
|
}
|
159
181
|
if (typeof model.customServerCode === 'string') {
|
160
182
|
model.customServerCode = resolvePath(model.customServerCode);
|
161
183
|
}
|
162
|
-
|
184
|
+
model.migrations ??= {};
|
163
185
|
const { migrations } = model;
|
164
186
|
if (model.migrationsPath) {
|
165
187
|
const migrationsPath = resolvePath(model.migrationsPath);
|
166
188
|
const fileNames = await fs.promises.readdir(migrationsPath);
|
167
189
|
await Promise.all(fileNames.map(async (filename) => {
|
168
190
|
const filePath = path.join(migrationsPath, filename);
|
191
|
+
const fileNameParts = filename.split('.', 3);
|
192
|
+
const fileExtension = path.extname(filename);
|
169
193
|
const [migrationKey] = filename.split('-', 1);
|
170
|
-
|
194
|
+
let migrationCategory = utils_1.defaultMigrationCategory;
|
195
|
+
if (fileNameParts.length === 3) {
|
196
|
+
if (fileNameParts[1] in utils_1.MigrationCategories) {
|
197
|
+
migrationCategory = fileNameParts[1];
|
198
|
+
}
|
199
|
+
else {
|
200
|
+
console.error(`Unrecognized migration file category ${fileNameParts[1]}, skipping: ${path.extname(filename)}`);
|
201
|
+
return;
|
202
|
+
}
|
203
|
+
}
|
204
|
+
const assignMigrationWithCategory = (newMigrationKey, newMigration) => {
|
205
|
+
const catMigrations = migrations[migrationCategory] || {};
|
206
|
+
if (typeof newMigration === 'object' &&
|
207
|
+
migrationCategory === utils_1.MigrationCategories.async) {
|
208
|
+
newMigration.type = utils_1.MigrationCategories.async;
|
209
|
+
}
|
210
|
+
if (typeof catMigrations === 'object') {
|
211
|
+
migrations[migrationCategory] = {
|
212
|
+
[newMigrationKey]: newMigration,
|
213
|
+
...catMigrations,
|
214
|
+
};
|
215
|
+
}
|
216
|
+
};
|
217
|
+
switch (fileExtension) {
|
171
218
|
case '.coffee':
|
172
219
|
case '.ts':
|
173
220
|
case '.js':
|
174
|
-
|
221
|
+
const loadeMigration = nodeRequire(filePath);
|
222
|
+
const migration = loadeMigration.default ?? loadeMigration;
|
223
|
+
if (!(0, utils_1.isAsyncMigration)(migration) &&
|
224
|
+
!(0, utils_1.isSyncMigration)(migration)) {
|
225
|
+
throw new Error(`loaded migraton file at ${filePath} is neither a synchron nor a asyncron migration definition`);
|
226
|
+
}
|
227
|
+
assignMigrationWithCategory(migrationKey, migration);
|
175
228
|
break;
|
176
229
|
case '.sql':
|
177
|
-
|
230
|
+
if (migrationCategory === utils_1.MigrationCategories.async) {
|
231
|
+
console.error(`Plain async migration sql statement not supported, needs to be an object, skipping: ${path.extname(filename)}`);
|
232
|
+
break;
|
233
|
+
}
|
234
|
+
assignMigrationWithCategory(migrationKey, await fs.promises.readFile(filePath, 'utf8'));
|
178
235
|
break;
|
179
236
|
default:
|
180
237
|
console.error(`Unrecognised migration file extension, skipping: ${path.extname(filename)}`);
|
@@ -189,7 +246,7 @@ const setup = (app) => {
|
|
189
246
|
await loadConfig(configObj);
|
190
247
|
}
|
191
248
|
catch (err) {
|
192
|
-
console.error('Error loading application config', err
|
249
|
+
console.error('Error loading application config', err);
|
193
250
|
process.exit(1);
|
194
251
|
}
|
195
252
|
};
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config-loader/config-loader.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/config-loader/config-loader.ts"],"names":[],"mappings":"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"}
|
@@ -1,21 +1,32 @@
|
|
1
|
-
export declare const DEBUG:
|
1
|
+
export declare const DEBUG: boolean;
|
2
|
+
type CacheFnOpts<T extends (...args: any[]) => any> = {
|
3
|
+
primitive?: true;
|
4
|
+
promise?: true;
|
5
|
+
normalizer?: memoizeWeak.MemoizeWeakOptions<T>['normalizer'];
|
6
|
+
weak: true;
|
7
|
+
} | {
|
8
|
+
primitive?: true;
|
9
|
+
promise?: true;
|
10
|
+
normalizer?: memoize.Options<T>['normalizer'];
|
11
|
+
weak?: undefined;
|
12
|
+
};
|
13
|
+
export type CacheFn = <T extends (...args: any[]) => any>(fn: T, opts?: CacheFnOpts<T>) => T;
|
14
|
+
export type CacheOpts = {
|
15
|
+
max?: number;
|
16
|
+
} | CacheFn | false;
|
2
17
|
export declare const cache: {
|
3
|
-
permissionsLookup:
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
};
|
12
|
-
odataToAbstractSql: {
|
13
|
-
max: number;
|
14
|
-
};
|
15
|
-
abstractSqlCompiler: {
|
16
|
-
max: number;
|
17
|
-
};
|
18
|
+
permissionsLookup: CacheOpts;
|
19
|
+
parsePermissions: CacheOpts;
|
20
|
+
parseOData: CacheOpts;
|
21
|
+
odataToAbstractSql: CacheOpts;
|
22
|
+
abstractSqlCompiler: CacheOpts;
|
23
|
+
userPermissions: CacheOpts;
|
24
|
+
apiKeyPermissions: CacheOpts;
|
25
|
+
apiKeyActorId: CacheOpts;
|
18
26
|
};
|
27
|
+
import * as memoize from 'memoizee';
|
28
|
+
import memoizeWeak = require('memoizee/weak');
|
29
|
+
export declare const createCache: <T extends (...args: any[]) => any>(cacheName: keyof typeof cache, fn: T, opts: CacheFnOpts<T>) => T;
|
19
30
|
export declare const db: {
|
20
31
|
poolSize: number;
|
21
32
|
idleTimeoutMillis: number | undefined;
|
@@ -25,8 +36,22 @@ export declare const db: {
|
|
25
36
|
keepAlive: boolean | undefined;
|
26
37
|
rollbackTimeout: number;
|
27
38
|
timeoutMS: number;
|
39
|
+
maxUses: number;
|
40
|
+
maxLifetimeSeconds: number;
|
41
|
+
checkReadOnlyQueries: boolean;
|
42
|
+
};
|
43
|
+
export declare const PINEJS_ADVISORY_LOCK: {
|
44
|
+
namespaceKey: string;
|
45
|
+
namespaceId: number;
|
28
46
|
};
|
47
|
+
export declare const booleanToEnabledString: (input: boolean) => "enabled" | "disabled";
|
29
48
|
export declare const migrator: {
|
30
49
|
lockTimeout: number;
|
31
50
|
lockFailDelay: number;
|
51
|
+
asyncMigrationDefaultDelayMS: number;
|
52
|
+
asyncMigrationDefaultBackoffDelayMS: number;
|
53
|
+
asyncMigrationDefaultErrorThreshold: number;
|
54
|
+
asyncMigrationDefaultBatchSize: number;
|
55
|
+
asyncMigrationIsEnabled: boolean;
|
32
56
|
};
|
57
|
+
export {};
|
package/out/config-loader/env.js
CHANGED
@@ -1,7 +1,11 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.migrator = exports.db = exports.cache = exports.DEBUG = void 0;
|
4
|
-
|
3
|
+
exports.migrator = exports.booleanToEnabledString = exports.PINEJS_ADVISORY_LOCK = exports.db = exports.createCache = exports.cache = exports.DEBUG = void 0;
|
4
|
+
const { PINEJS_DEBUG } = process.env;
|
5
|
+
if (![undefined, '', '0', '1'].includes(PINEJS_DEBUG)) {
|
6
|
+
throw new Error(`Invalid value for PINEJS_DEBUG '${PINEJS_DEBUG}'`);
|
7
|
+
}
|
8
|
+
exports.DEBUG = PINEJS_DEBUG === '1';
|
5
9
|
exports.cache = {
|
6
10
|
permissionsLookup: {
|
7
11
|
max: 5000,
|
@@ -18,7 +22,33 @@ exports.cache = {
|
|
18
22
|
abstractSqlCompiler: {
|
19
23
|
max: 10000,
|
20
24
|
},
|
25
|
+
userPermissions: false,
|
26
|
+
apiKeyPermissions: false,
|
27
|
+
apiKeyActorId: false,
|
28
|
+
};
|
29
|
+
const env_parsing_1 = require("@balena/env-parsing");
|
30
|
+
const memoize = require("memoizee");
|
31
|
+
const memoizeWeak = require("memoizee/weak");
|
32
|
+
const createCache = (cacheName, fn, opts) => {
|
33
|
+
const cacheOpts = exports.cache[cacheName];
|
34
|
+
if (cacheOpts === false) {
|
35
|
+
return fn;
|
36
|
+
}
|
37
|
+
if (typeof cacheOpts === 'function') {
|
38
|
+
return cacheOpts(fn, opts);
|
39
|
+
}
|
40
|
+
if (opts?.weak === true) {
|
41
|
+
return memoizeWeak(fn, {
|
42
|
+
...cacheOpts,
|
43
|
+
...opts,
|
44
|
+
});
|
45
|
+
}
|
46
|
+
return memoize(fn, {
|
47
|
+
...cacheOpts,
|
48
|
+
...opts,
|
49
|
+
});
|
21
50
|
};
|
51
|
+
exports.createCache = createCache;
|
22
52
|
let timeoutMS;
|
23
53
|
if (process.env.TRANSACTION_TIMEOUT_MS) {
|
24
54
|
timeoutMS = parseInt(process.env.TRANSACTION_TIMEOUT_MS, 10);
|
@@ -38,9 +68,23 @@ exports.db = {
|
|
38
68
|
keepAlive: true,
|
39
69
|
rollbackTimeout: 30000,
|
40
70
|
timeoutMS,
|
71
|
+
maxUses: Infinity,
|
72
|
+
maxLifetimeSeconds: 0,
|
73
|
+
checkReadOnlyQueries: exports.DEBUG,
|
74
|
+
};
|
75
|
+
exports.PINEJS_ADVISORY_LOCK = {
|
76
|
+
namespaceKey: 'pinejs_advisory_lock_namespace',
|
77
|
+
namespaceId: -1,
|
41
78
|
};
|
79
|
+
const booleanToEnabledString = (input) => input ? 'enabled' : 'disabled';
|
80
|
+
exports.booleanToEnabledString = booleanToEnabledString;
|
42
81
|
exports.migrator = {
|
43
82
|
lockTimeout: 5 * 60 * 1000,
|
44
83
|
lockFailDelay: 20 * 1000,
|
84
|
+
asyncMigrationDefaultDelayMS: 1000,
|
85
|
+
asyncMigrationDefaultBackoffDelayMS: 60000,
|
86
|
+
asyncMigrationDefaultErrorThreshold: 10,
|
87
|
+
asyncMigrationDefaultBatchSize: 1000,
|
88
|
+
asyncMigrationIsEnabled: (0, env_parsing_1.boolVar)('PINEJS_ASYNC_MIGRATION_ENABLED', true),
|
45
89
|
};
|
46
90
|
//# sourceMappingURL=env.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/config-loader/env.ts"],"names":[],"mappings":";;;
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/config-loader/env.ts"],"names":[],"mappings":"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"}
|
@@ -1,19 +1,2 @@
|
|
1
|
-
export function setup(app: import("express").Application,
|
2
|
-
export
|
3
|
-
const models: {
|
4
|
-
modelName: string;
|
5
|
-
modelText: string;
|
6
|
-
apiRoot: string;
|
7
|
-
customServerCode: {
|
8
|
-
setup: typeof setup;
|
9
|
-
};
|
10
|
-
migrations: {
|
11
|
-
'11.0.0-modified-at': string;
|
12
|
-
'15.0.0-true-boolean': {
|
13
|
-
mysql: string;
|
14
|
-
postgres: string;
|
15
|
-
websql: string;
|
16
|
-
};
|
17
|
-
};
|
18
|
-
}[];
|
19
|
-
}
|
1
|
+
export function setup(app: import("express").Application, sbvrUtilsInstance: typeof import("../sbvr-api/sbvr-utils"), db: import("../database-layer/db").Database): import("../sbvr-api/common-types").Resolvable<void>;
|
2
|
+
export let config: import('../config-loader/config-loader').Config;
|