@strapi/database 5.0.0-beta.4 → 5.0.0-beta.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/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -11
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +18 -11
- package/dist/index.mjs.map +1 -1
- package/dist/migrations/common.d.ts +16 -2
- package/dist/migrations/common.d.ts.map +1 -1
- package/dist/migrations/index.d.ts +2 -2
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/internal-migrations/5.0.0-02-document-id.d.ts.map +1 -1
- package/dist/migrations/internal.d.ts +2 -2
- package/dist/migrations/internal.d.ts.map +1 -1
- package/dist/migrations/users.d.ts +2 -2
- package/dist/migrations/users.d.ts.map +1 -1
- package/package.json +7 -6
package/dist/index.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ import { LifecycleProvider } from './lifecycles';
|
|
|
8
8
|
import * as errors from './errors';
|
|
9
9
|
import { Callback, TransactionObject } from './transaction-context';
|
|
10
10
|
import type { Model } from './types';
|
|
11
|
+
import type { Migration } from './migrations';
|
|
11
12
|
import { type Identifiers } from './utils/identifiers';
|
|
12
13
|
export { isKnexQuery } from './utils/knex';
|
|
13
14
|
interface Settings {
|
|
@@ -47,5 +48,5 @@ declare class Database {
|
|
|
47
48
|
destroy(): Promise<void>;
|
|
48
49
|
}
|
|
49
50
|
export { Database, errors };
|
|
50
|
-
export type { Model, Identifiers };
|
|
51
|
+
export type { Model, Identifiers, Migration };
|
|
51
52
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAc,MAAM,YAAY,CAAC;AACjD,OAAO,EAAwB,cAAc,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAkB,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAuB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAA4B,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAA4B,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE3E,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAkB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,UAAU,QAAQ;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE;QACV,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAcD,cAAM,QAAQ;IACZ,UAAU,EAAE,IAAI,CAAC;IAEjB,OAAO,EAAE,OAAO,CAAC;IAEjB,MAAM,EAAE,cAAc,CAAC;IAEvB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,MAAM,EAAE,cAAc,CAAC;IAEvB,UAAU,EAAE,iBAAiB,CAAC;IAE9B,UAAU,EAAE,iBAAiB,CAAC;IAE9B,aAAa,EAAE,aAAa,CAAC;gBAEjB,MAAM,EAAE,cAAc;IA2B5B,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,KAAK,EAAE,CAAA;KAAE;IAM1C,KAAK,CAAC,GAAG,EAAE,MAAM;IAQjB,aAAa;IAIb,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IACzC,WAAW,CAAC,SAAS,SAAS,QAAQ,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IA4CrF,aAAa,IAAI,MAAM,GAAG,SAAS;IAInC,aAAa,IAAI,IAAI;IACrB,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,YAAY;IAOpD,mBAAmB,CAAC,GAAG,mBAAkB;IAKzC,YAAY,CAAC,GAAG,EAAE,MAAM;IAIlB,OAAO;CAId;AAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC5B,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAc,MAAM,YAAY,CAAC;AACjD,OAAO,EAAwB,cAAc,EAAE,MAAM,UAAU,CAAC;AAChE,OAAO,EAAkB,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtD,OAAO,EAAuB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAA4B,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC3E,OAAO,EAA4B,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE3E,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAkB,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAEpF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,UAAU,QAAQ;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE;QACV,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC;CACpB;AAcD,cAAM,QAAQ;IACZ,UAAU,EAAE,IAAI,CAAC;IAEjB,OAAO,EAAE,OAAO,CAAC;IAEjB,MAAM,EAAE,cAAc,CAAC;IAEvB,QAAQ,EAAE,QAAQ,CAAC;IAEnB,MAAM,EAAE,cAAc,CAAC;IAEvB,UAAU,EAAE,iBAAiB,CAAC;IAE9B,UAAU,EAAE,iBAAiB,CAAC;IAE9B,aAAa,EAAE,aAAa,CAAC;gBAEjB,MAAM,EAAE,cAAc;IA2B5B,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE;QAAE,MAAM,EAAE,KAAK,EAAE,CAAA;KAAE;IAM1C,KAAK,CAAC,GAAG,EAAE,MAAM;IAQjB,aAAa;IAIb,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC;IACzC,WAAW,CAAC,SAAS,SAAS,QAAQ,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;IA4CrF,aAAa,IAAI,MAAM,GAAG,SAAS;IAInC,aAAa,IAAI,IAAI;IACrB,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,YAAY;IAOpD,mBAAmB,CAAC,GAAG,mBAAkB;IAKzC,YAAY,CAAC,GAAG,EAAE,MAAM;IAIlB,OAAO;CAId;AAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC5B,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5888,7 +5888,7 @@ const createStorage = (opts) => {
|
|
|
5888
5888
|
};
|
|
5889
5889
|
};
|
|
5890
5890
|
const wrapTransaction = (db) => (fn) => () => {
|
|
5891
|
-
return db.
|
|
5891
|
+
return db.transaction(({ trx }) => Promise.resolve(fn(trx, db)));
|
|
5892
5892
|
};
|
|
5893
5893
|
const migrationResolver = ({ name, path: path2, context }) => {
|
|
5894
5894
|
const { db } = context;
|
|
@@ -6018,15 +6018,13 @@ const migrateDocumentIdsWithLocalizations = async (db, knex2, meta) => {
|
|
|
6018
6018
|
} while (ids.length > 0);
|
|
6019
6019
|
};
|
|
6020
6020
|
const migrationDocumentIds = async (db, knex2, meta) => {
|
|
6021
|
-
let
|
|
6021
|
+
let updatedRows;
|
|
6022
6022
|
do {
|
|
6023
|
-
|
|
6024
|
-
|
|
6025
|
-
|
|
6026
|
-
|
|
6027
|
-
|
|
6028
|
-
}
|
|
6029
|
-
} while (run);
|
|
6023
|
+
updatedRows = await knex2(meta.tableName).update({ document_id: cuid2.createId() }).whereIn(
|
|
6024
|
+
"id",
|
|
6025
|
+
knex2(meta.tableName).select("id").from(knex2(meta.tableName).select("id").whereNull("document_id").limit(1).as("sub_query"))
|
|
6026
|
+
);
|
|
6027
|
+
} while (updatedRows > 0);
|
|
6030
6028
|
};
|
|
6031
6029
|
const createDocumentIdColumn = async (knex2, tableName) => {
|
|
6032
6030
|
await knex2.schema.alterTable(tableName, (table) => {
|
|
@@ -6214,11 +6212,12 @@ const internalMigrations = [
|
|
|
6214
6212
|
];
|
|
6215
6213
|
const createInternalMigrationProvider = (db) => {
|
|
6216
6214
|
const context = { db };
|
|
6215
|
+
const migrations = [...internalMigrations];
|
|
6217
6216
|
const umzugProvider = new umzug.Umzug({
|
|
6218
6217
|
storage: createStorage({ db, tableName: "strapi_migrations_internal" }),
|
|
6219
6218
|
logger: console,
|
|
6220
6219
|
context,
|
|
6221
|
-
migrations:
|
|
6220
|
+
migrations: () => migrations.map((migration) => {
|
|
6222
6221
|
return {
|
|
6223
6222
|
name: migration.name,
|
|
6224
6223
|
up: wrapTransaction(context.db)(migration.up),
|
|
@@ -6227,6 +6226,9 @@ const createInternalMigrationProvider = (db) => {
|
|
|
6227
6226
|
})
|
|
6228
6227
|
});
|
|
6229
6228
|
return {
|
|
6229
|
+
async register(migration) {
|
|
6230
|
+
migrations.push(migration);
|
|
6231
|
+
},
|
|
6230
6232
|
async shouldRun() {
|
|
6231
6233
|
const pendingMigrations = await umzugProvider.pending();
|
|
6232
6234
|
return pendingMigrations.length > 0;
|
|
@@ -6240,8 +6242,13 @@ const createInternalMigrationProvider = (db) => {
|
|
|
6240
6242
|
};
|
|
6241
6243
|
};
|
|
6242
6244
|
const createMigrationsProvider = (db) => {
|
|
6243
|
-
const
|
|
6245
|
+
const userProvider = createUserMigrationProvider(db);
|
|
6246
|
+
const internalProvider = createInternalMigrationProvider(db);
|
|
6247
|
+
const providers = [userProvider, internalProvider];
|
|
6244
6248
|
return {
|
|
6249
|
+
providers: {
|
|
6250
|
+
internal: internalProvider
|
|
6251
|
+
},
|
|
6245
6252
|
async shouldRun() {
|
|
6246
6253
|
const shouldRunResponses = await Promise.all(
|
|
6247
6254
|
providers.map((provider) => provider.shouldRun())
|