purplekit 1.0.5 → 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +46 -6
- package/build/src/app.js +48 -12
- package/build/src/app.js.map +1 -1
- package/build/src/config/constants.d.ts +2 -1
- package/build/src/config/constants.d.ts.map +1 -1
- package/build/src/config/constants.js +3 -1
- package/build/src/config/constants.js.map +1 -1
- package/build/src/config/index.d.ts +7 -1
- package/build/src/config/index.d.ts.map +1 -1
- package/build/src/config/index.js +30 -1
- package/build/src/config/index.js.map +1 -1
- package/build/src/features/createdb.d.ts +1 -1
- package/build/src/features/createdb.d.ts.map +1 -1
- package/build/src/features/createdb.js +6 -7
- package/build/src/features/createdb.js.map +1 -1
- package/build/src/features/dropdb.d.ts +1 -1
- package/build/src/features/dropdb.d.ts.map +1 -1
- package/build/src/features/dropdb.js +6 -7
- package/build/src/features/dropdb.js.map +1 -1
- package/build/src/features/gen.d.ts +5 -5
- package/build/src/features/gen.d.ts.map +1 -1
- package/build/src/features/gen.js +17 -15
- package/build/src/features/gen.js.map +1 -1
- package/build/src/features/init.d.ts +1 -1
- package/build/src/features/init.d.ts.map +1 -1
- package/build/src/features/init.js +18 -9
- package/build/src/features/init.js.map +1 -1
- package/build/src/features/migrate.d.ts +3 -2
- package/build/src/features/migrate.d.ts.map +1 -1
- package/build/src/features/migrate.js +28 -39
- package/build/src/features/migrate.js.map +1 -1
- package/build/src/features/migration.d.ts +3 -1
- package/build/src/features/migration.d.ts.map +1 -1
- package/build/src/features/migration.js +13 -8
- package/build/src/features/migration.js.map +1 -1
- package/build/src/features/seed.d.ts +1 -1
- package/build/src/features/seed.d.ts.map +1 -1
- package/build/src/features/seed.js +5 -8
- package/build/src/features/seed.js.map +1 -1
- package/build/src/features/status.d.ts +1 -1
- package/build/src/features/status.d.ts.map +1 -1
- package/build/src/features/status.js +11 -19
- package/build/src/features/status.js.map +1 -1
- package/build/src/index.d.ts +1 -1
- package/build/src/index.d.ts.map +1 -1
- package/build/src/index.js.map +1 -1
- package/build/src/libs/compare-mig.d.ts +2 -2
- package/build/src/libs/compare-mig.d.ts.map +1 -1
- package/build/src/libs/compare-mig.js +1 -6
- package/build/src/libs/compare-mig.js.map +1 -1
- package/build/src/libs/create-ds.d.ts +19 -1
- package/build/src/libs/create-ds.d.ts.map +1 -1
- package/build/src/libs/create-ds.js +35 -8
- package/build/src/libs/create-ds.js.map +1 -1
- package/build/src/libs/format-error.d.ts +12 -0
- package/build/src/libs/format-error.d.ts.map +1 -0
- package/build/src/libs/format-error.js +56 -0
- package/build/src/libs/format-error.js.map +1 -0
- package/build/src/libs/get-commands.d.ts +9 -9
- package/build/src/libs/get-commands.d.ts.map +1 -1
- package/build/src/libs/get-commands.js +10 -35
- package/build/src/libs/get-commands.js.map +1 -1
- package/build/src/libs/print.d.ts +1 -1
- package/build/src/libs/print.js +2 -2
- package/build/src/libs/print.js.map +1 -1
- package/build/src/libs/sanitize.d.ts +8 -4
- package/build/src/libs/sanitize.d.ts.map +1 -1
- package/build/src/libs/sanitize.js +19 -9
- package/build/src/libs/sanitize.js.map +1 -1
- package/build/src/libs/version.d.ts +10 -0
- package/build/src/libs/version.d.ts.map +1 -0
- package/build/src/libs/version.js +64 -0
- package/build/src/libs/version.js.map +1 -0
- package/build/src/types.d.ts +12 -2
- package/build/src/types.d.ts.map +1 -1
- package/package.json +7 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gen.js","sourceRoot":"","sources":["../../../src/features/gen.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAsD;AACtD,gDAAoD;AAEpD,wCAA6C;
|
|
1
|
+
{"version":3,"file":"gen.js","sourceRoot":"","sources":["../../../src/features/gen.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* Creates Purplekit's opinionated project structure and starter config.
|
|
3
3
|
* Existing files are preserved so the command can be rerun safely.
|
|
4
4
|
*/
|
|
5
|
-
declare function init(): Promise<
|
|
5
|
+
declare function init(): Promise<0 | 1>;
|
|
6
6
|
export { init };
|
|
7
7
|
//# sourceMappingURL=init.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/features/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/features/init.ts"],"names":[],"mappings":"AAuDA;;;GAGG;AACH,iBAAe,IAAI,mBAkBlB;AAED,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
|
@@ -46,6 +46,7 @@ exports.init = init;
|
|
|
46
46
|
const config_1 = require("../config");
|
|
47
47
|
const constants_1 = require("../config/constants");
|
|
48
48
|
const print_1 = require("../libs/print");
|
|
49
|
+
const format_error_1 = require("../libs/format-error");
|
|
49
50
|
const fs = __importStar(require("fs/promises"));
|
|
50
51
|
const template = `import type { PURPLEKIT_CONFIGURATIONS } from 'purplekit';
|
|
51
52
|
|
|
@@ -56,6 +57,7 @@ const config: PURPLEKIT_CONFIGURATIONS = {
|
|
|
56
57
|
TYPE: 'postgres',
|
|
57
58
|
SSL_MODE: false,
|
|
58
59
|
SSL_TYPE: 'light',
|
|
60
|
+
SSL_REJECT_UNAUTHORIZED: false,
|
|
59
61
|
DATABASE_CA_CERT: './',
|
|
60
62
|
DATABASE_HOST: 'localhost',
|
|
61
63
|
DATABASE_PORT: 5432,
|
|
@@ -104,15 +106,22 @@ function ensureFile(path_1) {
|
|
|
104
106
|
*/
|
|
105
107
|
function init() {
|
|
106
108
|
return __awaiter(this, void 0, void 0, function* () {
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
109
|
+
try {
|
|
110
|
+
(0, print_1.print)('Creating Purplekit workspace...');
|
|
111
|
+
yield ensureDir(config_1.cfg.ROOT);
|
|
112
|
+
yield ensureDir(config_1.cfg.MIGRATIONS_DIR);
|
|
113
|
+
yield ensureDir(config_1.cfg.SEEDS_DIR);
|
|
114
|
+
yield ensureFile(`${config_1.cfg.ROOT}/.gitkeep`);
|
|
115
|
+
yield ensureFile(`${config_1.cfg.MIGRATIONS_DIR}/.gitkeep`);
|
|
116
|
+
yield ensureFile(`${config_1.cfg.SEEDS_DIR}/.gitkeep`);
|
|
117
|
+
yield ensureFile(constants_1.PURPLEKIT_CONFIG_TS, template);
|
|
118
|
+
(0, print_1.print)('Purplekit workspace initialized.');
|
|
119
|
+
return 0;
|
|
120
|
+
}
|
|
121
|
+
catch (e) {
|
|
122
|
+
(0, print_1.printf)(`Failed to initialize Purplekit workspace: ${(0, format_error_1.formatError)(e)}`);
|
|
123
|
+
return 1;
|
|
124
|
+
}
|
|
116
125
|
});
|
|
117
126
|
}
|
|
118
127
|
//# sourceMappingURL=init.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/features/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/features/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+ES,oBAAI;AA/Eb,qCAA+B;AAC/B,kDAAyD;AACzD,wCAA6C;AAC7C,sDAAkD;AAClD,gDAAkC;AAElC,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;CAsBhB,CAAC;AAEF;;;;GAIG;AACH,SAAe,SAAS,CAAC,IAAY;;QACnC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;CAAA;AAED;;;;;GAKG;AACH,SAAe,UAAU;yDAAC,IAAY,EAAE,UAAkB,EAAE;QAC1D,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,CAA0B,CAAC;YACvC,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO;YAClC,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;CAAA;AAED;;;GAGG;AACH,SAAe,IAAI;;QACjB,IAAI,CAAC;YACH,IAAA,aAAK,EAAC,iCAAiC,CAAC,CAAC;YACzC,MAAM,SAAS,CAAC,YAAG,CAAC,IAAI,CAAC,CAAC;YAC1B,MAAM,SAAS,CAAC,YAAG,CAAC,cAAc,CAAC,CAAC;YACpC,MAAM,SAAS,CAAC,YAAG,CAAC,SAAS,CAAC,CAAC;YAE/B,MAAM,UAAU,CAAC,GAAG,YAAG,CAAC,IAAI,WAAW,CAAC,CAAC;YACzC,MAAM,UAAU,CAAC,GAAG,YAAG,CAAC,cAAc,WAAW,CAAC,CAAC;YACnD,MAAM,UAAU,CAAC,GAAG,YAAG,CAAC,SAAS,WAAW,CAAC,CAAC;YAE9C,MAAM,UAAU,CAAC,+BAAmB,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAA,aAAK,EAAC,kCAAkC,CAAC,CAAC;YAC1C,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAA,cAAM,EAAC,6CAA6C,IAAA,0BAAW,EAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACtE,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;CAAA"}
|
|
@@ -34,7 +34,8 @@ declare function hasMigration(ds: DataSource, name: string): Promise<boolean>;
|
|
|
34
34
|
* @param name - Optional migration folder name; when omitted, all folders are considered.
|
|
35
35
|
* @param db - Optional database override for the migration lookup.
|
|
36
36
|
* @returns Pending {@link MigrationItem} entries; empty when none apply.
|
|
37
|
-
* @throws When
|
|
37
|
+
* @throws When `name` is given but its migration file does not exist, or when
|
|
38
|
+
* the data source cannot connect or migration lookup fails.
|
|
38
39
|
*/
|
|
39
40
|
declare function getMigrationsToRun(name?: string, db?: string): Promise<MigrationItem[]>;
|
|
40
41
|
/**
|
|
@@ -78,6 +79,6 @@ declare function getMigrationNameFromPath(input: string): {
|
|
|
78
79
|
*
|
|
79
80
|
* @param args - CLI options; `--name` scopes to one migration folder, `--file` to a folder or `migration.ts` path.
|
|
80
81
|
*/
|
|
81
|
-
declare function migrate(args: MIGRATE): Promise<
|
|
82
|
+
declare function migrate(args: MIGRATE): Promise<0 | 1>;
|
|
82
83
|
export { migrate, runMigrationByConfig, runMigrationByName, getMigrationsToRun, hasMigration, getMigrationFiles, getMigrationNameFromPath, };
|
|
83
84
|
//# sourceMappingURL=migrate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/features/migrate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../../src/features/migrate.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAOrC,KAAK,eAAe,GAAG;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,UAAU,GAAG,kBAAkB,GAAG,eAAe,CAAC;CAC3D,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;;;;GAKG;AACH,iBAAe,iBAAiB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC,CAgB3D;AAED;;;;;;;GAOG;AACH,iBAAe,YAAY,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,oBAavD;AAED;;;;;;;;;;GAUG;AACH,iBAAe,kBAAkB,CAC/B,IAAI,CAAC,EAAE,MAAM,EACb,EAAE,CAAC,EAAE,MAAM,GACV,OAAO,CAAC,aAAa,EAAE,CAAC,CA2C1B;AAED;;;;;;;;GAQG;AACH,iBAAe,kBAAkB,CAC/B,IAAI,CAAC,EAAE,MAAM,EACb,EAAE,CAAC,EAAE,MAAM,GACV,OAAO,CAAC,eAAe,CAAC,CAqC1B;AAED;;;;;;;;GAQG;AACH,iBAAe,oBAAoB,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CA0BzE;AAED;;;;;;;;GAQG;AACH,iBAAS,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CA2BA;AAED;;;;;;;GAOG;AACH,iBAAe,OAAO,CAAC,IAAI,EAAE,OAAO,kBAuBnC;AAED,OAAO,EACL,OAAO,EACP,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,wBAAwB,GACzB,CAAC"}
|
|
@@ -63,6 +63,7 @@ exports.getMigrationNameFromPath = getMigrationNameFromPath;
|
|
|
63
63
|
const get_commands_1 = require("../libs/get-commands");
|
|
64
64
|
const create_ds_1 = require("../libs/create-ds");
|
|
65
65
|
const print_1 = require("../libs/print");
|
|
66
|
+
const format_error_1 = require("../libs/format-error");
|
|
66
67
|
const sanitize_1 = require("../libs/sanitize");
|
|
67
68
|
const config_1 = require("../config");
|
|
68
69
|
const fs = __importStar(require("fs"));
|
|
@@ -104,21 +105,19 @@ function getMigrationFiles() {
|
|
|
104
105
|
*/
|
|
105
106
|
function hasMigration(ds, name) {
|
|
106
107
|
return __awaiter(this, void 0, void 0, function* () {
|
|
108
|
+
// Before the first migration runs, TypeORM's `migrations` table does not
|
|
109
|
+
// exist yet. Ask TypeORM (dialect-agnostic) instead of matching each
|
|
110
|
+
// database's own "table not found" error.
|
|
111
|
+
const runner = ds.createQueryRunner();
|
|
107
112
|
try {
|
|
108
|
-
|
|
109
|
-
const rows = yield ds.query(command, [name]);
|
|
110
|
-
const v = rows.length > 0;
|
|
111
|
-
return v;
|
|
112
|
-
}
|
|
113
|
-
catch (e) {
|
|
114
|
-
const code = typeof e === 'object' && e && 'code' in e ? e.code : undefined;
|
|
115
|
-
const msg = e instanceof Error ? e.message : '';
|
|
116
|
-
if (code === '42P01' ||
|
|
117
|
-
msg.includes('relation "migrations" does not exist')) {
|
|
113
|
+
if (!(yield runner.hasTable('migrations')))
|
|
118
114
|
return false;
|
|
119
|
-
}
|
|
120
|
-
throw e;
|
|
121
115
|
}
|
|
116
|
+
finally {
|
|
117
|
+
yield runner.release();
|
|
118
|
+
}
|
|
119
|
+
const rows = yield ds.query((0, get_commands_1.getCheckMigrationCommand)(), [name]);
|
|
120
|
+
return rows.length > 0;
|
|
122
121
|
});
|
|
123
122
|
}
|
|
124
123
|
/**
|
|
@@ -129,10 +128,15 @@ function hasMigration(ds, name) {
|
|
|
129
128
|
* @param name - Optional migration folder name; when omitted, all folders are considered.
|
|
130
129
|
* @param db - Optional database override for the migration lookup.
|
|
131
130
|
* @returns Pending {@link MigrationItem} entries; empty when none apply.
|
|
132
|
-
* @throws When
|
|
131
|
+
* @throws When `name` is given but its migration file does not exist, or when
|
|
132
|
+
* the data source cannot connect or migration lookup fails.
|
|
133
133
|
*/
|
|
134
134
|
function getMigrationsToRun(name, db) {
|
|
135
135
|
return __awaiter(this, void 0, void 0, function* () {
|
|
136
|
+
// fail fast, before connecting, when a specific migration was asked for
|
|
137
|
+
if (name && !fs.existsSync((0, paths_1.getMigrationFile)(name))) {
|
|
138
|
+
throw new Error(`Migration '${name}' not found. Expected file: ${(0, paths_1.getMigrationFile)(name)}`);
|
|
139
|
+
}
|
|
136
140
|
const ds = (0, create_ds_1.createDataSource)(db ? { database: db } : {});
|
|
137
141
|
let initialized = false;
|
|
138
142
|
try {
|
|
@@ -140,15 +144,12 @@ function getMigrationsToRun(name, db) {
|
|
|
140
144
|
initialized = true;
|
|
141
145
|
const items = new Set();
|
|
142
146
|
if (name) {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
parentPath: path.dirname((0, paths_1.getMigrationFile)(name)),
|
|
150
|
-
});
|
|
151
|
-
}
|
|
147
|
+
items.add({
|
|
148
|
+
exists: true,
|
|
149
|
+
file: (0, paths_1.getMigrationFile)(name),
|
|
150
|
+
name,
|
|
151
|
+
parentPath: path.dirname((0, paths_1.getMigrationFile)(name)),
|
|
152
|
+
});
|
|
152
153
|
}
|
|
153
154
|
else {
|
|
154
155
|
const files = yield getMigrationFiles();
|
|
@@ -164,10 +165,6 @@ function getMigrationsToRun(name, db) {
|
|
|
164
165
|
return f;
|
|
165
166
|
});
|
|
166
167
|
}
|
|
167
|
-
catch (e) {
|
|
168
|
-
const msg = e instanceof Error ? e.message : JSON.stringify(e);
|
|
169
|
-
throw new Error(msg);
|
|
170
|
-
}
|
|
171
168
|
finally {
|
|
172
169
|
if (initialized) {
|
|
173
170
|
yield ds.destroy();
|
|
@@ -211,10 +208,6 @@ function runMigrationByName(name, db) {
|
|
|
211
208
|
status: 'migrated',
|
|
212
209
|
};
|
|
213
210
|
}
|
|
214
|
-
catch (e) {
|
|
215
|
-
const parsed = e instanceof Error ? e.message : JSON.stringify(e);
|
|
216
|
-
throw new Error(parsed);
|
|
217
|
-
}
|
|
218
211
|
finally {
|
|
219
212
|
if (initialized && ds) {
|
|
220
213
|
yield ds.destroy();
|
|
@@ -253,10 +246,6 @@ function runMigrationByConfig(db) {
|
|
|
253
246
|
status: 'migrated',
|
|
254
247
|
};
|
|
255
248
|
}
|
|
256
|
-
catch (e) {
|
|
257
|
-
const msg = e instanceof Error ? e.message : JSON.stringify(e);
|
|
258
|
-
throw new Error(msg);
|
|
259
|
-
}
|
|
260
249
|
finally {
|
|
261
250
|
if (initialized) {
|
|
262
251
|
yield ds.destroy();
|
|
@@ -304,8 +293,8 @@ function getMigrationNameFromPath(input) {
|
|
|
304
293
|
function migrate(args) {
|
|
305
294
|
return __awaiter(this, void 0, void 0, function* () {
|
|
306
295
|
var _a;
|
|
307
|
-
const database = (0, sanitize_1.sanitize)((_a = args.db) !== null && _a !== void 0 ? _a : config_1.cfg.DATABASE_NAME);
|
|
308
296
|
try {
|
|
297
|
+
const database = (0, sanitize_1.sanitize)((_a = args.db) !== null && _a !== void 0 ? _a : config_1.cfg.DATABASE_NAME, 'database name');
|
|
309
298
|
let response;
|
|
310
299
|
if (args.file) {
|
|
311
300
|
const result = getMigrationNameFromPath(args.file);
|
|
@@ -316,15 +305,15 @@ function migrate(args) {
|
|
|
316
305
|
}
|
|
317
306
|
if (response.migrated) {
|
|
318
307
|
(0, print_1.print)('Migrations completed successfully.');
|
|
319
|
-
|
|
308
|
+
return 0;
|
|
320
309
|
}
|
|
321
310
|
(0, print_1.print)(`No migrations were run: ${response.status}.`);
|
|
322
|
-
|
|
311
|
+
return 0;
|
|
323
312
|
}
|
|
324
313
|
catch (e) {
|
|
325
|
-
const msg =
|
|
314
|
+
const msg = (0, format_error_1.formatError)(e);
|
|
326
315
|
(0, print_1.printf)(`Failed to run migrations: ${msg}`);
|
|
327
|
-
|
|
316
|
+
return 1;
|
|
328
317
|
}
|
|
329
318
|
});
|
|
330
319
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/features/migrate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../../src/features/migrate.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,8 @@ type ApplyReturn = {
|
|
|
9
9
|
applied: boolean;
|
|
10
10
|
generated: boolean;
|
|
11
11
|
msg: string;
|
|
12
|
+
/** True when the outcome should be reported as an error (non-zero exit). */
|
|
13
|
+
failed?: boolean;
|
|
12
14
|
};
|
|
13
15
|
/**
|
|
14
16
|
* Generates a migration and immediately applies it to the configured database.
|
|
@@ -23,6 +25,6 @@ declare function apply(all?: boolean): Promise<ApplyReturn>;
|
|
|
23
25
|
*
|
|
24
26
|
* @param args - Command options, including whether to run all migrations.
|
|
25
27
|
*/
|
|
26
|
-
declare function migration(args: MIGRATION): Promise<
|
|
28
|
+
declare function migration(args: MIGRATION): Promise<0 | 1>;
|
|
27
29
|
export { migration, apply, removeMig };
|
|
28
30
|
//# sourceMappingURL=migration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../../src/features/migration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"migration.d.ts","sourceRoot":"","sources":["../../../src/features/migration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC;;;;GAIG;AACH,iBAAe,SAAS,CAAC,QAAQ,EAAE,MAAM,iBAKxC;AAED,KAAK,WAAW,GAAG;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,4EAA4E;IAC5E,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;;GAMG;AACH,iBAAe,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CA2CxD;AAED;;;;GAIG;AACH,iBAAe,SAAS,CAAC,IAAI,EAAE,SAAS,kBAcvC;AAED,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -50,6 +50,7 @@ const config_1 = require("../config");
|
|
|
50
50
|
const migrate_1 = require("./migrate");
|
|
51
51
|
const sanitize_1 = require("../libs/sanitize");
|
|
52
52
|
const print_1 = require("../libs/print");
|
|
53
|
+
const format_error_1 = require("../libs/format-error");
|
|
53
54
|
const fs = __importStar(require("fs/promises"));
|
|
54
55
|
const path = __importStar(require("path"));
|
|
55
56
|
/**
|
|
@@ -75,12 +76,13 @@ function removeMig(location) {
|
|
|
75
76
|
function apply(all) {
|
|
76
77
|
return __awaiter(this, void 0, void 0, function* () {
|
|
77
78
|
// generate migration files
|
|
78
|
-
const database = (0, sanitize_1.sanitize)(config_1.cfg.DATABASE_NAME);
|
|
79
|
+
const database = (0, sanitize_1.sanitize)(config_1.cfg.DATABASE_NAME, 'DATABASE_NAME');
|
|
79
80
|
const response = yield (0, gen_1.generate)({ db: database, save: false });
|
|
80
81
|
if (!response.generated) {
|
|
81
82
|
return {
|
|
82
83
|
applied: false,
|
|
83
84
|
generated: false,
|
|
85
|
+
failed: response.more.reason === 'duplicate-found',
|
|
84
86
|
msg: response.more.reason === 'duplicate-found'
|
|
85
87
|
? `Duplicate migration found: ${response.more.duplicateOf}.`
|
|
86
88
|
: 'No schema changes detected. Migration generation skipped.',
|
|
@@ -97,6 +99,7 @@ function apply(all) {
|
|
|
97
99
|
generated: true,
|
|
98
100
|
applied: false,
|
|
99
101
|
msg: 'No migrations were run.',
|
|
102
|
+
failed: true,
|
|
100
103
|
};
|
|
101
104
|
}
|
|
102
105
|
return {
|
|
@@ -106,7 +109,8 @@ function apply(all) {
|
|
|
106
109
|
};
|
|
107
110
|
}
|
|
108
111
|
catch (e) {
|
|
109
|
-
|
|
112
|
+
// never let cleanup failure hide the original error
|
|
113
|
+
yield removeMig(response.more.location).catch(() => undefined);
|
|
110
114
|
throw e;
|
|
111
115
|
}
|
|
112
116
|
});
|
|
@@ -120,16 +124,17 @@ function migration(args) {
|
|
|
120
124
|
return __awaiter(this, void 0, void 0, function* () {
|
|
121
125
|
try {
|
|
122
126
|
const response = yield apply(args.all);
|
|
123
|
-
if (
|
|
127
|
+
if (response.failed) {
|
|
124
128
|
(0, print_1.printf)(response.msg);
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
129
|
+
return 1;
|
|
130
|
+
}
|
|
131
|
+
(0, print_1.print)(response.msg);
|
|
132
|
+
return 0;
|
|
128
133
|
}
|
|
129
134
|
catch (e) {
|
|
130
|
-
const msg =
|
|
135
|
+
const msg = (0, format_error_1.formatError)(e);
|
|
131
136
|
(0, print_1.printf)(`Failed to apply migration: ${msg}`);
|
|
132
|
-
|
|
137
|
+
return 1;
|
|
133
138
|
}
|
|
134
139
|
});
|
|
135
140
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../src/features/migration.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"migration.js","sourceRoot":"","sources":["../../../src/features/migration.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,5 +5,5 @@ import { SEED } from '../types';
|
|
|
5
5
|
*
|
|
6
6
|
* @param args - Command options including an optional database override.
|
|
7
7
|
*/
|
|
8
|
-
export declare function seed(args: SEED): Promise<
|
|
8
|
+
export declare function seed(args: SEED): Promise<0 | 1>;
|
|
9
9
|
//# sourceMappingURL=seed.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seed.d.ts","sourceRoot":"","sources":["../../../src/features/seed.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"seed.d.ts","sourceRoot":"","sources":["../../../src/features/seed.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AA8B/B;;;;;GAKG;AACH,wBAAsB,IAAI,CAAC,IAAI,EAAE,IAAI,kBAYpC"}
|
|
@@ -13,6 +13,7 @@ exports.seed = seed;
|
|
|
13
13
|
const config_1 = require("../config");
|
|
14
14
|
const create_ds_1 = require("../libs/create-ds");
|
|
15
15
|
const print_1 = require("../libs/print");
|
|
16
|
+
const format_error_1 = require("../libs/format-error");
|
|
16
17
|
const sanitize_1 = require("../libs/sanitize");
|
|
17
18
|
const typeorm_extension_1 = require("typeorm-extension");
|
|
18
19
|
/**
|
|
@@ -24,7 +25,7 @@ const typeorm_extension_1 = require("typeorm-extension");
|
|
|
24
25
|
*/
|
|
25
26
|
function seeder(seeds, db) {
|
|
26
27
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
-
const database = (0, sanitize_1.sanitize)(db !== null && db !== void 0 ? db : config_1.cfg.DATABASE_NAME);
|
|
28
|
+
const database = (0, sanitize_1.sanitize)(db !== null && db !== void 0 ? db : config_1.cfg.DATABASE_NAME, 'database name');
|
|
28
29
|
const ds = (0, create_ds_1.createDataSource)({ database });
|
|
29
30
|
let initialized = false;
|
|
30
31
|
try {
|
|
@@ -35,10 +36,6 @@ function seeder(seeds, db) {
|
|
|
35
36
|
}
|
|
36
37
|
return true;
|
|
37
38
|
}
|
|
38
|
-
catch (e) {
|
|
39
|
-
const msg = e instanceof Error ? e.message : JSON.stringify(e);
|
|
40
|
-
throw new Error(msg);
|
|
41
|
-
}
|
|
42
39
|
finally {
|
|
43
40
|
if (initialized) {
|
|
44
41
|
yield ds.destroy();
|
|
@@ -60,12 +57,12 @@ function seed(args) {
|
|
|
60
57
|
if (!response)
|
|
61
58
|
throw new Error('Unable to complete seeding');
|
|
62
59
|
(0, print_1.print)('Seeding completed successfully.');
|
|
63
|
-
|
|
60
|
+
return 0;
|
|
64
61
|
}
|
|
65
62
|
catch (e) {
|
|
66
|
-
const msg =
|
|
63
|
+
const msg = (0, format_error_1.formatError)(e);
|
|
67
64
|
(0, print_1.printf)(`Failed to run seeders: ${msg}`);
|
|
68
|
-
|
|
65
|
+
return 1;
|
|
69
66
|
}
|
|
70
67
|
});
|
|
71
68
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seed.js","sourceRoot":"","sources":["../../../src/features/seed.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"seed.js","sourceRoot":"","sources":["../../../src/features/seed.ts"],"names":[],"mappings":";;;;;;;;;;;AAyCA,oBAYC;AArDD,qCAA+B;AAC/B,gDAAoD;AACpD,wCAA6C;AAC7C,sDAAkD;AAClD,8CAA2C;AAE3C,yDAAsD;AAEtD;;;;;;GAMG;AACH,SAAe,MAAM,CAAC,KAA2B,EAAE,EAAW;;QAC5D,MAAM,QAAQ,GAAG,IAAA,mBAAQ,EAAC,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,YAAG,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;QACpE,MAAM,EAAE,GAAG,IAAA,4BAAgB,EAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC1C,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,UAAU,EAAE,CAAC;YACtB,WAAW,GAAG,IAAI,CAAC;YAEnB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,IAAA,6BAAS,EAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;CAAA;AAED;;;;;GAKG;AACH,SAAsB,IAAI,CAAC,IAAU;;QACnC,IAAI,CAAC;YACH,MAAM,KAAK,GAAyB,YAAG,CAAC,KAAK,CAAC;YAC9C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YAC9C,IAAI,CAAC,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC7D,IAAA,aAAK,EAAC,iCAAiC,CAAC,CAAC;YACzC,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,IAAA,0BAAW,EAAC,CAAC,CAAC,CAAC;YAC3B,IAAA,cAAM,EAAC,0BAA0B,GAAG,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;CAAA"}
|
|
@@ -50,6 +50,6 @@ declare const dbStatus: (db: string) => Promise<{
|
|
|
50
50
|
*
|
|
51
51
|
* @param args - CLI options; `name` defaults to `cfg.DATABASE_NAME`.
|
|
52
52
|
*/
|
|
53
|
-
declare const status: (args: DB_STATUS) => Promise<
|
|
53
|
+
declare const status: (args: DB_STATUS) => Promise<0 | 1>;
|
|
54
54
|
export { status, dbStatus, doesDbExists, migrationStatus, checkForDuplicateMig, };
|
|
55
55
|
//# sourceMappingURL=status.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/features/status.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/features/status.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAKpC,OAAO,EAAmC,aAAa,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAGL,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAG5B;;;;;GAKG;AACH,QAAA,MAAM,eAAe,GAAU,OAAO,MAAM;;;EAgC3C,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,oBAAoB,QAAa,OAAO,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,aAAa,GAAG;QAAE,WAAW,EAAE,kBAAkB,CAAA;KAAE,CAAC,EAAE,CAAC;CACjE,CAyBA,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,YAAY,GAChB,MAAM,MAAM,KACX,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAsBvE,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,QAAQ,GACZ,IAAI,MAAM,KACT,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAkBlD,CAAC;AAEF;;;;;;GAMG;AACH,QAAA,MAAM,MAAM,GAAU,MAAM,SAAS,mBAyCpC,CAAC;AAEF,OAAO,EACL,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,eAAe,EACf,oBAAoB,GACrB,CAAC"}
|
|
@@ -57,6 +57,7 @@ exports.checkForDuplicateMig = exports.migrationStatus = exports.doesDbExists =
|
|
|
57
57
|
const get_commands_1 = require("../libs/get-commands");
|
|
58
58
|
const create_ds_1 = require("../libs/create-ds");
|
|
59
59
|
const print_1 = require("../libs/print");
|
|
60
|
+
const format_error_1 = require("../libs/format-error");
|
|
60
61
|
const config_1 = require("../config");
|
|
61
62
|
const sanitize_1 = require("../libs/sanitize");
|
|
62
63
|
const migrate_1 = require("./migrate");
|
|
@@ -90,10 +91,6 @@ const migrationStatus = (name) => __awaiter(void 0, void 0, void 0, function* ()
|
|
|
90
91
|
}
|
|
91
92
|
return { applied, pending };
|
|
92
93
|
}
|
|
93
|
-
catch (e) {
|
|
94
|
-
const msg = e instanceof Error ? e.message : JSON.stringify(e);
|
|
95
|
-
throw new Error(msg);
|
|
96
|
-
}
|
|
97
94
|
finally {
|
|
98
95
|
if (initialized) {
|
|
99
96
|
yield ds2.destroy();
|
|
@@ -109,9 +106,12 @@ exports.migrationStatus = migrationStatus;
|
|
|
109
106
|
const checkForDuplicateMig = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
110
107
|
const results = [];
|
|
111
108
|
const dialect = (0, compare_mig_1.getParserDialect)(config_1.cfg.TYPE);
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
109
|
+
// oldest first, so each duplicate is reported once: the newer file as a
|
|
110
|
+
// duplicate of the older one
|
|
111
|
+
const stamp = (name) => { var _a, _b; return Number((_b = (_a = /(\d{13})$/.exec(name)) === null || _a === void 0 ? void 0 : _a[1]) !== null && _b !== void 0 ? _b : 0); };
|
|
112
|
+
const files = (yield (0, migrate_1.getMigrationFiles)()).sort((a, b) => stamp(a.name) - stamp(b.name) || a.name.localeCompare(b.name));
|
|
113
|
+
for (const [index, i] of files.entries()) {
|
|
114
|
+
const existing = files.slice(0, index);
|
|
115
115
|
const data = yield fs.readFile(i.file, { encoding: 'utf-8' });
|
|
116
116
|
const resp = yield (0, compare_mig_1.compareMig)(data, existing, dialect);
|
|
117
117
|
if (resp)
|
|
@@ -148,10 +148,6 @@ const doesDbExists = (name) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
148
148
|
dbName: name,
|
|
149
149
|
};
|
|
150
150
|
}
|
|
151
|
-
catch (e) {
|
|
152
|
-
const msg = e instanceof Error ? e.message : 'unable to serialize error';
|
|
153
|
-
throw new Error(msg);
|
|
154
|
-
}
|
|
155
151
|
finally {
|
|
156
152
|
if (initialized) {
|
|
157
153
|
yield ds.destroy();
|
|
@@ -179,10 +175,6 @@ const dbStatus = (db) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
179
175
|
tables: response.length,
|
|
180
176
|
};
|
|
181
177
|
}
|
|
182
|
-
catch (e) {
|
|
183
|
-
const msg = e instanceof Error ? e.message : 'Unable to serialize';
|
|
184
|
-
throw new Error(msg);
|
|
185
|
-
}
|
|
186
178
|
finally {
|
|
187
179
|
if (initialized) {
|
|
188
180
|
yield tds.destroy();
|
|
@@ -199,8 +191,8 @@ exports.dbStatus = dbStatus;
|
|
|
199
191
|
*/
|
|
200
192
|
const status = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
201
193
|
var _a;
|
|
202
|
-
const name = (0, sanitize_1.sanitize)((_a = args.name) !== null && _a !== void 0 ? _a : config_1.cfg.DATABASE_NAME);
|
|
203
194
|
try {
|
|
195
|
+
const name = (0, sanitize_1.sanitize)((_a = args.name) !== null && _a !== void 0 ? _a : config_1.cfg.DATABASE_NAME, 'database name');
|
|
204
196
|
let response = {};
|
|
205
197
|
const exists = yield doesDbExists(name);
|
|
206
198
|
if (exists.databaseOk) {
|
|
@@ -217,12 +209,12 @@ const status = (args) => __awaiter(void 0, void 0, void 0, function* () {
|
|
|
217
209
|
duplicateOf: m.duplicateOf.name,
|
|
218
210
|
})) }) });
|
|
219
211
|
(0, print_1.print)(JSON.stringify(response, null, 2));
|
|
220
|
-
|
|
212
|
+
return 0;
|
|
221
213
|
}
|
|
222
214
|
catch (e) {
|
|
223
|
-
const msg =
|
|
215
|
+
const msg = (0, format_error_1.formatError)(e);
|
|
224
216
|
(0, print_1.printf)(`Failed to check status: ${msg}`);
|
|
225
|
-
|
|
217
|
+
return 1;
|
|
226
218
|
}
|
|
227
219
|
});
|
|
228
220
|
exports.status = status;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/features/status.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA4E;AAC5E,gDAAoD;AAEpD,wCAA6C;AAC7C,qCAA+B;AAC/B,8CAA2C;AAC3C,uCAA2E;AAC3E,oDAI4B;AAC5B,gDAAkC;AAElC;;;;;GAKG;AACH,MAAM,eAAe,GAAG,CAAO,IAAa,EAAE,EAAE;IAC9C,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,MAAM,GAAG,GAAG,IAAA,4BAAgB,EAAC,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAE7D,IAAI,CAAC;QACH,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;QACvB,WAAW,GAAG,IAAI,CAAC;QAEnB,MAAM,UAAU,GAAG,MAAM,IAAA,2BAAiB,GAAE,CAAC;QAE7C,MAAM,OAAO,GAAoB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAoB,EAAE,CAAC;QAEpC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,UAAU,CAAC,GAAG,CAAC,CAAO,CAAC,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,MAAM,IAAA,sBAAY,EAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC/C,uCAAY,CAAC,KAAE,MAAM,IAAG;QAC1B,CAAC,CAAA,CAAC,CACH,CAAC;QAEF,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,MAAM,EAAE,MAAM,KAAc,CAAC,EAAV,IAAI,UAAK,CAAC,EAAvB,UAAmB,CAAI,CAAC;YAC9B,IAAI,MAAM;gBAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;gBAC1B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/features/status.ts"],"names":[],"mappings":"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"}
|
package/build/src/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { PURPLEKIT_CONFIGURATIONS } from './types';
|
|
1
|
+
export type { PURPLEKIT_CONFIGURATIONS, SupportedType, CREATE_DB, DROP_DB, DB_STATUS, GENERATE_MIGRATIONS, MIGRATE, MIGRATION, SEED, } from './types';
|
|
2
2
|
export { seedEntities } from './libs/seed-entities';
|
|
3
3
|
export { createdb, dropdb, gen, init, migrate, migration, seed, status, } from './features';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/build/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,wBAAwB,EACxB,aAAa,EACb,SAAS,EACT,OAAO,EACP,SAAS,EACT,mBAAmB,EACnB,OAAO,EACP,SAAS,EACT,IAAI,GACL,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EACL,QAAQ,EACR,MAAM,EACN,GAAG,EACH,IAAI,EACJ,OAAO,EACP,SAAS,EACT,IAAI,EACJ,MAAM,GACP,MAAM,YAAY,CAAC"}
|
package/build/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;AAWA,sDAAoD;AAA3C,6GAAA,YAAY,OAAA;AACrB,uCASoB;AARlB,oGAAA,QAAQ,OAAA;AACR,kGAAA,MAAM,OAAA;AACN,+FAAA,GAAG,OAAA;AACH,gGAAA,IAAI,OAAA;AACJ,mGAAA,OAAO,OAAA;AACP,qGAAA,SAAS,OAAA;AACT,gGAAA,IAAI,OAAA;AACJ,kGAAA,MAAM,OAAA"}
|