@payloadcms/db-mongodb 1.0.0-beta.5 → 1.0.0-beta.7
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 +28 -0
- package/dist/createMigration.d.ts +3 -0
- package/dist/createMigration.d.ts.map +1 -0
- package/dist/createMigration.js +68 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -16
- package/dist/migrateFresh.d.ts +6 -0
- package/dist/migrateFresh.d.ts.map +1 -0
- package/dist/migrateFresh.js +80 -0
- package/package.json +5 -3
- package/predefinedMigrations/versions-v1-v2.js +96 -0
- package/src/index.ts +20 -12
package/README.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Payload MongoDB Adapter
|
|
2
|
+
|
|
3
|
+
Official MongoDB adapter for [Payload](https://payloadcms.com).
|
|
4
|
+
|
|
5
|
+
- [Main Repository](https://github.com/payloadcms/payload)
|
|
6
|
+
- [Payload Docs](https://payloadcms.com/docs)
|
|
7
|
+
|
|
8
|
+
## Installation
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npm install @payloadcms/db-mongodb
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Usage
|
|
15
|
+
|
|
16
|
+
```ts
|
|
17
|
+
import { buildConfig } from 'payload/config'
|
|
18
|
+
import { mongooseAdapter } from '@payloadcms/db-mongodb'
|
|
19
|
+
|
|
20
|
+
export default buildConfig({
|
|
21
|
+
db: mongooseAdapter({}),
|
|
22
|
+
// ...rest of config
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
More detailed usage can be found in the [Payload Docs](https://payloadcms.com/docs/configuration/overview).
|
|
28
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createMigration.d.ts","sourceRoot":"","sources":["../src/createMigration.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAmBvD,eAAO,MAAM,eAAe,EAAE,eA2C7B,CAAA"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/* eslint-disable no-restricted-syntax, no-await-in-loop */ "use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "createMigration", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return createMigration;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
|
|
12
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
13
|
+
function _interop_require_default(obj) {
|
|
14
|
+
return obj && obj.__esModule ? obj : {
|
|
15
|
+
default: obj
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
const migrationTemplate = (upSQL, downSQL)=>`import {
|
|
19
|
+
MigrateUpArgs,
|
|
20
|
+
MigrateDownArgs,
|
|
21
|
+
} from "@payloadcms/db-mongodb";
|
|
22
|
+
|
|
23
|
+
export async function up({ payload }: MigrateUpArgs): Promise<void> {
|
|
24
|
+
${upSQL ?? ` // Migration code`}
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export async function down({ payload }: MigrateDownArgs): Promise<void> {
|
|
28
|
+
${downSQL ?? ` // Migration code`}
|
|
29
|
+
};
|
|
30
|
+
`;
|
|
31
|
+
const createMigration = async function createMigration({ file, migrationName, payload }) {
|
|
32
|
+
const dir = payload.db.migrationDir;
|
|
33
|
+
if (!_fs.default.existsSync(dir)) {
|
|
34
|
+
_fs.default.mkdirSync(dir);
|
|
35
|
+
}
|
|
36
|
+
let migrationFileContent;
|
|
37
|
+
// Check for predefined migration
|
|
38
|
+
if (file) {
|
|
39
|
+
const predefinedMigrationName = file.replace('@payloadcms/db-mongodb/', '');
|
|
40
|
+
migrationName = predefinedMigrationName;
|
|
41
|
+
const cleanPath = _path.default.join(__dirname, `../predefinedMigrations/${predefinedMigrationName}.js`);
|
|
42
|
+
// Check if predefined migration exists
|
|
43
|
+
if (_fs.default.existsSync(cleanPath)) {
|
|
44
|
+
const { down, up } = require(cleanPath);
|
|
45
|
+
migrationFileContent = migrationTemplate(up, down);
|
|
46
|
+
} else {
|
|
47
|
+
payload.logger.error({
|
|
48
|
+
msg: `Canned migration ${predefinedMigrationName} not found.`
|
|
49
|
+
});
|
|
50
|
+
process.exit(1);
|
|
51
|
+
}
|
|
52
|
+
} else {
|
|
53
|
+
migrationFileContent = migrationTemplate();
|
|
54
|
+
}
|
|
55
|
+
const [yyymmdd, hhmmss] = new Date().toISOString().split('T');
|
|
56
|
+
const formattedDate = yyymmdd.replace(/\D/g, '');
|
|
57
|
+
const formattedTime = hhmmss.split('.')[0].replace(/\D/g, '');
|
|
58
|
+
const timestamp = `${formattedDate}_${formattedTime}`;
|
|
59
|
+
const formattedName = migrationName.replace(/\W/g, '_');
|
|
60
|
+
const fileName = `${timestamp}_${formattedName}.ts`;
|
|
61
|
+
const filePath = `${dir}/${fileName}`;
|
|
62
|
+
_fs.default.writeFileSync(filePath, migrationFileContent);
|
|
63
|
+
payload.logger.info({
|
|
64
|
+
msg: `Migration created at ${filePath}`
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jcmVhdGVNaWdyYXRpb24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tcmVzdHJpY3RlZC1zeW50YXgsIG5vLWF3YWl0LWluLWxvb3AgKi9cbmltcG9ydCB0eXBlIHsgQ3JlYXRlTWlncmF0aW9uIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcblxuaW1wb3J0IGZzIGZyb20gJ2ZzJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcblxuY29uc3QgbWlncmF0aW9uVGVtcGxhdGUgPSAodXBTUUw/OiBzdHJpbmcsIGRvd25TUUw/OiBzdHJpbmcpID0+IGBpbXBvcnQge1xuICBNaWdyYXRlVXBBcmdzLFxuICBNaWdyYXRlRG93bkFyZ3MsXG59IGZyb20gXCJAcGF5bG9hZGNtcy9kYi1tb25nb2RiXCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1cCh7IHBheWxvYWQgfTogTWlncmF0ZVVwQXJncyk6IFByb21pc2U8dm9pZD4ge1xuJHt1cFNRTCA/PyBgICAvLyBNaWdyYXRpb24gY29kZWB9XG59O1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZG93bih7IHBheWxvYWQgfTogTWlncmF0ZURvd25BcmdzKTogUHJvbWlzZTx2b2lkPiB7XG4ke2Rvd25TUUwgPz8gYCAgLy8gTWlncmF0aW9uIGNvZGVgfVxufTtcbmBcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU1pZ3JhdGlvbjogQ3JlYXRlTWlncmF0aW9uID0gYXN5bmMgZnVuY3Rpb24gY3JlYXRlTWlncmF0aW9uKHtcbiAgZmlsZSxcbiAgbWlncmF0aW9uTmFtZSxcbiAgcGF5bG9hZCxcbn0pIHtcbiAgY29uc3QgZGlyID0gcGF5bG9hZC5kYi5taWdyYXRpb25EaXJcbiAgaWYgKCFmcy5leGlzdHNTeW5jKGRpcikpIHtcbiAgICBmcy5ta2RpclN5bmMoZGlyKVxuICB9XG5cbiAgbGV0IG1pZ3JhdGlvbkZpbGVDb250ZW50OiBzdHJpbmcgfCB1bmRlZmluZWRcblxuICAvLyBDaGVjayBmb3IgcHJlZGVmaW5lZCBtaWdyYXRpb25cbiAgaWYgKGZpbGUpIHtcbiAgICBjb25zdCBwcmVkZWZpbmVkTWlncmF0aW9uTmFtZSA9IGZpbGUucmVwbGFjZSgnQHBheWxvYWRjbXMvZGItbW9uZ29kYi8nLCAnJylcbiAgICBtaWdyYXRpb25OYW1lID0gcHJlZGVmaW5lZE1pZ3JhdGlvbk5hbWVcbiAgICBjb25zdCBjbGVhblBhdGggPSBwYXRoLmpvaW4oX19kaXJuYW1lLCBgLi4vcHJlZGVmaW5lZE1pZ3JhdGlvbnMvJHtwcmVkZWZpbmVkTWlncmF0aW9uTmFtZX0uanNgKVxuXG4gICAgLy8gQ2hlY2sgaWYgcHJlZGVmaW5lZCBtaWdyYXRpb24gZXhpc3RzXG4gICAgaWYgKGZzLmV4aXN0c1N5bmMoY2xlYW5QYXRoKSkge1xuICAgICAgY29uc3QgeyBkb3duLCB1cCB9ID0gcmVxdWlyZShjbGVhblBhdGgpXG4gICAgICBtaWdyYXRpb25GaWxlQ29udGVudCA9IG1pZ3JhdGlvblRlbXBsYXRlKHVwLCBkb3duKVxuICAgIH0gZWxzZSB7XG4gICAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcih7XG4gICAgICAgIG1zZzogYENhbm5lZCBtaWdyYXRpb24gJHtwcmVkZWZpbmVkTWlncmF0aW9uTmFtZX0gbm90IGZvdW5kLmAsXG4gICAgICB9KVxuICAgICAgcHJvY2Vzcy5leGl0KDEpXG4gICAgfVxuICB9IGVsc2Uge1xuICAgIG1pZ3JhdGlvbkZpbGVDb250ZW50ID0gbWlncmF0aW9uVGVtcGxhdGUoKVxuICB9XG5cbiAgY29uc3QgW3l5eW1tZGQsIGhobW1zc10gPSBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVxuICBjb25zdCBmb3JtYXR0ZWREYXRlID0geXl5bW1kZC5yZXBsYWNlKC9cXEQvZywgJycpXG4gIGNvbnN0IGZvcm1hdHRlZFRpbWUgPSBoaG1tc3Muc3BsaXQoJy4nKVswXS5yZXBsYWNlKC9cXEQvZywgJycpXG5cbiAgY29uc3QgdGltZXN0YW1wID0gYCR7Zm9ybWF0dGVkRGF0ZX1fJHtmb3JtYXR0ZWRUaW1lfWBcblxuICBjb25zdCBmb3JtYXR0ZWROYW1lID0gbWlncmF0aW9uTmFtZS5yZXBsYWNlKC9cXFcvZywgJ18nKVxuICBjb25zdCBmaWxlTmFtZSA9IGAke3RpbWVzdGFtcH1fJHtmb3JtYXR0ZWROYW1lfS50c2BcbiAgY29uc3QgZmlsZVBhdGggPSBgJHtkaXJ9LyR7ZmlsZU5hbWV9YFxuICBmcy53cml0ZUZpbGVTeW5jKGZpbGVQYXRoLCBtaWdyYXRpb25GaWxlQ29udGVudClcbiAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7IG1zZzogYE1pZ3JhdGlvbiBjcmVhdGVkIGF0ICR7ZmlsZVBhdGh9YCB9KVxufVxuIl0sIm5hbWVzIjpbImNyZWF0ZU1pZ3JhdGlvbiIsIm1pZ3JhdGlvblRlbXBsYXRlIiwidXBTUUwiLCJkb3duU1FMIiwiZmlsZSIsIm1pZ3JhdGlvbk5hbWUiLCJwYXlsb2FkIiwiZGlyIiwiZGIiLCJtaWdyYXRpb25EaXIiLCJmcyIsImV4aXN0c1N5bmMiLCJta2RpclN5bmMiLCJtaWdyYXRpb25GaWxlQ29udGVudCIsInByZWRlZmluZWRNaWdyYXRpb25OYW1lIiwicmVwbGFjZSIsImNsZWFuUGF0aCIsInBhdGgiLCJqb2luIiwiX19kaXJuYW1lIiwiZG93biIsInVwIiwicmVxdWlyZSIsImxvZ2dlciIsImVycm9yIiwibXNnIiwicHJvY2VzcyIsImV4aXQiLCJ5eXltbWRkIiwiaGhtbXNzIiwiRGF0ZSIsInRvSVNPU3RyaW5nIiwic3BsaXQiLCJmb3JtYXR0ZWREYXRlIiwiZm9ybWF0dGVkVGltZSIsInRpbWVzdGFtcCIsImZvcm1hdHRlZE5hbWUiLCJmaWxlTmFtZSIsImZpbGVQYXRoIiwid3JpdGVGaWxlU3luYyIsImluZm8iXSwibWFwcGluZ3MiOiJBQUFBLHlEQUF5RDs7OzsrQkFvQjVDQTs7O2VBQUFBOzs7MkRBakJFOzZEQUNFOzs7Ozs7QUFFakIsTUFBTUMsb0JBQW9CLENBQUNDLE9BQWdCQyxVQUFxQixDQUFDOzs7Ozs7QUFNakUsRUFBRUQsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUM7Ozs7QUFJakMsRUFBRUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLENBQUM7O0FBRW5DLENBQUM7QUFFTSxNQUFNSCxrQkFBbUMsZUFBZUEsZ0JBQWdCLEVBQzdFSSxJQUFJLEVBQ0pDLGFBQWEsRUFDYkMsT0FBTyxFQUNSO0lBQ0MsTUFBTUMsTUFBTUQsUUFBUUUsRUFBRSxDQUFDQyxZQUFZO0lBQ25DLElBQUksQ0FBQ0MsV0FBRSxDQUFDQyxVQUFVLENBQUNKLE1BQU07UUFDdkJHLFdBQUUsQ0FBQ0UsU0FBUyxDQUFDTDtJQUNmO0lBRUEsSUFBSU07SUFFSixpQ0FBaUM7SUFDakMsSUFBSVQsTUFBTTtRQUNSLE1BQU1VLDBCQUEwQlYsS0FBS1csT0FBTyxDQUFDLDJCQUEyQjtRQUN4RVYsZ0JBQWdCUztRQUNoQixNQUFNRSxZQUFZQyxhQUFJLENBQUNDLElBQUksQ0FBQ0MsV0FBVyxDQUFDLHdCQUF3QixFQUFFTCx3QkFBd0IsR0FBRyxDQUFDO1FBRTlGLHVDQUF1QztRQUN2QyxJQUFJSixXQUFFLENBQUNDLFVBQVUsQ0FBQ0ssWUFBWTtZQUM1QixNQUFNLEVBQUVJLElBQUksRUFBRUMsRUFBRSxFQUFFLEdBQUdDLFFBQVFOO1lBQzdCSCx1QkFBdUJaLGtCQUFrQm9CLElBQUlEO1FBQy9DLE9BQU87WUFDTGQsUUFBUWlCLE1BQU0sQ0FBQ0MsS0FBSyxDQUFDO2dCQUNuQkMsS0FBSyxDQUFDLGlCQUFpQixFQUFFWCx3QkFBd0IsV0FBVyxDQUFDO1lBQy9EO1lBQ0FZLFFBQVFDLElBQUksQ0FBQztRQUNmO0lBQ0YsT0FBTztRQUNMZCx1QkFBdUJaO0lBQ3pCO0lBRUEsTUFBTSxDQUFDMkIsU0FBU0MsT0FBTyxHQUFHLElBQUlDLE9BQU9DLFdBQVcsR0FBR0MsS0FBSyxDQUFDO0lBQ3pELE1BQU1DLGdCQUFnQkwsUUFBUWIsT0FBTyxDQUFDLE9BQU87SUFDN0MsTUFBTW1CLGdCQUFnQkwsT0FBT0csS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUNqQixPQUFPLENBQUMsT0FBTztJQUUxRCxNQUFNb0IsWUFBWSxDQUFDLEVBQUVGLGNBQWMsQ0FBQyxFQUFFQyxjQUFjLENBQUM7SUFFckQsTUFBTUUsZ0JBQWdCL0IsY0FBY1UsT0FBTyxDQUFDLE9BQU87SUFDbkQsTUFBTXNCLFdBQVcsQ0FBQyxFQUFFRixVQUFVLENBQUMsRUFBRUMsY0FBYyxHQUFHLENBQUM7SUFDbkQsTUFBTUUsV0FBVyxDQUFDLEVBQUUvQixJQUFJLENBQUMsRUFBRThCLFNBQVMsQ0FBQztJQUNyQzNCLFdBQUUsQ0FBQzZCLGFBQWEsQ0FBQ0QsVUFBVXpCO0lBQzNCUCxRQUFRaUIsTUFBTSxDQUFDaUIsSUFBSSxDQUFDO1FBQUVmLEtBQUssQ0FBQyxxQkFBcUIsRUFBRWEsU0FBUyxDQUFDO0lBQUM7QUFDaEUifQ==
|
package/dist/index.d.ts
CHANGED
|
@@ -44,5 +44,5 @@ declare module 'payload' {
|
|
|
44
44
|
};
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
|
-
export declare function mongooseAdapter({ autoPluralization, connectOptions, migrationDir, url, }: Args): MongooseAdapterResult;
|
|
47
|
+
export declare function mongooseAdapter({ autoPluralization, connectOptions, migrationDir: migrationDirArg, url, }: Args): MongooseAdapterResult;
|
|
48
48
|
//# 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,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAM3D,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AAM3D,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AA8B3D,MAAM,WAAW,IAAI;IACnB,uFAAuF;IACvF,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,kCAAkC;IAClC,cAAc,CAAC,EAAE,cAAc,GAAG;QAChC,4FAA4F;QAC5F,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,CAAA;IACD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,qFAAqF;IACrF,GAAG,EAAE,KAAK,GAAG,MAAM,CAAA;CACpB;AAED,MAAM,MAAM,eAAe,GAAG,mBAAmB,GAC/C,IAAI,GAAG;IACL,WAAW,EAAE;QACX,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAA;KAChC,CAAA;IACD,UAAU,EAAE,UAAU,CAAA;IACtB,OAAO,EAAE,WAAW,CAAA;IACpB,iBAAiB,EAAE,GAAG,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,aAAa,CAAC,CAAA;IAChD,QAAQ,EAAE;QACR,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAA;KAChC,CAAA;CACF,CAAA;AAEH,KAAK,qBAAqB,GAAG,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,KAAK,eAAe,CAAA;AAE5E,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAiB,eAAgB,SAAQ,IAAI;QAC3C,WAAW,EAAE;YACX,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAA;SAChC,CAAA;QACD,UAAU,EAAE,UAAU,CAAA;QACtB,OAAO,EAAE,WAAW,CAAA;QACpB,iBAAiB,EAAE,GAAG,CAAA;QACtB,QAAQ,EAAE,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,aAAa,CAAC,CAAA;QAChD,QAAQ,EAAE;YACR,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAA;SAChC,CAAA;KACF;CACF;AAED,wBAAgB,eAAe,CAAC,EAC9B,iBAAwB,EACxB,cAAc,EACd,YAAY,EAAE,eAAe,EAC7B,GAAG,GACJ,EAAE,IAAI,GAAG,qBAAqB,CAuD9B"}
|
package/dist/index.js
CHANGED
|
@@ -9,11 +9,13 @@ Object.defineProperty(exports, "mongooseAdapter", {
|
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
11
|
const _mongoose = /*#__PURE__*/ _interop_require_default(require("mongoose"));
|
|
12
|
+
const _path = /*#__PURE__*/ _interop_require_default(require("path"));
|
|
12
13
|
const _database = require("payload/database");
|
|
13
14
|
const _connect = require("./connect");
|
|
14
15
|
const _create = require("./create");
|
|
15
16
|
const _createGlobal = require("./createGlobal");
|
|
16
17
|
const _createGlobalVersion = require("./createGlobalVersion");
|
|
18
|
+
const _createMigration = require("./createMigration");
|
|
17
19
|
const _createVersion = require("./createVersion");
|
|
18
20
|
const _deleteMany = require("./deleteMany");
|
|
19
21
|
const _deleteOne = require("./deleteOne");
|
|
@@ -27,6 +29,7 @@ const _findGlobalVersions = require("./findGlobalVersions");
|
|
|
27
29
|
const _findOne = require("./findOne");
|
|
28
30
|
const _findVersions = require("./findVersions");
|
|
29
31
|
const _init = require("./init");
|
|
32
|
+
const _migrateFresh = require("./migrateFresh");
|
|
30
33
|
const _queryDrafts = require("./queryDrafts");
|
|
31
34
|
const _beginTransaction = require("./transactions/beginTransaction");
|
|
32
35
|
const _commitTransaction = require("./transactions/commitTransaction");
|
|
@@ -40,23 +43,32 @@ function _interop_require_default(obj) {
|
|
|
40
43
|
default: obj
|
|
41
44
|
};
|
|
42
45
|
}
|
|
43
|
-
function mongooseAdapter({ autoPluralization = true, connectOptions, migrationDir, url }) {
|
|
46
|
+
function mongooseAdapter({ autoPluralization = true, connectOptions, migrationDir: migrationDirArg, url }) {
|
|
44
47
|
function adapter({ payload }) {
|
|
48
|
+
const migrationDir = migrationDirArg || _path.default.resolve(process.cwd(), 'src/migrations');
|
|
45
49
|
_mongoose.default.set('strictQuery', false);
|
|
46
50
|
(0, _extendWebpackConfig.extendWebpackConfig)(payload.config);
|
|
47
51
|
(0, _extendViteConfig.extendViteConfig)(payload.config);
|
|
48
52
|
return (0, _database.createDatabaseAdapter)({
|
|
53
|
+
name: 'mongoose',
|
|
54
|
+
// Mongoose-specific
|
|
49
55
|
autoPluralization,
|
|
50
|
-
beginTransaction: _beginTransaction.beginTransaction,
|
|
51
56
|
collections: {},
|
|
52
|
-
commitTransaction: _commitTransaction.commitTransaction,
|
|
53
|
-
connect: _connect.connect,
|
|
54
57
|
connectOptions: connectOptions || {},
|
|
55
58
|
connection: undefined,
|
|
59
|
+
globals: undefined,
|
|
60
|
+
mongoMemoryServer: undefined,
|
|
61
|
+
sessions: {},
|
|
62
|
+
url,
|
|
63
|
+
versions: {},
|
|
64
|
+
// DatabaseAdapter
|
|
65
|
+
beginTransaction: _beginTransaction.beginTransaction,
|
|
66
|
+
commitTransaction: _commitTransaction.commitTransaction,
|
|
67
|
+
connect: _connect.connect,
|
|
56
68
|
create: _create.create,
|
|
57
69
|
createGlobal: _createGlobal.createGlobal,
|
|
58
70
|
createGlobalVersion: _createGlobalVersion.createGlobalVersion,
|
|
59
|
-
createMigration:
|
|
71
|
+
createMigration: _createMigration.createMigration,
|
|
60
72
|
createVersion: _createVersion.createVersion,
|
|
61
73
|
defaultIDType: 'text',
|
|
62
74
|
deleteMany: _deleteMany.deleteMany,
|
|
@@ -68,26 +80,19 @@ function mongooseAdapter({ autoPluralization = true, connectOptions, migrationDi
|
|
|
68
80
|
findGlobalVersions: _findGlobalVersions.findGlobalVersions,
|
|
69
81
|
findOne: _findOne.findOne,
|
|
70
82
|
findVersions: _findVersions.findVersions,
|
|
71
|
-
globals: undefined,
|
|
72
83
|
init: _init.init,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
},
|
|
76
|
-
name: 'mongoose',
|
|
77
|
-
mongoMemoryServer: undefined,
|
|
84
|
+
migrateFresh: _migrateFresh.migrateFresh,
|
|
85
|
+
migrationDir,
|
|
78
86
|
payload,
|
|
79
87
|
queryDrafts: _queryDrafts.queryDrafts,
|
|
80
88
|
rollbackTransaction: _rollbackTransaction.rollbackTransaction,
|
|
81
|
-
sessions: {},
|
|
82
89
|
updateGlobal: _updateGlobal.updateGlobal,
|
|
83
90
|
updateGlobalVersion: _updateGlobalVersion.updateGlobalVersion,
|
|
84
91
|
updateOne: _updateOne.updateOne,
|
|
85
|
-
updateVersion: _updateVersion.updateVersion
|
|
86
|
-
url,
|
|
87
|
-
versions: {}
|
|
92
|
+
updateVersion: _updateVersion.updateVersion
|
|
88
93
|
});
|
|
89
94
|
}
|
|
90
95
|
return adapter;
|
|
91
96
|
}
|
|
92
97
|
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENsaWVudFNlc3Npb24sIENvbm5lY3RPcHRpb25zLCBDb25uZWN0aW9uIH0gZnJvbSAnbW9uZ29vc2UnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICdwYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBCYXNlRGF0YWJhc2VBZGFwdGVyIH0gZnJvbSAncGF5bG9hZC9kYXRhYmFzZSdcblxuaW1wb3J0IG1vbmdvb3NlIGZyb20gJ21vbmdvb3NlJ1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCdcbmltcG9ydCB7IGNyZWF0ZURhdGFiYXNlQWRhcHRlciB9IGZyb20gJ3BheWxvYWQvZGF0YWJhc2UnXG5cbmV4cG9ydCB0eXBlIHsgTWlncmF0ZURvd25BcmdzLCBNaWdyYXRlVXBBcmdzIH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHR5cGUgeyBDb2xsZWN0aW9uTW9kZWwsIEdsb2JhbE1vZGVsIH0gZnJvbSAnLi90eXBlcydcblxuaW1wb3J0IHsgY29ubmVjdCB9IGZyb20gJy4vY29ubmVjdCdcbmltcG9ydCB7IGNyZWF0ZSB9IGZyb20gJy4vY3JlYXRlJ1xuaW1wb3J0IHsgY3JlYXRlR2xvYmFsIH0gZnJvbSAnLi9jcmVhdGVHbG9iYWwnXG5pbXBvcnQgeyBjcmVhdGVHbG9iYWxWZXJzaW9uIH0gZnJvbSAnLi9jcmVhdGVHbG9iYWxWZXJzaW9uJ1xuaW1wb3J0IHsgY3JlYXRlTWlncmF0aW9uIH0gZnJvbSAnLi9jcmVhdGVNaWdyYXRpb24nXG5pbXBvcnQgeyBjcmVhdGVWZXJzaW9uIH0gZnJvbSAnLi9jcmVhdGVWZXJzaW9uJ1xuaW1wb3J0IHsgZGVsZXRlTWFueSB9IGZyb20gJy4vZGVsZXRlTWFueSdcbmltcG9ydCB7IGRlbGV0ZU9uZSB9IGZyb20gJy4vZGVsZXRlT25lJ1xuaW1wb3J0IHsgZGVsZXRlVmVyc2lvbnMgfSBmcm9tICcuL2RlbGV0ZVZlcnNpb25zJ1xuaW1wb3J0IHsgZGVzdHJveSB9IGZyb20gJy4vZGVzdHJveSdcbmltcG9ydCB7IGV4dGVuZFZpdGVDb25maWcgfSBmcm9tICcuL2V4dGVuZFZpdGVDb25maWcnXG5pbXBvcnQgeyBleHRlbmRXZWJwYWNrQ29uZmlnIH0gZnJvbSAnLi9leHRlbmRXZWJwYWNrQ29uZmlnJ1xuaW1wb3J0IHsgZmluZCB9IGZyb20gJy4vZmluZCdcbmltcG9ydCB7IGZpbmRHbG9iYWwgfSBmcm9tICcuL2ZpbmRHbG9iYWwnXG5pbXBvcnQgeyBmaW5kR2xvYmFsVmVyc2lvbnMgfSBmcm9tICcuL2ZpbmRHbG9iYWxWZXJzaW9ucydcbmltcG9ydCB7IGZpbmRPbmUgfSBmcm9tICcuL2ZpbmRPbmUnXG5pbXBvcnQgeyBmaW5kVmVyc2lvbnMgfSBmcm9tICcuL2ZpbmRWZXJzaW9ucydcbmltcG9ydCB7IGluaXQgfSBmcm9tICcuL2luaXQnXG5pbXBvcnQgeyBtaWdyYXRlRnJlc2ggfSBmcm9tICcuL21pZ3JhdGVGcmVzaCdcbmltcG9ydCB7IHF1ZXJ5RHJhZnRzIH0gZnJvbSAnLi9xdWVyeURyYWZ0cydcbmltcG9ydCB7IGJlZ2luVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9ucy9iZWdpblRyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgY29tbWl0VHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9ucy9jb21taXRUcmFuc2FjdGlvbidcbmltcG9ydCB7IHJvbGxiYWNrVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9ucy9yb2xsYmFja1RyYW5zYWN0aW9uJ1xuaW1wb3J0IHsgdXBkYXRlR2xvYmFsIH0gZnJvbSAnLi91cGRhdGVHbG9iYWwnXG5pbXBvcnQgeyB1cGRhdGVHbG9iYWxWZXJzaW9uIH0gZnJvbSAnLi91cGRhdGVHbG9iYWxWZXJzaW9uJ1xuaW1wb3J0IHsgdXBkYXRlT25lIH0gZnJvbSAnLi91cGRhdGVPbmUnXG5pbXBvcnQgeyB1cGRhdGVWZXJzaW9uIH0gZnJvbSAnLi91cGRhdGVWZXJzaW9uJ1xuXG5leHBvcnQgaW50ZXJmYWNlIEFyZ3Mge1xuICAvKiogU2V0IHRvIGZhbHNlIHRvIGRpc2FibGUgYXV0by1wbHVyYWxpemF0aW9uIG9mIGNvbGxlY3Rpb24gbmFtZXMsIERlZmF1bHRzIHRvIHRydWUgKi9cbiAgYXV0b1BsdXJhbGl6YXRpb24/OiBib29sZWFuXG4gIC8qKiBFeHRyYSBjb25maWd1cmF0aW9uIG9wdGlvbnMgKi9cbiAgY29ubmVjdE9wdGlvbnM/OiBDb25uZWN0T3B0aW9ucyAmIHtcbiAgICAvKiogU2V0IGZhbHNlIHRvIGRpc2FibGUgJGZhY2V0IGFnZ3JlZ2F0aW9uIGluIG5vbi1zdXBwb3J0aW5nIGRhdGFiYXNlcywgRGVmYXVsdHMgdG8gdHJ1ZSAqL1xuICAgIHVzZUZhY2V0PzogYm9vbGVhblxuICB9XG4gIG1pZ3JhdGlvbkRpcj86IHN0cmluZ1xuICAvKiogVGhlIFVSTCB0byBjb25uZWN0IHRvIE1vbmdvREIgb3IgZmFsc2UgdG8gc3RhcnQgcGF5bG9hZCBhbmQgcHJldmVudCBjb25uZWN0aW5nICovXG4gIHVybDogZmFsc2UgfCBzdHJpbmdcbn1cblxuZXhwb3J0IHR5cGUgTW9uZ29vc2VBZGFwdGVyID0gQmFzZURhdGFiYXNlQWRhcHRlciAmXG4gIEFyZ3MgJiB7XG4gICAgY29sbGVjdGlvbnM6IHtcbiAgICAgIFtzbHVnOiBzdHJpbmddOiBDb2xsZWN0aW9uTW9kZWxcbiAgICB9XG4gICAgY29ubmVjdGlvbjogQ29ubmVjdGlvblxuICAgIGdsb2JhbHM6IEdsb2JhbE1vZGVsXG4gICAgbW9uZ29NZW1vcnlTZXJ2ZXI6IGFueVxuICAgIHNlc3Npb25zOiBSZWNvcmQ8bnVtYmVyIHwgc3RyaW5nLCBDbGllbnRTZXNzaW9uPlxuICAgIHZlcnNpb25zOiB7XG4gICAgICBbc2x1Zzogc3RyaW5nXTogQ29sbGVjdGlvbk1vZGVsXG4gICAgfVxuICB9XG5cbnR5cGUgTW9uZ29vc2VBZGFwdGVyUmVzdWx0ID0gKGFyZ3M6IHsgcGF5bG9hZDogUGF5bG9hZCB9KSA9PiBNb25nb29zZUFkYXB0ZXJcblxuZGVjbGFyZSBtb2R1bGUgJ3BheWxvYWQnIHtcbiAgZXhwb3J0IGludGVyZmFjZSBEYXRhYmFzZUFkYXB0ZXIgZXh0ZW5kcyBBcmdzIHtcbiAgICBjb2xsZWN0aW9uczoge1xuICAgICAgW3NsdWc6IHN0cmluZ106IENvbGxlY3Rpb25Nb2RlbFxuICAgIH1cbiAgICBjb25uZWN0aW9uOiBDb25uZWN0aW9uXG4gICAgZ2xvYmFsczogR2xvYmFsTW9kZWxcbiAgICBtb25nb01lbW9yeVNlcnZlcjogYW55XG4gICAgc2Vzc2lvbnM6IFJlY29yZDxudW1iZXIgfCBzdHJpbmcsIENsaWVudFNlc3Npb24+XG4gICAgdmVyc2lvbnM6IHtcbiAgICAgIFtzbHVnOiBzdHJpbmddOiBDb2xsZWN0aW9uTW9kZWxcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1vbmdvb3NlQWRhcHRlcih7XG4gIGF1dG9QbHVyYWxpemF0aW9uID0gdHJ1ZSxcbiAgY29ubmVjdE9wdGlvbnMsXG4gIG1pZ3JhdGlvbkRpcjogbWlncmF0aW9uRGlyQXJnLFxuICB1cmwsXG59OiBBcmdzKTogTW9uZ29vc2VBZGFwdGVyUmVzdWx0IHtcbiAgZnVuY3Rpb24gYWRhcHRlcih7IHBheWxvYWQgfTogeyBwYXlsb2FkOiBQYXlsb2FkIH0pIHtcbiAgICBjb25zdCBtaWdyYXRpb25EaXIgPSBtaWdyYXRpb25EaXJBcmcgfHwgcGF0aC5yZXNvbHZlKHByb2Nlc3MuY3dkKCksICdzcmMvbWlncmF0aW9ucycpXG4gICAgbW9uZ29vc2Uuc2V0KCdzdHJpY3RRdWVyeScsIGZhbHNlKVxuXG4gICAgZXh0ZW5kV2VicGFja0NvbmZpZyhwYXlsb2FkLmNvbmZpZylcbiAgICBleHRlbmRWaXRlQ29uZmlnKHBheWxvYWQuY29uZmlnKVxuXG4gICAgcmV0dXJuIGNyZWF0ZURhdGFiYXNlQWRhcHRlcjxNb25nb29zZUFkYXB0ZXI+KHtcbiAgICAgIG5hbWU6ICdtb25nb29zZScsXG5cbiAgICAgIC8vIE1vbmdvb3NlLXNwZWNpZmljXG4gICAgICBhdXRvUGx1cmFsaXphdGlvbixcbiAgICAgIGNvbGxlY3Rpb25zOiB7fSxcbiAgICAgIGNvbm5lY3RPcHRpb25zOiBjb25uZWN0T3B0aW9ucyB8fCB7fSxcbiAgICAgIGNvbm5lY3Rpb246IHVuZGVmaW5lZCxcbiAgICAgIGdsb2JhbHM6IHVuZGVmaW5lZCxcbiAgICAgIG1vbmdvTWVtb3J5U2VydmVyOiB1bmRlZmluZWQsXG4gICAgICBzZXNzaW9uczoge30sXG4gICAgICB1cmwsXG4gICAgICB2ZXJzaW9uczoge30sXG5cbiAgICAgIC8vIERhdGFiYXNlQWRhcHRlclxuICAgICAgYmVnaW5UcmFuc2FjdGlvbixcbiAgICAgIGNvbW1pdFRyYW5zYWN0aW9uLFxuICAgICAgY29ubmVjdCxcbiAgICAgIGNyZWF0ZSxcbiAgICAgIGNyZWF0ZUdsb2JhbCxcbiAgICAgIGNyZWF0ZUdsb2JhbFZlcnNpb24sXG4gICAgICBjcmVhdGVNaWdyYXRpb24sXG4gICAgICBjcmVhdGVWZXJzaW9uLFxuICAgICAgZGVmYXVsdElEVHlwZTogJ3RleHQnLFxuICAgICAgZGVsZXRlTWFueSxcbiAgICAgIGRlbGV0ZU9uZSxcbiAgICAgIGRlbGV0ZVZlcnNpb25zLFxuICAgICAgZGVzdHJveSxcbiAgICAgIGZpbmQsXG4gICAgICBmaW5kR2xvYmFsLFxuICAgICAgZmluZEdsb2JhbFZlcnNpb25zLFxuICAgICAgZmluZE9uZSxcbiAgICAgIGZpbmRWZXJzaW9ucyxcbiAgICAgIGluaXQsXG4gICAgICBtaWdyYXRlRnJlc2gsXG4gICAgICBtaWdyYXRpb25EaXIsXG4gICAgICBwYXlsb2FkLFxuICAgICAgcXVlcnlEcmFmdHMsXG4gICAgICByb2xsYmFja1RyYW5zYWN0aW9uLFxuICAgICAgdXBkYXRlR2xvYmFsLFxuICAgICAgdXBkYXRlR2xvYmFsVmVyc2lvbixcbiAgICAgIHVwZGF0ZU9uZSxcbiAgICAgIHVwZGF0ZVZlcnNpb24sXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBhZGFwdGVyXG59XG4iXSwibmFtZXMiOlsibW9uZ29vc2VBZGFwdGVyIiwiYXV0b1BsdXJhbGl6YXRpb24iLCJjb25uZWN0T3B0aW9ucyIsIm1pZ3JhdGlvbkRpciIsIm1pZ3JhdGlvbkRpckFyZyIsInVybCIsImFkYXB0ZXIiLCJwYXlsb2FkIiwicGF0aCIsInJlc29sdmUiLCJwcm9jZXNzIiwiY3dkIiwibW9uZ29vc2UiLCJzZXQiLCJleHRlbmRXZWJwYWNrQ29uZmlnIiwiY29uZmlnIiwiZXh0ZW5kVml0ZUNvbmZpZyIsImNyZWF0ZURhdGFiYXNlQWRhcHRlciIsIm5hbWUiLCJjb2xsZWN0aW9ucyIsImNvbm5lY3Rpb24iLCJ1bmRlZmluZWQiLCJnbG9iYWxzIiwibW9uZ29NZW1vcnlTZXJ2ZXIiLCJzZXNzaW9ucyIsInZlcnNpb25zIiwiYmVnaW5UcmFuc2FjdGlvbiIsImNvbW1pdFRyYW5zYWN0aW9uIiwiY29ubmVjdCIsImNyZWF0ZSIsImNyZWF0ZUdsb2JhbCIsImNyZWF0ZUdsb2JhbFZlcnNpb24iLCJjcmVhdGVNaWdyYXRpb24iLCJjcmVhdGVWZXJzaW9uIiwiZGVmYXVsdElEVHlwZSIsImRlbGV0ZU1hbnkiLCJkZWxldGVPbmUiLCJkZWxldGVWZXJzaW9ucyIsImRlc3Ryb3kiLCJmaW5kIiwiZmluZEdsb2JhbCIsImZpbmRHbG9iYWxWZXJzaW9ucyIsImZpbmRPbmUiLCJmaW5kVmVyc2lvbnMiLCJpbml0IiwibWlncmF0ZUZyZXNoIiwicXVlcnlEcmFmdHMiLCJyb2xsYmFja1RyYW5zYWN0aW9uIiwidXBkYXRlR2xvYmFsIiwidXBkYXRlR2xvYmFsVmVyc2lvbiIsInVwZGF0ZU9uZSIsInVwZGF0ZVZlcnNpb24iXSwibWFwcGluZ3MiOiI7Ozs7K0JBb0ZnQkE7OztlQUFBQTs7O2lFQWhGSzs2REFDSjswQkFDcUI7eUJBTWQ7d0JBQ0Q7OEJBQ007cUNBQ087aUNBQ0o7K0JBQ0Y7NEJBQ0g7MkJBQ0Q7Z0NBQ0s7eUJBQ1A7a0NBQ1M7cUNBQ0c7c0JBQ2Y7NEJBQ007b0NBQ1E7eUJBQ1g7OEJBQ0s7c0JBQ1I7OEJBQ1E7NkJBQ0Q7a0NBQ0s7bUNBQ0M7cUNBQ0U7OEJBQ1A7cUNBQ087MkJBQ1Y7K0JBQ0k7Ozs7OztBQThDdkIsU0FBU0EsZ0JBQWdCLEVBQzlCQyxvQkFBb0IsSUFBSSxFQUN4QkMsY0FBYyxFQUNkQyxjQUFjQyxlQUFlLEVBQzdCQyxHQUFHLEVBQ0U7SUFDTCxTQUFTQyxRQUFRLEVBQUVDLE9BQU8sRUFBd0I7UUFDaEQsTUFBTUosZUFBZUMsbUJBQW1CSSxhQUFJLENBQUNDLE9BQU8sQ0FBQ0MsUUFBUUMsR0FBRyxJQUFJO1FBQ3BFQyxpQkFBUSxDQUFDQyxHQUFHLENBQUMsZUFBZTtRQUU1QkMsSUFBQUEsd0NBQW1CLEVBQUNQLFFBQVFRLE1BQU07UUFDbENDLElBQUFBLGtDQUFnQixFQUFDVCxRQUFRUSxNQUFNO1FBRS9CLE9BQU9FLElBQUFBLCtCQUFxQixFQUFrQjtZQUM1Q0MsTUFBTTtZQUVOLG9CQUFvQjtZQUNwQmpCO1lBQ0FrQixhQUFhLENBQUM7WUFDZGpCLGdCQUFnQkEsa0JBQWtCLENBQUM7WUFDbkNrQixZQUFZQztZQUNaQyxTQUFTRDtZQUNURSxtQkFBbUJGO1lBQ25CRyxVQUFVLENBQUM7WUFDWG5CO1lBQ0FvQixVQUFVLENBQUM7WUFFWCxrQkFBa0I7WUFDbEJDLGtCQUFBQSxrQ0FBZ0I7WUFDaEJDLG1CQUFBQSxvQ0FBaUI7WUFDakJDLFNBQUFBLGdCQUFPO1lBQ1BDLFFBQUFBLGNBQU07WUFDTkMsY0FBQUEsMEJBQVk7WUFDWkMscUJBQUFBLHdDQUFtQjtZQUNuQkMsaUJBQUFBLGdDQUFlO1lBQ2ZDLGVBQUFBLDRCQUFhO1lBQ2JDLGVBQWU7WUFDZkMsWUFBQUEsc0JBQVU7WUFDVkMsV0FBQUEsb0JBQVM7WUFDVEMsZ0JBQUFBLDhCQUFjO1lBQ2RDLFNBQUFBLGdCQUFPO1lBQ1BDLE1BQUFBLFVBQUk7WUFDSkMsWUFBQUEsc0JBQVU7WUFDVkMsb0JBQUFBLHNDQUFrQjtZQUNsQkMsU0FBQUEsZ0JBQU87WUFDUEMsY0FBQUEsMEJBQVk7WUFDWkMsTUFBQUEsVUFBSTtZQUNKQyxjQUFBQSwwQkFBWTtZQUNaMUM7WUFDQUk7WUFDQXVDLGFBQUFBLHdCQUFXO1lBQ1hDLHFCQUFBQSx3Q0FBbUI7WUFDbkJDLGNBQUFBLDBCQUFZO1lBQ1pDLHFCQUFBQSx3Q0FBbUI7WUFDbkJDLFdBQUFBLG9CQUFTO1lBQ1RDLGVBQUFBLDRCQUFhO1FBQ2Y7SUFDRjtJQUVBLE9BQU83QztBQUNUIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"migrateFresh.d.ts","sourceRoot":"","sources":["../src/migrateFresh.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,GAAG,CAAA;AAExC;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA8DvE"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "migrateFresh", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return migrateFresh;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
const _database = require("payload/database");
|
|
12
|
+
const _prompts = /*#__PURE__*/ _interop_require_default(require("prompts"));
|
|
13
|
+
function _interop_require_default(obj) {
|
|
14
|
+
return obj && obj.__esModule ? obj : {
|
|
15
|
+
default: obj
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
async function migrateFresh() {
|
|
19
|
+
const { payload } = this;
|
|
20
|
+
const { confirm: acceptWarning } = await (0, _prompts.default)({
|
|
21
|
+
name: 'confirm',
|
|
22
|
+
initial: false,
|
|
23
|
+
message: `WARNING: This will drop your database and run all migrations. Are you sure you want to proceed?`,
|
|
24
|
+
type: 'confirm'
|
|
25
|
+
}, {
|
|
26
|
+
onCancel: ()=>{
|
|
27
|
+
process.exit(0);
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
if (!acceptWarning) {
|
|
31
|
+
process.exit(0);
|
|
32
|
+
}
|
|
33
|
+
payload.logger.info({
|
|
34
|
+
msg: `Dropping database.`
|
|
35
|
+
});
|
|
36
|
+
await this.connection.dropDatabase();
|
|
37
|
+
const migrationFiles = await (0, _database.readMigrationFiles)({
|
|
38
|
+
payload
|
|
39
|
+
});
|
|
40
|
+
payload.logger.debug({
|
|
41
|
+
msg: `Found ${migrationFiles.length} migration files.`
|
|
42
|
+
});
|
|
43
|
+
let transactionID;
|
|
44
|
+
// Run all migrate up
|
|
45
|
+
for (const migration of migrationFiles){
|
|
46
|
+
payload.logger.info({
|
|
47
|
+
msg: `Migrating: ${migration.name}`
|
|
48
|
+
});
|
|
49
|
+
try {
|
|
50
|
+
const start = Date.now();
|
|
51
|
+
transactionID = await this.beginTransaction();
|
|
52
|
+
await migration.up({
|
|
53
|
+
payload
|
|
54
|
+
});
|
|
55
|
+
await payload.create({
|
|
56
|
+
collection: 'payload-migrations',
|
|
57
|
+
data: {
|
|
58
|
+
name: migration.name,
|
|
59
|
+
batch: 1
|
|
60
|
+
},
|
|
61
|
+
req: {
|
|
62
|
+
transactionID
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
await this.commitTransaction(transactionID);
|
|
66
|
+
payload.logger.info({
|
|
67
|
+
msg: `Migrated: ${migration.name} (${Date.now() - start}ms)`
|
|
68
|
+
});
|
|
69
|
+
} catch (err) {
|
|
70
|
+
await this.rollbackTransaction(transactionID);
|
|
71
|
+
payload.logger.error({
|
|
72
|
+
err,
|
|
73
|
+
msg: `Error running migration ${migration.name}. Rolling back.`
|
|
74
|
+
});
|
|
75
|
+
throw err;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9taWdyYXRlRnJlc2gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJ3BheWxvYWQvdHlwZXMnXG5cbmltcG9ydCB7IHJlYWRNaWdyYXRpb25GaWxlcyB9IGZyb20gJ3BheWxvYWQvZGF0YWJhc2UnXG5pbXBvcnQgcHJvbXB0cyBmcm9tICdwcm9tcHRzJ1xuXG5pbXBvcnQgdHlwZSB7IE1vbmdvb3NlQWRhcHRlciB9IGZyb20gJy4nXG5cbi8qKlxuICogRHJvcCB0aGUgY3VycmVudCBkYXRhYmFzZSBhbmQgcnVuIGFsbCBtaWdyYXRlIHVwIGZ1bmN0aW9uc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWlncmF0ZUZyZXNoKHRoaXM6IE1vbmdvb3NlQWRhcHRlcik6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCB7IHBheWxvYWQgfSA9IHRoaXNcblxuICBjb25zdCB7IGNvbmZpcm06IGFjY2VwdFdhcm5pbmcgfSA9IGF3YWl0IHByb21wdHMoXG4gICAge1xuICAgICAgbmFtZTogJ2NvbmZpcm0nLFxuICAgICAgaW5pdGlhbDogZmFsc2UsXG4gICAgICBtZXNzYWdlOiBgV0FSTklORzogVGhpcyB3aWxsIGRyb3AgeW91ciBkYXRhYmFzZSBhbmQgcnVuIGFsbCBtaWdyYXRpb25zLiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcHJvY2VlZD9gLFxuICAgICAgdHlwZTogJ2NvbmZpcm0nLFxuICAgIH0sXG4gICAge1xuICAgICAgb25DYW5jZWw6ICgpID0+IHtcbiAgICAgICAgcHJvY2Vzcy5leGl0KDApXG4gICAgICB9LFxuICAgIH0sXG4gIClcblxuICBpZiAoIWFjY2VwdFdhcm5pbmcpIHtcbiAgICBwcm9jZXNzLmV4aXQoMClcbiAgfVxuXG4gIHBheWxvYWQubG9nZ2VyLmluZm8oe1xuICAgIG1zZzogYERyb3BwaW5nIGRhdGFiYXNlLmAsXG4gIH0pXG5cbiAgYXdhaXQgdGhpcy5jb25uZWN0aW9uLmRyb3BEYXRhYmFzZSgpXG5cbiAgY29uc3QgbWlncmF0aW9uRmlsZXMgPSBhd2FpdCByZWFkTWlncmF0aW9uRmlsZXMoeyBwYXlsb2FkIH0pXG4gIHBheWxvYWQubG9nZ2VyLmRlYnVnKHtcbiAgICBtc2c6IGBGb3VuZCAke21pZ3JhdGlvbkZpbGVzLmxlbmd0aH0gbWlncmF0aW9uIGZpbGVzLmAsXG4gIH0pXG5cbiAgbGV0IHRyYW5zYWN0aW9uSURcbiAgLy8gUnVuIGFsbCBtaWdyYXRlIHVwXG4gIGZvciAoY29uc3QgbWlncmF0aW9uIG9mIG1pZ3JhdGlvbkZpbGVzKSB7XG4gICAgcGF5bG9hZC5sb2dnZXIuaW5mbyh7IG1zZzogYE1pZ3JhdGluZzogJHttaWdyYXRpb24ubmFtZX1gIH0pXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHN0YXJ0ID0gRGF0ZS5ub3coKVxuICAgICAgdHJhbnNhY3Rpb25JRCA9IGF3YWl0IHRoaXMuYmVnaW5UcmFuc2FjdGlvbigpXG4gICAgICBhd2FpdCBtaWdyYXRpb24udXAoeyBwYXlsb2FkIH0pXG4gICAgICBhd2FpdCBwYXlsb2FkLmNyZWF0ZSh7XG4gICAgICAgIGNvbGxlY3Rpb246ICdwYXlsb2FkLW1pZ3JhdGlvbnMnLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgbmFtZTogbWlncmF0aW9uLm5hbWUsXG4gICAgICAgICAgYmF0Y2g6IDEsXG4gICAgICAgIH0sXG4gICAgICAgIHJlcToge1xuICAgICAgICAgIHRyYW5zYWN0aW9uSUQsXG4gICAgICAgIH0gYXMgUGF5bG9hZFJlcXVlc3QsXG4gICAgICB9KVxuICAgICAgYXdhaXQgdGhpcy5jb21taXRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbklEKVxuXG4gICAgICBwYXlsb2FkLmxvZ2dlci5pbmZvKHsgbXNnOiBgTWlncmF0ZWQ6ICAke21pZ3JhdGlvbi5uYW1lfSAoJHtEYXRlLm5vdygpIC0gc3RhcnR9bXMpYCB9KVxuICAgIH0gY2F0Y2ggKGVycjogdW5rbm93bikge1xuICAgICAgYXdhaXQgdGhpcy5yb2xsYmFja1RyYW5zYWN0aW9uKHRyYW5zYWN0aW9uSUQpXG4gICAgICBwYXlsb2FkLmxvZ2dlci5lcnJvcih7XG4gICAgICAgIGVycixcbiAgICAgICAgbXNnOiBgRXJyb3IgcnVubmluZyBtaWdyYXRpb24gJHttaWdyYXRpb24ubmFtZX0uIFJvbGxpbmcgYmFjay5gLFxuICAgICAgfSlcbiAgICAgIHRocm93IGVyclxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbIm1pZ3JhdGVGcmVzaCIsInBheWxvYWQiLCJjb25maXJtIiwiYWNjZXB0V2FybmluZyIsInByb21wdHMiLCJuYW1lIiwiaW5pdGlhbCIsIm1lc3NhZ2UiLCJ0eXBlIiwib25DYW5jZWwiLCJwcm9jZXNzIiwiZXhpdCIsImxvZ2dlciIsImluZm8iLCJtc2ciLCJjb25uZWN0aW9uIiwiZHJvcERhdGFiYXNlIiwibWlncmF0aW9uRmlsZXMiLCJyZWFkTWlncmF0aW9uRmlsZXMiLCJkZWJ1ZyIsImxlbmd0aCIsInRyYW5zYWN0aW9uSUQiLCJtaWdyYXRpb24iLCJzdGFydCIsIkRhdGUiLCJub3ciLCJiZWdpblRyYW5zYWN0aW9uIiwidXAiLCJjcmVhdGUiLCJjb2xsZWN0aW9uIiwiZGF0YSIsImJhdGNoIiwicmVxIiwiY29tbWl0VHJhbnNhY3Rpb24iLCJlcnIiLCJyb2xsYmFja1RyYW5zYWN0aW9uIiwiZXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7K0JBVXNCQTs7O2VBQUFBOzs7MEJBUmE7Z0VBQ2Y7Ozs7OztBQU9iLGVBQWVBO0lBQ3BCLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEdBQUcsSUFBSTtJQUV4QixNQUFNLEVBQUVDLFNBQVNDLGFBQWEsRUFBRSxHQUFHLE1BQU1DLElBQUFBLGdCQUFPLEVBQzlDO1FBQ0VDLE1BQU07UUFDTkMsU0FBUztRQUNUQyxTQUFTLENBQUMsK0ZBQStGLENBQUM7UUFDMUdDLE1BQU07SUFDUixHQUNBO1FBQ0VDLFVBQVU7WUFDUkMsUUFBUUMsSUFBSSxDQUFDO1FBQ2Y7SUFDRjtJQUdGLElBQUksQ0FBQ1IsZUFBZTtRQUNsQk8sUUFBUUMsSUFBSSxDQUFDO0lBQ2Y7SUFFQVYsUUFBUVcsTUFBTSxDQUFDQyxJQUFJLENBQUM7UUFDbEJDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQztJQUMzQjtJQUVBLE1BQU0sSUFBSSxDQUFDQyxVQUFVLENBQUNDLFlBQVk7SUFFbEMsTUFBTUMsaUJBQWlCLE1BQU1DLElBQUFBLDRCQUFrQixFQUFDO1FBQUVqQjtJQUFRO0lBQzFEQSxRQUFRVyxNQUFNLENBQUNPLEtBQUssQ0FBQztRQUNuQkwsS0FBSyxDQUFDLE1BQU0sRUFBRUcsZUFBZUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDO0lBQ3hEO0lBRUEsSUFBSUM7SUFDSixxQkFBcUI7SUFDckIsS0FBSyxNQUFNQyxhQUFhTCxlQUFnQjtRQUN0Q2hCLFFBQVFXLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDO1lBQUVDLEtBQUssQ0FBQyxXQUFXLEVBQUVRLFVBQVVqQixJQUFJLENBQUMsQ0FBQztRQUFDO1FBQzFELElBQUk7WUFDRixNQUFNa0IsUUFBUUMsS0FBS0MsR0FBRztZQUN0QkosZ0JBQWdCLE1BQU0sSUFBSSxDQUFDSyxnQkFBZ0I7WUFDM0MsTUFBTUosVUFBVUssRUFBRSxDQUFDO2dCQUFFMUI7WUFBUTtZQUM3QixNQUFNQSxRQUFRMkIsTUFBTSxDQUFDO2dCQUNuQkMsWUFBWTtnQkFDWkMsTUFBTTtvQkFDSnpCLE1BQU1pQixVQUFVakIsSUFBSTtvQkFDcEIwQixPQUFPO2dCQUNUO2dCQUNBQyxLQUFLO29CQUNIWDtnQkFDRjtZQUNGO1lBQ0EsTUFBTSxJQUFJLENBQUNZLGlCQUFpQixDQUFDWjtZQUU3QnBCLFFBQVFXLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDO2dCQUFFQyxLQUFLLENBQUMsV0FBVyxFQUFFUSxVQUFVakIsSUFBSSxDQUFDLEVBQUUsRUFBRW1CLEtBQUtDLEdBQUcsS0FBS0YsTUFBTSxHQUFHLENBQUM7WUFBQztRQUN0RixFQUFFLE9BQU9XLEtBQWM7WUFDckIsTUFBTSxJQUFJLENBQUNDLG1CQUFtQixDQUFDZDtZQUMvQnBCLFFBQVFXLE1BQU0sQ0FBQ3dCLEtBQUssQ0FBQztnQkFDbkJGO2dCQUNBcEIsS0FBSyxDQUFDLHdCQUF3QixFQUFFUSxVQUFVakIsSUFBSSxDQUFDLGVBQWUsQ0FBQztZQUNqRTtZQUNBLE1BQU02QjtRQUNSO0lBQ0Y7QUFDRiJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/db-mongodb",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.7",
|
|
4
4
|
"description": "The officially supported MongoDB database adapter for Payload",
|
|
5
5
|
"repository": "https://github.com/payloadcms/payload",
|
|
6
6
|
"license": "MIT",
|
|
@@ -19,20 +19,22 @@
|
|
|
19
19
|
"mongoose": "6.11.4",
|
|
20
20
|
"mongoose-aggregate-paginate-v2": "1.0.6",
|
|
21
21
|
"mongoose-paginate-v2": "1.7.22",
|
|
22
|
+
"prompts": "2.4.2",
|
|
22
23
|
"uuid": "9.0.0"
|
|
23
24
|
},
|
|
24
25
|
"devDependencies": {
|
|
25
26
|
"@types/mongoose-aggregate-paginate-v2": "1.0.9",
|
|
26
27
|
"mongodb-memory-server": "8.13.0",
|
|
27
28
|
"@payloadcms/eslint-config": "0.0.1",
|
|
28
|
-
"payload": "2.0.0-beta.
|
|
29
|
+
"payload": "2.0.0-beta.30"
|
|
29
30
|
},
|
|
30
31
|
"publishConfig": {
|
|
31
32
|
"registry": "https://registry.npmjs.org/"
|
|
32
33
|
},
|
|
33
34
|
"files": [
|
|
34
35
|
"dist",
|
|
35
|
-
"mock.js"
|
|
36
|
+
"mock.js",
|
|
37
|
+
"predefinedMigrations"
|
|
36
38
|
],
|
|
37
39
|
"scripts": {
|
|
38
40
|
"build": "pnpm build:swc && pnpm build:types",
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
module.exports.up = ` async function migrateCollectionDocs(slug: string, docsAtATime = 100) {
|
|
2
|
+
const VersionsModel = payload.db.versions[slug]
|
|
3
|
+
const remainingDocs = await VersionsModel.aggregate(
|
|
4
|
+
[
|
|
5
|
+
// Sort so that newest are first
|
|
6
|
+
{
|
|
7
|
+
$sort: {
|
|
8
|
+
updatedAt: -1,
|
|
9
|
+
},
|
|
10
|
+
},
|
|
11
|
+
// Group by parent ID
|
|
12
|
+
// take the $first of each
|
|
13
|
+
{
|
|
14
|
+
$group: {
|
|
15
|
+
_id: '$parent',
|
|
16
|
+
_versionID: { $first: '$_id' },
|
|
17
|
+
createdAt: { $first: '$createdAt' },
|
|
18
|
+
latest: { $first: '$latest' },
|
|
19
|
+
updatedAt: { $first: '$updatedAt' },
|
|
20
|
+
version: { $first: '$version' },
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
$match: {
|
|
25
|
+
latest: { $eq: null },
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
$limit: docsAtATime,
|
|
30
|
+
},
|
|
31
|
+
],
|
|
32
|
+
{
|
|
33
|
+
allowDiskUse: true,
|
|
34
|
+
},
|
|
35
|
+
).exec()
|
|
36
|
+
|
|
37
|
+
if (!remainingDocs || remainingDocs.length === 0) {
|
|
38
|
+
const newVersions = await VersionsModel.find({
|
|
39
|
+
latest: {
|
|
40
|
+
$eq: true,
|
|
41
|
+
},
|
|
42
|
+
})
|
|
43
|
+
|
|
44
|
+
if (newVersions?.length) {
|
|
45
|
+
payload.logger.info(
|
|
46
|
+
\`Migrated \${newVersions.length} documents in the "\${slug}" versions collection.\`,
|
|
47
|
+
)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
return
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const remainingDocIds = remainingDocs.map((doc) => doc._versionID)
|
|
54
|
+
|
|
55
|
+
await VersionsModel.updateMany(
|
|
56
|
+
{
|
|
57
|
+
_id: {
|
|
58
|
+
$in: remainingDocIds,
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
latest: true,
|
|
63
|
+
},
|
|
64
|
+
)
|
|
65
|
+
|
|
66
|
+
await migrateCollectionDocs(slug)
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
// For each collection
|
|
70
|
+
await Promise.all(
|
|
71
|
+
payload.config.collections.map(async ({ slug, versions }) => {
|
|
72
|
+
if (versions) {
|
|
73
|
+
return migrateCollectionDocs(slug)
|
|
74
|
+
}
|
|
75
|
+
}),
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
// For each global
|
|
79
|
+
await Promise.all(
|
|
80
|
+
payload.config.globals.map(async ({ slug, versions }) => {
|
|
81
|
+
if (versions) {
|
|
82
|
+
const VersionsModel = payload.db.versions[slug]
|
|
83
|
+
|
|
84
|
+
await VersionsModel.findOneAndUpdate(
|
|
85
|
+
{},
|
|
86
|
+
{ latest: true },
|
|
87
|
+
{
|
|
88
|
+
sort: { updatedAt: -1 },
|
|
89
|
+
},
|
|
90
|
+
).exec()
|
|
91
|
+
|
|
92
|
+
payload.logger.info(\`Migrated the "\${slug}" global.\`)
|
|
93
|
+
}
|
|
94
|
+
}),
|
|
95
|
+
)
|
|
96
|
+
`
|
package/src/index.ts
CHANGED
|
@@ -3,8 +3,8 @@ import type { Payload } from 'payload'
|
|
|
3
3
|
import type { BaseDatabaseAdapter } from 'payload/database'
|
|
4
4
|
|
|
5
5
|
import mongoose from 'mongoose'
|
|
6
|
+
import path from 'path'
|
|
6
7
|
import { createDatabaseAdapter } from 'payload/database'
|
|
7
|
-
import { createMigration } from 'payload/database'
|
|
8
8
|
|
|
9
9
|
export type { MigrateDownArgs, MigrateUpArgs } from './types'
|
|
10
10
|
|
|
@@ -14,6 +14,7 @@ import { connect } from './connect'
|
|
|
14
14
|
import { create } from './create'
|
|
15
15
|
import { createGlobal } from './createGlobal'
|
|
16
16
|
import { createGlobalVersion } from './createGlobalVersion'
|
|
17
|
+
import { createMigration } from './createMigration'
|
|
17
18
|
import { createVersion } from './createVersion'
|
|
18
19
|
import { deleteMany } from './deleteMany'
|
|
19
20
|
import { deleteOne } from './deleteOne'
|
|
@@ -27,6 +28,7 @@ import { findGlobalVersions } from './findGlobalVersions'
|
|
|
27
28
|
import { findOne } from './findOne'
|
|
28
29
|
import { findVersions } from './findVersions'
|
|
29
30
|
import { init } from './init'
|
|
31
|
+
import { migrateFresh } from './migrateFresh'
|
|
30
32
|
import { queryDrafts } from './queryDrafts'
|
|
31
33
|
import { beginTransaction } from './transactions/beginTransaction'
|
|
32
34
|
import { commitTransaction } from './transactions/commitTransaction'
|
|
@@ -83,23 +85,34 @@ declare module 'payload' {
|
|
|
83
85
|
export function mongooseAdapter({
|
|
84
86
|
autoPluralization = true,
|
|
85
87
|
connectOptions,
|
|
86
|
-
migrationDir,
|
|
88
|
+
migrationDir: migrationDirArg,
|
|
87
89
|
url,
|
|
88
90
|
}: Args): MongooseAdapterResult {
|
|
89
91
|
function adapter({ payload }: { payload: Payload }) {
|
|
92
|
+
const migrationDir = migrationDirArg || path.resolve(process.cwd(), 'src/migrations')
|
|
90
93
|
mongoose.set('strictQuery', false)
|
|
91
94
|
|
|
92
95
|
extendWebpackConfig(payload.config)
|
|
93
96
|
extendViteConfig(payload.config)
|
|
94
97
|
|
|
95
98
|
return createDatabaseAdapter<MongooseAdapter>({
|
|
99
|
+
name: 'mongoose',
|
|
100
|
+
|
|
101
|
+
// Mongoose-specific
|
|
96
102
|
autoPluralization,
|
|
97
|
-
beginTransaction,
|
|
98
103
|
collections: {},
|
|
99
|
-
commitTransaction,
|
|
100
|
-
connect,
|
|
101
104
|
connectOptions: connectOptions || {},
|
|
102
105
|
connection: undefined,
|
|
106
|
+
globals: undefined,
|
|
107
|
+
mongoMemoryServer: undefined,
|
|
108
|
+
sessions: {},
|
|
109
|
+
url,
|
|
110
|
+
versions: {},
|
|
111
|
+
|
|
112
|
+
// DatabaseAdapter
|
|
113
|
+
beginTransaction,
|
|
114
|
+
commitTransaction,
|
|
115
|
+
connect,
|
|
103
116
|
create,
|
|
104
117
|
createGlobal,
|
|
105
118
|
createGlobalVersion,
|
|
@@ -115,21 +128,16 @@ export function mongooseAdapter({
|
|
|
115
128
|
findGlobalVersions,
|
|
116
129
|
findOne,
|
|
117
130
|
findVersions,
|
|
118
|
-
globals: undefined,
|
|
119
131
|
init,
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
mongoMemoryServer: undefined,
|
|
132
|
+
migrateFresh,
|
|
133
|
+
migrationDir,
|
|
123
134
|
payload,
|
|
124
135
|
queryDrafts,
|
|
125
136
|
rollbackTransaction,
|
|
126
|
-
sessions: {},
|
|
127
137
|
updateGlobal,
|
|
128
138
|
updateGlobalVersion,
|
|
129
139
|
updateOne,
|
|
130
140
|
updateVersion,
|
|
131
|
-
url,
|
|
132
|
-
versions: {},
|
|
133
141
|
})
|
|
134
142
|
}
|
|
135
143
|
|