payload 3.78.0-internal-debug.f663370 → 3.78.0-internal.ab11ffa

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 (73) hide show
  1. package/dist/admin/forms/Form.d.ts +6 -0
  2. package/dist/admin/forms/Form.d.ts.map +1 -1
  3. package/dist/admin/forms/Form.js.map +1 -1
  4. package/dist/admin/views/dashboard.d.ts +19 -4
  5. package/dist/admin/views/dashboard.d.ts.map +1 -1
  6. package/dist/admin/views/dashboard.js.map +1 -1
  7. package/dist/admin/views/list.d.ts +2 -0
  8. package/dist/admin/views/list.d.ts.map +1 -1
  9. package/dist/admin/views/list.js.map +1 -1
  10. package/dist/bin/generateImportMap/iterateConfig.d.ts.map +1 -1
  11. package/dist/bin/generateImportMap/iterateConfig.js +10 -0
  12. package/dist/bin/generateImportMap/iterateConfig.js.map +1 -1
  13. package/dist/collections/config/types.d.ts +0 -1
  14. package/dist/collections/config/types.d.ts.map +1 -1
  15. package/dist/collections/config/types.js.map +1 -1
  16. package/dist/collections/operations/update.d.ts.map +1 -1
  17. package/dist/collections/operations/update.js +2 -0
  18. package/dist/collections/operations/update.js.map +1 -1
  19. package/dist/collections/operations/updateByID.d.ts.map +1 -1
  20. package/dist/collections/operations/updateByID.js +2 -0
  21. package/dist/collections/operations/updateByID.js.map +1 -1
  22. package/dist/config/client.d.ts +4 -2
  23. package/dist/config/client.d.ts.map +1 -1
  24. package/dist/config/client.js +10 -2
  25. package/dist/config/client.js.map +1 -1
  26. package/dist/config/sanitize.d.ts.map +1 -1
  27. package/dist/config/sanitize.js +13 -0
  28. package/dist/config/sanitize.js.map +1 -1
  29. package/dist/config/types.d.ts +14 -5
  30. package/dist/config/types.d.ts.map +1 -1
  31. package/dist/config/types.js.map +1 -1
  32. package/dist/database/queryValidation/validateQueryPaths.d.ts.map +1 -1
  33. package/dist/database/queryValidation/validateQueryPaths.js +4 -0
  34. package/dist/database/queryValidation/validateQueryPaths.js.map +1 -1
  35. package/dist/exports/shared.d.ts +1 -0
  36. package/dist/exports/shared.d.ts.map +1 -1
  37. package/dist/exports/shared.js +1 -0
  38. package/dist/exports/shared.js.map +1 -1
  39. package/dist/index.bundled.d.ts +60 -11
  40. package/dist/index.d.ts +13 -1
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +1 -1
  43. package/dist/index.js.map +1 -1
  44. package/dist/uploads/endpoints/getFileFromURL.d.ts.map +1 -1
  45. package/dist/uploads/endpoints/getFileFromURL.js +4 -1
  46. package/dist/uploads/endpoints/getFileFromURL.js.map +1 -1
  47. package/dist/uploads/generateFileData.js +1 -1
  48. package/dist/uploads/generateFileData.js.map +1 -1
  49. package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
  50. package/dist/utilities/addDataAndFileToRequest.js +7 -5
  51. package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
  52. package/dist/utilities/configToJSONSchema.d.ts.map +1 -1
  53. package/dist/utilities/configToJSONSchema.js +105 -6
  54. package/dist/utilities/configToJSONSchema.js.map +1 -1
  55. package/dist/utilities/configToJSONSchema.spec.js +36 -4
  56. package/dist/utilities/configToJSONSchema.spec.js.map +1 -1
  57. package/dist/utilities/filterDataToSelectedLocales.d.ts.map +1 -1
  58. package/dist/utilities/filterDataToSelectedLocales.js +7 -1
  59. package/dist/utilities/filterDataToSelectedLocales.js.map +1 -1
  60. package/dist/utilities/filterDataToSelectedLocales.spec.js +193 -0
  61. package/dist/utilities/filterDataToSelectedLocales.spec.js.map +1 -0
  62. package/dist/utilities/mergeLocalizedData.d.ts.map +1 -1
  63. package/dist/utilities/mergeLocalizedData.js +51 -16
  64. package/dist/utilities/mergeLocalizedData.js.map +1 -1
  65. package/dist/utilities/mergeLocalizedData.spec.js +324 -0
  66. package/dist/utilities/mergeLocalizedData.spec.js.map +1 -1
  67. package/dist/utilities/sanitizeFilename.d.ts +6 -0
  68. package/dist/utilities/sanitizeFilename.d.ts.map +1 -0
  69. package/dist/utilities/sanitizeFilename.js +22 -0
  70. package/dist/utilities/sanitizeFilename.js.map +1 -0
  71. package/dist/versions/saveVersion.js +1 -1
  72. package/dist/versions/saveVersion.js.map +1 -1
  73. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"updateByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/updateByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAKhD,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,UAAU,EACV,8BAA8B,EAC9B,wBAAwB,EAEzB,MAAM,oBAAoB,CAAA;AAM3B,OAAO,EAAE,KAAK,cAAc,EAAwB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAa5F,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,cAAc,IAAI;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,WAAW,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC,CAAA;IACxD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAA;AAElD,eAAO,MAAM,mBAAmB,GAC9B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,6BAEjC,SAAS,CAAC,KAAK,CAAC,KAC7B,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA2MvD,CAAA"}
