@payloadcms/db-postgres 0.7.0 → 3.0.0-alpha.19
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/connect.d.ts.map +1 -1
- package/dist/connect.js +30 -40
- package/dist/create.js +6 -21
- package/dist/createGlobal.js +6 -21
- package/dist/createGlobalVersion.js +10 -25
- package/dist/createMigration.js +11 -26
- package/dist/createVersion.js +10 -25
- package/dist/deleteMany.js +8 -23
- package/dist/deleteOne.js +10 -25
- package/dist/deleteVersions.js +10 -25
- package/dist/destroy.js +2 -12
- package/dist/find/buildFindManyArgs.js +6 -14
- package/dist/find/chainMethods.js +2 -11
- package/dist/find/findMany.js +14 -29
- package/dist/find/traverseFields.js +8 -23
- package/dist/find.js +6 -21
- package/dist/findGlobal.js +6 -21
- package/dist/findGlobalVersions.js +8 -23
- package/dist/findOne.js +6 -21
- package/dist/findVersions.js +8 -23
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +76 -88
- package/dist/init.js +17 -32
- package/dist/migrate.d.ts.map +1 -1
- package/dist/migrate.js +15 -33
- package/dist/migrateDown.d.ts.map +1 -1
- package/dist/migrateDown.js +12 -25
- package/dist/migrateFresh.d.ts.map +1 -1
- package/dist/migrateFresh.js +15 -31
- package/dist/migrateRefresh.d.ts.map +1 -1
- package/dist/migrateRefresh.js +18 -29
- package/dist/migrateReset.d.ts.map +1 -1
- package/dist/migrateReset.js +13 -24
- package/dist/migrateStatus.js +9 -19
- package/dist/queries/buildAndOrConditions.js +4 -14
- package/dist/queries/buildQuery.js +10 -20
- package/dist/queries/createJSONQuery/convertPathToJSONTraversal.js +4 -14
- package/dist/queries/createJSONQuery/formatJSONPathSegment.js +2 -12
- package/dist/queries/createJSONQuery/index.js +6 -16
- package/dist/queries/getTableColumnFromPath.js +38 -49
- package/dist/queries/operatorMap.js +17 -27
- package/dist/queries/parseParams.js +32 -42
- package/dist/queries/sanitizeQueryValue.js +8 -18
- package/dist/queryDrafts.js +10 -25
- package/dist/schema/build.js +49 -64
- package/dist/schema/createIndex.js +5 -15
- package/dist/schema/idToUUID.js +2 -12
- package/dist/schema/parentIDColumnMap.js +7 -17
- package/dist/schema/setColumnID.js +10 -20
- package/dist/schema/traverseFields.js +62 -77
- package/dist/schema/validateExistingBlockIsIdentical.js +9 -19
- package/dist/transactions/beginTransaction.js +4 -14
- package/dist/transactions/commitTransaction.js +2 -12
- package/dist/transactions/rollbackTransaction.js +2 -12
- package/dist/transform/read/hasManyNumber.js +2 -12
- package/dist/transform/read/hasManyText.js +2 -12
- package/dist/transform/read/index.js +12 -20
- package/dist/transform/read/relationship.js +2 -12
- package/dist/transform/read/traverseFields.js +15 -23
- package/dist/transform/write/array.js +6 -16
- package/dist/transform/write/blocks.js +6 -21
- package/dist/transform/write/index.js +4 -14
- package/dist/transform/write/numbers.js +2 -12
- package/dist/transform/write/relationships.js +4 -14
- package/dist/transform/write/selects.js +4 -14
- package/dist/transform/write/texts.js +2 -12
- package/dist/transform/write/traverseFields.js +30 -45
- package/dist/transform/write/types.js +2 -5
- package/dist/types.js +2 -5
- package/dist/update.js +11 -26
- package/dist/updateGlobal.js +6 -21
- package/dist/updateGlobalVersion.js +10 -25
- package/dist/updateVersion.js +10 -25
- package/dist/upsertRow/deleteExistingArrayRows.js +5 -15
- package/dist/upsertRow/deleteExistingRowsByPath.js +9 -19
- package/dist/upsertRow/index.d.ts.map +1 -1
- package/dist/upsertRow/index.js +25 -36
- package/dist/upsertRow/insertArrays.js +2 -12
- package/dist/upsertRow/types.js +2 -5
- package/dist/utilities/appendPrefixToKeys.js +2 -12
- package/dist/utilities/createBlocksMap.js +2 -12
- package/dist/utilities/createMigrationTable.js +4 -14
- package/dist/utilities/createRelationshipMap.js +2 -12
- package/dist/utilities/hasLocalesTable.js +5 -15
- package/dist/utilities/isArrayOfRows.js +2 -12
- package/dist/utilities/migrationTableExists.js +4 -14
- package/dist/utilities/parseError.js +6 -14
- package/package.json +6 -6
package/dist/migrate.js
CHANGED
@@ -1,29 +1,11 @@
|
|
1
|
-
/* eslint-disable no-restricted-syntax, no-await-in-loop */
|
2
|
-
|
3
|
-
|
4
|
-
}
|
5
|
-
|
6
|
-
|
7
|
-
get: function() {
|
8
|
-
return migrate;
|
9
|
-
}
|
10
|
-
});
|
11
|
-
const _database = require("payload/database");
|
12
|
-
const _commitTransaction = require("payload/dist/utilities/commitTransaction");
|
13
|
-
const _initTransaction = require("payload/dist/utilities/initTransaction");
|
14
|
-
const _killTransaction = require("payload/dist/utilities/killTransaction");
|
15
|
-
const _prompts = /*#__PURE__*/ _interop_require_default(require("prompts"));
|
16
|
-
const _createMigrationTable = require("./utilities/createMigrationTable");
|
17
|
-
const _migrationTableExists = require("./utilities/migrationTableExists");
|
18
|
-
const _parseError = require("./utilities/parseError");
|
19
|
-
function _interop_require_default(obj) {
|
20
|
-
return obj && obj.__esModule ? obj : {
|
21
|
-
default: obj
|
22
|
-
};
|
23
|
-
}
|
24
|
-
async function migrate() {
|
1
|
+
/* eslint-disable no-restricted-syntax, no-await-in-loop */ import { commitTransaction, initTransaction, killTransaction, readMigrationFiles } from 'payload/database';
|
2
|
+
import prompts from 'prompts';
|
3
|
+
import { createMigrationTable } from './utilities/createMigrationTable';
|
4
|
+
import { migrationTableExists } from './utilities/migrationTableExists';
|
5
|
+
import { parseError } from './utilities/parseError';
|
6
|
+
export async function migrate() {
|
25
7
|
const { payload } = this;
|
26
|
-
const migrationFiles = await
|
8
|
+
const migrationFiles = await readMigrationFiles({
|
27
9
|
payload
|
28
10
|
});
|
29
11
|
if (!migrationFiles.length) {
|
@@ -34,7 +16,7 @@ async function migrate() {
|
|
34
16
|
}
|
35
17
|
let latestBatch = 0;
|
36
18
|
let migrationsInDB = [];
|
37
|
-
const hasMigrationTable = await
|
19
|
+
const hasMigrationTable = await migrationTableExists(this.drizzle);
|
38
20
|
if (hasMigrationTable) {
|
39
21
|
({ docs: migrationsInDB } = await payload.find({
|
40
22
|
collection: 'payload-migrations',
|
@@ -45,10 +27,10 @@ async function migrate() {
|
|
45
27
|
latestBatch = Number(migrationsInDB[0]?.batch);
|
46
28
|
}
|
47
29
|
} else {
|
48
|
-
await
|
30
|
+
await createMigrationTable(this);
|
49
31
|
}
|
50
32
|
if (migrationsInDB.find((m)=>m.batch === -1)) {
|
51
|
-
const { confirm: runMigrations } = await (
|
33
|
+
const { confirm: runMigrations } = await prompts({
|
52
34
|
name: 'confirm',
|
53
35
|
type: 'confirm',
|
54
36
|
initial: false,
|
@@ -85,7 +67,7 @@ async function runMigrationFile(payload, migration, batch) {
|
|
85
67
|
const pgAdapter = payload.db;
|
86
68
|
const drizzleJSON = generateDrizzleJson(pgAdapter.schema);
|
87
69
|
try {
|
88
|
-
await
|
70
|
+
await initTransaction(req);
|
89
71
|
await migration.up({
|
90
72
|
payload,
|
91
73
|
req
|
@@ -102,14 +84,14 @@ async function runMigrationFile(payload, migration, batch) {
|
|
102
84
|
},
|
103
85
|
req
|
104
86
|
});
|
105
|
-
await
|
87
|
+
await commitTransaction(req);
|
106
88
|
} catch (err) {
|
107
|
-
await
|
89
|
+
await killTransaction(req);
|
108
90
|
payload.logger.error({
|
109
91
|
err,
|
110
|
-
msg:
|
92
|
+
msg: parseError(err, `Error running migration ${migration.name}`)
|
111
93
|
});
|
112
94
|
}
|
113
95
|
}
|
114
96
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9taWdyYXRlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXJlc3RyaWN0ZWQtc3ludGF4LCBuby1hd2FpdC1pbi1sb29wICovXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBNaWdyYXRpb24gfSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7XG4gIGNvbW1pdFRyYW5zYWN0aW9uLFxuICBpbml0VHJhbnNhY3Rpb24sXG4gIGtpbGxUcmFuc2FjdGlvbixcbiAgcmVhZE1pZ3JhdGlvbkZpbGVzLFxufSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuaW1wb3J0IHByb21wdHMgZnJvbSAncHJvbXB0cydcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBjcmVhdGVNaWdyYXRpb25UYWJsZSB9IGZyb20gJy4vdXRpbGl0aWVzL2NyZWF0ZU1pZ3JhdGlvblRhYmxlJ1xuaW1wb3J0IHsgbWlncmF0aW9uVGFibGVFeGlzdHMgfSBmcm9tICcuL3V0aWxpdGllcy9taWdyYXRpb25UYWJsZUV4aXN0cydcbmltcG9ydCB7IHBhcnNlRXJyb3IgfSBmcm9tICcuL3V0aWxpdGllcy9wYXJzZUVycm9yJ1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWlncmF0ZSh0aGlzOiBQb3N0Z3Jlc0FkYXB0ZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgeyBwYXlsb2FkIH0gPSB0aGlzXG4gIGNvbnN0IG1pZ3JhdGlvbkZpbGVzID0gYXdhaXQgcmVhZE1pZ3JhdGlvbkZpbGVzKHsgcGF5bG9hZCB9KVxuXG4gIGlmICghbWlncmF0aW9uRmlsZXMubGVuZ3RoKSB7XG4gICAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7IG1zZzogJ05vIG1pZ3JhdGlvbnMgdG8gcnVuLicgfSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIGxldCBsYXRlc3RCYXRjaCA9IDBcbiAgbGV0IG1pZ3JhdGlvbnNJbkRCID0gW11cblxuICBjb25zdCBoYXNNaWdyYXRpb25UYWJsZSA9IGF3YWl0IG1pZ3JhdGlvblRhYmxlRXhpc3RzKHRoaXMuZHJpenpsZSlcblxuICBpZiAoaGFzTWlncmF0aW9uVGFibGUpIHtcbiAgICA7KHsgZG9jczogbWlncmF0aW9uc0luREIgfSA9IGF3YWl0IHBheWxvYWQuZmluZCh7XG4gICAgICBjb2xsZWN0aW9uOiAncGF5bG9hZC1taWdyYXRpb25zJyxcbiAgICAgIGxpbWl0OiAwLFxuICAgICAgc29ydDogJy1uYW1lJyxcbiAgICB9KSlcbiAgICBpZiAoTnVtYmVyKG1pZ3JhdGlvbnNJbkRCPy5bMF0/LmJhdGNoKSA+IDApIHtcbiAgICAgIGxhdGVzdEJhdGNoID0gTnVtYmVyKG1pZ3JhdGlvbnNJbkRCWzBdPy5iYXRjaClcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgYXdhaXQgY3JlYXRlTWlncmF0aW9uVGFibGUodGhpcylcbiAgfVxuXG4gIGlmIChtaWdyYXRpb25zSW5EQi5maW5kKChtKSA9PiBtLmJhdGNoID09PSAtMSkpIHtcbiAgICBjb25zdCB7IGNvbmZpcm06IHJ1bk1pZ3JhdGlvbnMgfSA9IGF3YWl0IHByb21wdHMoXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjb25maXJtJyxcbiAgICAgICAgdHlwZTogJ2NvbmZpcm0nLFxuICAgICAgICBpbml0aWFsOiBmYWxzZSxcbiAgICAgICAgbWVzc2FnZTpcbiAgICAgICAgICBcIkl0IGxvb2tzIGxpa2UgeW91J3ZlIHJ1biBQYXlsb2FkIGluIGRldiBtb2RlLCBtZWFuaW5nIHlvdSd2ZSBkeW5hbWljYWxseSBwdXNoZWQgY2hhbmdlcyB0byB5b3VyIGRhdGFiYXNlLlxcblxcblwiICtcbiAgICAgICAgICBcIklmIHlvdSdkIGxpa2UgdG8gcnVuIG1pZ3JhdGlvbnMsIGRhdGEgbG9zcyB3aWxsIG9jY3VyLiBXb3VsZCB5b3UgbGlrZSB0byBwcm9jZWVkP1wiLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgb25DYW5jZWw6ICgpID0+IHtcbiAgICAgICAgICBwcm9jZXNzLmV4aXQoMClcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgKVxuXG4gICAgaWYgKCFydW5NaWdyYXRpb25zKSB7XG4gICAgICBwcm9jZXNzLmV4aXQoMClcbiAgICB9XG4gIH1cblxuICBjb25zdCBuZXdCYXRjaCA9IGxhdGVzdEJhdGNoICsgMVxuXG4gIC8vIEV4ZWN1dGUgJ3VwJyBmdW5jdGlvbiBmb3IgZWFjaCBtaWdyYXRpb24gc2VxdWVudGlhbGx5XG4gIGZvciAoY29uc3QgbWlncmF0aW9uIG9mIG1pZ3JhdGlvbkZpbGVzKSB7XG4gICAgY29uc3QgYWxyZWFkeVJhbiA9IG1pZ3JhdGlvbnNJbkRCLmZpbmQoKGV4aXN0aW5nKSA9PiBleGlzdGluZy5uYW1lID09PSBtaWdyYXRpb24ubmFtZSlcblxuICAgIC8vIElmIGFscmVhZHkgcmFuLCBza2lwXG4gICAgaWYgKGFscmVhZHlSYW4pIHtcbiAgICAgIGNvbnRpbnVlIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbm8tY29udGludWVcbiAgICB9XG5cbiAgICBhd2FpdCBydW5NaWdyYXRpb25GaWxlKHBheWxvYWQsIG1pZ3JhdGlvbiwgbmV3QmF0Y2gpXG4gIH1cbn1cblxuYXN5bmMgZnVuY3Rpb24gcnVuTWlncmF0aW9uRmlsZShwYXlsb2FkOiBQYXlsb2FkLCBtaWdyYXRpb246IE1pZ3JhdGlvbiwgYmF0Y2g6IG51bWJlcikge1xuICBjb25zdCB7IGdlbmVyYXRlRHJpenpsZUpzb24gfSA9IHJlcXVpcmUoJ2RyaXp6bGUta2l0L3BheWxvYWQnKVxuXG4gIGNvbnN0IHN0YXJ0ID0gRGF0ZS5ub3coKVxuICBjb25zdCByZXEgPSB7IHBheWxvYWQgfSBhcyBQYXlsb2FkUmVxdWVzdFxuXG4gIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6IGBNaWdyYXRpbmc6ICR7bWlncmF0aW9uLm5hbWV9YCB9KVxuXG4gIGNvbnN0IHBnQWRhcHRlciA9IHBheWxvYWQuZGIgYXMgUG9zdGdyZXNBZGFwdGVyXG4gIGNvbnN0IGRyaXp6bGVKU09OID0gZ2VuZXJhdGVEcml6emxlSnNvbihwZ0FkYXB0ZXIuc2NoZW1hKVxuXG4gIHRyeSB7XG4gICAgYXdhaXQgaW5pdFRyYW5zYWN0aW9uKHJlcSlcbiAgICBhd2FpdCBtaWdyYXRpb24udXAoeyBwYXlsb2FkLCByZXEgfSlcbiAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0ZWQ6ICAke21pZ3JhdGlvbi5uYW1lfSAoJHtEYXRlLm5vdygpIC0gc3RhcnR9bXMpYCB9KVxuICAgIGF3YWl0IHBheWxvYWQuY3JlYXRlKHtcbiAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgZGF0YToge1xuICAgICAgICBuYW1lOiBtaWdyYXRpb24ubmFtZSxcbiAgICAgICAgYmF0Y2gsXG4gICAgICAgIHNjaGVtYTogZHJpenpsZUpTT04sXG4gICAgICB9LFxuICAgICAgcmVxLFxuICAgIH0pXG4gICAgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24ocmVxKVxuICB9IGNhdGNoIChlcnI6IHVua25vd24pIHtcbiAgICBhd2FpdCBraWxsVHJhbnNhY3Rpb24ocmVxKVxuICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKHtcbiAgICAgIGVycixcbiAgICAgIG1zZzogcGFyc2VFcnJvcihlcnIsIGBFcnJvciBydW5uaW5nIG1pZ3JhdGlvbiAke21pZ3JhdGlvbi5uYW1lfWApLFxuICAgIH0pXG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJjb21taXRUcmFuc2FjdGlvbiIsImluaXRUcmFuc2FjdGlvbiIsImtpbGxUcmFuc2FjdGlvbiIsInJlYWRNaWdyYXRpb25GaWxlcyIsInByb21wdHMiLCJjcmVhdGVNaWdyYXRpb25UYWJsZSIsIm1pZ3JhdGlvblRhYmxlRXhpc3RzIiwicGFyc2VFcnJvciIsIm1pZ3JhdGUiLCJwYXlsb2FkIiwibWlncmF0aW9uRmlsZXMiLCJsZW5ndGgiLCJsb2dnZXIiLCJpbmZvIiwibXNnIiwibGF0ZXN0QmF0Y2giLCJtaWdyYXRpb25zSW5EQiIsImhhc01pZ3JhdGlvblRhYmxlIiwiZHJpenpsZSIsImRvY3MiLCJmaW5kIiwiY29sbGVjdGlvbiIsImxpbWl0Iiwic29ydCIsIk51bWJlciIsImJhdGNoIiwibSIsImNvbmZpcm0iLCJydW5NaWdyYXRpb25zIiwibmFtZSIsInR5cGUiLCJpbml0aWFsIiwibWVzc2FnZSIsIm9uQ2FuY2VsIiwicHJvY2VzcyIsImV4aXQiLCJuZXdCYXRjaCIsIm1pZ3JhdGlvbiIsImFscmVhZHlSYW4iLCJleGlzdGluZyIsInJ1bk1pZ3JhdGlvbkZpbGUiLCJnZW5lcmF0ZURyaXp6bGVKc29uIiwicmVxdWlyZSIsInN0YXJ0IiwiRGF0ZSIsIm5vdyIsInJlcSIsInBnQWRhcHRlciIsImRiIiwiZHJpenpsZUpTT04iLCJzY2hlbWEiLCJ1cCIsImNyZWF0ZSIsImRhdGEiLCJlcnIiLCJlcnJvciJdLCJtYXBwaW5ncyI6IkFBQUEseURBQXlELEdBS3pELFNBQ0VBLGlCQUFpQixFQUNqQkMsZUFBZSxFQUNmQyxlQUFlLEVBQ2ZDLGtCQUFrQixRQUNiLG1CQUFrQjtBQUN6QixPQUFPQyxhQUFhLFVBQVM7QUFJN0IsU0FBU0Msb0JBQW9CLFFBQVEsbUNBQWtDO0FBQ3ZFLFNBQVNDLG9CQUFvQixRQUFRLG1DQUFrQztBQUN2RSxTQUFTQyxVQUFVLFFBQVEseUJBQXdCO0FBRW5ELE9BQU8sZUFBZUM7SUFDcEIsTUFBTSxFQUFFQyxPQUFPLEVBQUUsR0FBRyxJQUFJO0lBQ3hCLE1BQU1DLGlCQUFpQixNQUFNUCxtQkFBbUI7UUFBRU07SUFBUTtJQUUxRCxJQUFJLENBQUNDLGVBQWVDLE1BQU0sRUFBRTtRQUMxQkYsUUFBUUcsTUFBTSxDQUFDQyxJQUFJLENBQUM7WUFBRUMsS0FBSztRQUF3QjtRQUNuRDtJQUNGO0lBRUEsSUFBSUMsY0FBYztJQUNs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
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"migrateDown.d.ts","sourceRoot":"","sources":["../src/migrateDown.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"migrateDown.d.ts","sourceRoot":"","sources":["../src/migrateDown.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK9C,wBAAsB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDtE"}
|
package/dist/migrateDown.js
CHANGED
@@ -1,25 +1,12 @@
|
|
1
|
-
/* eslint-disable no-restricted-syntax, no-await-in-loop */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
Object.defineProperty(exports, "migrateDown", {
|
6
|
-
enumerable: true,
|
7
|
-
get: function() {
|
8
|
-
return migrateDown;
|
9
|
-
}
|
10
|
-
});
|
11
|
-
const _database = require("payload/database");
|
12
|
-
const _commitTransaction = require("payload/dist/utilities/commitTransaction");
|
13
|
-
const _initTransaction = require("payload/dist/utilities/initTransaction");
|
14
|
-
const _killTransaction = require("payload/dist/utilities/killTransaction");
|
15
|
-
const _migrationTableExists = require("./utilities/migrationTableExists");
|
16
|
-
const _parseError = require("./utilities/parseError");
|
17
|
-
async function migrateDown() {
|
1
|
+
/* eslint-disable no-restricted-syntax, no-await-in-loop */ import { commitTransaction, getMigrations, initTransaction, killTransaction, readMigrationFiles } from 'payload/database';
|
2
|
+
import { migrationTableExists } from './utilities/migrationTableExists';
|
3
|
+
import { parseError } from './utilities/parseError';
|
4
|
+
export async function migrateDown() {
|
18
5
|
const { payload } = this;
|
19
|
-
const migrationFiles = await
|
6
|
+
const migrationFiles = await readMigrationFiles({
|
20
7
|
payload
|
21
8
|
});
|
22
|
-
const { existingMigrations, latestBatch } = await
|
9
|
+
const { existingMigrations, latestBatch } = await getMigrations({
|
23
10
|
payload
|
24
11
|
});
|
25
12
|
if (!existingMigrations?.length) {
|
@@ -45,7 +32,7 @@ async function migrateDown() {
|
|
45
32
|
payload.logger.info({
|
46
33
|
msg: `Migrating down: ${migrationFile.name}`
|
47
34
|
});
|
48
|
-
await
|
35
|
+
await initTransaction(req);
|
49
36
|
await migrationFile.down({
|
50
37
|
payload,
|
51
38
|
req
|
@@ -53,7 +40,7 @@ async function migrateDown() {
|
|
53
40
|
payload.logger.info({
|
54
41
|
msg: `Migrated down: ${migrationFile.name} (${Date.now() - start}ms)`
|
55
42
|
});
|
56
|
-
const tableExists = await
|
43
|
+
const tableExists = await migrationTableExists(this.drizzle);
|
57
44
|
if (tableExists) {
|
58
45
|
await payload.delete({
|
59
46
|
id: migration.id,
|
@@ -61,16 +48,16 @@ async function migrateDown() {
|
|
61
48
|
req
|
62
49
|
});
|
63
50
|
}
|
64
|
-
await
|
51
|
+
await commitTransaction(req);
|
65
52
|
} catch (err) {
|
66
|
-
await
|
53
|
+
await killTransaction(req);
|
67
54
|
payload.logger.error({
|
68
55
|
err,
|
69
|
-
msg:
|
56
|
+
msg: parseError(err, `Error migrating down ${migrationFile.name}. Rolling back.`)
|
70
57
|
});
|
71
58
|
process.exit(1);
|
72
59
|
}
|
73
60
|
}
|
74
61
|
}
|
75
62
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9taWdyYXRlRG93bi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLXN5bnRheCwgbm8tYXdhaXQtaW4tbG9vcCAqL1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7XG4gIGNvbW1pdFRyYW5zYWN0aW9uLFxuICBnZXRNaWdyYXRpb25zLFxuICBpbml0VHJhbnNhY3Rpb24sXG4gIGtpbGxUcmFuc2FjdGlvbixcbiAgcmVhZE1pZ3JhdGlvbkZpbGVzLFxufSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IG1pZ3JhdGlvblRhYmxlRXhpc3RzIH0gZnJvbSAnLi91dGlsaXRpZXMvbWlncmF0aW9uVGFibGVFeGlzdHMnXG5pbXBvcnQgeyBwYXJzZUVycm9yIH0gZnJvbSAnLi91dGlsaXRpZXMvcGFyc2VFcnJvcidcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1pZ3JhdGVEb3duKHRoaXM6IFBvc3RncmVzQWRhcHRlcik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB7IHBheWxvYWQgfSA9IHRoaXNcbiAgY29uc3QgbWlncmF0aW9uRmlsZXMgPSBhd2FpdCByZWFkTWlncmF0aW9uRmlsZXMoeyBwYXlsb2FkIH0pXG5cbiAgY29uc3QgeyBleGlzdGluZ01pZ3JhdGlvbnMsIGxhdGVzdEJhdGNoIH0gPSBhd2FpdCBnZXRNaWdyYXRpb25zKHtcbiAgICBwYXlsb2FkLFxuICB9KVxuXG4gIGlmICghZXhpc3RpbmdNaWdyYXRpb25zPy5sZW5ndGgpIHtcbiAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiAnTm8gbWlncmF0aW9ucyB0byByb2xsYmFjay4nIH0pXG4gICAgcmV0dXJuXG4gIH1cblxuICBwYXlsb2FkLmxvZ2dlci5pbmZvKHtcbiAgICBtc2c6IGBSb2xsaW5nIGJhY2sgYmF0Y2ggJHtsYXRlc3RCYXRjaH0gY29uc2lzdGluZyBvZiAke2V4aXN0aW5nTWlncmF0aW9ucy5sZW5ndGh9IG1pZ3JhdGlvbihzKS5gLFxuICB9KVxuXG4gIGNvbnN0IGxhdGVzdEJhdGNoTWlncmF0aW9ucyA9IGV4aXN0aW5nTWlncmF0aW9ucy5maWx0ZXIoKHsgYmF0Y2ggfSkgPT4gYmF0Y2ggPT09IGxhdGVzdEJhdGNoKVxuXG4gIGZvciAoY29uc3QgbWlncmF0aW9uIG9mIGxhdGVzdEJhdGNoTWlncmF0aW9ucykge1xuICAgIGNvbnN0IG1pZ3JhdGlvbkZpbGUgPSBtaWdyYXRpb25GaWxlcy5maW5kKChtKSA9PiBtLm5hbWUgPT09IG1pZ3JhdGlvbi5uYW1lKVxuICAgIGlmICghbWlncmF0aW9uRmlsZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNaWdyYXRpb24gJHttaWdyYXRpb24ubmFtZX0gbm90IGZvdW5kIGxvY2FsbHkuYClcbiAgICB9XG5cbiAgICBjb25zdCBzdGFydCA9IERhdGUubm93KClcbiAgICBjb25zdCByZXEgPSB7IHBheWxvYWQgfSBhcyBQYXlsb2FkUmVxdWVzdFxuXG4gICAgdHJ5IHtcbiAgICAgIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6IGBNaWdyYXRpbmcgZG93bjogJHttaWdyYXRpb25GaWxlLm5hbWV9YCB9KVxuICAgICAgYXdhaXQgaW5pdFRyYW5zYWN0aW9uKHJlcSlcbiAgICAgIGF3YWl0IG1pZ3JhdGlvbkZpbGUuZG93bih7IHBheWxvYWQsIHJlcSB9KVxuICAgICAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7XG4gICAgICAgIG1zZzogYE1pZ3JhdGVkIGRvd246ICAke21pZ3JhdGlvbkZpbGUubmFtZX0gKCR7RGF0ZS5ub3coKSAtIHN0YXJ0fW1zKWAsXG4gICAgICB9KVxuXG4gICAgICBjb25zdCB0YWJsZUV4aXN0cyA9IGF3YWl0IG1pZ3JhdGlvblRhYmxlRXhpc3RzKHRoaXMuZHJpenpsZSlcbiAgICAgIGlmICh0YWJsZUV4aXN0cykge1xuICAgICAgICBhd2FpdCBwYXlsb2FkLmRlbGV0ZSh7XG4gICAgICAgICAgaWQ6IG1pZ3JhdGlvbi5pZCxcbiAgICAgICAgICBjb2xsZWN0aW9uOiAncGF5bG9hZC1taWdyYXRpb25zJyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGNvbW1pdFRyYW5zYWN0aW9uKHJlcSlcbiAgICB9IGNhdGNoIChlcnI6IHVua25vd24pIHtcbiAgICAgIGF3YWl0IGtpbGxUcmFuc2FjdGlvbihyZXEpXG5cbiAgICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKHtcbiAgICAgICAgZXJyLFxuICAgICAgICBtc2c6IHBhcnNlRXJyb3IoZXJyLCBgRXJyb3IgbWlncmF0aW5nIGRvd24gJHttaWdyYXRpb25GaWxlLm5hbWV9LiBSb2xsaW5nIGJhY2suYCksXG4gICAgICB9KVxuICAgICAgcHJvY2Vzcy5leGl0KDEpXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsiY29tbWl0VHJhbnNhY3Rpb24iLCJnZXRNaWdyYXRpb25zIiwiaW5pdFRyYW5zYWN0aW9uIiwia2lsbFRyYW5zYWN0aW9uIiwicmVhZE1pZ3JhdGlvbkZpbGVzIiwibWlncmF0aW9uVGFibGVFeGlzdHMiLCJwYXJzZUVycm9yIiwibWlncmF0ZURvd24iLCJwYXlsb2FkIiwibWlncmF0aW9uRmlsZXMiLCJleGlzdGluZ01pZ3JhdGlvbnMiLCJsYXRlc3RCYXRjaCIsImxlbmd0aCIsImxvZ2dlciIsImluZm8iLCJtc2ciLCJsYXRlc3RCYXRjaE1pZ3JhdGlvbnMiLCJmaWx0ZXIiLCJiYXRjaCIsIm1pZ3JhdGlvbiIsIm1pZ3JhdGlvbkZpbGUiLCJmaW5kIiwibSIsIm5hbWUiLCJFcnJvciIsInN0YXJ0IiwiRGF0ZSIsIm5vdyIsInJlcSIsImRvd24iLCJ0YWJsZUV4aXN0cyIsImRyaXp6bGUiLCJkZWxldGUiLCJpZCIsImNvbGxlY3Rpb24iLCJlcnIiLCJlcnJv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
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"migrateFresh.d.ts","sourceRoot":"","sources":["../src/migrateFresh.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"migrateFresh.d.ts","sourceRoot":"","sources":["../src/migrateFresh.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C;;GAEG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,eAAe,EACrB,EAAE,kBAA0B,EAAE;;CAAA,GAC7B,OAAO,CAAC,IAAI,CAAC,CAgEf"}
|
package/dist/migrateFresh.js
CHANGED
@@ -1,29 +1,13 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
}
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
return migrateFresh;
|
9
|
-
}
|
10
|
-
});
|
11
|
-
const _drizzleorm = require("drizzle-orm");
|
12
|
-
const _database = require("payload/database");
|
13
|
-
const _commitTransaction = require("payload/dist/utilities/commitTransaction");
|
14
|
-
const _initTransaction = require("payload/dist/utilities/initTransaction");
|
15
|
-
const _killTransaction = require("payload/dist/utilities/killTransaction");
|
16
|
-
const _prompts = /*#__PURE__*/ _interop_require_default(require("prompts"));
|
17
|
-
const _parseError = require("./utilities/parseError");
|
18
|
-
function _interop_require_default(obj) {
|
19
|
-
return obj && obj.__esModule ? obj : {
|
20
|
-
default: obj
|
21
|
-
};
|
22
|
-
}
|
23
|
-
async function migrateFresh({ forceAcceptWarning = false }) {
|
1
|
+
import { sql } from 'drizzle-orm';
|
2
|
+
import { commitTransaction, initTransaction, killTransaction, readMigrationFiles } from 'payload/database';
|
3
|
+
import prompts from 'prompts';
|
4
|
+
import { parseError } from './utilities/parseError';
|
5
|
+
/**
|
6
|
+
* Drop the current database and run all migrate up functions
|
7
|
+
*/ export async function migrateFresh({ forceAcceptWarning = false }) {
|
24
8
|
const { payload } = this;
|
25
9
|
if (forceAcceptWarning === false) {
|
26
|
-
const { confirm: acceptWarning } = await (
|
10
|
+
const { confirm: acceptWarning } = await prompts({
|
27
11
|
name: 'confirm',
|
28
12
|
type: 'confirm',
|
29
13
|
initial: false,
|
@@ -40,9 +24,9 @@ async function migrateFresh({ forceAcceptWarning = false }) {
|
|
40
24
|
payload.logger.info({
|
41
25
|
msg: `Dropping database.`
|
42
26
|
});
|
43
|
-
await this.drizzle.execute(
|
27
|
+
await this.drizzle.execute(sql.raw(`drop schema ${this.schemaName || 'public'} cascade;
|
44
28
|
create schema ${this.schemaName || 'public'};`));
|
45
|
-
const migrationFiles = await
|
29
|
+
const migrationFiles = await readMigrationFiles({
|
46
30
|
payload
|
47
31
|
});
|
48
32
|
payload.logger.debug({
|
@@ -58,7 +42,7 @@ async function migrateFresh({ forceAcceptWarning = false }) {
|
|
58
42
|
});
|
59
43
|
try {
|
60
44
|
const start = Date.now();
|
61
|
-
await
|
45
|
+
await initTransaction(req);
|
62
46
|
await migration.up({
|
63
47
|
payload,
|
64
48
|
req
|
@@ -71,18 +55,18 @@ async function migrateFresh({ forceAcceptWarning = false }) {
|
|
71
55
|
},
|
72
56
|
req
|
73
57
|
});
|
74
|
-
await
|
58
|
+
await commitTransaction(req);
|
75
59
|
payload.logger.info({
|
76
60
|
msg: `Migrated: ${migration.name} (${Date.now() - start}ms)`
|
77
61
|
});
|
78
62
|
} catch (err) {
|
79
|
-
await
|
63
|
+
await killTransaction(req);
|
80
64
|
payload.logger.error({
|
81
65
|
err,
|
82
|
-
msg:
|
66
|
+
msg: parseError(err, `Error running migration ${migration.name}. Rolling back`)
|
83
67
|
});
|
84
68
|
}
|
85
69
|
}
|
86
70
|
}
|
87
71
|
|
88
|
-
//# sourceMappingURL=data:application/json;base64,
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9taWdyYXRlRnJlc2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IHNxbCB9IGZyb20gJ2RyaXp6bGUtb3JtJ1xuaW1wb3J0IHtcbiAgY29tbWl0VHJhbnNhY3Rpb24sXG4gIGluaXRUcmFuc2FjdGlvbixcbiAga2lsbFRyYW5zYWN0aW9uLFxuICByZWFkTWlncmF0aW9uRmlsZXMsXG59IGZyb20gJ3BheWxvYWQvZGF0YWJhc2UnXG5pbXBvcnQgcHJvbXB0cyBmcm9tICdwcm9tcHRzJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IHBhcnNlRXJyb3IgfSBmcm9tICcuL3V0aWxpdGllcy9wYXJzZUVycm9yJ1xuXG4vKipcbiAqIERyb3AgdGhlIGN1cnJlbnQgZGF0YWJhc2UgYW5kIHJ1biBhbGwgbWlncmF0ZSB1cCBmdW5jdGlvbnNcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1pZ3JhdGVGcmVzaChcbiAgdGhpczogUG9zdGdyZXNBZGFwdGVyLFxuICB7IGZvcmNlQWNjZXB0V2FybmluZyA9IGZhbHNlIH0sXG4pOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgeyBwYXlsb2FkIH0gPSB0aGlzXG5cbiAgaWYgKGZvcmNlQWNjZXB0V2FybmluZyA9PT0gZmFsc2UpIHtcbiAgICBjb25zdCB7IGNvbmZpcm06IGFjY2VwdFdhcm5pbmcgfSA9IGF3YWl0IHByb21wdHMoXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdjb25maXJtJyxcbiAgICAgICAgdHlwZTogJ2NvbmZpcm0nLFxuICAgICAgICBpbml0aWFsOiBmYWxzZSxcbiAgICAgICAgbWVzc2FnZTogYFdBUk5JTkc6IFRoaXMgd2lsbCBkcm9wIHlvdXIgZGF0YWJhc2UgYW5kIHJ1biBhbGwgbWlncmF0aW9ucy4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHByb2NlZWQ/YCxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG9uQ2FuY2VsOiAoKSA9PiB7XG4gICAgICAgICAgcHJvY2Vzcy5leGl0KDApXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIClcblxuICAgIGlmICghYWNjZXB0V2FybmluZykge1xuICAgICAgcHJvY2Vzcy5leGl0KDApXG4gICAgfVxuICB9XG5cbiAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7XG4gICAgbXNnOiBgRHJvcHBpbmcgZGF0YWJhc2UuYCxcbiAgfSlcblxuICBhd2FpdCB0aGlzLmRyaXp6bGUuZXhlY3V0ZShcbiAgICBzcWwucmF3KGBkcm9wIHNjaGVtYSAke3RoaXMuc2NoZW1hTmFtZSB8fCAncHVibGljJ30gY2FzY2FkZTtcbiAgY3JlYXRlIHNjaGVtYSAke3RoaXMuc2NoZW1hTmFtZSB8fCAncHVibGljJ307YCksXG4gIClcblxuICBjb25zdCBtaWdyYXRpb25GaWxlcyA9IGF3YWl0IHJlYWRNaWdyYXRpb25GaWxlcyh7IHBheWxvYWQgfSlcbiAgcGF5bG9hZC5sb2dnZXIuZGVidWcoe1xuICAgIG1zZzogYEZvdW5kICR7bWlncmF0aW9uRmlsZXMubGVuZ3RofSBtaWdyYXRpb24gZmlsZXMuYCxcbiAgfSlcblxuICBjb25zdCByZXEgPSB7IHBheWxvYWQgfSBhcyBQYXlsb2FkUmVxdWVzdFxuICAvLyBSdW4gYWxsIG1pZ3JhdGUgdXBcbiAgZm9yIChjb25zdCBtaWdyYXRpb24gb2YgbWlncmF0aW9uRmlsZXMpIHtcbiAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0aW5nOiAke21pZ3JhdGlvbi5uYW1lfWAgfSlcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc3RhcnQgPSBEYXRlLm5vdygpXG4gICAgICBhd2FpdCBpbml0VHJhbnNhY3Rpb24ocmVxKVxuICAgICAgYXdhaXQgbWlncmF0aW9uLnVwKHsgcGF5bG9hZCwgcmVxIH0pXG4gICAgICBhd2FpdCBwYXlsb2FkLmNyZWF0ZSh7XG4gICAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgbmFtZTogbWlncmF0aW9uLm5hbWUsXG4gICAgICAgICAgYmF0Y2g6IDEsXG4gICAgICAgIH0sXG4gICAgICAgIHJlcSxcbiAgICAgIH0pXG4gICAgICBhd2FpdCBjb21taXRUcmFuc2FjdGlvbihyZXEpXG5cbiAgICAgIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6IGBNaWdyYXRlZDogICR7bWlncmF0aW9uLm5hbWV9ICgke0RhdGUubm93KCkgLSBzdGFydH1tcylgIH0pXG4gICAgfSBjYXRjaCAoZXJyOiB1bmtub3duKSB7XG4gICAgICBhd2FpdCBraWxsVHJhbnNhY3Rpb24ocmVxKVxuICAgICAgcGF5bG9hZC5sb2dnZXIuZXJyb3Ioe1xuICAgICAgICBlcnIsXG4gICAgICAgIG1zZzogcGFyc2VFcnJvcihlcnIsIGBFcnJvciBydW5uaW5nIG1pZ3JhdGlvbiAke21pZ3JhdGlvbi5uYW1lfS4gUm9sbGluZyBiYWNrYCksXG4gICAgICB9KVxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbInNxbCIsImNvbW1pdFRyYW5zYWN0aW9uIiwiaW5pdFRyYW5zYWN0aW9uIiwia2lsbFRyYW5zYWN0aW9uIiwicmVhZE1pZ3JhdGlvbkZpbGVzIiwicHJvbXB0cyIsInBhcnNlRXJyb3IiLCJtaWdyYXRlRnJlc2giLCJmb3JjZUFjY2VwdFdhcm5pbmciLCJwYXlsb2FkIiwiY29uZmlybSIsImFjY2VwdFdhcm5pbmciLCJuYW1lIiwidHlwZSIsImluaXRpYWwiLCJtZXNzYWdlIiwib25DYW5jZWwiLCJwcm9jZXNzIiwiZXhpdCIsImxvZ2dlciIsImluZm8iLCJtc2ciLCJkcml6emxlIiwiZXhlY3V0ZSIsInJhdyIsInNjaGVtYU5hbWUiLCJtaWdyYXRpb25GaWxlcyIsImRlYnVnIiwibGVuZ3RoIiwicmVxIiwibWlncmF0aW9uIiwic3RhcnQiLCJEYXRl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
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"migrateRefresh.d.ts","sourceRoot":"","sources":["../src/migrateRefresh.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"migrateRefresh.d.ts","sourceRoot":"","sources":["../src/migrateRefresh.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK9C;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,eAAe,iBAsFzD"}
|
package/dist/migrateRefresh.js
CHANGED
@@ -1,25 +1,14 @@
|
|
1
|
-
/* eslint-disable no-restricted-syntax, no-await-in-loop */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
get: function() {
|
8
|
-
return migrateRefresh;
|
9
|
-
}
|
10
|
-
});
|
11
|
-
const _database = require("payload/database");
|
12
|
-
const _commitTransaction = require("payload/dist/utilities/commitTransaction");
|
13
|
-
const _initTransaction = require("payload/dist/utilities/initTransaction");
|
14
|
-
const _killTransaction = require("payload/dist/utilities/killTransaction");
|
15
|
-
const _migrationTableExists = require("./utilities/migrationTableExists");
|
16
|
-
const _parseError = require("./utilities/parseError");
|
17
|
-
async function migrateRefresh() {
|
1
|
+
/* eslint-disable no-restricted-syntax, no-await-in-loop */ import { commitTransaction, getMigrations, initTransaction, killTransaction, readMigrationFiles } from 'payload/database';
|
2
|
+
import { migrationTableExists } from './utilities/migrationTableExists';
|
3
|
+
import { parseError } from './utilities/parseError';
|
4
|
+
/**
|
5
|
+
* Run all migration down functions before running up
|
6
|
+
*/ export async function migrateRefresh() {
|
18
7
|
const { payload } = this;
|
19
|
-
const migrationFiles = await
|
8
|
+
const migrationFiles = await readMigrationFiles({
|
20
9
|
payload
|
21
10
|
});
|
22
|
-
const { existingMigrations, latestBatch } = await
|
11
|
+
const { existingMigrations, latestBatch } = await getMigrations({
|
23
12
|
payload
|
24
13
|
});
|
25
14
|
if (!existingMigrations?.length) {
|
@@ -46,7 +35,7 @@ async function migrateRefresh() {
|
|
46
35
|
msg: `Migrating down: ${migration.name}`
|
47
36
|
});
|
48
37
|
const start = Date.now();
|
49
|
-
await
|
38
|
+
await initTransaction(req);
|
50
39
|
await migrationFile.down({
|
51
40
|
payload,
|
52
41
|
req
|
@@ -54,7 +43,7 @@ async function migrateRefresh() {
|
|
54
43
|
payload.logger.info({
|
55
44
|
msg: `Migrated down: ${migration.name} (${Date.now() - start}ms)`
|
56
45
|
});
|
57
|
-
const tableExists = await
|
46
|
+
const tableExists = await migrationTableExists(this.drizzle);
|
58
47
|
if (tableExists) {
|
59
48
|
await payload.delete({
|
60
49
|
collection: 'payload-migrations',
|
@@ -66,12 +55,12 @@ async function migrateRefresh() {
|
|
66
55
|
}
|
67
56
|
});
|
68
57
|
}
|
69
|
-
await
|
58
|
+
await commitTransaction(req);
|
70
59
|
} catch (err) {
|
71
|
-
await
|
60
|
+
await killTransaction(req);
|
72
61
|
payload.logger.error({
|
73
62
|
err,
|
74
|
-
msg:
|
63
|
+
msg: parseError(err, `Error running migration ${migration.name}. Rolling back.`)
|
75
64
|
});
|
76
65
|
process.exit(1);
|
77
66
|
}
|
@@ -83,7 +72,7 @@ async function migrateRefresh() {
|
|
83
72
|
});
|
84
73
|
try {
|
85
74
|
const start = Date.now();
|
86
|
-
await
|
75
|
+
await initTransaction(req);
|
87
76
|
await migration.up({
|
88
77
|
payload,
|
89
78
|
req
|
@@ -96,18 +85,18 @@ async function migrateRefresh() {
|
|
96
85
|
},
|
97
86
|
req
|
98
87
|
});
|
99
|
-
await
|
88
|
+
await commitTransaction(req);
|
100
89
|
payload.logger.info({
|
101
90
|
msg: `Migrated: ${migration.name} (${Date.now() - start}ms)`
|
102
91
|
});
|
103
92
|
} catch (err) {
|
104
|
-
await
|
93
|
+
await killTransaction(req);
|
105
94
|
payload.logger.error({
|
106
95
|
err,
|
107
|
-
msg:
|
96
|
+
msg: parseError(err, `Error running migration ${migration.name}. Rolling back.`)
|
108
97
|
});
|
109
98
|
}
|
110
99
|
}
|
111
100
|
}
|
112
101
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9taWdyYXRlUmVmcmVzaC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZXN0cmljdGVkLXN5bnRheCwgbm8tYXdhaXQtaW4tbG9vcCAqL1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7XG4gIGNvbW1pdFRyYW5zYWN0aW9uLFxuICBnZXRNaWdyYXRpb25zLFxuICBpbml0VHJhbnNhY3Rpb24sXG4gIGtpbGxUcmFuc2FjdGlvbixcbiAgcmVhZE1pZ3JhdGlvbkZpbGVzLFxufSBmcm9tICdwYXlsb2FkL2RhdGFiYXNlJ1xuXG5pbXBvcnQgdHlwZSB7IFBvc3RncmVzQWRhcHRlciB9IGZyb20gJy4vdHlwZXMnXG5cbmltcG9ydCB7IG1pZ3JhdGlvblRhYmxlRXhpc3RzIH0gZnJvbSAnLi91dGlsaXRpZXMvbWlncmF0aW9uVGFibGVFeGlzdHMnXG5pbXBvcnQgeyBwYXJzZUVycm9yIH0gZnJvbSAnLi91dGlsaXRpZXMvcGFyc2VFcnJvcidcblxuLyoqXG4gKiBSdW4gYWxsIG1pZ3JhdGlvbiBkb3duIGZ1bmN0aW9ucyBiZWZvcmUgcnVubmluZyB1cFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWlncmF0ZVJlZnJlc2godGhpczogUG9zdGdyZXNBZGFwdGVyKSB7XG4gIGNvbnN0IHsgcGF5bG9hZCB9ID0gdGhpc1xuICBjb25zdCBtaWdyYXRpb25GaWxlcyA9IGF3YWl0IHJlYWRNaWdyYXRpb25GaWxlcyh7IHBheWxvYWQgfSlcblxuICBjb25zdCB7IGV4aXN0aW5nTWlncmF0aW9ucywgbGF0ZXN0QmF0Y2ggfSA9IGF3YWl0IGdldE1pZ3JhdGlvbnMoe1xuICAgIHBheWxvYWQsXG4gIH0pXG5cbiAgaWYgKCFleGlzdGluZ01pZ3JhdGlvbnM/Lmxlbmd0aCkge1xuICAgIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6ICdObyBtaWdyYXRpb25zIHRvIHJvbGxiYWNrLicgfSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIHBheWxvYWQubG9nZ2VyLmluZm8oe1xuICAgIG1zZzogYFJvbGxpbmcgYmFjayBiYXRjaCAke2xhdGVzdEJhdGNofSBjb25zaXN0aW5nIG9mICR7ZXhpc3RpbmdNaWdyYXRpb25zLmxlbmd0aH0gbWlncmF0aW9uKHMpLmAsXG4gIH0pXG5cbiAgY29uc3QgcmVxID0geyBwYXlsb2FkIH0gYXMgUGF5bG9hZFJlcXVlc3RcblxuICAvLyBSZXZlcnNlIG9yZGVyIG9mIG1pZ3JhdGlvbnMgdG8gcm9sbGJhY2tcbiAgZXhpc3RpbmdNaWdyYXRpb25zLnJldmVyc2UoKVxuXG4gIGZvciAoY29uc3QgbWlncmF0aW9uIG9mIGV4aXN0aW5nTWlncmF0aW9ucykge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBtaWdyYXRpb25GaWxlID0gbWlncmF0aW9uRmlsZXMuZmluZCgobSkgPT4gbS5uYW1lID09PSBtaWdyYXRpb24ubmFtZSlcbiAgICAgIGlmICghbWlncmF0aW9uRmlsZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1pZ3JhdGlvbiAke21pZ3JhdGlvbi5uYW1lfSBub3QgZm91bmQgbG9jYWxseS5gKVxuICAgICAgfVxuXG4gICAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0aW5nIGRvd246ICR7bWlncmF0aW9uLm5hbWV9YCB9KVxuICAgICAgY29uc3Qgc3RhcnQgPSBEYXRlLm5vdygpXG4gICAgICBhd2FpdCBpbml0VHJhbnNhY3Rpb24ocmVxKVxuICAgICAgYXdhaXQgbWlncmF0aW9uRmlsZS5kb3duKHsgcGF5bG9hZCwgcmVxIH0pXG4gICAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHtcbiAgICAgICAgbXNnOiBgTWlncmF0ZWQgZG93bjogICR7bWlncmF0aW9uLm5hbWV9ICgke0RhdGUubm93KCkgLSBzdGFydH1tcylgLFxuICAgICAgfSlcblxuICAgICAgY29uc3QgdGFibGVFeGlzdHMgPSBhd2FpdCBtaWdyYXRpb25UYWJsZUV4aXN0cyh0aGlzLmRyaXp6bGUpXG4gICAgICBpZiAodGFibGVFeGlzdHMpIHtcbiAgICAgICAgYXdhaXQgcGF5bG9hZC5kZWxldGUoe1xuICAgICAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgICAgIHJlcSxcbiAgICAgICAgICB3aGVyZToge1xuICAgICAgICAgICAgbmFtZToge1xuICAgICAgICAgICAgICBlcXVhbHM6IG1pZ3JhdGlvbi5uYW1lLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgYXdhaXQgY29tbWl0VHJhbnNhY3Rpb24ocmVxKVxuICAgIH0gY2F0Y2ggKGVycjogdW5rbm93bikge1xuICAgICAgYXdhaXQga2lsbFRyYW5zYWN0aW9uKHJlcSlcbiAgICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKHtcbiAgICAgICAgZXJyLFxuICAgICAgICBtc2c6IHBhcnNlRXJyb3IoZXJyLCBgRXJyb3IgcnVubmluZyBtaWdyYXRpb24gJHttaWdyYXRpb24ubmFtZX0uIFJvbGxpbmcgYmFjay5gKSxcbiAgICAgIH0pXG4gICAgICBwcm9jZXNzLmV4aXQoMSlcbiAgICB9XG4gIH1cblxuICAvLyBSdW4gYWxsIG1pZ3JhdGUgdXBcbiAgZm9yIChjb25zdCBtaWdyYXRpb24gb2YgbWlncmF0aW9uRmlsZXMpIHtcbiAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0aW5nOiAke21pZ3JhdGlvbi5uYW1lfWAgfSlcbiAgICB0cnkge1xuICAgICAgY29uc3Qgc3RhcnQgPSBEYXRlLm5vdygpXG4gICAgICBhd2FpdCBpbml0VHJhbnNhY3Rpb24ocmVxKVxuICAgICAgYXdhaXQgbWlncmF0aW9uLnVwKHsgcGF5bG9hZCwgcmVxIH0pXG4gICAgICBhd2FpdCBwYXlsb2FkLmNyZWF0ZSh7XG4gICAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgbmFtZTogbWlncmF0aW9uLm5hbWUsXG4gICAgICAgICAgZXhlY3V0ZWQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIHJlcSxcbiAgICAgIH0pXG4gICAgICBhd2FpdCBjb21taXRUcmFuc2FjdGlvbihyZXEpXG5cbiAgICAgIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6IGBNaWdyYXRlZDogICR7bWlncmF0aW9uLm5hbWV9ICgke0RhdGUubm93KCkgLSBzdGFydH1tcylgIH0pXG4gICAgfSBjYXRjaCAoZXJyOiB1bmtub3duKSB7XG4gICAgICBhd2FpdCBraWxsVHJhbnNhY3Rpb24ocmVxKVxuICAgICAgcGF5bG9hZC5sb2dnZXIuZXJyb3Ioe1xuICAgICAgICBlcnIsXG4gICAgICAgIG1zZzogcGFyc2VFcnJvcihlcnIsIGBFcnJvciBydW5uaW5nIG1pZ3JhdGlvbiAke21pZ3JhdGlvbi5uYW1lfS4gUm9sbGluZyBiYWNrLmApLFxuICAgICAgfSlcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6WyJjb21taXRUcmFuc2FjdGlvbiIsImdldE1pZ3JhdGlvbnMiLCJpbml0VHJhbnNhY3Rpb24iLCJraWxsVHJhbnNhY3Rpb24iLCJyZWFkTWlncmF0aW9uRmlsZXMiLCJtaWdyYXRpb25UYWJsZUV4aXN0cyIsInBhcnNlRXJyb3IiLCJtaWdyYXRlUmVmcmVzaCIsInBheWxvYWQiLCJtaWdyYXRpb25GaWxlcyIsImV4aXN0aW5nTWlncmF0aW9ucyIsImxhdGVzdEJhdGNoIiwibGVuZ3RoIiwibG9nZ2VyIiwiaW5mbyIsIm1zZyIsInJlcSIsInJldmVyc2UiLCJtaWdyYXRpb24iLCJtaWdyYXRpb25GaWxlIiwiZmluZCIsIm0iLCJuYW1lIiwiRXJyb3IiLCJzdGFydCIsIkRhdGUiLCJub3ciLCJkb3duIiwidGFibGVFeGlzdHMiLCJkcml6emxlIiwiZGVsZXRlIiwiY29sbGVjdGlvbiIsIndoZXJlIiwiZXF1YWxzIiwiZXJyIiwiZXJyb3IiLCJwcm9j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
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"migrateReset.d.ts","sourceRoot":"","sources":["../src/migrateReset.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"migrateReset.d.ts","sourceRoot":"","sources":["../src/migrateReset.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAI9C;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAsEvE"}
|
package/dist/migrateReset.js
CHANGED
@@ -1,24 +1,13 @@
|
|
1
|
-
/* eslint-disable no-restricted-syntax, no-await-in-loop */
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
enumerable: true,
|
7
|
-
get: function() {
|
8
|
-
return migrateReset;
|
9
|
-
}
|
10
|
-
});
|
11
|
-
const _database = require("payload/database");
|
12
|
-
const _commitTransaction = require("payload/dist/utilities/commitTransaction");
|
13
|
-
const _initTransaction = require("payload/dist/utilities/initTransaction");
|
14
|
-
const _killTransaction = require("payload/dist/utilities/killTransaction");
|
15
|
-
const _migrationTableExists = require("./utilities/migrationTableExists");
|
16
|
-
async function migrateReset() {
|
1
|
+
/* eslint-disable no-restricted-syntax, no-await-in-loop */ import { commitTransaction, getMigrations, initTransaction, killTransaction, readMigrationFiles } from 'payload/database';
|
2
|
+
import { migrationTableExists } from './utilities/migrationTableExists';
|
3
|
+
/**
|
4
|
+
* Run all migrate down functions
|
5
|
+
*/ export async function migrateReset() {
|
17
6
|
const { payload } = this;
|
18
|
-
const migrationFiles = await
|
7
|
+
const migrationFiles = await readMigrationFiles({
|
19
8
|
payload
|
20
9
|
});
|
21
|
-
const { existingMigrations } = await
|
10
|
+
const { existingMigrations } = await getMigrations({
|
22
11
|
payload
|
23
12
|
});
|
24
13
|
if (!existingMigrations?.length) {
|
@@ -41,7 +30,7 @@ async function migrateReset() {
|
|
41
30
|
payload.logger.info({
|
42
31
|
msg: `Migrating down: ${migrationFile.name}`
|
43
32
|
});
|
44
|
-
await
|
33
|
+
await initTransaction(req);
|
45
34
|
await migrationFile.down({
|
46
35
|
payload,
|
47
36
|
req
|
@@ -49,7 +38,7 @@ async function migrateReset() {
|
|
49
38
|
payload.logger.info({
|
50
39
|
msg: `Migrated down: ${migrationFile.name} (${Date.now() - start}ms)`
|
51
40
|
});
|
52
|
-
const tableExists = await
|
41
|
+
const tableExists = await migrationTableExists(this.drizzle);
|
53
42
|
if (tableExists) {
|
54
43
|
await payload.delete({
|
55
44
|
id: migration.id,
|
@@ -57,11 +46,11 @@ async function migrateReset() {
|
|
57
46
|
req
|
58
47
|
});
|
59
48
|
}
|
60
|
-
await
|
49
|
+
await commitTransaction(req);
|
61
50
|
} catch (err) {
|
62
51
|
let msg = `Error running migration ${migrationFile.name}.`;
|
63
52
|
if (err instanceof Error) msg += ` ${err.message}`;
|
64
|
-
await
|
53
|
+
await killTransaction(req);
|
65
54
|
payload.logger.error({
|
66
55
|
err,
|
67
56
|
msg
|
@@ -70,7 +59,7 @@ async function migrateReset() {
|
|
70
59
|
}
|
71
60
|
}
|
72
61
|
// Delete dev migration
|
73
|
-
const tableExists = await
|
62
|
+
const tableExists = await migrationTableExists(this.drizzle);
|
74
63
|
if (tableExists) {
|
75
64
|
try {
|
76
65
|
await payload.delete({
|
@@ -90,4 +79,4 @@ async function migrateReset() {
|
|
90
79
|
}
|
91
80
|
}
|
92
81
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9taWdyYXRlUmVzZXQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcmVzdHJpY3RlZC1zeW50YXgsIG5vLWF3YWl0LWluLWxvb3AgKi9cbmltcG9ydCB0eXBlIHsgUGF5bG9hZFJlcXVlc3QgfSBmcm9tICdwYXlsb2FkL3R5cGVzJ1xuXG5pbXBvcnQge1xuICBjb21taXRUcmFuc2FjdGlvbixcbiAgZ2V0TWlncmF0aW9ucyxcbiAgaW5pdFRyYW5zYWN0aW9uLFxuICBraWxsVHJhbnNhY3Rpb24sXG4gIHJlYWRNaWdyYXRpb25GaWxlcyxcbn0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcblxuaW1wb3J0IHR5cGUgeyBQb3N0Z3Jlc0FkYXB0ZXIgfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBtaWdyYXRpb25UYWJsZUV4aXN0cyB9IGZyb20gJy4vdXRpbGl0aWVzL21pZ3JhdGlvblRhYmxlRXhpc3RzJ1xuXG4vKipcbiAqIFJ1biBhbGwgbWlncmF0ZSBkb3duIGZ1bmN0aW9uc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWlncmF0ZVJlc2V0KHRoaXM6IFBvc3RncmVzQWRhcHRlcik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB7IHBheWxvYWQgfSA9IHRoaXNcbiAgY29uc3QgbWlncmF0aW9uRmlsZXMgPSBhd2FpdCByZWFkTWlncmF0aW9uRmlsZXMoeyBwYXlsb2FkIH0pXG5cbiAgY29uc3QgeyBleGlzdGluZ01pZ3JhdGlvbnMgfSA9IGF3YWl0IGdldE1pZ3JhdGlvbnMoeyBwYXlsb2FkIH0pXG5cbiAgaWYgKCFleGlzdGluZ01pZ3JhdGlvbnM/Lmxlbmd0aCkge1xuICAgIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6ICdObyBtaWdyYXRpb25zIHRvIHJlc2V0LicgfSlcbiAgICByZXR1cm5cbiAgfVxuXG4gIGNvbnN0IHJlcSA9IHsgcGF5bG9hZCB9IGFzIFBheWxvYWRSZXF1ZXN0XG5cbiAgLy8gUm9sbGJhY2sgYWxsIG1pZ3JhdGlvbnMgaW4gb3JkZXJcbiAgZm9yIChjb25zdCBtaWdyYXRpb24gb2YgZXhpc3RpbmdNaWdyYXRpb25zKSB7XG4gICAgY29uc3QgbWlncmF0aW9uRmlsZSA9IG1pZ3JhdGlvbkZpbGVzLmZpbmQoKG0pID0+IG0ubmFtZSA9PT0gbWlncmF0aW9uLm5hbWUpXG4gICAgdHJ5IHtcbiAgICAgIGlmICghbWlncmF0aW9uRmlsZSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYE1pZ3JhdGlvbiAke21pZ3JhdGlvbi5uYW1lfSBub3QgZm91bmQgbG9jYWxseS5gKVxuICAgICAgfVxuXG4gICAgICBjb25zdCBzdGFydCA9IERhdGUubm93KClcbiAgICAgIHBheWxvYWQubG9nZ2VyLmluZm8oeyBtc2c6IGBNaWdyYXRpbmcgZG93bjogJHttaWdyYXRpb25GaWxlLm5hbWV9YCB9KVxuICAgICAgYXdhaXQgaW5pdFRyYW5zYWN0aW9uKHJlcSlcbiAgICAgIGF3YWl0IG1pZ3JhdGlvbkZpbGUuZG93bih7IHBheWxvYWQsIHJlcSB9KVxuICAgICAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7XG4gICAgICAgIG1zZzogYE1pZ3JhdGVkIGRvd246ICAke21pZ3JhdGlvbkZpbGUubmFtZX0gKCR7RGF0ZS5ub3coKSAtIHN0YXJ0fW1zKWAsXG4gICAgICB9KVxuXG4gICAgICBjb25zdCB0YWJsZUV4aXN0cyA9IGF3YWl0IG1pZ3JhdGlvblRhYmxlRXhpc3RzKHRoaXMuZHJpenpsZSlcbiAgICAgIGlmICh0YWJsZUV4aXN0cykge1xuICAgICAgICBhd2FpdCBwYXlsb2FkLmRlbGV0ZSh7XG4gICAgICAgICAgaWQ6IG1pZ3JhdGlvbi5pZCxcbiAgICAgICAgICBjb2xsZWN0aW9uOiAncGF5bG9hZC1taWdyYXRpb25zJyxcbiAgICAgICAgICByZXEsXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIGF3YWl0IGNvbW1pdFRyYW5zYWN0aW9uKHJlcSlcbiAgICB9IGNhdGNoIChlcnI6IHVua25vd24pIHtcbiAgICAgIGxldCBtc2cgPSBgRXJyb3IgcnVubmluZyBtaWdyYXRpb24gJHttaWdyYXRpb25GaWxlLm5hbWV9LmBcblxuICAgICAgaWYgKGVyciBpbnN0YW5jZW9mIEVycm9yKSBtc2cgKz0gYCAke2Vyci5tZXNzYWdlfWBcblxuICAgICAgYXdhaXQga2lsbFRyYW5zYWN0aW9uKHJlcSlcbiAgICAgIHBheWxvYWQubG9nZ2VyLmVycm9yKHtcbiAgICAgICAgZXJyLFxuICAgICAgICBtc2csXG4gICAgICB9KVxuICAgICAgcHJvY2Vzcy5leGl0KDEpXG4gICAgfVxuICB9XG5cbiAgLy8gRGVsZXRlIGRldiBtaWdyYXRpb25cblxuICBjb25zdCB0YWJsZUV4aXN0cyA9IGF3YWl0IG1pZ3JhdGlvblRhYmxlRXhpc3RzKHRoaXMuZHJpenpsZSlcbiAgaWYgKHRhYmxlRXhpc3RzKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHBheWxvYWQuZGVsZXRlKHtcbiAgICAgICAgY29sbGVjdGlvbjogJ3BheWxvYWQtbWlncmF0aW9ucycsXG4gICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgYmF0Y2g6IHtcbiAgICAgICAgICAgIGVxdWFsczogLTEsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgfSBjYXRjaCAoZXJyOiB1bmtub3duKSB7XG4gICAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcih7IGVycm9yOiBlcnIsIG1zZzogJ0Vycm9yIGRlbGV0aW5nIGRldiBtaWdyYXRpb24nIH0pXG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOlsiY29tbWl0VHJhbnNhY3Rpb24iLCJnZXRNaWdyYXRpb25zIiwiaW5pdFRyYW5zYWN0aW9uIiwia2lsbFRyYW5zYWN0aW9uIiwicmVhZE1pZ3JhdGlvbkZpbGVzIiwibWlncmF0aW9uVGFibGVFeGlzdHMiLCJtaWdyYXRlUmVzZXQiLCJwYXlsb2FkIiwibWlncmF0aW9uRmlsZXMiLCJleGlzdGluZ01pZ3JhdGlvbnMiLCJsZW5ndGgiLCJsb2dnZXIiLCJpbmZvIiwibXNnIiwicmVxIiwibWlncmF0aW9uIiwibWlncmF0aW9uRmlsZSIsImZpbmQiLCJtIiwibmFtZSIsIkVycm9yIiwic3RhcnQiLCJEYXRlIiwibm93IiwiZG93biIsInRhYmxlRXhpc3RzIiwiZHJpenpsZSIsImRlbGV0ZSIsImlkIiwiY29sbGVjdGlvbiIsImVyciIsIm1lc3NhZ2UiLCJlcnJvciIsInByb2Nlc3MiLCJleGl0Iiwid2hlcmUiLCJiYXRjaCIsImVxdWFscyJdLCJtYXBwaW5ncyI6IkFBQUEseURBQXlELEdBR3pELFNBQ0VBLGlCQUFpQixFQUNqQkMsYUFBYSxFQUNiQyxlQUFlLEVBQ2ZDLGVBQWUsRUFDZkMsa0JBQWtCLFFBQ2IsbUJBQWtCO0FBSXpCLFNBQVNDLG9CQUFvQixRQUFRLG1DQUFrQztBQUV2RTs7Q0FFQyxHQUNELE9BQU8sZUFBZUM7SUFDcEIsTUFBTSxFQUFFQyxPQUFPLEVBQUUsR0FBRyxJQUFJO0lBQ3hCLE1BQU1DLGlCQUFpQixNQUFNSixtQkFBbUI7UUFBRUc7SUFBUTtJQUUxRCxNQUFNLEVBQUVFLGtCQUFrQixFQUFFLEdBQUcsTUFBTVIsY0FBYztRQUFFTTtJQUFRO0lBRTdELElBQUksQ0FBQ0Usb0JBQW9CQyxRQUFRO1FBQy9CSCxRQUFRSSxNQUFNLENBQUNDLElBQUksQ0FBQztZQUFFQyxLQUFLO1FBQTBCO1FBQ3JEO0lBQ0Y7SUFFQSxNQUFNQyxNQUFNO1FBQUVQO0lBQVE7SUFFdEIsbUNBQW1DO0lBQ25DLEtBQUssTUFBTVEsYUFBYU4sbUJBQW9CO1FBQzFDLE1BQU1PLGdCQUFnQlIsZUFBZVMsSUFBSSxDQUFDLENBQUNDLElBQU1BLEVBQUVDLElBQUksS0FBS0osVUFBVUksSUFBSTtRQUMxRSxJQUFJO1lBQ0YsSUFBSSxDQUFDSCxlQUFlO2dCQUNsQixNQUFNLElBQUlJLE1BQU0sQ0FBQyxVQUFVLEVBQUVMLFVBQVVJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQztZQUNsRTtZQUVBLE1BQU1FLFFBQVFDLEtBQUtDLEdBQUc7WUFDdEJoQixRQUFRSSxNQUFNLENBQUNDLElBQUksQ0FBQztnQkFBRUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFRyxjQUFjRyxJQUFJLENBQUMsQ0FBQztZQUFDO1lBQ25FLE1BQU1qQixnQkFBZ0JZO1lBQ3RCLE1BQU1FLGNBQWNRLElBQUksQ0FBQztnQkFBRWpCO2dCQUFTTztZQUFJO1lBQ3hDUCxRQUFRSSxNQUFNLENBQUNDLElBQUksQ0FBQztnQkFDbEJDLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRUcsY0FBY0csSUFBSSxDQUFDLEVBQUUsRUFBRUcsS0FBS0MsR0FBRyxLQUFLRixNQUFNLEdBQUcsQ0FBQztZQUN4RTtZQUVBLE1BQU1JLGNBQWMsTUFBTXBCLHFCQUFxQixJQUFJLENBQUNxQixPQUFPO1lBQzNELElBQUlELGFBQWE7Z0JBQ2YsTUFBTWxCLFFBQVFvQixNQUFNLENBQUM7b0JBQ25CQyxJQUFJYixVQUFVYSxFQUFFO29CQUNoQkMsWUFBWTtvQkFDWmY7Z0JBQ0Y7WUFDRjtZQUVBLE1BQU1kLGtCQUFrQmM7UUFDMUIsRUFBRSxPQUFPZ0IsS0FBYztZQUNyQixJQUFJakIsTUFBTSxDQUFDLHdCQUF3QixFQUFFRyxjQUFjRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1lBRTFELElBQUlXLGVBQWVWLE9BQU9QLE9BQU8sQ0FBQyxDQUFDLEVBQUVpQixJQUFJQyxPQUFPLENBQUMsQ0FBQztZQUVsRCxNQUFNNUIsZ0JBQWdCVztZQUN0QlAsUUFBUUksTUFBTSxDQUFDcUIsS0FBSyxDQUFDO2dCQUNuQkY7Z0JBQ0FqQjtZQUNGO1lBQ0FvQixRQUFRQyxJQUFJLENBQUM7UUFDZjtJQUNGO0lBRUEsdUJBQXVCO0lBRXZCLE1BQU1ULGNBQWMsTUFBTXBCLHFCQUFxQixJQUFJLENBQUNxQixPQUFPO0lBQzNELElBQUlELGFBQWE7UUFDZixJQUFJO1lBQ0YsTUFBTWxCLFFBQVFvQixNQUFNLENBQUM7Z0JBQ25CRSxZQUFZO2dCQUNaTSxPQUFPO29CQUNMQyxPQUFPO3dCQUNMQyxRQUFRLENBQUM7b0JBQ1g7Z0JBQ0Y7WUFDRjtRQUNGLEVBQUUsT0FBT1AsS0FBYztZQUNyQnZCLFFBQVFJLE1BQU0sQ0FBQ3FCLEtBQUssQ0FBQztnQkFBRUEsT0FBT0Y7Z0JBQUtqQixLQUFLO1lBQStCO1FBQ3pFO0lBQ0Y7QUFDRiJ9
|