deno.land / x / mongoose@6.7.5 / lib / helpers / timestamps / setDocumentTimestamps.js

setDocumentTimestamps.js
نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
'use strict';
module.exports = function setDocumentTimestamps(doc, timestampOption, currentTime, createdAt, updatedAt) { const skipUpdatedAt = timestampOption != null && timestampOption.updatedAt === false; const skipCreatedAt = timestampOption != null && timestampOption.createdAt === false;
const defaultTimestamp = currentTime != null ? currentTime() : doc.ownerDocument().constructor.base.now();
if (!skipCreatedAt && (doc.isNew || doc.$isSubdocument) && createdAt && !doc.$__getValue(createdAt) && doc.$__isSelected(createdAt)) { doc.$set(createdAt, defaultTimestamp, undefined, { overwriteImmutable: true }); }
if (!skipUpdatedAt && updatedAt && (doc.isNew || doc.$isModified())) { let ts = defaultTimestamp; if (doc.isNew && createdAt != null) { ts = doc.$__getValue(createdAt); } doc.$set(updatedAt, ts); }};
mongoose

Version Info

Tagged at
a year ago