@depup/payload 3.82.1-depup.0 → 3.86.0-depup.5
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 +15 -13
- package/bin.js +11 -0
- package/changes.json +25 -17
- package/dist/admin/fields/Row.d.ts +2 -2
- package/dist/admin/fields/Row.d.ts.map +1 -1
- package/dist/admin/fields/Row.js.map +1 -1
- package/dist/admin/forms/Field.d.ts +1 -3
- package/dist/admin/forms/Field.d.ts.map +1 -1
- package/dist/admin/forms/Field.js.map +1 -1
- package/dist/admin/views/index.d.ts +5 -1
- package/dist/admin/views/index.d.ts.map +1 -1
- package/dist/admin/views/index.js.map +1 -1
- package/dist/bin/generateImportMap/index.d.ts.map +1 -1
- package/dist/bin/generateImportMap/index.js +1 -0
- package/dist/bin/generateImportMap/index.js.map +1 -1
- package/dist/bin/generateImportMap/iterateCollections.d.ts.map +1 -1
- package/dist/bin/generateImportMap/iterateCollections.js +11 -0
- package/dist/bin/generateImportMap/iterateCollections.js.map +1 -1
- package/dist/bin/index.d.ts.map +1 -1
- package/dist/bin/index.js +3 -1
- package/dist/bin/index.js.map +1 -1
- package/dist/collections/config/sanitize.d.ts +5 -0
- package/dist/collections/config/sanitize.d.ts.map +1 -1
- package/dist/collections/config/sanitize.js +21 -0
- package/dist/collections/config/sanitize.js.map +1 -1
- package/dist/collections/config/sanitize.spec.js +120 -0
- package/dist/collections/config/sanitize.spec.js.map +1 -0
- package/dist/collections/config/types.d.ts +24 -1
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js.map +1 -1
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +1 -0
- package/dist/collections/operations/create.js.map +1 -1
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +3 -0
- package/dist/collections/operations/delete.js.map +1 -1
- package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/restoreVersion.js +1 -0
- package/dist/collections/operations/restoreVersion.js.map +1 -1
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +7 -2
- package/dist/collections/operations/update.js.map +1 -1
- package/dist/collections/operations/utilities/copyDataWithFreshRowIDs.d.ts +9 -0
- package/dist/collections/operations/utilities/copyDataWithFreshRowIDs.d.ts.map +1 -0
- package/dist/collections/operations/utilities/copyDataWithFreshRowIDs.js +170 -0
- package/dist/collections/operations/utilities/copyDataWithFreshRowIDs.js.map +1 -0
- package/dist/collections/operations/utilities/update.d.ts.map +1 -1
- package/dist/collections/operations/utilities/update.js +16 -8
- package/dist/collections/operations/utilities/update.js.map +1 -1
- package/dist/config/build.js +5 -4
- package/dist/config/build.js.map +1 -1
- package/dist/config/definePlugin.d.ts +41 -0
- package/dist/config/definePlugin.d.ts.map +1 -0
- package/dist/config/definePlugin.js +34 -0
- package/dist/config/definePlugin.js.map +1 -0
- package/dist/config/orderable/index.d.ts.map +1 -1
- package/dist/config/orderable/index.js +23 -0
- package/dist/config/orderable/index.js.map +1 -1
- package/dist/config/types.d.ts +30 -2
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/email/normalizeSendEmailOptions.d.ts +13 -0
- package/dist/email/normalizeSendEmailOptions.d.ts.map +1 -0
- package/dist/email/normalizeSendEmailOptions.js +20 -0
- package/dist/email/normalizeSendEmailOptions.js.map +1 -0
- package/dist/email/types.d.ts +7 -2
- package/dist/email/types.d.ts.map +1 -1
- package/dist/email/types.js.map +1 -1
- package/dist/errors/APIError.d.ts +2 -1
- package/dist/errors/APIError.d.ts.map +1 -1
- package/dist/errors/APIError.js +1 -3
- package/dist/errors/APIError.js.map +1 -1
- package/dist/errors/ValidationError.d.ts +3 -1
- package/dist/errors/ValidationError.d.ts.map +1 -1
- package/dist/errors/ValidationError.js +1 -3
- package/dist/errors/ValidationError.js.map +1 -1
- package/dist/fields/config/sanitize.d.ts.map +1 -1
- package/dist/fields/config/sanitize.js +3 -0
- package/dist/fields/config/sanitize.js.map +1 -1
- package/dist/fields/config/sanitize.spec.js +66 -0
- package/dist/fields/config/sanitize.spec.js.map +1 -1
- package/dist/fields/config/types.d.ts +3 -2
- package/dist/fields/config/types.d.ts.map +1 -1
- package/dist/fields/config/types.js.map +1 -1
- package/dist/fields/hooks/beforeValidate/promise.js +2 -2
- package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
- package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
- package/dist/globals/operations/restoreVersion.js +1 -0
- package/dist/globals/operations/restoreVersion.js.map +1 -1
- package/dist/index.bundled.d.ts +484 -115
- package/dist/index.d.ts +19 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -2
- package/dist/index.js.map +1 -1
- package/dist/queues/config/collection.d.ts.map +1 -1
- package/dist/queues/config/collection.js +0 -1
- package/dist/queues/config/collection.js.map +1 -1
- package/dist/queues/endpoints/run.d.ts.map +1 -1
- package/dist/queues/endpoints/run.js +0 -3
- package/dist/queues/endpoints/run.js.map +1 -1
- package/dist/queues/errors/calculateBackoffWaitUntil.d.ts.map +1 -1
- package/dist/queues/errors/calculateBackoffWaitUntil.js +5 -13
- package/dist/queues/errors/calculateBackoffWaitUntil.js.map +1 -1
- package/dist/queues/errors/handleWorkflowError.d.ts.map +1 -1
- package/dist/queues/errors/handleWorkflowError.js +9 -1
- package/dist/queues/errors/handleWorkflowError.js.map +1 -1
- package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.d.ts.map +1 -1
- package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.js +2 -1
- package/dist/queues/operations/handleSchedules/countRunnableOrActiveJobsForQueue.js.map +1 -1
- package/dist/queues/operations/handleSchedules/defaultAfterSchedule.js +1 -1
- package/dist/queues/operations/handleSchedules/defaultAfterSchedule.js.map +1 -1
- package/dist/queues/operations/handleSchedules/index.d.ts.map +1 -1
- package/dist/queues/operations/handleSchedules/index.js +4 -1
- package/dist/queues/operations/handleSchedules/index.js.map +1 -1
- package/dist/queues/operations/runJobs/index.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/index.js +44 -26
- package/dist/queues/operations/runJobs/index.js.map +1 -1
- package/dist/queues/operations/runJobs/runJSONJob/index.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/runJSONJob/index.js +1 -0
- package/dist/queues/operations/runJobs/runJSONJob/index.js.map +1 -1
- package/dist/queues/utilities/updateJob.d.ts.map +1 -1
- package/dist/queues/utilities/updateJob.js +2 -1
- package/dist/queues/utilities/updateJob.js.map +1 -1
- package/dist/types/index.d.ts +4 -6
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/uploads/checkFileAccess.d.ts.map +1 -1
- package/dist/uploads/checkFileAccess.js +30 -9
- package/dist/uploads/checkFileAccess.js.map +1 -1
- package/dist/uploads/checkFileRestrictions.d.ts.map +1 -1
- package/dist/uploads/checkFileRestrictions.js +48 -8
- package/dist/uploads/checkFileRestrictions.js.map +1 -1
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.d.ts.map +1 -1
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.js +2 -1
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.spec.js +29 -0
- package/dist/uploads/fetchAPI-multipart/isEligibleRequest.spec.js.map +1 -0
- package/dist/uploads/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
- package/dist/uploads/fetchAPI-multipart/processMultipart.js +11 -2
- package/dist/uploads/fetchAPI-multipart/processMultipart.js.map +1 -1
- package/dist/uploads/generateFileData.d.ts +2 -1
- package/dist/uploads/generateFileData.d.ts.map +1 -1
- package/dist/uploads/generateFileData.js +5 -2
- package/dist/uploads/generateFileData.js.map +1 -1
- package/dist/uploads/getSafeFilename.d.ts +9 -4
- package/dist/uploads/getSafeFilename.d.ts.map +1 -1
- package/dist/uploads/getSafeFilename.js +5 -5
- package/dist/uploads/getSafeFilename.js.map +1 -1
- package/dist/uploads/types.d.ts +4 -0
- package/dist/uploads/types.d.ts.map +1 -1
- package/dist/uploads/types.js.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.js +16 -3
- package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.spec.js +41 -0
- package/dist/utilities/addDataAndFileToRequest.spec.js.map +1 -0
- package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
- package/dist/utilities/createPayloadRequest.js +1 -0
- package/dist/utilities/createPayloadRequest.js.map +1 -1
- package/dist/utilities/filterDataToSelectedLocales.d.ts.map +1 -1
- package/dist/utilities/filterDataToSelectedLocales.js +74 -31
- package/dist/utilities/filterDataToSelectedLocales.js.map +1 -1
- package/dist/utilities/filterDataToSelectedLocales.spec.js +337 -0
- package/dist/utilities/filterDataToSelectedLocales.spec.js.map +1 -1
- package/dist/utilities/formatErrors.d.ts +1 -1
- package/dist/utilities/formatErrors.d.ts.map +1 -1
- package/dist/utilities/formatErrors.js +4 -7
- package/dist/utilities/formatErrors.js.map +1 -1
- package/dist/utilities/formatErrors.spec.js +101 -0
- package/dist/utilities/formatErrors.spec.js.map +1 -0
- package/dist/utilities/isURLAllowed.d.ts.map +1 -1
- package/dist/utilities/isURLAllowed.js +9 -3
- package/dist/utilities/isURLAllowed.js.map +1 -1
- package/dist/utilities/isURLAllowed.spec.js +78 -0
- package/dist/utilities/isURLAllowed.spec.js.map +1 -0
- package/dist/utilities/parseParams/index.d.ts +1 -1
- package/dist/utilities/parseParams/index.d.ts.map +1 -1
- package/dist/utilities/parseParams/index.js +3 -0
- package/dist/utilities/parseParams/index.js.map +1 -1
- package/dist/utilities/parseParams/index.spec.js +24 -0
- package/dist/utilities/parseParams/index.spec.js.map +1 -1
- package/dist/utilities/profiling.d.ts +12 -0
- package/dist/utilities/profiling.d.ts.map +1 -0
- package/dist/utilities/profiling.js +56 -0
- package/dist/utilities/profiling.js.map +1 -0
- package/dist/utilities/profiling.spec.js +53 -0
- package/dist/utilities/profiling.spec.js.map +1 -0
- package/dist/versions/saveVersion.js +1 -1
- package/dist/versions/saveVersion.js.map +1 -1
- package/dist/versions/schedule/job.d.ts.map +1 -1
- package/dist/versions/schedule/job.js +4 -1
- package/dist/versions/schedule/job.js.map +1 -1
- package/dist/versions/updateLatestVersion.d.ts.map +1 -1
- package/dist/versions/updateLatestVersion.js +55 -8
- package/dist/versions/updateLatestVersion.js.map +1 -1
- package/package.json +42 -35
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/globals/operations/restoreVersion.ts"],"sourcesContent":["import type { PayloadRequest, PopulateType } from '../../types/index.js'\nimport type { TypeWithVersion } from '../../versions/types.js'\nimport type { SanitizedGlobalConfig } from '../config/types.js'\n\nimport { executeAccess } from '../../auth/executeAccess.js'\nimport { NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\n\nexport type Arguments = {\n depth?: number\n draft?: boolean\n globalConfig: SanitizedGlobalConfig\n id: number | string\n overrideAccess?: boolean\n populate?: PopulateType\n req?: PayloadRequest\n showHiddenFields?: boolean\n}\n\nexport const restoreVersionOperation = async <T extends TypeWithVersion<T> = any>(\n args: Arguments,\n): Promise<T> => {\n const { id, depth, draft, globalConfig, overrideAccess, populate, showHiddenFields } = args\n const req = args.req!\n const { fallbackLocale, locale, payload } = req\n\n try {\n const shouldCommit = await initTransaction(req)\n\n // /////////////////////////////////////\n // beforeOperation - Global\n // /////////////////////////////////////\n\n if (globalConfig.hooks?.beforeOperation?.length) {\n for (const hook of globalConfig.hooks.beforeOperation) {\n args =\n (await hook({\n args,\n context: req.context,\n global: globalConfig,\n operation: 'restoreVersion',\n overrideAccess,\n req,\n })) || args\n }\n }\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ req }, globalConfig.access.update)\n }\n\n // /////////////////////////////////////\n // Retrieve original raw version\n // /////////////////////////////////////\n\n const { docs: versionDocs } = await payload.db.findGlobalVersions<any>({\n global: globalConfig.slug,\n limit: 1,\n req,\n where: { id: { equals: id } },\n })\n\n if (!versionDocs || versionDocs.length === 0) {\n throw new NotFound(req.t)\n }\n\n const rawVersion = versionDocs[0]!\n\n // Patch globalType onto version doc\n rawVersion.version.globalType = globalConfig.slug\n\n // Overwrite draft status if draft is true\n\n if (draft) {\n rawVersion.version._status = 'draft'\n }\n // /////////////////////////////////////\n // fetch previousDoc\n // /////////////////////////////////////\n\n const previousDoc = await payload.findGlobal({\n slug: globalConfig.slug,\n depth,\n req,\n })\n\n // /////////////////////////////////////\n // Update global\n // /////////////////////////////////////\n\n const global = await payload.db.findGlobal({\n slug: globalConfig.slug,\n req,\n })\n\n let result = rawVersion.version\n\n if (global) {\n // Ensure updatedAt date is always updated\n result.updatedAt = new Date().toISOString()\n result = await payload.db.updateGlobal({\n slug: globalConfig.slug,\n data: result,\n req,\n })\n\n const now = new Date().toISOString()\n\n result = await payload.db.createGlobalVersion({\n autosave: false,\n createdAt: result.createdAt ? new Date(result.createdAt).toISOString() : now,\n globalSlug: globalConfig.slug,\n req,\n updatedAt: draft ? now : new Date(result.updatedAt).toISOString(),\n versionData: result,\n })\n } else {\n result = await payload.db.createGlobal({\n slug: globalConfig.slug,\n data: result,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: null,\n context: req.context,\n depth: depth!,\n doc: result,\n draft: undefined!,\n fallbackLocale: fallbackLocale!,\n global: globalConfig,\n locale: locale!,\n overrideAccess: overrideAccess!,\n populate,\n req,\n showHiddenFields: showHiddenFields!,\n })\n\n // /////////////////////////////////////\n // afterRead - Global\n // /////////////////////////////////////\n\n if (globalConfig.hooks?.afterRead?.length) {\n for (const hook of globalConfig.hooks.afterRead) {\n result =\n (await hook({\n context: req.context,\n doc: result,\n global: globalConfig,\n overrideAccess,\n req,\n })) || result\n }\n }\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: null,\n context: req.context,\n data: result,\n doc: result,\n global: globalConfig,\n operation: 'update',\n previousDoc,\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Global\n // /////////////////////////////////////\n\n if (globalConfig.hooks?.afterChange?.length) {\n for (const hook of globalConfig.hooks.afterChange) {\n result =\n (await hook({\n context: req.context,\n data: result,\n doc: result,\n global: globalConfig,\n overrideAccess,\n previousDoc,\n req,\n })) || result\n }\n }\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(req)\n throw error\n }\n}\n"],"names":["executeAccess","NotFound","afterChange","afterRead","commitTransaction","initTransaction","killTransaction","restoreVersionOperation","args","id","depth","draft","globalConfig","overrideAccess","populate","showHiddenFields","req","fallbackLocale","locale","payload","shouldCommit","hooks","beforeOperation","length","hook","context","global","operation","access","update","docs","versionDocs","db","findGlobalVersions","slug","limit","where","equals","t","rawVersion","version","globalType","_status","previousDoc","findGlobal","result","updatedAt","Date","toISOString","updateGlobal","data","now","createGlobalVersion","autosave","createdAt","globalSlug","versionData","createGlobal","collection","doc","undefined","error"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/globals/operations/restoreVersion.ts"],"sourcesContent":["import type { PayloadRequest, PopulateType } from '../../types/index.js'\nimport type { TypeWithVersion } from '../../versions/types.js'\nimport type { SanitizedGlobalConfig } from '../config/types.js'\n\nimport { executeAccess } from '../../auth/executeAccess.js'\nimport { NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\n\nexport type Arguments = {\n depth?: number\n draft?: boolean\n globalConfig: SanitizedGlobalConfig\n id: number | string\n overrideAccess?: boolean\n populate?: PopulateType\n req?: PayloadRequest\n showHiddenFields?: boolean\n}\n\nexport const restoreVersionOperation = async <T extends TypeWithVersion<T> = any>(\n args: Arguments,\n): Promise<T> => {\n const { id, depth, draft, globalConfig, overrideAccess, populate, showHiddenFields } = args\n const req = args.req!\n const { fallbackLocale, locale, payload } = req\n\n try {\n const shouldCommit = await initTransaction(req)\n\n // /////////////////////////////////////\n // beforeOperation - Global\n // /////////////////////////////////////\n\n if (globalConfig.hooks?.beforeOperation?.length) {\n for (const hook of globalConfig.hooks.beforeOperation) {\n args =\n (await hook({\n args,\n context: req.context,\n global: globalConfig,\n operation: 'restoreVersion',\n overrideAccess,\n req,\n })) || args\n }\n }\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n if (!overrideAccess) {\n await executeAccess({ req }, globalConfig.access.update)\n }\n\n // /////////////////////////////////////\n // Retrieve original raw version\n // /////////////////////////////////////\n\n const { docs: versionDocs } = await payload.db.findGlobalVersions<any>({\n global: globalConfig.slug,\n limit: 1,\n req,\n where: { id: { equals: id } },\n })\n\n if (!versionDocs || versionDocs.length === 0) {\n throw new NotFound(req.t)\n }\n\n const rawVersion = versionDocs[0]!\n\n // Patch globalType onto version doc\n rawVersion.version.globalType = globalConfig.slug\n\n // Overwrite draft status if draft is true\n\n if (draft) {\n rawVersion.version._status = 'draft'\n }\n // /////////////////////////////////////\n // fetch previousDoc\n // /////////////////////////////////////\n\n const previousDoc = await payload.findGlobal({\n slug: globalConfig.slug,\n depth,\n req,\n })\n\n req.context.isRestoringVersion = true\n\n // /////////////////////////////////////\n // Update global\n // /////////////////////////////////////\n\n const global = await payload.db.findGlobal({\n slug: globalConfig.slug,\n req,\n })\n\n let result = rawVersion.version\n\n if (global) {\n // Ensure updatedAt date is always updated\n result.updatedAt = new Date().toISOString()\n result = await payload.db.updateGlobal({\n slug: globalConfig.slug,\n data: result,\n req,\n })\n\n const now = new Date().toISOString()\n\n result = await payload.db.createGlobalVersion({\n autosave: false,\n createdAt: result.createdAt ? new Date(result.createdAt).toISOString() : now,\n globalSlug: globalConfig.slug,\n req,\n updatedAt: draft ? now : new Date(result.updatedAt).toISOString(),\n versionData: result,\n })\n } else {\n result = await payload.db.createGlobal({\n slug: globalConfig.slug,\n data: result,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: null,\n context: req.context,\n depth: depth!,\n doc: result,\n draft: undefined!,\n fallbackLocale: fallbackLocale!,\n global: globalConfig,\n locale: locale!,\n overrideAccess: overrideAccess!,\n populate,\n req,\n showHiddenFields: showHiddenFields!,\n })\n\n // /////////////////////////////////////\n // afterRead - Global\n // /////////////////////////////////////\n\n if (globalConfig.hooks?.afterRead?.length) {\n for (const hook of globalConfig.hooks.afterRead) {\n result =\n (await hook({\n context: req.context,\n doc: result,\n global: globalConfig,\n overrideAccess,\n req,\n })) || result\n }\n }\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: null,\n context: req.context,\n data: result,\n doc: result,\n global: globalConfig,\n operation: 'update',\n previousDoc,\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Global\n // /////////////////////////////////////\n\n if (globalConfig.hooks?.afterChange?.length) {\n for (const hook of globalConfig.hooks.afterChange) {\n result =\n (await hook({\n context: req.context,\n data: result,\n doc: result,\n global: globalConfig,\n overrideAccess,\n previousDoc,\n req,\n })) || result\n }\n }\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(req)\n throw error\n }\n}\n"],"names":["executeAccess","NotFound","afterChange","afterRead","commitTransaction","initTransaction","killTransaction","restoreVersionOperation","args","id","depth","draft","globalConfig","overrideAccess","populate","showHiddenFields","req","fallbackLocale","locale","payload","shouldCommit","hooks","beforeOperation","length","hook","context","global","operation","access","update","docs","versionDocs","db","findGlobalVersions","slug","limit","where","equals","t","rawVersion","version","globalType","_status","previousDoc","findGlobal","isRestoringVersion","result","updatedAt","Date","toISOString","updateGlobal","data","now","createGlobalVersion","autosave","createdAt","globalSlug","versionData","createGlobal","collection","doc","undefined","error"],"mappings":"AAIA,SAASA,aAAa,QAAQ,8BAA6B;AAC3D,SAASC,QAAQ,QAAQ,wBAAuB;AAChD,SAASC,WAAW,QAAQ,0CAAyC;AACrE,SAASC,SAAS,QAAQ,wCAAuC;AACjE,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,eAAe,QAAQ,qCAAoC;AAapE,OAAO,MAAMC,0BAA0B,OACrCC;IAEA,MAAM,EAAEC,EAAE,EAAEC,KAAK,EAAEC,KAAK,EAAEC,YAAY,EAAEC,cAAc,EAAEC,QAAQ,EAAEC,gBAAgB,EAAE,GAAGP;IACvF,MAAMQ,MAAMR,KAAKQ,GAAG;IACpB,MAAM,EAAEC,cAAc,EAAEC,MAAM,EAAEC,OAAO,EAAE,GAAGH;IAE5C,IAAI;QACF,MAAMI,eAAe,MAAMf,gBAAgBW;QAE3C,wCAAwC;QACxC,2BAA2B;QAC3B,wCAAwC;QAExC,IAAIJ,aAAaS,KAAK,EAAEC,iBAAiBC,QAAQ;YAC/C,KAAK,MAAMC,QAAQZ,aAAaS,KAAK,CAACC,eAAe,CAAE;gBACrDd,OACE,AAAC,MAAMgB,KAAK;oBACVhB;oBACAiB,SAAST,IAAIS,OAAO;oBACpBC,QAAQd;oBACRe,WAAW;oBACXd;oBACAG;gBACF,MAAOR;YACX;QACF;QAEA,wCAAwC;QACxC,SAAS;QACT,wCAAwC;QAExC,IAAI,CAACK,gBAAgB;YACnB,MAAMb,cAAc;gBAAEgB;YAAI,GAAGJ,aAAagB,MAAM,CAACC,MAAM;QACzD;QAEA,wCAAwC;QACxC,gCAAgC;QAChC,wCAAwC;QAExC,MAAM,EAAEC,MAAMC,WAAW,EAAE,GAAG,MAAMZ,QAAQa,EAAE,CAACC,kBAAkB,CAAM;YACrEP,QAAQd,aAAasB,IAAI;YACzBC,OAAO;YACPnB;YACAoB,OAAO;gBAAE3B,IAAI;oBAAE4B,QAAQ5B;gBAAG;YAAE;QAC9B;QAEA,IAAI,CAACsB,eAAeA,YAAYR,MAAM,KAAK,GAAG;YAC5C,MAAM,IAAItB,SAASe,IAAIsB,CAAC;QAC1B;QAEA,MAAMC,aAAaR,WAAW,CAAC,EAAE;QAEjC,oCAAoC;QACpCQ,WAAWC,OAAO,CAACC,UAAU,GAAG7B,aAAasB,IAAI;QAEjD,0CAA0C;QAE1C,IAAIvB,OAAO;YACT4B,WAAWC,OAAO,CAACE,OAAO,GAAG;QAC/B;QACA,wCAAwC;QACxC,oBAAoB;QACpB,wCAAwC;QAExC,MAAMC,cAAc,MAAMxB,QAAQyB,UAAU,CAAC;YAC3CV,MAAMtB,aAAasB,IAAI;YACvBxB;YACAM;QACF;QAEAA,IAAIS,OAAO,CAACoB,kBAAkB,GAAG;QAEjC,wCAAwC;QACxC,gBAAgB;QAChB,wCAAwC;QAExC,MAAMnB,SAAS,MAAMP,QAAQa,EAAE,CAACY,UAAU,CAAC;YACzCV,MAAMtB,aAAasB,IAAI;YACvBlB;QACF;QAEA,IAAI8B,SAASP,WAAWC,OAAO;QAE/B,IAAId,QAAQ;YACV,0CAA0C;YAC1CoB,OAAOC,SAAS,GAAG,IAAIC,OAAOC,WAAW;YACzCH,SAAS,MAAM3B,QAAQa,EAAE,CAACkB,YAAY,CAAC;gBACrChB,MAAMtB,aAAasB,IAAI;gBACvBiB,MAAML;gBACN9B;YACF;YAEA,MAAMoC,MAAM,IAAIJ,OAAOC,WAAW;YAElCH,SAAS,MAAM3B,QAAQa,EAAE,CAACqB,mBAAmB,CAAC;gBAC5CC,UAAU;gBACVC,WAAWT,OAAOS,SAAS,GAAG,IAAIP,KAAKF,OAAOS,SAAS,EAAEN,WAAW,KAAKG;gBACzEI,YAAY5C,aAAasB,IAAI;gBAC7BlB;gBACA+B,WAAWpC,QAAQyC,MAAM,IAAIJ,KAAKF,OAAOC,SAAS,EAAEE,WAAW;gBAC/DQ,aAAaX;YACf;QACF,OAAO;YACLA,SAAS,MAAM3B,QAAQa,EAAE,CAAC0B,YAAY,CAAC;gBACrCxB,MAAMtB,aAAasB,IAAI;gBACvBiB,MAAML;gBACN9B;YACF;QACF;QAEA,wCAAwC;QACxC,qBAAqB;QACrB,wCAAwC;QAExC8B,SAAS,MAAM3C,UAAU;YACvBwD,YAAY;YACZlC,SAAST,IAAIS,OAAO;YACpBf,OAAOA;YACPkD,KAAKd;YACLnC,OAAOkD;YACP5C,gBAAgBA;YAChBS,QAAQd;YACRM,QAAQA;YACRL,gBAAgBA;YAChBC;YACAE;YACAD,kBAAkBA;QACpB;QAEA,wCAAwC;QACxC,qBAAqB;QACrB,wCAAwC;QAExC,IAAIH,aAAaS,KAAK,EAAElB,WAAWoB,QAAQ;YACzC,KAAK,MAAMC,QAAQZ,aAAaS,KAAK,CAAClB,SAAS,CAAE;gBAC/C2C,SACE,AAAC,MAAMtB,KAAK;oBACVC,SAAST,IAAIS,OAAO;oBACpBmC,KAAKd;oBACLpB,QAAQd;oBACRC;oBACAG;gBACF,MAAO8B;YACX;QACF;QAEA,wCAAwC;QACxC,uBAAuB;QACvB,wCAAwC;QAExCA,SAAS,MAAM5C,YAAY;YACzByD,YAAY;YACZlC,SAAST,IAAIS,OAAO;YACpB0B,MAAML;YACNc,KAAKd;YACLpB,QAAQd;YACRe,WAAW;YACXgB;YACA3B;QACF;QAEA,wCAAwC;QACxC,uBAAuB;QACvB,wCAAwC;QAExC,IAAIJ,aAAaS,KAAK,EAAEnB,aAAaqB,QAAQ;YAC3C,KAAK,MAAMC,QAAQZ,aAAaS,KAAK,CAACnB,WAAW,CAAE;gBACjD4C,SACE,AAAC,MAAMtB,KAAK;oBACVC,SAAST,IAAIS,OAAO;oBACpB0B,MAAML;oBACNc,KAAKd;oBACLpB,QAAQd;oBACRC;oBACA8B;oBACA3B;gBACF,MAAO8B;YACX;QACF;QAEA,IAAI1B,cAAc;YAChB,MAAMhB,kBAAkBY;QAC1B;QAEA,OAAO8B;IACT,EAAE,OAAOgB,OAAgB;QACvB,MAAMxD,gBAAgBU;QACtB,MAAM8C;IACR;AACF,EAAC"}
|