payload 4.0.0-internal.934870d → 4.0.0-internal.970009e

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 (159) hide show
  1. package/dist/admin/adapters/router.d.ts +1 -1
  2. package/dist/admin/adapters/router.d.ts.map +1 -1
  3. package/dist/admin/adapters/router.js.map +1 -1
  4. package/dist/admin/initAdminContext.js.map +1 -1
  5. package/dist/auth/getFieldsToSign.js.map +1 -1
  6. package/dist/auth/loginWithCookie.js.map +1 -1
  7. package/dist/auth/serverFunctions/cookies.js.map +1 -1
  8. package/dist/auth/serverFunctions/login.js.map +1 -1
  9. package/dist/auth/types.d.ts.map +1 -1
  10. package/dist/auth/types.js.map +1 -1
  11. package/dist/cli/commands/data/utilities.d.ts +1 -1
  12. package/dist/cli/commands/data/utilities.d.ts.map +1 -1
  13. package/dist/cli/commands/data/utilities.js.map +1 -1
  14. package/dist/cli/defineCLICommand.js +1 -1
  15. package/dist/cli/defineCLICommand.js.map +1 -1
  16. package/dist/collections/config/client.js.map +1 -1
  17. package/dist/collections/config/types.d.ts +4 -1
  18. package/dist/collections/config/types.d.ts.map +1 -1
  19. package/dist/collections/config/types.js.map +1 -1
  20. package/dist/collections/operations/findByID.js.map +1 -1
  21. package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
  22. package/dist/collections/operations/findVersionByID.js +7 -0
  23. package/dist/collections/operations/findVersionByID.js.map +1 -1
  24. package/dist/collections/operations/findVersions.d.ts.map +1 -1
  25. package/dist/collections/operations/findVersions.js +5 -0
  26. package/dist/collections/operations/findVersions.js.map +1 -1
  27. package/dist/collections/operations/local/findDistinct.js.map +1 -1
  28. package/dist/collections/operations/renameFile.js +1 -1
  29. package/dist/collections/operations/renameFile.js.map +1 -1
  30. package/dist/collections/operations/utilities/update.js +1 -1
  31. package/dist/collections/operations/utilities/update.js.map +1 -1
  32. package/dist/collections/operations/validate.js +4 -4
  33. package/dist/collections/operations/validate.js.map +1 -1
  34. package/dist/config/client.d.ts.map +1 -1
  35. package/dist/config/client.js +1 -0
  36. package/dist/config/client.js.map +1 -1
  37. package/dist/config/defaults.d.ts.map +1 -1
  38. package/dist/config/defaults.js +1 -0
  39. package/dist/config/defaults.js.map +1 -1
  40. package/dist/config/definePlugin.js.map +1 -1
  41. package/dist/config/sanitize.js +2 -2
  42. package/dist/config/sanitize.js.map +1 -1
  43. package/dist/config/types.d.ts +12 -0
  44. package/dist/config/types.d.ts.map +1 -1
  45. package/dist/config/types.js.map +1 -1
  46. package/dist/database/types.d.ts +4 -0
  47. package/dist/database/types.d.ts.map +1 -1
  48. package/dist/database/types.js.map +1 -1
  49. package/dist/exports/build-config.d.ts +9 -0
  50. package/dist/exports/build-config.d.ts.map +1 -0
  51. package/dist/exports/build-config.js +38 -0
  52. package/dist/exports/build-config.js.map +1 -0
  53. package/dist/fields/config/client.js.map +1 -1
  54. package/dist/fields/config/reservedFieldNames.d.ts.map +1 -1
  55. package/dist/fields/config/reservedFieldNames.js.map +1 -1
  56. package/dist/fields/config/types.d.ts.map +1 -1
  57. package/dist/fields/config/types.js.map +1 -1
  58. package/dist/fields/hooks/afterChange/promise.js.map +1 -1
  59. package/dist/fields/hooks/afterRead/promise.js.map +1 -1
  60. package/dist/fields/hooks/beforeChange/flattenValidationData.d.ts +14 -0
  61. package/dist/fields/hooks/beforeChange/flattenValidationData.d.ts.map +1 -0
  62. package/dist/fields/hooks/beforeChange/flattenValidationData.js +36 -0
  63. package/dist/fields/hooks/beforeChange/flattenValidationData.js.map +1 -0
  64. package/dist/fields/hooks/beforeChange/promise.d.ts +2 -1
  65. package/dist/fields/hooks/beforeChange/promise.d.ts.map +1 -1
  66. package/dist/fields/hooks/beforeChange/promise.js +96 -22
  67. package/dist/fields/hooks/beforeChange/promise.js.map +1 -1
  68. package/dist/fields/hooks/beforeChange/traverseFields.d.ts +2 -1
  69. package/dist/fields/hooks/beforeChange/traverseFields.d.ts.map +1 -1
  70. package/dist/fields/hooks/beforeChange/traverseFields.js +2 -1
  71. package/dist/fields/hooks/beforeChange/traverseFields.js.map +1 -1
  72. package/dist/fields/validations.d.ts.map +1 -1
  73. package/dist/fields/validations.js +4 -1
  74. package/dist/fields/validations.js.map +1 -1
  75. package/dist/globals/config/types.d.ts +2 -1
  76. package/dist/globals/config/types.d.ts.map +1 -1
  77. package/dist/globals/config/types.js.map +1 -1
  78. package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
  79. package/dist/globals/operations/findVersionByID.js +7 -0
  80. package/dist/globals/operations/findVersionByID.js.map +1 -1
  81. package/dist/globals/operations/findVersions.d.ts.map +1 -1
  82. package/dist/globals/operations/findVersions.js +5 -0
  83. package/dist/globals/operations/findVersions.js.map +1 -1
  84. package/dist/globals/operations/local/findOne.js.map +1 -1
  85. package/dist/globals/operations/local/update.js.map +1 -1
  86. package/dist/globals/operations/restoreVersion.d.ts +2 -3
  87. package/dist/globals/operations/restoreVersion.d.ts.map +1 -1
  88. package/dist/globals/operations/restoreVersion.js +22 -15
  89. package/dist/globals/operations/restoreVersion.js.map +1 -1
  90. package/dist/globals/operations/validate.js +1 -1
  91. package/dist/globals/operations/validate.js.map +1 -1
  92. package/dist/hierarchy/addHierarchyToCollection.d.ts.map +1 -1
  93. package/dist/hierarchy/addHierarchyToCollection.js +32 -21
  94. package/dist/hierarchy/addHierarchyToCollection.js.map +1 -1
  95. package/dist/hierarchy/createFolderField.js.map +1 -1
  96. package/dist/hierarchy/resolveHierarchyCollections.js +9 -3
  97. package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -1
  98. package/dist/hierarchy/utils/computePaths.d.ts.map +1 -1
  99. package/dist/hierarchy/utils/computePaths.js.map +1 -1
  100. package/dist/index.bundled.d.ts +43 -7
  101. package/dist/llm-instructions/getInstructionsCollection.d.ts.map +1 -1
  102. package/dist/llm-instructions/getInstructionsCollection.js +2 -0
  103. package/dist/llm-instructions/getInstructionsCollection.js.map +1 -1
  104. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +1 -1
  105. package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
  106. package/dist/types/index.d.ts.map +1 -1
  107. package/dist/types/index.js.map +1 -1
  108. package/dist/uploads/fileVersioning/archive.js.map +1 -1
  109. package/dist/uploads/fileVersioning/cloudStorage.js.map +1 -1
  110. package/dist/uploads/fileVersioning/resolveHistoricalFile.js.map +1 -1
  111. package/dist/uploads/formatFilesize.js +1 -1
  112. package/dist/uploads/formatFilesize.js.map +1 -1
  113. package/dist/uploads/generateFileData.d.ts.map +1 -1
  114. package/dist/uploads/generateFileData.js.map +1 -1
  115. package/dist/uploads/getFileContentRequirement.js.map +1 -1
  116. package/dist/uploads/getFileFromUploadInstructions.js.map +1 -1
  117. package/dist/uploads/safeFetch.js.map +1 -1
  118. package/dist/uploads/stagedUpload.js.map +1 -1
  119. package/dist/uploads/transformers/handleDynamicFileRequest.js +11 -2
  120. package/dist/uploads/transformers/handleDynamicFileRequest.js.map +1 -1
  121. package/dist/utilities/addSelectGenericsToGeneretedTypes.d.ts.map +1 -1
  122. package/dist/utilities/addSelectGenericsToGeneretedTypes.js +0 -1
  123. package/dist/utilities/addSelectGenericsToGeneretedTypes.js.map +1 -1
  124. package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -1
  125. package/dist/utilities/cloneValidationRequest.js.map +1 -1
  126. package/dist/utilities/createPayloadRequest.js.map +1 -1
  127. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts +12 -1
  128. package/dist/utilities/createPayloadRequestFromWebRequest.d.ts.map +1 -1
  129. package/dist/utilities/createPayloadRequestFromWebRequest.js +9 -3
  130. package/dist/utilities/createPayloadRequestFromWebRequest.js.map +1 -1
  131. package/dist/utilities/deepCopyObject.js.map +1 -1
  132. package/dist/utilities/documentMatchingWhereExists.js +1 -1
  133. package/dist/utilities/documentMatchingWhereExists.js.map +1 -1
  134. package/dist/utilities/entityInputSchema/validateEntityData.d.ts.map +1 -1
  135. package/dist/utilities/entityInputSchema/validateEntityData.js.map +1 -1
  136. package/dist/utilities/filterDataToSelectedLocales.js.map +1 -1
  137. package/dist/utilities/getEntityPermissions/getEntityPermissions.d.ts.map +1 -1
  138. package/dist/utilities/getEntityPermissions/getEntityPermissions.js +1 -0
  139. package/dist/utilities/getEntityPermissions/getEntityPermissions.js.map +1 -1
  140. package/dist/utilities/getEntityPermissions/populateFieldPermissions.js.map +1 -1
  141. package/dist/utilities/getVersionsConfig.d.ts +4 -0
  142. package/dist/utilities/getVersionsConfig.d.ts.map +1 -1
  143. package/dist/utilities/getVersionsConfig.js +5 -0
  144. package/dist/utilities/getVersionsConfig.js.map +1 -1
  145. package/dist/utilities/handleEndpoints.d.ts.map +1 -1
  146. package/dist/utilities/handleEndpoints.js +10 -2
  147. package/dist/utilities/handleEndpoints.js.map +1 -1
  148. package/dist/utilities/parseParams/index.js.map +1 -1
  149. package/dist/utilities/parseValidationLocale.js.map +1 -1
  150. package/dist/utilities/sanitizePopulateParam.js.map +1 -1
  151. package/dist/utilities/telemetry/conf/index.d.ts +4 -1
  152. package/dist/utilities/telemetry/conf/index.d.ts.map +1 -1
  153. package/dist/utilities/telemetry/conf/index.js.map +1 -1
  154. package/dist/utilities/telemetry/featureInfo/getFeatureInfo.js.map +1 -1
  155. package/dist/versions/allLocalesPublicationStatus.js.map +1 -1
  156. package/dist/versions/isInheritedReadVersionsAccess.js.map +1 -1
  157. package/package.json +30 -28
  158. package/skills/payload/reference/ENDPOINTS.md +3 -9
  159. package/skills/payload/reference/PLUGIN-DEVELOPMENT.md +4 -4
