@payloadcms/ui 3.0.0-beta.9 → 3.0.0-canary.92e4997

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 (165) hide show
  1. package/dist/elements/ArrayAction/index.d.ts +1 -0
  2. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  3. package/dist/elements/ArrayAction/index.js +3 -3
  4. package/dist/elements/ArrayAction/index.js.map +1 -1
  5. package/dist/elements/Autosave/index.d.ts.map +1 -1
  6. package/dist/elements/Autosave/index.js +15 -3
  7. package/dist/elements/Autosave/index.js.map +1 -1
  8. package/dist/elements/DocumentControls/index.js +1 -1
  9. package/dist/elements/DocumentControls/index.js.map +1 -1
  10. package/dist/elements/DocumentControls/index.scss +2 -2
  11. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  12. package/dist/elements/DocumentDrawer/DrawerContent.js +7 -7
  13. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  14. package/dist/elements/DocumentFields/index.js +1 -1
  15. package/dist/elements/DocumentFields/index.js.map +1 -1
  16. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  17. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +3 -2
  18. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  19. package/dist/elements/DocumentHeader/Tabs/index.d.ts +2 -0
  20. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  21. package/dist/elements/DocumentHeader/Tabs/index.js +3 -2
  22. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  23. package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
  24. package/dist/elements/DocumentHeader/Tabs/tabs/index.js +1 -1
  25. package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
  26. package/dist/elements/DocumentHeader/index.d.ts +2 -0
  27. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  28. package/dist/elements/DocumentHeader/index.js +3 -2
  29. package/dist/elements/DocumentHeader/index.js.map +1 -1
  30. package/dist/elements/EditMany/index.js +2 -2
  31. package/dist/elements/EditMany/index.js.map +1 -1
  32. package/dist/elements/EditUpload/index.d.ts +12 -0
  33. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  34. package/dist/elements/EditUpload/index.js +25 -25
  35. package/dist/elements/EditUpload/index.js.map +1 -1
  36. package/dist/elements/HydrateClientUser/index.d.ts +2 -2
  37. package/dist/elements/HydrateClientUser/index.d.ts.map +1 -1
  38. package/dist/elements/HydrateClientUser/index.js.map +1 -1
  39. package/dist/elements/ListControls/index.d.ts.map +1 -1
  40. package/dist/elements/ListControls/index.js +16 -3
  41. package/dist/elements/ListControls/index.js.map +1 -1
  42. package/dist/elements/PublishMany/index.js +1 -1
  43. package/dist/elements/PublishMany/index.js.map +1 -1
  44. package/dist/elements/Save/index.d.ts.map +1 -1
  45. package/dist/elements/Save/index.js +7 -1
  46. package/dist/elements/Save/index.js.map +1 -1
  47. package/dist/elements/SaveDraft/index.d.ts.map +1 -1
  48. package/dist/elements/SaveDraft/index.js +8 -5
  49. package/dist/elements/SaveDraft/index.js.map +1 -1
  50. package/dist/elements/StayLoggedIn/index.d.ts +2 -4
  51. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  52. package/dist/elements/StayLoggedIn/index.js +7 -6
  53. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  54. package/dist/elements/StayLoggedIn/index.scss +1 -1
  55. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  56. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +6 -2
  57. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  58. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +1 -1
  59. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  60. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  61. package/dist/elements/Table/DefaultCell/index.js +1 -1
  62. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  63. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  64. package/dist/elements/TableColumns/buildColumnState.js +1 -0
  65. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  66. package/dist/elements/Upload/index.d.ts.map +1 -1
  67. package/dist/elements/Upload/index.js +37 -1
  68. package/dist/elements/Upload/index.js.map +1 -1
  69. package/dist/elements/Upload/index.scss +12 -1
  70. package/dist/exports/elements.d.ts +3 -2
  71. package/dist/exports/elements.d.ts.map +1 -1
  72. package/dist/exports/elements.js +5 -2
  73. package/dist/exports/elements.js.map +1 -1
  74. package/dist/exports/fields.d.ts +2 -0
  75. package/dist/exports/fields.d.ts.map +1 -0
  76. package/dist/exports/fields.js +3 -0
  77. package/dist/exports/fields.js.map +1 -0
  78. package/dist/exports/providers.d.ts +2 -0
  79. package/dist/exports/providers.d.ts.map +1 -0
  80. package/dist/exports/providers.js +3 -0
  81. package/dist/exports/providers.js.map +1 -0
  82. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  83. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  84. package/dist/fields/Array/ArrayRow.js +4 -3
  85. package/dist/fields/Array/ArrayRow.js.map +1 -1
  86. package/dist/fields/Array/index.d.ts +1 -0
  87. package/dist/fields/Array/index.d.ts.map +1 -1
  88. package/dist/fields/Array/index.js +3 -2
  89. package/dist/fields/Array/index.js.map +1 -1
  90. package/dist/fields/Blocks/BlockRow.d.ts +1 -0
  91. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  92. package/dist/fields/Blocks/BlockRow.js +4 -3
  93. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  94. package/dist/fields/Blocks/RowActions.d.ts +1 -0
  95. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  96. package/dist/fields/Blocks/RowActions.js +2 -1
  97. package/dist/fields/Blocks/RowActions.js.map +1 -1
  98. package/dist/fields/Blocks/index.d.ts +1 -0
  99. package/dist/fields/Blocks/index.d.ts.map +1 -1
  100. package/dist/fields/Blocks/index.js +3 -2
  101. package/dist/fields/Blocks/index.js.map +1 -1
  102. package/dist/fields/ConfirmPassword/index.js +1 -1
  103. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  104. package/dist/fields/JSON/index.d.ts +1 -0
  105. package/dist/fields/JSON/index.d.ts.map +1 -1
  106. package/dist/fields/JSON/index.js +20 -1
  107. package/dist/fields/JSON/index.js.map +1 -1
  108. package/dist/fields/RichText/index.d.ts +1 -1
  109. package/dist/fields/RichText/index.d.ts.map +1 -1
  110. package/dist/fields/RichText/index.js.map +1 -1
  111. package/dist/fields/shared/index.d.ts +1 -0
  112. package/dist/fields/shared/index.d.ts.map +1 -1
  113. package/dist/fields/shared/index.js.map +1 -1
  114. package/dist/forms/FieldPropsProvider/index.d.ts +2 -0
  115. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  116. package/dist/forms/FieldPropsProvider/index.js +5 -3
  117. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  118. package/dist/forms/RenderFields/RenderField.d.ts +1 -0
  119. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  120. package/dist/forms/RenderFields/RenderField.js +2 -1
  121. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  122. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  123. package/dist/forms/RenderFields/index.js +2 -1
  124. package/dist/forms/RenderFields/index.js.map +1 -1
  125. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts +3 -5
  126. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  127. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +2 -1
  128. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  129. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts +2 -2
  130. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.d.ts.map +1 -1
  131. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -1
  132. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts +2 -2
  133. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.d.ts.map +1 -1
  134. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -1
  135. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts +2 -2
  136. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  137. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +1 -0
  138. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  139. package/dist/forms/buildStateFromSchema/index.d.ts +3 -5
  140. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  141. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  142. package/dist/forms/buildStateFromSchema/iterateFields.d.ts +3 -5
  143. package/dist/forms/buildStateFromSchema/iterateFields.d.ts.map +1 -1
  144. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  145. package/dist/forms/useField/index.d.ts.map +1 -1
  146. package/dist/forms/useField/index.js +3 -1
  147. package/dist/forms/useField/index.js.map +1 -1
  148. package/dist/providers/Auth/index.d.ts.map +1 -1
  149. package/dist/providers/Auth/index.js +2 -1
  150. package/dist/providers/Auth/index.js.map +1 -1
  151. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  152. package/dist/providers/ComponentMap/buildComponentMap/fields.js +9 -0
  153. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  154. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +2 -0
  155. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +1 -1
  156. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +1 -1
  157. package/dist/providers/DocumentInfo/index.js +8 -7
  158. package/dist/providers/DocumentInfo/index.js.map +1 -1
  159. package/dist/providers/EntityVisibility/index.d.ts +1 -1
  160. package/dist/providers/EntityVisibility/index.d.ts.map +1 -1
  161. package/dist/providers/EntityVisibility/index.js.map +1 -1
  162. package/dist/providers/Root/index.d.ts.map +1 -1
  163. package/dist/providers/Root/index.js +2 -1
  164. package/dist/providers/Root/index.js.map +1 -1
  165. package/package.json +32 -31
