@payloadcms/next 3.26.0 → 3.27.0-canary.7edf702

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 (61) hide show
  1. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -1
  2. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  3. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  4. package/dist/elements/Nav/index.client.js +2 -1
  5. package/dist/elements/Nav/index.client.js.map +1 -1
  6. package/dist/prod/styles.css +1 -1
  7. package/dist/utilities/initPage/handleAuthRedirect.js +1 -1
  8. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  9. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  10. package/dist/views/Dashboard/Default/index.js +2 -1
  11. package/dist/views/Dashboard/Default/index.js.map +1 -1
  12. package/dist/views/Document/handleServerFunction.d.ts +1 -0
  13. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  14. package/dist/views/Document/handleServerFunction.js +2 -0
  15. package/dist/views/Document/handleServerFunction.js.map +1 -1
  16. package/dist/views/Document/index.d.ts +4 -1
  17. package/dist/views/Document/index.d.ts.map +1 -1
  18. package/dist/views/Document/index.js +5 -2
  19. package/dist/views/Document/index.js.map +1 -1
  20. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  21. package/dist/views/ForgotPassword/index.js +2 -1
  22. package/dist/views/ForgotPassword/index.js.map +1 -1
  23. package/dist/views/List/handleServerFunction.d.ts +1 -0
  24. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  25. package/dist/views/List/handleServerFunction.js +2 -0
  26. package/dist/views/List/handleServerFunction.js.map +1 -1
  27. package/dist/views/List/index.d.ts +4 -1
  28. package/dist/views/List/index.d.ts.map +1 -1
  29. package/dist/views/List/index.js +33 -2
  30. package/dist/views/List/index.js.map +1 -1
  31. package/dist/views/LivePreview/index.client.js +2 -1
  32. package/dist/views/LivePreview/index.client.js.map +1 -1
  33. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  34. package/dist/views/Login/LoginForm/index.js +1 -2
  35. package/dist/views/Login/LoginForm/index.js.map +1 -1
  36. package/dist/views/Logout/LogoutClient.js +1 -1
  37. package/dist/views/Logout/LogoutClient.js.map +1 -1
  38. package/dist/views/NotFound/index.js +1 -1
  39. package/dist/views/NotFound/index.js.map +1 -1
  40. package/dist/views/ResetPassword/ResetPasswordForm/index.js +1 -1
  41. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  42. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  43. package/dist/views/ResetPassword/index.js +2 -1
  44. package/dist/views/ResetPassword/index.js.map +1 -1
  45. package/dist/views/Root/getViewFromConfig.js +1 -1
  46. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  47. package/dist/views/Root/index.js +2 -2
  48. package/dist/views/Root/index.js.map +1 -1
  49. package/dist/views/Unauthorized/index.js +1 -1
  50. package/dist/views/Unauthorized/index.js.map +1 -1
  51. package/dist/views/Verify/index.js +1 -1
  52. package/dist/views/Verify/index.js.map +1 -1
  53. package/dist/views/Version/Default/SetStepNav.js +2 -2
  54. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  55. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  56. package/dist/views/Version/Restore/index.js +2 -1
  57. package/dist/views/Version/Restore/index.js.map +1 -1
  58. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  59. package/dist/views/Versions/cells/CreatedAt/index.js +2 -1
  60. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  61. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","renderFilters","renderTable","upsertPreferences","formatAdminURL","mergeListSearchAndWhere","notFound","isNumber","transformColumnsToPreferences","React","Fragment","renderListViewSlots","resolveAllFilterOptions","generateListMetadata","renderListView","args","clientConfig","customCellProps","disableBulkDelete","disableBulkEdit","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","collections","read","Error","columns","listPreferences","key","value","limit","Number","undefined","sort","routes","admin","adminRoute","includes","page","pagination","defaultLimit","defaultSort","where","search","baseListFilter","and","filter","Boolean","data","find","collection","depth","draft","fallbackLocale","includeLockStatus","overrideAccess","clientCollectionConfig","c","columnState","Table","columnPreferences","docs","useAsTitle","renderedFilters","fields","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","serverProps","listSearchableFields","listViewSlots","clientProps","isInDrawer","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","error","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { formatAdminURL, mergeListSearchAndWhere } from '@payloadcms/ui/shared'\nimport { notFound } from 'next/navigation.js'\nimport {\n type AdminViewServerProps,\n type ColumnPreference,\n type ListPreferences,\n type ListQuery,\n type ListViewClientProps,\n type ListViewServerPropsOnly,\n type Where,\n} from 'payload'\nimport { isNumber, transformColumnsToPreferences } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\n\nexport { generateListMetadata } from './meta.js'\n\ntype RenderListViewArgs = {\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n} & AdminViewServerProps\n\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n locale,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n if (!permissions?.collections?.[collectionSlug]?.read) {\n throw new Error('not-found')\n }\n\n const query = queryFromArgs || queryFromReq\n\n const columns: ColumnPreference[] = transformColumnsToPreferences(\n query?.columns as ColumnPreference[] | string,\n )\n\n /**\n * @todo: find a pattern to avoid setting preferences on hard navigation, i.e. direct links, page refresh, etc.\n * This will ensure that prefs are only updated when explicitly set by the user\n * This could potentially be done by injecting a `sessionID` into the params and comparing it against a session cookie\n */\n const listPreferences = await upsertPreferences<ListPreferences>({\n key: `${collectionSlug}-list`,\n req,\n value: {\n columns,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n sort: query?.sort as string,\n },\n })\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\n\n const page = isNumber(query?.page) ? Number(query.page) : 0\n\n const limit = listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n const sort =\n listPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n let where = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: (query?.where as Where) || undefined,\n })\n\n if (typeof collectionConfig.admin?.baseListFilter === 'function') {\n const baseListFilter = await collectionConfig.admin.baseListFilter({\n limit,\n page,\n req,\n sort,\n })\n\n if (baseListFilter) {\n where = {\n and: [where, baseListFilter].filter(Boolean),\n }\n }\n }\n\n const data = await payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit,\n locale,\n overrideAccess: false,\n page,\n req,\n sort,\n user,\n where: where || {},\n })\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const { columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columnPreferences: listPreferences?.columns,\n columns,\n customCellProps,\n docs: data.docs,\n drawerSlug,\n enableRowSelections,\n i18n: req.i18n,\n payload,\n useAsTitle: collectionConfig.admin.useAsTitle,\n })\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit,\n listPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n columns={transformColumnsToPreferences(columnState)}\n data={data}\n defaultLimit={limit}\n defaultSort={sort}\n listPreferences={listPreferences}\n modifySearchParams={!isInDrawer}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit,\n enableRowSelections,\n hasCreatePermission,\n listPreferences,\n newDocumentURL,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n } satisfies ListViewClientProps,\n Component: collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n }\n\n throw new Error('not-found')\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","renderFilters","renderTable","upsertPreferences","notFound","formatAdminURL","isNumber","mergeListSearchAndWhere","transformColumnsToPreferences","React","Fragment","getDocumentPermissions","renderListViewSlots","resolveAllFilterOptions","generateListMetadata","renderListView","args","clientConfig","customCellProps","disableBulkDelete","disableBulkEdit","disableListPresets","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","collections","read","Error","columns","listPreferences","key","value","limit","Number","undefined","preset","sort","routes","admin","adminRoute","includes","page","pagination","defaultLimit","defaultSort","where","search","baseListFilter","and","filter","Boolean","listPreset","listPresetPermissions","findByID","id","collection","depth","overrideAccess","find","c","data","then","docPermissions","err","logger","error","draft","fallbackLocale","includeLockStatus","clientCollectionConfig","columnState","Table","columnPreferences","docs","useAsTitle","renderedFilters","fields","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","serverProps","listSearchableFields","listViewSlots","clientProps","isInDrawer","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n ColumnPreference,\n DefaultDocumentIDType,\n ListPreferences,\n ListPreset,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n SanitizedCollectionPermission,\n Where,\n} from 'payload'\n\nimport { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { notFound } from 'next/navigation.js'\nimport {\n formatAdminURL,\n isNumber,\n mergeListSearchAndWhere,\n transformColumnsToPreferences,\n} from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { getDocumentPermissions } from '../Document/getDocumentPermissions.js'\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\n\nexport { generateListMetadata } from './meta.js'\n\ntype RenderListViewArgs = {\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n disableListPresets?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n redirectAfterDelete?: boolean\n redirectAfterDuplicate?: boolean\n} & AdminViewServerProps\n\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n disableListPresets,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n locale,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n if (!permissions?.collections?.[collectionSlug]?.read) {\n throw new Error('not-found')\n }\n\n const query = queryFromArgs || queryFromReq\n\n const columns: ColumnPreference[] = transformColumnsToPreferences(\n query?.columns as ColumnPreference[] | string,\n )\n\n /**\n * @todo: find a pattern to avoid setting preferences on hard navigation, i.e. direct links, page refresh, etc.\n * This will ensure that prefs are only updated when explicitly set by the user\n * This could potentially be done by injecting a `sessionID` into the params and comparing it against a session cookie\n */\n const listPreferences = await upsertPreferences<ListPreferences>({\n key: `${collectionSlug}-list`,\n req,\n value: {\n columns,\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n preset: (query?.preset as DefaultDocumentIDType) || null,\n sort: query?.sort as string,\n },\n })\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\n\n const page = isNumber(query?.page) ? Number(query.page) : 0\n\n const limit = listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n const sort =\n listPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n let where = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: (query?.where as Where) || undefined,\n })\n\n if (typeof collectionConfig.admin?.baseListFilter === 'function') {\n const baseListFilter = await collectionConfig.admin.baseListFilter({\n limit,\n page,\n req,\n sort,\n })\n\n if (baseListFilter) {\n where = {\n and: [where, baseListFilter].filter(Boolean),\n }\n }\n }\n\n let listPreset: ListPreset | undefined\n let listPresetPermissions: SanitizedCollectionPermission | undefined\n\n if (listPreferences?.preset) {\n try {\n listPreset = (await payload.findByID({\n id: listPreferences?.preset,\n collection: 'payload-list-presets',\n depth: 0,\n overrideAccess: false,\n user,\n })) as ListPreset\n\n if (listPreset) {\n listPresetPermissions = await getDocumentPermissions({\n id: listPreset.id,\n collectionConfig: config.collections.find((c) => c.slug === 'payload-list-presets'),\n data: listPreset,\n req,\n })?.then(({ docPermissions }) => docPermissions)\n }\n } catch (err) {\n req.payload.logger.error(`Error fetching list preset or preset permissions: ${err}`)\n }\n }\n\n const data = await payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit,\n locale,\n overrideAccess: false,\n page,\n req,\n sort,\n user,\n where: where || {},\n })\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const { columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columnPreferences: listPreferences?.columns,\n columns,\n customCellProps,\n docs: data.docs,\n drawerSlug,\n enableRowSelections,\n i18n: req.i18n,\n payload,\n useAsTitle: collectionConfig.admin.useAsTitle,\n })\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit,\n listPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n collectionSlug={collectionSlug}\n columns={transformColumnsToPreferences(columnState)}\n data={data}\n defaultLimit={limit}\n defaultSort={sort}\n listPreferences={listPreferences}\n modifySearchParams={!isInDrawer}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit,\n disableListPresets,\n enableRowSelections,\n hasCreatePermission,\n listPreferences,\n listPreset,\n listPresetPermissions,\n newDocumentURL,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n } satisfies ListViewClientProps,\n Component: collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n }\n\n throw new Error('not-found')\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,8 +3,9 @@
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import { DocumentControls, DocumentFields, DocumentLocked, DocumentTakeOver, Form, LeaveWithoutSaving, OperationProvider, SetDocumentStepNav, SetDocumentTitle, useAuth, useConfig, useDocumentDrawerContext, useDocumentEvents, useDocumentInfo, useEditDepth, useRouteTransition, useServerFunctions, useTranslation, useUploadEdits } from '@payloadcms/ui';
6
- import { abortAndIgnore, formatAdminURL, handleAbortRef, handleBackToDashboard, handleGoBack, handleTakeOver } from '@payloadcms/ui/shared';
6
+ import { abortAndIgnore, handleAbortRef, handleBackToDashboard, handleGoBack, handleTakeOver } from '@payloadcms/ui/shared';
7
7
  import { useRouter, useSearchParams } from 'next/navigation.js';
8
+ import { formatAdminURL } from 'payload/shared';
8
9
  import React, { Fragment, useCallback, useEffect, useRef, useState } from 'react';
9
10
  import { useLivePreviewContext } from './Context/context.js';
