payload 3.0.0-beta.94 → 3.0.0-beta.96

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.
Files changed (225) hide show
  1. package/dist/admin/RichText.d.ts +2 -1
  2. package/dist/admin/RichText.d.ts.map +1 -1
  3. package/dist/admin/RichText.js.map +1 -1
  4. package/dist/auth/executeAccess.d.ts.map +1 -1
  5. package/dist/auth/executeAccess.js +6 -2
  6. package/dist/auth/executeAccess.js.map +1 -1
  7. package/dist/auth/getAuthFields.d.ts.map +1 -1
  8. package/dist/auth/getAuthFields.js +3 -1
  9. package/dist/auth/getAuthFields.js.map +1 -1
  10. package/dist/auth/isLocked.d.ts.map +1 -1
  11. package/dist/auth/isLocked.js +3 -1
  12. package/dist/auth/isLocked.js.map +1 -1
  13. package/dist/auth/operations/auth.d.ts.map +1 -1
  14. package/dist/auth/operations/auth.js +3 -1
  15. package/dist/auth/operations/auth.js.map +1 -1
  16. package/dist/auth/operations/forgotPassword.d.ts.map +1 -1
  17. package/dist/auth/operations/forgotPassword.js +6 -2
  18. package/dist/auth/operations/forgotPassword.js.map +1 -1
  19. package/dist/auth/operations/login.d.ts.map +1 -1
  20. package/dist/auth/operations/login.js +6 -2
  21. package/dist/auth/operations/login.js.map +1 -1
  22. package/dist/auth/operations/logout.d.ts.map +1 -1
  23. package/dist/auth/operations/logout.js +6 -2
  24. package/dist/auth/operations/logout.js.map +1 -1
  25. package/dist/auth/operations/me.d.ts.map +1 -1
  26. package/dist/auth/operations/me.js +6 -2
  27. package/dist/auth/operations/me.js.map +1 -1
  28. package/dist/auth/operations/refresh.d.ts.map +1 -1
  29. package/dist/auth/operations/refresh.js +6 -2
  30. package/dist/auth/operations/refresh.js.map +1 -1
  31. package/dist/auth/operations/registerFirstUser.d.ts.map +1 -1
  32. package/dist/auth/operations/registerFirstUser.js +6 -2
  33. package/dist/auth/operations/registerFirstUser.js.map +1 -1
  34. package/dist/auth/operations/resetPassword.d.ts.map +1 -1
  35. package/dist/auth/operations/resetPassword.js +6 -2
  36. package/dist/auth/operations/resetPassword.js.map +1 -1
  37. package/dist/auth/operations/unlock.d.ts.map +1 -1
  38. package/dist/auth/operations/unlock.js +3 -1
  39. package/dist/auth/operations/unlock.js.map +1 -1
  40. package/dist/auth/operations/verifyEmail.d.ts.map +1 -1
  41. package/dist/auth/operations/verifyEmail.js +9 -3
  42. package/dist/auth/operations/verifyEmail.js.map +1 -1
  43. package/dist/auth/strategies/local/authenticate.d.ts.map +1 -1
  44. package/dist/auth/strategies/local/authenticate.js +3 -1
  45. package/dist/auth/strategies/local/authenticate.js.map +1 -1
  46. package/dist/auth/strategies/local/register.d.ts.map +1 -1
  47. package/dist/auth/strategies/local/register.js +3 -1
  48. package/dist/auth/strategies/local/register.js.map +1 -1
  49. package/dist/auth/strategies/local/resetLoginAttempts.d.ts.map +1 -1
  50. package/dist/auth/strategies/local/resetLoginAttempts.js +3 -1
  51. package/dist/auth/strategies/local/resetLoginAttempts.js.map +1 -1
  52. package/dist/bin/generateTypes.d.ts.map +1 -1
  53. package/dist/bin/generateTypes.js +6 -2
  54. package/dist/bin/generateTypes.js.map +1 -1
  55. package/dist/bin/index.d.ts.map +1 -1
  56. package/dist/bin/index.js +3 -1
  57. package/dist/bin/index.js.map +1 -1
  58. package/dist/collections/config/reservedFieldNames.spec.js +4 -4
  59. package/dist/collections/config/reservedFieldNames.spec.js.map +1 -1
  60. package/dist/collections/config/sanitize.d.ts.map +1 -1
  61. package/dist/collections/config/sanitize.js +15 -6
  62. package/dist/collections/config/sanitize.js.map +1 -1
  63. package/dist/collections/dataloader.d.ts.map +1 -1
  64. package/dist/collections/dataloader.js +3 -1
  65. package/dist/collections/dataloader.js.map +1 -1
  66. package/dist/collections/operations/create.d.ts.map +1 -1
  67. package/dist/collections/operations/create.js +3 -1
  68. package/dist/collections/operations/create.js.map +1 -1
  69. package/dist/collections/operations/delete.d.ts.map +1 -1
  70. package/dist/collections/operations/delete.js +3 -1
  71. package/dist/collections/operations/delete.js.map +1 -1
  72. package/dist/collections/operations/deleteByID.d.ts.map +1 -1
  73. package/dist/collections/operations/deleteByID.js +9 -3
  74. package/dist/collections/operations/deleteByID.js.map +1 -1
  75. package/dist/collections/operations/duplicate.d.ts.map +1 -1
  76. package/dist/collections/operations/duplicate.js +9 -3
  77. package/dist/collections/operations/duplicate.js.map +1 -1
  78. package/dist/collections/operations/findByID.d.ts.map +1 -1
  79. package/dist/collections/operations/findByID.js +6 -2
  80. package/dist/collections/operations/findByID.js.map +1 -1
  81. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  82. package/dist/collections/operations/findVersionByID.js +9 -3
  83. package/dist/collections/operations/findVersionByID.js.map +1 -1
  84. package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
  85. package/dist/collections/operations/restoreVersion.js +6 -2
  86. package/dist/collections/operations/restoreVersion.js.map +1 -1
  87. package/dist/collections/operations/update.d.ts.map +1 -1
  88. package/dist/collections/operations/update.js +3 -1
  89. package/dist/collections/operations/update.js.map +1 -1
  90. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  91. package/dist/collections/operations/updateByID.js +9 -3
  92. package/dist/collections/operations/updateByID.js.map +1 -1
  93. package/dist/config/client.d.ts +2 -1
  94. package/dist/config/client.d.ts.map +1 -1
  95. package/dist/config/client.js.map +1 -1
  96. package/dist/config/find.d.ts.map +1 -1
  97. package/dist/config/find.js +9 -3
  98. package/dist/config/find.js.map +1 -1
  99. package/dist/config/sanitize.d.ts.map +1 -1
  100. package/dist/config/sanitize.js +10 -5
  101. package/dist/config/sanitize.js.map +1 -1
  102. package/dist/config/types.d.ts +116 -3
  103. package/dist/config/types.d.ts.map +1 -1
  104. package/dist/config/types.js.map +1 -1
  105. package/dist/database/combineQueries.d.ts.map +1 -1
  106. package/dist/database/combineQueries.js +9 -3
  107. package/dist/database/combineQueries.js.map +1 -1
  108. package/dist/database/getLocalizedPaths.d.ts.map +1 -1
  109. package/dist/database/getLocalizedPaths.js +3 -1
  110. package/dist/database/getLocalizedPaths.js.map +1 -1
  111. package/dist/database/migrations/readMigrationFiles.d.ts.map +1 -1
  112. package/dist/database/migrations/readMigrationFiles.js +3 -1
  113. package/dist/database/migrations/readMigrationFiles.js.map +1 -1
  114. package/dist/fields/config/sanitize.d.ts +2 -1
  115. package/dist/fields/config/sanitize.d.ts.map +1 -1
  116. package/dist/fields/config/sanitize.js +27 -7
  117. package/dist/fields/config/sanitize.js.map +1 -1
  118. package/dist/fields/config/types.js +1 -1
  119. package/dist/fields/config/types.js.map +1 -1
  120. package/dist/fields/hooks/afterRead/index.d.ts.map +1 -1
  121. package/dist/fields/hooks/afterRead/index.js +3 -1
  122. package/dist/fields/hooks/afterRead/index.js.map +1 -1
  123. package/dist/fields/hooks/afterRead/promise.d.ts.map +1 -1
  124. package/dist/fields/hooks/afterRead/promise.js +6 -2
  125. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  126. package/dist/fields/hooks/beforeChange/getExistingRowDoc.d.ts.map +1 -1
  127. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js +6 -2
  128. package/dist/fields/hooks/beforeChange/getExistingRowDoc.js.map +1 -1
  129. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  130. package/dist/fields/hooks/beforeChange/promise.js +18 -6
  131. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  132. package/dist/fields/hooks/beforeValidate/promise.d.ts.map +1 -1
  133. package/dist/fields/hooks/beforeValidate/promise.js +21 -7
  134. package/dist/fields/hooks/beforeValidate/promise.js.map +1 -1
  135. package/dist/fields/validations.d.ts.map +1 -1
  136. package/dist/fields/validations.js +57 -19
  137. package/dist/fields/validations.js.map +1 -1
  138. package/dist/globals/config/sanitize.d.ts.map +1 -1
  139. package/dist/globals/config/sanitize.js +45 -16
  140. package/dist/globals/config/sanitize.js.map +1 -1
  141. package/dist/globals/operations/docAccess.d.ts.map +1 -1
  142. package/dist/globals/operations/docAccess.js +3 -1
  143. package/dist/globals/operations/docAccess.js.map +1 -1
  144. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  145. package/dist/globals/operations/findVersionByID.js +12 -4
  146. package/dist/globals/operations/findVersionByID.js.map +1 -1
  147. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  148. package/dist/globals/operations/restoreVersion.js +3 -1
  149. package/dist/globals/operations/restoreVersion.js.map +1 -1
  150. package/dist/globals/operations/update.d.ts.map +1 -1
  151. package/dist/globals/operations/update.js +3 -1
  152. package/dist/globals/operations/update.js.map +1 -1
  153. package/dist/index.d.ts.map +1 -1
  154. package/dist/index.js +9 -3
  155. package/dist/index.js.map +1 -1
  156. package/dist/preferences/operations/findOne.d.ts.map +1 -1
  157. package/dist/preferences/operations/findOne.js +3 -1
  158. package/dist/preferences/operations/findOne.js.map +1 -1
  159. package/dist/uploads/cropImage.d.ts.map +1 -1
  160. package/dist/uploads/cropImage.js +3 -1
  161. package/dist/uploads/cropImage.js.map +1 -1
  162. package/dist/uploads/deleteAssociatedFiles.d.ts.map +1 -1
  163. package/dist/uploads/deleteAssociatedFiles.js +3 -1
  164. package/dist/uploads/deleteAssociatedFiles.js.map +1 -1
  165. package/dist/uploads/docWithFilenameExists.d.ts.map +1 -1
  166. package/dist/uploads/docWithFilenameExists.js +3 -1
  167. package/dist/uploads/docWithFilenameExists.js.map +1 -1
  168. package/dist/uploads/formatFilesize.d.ts.map +1 -1
  169. package/dist/uploads/formatFilesize.js +3 -1
  170. package/dist/uploads/formatFilesize.js.map +1 -1
  171. package/dist/uploads/generateFileData.d.ts.map +1 -1
  172. package/dist/uploads/generateFileData.js +12 -4
  173. package/dist/uploads/generateFileData.js.map +1 -1
  174. package/dist/uploads/getBaseFields.d.ts.map +1 -1
  175. package/dist/uploads/getBaseFields.js +6 -2
  176. package/dist/uploads/getBaseFields.js.map +1 -1
  177. package/dist/uploads/getExternalFile.d.ts.map +1 -1
  178. package/dist/uploads/getExternalFile.js +3 -1
  179. package/dist/uploads/getExternalFile.js.map +1 -1
  180. package/dist/uploads/imageResizer.d.ts.map +1 -1
  181. package/dist/uploads/imageResizer.js +35 -13
  182. package/dist/uploads/imageResizer.js.map +1 -1
  183. package/dist/uploads/optionallyAppendMetadata.d.ts.map +1 -1
  184. package/dist/uploads/optionallyAppendMetadata.js +3 -1
  185. package/dist/uploads/optionallyAppendMetadata.js.map +1 -1
  186. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  187. package/dist/utilities/configToJSONSchema.js +12 -4
  188. package/dist/utilities/configToJSONSchema.js.map +1 -1
  189. package/dist/utilities/createArrayFromCommaDelineated.d.ts.map +1 -1
  190. package/dist/utilities/createArrayFromCommaDelineated.js +3 -1
  191. package/dist/utilities/createArrayFromCommaDelineated.js.map +1 -1
  192. package/dist/utilities/createLocalReq.d.ts.map +1 -1
  193. package/dist/utilities/createLocalReq.js +28 -12
  194. package/dist/utilities/createLocalReq.js.map +1 -1
  195. package/dist/utilities/deepCopyObject.d.ts.map +1 -1
  196. package/dist/utilities/deepCopyObject.js +15 -5
  197. package/dist/utilities/deepCopyObject.js.map +1 -1
  198. package/dist/utilities/dependencies/versionUtils.d.ts.map +1 -1
  199. package/dist/utilities/dependencies/versionUtils.js +24 -8
  200. package/dist/utilities/dependencies/versionUtils.js.map +1 -1
  201. package/dist/utilities/getEntityPolicies.d.ts.map +1 -1
  202. package/dist/utilities/getEntityPolicies.js +9 -3
  203. package/dist/utilities/getEntityPolicies.js.map +1 -1
  204. package/dist/utilities/getObjectDotNotation.d.ts.map +1 -1
  205. package/dist/utilities/getObjectDotNotation.js +3 -1
  206. package/dist/utilities/getObjectDotNotation.js.map +1 -1
  207. package/dist/utilities/getSiblingData.d.ts.map +1 -1
  208. package/dist/utilities/getSiblingData.js +3 -1
  209. package/dist/utilities/getSiblingData.js.map +1 -1
  210. package/dist/utilities/isValidID.d.ts.map +1 -1
  211. package/dist/utilities/isValidID.js +3 -1
  212. package/dist/utilities/isValidID.js.map +1 -1
  213. package/dist/utilities/reduceFieldsToValues.d.ts.map +1 -1
  214. package/dist/utilities/reduceFieldsToValues.js +3 -1
  215. package/dist/utilities/reduceFieldsToValues.js.map +1 -1
  216. package/dist/utilities/timestamp.d.ts.map +1 -1
  217. package/dist/utilities/timestamp.js +3 -1
  218. package/dist/utilities/timestamp.js.map +1 -1
  219. package/dist/versions/drafts/getQueryDraftsSort.d.ts.map +1 -1
  220. package/dist/versions/drafts/getQueryDraftsSort.js +3 -1
  221. package/dist/versions/drafts/getQueryDraftsSort.js.map +1 -1
  222. package/dist/versions/saveVersion.d.ts.map +1 -1
  223. package/dist/versions/saveVersion.js +18 -6
  224. package/dist/versions/saveVersion.js.map +1 -1
  225. package/package.json +7 -8
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/updateByID.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport httpStatus from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequest } from '../../types/index.js'\nimport type {\n Collection,\n DataFromCollectionSlug,\n RequiredDataFromCollectionSlug,\n} from '../config/types.js'\n\nimport { ensureUsernameOrEmail } from '../../auth/ensureUsernameOrEmail.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport { generatePasswordSaltHash } from '../../auth/strategies/local/generatePasswordSaltHash.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { uploadFiles } from '../../uploads/uploadFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n depth?: number\n disableVerificationEmail?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n overwriteExistingFiles?: boolean\n req: PayloadRequest\n showHiddenFields?: boolean\n}\n\nexport const updateByIDOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments<TSlug>,\n): Promise<DataFromCollectionSlug<TSlug>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'update',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n draft: draftArg = false,\n overrideAccess,\n overwriteExistingFiles = false,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n let { data } = args\n const password = data?.password\n const shouldSaveDraft = Boolean(draftArg && collectionConfig.versions.drafts)\n const shouldSavePassword = Boolean(password && collectionConfig.auth && !shouldSaveDraft)\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, data, req }, collectionConfig.access.update)\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n }\n\n const docWithLocales = await getLatestCollectionVersion({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) throw new NotFound(req.t)\n if (!docWithLocales && hasWherePolicy) throw new Forbidden(req.t)\n\n const originalDoc = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth: 0,\n doc: docWithLocales,\n draft: draftArg,\n fallbackLocale: null,\n global: null,\n locale,\n overrideAccess: true,\n req,\n showHiddenFields: true,\n })\n\n if (args.collection.config.auth) {\n ensureUsernameOrEmail<TSlug>({\n authOptions: args.collection.config.auth,\n collectionSlug: args.collection.config.slug,\n data: args.data,\n operation: 'update',\n originalDoc,\n req: args.req,\n })\n }\n\n // /////////////////////////////////////\n // Generate data for all files and sizes\n // /////////////////////////////////////\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection,\n config,\n data,\n operation: 'update',\n overwriteExistingFiles,\n req,\n throwOnMissingFile: false,\n })\n\n data = newFileData\n\n // /////////////////////////////////////\n // Delete any associated files\n // /////////////////////////////////////\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc: docWithLocales,\n files: filesToUpload,\n overrideDelete: false,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n data = await beforeValidate<DeepPartial<DataFromCollectionSlug<TSlug>>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n global: null,\n operation: 'update',\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'update',\n originalDoc,\n req,\n })) || data\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Write files to local storage\n // /////////////////////////////////////\n\n if (!collectionConfig.upload.disableLocalStorage) {\n await uploadFiles(payload, filesToUpload, req)\n }\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'update',\n originalDoc,\n req,\n })) || data\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n let result = await beforeChange({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n docWithLocales,\n global: null,\n operation: 'update',\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate &&\n data._status !== 'published',\n })\n\n // /////////////////////////////////////\n // Handle potential password update\n // /////////////////////////////////////\n\n const dataToUpdate: Record<string, unknown> = { ...result }\n\n if (shouldSavePassword && typeof password === 'string') {\n const { hash, salt } = await generatePasswordSaltHash({\n collection: collectionConfig,\n password,\n req,\n })\n dataToUpdate.salt = salt\n dataToUpdate.hash = hash\n delete dataToUpdate.password\n delete data.password\n }\n\n // /////////////////////////////////////\n // Update\n // /////////////////////////////////////\n\n if (!shouldSaveDraft || data._status === 'published') {\n result = await req.payload.db.updateOne({\n id,\n collection: collectionConfig.slug,\n data: dataToUpdate,\n locale,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n result = await saveVersion({\n id,\n autosave,\n collection: collectionConfig,\n docWithLocales: {\n ...result,\n createdAt: docWithLocales.createdAt,\n },\n draft: shouldSaveDraft,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft: draftArg,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: result,\n global: null,\n operation: 'update',\n previousDoc: originalDoc,\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation: 'update',\n previousDoc: originalDoc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'updateByID',\n result,\n })\n\n await unlinkTempFiles({\n collectionConfig,\n config,\n req,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) await commitTransaction(req)\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","ensureUsernameOrEmail","executeAccess","generatePasswordSaltHash","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","afterChange","afterRead","beforeChange","beforeValidate","deleteAssociatedFiles","generateFileData","unlinkTempFiles","uploadFiles","commitTransaction","initTransaction","killTransaction","getLatestCollectionVersion","saveVersion","buildAfterOperation","updateByIDOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","autosave","collectionConfig","depth","draft","draftArg","overrideAccess","overwriteExistingFiles","fallbackLocale","locale","payload","showHiddenFields","BAD_REQUEST","data","password","shouldSaveDraft","Boolean","versions","drafts","shouldSavePassword","auth","accessResults","access","update","hasWherePolicy","findOneArgs","slug","where","equals","docWithLocales","query","t","originalDoc","doc","global","authOptions","collectionSlug","newFileData","files","filesToUpload","throwOnMissingFile","overrideDelete","upload","disableLocalStorage","result","skipValidation","validate","_status","dataToUpdate","hash","salt","db","updateOne","createdAt","previousDoc","error"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/updateByID.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport httpStatus from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequest } from '../../types/index.js'\nimport type {\n Collection,\n DataFromCollectionSlug,\n RequiredDataFromCollectionSlug,\n} from '../config/types.js'\n\nimport { ensureUsernameOrEmail } from '../../auth/ensureUsernameOrEmail.js'\nimport executeAccess from '../../auth/executeAccess.js'\nimport { generatePasswordSaltHash } from '../../auth/strategies/local/generatePasswordSaltHash.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { afterChange } from '../../fields/hooks/afterChange/index.js'\nimport { afterRead } from '../../fields/hooks/afterRead/index.js'\nimport { beforeChange } from '../../fields/hooks/beforeChange/index.js'\nimport { beforeValidate } from '../../fields/hooks/beforeValidate/index.js'\nimport { deleteAssociatedFiles } from '../../uploads/deleteAssociatedFiles.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { uploadFiles } from '../../uploads/uploadFiles.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { saveVersion } from '../../versions/saveVersion.js'\nimport { buildAfterOperation } from './utils.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n depth?: number\n disableVerificationEmail?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n overwriteExistingFiles?: boolean\n req: PayloadRequest\n showHiddenFields?: boolean\n}\n\nexport const updateByIDOperation = async <TSlug extends CollectionSlug>(\n incomingArgs: Arguments<TSlug>,\n): Promise<DataFromCollectionSlug<TSlug>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = await initTransaction(args.req)\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n await args.collection.config.hooks.beforeOperation.reduce(async (priorHook, hook) => {\n await priorHook\n\n args =\n (await hook({\n args,\n collection: args.collection.config,\n context: args.req.context,\n operation: 'update',\n req: args.req,\n })) || args\n }, Promise.resolve())\n\n const {\n id,\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n draft: draftArg = false,\n overrideAccess,\n overwriteExistingFiles = false,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n showHiddenFields,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n let { data } = args\n const password = data?.password\n const shouldSaveDraft = Boolean(draftArg && collectionConfig.versions.drafts)\n const shouldSavePassword = Boolean(password && collectionConfig.auth && !shouldSaveDraft)\n\n // /////////////////////////////////////\n // Access\n // /////////////////////////////////////\n\n const accessResults = !overrideAccess\n ? await executeAccess({ id, data, req }, collectionConfig.access.update)\n : true\n const hasWherePolicy = hasWhereAccessResult(accessResults)\n\n // /////////////////////////////////////\n // Retrieve document\n // /////////////////////////////////////\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale,\n req,\n where: combineQueries({ id: { equals: id } }, accessResults),\n }\n\n const docWithLocales = await getLatestCollectionVersion({\n id,\n config: collectionConfig,\n payload,\n query: findOneArgs,\n req,\n })\n\n if (!docWithLocales && !hasWherePolicy) {\n throw new NotFound(req.t)\n }\n if (!docWithLocales && hasWherePolicy) {\n throw new Forbidden(req.t)\n }\n\n const originalDoc = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth: 0,\n doc: docWithLocales,\n draft: draftArg,\n fallbackLocale: null,\n global: null,\n locale,\n overrideAccess: true,\n req,\n showHiddenFields: true,\n })\n\n if (args.collection.config.auth) {\n ensureUsernameOrEmail<TSlug>({\n authOptions: args.collection.config.auth,\n collectionSlug: args.collection.config.slug,\n data: args.data,\n operation: 'update',\n originalDoc,\n req: args.req,\n })\n }\n\n // /////////////////////////////////////\n // Generate data for all files and sizes\n // /////////////////////////////////////\n\n const { data: newFileData, files: filesToUpload } = await generateFileData({\n collection,\n config,\n data,\n operation: 'update',\n overwriteExistingFiles,\n req,\n throwOnMissingFile: false,\n })\n\n data = newFileData\n\n // /////////////////////////////////////\n // Delete any associated files\n // /////////////////////////////////////\n\n await deleteAssociatedFiles({\n collectionConfig,\n config,\n doc: docWithLocales,\n files: filesToUpload,\n overrideDelete: false,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Fields\n // /////////////////////////////////////\n\n data = await beforeValidate<DeepPartial<DataFromCollectionSlug<TSlug>>>({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n global: null,\n operation: 'update',\n overrideAccess,\n req,\n })\n\n // /////////////////////////////////////\n // beforeValidate - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeValidate.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'update',\n originalDoc,\n req,\n })) || data\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // Write files to local storage\n // /////////////////////////////////////\n\n if (!collectionConfig.upload.disableLocalStorage) {\n await uploadFiles(payload, filesToUpload, req)\n }\n\n // /////////////////////////////////////\n // beforeChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.beforeChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n data =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n data,\n operation: 'update',\n originalDoc,\n req,\n })) || data\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // beforeChange - Fields\n // /////////////////////////////////////\n\n let result = await beforeChange({\n id,\n collection: collectionConfig,\n context: req.context,\n data,\n doc: originalDoc,\n docWithLocales,\n global: null,\n operation: 'update',\n req,\n skipValidation:\n shouldSaveDraft &&\n collectionConfig.versions.drafts &&\n !collectionConfig.versions.drafts.validate &&\n data._status !== 'published',\n })\n\n // /////////////////////////////////////\n // Handle potential password update\n // /////////////////////////////////////\n\n const dataToUpdate: Record<string, unknown> = { ...result }\n\n if (shouldSavePassword && typeof password === 'string') {\n const { hash, salt } = await generatePasswordSaltHash({\n collection: collectionConfig,\n password,\n req,\n })\n dataToUpdate.salt = salt\n dataToUpdate.hash = hash\n delete dataToUpdate.password\n delete data.password\n }\n\n // /////////////////////////////////////\n // Update\n // /////////////////////////////////////\n\n if (!shouldSaveDraft || data._status === 'published') {\n result = await req.payload.db.updateOne({\n id,\n collection: collectionConfig.slug,\n data: dataToUpdate,\n locale,\n req,\n })\n }\n\n // /////////////////////////////////////\n // Create version\n // /////////////////////////////////////\n\n if (collectionConfig.versions) {\n result = await saveVersion({\n id,\n autosave,\n collection: collectionConfig,\n docWithLocales: {\n ...result,\n createdAt: docWithLocales.createdAt,\n },\n draft: shouldSaveDraft,\n payload,\n req,\n })\n }\n\n // /////////////////////////////////////\n // afterRead - Fields\n // /////////////////////////////////////\n\n result = await afterRead({\n collection: collectionConfig,\n context: req.context,\n depth,\n doc: result,\n draft: draftArg,\n fallbackLocale,\n global: null,\n locale,\n overrideAccess,\n req,\n showHiddenFields,\n })\n\n // /////////////////////////////////////\n // afterRead - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterRead.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterChange - Fields\n // /////////////////////////////////////\n\n result = await afterChange({\n collection: collectionConfig,\n context: req.context,\n data,\n doc: result,\n global: null,\n operation: 'update',\n previousDoc: originalDoc,\n req,\n })\n\n // /////////////////////////////////////\n // afterChange - Collection\n // /////////////////////////////////////\n\n await collectionConfig.hooks.afterChange.reduce(async (priorHook, hook) => {\n await priorHook\n\n result =\n (await hook({\n collection: collectionConfig,\n context: req.context,\n doc: result,\n operation: 'update',\n previousDoc: originalDoc,\n req,\n })) || result\n }, Promise.resolve())\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'updateByID',\n result,\n })\n\n await unlinkTempFiles({\n collectionConfig,\n config,\n req,\n })\n\n // /////////////////////////////////////\n // Return results\n // /////////////////////////////////////\n\n if (shouldCommit) {\n await commitTransaction(req)\n }\n\n return result\n } catch (error: unknown) {\n await killTransaction(args.req)\n throw error\n }\n}\n"],"names":["httpStatus","ensureUsernameOrEmail","executeAccess","generatePasswordSaltHash","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","afterChange","afterRead","beforeChange","beforeValidate","deleteAssociatedFiles","generateFileData","unlinkTempFiles","uploadFiles","commitTransaction","initTransaction","killTransaction","getLatestCollectionVersion","saveVersion","buildAfterOperation","updateByIDOperation","incomingArgs","args","shouldCommit","req","collection","config","hooks","beforeOperation","reduce","priorHook","hook","context","operation","Promise","resolve","id","autosave","collectionConfig","depth","draft","draftArg","overrideAccess","overwriteExistingFiles","fallbackLocale","locale","payload","showHiddenFields","BAD_REQUEST","data","password","shouldSaveDraft","Boolean","versions","drafts","shouldSavePassword","auth","accessResults","access","update","hasWherePolicy","findOneArgs","slug","where","equals","docWithLocales","query","t","originalDoc","doc","global","authOptions","collectionSlug","newFileData","files","filesToUpload","throwOnMissingFile","overrideDelete","upload","disableLocalStorage","result","skipValidation","validate","_status","dataToUpdate","hash","salt","db","updateOne","createdAt","previousDoc","error"],"mappings":"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"}
@@ -15,8 +15,9 @@ export type ClientConfig = {
15
15
  Logo: MappedComponent;
16
16
  };
