@payloadcms/next 3.0.0-canary.b6520aa → 3.0.0-canary.b922438

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 (56) hide show
  1. package/dist/elements/DocumentHeader/Tabs/index.scss +0 -1
  2. package/dist/elements/DocumentHeader/index.scss +0 -2
  3. package/dist/elements/LeaveWithoutSaving/index.scss +1 -0
  4. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  5. package/dist/elements/Nav/index.client.js +7 -8
  6. package/dist/elements/Nav/index.client.js.map +1 -1
  7. package/dist/elements/Nav/index.scss +17 -14
  8. package/dist/layouts/Root/index.d.ts.map +1 -1
  9. package/dist/layouts/Root/index.js +16 -1
  10. package/dist/layouts/Root/index.js.map +1 -1
  11. package/dist/prod/styles.css +1 -1
  12. package/dist/scss/app.scss +5 -5
  13. package/dist/scss/type.scss +1 -0
  14. package/dist/views/API/index.scss +1 -2
  15. package/dist/views/Account/index.client.d.ts +3 -0
  16. package/dist/views/Account/index.client.d.ts.map +1 -0
  17. package/dist/views/Account/index.client.js +21 -0
  18. package/dist/views/Account/index.client.js.map +1 -0
  19. package/dist/views/Account/index.d.ts.map +1 -1
  20. package/dist/views/Account/index.js +33 -29
  21. package/dist/views/Account/index.js.map +1 -1
  22. package/dist/views/Dashboard/index.js +3 -4
  23. package/dist/views/Dashboard/index.js.map +1 -1
  24. package/dist/views/Document/index.d.ts.map +1 -1
  25. package/dist/views/Document/index.js +3 -5
  26. package/dist/views/Document/index.js.map +1 -1
  27. package/dist/views/Edit/Default/Auth/APIKey.d.ts +2 -2
  28. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
  29. package/dist/views/Edit/Default/Auth/APIKey.js +35 -8
  30. package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
  31. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  32. package/dist/views/Edit/Default/index.js +4 -2
  33. package/dist/views/Edit/Default/index.js.map +1 -1
  34. package/dist/views/List/Default/index.d.ts.map +1 -1
  35. package/dist/views/List/Default/index.js +28 -30
  36. package/dist/views/List/Default/index.js.map +1 -1
  37. package/dist/views/List/Default/index.scss +5 -12
  38. package/dist/views/List/index.js +3 -4
  39. package/dist/views/List/index.js.map +1 -1
  40. package/dist/views/NotFound/index.d.ts.map +1 -1
  41. package/dist/views/NotFound/index.js +12 -21
  42. package/dist/views/NotFound/index.js.map +1 -1
  43. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +1 -1
  44. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  45. package/dist/views/Version/index.d.ts +1 -1
  46. package/dist/views/Version/index.d.ts.map +1 -1
  47. package/dist/views/Version/index.js +32 -5
  48. package/dist/views/Version/index.js.map +1 -1
  49. package/dist/views/Versions/getLatestVersion.d.ts +13 -4
  50. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  51. package/dist/views/Versions/getLatestVersion.js +6 -1
  52. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  53. package/dist/views/Versions/index.d.ts.map +1 -1
  54. package/dist/views/Versions/index.js +24 -4
  55. package/dist/views/Versions/index.js.map +1 -1
  56. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/Edit/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n DocumentControls,\n DocumentFields,\n Form,\n type FormProps,\n OperationProvider,\n Upload,\n useAuth,\n useComponentMap,\n useConfig,\n useDocumentEvents,\n useDocumentInfo,\n useEditDepth,\n useUploadEdits,\n} from '@payloadcms/ui'\nimport { formatAdminURL, getFormState } from '@payloadcms/ui/shared'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\n\nimport { LeaveWithoutSaving } from '../../../elements/LeaveWithoutSaving/index.js'\nimport { Auth } from './Auth/index.js'\nimport { SetDocumentStepNav } from './SetDocumentStepNav/index.js'\nimport { SetDocumentTitle } from './SetDocumentTitle/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\nexport const DefaultEditView: React.FC = () => {\n const {\n id,\n AfterDocument,\n AfterFields,\n BeforeDocument,\n BeforeFields,\n action,\n apiURL,\n collectionSlug,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n getDocPreferences,\n getVersions,\n globalSlug,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isEditing,\n isInitializing,\n onSave: onSaveFromContext,\n } = useDocumentInfo()\n\n const { refreshCookieAsync, user } = useAuth()\n const config = useConfig()\n const router = useRouter()\n const { getComponentMap, getFieldMap } = useComponentMap()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const {\n admin: { user: userSlug },\n collections,\n globals,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n } = config\n\n const collectionConfig =\n collectionSlug && collections.find((collection) => collection.slug === collectionSlug)\n\n const globalConfig = globalSlug && globals.find((global) => global.slug === globalSlug)\n\n const entitySlug = collectionConfig?.slug || globalConfig?.slug\n\n const componentMap = getComponentMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n const fieldMap = getFieldMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n\n const operation = collectionSlug && !id ? 'create' : 'update'\n\n const auth = collectionConfig ? collectionConfig.auth : undefined\n const upload = collectionConfig ? collectionConfig.upload : undefined\n\n const preventLeaveWithoutSaving =\n (!(collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n !(globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) &&\n !disableLeaveWithoutSaving\n\n const classes = [baseClass, id && `${baseClass}--is-editing`].filter(Boolean).join(' ')\n\n const [schemaPath, setSchemaPath] = React.useState(entitySlug)\n const [validateBeforeSubmit, setValidateBeforeSubmit] = useState(() => {\n if (\n operation === 'create' &&\n collectionConfig.auth &&\n !collectionConfig.auth.disableLocalStrategy\n )\n return true\n return false\n })\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n id,\n entitySlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n // If we're editing the doc of the logged-in user,\n // Refresh the cookie to get new permissions\n if (user && collectionSlug === userSlug && id === user.id) {\n void refreshCookieAsync()\n }\n\n void getVersions()\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: id ? 'update' : 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n onSaveFromContext,\n userSlug,\n reportUpdate,\n id,\n entitySlug,\n user,\n depth,\n collectionSlug,\n getVersions,\n isEditing,\n refreshCookieAsync,\n adminRoute,\n router,\n locale,\n resetUploadEdits,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n return getFormState({\n apiRoute,\n body: {\n id,\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n schemaPath,\n },\n serverURL,\n })\n },\n [apiRoute, collectionSlug, schemaPath, getDocPreferences, globalSlug, id, operation, serverURL],\n )\n\n return (\n <main className={classes}>\n <OperationProvider operation={operation}>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disableValidationOnSubmit={!validateBeforeSubmit}\n disabled={isInitializing || !hasSavePermission}\n initialState={!isInitializing && initialState}\n isInitializing={isInitializing}\n method={id ? 'PATCH' : 'POST'}\n onChange={[onChange]}\n onSuccess={onSave}\n >\n {BeforeDocument}\n {preventLeaveWithoutSaving && <LeaveWithoutSaving />}\n <SetDocumentStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n <SetDocumentTitle\n collectionConfig={collectionConfig}\n config={config}\n fallback={depth <= 1 ? id?.toString() : undefined}\n globalConfig={globalConfig}\n />\n <DocumentControls\n apiURL={apiURL}\n data={data}\n disableActions={disableActions}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={isEditing}\n permissions={docPermissions}\n slug={collectionConfig?.slug || globalConfig?.slug}\n />\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={\n BeforeFields || (\n <Fragment>\n {auth && (\n <Auth\n className={`${baseClass}__auth`}\n collectionSlug={collectionConfig.slug}\n disableLocalStrategy={collectionConfig.auth?.disableLocalStrategy}\n email={data?.email}\n loginWithUsername={auth?.loginWithUsername}\n operation={operation}\n readOnly={!hasSavePermission}\n requirePassword={!id}\n setSchemaPath={setSchemaPath}\n setValidateBeforeSubmit={setValidateBeforeSubmit}\n useAPIKey={auth.useAPIKey}\n username={data?.username}\n verify={auth.verify}\n />\n )}\n {upload && (\n <React.Fragment>\n {componentMap.Upload !== undefined ? (\n componentMap.Upload\n ) : (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={upload}\n />\n )}\n </React.Fragment>\n )}\n </Fragment>\n )\n }\n docPermissions={docPermissions}\n fieldMap={fieldMap}\n readOnly={!hasSavePermission}\n schemaPath={schemaPath}\n />\n {AfterDocument}\n </Form>\n </OperationProvider>\n </main>\n )\n}\n"],"names":["DocumentControls","DocumentFields","Form","OperationProvider","Upload","useAuth","useComponentMap","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","useUploadEdits","formatAdminURL","getFormState","useRouter","useSearchParams","React","Fragment","useCallback","useState","LeaveWithoutSaving","Auth","SetDocumentStepNav","SetDocumentTitle","baseClass","DefaultEditView","id","AfterDocument","AfterFields","BeforeDocument","BeforeFields","action","apiURL","collectionSlug","disableActions","disableLeaveWithoutSaving","docPermissions","getDocPreferences","getVersions","globalSlug","hasPublishPermission","hasSavePermission","initialData","data","initialState","isEditing","isInitializing","onSave","onSaveFromContext","refreshCookieAsync","user","config","router","getComponentMap","getFieldMap","depth","params","reportUpdate","resetUploadEdits","locale","get","admin","userSlug","collections","globals","routes","adminRoute","api","apiRoute","serverURL","collectionConfig","find","collection","slug","globalConfig","global","entitySlug","componentMap","fieldMap","operation","auth","undefined","upload","preventLeaveWithoutSaving","versions","drafts","autosave","classes","filter","Boolean","join","schemaPath","setSchemaPath","validateBeforeSubmit","setValidateBeforeSubmit","disableLocalStrategy","json","updatedAt","result","Date","toISOString","redirectRoute","path","doc","push","onChange","formState","prevFormState","docPreferences","body","main","className","disableValidationOnSubmit","disabled","method","onSuccess","pluralLabel","labels","plural","useAsTitle","fallback","toString","permissions","email","loginWithUsername","readOnly","requirePassword","useAPIKey","username","verify","uploadConfig"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/views/Edit/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n DocumentControls,\n DocumentFields,\n Form,\n type FormProps,\n OperationProvider,\n Upload,\n useAuth,\n useComponentMap,\n useConfig,\n useDocumentEvents,\n useDocumentInfo,\n useEditDepth,\n useUploadEdits,\n} from '@payloadcms/ui'\nimport { formatAdminURL, getFormState } from '@payloadcms/ui/shared'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\n\nimport { LeaveWithoutSaving } from '../../../elements/LeaveWithoutSaving/index.js'\nimport { Auth } from './Auth/index.js'\nimport { SetDocumentStepNav } from './SetDocumentStepNav/index.js'\nimport { SetDocumentTitle } from './SetDocumentTitle/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\nexport const DefaultEditView: React.FC = () => {\n const {\n id,\n AfterDocument,\n AfterFields,\n BeforeDocument,\n BeforeFields,\n action,\n apiURL,\n collectionSlug,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n getDocPreferences,\n getVersions,\n globalSlug,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isEditing,\n isInitializing,\n onSave: onSaveFromContext,\n } = useDocumentInfo()\n\n const { refreshCookieAsync, user } = useAuth()\n const config = useConfig()\n const router = useRouter()\n const { getComponentMap, getFieldMap } = useComponentMap()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const {\n admin: { user: userSlug },\n collections,\n globals,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n } = config\n\n const collectionConfig =\n collectionSlug && collections.find((collection) => collection.slug === collectionSlug)\n\n const globalConfig = globalSlug && globals.find((global) => global.slug === globalSlug)\n\n const entitySlug = collectionConfig?.slug || globalConfig?.slug\n\n const componentMap = getComponentMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n const fieldMap = getFieldMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n\n const operation = collectionSlug && !id ? 'create' : 'update'\n\n const auth = collectionConfig ? collectionConfig.auth : undefined\n const upload = collectionConfig ? collectionConfig.upload : undefined\n\n const preventLeaveWithoutSaving =\n (!(collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n !(globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) &&\n !disableLeaveWithoutSaving\n\n const classes = [baseClass, id && `${baseClass}--is-editing`]\n\n if (globalSlug) classes.push(`global-edit--${globalSlug}`)\n if (collectionSlug) classes.push(`collection-edit--${collectionSlug}`)\n\n const [schemaPath, setSchemaPath] = React.useState(entitySlug)\n const [validateBeforeSubmit, setValidateBeforeSubmit] = useState(() => {\n if (\n operation === 'create' &&\n collectionConfig.auth &&\n !collectionConfig.auth.disableLocalStrategy\n )\n return true\n return false\n })\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n id,\n entitySlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n // If we're editing the doc of the logged-in user,\n // Refresh the cookie to get new permissions\n if (user && collectionSlug === userSlug && id === user.id) {\n void refreshCookieAsync()\n }\n\n void getVersions()\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: id ? 'update' : 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n onSaveFromContext,\n userSlug,\n reportUpdate,\n id,\n entitySlug,\n user,\n depth,\n collectionSlug,\n getVersions,\n isEditing,\n refreshCookieAsync,\n adminRoute,\n router,\n locale,\n resetUploadEdits,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n return getFormState({\n apiRoute,\n body: {\n id,\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n schemaPath,\n },\n serverURL,\n })\n },\n [apiRoute, collectionSlug, schemaPath, getDocPreferences, globalSlug, id, operation, serverURL],\n )\n\n return (\n <main className={classes.filter(Boolean).join(' ')}>\n <OperationProvider operation={operation}>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disableValidationOnSubmit={!validateBeforeSubmit}\n disabled={isInitializing || !hasSavePermission}\n initialState={!isInitializing && initialState}\n isInitializing={isInitializing}\n method={id ? 'PATCH' : 'POST'}\n onChange={[onChange]}\n onSuccess={onSave}\n >\n {BeforeDocument}\n {preventLeaveWithoutSaving && <LeaveWithoutSaving />}\n <SetDocumentStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n <SetDocumentTitle\n collectionConfig={collectionConfig}\n config={config}\n fallback={depth <= 1 ? id?.toString() : undefined}\n globalConfig={globalConfig}\n />\n <DocumentControls\n apiURL={apiURL}\n data={data}\n disableActions={disableActions}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={isEditing}\n permissions={docPermissions}\n slug={collectionConfig?.slug || globalConfig?.slug}\n />\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={\n BeforeFields || (\n <Fragment>\n {auth && (\n <Auth\n className={`${baseClass}__auth`}\n collectionSlug={collectionConfig.slug}\n disableLocalStrategy={collectionConfig.auth?.disableLocalStrategy}\n email={data?.email}\n loginWithUsername={auth?.loginWithUsername}\n operation={operation}\n readOnly={!hasSavePermission}\n requirePassword={!id}\n setSchemaPath={setSchemaPath}\n setValidateBeforeSubmit={setValidateBeforeSubmit}\n useAPIKey={auth.useAPIKey}\n username={data?.username}\n verify={auth.verify}\n />\n )}\n {upload && (\n <React.Fragment>\n {componentMap.Upload !== undefined ? (\n componentMap.Upload\n ) : (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={upload}\n />\n )}\n </React.Fragment>\n )}\n </Fragment>\n )\n }\n docPermissions={docPermissions}\n fieldMap={fieldMap}\n readOnly={!hasSavePermission}\n schemaPath={schemaPath}\n />\n {AfterDocument}\n </Form>\n </OperationProvider>\n </main>\n )\n}\n"],"names":["DocumentControls","DocumentFields","Form","OperationProvider","Upload","useAuth","useComponentMap","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","useUploadEdits","formatAdminURL","getFormState","useRouter","useSearchParams","React","Fragment","useCallback","useState","LeaveWithoutSaving","Auth","SetDocumentStepNav","SetDocumentTitle","baseClass","DefaultEditView","id","AfterDocument","AfterFields","BeforeDocument","BeforeFields","action","apiURL","collectionSlug","disableActions","disableLeaveWithoutSaving","docPermissions","getDocPreferences","getVersions","globalSlug","hasPublishPermission","hasSavePermission","initialData","data","initialState","isEditing","isInitializing","onSave","onSaveFromContext","refreshCookieAsync","user","config","router","getComponentMap","getFieldMap","depth","params","reportUpdate","resetUploadEdits","locale","get","admin","userSlug","collections","globals","routes","adminRoute","api","apiRoute","serverURL","collectionConfig","find","collection","slug","globalConfig","global","entitySlug","componentMap","fieldMap","operation","auth","undefined","upload","preventLeaveWithoutSaving","versions","drafts","autosave","classes","push","schemaPath","setSchemaPath","validateBeforeSubmit","setValidateBeforeSubmit","disableLocalStrategy","json","updatedAt","result","Date","toISOString","redirectRoute","path","doc","onChange","formState","prevFormState","docPreferences","body","main","className","filter","Boolean","join","disableValidationOnSubmit","disabled","method","onSuccess","pluralLabel","labels","plural","useAsTitle","fallback","toString","permissions","email","loginWithUsername","readOnly","requirePassword","useAPIKey","username","verify","uploadConfig"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/List/Default/index.tsx"],"names":[],"mappings":"AAkCA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAElD,OAAO,cAAc,CAAA;AAKrB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EA4KnC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/List/Default/index.tsx"],"names":[],"mappings":"AAmCA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAElD,OAAO,cAAc,CAAA;AAKrB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EA0KnC,CAAA"}
