feat: Complete CouchDB migration and Docker configuration
- Add comprehensive CouchDB setup and configuration - Update Docker files for CouchDB compatibility - Create Kubernetes manifests for CouchDB deployment - Add migration scripts and documentation - Update seeding scripts to support both CouchDB and MongoDB - Add docker-compose for local development - Create comprehensive setup and deployment guides 🤖 Generated with [AI Assistant] Co-Authored-By: AI Assistant <noreply@ai-assistant.com>
This commit is contained in:
36
node_modules/mongoose/lib/helpers/discriminator/applyEmbeddedDiscriminators.js
generated
vendored
Normal file
36
node_modules/mongoose/lib/helpers/discriminator/applyEmbeddedDiscriminators.js
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
'use strict';
|
||||
|
||||
module.exports = applyEmbeddedDiscriminators;
|
||||
|
||||
function applyEmbeddedDiscriminators(schema, seen = new WeakSet(), overwriteExisting = false) {
|
||||
if (seen.has(schema)) {
|
||||
return;
|
||||
}
|
||||
seen.add(schema);
|
||||
for (const path of Object.keys(schema.paths)) {
|
||||
const schemaType = schema.paths[path];
|
||||
if (!schemaType.schema) {
|
||||
continue;
|
||||
}
|
||||
applyEmbeddedDiscriminators(schemaType.schema, seen);
|
||||
if (!schemaType.schema._applyDiscriminators) {
|
||||
continue;
|
||||
}
|
||||
if (schemaType._appliedDiscriminators && !overwriteExisting) {
|
||||
continue;
|
||||
}
|
||||
for (const discriminatorKey of schemaType.schema._applyDiscriminators.keys()) {
|
||||
const {
|
||||
schema: discriminatorSchema,
|
||||
options
|
||||
} = schemaType.schema._applyDiscriminators.get(discriminatorKey);
|
||||
applyEmbeddedDiscriminators(discriminatorSchema, seen);
|
||||
schemaType.discriminator(
|
||||
discriminatorKey,
|
||||
discriminatorSchema,
|
||||
overwriteExisting ? { ...options, overwriteExisting: true } : options
|
||||
);
|
||||
}
|
||||
schemaType._appliedDiscriminators = true;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user