UNPKG

payload

Version:

Node, React and MongoDB Headless CMS and Application Framework

42 lines (41 loc) 4.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "getLatestCollectionVersion", { enumerable: true, get: function() { return getLatestCollectionVersion; } }); const _types = require("../types"); const getLatestCollectionVersion = async ({ id, config, payload, query, req })=>{ let latestVersion; if (config.versions?.drafts) { const { docs } = await payload.db.findVersions({ collection: config.slug, req, sort: '-updatedAt', where: { parent: { equals: id } } }); [latestVersion] = docs; } const doc = await payload.db.findOne({ ...query, req }); if (!latestVersion || (0, _types.docHasTimestamps)(doc) && latestVersion.updatedAt < doc.updatedAt) { return doc; } return { ...latestVersion.version, id, createdAt: latestVersion.createdAt, updatedAt: latestVersion.updatedAt }; }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJzaW9ucy9nZXRMYXRlc3RDb2xsZWN0aW9uVmVyc2lvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNhbml0aXplZENvbGxlY3Rpb25Db25maWcsIFR5cGVXaXRoSUQgfSBmcm9tICcuLi9jb2xsZWN0aW9ucy9jb25maWcvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IEZpbmRPbmVBcmdzIH0gZnJvbSAnLi4vZGF0YWJhc2UvdHlwZXMnXG5pbXBvcnQgdHlwZSB7IFBheWxvYWQgfSBmcm9tICcuLi9wYXlsb2FkJ1xuaW1wb3J0IHR5cGUgeyBQYXlsb2FkUmVxdWVzdCB9IGZyb20gJy4uL3R5cGVzJ1xuaW1wb3J0IHR5cGUgeyBUeXBlV2l0aFZlcnNpb24gfSBmcm9tICcuL3R5cGVzJ1xuXG5pbXBvcnQgeyBkb2NIYXNUaW1lc3RhbXBzIH0gZnJvbSAnLi4vdHlwZXMnXG5cbnR5cGUgQXJncyA9IHtcbiAgY29uZmlnOiBTYW5pdGl6ZWRDb2xsZWN0aW9uQ29uZmlnXG4gIGlkOiBudW1iZXIgfCBzdHJpbmdcbiAgcGF5bG9hZDogUGF5bG9hZFxuICBxdWVyeTogRmluZE9uZUFyZ3NcbiAgcmVxPzogUGF5bG9hZFJlcXVlc3Rcbn1cblxuZXhwb3J0IGNvbnN0IGdldExhdGVzdENvbGxlY3Rpb25WZXJzaW9uID0gYXN5bmMgPFQgZXh0ZW5kcyBUeXBlV2l0aElEID0gYW55Pih7XG4gIGlkLFxuICBjb25maWcsXG4gIHBheWxvYWQsXG4gIHF1ZXJ5LFxuICByZXEsXG59OiBBcmdzKTogUHJvbWlzZTxUPiA9PiB7XG4gIGxldCBsYXRlc3RWZXJzaW9uOiBUeXBlV2l0aFZlcnNpb248VD5cblxuICBpZiAoY29uZmlnLnZlcnNpb25zPy5kcmFmdHMpIHtcbiAgICBjb25zdCB7IGRvY3MgfSA9IGF3YWl0IHBheWxvYWQuZGIuZmluZFZlcnNpb25zPFQ+KHtcbiAgICAgIGNvbGxlY3Rpb246IGNvbmZpZy5zbHVnLFxuICAgICAgcmVxLFxuICAgICAgc29ydDogJy11cGRhdGVkQXQnLFxuICAgICAgd2hlcmU6IHsgcGFyZW50OiB7IGVxdWFsczogaWQgfSB9LFxuICAgIH0pXG4gICAgO1tsYXRlc3RWZXJzaW9uXSA9IGRvY3NcbiAgfVxuXG4gIGNvbnN0IGRvYyA9IGF3YWl0IHBheWxvYWQuZGIuZmluZE9uZTxUPih7IC4uLnF1ZXJ5LCByZXEgfSlcblxuICBpZiAoIWxhdGVzdFZlcnNpb24gfHwgKGRvY0hhc1RpbWVzdGFtcHMoZG9jKSAmJiBsYXRlc3RWZXJzaW9uLnVwZGF0ZWRBdCA8IGRvYy51cGRhdGVkQXQpKSB7XG4gICAgcmV0dXJuIGRvY1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICAuLi5sYXRlc3RWZXJzaW9uLnZlcnNpb24sXG4gICAgaWQsXG4gICAgY3JlYXRlZEF0OiBsYXRlc3RWZXJzaW9uLmNyZWF0ZWRBdCxcbiAgICB1cGRhdGVkQXQ6IGxhdGVzdFZlcnNpb24udXBkYXRlZEF0LFxuICB9XG59XG4iXSwibmFtZXMiOlsiZ2V0TGF0ZXN0Q29sbGVjdGlvblZlcnNpb24iLCJpZCIsImNvbmZpZyIsInBheWxvYWQiLCJxdWVyeSIsInJlcSIsImxhdGVzdFZlcnNpb24iLCJ2ZXJzaW9ucyIsImRyYWZ0cyIsImRvY3MiLCJkYiIsImZpbmRWZXJzaW9ucyIsImNvbGxlY3Rpb24iLCJzbHVnIiwic29ydCIsIndoZXJlIiwicGFyZW50IiwiZXF1YWxzIiwiZG9jIiwiZmluZE9uZSIsImRvY0hhc1RpbWVzdGFtcHMiLCJ1cGRhdGVkQXQiLCJ2ZXJzaW9uIiwiY3JlYXRlZEF0Il0sIm1hcHBpbmdzIjoiOzs7OytCQWdCYUE7OztlQUFBQTs7O3VCQVZvQjtBQVUxQixNQUFNQSw2QkFBNkIsT0FBbUMsRUFDM0VDLEVBQUUsRUFDRkMsTUFBTSxFQUNOQyxPQUFPLEVBQ1BDLEtBQUssRUFDTEMsR0FBRyxFQUNFO0lBQ0wsSUFBSUM7SUFFSixJQUFJSixPQUFPSyxRQUFRLEVBQUVDLFFBQVE7UUFDM0IsTUFBTSxFQUFFQyxJQUFJLEVBQUUsR0FBRyxNQUFNTixRQUFRTyxFQUFFLENBQUNDLFlBQVksQ0FBSTtZQUNoREMsWUFBWVYsT0FBT1csSUFBSTtZQUN2QlI7WUFDQVMsTUFBTTtZQUNOQyxPQUFPO2dCQUFFQyxRQUFRO29CQUFFQyxRQUFRaEI7Z0JBQUc7WUFBRTtRQUNsQztRQUNDLENBQUNLLGNBQWMsR0FBR0c7SUFDckI7SUFFQSxNQUFNUyxNQUFNLE1BQU1mLFFBQVFPLEVBQUUsQ0FBQ1MsT0FBTyxDQUFJO1FBQUUsR0FBR2YsS0FBSztRQUFFQztJQUFJO0lBRXhELElBQUksQ0FBQ0MsaUJBQWtCYyxJQUFBQSx1QkFBZ0IsRUFBQ0YsUUFBUVosY0FBY2UsU0FBUyxHQUFHSCxJQUFJRyxTQUFTLEVBQUc7UUFDeEYsT0FBT0g7SUFDVDtJQUVBLE9BQU87UUFDTCxHQUFHWixjQUFjZ0IsT0FBTztRQUN4QnJCO1FBQ0FzQixXQUFXakIsY0FBY2lCLFNBQVM7UUFDbENGLFdBQVdmLGNBQWNlLFNBQVM7SUFDcEM7QUFDRiJ9