@@ -1,4 +1,4 @@
1
- 'use client';
1
+ /* eslint-disable @typescript-eslint/no-misused-promises */ 'use client';
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { getTranslation } from '@payloadcms/translations';
4
4
  import { Button, DeleteMany, EditMany, Gutter, ListControls, ListSelection, Pagination, PerPage, Pill, PublishMany, RelationshipProvider, SelectionProvider, SetViewActions, StaggeredShimmers, Table, UnpublishMany, useComponentMap, useConfig, useEditDepth, useListInfo, useListQuery, useSearchParams, useStepNav, useTranslation, useWindowInfo } from '@payloadcms/ui';
@@ -46,7 +46,7 @@ export const DefaultListView = ()=>{
46
46
  drawerDepth
47
47
  ]);
48
48
  return /*#__PURE__*/ _jsxs("div", {
49
- className: baseClass,
49
+ className: `${baseClass} ${baseClass}--${collectionSlug}`,
50
50
  children: [
51
51
  /*#__PURE__*/ _jsx(SetViewActions, {
52
52
  actions: actionsMap?.List
@@ -75,10 +75,10 @@ export const DefaultListView = ()=>{
75
75
  !smallBreak && /*#__PURE__*/ _jsx(ListSelection, {
76
76
  label: getTranslation(collectionConfig.labels.plural, i18n)
77
77
  }),
78
- Description && /*#__PURE__*/ _jsx("div", {
78
+ Description ? /*#__PURE__*/ _jsx("div", {
79
79
  className: `${baseClass}__sub-header`,
80
80
  children: Description
81
- })
81
+ }) : null
82
82
  ]
83
83
  })
84
84
  }),
@@ -157,33 +157,31 @@ export const DefaultListView = ()=>{
157
157
  limits: collectionConfig?.admin?.pagination?.limits,
158
158
  resetPage: data.totalDocs <= data.pagingCounter
159
159
  }),
