@payloadcms/ui 3.0.0-beta.31 → 3.0.0-beta.33

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 (251) hide show
  1. package/dist/assets/index.d.ts +4 -4
  2. package/dist/assets/index.d.ts.map +1 -1
  3. package/dist/assets/index.js +4 -4
  4. package/dist/assets/index.js.map +1 -1
  5. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  6. package/dist/elements/AppHeader/index.js +2 -2
  7. package/dist/elements/AppHeader/index.js.map +1 -1
  8. package/dist/elements/Autosave/index.d.ts.map +1 -1
  9. package/dist/elements/Autosave/index.js +1 -1
  10. package/dist/elements/Autosave/index.js.map +1 -1
  11. package/dist/elements/Banner/index.js +1 -1
  12. package/dist/elements/Banner/index.js.map +1 -1
  13. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  14. package/dist/elements/DocumentControls/index.js +1 -1
  15. package/dist/elements/DocumentControls/index.js.map +1 -1
  16. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  17. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +1 -1
  18. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  19. package/dist/elements/ListControls/index.d.ts.map +1 -1
  20. package/dist/elements/ListControls/index.js +1 -1
  21. package/dist/elements/ListControls/index.js.map +1 -1
  22. package/dist/elements/Logout/index.d.ts.map +1 -1
  23. package/dist/elements/Logout/index.js +1 -1
  24. package/dist/elements/Logout/index.js.map +1 -1
  25. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  26. package/dist/elements/Nav/index.client.js +1 -1
  27. package/dist/elements/Nav/index.client.js.map +1 -1
  28. package/dist/elements/Nav/index.d.ts +2 -4
  29. package/dist/elements/Nav/index.d.ts.map +1 -1
  30. package/dist/elements/Nav/index.js +20 -4
  31. package/dist/elements/Nav/index.js.map +1 -1
  32. package/dist/elements/Pill/index.js +1 -1
  33. package/dist/elements/Pill/index.js.map +1 -1
  34. package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
  35. package/dist/elements/ReactSelect/ClearIndicator/index.js +10 -2
  36. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  37. package/dist/elements/ReactSelect/ClearIndicator/index.scss +4 -0
  38. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +8 -0
  39. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -0
  40. package/dist/elements/ReactSelect/DropdownIndicator/index.js +19 -0
  41. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -0
  42. package/dist/elements/ReactSelect/DropdownIndicator/index.scss +16 -0
  43. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  44. package/dist/elements/ReactSelect/MultiValue/index.js +3 -3
  45. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  46. package/dist/elements/ReactSelect/MultiValueLabel/index.scss +4 -0
  47. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  48. package/dist/elements/ReactSelect/MultiValueRemove/index.js +6 -0
  49. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  50. package/dist/elements/ReactSelect/index.js +3 -3
  51. package/dist/elements/ReactSelect/index.js.map +1 -1
  52. package/dist/elements/ReactSelect/index.scss +1 -1
  53. package/dist/elements/RenderCustomComponent/index.d.ts +3 -3
  54. package/dist/elements/RenderCustomComponent/index.d.ts.map +1 -1
  55. package/dist/elements/RenderCustomComponent/index.js +4 -4
  56. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  57. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  58. package/dist/elements/StayLoggedIn/index.js +2 -2
  59. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  60. package/dist/elements/StepNav/index.d.ts.map +1 -1
  61. package/dist/elements/StepNav/index.js +13 -3
  62. package/dist/elements/StepNav/index.js.map +1 -1
  63. package/dist/elements/StepNav/index.scss +11 -0
  64. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  65. package/dist/elements/Table/DefaultCell/fields/Array/index.js +1 -1
  66. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  67. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  68. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
  69. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  70. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  71. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +1 -1
  72. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  73. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  74. package/dist/elements/Table/DefaultCell/fields/Date/index.js +3 -3
  75. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  76. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  77. package/dist/elements/Table/DefaultCell/fields/File/index.js +1 -1
  78. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  79. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  80. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +5 -5
  81. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  82. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  83. package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
  84. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  85. package/dist/elements/Table/DefaultCell/index.js +3 -3
  86. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  87. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  88. package/dist/elements/Table/RelationshipProvider/index.js +4 -4
  89. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  90. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  91. package/dist/elements/TableColumns/buildColumnState.js +1 -1
  92. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  93. package/dist/elements/Upload/index.d.ts.map +1 -1
  94. package/dist/elements/Upload/index.js +2 -2
  95. package/dist/elements/Upload/index.js.map +1 -1
  96. package/dist/elements/WithServerSideProps/index.d.ts +2 -2
  97. package/dist/elements/WithServerSideProps/index.d.ts.map +1 -1
  98. package/dist/elements/WithServerSideProps/index.js +4 -6
  99. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  100. package/dist/fields/Array/index.d.ts.map +1 -1
  101. package/dist/fields/Array/index.js +5 -5
  102. package/dist/fields/Array/index.js.map +1 -1
  103. package/dist/fields/Blocks/index.d.ts.map +1 -1
  104. package/dist/fields/Blocks/index.js +5 -5
  105. package/dist/fields/Blocks/index.js.map +1 -1
  106. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  107. package/dist/fields/Checkbox/Input.js +1 -1
  108. package/dist/fields/Checkbox/Input.js.map +1 -1
  109. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  110. package/dist/fields/Checkbox/index.js +4 -4
  111. package/dist/fields/Checkbox/index.js.map +1 -1
  112. package/dist/fields/Code/index.d.ts.map +1 -1
  113. package/dist/fields/Code/index.js +4 -4
  114. package/dist/fields/Code/index.js.map +1 -1
  115. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  116. package/dist/fields/Collapsible/index.js +1 -1
  117. package/dist/fields/Collapsible/index.js.map +1 -1
  118. package/dist/fields/DateTime/index.d.ts.map +1 -1
  119. package/dist/fields/DateTime/index.js +3 -3
  120. package/dist/fields/DateTime/index.js.map +1 -1
  121. package/dist/fields/Email/index.d.ts.map +1 -1
  122. package/dist/fields/Email/index.js +4 -4
  123. package/dist/fields/Email/index.js.map +1 -1
  124. package/dist/fields/Group/index.d.ts.map +1 -1
  125. package/dist/fields/Group/index.js +1 -1
  126. package/dist/fields/Group/index.js.map +1 -1
  127. package/dist/fields/HiddenInput/index.d.ts.map +1 -1
  128. package/dist/fields/HiddenInput/index.js +1 -1
  129. package/dist/fields/HiddenInput/index.js.map +1 -1
  130. package/dist/fields/JSON/index.d.ts.map +1 -1
  131. package/dist/fields/JSON/index.js +3 -3
  132. package/dist/fields/JSON/index.js.map +1 -1
  133. package/dist/fields/Number/index.d.ts.map +1 -1
  134. package/dist/fields/Number/index.js +4 -4
  135. package/dist/fields/Number/index.js.map +1 -1
  136. package/dist/fields/Password/index.d.ts.map +1 -1
  137. package/dist/fields/Password/index.js +2 -2
  138. package/dist/fields/Password/index.js.map +1 -1
  139. package/dist/fields/Point/index.d.ts.map +1 -1
  140. package/dist/fields/Point/index.js +4 -4
  141. package/dist/fields/Point/index.js.map +1 -1
  142. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  143. package/dist/fields/RadioGroup/Radio/index.js +1 -1
  144. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  145. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  146. package/dist/fields/RadioGroup/index.js +3 -3
  147. package/dist/fields/RadioGroup/index.js.map +1 -1
  148. package/dist/fields/Relationship/index.d.ts.map +1 -1
  149. package/dist/fields/Relationship/index.js +5 -5
  150. package/dist/fields/Relationship/index.js.map +1 -1
  151. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  152. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +8 -1
  153. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  154. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
  155. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  156. package/dist/fields/Relationship/select-components/SingleValue/index.js +5 -0
  157. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  158. package/dist/fields/Relationship/select-components/SingleValue/index.scss +2 -2
  159. package/dist/fields/Select/index.d.ts.map +1 -1
  160. package/dist/fields/Select/index.js +4 -4
  161. package/dist/fields/Select/index.js.map +1 -1
  162. package/dist/fields/Tabs/index.d.ts.map +1 -1
  163. package/dist/fields/Tabs/index.js +1 -1
  164. package/dist/fields/Tabs/index.js.map +1 -1
  165. package/dist/fields/Text/Input.d.ts.map +1 -1
  166. package/dist/fields/Text/Input.js +3 -3
  167. package/dist/fields/Text/Input.js.map +1 -1
  168. package/dist/fields/Text/index.d.ts.map +1 -1
  169. package/dist/fields/Text/index.js +1 -1
  170. package/dist/fields/Text/index.js.map +1 -1
  171. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  172. package/dist/fields/Textarea/Input.js +3 -3
  173. package/dist/fields/Textarea/Input.js.map +1 -1
  174. package/dist/fields/Textarea/index.d.ts.map +1 -1
  175. package/dist/fields/Textarea/index.js +1 -1
  176. package/dist/fields/Textarea/index.js.map +1 -1
  177. package/dist/fields/Upload/Input.d.ts.map +1 -1
  178. package/dist/fields/Upload/Input.js +3 -3
  179. package/dist/fields/Upload/Input.js.map +1 -1
  180. package/dist/fields/Upload/index.d.ts.map +1 -1
  181. package/dist/fields/Upload/index.js +2 -2
  182. package/dist/fields/Upload/index.js.map +1 -1
  183. package/dist/forms/FieldLabel/index.d.ts.map +1 -1
  184. package/dist/forms/FieldLabel/index.js +1 -1
  185. package/dist/forms/FieldLabel/index.js.map +1 -1
  186. package/dist/forms/Form/index.js.map +1 -1
  187. package/dist/forms/Form/mergeErrorPaths.js +1 -1
  188. package/dist/forms/Form/mergeErrorPaths.js.map +1 -1
  189. package/dist/forms/Submit/index.d.ts.map +1 -1
  190. package/dist/forms/Submit/index.js.map +1 -1
  191. package/dist/graphics/Account/index.d.ts +0 -1
  192. package/dist/graphics/Account/index.d.ts.map +1 -1
  193. package/dist/graphics/Account/index.js +2 -11
  194. package/dist/graphics/Account/index.js.map +1 -1
  195. package/dist/graphics/Icon/index.d.ts +3 -1
  196. package/dist/graphics/Icon/index.d.ts.map +1 -1
  197. package/dist/graphics/Icon/index.js +10 -36
  198. package/dist/graphics/Icon/index.js.map +1 -1
  199. package/dist/graphics/Logo/index.d.ts +2 -4
  200. package/dist/graphics/Logo/index.d.ts.map +1 -1
  201. package/dist/graphics/Logo/index.js +10 -2
  202. package/dist/graphics/Logo/index.js.map +1 -1
  203. package/dist/icons/Edit/index.d.ts +3 -1
  204. package/dist/icons/Edit/index.d.ts.map +1 -1
  205. package/dist/icons/Edit/index.js +5 -2
  206. package/dist/icons/Edit/index.js.map +1 -1
  207. package/dist/providers/Auth/index.d.ts.map +1 -1
  208. package/dist/providers/Auth/index.js +5 -4
  209. package/dist/providers/Auth/index.js.map +1 -1
  210. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +3 -2
  211. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +1 -1
  212. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +1 -1
  213. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +3 -2
  214. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
  215. package/dist/providers/ComponentMap/buildComponentMap/collections.js +4 -3
  216. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  217. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +3 -2
  218. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  219. package/dist/providers/ComponentMap/buildComponentMap/fields.js +1 -1
  220. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  221. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +3 -2
  222. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
  223. package/dist/providers/ComponentMap/buildComponentMap/globals.js +3 -2
  224. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
  225. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +4 -4
  226. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +1 -1
  227. package/dist/providers/ComponentMap/buildComponentMap/index.js +6 -2
  228. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  229. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +1 -1
  230. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  231. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  232. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  233. package/dist/providers/DocumentInfo/index.js +44 -31
  234. package/dist/providers/DocumentInfo/index.js.map +1 -1
  235. package/dist/providers/Root/index.d.ts.map +1 -1
  236. package/dist/providers/Root/index.js +1 -1
  237. package/dist/providers/Root/index.js.map +1 -1
  238. package/dist/templates/Default/index.d.ts +4 -4
  239. package/dist/templates/Default/index.d.ts.map +1 -1
  240. package/dist/templates/Default/index.js +18 -4
  241. package/dist/templates/Default/index.js.map +1 -1
  242. package/dist/utilities/hasSavePermission.d.ts +8 -0
  243. package/dist/utilities/hasSavePermission.d.ts.map +1 -0
  244. package/dist/utilities/hasSavePermission.js +12 -0
  245. package/dist/utilities/hasSavePermission.js.map +1 -0
  246. package/dist/utilities/isEditing.d.ts +6 -0
  247. package/dist/utilities/isEditing.d.ts.map +1 -0
  248. package/dist/utilities/isEditing.js +3 -0
  249. package/dist/utilities/isEditing.js.map +1 -0
  250. package/package.json +11 -11
  251. /package/dist/assets/{og-image.png → static-og-image.png} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/providers/Auth/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientUser, Permissions } from 'payload/auth'\nimport type { MeOperationResult } from 'payload/types'\n\nimport * as facelessUIImport from '@faceless-ui/modal'\nimport { stayLoggedInModalSlug } from '@payloadcms/ui/elements/StayLoggedIn'\nimport { usePathname, useRouter } from 'next/navigation.js'\nimport qs from 'qs'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { useConfig } from '../Config/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport type AuthContext<T = ClientUser> = {\n fetchFullUser: () => Promise<void>\n logOut: () => void\n permissions?: Permissions\n refreshCookie: (forceRefresh?: boolean) => void\n refreshCookieAsync: () => Promise<ClientUser>\n refreshPermissions: () => Promise<void>\n setPermissions: (permissions: Permissions) => void\n setUser: (user: T) => void\n token?: string\n user?: T | null\n}\n\nconst Context = createContext({} as AuthContext)\n\nconst maxTimeoutTime = 2147483647\n\nexport const AuthProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const { useModal } = facelessUIImport\n\n const { searchParams } = useSearchParams()\n const [user, setUser] = useState<ClientUser | null>()\n const [tokenInMemory, setTokenInMemory] = useState<string>()\n const [tokenExpiration, setTokenExpiration] = useState<number>()\n const pathname = usePathname()\n const router = useRouter()\n // const { code } = useLocale()\n const code = 'en' // TODO: re-enable i18n asap\n\n const config = useConfig()\n\n const {\n admin: { autoLogin, inactivityRoute: logoutInactivityRoute, user: userSlug },\n routes: { admin, api },\n serverURL,\n } = config\n\n const [permissions, setPermissions] = useState<Permissions>()\n\n const { i18n } = useTranslation()\n const { closeAllModals, openModal } = useModal()\n const [lastLocationChange, setLastLocationChange] = useState(0)\n const debouncedLocationChange = useDebounce(lastLocationChange, 10000)\n\n const id = user?.id\n\n const redirectToInactivityRoute = useCallback(() => {\n if (window.location.pathname.startsWith(admin)) {\n const redirectParam = `?redirect=${encodeURIComponent(window.location.pathname)}`\n router.replace(`${admin}${logoutInactivityRoute}${redirectParam}`)\n } else {\n router.replace(`${admin}${logoutInactivityRoute}`)\n }\n closeAllModals()\n }, [router, admin, logoutInactivityRoute, closeAllModals])\n\n const revokeTokenAndExpire = useCallback(() => {\n setTokenInMemory(undefined)\n setTokenExpiration(undefined)\n }, [])\n\n const setTokenAndExpiration = useCallback(\n (json) => {\n const token = json?.token || json?.refreshedToken\n if (token && json?.exp) {\n setTokenInMemory(token)\n setTokenExpiration(json.exp)\n } else {\n revokeTokenAndExpire()\n }\n },\n [revokeTokenAndExpire],\n )\n\n const refreshCookie = useCallback(\n (forceRefresh?: boolean) => {\n const now = Math.round(new Date().getTime() / 1000)\n const remainingTime = (typeof tokenExpiration === 'number' ? tokenExpiration : 0) - now\n\n if (forceRefresh || (tokenExpiration && remainingTime < 120)) {\n setTimeout(async () => {\n try {\n const request = await requests.post(`${serverURL}${api}/${userSlug}/refresh-token`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json = await request.json()\n setUser(json.user)\n\n setTokenAndExpiration(json)\n } else {\n setUser(null)\n redirectToInactivityRoute()\n }\n } catch (e) {\n toast.error(e.message)\n }\n }, 1000)\n }\n },\n [\n tokenExpiration,\n serverURL,\n api,\n userSlug,\n i18n,\n redirectToInactivityRoute,\n setTokenAndExpiration,\n ],\n )\n\n const refreshCookieAsync = useCallback(\n async (skipSetUser?: boolean): Promise<ClientUser> => {\n try {\n const request = await requests.post(`${serverURL}${api}/${userSlug}/refresh-token`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json = await request.json()\n if (!skipSetUser) {\n setUser(json.user)\n setTokenAndExpiration(json)\n }\n return json.user\n }\n\n setUser(null)\n redirectToInactivityRoute()\n return null\n } catch (e) {\n toast.error(`Refreshing token failed: ${e.message}`)\n return null\n }\n },\n [serverURL, api, userSlug, i18n, redirectToInactivityRoute, setTokenAndExpiration],\n )\n\n const logOut = useCallback(async () => {\n setUser(null)\n revokeTokenAndExpire()\n try {\n await requests.post(`${serverURL}${api}/${userSlug}/logout`)\n } catch (e) {\n toast.error(`Logging out failed: ${e.message}`)\n }\n }, [serverURL, api, userSlug, revokeTokenAndExpire])\n\n const refreshPermissions = useCallback(async () => {\n const params = {\n locale: code,\n }\n\n try {\n const request = await requests.get(`${serverURL}${api}/access?${qs.stringify(params)}`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json: Permissions = await request.json()\n setPermissions(json)\n } else {\n throw new Error(`Fetching permissions failed with status code ${request.status}`)\n }\n } catch (e) {\n toast.error(`Refreshing permissions failed: ${e.message}`)\n }\n }, [serverURL, api, i18n, code])\n\n const fetchFullUser = React.useCallback(async () => {\n try {\n const request = await requests.get(`${serverURL}${api}/${userSlug}/me`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json: MeOperationResult = await request.json()\n\n if (json?.user) {\n setUser(json.user)\n\n if (json?.token) {\n setTokenAndExpiration(json)\n }\n } else if (autoLogin && autoLogin.prefillOnly !== true) {\n // auto log-in with the provided autoLogin credentials. This is used in dev mode\n // so you don't have to log in over and over again\n const autoLoginResult = await requests.post(`${serverURL}${api}/${userSlug}/login`, {\n body: JSON.stringify({\n email: autoLogin.email,\n password: autoLogin.password,\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n if (autoLoginResult.status === 200) {\n const autoLoginJson = await autoLoginResult.json()\n setUser(autoLoginJson.user)\n if (autoLoginJson?.token) {\n setTokenAndExpiration(autoLoginJson)\n }\n router.replace(\n typeof searchParams['redirect'] === 'string' ? searchParams['redirect'] : admin,\n )\n } else {\n setUser(null)\n revokeTokenAndExpire()\n }\n } else {\n setUser(null)\n revokeTokenAndExpire()\n }\n }\n } catch (e) {\n toast.error(`Fetching user failed: ${e.message}`)\n }\n }, [\n serverURL,\n api,\n userSlug,\n i18n.language,\n autoLogin,\n setTokenAndExpiration,\n router,\n searchParams,\n admin,\n revokeTokenAndExpire,\n ])\n\n // On mount, get user and set\n useEffect(() => {\n void fetchFullUser()\n }, [fetchFullUser])\n\n // When location changes, refresh cookie\n useEffect(() => {\n if (id) {\n refreshCookie()\n }\n }, [debouncedLocationChange, refreshCookie, id])\n\n useEffect(() => {\n setLastLocationChange(Date.now())\n }, [pathname])\n\n useEffect(() => {\n let reminder: ReturnType<typeof setTimeout>\n const now = Math.round(new Date().getTime() / 1000)\n const remainingTime = typeof tokenExpiration === 'number' ? tokenExpiration - now : 0\n\n if (remainingTime > 0) {\n reminder = setTimeout(\n () => {\n openModal(stayLoggedInModalSlug)\n },\n Math.max(Math.min((remainingTime - 60) * 1000, maxTimeoutTime)),\n )\n }\n\n return () => {\n if (reminder) clearTimeout(reminder)\n }\n }, [tokenExpiration, openModal])\n\n useEffect(() => {\n let forceLogOut: ReturnType<typeof setTimeout>\n const now = Math.round(new Date().getTime() / 1000)\n const remainingTime = typeof tokenExpiration === 'number' ? tokenExpiration - now : 0\n\n if (remainingTime > 0) {\n forceLogOut = setTimeout(\n () => {\n setUser(null)\n revokeTokenAndExpire()\n redirectToInactivityRoute()\n },\n Math.max(Math.min(remainingTime * 1000, maxTimeoutTime), 0),\n )\n }\n\n return () => {\n if (forceLogOut) clearTimeout(forceLogOut)\n }\n }, [tokenExpiration, closeAllModals, i18n, redirectToInactivityRoute, revokeTokenAndExpire])\n\n return (\n <Context.Provider\n value={{\n fetchFullUser,\n logOut,\n permissions,\n refreshCookie,\n refreshCookieAsync,\n refreshPermissions,\n setPermissions,\n setUser,\n token: tokenInMemory,\n user,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nexport const useAuth = <T = ClientUser,>(): AuthContext<T> => useContext(Context) as AuthContext<T>\n"],"names":["facelessUIImport","stayLoggedInModalSlug","usePathname","useRouter","qs","React","createContext","useCallback","useContext","useEffect","useState","toast","useDebounce","useTranslation","requests","useConfig","useSearchParams","Context","maxTimeoutTime","AuthProvider","children","useModal","searchParams","user","setUser","tokenInMemory","setTokenInMemory","tokenExpiration","setTokenExpiration","pathname","router","code","config","admin","autoLogin","inactivityRoute","logoutInactivityRoute","userSlug","routes","api","serverURL","permissions","setPermissions","i18n","closeAllModals","openModal","lastLocationChange","setLastLocationChange","debouncedLocationChange","id","redirectToInactivityRoute","window","location","startsWith","redirectParam","encodeURIComponent","replace","revokeTokenAndExpire","undefined","setTokenAndExpiration","json","token","refreshedToken","exp","refreshCookie","forceRefresh","now","Math","round","Date","getTime","remainingTime","setTimeout","request","post","headers","language","status","e","error","message","refreshCookieAsync","skipSetUser","logOut","refreshPermissions","params","locale","get","stringify","Error","fetchFullUser","prefillOnly","autoLoginResult","body","JSON","email","password","autoLoginJson","reminder","max","min","clearTimeout","forceLogOut","Provider","value","useAuth"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../src/providers/Auth/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientUser, Permissions } from 'payload/auth'\nimport type { MeOperationResult } from 'payload/types'\n\nimport * as facelessUIImport from '@faceless-ui/modal'\nimport { usePathname, useRouter } from 'next/navigation.js'\nimport qs from 'qs'\nimport React, { createContext, useCallback, useContext, useEffect, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nimport { stayLoggedInModalSlug } from '../../elements/StayLoggedIn/index.js'\nimport { useDebounce } from '../../hooks/useDebounce.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { useConfig } from '../Config/index.js'\nimport { useSearchParams } from '../SearchParams/index.js'\n\nexport type AuthContext<T = ClientUser> = {\n fetchFullUser: () => Promise<void>\n logOut: () => void\n permissions?: Permissions\n refreshCookie: (forceRefresh?: boolean) => void\n refreshCookieAsync: () => Promise<ClientUser>\n refreshPermissions: () => Promise<void>\n setPermissions: (permissions: Permissions) => void\n setUser: (user: T) => void\n token?: string\n user?: T | null\n}\n\nconst Context = createContext({} as AuthContext)\n\nconst maxTimeoutTime = 2147483647\n\nexport const AuthProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const { useModal } = facelessUIImport\n\n const { searchParams } = useSearchParams()\n const [user, setUser] = useState<ClientUser | null>()\n const [tokenInMemory, setTokenInMemory] = useState<string>()\n const [tokenExpiration, setTokenExpiration] = useState<number>()\n const pathname = usePathname()\n const router = useRouter()\n // const { code } = useLocale()\n const code = 'en' // TODO: re-enable i18n asap\n\n const config = useConfig()\n\n const {\n admin: {\n autoLogin,\n routes: { inactivity: logoutInactivityRoute },\n routes: { login: loginRoute },\n user: userSlug,\n },\n routes: { admin, api },\n serverURL,\n } = config\n\n const [permissions, setPermissions] = useState<Permissions>()\n\n const { i18n } = useTranslation()\n const { closeAllModals, openModal } = useModal()\n const [lastLocationChange, setLastLocationChange] = useState(0)\n const debouncedLocationChange = useDebounce(lastLocationChange, 10000)\n\n const id = user?.id\n\n const redirectToInactivityRoute = useCallback(() => {\n if (window.location.pathname.startsWith(admin)) {\n const redirectParam = `?redirect=${encodeURIComponent(window.location.pathname)}`\n router.replace(`${admin}${logoutInactivityRoute}${redirectParam}`)\n } else {\n router.replace(`${admin}${logoutInactivityRoute}`)\n }\n closeAllModals()\n }, [router, admin, logoutInactivityRoute, closeAllModals])\n\n const revokeTokenAndExpire = useCallback(() => {\n setTokenInMemory(undefined)\n setTokenExpiration(undefined)\n }, [])\n\n const setTokenAndExpiration = useCallback(\n (json) => {\n const token = json?.token || json?.refreshedToken\n if (token && json?.exp) {\n setTokenInMemory(token)\n setTokenExpiration(json.exp)\n } else {\n revokeTokenAndExpire()\n }\n },\n [revokeTokenAndExpire],\n )\n\n const refreshCookie = useCallback(\n (forceRefresh?: boolean) => {\n const now = Math.round(new Date().getTime() / 1000)\n const remainingTime = (typeof tokenExpiration === 'number' ? tokenExpiration : 0) - now\n\n if (forceRefresh || (tokenExpiration && remainingTime < 120)) {\n setTimeout(async () => {\n try {\n const request = await requests.post(`${serverURL}${api}/${userSlug}/refresh-token`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json = await request.json()\n setUser(json.user)\n\n setTokenAndExpiration(json)\n } else {\n setUser(null)\n redirectToInactivityRoute()\n }\n } catch (e) {\n toast.error(e.message)\n }\n }, 1000)\n }\n },\n [\n tokenExpiration,\n serverURL,\n api,\n userSlug,\n i18n,\n redirectToInactivityRoute,\n setTokenAndExpiration,\n ],\n )\n\n const refreshCookieAsync = useCallback(\n async (skipSetUser?: boolean): Promise<ClientUser> => {\n try {\n const request = await requests.post(`${serverURL}${api}/${userSlug}/refresh-token`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json = await request.json()\n if (!skipSetUser) {\n setUser(json.user)\n setTokenAndExpiration(json)\n }\n return json.user\n }\n\n setUser(null)\n redirectToInactivityRoute()\n return null\n } catch (e) {\n toast.error(`Refreshing token failed: ${e.message}`)\n return null\n }\n },\n [serverURL, api, userSlug, i18n, redirectToInactivityRoute, setTokenAndExpiration],\n )\n\n const logOut = useCallback(async () => {\n setUser(null)\n revokeTokenAndExpire()\n try {\n await requests.post(`${serverURL}${api}/${userSlug}/logout`)\n } catch (e) {\n toast.error(`Logging out failed: ${e.message}`)\n }\n }, [serverURL, api, userSlug, revokeTokenAndExpire])\n\n const refreshPermissions = useCallback(async () => {\n const params = {\n locale: code,\n }\n\n try {\n const request = await requests.get(`${serverURL}${api}/access?${qs.stringify(params)}`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json: Permissions = await request.json()\n setPermissions(json)\n } else {\n throw new Error(`Fetching permissions failed with status code ${request.status}`)\n }\n } catch (e) {\n toast.error(`Refreshing permissions failed: ${e.message}`)\n }\n }, [serverURL, api, i18n, code])\n\n const fetchFullUser = React.useCallback(async () => {\n try {\n const request = await requests.get(`${serverURL}${api}/${userSlug}/me`, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (request.status === 200) {\n const json: MeOperationResult = await request.json()\n\n if (json?.user) {\n setUser(json.user)\n\n if (json?.token) {\n setTokenAndExpiration(json)\n }\n } else if (autoLogin && autoLogin.prefillOnly !== true) {\n // auto log-in with the provided autoLogin credentials. This is used in dev mode\n // so you don't have to log in over and over again\n const autoLoginResult = await requests.post(\n `${serverURL}${api}/${userSlug}${loginRoute}`,\n {\n body: JSON.stringify({\n email: autoLogin.email,\n password: autoLogin.password,\n }),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n },\n )\n if (autoLoginResult.status === 200) {\n const autoLoginJson = await autoLoginResult.json()\n setUser(autoLoginJson.user)\n if (autoLoginJson?.token) {\n setTokenAndExpiration(autoLoginJson)\n }\n router.replace(\n typeof searchParams['redirect'] === 'string' ? searchParams['redirect'] : admin,\n )\n } else {\n setUser(null)\n revokeTokenAndExpire()\n }\n } else {\n setUser(null)\n revokeTokenAndExpire()\n }\n }\n } catch (e) {\n toast.error(`Fetching user failed: ${e.message}`)\n }\n }, [\n serverURL,\n api,\n userSlug,\n i18n.language,\n autoLogin,\n setTokenAndExpiration,\n router,\n searchParams,\n admin,\n revokeTokenAndExpire,\n loginRoute,\n ])\n\n // On mount, get user and set\n useEffect(() => {\n void fetchFullUser()\n }, [fetchFullUser])\n\n // When location changes, refresh cookie\n useEffect(() => {\n if (id) {\n refreshCookie()\n }\n }, [debouncedLocationChange, refreshCookie, id])\n\n useEffect(() => {\n setLastLocationChange(Date.now())\n }, [pathname])\n\n useEffect(() => {\n let reminder: ReturnType<typeof setTimeout>\n const now = Math.round(new Date().getTime() / 1000)\n const remainingTime = typeof tokenExpiration === 'number' ? tokenExpiration - now : 0\n\n if (remainingTime > 0) {\n reminder = setTimeout(\n () => {\n openModal(stayLoggedInModalSlug)\n },\n Math.max(Math.min((remainingTime - 60) * 1000, maxTimeoutTime)),\n )\n }\n\n return () => {\n if (reminder) clearTimeout(reminder)\n }\n }, [tokenExpiration, openModal])\n\n useEffect(() => {\n let forceLogOut: ReturnType<typeof setTimeout>\n const now = Math.round(new Date().getTime() / 1000)\n const remainingTime = typeof tokenExpiration === 'number' ? tokenExpiration - now : 0\n\n if (remainingTime > 0) {\n forceLogOut = setTimeout(\n () => {\n setUser(null)\n revokeTokenAndExpire()\n redirectToInactivityRoute()\n },\n Math.max(Math.min(remainingTime * 1000, maxTimeoutTime), 0),\n )\n }\n\n return () => {\n if (forceLogOut) clearTimeout(forceLogOut)\n }\n }, [tokenExpiration, closeAllModals, i18n, redirectToInactivityRoute, revokeTokenAndExpire])\n\n return (\n <Context.Provider\n value={{\n fetchFullUser,\n logOut,\n permissions,\n refreshCookie,\n refreshCookieAsync,\n refreshPermissions,\n setPermissions,\n setUser,\n token: tokenInMemory,\n user,\n }}\n >\n {children}\n </Context.Provider>\n )\n}\n\nexport const useAuth = <T = ClientUser,>(): AuthContext<T> => useContext(Context) as AuthContext<T>\n"],"names":["facelessUIImport","usePathname","useRouter","qs","React","createContext","useCallback","useContext","useEffect","useState","toast","stayLoggedInModalSlug","useDebounce","useTranslation","requests","useConfig","useSearchParams","Context","maxTimeoutTime","AuthProvider","children","useModal","searchParams","user","setUser","tokenInMemory","setTokenInMemory","tokenExpiration","setTokenExpiration","pathname","router","code","config","admin","autoLogin","routes","inactivity","logoutInactivityRoute","login","loginRoute","userSlug","api","serverURL","permissions","setPermissions","i18n","closeAllModals","openModal","lastLocationChange","setLastLocationChange","debouncedLocationChange","id","redirectToInactivityRoute","window","location","startsWith","redirectParam","encodeURIComponent","replace","revokeTokenAndExpire","undefined","setTokenAndExpiration","json","token","refreshedToken","exp","refreshCookie","forceRefresh","now","Math","round","Date","getTime","remainingTime","setTimeout","request","post","headers","language","status","e","error","message","refreshCookieAsync","skipSetUser","logOut","refreshPermissions","params","locale","get","stringify","Error","fetchFullUser","prefillOnly","autoLoginResult","body","JSON","email","password","autoLoginJson","reminder","max","min","clearTimeout","forceLogOut","Provider","value","useAuth"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAIA,YAAYA,sBAAsB,qBAAoB;AACtD,SAASC,WAAW,EAAEC,SAAS,QAAQ,qBAAoB;AAC3D,OAAOC,QAAQ,KAAI;AACnB,OAAOC,SAASC,aAAa,EAAEC,WAAW,EAAEC,UAAU,EAAEC,SAAS,EAAEC,QAAQ,QAAQ,QAAO;AAC1F,SAASC,KAAK,QAAQ,iBAAgB;AAEtC,SAASC,qBAAqB,QAAQ,uCAAsC;AAC5E,SAASC,WAAW,QAAQ,6BAA4B;AACxD,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,QAAQ,QAAQ,yBAAwB;AACjD,SAASC,SAAS,QAAQ,qBAAoB;AAC9C,SAASC,eAAe,QAAQ,2BAA0B;AAe1D,MAAMC,wBAAUZ,cAAc,CAAC;AAE/B,MAAMa,iBAAiB;AAEvB,OAAO,MAAMC,eAAwD,CAAC,EAAEC,QAAQ,EAAE;IAChF,MAAM,EAAEC,QAAQ,EAAE,GAAGrB;IAErB,MAAM,EAAEsB,YAAY,EAAE,GAAGN;IACzB,MAAM,CAACO,MAAMC,QAAQ,GAAGf;IACxB,MAAM,CAACgB,eAAeC,iBAAiB,GAAGjB;IAC1C,MAAM,CAACkB,iBAAiBC,mBAAmB,GAAGnB;IAC9C,MAAMoB,WAAW5B;IACjB,MAAM6B,SAAS5B;IACf,+BAA+B;IAC/B,MAAM6B,OAAO,KAAK,4BAA4B;;IAE9C,MAAMC,SAASjB;IAEf,MAAM,EACJkB,OAAO,EACLC,SAAS,EACTC,QAAQ,EAAEC,YAAYC,qBAAqB,EAAE,EAC7CF,QAAQ,EAAEG,OAAOC,UAAU,EAAE,EAC7BhB,MAAMiB,QAAQ,EACf,EACDL,QAAQ,EAAEF,KAAK,EAAEQ,GAAG,EAAE,EACtBC,SAAS,EACV,GAAGV;IAEJ,MAAM,CAACW,aAAaC,eAAe,GAAGnC;IAEtC,MAAM,EAAEoC,IAAI,EAAE,GAAGhC;IACjB,MAAM,EAAEiC,cAAc,EAAEC,SAAS,EAAE,GAAG1B;IACtC,MAAM,CAAC2B,oBAAoBC,sBAAsB,GAAGxC,SAAS;IAC7D,MAAMyC,0BAA0BtC,YAAYoC,oBAAoB;IAEhE,MAAMG,KAAK5B,MAAM4B;IAEjB,MAAMC,4BAA4B9C,YAAY;QAC5C,IAAI+C,OAAOC,QAAQ,CAACzB,QAAQ,CAAC0B,UAAU,CAACtB,QAAQ;YAC9C,MAAMuB,gBAAgB,CAAC,UAAU,EAAEC,mBAAmBJ,OAAOC,QAAQ,CAACzB,QAAQ,EAAE,CAAC;YACjFC,OAAO4B,OAAO,CAAC,CAAC,EAAEzB,MAAM,EAAEI,sBAAsB,EAAEmB,cAAc,CAAC;QACnE,OAAO;YACL1B,OAAO4B,OAAO,CAAC,CAAC,EAAEzB,MAAM,EAAEI,sBAAsB,CAAC;QACnD;QACAS;IACF,GAAG;QAAChB;QAAQG;QAAOI;QAAuBS;KAAe;IAEzD,MAAMa,uBAAuBrD,YAAY;QACvCoB,iBAAiBkC;QACjBhC,mBAAmBgC;IACrB,GAAG,EAAE;IAEL,MAAMC,wBAAwBvD,YAC5B,CAACwD;QACC,MAAMC,QAAQD,MAAMC,SAASD,MAAME;QACnC,IAAID,SAASD,MAAMG,KAAK;YACtBvC,iBAAiBqC;YACjBnC,mBAAmBkC,KAAKG,GAAG;QAC7B,OAAO;YACLN;QACF;IACF,GACA;QAACA;KAAqB;IAGxB,MAAMO,gBAAgB5D,YACpB,CAAC6D;QACC,MAAMC,MAAMC,KAAKC,KAAK,CAAC,IAAIC,OAAOC,OAAO,KAAK;QAC9C,MAAMC,gBAAgB,AAAC,CAAA,OAAO9C,oBAAoB,WAAWA,kBAAkB,CAAA,IAAKyC;QAEpF,IAAID,gBAAiBxC,mBAAmB8C,gBAAgB,KAAM;YAC5DC,WAAW;gBACT,IAAI;oBACF,MAAMC,UAAU,MAAM7D,SAAS8D,IAAI,CAAC,CAAC,EAAElC,UAAU,EAAED,IAAI,CAAC,EAAED,SAAS,cAAc,CAAC,EAAE;wBAClFqC,SAAS;4BACP,mBAAmBhC,KAAKiC,QAAQ;wBAClC;oBACF;oBAEA,IAAIH,QAAQI,MAAM,KAAK,KAAK;wBAC1B,MAAMjB,OAAO,MAAMa,QAAQb,IAAI;wBAC/BtC,QAAQsC,KAAKvC,IAAI;wBAEjBsC,sBAAsBC;oBACxB,OAAO;wBACLtC,QAAQ;wBACR4B;oBACF;gBACF,EAAE,OAAO4B,GAAG;oBACVtE,MAAMuE,KAAK,CAACD,EAAEE,OAAO;gBACvB;YACF,GAAG;QACL;IACF,GACA;QACEvD;QACAe;QACAD;QACAD;QACAK;QACAO;QACAS;KACD;IAGH,MAAMsB,qBAAqB7E,YACzB,OAAO8E;QACL,IAAI;YACF,MAAMT,UAAU,MAAM7D,SAAS8D,IAAI,CAAC,CAAC,EAAElC,UAAU,EAAED,IAAI,CAAC,EAAED,SAAS,cAAc,CAAC,EAAE;gBAClFqC,SAAS;oBACP,mBAAmBhC,KAAKiC,QAAQ;gBAClC;YACF;YAEA,IAAIH,QAAQI,MAAM,KAAK,KAAK;gBAC1B,MAAMjB,OAAO,MAAMa,QAAQb,IAAI;gBAC/B,IAAI,CAACsB,aAAa;oBAChB5D,QAAQsC,KAAKvC,IAAI;oBACjBsC,sBAAsBC;gBACxB;gBACA,OAAOA,KAAKvC,IAAI;YAClB;YAEAC,QAAQ;YACR4B;YACA,OAAO;QACT,EAAE,OAAO4B,GAAG;YACVtE,MAAMuE,KAAK,CAAC,CAAC,yBAAyB,EAAED,EAAEE,OAAO,CAAC,CAAC;YACnD,OAAO;QACT;IACF,GACA;QAACxC;QAAWD;QAAKD;QAAUK;QAAMO;QAA2BS;KAAsB;IAGpF,MAAMwB,SAAS/E,YAAY;QACzBkB,QAAQ;QACRmC;QACA,IAAI;YACF,MAAM7C,SAAS8D,IAAI,CAAC,CAAC,EAAElC,UAAU,EAAED,IAAI,CAAC,EAAED,SAAS,OAAO,CAAC;QAC7D,EAAE,OAAOwC,GAAG;YACVtE,MAAMuE,KAAK,CAAC,CAAC,oBAAoB,EAAED,EAAEE,OAAO,CAAC,CAAC;QAChD;IACF,GAAG;QAACxC;QAAWD;QAAKD;QAAUmB;KAAqB;IAEnD,MAAM2B,qBAAqBhF,YAAY;QACrC,MAAMiF,SAAS;YACbC,QAAQzD;QACV;QAEA,IAAI;YACF,MAAM4C,UAAU,MAAM7D,SAAS2E,GAAG,CAAC,CAAC,EAAE/C,UAAU,EAAED,IAAI,QAAQ,EAAEtC,GAAGuF,SAAS,CAACH,QAAQ,CAAC,EAAE;gBACtFV,SAAS;oBACP,mBAAmBhC,KAAKiC,QAAQ;gBAClC;YACF;YAEA,IAAIH,QAAQI,MAAM,KAAK,KAAK;gBAC1B,MAAMjB,OAAoB,MAAMa,QAAQb,IAAI;gBAC5ClB,eAAekB;YACjB,OAAO;gBACL,MAAM,IAAI6B,MAAM,CAAC,6CAA6C,EAAEhB,QAAQI,MAAM,CAAC,CAAC;YAClF;QACF,EAAE,OAAOC,GAAG;YACVtE,MAAMuE,KAAK,CAAC,CAAC,+BAA+B,EAAED,EAAEE,OAAO,CAAC,CAAC;QAC3D;IACF,GAAG;QAACxC;QAAWD;QAAKI;QAAMd;KAAK;IAE/B,MAAM6D,gBAAgBxF,MAAME,WAAW,CAAC;QACtC,IAAI;YACF,MAAMqE,UAAU,MAAM7D,SAAS2E,GAAG,CAAC,CAAC,EAAE/C,UAAU,EAAED,IAAI,CAAC,EAAED,SAAS,GAAG,CAAC,EAAE;gBACtEqC,SAAS;oBACP,mBAAmBhC,KAAKiC,QAAQ;gBAClC;YACF;YAEA,IAAIH,QAAQI,MAAM,KAAK,KAAK;gBAC1B,MAAMjB,OAA0B,MAAMa,QAAQb,IAAI;gBAElD,IAAIA,MAAMvC,MAAM;oBACdC,QAAQsC,KAAKvC,IAAI;oBAEjB,IAAIuC,MAAMC,OAAO;wBACfF,sBAAsBC;oBACxB;gBACF,OAAO,IAAI5B,aAAaA,UAAU2D,WAAW,KAAK,MAAM;oBACtD,gFAAgF;oBAChF,kDAAkD;oBAClD,MAAMC,kBAAkB,MAAMhF,SAAS8D,IAAI,CACzC,CAAC,EAAElC,UAAU,EAAED,IAAI,CAAC,EAAED,SAAS,EAAED,WAAW,CAAC,EAC7C;wBACEwD,MAAMC,KAAKN,SAAS,CAAC;4BACnBO,OAAO/D,UAAU+D,KAAK;4BACtBC,UAAUhE,UAAUgE,QAAQ;wBAC9B;wBACArB,SAAS;4BACP,mBAAmBhC,KAAKiC,QAAQ;4BAChC,gBAAgB;wBAClB;oBACF;oBAEF,IAAIgB,gBAAgBf,MAAM,KAAK,KAAK;wBAClC,MAAMoB,gBAAgB,MAAML,gBAAgBhC,IAAI;wBAChDtC,QAAQ2E,cAAc5E,IAAI;wBAC1B,IAAI4E,eAAepC,OAAO;4BACxBF,sBAAsBsC;wBACxB;wBACArE,OAAO4B,OAAO,CACZ,OAAOpC,YAAY,CAAC,WAAW,KAAK,WAAWA,YAAY,CAAC,WAAW,GAAGW;oBAE9E,OAAO;wBACLT,QAAQ;wBACRmC;oBACF;gBACF,OAAO;oBACLnC,QAAQ;oBACRmC;gBACF;YACF;QACF,EAAE,OAAOqB,GAAG;YACVtE,MAAMuE,KAAK,CAAC,CAAC,sBAAsB,EAAED,EAAEE,OAAO,CAAC,CAAC;QAClD;IACF,GAAG;QACDxC;QACAD;QACAD;QACAK,KAAKiC,QAAQ;QACb5C;QACA2B;QACA/B;QACAR;QACAW;QACA0B;QACApB;KACD;IAED,6BAA6B;IAC7B/B,UAAU;QACR,KAAKoF;IACP,GAAG;QAACA;KAAc;IAElB,wCAAwC;IACxCpF,UAAU;QACR,IAAI2C,IAAI;YACNe;QACF;IACF,GAAG;QAAChB;QAAyBgB;QAAef;KAAG;IAE/C3C,UAAU;QACRyC,sBAAsBsB,KAAKH,GAAG;IAChC,GAAG;QAACvC;KAAS;IAEbrB,UAAU;QACR,IAAI4F;QACJ,MAAMhC,MAAMC,KAAKC,KAAK,CAAC,IAAIC,OAAOC,OAAO,KAAK;QAC9C,MAAMC,gBAAgB,OAAO9C,oBAAoB,WAAWA,kBAAkByC,MAAM;QAEpF,IAAIK,gBAAgB,GAAG;YACrB2B,WAAW1B,WACT;gBACE3B,UAAUpC;YACZ,GACA0D,KAAKgC,GAAG,CAAChC,KAAKiC,GAAG,CAAC,AAAC7B,CAAAA,gBAAgB,EAAC,IAAK,MAAMvD;QAEnD;QAEA,OAAO;YACL,IAAIkF,UAAUG,aAAaH;QAC7B;IACF,GAAG;QAACzE;QAAiBoB;KAAU;IAE/BvC,UAAU;QACR,IAAIgG;QACJ,MAAMpC,MAAMC,KAAKC,KAAK,CAAC,IAAIC,OAAOC,OAAO,KAAK;QAC9C,MAAMC,gBAAgB,OAAO9C,oBAAoB,WAAWA,kBAAkByC,MAAM;QAEpF,IAAIK,gBAAgB,GAAG;YACrB+B,cAAc9B,WACZ;gBACElD,QAAQ;gBACRmC;gBACAP;YACF,GACAiB,KAAKgC,GAAG,CAAChC,KAAKiC,GAAG,CAAC7B,gBAAgB,MAAMvD,iBAAiB;QAE7D;QAEA,OAAO;YACL,IAAIsF,aAAaD,aAAaC;QAChC;IACF,GAAG;QAAC7E;QAAiBmB;QAAgBD;QAAMO;QAA2BO;KAAqB;IAE3F,qBACE,oBAAC1C,QAAQwF,QAAQ;QACfC,OAAO;YACLd;YACAP;YACA1C;YACAuB;YACAiB;YACAG;YACA1C;YACApB;YACAuC,OAAOtC;YACPF;QACF;OAECH;AAGP,EAAC;AAED,OAAO,MAAMuF,UAAU,IAAuCpG,WAAWU,SAA0B"}