1
+ {"version":3,"file":"updateByID.d.ts","sourceRoot":"","sources":["../../../src/collections/operations/updateByID.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAKhD,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,UAAU,EACV,6BAA6B,EAC9B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,UAAU,EACV,8BAA8B,EAC9B,wBAAwB,EAEzB,MAAM,oBAAoB,CAAA;AAM3B,OAAO,EAAE,KAAK,cAAc,EAAwB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAa5F,MAAM,MAAM,SAAS,CAAC,KAAK,SAAS,cAAc,IAAI;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,UAAU,CAAA;IACtB,IAAI,EAAE,WAAW,CAAC,8BAA8B,CAAC,KAAK,CAAC,CAAC,CAAA;IACxD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,wBAAwB,CAAC,EAAE,OAAO,CAAA;IAClC,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,sBAAsB,CAAC,EAAE,OAAO,CAAA;IAChC,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,GAAG,EAAE,cAAc,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAA;AAElD,eAAO,MAAM,mBAAmB,GAC9B,KAAK,SAAS,cAAc,EAC5B,OAAO,SAAS,wBAAwB,CAAC,KAAK,CAAC,6BAEjC,SAAS,CAAC,KAAK,CAAC,KAC7B,OAAO,CAAC,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,CA4MvD,CAAA"}
@@ -56,7 +56,9 @@ export const updateByIDOperation = async (incomingArgs)=>{
56
56
  let fullWhere = combineQueries(where, accessResults);
57
57
  const isTrashAttempt = collectionConfig.trash && typeof data === 'object' && data !== null && 'deletedAt' in data && data.deletedAt != null;
58
58
  if (isTrashAttempt && !overrideAccess) {
59
+ // Pass data so access function can check data.deletedAt to know it's a trash attempt
59
60
  const deleteAccessResult = await executeAccess({
61
+ data,
60
62
  req
61
63
  }, collectionConfig.access.delete);
62
64
  fullWhere = combineQueries(fullWhere, deleteAccessResult);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/operations/updateByID.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport { status as httpStatus } from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type {\n Collection,\n RequiredDataFromCollectionSlug,\n SelectFromCollectionSlug,\n TypeWithID,\n} from '../config/types.js'\n\nimport { executeAccess } from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { type CollectionSlug, deepCopyObjectSimple, type FindOptions } from '../../index.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { appendNonTrashedFilter } from '../../utilities/appendNonTrashedFilter.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { sanitizeSelect } from '../../utilities/sanitizeSelect.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { buildAfterOperation } from './utilities/buildAfterOperation.js'\nimport { buildBeforeOperation } from './utilities/buildBeforeOperation.js'\nimport { updateDocument } from './utilities/update.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n depth?: number\n disableTransaction?: boolean\n disableVerificationEmail?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n overrideLock?: boolean\n overwriteExistingFiles?: boolean\n populate?: PopulateType\n publishAllLocales?: boolean\n publishSpecificLocale?: string\n req: PayloadRequest\n showHiddenFields?: boolean\n trash?: boolean\n unpublishAllLocales?: boolean\n} & Pick<FindOptions<TSlug, SelectType>, 'select'>\n\nexport const updateByIDOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n args = await buildBeforeOperation({\n args,\n collection: args.collection.config,\n operation: 'update',\n overrideAccess: args.overrideAccess!,\n })\n\n if (args.publishSpecificLocale) {\n args.req.locale = args.publishSpecificLocale\n }\n\n const {\n id,\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n draft: draftArg = false,\n overrideAccess,\n overrideLock,\n overwriteExistingFiles = false,\n populate,\n publishAllLocales,\n publishSpecificLocale,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select: incomingSelect,\n showHiddenFields,\n trash = false,\n unpublishAllLocales,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n const { data } = args\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 where = { id: { equals: id } }\n\n let fullWhere = combineQueries(where, accessResults)\n\n const isTrashAttempt =\n collectionConfig.trash &&\n typeof data === 'object' &&\n data !== null &&\n 'deletedAt' in data &&\n data.deletedAt != null\n\n if (isTrashAttempt && !overrideAccess) {\n const deleteAccessResult = await executeAccess({ req }, collectionConfig.access.delete)\n fullWhere = combineQueries(fullWhere, deleteAccessResult)\n }\n\n // Exclude trashed documents when trash: false\n fullWhere = appendNonTrashedFilter({\n enableTrash: collectionConfig.trash,\n trash,\n where: fullWhere,\n })\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: locale!,\n req,\n where: fullWhere,\n }\n\n const docWithLocales = await getLatestCollectionVersion<\n RequiredDataFromCollectionSlug<TSlug> & TypeWithID\n >({\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 if (!docWithLocales) {\n throw new NotFound(req.t)\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 const select = sanitizeSelect({\n fields: collectionConfig.flattenedFields,\n forceSelect: collectionConfig.forceSelect,\n select: incomingSelect,\n })\n\n // ///////////////////////////////////////////////\n // Update document, runs all document level hooks\n // ///////////////////////////////////////////////\n\n let result = await updateDocument<TSlug, TSelect>({\n id,\n autosave,\n collectionConfig,\n config,\n data: deepCopyObjectSimple(newFileData),\n depth: depth!,\n docWithLocales,\n draftArg,\n fallbackLocale: fallbackLocale!,\n filesToUpload,\n locale: locale!,\n overrideAccess: overrideAccess!,\n overrideLock: overrideLock!,\n payload,\n populate,\n publishAllLocales,\n publishSpecificLocale,\n req,\n select: select!,\n showHiddenFields: showHiddenFields!,\n unpublishAllLocales,\n })\n\n // /////////////////////////////////////\n // Add collection property for auth collections\n // /////////////////////////////////////\n\n if (collectionConfig.auth) {\n result = { ...result, collection: collectionConfig.slug }\n }\n\n await unlinkTempFiles({\n collectionConfig,\n config,\n req,\n })\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = (await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'updateByID',\n overrideAccess,\n result,\n })) as TransformCollectionWithSelect<TSlug, TSelect>\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":["status","httpStatus","executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","deepCopyObjectSimple","generateFileData","unlinkTempFiles","appendNonTrashedFilter","commitTransaction","initTransaction","killTransaction","sanitizeSelect","getLatestCollectionVersion","buildAfterOperation","buildBeforeOperation","updateDocument","updateByIDOperation","incomingArgs","args","shouldCommit","disableTransaction","req","collection","config","operation","overrideAccess","publishSpecificLocale","locale","id","autosave","collectionConfig","depth","draft","draftArg","overrideLock","overwriteExistingFiles","populate","publishAllLocales","fallbackLocale","payload","select","incomingSelect","showHiddenFields","trash","unpublishAllLocales","BAD_REQUEST","data","accessResults","access","update","hasWherePolicy","where","equals","fullWhere","isTrashAttempt","deletedAt","deleteAccessResult","delete","enableTrash","findOneArgs","slug","docWithLocales","query","t","newFileData","files","filesToUpload","throwOnMissingFile","fields","flattenedFields","forceSelect","result","auth","error"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/operations/updateByID.ts"],"sourcesContent":["import type { DeepPartial } from 'ts-essentials'\n\nimport { status as httpStatus } from 'http-status'\n\nimport type { FindOneArgs } from '../../database/types.js'\nimport type {\n PayloadRequest,\n PopulateType,\n SelectType,\n TransformCollectionWithSelect,\n} from '../../types/index.js'\nimport type {\n Collection,\n RequiredDataFromCollectionSlug,\n SelectFromCollectionSlug,\n TypeWithID,\n} from '../config/types.js'\n\nimport { executeAccess } from '../../auth/executeAccess.js'\nimport { hasWhereAccessResult } from '../../auth/types.js'\nimport { combineQueries } from '../../database/combineQueries.js'\nimport { APIError, Forbidden, NotFound } from '../../errors/index.js'\nimport { type CollectionSlug, deepCopyObjectSimple, type FindOptions } from '../../index.js'\nimport { generateFileData } from '../../uploads/generateFileData.js'\nimport { unlinkTempFiles } from '../../uploads/unlinkTempFiles.js'\nimport { appendNonTrashedFilter } from '../../utilities/appendNonTrashedFilter.js'\nimport { commitTransaction } from '../../utilities/commitTransaction.js'\nimport { initTransaction } from '../../utilities/initTransaction.js'\nimport { killTransaction } from '../../utilities/killTransaction.js'\nimport { sanitizeSelect } from '../../utilities/sanitizeSelect.js'\nimport { getLatestCollectionVersion } from '../../versions/getLatestCollectionVersion.js'\nimport { buildAfterOperation } from './utilities/buildAfterOperation.js'\nimport { buildBeforeOperation } from './utilities/buildBeforeOperation.js'\nimport { updateDocument } from './utilities/update.js'\n\nexport type Arguments<TSlug extends CollectionSlug> = {\n autosave?: boolean\n collection: Collection\n data: DeepPartial<RequiredDataFromCollectionSlug<TSlug>>\n depth?: number\n disableTransaction?: boolean\n disableVerificationEmail?: boolean\n draft?: boolean\n id: number | string\n overrideAccess?: boolean\n overrideLock?: boolean\n overwriteExistingFiles?: boolean\n populate?: PopulateType\n publishAllLocales?: boolean\n publishSpecificLocale?: string\n req: PayloadRequest\n showHiddenFields?: boolean\n trash?: boolean\n unpublishAllLocales?: boolean\n} & Pick<FindOptions<TSlug, SelectType>, 'select'>\n\nexport const updateByIDOperation = async <\n TSlug extends CollectionSlug,\n TSelect extends SelectFromCollectionSlug<TSlug> = SelectType,\n>(\n incomingArgs: Arguments<TSlug>,\n): Promise<TransformCollectionWithSelect<TSlug, TSelect>> => {\n let args = incomingArgs\n\n try {\n const shouldCommit = !args.disableTransaction && (await initTransaction(args.req))\n\n // /////////////////////////////////////\n // beforeOperation - Collection\n // /////////////////////////////////////\n\n args = await buildBeforeOperation({\n args,\n collection: args.collection.config,\n operation: 'update',\n overrideAccess: args.overrideAccess!,\n })\n\n if (args.publishSpecificLocale) {\n args.req.locale = args.publishSpecificLocale\n }\n\n const {\n id,\n autosave = false,\n collection: { config: collectionConfig },\n collection,\n depth,\n draft: draftArg = false,\n overrideAccess,\n overrideLock,\n overwriteExistingFiles = false,\n populate,\n publishAllLocales,\n publishSpecificLocale,\n req: {\n fallbackLocale,\n locale,\n payload: { config },\n payload,\n },\n req,\n select: incomingSelect,\n showHiddenFields,\n trash = false,\n unpublishAllLocales,\n } = args\n\n if (!id) {\n throw new APIError('Missing ID of document to update.', httpStatus.BAD_REQUEST)\n }\n\n const { data } = args\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 where = { id: { equals: id } }\n\n let fullWhere = combineQueries(where, accessResults)\n\n const isTrashAttempt =\n collectionConfig.trash &&\n typeof data === 'object' &&\n data !== null &&\n 'deletedAt' in data &&\n data.deletedAt != null\n\n if (isTrashAttempt && !overrideAccess) {\n // Pass data so access function can check data.deletedAt to know it's a trash attempt\n const deleteAccessResult = await executeAccess({ data, req }, collectionConfig.access.delete)\n fullWhere = combineQueries(fullWhere, deleteAccessResult)\n }\n\n // Exclude trashed documents when trash: false\n fullWhere = appendNonTrashedFilter({\n enableTrash: collectionConfig.trash,\n trash,\n where: fullWhere,\n })\n\n const findOneArgs: FindOneArgs = {\n collection: collectionConfig.slug,\n locale: locale!,\n req,\n where: fullWhere,\n }\n\n const docWithLocales = await getLatestCollectionVersion<\n RequiredDataFromCollectionSlug<TSlug> & TypeWithID\n >({\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 if (!docWithLocales) {\n throw new NotFound(req.t)\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 const select = sanitizeSelect({\n fields: collectionConfig.flattenedFields,\n forceSelect: collectionConfig.forceSelect,\n select: incomingSelect,\n })\n\n // ///////////////////////////////////////////////\n // Update document, runs all document level hooks\n // ///////////////////////////////////////////////\n\n let result = await updateDocument<TSlug, TSelect>({\n id,\n autosave,\n collectionConfig,\n config,\n data: deepCopyObjectSimple(newFileData),\n depth: depth!,\n docWithLocales,\n draftArg,\n fallbackLocale: fallbackLocale!,\n filesToUpload,\n locale: locale!,\n overrideAccess: overrideAccess!,\n overrideLock: overrideLock!,\n payload,\n populate,\n publishAllLocales,\n publishSpecificLocale,\n req,\n select: select!,\n showHiddenFields: showHiddenFields!,\n unpublishAllLocales,\n })\n\n // /////////////////////////////////////\n // Add collection property for auth collections\n // /////////////////////////////////////\n\n if (collectionConfig.auth) {\n result = { ...result, collection: collectionConfig.slug }\n }\n\n await unlinkTempFiles({\n collectionConfig,\n config,\n req,\n })\n\n // /////////////////////////////////////\n // afterOperation - Collection\n // /////////////////////////////////////\n\n result = (await buildAfterOperation({\n args,\n collection: collectionConfig,\n operation: 'updateByID',\n overrideAccess,\n result,\n })) as TransformCollectionWithSelect<TSlug, TSelect>\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":["status","httpStatus","executeAccess","hasWhereAccessResult","combineQueries","APIError","Forbidden","NotFound","deepCopyObjectSimple","generateFileData","unlinkTempFiles","appendNonTrashedFilter","commitTransaction","initTransaction","killTransaction","sanitizeSelect","getLatestCollectionVersion","buildAfterOperation","buildBeforeOperation","updateDocument","updateByIDOperation","incomingArgs","args","shouldCommit","disableTransaction","req","collection","config","operation","overrideAccess","publishSpecificLocale","locale","id","autosave","collectionConfig","depth","draft","draftArg","overrideLock","overwriteExistingFiles","populate","publishAllLocales","fallbackLocale","payload","select","incomingSelect","showHiddenFields","trash","unpublishAllLocales","BAD_REQUEST","data","accessResults","access","update","hasWherePolicy","where","equals","fullWhere","isTrashAttempt","deletedAt","deleteAccessResult","delete","enableTrash","findOneArgs","slug","docWithLocales","query","t","newFileData","files","filesToUpload","throwOnMissingFile","fields","flattenedFields","forceSelect","result","auth","error"],"mappings":"AAEA,SAASA,UAAUC,UAAU,QAAQ,cAAa;AAgBlD,SAASC,aAAa,QAAQ,8BAA6B;AAC3D,SAASC,oBAAoB,QAAQ,sBAAqB;AAC1D,SAASC,cAAc,QAAQ,mCAAkC;AACjE,SAASC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,wBAAuB;AACrE,SAA8BC,oBAAoB,QAA0B,iBAAgB;AAC5F,SAASC,gBAAgB,QAAQ,oCAAmC;AACpE,SAASC,eAAe,QAAQ,mCAAkC;AAClE,SAASC,sBAAsB,QAAQ,4CAA2C;AAClF,SAASC,iBAAiB,QAAQ,uCAAsC;AACxE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,eAAe,QAAQ,qCAAoC;AACpE,SAASC,cAAc,QAAQ,oCAAmC;AAClE,SAASC,0BAA0B,QAAQ,+CAA8C;AACzF,SAASC,mBAAmB,QAAQ,qCAAoC;AACxE,SAASC,oBAAoB,QAAQ,sCAAqC;AAC1E,SAASC,cAAc,QAAQ,wBAAuB;AAuBtD,OAAO,MAAMC,sBAAsB,OAIjCC;IAEA,IAAIC,OAAOD;IAEX,IAAI;QACF,MAAME,eAAe,CAACD,KAAKE,kBAAkB,IAAK,MAAMX,gBAAgBS,KAAKG,GAAG;QAEhF,wCAAwC;QACxC,+BAA+B;QAC/B,wCAAwC;QAExCH,OAAO,MAAMJ,qBAAqB;YAChCI;YACAI,YAAYJ,KAAKI,UAAU,CAACC,MAAM;YAClCC,WAAW;YACXC,gBAAgBP,KAAKO,cAAc;QACrC;QAEA,IAAIP,KAAKQ,qBAAqB,EAAE;YAC9BR,KAAKG,GAAG,CAACM,MAAM,GAAGT,KAAKQ,qBAAqB;QAC9C;QAEA,MAAM,EACJE,EAAE,EACFC,WAAW,KAAK,EAChBP,YAAY,EAAEC,QAAQO,gBAAgB,EAAE,EACxCR,UAAU,EACVS,KAAK,EACLC,OAAOC,WAAW,KAAK,EACvBR,cAAc,EACdS,YAAY,EACZC,yBAAyB,KAAK,EAC9BC,QAAQ,EACRC,iBAAiB,EACjBX,qBAAqB,EACrBL,KAAK,EACHiB,cAAc,EACdX,MAAM,EACNY,SAAS,EAAEhB,MAAM,EAAE,EACnBgB,OAAO,EACR,EACDlB,GAAG,EACHmB,QAAQC,cAAc,EACtBC,gBAAgB,EAChBC,QAAQ,KAAK,EACbC,mBAAmB,EACpB,GAAG1B;QAEJ,IAAI,CAACU,IAAI;YACP,MAAM,IAAI3B,SAAS,qCAAqCJ,WAAWgD,WAAW;QAChF;QAEA,MAAM,EAAEC,IAAI,EAAE,GAAG5B;QAEjB,wCAAwC;QACxC,SAAS;QACT,wCAAwC;QAExC,MAAM6B,gBAAgB,CAACtB,iBACnB,MAAM3B,cAAc;YAAE8B;YAAIkB;YAAMzB;QAAI,GAAGS,iBAAiBkB,MAAM,CAACC,MAAM,IACrE;QACJ,MAAMC,iBAAiBnD,qBAAqBgD;QAE5C,wCAAwC;QACxC,oBAAoB;QACpB,wCAAwC;QAExC,MAAMI,QAAQ;YAAEvB,IAAI;gBAAEwB,QAAQxB;YAAG;QAAE;QAEnC,IAAIyB,YAAYrD,eAAemD,OAAOJ;QAEtC,MAAMO,iBACJxB,iBAAiBa,KAAK,IACtB,OAAOG,SAAS,YAChBA,SAAS,QACT,eAAeA,QACfA,KAAKS,SAAS,IAAI;QAEpB,IAAID,kBAAkB,CAAC7B,gBAAgB;YACrC,qFAAqF;YACrF,MAAM+B,qBAAqB,MAAM1D,cAAc;gBAAEgD;gBAAMzB;YAAI,GAAGS,iBAAiBkB,MAAM,CAACS,MAAM;YAC5FJ,YAAYrD,eAAeqD,WAAWG;QACxC;QAEA,8CAA8C;QAC9CH,YAAY9C,uBAAuB;YACjCmD,aAAa5B,iBAAiBa,KAAK;YACnCA;YACAQ,OAAOE;QACT;QAEA,MAAMM,cAA2B;YAC/BrC,YAAYQ,iBAAiB8B,IAAI;YACjCjC,QAAQA;YACRN;YACA8B,OAAOE;QACT;QAEA,MAAMQ,iBAAiB,MAAMjD,2BAE3B;YACAgB;YACAL,QAAQO;YACRS;YACAuB,OAAOH;YACPtC;QACF;QAEA,IAAI,CAACwC,kBAAkB,CAACX,gBAAgB;YACtC,MAAM,IAAI/C,SAASkB,IAAI0C,CAAC;QAC1B;QACA,IAAI,CAACF,kBAAkBX,gBAAgB;YACrC,MAAM,IAAIhD,UAAUmB,IAAI0C,CAAC;QAC3B;QACA,IAAI,CAACF,gBAAgB;YACnB,MAAM,IAAI1D,SAASkB,IAAI0C,CAAC;QAC1B;QAEA,wCAAwC;QACxC,wCAAwC;QACxC,wCAAwC;QAExC,MAAM,EAAEjB,MAAMkB,WAAW,EAAEC,OAAOC,aAAa,EAAE,GAAG,MAAM7D,iBAAiB;YACzEiB;YACAC;YACAuB;YACAtB,WAAW;YACXW;YACAd;YACA8C,oBAAoB;QACtB;QAEA,MAAM3B,SAAS7B,eAAe;YAC5ByD,QAAQtC,iBAAiBuC,eAAe;YACxCC,aAAaxC,iBAAiBwC,WAAW;YACzC9B,QAAQC;QACV;QAEA,kDAAkD;QAClD,iDAAiD;QACjD,kDAAkD;QAElD,IAAI8B,SAAS,MAAMxD,eAA+B;YAChDa;YACAC;YACAC;YACAP;YACAuB,MAAM1C,qBAAqB4D;YAC3BjC,OAAOA;YACP8B;YACA5B;YACAK,gBAAgBA;YAChB4B;YACAvC,QAAQA;YACRF,gBAAgBA;YAChBS,cAAcA;YACdK;YACAH;YACAC;YACAX;YACAL;YACAmB,QAAQA;YACRE,kBAAkBA;YAClBE;QACF;QAEA,wCAAwC;QACxC,+CAA+C;QAC/C,wCAAwC;QAExC,IAAId,iBAAiB0C,IAAI,EAAE;YACzBD,SAAS;gBAAE,GAAGA,MAAM;gBAAEjD,YAAYQ,iBAAiB8B,IAAI;YAAC;QAC1D;QAEA,MAAMtD,gBAAgB;YACpBwB;YACAP;YACAF;QACF;QAEA,wCAAwC;QACxC,8BAA8B;QAC9B,wCAAwC;QAExCkD,SAAU,MAAM1D,oBAAoB;YAClCK;YACAI,YAAYQ;YACZN,WAAW;YACXC;YACA8C;QACF;QAEA,wCAAwC;QACxC,iBAAiB;QACjB,wCAAwC;QAExC,IAAIpD,cAAc;YAChB,MAAMX,kBAAkBa;QAC1B;QAEA,OAAOkD;IACT,EAAE,OAAOE,OAAgB;QACvB,MAAM/D,gBAAgBQ,KAAKG,GAAG;QAC9B,MAAMoD;IACR;AACF,EAAC"}
@@ -2,14 +2,16 @@ import type { I18nClient } from '@payloadcms/translations';
2
2
  import type { ImportMap } from '../bin/generateImportMap/index.js';
3
3
  import type { ClientBlock } from '../fields/config/types.js';
4
4
  import type { BlockSlug, TypedUser } from '../index.js';
5
- import type { RootLivePreviewConfig, SanitizedConfig, SanitizedDashboardConfig, ServerOnlyLivePreviewProperties } from './types.js';
5
+ import type { ClientWidget, RootLivePreviewConfig, SanitizedConfig, ServerOnlyLivePreviewProperties } from './types.js';
6
6
  import { type ClientCollectionConfig } from '../collections/config/client.js';
7
7
  import { type ClientGlobalConfig } from '../globals/config/client.js';
8
8
  export type ServerOnlyRootProperties = keyof Pick<SanitizedConfig, 'bin' | 'cors' | 'csrf' | 'custom' | 'db' | 'editor' | 'email' | 'endpoints' | 'graphQL' | 'hooks' | 'i18n' | 'jobs' | 'kv' | 'logger' | 'onInit' | 'plugins' | 'queryPresets' | 'secret' | 'sharp' | 'typescript'>;
9
9
  export type ServerOnlyRootAdminProperties = keyof Pick<SanitizedConfig['admin'], 'components'>;
10
10
  export type ClientConfig = {
11
11
  admin: {
12
- dashboard?: SanitizedDashboardConfig;
12
+ dashboard?: {
13
+ widgets: ClientWidget[];
14
+ };
13
15
  livePreview?: Omit<RootLivePreviewConfig, ServerOnlyLivePreviewProperties>;
14
16
  } & Omit<SanitizedConfig['admin'], 'components' | 'dashboard' | 'dependencies' | 'livePreview'>;
15
17
  blocks: ClientBlock[];
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/config/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/config/client.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { createClientCollectionConfigs } from '../collections/config/client.js';
2
- import { createClientBlocks } from '../fields/config/client.js';
2
+ import { createClientBlocks, createClientFields } from '../fields/config/client.js';
3
3
  import { createClientGlobalConfigs } from '../globals/config/client.js';
4
4
  export const serverOnlyAdminConfigProperties = [];
5
5
  export const serverOnlyConfigProperties = [
@@ -70,9 +70,17 @@ export const createClientConfig = ({ config, i18n, importMap })=>{
70
70
  if (config.admin.dashboard?.widgets) {
71
71
  ;
72
72
  (clientConfig.admin.dashboard ??= {}).widgets = config.admin.dashboard.widgets.map((widget)=>{
73
- const { ComponentPath: _, label, ...rest } = widget;
73
+ const { ComponentPath: _, fields, label, ...rest } = widget;
74
74
  return {
75
75
  ...rest,
76
+ ...fields?.length ? {
77
+ fields: createClientFields({
78
+ defaultIDType: config.db.defaultIDType,
79
+ fields,
80
+ i18n,
81
+ importMap
82
+ })
83
+ } : {},
76
84
  // Resolve label function to string for client
77
85
  label: typeof label === 'function' ? label({
78
86
  i18n,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/config/client.ts"],"sourcesContent":["import type { I18nClient, TFunction } from '@payloadcms/translations'\nimport type { DeepPartial } from 'ts-essentials'\n\nimport type { ImportMap } from '../bin/generateImportMap/index.js'\nimport type { ClientBlock } from '../fields/config/types.js'\nimport type { BlockSlug, TypedUser } from '../index.js'\nimport type {\n RootLivePreviewConfig,\n SanitizedConfig,\n SanitizedDashboardConfig,\n ServerOnlyLivePreviewProperties,\n} from './types.js'\n\nimport {\n type ClientCollectionConfig,\n createClientCollectionConfigs,\n} from '../collections/config/client.js'\nimport { createClientBlocks } from '../fields/config/client.js'\nimport { type ClientGlobalConfig, createClientGlobalConfigs } from '../globals/config/client.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 | 'i18n'\n | 'jobs'\n | 'kv'\n | 'logger'\n | 'onInit'\n | 'plugins'\n | 'queryPresets'\n | 'secret'\n | 'sharp'\n | 'typescript'\n>\n\nexport type ServerOnlyRootAdminProperties = keyof Pick<SanitizedConfig['admin'], 'components'>\n\nexport type ClientConfig = {\n admin: {\n dashboard?: SanitizedDashboardConfig\n livePreview?: Omit<RootLivePreviewConfig, ServerOnlyLivePreviewProperties>\n } & Omit<SanitizedConfig['admin'], 'components' | 'dashboard' | 'dependencies' | 'livePreview'>\n blocks: ClientBlock[]\n blocksMap: Record<BlockSlug, ClientBlock>\n collections: ClientCollectionConfig[]\n custom?: Record<string, any>\n globals: ClientGlobalConfig[]\n unauthenticated?: boolean\n} & Omit<SanitizedConfig, 'admin' | 'collections' | 'globals' | 'i18n' | ServerOnlyRootProperties>\n\nexport type UnauthenticatedClientConfig = {\n admin: {\n routes: ClientConfig['admin']['routes']\n user: ClientConfig['admin']['user']\n }\n collections: [\n {\n auth: ClientCollectionConfig['auth']\n slug: string\n },\n ]\n globals: []\n routes: ClientConfig['routes']\n serverURL: ClientConfig['serverURL']\n unauthenticated: true\n}\n\nexport const serverOnlyAdminConfigProperties: readonly Partial<ServerOnlyRootAdminProperties>[] = []\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 'i18n',\n 'typescript',\n 'cors',\n 'csrf',\n 'email',\n 'custom',\n 'graphQL',\n 'jobs',\n 'logger',\n 'kv',\n 'queryPresets',\n // `admin`, `onInit`, `localization`, `collections`, and `globals` are all handled separately\n]\n\nexport type CreateClientConfigArgs = {\n config: SanitizedConfig\n i18n: I18nClient\n importMap: ImportMap\n /**\n * If unauthenticated, the client config will omit some sensitive properties\n * such as field schemas, etc. This is useful for login and error pages where\n * the page source should not contain this information.\n *\n * For example, allow `true` to generate a client config for the \"create first user\" page\n * where there is no user yet, but the config should still be complete.\n */\n user: true | TypedUser\n}\n\nexport const createUnauthenticatedClientConfig = ({\n clientConfig,\n}: {\n /**\n * Send the previously generated client config to share memory when applicable.\n * E.g. the admin-enabled collection config can reference the existing collection rather than creating a new object.\n */\n clientConfig: ClientConfig\n}): UnauthenticatedClientConfig => {\n /**\n * To share memory, find the admin user collection from the existing client config.\n */\n const adminUserCollection = clientConfig.collections.find(\n ({ slug }) => slug === clientConfig.admin.user,\n )!\n\n return {\n admin: {\n routes: clientConfig.admin.routes,\n user: clientConfig.admin.user,\n },\n collections: [\n {\n slug: adminUserCollection.slug,\n auth: adminUserCollection.auth,\n },\n ],\n globals: [],\n routes: clientConfig.routes,\n serverURL: clientConfig.serverURL,\n unauthenticated: true,\n }\n}\n\nexport const createClientConfig = ({\n config,\n i18n,\n importMap,\n}: CreateClientConfigArgs): ClientConfig => {\n const clientConfig = {} as DeepPartial<ClientConfig>\n\n for (const key in config) {\n if (serverOnlyConfigProperties.includes(key as any)) {\n continue\n }\n\n switch (key) {\n case 'admin':\n clientConfig.admin = {\n autoLogin: config.admin.autoLogin,\n autoRefresh: config.admin.autoRefresh,\n avatar: config.admin.avatar,\n custom: config.admin.custom,\n dateFormat: config.admin.dateFormat,\n importMap: config.admin.importMap,\n meta: config.admin.meta,\n routes: config.admin.routes,\n theme: config.admin.theme,\n timezones: config.admin.timezones,\n toast: config.admin.toast,\n user: config.admin.user,\n }\n\n if (config.admin.dashboard?.widgets) {\n ;(clientConfig.admin.dashboard ??= {}).widgets = config.admin.dashboard.widgets.map(\n (widget) => {\n const { ComponentPath: _, label, ...rest } = widget\n return {\n ...rest,\n // Resolve label function to string for client\n label:\n typeof label === 'function' ? label({ i18n, t: i18n.t as TFunction }) : label,\n }\n },\n )\n }\n\n if (config.admin.livePreview) {\n clientConfig.admin.livePreview = {}\n\n if (config.admin.livePreview.breakpoints) {\n clientConfig.admin.livePreview.breakpoints = config.admin.livePreview.breakpoints\n }\n\n if (config.admin.livePreview.collections) {\n clientConfig.admin.livePreview.collections = config.admin.livePreview.collections\n }\n\n if (config.admin.livePreview.globals) {\n clientConfig.admin.livePreview.globals = config.admin.livePreview.globals\n }\n }\n\n break\n\n case 'blocks': {\n ;(clientConfig.blocks as ClientBlock[]) = createClientBlocks({\n blocks: config.blocks!,\n defaultIDType: config.db.defaultIDType,\n i18n,\n importMap,\n }).filter((block) => typeof block !== 'string') as ClientBlock[]\n\n clientConfig.blocksMap = {}\n if (clientConfig.blocks?.length) {\n for (const block of clientConfig.blocks) {\n if (!block?.slug) {\n continue\n }\n\n clientConfig.blocksMap[block.slug] = block as ClientBlock\n }\n }\n\n break\n }\n\n case 'collections':\n ;(clientConfig.collections as ClientCollectionConfig[]) = createClientCollectionConfigs({\n collections: config.collections,\n defaultIDType: config.db.defaultIDType,\n i18n,\n importMap,\n })\n\n break\n\n case 'folders':\n if (config.folders) {\n clientConfig.folders = {\n slug: config.folders.slug,\n browseByFolder: config.folders.browseByFolder,\n debug: config.folders.debug,\n fieldName: config.folders.fieldName,\n }\n }\n\n break\n\n case 'globals':\n ;(clientConfig.globals as ClientGlobalConfig[]) = createClientGlobalConfigs({\n defaultIDType: config.db.defaultIDType,\n globals: config.globals,\n i18n,\n importMap,\n })\n\n break\n\n case 'localization':\n if (typeof config.localization === 'object' && config.localization) {\n clientConfig.localization = {}\n\n if (config.localization.defaultLocale) {\n clientConfig.localization.defaultLocale = config.localization.defaultLocale\n }\n\n if (config.localization.defaultLocalePublishOption) {\n clientConfig.localization.defaultLocalePublishOption =\n config.localization.defaultLocalePublishOption\n }\n\n if (config.localization.fallback) {\n clientConfig.localization.fallback = config.localization.fallback\n }\n\n if (config.localization.localeCodes) {\n clientConfig.localization.localeCodes = config.localization.localeCodes\n }\n\n if (config.localization.locales) {\n clientConfig.localization.locales = []\n\n for (const locale of config.localization.locales) {\n if (locale) {\n const clientLocale: Partial<(typeof config.localization.locales)[0]> = {}\n\n if (locale.code) {\n clientLocale.code = locale.code\n }\n\n if (locale.fallbackLocale) {\n clientLocale.fallbackLocale = locale.fallbackLocale\n }\n\n if (locale.label) {\n clientLocale.label = locale.label\n }\n\n if (locale.rtl) {\n clientLocale.rtl = locale.rtl\n }\n\n clientConfig.localization.locales.push(clientLocale)\n }\n }\n }\n }\n\n break\n\n default:\n ;(clientConfig as any)[key] = config[key as keyof SanitizedConfig]\n }\n }\n\n return clientConfig as ClientConfig\n}\n"],"names":["createClientCollectionConfigs","createClientBlocks","createClientGlobalConfigs","serverOnlyAdminConfigProperties","serverOnlyConfigProperties","createUnauthenticatedClientConfig","clientConfig","adminUserCollection","collections","find","slug","admin","user","routes","auth","globals","serverURL","unauthenticated","createClientConfig","config","i18n","importMap","key","includes","autoLogin","autoRefresh","avatar","custom","dateFormat","meta","theme","timezones","toast","dashboard","widgets","map","widget","ComponentPath","_","label","rest","t","livePreview","breakpoints","blocks","defaultIDType","db","filter","block","blocksMap","length","folders","browseByFolder","debug","fieldName","localization","defaultLocale","defaultLocalePublishOption","fallback","localeCodes","locales","locale","clientLocale","code","fallbackLocale","rtl","push"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/config/client.ts"],"sourcesContent":["import type { I18nClient, TFunction } from '@payloadcms/translations'\nimport type { DeepPartial } from 'ts-essentials'\n\nimport type { ImportMap } from '../bin/generateImportMap/index.js'\nimport type { ClientBlock } from '../fields/config/types.js'\nimport type { BlockSlug, TypedUser } from '../index.js'\nimport type {\n ClientWidget,\n RootLivePreviewConfig,\n SanitizedConfig,\n ServerOnlyLivePreviewProperties,\n} from './types.js'\n\nimport {\n type ClientCollectionConfig,\n createClientCollectionConfigs,\n} from '../collections/config/client.js'\nimport { createClientBlocks, createClientFields } from '../fields/config/client.js'\nimport { type ClientGlobalConfig, createClientGlobalConfigs } from '../globals/config/client.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 | 'i18n'\n | 'jobs'\n | 'kv'\n | 'logger'\n | 'onInit'\n | 'plugins'\n | 'queryPresets'\n | 'secret'\n | 'sharp'\n | 'typescript'\n>\n\nexport type ServerOnlyRootAdminProperties = keyof Pick<SanitizedConfig['admin'], 'components'>\n\nexport type ClientConfig = {\n admin: {\n dashboard?: {\n widgets: ClientWidget[]\n }\n livePreview?: Omit<RootLivePreviewConfig, ServerOnlyLivePreviewProperties>\n } & Omit<SanitizedConfig['admin'], 'components' | 'dashboard' | 'dependencies' | 'livePreview'>\n blocks: ClientBlock[]\n blocksMap: Record<BlockSlug, ClientBlock>\n collections: ClientCollectionConfig[]\n custom?: Record<string, any>\n globals: ClientGlobalConfig[]\n unauthenticated?: boolean\n} & Omit<SanitizedConfig, 'admin' | 'collections' | 'globals' | 'i18n' | ServerOnlyRootProperties>\n\nexport type UnauthenticatedClientConfig = {\n admin: {\n routes: ClientConfig['admin']['routes']\n user: ClientConfig['admin']['user']\n }\n collections: [\n {\n auth: ClientCollectionConfig['auth']\n slug: string\n },\n ]\n globals: []\n routes: ClientConfig['routes']\n serverURL: ClientConfig['serverURL']\n unauthenticated: true\n}\n\nexport const serverOnlyAdminConfigProperties: readonly Partial<ServerOnlyRootAdminProperties>[] = []\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 'i18n',\n 'typescript',\n 'cors',\n 'csrf',\n 'email',\n 'custom',\n 'graphQL',\n 'jobs',\n 'logger',\n 'kv',\n 'queryPresets',\n // `admin`, `onInit`, `localization`, `collections`, and `globals` are all handled separately\n]\n\nexport type CreateClientConfigArgs = {\n config: SanitizedConfig\n i18n: I18nClient\n importMap: ImportMap\n /**\n * If unauthenticated, the client config will omit some sensitive properties\n * such as field schemas, etc. This is useful for login and error pages where\n * the page source should not contain this information.\n *\n * For example, allow `true` to generate a client config for the \"create first user\" page\n * where there is no user yet, but the config should still be complete.\n */\n user: true | TypedUser\n}\n\nexport const createUnauthenticatedClientConfig = ({\n clientConfig,\n}: {\n /**\n * Send the previously generated client config to share memory when applicable.\n * E.g. the admin-enabled collection config can reference the existing collection rather than creating a new object.\n */\n clientConfig: ClientConfig\n}): UnauthenticatedClientConfig => {\n /**\n * To share memory, find the admin user collection from the existing client config.\n */\n const adminUserCollection = clientConfig.collections.find(\n ({ slug }) => slug === clientConfig.admin.user,\n )!\n\n return {\n admin: {\n routes: clientConfig.admin.routes,\n user: clientConfig.admin.user,\n },\n collections: [\n {\n slug: adminUserCollection.slug,\n auth: adminUserCollection.auth,\n },\n ],\n globals: [],\n routes: clientConfig.routes,\n serverURL: clientConfig.serverURL,\n unauthenticated: true,\n }\n}\n\nexport const createClientConfig = ({\n config,\n i18n,\n importMap,\n}: CreateClientConfigArgs): ClientConfig => {\n const clientConfig = {} as DeepPartial<ClientConfig>\n\n for (const key in config) {\n if (serverOnlyConfigProperties.includes(key as any)) {\n continue\n }\n\n switch (key) {\n case 'admin':\n clientConfig.admin = {\n autoLogin: config.admin.autoLogin,\n autoRefresh: config.admin.autoRefresh,\n avatar: config.admin.avatar,\n custom: config.admin.custom,\n dateFormat: config.admin.dateFormat,\n importMap: config.admin.importMap,\n meta: config.admin.meta,\n routes: config.admin.routes,\n theme: config.admin.theme,\n timezones: config.admin.timezones,\n toast: config.admin.toast,\n user: config.admin.user,\n }\n\n if (config.admin.dashboard?.widgets) {\n ;(clientConfig.admin.dashboard ??= {}).widgets = config.admin.dashboard.widgets.map(\n (widget) => {\n const { ComponentPath: _, fields, label, ...rest } = widget\n return {\n ...rest,\n ...(fields?.length\n ? {\n fields: createClientFields({\n defaultIDType: config.db.defaultIDType,\n fields,\n i18n,\n importMap,\n }),\n }\n : {}),\n // Resolve label function to string for client\n label:\n typeof label === 'function' ? label({ i18n, t: i18n.t as TFunction }) : label,\n }\n },\n )\n }\n\n if (config.admin.livePreview) {\n clientConfig.admin.livePreview = {}\n\n if (config.admin.livePreview.breakpoints) {\n clientConfig.admin.livePreview.breakpoints = config.admin.livePreview.breakpoints\n }\n\n if (config.admin.livePreview.collections) {\n clientConfig.admin.livePreview.collections = config.admin.livePreview.collections\n }\n\n if (config.admin.livePreview.globals) {\n clientConfig.admin.livePreview.globals = config.admin.livePreview.globals\n }\n }\n\n break\n\n case 'blocks': {\n ;(clientConfig.blocks as ClientBlock[]) = createClientBlocks({\n blocks: config.blocks!,\n defaultIDType: config.db.defaultIDType,\n i18n,\n importMap,\n }).filter((block) => typeof block !== 'string') as ClientBlock[]\n\n clientConfig.blocksMap = {}\n if (clientConfig.blocks?.length) {\n for (const block of clientConfig.blocks) {\n if (!block?.slug) {\n continue\n }\n\n clientConfig.blocksMap[block.slug] = block as ClientBlock\n }\n }\n\n break\n }\n\n case 'collections':\n ;(clientConfig.collections as ClientCollectionConfig[]) = createClientCollectionConfigs({\n collections: config.collections,\n defaultIDType: config.db.defaultIDType,\n i18n,\n importMap,\n })\n\n break\n\n case 'folders':\n if (config.folders) {\n clientConfig.folders = {\n slug: config.folders.slug,\n browseByFolder: config.folders.browseByFolder,\n debug: config.folders.debug,\n fieldName: config.folders.fieldName,\n }\n }\n\n break\n\n case 'globals':\n ;(clientConfig.globals as ClientGlobalConfig[]) = createClientGlobalConfigs({\n defaultIDType: config.db.defaultIDType,\n globals: config.globals,\n i18n,\n importMap,\n })\n\n break\n\n case 'localization':\n if (typeof config.localization === 'object' && config.localization) {\n clientConfig.localization = {}\n\n if (config.localization.defaultLocale) {\n clientConfig.localization.defaultLocale = config.localization.defaultLocale\n }\n\n if (config.localization.defaultLocalePublishOption) {\n clientConfig.localization.defaultLocalePublishOption =\n config.localization.defaultLocalePublishOption\n }\n\n if (config.localization.fallback) {\n clientConfig.localization.fallback = config.localization.fallback\n }\n\n if (config.localization.localeCodes) {\n clientConfig.localization.localeCodes = config.localization.localeCodes\n }\n\n if (config.localization.locales) {\n clientConfig.localization.locales = []\n\n for (const locale of config.localization.locales) {\n if (locale) {\n const clientLocale: Partial<(typeof config.localization.locales)[0]> = {}\n\n if (locale.code) {\n clientLocale.code = locale.code\n }\n\n if (locale.fallbackLocale) {\n clientLocale.fallbackLocale = locale.fallbackLocale\n }\n\n if (locale.label) {\n clientLocale.label = locale.label\n }\n\n if (locale.rtl) {\n clientLocale.rtl = locale.rtl\n }\n\n clientConfig.localization.locales.push(clientLocale)\n }\n }\n }\n }\n\n break\n\n default:\n ;(clientConfig as any)[key] = config[key as keyof SanitizedConfig]\n }\n }\n\n return clientConfig as ClientConfig\n}\n"],"names":["createClientCollectionConfigs","createClientBlocks","createClientFields","createClientGlobalConfigs","serverOnlyAdminConfigProperties","serverOnlyConfigProperties","createUnauthenticatedClientConfig","clientConfig","adminUserCollection","collections","find","slug","admin","user","routes","auth","globals","serverURL","unauthenticated","createClientConfig","config","i18n","importMap","key","includes","autoLogin","autoRefresh","avatar","custom","dateFormat","meta","theme","timezones","toast","dashboard","widgets","map","widget","ComponentPath","_","fields","label","rest","length","defaultIDType","db","t","livePreview","breakpoints","blocks","filter","block","blocksMap","folders","browseByFolder","debug","fieldName","localization","defaultLocale","defaultLocalePublishOption","fallback","localeCodes","locales","locale","clientLocale","code","fallbackLocale","rtl","push"],"mappings":"AAaA,SAEEA,6BAA6B,QACxB,kCAAiC;AACxC,SAASC,kBAAkB,EAAEC,kBAAkB,QAAQ,6BAA4B;AACnF,SAAkCC,yBAAyB,QAAQ,8BAA6B;AA4DhG,OAAO,MAAMC,kCAAqF,EAAE,CAAA;AAEpG,OAAO,MAAMC,6BAA2E;IACtF;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CAED,CAAA;AAiBD,OAAO,MAAMC,oCAAoC,CAAC,EAChDC,YAAY,EAOb;IACC;;GAEC,GACD,MAAMC,sBAAsBD,aAAaE,WAAW,CAACC,IAAI,CACvD,CAAC,EAAEC,IAAI,EAAE,GAAKA,SAASJ,aAAaK,KAAK,CAACC,IAAI;IAGhD,OAAO;QACLD,OAAO;YACLE,QAAQP,aAAaK,KAAK,CAACE,MAAM;YACjCD,MAAMN,aAAaK,KAAK,CAACC,IAAI;QAC/B;QACAJ,aAAa;YACX;gBACEE,MAAMH,oBAAoBG,IAAI;gBAC9BI,MAAMP,oBAAoBO,IAAI;YAChC;SACD;QACDC,SAAS,EAAE;QACXF,QAAQP,aAAaO,MAAM;QAC3BG,WAAWV,aAAaU,SAAS;QACjCC,iBAAiB;IACnB;AACF,EAAC;AAED,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,IAAI,EACJC,SAAS,EACc;IACvB,MAAMf,eAAe,CAAC;IAEtB,IAAK,MAAMgB,OAAOH,OAAQ;QACxB,IAAIf,2BAA2BmB,QAAQ,CAACD,MAAa;YACnD;QACF;QAEA,OAAQA;YACN,KAAK;gBACHhB,aAAaK,KAAK,GAAG;oBACnBa,WAAWL,OAAOR,KAAK,CAACa,SAAS;oBACjCC,aAAaN,OAAOR,KAAK,CAACc,WAAW;oBACrCC,QAAQP,OAAOR,KAAK,CAACe,MAAM;oBAC3BC,QAAQR,OAAOR,KAAK,CAACgB,MAAM;oBAC3BC,YAAYT,OAAOR,KAAK,CAACiB,UAAU;oBACnCP,WAAWF,OAAOR,KAAK,CAACU,SAAS;oBACjCQ,MAAMV,OAAOR,KAAK,CAACkB,IAAI;oBACvBhB,QAAQM,OAAOR,KAAK,CAACE,MAAM;oBAC3BiB,OAAOX,OAAOR,KAAK,CAACmB,KAAK;oBACzBC,WAAWZ,OAAOR,KAAK,CAACoB,SAAS;oBACjCC,OAAOb,OAAOR,KAAK,CAACqB,KAAK;oBACzBpB,MAAMO,OAAOR,KAAK,CAACC,IAAI;gBACzB;gBAEA,IAAIO,OAAOR,KAAK,CAACsB,SAAS,EAAEC,SAAS;;oBACjC5B,CAAAA,aAAaK,KAAK,CAACsB,SAAS,KAAK,CAAC,CAAA,EAAGC,OAAO,GAAGf,OAAOR,KAAK,CAACsB,SAAS,CAACC,OAAO,CAACC,GAAG,CACjF,CAACC;wBACC,MAAM,EAAEC,eAAeC,CAAC,EAAEC,MAAM,EAAEC,KAAK,EAAE,GAAGC,MAAM,GAAGL;wBACrD,OAAO;4BACL,GAAGK,IAAI;4BACP,GAAIF,QAAQG,SACR;gCACEH,QAAQtC,mBAAmB;oCACzB0C,eAAexB,OAAOyB,EAAE,CAACD,aAAa;oCACtCJ;oCACAnB;oCACAC;gCACF;4BACF,IACA,CAAC,CAAC;4BACN,8CAA8C;4BAC9CmB,OACE,OAAOA,UAAU,aAAaA,MAAM;gCAAEpB;gCAAMyB,GAAGzB,KAAKyB,CAAC;4BAAc,KAAKL;wBAC5E;oBACF;gBAEJ;gBAEA,IAAIrB,OAAOR,KAAK,CAACmC,WAAW,EAAE;oBAC5BxC,aAAaK,KAAK,CAACmC,WAAW,GAAG,CAAC;oBAElC,IAAI3B,OAAOR,KAAK,CAACmC,WAAW,CAACC,WAAW,EAAE;wBACxCzC,aAAaK,KAAK,CAACmC,WAAW,CAACC,WAAW,GAAG5B,OAAOR,KAAK,CAACmC,WAAW,CAACC,WAAW;oBACnF;oBAEA,IAAI5B,OAAOR,KAAK,CAACmC,WAAW,CAACtC,WAAW,EAAE;wBACxCF,aAAaK,KAAK,CAACmC,WAAW,CAACtC,WAAW,GAAGW,OAAOR,KAAK,CAACmC,WAAW,CAACtC,WAAW;oBACnF;oBAEA,IAAIW,OAAOR,KAAK,CAACmC,WAAW,CAAC/B,OAAO,EAAE;wBACpCT,aAAaK,KAAK,CAACmC,WAAW,CAAC/B,OAAO,GAAGI,OAAOR,KAAK,CAACmC,WAAW,CAAC/B,OAAO;oBAC3E;gBACF;gBAEA;YAEF,KAAK;gBAAU;;oBACXT,aAAa0C,MAAM,GAAqBhD,mBAAmB;wBAC3DgD,QAAQ7B,OAAO6B,MAAM;wBACrBL,eAAexB,OAAOyB,EAAE,CAACD,aAAa;wBACtCvB;wBACAC;oBACF,GAAG4B,MAAM,CAAC,CAACC,QAAU,OAAOA,UAAU;oBAEtC5C,aAAa6C,SAAS,GAAG,CAAC;oBAC1B,IAAI7C,aAAa0C,MAAM,EAAEN,QAAQ;wBAC/B,KAAK,MAAMQ,SAAS5C,aAAa0C,MAAM,CAAE;4BACvC,IAAI,CAACE,OAAOxC,MAAM;gCAChB;4BACF;4BAEAJ,aAAa6C,SAAS,CAACD,MAAMxC,IAAI,CAAC,GAAGwC;wBACvC;oBACF;oBAEA;gBACF;YAEA,KAAK;;gBACD5C,aAAaE,WAAW,GAAgCT,8BAA8B;oBACtFS,aAAaW,OAAOX,WAAW;oBAC/BmC,eAAexB,OAAOyB,EAAE,CAACD,aAAa;oBACtCvB;oBACAC;gBACF;gBAEA;YAEF,KAAK;gBACH,IAAIF,OAAOiC,OAAO,EAAE;oBAClB9C,aAAa8C,OAAO,GAAG;wBACrB1C,MAAMS,OAAOiC,OAAO,CAAC1C,IAAI;wBACzB2C,gBAAgBlC,OAAOiC,OAAO,CAACC,cAAc;wBAC7CC,OAAOnC,OAAOiC,OAAO,CAACE,KAAK;wBAC3BC,WAAWpC,OAAOiC,OAAO,CAACG,SAAS;oBACrC;gBACF;gBAEA;YAEF,KAAK;;gBACDjD,aAAaS,OAAO,GAA4Bb,0BAA0B;oBAC1EyC,eAAexB,OAAOyB,EAAE,CAACD,aAAa;oBACtC5B,SAASI,OAAOJ,OAAO;oBACvBK;oBACAC;gBACF;gBAEA;YAEF,KAAK;gBACH,IAAI,OAAOF,OAAOqC,YAAY,KAAK,YAAYrC,OAAOqC,YAAY,EAAE;oBAClElD,aAAakD,YAAY,GAAG,CAAC;oBAE7B,IAAIrC,OAAOqC,YAAY,CAACC,aAAa,EAAE;wBACrCnD,aAAakD,YAAY,CAACC,aAAa,GAAGtC,OAAOqC,YAAY,CAACC,aAAa;oBAC7E;oBAEA,IAAItC,OAAOqC,YAAY,CAACE,0BAA0B,EAAE;wBAClDpD,aAAakD,YAAY,CAACE,0BAA0B,GAClDvC,OAAOqC,YAAY,CAACE,0BAA0B;oBAClD;oBAEA,IAAIvC,OAAOqC,YAAY,CAACG,QAAQ,EAAE;wBAChCrD,aAAakD,YAAY,CAACG,QAAQ,GAAGxC,OAAOqC,YAAY,CAACG,QAAQ;oBACnE;oBAEA,IAAIxC,OAAOqC,YAAY,CAACI,WAAW,EAAE;wBACnCtD,aAAakD,YAAY,CAACI,WAAW,GAAGzC,OAAOqC,YAAY,CAACI,WAAW;oBACzE;oBAEA,IAAIzC,OAAOqC,YAAY,CAACK,OAAO,EAAE;wBAC/BvD,aAAakD,YAAY,CAACK,OAAO,GAAG,EAAE;wBAEtC,KAAK,MAAMC,UAAU3C,OAAOqC,YAAY,CAACK,OAAO,CAAE;4BAChD,IAAIC,QAAQ;gCACV,MAAMC,eAAiE,CAAC;gCAExE,IAAID,OAAOE,IAAI,EAAE;oCACfD,aAAaC,IAAI,GAAGF,OAAOE,IAAI;gCACjC;gCAEA,IAAIF,OAAOG,cAAc,EAAE;oCACzBF,aAAaE,cAAc,GAAGH,OAAOG,cAAc;gCACrD;gCAEA,IAAIH,OAAOtB,KAAK,EAAE;oCAChBuB,aAAavB,KAAK,GAAGsB,OAAOtB,KAAK;gCACnC;gCAEA,IAAIsB,OAAOI,GAAG,EAAE;oCACdH,aAAaG,GAAG,GAAGJ,OAAOI,GAAG;gCAC/B;gCAEA5D,aAAakD,YAAY,CAACK,OAAO,CAACM,IAAI,CAACJ;4BACzC;wBACF;oBACF;gBACF;gBAEA;YAEF;;gBACIzD,YAAoB,CAACgB,IAAI,GAAGH,MAAM,CAACG,IAA6B;QACtE;IACF;IAEA,OAAOhB;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,MAAM,EAGN,eAAe,EAGhB,MAAM,YAAY,CAAA;AAoGnB,eAAO,MAAM,cAAc,mBAA0B,MAAM,KAAG,OAAO,CAAC,eAAe,CAmXpF,CAAA"}
1
+ {"version":3,"file":"sanitize.d.ts","sourceRoot":"","sources":["../../src/config/sanitize.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,MAAM,EAGN,eAAe,EAIhB,MAAM,YAAY,CAAA;AAoGnB,eAAO,MAAM,cAAc,mBAA0B,MAAM,KAAG,OAAO,CAAC,eAAe,CAkYpF,CAAA"}
@@ -149,6 +149,19 @@ export const sanitizeConfig = async (incomingConfig)=>{
149
149
  if (config.folders !== false) {
150
150
  validRelationships.push(config.folders.slug);
151
151
  }
152
+ const dashboardWidgets = config.admin?.dashboard?.widgets ?? [];
153
+ for (const widget of dashboardWidgets){
154
+ if (widget.fields?.length) {
155
+ widget.fields = await sanitizeFields({
156
+ config: config,
157
+ existingFieldNames: new Set(),
158
+ fields: widget.fields,
159
+ parentIsLocalized: false,
160
+ richTextSanitizationPromises,
161
+ validRelationships
162
+ });
163
+ }
164
+ }
152
165
  /**
153
166
  * Blocks sanitization needs to happen before collections, as collection/global join field sanitization needs config.blocks
154
167
  * to be populated with the sanitized blocks
@@ -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 { CollectionSlug, GlobalSlug, SanitizedCollectionConfig } from '../index.js'\nimport type { SanitizedJobsConfig } from '../queues/config/types/index.js'\nimport type {\n Config,\n LocalizationConfigWithLabels,\n LocalizationConfigWithNoLabels,\n SanitizedConfig,\n Timezone,\n WidgetInstance,\n} from './types.js'\n\nimport { defaultUserCollection } from '../auth/defaultUser.js'\nimport { authRootEndpoints } from '../auth/endpoints/index.js'\nimport { sanitizeCollection } from '../collections/config/sanitize.js'\nimport { migrationsCollection } from '../database/migrations/migrationsCollection.js'\nimport { DuplicateCollection, InvalidConfiguration } from '../errors/index.js'\nimport { defaultTimezones } from '../fields/baseFields/timezone/defaultTimezones.js'\nimport { addFolderCollection } from '../folders/addFolderCollection.js'\nimport { addFolderFieldToCollection } from '../folders/addFolderFieldToCollection.js'\nimport { sanitizeGlobal } from '../globals/config/sanitize.js'\nimport { baseBlockFields, formatLabels, sanitizeFields } from '../index.js'\nimport {\n getLockedDocumentsCollection,\n lockedDocumentsCollectionSlug,\n} from '../locked-documents/config.js'\nimport { getPreferencesCollection, preferencesCollectionSlug } from '../preferences/config.js'\nimport { getQueryPresetsConfig, queryPresetsCollectionSlug } from '../query-presets/config.js'\nimport { getDefaultJobsCollection, jobsCollectionSlug } from '../queues/config/collection.js'\nimport { getJobStatsGlobal } from '../queues/config/global.js'\nimport { flattenBlock } from '../utilities/flattenAllFields.js'\nimport { hasScheduledPublishEnabled } from '../utilities/getVersionsConfig.js'\nimport { validateTimezones } from '../utilities/validateTimezones.js'\nimport { getSchedulePublishTask } from '../versions/schedule/job.js'\nimport { addDefaultsToConfig } from './defaults.js'\nimport { setupOrderable } from './orderable/index.js'\n\nconst sanitizeAdminConfig = (configToSanitize: Config): Partial<SanitizedConfig> => {\n const sanitizedConfig = { ...configToSanitize }\n\n if (configToSanitize?.compatibility?.allowLocalizedWithinLocalized) {\n process.env.NEXT_PUBLIC_PAYLOAD_COMPATIBILITY_allowLocalizedWithinLocalized = 'true'\n }\n\n // default logging level will be 'error' if not provided\n sanitizedConfig.loggingLevels = {\n Forbidden: 'info',\n Locked: 'info',\n MissingFile: 'info',\n NotFound: 'info',\n ValidationError: 'info',\n ...(sanitizedConfig.loggingLevels || {}),\n }\n ;(sanitizedConfig.admin!.dashboard ??= { widgets: [] }).widgets.push({\n slug: 'collections',\n ComponentPath: '@payloadcms/next/rsc#CollectionCards',\n minWidth: 'full',\n })\n sanitizedConfig.admin!.dashboard.defaultLayout ??= [\n {\n widgetSlug: 'collections',\n width: 'full',\n } satisfies WidgetInstance,\n ]\n\n // add default user collection if none provided\n if (!sanitizedConfig?.admin?.user) {\n const firstCollectionWithAuth = sanitizedConfig.collections!.find(({ auth }) => Boolean(auth))\n\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\n if (!userCollection || !userCollection.auth) {\n throw new InvalidConfiguration(\n `${sanitizedConfig.admin!.user} is not a valid admin user collection`,\n )\n }\n\n if (sanitizedConfig?.admin?.timezones) {\n if (typeof configToSanitize?.admin?.timezones?.supportedTimezones === 'function') {\n sanitizedConfig.admin.timezones.supportedTimezones =\n configToSanitize.admin.timezones.supportedTimezones({ defaultTimezones })\n }\n\n if (!sanitizedConfig?.admin?.timezones?.supportedTimezones) {\n sanitizedConfig.admin.timezones.supportedTimezones = defaultTimezones\n }\n } else {\n sanitizedConfig.admin!.timezones = {\n supportedTimezones: defaultTimezones,\n }\n }\n\n validateTimezones({\n source: 'admin.timezones.supportedTimezones',\n timezones: sanitizedConfig.admin!.timezones.supportedTimezones as Timezone[],\n })\n\n return sanitizedConfig as unknown as Partial<SanitizedConfig>\n}\n\nexport const sanitizeConfig = async (incomingConfig: Config): Promise<SanitizedConfig> => {\n const configWithDefaults = addDefaultsToConfig(incomingConfig)\n\n const config: Partial<SanitizedConfig> = sanitizeAdminConfig(configWithDefaults)\n\n // Add orderable fields\n setupOrderable(config as SanitizedConfig)\n\n if (!config.endpoints) {\n config.endpoints = []\n }\n\n for (const endpoint of authRootEndpoints) {\n config.endpoints.push(endpoint)\n }\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.map((locale) => locale.code)\n\n config.localization.locales = (\n config.localization as LocalizationConfigWithLabels\n ).locales.map((locale) => ({\n ...locale,\n toString: () => locale.code,\n }))\n }\n\n // Default fallback to true if not provided\n config.localization.fallback = config.localization?.fallback ?? true\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 const richTextSanitizationPromises: Array<(config: SanitizedConfig) => Promise<void>> = []\n\n const schedulePublishCollections: CollectionSlug[] = []\n\n const queryPresetsCollections: CollectionSlug[] = []\n\n const schedulePublishGlobals: GlobalSlug[] = []\n\n const collectionSlugs = new Set<CollectionSlug>()\n\n const validRelationships = [\n ...(config.collections?.map((c) => c.slug) ?? []),\n jobsCollectionSlug,\n lockedDocumentsCollectionSlug,\n preferencesCollectionSlug,\n ]\n\n if (config.folders !== false) {\n validRelationships.push(config.folders!.slug)\n }\n\n /**\n * Blocks sanitization needs to happen before collections, as collection/global join field sanitization needs config.blocks\n * to be populated with the sanitized blocks\n */\n config.blocks = []\n\n if (incomingConfig.blocks?.length) {\n for (const block of incomingConfig.blocks) {\n const sanitizedBlock = block\n\n if (sanitizedBlock._sanitized === true) {\n continue\n }\n sanitizedBlock._sanitized = true\n\n sanitizedBlock.fields = sanitizedBlock.fields.concat(baseBlockFields)\n\n sanitizedBlock.labels = !sanitizedBlock.labels\n ? formatLabels(sanitizedBlock.slug)\n : sanitizedBlock.labels\n\n sanitizedBlock.fields = await sanitizeFields({\n config: config as unknown as Config,\n existingFieldNames: new Set(),\n fields: sanitizedBlock.fields,\n parentIsLocalized: false,\n richTextSanitizationPromises,\n validRelationships,\n })\n\n const flattenedSanitizedBlock = flattenBlock({ block })\n\n config.blocks.push(flattenedSanitizedBlock)\n }\n }\n\n const folderEnabledCollections: SanitizedCollectionConfig[] = []\n\n for (let i = 0; i < config.collections!.length; i++) {\n if (collectionSlugs.has(config.collections![i]!.slug)) {\n throw new DuplicateCollection('slug', config.collections![i]!.slug)\n }\n\n collectionSlugs.add(config.collections![i]!.slug)\n\n const draftsConfig = config.collections![i]?.versions?.drafts\n\n if (typeof draftsConfig === 'object' && draftsConfig.schedulePublish) {\n schedulePublishCollections.push(config.collections![i]!.slug)\n }\n\n if (config.collections![i]!.enableQueryPresets) {\n queryPresetsCollections.push(config.collections![i]!.slug)\n\n if (!validRelationships.includes(queryPresetsCollectionSlug)) {\n validRelationships.push(queryPresetsCollectionSlug)\n }\n }\n\n if (config.folders !== false && config.collections![i]!.folders) {\n addFolderFieldToCollection({\n collection: config.collections![i]!,\n collectionSpecific: config.folders!.collectionSpecific,\n folderFieldName: config.folders!.fieldName,\n folderSlug: config.folders!.slug,\n })\n }\n\n config.collections![i] = await sanitizeCollection(\n config as unknown as Config,\n config.collections![i]!,\n richTextSanitizationPromises,\n validRelationships,\n )\n\n if (config.folders !== false && config.collections![i]!.folders) {\n folderEnabledCollections.push(config.collections![i]!)\n }\n }\n\n if (config.globals!.length > 0) {\n for (let i = 0; i < config.globals!.length; i++) {\n if (hasScheduledPublishEnabled(config.globals![i]!)) {\n schedulePublishGlobals.push(config.globals![i]!.slug)\n }\n\n config.globals![i] = await sanitizeGlobal(\n config as unknown as Config,\n config.globals![i]!,\n richTextSanitizationPromises,\n validRelationships,\n )\n }\n }\n\n if (schedulePublishCollections.length || schedulePublishGlobals.length) {\n ;((config.jobs ??= {} as SanitizedJobsConfig).tasks ??= []).push(\n getSchedulePublishTask({\n adminUserSlug: config.admin!.user,\n collections: schedulePublishCollections,\n globals: schedulePublishGlobals,\n }),\n )\n }\n\n ;(config.jobs ??= {} as SanitizedJobsConfig).enabled = Boolean(\n (Array.isArray(configWithDefaults.jobs?.tasks) && configWithDefaults.jobs?.tasks?.length) ||\n (Array.isArray(configWithDefaults.jobs?.workflows) &&\n configWithDefaults.jobs?.workflows?.length),\n )\n\n // Need to add default jobs collection before locked documents collections\n if (config.jobs.enabled) {\n // Check for schedule property in both tasks and workflows\n const hasScheduleProperty =\n (config?.jobs?.tasks?.length && config.jobs.tasks.some((task) => task.schedule)) ||\n (config?.jobs?.workflows?.length &&\n config.jobs.workflows.some((workflow) => workflow.schedule))\n\n if (hasScheduleProperty) {\n config.jobs.scheduling = true\n // Add payload-jobs-stats global for tracking when a job of a specific slug was last run\n ;(config.globals ??= []).push(\n await sanitizeGlobal(\n config as unknown as Config,\n getJobStatsGlobal(config as unknown as Config),\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n\n config.jobs.stats = true\n }\n\n let defaultJobsCollection = getDefaultJobsCollection(config.jobs)\n\n if (typeof config.jobs.jobsCollectionOverrides === 'function') {\n defaultJobsCollection = config.jobs.jobsCollectionOverrides({\n defaultJobsCollection,\n })\n\n const hooks = defaultJobsCollection?.hooks\n // @todo - delete this check in 4.0\n if (hooks && config?.jobs?.runHooks !== true) {\n for (const [hookKey, hook] of Object.entries(hooks)) {\n const defaultAmount = hookKey === 'afterRead' || hookKey === 'beforeChange' ? 1 : 0\n if (hook.length > defaultAmount) {\n // eslint-disable-next-line no-console\n console.warn(\n `The jobsCollectionOverrides function is returning a collection with an additional ${hookKey} hook defined. These hooks will not run unless the jobs.runHooks option is set to true. Setting this option to true will negatively impact performance.`,\n )\n break\n }\n }\n }\n }\n const sanitizedJobsCollection = await sanitizeCollection(\n config as unknown as Config,\n defaultJobsCollection,\n richTextSanitizationPromises,\n validRelationships,\n )\n\n ;(config.collections ??= []).push(sanitizedJobsCollection)\n }\n\n if (config.folders !== false && folderEnabledCollections.length) {\n await addFolderCollection({\n collectionSpecific: config.folders!.collectionSpecific,\n config: config as unknown as Config,\n folderEnabledCollections,\n richTextSanitizationPromises,\n validRelationships,\n })\n }\n\n const lockedDocumentsCollection = getLockedDocumentsCollection(config as unknown as Config)\n\n if (lockedDocumentsCollection) {\n configWithDefaults.collections!.push(\n await sanitizeCollection(\n config as unknown as Config,\n lockedDocumentsCollection,\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n }\n\n configWithDefaults.collections!.push(\n await sanitizeCollection(\n config as unknown as Config,\n getPreferencesCollection(config as unknown as Config),\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n\n const migrations = await sanitizeCollection(\n config as unknown as Config,\n migrationsCollection,\n richTextSanitizationPromises,\n validRelationships,\n )\n\n // @ts-expect-error indexSortableFields is only valid for @payloadcms/db-mongodb\n if (config?.db?.indexSortableFields) {\n migrations.indexes = [\n {\n fields: ['batch', 'name'],\n unique: false,\n },\n ]\n }\n configWithDefaults.collections!.push(migrations)\n\n if (queryPresetsCollections.length > 0) {\n configWithDefaults.collections!.push(\n await sanitizeCollection(\n config as unknown as Config,\n getQueryPresetsConfig(config as unknown as Config),\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n }\n\n if (config.serverURL !== '') {\n config.csrf!.push(config.serverURL!)\n }\n\n const uploadAdapters = new Set<string>()\n // interact with all collections\n for (const collection of config.collections!) {\n // deduped upload adapters\n if (collection.upload?.adapter) {\n uploadAdapters.add(collection.upload.adapter)\n }\n }\n\n if (!config.upload) {\n config.upload = { adapters: [] }\n }\n\n config.upload.adapters = Array.from(\n new Set(config.collections!.map((c) => c.upload?.adapter).filter(Boolean) as string[]),\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\n for (const sanitizeFunction of richTextSanitizationPromises) {\n promises.push(sanitizeFunction(config as SanitizedConfig))\n }\n\n await Promise.all(promises)\n\n return config as SanitizedConfig\n}\n"],"names":["en","deepMergeSimple","defaultUserCollection","authRootEndpoints","sanitizeCollection","migrationsCollection","DuplicateCollection","InvalidConfiguration","defaultTimezones","addFolderCollection","addFolderFieldToCollection","sanitizeGlobal","baseBlockFields","formatLabels","sanitizeFields","getLockedDocumentsCollection","lockedDocumentsCollectionSlug","getPreferencesCollection","preferencesCollectionSlug","getQueryPresetsConfig","queryPresetsCollectionSlug","getDefaultJobsCollection","jobsCollectionSlug","getJobStatsGlobal","flattenBlock","hasScheduledPublishEnabled","validateTimezones","getSchedulePublishTask","addDefaultsToConfig","setupOrderable","sanitizeAdminConfig","configToSanitize","sanitizedConfig","compatibility","allowLocalizedWithinLocalized","process","env","NEXT_PUBLIC_PAYLOAD_COMPATIBILITY_allowLocalizedWithinLocalized","loggingLevels","Forbidden","Locked","MissingFile","NotFound","ValidationError","admin","dashboard","widgets","push","slug","ComponentPath","minWidth","defaultLayout","widgetSlug","width","user","firstCollectionWithAuth","collections","find","auth","Boolean","userCollection","timezones","supportedTimezones","source","sanitizeConfig","incomingConfig","configWithDefaults","config","endpoints","endpoint","localization","locales","length","firstLocale","localeCodes","map","locale","code","label","rtl","toString","fallback","i18nConfig","fallbackLanguage","supportedLanguages","translations","i18n","supportedLangKeys","Object","keys","fallbackLang","includes","richTextSanitizationPromises","schedulePublishCollections","queryPresetsCollections","schedulePublishGlobals","collectionSlugs","Set","validRelationships","c","folders","blocks","block","sanitizedBlock","_sanitized","fields","concat","labels","existingFieldNames","parentIsLocalized","flattenedSanitizedBlock","folderEnabledCollections","i","has","add","draftsConfig","versions","drafts","schedulePublish","enableQueryPresets","collection","collectionSpecific","folderFieldName","fieldName","folderSlug","globals","jobs","tasks","adminUserSlug","enabled","Array","isArray","workflows","hasScheduleProperty","some","task","schedule","workflow","scheduling","stats","defaultJobsCollection","jobsCollectionOverrides","hooks","runHooks","hookKey","hook","entries","defaultAmount","console","warn","sanitizedJobsCollection","lockedDocumentsCollection","migrations","db","indexSortableFields","indexes","unique","serverURL","csrf","uploadAdapters","upload","adapter","adapters","from","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 { CollectionSlug, GlobalSlug, SanitizedCollectionConfig } from '../index.js'\nimport type { SanitizedJobsConfig } from '../queues/config/types/index.js'\nimport type {\n Config,\n LocalizationConfigWithLabels,\n LocalizationConfigWithNoLabels,\n SanitizedConfig,\n Timezone,\n Widget,\n WidgetInstance,\n} from './types.js'\n\nimport { defaultUserCollection } from '../auth/defaultUser.js'\nimport { authRootEndpoints } from '../auth/endpoints/index.js'\nimport { sanitizeCollection } from '../collections/config/sanitize.js'\nimport { migrationsCollection } from '../database/migrations/migrationsCollection.js'\nimport { DuplicateCollection, InvalidConfiguration } from '../errors/index.js'\nimport { defaultTimezones } from '../fields/baseFields/timezone/defaultTimezones.js'\nimport { addFolderCollection } from '../folders/addFolderCollection.js'\nimport { addFolderFieldToCollection } from '../folders/addFolderFieldToCollection.js'\nimport { sanitizeGlobal } from '../globals/config/sanitize.js'\nimport { baseBlockFields, formatLabels, sanitizeFields } from '../index.js'\nimport {\n getLockedDocumentsCollection,\n lockedDocumentsCollectionSlug,\n} from '../locked-documents/config.js'\nimport { getPreferencesCollection, preferencesCollectionSlug } from '../preferences/config.js'\nimport { getQueryPresetsConfig, queryPresetsCollectionSlug } from '../query-presets/config.js'\nimport { getDefaultJobsCollection, jobsCollectionSlug } from '../queues/config/collection.js'\nimport { getJobStatsGlobal } from '../queues/config/global.js'\nimport { flattenBlock } from '../utilities/flattenAllFields.js'\nimport { hasScheduledPublishEnabled } from '../utilities/getVersionsConfig.js'\nimport { validateTimezones } from '../utilities/validateTimezones.js'\nimport { getSchedulePublishTask } from '../versions/schedule/job.js'\nimport { addDefaultsToConfig } from './defaults.js'\nimport { setupOrderable } from './orderable/index.js'\n\nconst sanitizeAdminConfig = (configToSanitize: Config): Partial<SanitizedConfig> => {\n const sanitizedConfig = { ...configToSanitize }\n\n if (configToSanitize?.compatibility?.allowLocalizedWithinLocalized) {\n process.env.NEXT_PUBLIC_PAYLOAD_COMPATIBILITY_allowLocalizedWithinLocalized = 'true'\n }\n\n // default logging level will be 'error' if not provided\n sanitizedConfig.loggingLevels = {\n Forbidden: 'info',\n Locked: 'info',\n MissingFile: 'info',\n NotFound: 'info',\n ValidationError: 'info',\n ...(sanitizedConfig.loggingLevels || {}),\n }\n ;(sanitizedConfig.admin!.dashboard ??= { widgets: [] }).widgets.push({\n slug: 'collections',\n ComponentPath: '@payloadcms/next/rsc#CollectionCards',\n minWidth: 'full',\n })\n sanitizedConfig.admin!.dashboard.defaultLayout ??= [\n {\n widgetSlug: 'collections',\n width: 'full',\n } satisfies WidgetInstance,\n ]\n\n // add default user collection if none provided\n if (!sanitizedConfig?.admin?.user) {\n const firstCollectionWithAuth = sanitizedConfig.collections!.find(({ auth }) => Boolean(auth))\n\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\n if (!userCollection || !userCollection.auth) {\n throw new InvalidConfiguration(\n `${sanitizedConfig.admin!.user} is not a valid admin user collection`,\n )\n }\n\n if (sanitizedConfig?.admin?.timezones) {\n if (typeof configToSanitize?.admin?.timezones?.supportedTimezones === 'function') {\n sanitizedConfig.admin.timezones.supportedTimezones =\n configToSanitize.admin.timezones.supportedTimezones({ defaultTimezones })\n }\n\n if (!sanitizedConfig?.admin?.timezones?.supportedTimezones) {\n sanitizedConfig.admin.timezones.supportedTimezones = defaultTimezones\n }\n } else {\n sanitizedConfig.admin!.timezones = {\n supportedTimezones: defaultTimezones,\n }\n }\n\n validateTimezones({\n source: 'admin.timezones.supportedTimezones',\n timezones: sanitizedConfig.admin!.timezones.supportedTimezones as Timezone[],\n })\n\n return sanitizedConfig as unknown as Partial<SanitizedConfig>\n}\n\nexport const sanitizeConfig = async (incomingConfig: Config): Promise<SanitizedConfig> => {\n const configWithDefaults = addDefaultsToConfig(incomingConfig)\n\n const config: Partial<SanitizedConfig> = sanitizeAdminConfig(configWithDefaults)\n\n // Add orderable fields\n setupOrderable(config as SanitizedConfig)\n\n if (!config.endpoints) {\n config.endpoints = []\n }\n\n for (const endpoint of authRootEndpoints) {\n config.endpoints.push(endpoint)\n }\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.map((locale) => locale.code)\n\n config.localization.locales = (\n config.localization as LocalizationConfigWithLabels\n ).locales.map((locale) => ({\n ...locale,\n toString: () => locale.code,\n }))\n }\n\n // Default fallback to true if not provided\n config.localization.fallback = config.localization?.fallback ?? true\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 const richTextSanitizationPromises: Array<(config: SanitizedConfig) => Promise<void>> = []\n\n const schedulePublishCollections: CollectionSlug[] = []\n\n const queryPresetsCollections: CollectionSlug[] = []\n\n const schedulePublishGlobals: GlobalSlug[] = []\n\n const collectionSlugs = new Set<CollectionSlug>()\n\n const validRelationships = [\n ...(config.collections?.map((c) => c.slug) ?? []),\n jobsCollectionSlug,\n lockedDocumentsCollectionSlug,\n preferencesCollectionSlug,\n ]\n\n if (config.folders !== false) {\n validRelationships.push(config.folders!.slug)\n }\n\n const dashboardWidgets = config.admin?.dashboard?.widgets ?? ([] as Widget[])\n\n for (const widget of dashboardWidgets) {\n if (widget.fields?.length) {\n widget.fields = await sanitizeFields({\n config: config as unknown as Config,\n existingFieldNames: new Set(),\n fields: widget.fields,\n parentIsLocalized: false,\n richTextSanitizationPromises,\n validRelationships,\n })\n }\n }\n\n /**\n * Blocks sanitization needs to happen before collections, as collection/global join field sanitization needs config.blocks\n * to be populated with the sanitized blocks\n */\n config.blocks = []\n\n if (incomingConfig.blocks?.length) {\n for (const block of incomingConfig.blocks) {\n const sanitizedBlock = block\n\n if (sanitizedBlock._sanitized === true) {\n continue\n }\n sanitizedBlock._sanitized = true\n\n sanitizedBlock.fields = sanitizedBlock.fields.concat(baseBlockFields)\n\n sanitizedBlock.labels = !sanitizedBlock.labels\n ? formatLabels(sanitizedBlock.slug)\n : sanitizedBlock.labels\n\n sanitizedBlock.fields = await sanitizeFields({\n config: config as unknown as Config,\n existingFieldNames: new Set(),\n fields: sanitizedBlock.fields,\n parentIsLocalized: false,\n richTextSanitizationPromises,\n validRelationships,\n })\n\n const flattenedSanitizedBlock = flattenBlock({ block })\n\n config.blocks.push(flattenedSanitizedBlock)\n }\n }\n\n const folderEnabledCollections: SanitizedCollectionConfig[] = []\n\n for (let i = 0; i < config.collections!.length; i++) {\n if (collectionSlugs.has(config.collections![i]!.slug)) {\n throw new DuplicateCollection('slug', config.collections![i]!.slug)\n }\n\n collectionSlugs.add(config.collections![i]!.slug)\n\n const draftsConfig = config.collections![i]?.versions?.drafts\n\n if (typeof draftsConfig === 'object' && draftsConfig.schedulePublish) {\n schedulePublishCollections.push(config.collections![i]!.slug)\n }\n\n if (config.collections![i]!.enableQueryPresets) {\n queryPresetsCollections.push(config.collections![i]!.slug)\n\n if (!validRelationships.includes(queryPresetsCollectionSlug)) {\n validRelationships.push(queryPresetsCollectionSlug)\n }\n }\n\n if (config.folders !== false && config.collections![i]!.folders) {\n addFolderFieldToCollection({\n collection: config.collections![i]!,\n collectionSpecific: config.folders!.collectionSpecific,\n folderFieldName: config.folders!.fieldName,\n folderSlug: config.folders!.slug,\n })\n }\n\n config.collections![i] = await sanitizeCollection(\n config as unknown as Config,\n config.collections![i]!,\n richTextSanitizationPromises,\n validRelationships,\n )\n\n if (config.folders !== false && config.collections![i]!.folders) {\n folderEnabledCollections.push(config.collections![i]!)\n }\n }\n\n if (config.globals!.length > 0) {\n for (let i = 0; i < config.globals!.length; i++) {\n if (hasScheduledPublishEnabled(config.globals![i]!)) {\n schedulePublishGlobals.push(config.globals![i]!.slug)\n }\n\n config.globals![i] = await sanitizeGlobal(\n config as unknown as Config,\n config.globals![i]!,\n richTextSanitizationPromises,\n validRelationships,\n )\n }\n }\n\n if (schedulePublishCollections.length || schedulePublishGlobals.length) {\n ;((config.jobs ??= {} as SanitizedJobsConfig).tasks ??= []).push(\n getSchedulePublishTask({\n adminUserSlug: config.admin!.user,\n collections: schedulePublishCollections,\n globals: schedulePublishGlobals,\n }),\n )\n }\n\n ;(config.jobs ??= {} as SanitizedJobsConfig).enabled = Boolean(\n (Array.isArray(configWithDefaults.jobs?.tasks) && configWithDefaults.jobs?.tasks?.length) ||\n (Array.isArray(configWithDefaults.jobs?.workflows) &&\n configWithDefaults.jobs?.workflows?.length),\n )\n\n // Need to add default jobs collection before locked documents collections\n if (config.jobs.enabled) {\n // Check for schedule property in both tasks and workflows\n const hasScheduleProperty =\n (config?.jobs?.tasks?.length && config.jobs.tasks.some((task) => task.schedule)) ||\n (config?.jobs?.workflows?.length &&\n config.jobs.workflows.some((workflow) => workflow.schedule))\n\n if (hasScheduleProperty) {\n config.jobs.scheduling = true\n // Add payload-jobs-stats global for tracking when a job of a specific slug was last run\n ;(config.globals ??= []).push(\n await sanitizeGlobal(\n config as unknown as Config,\n getJobStatsGlobal(config as unknown as Config),\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n\n config.jobs.stats = true\n }\n\n let defaultJobsCollection = getDefaultJobsCollection(config.jobs)\n\n if (typeof config.jobs.jobsCollectionOverrides === 'function') {\n defaultJobsCollection = config.jobs.jobsCollectionOverrides({\n defaultJobsCollection,\n })\n\n const hooks = defaultJobsCollection?.hooks\n // @todo - delete this check in 4.0\n if (hooks && config?.jobs?.runHooks !== true) {\n for (const [hookKey, hook] of Object.entries(hooks)) {\n const defaultAmount = hookKey === 'afterRead' || hookKey === 'beforeChange' ? 1 : 0\n if (hook.length > defaultAmount) {\n // eslint-disable-next-line no-console\n console.warn(\n `The jobsCollectionOverrides function is returning a collection with an additional ${hookKey} hook defined. These hooks will not run unless the jobs.runHooks option is set to true. Setting this option to true will negatively impact performance.`,\n )\n break\n }\n }\n }\n }\n const sanitizedJobsCollection = await sanitizeCollection(\n config as unknown as Config,\n defaultJobsCollection,\n richTextSanitizationPromises,\n validRelationships,\n )\n\n ;(config.collections ??= []).push(sanitizedJobsCollection)\n }\n\n if (config.folders !== false && folderEnabledCollections.length) {\n await addFolderCollection({\n collectionSpecific: config.folders!.collectionSpecific,\n config: config as unknown as Config,\n folderEnabledCollections,\n richTextSanitizationPromises,\n validRelationships,\n })\n }\n\n const lockedDocumentsCollection = getLockedDocumentsCollection(config as unknown as Config)\n\n if (lockedDocumentsCollection) {\n configWithDefaults.collections!.push(\n await sanitizeCollection(\n config as unknown as Config,\n lockedDocumentsCollection,\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n }\n\n configWithDefaults.collections!.push(\n await sanitizeCollection(\n config as unknown as Config,\n getPreferencesCollection(config as unknown as Config),\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n\n const migrations = await sanitizeCollection(\n config as unknown as Config,\n migrationsCollection,\n richTextSanitizationPromises,\n validRelationships,\n )\n\n // @ts-expect-error indexSortableFields is only valid for @payloadcms/db-mongodb\n if (config?.db?.indexSortableFields) {\n migrations.indexes = [\n {\n fields: ['batch', 'name'],\n unique: false,\n },\n ]\n }\n configWithDefaults.collections!.push(migrations)\n\n if (queryPresetsCollections.length > 0) {\n configWithDefaults.collections!.push(\n await sanitizeCollection(\n config as unknown as Config,\n getQueryPresetsConfig(config as unknown as Config),\n richTextSanitizationPromises,\n validRelationships,\n ),\n )\n }\n\n if (config.serverURL !== '') {\n config.csrf!.push(config.serverURL!)\n }\n\n const uploadAdapters = new Set<string>()\n // interact with all collections\n for (const collection of config.collections!) {\n // deduped upload adapters\n if (collection.upload?.adapter) {\n uploadAdapters.add(collection.upload.adapter)\n }\n }\n\n if (!config.upload) {\n config.upload = { adapters: [] }\n }\n\n config.upload.adapters = Array.from(\n new Set(config.collections!.map((c) => c.upload?.adapter).filter(Boolean) as string[]),\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\n for (const sanitizeFunction of richTextSanitizationPromises) {\n promises.push(sanitizeFunction(config as SanitizedConfig))\n }\n\n await Promise.all(promises)\n\n return config as SanitizedConfig\n}\n"],"names":["en","deepMergeSimple","defaultUserCollection","authRootEndpoints","sanitizeCollection","migrationsCollection","DuplicateCollection","InvalidConfiguration","defaultTimezones","addFolderCollection","addFolderFieldToCollection","sanitizeGlobal","baseBlockFields","formatLabels","sanitizeFields","getLockedDocumentsCollection","lockedDocumentsCollectionSlug","getPreferencesCollection","preferencesCollectionSlug","getQueryPresetsConfig","queryPresetsCollectionSlug","getDefaultJobsCollection","jobsCollectionSlug","getJobStatsGlobal","flattenBlock","hasScheduledPublishEnabled","validateTimezones","getSchedulePublishTask","addDefaultsToConfig","setupOrderable","sanitizeAdminConfig","configToSanitize","sanitizedConfig","compatibility","allowLocalizedWithinLocalized","process","env","NEXT_PUBLIC_PAYLOAD_COMPATIBILITY_allowLocalizedWithinLocalized","loggingLevels","Forbidden","Locked","MissingFile","NotFound","ValidationError","admin","dashboard","widgets","push","slug","ComponentPath","minWidth","defaultLayout","widgetSlug","width","user","firstCollectionWithAuth","collections","find","auth","Boolean","userCollection","timezones","supportedTimezones","source","sanitizeConfig","incomingConfig","configWithDefaults","config","endpoints","endpoint","localization","locales","length","firstLocale","localeCodes","map","locale","code","label","rtl","toString","fallback","i18nConfig","fallbackLanguage","supportedLanguages","translations","i18n","supportedLangKeys","Object","keys","fallbackLang","includes","richTextSanitizationPromises","schedulePublishCollections","queryPresetsCollections","schedulePublishGlobals","collectionSlugs","Set","validRelationships","c","folders","dashboardWidgets","widget","fields","existingFieldNames","parentIsLocalized","blocks","block","sanitizedBlock","_sanitized","concat","labels","flattenedSanitizedBlock","folderEnabledCollections","i","has","add","draftsConfig","versions","drafts","schedulePublish","enableQueryPresets","collection","collectionSpecific","folderFieldName","fieldName","folderSlug","globals","jobs","tasks","adminUserSlug","enabled","Array","isArray","workflows","hasScheduleProperty","some","task","schedule","workflow","scheduling","stats","defaultJobsCollection","jobsCollectionOverrides","hooks","runHooks","hookKey","hook","entries","defaultAmount","console","warn","sanitizedJobsCollection","lockedDocumentsCollection","migrations","db","indexSortableFields","indexes","unique","serverURL","csrf","uploadAdapters","upload","adapter","adapters","from","filter","email","editor","isRoot","promises","sanitizeFunction","Promise","all"],"mappings":"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"}
@@ -19,7 +19,7 @@ import type { EmailAdapter, SendEmailOptions } from '../email/types.js';
19
19
  import type { ErrorName } from '../errors/types.js';
20
20
  import type { RootFoldersConfiguration } from '../folders/types.js';
21
21
  import type { GlobalConfig, Globals, SanitizedGlobalConfig } from '../globals/config/types.js';
22
- import type { Block, DefaultDocumentIDType, FlattenedBlock, JobsConfig, KVAdapterResult, Payload, RequestContext, SelectField, TypedUser } from '../index.js';
22
+ import type { Block, ClientField, DataFromWidgetSlug, DefaultDocumentIDType, Field, FlattenedBlock, JobsConfig, KVAdapterResult, Payload, RequestContext, SelectField, TypedUser, TypedWidget, WidgetSlug } from '../index.js';
23
23
  import type { QueryPreset, QueryPresetConstraints } from '../query-presets/types.js';
24
24
  import type { SanitizedJobsConfig } from '../queues/config/types/index.js';
25
25
  import type { PayloadRequest, Where } from '../types/index.js';
@@ -565,6 +565,7 @@ export type AfterErrorHook = (args: AfterErrorHookArgs) => AfterErrorResult | Pr
565
565
  export type WidgetWidth = 'full' | 'large' | 'medium' | 'small' | 'x-large' | 'x-small';
566
566
  export type Widget = {
567
567
  ComponentPath: string;
568
+ fields?: Field[];
568
569
  /**
569
570
  * Human-friendly label for the widget.
570
571
  * Supports i18n by passing an object with locale keys, or a function with `t` for translations.
@@ -579,15 +580,23 @@ export type Widget = {
579
580
  * Client-side widget type with resolved label (no functions).
580
581
  */
581
582
  export type ClientWidget = {
583
+ fields?: ClientField[];
582
584
  label?: StaticLabel;
583
585
  maxWidth?: WidgetWidth;
584
586
  minWidth?: WidgetWidth;
585
587
  slug: string;
586
588
  };
587
- export type WidgetInstance = {
588
- widgetSlug: string;
589
- width?: WidgetWidth;
590
- };
589
+ export type WidgetInstance<TSlug extends WidgetSlug = WidgetSlug> = TSlug extends WidgetSlug ? {
590
+ data?: DataFromWidgetSlug<TSlug> extends Record<string, unknown> ? DataFromWidgetSlug<TSlug> : Record<string, unknown>;
591
+ widgetSlug: TSlug;
592
+ width: [
593
+ Extract<TypedWidget[TSlug] extends {
594
+ width: infer TWidth;
595
+ } ? TWidth : WidgetWidth, WidgetWidth>
596
+ ] extends [never] ? WidgetWidth : Extract<TypedWidget[TSlug] extends {
597
+ width: infer TWidth;
598
+ } ? TWidth : WidgetWidth, WidgetWidth>;
599
+ } : never;
591
600
  export type DashboardConfig = {
592
601
  defaultLayout?: ((args: {
593
602
  req: PayloadRequest;
@@ -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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"}