@@ -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 { 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('stay-logged-in')\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","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 { 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 +1 @@
1
- {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,KAAK,EAIV,KAAK,EAGL,aAAa,EAIb,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AAiCtB,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,IAAI,CAAA;IACV,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,aA6tBA,CAAA"}
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,KAAK,EAIV,KAAK,EAGL,aAAa,EAIb,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AAiCtB,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,IAAI,CAAA;IACV,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,aAsuBA,CAAA"}
@@ -60,6 +60,7 @@ export const mapFields = (args)=>{
60
60
  CustomDescription,
61
61
  CustomError,
62
62
  CustomLabel,
63
+ custom: 'admin' in field && 'custom' in field.admin ? field.admin?.custom : undefined,
63
64
  descriptionProps,
64
65
  disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,
65
66
  errorProps,
@@ -116,6 +117,7 @@ export const mapFields = (args)=>{
116
117
  parentPath: path,
117
118
  readOnly: readOnlyOverride
118
119
  }),
120
+ isSortable: field.admin?.isSortable,
119
121
  label: field?.label,
120
122
  labels: field.labels,
121
123
  maxRows: field.maxRows,
@@ -142,6 +144,7 @@ export const mapFields = (args)=>{
142
144
  });
143
145
  const reducedBlock = {
144
146
  slug: block.slug,
147
+ custom: block.admin?.custom,
145
148
  fieldMap: blockFieldMap,
146
149
  imageAltText: block.imageAltText,
147
150
  imageURL: block.imageURL,
@@ -155,6 +158,7 @@ export const mapFields = (args)=>{
155
158
  blocks,
156
159
  className: field.admin?.className,
157
160
  disabled: field.admin?.disabled,
161
+ isSortable: field.admin?.isSortable,
158
162
  label: field?.label,
159
163
  labels: field.labels,
160
164
  maxRows: field.maxRows,
@@ -309,6 +313,7 @@ export const mapFields = (args)=>{
309
313
  className: field.admin?.className,
310
314
  disabled: field.admin?.disabled,
311
315
  editorOptions: field.admin?.editorOptions,
316
+ jsonSchema: field.jsonSchema,
312
317
  label: field.label,
313
318
  readOnly: field.admin?.readOnly,
314
319
  required: field.required,
@@ -407,6 +412,9 @@ export const mapFields = (args)=>{
407
412
  style: field.admin?.style,
408
413
  width: field.admin?.width
409
414
  };
415
+ if (typeof field?.editor === 'function') {
416
+ throw new Error('Attempted to access unsanitized rich text editor.');
417
+ }
410
418
  const RichTextFieldComponent = field.editor.FieldComponent;
411
419
  const RichTextCellComponent = field.editor.CellComponent;
412
420
  if (typeof field.editor.generateComponentMap === 'function') {
@@ -590,6 +598,7 @@ export const mapFields = (args)=>{
590
598
  ...fieldComponentProps
591
599
  }) : undefined,
592
600
  cellComponentProps,
601
+ custom: field?.admin?.custom,
593
602
  disableBulkEdit: 'admin' in field && 'disableBulkEdit' in field.admin && field.admin.disableBulkEdit,
594
603
  fieldComponentProps,
595
604
  fieldIsPresentational,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { CustomComponent } from 'packages/payload/src/config/types.js'\nimport type {\n CellComponentProps,\n DescriptionComponent,\n DescriptionFunction,\n Field,\n FieldBase,\n FieldDescriptionProps,\n FieldWithPath,\n LabelProps,\n Option,\n RowLabelComponent,\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 {\n isPlainFunction,\n isReactClientComponent,\n isReactComponent,\n isReactServerComponent,\n} from 'payload/utilities'\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: I18n\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 const labelProps: LabelProps = {\n label:\n 'label' in field && !isPlainFunction(field.label) && !isReactComponent(field.label)\n ? field.label\n : undefined,\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 const CustomLabel =\n CustomLabelComponent !== undefined ? (\n <WithServerSideProps Component={CustomLabelComponent} {...(labelProps || {})} />\n ) : undefined\n\n const descriptionProps: FieldDescriptionProps = {\n description:\n (field.admin &&\n 'description' in field.admin &&\n (((typeof field.admin?.description === 'string' ||\n typeof field.admin?.description === 'object') &&\n field.admin.description) ||\n (typeof field.admin?.description === 'function' &&\n isPlainFunction<DescriptionFunction>(field.admin?.description) &&\n field.admin?.description({ t })))) ||\n undefined,\n }\n\n const CustomDescriptionComponent =\n (field.admin &&\n 'description' in field.admin &&\n ((isReactComponent<DescriptionComponent>(field.admin.description) &&\n field.admin.description) ||\n (field.admin.description && FieldDescription))) ||\n undefined\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 const baseFieldProps: FormFieldBase = {\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n descriptionProps,\n disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,\n errorProps,\n labelProps,\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: i18n.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:\n 'label' in field && field.label && typeof field.label !== 'function'\n ? field.label\n : 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 isReactComponent<RowLabelComponent>(field.admin.components.RowLabel)\n ) {\n const CustomRowLabelComponent = field.admin.components.RowLabel\n CustomRowLabel = <WithServerSideProps Component={CustomRowLabelComponent} />\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 label: field?.label,\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 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 label: field?.label,\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 label: field.label,\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 label: field.label,\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\n if (isReactComponent(field.label) || isPlainFunction(field.label)) {\n const CustomCollapsibleLabelComponent = field.label as RowLabelComponent\n CustomCollapsibleLabel = (\n <WithServerSideProps Component={CustomCollapsibleLabelComponent} />\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 label: !CustomCollapsibleLabel ? (field.label as FieldBase['label']) : undefined,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 disableBulkEdit:\n 'admin' in field && 'disableBulkEdit' in field.admin && field.admin.disableBulkEdit,\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 labelProps: {\n label: 'ID',\n },\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","isPlainFunction","isReactComponent","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","labelProps","label","undefined","required","CustomLabelComponent","Label","CustomLabel","descriptionProps","description","CustomDescriptionComponent","CustomDescription","errorProps","CustomErrorComponent","Error","CustomError","baseFieldProps","fieldComponentProps","fieldOptions","options","option","value","cellComponentProps","fieldType","type","labels","relationTo","CustomRowLabel","RowLabel","CustomRowLabelComponent","arrayFieldProps","className","fieldMap","fields","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","numberField","hasMany","max","min","step","pointField","relationshipField","allowCreate","sortOptions","radioField","richTextField","RichTextFieldComponent","editor","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","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 { I18n } from '@payloadcms/translations'\nimport type { CustomComponent } from 'payload/config'\nimport type {\n CellComponentProps,\n DescriptionComponent,\n DescriptionFunction,\n Field,\n FieldBase,\n FieldDescriptionProps,\n FieldWithPath,\n LabelProps,\n Option,\n RowLabelComponent,\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 {\n isPlainFunction,\n isReactClientComponent,\n isReactComponent,\n isReactServerComponent,\n} from 'payload/utilities'\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: I18n\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 const labelProps: LabelProps = {\n label:\n 'label' in field && !isPlainFunction(field.label) && !isReactComponent(field.label)\n ? field.label\n : undefined,\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 const CustomLabel =\n CustomLabelComponent !== undefined ? (\n <WithServerSideProps Component={CustomLabelComponent} {...(labelProps || {})} />\n ) : undefined\n\n const descriptionProps: FieldDescriptionProps = {\n description:\n (field.admin &&\n 'description' in field.admin &&\n (((typeof field.admin?.description === 'string' ||\n typeof field.admin?.description === 'object') &&\n field.admin.description) ||\n (typeof field.admin?.description === 'function' &&\n isPlainFunction<DescriptionFunction>(field.admin?.description) &&\n field.admin?.description({ t })))) ||\n undefined,\n }\n\n const CustomDescriptionComponent =\n (field.admin &&\n 'description' in field.admin &&\n ((isReactComponent<DescriptionComponent>(field.admin.description) &&\n field.admin.description) ||\n (field.admin.description && FieldDescription))) ||\n undefined\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 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 labelProps,\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: i18n.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:\n 'label' in field && field.label && typeof field.label !== 'function'\n ? field.label\n : 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 isReactComponent<RowLabelComponent>(field.admin.components.RowLabel)\n ) {\n const CustomRowLabelComponent = field.admin.components.RowLabel\n CustomRowLabel = <WithServerSideProps Component={CustomRowLabelComponent} />\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 label: field?.label,\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 label: field?.label,\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 label: field.label,\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 label: field.label,\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\n if (isReactComponent(field.label) || isPlainFunction(field.label)) {\n const CustomCollapsibleLabelComponent = field.label as RowLabelComponent\n CustomCollapsibleLabel = (\n <WithServerSideProps Component={CustomCollapsibleLabelComponent} />\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 label: !CustomCollapsibleLabel ? (field.label as FieldBase['label']) : undefined,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 label: field.label,\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 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 labelProps: {\n label: 'ID',\n },\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","isPlainFunction","isReactComponent","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","labelProps","label","undefined","required","CustomLabelComponent","Label","CustomLabel","descriptionProps","description","CustomDescriptionComponent","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","isSidebar","position","localized","unique","push","hasID","findIndex","f"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -27,6 +27,7 @@ export type MappedTab = {
27
27
  name?: string;
28
28
  };
29
29
  export type ReducedBlock = {
30
+ custom?: Record<any, string>;
30
31
  fieldMap: FieldMap;
31
32
  imageAltText?: string;
32
33
  imageURL?: string;
@@ -38,6 +39,7 @@ export type MappedField = {
38
39
  CustomCell?: React.ReactNode;
39
40
  CustomField?: React.ReactNode;
40
41
  cellComponentProps: CellComponentProps;
42
+ custom?: Record<any, string>;
41
43
  disableBulkEdit?: boolean;
42
44
  disabled?: boolean;
43
45
  fieldComponentProps: FieldComponentProps;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/types.ts"],"sourcesContent":["import type { HiddenInputFieldProps } from '@payloadcms/ui/fields/HiddenInput'\nimport type { FieldTypes } from 'payload/config'\nimport type {\n BlockField,\n CellComponentProps,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TabsField,\n} from 'payload/types'\n\nimport type { ArrayFieldProps } from '../../../fields/Array/index.js'\nimport type { BlocksFieldProps } from '../../../fields/Blocks/index.js'\nimport type { CheckboxFieldProps } from '../../../fields/Checkbox/types.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 { RelationshipFieldProps } from '../../../fields/Relationship/index.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'\n\nexport type MappedTab = {\n fieldMap?: FieldMap\n label: TabsField['tabs'][0]['label']\n name?: string\n}\n\nexport type ReducedBlock = {\n fieldMap: FieldMap\n imageAltText?: string\n imageURL?: string\n labels: BlockField['labels']\n slug: string\n}\n\nexport type FieldComponentProps =\n | ArrayFieldProps\n | BlocksFieldProps\n | CheckboxFieldProps\n | CodeFieldProps\n | CollapsibleFieldProps\n | DateFieldProps\n | EmailFieldProps\n | GroupFieldProps\n | HiddenInputFieldProps\n | JSONFieldProps\n | NumberFieldProps\n | PointFieldProps\n | RelationshipFieldProps\n | RichTextFieldProps\n | RowFieldProps\n | SelectFieldProps\n | TabsFieldProps\n | TextFieldProps\n | TextareaFieldProps\n | UploadFieldProps\n\nexport type MappedField = {\n CustomCell?: React.ReactNode\n CustomField?: React.ReactNode\n cellComponentProps: CellComponentProps\n disableBulkEdit?: boolean\n disabled?: boolean\n fieldComponentProps: FieldComponentProps\n fieldIsPresentational: boolean\n isFieldAffectingData: boolean\n isHidden?: boolean\n isSidebar?: boolean\n localized: boolean\n name?: string\n type: keyof FieldTypes\n unique?: boolean\n}\n\nexport type FieldMap = MappedField[]\n\nexport type ActionMap = {\n Edit: {\n [view: string]: React.ReactNode[]\n }\n List: React.ReactNode[]\n}\n\nexport type CollectionComponentMap = ConfigComponentMapBase & {\n AfterList: React.ReactNode\n AfterListTable: React.ReactNode\n BeforeList: React.ReactNode\n BeforeListTable: React.ReactNode\n List: React.ReactNode\n}\n\nexport type GlobalComponentMap = ConfigComponentMapBase\n\nexport type ConfigComponentMapBase = {\n Description: React.ReactNode\n Edit: React.ReactNode\n PreviewButton: React.ReactNode\n PublishButton: React.ReactNode\n SaveButton: React.ReactNode\n SaveDraftButton: React.ReactNode\n actionsMap: ActionMap\n fieldMap: FieldMap\n isPreviewEnabled: boolean\n}\n\nexport type ComponentMap = {\n Icon: React.ReactNode\n LogoutButton: React.ReactNode\n actions: React.ReactNode[]\n collections: {\n [slug: SanitizedCollectionConfig['slug']]: CollectionComponentMap\n }\n globals: {\n [slug: SanitizedGlobalConfig['slug']]: GlobalComponentMap\n }\n}\n"],"names":[],"rangeMappings":"","mappings":"AAkHA,WAUC"}
1
+ {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/types.ts"],"sourcesContent":["import type { HiddenInputFieldProps } from '@payloadcms/ui/fields/HiddenInput'\nimport type { FieldTypes } from 'payload/config'\nimport type {\n BlockField,\n CellComponentProps,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TabsField,\n} from 'payload/types'\n\nimport type { ArrayFieldProps } from '../../../fields/Array/index.js'\nimport type { BlocksFieldProps } from '../../../fields/Blocks/index.js'\nimport type { CheckboxFieldProps } from '../../../fields/Checkbox/types.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 { RelationshipFieldProps } from '../../../fields/Relationship/index.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'\n\nexport type MappedTab = {\n fieldMap?: FieldMap\n label: TabsField['tabs'][0]['label']\n name?: string\n}\n\nexport type ReducedBlock = {\n custom?: Record<any, string>\n fieldMap: FieldMap\n imageAltText?: string\n imageURL?: string\n labels: BlockField['labels']\n slug: string\n}\n\nexport type FieldComponentProps =\n | ArrayFieldProps\n | BlocksFieldProps\n | CheckboxFieldProps\n | CodeFieldProps\n | CollapsibleFieldProps\n | DateFieldProps\n | EmailFieldProps\n | GroupFieldProps\n | HiddenInputFieldProps\n | JSONFieldProps\n | NumberFieldProps\n | PointFieldProps\n | RelationshipFieldProps\n | RichTextFieldProps\n | RowFieldProps\n | SelectFieldProps\n | TabsFieldProps\n | TextFieldProps\n | TextareaFieldProps\n | UploadFieldProps\n\nexport type MappedField = {\n CustomCell?: React.ReactNode\n CustomField?: React.ReactNode\n cellComponentProps: CellComponentProps\n custom?: Record<any, string>\n disableBulkEdit?: boolean\n disabled?: boolean\n fieldComponentProps: FieldComponentProps\n fieldIsPresentational: boolean\n isFieldAffectingData: boolean\n isHidden?: boolean\n isSidebar?: boolean\n localized: boolean\n name?: string\n type: keyof FieldTypes\n unique?: boolean\n}\n\nexport type FieldMap = MappedField[]\n\nexport type ActionMap = {\n Edit: {\n [view: string]: React.ReactNode[]\n }\n List: React.ReactNode[]\n}\n\nexport type CollectionComponentMap = ConfigComponentMapBase & {\n AfterList: React.ReactNode\n AfterListTable: React.ReactNode\n BeforeList: React.ReactNode\n BeforeListTable: React.ReactNode\n List: React.ReactNode\n}\n\nexport type GlobalComponentMap = ConfigComponentMapBase\n\nexport type ConfigComponentMapBase = {\n Description: React.ReactNode\n Edit: React.ReactNode\n PreviewButton: React.ReactNode\n PublishButton: React.ReactNode\n SaveButton: React.ReactNode\n SaveDraftButton: React.ReactNode\n actionsMap: ActionMap\n fieldMap: FieldMap\n isPreviewEnabled: boolean\n}\n\nexport type ComponentMap = {\n Icon: React.ReactNode\n LogoutButton: React.ReactNode\n actions: React.ReactNode[]\n collections: {\n [slug: SanitizedCollectionConfig['slug']]: CollectionComponentMap\n }\n globals: {\n [slug: SanitizedGlobalConfig['slug']]: GlobalComponentMap\n }\n}\n"],"names":[],"rangeMappings":"","mappings":"AAoHA,WAUC"}
@@ -50,11 +50,11 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
50
50
  preferencesKey = `collection-${slug}-${id}`;
51
51
  }
52
52
  }
53
- const isEditing = Boolean(id);
53
+ const operation = collectionSlug && !id ? 'create' : 'update';
54
+ const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission);
54
55
  const getVersions = useCallback(async ()=>{
55
56
  let versionFetchURL;
56
57
  let publishedFetchURL;
57
- const shouldFetchVersions = Boolean(versionsConfig);
58
58
  let unpublishedVersionJSON = null;
59
59
  let versionJSON = null;
60
60
  let shouldFetch = true;
@@ -165,7 +165,8 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
165
165
  id,
166
166
  baseURL,
167
167
  locale,
168
- versionsConfig
168
+ versionsConfig,
169
+ shouldFetchVersions
169
170
  ]);
170
171
  const getDocPermissions = React.useCallback(async ()=>{
171
172
  let docAccessURL;
@@ -247,7 +248,7 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
247
248
  docPreferences,
248
249
  globalSlug,
249
250
  locale,
250
- operation: isEditing ? 'update' : 'create',
251
+ operation,
251
252
  schemaPath: collectionSlug || globalSlug
252
253
  },
253
254
  serverURL
@@ -260,7 +261,7 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
260
261
  getDocPreferences,
261
262
  globalSlug,
262
263
  id,
263
- isEditing,
264
+ operation,
264
265
  locale,
265
266
  onSaveFromProps,
266
267
  serverURL
@@ -278,7 +279,7 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
278
279
  collectionSlug,
279
280
  globalSlug,
280
281
  locale,
281
- operation: isEditing ? 'update' : 'create',
282
+ operation,
282
283
  schemaPath: collectionSlug || globalSlug
283
284
  },
284
285
  onError: onLoadError,
@@ -304,7 +305,7 @@ export const DocumentInfoProvider = ({ children, ...props })=>{
304
305
  };
305
306
  }, [
306
307
  api,
307
- isEditing,
308
+ operation,
308
309
  collectionSlug,
309
310
  serverURL,
310
311
  id,