@@ -1,7 +1,8 @@
1
- import type { SanitizedCollectionConfig, SanitizedGlobalConfig, WithServerSideProps as WithServerSidePropsType } from 'payload/types';
1
+ import type { SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload/types';
2
+ import type { WithServerSidePropsPrePopulated } from './index.js';
2
3
  import type { ActionMap } from './types.js';
3
4
  export declare const mapActions: (args: {
4
- WithServerSideProps: WithServerSidePropsType;
5
+ WithServerSideProps: WithServerSidePropsPrePopulated;
5
6
  collectionConfig?: SanitizedCollectionConfig;
6
7
  globalConfig?: SanitizedGlobalConfig;
7
8
  }) => ActionMap;
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/actions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AAItB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,eAAO,MAAM,UAAU,SAAU;IAC/B,mBAAmB,EAAE,uBAAuB,CAAA;IAC5C,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;CACrC,KAAG,SAuCH,CAAA"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/actions.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAIrF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C,eAAO,MAAM,UAAU,SAAU;IAC/B,mBAAmB,EAAE,+BAA+B,CAAA;IACpD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;CACrC,KAAG,SAuCH,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/actions.tsx"],"sourcesContent":["import type {\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport React from 'react'\n\nimport type { ActionMap } from './types.js'\n\nexport const mapActions = (args: {\n WithServerSideProps: WithServerSidePropsType\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n}): ActionMap => {\n const { WithServerSideProps, collectionConfig, globalConfig } = args\n\n const editViews = (collectionConfig || globalConfig)?.admin?.components?.views?.Edit\n\n const listActions =\n typeof collectionConfig?.admin?.components?.views?.List === 'object'\n ? collectionConfig?.admin?.components?.views?.List?.actions\n : undefined\n\n const result: ActionMap = {\n Edit: {},\n List: [],\n }\n\n if (editViews) {\n Object.entries(editViews).forEach(([key, view]) => {\n if (typeof view === 'object' && 'actions' in view) {\n view.actions.forEach((action) => {\n const Action = action\n if (typeof Action === 'function') {\n result.Edit[key] = [...(result[key] || []), <WithServerSideProps Component={Action} />]\n }\n })\n }\n })\n }\n\n if (listActions) {\n listActions.forEach((action) => {\n const Action = action\n if (typeof Action === 'function') {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n result.List = [...result.List, <WithServerSideProps Component={Action} />]\n }\n })\n }\n\n return result\n}\n"],"names":["React","mapActions","args","WithServerSideProps","collectionConfig","globalConfig","editViews","admin","components","views","Edit","listActions","List","actions","undefined","result","Object","entries","forEach","key","view","action","Action","Component"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAMA,OAAOA,WAAW,QAAO;AAIzB,OAAO,MAAMC,aAAa,CAACC;IAKzB,MAAM,EAAEC,mBAAmB,EAAEC,gBAAgB,EAAEC,YAAY,EAAE,GAAGH;IAEhE,MAAMI,YAAaF,CAAAA,oBAAoBC,YAAW,GAAIE,OAAOC,YAAYC,OAAOC;IAEhF,MAAMC,cACJ,OAAOP,kBAAkBG,OAAOC,YAAYC,OAAOG,SAAS,WACxDR,kBAAkBG,OAAOC,YAAYC,OAAOG,MAAMC,UAClDC;IAEN,MAAMC,SAAoB;QACxBL,MAAM,CAAC;QACPE,MAAM,EAAE;IACV;IAEA,IAAIN,WAAW;QACbU,OAAOC,OAAO,CAACX,WAAWY,OAAO,CAAC,CAAC,CAACC,KAAKC,KAAK;YAC5C,IAAI,OAAOA,SAAS,YAAY,aAAaA,MAAM;gBACjDA,KAAKP,OAAO,CAACK,OAAO,CAAC,CAACG;oBACpB,MAAMC,SAASD;oBACf,IAAI,OAAOC,WAAW,YAAY;wBAChCP,OAAOL,IAAI,CAACS,IAAI,GAAG;+BAAKJ,MAAM,CAACI,IAAI,IAAI,EAAE;0CAAG,oBAAChB;gCAAoBoB,WAAWD;;yBAAW;oBACzF;gBACF;YACF;QACF;IACF;IAEA,IAAIX,aAAa;QACfA,YAAYO,OAAO,CAAC,CAACG;YACnB,MAAMC,SAASD;YACf,IAAI,OAAOC,WAAW,YAAY;gBAChC,mEAAmE;gBACnEP,OAAOH,IAAI,GAAG;uBAAIG,OAAOH,IAAI;kCAAE,oBAACT;wBAAoBoB,WAAWD;;iBAAW;YAC5E;QACF;IACF;IAEA,OAAOP;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/actions.tsx"],"sourcesContent":["import type { SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload/types'\n\nimport React from 'react'\n\nimport type { WithServerSidePropsPrePopulated } from './index.js'\nimport type { ActionMap } from './types.js'\n\nexport const mapActions = (args: {\n WithServerSideProps: WithServerSidePropsPrePopulated\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n}): ActionMap => {\n const { WithServerSideProps, collectionConfig, globalConfig } = args\n\n const editViews = (collectionConfig || globalConfig)?.admin?.components?.views?.Edit\n\n const listActions =\n typeof collectionConfig?.admin?.components?.views?.List === 'object'\n ? collectionConfig?.admin?.components?.views?.List?.actions\n : undefined\n\n const result: ActionMap = {\n Edit: {},\n List: [],\n }\n\n if (editViews) {\n Object.entries(editViews).forEach(([key, view]) => {\n if (typeof view === 'object' && 'actions' in view) {\n view.actions.forEach((action) => {\n const Action = action\n if (typeof Action === 'function') {\n result.Edit[key] = [...(result[key] || []), <WithServerSideProps Component={Action} />]\n }\n })\n }\n })\n }\n\n if (listActions) {\n listActions.forEach((action) => {\n const Action = action\n if (typeof Action === 'function') {\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n result.List = [...result.List, <WithServerSideProps Component={Action} />]\n }\n })\n }\n\n return result\n}\n"],"names":["React","mapActions","args","WithServerSideProps","collectionConfig","globalConfig","editViews","admin","components","views","Edit","listActions","List","actions","undefined","result","Object","entries","forEach","key","view","action","Action","Component"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,OAAOA,WAAW,QAAO;AAKzB,OAAO,MAAMC,aAAa,CAACC;IAKzB,MAAM,EAAEC,mBAAmB,EAAEC,gBAAgB,EAAEC,YAAY,EAAE,GAAGH;IAEhE,MAAMI,YAAaF,CAAAA,oBAAoBC,YAAW,GAAIE,OAAOC,YAAYC,OAAOC;IAEhF,MAAMC,cACJ,OAAOP,kBAAkBG,OAAOC,YAAYC,OAAOG,SAAS,WACxDR,kBAAkBG,OAAOC,YAAYC,OAAOG,MAAMC,UAClDC;IAEN,MAAMC,SAAoB;QACxBL,MAAM,CAAC;QACPE,MAAM,EAAE;IACV;IAEA,IAAIN,WAAW;QACbU,OAAOC,OAAO,CAACX,WAAWY,OAAO,CAAC,CAAC,CAACC,KAAKC,KAAK;YAC5C,IAAI,OAAOA,SAAS,YAAY,aAAaA,MAAM;gBACjDA,KAAKP,OAAO,CAACK,OAAO,CAAC,CAACG;oBACpB,MAAMC,SAASD;oBACf,IAAI,OAAOC,WAAW,YAAY;wBAChCP,OAAOL,IAAI,CAACS,IAAI,GAAG;+BAAKJ,MAAM,CAACI,IAAI,IAAI,EAAE;0CAAG,oBAAChB;gCAAoBoB,WAAWD;;yBAAW;oBACzF;gBACF;YACF;QACF;IACF;IAEA,IAAIX,aAAa;QACfA,YAAYO,OAAO,CAAC,CAACG;YACnB,MAAMC,SAASD;YACf,IAAI,OAAOC,WAAW,YAAY;gBAChC,mEAAmE;gBACnEP,OAAOH,IAAI,GAAG;uBAAIG,OAAOH,IAAI;kCAAE,oBAACT;wBAAoBoB,WAAWD;;iBAAW;YAC5E;QACF;IACF;IAEA,OAAOP;AACT,EAAC"}
@@ -1,11 +1,12 @@
1
1
  import type { I18nClient } from '@payloadcms/translations';
2
- import type { AdminViewProps, EditViewProps, SanitizedCollectionConfig, SanitizedConfig, WithServerSideProps as WithServerSidePropsType } from 'payload/types';
2
+ import type { AdminViewProps, EditViewProps, SanitizedCollectionConfig, SanitizedConfig } from 'payload/types';
3
3
  import React from 'react';
4
+ import type { WithServerSidePropsPrePopulated } from './index.js';
4
5
  import type { CollectionComponentMap } from './types.js';
5
6
  export declare const mapCollections: (args: {
6
7
  DefaultEditView: React.FC<EditViewProps>;
7
8
  DefaultListView: React.FC<AdminViewProps>;
8
- WithServerSideProps: WithServerSidePropsType;
9
+ WithServerSideProps: WithServerSidePropsPrePopulated;
9
10
  collections: SanitizedCollectionConfig[];
10
11
  config: SanitizedConfig;
11
12
  i18n: I18nClient;
@@ -1 +1 @@
1
- {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/collections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAE1D,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,yBAAyB,EACzB,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AAGtB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAKxD,eAAO,MAAM,cAAc,SAAU;IACnC,eAAe,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,CAAA;IACxC,eAAe,EAAE,MAAM,EAAE,CAAC,cAAc,CAAC,CAAA;IACzC,mBAAmB,EAAE,uBAAuB,CAAA;IAC5C,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,KAAG;IACF,CAAC,GAAG,EAAE,yBAAyB,CAAC,MAAM,CAAC,GAAG,sBAAsB,CAAA;CAiKjE,CAAA"}
1
+ {"version":3,"file":"collections.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/collections.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,yBAAyB,EACzB,eAAe,EAChB,MAAM,eAAe,CAAA;AAGtB,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAMxD,eAAO,MAAM,cAAc,SAAU;IACnC,eAAe,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,CAAA;IACxC,eAAe,EAAE,MAAM,EAAE,CAAC,cAAc,CAAC,CAAA;IACzC,mBAAmB,EAAE,+BAA+B,CAAA;IACpD,WAAW,EAAE,yBAAyB,EAAE,CAAA;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,KAAG;IACF,CAAC,GAAG,EAAE,yBAAyB,CAAC,MAAM,CAAC,GAAG,sBAAsB,CAAA;CAkKjE,CAAA"}
@@ -1,5 +1,6 @@
1
- import { ViewDescription } from '@payloadcms/ui/elements/ViewDescription';
1
+ import { isReactComponentOrFunction } from 'payload/utilities';
2
2
  import React from 'react';
3
+ import { ViewDescription } from '../../../elements/ViewDescription/index.js';
3
4
  import { mapActions } from './actions.js';
4
5
  import { mapFields } from './fields.js';
5
6
  export const mapCollections = (args)=>{
@@ -15,8 +16,8 @@ export const mapCollections = (args)=>{
15
16
  }
16
17
  const editViewFromConfig = collectionConfig?.admin?.components?.views?.Edit;
17
18
  const listViewFromConfig = collectionConfig?.admin?.components?.views?.List;
18
- const CustomEditView = typeof editViewFromConfig === 'function' ? editViewFromConfig : typeof editViewFromConfig === 'object' && typeof editViewFromConfig.Default === 'function' ? editViewFromConfig.Default : typeof editViewFromConfig?.Default === 'object' && 'Component' in editViewFromConfig.Default && typeof editViewFromConfig.Default.Component === 'function' ? editViewFromConfig.Default.Component : undefined;
19
- const CustomListView = typeof listViewFromConfig === 'function' ? listViewFromConfig : typeof listViewFromConfig === 'object' && typeof listViewFromConfig.Component === 'function' ? listViewFromConfig.Component : undefined;
19
+ const CustomEditView = typeof editViewFromConfig === 'function' ? editViewFromConfig : typeof editViewFromConfig === 'object' && isReactComponentOrFunction(editViewFromConfig.Default) ? editViewFromConfig.Default : typeof editViewFromConfig?.Default === 'object' && 'Component' in editViewFromConfig.Default && isReactComponentOrFunction(editViewFromConfig.Default.Component) ? editViewFromConfig.Default.Component : undefined;
20
+ const CustomListView = typeof listViewFromConfig === 'function' ? listViewFromConfig : typeof listViewFromConfig === 'object' && isReactComponentOrFunction(listViewFromConfig.Component) ? listViewFromConfig.Component : undefined;
20
21
  const Edit = CustomEditView || DefaultEditView;
21
22
  const List = CustomListView || DefaultListView;
22
23
  const SaveButtonComponent = collectionConfig?.admin?.components?.edit?.SaveButton;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/collections.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ViewDescriptionProps } from '@payloadcms/ui/elements/ViewDescription'\nimport type {\n AdminViewProps,\n EditViewProps,\n SanitizedCollectionConfig,\n SanitizedConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport { ViewDescription } from '@payloadcms/ui/elements/ViewDescription'\nimport React from 'react'\n\nimport type { CollectionComponentMap } from './types.js'\n\nimport { mapActions } from './actions.js'\nimport { mapFields } from './fields.js'\n\nexport const mapCollections = (args: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n WithServerSideProps: WithServerSidePropsType\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n i18n: I18nClient\n readOnly?: boolean\n}): {\n [key: SanitizedCollectionConfig['slug']]: CollectionComponentMap\n} => {\n const {\n DefaultEditView,\n DefaultListView,\n WithServerSideProps,\n collections,\n config,\n i18n,\n i18n: { t },\n readOnly: readOnlyOverride,\n } = args\n\n return collections.reduce((acc, collectionConfig) => {\n const { slug, fields } = collectionConfig\n\n const internalCollections = ['payload-preferences', 'payload-migrations']\n\n if (internalCollections.includes(slug)) {\n return acc\n }\n\n const editViewFromConfig = collectionConfig?.admin?.components?.views?.Edit\n\n const listViewFromConfig = collectionConfig?.admin?.components?.views?.List\n\n const CustomEditView =\n typeof editViewFromConfig === 'function'\n ? editViewFromConfig\n : typeof editViewFromConfig === 'object' && typeof editViewFromConfig.Default === 'function'\n ? editViewFromConfig.Default\n : typeof editViewFromConfig?.Default === 'object' &&\n 'Component' in editViewFromConfig.Default &&\n typeof editViewFromConfig.Default.Component === 'function'\n ? (editViewFromConfig.Default.Component as React.FC<EditViewProps>)\n : undefined\n\n const CustomListView =\n typeof listViewFromConfig === 'function'\n ? listViewFromConfig\n : typeof listViewFromConfig === 'object' &&\n typeof listViewFromConfig.Component === 'function'\n ? listViewFromConfig.Component\n : undefined\n\n const Edit = (CustomEditView as React.FC<EditViewProps>) || DefaultEditView\n\n const List = CustomListView || DefaultListView\n\n const SaveButtonComponent = collectionConfig?.admin?.components?.edit?.SaveButton\n\n const SaveButton = SaveButtonComponent ? (\n <WithServerSideProps Component={SaveButtonComponent} />\n ) : undefined\n\n const SaveDraftButtonComponent = collectionConfig?.admin?.components?.edit?.SaveDraftButton\n\n const SaveDraftButton = SaveDraftButtonComponent ? (\n <WithServerSideProps Component={SaveDraftButtonComponent} />\n ) : undefined\n\n const PreviewButtonComponent = collectionConfig?.admin?.components?.edit?.PreviewButton\n\n const PreviewButton = PreviewButtonComponent ? (\n <WithServerSideProps Component={PreviewButtonComponent} />\n ) : undefined\n\n const PublishButtonComponent = collectionConfig?.admin?.components?.edit?.PublishButton\n\n const PublishButton = PublishButtonComponent ? (\n <WithServerSideProps Component={PublishButtonComponent} />\n ) : undefined\n\n const beforeList = collectionConfig?.admin?.components?.BeforeList\n\n const BeforeList =\n (beforeList &&\n Array.isArray(beforeList) &&\n beforeList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const beforeListTable = collectionConfig?.admin?.components?.BeforeListTable\n\n const BeforeListTable =\n (beforeListTable &&\n Array.isArray(beforeListTable) &&\n beforeListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterList = collectionConfig?.admin?.components?.AfterList\n\n const AfterList =\n (afterList &&\n Array.isArray(afterList) &&\n afterList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterListTable = collectionConfig?.admin?.components?.AfterListTable\n\n const AfterListTable =\n (afterListTable &&\n Array.isArray(afterListTable) &&\n afterListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n let description = undefined\n if (collectionConfig.admin && 'description' in collectionConfig.admin) {\n if (\n typeof collectionConfig.admin?.description === 'string' ||\n typeof collectionConfig.admin?.description === 'object'\n ) {\n description = collectionConfig.admin.description\n } else if (typeof collectionConfig.admin?.description === 'function') {\n description = collectionConfig.admin?.description({ t })\n }\n }\n\n const descriptionProps: ViewDescriptionProps = {\n description,\n }\n\n const DescriptionComponent =\n collectionConfig.admin?.components?.edit?.Description ||\n (description ? ViewDescription : undefined)\n\n const Description =\n DescriptionComponent !== undefined ? (\n <WithServerSideProps Component={DescriptionComponent} {...(descriptionProps || {})} />\n ) : undefined\n\n const componentMap: CollectionComponentMap = {\n AfterList,\n AfterListTable,\n BeforeList,\n BeforeListTable,\n Description,\n Edit: <Edit collectionSlug={collectionConfig.slug} />,\n List: <List collectionSlug={collectionConfig.slug} />,\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n actionsMap: mapActions({\n WithServerSideProps,\n collectionConfig,\n }),\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: fields,\n i18n,\n readOnly: readOnlyOverride,\n }),\n isPreviewEnabled: !!collectionConfig?.admin?.preview,\n }\n\n return {\n ...acc,\n [slug]: componentMap,\n }\n }, {})\n}\n"],"names":["ViewDescription","React","mapActions","mapFields","mapCollections","args","DefaultEditView","DefaultListView","WithServerSideProps","collections","config","i18n","t","readOnly","readOnlyOverride","reduce","acc","collectionConfig","slug","fields","internalCollections","includes","editViewFromConfig","admin","components","views","Edit","listViewFromConfig","List","CustomEditView","Default","Component","undefined","CustomListView","SaveButtonComponent","edit","SaveButton","SaveDraftButtonComponent","SaveDraftButton","PreviewButtonComponent","PreviewButton","PublishButtonComponent","PublishButton","beforeList","BeforeList","Array","isArray","map","beforeListTable","BeforeListTable","afterList","AfterList","afterListTable","AfterListTable","description","descriptionProps","DescriptionComponent","Description","componentMap","collectionSlug","actionsMap","fieldMap","fieldSchema","isPreviewEnabled","preview"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/collections.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n AdminViewProps,\n EditViewProps,\n SanitizedCollectionConfig,\n SanitizedConfig,\n} from 'payload/types'\n\nimport { isReactComponentOrFunction } from 'payload/utilities'\nimport React from 'react'\n\nimport type { ViewDescriptionProps } from '../../../elements/ViewDescription/index.js'\nimport type { WithServerSidePropsPrePopulated } from './index.js'\nimport type { CollectionComponentMap } from './types.js'\n\nimport { ViewDescription } from '../../../elements/ViewDescription/index.js'\nimport { mapActions } from './actions.js'\nimport { mapFields } from './fields.js'\n\nexport const mapCollections = (args: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n WithServerSideProps: WithServerSidePropsPrePopulated\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n i18n: I18nClient\n readOnly?: boolean\n}): {\n [key: SanitizedCollectionConfig['slug']]: CollectionComponentMap\n} => {\n const {\n DefaultEditView,\n DefaultListView,\n WithServerSideProps,\n collections,\n config,\n i18n,\n i18n: { t },\n readOnly: readOnlyOverride,\n } = args\n\n return collections.reduce((acc, collectionConfig) => {\n const { slug, fields } = collectionConfig\n\n const internalCollections = ['payload-preferences', 'payload-migrations']\n\n if (internalCollections.includes(slug)) {\n return acc\n }\n\n const editViewFromConfig = collectionConfig?.admin?.components?.views?.Edit\n\n const listViewFromConfig = collectionConfig?.admin?.components?.views?.List\n\n const CustomEditView =\n typeof editViewFromConfig === 'function'\n ? editViewFromConfig\n : typeof editViewFromConfig === 'object' &&\n isReactComponentOrFunction(editViewFromConfig.Default)\n ? editViewFromConfig.Default\n : typeof editViewFromConfig?.Default === 'object' &&\n 'Component' in editViewFromConfig.Default &&\n isReactComponentOrFunction(editViewFromConfig.Default.Component)\n ? (editViewFromConfig.Default.Component as React.FC<EditViewProps>)\n : undefined\n\n const CustomListView =\n typeof listViewFromConfig === 'function'\n ? listViewFromConfig\n : typeof listViewFromConfig === 'object' &&\n isReactComponentOrFunction(listViewFromConfig.Component)\n ? listViewFromConfig.Component\n : undefined\n\n const Edit = (CustomEditView as React.FC<EditViewProps>) || DefaultEditView\n\n const List = CustomListView || DefaultListView\n\n const SaveButtonComponent = collectionConfig?.admin?.components?.edit?.SaveButton\n\n const SaveButton = SaveButtonComponent ? (\n <WithServerSideProps Component={SaveButtonComponent} />\n ) : undefined\n\n const SaveDraftButtonComponent = collectionConfig?.admin?.components?.edit?.SaveDraftButton\n\n const SaveDraftButton = SaveDraftButtonComponent ? (\n <WithServerSideProps Component={SaveDraftButtonComponent} />\n ) : undefined\n\n const PreviewButtonComponent = collectionConfig?.admin?.components?.edit?.PreviewButton\n\n const PreviewButton = PreviewButtonComponent ? (\n <WithServerSideProps Component={PreviewButtonComponent} />\n ) : undefined\n\n const PublishButtonComponent = collectionConfig?.admin?.components?.edit?.PublishButton\n\n const PublishButton = PublishButtonComponent ? (\n <WithServerSideProps Component={PublishButtonComponent} />\n ) : undefined\n\n const beforeList = collectionConfig?.admin?.components?.BeforeList\n\n const BeforeList =\n (beforeList &&\n Array.isArray(beforeList) &&\n beforeList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const beforeListTable = collectionConfig?.admin?.components?.BeforeListTable\n\n const BeforeListTable =\n (beforeListTable &&\n Array.isArray(beforeListTable) &&\n beforeListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterList = collectionConfig?.admin?.components?.AfterList\n\n const AfterList =\n (afterList &&\n Array.isArray(afterList) &&\n afterList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterListTable = collectionConfig?.admin?.components?.AfterListTable\n\n const AfterListTable =\n (afterListTable &&\n Array.isArray(afterListTable) &&\n afterListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n let description = undefined\n if (collectionConfig.admin && 'description' in collectionConfig.admin) {\n if (\n typeof collectionConfig.admin?.description === 'string' ||\n typeof collectionConfig.admin?.description === 'object'\n ) {\n description = collectionConfig.admin.description\n } else if (typeof collectionConfig.admin?.description === 'function') {\n description = collectionConfig.admin?.description({ t })\n }\n }\n\n const descriptionProps: ViewDescriptionProps = {\n description,\n }\n\n const DescriptionComponent =\n collectionConfig.admin?.components?.edit?.Description ||\n (description ? ViewDescription : undefined)\n\n const Description =\n DescriptionComponent !== undefined ? (\n <WithServerSideProps Component={DescriptionComponent} {...(descriptionProps || {})} />\n ) : undefined\n\n const componentMap: CollectionComponentMap = {\n AfterList,\n AfterListTable,\n BeforeList,\n BeforeListTable,\n Description,\n Edit: <Edit collectionSlug={collectionConfig.slug} />,\n List: <List collectionSlug={collectionConfig.slug} />,\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n actionsMap: mapActions({\n WithServerSideProps,\n collectionConfig,\n }),\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: fields,\n i18n,\n readOnly: readOnlyOverride,\n }),\n isPreviewEnabled: !!collectionConfig?.admin?.preview,\n }\n\n return {\n ...acc,\n [slug]: componentMap,\n }\n }, {})\n}\n"],"names":["isReactComponentOrFunction","React","ViewDescription","mapActions","mapFields","mapCollections","args","DefaultEditView","DefaultListView","WithServerSideProps","collections","config","i18n","t","readOnly","readOnlyOverride","reduce","acc","collectionConfig","slug","fields","internalCollections","includes","editViewFromConfig","admin","components","views","Edit","listViewFromConfig","List","CustomEditView","Default","Component","undefined","CustomListView","SaveButtonComponent","edit","SaveButton","SaveDraftButtonComponent","SaveDraftButton","PreviewButtonComponent","PreviewButton","PublishButtonComponent","PublishButton","beforeList","BeforeList","Array","isArray","map","beforeListTable","BeforeListTable","afterList","AfterList","afterListTable","AfterListTable","description","descriptionProps","DescriptionComponent","Description","componentMap","collectionSlug","actionsMap","fieldMap","fieldSchema","isPreviewEnabled","preview"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import type { I18nClient } from '@payloadcms/translations';
2
- import type { Field, FieldWithPath, SanitizedConfig, WithServerSideProps as WithServerSidePropsType } from 'payload/types';
2
+ import type { Field, FieldWithPath, SanitizedConfig } from 'payload/types';
3
+ import type { WithServerSidePropsPrePopulated } from './index.js';
3
4
  import type { FieldMap } from './types.js';
4
5
  export declare const mapFields: (args: {
5
- WithServerSideProps: WithServerSidePropsType;
6
+ WithServerSideProps: WithServerSidePropsPrePopulated;
6
7
  config: SanitizedConfig;
7
8
  /**
8
9
  * If mapFields is used outside of collections, you might not want it to add an id field
@@ -1 +1 @@
1
- {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAE1D,OAAO,KAAK,EAEV,KAAK,EAEL,aAAa,EAGb,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AA2BtB,OAAO,KAAK,EAEV,QAAQ,EAIT,MAAM,YAAY,CAAA;AAInB,eAAO,MAAM,SAAS,SAAU;IAC9B,mBAAmB,EAAE,uBAAuB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAA;IAClC,IAAI,EAAE,UAAU,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,aAuuBA,CAAA"}
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAE1D,OAAO,KAAK,EAEV,KAAK,EAEL,aAAa,EAGb,eAAe,EAChB,MAAM,eAAe,CAAA;AA0BtB,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,KAAK,EAEV,QAAQ,EAIT,MAAM,YAAY,CAAA;AAKnB,eAAO,MAAM,SAAS,SAAU;IAC9B,mBAAmB,EAAE,+BAA+B,CAAA;IACpD,MAAM,EAAE,eAAe,CAAA;IACvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAA;IAClC,IAAI,EAAE,UAAU,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,aAuuBA,CAAA"}
@@ -1,7 +1,7 @@
1
- import { FieldDescription } from '@payloadcms/ui/forms/FieldDescription';
2
1
  import { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types';
3
2
  import React, { Fragment } from 'react';
4
3
  import { HiddenInput } from '../../../fields/HiddenInput/index.js';
4
+ import { FieldDescription } from '../../../forms/FieldDescription/index.js';
5
5
  export const mapFields = (args)=>{
6
6
  const { WithServerSideProps, config, disableAddingID, fieldSchema, filter, i18n, i18n: { t }, parentPath, readOnly: readOnlyOverride } = args;
7
7
  const result = fieldSchema.reduce((acc, field)=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { CustomComponent } from 'payload/config'\nimport type {\n CellComponentProps,\n Field,\n FieldDescriptionProps,\n FieldWithPath,\n LabelProps,\n Option,\n SanitizedConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport { FieldDescription } from '@payloadcms/ui/forms/FieldDescription'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types'\nimport React, { Fragment } from 'react'\n\nimport type { ArrayFieldProps } from '../../../fields/Array/index.js'\nimport type { BlocksFieldProps } from '../../../fields/Blocks/index.js'\nimport type { CheckboxFieldProps } from '../../../fields/Checkbox/index.js'\nimport type { CodeFieldProps } from '../../../fields/Code/index.js'\nimport type { CollapsibleFieldProps } from '../../../fields/Collapsible/index.js'\nimport type { DateFieldProps } from '../../../fields/DateTime/index.js'\nimport type { EmailFieldProps } from '../../../fields/Email/index.js'\nimport type { GroupFieldProps } from '../../../fields/Group/index.js'\nimport type { JSONFieldProps } from '../../../fields/JSON/index.js'\nimport type { NumberFieldProps } from '../../../fields/Number/index.js'\nimport type { PointFieldProps } from '../../../fields/Point/index.js'\nimport type { RadioFieldProps } from '../../../fields/RadioGroup/index.js'\nimport type { RelationshipFieldProps } from '../../../fields/Relationship/types.js'\nimport type { RichTextFieldProps } from '../../../fields/RichText/index.js'\nimport type { RowFieldProps } from '../../../fields/Row/types.js'\nimport type { SelectFieldProps } from '../../../fields/Select/index.js'\nimport type { TabsFieldProps } from '../../../fields/Tabs/index.js'\nimport type { TextFieldProps } from '../../../fields/Text/types.js'\nimport type { TextareaFieldProps } from '../../../fields/Textarea/types.js'\nimport type { UploadFieldProps } from '../../../fields/Upload/types.js'\nimport type { FormFieldBase } from '../../../fields/shared/index.js'\nimport type {\n FieldComponentProps,\n FieldMap,\n MappedField,\n MappedTab,\n ReducedBlock,\n} from './types.js'\n\nimport { HiddenInput } from '../../../fields/HiddenInput/index.js'\n\nexport const mapFields = (args: {\n WithServerSideProps: WithServerSidePropsType\n config: SanitizedConfig\n /**\n * If mapFields is used outside of collections, you might not want it to add an id field\n */\n disableAddingID?: boolean\n fieldSchema: FieldWithPath[]\n filter?: (field: Field) => boolean\n i18n: I18nClient\n parentPath?: string\n readOnly?: boolean\n}): FieldMap => {\n const {\n WithServerSideProps,\n config,\n disableAddingID,\n fieldSchema,\n filter,\n i18n,\n i18n: { t },\n parentPath,\n readOnly: readOnlyOverride,\n } = args\n\n const result: FieldMap = fieldSchema.reduce((acc, field): FieldMap => {\n const fieldIsPresentational = fieldIsPresentationalOnly(field)\n let CustomFieldComponent: CustomComponent<FieldComponentProps> = field.admin?.components?.Field\n\n const CustomCellComponent = field.admin?.components?.Cell\n\n const isHidden = field?.admin && 'hidden' in field.admin && field.admin.hidden\n\n if (fieldIsPresentational || (!field?.hidden && field?.admin?.disabled !== true)) {\n if ((filter && typeof filter === 'function' && filter(field)) || !filter) {\n if (isHidden) {\n if (CustomFieldComponent) {\n CustomFieldComponent = HiddenInput\n }\n }\n\n const isFieldAffectingData = fieldAffectsData(field)\n\n const path = `${parentPath ? `${parentPath}.` : ''}${\n field.path || (isFieldAffectingData && 'name' in field ? field.name : '')\n }`\n\n const AfterInput =\n ('admin' in field &&\n 'components' in field.admin &&\n 'afterInput' in field.admin.components &&\n Array.isArray(field.admin?.components?.afterInput) && (\n <Fragment>\n {field.admin.components.afterInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n const BeforeInput =\n ('admin' in field &&\n field.admin?.components &&\n 'beforeInput' in field.admin.components &&\n Array.isArray(field.admin.components.beforeInput) && (\n <Fragment>\n {field.admin.components.beforeInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n let label = undefined\n if ('label' in field) {\n if (typeof field.label === 'string' || typeof field.label === 'object') {\n label = field.label\n } else if (typeof field.label === 'function') {\n label = field.label({ t })\n }\n }\n\n const labelProps: LabelProps = {\n label,\n required: 'required' in field ? field.required : undefined,\n }\n\n const CustomLabelComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Label' in field.admin.components &&\n field.admin.components?.Label) ||\n undefined\n\n // If we return undefined here (so if no CUSTOM label component is set), the field client component is responsible for falling back to the default label\n const CustomLabel =\n CustomLabelComponent !== undefined ? (\n <WithServerSideProps Component={CustomLabelComponent} {...(labelProps || {})} />\n ) : undefined\n\n let description = undefined\n if (field.admin && 'description' in field.admin) {\n if (\n typeof field.admin?.description === 'string' ||\n typeof field.admin?.description === 'object'\n ) {\n description = field.admin.description\n } else if (typeof field.admin?.description === 'function') {\n description = field.admin?.description({ t })\n }\n }\n\n const descriptionProps: FieldDescriptionProps = {\n description,\n }\n\n let CustomDescriptionComponent = undefined\n if (\n field.admin?.components &&\n 'Description' in field.admin.components &&\n field.admin.components?.Description\n ) {\n CustomDescriptionComponent = field.admin.components.Description\n } else if (description) {\n CustomDescriptionComponent = FieldDescription\n }\n\n const CustomDescription =\n CustomDescriptionComponent !== undefined ? (\n <WithServerSideProps\n Component={CustomDescriptionComponent}\n {...(descriptionProps || {})}\n />\n ) : undefined\n\n const errorProps = {\n path,\n }\n\n const CustomErrorComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Error' in field.admin.components &&\n field.admin?.components?.Error) ||\n undefined\n\n const CustomError =\n CustomErrorComponent !== undefined ? (\n <WithServerSideProps Component={CustomErrorComponent} {...(errorProps || {})} />\n ) : undefined\n\n // These fields are shared across all field types even if they are not used in the default field, as the custom field component can use them\n const baseFieldProps: FormFieldBase = {\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n custom: 'admin' in field && 'custom' in field.admin ? field.admin?.custom : undefined,\n descriptionProps,\n disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,\n errorProps,\n label: labelProps?.label,\n path,\n required: 'required' in field ? field.required : undefined,\n }\n\n let fieldComponentProps: FieldComponentProps\n\n let fieldOptions: Option[]\n\n if ('options' in field) {\n fieldOptions = field.options.map((option) => {\n if (typeof option === 'object' && typeof option.label === 'function') {\n return {\n label: option.label({ t }),\n value: option.value,\n }\n }\n\n return option\n })\n }\n\n const cellComponentProps: CellComponentProps = {\n name: 'name' in field ? field.name : undefined,\n fieldType: field.type,\n isFieldAffectingData,\n label: labelProps?.label || undefined,\n labels: 'labels' in field ? field.labels : undefined,\n options: 'options' in field ? fieldOptions : undefined,\n relationTo: 'relationTo' in field ? field.relationTo : undefined,\n }\n\n switch (field.type) {\n case 'array': {\n let CustomRowLabel: React.ReactNode\n\n if (\n 'admin' in field &&\n field.admin.components &&\n 'RowLabel' in field.admin.components &&\n field.admin.components.RowLabel\n ) {\n const CustomRowLabelComponent = field.admin.components.RowLabel\n CustomRowLabel = (\n <WithServerSideProps Component={CustomRowLabelComponent} {...(labelProps || {})} />\n )\n }\n\n const arrayFieldProps: Omit<ArrayFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n CustomRowLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n isSortable: field.admin?.isSortable,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = arrayFieldProps\n break\n }\n case 'blocks': {\n const blocks = field.blocks.map((block) => {\n const blockFieldMap = mapFields({\n WithServerSideProps,\n config,\n fieldSchema: block.fields,\n filter,\n i18n,\n parentPath: `${path}.${block.slug}`,\n readOnly: readOnlyOverride,\n })\n\n const reducedBlock: ReducedBlock = {\n slug: block.slug,\n custom: block.admin?.custom,\n fieldMap: blockFieldMap,\n imageAltText: block.imageAltText,\n imageURL: block.imageURL,\n labels: block.labels,\n }\n\n return reducedBlock\n })\n\n const blocksField: Omit<BlocksFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n blocks,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n isSortable: field.admin?.isSortable,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = blocksField\n\n cellComponentProps.blocks = field.blocks.map((b) => ({\n slug: b.slug,\n labels: b.labels,\n }))\n\n break\n }\n case 'checkbox': {\n const checkboxField: CheckboxFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = checkboxField\n break\n }\n case 'code': {\n const codeField: CodeFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n language: field.admin?.language,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = codeField\n break\n }\n case 'collapsible': {\n let CustomCollapsibleLabel: React.ReactNode\n if (\n field?.admin?.components &&\n 'RowLabel' in field.admin.components &&\n field?.admin?.components?.RowLabel\n ) {\n const CustomCollapsibleLabelComponent = field.admin.components.RowLabel\n CustomCollapsibleLabel = (\n <WithServerSideProps\n Component={CustomCollapsibleLabelComponent}\n {...(labelProps || {})}\n />\n )\n }\n\n const collapsibleField: Omit<CollapsibleFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n CustomLabel: CustomCollapsibleLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n initCollapsed: field.admin?.initCollapsed,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = collapsibleField as CollapsibleFieldProps // TODO: dunno why this is needed\n break\n }\n case 'date': {\n const dateField: DateFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n date: field.admin?.date,\n disabled: field.admin?.disabled,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = dateField\n cellComponentProps.dateDisplayFormat = field.admin?.date?.displayFormat\n break\n }\n case 'email': {\n const emailField: EmailFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = emailField\n break\n }\n case 'group': {\n const groupField: Omit<GroupFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = groupField\n break\n }\n case 'json': {\n const jsonField: JSONFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n jsonSchema: field.jsonSchema,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = jsonField\n break\n }\n case 'number': {\n const numberField: NumberFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n max: field.max,\n maxRows: field.maxRows,\n min: field.min,\n readOnly: field.admin?.readOnly,\n required: field.required,\n step: field.admin?.step,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = numberField\n break\n }\n case 'point': {\n const pointField: PointFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = pointField\n break\n }\n case 'relationship': {\n const relationshipField: RelationshipFieldProps = {\n ...baseFieldProps,\n name: field.name,\n allowCreate: field.admin.allowCreate,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n sortOptions: field.admin.sortOptions,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = relationshipField\n break\n }\n case 'radio': {\n const radioField: RadioFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = radioField\n break\n }\n case 'richText': {\n const richTextField: RichTextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n if (typeof field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n const RichTextFieldComponent = field.editor.FieldComponent\n const RichTextCellComponent = field.editor.CellComponent\n\n if (typeof field.editor.generateComponentMap === 'function') {\n const result = field.editor.generateComponentMap({\n WithServerSideProps,\n config,\n i18n,\n schemaPath: path,\n })\n richTextField.richTextComponentMap = result\n cellComponentProps.richTextComponentMap = result\n }\n\n if (RichTextFieldComponent) {\n CustomFieldComponent = RichTextFieldComponent\n }\n\n if (RichTextCellComponent) {\n cellComponentProps.CellComponentOverride = (\n <WithServerSideProps Component={RichTextCellComponent} />\n )\n }\n\n fieldComponentProps = richTextField\n\n break\n }\n case 'row': {\n const rowField: Omit<RowFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = rowField\n break\n }\n case 'tabs': {\n // `tabs` fields require a field map of each of its tab's nested fields\n const tabs = field.tabs.map((tab) => {\n const tabFieldMap = mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: tab.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n })\n\n const reducedTab: MappedTab = {\n name: 'name' in tab ? tab.name : undefined,\n fieldMap: tabFieldMap,\n label: tab.label,\n }\n\n return reducedTab\n })\n\n const tabsField: Omit<TabsFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: 'name' in field ? (field.name as string) : undefined,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n tabs,\n width: field.admin?.width,\n }\n\n fieldComponentProps = tabsField\n break\n }\n case 'text': {\n const textField: TextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textField\n break\n }\n case 'textarea': {\n const textareaField: TextareaFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n rows: field.admin?.rows,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textareaField\n break\n }\n case 'ui': {\n fieldComponentProps = baseFieldProps\n break\n }\n case 'upload': {\n const uploadField: UploadFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n filterOptions: field.filterOptions,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = uploadField\n break\n }\n case 'select': {\n const selectField: SelectFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n isClearable: field.admin?.isClearable,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = selectField\n break\n }\n default: {\n break\n }\n }\n\n const reducedField: MappedField = {\n name: 'name' in field ? field.name : undefined,\n type: field.type,\n CustomCell: CustomCellComponent ? (\n <WithServerSideProps Component={CustomCellComponent} {...cellComponentProps} />\n ) : undefined,\n CustomField: CustomFieldComponent ? (\n <WithServerSideProps Component={CustomFieldComponent} {...fieldComponentProps} />\n ) : undefined,\n cellComponentProps,\n custom: field?.admin?.custom,\n disableBulkEdit:\n 'admin' in field && 'disableBulkEdit' in field.admin && field.admin.disableBulkEdit,\n disableListColumn:\n 'admin' in field && 'disableListColumn' in field.admin && field.admin.disableListColumn,\n disableListFilter:\n 'admin' in field && 'disableListFilter' in field.admin && field.admin.disableListFilter,\n fieldComponentProps,\n fieldIsPresentational,\n isFieldAffectingData,\n isHidden,\n isSidebar:\n 'admin' in field && 'position' in field.admin && field.admin.position === 'sidebar',\n localized: 'localized' in field ? field.localized : false,\n unique: 'unique' in field ? field.unique : false,\n }\n\n acc.push(reducedField)\n }\n }\n\n return acc\n }, [])\n\n const hasID =\n result.findIndex((f) => 'name' in f && f.isFieldAffectingData && f.name === 'id') > -1\n\n if (!disableAddingID && !hasID) {\n // TODO: For all fields (not just this one) we need to add the name to both .fieldComponentProps.name AND .name. This can probably be improved\n result.push({\n name: 'id',\n type: 'text',\n CustomField: null,\n cellComponentProps: {\n name: 'id',\n },\n disableBulkEdit: true,\n fieldComponentProps: {\n name: 'id',\n label: 'ID',\n },\n fieldIsPresentational: false,\n isFieldAffectingData: true,\n isHidden: true,\n localized: undefined,\n })\n }\n\n return result\n}\n"],"names":["FieldDescription","fieldAffectsData","fieldIsPresentationalOnly","React","Fragment","HiddenInput","mapFields","args","WithServerSideProps","config","disableAddingID","fieldSchema","filter","i18n","t","parentPath","readOnly","readOnlyOverride","result","reduce","acc","field","fieldIsPresentational","CustomFieldComponent","admin","components","Field","CustomCellComponent","Cell","isHidden","hidden","disabled","isFieldAffectingData","path","name","AfterInput","Array","isArray","afterInput","map","Component","i","key","BeforeInput","beforeInput","label","undefined","labelProps","required","CustomLabelComponent","Label","CustomLabel","description","descriptionProps","CustomDescriptionComponent","Description","CustomDescription","errorProps","CustomErrorComponent","Error","CustomError","baseFieldProps","custom","fieldComponentProps","fieldOptions","options","option","value","cellComponentProps","fieldType","type","labels","relationTo","CustomRowLabel","RowLabel","CustomRowLabelComponent","arrayFieldProps","className","fieldMap","fields","isSortable","maxRows","minRows","style","width","blocks","block","blockFieldMap","slug","reducedBlock","imageAltText","imageURL","blocksField","b","checkboxField","codeField","editorOptions","language","CustomCollapsibleLabel","CustomCollapsibleLabelComponent","collapsibleField","initCollapsed","dateField","date","placeholder","dateDisplayFormat","displayFormat","emailField","groupField","jsonField","jsonSchema","numberField","hasMany","max","min","step","pointField","relationshipField","allowCreate","sortOptions","radioField","richTextField","editor","RichTextFieldComponent","FieldComponent","RichTextCellComponent","CellComponent","generateComponentMap","schemaPath","richTextComponentMap","CellComponentOverride","rowField","tabs","tab","tabFieldMap","reducedTab","tabsField","textField","maxLength","minLength","textareaField","rows","uploadField","filterOptions","selectField","isClearable","reducedField","CustomCell","CustomField","disableBulkEdit","disableListColumn","disableListFilter","isSidebar","position","localized","unique","push","hasID","findIndex","f"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { CustomComponent } from 'payload/config'\nimport type {\n CellComponentProps,\n Field,\n FieldDescriptionProps,\n FieldWithPath,\n LabelProps,\n Option,\n SanitizedConfig,\n} from 'payload/types'\n\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types'\nimport React, { Fragment } from 'react'\n\nimport type { ArrayFieldProps } from '../../../fields/Array/index.js'\nimport type { BlocksFieldProps } from '../../../fields/Blocks/index.js'\nimport type { CheckboxFieldProps } from '../../../fields/Checkbox/index.js'\nimport type { CodeFieldProps } from '../../../fields/Code/index.js'\nimport type { CollapsibleFieldProps } from '../../../fields/Collapsible/index.js'\nimport type { DateFieldProps } from '../../../fields/DateTime/index.js'\nimport type { EmailFieldProps } from '../../../fields/Email/index.js'\nimport type { GroupFieldProps } from '../../../fields/Group/index.js'\nimport type { JSONFieldProps } from '../../../fields/JSON/index.js'\nimport type { NumberFieldProps } from '../../../fields/Number/index.js'\nimport type { PointFieldProps } from '../../../fields/Point/index.js'\nimport type { RadioFieldProps } from '../../../fields/RadioGroup/index.js'\nimport type { RelationshipFieldProps } from '../../../fields/Relationship/types.js'\nimport type { RichTextFieldProps } from '../../../fields/RichText/index.js'\nimport type { RowFieldProps } from '../../../fields/Row/types.js'\nimport type { SelectFieldProps } from '../../../fields/Select/index.js'\nimport type { TabsFieldProps } from '../../../fields/Tabs/index.js'\nimport type { TextFieldProps } from '../../../fields/Text/types.js'\nimport type { TextareaFieldProps } from '../../../fields/Textarea/types.js'\nimport type { UploadFieldProps } from '../../../fields/Upload/types.js'\nimport type { FormFieldBase } from '../../../fields/shared/index.js'\nimport type { WithServerSidePropsPrePopulated } from './index.js'\nimport type {\n FieldComponentProps,\n FieldMap,\n MappedField,\n MappedTab,\n ReducedBlock,\n} from './types.js'\n\nimport { HiddenInput } from '../../../fields/HiddenInput/index.js'\nimport { FieldDescription } from '../../../forms/FieldDescription/index.js'\n\nexport const mapFields = (args: {\n WithServerSideProps: WithServerSidePropsPrePopulated\n config: SanitizedConfig\n /**\n * If mapFields is used outside of collections, you might not want it to add an id field\n */\n disableAddingID?: boolean\n fieldSchema: FieldWithPath[]\n filter?: (field: Field) => boolean\n i18n: I18nClient\n parentPath?: string\n readOnly?: boolean\n}): FieldMap => {\n const {\n WithServerSideProps,\n config,\n disableAddingID,\n fieldSchema,\n filter,\n i18n,\n i18n: { t },\n parentPath,\n readOnly: readOnlyOverride,\n } = args\n\n const result: FieldMap = fieldSchema.reduce((acc, field): FieldMap => {\n const fieldIsPresentational = fieldIsPresentationalOnly(field)\n let CustomFieldComponent: CustomComponent<FieldComponentProps> = field.admin?.components?.Field\n\n const CustomCellComponent = field.admin?.components?.Cell\n\n const isHidden = field?.admin && 'hidden' in field.admin && field.admin.hidden\n\n if (fieldIsPresentational || (!field?.hidden && field?.admin?.disabled !== true)) {\n if ((filter && typeof filter === 'function' && filter(field)) || !filter) {\n if (isHidden) {\n if (CustomFieldComponent) {\n CustomFieldComponent = HiddenInput\n }\n }\n\n const isFieldAffectingData = fieldAffectsData(field)\n\n const path = `${parentPath ? `${parentPath}.` : ''}${\n field.path || (isFieldAffectingData && 'name' in field ? field.name : '')\n }`\n\n const AfterInput =\n ('admin' in field &&\n 'components' in field.admin &&\n 'afterInput' in field.admin.components &&\n Array.isArray(field.admin?.components?.afterInput) && (\n <Fragment>\n {field.admin.components.afterInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n const BeforeInput =\n ('admin' in field &&\n field.admin?.components &&\n 'beforeInput' in field.admin.components &&\n Array.isArray(field.admin.components.beforeInput) && (\n <Fragment>\n {field.admin.components.beforeInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n let label = undefined\n if ('label' in field) {\n if (typeof field.label === 'string' || typeof field.label === 'object') {\n label = field.label\n } else if (typeof field.label === 'function') {\n label = field.label({ t })\n }\n }\n\n const labelProps: LabelProps = {\n label,\n required: 'required' in field ? field.required : undefined,\n }\n\n const CustomLabelComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Label' in field.admin.components &&\n field.admin.components?.Label) ||\n undefined\n\n // If we return undefined here (so if no CUSTOM label component is set), the field client component is responsible for falling back to the default label\n const CustomLabel =\n CustomLabelComponent !== undefined ? (\n <WithServerSideProps Component={CustomLabelComponent} {...(labelProps || {})} />\n ) : undefined\n\n let description = undefined\n if (field.admin && 'description' in field.admin) {\n if (\n typeof field.admin?.description === 'string' ||\n typeof field.admin?.description === 'object'\n ) {\n description = field.admin.description\n } else if (typeof field.admin?.description === 'function') {\n description = field.admin?.description({ t })\n }\n }\n\n const descriptionProps: FieldDescriptionProps = {\n description,\n }\n\n let CustomDescriptionComponent = undefined\n if (\n field.admin?.components &&\n 'Description' in field.admin.components &&\n field.admin.components?.Description\n ) {\n CustomDescriptionComponent = field.admin.components.Description\n } else if (description) {\n CustomDescriptionComponent = FieldDescription\n }\n\n const CustomDescription =\n CustomDescriptionComponent !== undefined ? (\n <WithServerSideProps\n Component={CustomDescriptionComponent}\n {...(descriptionProps || {})}\n />\n ) : undefined\n\n const errorProps = {\n path,\n }\n\n const CustomErrorComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Error' in field.admin.components &&\n field.admin?.components?.Error) ||\n undefined\n\n const CustomError =\n CustomErrorComponent !== undefined ? (\n <WithServerSideProps Component={CustomErrorComponent} {...(errorProps || {})} />\n ) : undefined\n\n // These fields are shared across all field types even if they are not used in the default field, as the custom field component can use them\n const baseFieldProps: FormFieldBase = {\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n custom: 'admin' in field && 'custom' in field.admin ? field.admin?.custom : undefined,\n descriptionProps,\n disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,\n errorProps,\n label: labelProps?.label,\n path,\n required: 'required' in field ? field.required : undefined,\n }\n\n let fieldComponentProps: FieldComponentProps\n\n let fieldOptions: Option[]\n\n if ('options' in field) {\n fieldOptions = field.options.map((option) => {\n if (typeof option === 'object' && typeof option.label === 'function') {\n return {\n label: option.label({ t }),\n value: option.value,\n }\n }\n\n return option\n })\n }\n\n const cellComponentProps: CellComponentProps = {\n name: 'name' in field ? field.name : undefined,\n fieldType: field.type,\n isFieldAffectingData,\n label: labelProps?.label || undefined,\n labels: 'labels' in field ? field.labels : undefined,\n options: 'options' in field ? fieldOptions : undefined,\n relationTo: 'relationTo' in field ? field.relationTo : undefined,\n }\n\n switch (field.type) {\n case 'array': {\n let CustomRowLabel: React.ReactNode\n\n if (\n 'admin' in field &&\n field.admin.components &&\n 'RowLabel' in field.admin.components &&\n field.admin.components.RowLabel\n ) {\n const CustomRowLabelComponent = field.admin.components.RowLabel\n CustomRowLabel = (\n <WithServerSideProps Component={CustomRowLabelComponent} {...(labelProps || {})} />\n )\n }\n\n const arrayFieldProps: Omit<ArrayFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n CustomRowLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n isSortable: field.admin?.isSortable,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = arrayFieldProps\n break\n }\n case 'blocks': {\n const blocks = field.blocks.map((block) => {\n const blockFieldMap = mapFields({\n WithServerSideProps,\n config,\n fieldSchema: block.fields,\n filter,\n i18n,\n parentPath: `${path}.${block.slug}`,\n readOnly: readOnlyOverride,\n })\n\n const reducedBlock: ReducedBlock = {\n slug: block.slug,\n custom: block.admin?.custom,\n fieldMap: blockFieldMap,\n imageAltText: block.imageAltText,\n imageURL: block.imageURL,\n labels: block.labels,\n }\n\n return reducedBlock\n })\n\n const blocksField: Omit<BlocksFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n blocks,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n isSortable: field.admin?.isSortable,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = blocksField\n\n cellComponentProps.blocks = field.blocks.map((b) => ({\n slug: b.slug,\n labels: b.labels,\n }))\n\n break\n }\n case 'checkbox': {\n const checkboxField: CheckboxFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = checkboxField\n break\n }\n case 'code': {\n const codeField: CodeFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n language: field.admin?.language,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = codeField\n break\n }\n case 'collapsible': {\n let CustomCollapsibleLabel: React.ReactNode\n if (\n field?.admin?.components &&\n 'RowLabel' in field.admin.components &&\n field?.admin?.components?.RowLabel\n ) {\n const CustomCollapsibleLabelComponent = field.admin.components.RowLabel\n CustomCollapsibleLabel = (\n <WithServerSideProps\n Component={CustomCollapsibleLabelComponent}\n {...(labelProps || {})}\n />\n )\n }\n\n const collapsibleField: Omit<CollapsibleFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n CustomLabel: CustomCollapsibleLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n initCollapsed: field.admin?.initCollapsed,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = collapsibleField as CollapsibleFieldProps // TODO: dunno why this is needed\n break\n }\n case 'date': {\n const dateField: DateFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n date: field.admin?.date,\n disabled: field.admin?.disabled,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = dateField\n cellComponentProps.dateDisplayFormat = field.admin?.date?.displayFormat\n break\n }\n case 'email': {\n const emailField: EmailFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = emailField\n break\n }\n case 'group': {\n const groupField: Omit<GroupFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = groupField\n break\n }\n case 'json': {\n const jsonField: JSONFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n jsonSchema: field.jsonSchema,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = jsonField\n break\n }\n case 'number': {\n const numberField: NumberFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n max: field.max,\n maxRows: field.maxRows,\n min: field.min,\n readOnly: field.admin?.readOnly,\n required: field.required,\n step: field.admin?.step,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = numberField\n break\n }\n case 'point': {\n const pointField: PointFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = pointField\n break\n }\n case 'relationship': {\n const relationshipField: RelationshipFieldProps = {\n ...baseFieldProps,\n name: field.name,\n allowCreate: field.admin.allowCreate,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n sortOptions: field.admin.sortOptions,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = relationshipField\n break\n }\n case 'radio': {\n const radioField: RadioFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = radioField\n break\n }\n case 'richText': {\n const richTextField: RichTextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n if (typeof field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n const RichTextFieldComponent = field.editor.FieldComponent\n const RichTextCellComponent = field.editor.CellComponent\n\n if (typeof field.editor.generateComponentMap === 'function') {\n const result = field.editor.generateComponentMap({\n WithServerSideProps,\n config,\n i18n,\n schemaPath: path,\n })\n richTextField.richTextComponentMap = result\n cellComponentProps.richTextComponentMap = result\n }\n\n if (RichTextFieldComponent) {\n CustomFieldComponent = RichTextFieldComponent\n }\n\n if (RichTextCellComponent) {\n cellComponentProps.CellComponentOverride = (\n <WithServerSideProps Component={RichTextCellComponent} />\n )\n }\n\n fieldComponentProps = richTextField\n\n break\n }\n case 'row': {\n const rowField: Omit<RowFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = rowField\n break\n }\n case 'tabs': {\n // `tabs` fields require a field map of each of its tab's nested fields\n const tabs = field.tabs.map((tab) => {\n const tabFieldMap = mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: tab.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n })\n\n const reducedTab: MappedTab = {\n name: 'name' in tab ? tab.name : undefined,\n fieldMap: tabFieldMap,\n label: tab.label,\n }\n\n return reducedTab\n })\n\n const tabsField: Omit<TabsFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: 'name' in field ? (field.name as string) : undefined,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n tabs,\n width: field.admin?.width,\n }\n\n fieldComponentProps = tabsField\n break\n }\n case 'text': {\n const textField: TextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textField\n break\n }\n case 'textarea': {\n const textareaField: TextareaFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n rows: field.admin?.rows,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textareaField\n break\n }\n case 'ui': {\n fieldComponentProps = baseFieldProps\n break\n }\n case 'upload': {\n const uploadField: UploadFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n filterOptions: field.filterOptions,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = uploadField\n break\n }\n case 'select': {\n const selectField: SelectFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n isClearable: field.admin?.isClearable,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = selectField\n break\n }\n default: {\n break\n }\n }\n\n const reducedField: MappedField = {\n name: 'name' in field ? field.name : undefined,\n type: field.type,\n CustomCell: CustomCellComponent ? (\n <WithServerSideProps Component={CustomCellComponent} {...cellComponentProps} />\n ) : undefined,\n CustomField: CustomFieldComponent ? (\n <WithServerSideProps Component={CustomFieldComponent} {...fieldComponentProps} />\n ) : undefined,\n cellComponentProps,\n custom: field?.admin?.custom,\n disableBulkEdit:\n 'admin' in field && 'disableBulkEdit' in field.admin && field.admin.disableBulkEdit,\n disableListColumn:\n 'admin' in field && 'disableListColumn' in field.admin && field.admin.disableListColumn,\n disableListFilter:\n 'admin' in field && 'disableListFilter' in field.admin && field.admin.disableListFilter,\n fieldComponentProps,\n fieldIsPresentational,\n isFieldAffectingData,\n isHidden,\n isSidebar:\n 'admin' in field && 'position' in field.admin && field.admin.position === 'sidebar',\n localized: 'localized' in field ? field.localized : false,\n unique: 'unique' in field ? field.unique : false,\n }\n\n acc.push(reducedField)\n }\n }\n\n return acc\n }, [])\n\n const hasID =\n result.findIndex((f) => 'name' in f && f.isFieldAffectingData && f.name === 'id') > -1\n\n if (!disableAddingID && !hasID) {\n // TODO: For all fields (not just this one) we need to add the name to both .fieldComponentProps.name AND .name. This can probably be improved\n result.push({\n name: 'id',\n type: 'text',\n CustomField: null,\n cellComponentProps: {\n name: 'id',\n },\n disableBulkEdit: true,\n fieldComponentProps: {\n name: 'id',\n label: 'ID',\n },\n fieldIsPresentational: false,\n isFieldAffectingData: true,\n isHidden: true,\n localized: undefined,\n })\n }\n\n return result\n}\n"],"names":["fieldAffectsData","fieldIsPresentationalOnly","React","Fragment","HiddenInput","FieldDescription","mapFields","args","WithServerSideProps","config","disableAddingID","fieldSchema","filter","i18n","t","parentPath","readOnly","readOnlyOverride","result","reduce","acc","field","fieldIsPresentational","CustomFieldComponent","admin","components","Field","CustomCellComponent","Cell","isHidden","hidden","disabled","isFieldAffectingData","path","name","AfterInput","Array","isArray","afterInput","map","Component","i","key","BeforeInput","beforeInput","label","undefined","labelProps","required","CustomLabelComponent","Label","CustomLabel","description","descriptionProps","CustomDescriptionComponent","Description","CustomDescription","errorProps","CustomErrorComponent","Error","CustomError","baseFieldProps","custom","fieldComponentProps","fieldOptions","options","option","value","cellComponentProps","fieldType","type","labels","relationTo","CustomRowLabel","RowLabel","CustomRowLabelComponent","arrayFieldProps","className","fieldMap","fields","isSortable","maxRows","minRows","style","width","blocks","block","blockFieldMap","slug","reducedBlock","imageAltText","imageURL","blocksField","b","checkboxField","codeField","editorOptions","language","CustomCollapsibleLabel","CustomCollapsibleLabelComponent","collapsibleField","initCollapsed","dateField","date","placeholder","dateDisplayFormat","displayFormat","emailField","groupField","jsonField","jsonSchema","numberField","hasMany","max","min","step","pointField","relationshipField","allowCreate","sortOptions","radioField","richTextField","editor","RichTextFieldComponent","FieldComponent","RichTextCellComponent","CellComponent","generateComponentMap","schemaPath","richTextComponentMap","CellComponentOverride","rowField","tabs","tab","tabFieldMap","reducedTab","tabsField","textField","maxLength","minLength","textareaField","rows","uploadField","filterOptions","selectField","isClearable","reducedField","CustomCell","CustomField","disableBulkEdit","disableListColumn","disableListFilter","isSidebar","position","localized","unique","push","hasID","findIndex","f"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import type { I18nClient } from '@payloadcms/translations';
2
- import type { EditViewProps, SanitizedConfig, SanitizedGlobalConfig, WithServerSideProps } from 'payload/types';
2
+ import type { EditViewProps, SanitizedConfig, SanitizedGlobalConfig } from 'payload/types';
3
3
  import React from 'react';
4
+ import type { WithServerSidePropsPrePopulated } from './index.js';
4
5
  import type { GlobalComponentMap } from './types.js';
5
6
  export declare const mapGlobals: ({ args, }: {
6
7
  args: {
7
8
  DefaultEditView: React.FC<EditViewProps>;
8
- WithServerSideProps: WithServerSideProps;
9
+ WithServerSideProps: WithServerSidePropsPrePopulated;
9
10
  config: SanitizedConfig;
10
11
  globals: SanitizedGlobalConfig[];
11
12
  i18n: I18nClient;
@@ -1 +1 @@
1
- {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/globals.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACpB,MAAM,eAAe,CAAA;AAGtB,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAKpD,eAAO,MAAM,UAAU,cAEpB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,CAAA;QACxC,qBAAqB,mBAAmB,CAAA;QACxC,MAAM,EAAE,eAAe,CAAA;QACvB,OAAO,EAAE,qBAAqB,EAAE,CAAA;QAChC,IAAI,EAAE,UAAU,CAAA;QAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,CAAA;CACF,KAAG;IACF,CAAC,GAAG,EAAE,qBAAqB,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAA;CAwGzD,CAAA"}
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/globals.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAG1F,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAA;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAMpD,eAAO,MAAM,UAAU,cAEpB;IACD,IAAI,EAAE;QACJ,eAAe,EAAE,MAAM,EAAE,CAAC,aAAa,CAAC,CAAA;QACxC,mBAAmB,EAAE,+BAA+B,CAAA;QACpD,MAAM,EAAE,eAAe,CAAA;QACvB,OAAO,EAAE,qBAAqB,EAAE,CAAA;QAChC,IAAI,EAAE,UAAU,CAAA;QAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;KACnB,CAAA;CACF,KAAG;IACF,CAAC,GAAG,EAAE,qBAAqB,CAAC,MAAM,CAAC,GAAG,kBAAkB,CAAA;CAyGzD,CAAA"}
@@ -1,5 +1,6 @@
1
- import { ViewDescription } from '@payloadcms/ui/elements/ViewDescription';
1
+ import { isReactComponentOrFunction } from 'payload/utilities';
2
2
  import React from 'react';
3
+ import { ViewDescription } from '../../../elements/ViewDescription/index.js';
3
4
  import { mapActions } from './actions.js';
4
5
  import { mapFields } from './fields.js';
5
6
  export const mapGlobals = ({ args })=>{
@@ -23,7 +24,7 @@ export const mapGlobals = ({ args })=>{
23
24
  const PublishButtonComponent = PublishButton ? /*#__PURE__*/ React.createElement(WithServerSideProps, {
24
25
  Component: PublishButton
25
26
  }) : undefined;
26
- const CustomEditView = typeof editViewFromConfig === 'function' ? editViewFromConfig : typeof editViewFromConfig === 'object' && typeof editViewFromConfig.Default === 'function' ? editViewFromConfig.Default : typeof editViewFromConfig?.Default === 'object' && 'Component' in editViewFromConfig.Default && typeof editViewFromConfig.Default.Component === 'function' ? editViewFromConfig.Default.Component : undefined;
27
+ const CustomEditView = typeof editViewFromConfig === 'function' ? editViewFromConfig : typeof editViewFromConfig === 'object' && isReactComponentOrFunction(editViewFromConfig.Default) ? editViewFromConfig.Default : typeof editViewFromConfig?.Default === 'object' && 'Component' in editViewFromConfig.Default && isReactComponentOrFunction(editViewFromConfig.Default.Component) ? editViewFromConfig.Default.Component : undefined;
27
28
  const Edit = CustomEditView || DefaultEditView;
28
29
  let description = undefined;
29
30
  if (globalConfig.admin && 'description' in globalConfig.admin) {