- 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>
30 lines
601 B
JavaScript
30 lines
601 B
JavaScript
'use strict';
|
|
|
|
const isBsonType = require('../helpers/isBsonType');
|
|
const ObjectId = require('../types/objectid');
|
|
|
|
module.exports = function castObjectId(value) {
|
|
if (value == null) {
|
|
return value;
|
|
}
|
|
|
|
if (isBsonType(value, 'ObjectId')) {
|
|
return value;
|
|
}
|
|
|
|
if (value._id) {
|
|
if (isBsonType(value._id, 'ObjectId')) {
|
|
return value._id;
|
|
}
|
|
if (value._id.toString instanceof Function) {
|
|
return new ObjectId(value._id.toString());
|
|
}
|
|
}
|
|
|
|
if (value.toString instanceof Function) {
|
|
return new ObjectId(value.toString());
|
|
}
|
|
|
|
return new ObjectId(value);
|
|
};
|