160
- smallBreak && /*#__PURE__*/ _jsx("div", {
160
+ smallBreak && /*#__PURE__*/ _jsxs("div", {
161
161
  className: `${baseClass}__list-selection`,
162
- children: /*#__PURE__*/ _jsxs(Fragment, {
163
- children: [
164
- /*#__PURE__*/ _jsx(ListSelection, {
165
- label: getTranslation(collectionConfig.labels.plural, i18n)
166
- }),
167
- /*#__PURE__*/ _jsxs("div", {
168
- className: `${baseClass}__list-selection-actions`,
169
- children: [
170
- /*#__PURE__*/ _jsx(EditMany, {
171
- collection: collectionConfig,
172
- fieldMap: fieldMap
173
- }),
174
- /*#__PURE__*/ _jsx(PublishMany, {
175
- collection: collectionConfig
176
- }),
177
- /*#__PURE__*/ _jsx(UnpublishMany, {
178
- collection: collectionConfig
179
- }),
180
- /*#__PURE__*/ _jsx(DeleteMany, {
181
- collection: collectionConfig
182
- })
183
- ]
184
- })
185
- ]
186
- })
162
+ children: [
163
+ /*#__PURE__*/ _jsx(ListSelection, {
164
+ label: getTranslation(collectionConfig.labels.plural, i18n)
165
+ }),
166
+ /*#__PURE__*/ _jsxs("div", {
167
+ className: `${baseClass}__list-selection-actions`,
168
+ children: [
169
+ /*#__PURE__*/ _jsx(EditMany, {
170
+ collection: collectionConfig,
171
+ fieldMap: fieldMap
172
+ }),
173
+ /*#__PURE__*/ _jsx(PublishMany, {
174
+ collection: collectionConfig
175
+ }),
176
+ /*#__PURE__*/ _jsx(UnpublishMany, {
177
+ collection: collectionConfig
178
+ }),
179
+ /*#__PURE__*/ _jsx(DeleteMany, {
180
+ collection: collectionConfig
181
+ })
182
+ ]
183
+ })
184
+ ]
187
185
  })
188
186
  ]
189
187
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/views/List/Default/index.tsx"],"sourcesContent":["'use client'\n\nimport type { CollectionComponentMap } from '@payloadcms/ui/utilities/buildComponentMap'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n DeleteMany,\n EditMany,\n Gutter,\n ListControls,\n ListSelection,\n Pagination,\n PerPage,\n Pill,\n PublishMany,\n RelationshipProvider,\n SelectionProvider,\n SetViewActions,\n StaggeredShimmers,\n Table,\n UnpublishMany,\n useComponentMap,\n useConfig,\n useEditDepth,\n useListInfo,\n useListQuery,\n useSearchParams,\n useStepNav,\n useTranslation,\n useWindowInfo,\n} from '@payloadcms/ui'\nimport LinkImport from 'next/link.js'\nimport { formatFilesize, isNumber } from 'payload/shared'\nimport React, { Fragment, useEffect } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'collection-list'\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const DefaultListView: React.FC = () => {\n const { Header, collectionSlug, hasCreatePermission, newDocumentURL } = useListInfo()\n const { data, defaultLimit, handlePageChange, handlePerPageChange } = useListQuery()\n const { searchParams } = useSearchParams()\n\n const config = useConfig()\n\n const { getComponentMap } = useComponentMap()\n\n const componentMap = getComponentMap({ collectionSlug }) as CollectionComponentMap\n\n const {\n AfterList,\n AfterListTable,\n BeforeList,\n BeforeListTable,\n Description,\n actionsMap,\n fieldMap,\n } = componentMap || {}\n\n const collectionConfig = config.collections.find(\n (collection) => collection.slug === collectionSlug,\n )\n\n const { labels } = collectionConfig\n\n const { i18n } = useTranslation()\n\n const drawerDepth = useEditDepth()\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n let docs = data.docs || []\n\n if (collectionConfig.upload) {\n docs = docs?.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n }\n\n useEffect(() => {\n if (drawerDepth <= 1) {\n setStepNav([\n {\n label: labels?.plural,\n },\n ])\n }\n }, [setStepNav, labels, drawerDepth])\n\n return (\n <div className={baseClass}>\n <SetViewActions actions={actionsMap?.List} />\n {BeforeList}\n <SelectionProvider docs={data.docs} totalDocs={data.totalDocs}>\n <Gutter className={`${baseClass}__wrap`}>\n <header className={`${baseClass}__header`}>\n {Header || (\n <Fragment>\n <h1>{getTranslation(labels?.plural, i18n)}</h1>\n {hasCreatePermission && (\n <Pill\n aria-label={i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n to={newDocumentURL}\n >\n {i18n.t('general:createNew')}\n </Pill>\n )}\n {!smallBreak && (\n <ListSelection label={getTranslation(collectionConfig.labels.plural, i18n)} />\n )}\n {Description && <div className={`${baseClass}__sub-header`}>{Description}</div>}\n </Fragment>\n )}\n </header>\n <ListControls collectionConfig={collectionConfig} fieldMap={fieldMap} />\n {BeforeListTable}\n {!data.docs && (\n <StaggeredShimmers\n className={[`${baseClass}__shimmer`, `${baseClass}__shimmer--rows`].join(' ')}\n count={6}\n />\n )}\n {data.docs && data.docs.length > 0 && (\n <RelationshipProvider>\n <Table\n customCellContext={{\n collectionSlug,\n uploadConfig: collectionConfig.upload,\n }}\n data={docs}\n fieldMap={fieldMap}\n />\n </RelationshipProvider>\n )}\n {data.docs && data.docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>{i18n.t('general:noResults', { label: getTranslation(labels?.plural, i18n) })}</p>\n {hasCreatePermission && newDocumentURL && (\n <Button Link={Link} el=\"link\" to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n )}\n </div>\n )}\n {AfterListTable}\n {data.docs && data.docs.length > 0 && (\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data?.totalDocs > 0 && (\n <Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={\n isNumber(searchParams?.limit) ? Number(searchParams.limit) : defaultLimit\n }\n limits={collectionConfig?.admin?.pagination?.limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n />\n {smallBreak && (\n <div className={`${baseClass}__list-selection`}>\n <Fragment>\n <ListSelection\n label={getTranslation(collectionConfig.labels.plural, i18n)}\n />\n <div className={`${baseClass}__list-selection-actions`}>\n <EditMany collection={collectionConfig} fieldMap={fieldMap} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n <DeleteMany collection={collectionConfig} />\n </div>\n </Fragment>\n </div>\n )}\n </Fragment>\n )}\n </div>\n )}\n </Gutter>\n </SelectionProvider>\n {AfterList}\n </div>\n )\n}\n"],"names":["getTranslation","Button","DeleteMany","EditMany","Gutter","ListControls","ListSelection","Pagination","PerPage","Pill","PublishMany","RelationshipProvider","SelectionProvider","SetViewActions","StaggeredShimmers","Table","UnpublishMany","useComponentMap","useConfig","useEditDepth","useListInfo","useListQuery","useSearchParams","useStepNav","useTranslation","useWindowInfo","LinkImport","formatFilesize","isNumber","React","Fragment","useEffect","baseClass","Link","default","DefaultListView","Header","collectionSlug","hasCreatePermission","newDocumentURL","data","defaultLimit","handlePageChange","handlePerPageChange","searchParams","config","getComponentMap","componentMap","AfterList","AfterListTable","BeforeList","BeforeListTable","Description","actionsMap","fieldMap","collectionConfig","collections","find","collection","slug","labels","i18n","drawerDepth","setStepNav","breakpoints","s","smallBreak","docs","upload","map","doc","filesize","label","plural","div","className","actions","List","totalDocs","header","h1","aria-label","t","singular","to","join","count","length","customCellContext","uploadConfig","p","el","hasNextPage","hasPrevPage","limit","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits","admin","pagination","resetPage","pagingCounter"],"mappings":"AAAA;;AAIA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,SACEC,MAAM,EACNC,UAAU,EACVC,QAAQ,EACRC,MAAM,EACNC,YAAY,EACZC,aAAa,EACbC,UAAU,EACVC,OAAO,EACPC,IAAI,EACJC,WAAW,EACXC,oBAAoB,EACpBC,iBAAiB,EACjBC,cAAc,EACdC,iBAAiB,EACjBC,KAAK,EACLC,aAAa,EACbC,eAAe,EACfC,SAAS,EACTC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,eAAe,EACfC,UAAU,EACVC,cAAc,EACdC,aAAa,QACR,iBAAgB;AACvB,OAAOC,gBAAgB,eAAc;AACrC,SAASC,cAAc,EAAEC,QAAQ,QAAQ,iBAAgB;AACzD,OAAOC,SAASC,QAAQ,EAAEC,SAAS,QAAQ,QAAO;AAIlD,MAAMC,YAAY;AAClB,MAAMC,OAAQP,WAAWQ,OAAO,IAAIR;AAEpC,OAAO,MAAMS,kBAA4B;IACvC,MAAM,EAAEC,MAAM,EAAEC,cAAc,EAAEC,mBAAmB,EAAEC,cAAc,EAAE,GAAGnB;IACxE,MAAM,EAAEoB,IAAI,EAAEC,YAAY,EAAEC,gBAAgB,EAAEC,mBAAmB,EAAE,GAAGtB;IACtE,MAAM,EAAEuB,YAAY,EAAE,GAAGtB;IAEzB,MAAMuB,SAAS3B;IAEf,MAAM,EAAE4B,eAAe,EAAE,GAAG7B;IAE5B,MAAM8B,eAAeD,gBAAgB;QAAET;IAAe;IAEtD,MAAM,EACJW,SAAS,EACTC,cAAc,EACdC,UAAU,EACVC,eAAe,EACfC,WAAW,EACXC,UAAU,EACVC,QAAQ,EACT,GAAGP,gBAAgB,CAAC;IAErB,MAAMQ,mBAAmBV,OAAOW,WAAW,CAACC,IAAI,CAC9C,CAACC,aAAeA,WAAWC,IAAI,KAAKtB;IAGtC,MAAM,EAAEuB,MAAM,EAAE,GAAGL;IAEnB,MAAM,EAAEM,IAAI,EAAE,GAAGrC;IAEjB,MAAMsC,cAAc3C;IAEpB,MAAM,EAAE4C,UAAU,EAAE,GAAGxC;IAEvB,MAAM,EACJyC,aAAa,EAAEC,GAAGC,UAAU,EAAE,EAC/B,GAAGzC;IAEJ,IAAI0C,OAAO3B,KAAK2B,IAAI,IAAI,EAAE;IAE1B,IAAIZ,iBAAiBa,MAAM,EAAE;QAC3BD,OAAOA,MAAME,IAAI,CAACC;YAChB,OAAO;gBACL,GAAGA,GAAG;gBACNC,UAAU5C,eAAe2C,IAAIC,QAAQ;YACvC;QACF;IACF;IAEAxC,UAAU;QACR,IAAI+B,eAAe,GAAG;YACpBC,WAAW;gBACT;oBACES,OAAOZ,QAAQa;gBACjB;aACD;QACH;IACF,GAAG;QAACV;QAAYH;QAAQE;KAAY;IAEpC,qBACE,MAACY;QAAIC,WAAW3C;;0BACd,KAACnB;gBAAe+D,SAASvB,YAAYwB;;YACpC3B;0BACD,KAACtC;gBAAkBuD,MAAM3B,KAAK2B,IAAI;gBAAEW,WAAWtC,KAAKsC,SAAS;0BAC3D,cAAA,MAAC1E;oBAAOuE,WAAW,CAAC,EAAE3C,UAAU,MAAM,CAAC;;sCACrC,KAAC+C;4BAAOJ,WAAW,CAAC,EAAE3C,UAAU,QAAQ,CAAC;sCACtCI,wBACC,MAACN;;kDACC,KAACkD;kDAAIhF,eAAe4D,QAAQa,QAAQZ;;oCACnCvB,qCACC,KAAC7B;wCACCwE,cAAYpB,KAAKqB,CAAC,CAAC,0BAA0B;4CAC3CV,OAAOxE,eAAe4D,QAAQuB,UAAUtB;wCAC1C;wCACAuB,IAAI7C;kDAEHsB,KAAKqB,CAAC,CAAC;;oCAGX,CAAChB,4BACA,KAAC5D;wCAAckE,OAAOxE,eAAeuD,iBAAiBK,MAAM,CAACa,MAAM,EAAEZ;;oCAEtET,6BAAe,KAACsB;wCAAIC,WAAW,CAAC,EAAE3C,UAAU,YAAY,CAAC;kDAAGoB;;;;;sCAInE,KAAC/C;4BAAakD,kBAAkBA;4BAAkBD,UAAUA;;wBAC3DH;wBACA,CAACX,KAAK2B,IAAI,kBACT,KAACrD;4BACC6D,WAAW;gCAAC,CAAC,EAAE3C,UAAU,SAAS,CAAC;gCAAE,CAAC,EAAEA,UAAU,eAAe,CAAC;6BAAC,CAACqD,IAAI,CAAC;4BACzEC,OAAO;;wBAGV9C,KAAK2B,IAAI,IAAI3B,KAAK2B,IAAI,CAACoB,MAAM,GAAG,mBAC/B,KAAC5E;sCACC,cAAA,KAACI;gCACCyE,mBAAmB;oCACjBnD;oCACAoD,cAAclC,iBAAiBa,MAAM;gCACvC;gCACA5B,MAAM2B;gCACNb,UAAUA;;;wBAIfd,KAAK2B,IAAI,IAAI3B,KAAK2B,IAAI,CAACoB,MAAM,KAAK,mBACjC,MAACb;4BAAIC,WAAW,CAAC,EAAE3C,UAAU,YAAY,CAAC;;8CACxC,KAAC0D;8CAAG7B,KAAKqB,CAAC,CAAC,qBAAqB;wCAAEV,OAAOxE,eAAe4D,QAAQa,QAAQZ;oCAAM;;gCAC7EvB,uBAAuBC,gCACtB,KAACtC;oCAAOgC,MAAMA;oCAAM0D,IAAG;oCAAOP,IAAI7C;8CAC/BsB,KAAKqB,CAAC,CAAC,0BAA0B;wCAChCV,OAAOxE,eAAe4D,QAAQuB,UAAUtB;oCAC1C;;;;wBAKPZ;wBACAT,KAAK2B,IAAI,IAAI3B,KAAK2B,IAAI,CAACoB,MAAM,GAAG,mBAC/B,MAACb;4BAAIC,WAAW,CAAC,EAAE3C,UAAU,eAAe,CAAC;;8CAC3C,KAACzB;oCACCqF,aAAapD,KAAKoD,WAAW;oCAC7BC,aAAarD,KAAKqD,WAAW;oCAC7BC,OAAOtD,KAAKsD,KAAK;oCACjBC,UAAUvD,KAAKuD,QAAQ;oCACvBC,mBAAmB;oCACnBC,UAAUvD;oCACVwD,MAAM1D,KAAK0D,IAAI;oCACfC,UAAU3D,KAAK2D,QAAQ;oCACvBC,YAAY5D,KAAK4D,UAAU;;gCAE5B5D,MAAMsC,YAAY,mBACjB,MAAChD;;sDACC,MAAC4C;4CAAIC,WAAW,CAAC,EAAE3C,UAAU,WAAW,CAAC;;gDACtCQ,KAAK0D,IAAI,GAAG1D,KAAKsD,KAAK,GAAItD,CAAAA,KAAKsD,KAAK,GAAG,CAAA;gDAAG;gDAC1CtD,KAAK4D,UAAU,GAAG,KAAK5D,KAAK4D,UAAU,KAAK5D,KAAK0D,IAAI,GACjD1D,KAAKsD,KAAK,GAAGtD,KAAK0D,IAAI,GACtB1D,KAAKsC,SAAS;gDAAE;gDACnBjB,KAAKqB,CAAC,CAAC;gDAAc;gDAAE1C,KAAKsC,SAAS;;;sDAExC,KAACtE;4CACC6F,cAAc1D;4CACdmD,OACElE,SAASgB,cAAckD,SAASQ,OAAO1D,aAAakD,KAAK,IAAIrD;4CAE/D8D,QAAQhD,kBAAkBiD,OAAOC,YAAYF;4CAC7CG,WAAWlE,KAAKsC,SAAS,IAAItC,KAAKmE,aAAa;;wCAEhDzC,4BACC,KAACQ;4CAAIC,WAAW,CAAC,EAAE3C,UAAU,gBAAgB,CAAC;sDAC5C,cAAA,MAACF;;kEACC,KAACxB;wDACCkE,OAAOxE,eAAeuD,iBAAiBK,MAAM,CAACa,MAAM,EAAEZ;;kEAExD,MAACa;wDAAIC,WAAW,CAAC,EAAE3C,UAAU,wBAAwB,CAAC;;0EACpD,KAAC7B;gEAASuD,YAAYH;gEAAkBD,UAAUA;;0EAClD,KAAC5C;gEAAYgD,YAAYH;;0EACzB,KAACvC;gEAAc0C,YAAYH;;0EAC3B,KAACrD;gEAAWwD,YAAYH;;;;;;;;;;;;;;YAW3CP;;;AAGP,EAAC"}
1
+ {"version":3,"sources":["../../../../src/views/List/Default/index.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-misused-promises */\n'use client'\n\nimport type { CollectionComponentMap } from '@payloadcms/ui/utilities/buildComponentMap'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n DeleteMany,\n EditMany,\n Gutter,\n ListControls,\n ListSelection,\n Pagination,\n PerPage,\n Pill,\n PublishMany,\n RelationshipProvider,\n SelectionProvider,\n SetViewActions,\n StaggeredShimmers,\n Table,\n UnpublishMany,\n useComponentMap,\n useConfig,\n useEditDepth,\n useListInfo,\n useListQuery,\n useSearchParams,\n useStepNav,\n useTranslation,\n useWindowInfo,\n} from '@payloadcms/ui'\nimport LinkImport from 'next/link.js'\nimport { formatFilesize, isNumber } from 'payload/shared'\nimport React, { Fragment, useEffect } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'collection-list'\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const DefaultListView: React.FC = () => {\n const { Header, collectionSlug, hasCreatePermission, newDocumentURL } = useListInfo()\n const { data, defaultLimit, handlePageChange, handlePerPageChange } = useListQuery()\n const { searchParams } = useSearchParams()\n\n const config = useConfig()\n\n const { getComponentMap } = useComponentMap()\n\n const componentMap = getComponentMap({ collectionSlug }) as CollectionComponentMap\n\n const {\n AfterList,\n AfterListTable,\n BeforeList,\n BeforeListTable,\n Description,\n actionsMap,\n fieldMap,\n } = componentMap || {}\n\n const collectionConfig = config.collections.find(\n (collection) => collection.slug === collectionSlug,\n )\n\n const { labels } = collectionConfig\n\n const { i18n } = useTranslation()\n\n const drawerDepth = useEditDepth()\n\n const { setStepNav } = useStepNav()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n let docs = data.docs || []\n\n if (collectionConfig.upload) {\n docs = docs?.map((doc) => {\n return {\n ...doc,\n filesize: formatFilesize(doc.filesize),\n }\n })\n }\n\n useEffect(() => {\n if (drawerDepth <= 1) {\n setStepNav([\n {\n label: labels?.plural,\n },\n ])\n }\n }, [setStepNav, labels, drawerDepth])\n\n return (\n <div className={`${baseClass} ${baseClass}--${collectionSlug}`}>\n <SetViewActions actions={actionsMap?.List} />\n {BeforeList}\n <SelectionProvider docs={data.docs} totalDocs={data.totalDocs}>\n <Gutter className={`${baseClass}__wrap`}>\n <header className={`${baseClass}__header`}>\n {Header || (\n <Fragment>\n <h1>{getTranslation(labels?.plural, i18n)}</h1>\n {hasCreatePermission && (\n <Pill\n aria-label={i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n to={newDocumentURL}\n >\n {i18n.t('general:createNew')}\n </Pill>\n )}\n {!smallBreak && (\n <ListSelection label={getTranslation(collectionConfig.labels.plural, i18n)} />\n )}\n {Description ? (\n <div className={`${baseClass}__sub-header`}>{Description}</div>\n ) : null}\n </Fragment>\n )}\n </header>\n <ListControls collectionConfig={collectionConfig} fieldMap={fieldMap} />\n {BeforeListTable}\n {!data.docs && (\n <StaggeredShimmers\n className={[`${baseClass}__shimmer`, `${baseClass}__shimmer--rows`].join(' ')}\n count={6}\n />\n )}\n {data.docs && data.docs.length > 0 && (\n <RelationshipProvider>\n <Table\n customCellContext={{\n collectionSlug,\n uploadConfig: collectionConfig.upload,\n }}\n data={docs}\n fieldMap={fieldMap}\n />\n </RelationshipProvider>\n )}\n {data.docs && data.docs.length === 0 && (\n <div className={`${baseClass}__no-results`}>\n <p>{i18n.t('general:noResults', { label: getTranslation(labels?.plural, i18n) })}</p>\n {hasCreatePermission && newDocumentURL && (\n <Button Link={Link} el=\"link\" to={newDocumentURL}>\n {i18n.t('general:createNewLabel', {\n label: getTranslation(labels?.singular, i18n),\n })}\n </Button>\n )}\n </div>\n )}\n {AfterListTable}\n {data.docs && data.docs.length > 0 && (\n <div className={`${baseClass}__page-controls`}>\n <Pagination\n hasNextPage={data.hasNextPage}\n hasPrevPage={data.hasPrevPage}\n limit={data.limit}\n nextPage={data.nextPage}\n numberOfNeighbors={1}\n onChange={handlePageChange}\n page={data.page}\n prevPage={data.prevPage}\n totalPages={data.totalPages}\n />\n {data?.totalDocs > 0 && (\n <Fragment>\n <div className={`${baseClass}__page-info`}>\n {data.page * data.limit - (data.limit - 1)}-\n {data.totalPages > 1 && data.totalPages !== data.page\n ? data.limit * data.page\n : data.totalDocs}{' '}\n {i18n.t('general:of')} {data.totalDocs}\n </div>\n <PerPage\n handleChange={handlePerPageChange}\n limit={\n isNumber(searchParams?.limit) ? Number(searchParams.limit) : defaultLimit\n }\n limits={collectionConfig?.admin?.pagination?.limits}\n resetPage={data.totalDocs <= data.pagingCounter}\n />\n {smallBreak && (\n <div className={`${baseClass}__list-selection`}>\n <ListSelection label={getTranslation(collectionConfig.labels.plural, i18n)} />\n <div className={`${baseClass}__list-selection-actions`}>\n <EditMany collection={collectionConfig} fieldMap={fieldMap} />\n <PublishMany collection={collectionConfig} />\n <UnpublishMany collection={collectionConfig} />\n <DeleteMany collection={collectionConfig} />\n </div>\n </div>\n )}\n </Fragment>\n )}\n </div>\n )}\n </Gutter>\n </SelectionProvider>\n {AfterList}\n </div>\n )\n}\n"],"names":["getTranslation","Button","DeleteMany","EditMany","Gutter","ListControls","ListSelection","Pagination","PerPage","Pill","PublishMany","RelationshipProvider","SelectionProvider","SetViewActions","StaggeredShimmers","Table","UnpublishMany","useComponentMap","useConfig","useEditDepth","useListInfo","useListQuery","useSearchParams","useStepNav","useTranslation","useWindowInfo","LinkImport","formatFilesize","isNumber","React","Fragment","useEffect","baseClass","Link","default","DefaultListView","Header","collectionSlug","hasCreatePermission","newDocumentURL","data","defaultLimit","handlePageChange","handlePerPageChange","searchParams","config","getComponentMap","componentMap","AfterList","AfterListTable","BeforeList","BeforeListTable","Description","actionsMap","fieldMap","collectionConfig","collections","find","collection","slug","labels","i18n","drawerDepth","setStepNav","breakpoints","s","smallBreak","docs","upload","map","doc","filesize","label","plural","div","className","actions","List","totalDocs","header","h1","aria-label","t","singular","to","join","count","length","customCellContext","uploadConfig","p","el","hasNextPage","hasPrevPage","limit","nextPage","numberOfNeighbors","onChange","page","prevPage","totalPages","handleChange","Number","limits","admin","pagination","resetPage","pagingCounter"],"mappings":"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"}
@@ -15,7 +15,7 @@
15
15
  display: flex;
16
16
  align-items: center;
17
17
  flex-wrap: wrap;
18
- gap: base(0.75);
18
+ gap: base(0.8);
19
19
 
20
20
  h1 {
21
21
  margin: 0;
@@ -95,18 +95,18 @@
95
95
  position: fixed;
96
96
  bottom: 0;
97
97
  z-index: 10;
98
- padding: base(0.75) 0;
98
+ padding: base(0.8) 0;
99
99
  width: 100%;
100
100
  background-color: var(--theme-bg);
101
101
 
102
102
  .btn {
103
- margin: 0 0 0 base(0.5);
103
+ margin: 0 0 0 base(0.4);
104
104
  }
105
105
 
106
106
  .btn {
107
107
  background-color: var(--theme-elevation-100);
108
108
  cursor: pointer;
109
- padding: 0 base(0.25);
109
+ padding: 0 base(0.4);
110
110
  border-radius: $style-radius-s;
111
111
 
112
112
  &:hover {
@@ -180,13 +180,6 @@
180
180
  }
181
181
 
182
182
  @include small-break {
183
- margin-top: 0;
184
- margin-bottom: base(3);
185
-
186
- &__header {
187
- .pill {
188
- top: -6px;
189
- }
190
- }
183
+ margin-bottom: base(2.4);
191
184
  }
192
185
  }
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { HydrateClientUser, ListInfoProvider, ListQueryProvider, TableColumnsProvider } from '@payloadcms/ui';
2
+ import { HydrateAuthProvider, ListInfoProvider, ListQueryProvider, TableColumnsProvider } from '@payloadcms/ui';
3
3
  import { RenderCustomComponent, formatAdminURL } from '@payloadcms/ui/shared';
4
4
  import { notFound } from 'next/navigation.js';
5
5
  import { createClientCollectionConfig, mergeListSearchAndWhere } from 'payload';
@@ -85,9 +85,8 @@ export const ListView = async ({ initPageResult, params, searchParams })=>{
85
85
  };
86
86
  return /*#__PURE__*/ _jsxs(Fragment, {
87
87
  children: [
88
- /*#__PURE__*/ _jsx(HydrateClientUser, {
89
- permissions: permissions,
90
- user: user
88
+ /*#__PURE__*/ _jsx(HydrateAuthProvider, {
89
+ permissions: permissions
91
90
  }),
92
91
  /*#__PURE__*/ _jsx(ListInfoProvider, {
93
92
  collectionConfig: createClientCollectionConfig({
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type { AdminViewProps, Where } from 'payload'\n\nimport {\n HydrateClientUser,\n ListInfoProvider,\n ListQueryProvider,\n TableColumnsProvider,\n} from '@payloadcms/ui'\nimport { RenderCustomComponent, formatAdminURL } from '@payloadcms/ui/shared'\nimport { notFound } from 'next/navigation.js'\nimport { createClientCollectionConfig, mergeListSearchAndWhere } from 'payload'\nimport { isNumber, isReactComponentOrFunction } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport type { DefaultListViewProps, ListPreferences } from './Default/types.js'\n\nimport { DefaultListView } from './Default/index.js'\n\nexport { generateListMetadata } from './meta.js'\n\nexport const ListView: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n locale,\n payload,\n payload: { config },\n query,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const collectionSlug = collectionConfig?.slug\n\n if (!permissions?.collections?.[collectionSlug]?.read?.permission) {\n notFound()\n }\n\n let listPreferences: ListPreferences\n const preferenceKey = `${collectionSlug}-list`\n\n try {\n listPreferences = (await payload\n .find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n req,\n user,\n where: {\n and: [\n {\n key: {\n equals: preferenceKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user?.id,\n },\n },\n ],\n },\n })\n ?.then((res) => res?.docs?.[0]?.value)) as ListPreferences\n } catch (error) {} // eslint-disable-line no-empty\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n const {\n admin: { components: { views: { List: CustomList } = {} } = {} },\n } = collectionConfig\n\n if (!visibleEntities.collections.includes(collectionSlug)) {\n return notFound()\n }\n\n let CustomListView = null\n\n if (CustomList && typeof CustomList === 'function') {\n CustomListView = CustomList\n } else if (typeof CustomList === 'object' && isReactComponentOrFunction(CustomList.Component)) {\n CustomListView = CustomList.Component\n }\n\n const page = isNumber(query?.page) ? Number(query.page) : 0\n const whereQuery = mergeListSearchAndWhere({\n collectionConfig,\n query: {\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: (query?.where as Where) || undefined,\n },\n })\n const limit = isNumber(query?.limit)\n ? Number(query.limit)\n : listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n const sort =\n query?.sort && typeof query.sort === 'string'\n ? query.sort\n : listPreferences?.sort || collectionConfig.defaultSort || undefined\n\n const data = await payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: null,\n limit,\n locale,\n overrideAccess: false,\n page,\n req,\n sort,\n user,\n where: whereQuery || {},\n })\n\n const viewComponentProps: DefaultListViewProps = {\n collectionSlug,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n }\n\n return (\n <Fragment>\n <HydrateClientUser permissions={permissions} user={user} />\n <ListInfoProvider\n collectionConfig={createClientCollectionConfig({\n collection: collectionConfig,\n t: initPageResult.req.i18n.t,\n })}\n collectionSlug={collectionSlug}\n hasCreatePermission={permissions?.collections?.[collectionSlug]?.create?.permission}\n newDocumentURL={formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })}\n >\n <ListQueryProvider\n data={data}\n defaultLimit={limit || collectionConfig?.admin?.pagination?.defaultLimit}\n defaultSort={sort}\n modifySearchParams\n preferenceKey={preferenceKey}\n >\n <TableColumnsProvider\n collectionSlug={collectionSlug}\n enableRowSelections\n listPreferences={listPreferences}\n preferenceKey={preferenceKey}\n >\n <RenderCustomComponent\n CustomComponent={CustomListView}\n DefaultComponent={DefaultListView}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n collectionConfig,\n data,\n hasCreatePermission:\n permissions?.collections?.[collectionSlug]?.create?.permission,\n i18n,\n limit,\n listPreferences,\n locale: fullLocale,\n newDocumentURL: formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n }),\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n </Fragment>\n )\n }\n\n return notFound()\n}\n"],"names":["HydrateClientUser","ListInfoProvider","ListQueryProvider","TableColumnsProvider","RenderCustomComponent","formatAdminURL","notFound","createClientCollectionConfig","mergeListSearchAndWhere","isNumber","isReactComponentOrFunction","React","Fragment","DefaultListView","generateListMetadata","ListView","initPageResult","params","searchParams","collectionConfig","locale","fullLocale","permissions","req","i18n","payload","config","query","user","visibleEntities","collectionSlug","slug","collections","read","permission","listPreferences","preferenceKey","find","collection","depth","limit","where","and","key","equals","id","then","res","docs","value","error","routes","admin","adminRoute","components","views","List","CustomList","includes","CustomListView","Component","page","Number","whereQuery","search","undefined","pagination","defaultLimit","sort","defaultSort","data","draft","fallbackLocale","overrideAccess","viewComponentProps","listSearchableFields","t","hasCreatePermission","create","newDocumentURL","path","modifySearchParams","enableRowSelections","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type { AdminViewProps, Where } from 'payload'\n\nimport {\n HydrateAuthProvider,\n ListInfoProvider,\n ListQueryProvider,\n TableColumnsProvider,\n} from '@payloadcms/ui'\nimport { RenderCustomComponent, formatAdminURL } from '@payloadcms/ui/shared'\nimport { notFound } from 'next/navigation.js'\nimport { createClientCollectionConfig, mergeListSearchAndWhere } from 'payload'\nimport { isNumber, isReactComponentOrFunction } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport type { DefaultListViewProps, ListPreferences } from './Default/types.js'\n\nimport { DefaultListView } from './Default/index.js'\n\nexport { generateListMetadata } from './meta.js'\n\nexport const ListView: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n locale,\n payload,\n payload: { config },\n query,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const collectionSlug = collectionConfig?.slug\n\n if (!permissions?.collections?.[collectionSlug]?.read?.permission) {\n notFound()\n }\n\n let listPreferences: ListPreferences\n const preferenceKey = `${collectionSlug}-list`\n\n try {\n listPreferences = (await payload\n .find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n req,\n user,\n where: {\n and: [\n {\n key: {\n equals: preferenceKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user?.id,\n },\n },\n ],\n },\n })\n ?.then((res) => res?.docs?.[0]?.value)) as ListPreferences\n } catch (error) {} // eslint-disable-line no-empty\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n const {\n admin: { components: { views: { List: CustomList } = {} } = {} },\n } = collectionConfig\n\n if (!visibleEntities.collections.includes(collectionSlug)) {\n return notFound()\n }\n\n let CustomListView = null\n\n if (CustomList && typeof CustomList === 'function') {\n CustomListView = CustomList\n } else if (typeof CustomList === 'object' && isReactComponentOrFunction(CustomList.Component)) {\n CustomListView = CustomList.Component\n }\n\n const page = isNumber(query?.page) ? Number(query.page) : 0\n const whereQuery = mergeListSearchAndWhere({\n collectionConfig,\n query: {\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: (query?.where as Where) || undefined,\n },\n })\n const limit = isNumber(query?.limit)\n ? Number(query.limit)\n : listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n const sort =\n query?.sort && typeof query.sort === 'string'\n ? query.sort\n : listPreferences?.sort || collectionConfig.defaultSort || undefined\n\n const data = await payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: null,\n limit,\n locale,\n overrideAccess: false,\n page,\n req,\n sort,\n user,\n where: whereQuery || {},\n })\n\n const viewComponentProps: DefaultListViewProps = {\n collectionSlug,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n }\n\n return (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListInfoProvider\n collectionConfig={createClientCollectionConfig({\n collection: collectionConfig,\n t: initPageResult.req.i18n.t,\n })}\n collectionSlug={collectionSlug}\n hasCreatePermission={permissions?.collections?.[collectionSlug]?.create?.permission}\n newDocumentURL={formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })}\n >\n <ListQueryProvider\n data={data}\n defaultLimit={limit || collectionConfig?.admin?.pagination?.defaultLimit}\n defaultSort={sort}\n modifySearchParams\n preferenceKey={preferenceKey}\n >\n <TableColumnsProvider\n collectionSlug={collectionSlug}\n enableRowSelections\n listPreferences={listPreferences}\n preferenceKey={preferenceKey}\n >\n <RenderCustomComponent\n CustomComponent={CustomListView}\n DefaultComponent={DefaultListView}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n collectionConfig,\n data,\n hasCreatePermission:\n permissions?.collections?.[collectionSlug]?.create?.permission,\n i18n,\n limit,\n listPreferences,\n locale: fullLocale,\n newDocumentURL: formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n }),\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n </TableColumnsProvider>\n </ListQueryProvider>\n </ListInfoProvider>\n </Fragment>\n )\n }\n\n return notFound()\n}\n"],"names":["HydrateAuthProvider","ListInfoProvider","ListQueryProvider","TableColumnsProvider","RenderCustomComponent","formatAdminURL","notFound","createClientCollectionConfig","mergeListSearchAndWhere","isNumber","isReactComponentOrFunction","React","Fragment","DefaultListView","generateListMetadata","ListView","initPageResult","params","searchParams","collectionConfig","locale","fullLocale","permissions","req","i18n","payload","config","query","user","visibleEntities","collectionSlug","slug","collections","read","permission","listPreferences","preferenceKey","find","collection","depth","limit","where","and","key","equals","id","then","res","docs","value","error","routes","admin","adminRoute","components","views","List","CustomList","includes","CustomListView","Component","page","Number","whereQuery","search","undefined","pagination","defaultLimit","sort","defaultSort","data","draft","fallbackLocale","overrideAccess","viewComponentProps","listSearchableFields","t","hasCreatePermission","create","newDocumentURL","path","modifySearchParams","enableRowSelections","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/NotFound/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAIlE,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,eAAO,MAAM,oBAAoB,+BAE9B;IACD,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAG,OAAO,CAAC,QAAQ,CAUnB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvB,eAAO,MAAM,YAAY,qDAItB;IACD,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,CAAA;KACnB,CAAA;IACD,YAAY,EAAE;QACZ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAA;CACF,+BA4BA,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,kBAE1B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/NotFound/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAIlE,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,eAAO,MAAM,oBAAoB,+BAE9B;IACD,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAG,OAAO,CAAC,QAAQ,CAUnB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvB,eAAO,MAAM,YAAY,qDAItB;IACD,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,CAAA;KACnB,CAAA;IACD,YAAY,EAAE;QACZ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAA;CACF,+BAyBA,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,kBAE1B,CAAA"}
@@ -1,7 +1,6 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { HydrateClientUser } from '@payloadcms/ui';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
3
2
  import { formatAdminURL } from '@payloadcms/ui/shared';
4
- import React, { Fragment } from 'react';
3
+ import React from 'react';
5
4
  import { DefaultTemplate } from '../../templates/Default/index.js';
6
5
  import { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js';
7
6
  import { initPage } from '../../utilities/initPage/index.js';
@@ -27,24 +26,16 @@ export const NotFoundPage = async ({ config: configPromise, params, searchParams
27
26
  }),
28
27
  searchParams
29
28
  });
30
- return /*#__PURE__*/ _jsxs(Fragment, {
31
- children: [
32
- /*#__PURE__*/ _jsx(HydrateClientUser, {
33
- permissions: initPageResult.permissions,
34
- user: initPageResult.req.user
35
- }),
36
- /*#__PURE__*/ _jsx(DefaultTemplate, {
37
- i18n: initPageResult.req.i18n,
38
- locale: initPageResult.locale,
39
- params: params,
40
- payload: initPageResult.req.payload,
41
- permissions: initPageResult.permissions,
42
- searchParams: searchParams,
43
- user: initPageResult.req.user,
44
- visibleEntities: initPageResult.visibleEntities,
45
- children: /*#__PURE__*/ _jsx(NotFoundClient, {})
46
- })
47
- ]
29
+ return /*#__PURE__*/ _jsx(DefaultTemplate, {
30
+ i18n: initPageResult.req.i18n,
31
+ locale: initPageResult.locale,
32
+ params: params,
33
+ payload: initPageResult.req.payload,
34
+ permissions: initPageResult.permissions,
35
+ searchParams: searchParams,
36
+ user: initPageResult.req.user,
37
+ visibleEntities: initPageResult.visibleEntities,
38
+ children: /*#__PURE__*/ _jsx(NotFoundClient, {})
48
39
  });
49
40
  };
50
41
  export const NotFoundView = ()=>{
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { AdminViewComponent, SanitizedConfig } from 'payload'\n\nimport { HydrateClientUser } from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport React, { Fragment } from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { NotFoundClient } from './index.client.js'\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n}: {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: { [key: string]: string | string[] }\n}): Promise<Metadata> => {\n const config = await configPromise\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n return {\n title: i18n.t('general:notFound'),\n }\n}\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18n\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const NotFoundPage = async ({\n config: configPromise,\n params,\n searchParams,\n}: {\n config: Promise<SanitizedConfig>\n params: {\n segments: string[]\n }\n searchParams: {\n [key: string]: string | string[]\n }\n}) => {\n const config = await configPromise\n const { routes: { admin: adminRoute } = {} } = config\n\n const initPageResult = await initPage({\n config,\n redirectUnauthenticatedUser: true,\n route: formatAdminURL({ adminRoute, path: '/not-found' }),\n searchParams,\n })\n\n return (\n <Fragment>\n <HydrateClientUser permissions={initPageResult.permissions} user={initPageResult.req.user} />\n <DefaultTemplate\n i18n={initPageResult.req.i18n}\n locale={initPageResult.locale}\n params={params}\n payload={initPageResult.req.payload}\n permissions={initPageResult.permissions}\n searchParams={searchParams}\n user={initPageResult.req.user}\n visibleEntities={initPageResult.visibleEntities}\n >\n <NotFoundClient />\n </DefaultTemplate>\n </Fragment>\n )\n}\n\nexport const NotFoundView: AdminViewComponent = () => {\n return <NotFoundClient marginTop=\"large\" />\n}\n"],"names":["HydrateClientUser","formatAdminURL","React","Fragment","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","params","searchParams","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","permissions","user","req","locale","payload","visibleEntities","NotFoundView","marginTop"],"mappings":";AAIA,SAASA,iBAAiB,QAAQ,iBAAgB;AAClD,SAASC,cAAc,QAAQ,wBAAuB;AACtD,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAEvC,SAASC,eAAe,QAAQ,mCAAkC;AAClE,SAASC,kBAAkB,QAAQ,wCAAuC;AAC1E,SAASC,QAAQ,QAAQ,oCAAmC;AAC5D,SAASC,cAAc,QAAQ,oBAAmB;AAElD,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EAItB;IACC,MAAMD,SAAS,MAAMC;IAErB,MAAMC,OAAO,MAAMN,mBAAmB;QACpCI;IACF;IAEA,OAAO;QACLG,OAAOD,KAAKE,CAAC,CAAC;IAChB;AACF,EAAC;AAQD,OAAO,MAAMC,eAAe,OAAO,EACjCL,QAAQC,aAAa,EACrBK,MAAM,EACNC,YAAY,EASb;IACC,MAAMP,SAAS,MAAMC;IACrB,MAAM,EAAEO,QAAQ,EAAEC,OAAOC,UAAU,EAAE,GAAG,CAAC,CAAC,EAAE,GAAGV;IAE/C,MAAMW,iBAAiB,MAAMd,SAAS;QACpCG;QACAY,6BAA6B;QAC7BC,OAAOrB,eAAe;YAAEkB;YAAYI,MAAM;QAAa;QACvDP;IACF;IAEA,qBACE,MAACb;;0BACC,KAACH;gBAAkBwB,aAAaJ,eAAeI,WAAW;gBAAEC,MAAML,eAAeM,GAAG,CAACD,IAAI;;0BACzF,KAACrB;gBACCO,MAAMS,eAAeM,GAAG,CAACf,IAAI;gBAC7BgB,QAAQP,eAAeO,MAAM;gBAC7BZ,QAAQA;gBACRa,SAASR,eAAeM,GAAG,CAACE,OAAO;gBACnCJ,aAAaJ,eAAeI,WAAW;gBACvCR,cAAcA;gBACdS,MAAML,eAAeM,GAAG,CAACD,IAAI;gBAC7BI,iBAAiBT,eAAeS,eAAe;0BAE/C,cAAA,KAACtB;;;;AAIT,EAAC;AAED,OAAO,MAAMuB,eAAmC;IAC9C,qBAAO,KAACvB;QAAewB,WAAU;;AACnC,EAAC"}
1
+ {"version":3,"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { AdminViewComponent, SanitizedConfig } from 'payload'\n\nimport { HydrateAuthProvider } from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport React, { Fragment } from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { NotFoundClient } from './index.client.js'\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n}: {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: { [key: string]: string | string[] }\n}): Promise<Metadata> => {\n const config = await configPromise\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n return {\n title: i18n.t('general:notFound'),\n }\n}\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18n\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const NotFoundPage = async ({\n config: configPromise,\n params,\n searchParams,\n}: {\n config: Promise<SanitizedConfig>\n params: {\n segments: string[]\n }\n searchParams: {\n [key: string]: string | string[]\n }\n}) => {\n const config = await configPromise\n const { routes: { admin: adminRoute } = {} } = config\n\n const initPageResult = await initPage({\n config,\n redirectUnauthenticatedUser: true,\n route: formatAdminURL({ adminRoute, path: '/not-found' }),\n searchParams,\n })\n\n return (\n <DefaultTemplate\n i18n={initPageResult.req.i18n}\n locale={initPageResult.locale}\n params={params}\n payload={initPageResult.req.payload}\n permissions={initPageResult.permissions}\n searchParams={searchParams}\n user={initPageResult.req.user}\n visibleEntities={initPageResult.visibleEntities}\n >\n <NotFoundClient />\n </DefaultTemplate>\n )\n}\n\nexport const NotFoundView: AdminViewComponent = () => {\n return <NotFoundClient marginTop=\"large\" />\n}\n"],"names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","params","searchParams","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","req","locale","payload","permissions","user","visibleEntities","NotFoundView","marginTop"],"mappings":";AAKA,SAASA,cAAc,QAAQ,wBAAuB;AACtD,OAAOC,WAAyB,QAAO;AAEvC,SAASC,eAAe,QAAQ,mCAAkC;AAClE,SAASC,kBAAkB,QAAQ,wCAAuC;AAC1E,SAASC,QAAQ,QAAQ,oCAAmC;AAC5D,SAASC,cAAc,QAAQ,oBAAmB;AAElD,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EAItB;IACC,MAAMD,SAAS,MAAMC;IAErB,MAAMC,OAAO,MAAMN,mBAAmB;QACpCI;IACF;IAEA,OAAO;QACLG,OAAOD,KAAKE,CAAC,CAAC;IAChB;AACF,EAAC;AAQD,OAAO,MAAMC,eAAe,OAAO,EACjCL,QAAQC,aAAa,EACrBK,MAAM,EACNC,YAAY,EASb;IACC,MAAMP,SAAS,MAAMC;IACrB,MAAM,EAAEO,QAAQ,EAAEC,OAAOC,UAAU,EAAE,GAAG,CAAC,CAAC,EAAE,GAAGV;IAE/C,MAAMW,iBAAiB,MAAMd,SAAS;QACpCG;QACAY,6BAA6B;QAC7BC,OAAOpB,eAAe;YAAEiB;YAAYI,MAAM;QAAa;QACvDP;IACF;IAEA,qBACE,KAACZ;QACCO,MAAMS,eAAeI,GAAG,CAACb,IAAI;QAC7Bc,QAAQL,eAAeK,MAAM;QAC7BV,QAAQA;QACRW,SAASN,eAAeI,GAAG,CAACE,OAAO;QACnCC,aAAaP,eAAeO,WAAW;QACvCX,cAAcA;QACdY,MAAMR,eAAeI,GAAG,CAACI,IAAI;QAC7BC,iBAAiBT,eAAeS,eAAe;kBAE/C,cAAA,KAACtB;;AAGP,EAAC;AAED,OAAO,MAAMuB,eAAmC;IAC9C,qBAAO,KAACvB;QAAewB,WAAU;;AACnC,EAAC"}
@@ -46,7 +46,7 @@ const generateLabelFromValue = (collections, field, locale, value)=>{
46
46
  }
47
47
  } else if (relatedDoc) {
48
48
  // Handle non-polymorphic `hasMany` relationships or fallback
49
- if (typeof relatedDoc.id !== 'undefined') {
49
+ if (typeof relatedDoc?.id !== 'undefined') {
50
50
  valueToReturn = relatedDoc.id;
51
51
  } else {
52
52
  valueToReturn = relatedDoc;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, MappedField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useConfig } from '@payloadcms/ui'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared'\nimport React from 'react'\nimport ReactDiffViewerImport from 'react-diff-viewer-continued'\n\nimport type { Props } from '../types.js'\n\nimport Label from '../../Label/index.js'\nimport { diffStyles } from '../styles.js'\nimport './index.scss'\n\nconst ReactDiffViewer = (ReactDiffViewerImport.default ||\n ReactDiffViewerImport) as unknown as typeof ReactDiffViewerImport.default\n\nconst baseClass = 'relationship-diff'\n\ntype RelationshipValue = Record<string, any>\n\nconst generateLabelFromValue = (\n collections: ClientCollectionConfig[],\n field: MappedField,\n locale: string,\n value: { relationTo: string; value: RelationshipValue } | RelationshipValue,\n): string => {\n if (Array.isArray(value)) {\n return value\n .map((v) => generateLabelFromValue(collections, field, locale, v))\n .filter(Boolean) // Filters out any undefined or empty values\n .join(', ')\n }\n\n let relatedDoc: RelationshipValue\n let valueToReturn = '' as any\n\n const relationTo =\n 'relationTo' in field.fieldComponentProps ? field.fieldComponentProps.relationTo : undefined\n\n if (value === null || typeof value === 'undefined') {\n return String(value)\n }\n\n if (typeof value === 'object' && 'relationTo' in value) {\n relatedDoc = value.value\n } else {\n // Non-polymorphic relationship\n relatedDoc = value\n }\n\n const relatedCollection = relationTo\n ? collections.find(\n (c) =>\n c.slug ===\n (typeof value === 'object' && 'relationTo' in value ? value.relationTo : relationTo),\n )\n : null\n\n if (relatedCollection) {\n const useAsTitle = relatedCollection?.admin?.useAsTitle\n const useAsTitleField = relatedCollection.fields.find(\n (f) => fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle,\n )\n let titleFieldIsLocalized = false\n\n if (useAsTitleField && fieldAffectsData(useAsTitleField)) {\n titleFieldIsLocalized = useAsTitleField.localized\n }\n\n if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {\n valueToReturn = relatedDoc[useAsTitle]\n } else if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n\n if (typeof valueToReturn === 'object' && titleFieldIsLocalized) {\n valueToReturn = valueToReturn[locale]\n }\n } else if (relatedDoc) {\n // Handle non-polymorphic `hasMany` relationships or fallback\n if (typeof relatedDoc.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n }\n\n if (typeof valueToReturn === 'object' && valueToReturn !== null) {\n valueToReturn = JSON.stringify(valueToReturn)\n }\n\n return valueToReturn\n}\n\nconst Relationship: React.FC<Props> = ({ comparison, field, i18n, locale, version }) => {\n const placeholder = `[${i18n.t('general:noValue')}]`\n\n const { collections } = useConfig()\n\n let versionToRender: string | undefined = placeholder\n let comparisonToRender: string | undefined = placeholder\n\n if (version) {\n if ('hasMany' in field && field.hasMany && Array.isArray(version)) {\n versionToRender =\n version.map((val) => generateLabelFromValue(collections, field, locale, val)).join(', ') ||\n placeholder\n } else {\n versionToRender = generateLabelFromValue(collections, field, locale, version) || placeholder\n }\n }\n\n if (comparison) {\n if ('hasMany' in field && field.hasMany && Array.isArray(comparison)) {\n comparisonToRender =\n comparison\n .map((val) => generateLabelFromValue(collections, field, locale, val))\n .join(', ') || placeholder\n } else {\n comparisonToRender =\n generateLabelFromValue(collections, field, locale, comparison) || placeholder\n }\n }\n\n const label =\n 'label' in field.fieldComponentProps &&\n typeof field.fieldComponentProps.label !== 'boolean' &&\n typeof field.fieldComponentProps.label !== 'function'\n ? field.fieldComponentProps.label\n : ''\n\n return (\n <div className={baseClass}>\n <Label>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(label, i18n)}\n </Label>\n <ReactDiffViewer\n hideLineNumbers\n newValue={versionToRender}\n oldValue={comparisonToRender}\n showDiffOnly={false}\n splitView\n styles={diffStyles}\n />\n </div>\n )\n}\n\nexport default Relationship\n"],"names":["getTranslation","useConfig","fieldAffectsData","fieldIsPresentationalOnly","React","ReactDiffViewerImport","Label","diffStyles","ReactDiffViewer","default","baseClass","generateLabelFromValue","collections","field","locale","value","Array","isArray","map","v","filter","Boolean","join","relatedDoc","valueToReturn","relationTo","fieldComponentProps","undefined","String","relatedCollection","find","c","slug","useAsTitle","admin","useAsTitleField","fields","f","name","titleFieldIsLocalized","localized","id","JSON","stringify","Relationship","comparison","i18n","version","placeholder","t","versionToRender","comparisonToRender","hasMany","val","label","div","className","span","hideLineNumbers","newValue","oldValue","showDiffOnly","splitView","styles"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../src/views/Version/RenderFieldsToDiff/fields/Relationship/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig, MappedField } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useConfig } from '@payloadcms/ui'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/shared'\nimport React from 'react'\nimport ReactDiffViewerImport from 'react-diff-viewer-continued'\n\nimport type { Props } from '../types.js'\n\nimport Label from '../../Label/index.js'\nimport { diffStyles } from '../styles.js'\nimport './index.scss'\n\nconst ReactDiffViewer = (ReactDiffViewerImport.default ||\n ReactDiffViewerImport) as unknown as typeof ReactDiffViewerImport.default\n\nconst baseClass = 'relationship-diff'\n\ntype RelationshipValue = Record<string, any>\n\nconst generateLabelFromValue = (\n collections: ClientCollectionConfig[],\n field: MappedField,\n locale: string,\n value: { relationTo: string; value: RelationshipValue } | RelationshipValue,\n): string => {\n if (Array.isArray(value)) {\n return value\n .map((v) => generateLabelFromValue(collections, field, locale, v))\n .filter(Boolean) // Filters out any undefined or empty values\n .join(', ')\n }\n\n let relatedDoc: RelationshipValue\n let valueToReturn = '' as any\n\n const relationTo =\n 'relationTo' in field.fieldComponentProps ? field.fieldComponentProps.relationTo : undefined\n\n if (value === null || typeof value === 'undefined') {\n return String(value)\n }\n\n if (typeof value === 'object' && 'relationTo' in value) {\n relatedDoc = value.value\n } else {\n // Non-polymorphic relationship\n relatedDoc = value\n }\n\n const relatedCollection = relationTo\n ? collections.find(\n (c) =>\n c.slug ===\n (typeof value === 'object' && 'relationTo' in value ? value.relationTo : relationTo),\n )\n : null\n\n if (relatedCollection) {\n const useAsTitle = relatedCollection?.admin?.useAsTitle\n const useAsTitleField = relatedCollection.fields.find(\n (f) => fieldAffectsData(f) && !fieldIsPresentationalOnly(f) && f.name === useAsTitle,\n )\n let titleFieldIsLocalized = false\n\n if (useAsTitleField && fieldAffectsData(useAsTitleField)) {\n titleFieldIsLocalized = useAsTitleField.localized\n }\n\n if (typeof relatedDoc?.[useAsTitle] !== 'undefined') {\n valueToReturn = relatedDoc[useAsTitle]\n } else if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n\n if (typeof valueToReturn === 'object' && titleFieldIsLocalized) {\n valueToReturn = valueToReturn[locale]\n }\n } else if (relatedDoc) {\n // Handle non-polymorphic `hasMany` relationships or fallback\n if (typeof relatedDoc?.id !== 'undefined') {\n valueToReturn = relatedDoc.id\n } else {\n valueToReturn = relatedDoc\n }\n }\n\n if (typeof valueToReturn === 'object' && valueToReturn !== null) {\n valueToReturn = JSON.stringify(valueToReturn)\n }\n\n return valueToReturn\n}\n\nconst Relationship: React.FC<Props> = ({ comparison, field, i18n, locale, version }) => {\n const placeholder = `[${i18n.t('general:noValue')}]`\n\n const { collections } = useConfig()\n\n let versionToRender: string | undefined = placeholder\n let comparisonToRender: string | undefined = placeholder\n\n if (version) {\n if ('hasMany' in field && field.hasMany && Array.isArray(version)) {\n versionToRender =\n version.map((val) => generateLabelFromValue(collections, field, locale, val)).join(', ') ||\n placeholder\n } else {\n versionToRender = generateLabelFromValue(collections, field, locale, version) || placeholder\n }\n }\n\n if (comparison) {\n if ('hasMany' in field && field.hasMany && Array.isArray(comparison)) {\n comparisonToRender =\n comparison\n .map((val) => generateLabelFromValue(collections, field, locale, val))\n .join(', ') || placeholder\n } else {\n comparisonToRender =\n generateLabelFromValue(collections, field, locale, comparison) || placeholder\n }\n }\n\n const label =\n 'label' in field.fieldComponentProps &&\n typeof field.fieldComponentProps.label !== 'boolean' &&\n typeof field.fieldComponentProps.label !== 'function'\n ? field.fieldComponentProps.label\n : ''\n\n return (\n <div className={baseClass}>\n <Label>\n {locale && <span className={`${baseClass}__locale-label`}>{locale}</span>}\n {getTranslation(label, i18n)}\n </Label>\n <ReactDiffViewer\n hideLineNumbers\n newValue={versionToRender}\n oldValue={comparisonToRender}\n showDiffOnly={false}\n splitView\n styles={diffStyles}\n />\n </div>\n )\n}\n\nexport default Relationship\n"],"names":["getTranslation","useConfig","fieldAffectsData","fieldIsPresentationalOnly","React","ReactDiffViewerImport","Label","diffStyles","ReactDiffViewer","default","baseClass","generateLabelFromValue","collections","field","locale","value","Array","isArray","map","v","filter","Boolean","join","relatedDoc","valueToReturn","relationTo","fieldComponentProps","undefined","String","relatedCollection","find","c","slug","useAsTitle","admin","useAsTitleField","fields","f","name","titleFieldIsLocalized","localized","id","JSON","stringify","Relationship","comparison","i18n","version","placeholder","t","versionToRender","comparisonToRender","hasMany","val","label","div","className","span","hideLineNumbers","newValue","oldValue","showDiffOnly","splitView","styles"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import type { EditViewComponent } from 'payload';
1
+ import { type EditViewComponent } from 'payload';
2
2
  export declare const VersionView: EditViewComponent;
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,iBAAiB,EAGlB,MAAM,SAAS,CAAA;AAQhB,eAAO,MAAM,WAAW,EAAE,iBAgHzB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Version/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,iBAAiB,EAIvB,MAAM,SAAS,CAAA;AAMhB,eAAO,MAAM,WAAW,EAAE,iBA2IzB,CAAA"}
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { notFound } from 'next/navigation.js';
3
+ import { deepCopyObjectSimple } from 'payload';
3
4
  import React from 'react';
4
5
  import { getLatestVersion } from '../Versions/getLatestVersion.js';
5
6
  import { DefaultVersionView } from './Default/index.js';
@@ -30,8 +31,18 @@ export const VersionView = async (props)=>{
30
31
  user
31
32
  });
32
33
  if (collectionConfig?.versions?.drafts) {
33
- latestDraftVersion = await getLatestVersion(payload, slug, 'draft', 'collection');
34
- latestPublishedVersion = await getLatestVersion(payload, slug, 'published', 'collection');
34
+ latestDraftVersion = await getLatestVersion({
35
+ slug,
36
+ type: 'collection',
37
+ payload,
38
+ status: 'draft'
39
+ });
40
+ latestPublishedVersion = await getLatestVersion({
41
+ slug,
42
+ type: 'collection',
43
+ payload,
44
+ status: 'published'
45
+ });
35
46
  }
36
47
  } catch (error) {
37
48
  return notFound();
@@ -52,8 +63,18 @@ export const VersionView = async (props)=>{
52
63
  user
53
64
  });
54
65
  if (globalConfig?.versions?.drafts) {
55
- latestDraftVersion = await getLatestVersion(payload, slug, 'draft', 'global');
56
- latestPublishedVersion = await getLatestVersion(payload, slug, 'published', 'global');
66
+ latestDraftVersion = await getLatestVersion({
67
+ slug,
68
+ type: 'global',
69
+ payload,
70
+ status: 'draft'
71
+ });
72
+ latestPublishedVersion = await getLatestVersion({
73
+ slug,
74
+ type: 'global',
75
+ payload,
76
+ status: 'published'
77
+ });
57
78
  }
58
79
  } catch (error) {
59
80
  return notFound();
@@ -76,7 +97,13 @@ export const VersionView = async (props)=>{
76
97
  }
77
98
  return /*#__PURE__*/ _jsx(DefaultVersionView, {
78
99
  doc: doc,
79
- docPermissions: docPermissions,
100
+ /**
101
+ * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).
102
+ * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a
103
+ * "TypeError: Cannot read properties of undefined (reading '$$typeof')" error
104
+ *
105
+ * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)
106
+ */ docPermissions: deepCopyObjectSimple(docPermissions),
80
107
  initialComparisonDoc: latestVersion,
81
108
  latestDraftVersion: latestDraftVersion?.id,
82
109
  latestPublishedVersion: latestPublishedVersion?.id,