17
17
  };
18
+ dependencies?: Record<string, MappedComponent>;
18
19
  livePreview?: Omit<LivePreviewConfig, ServerOnlyLivePreviewProperties>;
19
- } & Omit<SanitizedConfig['admin'], 'components' | 'livePreview'>;
20
+ } & Omit<SanitizedConfig['admin'], 'components' | 'dependencies' | 'livePreview'>;
20
21
  collections: ClientCollectionConfig[];
21
22
  custom?: Record<string, any>;
22
23
  globals: ClientGlobalConfig[];
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/config/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,+BAA+B,EAChC,MAAM,YAAY,CAAA;AAEnB,MAAM,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAC/C,eAAe,EACb,KAAK,GACL,MAAM,GACN,MAAM,GACN,QAAQ,GACR,IAAI,GACJ,QAAQ,GACR,OAAO,GACP,WAAW,GACX,SAAS,GACT,OAAO,GACP,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,YAAY,CACf,CAAA;AAED,MAAM,MAAM,6BAA6B,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA;AAE9F,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE;QACL,UAAU,EAAE;YACV,MAAM,EAAE,eAAe,CAAA;YACvB,YAAY,CAAC,EAAE,eAAe,CAAA;YAC9B,OAAO,CAAC,EAAE,eAAe,EAAE,CAAA;YAC3B,QAAQ,EAAE;gBACR,IAAI,EAAE,eAAe,CAAA;gBACrB,IAAI,EAAE,eAAe,CAAA;aACtB,CAAA;SACF,CAAA;QACD,WAAW,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,+BAA+B,CAAC,CAAA;KACvE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC,CAAA;IAChE,WAAW,EAAE,sBAAsB,EAAE,CAAA;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAC9B,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,wBAAwB,CAAC,CAAA;AAEzF,eAAO,MAAM,0BAA0B,EAAE,SAAS,OAAO,CAAC,wBAAwB,CAAC,EAiBlF,CAAA"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/config/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAA;AAC7E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AACrE,OAAO,KAAK,EACV,iBAAiB,EACjB,eAAe,EACf,+BAA+B,EAChC,MAAM,YAAY,CAAA;AAEnB,MAAM,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAC/C,eAAe,EACb,KAAK,GACL,MAAM,GACN,MAAM,GACN,QAAQ,GACR,IAAI,GACJ,QAAQ,GACR,OAAO,GACP,WAAW,GACX,SAAS,GACT,OAAO,GACP,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,OAAO,GACP,YAAY,CACf,CAAA;AAED,MAAM,MAAM,6BAA6B,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA;AAE9F,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE;QACL,UAAU,EAAE;YACV,MAAM,EAAE,eAAe,CAAA;YACvB,YAAY,CAAC,EAAE,eAAe,CAAA;YAC9B,OAAO,CAAC,EAAE,eAAe,EAAE,CAAA;YAC3B,QAAQ,EAAE;gBACR,IAAI,EAAE,eAAe,CAAA;gBACrB,IAAI,EAAE,eAAe,CAAA;aACtB,CAAA;SACF,CAAA;QACD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;QAC9C,WAAW,CAAC,EAAE,IAAI,CAAC,iBAAiB,EAAE,+BAA+B,CAAC,CAAA;KACvE,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,cAAc,GAAG,aAAa,CAAC,CAAA;IACjF,WAAW,EAAE,sBAAsB,EAAE,CAAA;IACrC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5B,OAAO,EAAE,kBAAkB,EAAE,CAAA;CAC9B,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,GAAG,wBAAwB,CAAC,CAAA;AAEzF,eAAO,MAAM,0BAA0B,EAAE,SAAS,OAAO,CAAC,wBAAwB,CAAC,EAiBlF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/config/client.ts"],"sourcesContent":["import type { MappedComponent } from '../admin/types.js'\nimport type { ClientCollectionConfig } from '../collections/config/client.js'\nimport type { ClientGlobalConfig } from '../globals/config/client.js'\nimport type {\n LivePreviewConfig,\n SanitizedConfig,\n ServerOnlyLivePreviewProperties,\n} from './types.js'\n\nexport type ServerOnlyRootProperties = keyof Pick<\n SanitizedConfig,\n | 'bin'\n | 'cors'\n | 'csrf'\n | 'custom'\n | 'db'\n | 'editor'\n | 'email'\n | 'endpoints'\n | 'graphQL'\n | 'hooks'\n | 'onInit'\n | 'plugins'\n | 'secret'\n | 'sharp'\n | 'typescript'\n>\n\nexport type ServerOnlyRootAdminProperties = keyof Pick<SanitizedConfig['admin'], 'components'>\n\nexport type ClientConfig = {\n admin: {\n components: {\n Avatar: MappedComponent\n LogoutButton?: MappedComponent\n actions?: MappedComponent[]\n graphics: {\n Icon: MappedComponent\n Logo: MappedComponent\n }\n }\n livePreview?: Omit<LivePreviewConfig, ServerOnlyLivePreviewProperties>\n } & Omit<SanitizedConfig['admin'], 'components' | 'livePreview'>\n collections: ClientCollectionConfig[]\n custom?: Record<string, any>\n globals: ClientGlobalConfig[]\n} & Omit<SanitizedConfig, 'admin' | 'collections' | 'globals' | ServerOnlyRootProperties>\n\nexport const serverOnlyConfigProperties: readonly Partial<ServerOnlyRootProperties>[] = [\n 'endpoints',\n 'db',\n 'editor',\n 'plugins',\n 'sharp',\n 'onInit',\n 'secret',\n 'hooks',\n 'bin',\n 'typescript',\n 'cors',\n 'csrf',\n 'email',\n 'custom',\n 'graphQL',\n // `admin`, `onInit`, `localization`, `collections`, and `globals` are all handled separately\n]\n"],"names":["serverOnlyConfigProperties"],"mappings":"AAgDA,OAAO,MAAMA,6BAA2E;IACtF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CAED,CAAA"}
1
+ {"version":3,"sources":["../../src/config/client.ts"],"sourcesContent":["import type { MappedComponent } from '../admin/types.js'\nimport type { ClientCollectionConfig } from '../collections/config/client.js'\nimport type { ClientGlobalConfig } from '../globals/config/client.js'\nimport type {\n LivePreviewConfig,\n SanitizedConfig,\n ServerOnlyLivePreviewProperties,\n} from './types.js'\n\nexport type ServerOnlyRootProperties = keyof Pick<\n SanitizedConfig,\n | 'bin'\n | 'cors'\n | 'csrf'\n | 'custom'\n | 'db'\n | 'editor'\n | 'email'\n | 'endpoints'\n | 'graphQL'\n | 'hooks'\n | 'onInit'\n | 'plugins'\n | 'secret'\n | 'sharp'\n | 'typescript'\n>\n\nexport type ServerOnlyRootAdminProperties = keyof Pick<SanitizedConfig['admin'], 'components'>\n\nexport type ClientConfig = {\n admin: {\n components: {\n Avatar: MappedComponent\n LogoutButton?: MappedComponent\n actions?: MappedComponent[]\n graphics: {\n Icon: MappedComponent\n Logo: MappedComponent\n }\n }\n dependencies?: Record<string, MappedComponent>\n livePreview?: Omit<LivePreviewConfig, ServerOnlyLivePreviewProperties>\n } & Omit<SanitizedConfig['admin'], 'components' | 'dependencies' | 'livePreview'>\n collections: ClientCollectionConfig[]\n custom?: Record<string, any>\n globals: ClientGlobalConfig[]\n} & Omit<SanitizedConfig, 'admin' | 'collections' | 'globals' | ServerOnlyRootProperties>\n\nexport const serverOnlyConfigProperties: readonly Partial<ServerOnlyRootProperties>[] = [\n 'endpoints',\n 'db',\n 'editor',\n 'plugins',\n 'sharp',\n 'onInit',\n 'secret',\n 'hooks',\n 'bin',\n 'typescript',\n 'cors',\n 'csrf',\n 'email',\n 'custom',\n 'graphQL',\n // `admin`, `onInit`, `localization`, `collections`, and `globals` are all handled separately\n]\n"],"names":["serverOnlyConfigProperties"],"mappings":"AAiDA,OAAO,MAAMA,6BAA2E;IACtF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CAED,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../src/config/find.ts"],"names":[],"mappings":"AA4CA;;;;GAIG;AACH,eAAO,MAAM,UAAU,QAAO,MAuE7B,CAAA"}
1
+ {"version":3,"file":"find.d.ts","sourceRoot":"","sources":["../../src/config/find.ts"],"names":[],"mappings":"AA4CA;;;;GAIG;AACH,eAAO,MAAM,UAAU,QAAO,MA6E7B,CAAA"}
@@ -61,7 +61,9 @@ import path from 'path';
61
61
  rootPath
