@payloadcms/db-mongodb 4.0.0-internal.2fddfc0 → 4.0.0-internal.31ba7ee
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/LICENSE.md +1 -1
- package/dist/connect.d.ts.map +1 -1
- package/dist/connect.js +8 -2
- package/dist/connect.js.map +1 -1
- package/dist/create.d.ts.map +1 -1
- package/dist/create.js +2 -1
- package/dist/create.js.map +1 -1
- package/dist/createGlobalVersion.js +1 -1
- package/dist/createGlobalVersion.js.map +1 -1
- package/dist/createMigration.d.ts.map +1 -1
- package/dist/createMigration.js +9 -2
- package/dist/createMigration.js.map +1 -1
- package/dist/createVersion.js +1 -1
- package/dist/createVersion.js.map +1 -1
- package/dist/find.js +1 -1
- package/dist/find.js.map +1 -1
- package/dist/findDistinct.d.ts.map +1 -1
- package/dist/findDistinct.js +52 -8
- package/dist/findDistinct.js.map +1 -1
- package/dist/findOne.js +1 -1
- package/dist/findOne.js.map +1 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +89 -67
- package/dist/init.js.map +1 -1
- package/dist/migrateFresh.d.ts +4 -2
- package/dist/migrateFresh.d.ts.map +1 -1
- package/dist/migrateFresh.js +21 -6
- package/dist/migrateFresh.js.map +1 -1
- package/dist/models/buildCollectionSchema.d.ts +8 -2
- package/dist/models/buildCollectionSchema.d.ts.map +1 -1
- package/dist/models/buildCollectionSchema.js +4 -2
- package/dist/models/buildCollectionSchema.js.map +1 -1
- package/dist/models/buildGlobalModel.d.ts +5 -1
- package/dist/models/buildGlobalModel.d.ts.map +1 -1
- package/dist/models/buildGlobalModel.js +4 -2
- package/dist/models/buildGlobalModel.js.map +1 -1
- package/dist/models/buildSchema.d.ts +4 -0
- package/dist/models/buildSchema.d.ts.map +1 -1
- package/dist/models/buildSchema.js +78 -26
- package/dist/models/buildSchema.js.map +1 -1
- package/dist/models/schemaBuildContext.d.ts +21 -0
- package/dist/models/schemaBuildContext.d.ts.map +1 -0
- package/dist/models/schemaBuildContext.js +29 -0
- package/dist/models/schemaBuildContext.js.map +1 -0
- package/dist/predefinedMigrations/migrateRelationshipsV2_V3.d.ts.map +1 -1
- package/dist/predefinedMigrations/migrateRelationshipsV2_V3.js +4 -4
- package/dist/predefinedMigrations/migrateRelationshipsV2_V3.js.map +1 -1
- package/dist/queries/buildQuery.d.ts.map +1 -1
- package/dist/queries/buildSearchParams.d.ts.map +1 -1
- package/dist/queries/buildSearchParams.js +189 -6
- package/dist/queries/buildSearchParams.js.map +1 -1
- package/dist/queries/buildSortParam.d.ts.map +1 -1
- package/dist/queries/getBuildQueryPlugin.d.ts.map +1 -1
- package/dist/queries/getLocalizedSortProperty.d.ts.map +1 -1
- package/dist/queries/operatorMap.d.ts.map +1 -1
- package/dist/queries/parseParams.js.map +1 -1
- package/dist/queries/sanitizeQueryValue.d.ts.map +1 -1
- package/dist/queryDrafts.js +1 -1
- package/dist/queryDrafts.js.map +1 -1
- package/dist/testCredentials.d.ts.map +1 -1
- package/dist/transactions/beginTransaction.d.ts.map +1 -1
- package/dist/transactions/beginTransaction.js +0 -1
- package/dist/transactions/beginTransaction.js.map +1 -1
- package/dist/updateGlobal.js +2 -2
- package/dist/updateGlobal.js.map +1 -1
- package/dist/updateGlobalVersion.js +2 -2
- package/dist/updateGlobalVersion.js.map +1 -1
- package/dist/updateJobs.d.ts.map +1 -1
- package/dist/updateJobs.js +71 -14
- package/dist/updateJobs.js.map +1 -1
- package/dist/updateMany.d.ts.map +1 -1
- package/dist/updateMany.js +0 -1
- package/dist/updateMany.js.map +1 -1
- package/dist/updateOne.js +2 -2
- package/dist/updateOne.js.map +1 -1
- package/dist/updateVersion.js +2 -2
- package/dist/updateVersion.js.map +1 -1
- package/dist/utilities/aggregatePaginate.d.ts.map +1 -1
- package/dist/utilities/buildJoinAggregation.d.ts +1 -1
- package/dist/utilities/buildJoinAggregation.d.ts.map +1 -1
- package/dist/utilities/buildJoinAggregation.js +2 -2
- package/dist/utilities/buildJoinAggregation.js.map +1 -1
- package/dist/utilities/buildProjectionFromSelect.d.ts.map +1 -1
- package/dist/utilities/getDBName.d.ts.map +1 -1
- package/dist/utilities/getEntity.d.ts +1 -1
- package/dist/utilities/getEntity.d.ts.map +1 -1
- package/dist/utilities/handleError.d.ts.map +1 -1
- package/dist/utilities/isObjectID.d.ts.map +1 -1
- package/dist/utilities/transform.d.ts.map +1 -1
- package/dist/utilities/transform.js +15 -0
- package/dist/utilities/transform.js.map +1 -1
- package/package.json +5 -5
- package/dist/queries/buildSortParam.spec.js +0 -123
- package/dist/queries/buildSortParam.spec.js.map +0 -1
- package/dist/queries/getLocalizedSortProperty.spec.js +0 -215
- package/dist/queries/getLocalizedSortProperty.spec.js.map +0 -1
- package/dist/utilities/transform.spec.js +0 -479
- package/dist/utilities/transform.spec.js.map +0 -1
package/dist/init.js
CHANGED
|
@@ -4,6 +4,7 @@ import { buildVersionCollectionFields, buildVersionCompoundIndexes, buildVersion
|
|
|
4
4
|
import { buildCollectionSchema } from './models/buildCollectionSchema.js';
|
|
5
5
|
import { buildGlobalModel } from './models/buildGlobalModel.js';
|
|
6
6
|
import { buildSchema } from './models/buildSchema.js';
|
|
7
|
+
import { createMongoSchemaBuildContext } from './models/schemaBuildContext.js';
|
|
7
8
|
import { getBuildQueryPlugin } from './queries/getBuildQueryPlugin.js';
|
|
8
9
|
import { getDBName } from './utilities/getDBName.js';
|
|
9
10
|
export const init = async function init() {
|
|
@@ -13,76 +14,97 @@ export const init = async function init() {
|
|
|
13
14
|
if (this.afterCreateConnection) {
|
|
14
15
|
await this.afterCreateConnection(this);
|
|
15
16
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const schema = buildCollectionSchema(collection, this.payload, schemaOptions);
|
|
19
|
-
if (collection.versions) {
|
|
20
|
-
const versionModelName = getDBName({
|
|
21
|
-
config: collection,
|
|
22
|
-
versions: true
|
|
23
|
-
});
|
|
24
|
-
const versionCollectionFields = buildVersionCollectionFields(this.payload.config, collection);
|
|
25
|
-
const versionSchema = buildSchema({
|
|
26
|
-
buildSchemaOptions: {
|
|
27
|
-
disableUnique: true,
|
|
28
|
-
draftsEnabled: true,
|
|
29
|
-
indexSortableFields: this.payload.config.indexSortableFields,
|
|
30
|
-
options: {
|
|
31
|
-
minimize: false,
|
|
32
|
-
timestamps: false,
|
|
33
|
-
...schemaOptions
|
|
34
|
-
}
|
|
35
|
-
},
|
|
36
|
-
compoundIndexes: buildVersionCompoundIndexes({
|
|
37
|
-
indexes: collection.sanitizedIndexes
|
|
38
|
-
}),
|
|
39
|
-
configFields: versionCollectionFields,
|
|
40
|
-
payload: this.payload
|
|
41
|
-
});
|
|
42
|
-
versionSchema.plugin(paginate, {
|
|
43
|
-
useEstimatedCount: true
|
|
44
|
-
}).plugin(getBuildQueryPlugin({
|
|
45
|
-
collectionSlug: collection.slug,
|
|
46
|
-
versionsFields: buildVersionCollectionFields(this.payload.config, collection, true)
|
|
47
|
-
}));
|
|
48
|
-
const versionCollectionName = this.autoPluralization === true && !collection.dbName ? undefined : versionModelName;
|
|
49
|
-
this.versions[collection.slug] = this.connection.model(versionModelName, versionSchema, versionCollectionName);
|
|
50
|
-
}
|
|
51
|
-
const modelName = getDBName({
|
|
52
|
-
config: collection
|
|
53
|
-
});
|
|
54
|
-
const collectionName = this.autoPluralization === true && !collection.dbName ? undefined : modelName;
|
|
55
|
-
this.collections[collection.slug] = this.connection.model(modelName, schema, collectionName);
|
|
17
|
+
const schemaBuildContext = createMongoSchemaBuildContext({
|
|
18
|
+
connection: this.connection
|
|
56
19
|
});
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
20
|
+
try {
|
|
21
|
+
this.payload.config.collections.forEach((collection)=>{
|
|
22
|
+
const schemaOptions = this.collectionsSchemaOptions?.[collection.slug];
|
|
23
|
+
const schema = buildCollectionSchema({
|
|
24
|
+
collection,
|
|
25
|
+
payload: this.payload,
|
|
26
|
+
schemaBuildContext,
|
|
27
|
+
schemaOptions
|
|
63
28
|
});
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
29
|
+
if (collection.versions) {
|
|
30
|
+
const versionModelName = getDBName({
|
|
31
|
+
config: collection,
|
|
32
|
+
versions: true
|
|
33
|
+
});
|
|
34
|
+
const versionCollectionFields = buildVersionCollectionFields(this.payload.config, collection);
|
|
35
|
+
const versionSchema = buildSchema({
|
|
36
|
+
buildSchemaOptions: {
|
|
37
|
+
disableUnique: true,
|
|
38
|
+
draftsEnabled: true,
|
|
39
|
+
indexSortableFields: this.payload.config.indexSortableFields,
|
|
40
|
+
options: {
|
|
41
|
+
minimize: false,
|
|
42
|
+
timestamps: false,
|
|
43
|
+
...schemaOptions
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
compoundIndexes: buildVersionCompoundIndexes({
|
|
47
|
+
indexes: collection.sanitizedIndexes
|
|
48
|
+
}),
|
|
49
|
+
configFields: versionCollectionFields,
|
|
50
|
+
isVersion: true,
|
|
51
|
+
payload: this.payload,
|
|
52
|
+
schemaBuildContext,
|
|
53
|
+
schemaPath: `collection:${collection.slug}`
|
|
54
|
+
});
|
|
55
|
+
versionSchema.plugin(paginate, {
|
|
56
|
+
useEstimatedCount: true
|
|
57
|
+
}).plugin(getBuildQueryPlugin({
|
|
58
|
+
collectionSlug: collection.slug,
|
|
59
|
+
versionsFields: buildVersionCollectionFields(this.payload.config, collection, true)
|
|
60
|
+
}));
|
|
61
|
+
const versionCollectionName = this.autoPluralization === true && !collection.dbName ? undefined : versionModelName;
|
|
62
|
+
this.versions[collection.slug] = this.connection.model(versionModelName, versionSchema, versionCollectionName);
|
|
63
|
+
}
|
|
64
|
+
const modelName = getDBName({
|
|
65
|
+
config: collection
|
|
77
66
|
});
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
85
|
-
|
|
67
|
+
const collectionName = this.autoPluralization === true && !collection.dbName ? undefined : modelName;
|
|
68
|
+
this.collections[collection.slug] = this.connection.model(modelName, schema, collectionName);
|
|
69
|
+
});
|
|
70
|
+
this.globals = buildGlobalModel({
|
|
71
|
+
adapter: this,
|
|
72
|
+
schemaBuildContext
|
|
73
|
+
});
|
|
74
|
+
this.payload.config.globals.forEach((global)=>{
|
|
75
|
+
if (global.versions) {
|
|
76
|
+
const versionModelName = getDBName({
|
|
77
|
+
config: global,
|
|
78
|
+
versions: true
|
|
79
|
+
});
|
|
80
|
+
const versionGlobalFields = buildVersionGlobalFields(this.payload.config, global);
|
|
81
|
+
const versionSchema = buildSchema({
|
|
82
|
+
buildSchemaOptions: {
|
|
83
|
+
disableUnique: true,
|
|
84
|
+
draftsEnabled: true,
|
|
85
|
+
indexSortableFields: this.payload.config.indexSortableFields,
|
|
86
|
+
options: {
|
|
87
|
+
minimize: false,
|
|
88
|
+
timestamps: false
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
configFields: versionGlobalFields,
|
|
92
|
+
isVersion: true,
|
|
93
|
+
payload: this.payload,
|
|
94
|
+
schemaBuildContext,
|
|
95
|
+
schemaPath: `global:${global.slug}`
|
|
96
|
+
});
|
|
97
|
+
versionSchema.plugin(paginate, {
|
|
98
|
+
useEstimatedCount: true
|
|
99
|
+
}).plugin(getBuildQueryPlugin({
|
|
100
|
+
versionsFields: buildVersionGlobalFields(this.payload.config, global, true)
|
|
101
|
+
}));
|
|
102
|
+
this.versions[global.slug] = this.connection.model(versionModelName, versionSchema, versionModelName);
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
} finally{
|
|
106
|
+
schemaBuildContext.clear();
|
|
107
|
+
}
|
|
86
108
|
};
|
|
87
109
|
|
|
88
110
|
//# sourceMappingURL=init.js.map
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/init.ts"],"sourcesContent":["import type { PaginateOptions } from 'mongoose'\nimport type { Init, SanitizedCollectionConfig } from 'payload'\n\nimport mongoose from 'mongoose'\nimport paginate from 'mongoose-paginate-v2'\nimport {\n buildVersionCollectionFields,\n buildVersionCompoundIndexes,\n buildVersionGlobalFields,\n} from 'payload'\n\nimport type { MongooseAdapter } from './index.js'\nimport type { CollectionModel, GlobalModel } from './types.js'\n\nimport { buildCollectionSchema } from './models/buildCollectionSchema.js'\nimport { buildGlobalModel } from './models/buildGlobalModel.js'\nimport { buildSchema } from './models/buildSchema.js'\nimport { getBuildQueryPlugin } from './queries/getBuildQueryPlugin.js'\nimport { getDBName } from './utilities/getDBName.js'\n\nexport const init: Init = async function init(this: MongooseAdapter) {\n // Always create a scoped, **unopened** connection object\n // (no URI here; models compile per-connection and do not require an open socket)\n this.connection ??= mongoose.createConnection()\n\n if (this.afterCreateConnection) {\n await this.afterCreateConnection(this)\n }\n\n this.payload.config.collections.forEach((collection: SanitizedCollectionConfig) => {\n
|
|
1
|
+
{"version":3,"sources":["../src/init.ts"],"sourcesContent":["import type { PaginateOptions } from 'mongoose'\nimport type { Init, SanitizedCollectionConfig } from 'payload'\n\nimport mongoose from 'mongoose'\nimport paginate from 'mongoose-paginate-v2'\nimport {\n buildVersionCollectionFields,\n buildVersionCompoundIndexes,\n buildVersionGlobalFields,\n} from 'payload'\n\nimport type { MongooseAdapter } from './index.js'\nimport type { CollectionModel, GlobalModel } from './types.js'\n\nimport { buildCollectionSchema } from './models/buildCollectionSchema.js'\nimport { buildGlobalModel } from './models/buildGlobalModel.js'\nimport { buildSchema } from './models/buildSchema.js'\nimport { createMongoSchemaBuildContext } from './models/schemaBuildContext.js'\nimport { getBuildQueryPlugin } from './queries/getBuildQueryPlugin.js'\nimport { getDBName } from './utilities/getDBName.js'\n\nexport const init: Init = async function init(this: MongooseAdapter) {\n // Always create a scoped, **unopened** connection object\n // (no URI here; models compile per-connection and do not require an open socket)\n this.connection ??= mongoose.createConnection()\n\n if (this.afterCreateConnection) {\n await this.afterCreateConnection(this)\n }\n\n const schemaBuildContext = createMongoSchemaBuildContext({ connection: this.connection })\n\n try {\n this.payload.config.collections.forEach((collection: SanitizedCollectionConfig) => {\n const schemaOptions = this.collectionsSchemaOptions?.[collection.slug]\n\n const schema = buildCollectionSchema({\n collection,\n payload: this.payload,\n schemaBuildContext,\n schemaOptions,\n })\n if (collection.versions) {\n const versionModelName = getDBName({ config: collection, versions: true })\n\n const versionCollectionFields = buildVersionCollectionFields(\n this.payload.config,\n collection,\n )\n\n const versionSchema = buildSchema({\n buildSchemaOptions: {\n disableUnique: true,\n draftsEnabled: true,\n indexSortableFields: this.payload.config.indexSortableFields,\n options: {\n minimize: false,\n timestamps: false,\n ...schemaOptions,\n },\n },\n compoundIndexes: buildVersionCompoundIndexes({ indexes: collection.sanitizedIndexes }),\n configFields: versionCollectionFields,\n isVersion: true,\n payload: this.payload,\n schemaBuildContext,\n schemaPath: `collection:${collection.slug}`,\n })\n\n versionSchema.plugin<any, PaginateOptions>(paginate, { useEstimatedCount: true }).plugin(\n getBuildQueryPlugin({\n collectionSlug: collection.slug,\n versionsFields: buildVersionCollectionFields(this.payload.config, collection, true),\n }),\n )\n\n const versionCollectionName =\n this.autoPluralization === true && !collection.dbName ? undefined : versionModelName\n\n this.versions[collection.slug] = this.connection.model(\n versionModelName,\n versionSchema,\n versionCollectionName,\n ) as unknown as CollectionModel\n }\n\n const modelName = getDBName({ config: collection })\n const collectionName =\n this.autoPluralization === true && !collection.dbName ? undefined : modelName\n\n this.collections[collection.slug] = this.connection.model<any>(\n modelName,\n schema,\n collectionName,\n ) as CollectionModel\n })\n\n this.globals = buildGlobalModel({ adapter: this, schemaBuildContext }) as GlobalModel\n\n this.payload.config.globals.forEach((global) => {\n if (global.versions) {\n const versionModelName = getDBName({ config: global, versions: true })\n\n const versionGlobalFields = buildVersionGlobalFields(this.payload.config, global)\n\n const versionSchema = buildSchema({\n buildSchemaOptions: {\n disableUnique: true,\n draftsEnabled: true,\n indexSortableFields: this.payload.config.indexSortableFields,\n options: {\n minimize: false,\n timestamps: false,\n },\n },\n configFields: versionGlobalFields,\n isVersion: true,\n payload: this.payload,\n schemaBuildContext,\n schemaPath: `global:${global.slug}`,\n })\n\n versionSchema.plugin<any, PaginateOptions>(paginate, { useEstimatedCount: true }).plugin(\n getBuildQueryPlugin({\n versionsFields: buildVersionGlobalFields(this.payload.config, global, true),\n }),\n )\n\n this.versions[global.slug] = this.connection.model<any>(\n versionModelName,\n versionSchema,\n versionModelName,\n ) as CollectionModel\n }\n })\n } finally {\n schemaBuildContext.clear()\n }\n}\n"],"names":["mongoose","paginate","buildVersionCollectionFields","buildVersionCompoundIndexes","buildVersionGlobalFields","buildCollectionSchema","buildGlobalModel","buildSchema","createMongoSchemaBuildContext","getBuildQueryPlugin","getDBName","init","connection","createConnection","afterCreateConnection","schemaBuildContext","payload","config","collections","forEach","collection","schemaOptions","collectionsSchemaOptions","slug","schema","versions","versionModelName","versionCollectionFields","versionSchema","buildSchemaOptions","disableUnique","draftsEnabled","indexSortableFields","options","minimize","timestamps","compoundIndexes","indexes","sanitizedIndexes","configFields","isVersion","schemaPath","plugin","useEstimatedCount","collectionSlug","versionsFields","versionCollectionName","autoPluralization","dbName","undefined","model","modelName","collectionName","globals","adapter","global","versionGlobalFields","clear"],"mappings":"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"}
|
package/dist/migrateFresh.d.ts
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import type { MigrationResult } from 'payload';
|
|
1
2
|
import type { MongooseAdapter } from './index.js';
|
|
2
3
|
/**
|
|
3
4
|
* Drop the current database and run all migrate up functions
|
|
4
5
|
*/
|
|
5
|
-
export declare function migrateFresh(this: MongooseAdapter, { forceAcceptWarning }: {
|
|
6
|
+
export declare function migrateFresh(this: MongooseAdapter, { forceAcceptWarning, shouldPrompt, }: {
|
|
6
7
|
forceAcceptWarning?: boolean;
|
|
7
|
-
|
|
8
|
+
shouldPrompt?: boolean;
|
|
9
|
+
}): Promise<MigrationResult>;
|
|
8
10
|
//# sourceMappingURL=migrateFresh.d.ts.map
|
|
@@ -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":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAK9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAEjD;;GAEG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,eAAe,EACrB,EACE,kBAA0B,EAC1B,YAAmB,GACpB,EAAE;IAAE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1D,OAAO,CAAC,eAAe,CAAC,CAkE1B"}
|
package/dist/migrateFresh.js
CHANGED
|
@@ -2,21 +2,28 @@ import { commitTransaction, initTransaction, killTransaction, readMigrationFiles
|
|
|
2
2
|
import prompts from 'prompts';
|
|
3
3
|
/**
|
|
4
4
|
* Drop the current database and run all migrate up functions
|
|
5
|
-
*/ export async function migrateFresh({ forceAcceptWarning = false }) {
|
|
5
|
+
*/ export async function migrateFresh({ forceAcceptWarning = false, shouldPrompt = true }) {
|
|
6
6
|
const { payload } = this;
|
|
7
7
|
if (!forceAcceptWarning) {
|
|
8
|
+
if (!shouldPrompt) {
|
|
9
|
+
return {
|
|
10
|
+
cancelled: true,
|
|
11
|
+
migrated: [],
|
|
12
|
+
rolledBack: []
|
|
13
|
+
};
|
|
14
|
+
}
|
|
8
15
|
const { confirm: acceptWarning } = await prompts({
|
|
9
16
|
name: 'confirm',
|
|
10
17
|
type: 'confirm',
|
|
11
18
|
initial: false,
|
|
12
19
|
message: `WARNING: This will drop your database and run all migrations. Are you sure you want to proceed?`
|
|
13
|
-
}, {
|
|
14
|
-
onCancel: ()=>{
|
|
15
|
-
process.exit(0);
|
|
16
|
-
}
|
|
17
20
|
});
|
|
18
21
|
if (!acceptWarning) {
|
|
19
|
-
|
|
22
|
+
return {
|
|
23
|
+
cancelled: true,
|
|
24
|
+
migrated: [],
|
|
25
|
+
rolledBack: []
|
|
26
|
+
};
|
|
20
27
|
}
|
|
21
28
|
}
|
|
22
29
|
payload.logger.info({
|
|
@@ -32,6 +39,7 @@ import prompts from 'prompts';
|
|
|
32
39
|
const req = {
|
|
33
40
|
payload
|
|
34
41
|
};
|
|
42
|
+
const migrated = [];
|
|
35
43
|
// Run all migrate up
|
|
36
44
|
for (const migration of migrationFiles){
|
|
37
45
|
payload.logger.info({
|
|
@@ -50,9 +58,11 @@ import prompts from 'prompts';
|
|
|
50
58
|
name: migration.name,
|
|
51
59
|
batch: 1
|
|
52
60
|
},
|
|
61
|
+
overrideAccess: true,
|
|
53
62
|
req
|
|
54
63
|
});
|
|
55
64
|
await commitTransaction(req);
|
|
65
|
+
migrated.push(migration.name);
|
|
56
66
|
payload.logger.info({
|
|
57
67
|
msg: `Migrated: ${migration.name} (${Date.now() - start}ms)`
|
|
58
68
|
});
|
|
@@ -65,6 +75,11 @@ import prompts from 'prompts';
|
|
|
65
75
|
throw err;
|
|
66
76
|
}
|
|
67
77
|
}
|
|
78
|
+
return {
|
|
79
|
+
batch: 1,
|
|
80
|
+
migrated,
|
|
81
|
+
rolledBack: []
|
|
82
|
+
};
|
|
68
83
|
}
|
|
69
84
|
|
|
70
85
|
//# sourceMappingURL=migrateFresh.js.map
|
package/dist/migrateFresh.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/migrateFresh.ts"],"sourcesContent":["import { commitTransaction, initTransaction, killTransaction, readMigrationFiles } from 'payload'\nimport prompts from 'prompts'\n\nimport type { MongooseAdapter } from './index.js'\n\n/**\n * Drop the current database and run all migrate up functions\n */\nexport async function migrateFresh(\n this: MongooseAdapter,\n {
|
|
1
|
+
{"version":3,"sources":["../src/migrateFresh.ts"],"sourcesContent":["import type { MigrationResult } from 'payload'\n\nimport { commitTransaction, initTransaction, killTransaction, readMigrationFiles } from 'payload'\nimport prompts from 'prompts'\n\nimport type { MongooseAdapter } from './index.js'\n\n/**\n * Drop the current database and run all migrate up functions\n */\nexport async function migrateFresh(\n this: MongooseAdapter,\n {\n forceAcceptWarning = false,\n shouldPrompt = true,\n }: { forceAcceptWarning?: boolean; shouldPrompt?: boolean },\n): Promise<MigrationResult> {\n const { payload } = this\n\n if (!forceAcceptWarning) {\n if (!shouldPrompt) {\n return { cancelled: true, migrated: [], rolledBack: [] }\n }\n\n const { confirm: acceptWarning } = await prompts({\n name: 'confirm',\n type: 'confirm',\n initial: false,\n message: `WARNING: This will drop your database and run all migrations. Are you sure you want to proceed?`,\n })\n\n if (!acceptWarning) {\n return { cancelled: true, migrated: [], rolledBack: [] }\n }\n }\n\n payload.logger.info({\n msg: `Dropping database.`,\n })\n\n await this.connection.dropDatabase()\n\n const migrationFiles = await readMigrationFiles({ payload })\n payload.logger.debug({\n msg: `Found ${migrationFiles.length} migration files.`,\n })\n\n const req = { payload }\n const migrated: string[] = []\n\n // Run all migrate up\n for (const migration of migrationFiles) {\n payload.logger.info({ msg: `Migrating: ${migration.name}` })\n try {\n const start = Date.now()\n await initTransaction(req)\n await migration.up({ payload, req })\n await payload.create({\n collection: 'payload-migrations',\n data: {\n name: migration.name,\n batch: 1,\n },\n overrideAccess: true,\n req,\n })\n\n await commitTransaction(req)\n migrated.push(migration.name)\n\n payload.logger.info({ msg: `Migrated: ${migration.name} (${Date.now() - start}ms)` })\n } catch (err: unknown) {\n await killTransaction(req)\n payload.logger.error({\n err,\n msg: `Error running migration ${migration.name}. Rolling back.`,\n })\n throw err\n }\n }\n\n return { batch: 1, migrated, rolledBack: [] }\n}\n"],"names":["commitTransaction","initTransaction","killTransaction","readMigrationFiles","prompts","migrateFresh","forceAcceptWarning","shouldPrompt","payload","cancelled","migrated","rolledBack","confirm","acceptWarning","name","type","initial","message","logger","info","msg","connection","dropDatabase","migrationFiles","debug","length","req","migration","start","Date","now","up","create","collection","data","batch","overrideAccess","push","err","error"],"mappings":"AAEA,SAASA,iBAAiB,EAAEC,eAAe,EAAEC,eAAe,EAAEC,kBAAkB,QAAQ,UAAS;AACjG,OAAOC,aAAa,UAAS;AAI7B;;CAEC,GACD,OAAO,eAAeC,aAEpB,EACEC,qBAAqB,KAAK,EAC1BC,eAAe,IAAI,EACsC;IAE3D,MAAM,EAAEC,OAAO,EAAE,GAAG,IAAI;IAExB,IAAI,CAACF,oBAAoB;QACvB,IAAI,CAACC,cAAc;YACjB,OAAO;gBAAEE,WAAW;gBAAMC,UAAU,EAAE;gBAAEC,YAAY,EAAE;YAAC;QACzD;QAEA,MAAM,EAAEC,SAASC,aAAa,EAAE,GAAG,MAAMT,QAAQ;YAC/CU,MAAM;YACNC,MAAM;YACNC,SAAS;YACTC,SAAS,CAAC,+FAA+F,CAAC;QAC5G;QAEA,IAAI,CAACJ,eAAe;YAClB,OAAO;gBAAEJ,WAAW;gBAAMC,UAAU,EAAE;gBAAEC,YAAY,EAAE;YAAC;QACzD;IACF;IAEAH,QAAQU,MAAM,CAACC,IAAI,CAAC;QAClBC,KAAK,CAAC,kBAAkB,CAAC;IAC3B;IAEA,MAAM,IAAI,CAACC,UAAU,CAACC,YAAY;IAElC,MAAMC,iBAAiB,MAAMpB,mBAAmB;QAAEK;IAAQ;IAC1DA,QAAQU,MAAM,CAACM,KAAK,CAAC;QACnBJ,KAAK,CAAC,MAAM,EAAEG,eAAeE,MAAM,CAAC,iBAAiB,CAAC;IACxD;IAEA,MAAMC,MAAM;QAAElB;IAAQ;IACtB,MAAME,WAAqB,EAAE;IAE7B,qBAAqB;IACrB,KAAK,MAAMiB,aAAaJ,eAAgB;QACtCf,QAAQU,MAAM,CAACC,IAAI,CAAC;YAAEC,KAAK,CAAC,WAAW,EAAEO,UAAUb,IAAI,EAAE;QAAC;QAC1D,IAAI;YACF,MAAMc,QAAQC,KAAKC,GAAG;YACtB,MAAM7B,gBAAgByB;YACtB,MAAMC,UAAUI,EAAE,CAAC;gBAAEvB;gBAASkB;YAAI;YAClC,MAAMlB,QAAQwB,MAAM,CAAC;gBACnBC,YAAY;gBACZC,MAAM;oBACJpB,MAAMa,UAAUb,IAAI;oBACpBqB,OAAO;gBACT;gBACAC,gBAAgB;gBAChBV;YACF;YAEA,MAAM1B,kBAAkB0B;YACxBhB,SAAS2B,IAAI,CAACV,UAAUb,IAAI;YAE5BN,QAAQU,MAAM,CAACC,IAAI,CAAC;gBAAEC,KAAK,CAAC,WAAW,EAAEO,UAAUb,IAAI,CAAC,EAAE,EAAEe,KAAKC,GAAG,KAAKF,MAAM,GAAG,CAAC;YAAC;QACtF,EAAE,OAAOU,KAAc;YACrB,MAAMpC,gBAAgBwB;YACtBlB,QAAQU,MAAM,CAACqB,KAAK,CAAC;gBACnBD;gBACAlB,KAAK,CAAC,wBAAwB,EAAEO,UAAUb,IAAI,CAAC,eAAe,CAAC;YACjE;YACA,MAAMwB;QACR;IACF;IAEA,OAAO;QAAEH,OAAO;QAAGzB;QAAUC,YAAY,EAAE;IAAC;AAC9C"}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
import type { Schema } from 'mongoose';
|
|
1
|
+
import type { Schema, SchemaOptions } from 'mongoose';
|
|
2
2
|
import type { Payload, SanitizedCollectionConfig } from 'payload';
|
|
3
|
-
|
|
3
|
+
import type { MongoSchemaBuildContext } from './schemaBuildContext.js';
|
|
4
|
+
export declare const buildCollectionSchema: ({ collection, payload, schemaBuildContext, schemaOptions, }: {
|
|
5
|
+
collection: SanitizedCollectionConfig;
|
|
6
|
+
payload: Payload;
|
|
7
|
+
schemaBuildContext: MongoSchemaBuildContext;
|
|
8
|
+
schemaOptions?: SchemaOptions;
|
|
9
|
+
}) => Schema;
|
|
4
10
|
//# sourceMappingURL=buildCollectionSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildCollectionSchema.d.ts","sourceRoot":"","sources":["../../src/models/buildCollectionSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,MAAM,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"buildCollectionSchema.d.ts","sourceRoot":"","sources":["../../src/models/buildCollectionSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,MAAM,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAIjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAKtE,eAAO,MAAM,qBAAqB,gEAK/B;IACD,UAAU,EAAE,yBAAyB,CAAA;IACrC,OAAO,EAAE,OAAO,CAAA;IAChB,kBAAkB,EAAE,uBAAuB,CAAA;IAC3C,aAAa,CAAC,EAAE,aAAa,CAAA;CAC9B,KAAG,MAsCH,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import paginate from 'mongoose-paginate-v2';
|
|
2
2
|
import { getBuildQueryPlugin } from '../queries/getBuildQueryPlugin.js';
|
|
3
3
|
import { buildSchema } from './buildSchema.js';
|
|
4
|
-
export const buildCollectionSchema = (collection, payload, schemaOptions = {})=>{
|
|
4
|
+
export const buildCollectionSchema = ({ collection, payload, schemaBuildContext, schemaOptions = {} })=>{
|
|
5
5
|
const schema = buildSchema({
|
|
6
6
|
buildSchemaOptions: {
|
|
7
7
|
draftsEnabled: Boolean(typeof collection?.versions === 'object' && collection.versions.drafts),
|
|
@@ -15,7 +15,9 @@ export const buildCollectionSchema = (collection, payload, schemaOptions = {})=>
|
|
|
15
15
|
compoundIndexes: collection.sanitizedIndexes,
|
|
16
16
|
configFields: collection.fields,
|
|
17
17
|
flattenedFields: collection.flattenedFields,
|
|
18
|
-
payload
|
|
18
|
+
payload,
|
|
19
|
+
schemaBuildContext,
|
|
20
|
+
schemaPath: `collection:${collection.slug}`
|
|
19
21
|
});
|
|
20
22
|
if (Array.isArray(collection.upload.filenameCompoundIndex)) {
|
|
21
23
|
const indexDefinition = collection.upload.filenameCompoundIndex.reduce((acc, index)=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/models/buildCollectionSchema.ts"],"sourcesContent":["import type { PaginateOptions, Schema } from 'mongoose'\nimport type { Payload, SanitizedCollectionConfig } from 'payload'\n\nimport paginate from 'mongoose-paginate-v2'\n\nimport { getBuildQueryPlugin } from '../queries/getBuildQueryPlugin.js'\nimport { buildSchema } from './buildSchema.js'\n\nexport const buildCollectionSchema = (\n collection
|
|
1
|
+
{"version":3,"sources":["../../src/models/buildCollectionSchema.ts"],"sourcesContent":["import type { PaginateOptions, Schema, SchemaOptions } from 'mongoose'\nimport type { Payload, SanitizedCollectionConfig } from 'payload'\n\nimport paginate from 'mongoose-paginate-v2'\n\nimport type { MongoSchemaBuildContext } from './schemaBuildContext.js'\n\nimport { getBuildQueryPlugin } from '../queries/getBuildQueryPlugin.js'\nimport { buildSchema } from './buildSchema.js'\n\nexport const buildCollectionSchema = ({\n collection,\n payload,\n schemaBuildContext,\n schemaOptions = {},\n}: {\n collection: SanitizedCollectionConfig\n payload: Payload\n schemaBuildContext: MongoSchemaBuildContext\n schemaOptions?: SchemaOptions\n}): Schema => {\n const schema = buildSchema({\n buildSchemaOptions: {\n draftsEnabled: Boolean(\n typeof collection?.versions === 'object' && collection.versions.drafts,\n ),\n indexSortableFields: payload.config.indexSortableFields,\n options: {\n minimize: false,\n timestamps: collection.timestamps !== false,\n ...schemaOptions,\n },\n },\n compoundIndexes: collection.sanitizedIndexes,\n configFields: collection.fields,\n flattenedFields: collection.flattenedFields,\n payload,\n schemaBuildContext,\n schemaPath: `collection:${collection.slug}`,\n })\n\n if (Array.isArray(collection.upload.filenameCompoundIndex)) {\n const indexDefinition = collection.upload.filenameCompoundIndex.reduce<Record<string, 1>>(\n (acc, index) => {\n acc[index] = 1\n return acc\n },\n {},\n )\n\n schema.index(indexDefinition, { unique: true })\n }\n\n schema\n .plugin<any, PaginateOptions>(paginate, { useEstimatedCount: true })\n .plugin(getBuildQueryPlugin({ collectionSlug: collection.slug }))\n\n return schema\n}\n"],"names":["paginate","getBuildQueryPlugin","buildSchema","buildCollectionSchema","collection","payload","schemaBuildContext","schemaOptions","schema","buildSchemaOptions","draftsEnabled","Boolean","versions","drafts","indexSortableFields","config","options","minimize","timestamps","compoundIndexes","sanitizedIndexes","configFields","fields","flattenedFields","schemaPath","slug","Array","isArray","upload","filenameCompoundIndex","indexDefinition","reduce","acc","index","unique","plugin","useEstimatedCount","collectionSlug"],"mappings":"AAGA,OAAOA,cAAc,uBAAsB;AAI3C,SAASC,mBAAmB,QAAQ,oCAAmC;AACvE,SAASC,WAAW,QAAQ,mBAAkB;AAE9C,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,UAAU,EACVC,OAAO,EACPC,kBAAkB,EAClBC,gBAAgB,CAAC,CAAC,EAMnB;IACC,MAAMC,SAASN,YAAY;QACzBO,oBAAoB;YAClBC,eAAeC,QACb,OAAOP,YAAYQ,aAAa,YAAYR,WAAWQ,QAAQ,CAACC,MAAM;YAExEC,qBAAqBT,QAAQU,MAAM,CAACD,mBAAmB;YACvDE,SAAS;gBACPC,UAAU;gBACVC,YAAYd,WAAWc,UAAU,KAAK;gBACtC,GAAGX,aAAa;YAClB;QACF;QACAY,iBAAiBf,WAAWgB,gBAAgB;QAC5CC,cAAcjB,WAAWkB,MAAM;QAC/BC,iBAAiBnB,WAAWmB,eAAe;QAC3ClB;QACAC;QACAkB,YAAY,CAAC,WAAW,EAAEpB,WAAWqB,IAAI,EAAE;IAC7C;IAEA,IAAIC,MAAMC,OAAO,CAACvB,WAAWwB,MAAM,CAACC,qBAAqB,GAAG;QAC1D,MAAMC,kBAAkB1B,WAAWwB,MAAM,CAACC,qBAAqB,CAACE,MAAM,CACpE,CAACC,KAAKC;YACJD,GAAG,CAACC,MAAM,GAAG;YACb,OAAOD;QACT,GACA,CAAC;QAGHxB,OAAOyB,KAAK,CAACH,iBAAiB;YAAEI,QAAQ;QAAK;IAC/C;IAEA1B,OACG2B,MAAM,CAAuBnC,UAAU;QAAEoC,mBAAmB;IAAK,GACjED,MAAM,CAAClC,oBAAoB;QAAEoC,gBAAgBjC,WAAWqB,IAAI;IAAC;IAEhE,OAAOjB;AACT,EAAC"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import type { MongooseAdapter } from '../index.js';
|
|
2
2
|
import type { GlobalModel } from '../types.js';
|
|
3
|
-
|
|
3
|
+
import type { MongoSchemaBuildContext } from './schemaBuildContext.js';
|
|
4
|
+
export declare const buildGlobalModel: ({ adapter, schemaBuildContext, }: {
|
|
5
|
+
adapter: MongooseAdapter;
|
|
6
|
+
schemaBuildContext: MongoSchemaBuildContext;
|
|
7
|
+
}) => GlobalModel | null;
|
|
4
8
|
//# sourceMappingURL=buildGlobalModel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildGlobalModel.d.ts","sourceRoot":"","sources":["../../src/models/buildGlobalModel.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"buildGlobalModel.d.ts","sourceRoot":"","sources":["../../src/models/buildGlobalModel.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAKtE,eAAO,MAAM,gBAAgB,qCAG1B;IACD,OAAO,EAAE,eAAe,CAAA;IACxB,kBAAkB,EAAE,uBAAuB,CAAA;CAC5C,KAAG,WAAW,GAAG,IAkCjB,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import mongoose from 'mongoose';
|
|
2
2
|
import { getBuildQueryPlugin } from '../queries/getBuildQueryPlugin.js';
|
|
3
3
|
import { buildSchema } from './buildSchema.js';
|
|
4
|
-
export const buildGlobalModel = (adapter)=>{
|
|
4
|
+
export const buildGlobalModel = ({ adapter, schemaBuildContext })=>{
|
|
5
5
|
if (adapter.payload.config.globals && adapter.payload.config.globals.length > 0) {
|
|
6
6
|
const globalsSchema = new mongoose.Schema({}, {
|
|
7
7
|
discriminatorKey: 'globalType',
|
|
@@ -18,7 +18,9 @@ export const buildGlobalModel = (adapter)=>{
|
|
|
18
18
|
}
|
|
19
19
|
},
|
|
20
20
|
configFields: globalConfig.fields,
|
|
21
|
-
payload: adapter.payload
|
|
21
|
+
payload: adapter.payload,
|
|
22
|
+
schemaBuildContext,
|
|
23
|
+
schemaPath: `global:${globalConfig.slug}`
|
|
22
24
|
});
|
|
23
25
|
Globals.discriminator(globalConfig.slug, globalSchema);
|
|
24
26
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/models/buildGlobalModel.ts"],"sourcesContent":["import mongoose from 'mongoose'\n\nimport type { MongooseAdapter } from '../index.js'\nimport type { GlobalModel } from '../types.js'\n\nimport { getBuildQueryPlugin } from '../queries/getBuildQueryPlugin.js'\nimport { buildSchema } from './buildSchema.js'\n\nexport const buildGlobalModel = (adapter: MongooseAdapter): GlobalModel | null => {\n if (adapter.payload.config.globals && adapter.payload.config.globals.length > 0) {\n const globalsSchema = new mongoose.Schema(\n {},\n { discriminatorKey: 'globalType', minimize: false, timestamps: true },\n )\n\n globalsSchema.plugin(getBuildQueryPlugin())\n\n const Globals = adapter.connection.model(\n 'globals',\n globalsSchema,\n 'globals',\n ) as unknown as GlobalModel\n\n Object.values(adapter.payload.config.globals).forEach((globalConfig) => {\n const globalSchema = buildSchema({\n buildSchemaOptions: {\n options: {\n minimize: false,\n },\n },\n configFields: globalConfig.fields,\n payload: adapter.payload,\n })\n Globals.discriminator(globalConfig.slug, globalSchema)\n })\n\n return Globals\n }\n\n return null\n}\n"],"names":["mongoose","getBuildQueryPlugin","buildSchema","buildGlobalModel","adapter","payload","config","globals","length","globalsSchema","Schema","discriminatorKey","minimize","timestamps","plugin","Globals","connection","model","Object","values","forEach","globalConfig","globalSchema","buildSchemaOptions","options","configFields","fields","
|
|
1
|
+
{"version":3,"sources":["../../src/models/buildGlobalModel.ts"],"sourcesContent":["import mongoose from 'mongoose'\n\nimport type { MongooseAdapter } from '../index.js'\nimport type { GlobalModel } from '../types.js'\nimport type { MongoSchemaBuildContext } from './schemaBuildContext.js'\n\nimport { getBuildQueryPlugin } from '../queries/getBuildQueryPlugin.js'\nimport { buildSchema } from './buildSchema.js'\n\nexport const buildGlobalModel = ({\n adapter,\n schemaBuildContext,\n}: {\n adapter: MongooseAdapter\n schemaBuildContext: MongoSchemaBuildContext\n}): GlobalModel | null => {\n if (adapter.payload.config.globals && adapter.payload.config.globals.length > 0) {\n const globalsSchema = new mongoose.Schema(\n {},\n { discriminatorKey: 'globalType', minimize: false, timestamps: true },\n )\n\n globalsSchema.plugin(getBuildQueryPlugin())\n\n const Globals = adapter.connection.model(\n 'globals',\n globalsSchema,\n 'globals',\n ) as unknown as GlobalModel\n\n Object.values(adapter.payload.config.globals).forEach((globalConfig) => {\n const globalSchema = buildSchema({\n buildSchemaOptions: {\n options: {\n minimize: false,\n },\n },\n configFields: globalConfig.fields,\n payload: adapter.payload,\n schemaBuildContext,\n schemaPath: `global:${globalConfig.slug}`,\n })\n Globals.discriminator(globalConfig.slug, globalSchema)\n })\n\n return Globals\n }\n\n return null\n}\n"],"names":["mongoose","getBuildQueryPlugin","buildSchema","buildGlobalModel","adapter","schemaBuildContext","payload","config","globals","length","globalsSchema","Schema","discriminatorKey","minimize","timestamps","plugin","Globals","connection","model","Object","values","forEach","globalConfig","globalSchema","buildSchemaOptions","options","configFields","fields","schemaPath","slug","discriminator"],"mappings":"AAAA,OAAOA,cAAc,WAAU;AAM/B,SAASC,mBAAmB,QAAQ,oCAAmC;AACvE,SAASC,WAAW,QAAQ,mBAAkB;AAE9C,OAAO,MAAMC,mBAAmB,CAAC,EAC/BC,OAAO,EACPC,kBAAkB,EAInB;IACC,IAAID,QAAQE,OAAO,CAACC,MAAM,CAACC,OAAO,IAAIJ,QAAQE,OAAO,CAACC,MAAM,CAACC,OAAO,CAACC,MAAM,GAAG,GAAG;QAC/E,MAAMC,gBAAgB,IAAIV,SAASW,MAAM,CACvC,CAAC,GACD;YAAEC,kBAAkB;YAAcC,UAAU;YAAOC,YAAY;QAAK;QAGtEJ,cAAcK,MAAM,CAACd;QAErB,MAAMe,UAAUZ,QAAQa,UAAU,CAACC,KAAK,CACtC,WACAR,eACA;QAGFS,OAAOC,MAAM,CAAChB,QAAQE,OAAO,CAACC,MAAM,CAACC,OAAO,EAAEa,OAAO,CAAC,CAACC;YACrD,MAAMC,eAAerB,YAAY;gBAC/BsB,oBAAoB;oBAClBC,SAAS;wBACPZ,UAAU;oBACZ;gBACF;gBACAa,cAAcJ,aAAaK,MAAM;gBACjCrB,SAASF,QAAQE,OAAO;gBACxBD;gBACAuB,YAAY,CAAC,OAAO,EAAEN,aAAaO,IAAI,EAAE;YAC3C;YACAb,QAAQc,aAAa,CAACR,aAAaO,IAAI,EAAEN;QAC3C;QAEA,OAAOP;IACT;IAEA,OAAO;AACT,EAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Schema, SchemaOptions } from 'mongoose';
|
|
2
2
|
import { type Field, type FlattenedField, type Payload, type SanitizedCompoundIndex } from 'payload';
|
|
3
|
+
import type { MongoSchemaBuildContext } from './schemaBuildContext.js';
|
|
3
4
|
export type BuildSchemaOptions = {
|
|
4
5
|
allowIDField?: boolean;
|
|
5
6
|
disableUnique?: boolean;
|
|
@@ -12,7 +13,10 @@ export declare const buildSchema: (args: {
|
|
|
12
13
|
compoundIndexes?: SanitizedCompoundIndex[];
|
|
13
14
|
configFields: Field[];
|
|
14
15
|
flattenedFields?: FlattenedField[];
|
|
16
|
+
isVersion?: boolean;
|
|
15
17
|
parentIsLocalized?: boolean;
|
|
16
18
|
payload: Payload;
|
|
19
|
+
schemaBuildContext?: MongoSchemaBuildContext;
|
|
20
|
+
schemaPath?: string;
|
|
17
21
|
}) => Schema;
|
|
18
22
|
//# sourceMappingURL=buildSchema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildSchema.d.ts","sourceRoot":"","sources":["../../src/models/buildSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,MAAM,EAAE,aAAa,EAAqB,MAAM,UAAU,CAAA;AAGtF,OAAO,EAQL,KAAK,KAAK,EAEV,KAAK,cAAc,EAKnB,KAAK,OAAO,EAMZ,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"buildSchema.d.ts","sourceRoot":"","sources":["../../src/models/buildSchema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,MAAM,EAAE,aAAa,EAAqB,MAAM,UAAU,CAAA;AAGtF,OAAO,EAQL,KAAK,KAAK,EAEV,KAAK,cAAc,EAKnB,KAAK,OAAO,EAMZ,KAAK,sBAAsB,EAS5B,MAAM,SAAS,CAAA;AAUhB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAItE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,OAAO,CAAC,EAAE,aAAa,CAAA;CACxB,CAAA;AAyFD,eAAO,MAAM,WAAW,SAAU;IAChC,kBAAkB,EAAE,kBAAkB,CAAA;IACtC,eAAe,CAAC,EAAE,sBAAsB,EAAE,CAAA;IAC1C,YAAY,EAAE,KAAK,EAAE,CAAA;IACrB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAA;IAClC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,kBAAkB,CAAC,EAAE,uBAAuB,CAAA;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,KAAG,MAkFH,CAAA"}
|