@@ -43,7 +43,7 @@ export type RouterAdapterRouter = {
43
43
  */
44
44
  replace: (path: string, options?: {
45
45
  scroll?: boolean;
46
- }) => void;
46
+ }) => Promise<void> | void;
47
47
  /**
48
48
  * Use this property to standardize behaviors across different router implementations.
49
49
  * Set it up to sync client state to the URL without triggering a second server load.
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/admin/adapters/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,sBAAsB,GAAG,KAAK,CAAC,aAAa,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC,CAAA;AAEvF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB;;OAEG;IACH,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IAC5D;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB;;OAEG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IAC/D;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IAClC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAA"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../../src/admin/adapters/router.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,sBAAsB,GAAG,KAAK,CAAC,aAAa,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC,CAAA;AAEvF,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB;;OAEG;IACH,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAA;IAC5D;;OAEG;IACH,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB;;OAEG;IACH,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC/E;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;IAClC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/admin/adapters/router.ts"],"sourcesContent":["import type React from 'react'\n\n/**\n * Client-side router adapter to abstract away framework-specific routing implementations.\n * This way plugins and server components can use server-only APIs without directly importing any framework-specific modules.\n *\n * @example\n * ```tsx\n * // Next.js router adapter (simplified):\n * import { useRouter as useNextRouter, usePathname as useNextPathname } from 'next/navigation'\n *\n * const NextRouterAdapter: RouterAdapterComponent = ({ children }) => {\n * const router = useNextRouter()\n * const pathname = useNextPathname()\n *\n * return (\n * <RouterAdapterContext value={{ router, pathname, ... }}>\n * {children}\n * </RouterAdapterContext>\n * )\n * }\n * ```\n */\nexport type RouterAdapterComponent = React.ComponentType<{ children: React.ReactNode }>\n\nexport type RouterAdapterRouter = {\n /**\n * Navigate back to the previous page in the history stack.\n */\n back: () => void\n /**\n * Navigate to a new path.\n */\n push: (path: string, options?: { scroll?: boolean }) => void\n /**\n * Refresh the current route.\n */\n refresh: () => void\n /**\n * Replace the current path with a new one.\n */\n replace: (path: string, options?: { scroll?: boolean }) => void\n /**\n * Use this property to standardize behaviors across different router implementations.\n * Set it up to sync client state to the URL without triggering a second server load.\n *\n * In Next.js, calling `window.history.replaceState` directly is sufficient, as Next.js does not observe history mutations.\n * In TanStack Router, however, `history.replaceState` is monkeypatched to notify the router of changes.\n */\n replaceState?: (url: string) => void\n}\n\nexport type LinkAdapterProps = {\n children?: React.ReactNode\n href: string\n prefetch?: boolean\n ref?: React.Ref<HTMLAnchorElement>\n replace?: boolean\n scroll?: boolean\n} & Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>\n"],"names":[],"mappings":"AAoDA,WAO+D"}
1
+ {"version":3,"sources":["../../../src/admin/adapters/router.ts"],"sourcesContent":["import type React from 'react'\n\n/**\n * Client-side router adapter to abstract away framework-specific routing implementations.\n * This way plugins and server components can use server-only APIs without directly importing any framework-specific modules.\n *\n * @example\n * ```tsx\n * // Next.js router adapter (simplified):\n * import { useRouter as useNextRouter, usePathname as useNextPathname } from 'next/navigation'\n *\n * const NextRouterAdapter: RouterAdapterComponent = ({ children }) => {\n * const router = useNextRouter()\n * const pathname = useNextPathname()\n *\n * return (\n * <RouterAdapterContext value={{ router, pathname, ... }}>\n * {children}\n * </RouterAdapterContext>\n * )\n * }\n * ```\n */\nexport type RouterAdapterComponent = React.ComponentType<{ children: React.ReactNode }>\n\nexport type RouterAdapterRouter = {\n /**\n * Navigate back to the previous page in the history stack.\n */\n back: () => void\n /**\n * Navigate to a new path.\n */\n push: (path: string, options?: { scroll?: boolean }) => void\n /**\n * Refresh the current route.\n */\n refresh: () => void\n /**\n * Replace the current path with a new one.\n */\n replace: (path: string, options?: { scroll?: boolean }) => Promise<void> | void\n /**\n * Use this property to standardize behaviors across different router implementations.\n * Set it up to sync client state to the URL without triggering a second server load.\n *\n * In Next.js, calling `window.history.replaceState` directly is sufficient, as Next.js does not observe history mutations.\n * In TanStack Router, however, `history.replaceState` is monkeypatched to notify the router of changes.\n */\n replaceState?: (url: string) => void\n}\n\nexport type LinkAdapterProps = {\n children?: React.ReactNode\n href: string\n prefetch?: boolean\n ref?: React.Ref<HTMLAnchorElement>\n replace?: boolean\n scroll?: boolean\n} & Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>\n"],"names":[],"mappings":"AAoDA,WAO+D"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/admin/initAdminContext.ts"],"sourcesContent":["import type { I18n, I18nClient } from '@payloadcms/translations'\n\nimport { initI18n } from '@payloadcms/translations'\nimport * as qs from 'qs-esm'\n\nimport type { ImportMap } from '../cli/commands/generateImportMap/generateImportMap.js'\nimport type { SanitizedConfig } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\nimport type { CreatePayloadRequestArgs } from '../utilities/createPayloadRequest.js'\nimport type { ServerAdapter } from './adapters/server.js'\nimport type { AdminContext } from './functions/index.js'\n\nimport { applyUserReadAccess } from '../auth/applyUserReadAccess.js'\nimport { executeAuthStrategies } from '../auth/executeAuthStrategies.js'\nimport { getAccessResults } from '../auth/getAccessResults.js'\nimport { getPayload } from '../index.js'\nimport { createPayloadRequest } from '../utilities/createPayloadRequest.js'\nimport { getRequestLanguage } from '../utilities/getRequestLanguage.js'\nimport { parseCookies } from '../utilities/parseCookies.js'\nimport { getRequestLocale } from './getRequestLocale.js'\n\nexport type PartialAdminContext = {\n i18n: I18nClient\n} & Pick<PayloadRequest, 'payload' | 'responseHeaders' | 'user'>\n\n/** Framework-provided request-scoped caching hooks used to deduplicate admin context creation. */\nexport type AdminContextCache = {\n /** Reuses locale preference resolution across admin contexts. */\n getLocale?: (\n resolveLocale: () => Promise<Pick<AdminContext, 'locale'>>,\n ...cacheArgs: unknown[]\n ) => Promise<Pick<AdminContext, 'locale'>>\n /** Reuses Payload, i18n, and authentication state within the current request. */\n getPartial: (\n createPartialContext: () => Promise<PartialAdminContext>,\n ) => Promise<PartialAdminContext>\n /** Reuses a complete admin context for the supplied key and cache arguments. */\n getRequest: (\n createContext: () => Promise<AdminContext>,\n key: string,\n ...cacheArgs: unknown[]\n ) => Promise<AdminContext>\n}\n\nexport type InitAdminContextArgs = {\n /**\n * Optional framework-owned request-scoped cache.\n * Framework adapters control its lifetime to prevent request state from leaking between requests.\n */\n cache?: AdminContextCache\n canSetHeaders?: boolean\n configPromise: Promise<SanitizedConfig> | SanitizedConfig\n importMap: ImportMap\n /** Identifies the complete admin context within `cache`; required when a cache is supplied. */\n key?: string\n overrides?: Omit<CreatePayloadRequestArgs, 'payload'>\n requestURL?: string\n serverAdapter: ServerAdapter\n}\n\n/**\n * Creates the request context used by framework adapters to render the admin panel.\n */\nexport async function initAdminContext({\n cache,\n canSetHeaders,\n configPromise,\n importMap,\n key,\n overrides,\n requestURL,\n serverAdapter,\n}: InitAdminContextArgs): Promise<AdminContext> {\n if (cache && !key) {\n throw new Error('initAdminContext requires a key when cache is provided')\n }\n\n const headers = await serverAdapter.getHeaders()\n const cookies = parseCookies(headers)\n\n const createPartialContext = async (): Promise<PartialAdminContext> => {\n const config = await configPromise\n const payload = await getPayload({ config, cron: true, importMap })\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'client',\n language: languageCode,\n })\n\n const { responseHeaders, user } = await executeAuthStrategies({\n canSetHeaders,\n headers,\n payload,\n })\n\n return {\n i18n,\n payload,\n responseHeaders,\n user,\n }\n }\n\n const partialContext = cache\n ? await cache.getPartial(createPartialContext)\n : await createPartialContext()\n\n const createContext = async (): Promise<AdminContext> => {\n const { i18n, payload, responseHeaders, user } = partialContext\n const { req: reqOverrides, ...optionsOverrides } = overrides || {}\n const hasOptionsUserOverride = Object.hasOwn(optionsOverrides, 'user')\n const hasReqUserOverride = Object.hasOwn(reqOverrides ?? {}, 'user')\n const hasUserOverride = hasOptionsUserOverride || hasReqUserOverride\n const userOverride = hasOptionsUserOverride ? optionsOverrides.user : reqOverrides?.user\n const requestDefaults = getRequestDefaults({ requestURL })\n\n const req = await createPayloadRequest({\n req: {\n headers,\n host: headers.get('host') ?? undefined,\n i18n: i18n as I18n,\n responseHeaders,\n server: serverAdapter,\n user,\n ...requestDefaults,\n ...(reqOverrides || {}),\n },\n ...(optionsOverrides || {}),\n payload,\n })\n\n if (hasUserOverride && userOverride == null) {\n req.user = null\n }\n\n const resolveLocale = async (): Promise<Pick<AdminContext, 'locale'>> => ({\n locale: await getRequestLocale({ req }),\n })\n const { locale } = cache?.getLocale\n ? await cache.getLocale(\n resolveLocale,\n payload,\n req.user?.collection,\n req.user?.id,\n req.query.locale,\n )\n : await resolveLocale()\n\n req.locale = locale?.code\n\n let userWithReadAccess = req.user\n\n if (!hasUserOverride && req.user) {\n try {\n const collectionSlug = req.user.collection ?? payload.config.admin.user\n const collection = payload.collections[collectionSlug]?.config\n\n if (!collection?.auth) {\n throw new Error('Authenticated user collection not found')\n }\n\n userWithReadAccess = await applyUserReadAccess({\n collection,\n depth: collection.auth.depth,\n overrideAccess: false,\n req,\n showHiddenFields: false,\n user: req.user,\n })\n } catch (error) {\n payload.logger.error({ err: error })\n req.user = null\n userWithReadAccess = null\n }\n }\n\n const permissions = await getAccessResults({ req })\n\n return {\n cookies,\n locale,\n permissions,\n req,\n user: userWithReadAccess,\n }\n }\n\n const result = cache\n ? await cache.getRequest(createContext, key!, overrides)\n : await createContext()\n\n return {\n ...result,\n req: {\n ...result.req,\n ...(result.req.context\n ? {\n context: { ...result.req.context },\n }\n : {}),\n },\n }\n}\n\nfunction getRequestDefaults({\n requestURL,\n}: {\n requestURL?: string\n}): Partial<Pick<PayloadRequest, 'query' | 'url'>> {\n if (!requestURL) {\n return {}\n }\n\n try {\n const url = new URL(requestURL)\n\n return {\n ...(url.search\n ? {\n query: qs.parse(url.search, {\n depth: 10,\n ignoreQueryPrefix: true,\n }) as PayloadRequest['query'],\n }\n : {}),\n url: requestURL,\n }\n } catch {\n return {}\n }\n}\n"],"names":["initI18n","qs","applyUserReadAccess","executeAuthStrategies","getAccessResults","getPayload","createPayloadRequest","getRequestLanguage","parseCookies","getRequestLocale","initAdminContext","cache","canSetHeaders","configPromise","importMap","key","overrides","requestURL","serverAdapter","Error","headers","getHeaders","cookies","createPartialContext","config","payload","cron","languageCode","i18n","context","language","responseHeaders","user","partialContext","getPartial","createContext","req","reqOverrides","optionsOverrides","hasOptionsUserOverride","Object","hasOwn","hasReqUserOverride","hasUserOverride","userOverride","requestDefaults","getRequestDefaults","host","get","undefined","server","resolveLocale","locale","getLocale","collection","id","query","code","userWithReadAccess","collectionSlug","admin","collections","auth","depth","overrideAccess","showHiddenFields","error","logger","err","permissions","result","getRequest","url","URL","search","parse","ignoreQueryPrefix"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/admin/initAdminContext.ts"],"sourcesContent":["import type { I18n, I18nClient } from '@payloadcms/translations'\n\nimport { initI18n } from '@payloadcms/translations'\nimport * as qs from 'qs-esm'\n\nimport type { ImportMap } from '../cli/commands/generateImportMap/generateImportMap.js'\nimport type { SanitizedConfig } from '../config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\nimport type { CreatePayloadRequestArgs } from '../utilities/createPayloadRequest.js'\nimport type { ServerAdapter } from './adapters/server.js'\nimport type { AdminContext } from './functions/index.js'\n\nimport { applyUserReadAccess } from '../auth/applyUserReadAccess.js'\nimport { executeAuthStrategies } from '../auth/executeAuthStrategies.js'\nimport { getAccessResults } from '../auth/getAccessResults.js'\nimport { getPayload } from '../index.js'\nimport { createPayloadRequest } from '../utilities/createPayloadRequest.js'\nimport { getRequestLanguage } from '../utilities/getRequestLanguage.js'\nimport { parseCookies } from '../utilities/parseCookies.js'\nimport { getRequestLocale } from './getRequestLocale.js'\n\nexport type PartialAdminContext = {\n i18n: I18nClient\n} & Pick<PayloadRequest, 'payload' | 'responseHeaders' | 'user'>\n\n/** Framework-provided request-scoped caching hooks used to deduplicate admin context creation. */\nexport type AdminContextCache = {\n /** Reuses locale preference resolution across admin contexts. */\n getLocale?: (\n resolveLocale: () => Promise<Pick<AdminContext, 'locale'>>,\n ...cacheArgs: unknown[]\n ) => Promise<Pick<AdminContext, 'locale'>>\n /** Reuses Payload, i18n, and authentication state within the current request. */\n getPartial: (\n createPartialContext: () => Promise<PartialAdminContext>,\n ) => Promise<PartialAdminContext>\n /** Reuses a complete admin context for the supplied key and cache arguments. */\n getRequest: (\n createContext: () => Promise<AdminContext>,\n key: string,\n ...cacheArgs: unknown[]\n ) => Promise<AdminContext>\n}\n\nexport type InitAdminContextArgs = {\n /**\n * Optional framework-owned request-scoped cache.\n * Framework adapters control its lifetime to prevent request state from leaking between requests.\n */\n cache?: AdminContextCache\n canSetHeaders?: boolean\n configPromise: Promise<SanitizedConfig> | SanitizedConfig\n importMap: ImportMap\n /** Identifies the complete admin context within `cache`; required when a cache is supplied. */\n key?: string\n overrides?: Omit<CreatePayloadRequestArgs, 'payload'>\n requestURL?: string\n serverAdapter: ServerAdapter\n}\n\n/**\n * Creates the request context used by framework adapters to render the admin panel.\n */\nexport async function initAdminContext({\n cache,\n canSetHeaders,\n configPromise,\n importMap,\n key,\n overrides,\n requestURL,\n serverAdapter,\n}: InitAdminContextArgs): Promise<AdminContext> {\n if (cache && !key) {\n throw new Error('initAdminContext requires a key when cache is provided')\n }\n\n const headers = await serverAdapter.getHeaders()\n const cookies = parseCookies(headers)\n\n const createPartialContext = async (): Promise<PartialAdminContext> => {\n const config = await configPromise\n const payload = await getPayload({ config, cron: true, importMap })\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'client',\n language: languageCode,\n })\n\n const { responseHeaders, user } = await executeAuthStrategies({\n canSetHeaders,\n headers,\n payload,\n })\n\n return {\n i18n,\n payload,\n responseHeaders,\n user,\n }\n }\n\n const partialContext = cache\n ? await cache.getPartial(createPartialContext)\n : await createPartialContext()\n\n const createContext = async (): Promise<AdminContext> => {\n const { i18n, payload, responseHeaders, user } = partialContext\n const { req: reqOverrides, ...optionsOverrides } = overrides || {}\n const hasOptionsUserOverride = Object.hasOwn(optionsOverrides, 'user')\n const hasReqUserOverride = Object.hasOwn(reqOverrides ?? {}, 'user')\n const hasUserOverride = hasOptionsUserOverride || hasReqUserOverride\n const userOverride = hasOptionsUserOverride ? optionsOverrides.user : reqOverrides?.user\n const requestDefaults = getRequestDefaults({ requestURL })\n\n const req = await createPayloadRequest({\n req: {\n headers,\n host: headers.get('host') ?? undefined,\n i18n: i18n as I18n,\n responseHeaders,\n server: serverAdapter,\n user,\n ...requestDefaults,\n ...(reqOverrides || {}),\n },\n ...(optionsOverrides || {}),\n payload,\n })\n\n if (hasUserOverride && userOverride == null) {\n req.user = null\n }\n\n const resolveLocale = async (): Promise<Pick<AdminContext, 'locale'>> => ({\n locale: await getRequestLocale({ req }),\n })\n const { locale } = cache?.getLocale\n ? await cache.getLocale(\n resolveLocale,\n payload,\n req.user?.collection,\n req.user?.id,\n req.query.locale,\n )\n : await resolveLocale()\n\n req.locale = locale?.code\n\n let userWithReadAccess = req.user\n\n if (!hasUserOverride && req.user) {\n try {\n const collectionSlug = req.user.collection ?? payload.config.admin.user\n const collection = payload.collections[collectionSlug]?.config\n\n if (!collection?.auth) {\n throw new Error('Authenticated user collection not found')\n }\n\n userWithReadAccess = await applyUserReadAccess({\n collection,\n depth: collection.auth.depth,\n overrideAccess: false,\n req,\n showHiddenFields: false,\n user: req.user,\n })\n } catch (error) {\n payload.logger.error({ err: error })\n req.user = null\n userWithReadAccess = null\n }\n }\n\n const permissions = await getAccessResults({ req })\n\n return {\n cookies,\n locale,\n permissions,\n req,\n user: userWithReadAccess,\n }\n }\n\n const result = cache\n ? await cache.getRequest(createContext, key!, overrides)\n : await createContext()\n\n return {\n ...result,\n req: {\n ...result.req,\n ...(result.req.context\n ? {\n context: { ...result.req.context },\n }\n : {}),\n },\n }\n}\n\nfunction getRequestDefaults({\n requestURL,\n}: {\n requestURL?: string\n}): Partial<Pick<PayloadRequest, 'query' | 'url'>> {\n if (!requestURL) {\n return {}\n }\n\n try {\n const url = new URL(requestURL)\n\n return {\n ...(url.search\n ? {\n query: qs.parse(url.search, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n }\n : {}),\n url: requestURL,\n }\n } catch {\n return {}\n }\n}\n"],"names":["initI18n","qs","applyUserReadAccess","executeAuthStrategies","getAccessResults","getPayload","createPayloadRequest","getRequestLanguage","parseCookies","getRequestLocale","initAdminContext","cache","canSetHeaders","configPromise","importMap","key","overrides","requestURL","serverAdapter","Error","headers","getHeaders","cookies","createPartialContext","config","payload","cron","languageCode","i18n","context","language","responseHeaders","user","partialContext","getPartial","createContext","req","reqOverrides","optionsOverrides","hasOptionsUserOverride","Object","hasOwn","hasReqUserOverride","hasUserOverride","userOverride","requestDefaults","getRequestDefaults","host","get","undefined","server","resolveLocale","locale","getLocale","collection","id","query","code","userWithReadAccess","collectionSlug","admin","collections","auth","depth","overrideAccess","showHiddenFields","error","logger","err","permissions","result","getRequest","url","URL","search","parse","ignoreQueryPrefix"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/getFieldsToSign.ts"],"sourcesContent":["import type { CollectionConfig } from '../collections/config/types.js'\nimport type { Field, TabAsField } from '../fields/config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\n\nimport { fieldAffectsData, tabHasName } from '../fields/config/types.js'\n\nconst reservedJWTFields = new Set(['collection', 'email', 'exp', 'iat', 'id', 'sid'])\n\ntype TraverseFieldsArgs = {\n data: Record<string, unknown>\n fields: (Field | TabAsField)[]\n result: Record<string, unknown>\n}\nconst traverseFields = ({\n data,\n // parent,\n fields,\n result,\n}: TraverseFieldsArgs) => {\n fields.forEach((field) => {\n switch (field.type) {\n case 'collapsible':\n case 'row': {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n break\n }\n case 'group': {\n if (fieldAffectsData(field)) {\n const groupData: Record<string, unknown> =\n (data[field.name] as Record<string, unknown>) ?? {}\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = groupData\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = groupData\n }\n const groupResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: groupData,\n fields: field.fields,\n result: groupResult,\n })\n break\n } else {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n\n break\n }\n }\n case 'tab': {\n if (tabHasName(field)) {\n const tabData: Record<string, unknown> =\n (data[field.name] as Record<string, unknown>) ?? {}\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = tabData\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = tabData\n }\n const tabResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: tabData,\n fields: field.fields,\n result: tabResult,\n })\n } else {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n }\n break\n }\n case 'tabs': {\n traverseFields({\n data,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n result,\n })\n break\n }\n default:\n if (fieldAffectsData(field)) {\n if (field.saveToJWT) {\n if (typeof field.saveToJWT === 'string') {\n result[field.saveToJWT] = data[field.name]\n delete result[field.name]\n } else {\n result[field.name] = data[field.name] as Record<string, unknown>\n }\n } else if (field.saveToJWT === false) {\n delete result[field.name]\n }\n }\n }\n })\n return result\n}\nexport const getFieldsToSign = (args: {\n collectionConfig: CollectionConfig\n email: string\n sid?: string\n user: PayloadRequest['user']\n}): Record<string, unknown> => {\n const { collectionConfig, email, sid, user } = args\n\n const fieldsToSign = Object.create(null) as Record<string, unknown>\n\n traverseFields({\n data: user!,\n fields: collectionConfig.fields,\n result: fieldsToSign,\n })\n\n for (const fieldName of reservedJWTFields) {\n delete fieldsToSign[fieldName]\n }\n\n fieldsToSign.id = user?.id\n fieldsToSign.collection = collectionConfig.slug\n fieldsToSign.email = email\n\n if (sid) {\n fieldsToSign.sid = sid\n }\n\n return fieldsToSign\n}\n"],"names":["fieldAffectsData","tabHasName","reservedJWTFields","Set","traverseFields","data","fields","result","forEach","field","type","groupData","name","targetResult","saveToJWT","groupResult","tabData","tabResult","tabs","map","tab","getFieldsToSign","args","collectionConfig","email","sid","user","fieldsToSign","Object","create","fieldName","id","collection","slug"],"mappings":"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"}
1
+ {"version":3,"sources":["../../src/auth/getFieldsToSign.ts"],"sourcesContent":["import type { CollectionConfig } from '../collections/config/types.js'\nimport type { Field, TabAsField } from '../fields/config/types.js'\nimport type { PayloadRequest } from '../types/index.js'\n\nimport { fieldAffectsData, tabHasName } from '../fields/config/types.js'\n\nconst reservedJWTFields = new Set(['collection', 'email', 'exp', 'iat', 'id', 'sid'])\n\ntype TraverseFieldsArgs = {\n data: Record<string, unknown>\n fields: (Field | TabAsField)[]\n result: Record<string, unknown>\n}\nconst traverseFields = ({\n data,\n // parent,\n fields,\n result,\n}: TraverseFieldsArgs) => {\n fields.forEach((field) => {\n switch (field.type) {\n case 'collapsible':\n case 'row': {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n break\n }\n case 'group': {\n if (fieldAffectsData(field)) {\n const groupData: Record<string, unknown> =\n (data[field.name] as Record<string, unknown>) ?? {}\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = groupData\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = groupData\n }\n const groupResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: groupData,\n fields: field.fields,\n result: groupResult,\n })\n break\n } else {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n\n break\n }\n }\n case 'tab': {\n if (tabHasName(field)) {\n const tabData: Record<string, unknown> =\n (data[field.name] as Record<string, unknown>) ?? {}\n let targetResult\n if (typeof field.saveToJWT === 'string') {\n targetResult = field.saveToJWT\n result[field.saveToJWT] = tabData\n } else if (field.saveToJWT) {\n targetResult = field.name\n result[field.name] = tabData\n }\n const tabResult = (targetResult ? result[targetResult] : result) as Record<\n string,\n unknown\n >\n traverseFields({\n data: tabData,\n fields: field.fields,\n result: tabResult,\n })\n } else {\n traverseFields({\n data,\n fields: field.fields,\n result,\n })\n }\n break\n }\n case 'tabs': {\n traverseFields({\n data,\n fields: field.tabs.map((tab) => ({ ...tab, type: 'tab' })),\n result,\n })\n break\n }\n default:\n if (fieldAffectsData(field)) {\n if (field.saveToJWT) {\n if (typeof field.saveToJWT === 'string') {\n result[field.saveToJWT] = data[field.name]\n delete result[field.name]\n } else {\n result[field.name] = data[field.name]\n }\n } else if (field.saveToJWT === false) {\n delete result[field.name]\n }\n }\n }\n })\n return result\n}\nexport const getFieldsToSign = (args: {\n collectionConfig: CollectionConfig\n email: string\n sid?: string\n user: PayloadRequest['user']\n}): Record<string, unknown> => {\n const { collectionConfig, email, sid, user } = args\n\n const fieldsToSign = Object.create(null) as Record<string, unknown>\n\n traverseFields({\n data: user!,\n fields: collectionConfig.fields,\n result: fieldsToSign,\n })\n\n for (const fieldName of reservedJWTFields) {\n delete fieldsToSign[fieldName]\n }\n\n fieldsToSign.id = user?.id\n fieldsToSign.collection = collectionConfig.slug\n fieldsToSign.email = email\n\n if (sid) {\n fieldsToSign.sid = sid\n }\n\n return fieldsToSign\n}\n"],"names":["fieldAffectsData","tabHasName","reservedJWTFields","Set","traverseFields","data","fields","result","forEach","field","type","groupData","name","targetResult","saveToJWT","groupResult","tabData","tabResult","tabs","map","tab","getFieldsToSign","args","collectionConfig","email","sid","user","fieldsToSign","Object","create","fieldName","id","collection","slug"],"mappings":"AAIA,SAASA,gBAAgB,EAAEC,UAAU,QAAQ,4BAA2B;AAExE,MAAMC,oBAAoB,IAAIC,IAAI;IAAC;IAAc;IAAS;IAAO;IAAO;IAAM;CAAM;AAOpF,MAAMC,iBAAiB,CAAC,EACtBC,IAAI,EACJ,UAAU;AACVC,MAAM,EACNC,MAAM,EACa;IACnBD,OAAOE,OAAO,CAAC,CAACC;QACd,OAAQA,MAAMC,IAAI;YAChB,KAAK;YACL,KAAK;gBAAO;oBACVN,eAAe;wBACbC;wBACAC,QAAQG,MAAMH,MAAM;wBACpBC;oBACF;oBACA;gBACF;YACA,KAAK;gBAAS;oBACZ,IAAIP,iBAAiBS,QAAQ;wBAC3B,MAAME,YACJ,AAACN,IAAI,CAACI,MAAMG,IAAI,CAAC,IAAgC,CAAC;wBACpD,IAAIC;wBACJ,IAAI,OAAOJ,MAAMK,SAAS,KAAK,UAAU;4BACvCD,eAAeJ,MAAMK,SAAS;4BAC9BP,MAAM,CAACE,MAAMK,SAAS,CAAC,GAAGH;wBAC5B,OAAO,IAAIF,MAAMK,SAAS,EAAE;4BAC1BD,eAAeJ,MAAMG,IAAI;4BACzBL,MAAM,CAACE,MAAMG,IAAI,CAAC,GAAGD;wBACvB;wBACA,MAAMI,cAAeF,eAAeN,MAAM,CAACM,aAAa,GAAGN;wBAI3DH,eAAe;4BACbC,MAAMM;4BACNL,QAAQG,MAAMH,MAAM;4BACpBC,QAAQQ;wBACV;wBACA;oBACF,OAAO;wBACLX,eAAe;4BACbC;4BACAC,QAAQG,MAAMH,MAAM;4BACpBC;wBACF;wBAEA;oBACF;gBACF;YACA,KAAK;gBAAO;oBACV,IAAIN,WAAWQ,QAAQ;wBACrB,MAAMO,UACJ,AAACX,IAAI,CAACI,MAAMG,IAAI,CAAC,IAAgC,CAAC;wBACpD,IAAIC;wBACJ,IAAI,OAAOJ,MAAMK,SAAS,KAAK,UAAU;4BACvCD,eAAeJ,MAAMK,SAAS;4BAC9BP,MAAM,CAACE,MAAMK,SAAS,CAAC,GAAGE;wBAC5B,OAAO,IAAIP,MAAMK,SAAS,EAAE;4BAC1BD,eAAeJ,MAAMG,IAAI;4BACzBL,MAAM,CAACE,MAAMG,IAAI,CAAC,GAAGI;wBACvB;wBACA,MAAMC,YAAaJ,eAAeN,MAAM,CAACM,aAAa,GAAGN;wBAIzDH,eAAe;4BACbC,MAAMW;4BACNV,QAAQG,MAAMH,MAAM;4BACpBC,QAAQU;wBACV;oBACF,OAAO;wBACLb,eAAe;4BACbC;4BACAC,QAAQG,MAAMH,MAAM;4BACpBC;wBACF;oBACF;oBACA;gBACF;YACA,KAAK;gBAAQ;oBACXH,eAAe;wBACbC;wBACAC,QAAQG,MAAMS,IAAI,CAACC,GAAG,CAAC,CAACC,MAAS,CAAA;gCAAE,GAAGA,GAAG;gCAAEV,MAAM;4BAAM,CAAA;wBACvDH;oBACF;oBACA;gBACF;YACA;gBACE,IAAIP,iBAAiBS,QAAQ;oBAC3B,IAAIA,MAAMK,SAAS,EAAE;wBACnB,IAAI,OAAOL,MAAMK,SAAS,KAAK,UAAU;4BACvCP,MAAM,CAACE,MAAMK,SAAS,CAAC,GAAGT,IAAI,CAACI,MAAMG,IAAI,CAAC;4BAC1C,OAAOL,MAAM,CAACE,MAAMG,IAAI,CAAC;wBAC3B,OAAO;4BACLL,MAAM,CAACE,MAAMG,IAAI,CAAC,GAAGP,IAAI,CAACI,MAAMG,IAAI,CAAC;wBACvC;oBACF,OAAO,IAAIH,MAAMK,SAAS,KAAK,OAAO;wBACpC,OAAOP,MAAM,CAACE,MAAMG,IAAI,CAAC;oBAC3B;gBACF;QACJ;IACF;IACA,OAAOL;AACT;AACA,OAAO,MAAMc,kBAAkB,CAACC;IAM9B,MAAM,EAAEC,gBAAgB,EAAEC,KAAK,EAAEC,GAAG,EAAEC,IAAI,EAAE,GAAGJ;IAE/C,MAAMK,eAAeC,OAAOC,MAAM,CAAC;IAEnCzB,eAAe;QACbC,MAAMqB;QACNpB,QAAQiB,iBAAiBjB,MAAM;QAC/BC,QAAQoB;IACV;IAEA,KAAK,MAAMG,aAAa5B,kBAAmB;QACzC,OAAOyB,YAAY,CAACG,UAAU;IAChC;IAEAH,aAAaI,EAAE,GAAGL,MAAMK;IACxBJ,aAAaK,UAAU,GAAGT,iBAAiBU,IAAI;IAC/CN,aAAaH,KAAK,GAAGA;IAErB,IAAIC,KAAK;QACPE,aAAaF,GAAG,GAAGA;IACrB;IAEA,OAAOE;AACT,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/loginWithCookie.ts"],"sourcesContent":["import type { Collection } from '../collections/config/types.js'\nimport type { AuthCollectionSlug } from '../index.js'\nimport type { PayloadRequest } from '../types/index.js'\nimport type { generateCookie } from './cookies.js'\nimport type { LoginResult } from './operations/login.js'\n\nimport { generatePayloadCookie } from './cookies.js'\nimport { loginOperation } from './operations/login.js'\n\ntype CookieObject = Extract<ReturnType<typeof generateCookie<true>>, { name: string }>\n\ntype LoginWithCookieArgs<TReturnCookieAsObject extends boolean> = {\n collection: Collection\n data: Parameters<typeof loginOperation>[0]['data']\n depth?: number\n overrideAccess?: boolean\n req: PayloadRequest\n /** Return the cookie as parts rather than a serialized header string. */\n returnCookieAsObject?: TReturnCookieAsObject\n}\n\n/**\n * Runs the login operation and builds the auth cookie from its token, then\n * applies `auth.removeTokenFromResponses` to the returned result.\n *\n * The order matters: the token has to be read before the flag strips it, or the\n * caller ends up returning a user with no way to establish a session. Shared by\n * the REST login handler and the framework adapters' `login` server function so\n * that ordering only exists in one place.\n */\nexport const loginWithCookie = async <\n TSlug extends AuthCollectionSlug,\n TReturnCookieAsObject extends boolean = false,\n>({\n collection,\n data,\n depth,\n overrideAccess,\n req,\n returnCookieAsObject,\n}: LoginWithCookieArgs<TReturnCookieAsObject>): Promise<{\n cookie: TReturnCookieAsObject extends true ? CookieObject : string\n result: LoginResult<TSlug>\n}> => {\n const result = await loginOperation({\n collection,\n data,\n depth,\n overrideAccess,\n req,\n })\n\n const cookie = generatePayloadCookie({\n collectionAuthConfig: collection.config.auth,\n cookiePrefix: req.payload.config.cookiePrefix,\n returnCookieAsObject: returnCookieAsObject ?? false,\n token: result.token!,\n }) as TReturnCookieAsObject extends true ? CookieObject : string\n\n if (collection.config.auth.removeTokenFromResponses) {\n delete result.token\n }\n\n return { cookie, result }\n}\n"],"names":["generatePayloadCookie","loginOperation","loginWithCookie","collection","data","depth","overrideAccess","req","returnCookieAsObject","result","cookie","collectionAuthConfig","config","auth","cookiePrefix","payload","token","removeTokenFromResponses"],"mappings":"AAMA,SAASA,qBAAqB,QAAQ,eAAc;AACpD,SAASC,cAAc,QAAQ,wBAAuB;AActD;;;;;;;;CAQC,GACD,OAAO,MAAMC,kBAAkB,OAG7B,EACAC,UAAU,EACVC,IAAI,EACJC,KAAK,EACLC,cAAc,EACdC,GAAG,EACHC,oBAAoB,EACuB;IAI3C,MAAMC,SAAS,MAAMR,eAAe;QAClCE;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,MAAMG,SAASV,sBAAsB;QACnCW,sBAAsBR,WAAWS,MAAM,CAACC,IAAI;QAC5CC,cAAcP,IAAIQ,OAAO,CAACH,MAAM,CAACE,YAAY;QAC7CN,sBAAsBA,wBAAwB;QAC9CQ,OAAOP,OAAOO,KAAK;IACrB;IAEA,IAAIb,WAAWS,MAAM,CAACC,IAAI,CAACI,wBAAwB,EAAE;QACnD,OAAOR,OAAOO,KAAK;IACrB;IAEA,OAAO;QAAEN;QAAQD;IAAO;AAC1B,EAAC"}
1
+ {"version":3,"sources":["../../src/auth/loginWithCookie.ts"],"sourcesContent":["import type { Collection } from '../collections/config/types.js'\nimport type { AuthCollectionSlug } from '../index.js'\nimport type { PayloadRequest } from '../types/index.js'\nimport type { generateCookie } from './cookies.js'\nimport type { LoginResult } from './operations/login.js'\n\nimport { generatePayloadCookie } from './cookies.js'\nimport { loginOperation } from './operations/login.js'\n\ntype CookieObject = Extract<ReturnType<typeof generateCookie<true>>, { name: string }>\n\ntype LoginWithCookieArgs<TReturnCookieAsObject extends boolean> = {\n collection: Collection\n data: Parameters<typeof loginOperation>[0]['data']\n depth?: number\n overrideAccess?: boolean\n req: PayloadRequest\n /** Return the cookie as parts rather than a serialized header string. */\n returnCookieAsObject?: TReturnCookieAsObject\n}\n\n/**\n * Runs the login operation and builds the auth cookie from its token, then\n * applies `auth.removeTokenFromResponses` to the returned result.\n *\n * The order matters: the token has to be read before the flag strips it, or the\n * caller ends up returning a user with no way to establish a session. Shared by\n * the REST login handler and the framework adapters' `login` server function so\n * that ordering only exists in one place.\n */\nexport const loginWithCookie = async <\n TSlug extends AuthCollectionSlug,\n TReturnCookieAsObject extends boolean = false,\n>({\n collection,\n data,\n depth,\n overrideAccess,\n req,\n returnCookieAsObject,\n}: LoginWithCookieArgs<TReturnCookieAsObject>): Promise<{\n cookie: TReturnCookieAsObject extends true ? CookieObject : string\n result: LoginResult<TSlug>\n}> => {\n const result = await loginOperation({\n collection,\n data,\n depth,\n overrideAccess,\n req,\n })\n\n const cookie = generatePayloadCookie({\n collectionAuthConfig: collection.config.auth,\n cookiePrefix: req.payload.config.cookiePrefix,\n returnCookieAsObject: returnCookieAsObject ?? false,\n token: result.token!,\n })\n\n if (collection.config.auth.removeTokenFromResponses) {\n delete result.token\n }\n\n return { cookie, result }\n}\n"],"names":["generatePayloadCookie","loginOperation","loginWithCookie","collection","data","depth","overrideAccess","req","returnCookieAsObject","result","cookie","collectionAuthConfig","config","auth","cookiePrefix","payload","token","removeTokenFromResponses"],"mappings":"AAMA,SAASA,qBAAqB,QAAQ,eAAc;AACpD,SAASC,cAAc,QAAQ,wBAAuB;AActD;;;;;;;;CAQC,GACD,OAAO,MAAMC,kBAAkB,OAG7B,EACAC,UAAU,EACVC,IAAI,EACJC,KAAK,EACLC,cAAc,EACdC,GAAG,EACHC,oBAAoB,EACuB;IAI3C,MAAMC,SAAS,MAAMR,eAAe;QAClCE;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,MAAMG,SAASV,sBAAsB;QACnCW,sBAAsBR,WAAWS,MAAM,CAACC,IAAI;QAC5CC,cAAcP,IAAIQ,OAAO,CAACH,MAAM,CAACE,YAAY;QAC7CN,sBAAsBA,wBAAwB;QAC9CQ,OAAOP,OAAOO,KAAK;IACrB;IAEA,IAAIb,WAAWS,MAAM,CAACC,IAAI,CAACI,wBAAwB,EAAE;QACnD,OAAOR,OAAOO,KAAK;IACrB;IAEA,OAAO;QAAEN;QAAQD;IAAO;AAC1B,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/auth/serverFunctions/cookies.ts"],"sourcesContent":["import type { CookieOptions } from '../../admin/adapters/cookies.js'\nimport type { ServerAdapter } from '../../admin/adapters/server.js'\nimport type { Auth } from '../types.js'\n\nimport { generateExpiredPayloadCookie, generatePayloadCookie } from '../cookies.js'\n\n/**\n * Object form returned by `generatePayloadCookie`/`generateExpiredPayloadCookie`\n * when `returnCookieAsObject` is `true`.\n */\nexport type GeneratedCookie = {\n domain?: string\n expires?: string\n httpOnly?: boolean\n maxAge?: number\n name: string\n path?: string\n sameSite?: 'Lax' | 'None' | 'Strict'\n secure?: boolean\n value: string | undefined\n}\n\n// `generateCookie` emits capitalized `SameSite` values (as they appear in the\n// header); `CookieOptions` takes the lowercase form.\nconst toCookieOptions = (cookie: GeneratedCookie): CookieOptions => ({\n domain: cookie.domain,\n expires: cookie.expires ? new Date(cookie.expires) : undefined,\n httpOnly: cookie.httpOnly,\n maxAge: cookie.maxAge,\n path: cookie.path,\n sameSite: cookie.sameSite?.toLowerCase() as CookieOptions['sameSite'],\n secure: cookie.secure,\n})\n\ntype AuthCookieArgs = {\n authConfig: Auth\n cookiePrefix: string\n serverAdapter: ServerAdapter\n}\n\n/** Writes an already-generated cookie through the framework's cookie API. */\nexport async function applyAuthCookie({\n cookie,\n serverAdapter,\n}: {\n cookie: GeneratedCookie\n serverAdapter: ServerAdapter\n}): Promise<void> {\n if (!cookie.value) {\n return\n }\n\n await serverAdapter.setCookie(cookie.name, cookie.value, toCookieOptions(cookie))\n}\n\n/** Writes the Payload auth cookie for `token` through the framework's cookie API. */\nexport async function setAuthCookie({\n authConfig,\n cookiePrefix,\n serverAdapter,\n token,\n}: { token: string } & AuthCookieArgs): Promise<void> {\n const cookie = generatePayloadCookie({\n collectionAuthConfig: authConfig,\n cookiePrefix,\n returnCookieAsObject: true,\n token,\n }) as GeneratedCookie\n\n await applyAuthCookie({ cookie, serverAdapter })\n}\n\n/**\n * Expires the Payload auth cookie. Written with the same `domain`/`path`/`secure`\n * attributes it was set with — a mismatched `domain` leaves the original cookie\n * in place.\n */\nexport async function clearAuthCookie({\n authConfig,\n cookiePrefix,\n serverAdapter,\n}: AuthCookieArgs): Promise<void> {\n const cookie = generateExpiredPayloadCookie({\n collectionAuthConfig: authConfig,\n cookiePrefix,\n returnCookieAsObject: true,\n }) as GeneratedCookie\n\n await serverAdapter.setCookie(cookie.name, '', toCookieOptions(cookie))\n}\n\n/** Reads the request's existing Payload auth cookie, if any. */\nexport async function getExistingAuthToken({\n cookiePrefix,\n serverAdapter,\n}: {\n cookiePrefix: string\n serverAdapter: ServerAdapter\n}): Promise<{ name: string; value: string } | undefined> {\n const store = await serverAdapter.getCookies()\n const allCookies = store.getAll?.()\n\n if (allCookies) {\n return allCookies.find((cookie) => cookie.name.startsWith(cookiePrefix))\n }\n\n return store.get(`${cookiePrefix}-token`) ?? undefined\n}\n"],"names":["generateExpiredPayloadCookie","generatePayloadCookie","toCookieOptions","cookie","domain","expires","Date","undefined","httpOnly","maxAge","path","sameSite","toLowerCase","secure","applyAuthCookie","serverAdapter","value","setCookie","name","setAuthCookie","authConfig","cookiePrefix","token","collectionAuthConfig","returnCookieAsObject","clearAuthCookie","getExistingAuthToken","store","getCookies","allCookies","getAll","find","startsWith","get"],"mappings":"AAIA,SAASA,4BAA4B,EAAEC,qBAAqB,QAAQ,gBAAe;AAkBnF,8EAA8E;AAC9E,qDAAqD;AACrD,MAAMC,kBAAkB,CAACC,SAA4C,CAAA;QACnEC,QAAQD,OAAOC,MAAM;QACrBC,SAASF,OAAOE,OAAO,GAAG,IAAIC,KAAKH,OAAOE,OAAO,IAAIE;QACrDC,UAAUL,OAAOK,QAAQ;QACzBC,QAAQN,OAAOM,MAAM;QACrBC,MAAMP,OAAOO,IAAI;QACjBC,UAAUR,OAAOQ,QAAQ,EAAEC;QAC3BC,QAAQV,OAAOU,MAAM;IACvB,CAAA;AAQA,2EAA2E,GAC3E,OAAO,eAAeC,gBAAgB,EACpCX,MAAM,EACNY,aAAa,EAId;IACC,IAAI,CAACZ,OAAOa,KAAK,EAAE;QACjB;IACF;IAEA,MAAMD,cAAcE,SAAS,CAACd,OAAOe,IAAI,EAAEf,OAAOa,KAAK,EAAEd,gBAAgBC;AAC3E;AAEA,mFAAmF,GACnF,OAAO,eAAegB,cAAc,EAClCC,UAAU,EACVC,YAAY,EACZN,aAAa,EACbO,KAAK,EAC8B;IACnC,MAAMnB,SAASF,sBAAsB;QACnCsB,sBAAsBH;QACtBC;QACAG,sBAAsB;QACtBF;IACF;IAEA,MAAMR,gBAAgB;QAAEX;QAAQY;IAAc;AAChD;AAEA;;;;CAIC,GACD,OAAO,eAAeU,gBAAgB,EACpCL,UAAU,EACVC,YAAY,EACZN,aAAa,EACE;IACf,MAAMZ,SAASH,6BAA6B;QAC1CuB,sBAAsBH;QACtBC;QACAG,sBAAsB;IACxB;IAEA,MAAMT,cAAcE,SAAS,CAACd,OAAOe,IAAI,EAAE,IAAIhB,gBAAgBC;AACjE;AAEA,8DAA8D,GAC9D,OAAO,eAAeuB,qBAAqB,EACzCL,YAAY,EACZN,aAAa,EAId;IACC,MAAMY,QAAQ,MAAMZ,cAAca,UAAU;IAC5C,MAAMC,aAAaF,MAAMG,MAAM;IAE/B,IAAID,YAAY;QACd,OAAOA,WAAWE,IAAI,CAAC,CAAC5B,SAAWA,OAAOe,IAAI,CAACc,UAAU,CAACX;IAC5D;IAEA,OAAOM,MAAMM,GAAG,CAAC,GAAGZ,aAAa,MAAM,CAAC,KAAKd;AAC/C"}
1
+ {"version":3,"sources":["../../../src/auth/serverFunctions/cookies.ts"],"sourcesContent":["import type { CookieOptions } from '../../admin/adapters/cookies.js'\nimport type { ServerAdapter } from '../../admin/adapters/server.js'\nimport type { Auth } from '../types.js'\n\nimport { generateExpiredPayloadCookie, generatePayloadCookie } from '../cookies.js'\n\n/**\n * Object form returned by `generatePayloadCookie`/`generateExpiredPayloadCookie`\n * when `returnCookieAsObject` is `true`.\n */\nexport type GeneratedCookie = {\n domain?: string\n expires?: string\n httpOnly?: boolean\n maxAge?: number\n name: string\n path?: string\n sameSite?: 'Lax' | 'None' | 'Strict'\n secure?: boolean\n value: string | undefined\n}\n\n// `generateCookie` emits capitalized `SameSite` values (as they appear in the\n// header); `CookieOptions` takes the lowercase form.\nconst toCookieOptions = (cookie: GeneratedCookie): CookieOptions => ({\n domain: cookie.domain,\n expires: cookie.expires ? new Date(cookie.expires) : undefined,\n httpOnly: cookie.httpOnly,\n maxAge: cookie.maxAge,\n path: cookie.path,\n sameSite: cookie.sameSite?.toLowerCase() as CookieOptions['sameSite'],\n secure: cookie.secure,\n})\n\ntype AuthCookieArgs = {\n authConfig: Auth\n cookiePrefix: string\n serverAdapter: ServerAdapter\n}\n\n/** Writes an already-generated cookie through the framework's cookie API. */\nexport async function applyAuthCookie({\n cookie,\n serverAdapter,\n}: {\n cookie: GeneratedCookie\n serverAdapter: ServerAdapter\n}): Promise<void> {\n if (!cookie.value) {\n return\n }\n\n await serverAdapter.setCookie(cookie.name, cookie.value, toCookieOptions(cookie))\n}\n\n/** Writes the Payload auth cookie for `token` through the framework's cookie API. */\nexport async function setAuthCookie({\n authConfig,\n cookiePrefix,\n serverAdapter,\n token,\n}: { token: string } & AuthCookieArgs): Promise<void> {\n const cookie = generatePayloadCookie({\n collectionAuthConfig: authConfig,\n cookiePrefix,\n returnCookieAsObject: true,\n token,\n })\n\n await applyAuthCookie({ cookie, serverAdapter })\n}\n\n/**\n * Expires the Payload auth cookie. Written with the same `domain`/`path`/`secure`\n * attributes it was set with — a mismatched `domain` leaves the original cookie\n * in place.\n */\nexport async function clearAuthCookie({\n authConfig,\n cookiePrefix,\n serverAdapter,\n}: AuthCookieArgs): Promise<void> {\n const cookie = generateExpiredPayloadCookie({\n collectionAuthConfig: authConfig,\n cookiePrefix,\n returnCookieAsObject: true,\n })\n\n await serverAdapter.setCookie(cookie.name, '', toCookieOptions(cookie))\n}\n\n/** Reads the request's existing Payload auth cookie, if any. */\nexport async function getExistingAuthToken({\n cookiePrefix,\n serverAdapter,\n}: {\n cookiePrefix: string\n serverAdapter: ServerAdapter\n}): Promise<{ name: string; value: string } | undefined> {\n const store = await serverAdapter.getCookies()\n const allCookies = store.getAll?.()\n\n if (allCookies) {\n return allCookies.find((cookie) => cookie.name.startsWith(cookiePrefix))\n }\n\n return store.get(`${cookiePrefix}-token`) ?? undefined\n}\n"],"names":["generateExpiredPayloadCookie","generatePayloadCookie","toCookieOptions","cookie","domain","expires","Date","undefined","httpOnly","maxAge","path","sameSite","toLowerCase","secure","applyAuthCookie","serverAdapter","value","setCookie","name","setAuthCookie","authConfig","cookiePrefix","token","collectionAuthConfig","returnCookieAsObject","clearAuthCookie","getExistingAuthToken","store","getCookies","allCookies","getAll","find","startsWith","get"],"mappings":"AAIA,SAASA,4BAA4B,EAAEC,qBAAqB,QAAQ,gBAAe;AAkBnF,8EAA8E;AAC9E,qDAAqD;AACrD,MAAMC,kBAAkB,CAACC,SAA4C,CAAA;QACnEC,QAAQD,OAAOC,MAAM;QACrBC,SAASF,OAAOE,OAAO,GAAG,IAAIC,KAAKH,OAAOE,OAAO,IAAIE;QACrDC,UAAUL,OAAOK,QAAQ;QACzBC,QAAQN,OAAOM,MAAM;QACrBC,MAAMP,OAAOO,IAAI;QACjBC,UAAUR,OAAOQ,QAAQ,EAAEC;QAC3BC,QAAQV,OAAOU,MAAM;IACvB,CAAA;AAQA,2EAA2E,GAC3E,OAAO,eAAeC,gBAAgB,EACpCX,MAAM,EACNY,aAAa,EAId;IACC,IAAI,CAACZ,OAAOa,KAAK,EAAE;QACjB;IACF;IAEA,MAAMD,cAAcE,SAAS,CAACd,OAAOe,IAAI,EAAEf,OAAOa,KAAK,EAAEd,gBAAgBC;AAC3E;AAEA,mFAAmF,GACnF,OAAO,eAAegB,cAAc,EAClCC,UAAU,EACVC,YAAY,EACZN,aAAa,EACbO,KAAK,EAC8B;IACnC,MAAMnB,SAASF,sBAAsB;QACnCsB,sBAAsBH;QACtBC;QACAG,sBAAsB;QACtBF;IACF;IAEA,MAAMR,gBAAgB;QAAEX;QAAQY;IAAc;AAChD;AAEA;;;;CAIC,GACD,OAAO,eAAeU,gBAAgB,EACpCL,UAAU,EACVC,YAAY,EACZN,aAAa,EACE;IACf,MAAMZ,SAASH,6BAA6B;QAC1CuB,sBAAsBH;QACtBC;QACAG,sBAAsB;IACxB;IAEA,MAAMT,cAAcE,SAAS,CAACd,OAAOe,IAAI,EAAE,IAAIhB,gBAAgBC;AACjE;AAEA,8DAA8D,GAC9D,OAAO,eAAeuB,qBAAqB,EACzCL,YAAY,EACZN,aAAa,EAId;IACC,MAAMY,QAAQ,MAAMZ,cAAca,UAAU;IAC5C,MAAMC,aAAaF,MAAMG,MAAM;IAE/B,IAAID,YAAY;QACd,OAAOA,WAAWE,IAAI,CAAC,CAAC5B,SAAWA,OAAOe,IAAI,CAACc,UAAU,CAACX;IAC5D;IAEA,OAAOM,MAAMM,GAAG,CAAC,GAAGZ,aAAa,MAAM,CAAC,KAAKd;AAC/C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/auth/serverFunctions/login.ts"],"sourcesContent":["import type { ServerAdapter } from '../../admin/adapters/server.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { AuthCollectionSlug } from '../../index.js'\nimport type { MaybePromise } from '../../types/index.js'\nimport type { LoginResult } from '../operations/login.js'\n\nimport { getPayload } from '../../index.js'\nimport { createPayloadRequest } from '../../utilities/createPayloadRequest.js'\nimport { loginWithCookie } from '../loginWithCookie.js'\nimport { applyAuthCookie } from './cookies.js'\n\nexport type LoginArgs<TSlug extends AuthCollectionSlug> = {\n collection: TSlug\n config: MaybePromise<SanitizedConfig>\n password: string\n serverAdapter: ServerAdapter\n} & ({ email: string; username?: never } | { email?: never; username: string })\n\n/**\n * `LoginArgs` as the adapters expose it — they bind `serverAdapter` themselves.\n * Distributes over the email/username union so the either-or survives; a plain\n * `Omit` collapses the union and accepts both keys at once.\n */\nexport type LoginArgsWithoutServerAdapter<TSlug extends AuthCollectionSlug> =\n LoginArgs<TSlug> extends infer TArgs\n ? TArgs extends unknown\n ? Omit<TArgs, 'serverAdapter'>\n : never\n : never\n\n/**\n * Logs a user in and writes the auth cookie through the supplied `serverAdapter`,\n * so the function is framework-agnostic; each adapter binds its own.\n */\nexport async function login<TSlug extends AuthCollectionSlug>({\n collection,\n config,\n email,\n password,\n serverAdapter,\n username,\n}: LoginArgs<TSlug>): Promise<LoginResult<TSlug>> {\n const payload = await getPayload({ config, cron: true })\n\n const authConfig = payload.collections[collection]?.config.auth\n\n if (!authConfig) {\n throw new Error(`No auth config found for collection: ${collection}`)\n }\n\n const loginWithUsername = authConfig.loginWithUsername ?? false\n\n if (loginWithUsername) {\n if (loginWithUsername.allowEmailLogin) {\n if (!email && !username) {\n throw new Error('Email or username is required.')\n }\n } else {\n if (!username) {\n throw new Error('Username is required.')\n }\n }\n } else {\n if (!email) {\n throw new Error('Email is required.')\n }\n }\n\n let loginData\n\n if (loginWithUsername) {\n loginData = username ? { password, username } : { email, password }\n } else {\n loginData = { email, password }\n }\n\n const collectionConfig = payload.collections[collection]!\n\n const { cookie, result } = await loginWithCookie({\n collection: collectionConfig,\n data: loginData as Parameters<typeof loginWithCookie>[0]['data'],\n overrideAccess: true,\n req: await createPayloadRequest({ payload }),\n returnCookieAsObject: true,\n })\n\n await applyAuthCookie({ cookie, serverAdapter })\n\n return result as LoginResult<TSlug>\n}\n"],"names":["getPayload","createPayloadRequest","loginWithCookie","applyAuthCookie","login","collection","config","email","password","serverAdapter","username","payload","cron","authConfig","collections","auth","Error","loginWithUsername","allowEmailLogin","loginData","collectionConfig","cookie","result","data","overrideAccess","req","returnCookieAsObject"],"mappings":"AAMA,SAASA,UAAU,QAAQ,iBAAgB;AAC3C,SAASC,oBAAoB,QAAQ,0CAAyC;AAC9E,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,eAAe,QAAQ,eAAc;AAqB9C;;;CAGC,GACD,OAAO,eAAeC,MAAwC,EAC5DC,UAAU,EACVC,MAAM,EACNC,KAAK,EACLC,QAAQ,EACRC,aAAa,EACbC,QAAQ,EACS;IACjB,MAAMC,UAAU,MAAMX,WAAW;QAAEM;QAAQM,MAAM;IAAK;IAEtD,MAAMC,aAAaF,QAAQG,WAAW,CAACT,WAAW,EAAEC,OAAOS;IAE3D,IAAI,CAACF,YAAY;QACf,MAAM,IAAIG,MAAM,CAAC,qCAAqC,EAAEX,YAAY;IACtE;IAEA,MAAMY,oBAAoBJ,WAAWI,iBAAiB,IAAI;IAE1D,IAAIA,mBAAmB;QACrB,IAAIA,kBAAkBC,eAAe,EAAE;YACrC,IAAI,CAACX,SAAS,CAACG,UAAU;gBACvB,MAAM,IAAIM,MAAM;YAClB;QACF,OAAO;YACL,IAAI,CAACN,UAAU;gBACb,MAAM,IAAIM,MAAM;YAClB;QACF;IACF,OAAO;QACL,IAAI,CAACT,OAAO;YACV,MAAM,IAAIS,MAAM;QAClB;IACF;IAEA,IAAIG;IAEJ,IAAIF,mBAAmB;QACrBE,YAAYT,WAAW;YAAEF;YAAUE;QAAS,IAAI;YAAEH;YAAOC;QAAS;IACpE,OAAO;QACLW,YAAY;YAAEZ;YAAOC;QAAS;IAChC;IAEA,MAAMY,mBAAmBT,QAAQG,WAAW,CAACT,WAAW;IAExD,MAAM,EAAEgB,MAAM,EAAEC,MAAM,EAAE,GAAG,MAAMpB,gBAAgB;QAC/CG,YAAYe;QACZG,MAAMJ;QACNK,gBAAgB;QAChBC,KAAK,MAAMxB,qBAAqB;YAAEU;QAAQ;QAC1Ce,sBAAsB;IACxB;IAEA,MAAMvB,gBAAgB;QAAEkB;QAAQZ;IAAc;IAE9C,OAAOa;AACT"}
1
+ {"version":3,"sources":["../../../src/auth/serverFunctions/login.ts"],"sourcesContent":["import type { ServerAdapter } from '../../admin/adapters/server.js'\nimport type { SanitizedConfig } from '../../config/types.js'\nimport type { AuthCollectionSlug } from '../../index.js'\nimport type { MaybePromise } from '../../types/index.js'\nimport type { LoginResult } from '../operations/login.js'\n\nimport { getPayload } from '../../index.js'\nimport { createPayloadRequest } from '../../utilities/createPayloadRequest.js'\nimport { loginWithCookie } from '../loginWithCookie.js'\nimport { applyAuthCookie } from './cookies.js'\n\nexport type LoginArgs<TSlug extends AuthCollectionSlug> = {\n collection: TSlug\n config: MaybePromise<SanitizedConfig>\n password: string\n serverAdapter: ServerAdapter\n} & ({ email: string; username?: never } | { email?: never; username: string })\n\n/**\n * `LoginArgs` as the adapters expose it — they bind `serverAdapter` themselves.\n * Distributes over the email/username union so the either-or survives; a plain\n * `Omit` collapses the union and accepts both keys at once.\n */\nexport type LoginArgsWithoutServerAdapter<TSlug extends AuthCollectionSlug> =\n LoginArgs<TSlug> extends infer TArgs\n ? TArgs extends unknown\n ? Omit<TArgs, 'serverAdapter'>\n : never\n : never\n\n/**\n * Logs a user in and writes the auth cookie through the supplied `serverAdapter`,\n * so the function is framework-agnostic; each adapter binds its own.\n */\nexport async function login<TSlug extends AuthCollectionSlug>({\n collection,\n config,\n email,\n password,\n serverAdapter,\n username,\n}: LoginArgs<TSlug>): Promise<LoginResult<TSlug>> {\n const payload = await getPayload({ config, cron: true })\n\n const authConfig = payload.collections[collection]?.config.auth\n\n if (!authConfig) {\n throw new Error(`No auth config found for collection: ${collection}`)\n }\n\n const loginWithUsername = authConfig.loginWithUsername ?? false\n\n if (loginWithUsername) {\n if (loginWithUsername.allowEmailLogin) {\n if (!email && !username) {\n throw new Error('Email or username is required.')\n }\n } else {\n if (!username) {\n throw new Error('Username is required.')\n }\n }\n } else {\n if (!email) {\n throw new Error('Email is required.')\n }\n }\n\n let loginData\n\n if (loginWithUsername) {\n loginData = username ? { password, username } : { email, password }\n } else {\n loginData = { email, password }\n }\n\n const collectionConfig = payload.collections[collection]!\n\n const { cookie, result } = await loginWithCookie({\n collection: collectionConfig,\n data: loginData as Parameters<typeof loginWithCookie>[0]['data'],\n overrideAccess: true,\n req: await createPayloadRequest({ payload }),\n returnCookieAsObject: true,\n })\n\n await applyAuthCookie({ cookie, serverAdapter })\n\n return result\n}\n"],"names":["getPayload","createPayloadRequest","loginWithCookie","applyAuthCookie","login","collection","config","email","password","serverAdapter","username","payload","cron","authConfig","collections","auth","Error","loginWithUsername","allowEmailLogin","loginData","collectionConfig","cookie","result","data","overrideAccess","req","returnCookieAsObject"],"mappings":"AAMA,SAASA,UAAU,QAAQ,iBAAgB;AAC3C,SAASC,oBAAoB,QAAQ,0CAAyC;AAC9E,SAASC,eAAe,QAAQ,wBAAuB;AACvD,SAASC,eAAe,QAAQ,eAAc;AAqB9C;;;CAGC,GACD,OAAO,eAAeC,MAAwC,EAC5DC,UAAU,EACVC,MAAM,EACNC,KAAK,EACLC,QAAQ,EACRC,aAAa,EACbC,QAAQ,EACS;IACjB,MAAMC,UAAU,MAAMX,WAAW;QAAEM;QAAQM,MAAM;IAAK;IAEtD,MAAMC,aAAaF,QAAQG,WAAW,CAACT,WAAW,EAAEC,OAAOS;IAE3D,IAAI,CAACF,YAAY;QACf,MAAM,IAAIG,MAAM,CAAC,qCAAqC,EAAEX,YAAY;IACtE;IAEA,MAAMY,oBAAoBJ,WAAWI,iBAAiB,IAAI;IAE1D,IAAIA,mBAAmB;QACrB,IAAIA,kBAAkBC,eAAe,EAAE;YACrC,IAAI,CAACX,SAAS,CAACG,UAAU;gBACvB,MAAM,IAAIM,MAAM;YAClB;QACF,OAAO;YACL,IAAI,CAACN,UAAU;gBACb,MAAM,IAAIM,MAAM;YAClB;QACF;IACF,OAAO;QACL,IAAI,CAACT,OAAO;YACV,MAAM,IAAIS,MAAM;QAClB;IACF;IAEA,IAAIG;IAEJ,IAAIF,mBAAmB;QACrBE,YAAYT,WAAW;YAAEF;YAAUE;QAAS,IAAI;YAAEH;YAAOC;QAAS;IACpE,OAAO;QACLW,YAAY;YAAEZ;YAAOC;QAAS;IAChC;IAEA,MAAMY,mBAAmBT,QAAQG,WAAW,CAACT,WAAW;IAExD,MAAM,EAAEgB,MAAM,EAAEC,MAAM,EAAE,GAAG,MAAMpB,gBAAgB;QAC/CG,YAAYe;QACZG,MAAMJ;QACNK,gBAAgB;QAChBC,KAAK,MAAMxB,qBAAqB;YAAEU;QAAQ;QAC1Ce,sBAAsB;IACxB;IAEA,MAAMvB,gBAAgB;QAAEkB;QAAQZ;IAAc;IAE9C,OAAOa;AACT"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC5E,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAE9D;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,UAAU,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,UAAU,CAAA;IAClB,MAAM,EAAE,iBAAiB,CAAA;IACzB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,UAAU,CAAA;IAClB,kEAAkE;IAClE,QAAQ,EAAE,UAAU,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,yBAAyB,GACjC;IACE,MAAM,EAAE,0BAA0B,CAAA;CACnC,GACD,IAAI,CAAA;AAER,MAAM,MAAM,iBAAiB,GAAG;IAC9B,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,0BAA0B,GAClC;IACE,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC/C,GACD,IAAI,CAAA;AAER,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,kEAAkE;IAClE,QAAQ,CAAC,EAAE,UAAU,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,yBAAyB,GACjC;IACE,MAAM,CAAC,EAAE,0BAA0B,CAAA;IACnC,MAAM,EAAE,IAAI,CAAA;IACZ,MAAM,CAAC,EAAE,0BAA0B,CAAA;IACnC,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,EAAE,IAAI,CAAA;IACZ,QAAQ,EAAE,IAAI,CAAA;CACf,GACD,IAAI,CAAA;AAER,MAAM,MAAM,0BAA0B,GAClC;IACE,CAAC,SAAS,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC/C,GACD,IAAI,CAAA;AAER,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,EAAE,iBAAiB,CAAA;IACzB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,YAAY,CAAC,EAAE,UAAU,CAAA;IAEzB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,UAAU,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,6BAA6B,GAAG;IAC1C,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,MAAM,EAAE,0BAA0B,CAAA;IAClC,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,YAAY,CAAC,EAAE,IAAI,CAAA;IAEnB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,QAAQ,CAAC,EAAE,IAAI,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,iBAAiB,CAAA;IACzB,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,UAAU,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,MAAM,EAAE,0BAA0B,CAAA;IAClC,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,YAAY,CAAC,EAAE,IAAI,CAAA;IACnB,MAAM,CAAC,EAAE,IAAI,CAAA;IACb,QAAQ,CAAC,EAAE,IAAI,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,GAAG,gBAAgB,CAAA;AAEzE,MAAM,MAAM,4BAA4B,GAAG,6BAA6B,GAAG,yBAAyB,CAAA;AAEpG,MAAM,MAAM,WAAW,GAAG;IACxB,cAAc,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAA;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAA;CAC/C,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE;QACZ,CAAC,cAAc,EAAE,MAAM,GAAG,6BAA6B,CAAA;KACxD,CAAA;IACD,OAAO,CAAC,EAAE;QACR,CAAC,UAAU,EAAE,MAAM,GAAG,yBAAyB,CAAA;KAChD,CAAA;CACF,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED;;;;GAIG;AACH;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,iBAAiB,GAAG,IAAI,CAAA;AAExD,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,CAAA;IAChC,SAAS,EAAE,IAAI,GAAG,MAAM,CAAA;IACxB,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AACD,KAAK,uBAAuB,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IACjD,GAAG,EAAE,cAAc,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAA;CACZ,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE9B,KAAK,0BAA0B,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE;IACpD,GAAG,EAAE,cAAc,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,KAAK,CAAA;CACZ,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE9B,KAAK,+BAA+B,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE;IAC1D,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,KAAK,CAAA;CACb,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE9B,KAAK,kCAAkC,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE;IAC7D,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,KAAK,CAAA;CACb,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAA;AAE9B,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,iEAAiE;IACjE,GAAG,CAAC,EAAE,cAAc,CAAA;IACpB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAAA;CAC/B,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,CACjC,IAAI,EAAE,wBAAwB,KAC3B,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAA;AACrD,MAAM,MAAM,YAAY,GAAG;IACzB,YAAY,EAAE,oBAAoB,CAAA;IAClC,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,wBAAwB,GAChC;IACE,eAAe,CAAC,EAAE,KAAK,CAAA;IACvB,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB,eAAe,CAAC,EAAE,IAAI,CAAA;CACvB,GACD;IACE,eAAe,CAAC,EAAE,IAAI,CAAA;IACtB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,CAAA;AAEL,KAAK,WAAW,GAAG;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,CAAA;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;;;;OAOG;IACH,oBAAoB,CAAC,EACjB;QACE;;;WAGG;QACH,YAAY,CAAC,EAAE,IAAI,CAAA;QACnB;;WAEG;QACH,gBAAgB,CAAC,EAAE,IAAI,CAAA;KACxB,GACD,OAAO,CAAA;IACX;;;OAGG;IACH,cAAc,CAAC,EAAE;QACf;;;WAGG;QACH,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,iBAAiB,CAAC,EAAE,+BAA+B,CAAA;QACnD,oBAAoB,CAAC,EAAE,kCAAkC,CAAA;QACzD;;;;WAIG;QACH,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAC5B,CAAA;IACD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,GAAG,wBAAwB,CAAA;IACtD;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB;;OAEG;IACH,wBAAwB,CAAC,EAAE,IAAI,CAAA;IAC/B;;;OAGG;IACH,UAAU,CAAC,EAAE,YAAY,EAAE,CAAA;IAC3B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB;;;;OAIG;IACH,SAAS,CAAC,EACN;QACE;;;WAGG;QACH,MAAM,CAAC,EAAE,OAAO,CAAA;KACjB,GACD,OAAO,CAAA;IAEX;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IAErB;;;OAGG;IACH,MAAM,CAAC,EACH;QACE,iBAAiB,CAAC,EAAE,uBAAuB,CAAA;QAC3C,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;KAClD,GACD,OAAO,CAAA;CACZ;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,iBAAiB,CAAC,EAAE,uBAAuB,CAAA;IAC3C,oBAAoB,CAAC,EAAE,0BAA0B,CAAA;CAClD,CAAA;AAED,MAAM,WAAW,IACf,SAAQ,IAAI,CACR,gBAAgB,EACd,SAAS,GACT,gBAAgB,GAChB,UAAU,GACV,mBAAmB,GACnB,kBAAkB,GAClB,YAAY,GACZ,iBAAiB,GACjB,aAAa,GACb,QAAQ,CACX,EACD,QAAQ,CACN,IAAI,CACF,gBAAgB,EACd,gBAAgB,GAChB,UAAU,GACV,kBAAkB,GAClB,YAAY,GACZ,iBAAiB,GACjB,aAAa,GACb,QAAQ,CACX,CACF;IACH,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAA;IACzF,iBAAiB,EAAE,KAAK,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAA;CAC9D;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,KAAK,GAAG,MAAM,IAAI,KAAK,CAE7E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/auth/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/auth/types.ts"],"sourcesContent":["import type { CollectionSlug, GlobalSlug, Payload, User } from '../index.js'\nimport type { PayloadRequest, Where } from '../types/index.js'\n\n/**\n * A permission object that can be used to determine if a user has access to a specific operation.\n */\nexport type Permission = {\n permission: boolean\n where?: Where\n}\n\nexport type FieldsPermissions = {\n [fieldName: string]: FieldPermissions\n}\n\nexport type BlockPermissions = {\n create: Permission\n fields: FieldsPermissions\n read: Permission\n update: Permission\n /** Permission to validate candidate block data without saving. */\n validate: Permission\n}\n\nexport type SanitizedBlockPermissions =\n | {\n fields: SanitizedFieldsPermissions\n }\n | true\n\nexport type BlocksPermissions = {\n [blockSlug: string]: BlockPermissions\n}\n\nexport type SanitizedBlocksPermissions =\n | {\n [blockSlug: string]: SanitizedBlockPermissions\n }\n | true\n\nexport type FieldPermissions = {\n blocks?: BlocksPermissions\n create?: Permission\n fields?: FieldsPermissions\n read?: Permission\n update?: Permission\n /** Permission to validate candidate field data without saving. */\n validate?: Permission\n}\n\nexport type SanitizedFieldPermissions =\n | {\n blocks?: SanitizedBlocksPermissions\n create: true\n fields?: SanitizedFieldsPermissions\n read: true\n update: true\n validate: true\n }\n | true\n\nexport type SanitizedFieldsPermissions =\n | {\n [fieldName: string]: SanitizedFieldPermissions\n }\n | true\n\nexport type CollectionPermission = {\n create?: Permission\n delete?: Permission\n fields: FieldsPermissions\n read?: Permission\n readVersions?: Permission\n // Auth-enabled Collections only\n unlock?: Permission\n update?: Permission\n /** Permission to validate collection candidate data without saving. */\n validate?: Permission\n}\n\nexport type SanitizedCollectionPermission = {\n create?: true\n delete?: true\n fields: SanitizedFieldsPermissions\n read?: true\n readVersions?: true\n // Auth-enabled Collections only\n unlock?: true\n update?: true\n validate?: true\n}\n\nexport type GlobalPermission = {\n fields: FieldsPermissions\n read?: Permission\n readVersions?: Permission\n update?: Permission\n /** Permission to validate global candidate data without saving. */\n validate?: Permission\n}\n\nexport type SanitizedGlobalPermission = {\n fields: SanitizedFieldsPermissions\n read?: true\n readVersions?: true\n update?: true\n validate?: true\n}\n\nexport type DocumentPermissions = CollectionPermission | GlobalPermission\n\nexport type SanitizedDocumentPermissions = SanitizedCollectionPermission | SanitizedGlobalPermission\n\nexport type Permissions = {\n canAccessAdmin: boolean\n collections?: Record<CollectionSlug, CollectionPermission>\n globals?: Record<GlobalSlug, GlobalPermission>\n}\n\nexport type SanitizedPermissions = {\n canAccessAdmin?: boolean\n collections?: {\n [collectionSlug: string]: SanitizedCollectionPermission\n }\n globals?: {\n [globalSlug: string]: SanitizedGlobalPermission\n }\n}\n\n/**\n * Fields injected onto a user at authentication time. They are never stored in the database and\n * never present on a plain document read (e.g. `payload.findByID`) - only on the authenticated\n * user (`req.user`, login/auth/me results, auth strategies).\n */\nexport type AuthRuntimeFields = {\n /**\n * The session ID of the current request. May be present on request-authenticated users when\n * sessions are enabled.\n */\n _sid?: string\n /**\n * The name of the auth strategy that authenticated the request (e.g. `local-jwt`).\n */\n _strategy?: string\n}\n\n/**\n * Note: AuthenticatedUser still carries the write-only `password` from `User` (always `undefined` at runtime).\n * Stripping it cleanly isn't possible, because auth operations build the authenticated user\n * from a read `User` doc, so a `never`-typed `password` would break those assignments\n */\n/**\n * The signed-in user: the read user plus the runtime auth markers (`_strategy`, `_sid`).\n * Server authentication APIs may retain complete fields, while response boundaries apply read access.\n */\nexport type AuthenticatedUser = AuthRuntimeFields & User\n\nexport type UserSession = {\n createdAt?: Date | null | string\n expiresAt: Date | string\n id: string\n}\ntype GenerateVerifyEmailHTML<TUser = any> = (args: {\n req: PayloadRequest\n token: string\n user: TUser\n}) => Promise<string> | string\n\ntype GenerateVerifyEmailSubject<TUser = any> = (args: {\n req: PayloadRequest\n token: string\n user: TUser\n}) => Promise<string> | string\n\ntype GenerateForgotPasswordEmailHTML<TUser = any> = (args?: {\n req?: PayloadRequest\n token?: string\n user?: TUser\n}) => Promise<string> | string\n\ntype GenerateForgotPasswordEmailSubject<TUser = any> = (args?: {\n req?: PayloadRequest\n token?: string\n user?: TUser\n}) => Promise<string> | string\n\nexport type AuthStrategyFunctionArgs = {\n /**\n * Specifies whether or not response headers can be set from this strategy.\n */\n canSetHeaders?: boolean\n headers: Request['headers']\n isGraphQL?: boolean\n payload: Payload\n /** The request that initiated authentication, when available. */\n req?: PayloadRequest\n /**\n * The AuthStrategy name property from the payload config.\n */\n strategyName?: string\n}\n\nexport type AuthStrategyResult = {\n responseHeaders?: Headers\n user: AuthenticatedUser | null\n}\n\nexport type AuthStrategyFunction = (\n args: AuthStrategyFunctionArgs,\n) => AuthStrategyResult | Promise<AuthStrategyResult>\nexport type AuthStrategy = {\n authenticate: AuthStrategyFunction\n name: string\n}\n\nexport type LoginWithUsernameOptions =\n | {\n allowEmailLogin?: false\n requireEmail?: boolean\n // If `allowEmailLogin` is false, `requireUsername` must be true (default: true)\n requireUsername?: true\n }\n | {\n allowEmailLogin?: true\n requireEmail?: boolean\n requireUsername?: boolean\n }\n\ntype AuthCookies = {\n domain?: string\n sameSite?: 'Lax' | 'None' | 'Strict' | boolean\n secure?: boolean\n}\n\nexport interface IncomingAuthType {\n /**\n * Set cookie options, including secure, sameSite, and domain. For advanced users.\n */\n cookies?: AuthCookies\n /**\n * How many levels deep a user document should be populated when creating the JWT and binding the user to the req. Defaults to 0 and should only be modified if absolutely necessary, as this will affect performance.\n * @default 0\n */\n depth?: number\n /**\n * Controls whether Payload's built-in local auth strategy is disabled. Set to `true` to disable\n * local authentication or `false` to keep it enabled.\n *\n * Pass an object to disable local authentication while configuring how its fields are retained.\n * Only disable local authentication if you have replaced Payload's auth mechanisms with your own.\n * @default false\n */\n disableLocalStrategy?:\n | {\n /**\n * Include auth fields on the collection even though the local strategy is disabled.\n * Useful when you do not want the database or types to vary depending on the auth configuration.\n */\n enableFields?: true\n /**\n * When auth fields are retained, make the password field optional.\n */\n optionalPassword?: true\n }\n | boolean\n /**\n * Customize the way that the forgotPassword operation functions.\n * @link https://payloadcms.com/docs/authentication/email#forgot-password\n */\n forgotPassword?: {\n /**\n * The number of milliseconds that the forgot password token should be valid for.\n * @default 3600000 // 1 hour\n */\n expiration?: number\n generateEmailHTML?: GenerateForgotPasswordEmailHTML\n generateEmailSubject?: GenerateForgotPasswordEmailSubject\n /**\n * The minimum number of milliseconds between password reset emails for the same user.\n * @default 15000\n * Set to 0 to disable.\n */\n minRequestInterval?: number\n }\n /**\n * Set the time (in milliseconds) that a user should be locked out if they fail authentication more times than maxLoginAttempts allows for.\n */\n lockTime?: number\n /**\n * Ability to allow users to login with username/password.\n *\n * @link https://payloadcms.com/docs/authentication/overview#login-with-username\n */\n loginWithUsername?: boolean | LoginWithUsernameOptions\n /**\n * Only allow a user to attempt logging in X amount of times. Automatically locks out a user from authenticating if this limit is passed. Set to 0 to disable.\n */\n maxLoginAttempts?: number\n /***\n * Set to true if you want to remove the token from the returned authentication API responses such as login or refresh.\n */\n removeTokenFromResponses?: true\n /**\n * Advanced - an array of custom authentification strategies to extend this collection's authentication with.\n * @link https://payloadcms.com/docs/authentication/custom-strategies\n */\n strategies?: AuthStrategy[]\n /**\n * Controls how many seconds the token will be valid for. Default is 2 hours.\n * @default 7200\n * @link https://payloadcms.com/docs/authentication/overview#config-options\n */\n tokenExpiration?: number\n /**\n * Payload Authentication provides for API keys to be set on each user within an Authentication-enabled Collection.\n * @default false\n * @link https://payloadcms.com/docs/authentication/api-keys\n */\n useAPIKey?:\n | {\n /**\n * Allows administrators to reveal stored API keys from the Admin Panel.\n * @default false\n */\n reveal?: boolean\n }\n | boolean\n\n /**\n * Use sessions for authentication. Enabled by default.\n * @default true\n */\n useSessions?: boolean\n\n /**\n * Set to true or pass an object with verification options to require users to verify by email before they are allowed to log into your app.\n * @link https://payloadcms.com/docs/authentication/email#email-verification\n */\n verify?:\n | {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n }\n | boolean\n}\n\nexport type VerifyConfig = {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n}\n\nexport interface Auth\n extends Omit<\n IncomingAuthType,\n | 'cookies'\n | 'forgotPassword'\n | 'lockTime'\n | 'loginWithUsername'\n | 'maxLoginAttempts'\n | 'strategies'\n | 'tokenExpiration'\n | 'useSessions'\n | 'verify'\n >,\n Required<\n Pick<\n IncomingAuthType,\n | 'forgotPassword'\n | 'lockTime'\n | 'maxLoginAttempts'\n | 'strategies'\n | 'tokenExpiration'\n | 'useSessions'\n | 'verify'\n >\n > {\n cookies: Pick<AuthCookies, 'domain'> & Required<Pick<AuthCookies, 'sameSite' | 'secure'>>\n loginWithUsername: false | Required<LoginWithUsernameOptions>\n}\n\nexport function hasWhereAccessResult(result: boolean | Where): result is Where {\n return result && typeof result === 'object'\n}\n"],"names":["hasWhereAccessResult","result"],"mappings":"AA4XA,OAAO,SAASA,qBAAqBC,MAAuB;IAC1D,OAAOA,UAAU,OAAOA,WAAW;AACrC"}
1
+ {"version":3,"sources":["../../src/auth/types.ts"],"sourcesContent":["import type { CollectionSlug, GlobalSlug, Payload, User } from '../index.js'\nimport type { PayloadRequest, Where } from '../types/index.js'\n\n/**\n * A permission object that can be used to determine if a user has access to a specific operation.\n */\nexport type Permission = {\n permission: boolean\n where?: Where\n}\n\nexport type FieldsPermissions = {\n [fieldName: string]: FieldPermissions\n}\n\nexport type BlockPermissions = {\n create: Permission\n fields: FieldsPermissions\n read: Permission\n update: Permission\n /** Permission to validate candidate block data without saving. */\n validate: Permission\n}\n\nexport type SanitizedBlockPermissions =\n | {\n fields: SanitizedFieldsPermissions\n }\n | true\n\nexport type BlocksPermissions = {\n [blockSlug: string]: BlockPermissions\n}\n\nexport type SanitizedBlocksPermissions =\n | {\n [blockSlug: string]: SanitizedBlockPermissions\n }\n | true\n\nexport type FieldPermissions = {\n blocks?: BlocksPermissions\n create?: Permission\n fields?: FieldsPermissions\n read?: Permission\n update?: Permission\n /** Permission to validate candidate field data without saving. */\n validate?: Permission\n}\n\nexport type SanitizedFieldPermissions =\n | {\n blocks?: SanitizedBlocksPermissions\n create: true\n fields?: SanitizedFieldsPermissions\n read: true\n update: true\n validate: true\n }\n | true\n\nexport type SanitizedFieldsPermissions =\n | {\n [fieldName: string]: SanitizedFieldPermissions\n }\n | true\n\nexport type CollectionPermission = {\n create?: Permission\n delete?: Permission\n fields: FieldsPermissions\n read?: Permission\n readVersions?: Permission\n // Auth-enabled Collections only\n unlock?: Permission\n update?: Permission\n /** Permission to validate collection candidate data without saving. */\n validate?: Permission\n}\n\nexport type SanitizedCollectionPermission = {\n create?: true\n delete?: true\n fields: SanitizedFieldsPermissions\n read?: true\n readVersions?: true\n // Auth-enabled Collections only\n unlock?: true\n update?: true\n validate?: true\n}\n\nexport type GlobalPermission = {\n fields: FieldsPermissions\n read?: Permission\n readVersions?: Permission\n update?: Permission\n /** Permission to validate global candidate data without saving. */\n validate?: Permission\n}\n\nexport type SanitizedGlobalPermission = {\n fields: SanitizedFieldsPermissions\n read?: true\n readVersions?: true\n update?: true\n validate?: true\n}\n\nexport type DocumentPermissions = CollectionPermission | GlobalPermission\n\nexport type SanitizedDocumentPermissions = SanitizedCollectionPermission | SanitizedGlobalPermission\n\nexport type Permissions = {\n canAccessAdmin: boolean\n collections?: Record<CollectionSlug, CollectionPermission>\n globals?: Record<GlobalSlug, GlobalPermission>\n}\n\nexport type SanitizedPermissions = {\n canAccessAdmin?: boolean\n collections?: {\n [collectionSlug: string]: SanitizedCollectionPermission\n }\n globals?: {\n [globalSlug: string]: SanitizedGlobalPermission\n }\n}\n\n/**\n * Fields injected onto a user at authentication time. They are never stored in the database and\n * never present on a plain document read (e.g. `payload.findByID`) - only on the authenticated\n * user (`req.user`, login/auth/me results, auth strategies).\n */\nexport type AuthRuntimeFields = {\n /**\n * The session ID of the current request. May be present on request-authenticated users when\n * sessions are enabled.\n */\n _sid?: string\n /**\n * The name of the auth strategy that authenticated the request (e.g. `local-jwt`).\n */\n _strategy?: string\n}\n\n/**\n * Note: AuthenticatedUser still carries the write-only `password` from `User` (always `undefined` at runtime).\n * Stripping it cleanly isn't possible, because auth operations build the authenticated user\n * from a read `User` doc, so a `never`-typed `password` would break those assignments\n */\n/**\n * The signed-in user: the read user plus the runtime auth markers (`_strategy`, `_sid`).\n * Server authentication APIs may retain complete fields, while response boundaries apply read access.\n */\nexport type AuthenticatedUser = AuthRuntimeFields & User\n\nexport type UserSession = {\n createdAt?: Date | null | string\n expiresAt: Date | string\n id: string\n}\ntype GenerateVerifyEmailHTML<TUser = any> = (args: {\n req: PayloadRequest\n token: string\n user: TUser\n}) => Promise<string> | string\n\ntype GenerateVerifyEmailSubject<TUser = any> = (args: {\n req: PayloadRequest\n token: string\n user: TUser\n}) => Promise<string> | string\n\ntype GenerateForgotPasswordEmailHTML<TUser = any> = (args?: {\n req?: PayloadRequest\n token?: string\n user?: TUser\n}) => Promise<string> | string\n\ntype GenerateForgotPasswordEmailSubject<TUser = any> = (args?: {\n req?: PayloadRequest\n token?: string\n user?: TUser\n}) => Promise<string> | string\n\nexport type AuthStrategyFunctionArgs = {\n /**\n * Specifies whether or not response headers can be set from this strategy.\n */\n canSetHeaders?: boolean\n headers: Request['headers']\n isGraphQL?: boolean\n payload: Payload\n /** The request that initiated authentication, when available. */\n req?: PayloadRequest\n /**\n * The AuthStrategy name property from the payload config.\n */\n strategyName?: string\n}\n\nexport type AuthStrategyResult = {\n responseHeaders?: Headers\n user: AuthenticatedUser | null\n}\n\nexport type AuthStrategyFunction = (\n args: AuthStrategyFunctionArgs,\n) => AuthStrategyResult | Promise<AuthStrategyResult>\nexport type AuthStrategy = {\n authenticate: AuthStrategyFunction\n name: string\n}\n\nexport type LoginWithUsernameOptions =\n | {\n allowEmailLogin?: false\n requireEmail?: boolean\n // If `allowEmailLogin` is false, `requireUsername` must be true (default: true)\n requireUsername?: true\n }\n | {\n allowEmailLogin?: true\n requireEmail?: boolean\n requireUsername?: boolean\n }\n\ntype AuthCookies = {\n domain?: string\n sameSite?: 'Lax' | 'None' | 'Strict' | boolean\n secure?: boolean\n}\n\nexport interface IncomingAuthType {\n /**\n * Set cookie options, including secure, sameSite, and domain. For advanced users.\n */\n cookies?: AuthCookies\n /**\n * How many levels deep a user document should be populated when creating the JWT and binding the user to the req. Defaults to 0 and should only be modified if absolutely necessary, as this will affect performance.\n * @default 0\n */\n depth?: number\n /**\n * Controls whether Payload's built-in local auth strategy is disabled. Set to `true` to disable\n * local authentication or `false` to keep it enabled.\n *\n * Pass an object to disable local authentication while configuring how its fields are retained.\n * Only disable local authentication if you have replaced Payload's auth mechanisms with your own.\n * @default false\n */\n disableLocalStrategy?:\n | {\n /**\n * Include auth fields on the collection even though the local strategy is disabled.\n * Useful when you do not want the database or types to vary depending on the auth configuration.\n */\n enableFields?: true\n /**\n * When auth fields are retained, make the password field optional.\n */\n optionalPassword?: true\n }\n | boolean\n /**\n * Customize the way that the forgotPassword operation functions.\n * @link https://payloadcms.com/docs/authentication/email#forgot-password\n */\n forgotPassword?: {\n /**\n * The number of milliseconds that the forgot password token should be valid for.\n * @default 3600000 // 1 hour\n */\n expiration?: number\n generateEmailHTML?: GenerateForgotPasswordEmailHTML\n generateEmailSubject?: GenerateForgotPasswordEmailSubject\n /**\n * The minimum number of milliseconds between password reset emails for the same user.\n * @default 15000\n * Set to 0 to disable.\n */\n minRequestInterval?: number\n }\n /**\n * Set the time (in milliseconds) that a user should be locked out if they fail authentication more times than maxLoginAttempts allows for.\n */\n lockTime?: number\n /**\n * Ability to allow users to login with username/password.\n *\n * @link https://payloadcms.com/docs/authentication/overview#login-with-username\n */\n loginWithUsername?: boolean | LoginWithUsernameOptions\n /**\n * Only allow a user to attempt logging in X amount of times. Automatically locks out a user from authenticating if this limit is passed. Set to 0 to disable.\n */\n maxLoginAttempts?: number\n /***\n * Set to true if you want to remove the token from the returned authentication API responses such as login or refresh.\n */\n removeTokenFromResponses?: true\n /**\n * Advanced - an array of custom authentification strategies to extend this collection's authentication with.\n * @link https://payloadcms.com/docs/authentication/custom-strategies\n */\n strategies?: AuthStrategy[]\n /**\n * Controls how many seconds the token will be valid for. Default is 2 hours.\n * @default 7200\n * @link https://payloadcms.com/docs/authentication/overview#config-options\n */\n tokenExpiration?: number\n /**\n * Payload Authentication provides for API keys to be set on each user within an Authentication-enabled Collection.\n * @default false\n * @link https://payloadcms.com/docs/authentication/api-keys\n */\n useAPIKey?:\n | {\n /**\n * Allows administrators to reveal stored API keys from the Admin Panel.\n * @default false\n */\n reveal?: boolean\n }\n | boolean\n\n /**\n * Use sessions for authentication. Enabled by default.\n * @default true\n */\n useSessions?: boolean\n\n /**\n * Set to true or pass an object with verification options to require users to verify by email before they are allowed to log into your app.\n * @link https://payloadcms.com/docs/authentication/email#email-verification\n */\n verify?:\n | {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n }\n | boolean\n}\n\nexport type VerifyConfig = {\n generateEmailHTML?: GenerateVerifyEmailHTML\n generateEmailSubject?: GenerateVerifyEmailSubject\n}\n\nexport interface Auth\n extends\n Omit<\n IncomingAuthType,\n | 'cookies'\n | 'forgotPassword'\n | 'lockTime'\n | 'loginWithUsername'\n | 'maxLoginAttempts'\n | 'strategies'\n | 'tokenExpiration'\n | 'useSessions'\n | 'verify'\n >,\n Required<\n Pick<\n IncomingAuthType,\n | 'forgotPassword'\n | 'lockTime'\n | 'maxLoginAttempts'\n | 'strategies'\n | 'tokenExpiration'\n | 'useSessions'\n | 'verify'\n >\n > {\n cookies: Pick<AuthCookies, 'domain'> & Required<Pick<AuthCookies, 'sameSite' | 'secure'>>\n loginWithUsername: false | Required<LoginWithUsernameOptions>\n}\n\nexport function hasWhereAccessResult(result: boolean | Where): result is Where {\n return result && typeof result === 'object'\n}\n"],"names":["hasWhereAccessResult","result"],"mappings":"AA6XA,OAAO,SAASA,qBAAqBC,MAAuB;IAC1D,OAAOA,UAAU,OAAOA,WAAW;AACrC"}
@@ -18,7 +18,7 @@ export declare const getGlobalValidationResult: ({ slug, error, req, }: {
18
18
  errors: import("../../../index.js").ValidationFieldError[];
19
19
  schema?: import("../../../index.js").EntityInputSchema | undefined;
20
20
  } | undefined;
21
- export declare const getCollectionSchema: ({ slug, req, }: {
21
+ export declare const getCollectionSchema: ({ slug, req }: {
22
22
  req: PayloadRequest;
23
23
  slug: CollectionSlug;
24
24
  }) => import("../../../index.js").EntityInputSchema | null;
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/data/utilities.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,OAAO,EACP,cAAc,EACd,YAAY,EACZ,UAAU,EACX,MAAM,mBAAmB,CAAA;AAc1B,OAAO,EACL,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,4DAA4D,CAAA;AAEnE,eAAO,MAAM,6BAA6B,0BAIvC;IACD,KAAK,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,cAAc,CAAA;CACrB;;;;aAQA,CAAA;AAED,eAAO,MAAM,yBAAyB,0BAInC;IACD,KAAK,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,UAAU,CAAA;CACjB;;;;aAQA,CAAA;AAED,eAAO,MAAM,mBAAmB,mBAG7B;IACD,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,cAAc,CAAA;CACrB,yDAA4D,CAAA;AAE7D,eAAO,MAAM,cAAc,YAAa;IACtC,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;IACC,KAAK;IACL,cAAc;IACd,MAAM;IACN,cAAc;IACd,QAAQ;;;IACR,MAAM;IACN,gBAAgB;CAChB,CAAA;AAEF,eAAO,MAAM,qBAAqB,mCAI/B;IACD,UAAU,EAAE,cAAc,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACgE,CAAA;AAE1F,eAAO,MAAM,4BAA4B,mCAItC;IACD,UAAU,EAAE,cAAc,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAC4D,CAAA;AAEtF,eAAO,MAAM,iBAAiB,6BAI3B;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,UAAU,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACsD,CAAA;AAEhF,eAAO,MAAM,wBAAwB,6BAIlC;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,UAAU,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACkD,CAAA;AAE5E,eAAO,MAAM,SAAS,UAAW,OAAO,KAAG,IAI1C,CAAA"}
1
+ {"version":3,"file":"utilities.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/data/utilities.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,OAAO,EACP,cAAc,EACd,YAAY,EACZ,UAAU,EACX,MAAM,mBAAmB,CAAA;AAc1B,OAAO,EACL,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,4DAA4D,CAAA;AAEnE,eAAO,MAAM,6BAA6B,0BAIvC;IACD,KAAK,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,cAAc,CAAA;CACrB;;;;aAQA,CAAA;AAED,eAAO,MAAM,yBAAyB,0BAInC;IACD,KAAK,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,UAAU,CAAA;CACjB;;;;aAQA,CAAA;AAED,eAAO,MAAM,mBAAmB,kBAAmB;IAAE,GAAG,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,cAAc,CAAA;CAAE,yDACvC,CAAA;AAEzD,eAAO,MAAM,cAAc,YAAa;IACtC,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,YAAY,CAAA;IACvB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;IACC,KAAK;IACL,cAAc;IACd,MAAM;IACN,cAAc;IACd,QAAQ;;;IACR,MAAM;IACN,gBAAgB;CAChB,CAAA;AAEF,eAAO,MAAM,qBAAqB,mCAI/B;IACD,UAAU,EAAE,cAAc,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACgE,CAAA;AAE1F,eAAO,MAAM,4BAA4B,mCAItC;IACD,UAAU,EAAE,cAAc,CAAA;IAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAC4D,CAAA;AAEtF,eAAO,MAAM,iBAAiB,6BAI3B;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,UAAU,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACsD,CAAA;AAEhF,eAAO,MAAM,wBAAwB,6BAIlC;IACD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,UAAU,CAAA;CACjB,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACkD,CAAA;AAE5E,eAAO,MAAM,SAAS,UAAW,OAAO,KAAG,IAI1C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/cli/commands/data/utilities.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport type {\n CollectionSlug,\n GlobalSlug,\n Payload,\n PayloadRequest,\n PopulateType,\n SelectType,\n} from '../../../index.js'\n\nimport { ValidationError } from '../../../errors/ValidationError.js'\nimport {\n getCollectionInputSchema,\n getGlobalInputSchema,\n} from '../../../utilities/entityInputSchema/getEntityInputSchema.js'\nimport {\n getCollectionVirtualFieldNames,\n getGlobalVirtualFieldNames,\n stripVirtualFields,\n} from '../../../utilities/getVirtualFieldNames.js'\nimport { transformPointDataToPayload } from '../../../utilities/transformPointDataToPayload.js'\n\nexport {\n validateCollectionData,\n validateGlobalData,\n} from '../../../utilities/entityInputSchema/validateEntityData.js'\n\nexport const getCollectionValidationResult = ({\n slug,\n error,\n req,\n}: {\n error: unknown\n req: PayloadRequest\n slug: CollectionSlug\n}) => {\n if (!(error instanceof ValidationError)) {\n return undefined\n }\n\n const schema = getCollectionInputSchema({ collectionSlug: slug, req })\n\n return { slug, errors: error.data.errors, ...(schema ? { schema } : {}) }\n}\n\nexport const getGlobalValidationResult = ({\n slug,\n error,\n req,\n}: {\n error: unknown\n req: PayloadRequest\n slug: GlobalSlug\n}) => {\n if (!(error instanceof ValidationError)) {\n return undefined\n }\n\n const schema = getGlobalInputSchema({ globalSlug: slug, req })\n\n return { slug, errors: error.data.errors, ...(schema ? { schema } : {}) }\n}\n\nexport const getCollectionSchema = ({\n slug,\n req,\n}: {\n req: PayloadRequest\n slug: CollectionSlug\n}) => getCollectionInputSchema({ collectionSlug: slug, req })\n\nexport const getReadOptions = (options: {\n depth: number\n fallbackLocale?: false | string\n locale?: string\n overrideAccess: boolean\n populate?: PopulateType\n select?: SelectType\n showHiddenFields?: boolean\n}) => ({\n depth: options.depth,\n fallbackLocale: options.fallbackLocale,\n locale: options.locale,\n overrideAccess: options.overrideAccess,\n populate: options.populate,\n select: options.select,\n showHiddenFields: options.showHiddenFields,\n})\n\nexport const prepareCollectionData = ({\n collection,\n data,\n payload,\n}: {\n collection: CollectionSlug\n data: Record<string, unknown>\n payload: Payload\n}): Record<string, unknown> =>\n transformPointDataToPayload(stripCollectionVirtualFields({ collection, data, payload }))\n\nexport const stripCollectionVirtualFields = ({\n collection,\n data,\n payload,\n}: {\n collection: CollectionSlug\n data: Record<string, unknown>\n payload: Payload\n}): Record<string, unknown> =>\n stripVirtualFields(data, getCollectionVirtualFieldNames(payload.config, collection))\n\nexport const prepareGlobalData = ({\n slug,\n data,\n payload,\n}: {\n data: Record<string, unknown>\n payload: Payload\n slug: GlobalSlug\n}): Record<string, unknown> =>\n transformPointDataToPayload(stripGlobalVirtualFields({ slug, data, payload }))\n\nexport const stripGlobalVirtualFields = ({\n slug,\n data,\n payload,\n}: {\n data: Record<string, unknown>\n payload: Payload\n slug: GlobalSlug\n}): Record<string, unknown> =>\n stripVirtualFields(data, getGlobalVirtualFieldNames(payload.config, slug))\n\nexport const printJSON = (value: unknown): void => {\n console.log(\n JSON.stringify(value, (_key, item) => (typeof item === 'bigint' ? item.toString() : item), 2),\n )\n}\n"],"names":["ValidationError","getCollectionInputSchema","getGlobalInputSchema","getCollectionVirtualFieldNames","getGlobalVirtualFieldNames","stripVirtualFields","transformPointDataToPayload","validateCollectionData","validateGlobalData","getCollectionValidationResult","slug","error","req","undefined","schema","collectionSlug","errors","data","getGlobalValidationResult","globalSlug","getCollectionSchema","getReadOptions","options","depth","fallbackLocale","locale","overrideAccess","populate","select","showHiddenFields","prepareCollectionData","collection","payload","stripCollectionVirtualFields","config","prepareGlobalData","stripGlobalVirtualFields","printJSON","value","console","log","JSON","stringify","_key","item","toString"],"mappings":"AAAA,6BAA6B,GAU7B,SAASA,eAAe,QAAQ,qCAAoC;AACpE,SACEC,wBAAwB,EACxBC,oBAAoB,QACf,+DAA8D;AACrE,SACEC,8BAA8B,EAC9BC,0BAA0B,EAC1BC,kBAAkB,QACb,6CAA4C;AACnD,SAASC,2BAA2B,QAAQ,oDAAmD;AAE/F,SACEC,sBAAsB,EACtBC,kBAAkB,QACb,6DAA4D;AAEnE,OAAO,MAAMC,gCAAgC,CAAC,EAC5CC,IAAI,EACJC,KAAK,EACLC,GAAG,EAKJ;IACC,IAAI,CAAED,CAAAA,iBAAiBX,eAAc,GAAI;QACvC,OAAOa;IACT;IAEA,MAAMC,SAASb,yBAAyB;QAAEc,gBAAgBL;QAAME;IAAI;IAEpE,OAAO;QAAEF;QAAMM,QAAQL,MAAMM,IAAI,CAACD,MAAM;QAAE,GAAIF,SAAS;YAAEA;QAAO,IAAI,CAAC,CAAC;IAAE;AAC1E,EAAC;AAED,OAAO,MAAMI,4BAA4B,CAAC,EACxCR,IAAI,EACJC,KAAK,EACLC,GAAG,EAKJ;IACC,IAAI,CAAED,CAAAA,iBAAiBX,eAAc,GAAI;QACvC,OAAOa;IACT;IAEA,MAAMC,SAASZ,qBAAqB;QAAEiB,YAAYT;QAAME;IAAI;IAE5D,OAAO;QAAEF;QAAMM,QAAQL,MAAMM,IAAI,CAACD,MAAM;QAAE,GAAIF,SAAS;YAAEA;QAAO,IAAI,CAAC,CAAC;IAAE;AAC1E,EAAC;AAED,OAAO,MAAMM,sBAAsB,CAAC,EAClCV,IAAI,EACJE,GAAG,EAIJ,GAAKX,yBAAyB;QAAEc,gBAAgBL;QAAME;IAAI,GAAE;AAE7D,OAAO,MAAMS,iBAAiB,CAACC,UAQxB,CAAA;QACLC,OAAOD,QAAQC,KAAK;QACpBC,gBAAgBF,QAAQE,cAAc;QACtCC,QAAQH,QAAQG,MAAM;QACtBC,gBAAgBJ,QAAQI,cAAc;QACtCC,UAAUL,QAAQK,QAAQ;QAC1BC,QAAQN,QAAQM,MAAM;QACtBC,kBAAkBP,QAAQO,gBAAgB;IAC5C,CAAA,EAAE;AAEF,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,UAAU,EACVd,IAAI,EACJe,OAAO,EAKR,GACC1B,4BAA4B2B,6BAA6B;QAAEF;QAAYd;QAAMe;IAAQ,IAAG;AAE1F,OAAO,MAAMC,+BAA+B,CAAC,EAC3CF,UAAU,EACVd,IAAI,EACJe,OAAO,EAKR,GACC3B,mBAAmBY,MAAMd,+BAA+B6B,QAAQE,MAAM,EAAEH,aAAY;AAEtF,OAAO,MAAMI,oBAAoB,CAAC,EAChCzB,IAAI,EACJO,IAAI,EACJe,OAAO,EAKR,GACC1B,4BAA4B8B,yBAAyB;QAAE1B;QAAMO;QAAMe;IAAQ,IAAG;AAEhF,OAAO,MAAMI,2BAA2B,CAAC,EACvC1B,IAAI,EACJO,IAAI,EACJe,OAAO,EAKR,GACC3B,mBAAmBY,MAAMb,2BAA2B4B,QAAQE,MAAM,EAAExB,OAAM;AAE5E,OAAO,MAAM2B,YAAY,CAACC;IACxBC,QAAQC,GAAG,CACTC,KAAKC,SAAS,CAACJ,OAAO,CAACK,MAAMC,OAAU,OAAOA,SAAS,WAAWA,KAAKC,QAAQ,KAAKD,MAAO;AAE/F,EAAC"}
1
+ {"version":3,"sources":["../../../../src/cli/commands/data/utilities.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport type {\n CollectionSlug,\n GlobalSlug,\n Payload,\n PayloadRequest,\n PopulateType,\n SelectType,\n} from '../../../index.js'\n\nimport { ValidationError } from '../../../errors/ValidationError.js'\nimport {\n getCollectionInputSchema,\n getGlobalInputSchema,\n} from '../../../utilities/entityInputSchema/getEntityInputSchema.js'\nimport {\n getCollectionVirtualFieldNames,\n getGlobalVirtualFieldNames,\n stripVirtualFields,\n} from '../../../utilities/getVirtualFieldNames.js'\nimport { transformPointDataToPayload } from '../../../utilities/transformPointDataToPayload.js'\n\nexport {\n validateCollectionData,\n validateGlobalData,\n} from '../../../utilities/entityInputSchema/validateEntityData.js'\n\nexport const getCollectionValidationResult = ({\n slug,\n error,\n req,\n}: {\n error: unknown\n req: PayloadRequest\n slug: CollectionSlug\n}) => {\n if (!(error instanceof ValidationError)) {\n return undefined\n }\n\n const schema = getCollectionInputSchema({ collectionSlug: slug, req })\n\n return { slug, errors: error.data.errors, ...(schema ? { schema } : {}) }\n}\n\nexport const getGlobalValidationResult = ({\n slug,\n error,\n req,\n}: {\n error: unknown\n req: PayloadRequest\n slug: GlobalSlug\n}) => {\n if (!(error instanceof ValidationError)) {\n return undefined\n }\n\n const schema = getGlobalInputSchema({ globalSlug: slug, req })\n\n return { slug, errors: error.data.errors, ...(schema ? { schema } : {}) }\n}\n\nexport const getCollectionSchema = ({ slug, req }: { req: PayloadRequest; slug: CollectionSlug }) =>\n getCollectionInputSchema({ collectionSlug: slug, req })\n\nexport const getReadOptions = (options: {\n depth: number\n fallbackLocale?: false | string\n locale?: string\n overrideAccess: boolean\n populate?: PopulateType\n select?: SelectType\n showHiddenFields?: boolean\n}) => ({\n depth: options.depth,\n fallbackLocale: options.fallbackLocale,\n locale: options.locale,\n overrideAccess: options.overrideAccess,\n populate: options.populate,\n select: options.select,\n showHiddenFields: options.showHiddenFields,\n})\n\nexport const prepareCollectionData = ({\n collection,\n data,\n payload,\n}: {\n collection: CollectionSlug\n data: Record<string, unknown>\n payload: Payload\n}): Record<string, unknown> =>\n transformPointDataToPayload(stripCollectionVirtualFields({ collection, data, payload }))\n\nexport const stripCollectionVirtualFields = ({\n collection,\n data,\n payload,\n}: {\n collection: CollectionSlug\n data: Record<string, unknown>\n payload: Payload\n}): Record<string, unknown> =>\n stripVirtualFields(data, getCollectionVirtualFieldNames(payload.config, collection))\n\nexport const prepareGlobalData = ({\n slug,\n data,\n payload,\n}: {\n data: Record<string, unknown>\n payload: Payload\n slug: GlobalSlug\n}): Record<string, unknown> =>\n transformPointDataToPayload(stripGlobalVirtualFields({ slug, data, payload }))\n\nexport const stripGlobalVirtualFields = ({\n slug,\n data,\n payload,\n}: {\n data: Record<string, unknown>\n payload: Payload\n slug: GlobalSlug\n}): Record<string, unknown> =>\n stripVirtualFields(data, getGlobalVirtualFieldNames(payload.config, slug))\n\nexport const printJSON = (value: unknown): void => {\n console.log(\n JSON.stringify(value, (_key, item) => (typeof item === 'bigint' ? item.toString() : item), 2),\n )\n}\n"],"names":["ValidationError","getCollectionInputSchema","getGlobalInputSchema","getCollectionVirtualFieldNames","getGlobalVirtualFieldNames","stripVirtualFields","transformPointDataToPayload","validateCollectionData","validateGlobalData","getCollectionValidationResult","slug","error","req","undefined","schema","collectionSlug","errors","data","getGlobalValidationResult","globalSlug","getCollectionSchema","getReadOptions","options","depth","fallbackLocale","locale","overrideAccess","populate","select","showHiddenFields","prepareCollectionData","collection","payload","stripCollectionVirtualFields","config","prepareGlobalData","stripGlobalVirtualFields","printJSON","value","console","log","JSON","stringify","_key","item","toString"],"mappings":"AAAA,6BAA6B,GAU7B,SAASA,eAAe,QAAQ,qCAAoC;AACpE,SACEC,wBAAwB,EACxBC,oBAAoB,QACf,+DAA8D;AACrE,SACEC,8BAA8B,EAC9BC,0BAA0B,EAC1BC,kBAAkB,QACb,6CAA4C;AACnD,SAASC,2BAA2B,QAAQ,oDAAmD;AAE/F,SACEC,sBAAsB,EACtBC,kBAAkB,QACb,6DAA4D;AAEnE,OAAO,MAAMC,gCAAgC,CAAC,EAC5CC,IAAI,EACJC,KAAK,EACLC,GAAG,EAKJ;IACC,IAAI,CAAED,CAAAA,iBAAiBX,eAAc,GAAI;QACvC,OAAOa;IACT;IAEA,MAAMC,SAASb,yBAAyB;QAAEc,gBAAgBL;QAAME;IAAI;IAEpE,OAAO;QAAEF;QAAMM,QAAQL,MAAMM,IAAI,CAACD,MAAM;QAAE,GAAIF,SAAS;YAAEA;QAAO,IAAI,CAAC,CAAC;IAAE;AAC1E,EAAC;AAED,OAAO,MAAMI,4BAA4B,CAAC,EACxCR,IAAI,EACJC,KAAK,EACLC,GAAG,EAKJ;IACC,IAAI,CAAED,CAAAA,iBAAiBX,eAAc,GAAI;QACvC,OAAOa;IACT;IAEA,MAAMC,SAASZ,qBAAqB;QAAEiB,YAAYT;QAAME;IAAI;IAE5D,OAAO;QAAEF;QAAMM,QAAQL,MAAMM,IAAI,CAACD,MAAM;QAAE,GAAIF,SAAS;YAAEA;QAAO,IAAI,CAAC,CAAC;IAAE;AAC1E,EAAC;AAED,OAAO,MAAMM,sBAAsB,CAAC,EAAEV,IAAI,EAAEE,GAAG,EAAiD,GAC9FX,yBAAyB;QAAEc,gBAAgBL;QAAME;IAAI,GAAE;AAEzD,OAAO,MAAMS,iBAAiB,CAACC,UAQxB,CAAA;QACLC,OAAOD,QAAQC,KAAK;QACpBC,gBAAgBF,QAAQE,cAAc;QACtCC,QAAQH,QAAQG,MAAM;QACtBC,gBAAgBJ,QAAQI,cAAc;QACtCC,UAAUL,QAAQK,QAAQ;QAC1BC,QAAQN,QAAQM,MAAM;QACtBC,kBAAkBP,QAAQO,gBAAgB;IAC5C,CAAA,EAAE;AAEF,OAAO,MAAMC,wBAAwB,CAAC,EACpCC,UAAU,EACVd,IAAI,EACJe,OAAO,EAKR,GACC1B,4BAA4B2B,6BAA6B;QAAEF;QAAYd;QAAMe;IAAQ,IAAG;AAE1F,OAAO,MAAMC,+BAA+B,CAAC,EAC3CF,UAAU,EACVd,IAAI,EACJe,OAAO,EAKR,GACC3B,mBAAmBY,MAAMd,+BAA+B6B,QAAQE,MAAM,EAAEH,aAAY;AAEtF,OAAO,MAAMI,oBAAoB,CAAC,EAChCzB,IAAI,EACJO,IAAI,EACJe,OAAO,EAKR,GACC1B,4BAA4B8B,yBAAyB;QAAE1B;QAAMO;QAAMe;IAAQ,IAAG;AAEhF,OAAO,MAAMI,2BAA2B,CAAC,EACvC1B,IAAI,EACJO,IAAI,EACJe,OAAO,EAKR,GACC3B,mBAAmBY,MAAMb,2BAA2B4B,QAAQE,MAAM,EAAExB,OAAM;AAE5E,OAAO,MAAM2B,YAAY,CAACC;IACxBC,QAAQC,GAAG,CACTC,KAAKC,SAAS,CAACJ,OAAO,CAACK,MAAMC,OAAU,OAAOA,SAAS,WAAWA,KAAKC,QAAQ,KAAKD,MAAO;AAE/F,EAAC"}
@@ -18,7 +18,7 @@
18
18
  allowUnknownOption: definition.allowUnknownOption ?? false,
19
19
  cli: cli === false ? false : overrides,
20
20
  handler: definition.handler,
21
- input: input,
21
+ input,
22
22
  schema
23
23
  };
24
24
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/cli/defineCLICommand.ts"],"sourcesContent":["import type { StandardSchemaV1 } from '@standard-schema/spec'\n\nimport type {\n CLICommand,\n CLICommandResult,\n CLIFieldOverride,\n CLIHelp,\n CLIInputSchema,\n CLIRuntime,\n} from '../config/types.js'\nimport type { MaybePromise } from '../types/index.js'\n\ntype CLICommandDefinition<TInput extends CLIInputSchema> = {\n aliases?: string[]\n allowUnknownOption?: boolean\n cli?:\n | false\n | Partial<Record<Extract<keyof StandardSchemaV1.InferInput<TInput>, string>, CLIFieldOverride>>\n description: string\n examples?: string[]\n /**\n * Runs after Payload validates the command input. `args` contains the validated values.\n *\n * - Return nothing when the command succeeds without a result.\n * - Return a number to set the process exit code.\n * - Return `{ result }` to include data in JSON output.\n * - Return `{ exitCode, result }` when the command needs both.\n *\n * Console and Payload logger output is sent to stderr in JSON mode. Use `isJSON` when the\n * command's behavior itself needs to change for machine-readable output.\n */\n handler: (\n context: {\n args: StandardSchemaV1.InferOutput<TInput>\n help: CLIHelp\n isJSON: boolean\n } & Pick<CLIRuntime, 'getConfig' | 'getPayload'>,\n ) => MaybePromise<CLICommandResult | number | void>\n helpGroup?: string\n input: TInput\n}\n\n/** Defines a CLI command from its input schema, shell input, and handler. */\nexport const defineCLICommand = <TInput extends CLIInputSchema>(\n definition: CLICommandDefinition<TInput>,\n): CLICommand => {\n const { cli, input } = definition\n const schema = input['~standard'].jsonSchema.input({ target: 'draft-2020-12' })\n\n if (schema.type !== 'object') {\n throw new Error('CLI command input schema must describe an object.')\n }\n\n const properties = (schema.properties ?? {}) as Record<string, unknown>\n const overrides = cli === false ? {} : (cli ?? {})\n\n for (const field of Object.keys(overrides)) {\n if (!(field in properties)) {\n throw new Error(`CLI command configures unknown input '${field}'.`)\n }\n }\n\n return {\n ...definition,\n allowUnknownOption: definition.allowUnknownOption ?? false,\n cli: cli === false ? false : overrides,\n handler: definition.handler as CLICommand['handler'],\n input: input as CLIInputSchema,\n schema,\n }\n}\n"],"names":["defineCLICommand","definition","cli","input","schema","jsonSchema","target","type","Error","properties","overrides","field","Object","keys","allowUnknownOption","handler"],"mappings":"AA0CA,2EAA2E,GAC3E,OAAO,MAAMA,mBAAmB,CAC9BC;IAEA,MAAM,EAAEC,GAAG,EAAEC,KAAK,EAAE,GAAGF;IACvB,MAAMG,SAASD,KAAK,CAAC,YAAY,CAACE,UAAU,CAACF,KAAK,CAAC;QAAEG,QAAQ;IAAgB;IAE7E,IAAIF,OAAOG,IAAI,KAAK,UAAU;QAC5B,MAAM,IAAIC,MAAM;IAClB;IAEA,MAAMC,aAAcL,OAAOK,UAAU,IAAI,CAAC;IAC1C,MAAMC,YAAYR,QAAQ,QAAQ,CAAC,IAAKA,OAAO,CAAC;IAEhD,KAAK,MAAMS,SAASC,OAAOC,IAAI,CAACH,WAAY;QAC1C,IAAI,CAAEC,CAAAA,SAASF,UAAS,GAAI;YAC1B,MAAM,IAAID,MAAM,CAAC,sCAAsC,EAAEG,MAAM,EAAE,CAAC;QACpE;IACF;IAEA,OAAO;QACL,GAAGV,UAAU;QACba,oBAAoBb,WAAWa,kBAAkB,IAAI;QACrDZ,KAAKA,QAAQ,QAAQ,QAAQQ;QAC7BK,SAASd,WAAWc,OAAO;QAC3BZ,OAAOA;QACPC;IACF;AACF,EAAC"}
1
+ {"version":3,"sources":["../../src/cli/defineCLICommand.ts"],"sourcesContent":["import type { StandardSchemaV1 } from '@standard-schema/spec'\n\nimport type {\n CLICommand,\n CLICommandResult,\n CLIFieldOverride,\n CLIHelp,\n CLIInputSchema,\n CLIRuntime,\n} from '../config/types.js'\nimport type { MaybePromise } from '../types/index.js'\n\ntype CLICommandDefinition<TInput extends CLIInputSchema> = {\n aliases?: string[]\n allowUnknownOption?: boolean\n cli?:\n | false\n | Partial<Record<Extract<keyof StandardSchemaV1.InferInput<TInput>, string>, CLIFieldOverride>>\n description: string\n examples?: string[]\n /**\n * Runs after Payload validates the command input. `args` contains the validated values.\n *\n * - Return nothing when the command succeeds without a result.\n * - Return a number to set the process exit code.\n * - Return `{ result }` to include data in JSON output.\n * - Return `{ exitCode, result }` when the command needs both.\n *\n * Console and Payload logger output is sent to stderr in JSON mode. Use `isJSON` when the\n * command's behavior itself needs to change for machine-readable output.\n */\n handler: (\n context: {\n args: StandardSchemaV1.InferOutput<TInput>\n help: CLIHelp\n isJSON: boolean\n } & Pick<CLIRuntime, 'getConfig' | 'getPayload'>,\n ) => MaybePromise<CLICommandResult | number | void>\n helpGroup?: string\n input: TInput\n}\n\n/** Defines a CLI command from its input schema, shell input, and handler. */\nexport const defineCLICommand = <TInput extends CLIInputSchema>(\n definition: CLICommandDefinition<TInput>,\n): CLICommand => {\n const { cli, input } = definition\n const schema = input['~standard'].jsonSchema.input({ target: 'draft-2020-12' })\n\n if (schema.type !== 'object') {\n throw new Error('CLI command input schema must describe an object.')\n }\n\n const properties = (schema.properties ?? {}) as Record<string, unknown>\n const overrides = cli === false ? {} : (cli ?? {})\n\n for (const field of Object.keys(overrides)) {\n if (!(field in properties)) {\n throw new Error(`CLI command configures unknown input '${field}'.`)\n }\n }\n\n return {\n ...definition,\n allowUnknownOption: definition.allowUnknownOption ?? false,\n cli: cli === false ? false : overrides,\n handler: definition.handler,\n input,\n schema,\n }\n}\n"],"names":["defineCLICommand","definition","cli","input","schema","jsonSchema","target","type","Error","properties","overrides","field","Object","keys","allowUnknownOption","handler"],"mappings":"AA0CA,2EAA2E,GAC3E,OAAO,MAAMA,mBAAmB,CAC9BC;IAEA,MAAM,EAAEC,GAAG,EAAEC,KAAK,EAAE,GAAGF;IACvB,MAAMG,SAASD,KAAK,CAAC,YAAY,CAACE,UAAU,CAACF,KAAK,CAAC;QAAEG,QAAQ;IAAgB;IAE7E,IAAIF,OAAOG,IAAI,KAAK,UAAU;QAC5B,MAAM,IAAIC,MAAM;IAClB;IAEA,MAAMC,aAAcL,OAAOK,UAAU,IAAI,CAAC;IAC1C,MAAMC,YAAYR,QAAQ,QAAQ,CAAC,IAAKA,OAAO,CAAC;IAEhD,KAAK,MAAMS,SAASC,OAAOC,IAAI,CAACH,WAAY;QAC1C,IAAI,CAAEC,CAAAA,SAASF,UAAS,GAAI;YAC1B,MAAM,IAAID,MAAM,CAAC,sCAAsC,EAAEG,MAAM,EAAE,CAAC;QACpE;IACF;IAEA,OAAO;QACL,GAAGV,UAAU;QACba,oBAAoBb,WAAWa,kBAAkB,IAAI;QACrDZ,KAAKA,QAAQ,QAAQ,QAAQQ;QAC7BK,SAASd,WAAWc,OAAO;QAC3BZ;QACAC;IACF;AACF,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/collections/config/client.ts"],"sourcesContent":["import type { I18nClient, TFunction } from '@payloadcms/translations'\n\nimport type { StaticDescription } from '../../admin/types.js'\nimport type { ImportMap } from '../../cli/commands/generateImportMap/generateImportMap.js'\nimport type {\n LivePreviewConfig,\n ServerOnlyLivePreviewProperties,\n StaticLabel,\n} from '../../config/types.js'\nimport type { ClientField } from '../../fields/config/client.js'\nimport type { ClientHierarchyConfig } from '../../hierarchy/types.js'\nimport type { Payload } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadInstructionsCapability } from '../../uploads/types.js'\nimport type { SanitizedCollectionConfig } from './types.js'\n\nimport { createClientFields } from '../../fields/config/client.js'\n\nexport type ServerOnlyCollectionProperties = keyof Pick<\n SanitizedCollectionConfig,\n | 'access'\n | 'custom'\n | 'endpoints'\n | 'flattenedFields'\n | 'hooks'\n | 'indexes'\n | 'joins'\n | 'llmInstructions'\n | 'polymorphicJoins'\n | 'sanitizedIndexes'\n | 'select'\n>\n\nexport type ServerOnlyCollectionAdminProperties = keyof Pick<\n SanitizedCollectionConfig['admin'],\n 'baseFilter' | 'baseListFilter' | 'components' | 'formatDocURL' | 'hidden'\n>\n\nexport type ServerOnlyUploadProperties = keyof Pick<\n SanitizedCollectionConfig['upload'],\n | 'admin'\n | 'adminThumbnail'\n | 'externalFileHeaderFilter'\n | 'fileOperations'\n | 'handlers'\n | 'modifyResponseHeaders'\n | 'uploadInstructions'\n>\n\ntype ClientUploadConfig = {\n uploadInstructions: Pick<UploadInstructionsCapability, 'useInAdmin'>\n} & Omit<SanitizedUploadConfig, 'fileOperations' | 'uploadInstructions'>\n\nexport type ClientCollectionConfig = {\n admin: {\n description?: StaticDescription\n livePreview?: Omit<LivePreviewConfig, ServerOnlyLivePreviewProperties>\n preview?: boolean\n } & Omit<\n SanitizedCollectionConfig['admin'],\n | 'components'\n | 'description'\n | 'formatDocURL'\n | 'joins'\n | 'livePreview'\n | 'preview'\n | ServerOnlyCollectionAdminProperties\n >\n auth?: {\n forgotPassword: Pick<SanitizedCollectionConfig['auth']['forgotPassword'], 'minRequestInterval'>\n verify?: true\n } & Omit<SanitizedCollectionConfig['auth'], 'forgotPassword' | 'strategies' | 'verify'>\n fields: ClientField[]\n hierarchy?: ClientHierarchyConfig | false\n labels: {\n plural: StaticLabel\n singular: StaticLabel\n }\n upload: ClientUploadConfig\n} & Omit<\n SanitizedCollectionConfig,\n 'admin' | 'auth' | 'fields' | 'hierarchy' | 'labels' | 'upload' | ServerOnlyCollectionProperties\n>\n\nconst serverOnlyCollectionProperties: Partial<ServerOnlyCollectionProperties>[] = [\n 'hooks',\n 'access',\n 'endpoints',\n 'custom',\n 'joins',\n 'llmInstructions',\n 'polymorphicJoins',\n 'flattenedFields',\n 'indexes',\n 'sanitizedIndexes',\n 'select',\n // `upload`\n // `admin`\n // are all handled separately\n]\n\nconst serverOnlyUploadProperties: Partial<ServerOnlyUploadProperties>[] = [\n 'admin',\n 'adminThumbnail',\n 'externalFileHeaderFilter',\n 'fileOperations',\n 'handlers',\n 'modifyResponseHeaders',\n 'uploadInstructions',\n]\n\nconst serverOnlyCollectionAdminProperties: Partial<ServerOnlyCollectionAdminProperties>[] = [\n 'hidden',\n 'baseFilter',\n 'baseListFilter',\n 'components',\n 'formatDocURL',\n // 'preview' is handled separately\n // `livePreview` is handled separately\n]\n\nexport const createClientCollectionConfig = ({\n collection,\n defaultIDType,\n i18n,\n importMap,\n}: {\n collection: SanitizedCollectionConfig\n defaultIDType: Payload['config']['db']['defaultIDType']\n i18n: I18nClient\n importMap: ImportMap\n}): ClientCollectionConfig => {\n const clientCollection = {} as Partial<ClientCollectionConfig>\n\n for (const key in collection) {\n if (serverOnlyCollectionProperties.includes(key as any)) {\n continue\n }\n switch (key) {\n case 'admin':\n if (!collection.admin) {\n break\n }\n\n clientCollection.admin = {} as ClientCollectionConfig['admin']\n\n for (const adminKey in collection.admin) {\n if (serverOnlyCollectionAdminProperties.includes(adminKey as any)) {\n continue\n }\n\n switch (adminKey) {\n case 'description':\n if (\n typeof collection.admin.description === 'string' ||\n typeof collection.admin.description === 'object'\n ) {\n if (collection.admin.description) {\n clientCollection.admin.description = collection.admin.description\n }\n } else if (typeof collection.admin.description === 'function') {\n const description = collection.admin.description({ t: i18n.t as TFunction })\n\n if (description) {\n clientCollection.admin.description = description\n }\n }\n break\n\n case 'livePreview':\n clientCollection.admin.livePreview = {}\n\n if (collection.admin.livePreview?.breakpoints) {\n clientCollection.admin.livePreview.breakpoints =\n collection.admin.livePreview.breakpoints\n }\n\n break\n\n case 'preview':\n if (collection.admin.preview) {\n clientCollection.admin.preview = true\n }\n\n break\n\n default:\n ;(clientCollection as any).admin[adminKey] =\n collection.admin[adminKey as keyof SanitizedCollectionConfig['admin']]\n }\n }\n\n break\n\n case 'auth':\n if (!collection.auth) {\n break\n }\n\n clientCollection.auth = {} as { verify?: true } & SanitizedCollectionConfig['auth']\n\n clientCollection.auth.forgotPassword = {\n minRequestInterval: collection.auth.forgotPassword.minRequestInterval,\n }\n\n if (collection.auth.cookies) {\n clientCollection.auth.cookies = collection.auth.cookies\n }\n\n if (collection.auth.depth !== undefined) {\n // Check for undefined as it can be a number (0)\n clientCollection.auth.depth = collection.auth.depth\n }\n\n if (collection.auth.disableLocalStrategy) {\n clientCollection.auth.disableLocalStrategy = collection.auth.disableLocalStrategy\n }\n\n if (collection.auth.lockTime !== undefined) {\n // Check for undefined as it can be a number (0)\n clientCollection.auth.lockTime = collection.auth.lockTime\n }\n\n if (collection.auth.loginWithUsername) {\n clientCollection.auth.loginWithUsername = collection.auth.loginWithUsername\n }\n\n if (collection.auth.maxLoginAttempts !== undefined) {\n // Check for undefined as it can be a number (0)\n clientCollection.auth.maxLoginAttempts = collection.auth.maxLoginAttempts\n }\n\n if (collection.auth.removeTokenFromResponses) {\n clientCollection.auth.removeTokenFromResponses = collection.auth.removeTokenFromResponses\n }\n\n if (collection.auth.useAPIKey) {\n clientCollection.auth.useAPIKey = collection.auth.useAPIKey\n }\n\n if (collection.auth.tokenExpiration) {\n clientCollection.auth.tokenExpiration = collection.auth.tokenExpiration\n }\n\n if (collection.auth.verify) {\n clientCollection.auth.verify = true\n }\n\n break\n\n case 'fields':\n clientCollection.fields = createClientFields({\n defaultIDType,\n fields: collection.fields,\n i18n,\n importMap,\n })\n\n break\n\n case 'hierarchy': {\n if (!collection.hierarchy || typeof collection.hierarchy !== 'object') {\n clientCollection.hierarchy = false\n break\n }\n\n // Strip slugify function as it can't cross server-client boundary\n const { slugify: _slugify, ...clientHierarchy } = collection.hierarchy\n clientCollection.hierarchy = clientHierarchy as ClientHierarchyConfig\n\n break\n }\n\n case 'labels':\n clientCollection.labels = {\n plural:\n typeof collection.labels.plural === 'function'\n ? collection.labels.plural({ i18n, t: i18n.t as TFunction })\n : collection.labels.plural,\n singular:\n typeof collection.labels.singular === 'function'\n ? collection.labels.singular({ i18n, t: i18n.t as TFunction })\n : collection.labels.singular,\n }\n\n break\n\n case 'upload':\n if (!collection.upload) {\n break\n }\n\n clientCollection.upload = {\n uploadInstructions: {\n useInAdmin: collection.upload.uploadInstructions?.useInAdmin ?? false,\n },\n } as ClientUploadConfig\n\n for (const uploadKey in collection.upload) {\n if (serverOnlyUploadProperties.includes(uploadKey as any)) {\n continue\n }\n\n if (uploadKey === 'variants') {\n clientCollection.upload.variants = collection.upload.variants?.map((size) => {\n const sanitizedSize = { ...size }\n if ('generateImageName' in sanitizedSize) {\n delete sanitizedSize.generateImageName\n }\n return sanitizedSize\n })\n } else {\n ;(clientCollection.upload as any)[uploadKey] =\n collection.upload[uploadKey as keyof SanitizedUploadConfig]\n }\n }\n\n break\n\n default:\n ;(clientCollection as any)[key] = collection[key as keyof SanitizedCollectionConfig]\n }\n }\n\n return clientCollection as ClientCollectionConfig\n}\n\nexport const createClientCollectionConfigs = ({\n collections,\n defaultIDType,\n i18n,\n importMap,\n}: {\n collections: SanitizedCollectionConfig[]\n defaultIDType: Payload['config']['db']['defaultIDType']\n i18n: I18nClient\n importMap: ImportMap\n}): ClientCollectionConfig[] => {\n const clientCollections = new Array(collections.length)\n\n for (let i = 0; i < collections.length; i++) {\n const collection = collections[i]!\n\n clientCollections[i] = createClientCollectionConfig({\n collection,\n defaultIDType,\n i18n,\n importMap,\n })\n }\n\n return clientCollections\n}\n"],"names":["createClientFields","serverOnlyCollectionProperties","serverOnlyUploadProperties","serverOnlyCollectionAdminProperties","createClientCollectionConfig","collection","defaultIDType","i18n","importMap","clientCollection","key","includes","admin","adminKey","description","t","livePreview","breakpoints","preview","auth","forgotPassword","minRequestInterval","cookies","depth","undefined","disableLocalStrategy","lockTime","loginWithUsername","maxLoginAttempts","removeTokenFromResponses","useAPIKey","tokenExpiration","verify","fields","hierarchy","slugify","_slugify","clientHierarchy","labels","plural","singular","upload","uploadInstructions","useInAdmin","uploadKey","variants","map","size","sanitizedSize","generateImageName","createClientCollectionConfigs","collections","clientCollections","Array","length","i"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/collections/config/client.ts"],"sourcesContent":["import type { I18nClient, TFunction } from '@payloadcms/translations'\n\nimport type { StaticDescription } from '../../admin/types.js'\nimport type { ImportMap } from '../../cli/commands/generateImportMap/generateImportMap.js'\nimport type {\n LivePreviewConfig,\n ServerOnlyLivePreviewProperties,\n StaticLabel,\n} from '../../config/types.js'\nimport type { ClientField } from '../../fields/config/client.js'\nimport type { ClientHierarchyConfig } from '../../hierarchy/types.js'\nimport type { Payload } from '../../types/index.js'\nimport type { SanitizedUploadConfig, UploadInstructionsCapability } from '../../uploads/types.js'\nimport type { SanitizedCollectionConfig } from './types.js'\n\nimport { createClientFields } from '../../fields/config/client.js'\n\nexport type ServerOnlyCollectionProperties = keyof Pick<\n SanitizedCollectionConfig,\n | 'access'\n | 'custom'\n | 'endpoints'\n | 'flattenedFields'\n | 'hooks'\n | 'indexes'\n | 'joins'\n | 'llmInstructions'\n | 'polymorphicJoins'\n | 'sanitizedIndexes'\n | 'select'\n>\n\nexport type ServerOnlyCollectionAdminProperties = keyof Pick<\n SanitizedCollectionConfig['admin'],\n 'baseFilter' | 'baseListFilter' | 'components' | 'formatDocURL' | 'hidden'\n>\n\nexport type ServerOnlyUploadProperties = keyof Pick<\n SanitizedCollectionConfig['upload'],\n | 'admin'\n | 'adminThumbnail'\n | 'externalFileHeaderFilter'\n | 'fileOperations'\n | 'handlers'\n | 'modifyResponseHeaders'\n | 'uploadInstructions'\n>\n\ntype ClientUploadConfig = {\n uploadInstructions: Pick<UploadInstructionsCapability, 'useInAdmin'>\n} & Omit<SanitizedUploadConfig, 'fileOperations' | 'uploadInstructions'>\n\nexport type ClientCollectionConfig = {\n admin: {\n description?: StaticDescription\n livePreview?: Omit<LivePreviewConfig, ServerOnlyLivePreviewProperties>\n preview?: boolean\n } & Omit<\n SanitizedCollectionConfig['admin'],\n | 'components'\n | 'description'\n | 'formatDocURL'\n | 'joins'\n | 'livePreview'\n | 'preview'\n | ServerOnlyCollectionAdminProperties\n >\n auth?: {\n forgotPassword: Pick<SanitizedCollectionConfig['auth']['forgotPassword'], 'minRequestInterval'>\n verify?: true\n } & Omit<SanitizedCollectionConfig['auth'], 'forgotPassword' | 'strategies' | 'verify'>\n fields: ClientField[]\n hierarchy?: ClientHierarchyConfig | false\n labels: {\n plural: StaticLabel\n singular: StaticLabel\n }\n upload: ClientUploadConfig\n} & Omit<\n SanitizedCollectionConfig,\n 'admin' | 'auth' | 'fields' | 'hierarchy' | 'labels' | 'upload' | ServerOnlyCollectionProperties\n>\n\nconst serverOnlyCollectionProperties: Partial<ServerOnlyCollectionProperties>[] = [\n 'hooks',\n 'access',\n 'endpoints',\n 'custom',\n 'joins',\n 'llmInstructions',\n 'polymorphicJoins',\n 'flattenedFields',\n 'indexes',\n 'sanitizedIndexes',\n 'select',\n // `upload`\n // `admin`\n // are all handled separately\n]\n\nconst serverOnlyUploadProperties: Partial<ServerOnlyUploadProperties>[] = [\n 'admin',\n 'adminThumbnail',\n 'externalFileHeaderFilter',\n 'fileOperations',\n 'handlers',\n 'modifyResponseHeaders',\n 'uploadInstructions',\n]\n\nconst serverOnlyCollectionAdminProperties: Partial<ServerOnlyCollectionAdminProperties>[] = [\n 'hidden',\n 'baseFilter',\n 'baseListFilter',\n 'components',\n 'formatDocURL',\n // 'preview' is handled separately\n // `livePreview` is handled separately\n]\n\nexport const createClientCollectionConfig = ({\n collection,\n defaultIDType,\n i18n,\n importMap,\n}: {\n collection: SanitizedCollectionConfig\n defaultIDType: Payload['config']['db']['defaultIDType']\n i18n: I18nClient\n importMap: ImportMap\n}): ClientCollectionConfig => {\n const clientCollection = {} as Partial<ClientCollectionConfig>\n\n for (const key in collection) {\n if (serverOnlyCollectionProperties.includes(key as any)) {\n continue\n }\n switch (key) {\n case 'admin':\n if (!collection.admin) {\n break\n }\n\n clientCollection.admin = {}\n\n for (const adminKey in collection.admin) {\n if (serverOnlyCollectionAdminProperties.includes(adminKey as any)) {\n continue\n }\n\n switch (adminKey) {\n case 'description':\n if (\n typeof collection.admin.description === 'string' ||\n typeof collection.admin.description === 'object'\n ) {\n if (collection.admin.description) {\n clientCollection.admin.description = collection.admin.description\n }\n } else if (typeof collection.admin.description === 'function') {\n const description = collection.admin.description({ t: i18n.t as TFunction })\n\n if (description) {\n clientCollection.admin.description = description\n }\n }\n break\n\n case 'livePreview':\n clientCollection.admin.livePreview = {}\n\n if (collection.admin.livePreview?.breakpoints) {\n clientCollection.admin.livePreview.breakpoints =\n collection.admin.livePreview.breakpoints\n }\n\n break\n\n case 'preview':\n if (collection.admin.preview) {\n clientCollection.admin.preview = true\n }\n\n break\n\n default:\n ;(clientCollection as any).admin[adminKey] =\n collection.admin[adminKey as keyof SanitizedCollectionConfig['admin']]\n }\n }\n\n break\n\n case 'auth':\n if (!collection.auth) {\n break\n }\n\n clientCollection.auth = {} as { verify?: true } & SanitizedCollectionConfig['auth']\n\n clientCollection.auth.forgotPassword = {\n minRequestInterval: collection.auth.forgotPassword.minRequestInterval,\n }\n\n if (collection.auth.cookies) {\n clientCollection.auth.cookies = collection.auth.cookies\n }\n\n if (collection.auth.depth !== undefined) {\n // Check for undefined as it can be a number (0)\n clientCollection.auth.depth = collection.auth.depth\n }\n\n if (collection.auth.disableLocalStrategy) {\n clientCollection.auth.disableLocalStrategy = collection.auth.disableLocalStrategy\n }\n\n if (collection.auth.lockTime !== undefined) {\n // Check for undefined as it can be a number (0)\n clientCollection.auth.lockTime = collection.auth.lockTime\n }\n\n if (collection.auth.loginWithUsername) {\n clientCollection.auth.loginWithUsername = collection.auth.loginWithUsername\n }\n\n if (collection.auth.maxLoginAttempts !== undefined) {\n // Check for undefined as it can be a number (0)\n clientCollection.auth.maxLoginAttempts = collection.auth.maxLoginAttempts\n }\n\n if (collection.auth.removeTokenFromResponses) {\n clientCollection.auth.removeTokenFromResponses = collection.auth.removeTokenFromResponses\n }\n\n if (collection.auth.useAPIKey) {\n clientCollection.auth.useAPIKey = collection.auth.useAPIKey\n }\n\n if (collection.auth.tokenExpiration) {\n clientCollection.auth.tokenExpiration = collection.auth.tokenExpiration\n }\n\n if (collection.auth.verify) {\n clientCollection.auth.verify = true\n }\n\n break\n\n case 'fields':\n clientCollection.fields = createClientFields({\n defaultIDType,\n fields: collection.fields,\n i18n,\n importMap,\n })\n\n break\n\n case 'hierarchy': {\n if (!collection.hierarchy || typeof collection.hierarchy !== 'object') {\n clientCollection.hierarchy = false\n break\n }\n\n // Strip slugify function as it can't cross server-client boundary\n const { slugify: _slugify, ...clientHierarchy } = collection.hierarchy\n clientCollection.hierarchy = clientHierarchy\n\n break\n }\n\n case 'labels':\n clientCollection.labels = {\n plural:\n typeof collection.labels.plural === 'function'\n ? collection.labels.plural({ i18n, t: i18n.t as TFunction })\n : collection.labels.plural,\n singular:\n typeof collection.labels.singular === 'function'\n ? collection.labels.singular({ i18n, t: i18n.t as TFunction })\n : collection.labels.singular,\n }\n\n break\n\n case 'upload':\n if (!collection.upload) {\n break\n }\n\n clientCollection.upload = {\n uploadInstructions: {\n useInAdmin: collection.upload.uploadInstructions?.useInAdmin ?? false,\n },\n } as ClientUploadConfig\n\n for (const uploadKey in collection.upload) {\n if (serverOnlyUploadProperties.includes(uploadKey as any)) {\n continue\n }\n\n if (uploadKey === 'variants') {\n clientCollection.upload.variants = collection.upload.variants?.map((size) => {\n const sanitizedSize = { ...size }\n if ('generateImageName' in sanitizedSize) {\n delete sanitizedSize.generateImageName\n }\n return sanitizedSize\n })\n } else {\n ;(clientCollection.upload as any)[uploadKey] =\n collection.upload[uploadKey as keyof SanitizedUploadConfig]\n }\n }\n\n break\n\n default:\n ;(clientCollection as any)[key] = collection[key as keyof SanitizedCollectionConfig]\n }\n }\n\n return clientCollection as ClientCollectionConfig\n}\n\nexport const createClientCollectionConfigs = ({\n collections,\n defaultIDType,\n i18n,\n importMap,\n}: {\n collections: SanitizedCollectionConfig[]\n defaultIDType: Payload['config']['db']['defaultIDType']\n i18n: I18nClient\n importMap: ImportMap\n}): ClientCollectionConfig[] => {\n const clientCollections = new Array(collections.length)\n\n for (let i = 0; i < collections.length; i++) {\n const collection = collections[i]!\n\n clientCollections[i] = createClientCollectionConfig({\n collection,\n defaultIDType,\n i18n,\n importMap,\n })\n }\n\n return clientCollections\n}\n"],"names":["createClientFields","serverOnlyCollectionProperties","serverOnlyUploadProperties","serverOnlyCollectionAdminProperties","createClientCollectionConfig","collection","defaultIDType","i18n","importMap","clientCollection","key","includes","admin","adminKey","description","t","livePreview","breakpoints","preview","auth","forgotPassword","minRequestInterval","cookies","depth","undefined","disableLocalStrategy","lockTime","loginWithUsername","maxLoginAttempts","removeTokenFromResponses","useAPIKey","tokenExpiration","verify","fields","hierarchy","slugify","_slugify","clientHierarchy","labels","plural","singular","upload","uploadInstructions","useInAdmin","uploadKey","variants","map","size","sanitizedSize","generateImageName","createClientCollectionConfigs","collections","clientCollections","Array","length","i"],"mappings":"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"}
@@ -368,7 +368,10 @@ export type CollectionAdminOptions = {
368
368
  * Specify a navigational group for collections in the admin sidebar.
369
369
  * - Provide a string to place the entity in a custom group.
370
370
  * - Provide a record to define localized group names.
371
- * - Set to `false` to exclude the entity from the sidebar / dashboard without disabling its routes.
371
+ * - Set to `false` to exclude the collection from the sidebar, command palette, dashboard collection cards,
372
+ * and pin picker, and its documents from both the Pinned and Recently viewed dashboard tabs, including existing pins.
373
+ * This does not disable routes or change access control or rich text link and relationship eligibility.
374
+ * Use `enableRichTextLink` and `enableRichTextRelationship` to configure rich text eligibility separately.
372
375
  */
373
376
  group?: false | Record<string, string> | string;
374
377
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/collections/config/types.ts"],"names":[],"mappings":"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"}