62
62
  ];
63
63
  for (const searchPath of searchPaths){
64
- if (!searchPath) continue;
64
+ if (!searchPath) {
65
+ continue;
66
+ }
65
67
  const configPath = findUpSync((dir)=>{
66
68
  const tsPath = path.join(dir, 'payload.config.ts');
67
69
  const hasTS = pathExistsSync(tsPath);
@@ -90,7 +92,9 @@ import path from 'path';
90
92
  ], {
91
93
  cwd: path.resolve(process.cwd(), 'dist')
92
94
  });
93
- if (distConfigPath) return distConfigPath;
95
+ if (distConfigPath) {
96
+ return distConfigPath;
97
+ }
94
98
  } else {
95
99
  const srcConfigPath = findUpSync([
96
100
  'payload.config.js',
@@ -98,7 +102,9 @@ import path from 'path';
98
102
  ], {
99
103
  cwd: path.resolve(process.cwd(), 'src')
100
104
  });
101
- if (srcConfigPath) return srcConfigPath;
105
+ if (srcConfigPath) {
106
+ return srcConfigPath;
107
+ }
102
108
  }
103
109
  throw new Error('Error: cannot find Payload config. Please create a configuration file located at the root of your current working directory called "payload.config.js" or "payload.config.ts".');
104
110
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/config/find.ts"],"sourcesContent":["import { findUpSync, pathExistsSync } from 'find-up'\nimport { getTsconfig } from 'get-tsconfig'\nimport path from 'path'\n\n/**\n * Returns the source and output paths from the nearest tsconfig.json file.\n * If no tsconfig.json file is found, returns the current working directory.\n * @returns An object containing the source and output paths.\n */\nconst getTSConfigPaths = (): {\n configPath?: string\n outPath?: string\n rootPath?: string\n srcPath?: string\n tsConfigPath?: string\n} => {\n const tsConfigResult = getTsconfig()\n const tsConfig = tsConfigResult.config\n const tsConfigDir = path.dirname(tsConfigResult.path)\n\n try {\n const rootConfigDir = path.resolve(tsConfigDir, tsConfig.compilerOptions.baseUrl || '')\n const srcPath = tsConfig.compilerOptions?.rootDir || path.resolve(process.cwd(), 'src')\n const outPath = tsConfig.compilerOptions?.outDir || path.resolve(process.cwd(), 'dist')\n let configPath = tsConfig.compilerOptions?.paths?.['@payload-config']?.[0]\n\n if (configPath) {\n configPath = path.resolve(rootConfigDir, configPath)\n }\n return {\n configPath,\n outPath,\n rootPath: rootConfigDir,\n srcPath,\n tsConfigPath: tsConfigResult.path,\n }\n } catch (error) {\n console.error(`Error parsing tsconfig.json: ${error}`) // Do not throw the error, as we can still continue with the other config path finding methods\n return {\n rootPath: process.cwd(),\n }\n }\n}\n\n/**\n * Searches for a Payload configuration file.\n * @returns The absolute path to the Payload configuration file.\n * @throws An error if no configuration file is found.\n */\nexport const findConfig = (): string => {\n // If the developer has specified a config path,\n // format it if relative and use it directly if absolute\n if (process.env.PAYLOAD_CONFIG_PATH) {\n if (path.isAbsolute(process.env.PAYLOAD_CONFIG_PATH)) {\n return process.env.PAYLOAD_CONFIG_PATH\n }\n\n return path.resolve(process.cwd(), process.env.PAYLOAD_CONFIG_PATH)\n }\n\n const { configPath, outPath, rootPath, srcPath } = getTSConfigPaths()\n\n // if configPath is absolute file, not folder, return it\n if (path.extname(configPath) === '.js' || path.extname(configPath) === '.ts') {\n return configPath\n }\n\n const searchPaths =\n process.env.NODE_ENV === 'production'\n ? [configPath, outPath, srcPath, rootPath]\n : [configPath, srcPath, rootPath]\n\n for (const searchPath of searchPaths) {\n if (!searchPath) continue\n\n const configPath = findUpSync(\n (dir) => {\n const tsPath = path.join(dir, 'payload.config.ts')\n const hasTS = pathExistsSync(tsPath)\n\n if (hasTS) {\n return tsPath\n }\n\n const jsPath = path.join(dir, 'payload.config.js')\n const hasJS = pathExistsSync(jsPath)\n\n if (hasJS) {\n return jsPath\n }\n\n return undefined\n },\n { cwd: searchPath },\n )\n\n if (configPath) {\n return configPath\n }\n }\n\n // If no config file is found in the directories defined by tsconfig.json,\n // try searching in the 'src' and 'dist' directory as a last resort, as they are most commonly used\n if (process.env.NODE_ENV === 'production') {\n const distConfigPath = findUpSync(['payload.config.js', 'payload.config.ts'], {\n cwd: path.resolve(process.cwd(), 'dist'),\n })\n\n if (distConfigPath) return distConfigPath\n } else {\n const srcConfigPath = findUpSync(['payload.config.js', 'payload.config.ts'], {\n cwd: path.resolve(process.cwd(), 'src'),\n })\n\n if (srcConfigPath) return srcConfigPath\n }\n\n throw new Error(\n 'Error: cannot find Payload config. Please create a configuration file located at the root of your current working directory called \"payload.config.js\" or \"payload.config.ts\".',\n )\n}\n"],"names":["findUpSync","pathExistsSync","getTsconfig","path","getTSConfigPaths","tsConfigResult","tsConfig","config","tsConfigDir","dirname","rootConfigDir","resolve","compilerOptions","baseUrl","srcPath","rootDir","process","cwd","outPath","outDir","configPath","paths","rootPath","tsConfigPath","error","console","findConfig","env","PAYLOAD_CONFIG_PATH","isAbsolute","extname","searchPaths","NODE_ENV","searchPath","dir","tsPath","join","hasTS","jsPath","hasJS","undefined","distConfigPath","srcConfigPath","Error"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/config/find.ts"],"sourcesContent":["import { findUpSync, pathExistsSync } from 'find-up'\nimport { getTsconfig } from 'get-tsconfig'\nimport path from 'path'\n\n/**\n * Returns the source and output paths from the nearest tsconfig.json file.\n * If no tsconfig.json file is found, returns the current working directory.\n * @returns An object containing the source and output paths.\n */\nconst getTSConfigPaths = (): {\n configPath?: string\n outPath?: string\n rootPath?: string\n srcPath?: string\n tsConfigPath?: string\n} => {\n const tsConfigResult = getTsconfig()\n const tsConfig = tsConfigResult.config\n const tsConfigDir = path.dirname(tsConfigResult.path)\n\n try {\n const rootConfigDir = path.resolve(tsConfigDir, tsConfig.compilerOptions.baseUrl || '')\n const srcPath = tsConfig.compilerOptions?.rootDir || path.resolve(process.cwd(), 'src')\n const outPath = tsConfig.compilerOptions?.outDir || path.resolve(process.cwd(), 'dist')\n let configPath = tsConfig.compilerOptions?.paths?.['@payload-config']?.[0]\n\n if (configPath) {\n configPath = path.resolve(rootConfigDir, configPath)\n }\n return {\n configPath,\n outPath,\n rootPath: rootConfigDir,\n srcPath,\n tsConfigPath: tsConfigResult.path,\n }\n } catch (error) {\n console.error(`Error parsing tsconfig.json: ${error}`) // Do not throw the error, as we can still continue with the other config path finding methods\n return {\n rootPath: process.cwd(),\n }\n }\n}\n\n/**\n * Searches for a Payload configuration file.\n * @returns The absolute path to the Payload configuration file.\n * @throws An error if no configuration file is found.\n */\nexport const findConfig = (): string => {\n // If the developer has specified a config path,\n // format it if relative and use it directly if absolute\n if (process.env.PAYLOAD_CONFIG_PATH) {\n if (path.isAbsolute(process.env.PAYLOAD_CONFIG_PATH)) {\n return process.env.PAYLOAD_CONFIG_PATH\n }\n\n return path.resolve(process.cwd(), process.env.PAYLOAD_CONFIG_PATH)\n }\n\n const { configPath, outPath, rootPath, srcPath } = getTSConfigPaths()\n\n // if configPath is absolute file, not folder, return it\n if (path.extname(configPath) === '.js' || path.extname(configPath) === '.ts') {\n return configPath\n }\n\n const searchPaths =\n process.env.NODE_ENV === 'production'\n ? [configPath, outPath, srcPath, rootPath]\n : [configPath, srcPath, rootPath]\n\n for (const searchPath of searchPaths) {\n if (!searchPath) {\n continue\n }\n\n const configPath = findUpSync(\n (dir) => {\n const tsPath = path.join(dir, 'payload.config.ts')\n const hasTS = pathExistsSync(tsPath)\n\n if (hasTS) {\n return tsPath\n }\n\n const jsPath = path.join(dir, 'payload.config.js')\n const hasJS = pathExistsSync(jsPath)\n\n if (hasJS) {\n return jsPath\n }\n\n return undefined\n },\n { cwd: searchPath },\n )\n\n if (configPath) {\n return configPath\n }\n }\n\n // If no config file is found in the directories defined by tsconfig.json,\n // try searching in the 'src' and 'dist' directory as a last resort, as they are most commonly used\n if (process.env.NODE_ENV === 'production') {\n const distConfigPath = findUpSync(['payload.config.js', 'payload.config.ts'], {\n cwd: path.resolve(process.cwd(), 'dist'),\n })\n\n if (distConfigPath) {\n return distConfigPath\n }\n } else {\n const srcConfigPath = findUpSync(['payload.config.js', 'payload.config.ts'], {\n cwd: path.resolve(process.cwd(), 'src'),\n })\n\n if (srcConfigPath) {\n return srcConfigPath\n }\n }\n\n throw new Error(\n 'Error: cannot find Payload config. Please create a configuration file located at the root of your current working directory called \"payload.config.js\" or \"payload.config.ts\".',\n )\n}\n"],"names":["findUpSync","pathExistsSync","getTsconfig","path","getTSConfigPaths","tsConfigResult","tsConfig","config","tsConfigDir","dirname","rootConfigDir","resolve","compilerOptions","baseUrl","srcPath","rootDir","process","cwd","outPath","outDir","configPath","paths","rootPath","tsConfigPath","error","console","findConfig","env","PAYLOAD_CONFIG_PATH","isAbsolute","extname","searchPaths","NODE_ENV","searchPath","dir","tsPath","join","hasTS","jsPath","hasJS","undefined","distConfigPath","srcConfigPath","Error"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,MAAM,EAGN,eAAe,EAChB,MAAM,YAAY,CAAA;AAsCnB,eAAO,MAAM,cAAc,mBAA0B,MAAM,KAAG,OAAO,CAAC,eAAe,CA2JpF,CAAA"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,MAAM,EAGN,eAAe,EAChB,MAAM,YAAY,CAAA;AAsCnB,eAAO,MAAM,cAAc,mBAA0B,MAAM,KAAG,OAAO,CAAC,eAAe,CAgKpF,CAAA"}
@@ -122,18 +122,23 @@ export const sanitizeConfig = async (incomingConfig)=>{
122
122
  config.csrf.push(config.serverURL);
123
123
  }
124
124
  // Get deduped list of upload adapters
125
- if (!config.upload) config.upload = {
126
- adapters: []
127
- };
125
+ if (!config.upload) {
126
+ config.upload = {
127
+ adapters: []
128
+ };
129
+ }
128
130
  config.upload.adapters = Array.from(new Set(config.collections.map((c)=>c.upload?.adapter).filter(Boolean)));
129
131
  // Pass through the email config as is so adapters don't break
130
- if (incomingConfig.email) config.email = incomingConfig.email;
132
+ if (incomingConfig.email) {
133
+ config.email = incomingConfig.email;
134
+ }
131
135
  /*
132
136
  Execute richText sanitization
133
137
  */ if (typeof incomingConfig.editor === 'function') {
134
138
  config.editor = await incomingConfig.editor({
135
139
  config: config,
136
- isRoot: true
140
+ isRoot: true,
141
+ parentIsLocalized: false
137
142
  });
138
143
  if (config.editor.i18n && Object.keys(config.editor.i18n).length >= 0) {
139
144
  config.i18n.translations = deepMergeSimple(config.i18n.translations, config.editor.i18n);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/config/sanitize.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\n\nimport { en } from '@payloadcms/translations/languages/en'\nimport { deepMergeSimple } from '@payloadcms/translations/utilities'\n\nimport type {\n Config,\n LocalizationConfigWithLabels,\n LocalizationConfigWithNoLabels,\n SanitizedConfig,\n} from './types.js'\n\nimport { defaultUserCollection } from '../auth/defaultUser.js'\nimport { sanitizeCollection } from '../collections/config/sanitize.js'\nimport { migrationsCollection } from '../database/migrations/migrationsCollection.js'\nimport { InvalidConfiguration } from '../errors/index.js'\nimport { sanitizeGlobals } from '../globals/config/sanitize.js'\nimport getPreferencesCollection from '../preferences/preferencesCollection.js'\nimport checkDuplicateCollections from '../utilities/checkDuplicateCollections.js'\nimport { deepMergeWithReactComponents } from '../utilities/deepMerge.js'\nimport { defaults } from './defaults.js'\n\nconst sanitizeAdminConfig = (configToSanitize: Config): Partial<SanitizedConfig> => {\n const sanitizedConfig = { ...configToSanitize }\n\n // add default user collection if none provided\n if (!sanitizedConfig?.admin?.user) {\n const firstCollectionWithAuth = sanitizedConfig.collections.find(({ auth }) => Boolean(auth))\n if (firstCollectionWithAuth) {\n sanitizedConfig.admin.user = firstCollectionWithAuth.slug\n } else {\n sanitizedConfig.admin.user = defaultUserCollection.slug\n sanitizedConfig.collections.push(defaultUserCollection)\n }\n }\n\n const userCollection = sanitizedConfig.collections.find(\n ({ slug }) => slug === sanitizedConfig.admin.user,\n )\n if (!userCollection || !userCollection.auth) {\n throw new InvalidConfiguration(\n `${sanitizedConfig.admin.user} is not a valid admin user collection`,\n )\n }\n\n return sanitizedConfig as unknown as Partial<SanitizedConfig>\n}\n\nexport const sanitizeConfig = async (incomingConfig: Config): Promise<SanitizedConfig> => {\n const configWithDefaults = {\n ...defaults,\n ...incomingConfig,\n admin: {\n ...defaults.admin,\n ...incomingConfig?.admin,\n meta: {\n ...defaults.admin.meta,\n ...incomingConfig?.admin?.meta,\n },\n routes: {\n ...defaults.admin.routes,\n ...incomingConfig?.admin?.routes,\n },\n },\n graphQL: {\n ...defaults.graphQL,\n ...incomingConfig?.graphQL,\n },\n routes: {\n ...defaults.routes,\n ...incomingConfig?.routes,\n },\n typescript: {\n ...defaults.typescript,\n ...incomingConfig?.typescript,\n },\n }\n\n if (!configWithDefaults?.serverURL) {\n configWithDefaults.serverURL = ''\n }\n\n if (process.env.NEXT_BASE_PATH) {\n if (!incomingConfig?.routes?.api) {\n // check for incomingConfig, as configWithDefaults will always have a default value for routes.api\n configWithDefaults.routes.api = process.env.NEXT_BASE_PATH + '/api'\n }\n }\n\n const config: Partial<SanitizedConfig> = sanitizeAdminConfig(configWithDefaults)\n\n if (config.localization && config.localization.locales?.length > 0) {\n // clone localization config so to not break everything\n const firstLocale = config.localization.locales[0]\n if (typeof firstLocale === 'string') {\n config.localization.localeCodes = [\n ...(config.localization as unknown as LocalizationConfigWithNoLabels).locales,\n ]\n\n // is string[], so convert to Locale[]\n config.localization.locales = (\n config.localization as unknown as LocalizationConfigWithNoLabels\n ).locales.map((locale) => ({\n code: locale,\n label: locale,\n rtl: false,\n toString: () => locale,\n }))\n } else {\n // is Locale[], so convert to string[] for localeCodes\n config.localization.localeCodes = config.localization.locales.reduce((locales, locale) => {\n locales.push(locale.code)\n return locales\n }, [] as string[])\n\n config.localization.locales = (\n config.localization as LocalizationConfigWithLabels\n ).locales.map((locale) => ({\n ...locale,\n toString: () => locale.code,\n }))\n }\n }\n\n const i18nConfig: SanitizedConfig['i18n'] = {\n fallbackLanguage: 'en',\n supportedLanguages: {\n en,\n },\n translations: {},\n }\n\n if (incomingConfig?.i18n) {\n i18nConfig.supportedLanguages =\n incomingConfig.i18n?.supportedLanguages || i18nConfig.supportedLanguages\n\n const supportedLangKeys = <AcceptedLanguages[]>Object.keys(i18nConfig.supportedLanguages)\n const fallbackLang = incomingConfig.i18n?.fallbackLanguage || i18nConfig.fallbackLanguage\n\n i18nConfig.fallbackLanguage = supportedLangKeys.includes(fallbackLang)\n ? fallbackLang\n : supportedLangKeys[0]\n i18nConfig.translations =\n (incomingConfig.i18n?.translations as SanitizedConfig['i18n']['translations']) ||\n i18nConfig.translations\n }\n\n config.i18n = i18nConfig\n\n configWithDefaults.collections.push(getPreferencesCollection(config as unknown as Config))\n configWithDefaults.collections.push(migrationsCollection)\n\n const richTextSanitizationPromises: Array<(config: SanitizedConfig) => Promise<void>> = []\n for (let i = 0; i < config.collections.length; i++) {\n config.collections[i] = await sanitizeCollection(\n config as unknown as Config,\n config.collections[i],\n richTextSanitizationPromises,\n )\n }\n\n checkDuplicateCollections(config.collections)\n\n if (config.globals.length > 0) {\n config.globals = await sanitizeGlobals(\n config as unknown as Config,\n richTextSanitizationPromises,\n )\n }\n\n if (config.serverURL !== '') {\n config.csrf.push(config.serverURL)\n }\n\n // Get deduped list of upload adapters\n if (!config.upload) config.upload = { adapters: [] }\n config.upload.adapters = Array.from(\n new Set(config.collections.map((c) => c.upload?.adapter).filter(Boolean)),\n )\n\n // Pass through the email config as is so adapters don't break\n if (incomingConfig.email) config.email = incomingConfig.email\n\n /*\n Execute richText sanitization\n */\n if (typeof incomingConfig.editor === 'function') {\n config.editor = await incomingConfig.editor({\n config: config as SanitizedConfig,\n isRoot: true,\n })\n if (config.editor.i18n && Object.keys(config.editor.i18n).length >= 0) {\n config.i18n.translations = deepMergeSimple(config.i18n.translations, config.editor.i18n)\n }\n }\n\n const promises: Promise<void>[] = []\n for (const sanitizeFunction of richTextSanitizationPromises) {\n promises.push(sanitizeFunction(config as SanitizedConfig))\n }\n await Promise.all(promises)\n\n return config as SanitizedConfig\n}\n"],"names":["en","deepMergeSimple","defaultUserCollection","sanitizeCollection","migrationsCollection","InvalidConfiguration","sanitizeGlobals","getPreferencesCollection","checkDuplicateCollections","defaults","sanitizeAdminConfig","configToSanitize","sanitizedConfig","admin","user","firstCollectionWithAuth","collections","find","auth","Boolean","slug","push","userCollection","sanitizeConfig","incomingConfig","configWithDefaults","meta","routes","graphQL","typescript","serverURL","process","env","NEXT_BASE_PATH","api","config","localization","locales","length","firstLocale","localeCodes","map","locale","code","label","rtl","toString","reduce","i18nConfig","fallbackLanguage","supportedLanguages","translations","i18n","supportedLangKeys","Object","keys","fallbackLang","includes","richTextSanitizationPromises","i","globals","csrf","upload","adapters","Array","from","Set","c","adapter","filter","email","editor","isRoot","promises","sanitizeFunction","Promise","all"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/config/sanitize.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\n\nimport { en } from '@payloadcms/translations/languages/en'\nimport { deepMergeSimple } from '@payloadcms/translations/utilities'\n\nimport type {\n Config,\n LocalizationConfigWithLabels,\n LocalizationConfigWithNoLabels,\n SanitizedConfig,\n} from './types.js'\n\nimport { defaultUserCollection } from '../auth/defaultUser.js'\nimport { sanitizeCollection } from '../collections/config/sanitize.js'\nimport { migrationsCollection } from '../database/migrations/migrationsCollection.js'\nimport { InvalidConfiguration } from '../errors/index.js'\nimport { sanitizeGlobals } from '../globals/config/sanitize.js'\nimport getPreferencesCollection from '../preferences/preferencesCollection.js'\nimport checkDuplicateCollections from '../utilities/checkDuplicateCollections.js'\nimport { deepMergeWithReactComponents } from '../utilities/deepMerge.js'\nimport { defaults } from './defaults.js'\n\nconst sanitizeAdminConfig = (configToSanitize: Config): Partial<SanitizedConfig> => {\n const sanitizedConfig = { ...configToSanitize }\n\n // add default user collection if none provided\n if (!sanitizedConfig?.admin?.user) {\n const firstCollectionWithAuth = sanitizedConfig.collections.find(({ auth }) => Boolean(auth))\n if (firstCollectionWithAuth) {\n sanitizedConfig.admin.user = firstCollectionWithAuth.slug\n } else {\n sanitizedConfig.admin.user = defaultUserCollection.slug\n sanitizedConfig.collections.push(defaultUserCollection)\n }\n }\n\n const userCollection = sanitizedConfig.collections.find(\n ({ slug }) => slug === sanitizedConfig.admin.user,\n )\n if (!userCollection || !userCollection.auth) {\n throw new InvalidConfiguration(\n `${sanitizedConfig.admin.user} is not a valid admin user collection`,\n )\n }\n\n return sanitizedConfig as unknown as Partial<SanitizedConfig>\n}\n\nexport const sanitizeConfig = async (incomingConfig: Config): Promise<SanitizedConfig> => {\n const configWithDefaults = {\n ...defaults,\n ...incomingConfig,\n admin: {\n ...defaults.admin,\n ...incomingConfig?.admin,\n meta: {\n ...defaults.admin.meta,\n ...incomingConfig?.admin?.meta,\n },\n routes: {\n ...defaults.admin.routes,\n ...incomingConfig?.admin?.routes,\n },\n },\n graphQL: {\n ...defaults.graphQL,\n ...incomingConfig?.graphQL,\n },\n routes: {\n ...defaults.routes,\n ...incomingConfig?.routes,\n },\n typescript: {\n ...defaults.typescript,\n ...incomingConfig?.typescript,\n },\n }\n\n if (!configWithDefaults?.serverURL) {\n configWithDefaults.serverURL = ''\n }\n\n if (process.env.NEXT_BASE_PATH) {\n if (!incomingConfig?.routes?.api) {\n // check for incomingConfig, as configWithDefaults will always have a default value for routes.api\n configWithDefaults.routes.api = process.env.NEXT_BASE_PATH + '/api'\n }\n }\n\n const config: Partial<SanitizedConfig> = sanitizeAdminConfig(configWithDefaults)\n\n if (config.localization && config.localization.locales?.length > 0) {\n // clone localization config so to not break everything\n const firstLocale = config.localization.locales[0]\n if (typeof firstLocale === 'string') {\n config.localization.localeCodes = [\n ...(config.localization as unknown as LocalizationConfigWithNoLabels).locales,\n ]\n\n // is string[], so convert to Locale[]\n config.localization.locales = (\n config.localization as unknown as LocalizationConfigWithNoLabels\n ).locales.map((locale) => ({\n code: locale,\n label: locale,\n rtl: false,\n toString: () => locale,\n }))\n } else {\n // is Locale[], so convert to string[] for localeCodes\n config.localization.localeCodes = config.localization.locales.reduce((locales, locale) => {\n locales.push(locale.code)\n return locales\n }, [] as string[])\n\n config.localization.locales = (\n config.localization as LocalizationConfigWithLabels\n ).locales.map((locale) => ({\n ...locale,\n toString: () => locale.code,\n }))\n }\n }\n\n const i18nConfig: SanitizedConfig['i18n'] = {\n fallbackLanguage: 'en',\n supportedLanguages: {\n en,\n },\n translations: {},\n }\n\n if (incomingConfig?.i18n) {\n i18nConfig.supportedLanguages =\n incomingConfig.i18n?.supportedLanguages || i18nConfig.supportedLanguages\n\n const supportedLangKeys = <AcceptedLanguages[]>Object.keys(i18nConfig.supportedLanguages)\n const fallbackLang = incomingConfig.i18n?.fallbackLanguage || i18nConfig.fallbackLanguage\n\n i18nConfig.fallbackLanguage = supportedLangKeys.includes(fallbackLang)\n ? fallbackLang\n : supportedLangKeys[0]\n i18nConfig.translations =\n (incomingConfig.i18n?.translations as SanitizedConfig['i18n']['translations']) ||\n i18nConfig.translations\n }\n\n config.i18n = i18nConfig\n\n configWithDefaults.collections.push(getPreferencesCollection(config as unknown as Config))\n configWithDefaults.collections.push(migrationsCollection)\n\n const richTextSanitizationPromises: Array<(config: SanitizedConfig) => Promise<void>> = []\n for (let i = 0; i < config.collections.length; i++) {\n config.collections[i] = await sanitizeCollection(\n config as unknown as Config,\n config.collections[i],\n richTextSanitizationPromises,\n )\n }\n\n checkDuplicateCollections(config.collections)\n\n if (config.globals.length > 0) {\n config.globals = await sanitizeGlobals(\n config as unknown as Config,\n richTextSanitizationPromises,\n )\n }\n\n if (config.serverURL !== '') {\n config.csrf.push(config.serverURL)\n }\n\n // Get deduped list of upload adapters\n if (!config.upload) {\n config.upload = { adapters: [] }\n }\n config.upload.adapters = Array.from(\n new Set(config.collections.map((c) => c.upload?.adapter).filter(Boolean)),\n )\n\n // Pass through the email config as is so adapters don't break\n if (incomingConfig.email) {\n config.email = incomingConfig.email\n }\n\n /*\n Execute richText sanitization\n */\n if (typeof incomingConfig.editor === 'function') {\n config.editor = await incomingConfig.editor({\n config: config as SanitizedConfig,\n isRoot: true,\n parentIsLocalized: false,\n })\n if (config.editor.i18n && Object.keys(config.editor.i18n).length >= 0) {\n config.i18n.translations = deepMergeSimple(config.i18n.translations, config.editor.i18n)\n }\n }\n\n const promises: Promise<void>[] = []\n for (const sanitizeFunction of richTextSanitizationPromises) {\n promises.push(sanitizeFunction(config as SanitizedConfig))\n }\n await Promise.all(promises)\n\n return config as SanitizedConfig\n}\n"],"names":["en","deepMergeSimple","defaultUserCollection","sanitizeCollection","migrationsCollection","InvalidConfiguration","sanitizeGlobals","getPreferencesCollection","checkDuplicateCollections","defaults","sanitizeAdminConfig","configToSanitize","sanitizedConfig","admin","user","firstCollectionWithAuth","collections","find","auth","Boolean","slug","push","userCollection","sanitizeConfig","incomingConfig","configWithDefaults","meta","routes","graphQL","typescript","serverURL","process","env","NEXT_BASE_PATH","api","config","localization","locales","length","firstLocale","localeCodes","map","locale","code","label","rtl","toString","reduce","i18nConfig","fallbackLanguage","supportedLanguages","translations","i18n","supportedLangKeys","Object","keys","fallbackLang","includes","richTextSanitizationPromises","i","globals","csrf","upload","adapters","Array","from","Set","c","adapter","filter","email","editor","isRoot","parentIsLocalized","promises","sanitizeFunction","Promise","all"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { DefaultTranslationsObject, I18nClient, I18nOptions, TFunction } from '@payloadcms/translations';
2
- import type { Options as ExpressFileUploadOptions } from 'express-fileupload';
2
+ import type { BusboyConfig } from 'busboy';
3
3
  import type GraphQL from 'graphql';
4
4
  import type { JSONSchema4 } from 'json-schema';
5
5
  import type { DestinationStream, LoggerOptions } from 'pino';
@@ -392,6 +392,106 @@ export type AdminComponent = {
392
392
  export interface AdminDependencies {
393
393
  [key: string]: AdminComponent | AdminFunction;
394
394
  }
395
+ export type FetchAPIFileUploadOptions = {
396
+ /**
397
+ * Returns a HTTP 413 when the file is bigger than the size limit if `true`.
398
+ * Otherwise, it will add a `truncated = true` to the resulting file structure.
399
+ * @default false
400
+ */
401
+ abortOnLimit?: boolean | undefined;
402
+ /**
403
+ * Automatically creates the directory path specified in `.mv(filePathName)`
404
+ * @default false
405
+ */
406
+ createParentPath?: boolean | undefined;
407
+ /**
408
+ * Turn on/off upload process logging. Can be useful for troubleshooting.
409
+ * @default false
410
+ */
411
+ debug?: boolean | undefined;
412
+ /**
413
+ * User defined limit handler which will be invoked if the file is bigger than configured limits.
414
+ * @default false
415
+ */
416
+ limitHandler?: ((args: {
417
+ request: Request;
418
+ size: number;
419
+ }) => void) | boolean | undefined;
420
+ /**
421
+ * By default, `req.body` and `req.files` are flattened like this:
422
+ * `{'name': 'John', 'hobbies[0]': 'Cinema', 'hobbies[1]': 'Bike'}
423
+ *
424
+ * When this option is enabled they are parsed in order to be nested like this:
425
+ * `{'name': 'John', 'hobbies': ['Cinema', 'Bike']}`
426
+ * @default false
427
+ */
428
+ parseNested?: boolean | undefined;
429
+ /**
430
+ * Preserves filename extension when using `safeFileNames` option.
431
+ * If set to `true`, will default to an extension length of `3`.
432
+ * If set to `number`, this will be the max allowable extension length.
433
+ * If an extension is smaller than the extension length, it remains untouched. If the extension is longer,
434
+ * it is shifted.
435
+ * @default false
436
+ *
437
+ * @example
438
+ * // true
439
+ * app.use(fileUpload({ safeFileNames: true, preserveExtension: true }));
440
+ * // myFileName.ext --> myFileName.ext
441
+ *
442
+ * @example
443
+ * // max extension length 2, extension shifted
444
+ * app.use(fileUpload({ safeFileNames: true, preserveExtension: 2 }));
445
+ * // myFileName.ext --> myFileNamee.xt
446
+ */
447
+ preserveExtension?: boolean | number | undefined;
448
+ /**
449
+ * Response which will be send to client if file size limit exceeded when `abortOnLimit` set to `true`.
450
+ * @default 'File size limit has been reached'
451
+ */
452
+ responseOnLimit?: string | undefined;
453
+ /**
454
+ * Strips characters from the upload's filename.
455
+ * You can use custom regex to determine what to strip.
456
+ * If set to `true`, non-alphanumeric characters _except_ dashes and underscores will be stripped.
457
+ * This option is off by default.
458
+ * @default false
459
+ *
460
+ * @example
461
+ * // strip slashes from file names
462
+ * app.use(fileUpload({ safeFileNames: /\\/g }))
463
+ *
464
+ * @example
465
+ * app.use(fileUpload({ safeFileNames: true }))
466
+ */
467
+ safeFileNames?: RegExp | boolean | undefined;
468
+ /**
469
+ * Path to store temporary files.
470
+ * Used along with the `useTempFiles` option. By default this module uses `'tmp'` folder
471
+ * in the current working directory.
472
+ * You can use trailing slash, but it is not necessary.
473
+ * @default './tmp'
474
+ */
475
+ tempFileDir?: string | undefined;
476
+ /**
477
+ * This defines how long to wait for data before aborting. Set to `0` if you want to turn off timeout checks.
478
+ * @default 60_000
479
+ */
480
+ uploadTimeout?: number | undefined;
481
+ /**
482
+ * Applies uri decoding to file names if set `true`.
483
+ * @default false
484
+ */
485
+ uriDecodeFileNames?: boolean | undefined;
486
+ /**
487
+ * By default this module uploads files into RAM.
488
+ * Setting this option to `true` turns on using temporary files instead of utilising RAM.
489
+ * This avoids memory overflow issues when uploading large files or in case of uploading
490
+ * lots of files at same time.
491
+ * @default false
492
+ */
493
+ useTempFiles?: boolean | undefined;
494
+ } & Partial<BusboyConfig>;
395
495
  /**
396
496
  * This is the central configuration
397
497
  *
@@ -564,6 +664,19 @@ export type Config = {
564
664
  * @see https://payloadcms.com/docs/configuration/collections#collection-configs
565
665
  */
566
666
  collections?: CollectionConfig[];
667
+ /**
668
+ * Compatibility flags for prior Payload versions
669
+ */
670
+ compatibility?: {
671
+ /**
672
+ * By default, Payload will remove the `localized: true` property
673
+ * from fields if a parent field is localized. Set this property
674
+ * to `true` only if you have an existing Payload database from pre-3.0
675
+ * that you would like to maintain without migrating. This is only
676
+ * relevant for MongoDB databases.
677
+ */
678
+ allowLocalizedWithinLocalized: true;
679
+ };
567
680
  /**
568
681
  * Prefix a string to all cookies that Payload sets.
569
682
  *
@@ -731,7 +844,7 @@ export type Config = {
731
844
  /**
732
845
  * Customize the handling of incoming file uploads for collections that have uploads enabled.
733
846
  */
734
- upload?: ExpressFileUploadOptions;
847
+ upload?: FetchAPIFileUploadOptions;
735
848
  };
736
849
  export type SanitizedConfig = {
737
850
  collections: SanitizedCollectionConfig[];
@@ -751,7 +864,7 @@ export type SanitizedConfig = {
751
864
  * Deduped list of adapters used in the project
752
865
  */
753
866
  adapters: string[];
754
- } & ExpressFileUploadOptions;
867
+ } & FetchAPIFileUploadOptions;
755
868
  } & Omit<DeepRequired<Config>, 'collections' | 'editor' | 'endpoint' | 'globals' | 'i18n' | 'localization' | 'upload'>;
756
869
  export type EditConfig = {
757
870
  [key: string]: EditViewConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"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"}