10
11
  import { LivePreviewProvider } from './Context/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","names":["c","_c","DocumentControls","DocumentFields","DocumentLocked","DocumentTakeOver","Form","LeaveWithoutSaving","OperationProvider","SetDocumentStepNav","SetDocumentTitle","useAuth","useConfig","useDocumentDrawerContext","useDocumentEvents","useDocumentInfo","useEditDepth","useRouteTransition","useServerFunctions","useTranslation","useUploadEdits","abortAndIgnore","formatAdminURL","handleAbortRef","handleBackToDashboard","handleGoBack","handleTakeOver","useRouter","useSearchParams","React","Fragment","useCallback","useEffect","useRef","useState","useLivePreviewContext","LivePreviewProvider","LivePreview","usePopupWindow","baseClass","getAbsoluteUrl","url","URL","window","location","origin","href","PreviewView","collectionConfig","config","Description","fields","globalConfig","PreviewButton","PublishButton","SaveButton","SaveDraftButton","schemaPath","id","action","AfterDocument","AfterFields","apiURL","BeforeFields","collectionSlug","currentEditor","disableActions","disableLeaveWithoutSaving","docPermissions","documentIsLocked","getDocPermissions","getDocPreferences","globalSlug","hasPublishPermission","hasSavePermission","incrementVersionCount","initialData","initialState","isEditing","isInitializing","lastUpdateTime","setCurrentEditor","setDocumentIsLocked","unlockDocument","updateDocumentEditor","updateSavedDocumentData","onSave","onSaveFromContext","operation","admin","user","userSlug","routes","adminRoute","router","params","locale","get","t","previewWindowType","refreshCookieAsync","reportUpdate","resetUploadEdits","getFormState","startRouteTransition","docConfig","entitySlug","slug","depth","lockDocumentsProp","lockDocuments","undefined","isLockingEnabled","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","autosaveEnabled","Boolean","versions","drafts","autosave","preventLeaveWithoutSaving","isReadOnlyForIncomingUser","setIsReadOnlyForIncomingUser","showTakeOverModal","setShowTakeOverModal","abortOnChangeRef","abortOnSaveRef","editSessionStartTime","setEditSessionStartTime","Date","now","lockExpiryTime","isLockExpired","documentLockStateRef","hasShownLockedModal","isLocked","json","controller","updatedAt","result","toISOString","doc","redirectRoute","path","push","docPreferences","state","data","renderAllFields","returnLockStatus","signal","skipValidation","current","onChange","formState","prevFormState","submitted","currentTime","timeSinceLastUpdate","updateLastEdited","lockedState","previousOwnerID","lockedUserID","currentPath","pathname","documentID","stayWithinDocumentPaths","isStayingWithinDocument","some","includes","abortOnChange","abortOnSave","shouldShowDocumentLockedModal","_jsx","_jsxs","className","disabled","method","onSuccess","isActive","onReadOnly","onTakeOver","globalLabel","label","pluralLabel","labels","plural","useAsTitle","view","fallback","toString","customComponents","permissions","readOnlyForIncomingUser","filter","join","forceSidebarWrap","readOnly","schemaPathSegments","LivePreviewClient","props","$","breakpoints","incomingUrl","t0","getEntityConfig","t1","serverURL","api","apiRoute","t2","startsWith","t3","eventType","isPopupOpen","openPopupWindow","popupRef","t4","Upload","children","fieldSchema"],"sources":["../../../src/views/LivePreview/index.client.tsx"],"sourcesContent":["'use client'\nimport type { FormProps } from '@payloadcms/ui'\nimport type {\n ClientCollectionConfig,\n ClientConfig,\n ClientField,\n ClientGlobalConfig,\n ClientUser,\n Data,\n DocumentSlots,\n FormState,\n LivePreviewConfig,\n} from 'payload'\n\nimport {\n DocumentControls,\n DocumentFields,\n DocumentLocked,\n DocumentTakeOver,\n Form,\n LeaveWithoutSaving,\n OperationProvider,\n SetDocumentStepNav,\n SetDocumentTitle,\n useAuth,\n useConfig,\n useDocumentDrawerContext,\n useDocumentEvents,\n useDocumentInfo,\n useEditDepth,\n useRouteTransition,\n useServerFunctions,\n useTranslation,\n useUploadEdits,\n} from '@payloadcms/ui'\nimport {\n abortAndIgnore,\n formatAdminURL,\n handleAbortRef,\n handleBackToDashboard,\n handleGoBack,\n handleTakeOver,\n} from '@payloadcms/ui/shared'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport { useLivePreviewContext } from './Context/context.js'\nimport './index.scss'\nimport { LivePreviewProvider } from './Context/index.js'\nimport { LivePreview } from './Preview/index.js'\nimport { usePopupWindow } from './usePopupWindow.js'\n\nconst baseClass = 'live-preview'\n\ntype Props = {\n readonly apiRoute: string\n readonly collectionConfig?: ClientCollectionConfig\n readonly config: ClientConfig\n readonly fields: ClientField[]\n readonly globalConfig?: ClientGlobalConfig\n readonly schemaPath: string\n readonly serverURL: string\n} & DocumentSlots\n\nconst getAbsoluteUrl = (url) => {\n try {\n return new URL(url, window.location.origin).href\n } catch {\n return url\n }\n}\n\nconst PreviewView: React.FC<Props> = ({\n collectionConfig,\n config,\n Description,\n fields,\n globalConfig,\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n schemaPath,\n}) => {\n const {\n id,\n action,\n AfterDocument,\n AfterFields,\n apiURL,\n BeforeFields,\n collectionSlug,\n currentEditor,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n documentIsLocked,\n getDocPermissions,\n getDocPreferences,\n globalSlug,\n hasPublishPermission,\n hasSavePermission,\n incrementVersionCount,\n initialData,\n initialState,\n isEditing,\n isInitializing,\n lastUpdateTime,\n setCurrentEditor,\n setDocumentIsLocked,\n unlockDocument,\n updateDocumentEditor,\n updateSavedDocumentData,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const operation = id ? 'update' : 'create'\n\n const {\n config: {\n admin: { user: userSlug },\n routes: { admin: adminRoute },\n },\n } = useConfig()\n const router = useRouter()\n const params = useSearchParams()\n const locale = params.get('locale')\n const { t } = useTranslation()\n const { previewWindowType } = useLivePreviewContext()\n const { refreshCookieAsync, user } = useAuth()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n const { getFormState } = useServerFunctions()\n const { startRouteTransition } = useRouteTransition()\n\n const docConfig = collectionConfig || globalConfig\n\n const entitySlug = collectionConfig?.slug || globalConfig?.slug\n\n const depth = useEditDepth()\n\n const lockDocumentsProp = docConfig?.lockDocuments !== undefined ? docConfig?.lockDocuments : true\n const isLockingEnabled = lockDocumentsProp !== false\n\n const lockDurationDefault = 300 // Default 5 minutes in seconds\n const lockDuration =\n typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n\n const autosaveEnabled = Boolean(\n (collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave),\n )\n\n const preventLeaveWithoutSaving =\n typeof disableLeaveWithoutSaving !== 'undefined' ? !disableLeaveWithoutSaving : !autosaveEnabled\n\n const [isReadOnlyForIncomingUser, setIsReadOnlyForIncomingUser] = useState(false)\n const [showTakeOverModal, setShowTakeOverModal] = useState(false)\n\n const abortOnChangeRef = useRef<AbortController>(null)\n const abortOnSaveRef = useRef<AbortController>(null)\n\n const [editSessionStartTime, setEditSessionStartTime] = useState(Date.now())\n\n const lockExpiryTime = lastUpdateTime + lockDurationInMilliseconds\n\n const isLockExpired = Date.now() > lockExpiryTime\n\n const documentLockStateRef = useRef<{\n hasShownLockedModal: boolean\n isLocked: boolean\n user: ClientUser | number | string\n } | null>({\n hasShownLockedModal: false,\n isLocked: false,\n user: null,\n })\n\n const onSave = useCallback(\n async (json): Promise<FormState> => {\n const controller = handleAbortRef(abortOnSaveRef)\n\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 incrementVersionCount()\n\n if (typeof updateSavedDocumentData === 'function') {\n void updateSavedDocumentData(json?.doc || {})\n }\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\n startRouteTransition(() => router.push(redirectRoute))\n } else {\n resetUploadEdits()\n }\n\n await getDocPermissions(json)\n\n if ((id || globalSlug) && !autosaveEnabled) {\n const docPreferences = await getDocPreferences()\n\n const { state } = await getFormState({\n id,\n collectionSlug,\n data: json?.doc || json?.result,\n docPermissions,\n docPreferences,\n globalSlug,\n operation,\n renderAllFields: true,\n returnLockStatus: false,\n schemaPath: entitySlug,\n signal: controller.signal,\n skipValidation: true,\n })\n\n // Unlock the document after save\n if (isLockingEnabled) {\n setDocumentIsLocked(false)\n }\n\n abortOnSaveRef.current = null\n\n return state\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n docPermissions,\n entitySlug,\n getDocPermissions,\n getDocPreferences,\n getFormState,\n globalSlug,\n id,\n incrementVersionCount,\n isEditing,\n isLockingEnabled,\n locale,\n onSaveFromContext,\n operation,\n refreshCookieAsync,\n reportUpdate,\n resetUploadEdits,\n router,\n setDocumentIsLocked,\n updateSavedDocumentData,\n startRouteTransition,\n user,\n userSlug,\n autosaveEnabled,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState, submitted }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const currentTime = Date.now()\n const timeSinceLastUpdate = currentTime - editSessionStartTime\n\n const updateLastEdited = isLockingEnabled && timeSinceLastUpdate >= 10000 // 10 seconds\n\n if (updateLastEdited) {\n setEditSessionStartTime(currentTime)\n }\n\n const docPreferences = await getDocPreferences()\n\n const { lockedState, state } = await getFormState({\n id,\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n returnLockStatus: isLockingEnabled ? true : false,\n schemaPath,\n signal: controller.signal,\n skipValidation: !submitted,\n updateLastEdited,\n })\n\n setDocumentIsLocked(true)\n\n if (isLockingEnabled) {\n const previousOwnerID =\n typeof documentLockStateRef.current?.user === 'object'\n ? documentLockStateRef.current?.user?.id\n : documentLockStateRef.current?.user\n\n if (lockedState) {\n const lockedUserID =\n typeof lockedState.user === 'string' || typeof lockedState.user === 'number'\n ? lockedState.user\n : lockedState.user.id\n\n if (!documentLockStateRef.current || lockedUserID !== previousOwnerID) {\n if (previousOwnerID === user.id && lockedUserID !== user.id) {\n setShowTakeOverModal(true)\n documentLockStateRef.current.hasShownLockedModal = true\n }\n\n documentLockStateRef.current = documentLockStateRef.current = {\n hasShownLockedModal: documentLockStateRef.current?.hasShownLockedModal || false,\n isLocked: true,\n user: lockedState.user as ClientUser,\n }\n\n setCurrentEditor(lockedState.user as ClientUser)\n }\n }\n }\n\n abortOnChangeRef.current = null\n\n return state\n },\n [\n editSessionStartTime,\n isLockingEnabled,\n getDocPreferences,\n getFormState,\n id,\n collectionSlug,\n docPermissions,\n globalSlug,\n operation,\n schemaPath,\n setDocumentIsLocked,\n user?.id,\n setCurrentEditor,\n ],\n )\n\n // Clean up when the component unmounts or when the document is unlocked\n useEffect(() => {\n return () => {\n if (!isLockingEnabled) {\n return\n }\n\n const currentPath = window.location.pathname\n\n const documentID = id || globalSlug\n\n // Routes where we do NOT want to unlock the document\n const stayWithinDocumentPaths = ['preview', 'api', 'versions']\n\n const isStayingWithinDocument = stayWithinDocumentPaths.some((path) =>\n currentPath.includes(path),\n )\n\n // Unlock the document only if we're actually navigating away from the document\n if (documentID && documentIsLocked && !isStayingWithinDocument) {\n // Check if this user is still the current editor\n if (\n typeof documentLockStateRef.current?.user === 'object'\n ? documentLockStateRef.current?.user?.id === user?.id\n : documentLockStateRef.current?.user === user?.id\n ) {\n void unlockDocument(id, collectionSlug ?? globalSlug)\n setDocumentIsLocked(false)\n setCurrentEditor(null)\n }\n }\n\n setShowTakeOverModal(false)\n }\n }, [\n collectionSlug,\n globalSlug,\n id,\n unlockDocument,\n user,\n setCurrentEditor,\n isLockingEnabled,\n documentIsLocked,\n setDocumentIsLocked,\n ])\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n const abortOnSave = abortOnSaveRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n abortAndIgnore(abortOnSave)\n }\n })\n\n const shouldShowDocumentLockedModal =\n documentIsLocked &&\n currentEditor &&\n (typeof currentEditor === 'object'\n ? currentEditor.id !== user?.id\n : currentEditor !== user?.id) &&\n !isReadOnlyForIncomingUser &&\n !showTakeOverModal &&\n // eslint-disable-next-line react-compiler/react-compiler\n !documentLockStateRef.current?.hasShownLockedModal &&\n !isLockExpired\n\n return (\n <OperationProvider operation={operation}>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isReadOnlyForIncomingUser || !hasSavePermission}\n initialState={initialState}\n isInitializing={isInitializing}\n method={id ? 'PATCH' : 'POST'}\n onChange={[onChange]}\n onSuccess={onSave}\n >\n {isLockingEnabled && shouldShowDocumentLockedModal && !isReadOnlyForIncomingUser && (\n <DocumentLocked\n handleGoBack={() => handleGoBack({ adminRoute, collectionSlug, router })}\n isActive={shouldShowDocumentLockedModal}\n onReadOnly={() => {\n setIsReadOnlyForIncomingUser(true)\n setShowTakeOverModal(false)\n }}\n onTakeOver={() =>\n handleTakeOver(\n id,\n collectionSlug,\n globalSlug,\n user,\n false,\n updateDocumentEditor,\n setCurrentEditor,\n documentLockStateRef,\n isLockingEnabled,\n )\n }\n updatedAt={lastUpdateTime}\n user={currentEditor}\n />\n )}\n {isLockingEnabled && showTakeOverModal && (\n <DocumentTakeOver\n handleBackToDashboard={() => handleBackToDashboard({ adminRoute, router })}\n isActive={showTakeOverModal}\n onReadOnly={() => {\n setIsReadOnlyForIncomingUser(true)\n setShowTakeOverModal(false)\n }}\n />\n )}\n {!isReadOnlyForIncomingUser && preventLeaveWithoutSaving && <LeaveWithoutSaving />}\n <SetDocumentStepNav\n collectionSlug={collectionSlug}\n globalLabel={globalConfig?.label}\n globalSlug={globalSlug}\n id={id}\n pluralLabel={collectionConfig ? collectionConfig?.labels?.plural : undefined}\n useAsTitle={collectionConfig ? collectionConfig?.admin?.useAsTitle : undefined}\n view={t('general:livePreview')}\n />\n <SetDocumentTitle\n collectionConfig={collectionConfig}\n config={config}\n fallback={id?.toString() || ''}\n globalConfig={globalConfig}\n />\n <DocumentControls\n apiURL={apiURL}\n customComponents={{\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n }}\n data={initialData}\n disableActions={disableActions}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={isEditing}\n onTakeOver={() =>\n handleTakeOver(\n id,\n collectionSlug,\n globalSlug,\n user,\n true,\n updateDocumentEditor,\n setCurrentEditor,\n documentLockStateRef,\n isLockingEnabled,\n setIsReadOnlyForIncomingUser,\n )\n }\n permissions={docPermissions}\n readOnlyForIncomingUser={isReadOnlyForIncomingUser}\n slug={collectionConfig?.slug || globalConfig?.slug}\n user={currentEditor}\n />\n <div\n className={[baseClass, previewWindowType === 'popup' && `${baseClass}--detached`]\n .filter(Boolean)\n .join(' ')}\n >\n <div\n className={[\n `${baseClass}__main`,\n previewWindowType === 'popup' && `${baseClass}__main--popup-open`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={BeforeFields}\n Description={Description}\n docPermissions={docPermissions}\n fields={fields}\n forceSidebarWrap\n readOnly={isReadOnlyForIncomingUser || !hasSavePermission}\n schemaPathSegments={[collectionSlug || globalSlug]}\n />\n {AfterDocument}\n </div>\n <LivePreview collectionSlug={collectionSlug} globalSlug={globalSlug} />\n </div>\n </Form>\n </OperationProvider>\n )\n}\n\nexport const LivePreviewClient: React.FC<\n {\n readonly breakpoints: LivePreviewConfig['breakpoints']\n readonly initialData: Data\n readonly url: string\n } & DocumentSlots\n> = (props) => {\n const { breakpoints, url: incomingUrl } = props\n const { collectionSlug, globalSlug } = useDocumentInfo()\n\n const {\n config,\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const url =\n incomingUrl.startsWith('http://') || incomingUrl.startsWith('https://')\n ? incomingUrl\n : getAbsoluteUrl(incomingUrl)\n\n const { isPopupOpen, openPopupWindow, popupRef } = usePopupWindow({\n eventType: 'payload-live-preview',\n url,\n })\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const globalConfig = getEntityConfig({ globalSlug })\n\n const schemaPath = collectionSlug || globalSlug\n\n return (\n <Fragment>\n <LivePreviewProvider\n breakpoints={breakpoints}\n fieldSchema={collectionConfig?.fields || globalConfig?.fields}\n isPopupOpen={isPopupOpen}\n openPopupWindow={openPopupWindow}\n popupRef={popupRef}\n url={url}\n >\n <PreviewView\n apiRoute={apiRoute}\n collectionConfig={collectionConfig}\n config={config}\n Description={props.Description}\n fields={(collectionConfig || globalConfig)?.fields}\n globalConfig={globalConfig}\n PreviewButton={props.PreviewButton}\n PublishButton={props.PublishButton}\n SaveButton={props.SaveButton}\n SaveDraftButton={props.SaveDraftButton}\n schemaPath={schemaPath}\n serverURL={serverURL}\n Upload={props.Upload}\n />\n </LivePreviewProvider>\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.client.js","names":["c","_c","DocumentControls","DocumentFields","DocumentLocked","DocumentTakeOver","Form","LeaveWithoutSaving","OperationProvider","SetDocumentStepNav","SetDocumentTitle","useAuth","useConfig","useDocumentDrawerContext","useDocumentEvents","useDocumentInfo","useEditDepth","useRouteTransition","useServerFunctions","useTranslation","useUploadEdits","abortAndIgnore","handleAbortRef","handleBackToDashboard","handleGoBack","handleTakeOver","useRouter","useSearchParams","formatAdminURL","React","Fragment","useCallback","useEffect","useRef","useState","useLivePreviewContext","LivePreviewProvider","LivePreview","usePopupWindow","baseClass","getAbsoluteUrl","url","URL","window","location","origin","href","PreviewView","collectionConfig","config","Description","fields","globalConfig","PreviewButton","PublishButton","SaveButton","SaveDraftButton","schemaPath","id","action","AfterDocument","AfterFields","apiURL","BeforeFields","collectionSlug","currentEditor","disableActions","disableLeaveWithoutSaving","docPermissions","documentIsLocked","getDocPermissions","getDocPreferences","globalSlug","hasPublishPermission","hasSavePermission","incrementVersionCount","initialData","initialState","isEditing","isInitializing","lastUpdateTime","setCurrentEditor","setDocumentIsLocked","unlockDocument","updateDocumentEditor","updateSavedDocumentData","onSave","onSaveFromContext","operation","admin","user","userSlug","routes","adminRoute","router","params","locale","get","t","previewWindowType","refreshCookieAsync","reportUpdate","resetUploadEdits","getFormState","startRouteTransition","docConfig","entitySlug","slug","depth","lockDocumentsProp","lockDocuments","undefined","isLockingEnabled","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","autosaveEnabled","Boolean","versions","drafts","autosave","preventLeaveWithoutSaving","isReadOnlyForIncomingUser","setIsReadOnlyForIncomingUser","showTakeOverModal","setShowTakeOverModal","abortOnChangeRef","abortOnSaveRef","editSessionStartTime","setEditSessionStartTime","Date","now","lockExpiryTime","isLockExpired","documentLockStateRef","hasShownLockedModal","isLocked","json","controller","updatedAt","result","toISOString","doc","redirectRoute","path","push","docPreferences","state","data","renderAllFields","returnLockStatus","signal","skipValidation","current","onChange","formState","prevFormState","submitted","currentTime","timeSinceLastUpdate","updateLastEdited","lockedState","previousOwnerID","lockedUserID","currentPath","pathname","documentID","stayWithinDocumentPaths","isStayingWithinDocument","some","includes","abortOnChange","abortOnSave","shouldShowDocumentLockedModal","_jsx","_jsxs","className","disabled","method","onSuccess","isActive","onReadOnly","onTakeOver","globalLabel","label","pluralLabel","labels","plural","useAsTitle","view","fallback","toString","customComponents","permissions","readOnlyForIncomingUser","filter","join","forceSidebarWrap","readOnly","schemaPathSegments","LivePreviewClient","props","$","breakpoints","incomingUrl","t0","getEntityConfig","t1","serverURL","api","apiRoute","t2","startsWith","t3","eventType","isPopupOpen","openPopupWindow","popupRef","t4","Upload","children","fieldSchema"],"sources":["../../../src/views/LivePreview/index.client.tsx"],"sourcesContent":["'use client'\nimport type { FormProps } from '@payloadcms/ui'\nimport type {\n ClientCollectionConfig,\n ClientConfig,\n ClientField,\n ClientGlobalConfig,\n ClientUser,\n Data,\n DocumentSlots,\n FormState,\n LivePreviewConfig,\n} from 'payload'\n\nimport {\n DocumentControls,\n DocumentFields,\n DocumentLocked,\n DocumentTakeOver,\n Form,\n LeaveWithoutSaving,\n OperationProvider,\n SetDocumentStepNav,\n SetDocumentTitle,\n useAuth,\n useConfig,\n useDocumentDrawerContext,\n useDocumentEvents,\n useDocumentInfo,\n useEditDepth,\n useRouteTransition,\n useServerFunctions,\n useTranslation,\n useUploadEdits,\n} from '@payloadcms/ui'\nimport {\n abortAndIgnore,\n handleAbortRef,\n handleBackToDashboard,\n handleGoBack,\n handleTakeOver,\n} from '@payloadcms/ui/shared'\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport { useLivePreviewContext } from './Context/context.js'\nimport './index.scss'\nimport { LivePreviewProvider } from './Context/index.js'\nimport { LivePreview } from './Preview/index.js'\nimport { usePopupWindow } from './usePopupWindow.js'\n\nconst baseClass = 'live-preview'\n\ntype Props = {\n readonly apiRoute: string\n readonly collectionConfig?: ClientCollectionConfig\n readonly config: ClientConfig\n readonly fields: ClientField[]\n readonly globalConfig?: ClientGlobalConfig\n readonly schemaPath: string\n readonly serverURL: string\n} & DocumentSlots\n\nconst getAbsoluteUrl = (url) => {\n try {\n return new URL(url, window.location.origin).href\n } catch {\n return url\n }\n}\n\nconst PreviewView: React.FC<Props> = ({\n collectionConfig,\n config,\n Description,\n fields,\n globalConfig,\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n schemaPath,\n}) => {\n const {\n id,\n action,\n AfterDocument,\n AfterFields,\n apiURL,\n BeforeFields,\n collectionSlug,\n currentEditor,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n documentIsLocked,\n getDocPermissions,\n getDocPreferences,\n globalSlug,\n hasPublishPermission,\n hasSavePermission,\n incrementVersionCount,\n initialData,\n initialState,\n isEditing,\n isInitializing,\n lastUpdateTime,\n setCurrentEditor,\n setDocumentIsLocked,\n unlockDocument,\n updateDocumentEditor,\n updateSavedDocumentData,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const operation = id ? 'update' : 'create'\n\n const {\n config: {\n admin: { user: userSlug },\n routes: { admin: adminRoute },\n },\n } = useConfig()\n const router = useRouter()\n const params = useSearchParams()\n const locale = params.get('locale')\n const { t } = useTranslation()\n const { previewWindowType } = useLivePreviewContext()\n const { refreshCookieAsync, user } = useAuth()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n const { getFormState } = useServerFunctions()\n const { startRouteTransition } = useRouteTransition()\n\n const docConfig = collectionConfig || globalConfig\n\n const entitySlug = collectionConfig?.slug || globalConfig?.slug\n\n const depth = useEditDepth()\n\n const lockDocumentsProp = docConfig?.lockDocuments !== undefined ? docConfig?.lockDocuments : true\n const isLockingEnabled = lockDocumentsProp !== false\n\n const lockDurationDefault = 300 // Default 5 minutes in seconds\n const lockDuration =\n typeof lockDocumentsProp === 'object' ? lockDocumentsProp.duration : lockDurationDefault\n const lockDurationInMilliseconds = lockDuration * 1000\n\n const autosaveEnabled = Boolean(\n (collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave),\n )\n\n const preventLeaveWithoutSaving =\n typeof disableLeaveWithoutSaving !== 'undefined' ? !disableLeaveWithoutSaving : !autosaveEnabled\n\n const [isReadOnlyForIncomingUser, setIsReadOnlyForIncomingUser] = useState(false)\n const [showTakeOverModal, setShowTakeOverModal] = useState(false)\n\n const abortOnChangeRef = useRef<AbortController>(null)\n const abortOnSaveRef = useRef<AbortController>(null)\n\n const [editSessionStartTime, setEditSessionStartTime] = useState(Date.now())\n\n const lockExpiryTime = lastUpdateTime + lockDurationInMilliseconds\n\n const isLockExpired = Date.now() > lockExpiryTime\n\n const documentLockStateRef = useRef<{\n hasShownLockedModal: boolean\n isLocked: boolean\n user: ClientUser | number | string\n } | null>({\n hasShownLockedModal: false,\n isLocked: false,\n user: null,\n })\n\n const onSave = useCallback(\n async (json): Promise<FormState> => {\n const controller = handleAbortRef(abortOnSaveRef)\n\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 incrementVersionCount()\n\n if (typeof updateSavedDocumentData === 'function') {\n void updateSavedDocumentData(json?.doc || {})\n }\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\n startRouteTransition(() => router.push(redirectRoute))\n } else {\n resetUploadEdits()\n }\n\n await getDocPermissions(json)\n\n if ((id || globalSlug) && !autosaveEnabled) {\n const docPreferences = await getDocPreferences()\n\n const { state } = await getFormState({\n id,\n collectionSlug,\n data: json?.doc || json?.result,\n docPermissions,\n docPreferences,\n globalSlug,\n operation,\n renderAllFields: true,\n returnLockStatus: false,\n schemaPath: entitySlug,\n signal: controller.signal,\n skipValidation: true,\n })\n\n // Unlock the document after save\n if (isLockingEnabled) {\n setDocumentIsLocked(false)\n }\n\n abortOnSaveRef.current = null\n\n return state\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n docPermissions,\n entitySlug,\n getDocPermissions,\n getDocPreferences,\n getFormState,\n globalSlug,\n id,\n incrementVersionCount,\n isEditing,\n isLockingEnabled,\n locale,\n onSaveFromContext,\n operation,\n refreshCookieAsync,\n reportUpdate,\n resetUploadEdits,\n router,\n setDocumentIsLocked,\n updateSavedDocumentData,\n startRouteTransition,\n user,\n userSlug,\n autosaveEnabled,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState, submitted }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const currentTime = Date.now()\n const timeSinceLastUpdate = currentTime - editSessionStartTime\n\n const updateLastEdited = isLockingEnabled && timeSinceLastUpdate >= 10000 // 10 seconds\n\n if (updateLastEdited) {\n setEditSessionStartTime(currentTime)\n }\n\n const docPreferences = await getDocPreferences()\n\n const { lockedState, state } = await getFormState({\n id,\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n returnLockStatus: isLockingEnabled ? true : false,\n schemaPath,\n signal: controller.signal,\n skipValidation: !submitted,\n updateLastEdited,\n })\n\n setDocumentIsLocked(true)\n\n if (isLockingEnabled) {\n const previousOwnerID =\n typeof documentLockStateRef.current?.user === 'object'\n ? documentLockStateRef.current?.user?.id\n : documentLockStateRef.current?.user\n\n if (lockedState) {\n const lockedUserID =\n typeof lockedState.user === 'string' || typeof lockedState.user === 'number'\n ? lockedState.user\n : lockedState.user.id\n\n if (!documentLockStateRef.current || lockedUserID !== previousOwnerID) {\n if (previousOwnerID === user.id && lockedUserID !== user.id) {\n setShowTakeOverModal(true)\n documentLockStateRef.current.hasShownLockedModal = true\n }\n\n documentLockStateRef.current = documentLockStateRef.current = {\n hasShownLockedModal: documentLockStateRef.current?.hasShownLockedModal || false,\n isLocked: true,\n user: lockedState.user as ClientUser,\n }\n\n setCurrentEditor(lockedState.user as ClientUser)\n }\n }\n }\n\n abortOnChangeRef.current = null\n\n return state\n },\n [\n editSessionStartTime,\n isLockingEnabled,\n getDocPreferences,\n getFormState,\n id,\n collectionSlug,\n docPermissions,\n globalSlug,\n operation,\n schemaPath,\n setDocumentIsLocked,\n user?.id,\n setCurrentEditor,\n ],\n )\n\n // Clean up when the component unmounts or when the document is unlocked\n useEffect(() => {\n return () => {\n if (!isLockingEnabled) {\n return\n }\n\n const currentPath = window.location.pathname\n\n const documentID = id || globalSlug\n\n // Routes where we do NOT want to unlock the document\n const stayWithinDocumentPaths = ['preview', 'api', 'versions']\n\n const isStayingWithinDocument = stayWithinDocumentPaths.some((path) =>\n currentPath.includes(path),\n )\n\n // Unlock the document only if we're actually navigating away from the document\n if (documentID && documentIsLocked && !isStayingWithinDocument) {\n // Check if this user is still the current editor\n if (\n typeof documentLockStateRef.current?.user === 'object'\n ? documentLockStateRef.current?.user?.id === user?.id\n : documentLockStateRef.current?.user === user?.id\n ) {\n void unlockDocument(id, collectionSlug ?? globalSlug)\n setDocumentIsLocked(false)\n setCurrentEditor(null)\n }\n }\n\n setShowTakeOverModal(false)\n }\n }, [\n collectionSlug,\n globalSlug,\n id,\n unlockDocument,\n user,\n setCurrentEditor,\n isLockingEnabled,\n documentIsLocked,\n setDocumentIsLocked,\n ])\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n const abortOnSave = abortOnSaveRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n abortAndIgnore(abortOnSave)\n }\n })\n\n const shouldShowDocumentLockedModal =\n documentIsLocked &&\n currentEditor &&\n (typeof currentEditor === 'object'\n ? currentEditor.id !== user?.id\n : currentEditor !== user?.id) &&\n !isReadOnlyForIncomingUser &&\n !showTakeOverModal &&\n // eslint-disable-next-line react-compiler/react-compiler\n !documentLockStateRef.current?.hasShownLockedModal &&\n !isLockExpired\n\n return (\n <OperationProvider operation={operation}>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isReadOnlyForIncomingUser || !hasSavePermission}\n initialState={initialState}\n isInitializing={isInitializing}\n method={id ? 'PATCH' : 'POST'}\n onChange={[onChange]}\n onSuccess={onSave}\n >\n {isLockingEnabled && shouldShowDocumentLockedModal && !isReadOnlyForIncomingUser && (\n <DocumentLocked\n handleGoBack={() => handleGoBack({ adminRoute, collectionSlug, router })}\n isActive={shouldShowDocumentLockedModal}\n onReadOnly={() => {\n setIsReadOnlyForIncomingUser(true)\n setShowTakeOverModal(false)\n }}\n onTakeOver={() =>\n handleTakeOver(\n id,\n collectionSlug,\n globalSlug,\n user,\n false,\n updateDocumentEditor,\n setCurrentEditor,\n documentLockStateRef,\n isLockingEnabled,\n )\n }\n updatedAt={lastUpdateTime}\n user={currentEditor}\n />\n )}\n {isLockingEnabled && showTakeOverModal && (\n <DocumentTakeOver\n handleBackToDashboard={() => handleBackToDashboard({ adminRoute, router })}\n isActive={showTakeOverModal}\n onReadOnly={() => {\n setIsReadOnlyForIncomingUser(true)\n setShowTakeOverModal(false)\n }}\n />\n )}\n {!isReadOnlyForIncomingUser && preventLeaveWithoutSaving && <LeaveWithoutSaving />}\n <SetDocumentStepNav\n collectionSlug={collectionSlug}\n globalLabel={globalConfig?.label}\n globalSlug={globalSlug}\n id={id}\n pluralLabel={collectionConfig ? collectionConfig?.labels?.plural : undefined}\n useAsTitle={collectionConfig ? collectionConfig?.admin?.useAsTitle : undefined}\n view={t('general:livePreview')}\n />\n <SetDocumentTitle\n collectionConfig={collectionConfig}\n config={config}\n fallback={id?.toString() || ''}\n globalConfig={globalConfig}\n />\n <DocumentControls\n apiURL={apiURL}\n customComponents={{\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n }}\n data={initialData}\n disableActions={disableActions}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={isEditing}\n onTakeOver={() =>\n handleTakeOver(\n id,\n collectionSlug,\n globalSlug,\n user,\n true,\n updateDocumentEditor,\n setCurrentEditor,\n documentLockStateRef,\n isLockingEnabled,\n setIsReadOnlyForIncomingUser,\n )\n }\n permissions={docPermissions}\n readOnlyForIncomingUser={isReadOnlyForIncomingUser}\n slug={collectionConfig?.slug || globalConfig?.slug}\n user={currentEditor}\n />\n <div\n className={[baseClass, previewWindowType === 'popup' && `${baseClass}--detached`]\n .filter(Boolean)\n .join(' ')}\n >\n <div\n className={[\n `${baseClass}__main`,\n previewWindowType === 'popup' && `${baseClass}__main--popup-open`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={BeforeFields}\n Description={Description}\n docPermissions={docPermissions}\n fields={fields}\n forceSidebarWrap\n readOnly={isReadOnlyForIncomingUser || !hasSavePermission}\n schemaPathSegments={[collectionSlug || globalSlug]}\n />\n {AfterDocument}\n </div>\n <LivePreview collectionSlug={collectionSlug} globalSlug={globalSlug} />\n </div>\n </Form>\n </OperationProvider>\n )\n}\n\nexport const LivePreviewClient: React.FC<\n {\n readonly breakpoints: LivePreviewConfig['breakpoints']\n readonly initialData: Data\n readonly url: string\n } & DocumentSlots\n> = (props) => {\n const { breakpoints, url: incomingUrl } = props\n const { collectionSlug, globalSlug } = useDocumentInfo()\n\n const {\n config,\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const url =\n incomingUrl.startsWith('http://') || incomingUrl.startsWith('https://')\n ? incomingUrl\n : getAbsoluteUrl(incomingUrl)\n\n const { isPopupOpen, openPopupWindow, popupRef } = usePopupWindow({\n eventType: 'payload-live-preview',\n url,\n })\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const globalConfig = getEntityConfig({ globalSlug })\n\n const schemaPath = collectionSlug || globalSlug\n\n return (\n <Fragment>\n <LivePreviewProvider\n breakpoints={breakpoints}\n fieldSchema={collectionConfig?.fields || globalConfig?.fields}\n isPopupOpen={isPopupOpen}\n openPopupWindow={openPopupWindow}\n popupRef={popupRef}\n url={url}\n >\n <PreviewView\n apiRoute={apiRoute}\n collectionConfig={collectionConfig}\n config={config}\n Description={props.Description}\n fields={(collectionConfig || globalConfig)?.fields}\n globalConfig={globalConfig}\n PreviewButton={props.PreviewButton}\n PublishButton={props.PublishButton}\n SaveButton={props.SaveButton}\n SaveDraftButton={props.SaveDraftButton}\n schemaPath={schemaPath}\n serverURL={serverURL}\n Upload={props.Upload}\n />\n </LivePreviewProvider>\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Login/LoginForm/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAsBzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAyFA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Login/LoginForm/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAqBzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAA;KAAE,CAAA;CAC/D,CAyFA,CAAA"}
@@ -5,8 +5,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import React from 'react';
6
6
  const baseClass = 'login__form';
7
7
  import { Form, FormSubmit, Link, PasswordField, useAuth, useConfig, useTranslation } from '@payloadcms/ui';
8
- import { formatAdminURL } from '@payloadcms/ui/shared';
9
- import { getLoginOptions } from 'payload/shared';
8
+ import { formatAdminURL, getLoginOptions } from 'payload/shared';
10
9
  import { LoginField } from '../LoginField/index.js';
11
10
  export const LoginForm = t0 => {
12
11
  const $ = _c(23);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","baseClass","Form","FormSubmit","Link","PasswordField","useAuth","useConfig","useTranslation","formatAdminURL","getLoginOptions","LoginField","LoginForm","t0","$","prefillEmail","prefillPassword","prefillUsername","searchParams","config","getEntityConfig","admin","t1","routes","t2","t3","user","userSlug","forgot","forgotRoute","adminRoute","api","apiRoute","loginWithUsername","t4","collectionConfig","collectionSlug","auth","authOptions","canLoginWithEmail","canLoginWithUsername","t5","loginType","useState","t","setUser","t6","undefined","t7","t8","initialState","password","initialValue","valid","value","username","email","t9","data","handleLogin","_jsxs","action","className","disableSuccessStatus","method","onSuccess","redirect","waitForAutocomplete","children","_jsx","type","field","name","label","required","path","href","prefetch","size"],"sources":["../../../../src/views/Login/LoginForm/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nconst baseClass = 'login__form'\n\nimport type { UserWithToken } from '@payloadcms/ui'\nimport type { FormState } from 'payload'\n\nimport {\n Form,\n FormSubmit,\n Link,\n PasswordField,\n useAuth,\n useConfig,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport { getLoginOptions } from 'payload/shared'\n\nimport type { LoginFieldProps } from '../LoginField/index.js'\n\nimport { LoginField } from '../LoginField/index.js'\nimport './index.scss'\n\nexport const LoginForm: React.FC<{\n prefillEmail?: string\n prefillPassword?: string\n prefillUsername?: string\n searchParams: { [key: string]: string | string[] | undefined }\n}> = ({ prefillEmail, prefillPassword, prefillUsername, searchParams }) => {\n const { config, getEntityConfig } = useConfig()\n\n const {\n admin: {\n routes: { forgot: forgotRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute, api: apiRoute },\n } = config\n\n const collectionConfig = getEntityConfig({ collectionSlug: userSlug })\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n const { canLoginWithEmail, canLoginWithUsername } = getLoginOptions(loginWithUsername)\n\n const [loginType] = React.useState<LoginFieldProps['type']>(() => {\n if (canLoginWithEmail && canLoginWithUsername) {\n return 'emailOrUsername'\n }\n if (canLoginWithUsername) {\n return 'username'\n }\n return 'email'\n })\n\n const { t } = useTranslation()\n const { setUser } = useAuth()\n\n const initialState: FormState = {\n password: {\n initialValue: prefillPassword ?? undefined,\n valid: true,\n value: prefillPassword ?? undefined,\n },\n }\n\n if (loginWithUsername) {\n initialState.username = {\n initialValue: prefillUsername ?? undefined,\n valid: true,\n value: prefillUsername ?? undefined,\n }\n } else {\n initialState.email = {\n initialValue: prefillEmail ?? undefined,\n valid: true,\n value: prefillEmail ?? undefined,\n }\n }\n\n const handleLogin = (data: UserWithToken) => {\n setUser(data)\n }\n\n return (\n <Form\n action={`${apiRoute}/${userSlug}/login`}\n className={baseClass}\n disableSuccessStatus\n initialState={initialState}\n method=\"POST\"\n onSuccess={handleLogin}\n redirect={typeof searchParams?.redirect === 'string' ? searchParams.redirect : adminRoute}\n waitForAutocomplete\n >\n <div className={`${baseClass}__inputWrap`}>\n <LoginField type={loginType} />\n <PasswordField\n field={{\n name: 'password',\n label: t('general:password'),\n required: true,\n }}\n path=\"password\"\n />\n </div>\n <Link\n href={formatAdminURL({\n adminRoute,\n path: forgotRoute,\n })}\n prefetch={false}\n >\n {t('authentication:forgotPasswordQuestion')}\n </Link>\n <FormSubmit size=\"large\">{t('authentication:login')}</FormSubmit>\n </Form>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","baseClass","Form","FormSubmit","Link","PasswordField","useAuth","useConfig","useTranslation","formatAdminURL","getLoginOptions","LoginField","LoginForm","t0","$","prefillEmail","prefillPassword","prefillUsername","searchParams","config","getEntityConfig","admin","t1","routes","t2","t3","user","userSlug","forgot","forgotRoute","adminRoute","api","apiRoute","loginWithUsername","t4","collectionConfig","collectionSlug","auth","authOptions","canLoginWithEmail","canLoginWithUsername","t5","loginType","useState","t","setUser","t6","undefined","t7","t8","initialState","password","initialValue","valid","value","username","email","t9","data","handleLogin","_jsxs","action","className","disableSuccessStatus","method","onSuccess","redirect","waitForAutocomplete","children","_jsx","type","field","name","label","required","path","href","prefetch","size"],"sources":["../../../../src/views/Login/LoginForm/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nconst baseClass = 'login__form'\n\nimport type { UserWithToken } from '@payloadcms/ui'\nimport type { FormState } from 'payload'\n\nimport {\n Form,\n FormSubmit,\n Link,\n PasswordField,\n useAuth,\n useConfig,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL, getLoginOptions } from 'payload/shared'\n\nimport type { LoginFieldProps } from '../LoginField/index.js'\n\nimport { LoginField } from '../LoginField/index.js'\nimport './index.scss'\n\nexport const LoginForm: React.FC<{\n prefillEmail?: string\n prefillPassword?: string\n prefillUsername?: string\n searchParams: { [key: string]: string | string[] | undefined }\n}> = ({ prefillEmail, prefillPassword, prefillUsername, searchParams }) => {\n const { config, getEntityConfig } = useConfig()\n\n const {\n admin: {\n routes: { forgot: forgotRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute, api: apiRoute },\n } = config\n\n const collectionConfig = getEntityConfig({ collectionSlug: userSlug })\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n const { canLoginWithEmail, canLoginWithUsername } = getLoginOptions(loginWithUsername)\n\n const [loginType] = React.useState<LoginFieldProps['type']>(() => {\n if (canLoginWithEmail && canLoginWithUsername) {\n return 'emailOrUsername'\n }\n if (canLoginWithUsername) {\n return 'username'\n }\n return 'email'\n })\n\n const { t } = useTranslation()\n const { setUser } = useAuth()\n\n const initialState: FormState = {\n password: {\n initialValue: prefillPassword ?? undefined,\n valid: true,\n value: prefillPassword ?? undefined,\n },\n }\n\n if (loginWithUsername) {\n initialState.username = {\n initialValue: prefillUsername ?? undefined,\n valid: true,\n value: prefillUsername ?? undefined,\n }\n } else {\n initialState.email = {\n initialValue: prefillEmail ?? undefined,\n valid: true,\n value: prefillEmail ?? undefined,\n }\n }\n\n const handleLogin = (data: UserWithToken) => {\n setUser(data)\n }\n\n return (\n <Form\n action={`${apiRoute}/${userSlug}/login`}\n className={baseClass}\n disableSuccessStatus\n initialState={initialState}\n method=\"POST\"\n onSuccess={handleLogin}\n redirect={typeof searchParams?.redirect === 'string' ? searchParams.redirect : adminRoute}\n waitForAutocomplete\n >\n <div className={`${baseClass}__inputWrap`}>\n <LoginField type={loginType} />\n <PasswordField\n field={{\n name: 'password',\n label: t('general:password'),\n required: true,\n }}\n path=\"password\"\n />\n </div>\n <Link\n href={formatAdminURL({\n adminRoute,\n path: forgotRoute,\n })}\n prefetch={false}\n >\n {t('authentication:forgotPasswordQuestion')}\n </Link>\n <FormSubmit size=\"large\">{t('authentication:login')}</FormSubmit>\n </Form>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -3,8 +3,8 @@
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import { Button, LoadingOverlay, toast, useAuth, useRouteTransition, useTranslation } from '@payloadcms/ui';
6
- import { formatAdminURL } from '@payloadcms/ui/shared';
7
6
  import { useRouter } from 'next/navigation.js';
7
+ import { formatAdminURL } from 'payload/shared';
8
8
  import React, { useEffect } from 'react';
9
9
  const baseClass = 'logout';
10
10
  export const LogoutClient = props => {
@@ -1 +1 @@
1
- {"version":3,"file":"LogoutClient.js","names":["c","_c","Button","LoadingOverlay","toast","useAuth","useRouteTransition","useTranslation","formatAdminURL","useRouter","React","useEffect","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","isLoggedOut","setIsLoggedOut","useState","logOutSuccessRef","useRef","t0","path","length","encodeURIComponent","loginRoute","t","router","t1","loggedOut","current","success","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport {\n Button,\n LoadingOverlay,\n toast,\n useAuth,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useEffect } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'logout'\n\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const [isLoggedOut, setIsLoggedOut] = React.useState<boolean>(!user)\n\n const logOutSuccessRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n const loggedOut = await logOut()\n setIsLoggedOut(loggedOut)\n\n if (!inactivity && loggedOut && !logOutSuccessRef.current) {\n toast.success(t('authentication:loggedOutSuccessfully'))\n logOutSuccessRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [inactivity, logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (!isLoggedOut) {\n void handleLogOut()\n } else {\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedOut, loginRoute, router, startRouteTransition])\n\n if (isLoggedOut && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"secondary\" el=\"link\" size=\"large\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"LogoutClient.js","names":["c","_c","Button","LoadingOverlay","toast","useAuth","useRouteTransition","useTranslation","useRouter","formatAdminURL","React","useEffect","baseClass","LogoutClient","props","$","adminRoute","inactivity","redirect","logOut","user","startRouteTransition","isLoggedOut","setIsLoggedOut","useState","logOutSuccessRef","useRef","t0","path","length","encodeURIComponent","loginRoute","t","router","t1","loggedOut","current","success","push","handleLogOut","t2","t3","t4","_jsxs","className","children","_jsx","buttonStyle","el","size","url","animationDuration","loadingText"],"sources":["../../../src/views/Logout/LogoutClient.tsx"],"sourcesContent":["'use client'\nimport {\n Button,\n LoadingOverlay,\n toast,\n useAuth,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useEffect } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'logout'\n\nexport const LogoutClient: React.FC<{\n adminRoute: string\n inactivity?: boolean\n redirect: string\n}> = (props) => {\n const { adminRoute, inactivity, redirect } = props\n\n const { logOut, user } = useAuth()\n\n const { startRouteTransition } = useRouteTransition()\n\n const [isLoggedOut, setIsLoggedOut] = React.useState<boolean>(!user)\n\n const logOutSuccessRef = React.useRef(false)\n\n const [loginRoute] = React.useState(() =>\n formatAdminURL({\n adminRoute,\n path: `/login${\n inactivity && redirect && redirect.length > 0\n ? `?redirect=${encodeURIComponent(redirect)}`\n : ''\n }`,\n }),\n )\n\n const { t } = useTranslation()\n const router = useRouter()\n\n const handleLogOut = React.useCallback(async () => {\n const loggedOut = await logOut()\n setIsLoggedOut(loggedOut)\n\n if (!inactivity && loggedOut && !logOutSuccessRef.current) {\n toast.success(t('authentication:loggedOutSuccessfully'))\n logOutSuccessRef.current = true\n startRouteTransition(() => router.push(loginRoute))\n return\n }\n }, [inactivity, logOut, loginRoute, router, startRouteTransition, t])\n\n useEffect(() => {\n if (!isLoggedOut) {\n void handleLogOut()\n } else {\n startRouteTransition(() => router.push(loginRoute))\n }\n }, [handleLogOut, isLoggedOut, loginRoute, router, startRouteTransition])\n\n if (isLoggedOut && inactivity) {\n return (\n <div className={`${baseClass}__wrap`}>\n <h2>{t('authentication:loggedOutInactivity')}</h2>\n <Button buttonStyle=\"secondary\" el=\"link\" size=\"large\" url={loginRoute}>\n {t('authentication:logBackIn')}\n </Button>\n </div>\n )\n }\n\n return <LoadingOverlay animationDuration={'0ms'} loadingText={t('authentication:loggingOut')} />\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { formatAdminURL } from '@payloadcms/ui/shared';
2
+ import { formatAdminURL } from 'payload/shared';
3
3
  import React from 'react';
4
4
  import { DefaultTemplate } from '../../templates/Default/index.js';
5
5
  import { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","importMap","params","paramsPromise","searchParams","searchParamsPromise","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","useLayoutReq","req","user","permissions","canAccessAdmin","_jsx","locale","payload","visibleEntities","NotFoundView","props","marginTop"],"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { AdminViewServerProps, ImportMap, SanitizedConfig } from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport React 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 importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n config: Promise<SanitizedConfig>\n importMap: ImportMap\n params: Promise<{\n segments: string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n const { routes: { admin: adminRoute } = {} } = config\n\n const searchParams = await searchParamsPromise\n const initPageResult = await initPage({\n config,\n importMap,\n redirectUnauthenticatedUser: true,\n route: formatAdminURL({ adminRoute, path: '/not-found' }),\n searchParams,\n useLayoutReq: true,\n })\n\n const params = await paramsPromise\n\n if (!initPageResult.req.user || !initPageResult.permissions.canAccessAdmin) {\n return <NotFoundClient />\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 function NotFoundView(props: AdminViewServerProps) {\n return <NotFoundClient marginTop=\"large\" />\n}\n"],"mappings":";AAIA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAE/B,OAAO,MAAMC,oBAAA,GAAuB,MAAAA,CAAO;EACzCC,MAAA,EAAQC;AAAa,CAItB;EACC,MAAMD,MAAA,GAAS,MAAMC,aAAA;EAErB,MAAMC,IAAA,GAAO,MAAMN,kBAAA,CAAmB;IACpCI;EACF;EAEA,OAAO;IACLG,KAAA,EAAOD,IAAA,CAAKE,CAAC,CAAC;EAChB;AACF;AAQA,OAAO,MAAMC,YAAA,GAAe,MAAAA,CAAO;EACjCL,MAAA,EAAQC,aAAa;EACrBK,SAAS;EACTC,MAAA,EAAQC,aAAa;EACrBC,YAAA,EAAcC;AAAmB,CAUlC;EACC,MAAMV,MAAA,GAAS,MAAMC,aAAA;EACrB,MAAM;IAAEU,MAAA,EAAQ;MAAEC,KAAA,EAAOC;IAAU,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGb,MAAA;EAE/C,MAAMS,YAAA,GAAe,MAAMC,mBAAA;EAC3B,MAAMI,cAAA,GAAiB,MAAMjB,QAAA,CAAS;IACpCG,MAAA;IACAM,SAAA;IACAS,2BAAA,EAA6B;IAC7BC,KAAA,EAAOvB,cAAA,CAAe;MAAEoB,UAAA;MAAYI,IAAA,EAAM;IAAa;IACvDR,YAAA;IACAS,YAAA,EAAc;EAChB;EAEA,MAAMX,MAAA,GAAS,MAAMC,aAAA;EAErB,IAAI,CAACM,cAAA,CAAeK,GAAG,CAACC,IAAI,IAAI,CAACN,cAAA,CAAeO,WAAW,CAACC,cAAc,EAAE;IAC1E,oBAAOC,IAAA,CAACzB,cAAA;EACV;EAEA,oBACEyB,IAAA,CAAC5B,eAAA;IACCO,IAAA,EAAMY,cAAA,CAAeK,GAAG,CAACjB,IAAI;IAC7BsB,MAAA,EAAQV,cAAA,CAAeU,MAAM;IAC7BjB,MAAA,EAAQA,MAAA;IACRkB,OAAA,EAASX,cAAA,CAAeK,GAAG,CAACM,OAAO;IACnCJ,WAAA,EAAaP,cAAA,CAAeO,WAAW;IACvCZ,YAAA,EAAcA,YAAA;IACdW,IAAA,EAAMN,cAAA,CAAeK,GAAG,CAACC,IAAI;IAC7BM,eAAA,EAAiBZ,cAAA,CAAeY,eAAe;cAE/C,aAAAH,IAAA,CAACzB,cAAA;;AAGP;AAEA,OAAO,SAAS6B,aAAaC,KAA2B;EACtD,oBAAOL,IAAA,CAACzB,cAAA;IAAe+B,SAAA,EAAU;;AACnC","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","importMap","params","paramsPromise","searchParams","searchParamsPromise","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","useLayoutReq","req","user","permissions","canAccessAdmin","_jsx","locale","payload","visibleEntities","NotFoundView","props","marginTop"],"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { AdminViewServerProps, ImportMap, SanitizedConfig } from 'payload'\n\nimport { formatAdminURL } from 'payload/shared'\nimport React 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 importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n config: Promise<SanitizedConfig>\n importMap: ImportMap\n params: Promise<{\n segments: string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n const { routes: { admin: adminRoute } = {} } = config\n\n const searchParams = await searchParamsPromise\n const initPageResult = await initPage({\n config,\n importMap,\n redirectUnauthenticatedUser: true,\n route: formatAdminURL({ adminRoute, path: '/not-found' }),\n searchParams,\n useLayoutReq: true,\n })\n\n const params = await paramsPromise\n\n if (!initPageResult.req.user || !initPageResult.permissions.canAccessAdmin) {\n return <NotFoundClient />\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 function NotFoundView(props: AdminViewServerProps) {\n return <NotFoundClient marginTop=\"large\" />\n}\n"],"mappings":";AAIA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAE/B,OAAO,MAAMC,oBAAA,GAAuB,MAAAA,CAAO;EACzCC,MAAA,EAAQC;AAAa,CAItB;EACC,MAAMD,MAAA,GAAS,MAAMC,aAAA;EAErB,MAAMC,IAAA,GAAO,MAAMN,kBAAA,CAAmB;IACpCI;EACF;EAEA,OAAO;IACLG,KAAA,EAAOD,IAAA,CAAKE,CAAC,CAAC;EAChB;AACF;AAQA,OAAO,MAAMC,YAAA,GAAe,MAAAA,CAAO;EACjCL,MAAA,EAAQC,aAAa;EACrBK,SAAS;EACTC,MAAA,EAAQC,aAAa;EACrBC,YAAA,EAAcC;AAAmB,CAUlC;EACC,MAAMV,MAAA,GAAS,MAAMC,aAAA;EACrB,MAAM;IAAEU,MAAA,EAAQ;MAAEC,KAAA,EAAOC;IAAU,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGb,MAAA;EAE/C,MAAMS,YAAA,GAAe,MAAMC,mBAAA;EAC3B,MAAMI,cAAA,GAAiB,MAAMjB,QAAA,CAAS;IACpCG,MAAA;IACAM,SAAA;IACAS,2BAAA,EAA6B;IAC7BC,KAAA,EAAOvB,cAAA,CAAe;MAAEoB,UAAA;MAAYI,IAAA,EAAM;IAAa;IACvDR,YAAA;IACAS,YAAA,EAAc;EAChB;EAEA,MAAMX,MAAA,GAAS,MAAMC,aAAA;EAErB,IAAI,CAACM,cAAA,CAAeK,GAAG,CAACC,IAAI,IAAI,CAACN,cAAA,CAAeO,WAAW,CAACC,cAAc,EAAE;IAC1E,oBAAOC,IAAA,CAACzB,cAAA;EACV;EAEA,oBACEyB,IAAA,CAAC5B,eAAA;IACCO,IAAA,EAAMY,cAAA,CAAeK,GAAG,CAACjB,IAAI;IAC7BsB,MAAA,EAAQV,cAAA,CAAeU,MAAM;IAC7BjB,MAAA,EAAQA,MAAA;IACRkB,OAAA,EAASX,cAAA,CAAeK,GAAG,CAACM,OAAO;IACnCJ,WAAA,EAAaP,cAAA,CAAeO,WAAW;IACvCZ,YAAA,EAAcA,YAAA;IACdW,IAAA,EAAMN,cAAA,CAAeK,GAAG,CAACC,IAAI;IAC7BM,eAAA,EAAiBZ,cAAA,CAAeY,eAAe;cAE/C,aAAAH,IAAA,CAACzB,cAAA;;AAGP;AAEA,OAAO,SAAS6B,aAAaC,KAA2B;EACtD,oBAAOL,IAAA,CAACzB,cAAA;IAAe+B,SAAA,EAAU;;AACnC","ignoreList":[]}
@@ -3,8 +3,8 @@
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import { ConfirmPasswordField, Form, FormSubmit, HiddenField, PasswordField, useAuth, useConfig, useTranslation } from '@payloadcms/ui';
6
- import { formatAdminURL } from '@payloadcms/ui/shared';
7
6
  import { useRouter } from 'next/navigation.js';
7
+ import { formatAdminURL } from 'payload/shared';
8
8
  import React from 'react';
9
9
  const initialState = {
10
10
  'confirm-password': {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","ConfirmPasswordField","Form","FormSubmit","HiddenField","PasswordField","useAuth","useConfig","useTranslation","formatAdminURL","useRouter","React","initialState","initialValue","valid","value","password","ResetPasswordForm","t0","$","token","i18n","config","t1","admin","t2","routes","t3","serverURL","t4","user","userSlug","login","loginRoute","adminRoute","api","apiRoute","history","fetchFullUser","t5","push","path","onSuccess","t6","t7","_jsxs","action","method","children","className","_jsx","field","name","label","t","required","schemaPath","size"],"sources":["../../../../src/views/ResetPassword/ResetPasswordForm/index.tsx"],"sourcesContent":["'use client'\nimport {\n ConfirmPasswordField,\n Form,\n FormSubmit,\n HiddenField,\n PasswordField,\n useAuth,\n useConfig,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { type FormState } from 'payload'\nimport React from 'react'\n\ntype Args = {\n readonly token: string\n}\n\nconst initialState: FormState = {\n 'confirm-password': {\n initialValue: '',\n valid: false,\n value: '',\n },\n password: {\n initialValue: '',\n valid: false,\n value: '',\n },\n}\n\nexport const ResetPasswordForm: React.FC<Args> = ({ token }) => {\n const i18n = useTranslation()\n const {\n config: {\n admin: {\n routes: { login: loginRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const history = useRouter()\n const { fetchFullUser } = useAuth()\n\n const onSuccess = React.useCallback(async () => {\n const user = await fetchFullUser()\n if (user) {\n history.push(adminRoute)\n } else {\n history.push(\n formatAdminURL({\n adminRoute,\n path: loginRoute,\n }),\n )\n }\n }, [adminRoute, fetchFullUser, history, loginRoute])\n\n return (\n <Form\n action={`${serverURL}${apiRoute}/${userSlug}/reset-password`}\n initialState={initialState}\n method=\"POST\"\n onSuccess={onSuccess}\n >\n <div className=\"inputWrap\">\n <PasswordField\n field={{\n name: 'password',\n label: i18n.t('authentication:newPassword'),\n required: true,\n }}\n path=\"password\"\n schemaPath={`${userSlug}.password`}\n />\n <ConfirmPasswordField />\n <HiddenField path=\"token\" schemaPath={`${userSlug}.token`} value={token} />\n </div>\n <FormSubmit size=\"large\">{i18n.t('authentication:resetPassword')}</FormSubmit>\n </Form>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","ConfirmPasswordField","Form","FormSubmit","HiddenField","PasswordField","useAuth","useConfig","useTranslation","useRouter","formatAdminURL","React","initialState","initialValue","valid","value","password","ResetPasswordForm","t0","$","token","i18n","config","t1","admin","t2","routes","t3","serverURL","t4","user","userSlug","login","loginRoute","adminRoute","api","apiRoute","history","fetchFullUser","t5","push","path","onSuccess","t6","t7","_jsxs","action","method","children","className","_jsx","field","name","label","t","required","schemaPath","size"],"sources":["../../../../src/views/ResetPassword/ResetPasswordForm/index.tsx"],"sourcesContent":["'use client'\nimport {\n ConfirmPasswordField,\n Form,\n FormSubmit,\n HiddenField,\n PasswordField,\n useAuth,\n useConfig,\n useTranslation,\n} from '@payloadcms/ui'\nimport { useRouter } from 'next/navigation.js'\nimport { type FormState } from 'payload'\nimport { formatAdminURL } from 'payload/shared'\nimport React from 'react'\n\ntype Args = {\n readonly token: string\n}\n\nconst initialState: FormState = {\n 'confirm-password': {\n initialValue: '',\n valid: false,\n value: '',\n },\n password: {\n initialValue: '',\n valid: false,\n value: '',\n },\n}\n\nexport const ResetPasswordForm: React.FC<Args> = ({ token }) => {\n const i18n = useTranslation()\n const {\n config: {\n admin: {\n routes: { login: loginRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const history = useRouter()\n const { fetchFullUser } = useAuth()\n\n const onSuccess = React.useCallback(async () => {\n const user = await fetchFullUser()\n if (user) {\n history.push(adminRoute)\n } else {\n history.push(\n formatAdminURL({\n adminRoute,\n path: loginRoute,\n }),\n )\n }\n }, [adminRoute, fetchFullUser, history, loginRoute])\n\n return (\n <Form\n action={`${serverURL}${apiRoute}/${userSlug}/reset-password`}\n initialState={initialState}\n method=\"POST\"\n onSuccess={onSuccess}\n >\n <div className=\"inputWrap\">\n <PasswordField\n field={{\n name: 'password',\n label: i18n.t('authentication:newPassword'),\n required: true,\n }}\n path=\"password\"\n schemaPath={`${userSlug}.password`}\n />\n <ConfirmPasswordField />\n <HiddenField path=\"token\" schemaPath={`${userSlug}.token`} value={token} />\n </div>\n <FormSubmit size=\"large\">{i18n.t('authentication:resetPassword')}</FormSubmit>\n </Form>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ResetPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAInD,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,sBAAsB,mBAAmB,CAAA;AAEtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAA;AAEzD,wBAAgB,aAAa,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,oBAAoB,qBAmE7E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ResetPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAKnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,sBAAsB,mBAAmB,CAAA;AAEtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAA;AAEzD,wBAAgB,aAAa,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,oBAAoB,qBAmE7E"}
@@ -1,6 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { Button, Link } from '@payloadcms/ui';
3
- import { formatAdminURL, Translation } from '@payloadcms/ui/shared';
3
+ import { Translation } from '@payloadcms/ui/shared';
4
+ import { formatAdminURL } from 'payload/shared';
4
5
  import React from 'react';
5
6
  import { FormHeader } from '../../elements/FormHeader/index.js';
6
7
  import { ResetPasswordForm } from './ResetPasswordForm/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Button","Link","formatAdminURL","Translation","React","FormHeader","ResetPasswordForm","resetPasswordBaseClass","generateResetPasswordMetadata","ResetPassword","initPageResult","params","req","segments","_","token","i18n","payload","config","user","admin","routes","account","accountRoute","login","loginRoute","adminRoute","_jsxs","className","_jsx","description","elements","0","children","href","path","prefetch","i18nKey","t","heading","buttonStyle","el","size","to"],"sources":["../../../src/views/ResetPassword/index.tsx"],"sourcesContent":["import type { AdminViewServerProps } from 'payload'\n\nimport { Button, Link } from '@payloadcms/ui'\nimport { formatAdminURL, Translation } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { FormHeader } from '../../elements/FormHeader/index.js'\nimport { ResetPasswordForm } from './ResetPasswordForm/index.js'\nimport './index.scss'\n\nexport const resetPasswordBaseClass = 'reset-password'\n\nexport { generateResetPasswordMetadata } from './meta.js'\n\nexport function ResetPassword({ initPageResult, params }: AdminViewServerProps) {\n const { req } = initPageResult\n\n const {\n segments: [_, token],\n } = params\n\n const {\n i18n,\n payload: { config },\n user,\n } = req\n\n const {\n admin: {\n routes: { account: accountRoute, login: loginRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (user) {\n return (\n <div className={`${resetPasswordBaseClass}__wrap`}>\n <FormHeader\n description={\n <Translation\n elements={{\n '0': ({ children }) => (\n <Link\n href={formatAdminURL({\n adminRoute,\n path: accountRoute,\n })}\n prefetch={false}\n >\n {children}\n </Link>\n ),\n }}\n i18nKey=\"authentication:loggedInChangePassword\"\n t={i18n.t}\n />\n }\n heading={i18n.t('authentication:alreadyLoggedIn')}\n />\n <Button buttonStyle=\"secondary\" el=\"link\" size=\"large\" to={adminRoute}>\n {i18n.t('general:backToDashboard')}\n </Button>\n </div>\n )\n }\n\n return (\n <div className={`${resetPasswordBaseClass}__wrap`}>\n <FormHeader heading={i18n.t('authentication:resetPassword')} />\n <ResetPasswordForm token={token} />\n <Link\n href={formatAdminURL({\n adminRoute,\n path: loginRoute,\n })}\n prefetch={false}\n >\n {i18n.t('authentication:backToLogin')}\n </Link>\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,MAAM,EAAEC,IAAI,QAAQ;AAC7B,SAASC,cAAc,EAAEC,WAAW,QAAQ;AAC5C,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAC3B,SAASC,iBAAiB,QAAQ;AAGlC,OAAO,MAAMC,sBAAA,GAAyB;AAEtC,SAASC,6BAA6B,QAAQ;AAE9C,OAAO,SAASC,cAAc;EAAEC,cAAc;EAAEC;AAAM,CAAwB;EAC5E,MAAM;IAAEC;EAAG,CAAE,GAAGF,cAAA;EAEhB,MAAM;IACJG,QAAA,EAAU,CAACC,CAAA,EAAGC,KAAA;EAAM,CACrB,GAAGJ,MAAA;EAEJ,MAAM;IACJK,IAAI;IACJC,OAAA,EAAS;MAAEC;IAAM,CAAE;IACnBC;EAAI,CACL,GAAGP,GAAA;EAEJ,MAAM;IACJQ,KAAA,EAAO;MACLC,MAAA,EAAQ;QAAEC,OAAA,EAASC,YAAY;QAAEC,KAAA,EAAOC;MAAU;IAAE,CACrD;IACDJ,MAAA,EAAQ;MAAED,KAAA,EAAOM;IAAU;EAAE,CAC9B,GAAGR,MAAA;EAEJ,IAAIC,IAAA,EAAM;IACR,oBACEQ,KAAA,CAAC;MAAIC,SAAA,EAAW,GAAGrB,sBAAA,QAA8B;8BAC/CsB,IAAA,CAACxB,UAAA;QACCyB,WAAA,eACED,IAAA,CAAC1B,WAAA;UACC4B,QAAA,EAAU;YACR,KAAKC,CAAC;cAAEC;YAAQ,CAAE,kBAChBJ,IAAA,CAAC5B,IAAA;cACCiC,IAAA,EAAMhC,cAAA,CAAe;gBACnBwB,UAAA;gBACAS,IAAA,EAAMZ;cACR;cACAa,QAAA,EAAU;wBAETH;;UAGP;UACAI,OAAA,EAAQ;UACRC,CAAA,EAAGtB,IAAA,CAAKsB;;QAGZC,OAAA,EAASvB,IAAA,CAAKsB,CAAC,CAAC;uBAElBT,IAAA,CAAC7B,MAAA;QAAOwC,WAAA,EAAY;QAAYC,EAAA,EAAG;QAAOC,IAAA,EAAK;QAAQC,EAAA,EAAIjB,UAAA;kBACxDV,IAAA,CAAKsB,CAAC,CAAC;;;EAIhB;EAEA,oBACEX,KAAA,CAAC;IAAIC,SAAA,EAAW,GAAGrB,sBAAA,QAA8B;4BAC/CsB,IAAA,CAACxB,UAAA;MAAWkC,OAAA,EAASvB,IAAA,CAAKsB,CAAC,CAAC;qBAC5BT,IAAA,CAACvB,iBAAA;MAAkBS,KAAA,EAAOA;qBAC1Bc,IAAA,CAAC5B,IAAA;MACCiC,IAAA,EAAMhC,cAAA,CAAe;QACnBwB,UAAA;QACAS,IAAA,EAAMV;MACR;MACAW,QAAA,EAAU;gBAETpB,IAAA,CAAKsB,CAAC,CAAC;;;AAIhB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Button","Link","Translation","formatAdminURL","React","FormHeader","ResetPasswordForm","resetPasswordBaseClass","generateResetPasswordMetadata","ResetPassword","initPageResult","params","req","segments","_","token","i18n","payload","config","user","admin","routes","account","accountRoute","login","loginRoute","adminRoute","_jsxs","className","_jsx","description","elements","0","children","href","path","prefetch","i18nKey","t","heading","buttonStyle","el","size","to"],"sources":["../../../src/views/ResetPassword/index.tsx"],"sourcesContent":["import type { AdminViewServerProps } from 'payload'\n\nimport { Button, Link } from '@payloadcms/ui'\nimport { Translation } from '@payloadcms/ui/shared'\nimport { formatAdminURL } from 'payload/shared'\nimport React from 'react'\n\nimport { FormHeader } from '../../elements/FormHeader/index.js'\nimport { ResetPasswordForm } from './ResetPasswordForm/index.js'\nimport './index.scss'\n\nexport const resetPasswordBaseClass = 'reset-password'\n\nexport { generateResetPasswordMetadata } from './meta.js'\n\nexport function ResetPassword({ initPageResult, params }: AdminViewServerProps) {\n const { req } = initPageResult\n\n const {\n segments: [_, token],\n } = params\n\n const {\n i18n,\n payload: { config },\n user,\n } = req\n\n const {\n admin: {\n routes: { account: accountRoute, login: loginRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (user) {\n return (\n <div className={`${resetPasswordBaseClass}__wrap`}>\n <FormHeader\n description={\n <Translation\n elements={{\n '0': ({ children }) => (\n <Link\n href={formatAdminURL({\n adminRoute,\n path: accountRoute,\n })}\n prefetch={false}\n >\n {children}\n </Link>\n ),\n }}\n i18nKey=\"authentication:loggedInChangePassword\"\n t={i18n.t}\n />\n }\n heading={i18n.t('authentication:alreadyLoggedIn')}\n />\n <Button buttonStyle=\"secondary\" el=\"link\" size=\"large\" to={adminRoute}>\n {i18n.t('general:backToDashboard')}\n </Button>\n </div>\n )\n }\n\n return (\n <div className={`${resetPasswordBaseClass}__wrap`}>\n <FormHeader heading={i18n.t('authentication:resetPassword')} />\n <ResetPasswordForm token={token} />\n <Link\n href={formatAdminURL({\n adminRoute,\n path: loginRoute,\n })}\n prefetch={false}\n >\n {i18n.t('authentication:backToLogin')}\n </Link>\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,MAAM,EAAEC,IAAI,QAAQ;AAC7B,SAASC,WAAW,QAAQ;AAC5B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAC3B,SAASC,iBAAiB,QAAQ;AAGlC,OAAO,MAAMC,sBAAA,GAAyB;AAEtC,SAASC,6BAA6B,QAAQ;AAE9C,OAAO,SAASC,cAAc;EAAEC,cAAc;EAAEC;AAAM,CAAwB;EAC5E,MAAM;IAAEC;EAAG,CAAE,GAAGF,cAAA;EAEhB,MAAM;IACJG,QAAA,EAAU,CAACC,CAAA,EAAGC,KAAA;EAAM,CACrB,GAAGJ,MAAA;EAEJ,MAAM;IACJK,IAAI;IACJC,OAAA,EAAS;MAAEC;IAAM,CAAE;IACnBC;EAAI,CACL,GAAGP,GAAA;EAEJ,MAAM;IACJQ,KAAA,EAAO;MACLC,MAAA,EAAQ;QAAEC,OAAA,EAASC,YAAY;QAAEC,KAAA,EAAOC;MAAU;IAAE,CACrD;IACDJ,MAAA,EAAQ;MAAED,KAAA,EAAOM;IAAU;EAAE,CAC9B,GAAGR,MAAA;EAEJ,IAAIC,IAAA,EAAM;IACR,oBACEQ,KAAA,CAAC;MAAIC,SAAA,EAAW,GAAGrB,sBAAA,QAA8B;8BAC/CsB,IAAA,CAACxB,UAAA;QACCyB,WAAA,eACED,IAAA,CAAC3B,WAAA;UACC6B,QAAA,EAAU;YACR,KAAKC,CAAC;cAAEC;YAAQ,CAAE,kBAChBJ,IAAA,CAAC5B,IAAA;cACCiC,IAAA,EAAM/B,cAAA,CAAe;gBACnBuB,UAAA;gBACAS,IAAA,EAAMZ;cACR;cACAa,QAAA,EAAU;wBAETH;;UAGP;UACAI,OAAA,EAAQ;UACRC,CAAA,EAAGtB,IAAA,CAAKsB;;QAGZC,OAAA,EAASvB,IAAA,CAAKsB,CAAC,CAAC;uBAElBT,IAAA,CAAC7B,MAAA;QAAOwC,WAAA,EAAY;QAAYC,EAAA,EAAG;QAAOC,IAAA,EAAK;QAAQC,EAAA,EAAIjB,UAAA;kBACxDV,IAAA,CAAKsB,CAAC,CAAC;;;EAIhB;EAEA,oBACEX,KAAA,CAAC;IAAIC,SAAA,EAAW,GAAGrB,sBAAA,QAA8B;4BAC/CsB,IAAA,CAACxB,UAAA;MAAWkC,OAAA,EAASvB,IAAA,CAAKsB,CAAC,CAAC;qBAC5BT,IAAA,CAACvB,iBAAA;MAAkBS,KAAA,EAAOA;qBAC1Bc,IAAA,CAAC5B,IAAA;MACCiC,IAAA,EAAM/B,cAAA,CAAe;QACnBuB,UAAA;QACAS,IAAA,EAAMV;MACR;MACAW,QAAA,EAAU;gBAETpB,IAAA,CAAKsB,CAAC,CAAC;;;AAIhB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { formatAdminURL } from '@payloadcms/ui/shared';
1
+ import { formatAdminURL } from 'payload/shared';
2
2
  import { Account } from '../Account/index.js';
3
3
  import { CreateFirstUserView } from '../CreateFirstUser/index.js';
4
4
  import { Dashboard } from '../Dashboard/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"getViewFromConfig.js","names":["formatAdminURL","Account","CreateFirstUserView","Dashboard","Document","DocumentView","forgotPasswordBaseClass","ForgotPasswordView","ListView","loginBaseClass","LoginView","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","attachViewActions","getViewActions","getCustomViewByRoute","getDocumentViewInfo","isPathMatchingRoute","baseClasses","account","forgot","login","reset","verify","oneSegmentViews","createFirstUser","inactivity","logout","unauthorized","getViewFromConfig","adminRoute","config","currentRoute","importMap","searchParams","segments","ViewToRender","templateClassName","templateType","documentSubViewType","viewType","initPageOptions","route","segmentOne","segmentTwo","segmentThree","segmentFour","segmentFive","isGlobal","isCollection","matchedCollection","undefined","matchedGlobal","serverProps","viewActions","admin","components","actions","collections","find","slug","collectionConfig","globals","globalConfig","length","Component","viewKey","routes","matchedRoute","Object","entries","exact","path","concat","views","list","editConfig","edit","viewInfo","collectionOrGlobal","viewKeyArg","view","reverse","DefaultView"],"sources":["../../../src/views/Root/getViewFromConfig.ts"],"sourcesContent":["import type {\n AdminViewServerProps,\n DocumentSubViewTypes,\n ImportMap,\n PayloadComponent,\n SanitizedConfig,\n ServerPropsFromView,\n ViewTypes,\n} from 'payload'\nimport type React from 'react'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\n\nimport type { initPage } from '../../utilities/initPage/index.js'\n\nimport { Account } from '../Account/index.js'\nimport { CreateFirstUserView } from '../CreateFirstUser/index.js'\nimport { Dashboard } from '../Dashboard/index.js'\nimport { Document as DocumentView } from '../Document/index.js'\nimport { forgotPasswordBaseClass, ForgotPasswordView } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { loginBaseClass, LoginView } from '../Login/index.js'\nimport { LogoutInactivity, LogoutView } from '../Logout/index.js'\nimport { ResetPassword, resetPasswordBaseClass } from '../ResetPassword/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { Verify, verifyBaseClass } from '../Verify/index.js'\nimport { attachViewActions, getViewActions } from './attachViewActions.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { getDocumentViewInfo } from './getDocumentViewInfo.js'\nimport { isPathMatchingRoute } from './isPathMatchingRoute.js'\n\nconst baseClasses = {\n account: 'account',\n forgot: forgotPasswordBaseClass,\n login: loginBaseClass,\n reset: resetPasswordBaseClass,\n verify: verifyBaseClass,\n}\n\ntype OneSegmentViews = {\n [K in Exclude<keyof SanitizedConfig['admin']['routes'], 'reset'>]: React.FC<AdminViewServerProps>\n}\n\nexport type ViewFromConfig = {\n Component?: React.FC<AdminViewServerProps>\n payloadComponent?: PayloadComponent<AdminViewServerProps>\n}\n\nconst oneSegmentViews: OneSegmentViews = {\n account: Account,\n createFirstUser: CreateFirstUserView,\n forgot: ForgotPasswordView,\n inactivity: LogoutInactivity,\n login: LoginView,\n logout: LogoutView,\n unauthorized: UnauthorizedView,\n}\n\ntype GetViewFromConfigArgs = {\n adminRoute: string\n config: SanitizedConfig\n currentRoute: string\n importMap: ImportMap\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}\n\ntype GetViewFromConfigResult = {\n DefaultView: ViewFromConfig\n documentSubViewType?: DocumentSubViewTypes\n initPageOptions: Parameters<typeof initPage>[0]\n serverProps: ServerPropsFromView\n templateClassName: string\n templateType: 'default' | 'minimal'\n viewType?: ViewTypes\n}\n\nexport const getViewFromConfig = ({\n adminRoute,\n config,\n currentRoute,\n importMap,\n searchParams,\n segments,\n}: GetViewFromConfigArgs): GetViewFromConfigResult => {\n let ViewToRender: ViewFromConfig = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n let documentSubViewType: DocumentSubViewTypes\n let viewType: ViewTypes\n\n const initPageOptions: Parameters<typeof initPage>[0] = {\n config,\n importMap,\n route: currentRoute,\n searchParams,\n }\n\n const [segmentOne, segmentTwo, segmentThree, segmentFour, segmentFive] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n let matchedCollection: SanitizedConfig['collections'][number] = undefined\n let matchedGlobal: SanitizedConfig['globals'][number] = undefined\n\n const serverProps: ServerPropsFromView = {\n viewActions: config?.admin?.components?.actions || [],\n }\n\n if (isCollection) {\n matchedCollection = config.collections.find(({ slug }) => slug === segmentTwo)\n serverProps.collectionConfig = matchedCollection\n }\n\n if (isGlobal) {\n matchedGlobal = config.globals.find(({ slug }) => slug === segmentTwo)\n serverProps.globalConfig = matchedGlobal\n }\n\n switch (segments.length) {\n case 0: {\n if (currentRoute === adminRoute) {\n ViewToRender = {\n Component: Dashboard,\n }\n templateClassName = 'dashboard'\n templateType = 'default'\n viewType = 'dashboard'\n }\n break\n }\n case 1: {\n // users can override the default routes via `admin.routes` config\n // i.e.{ admin: { routes: { logout: '/sign-out', inactivity: '/idle' }}}\n let viewKey: keyof typeof oneSegmentViews\n\n if (config.admin.routes) {\n const matchedRoute = Object.entries(config.admin.routes).find(([, route]) => {\n return isPathMatchingRoute({\n currentRoute,\n exact: true,\n path: formatAdminURL({ adminRoute, path: route }),\n })\n })\n\n if (matchedRoute) {\n viewKey = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n if (oneSegmentViews[viewKey]) {\n // --> /account\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = {\n Component: oneSegmentViews[viewKey],\n }\n\n templateClassName = baseClasses[viewKey]\n templateType = 'minimal'\n\n if (viewKey === 'account') {\n templateType = 'default'\n viewType = 'account'\n }\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n ViewToRender = {\n Component: ResetPassword,\n }\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n viewType = 'reset'\n }\n\n if (isCollection && matchedCollection) {\n // --> /collections/:collectionSlug\n\n ViewToRender = {\n Component: ListView,\n }\n\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n viewType = 'list'\n serverProps.viewActions = serverProps.viewActions.concat(\n matchedCollection.admin.components?.views?.list?.actions,\n )\n } else if (isGlobal && matchedGlobal) {\n // --> /globals/:globalSlug\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = 'global-edit'\n templateType = 'default'\n viewType = 'document'\n\n // add default view actions\n serverProps.viewActions = serverProps.viewActions.concat(\n getViewActions({\n editConfig: matchedGlobal.admin?.components?.views?.edit,\n viewKey: 'default',\n }),\n )\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n ViewToRender = {\n Component: Verify,\n }\n\n templateClassName = 'verify'\n templateType = 'minimal'\n viewType = 'verify'\n } else if (isCollection && matchedCollection) {\n // Custom Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/:id/preview\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:versionID\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `collection-default-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentFour, segmentFive])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n attachViewActions({\n collectionOrGlobal: matchedCollection,\n serverProps,\n viewKeyArg: documentSubViewType,\n })\n } else if (isGlobal && matchedGlobal) {\n // Custom Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/preview\n // --> /globals/:globalSlug/versions/:versionID\n // --> /globals/:globalSlug/api\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `global-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentThree, segmentFour])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n attachViewActions({\n collectionOrGlobal: matchedGlobal,\n serverProps,\n viewKeyArg: documentSubViewType,\n })\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })?.view\n }\n\n serverProps.viewActions.reverse()\n\n return {\n DefaultView: ViewToRender,\n documentSubViewType,\n initPageOptions,\n serverProps,\n templateClassName,\n templateType,\n viewType,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"getViewFromConfig.js","names":["formatAdminURL","Account","CreateFirstUserView","Dashboard","Document","DocumentView","forgotPasswordBaseClass","ForgotPasswordView","ListView","loginBaseClass","LoginView","LogoutInactivity","LogoutView","ResetPassword","resetPasswordBaseClass","UnauthorizedView","Verify","verifyBaseClass","attachViewActions","getViewActions","getCustomViewByRoute","getDocumentViewInfo","isPathMatchingRoute","baseClasses","account","forgot","login","reset","verify","oneSegmentViews","createFirstUser","inactivity","logout","unauthorized","getViewFromConfig","adminRoute","config","currentRoute","importMap","searchParams","segments","ViewToRender","templateClassName","templateType","documentSubViewType","viewType","initPageOptions","route","segmentOne","segmentTwo","segmentThree","segmentFour","segmentFive","isGlobal","isCollection","matchedCollection","undefined","matchedGlobal","serverProps","viewActions","admin","components","actions","collections","find","slug","collectionConfig","globals","globalConfig","length","Component","viewKey","routes","matchedRoute","Object","entries","exact","path","concat","views","list","editConfig","edit","viewInfo","collectionOrGlobal","viewKeyArg","view","reverse","DefaultView"],"sources":["../../../src/views/Root/getViewFromConfig.ts"],"sourcesContent":["import type {\n AdminViewServerProps,\n DocumentSubViewTypes,\n ImportMap,\n PayloadComponent,\n SanitizedConfig,\n ServerPropsFromView,\n ViewTypes,\n} from 'payload'\nimport type React from 'react'\n\nimport { formatAdminURL } from 'payload/shared'\n\nimport type { initPage } from '../../utilities/initPage/index.js'\n\nimport { Account } from '../Account/index.js'\nimport { CreateFirstUserView } from '../CreateFirstUser/index.js'\nimport { Dashboard } from '../Dashboard/index.js'\nimport { Document as DocumentView } from '../Document/index.js'\nimport { forgotPasswordBaseClass, ForgotPasswordView } from '../ForgotPassword/index.js'\nimport { ListView } from '../List/index.js'\nimport { loginBaseClass, LoginView } from '../Login/index.js'\nimport { LogoutInactivity, LogoutView } from '../Logout/index.js'\nimport { ResetPassword, resetPasswordBaseClass } from '../ResetPassword/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { Verify, verifyBaseClass } from '../Verify/index.js'\nimport { attachViewActions, getViewActions } from './attachViewActions.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\nimport { getDocumentViewInfo } from './getDocumentViewInfo.js'\nimport { isPathMatchingRoute } from './isPathMatchingRoute.js'\n\nconst baseClasses = {\n account: 'account',\n forgot: forgotPasswordBaseClass,\n login: loginBaseClass,\n reset: resetPasswordBaseClass,\n verify: verifyBaseClass,\n}\n\ntype OneSegmentViews = {\n [K in Exclude<keyof SanitizedConfig['admin']['routes'], 'reset'>]: React.FC<AdminViewServerProps>\n}\n\nexport type ViewFromConfig = {\n Component?: React.FC<AdminViewServerProps>\n payloadComponent?: PayloadComponent<AdminViewServerProps>\n}\n\nconst oneSegmentViews: OneSegmentViews = {\n account: Account,\n createFirstUser: CreateFirstUserView,\n forgot: ForgotPasswordView,\n inactivity: LogoutInactivity,\n login: LoginView,\n logout: LogoutView,\n unauthorized: UnauthorizedView,\n}\n\ntype GetViewFromConfigArgs = {\n adminRoute: string\n config: SanitizedConfig\n currentRoute: string\n importMap: ImportMap\n searchParams: {\n [key: string]: string | string[]\n }\n segments: string[]\n}\n\ntype GetViewFromConfigResult = {\n DefaultView: ViewFromConfig\n documentSubViewType?: DocumentSubViewTypes\n initPageOptions: Parameters<typeof initPage>[0]\n serverProps: ServerPropsFromView\n templateClassName: string\n templateType: 'default' | 'minimal'\n viewType?: ViewTypes\n}\n\nexport const getViewFromConfig = ({\n adminRoute,\n config,\n currentRoute,\n importMap,\n searchParams,\n segments,\n}: GetViewFromConfigArgs): GetViewFromConfigResult => {\n let ViewToRender: ViewFromConfig = null\n let templateClassName: string\n let templateType: 'default' | 'minimal' | undefined\n let documentSubViewType: DocumentSubViewTypes\n let viewType: ViewTypes\n\n const initPageOptions: Parameters<typeof initPage>[0] = {\n config,\n importMap,\n route: currentRoute,\n searchParams,\n }\n\n const [segmentOne, segmentTwo, segmentThree, segmentFour, segmentFive] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n let matchedCollection: SanitizedConfig['collections'][number] = undefined\n let matchedGlobal: SanitizedConfig['globals'][number] = undefined\n\n const serverProps: ServerPropsFromView = {\n viewActions: config?.admin?.components?.actions || [],\n }\n\n if (isCollection) {\n matchedCollection = config.collections.find(({ slug }) => slug === segmentTwo)\n serverProps.collectionConfig = matchedCollection\n }\n\n if (isGlobal) {\n matchedGlobal = config.globals.find(({ slug }) => slug === segmentTwo)\n serverProps.globalConfig = matchedGlobal\n }\n\n switch (segments.length) {\n case 0: {\n if (currentRoute === adminRoute) {\n ViewToRender = {\n Component: Dashboard,\n }\n templateClassName = 'dashboard'\n templateType = 'default'\n viewType = 'dashboard'\n }\n break\n }\n case 1: {\n // users can override the default routes via `admin.routes` config\n // i.e.{ admin: { routes: { logout: '/sign-out', inactivity: '/idle' }}}\n let viewKey: keyof typeof oneSegmentViews\n\n if (config.admin.routes) {\n const matchedRoute = Object.entries(config.admin.routes).find(([, route]) => {\n return isPathMatchingRoute({\n currentRoute,\n exact: true,\n path: formatAdminURL({ adminRoute, path: route }),\n })\n })\n\n if (matchedRoute) {\n viewKey = matchedRoute[0] as keyof typeof oneSegmentViews\n }\n }\n\n if (oneSegmentViews[viewKey]) {\n // --> /account\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n\n ViewToRender = {\n Component: oneSegmentViews[viewKey],\n }\n\n templateClassName = baseClasses[viewKey]\n templateType = 'minimal'\n\n if (viewKey === 'account') {\n templateType = 'default'\n viewType = 'account'\n }\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n ViewToRender = {\n Component: ResetPassword,\n }\n templateClassName = baseClasses[segmentTwo]\n templateType = 'minimal'\n viewType = 'reset'\n }\n\n if (isCollection && matchedCollection) {\n // --> /collections/:collectionSlug\n\n ViewToRender = {\n Component: ListView,\n }\n\n templateClassName = `${segmentTwo}-list`\n templateType = 'default'\n viewType = 'list'\n serverProps.viewActions = serverProps.viewActions.concat(\n matchedCollection.admin.components?.views?.list?.actions,\n )\n } else if (isGlobal && matchedGlobal) {\n // --> /globals/:globalSlug\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = 'global-edit'\n templateType = 'default'\n viewType = 'document'\n\n // add default view actions\n serverProps.viewActions = serverProps.viewActions.concat(\n getViewActions({\n editConfig: matchedGlobal.admin?.components?.views?.edit,\n viewKey: 'default',\n }),\n )\n }\n break\n }\n default:\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n ViewToRender = {\n Component: Verify,\n }\n\n templateClassName = 'verify'\n templateType = 'minimal'\n viewType = 'verify'\n } else if (isCollection && matchedCollection) {\n // Custom Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/:id/preview\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:versionID\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `collection-default-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentFour, segmentFive])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n attachViewActions({\n collectionOrGlobal: matchedCollection,\n serverProps,\n viewKeyArg: documentSubViewType,\n })\n } else if (isGlobal && matchedGlobal) {\n // Custom Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/preview\n // --> /globals/:globalSlug/versions/:versionID\n // --> /globals/:globalSlug/api\n\n ViewToRender = {\n Component: DocumentView,\n }\n\n templateClassName = `global-edit`\n templateType = 'default'\n\n const viewInfo = getDocumentViewInfo([segmentThree, segmentFour])\n viewType = viewInfo.viewType\n documentSubViewType = viewInfo.documentSubViewType\n\n attachViewActions({\n collectionOrGlobal: matchedGlobal,\n serverProps,\n viewKeyArg: documentSubViewType,\n })\n }\n break\n }\n\n if (!ViewToRender) {\n ViewToRender = getCustomViewByRoute({ config, currentRoute })?.view\n }\n\n serverProps.viewActions.reverse()\n\n return {\n DefaultView: ViewToRender,\n documentSubViewType,\n initPageOptions,\n serverProps,\n templateClassName,\n templateType,\n viewType,\n }\n}\n"],"mappings":"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","ignoreList":[]}