@payloadcms/next 3.0.0-beta.122 → 3.0.0-beta.124

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 (36) hide show
  1. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
  2. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -0
  3. package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
  4. package/dist/elements/DocumentLocked/index.d.ts +1 -1
  5. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  6. package/dist/elements/DocumentLocked/index.js +24 -14
  7. package/dist/elements/DocumentLocked/index.js.map +1 -1
  8. package/dist/elements/DocumentLocked/index.scss +1 -0
  9. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  10. package/dist/elements/Nav/index.client.js +1 -0
  11. package/dist/elements/Nav/index.client.js.map +1 -1
  12. package/dist/prod/styles.css +1 -1
  13. package/dist/views/Dashboard/Default/index.d.ts +1 -1
  14. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  15. package/dist/views/Dashboard/Default/index.js.map +1 -1
  16. package/dist/views/Dashboard/index.d.ts.map +1 -1
  17. package/dist/views/Dashboard/index.js +31 -28
  18. package/dist/views/Dashboard/index.js.map +1 -1
  19. package/dist/views/Edit/Default/index.d.ts.map +1 -1
  20. package/dist/views/Edit/Default/index.js +3 -3
  21. package/dist/views/Edit/Default/index.js.map +1 -1
  22. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  23. package/dist/views/ForgotPassword/index.js +2 -0
  24. package/dist/views/ForgotPassword/index.js.map +1 -1
  25. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  26. package/dist/views/LivePreview/index.client.js +3 -3
  27. package/dist/views/LivePreview/index.client.js.map +1 -1
  28. package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
  29. package/dist/views/Login/LoginForm/index.js +1 -0
  30. package/dist/views/Login/LoginForm/index.js.map +1 -1
  31. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  32. package/dist/views/ResetPassword/index.js +2 -0
  33. package/dist/views/ResetPassword/index.js.map +1 -1
  34. package/dist/views/Versions/cells/CreatedAt/index.js +1 -0
  35. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  36. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.js","names":["c","_c","DocumentControls","DocumentFields","Form","OperationProvider","SetViewActions","useAuth","useConfig","useDocumentEvents","useDocumentInfo","useTranslation","getFormState","handleBackToDashboard","handleGoBack","handleTakeOver","useRouter","React","Fragment","useCallback","useEffect","useRef","useState","DocumentLocked","DocumentTakeOver","LeaveWithoutSaving","SetDocumentStepNav","SetDocumentTitle","useLivePreviewContext","LivePreviewProvider","LivePreview","usePopupWindow","baseClass","PreviewView","apiRoute","collectionConfig","config","fields","globalConfig","schemaPath","serverURL","id","action","AfterDocument","AfterFields","apiURL","BeforeDocument","BeforeFields","collectionSlug","currentEditor","disableActions","disableLeaveWithoutSaving","docPermissions","documentIsLocked","getDocPreferences","globalSlug","hasPublishPermission","hasSavePermission","initialData","initialState","isEditing","isInitializing","lastUpdateTime","onSave","onSaveFromProps","setCurrentEditor","setDocumentIsLocked","unlockDocument","updateDocumentEditor","operation","admin","user","userSlug","routes","adminRoute","router","t","previewWindowType","refreshCookieAsync","reportUpdate","docConfig","lockDocumentsProp","lockDocuments","undefined","isLockingEnabled","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","isReadOnlyForIncomingUser","setIsReadOnlyForIncomingUser","showTakeOverModal","setShowTakeOverModal","editSessionStartTime","setEditSessionStartTime","Date","now","lockExpiryTime","isLockExpired","documentLockStateRef","hasShownLockedModal","isLocked","json","entitySlug","updatedAt","result","toISOString","onChange","formState","prevFormState","currentTime","timeSinceLastUpdate","updateLastEdited","docPreferences","lockedState","state","body","returnLockStatus","previousOwnerId","current","currentPath","window","location","pathname","documentId","stayWithinDocumentPaths","isStayingWithinDocument","some","path","includes","shouldShowDocumentLockedModal","_jsx","_jsxs","className","disabled","method","onSuccess","isActive","onReadOnly","onTakeOver","versions","drafts","autosave","globalLabel","label","pluralLabel","labels","plural","useAsTitle","view","fallback","toString","data","permissions","readOnlyForIncomingUser","slug","filter","Boolean","join","forceSidebarWrap","readOnly","LivePreviewClient","props","$","breakpoints","url","t0","getEntityConfig","t1","api","t2","eventType","isPopupOpen","openPopupWindow","popupRef","t3","children","actions","components","views","edit","livePreview","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 LivePreviewConfig,\n} from 'payload'\n\nimport {\n DocumentControls,\n DocumentFields,\n Form,\n OperationProvider,\n SetViewActions,\n useAuth,\n useConfig,\n useDocumentEvents,\n useDocumentInfo,\n useTranslation,\n} from '@payloadcms/ui'\nimport {\n getFormState,\n handleBackToDashboard,\n handleGoBack,\n handleTakeOver,\n} from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport { DocumentLocked } from '../../elements/DocumentLocked/index.js'\nimport { DocumentTakeOver } from '../../elements/DocumentTakeOver/index.js'\nimport { LeaveWithoutSaving } from '../../elements/LeaveWithoutSaving/index.js'\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { SetDocumentTitle } from '../Edit/Default/SetDocumentTitle/index.js'\nimport { useLivePreviewContext } from './Context/context.js'\nimport { LivePreviewProvider } from './Context/index.js'\nimport './index.scss'\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}\n\nconst PreviewView: React.FC<Props> = ({\n apiRoute,\n collectionConfig,\n config,\n fields,\n globalConfig,\n schemaPath,\n serverURL,\n}) => {\n const {\n id,\n action,\n AfterDocument,\n AfterFields,\n apiURL,\n BeforeDocument,\n BeforeFields,\n collectionSlug,\n currentEditor,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n documentIsLocked,\n getDocPreferences,\n globalSlug,\n hasPublishPermission,\n hasSavePermission,\n initialData,\n initialState,\n isEditing,\n isInitializing,\n lastUpdateTime,\n onSave: onSaveFromProps,\n setCurrentEditor,\n setDocumentIsLocked,\n unlockDocument,\n updateDocumentEditor,\n } = useDocumentInfo()\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 { t } = useTranslation()\n const { previewWindowType } = useLivePreviewContext()\n const { refreshCookieAsync, user } = useAuth()\n const { reportUpdate } = useDocumentEvents()\n\n const docConfig = collectionConfig || globalConfig\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 [isReadOnlyForIncomingUser, setIsReadOnlyForIncomingUser] = useState(false)\n const [showTakeOverModal, setShowTakeOverModal] = useState(false)\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\n } | null>({\n hasShownLockedModal: false,\n isLocked: false,\n user: null,\n })\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n id,\n entitySlug: collectionSlug,\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 // Unlock the document after save\n if ((id || globalSlug) && isLockingEnabled) {\n setDocumentIsLocked(false)\n }\n\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps({\n ...json,\n operation: id ? 'update' : 'create',\n })\n }\n },\n [\n collectionSlug,\n globalSlug,\n id,\n isLockingEnabled,\n onSaveFromProps,\n refreshCookieAsync,\n reportUpdate,\n setDocumentIsLocked,\n user,\n userSlug,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState }) => {\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 apiRoute,\n body: {\n id,\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n returnLockStatus: isLockingEnabled ? true : false,\n schemaPath,\n updateLastEdited,\n },\n serverURL,\n })\n\n setDocumentIsLocked(true)\n\n if (isLockingEnabled) {\n const previousOwnerId = documentLockStateRef.current?.user?.id\n\n if (lockedState) {\n if (!documentLockStateRef.current || lockedState.user.id !== previousOwnerId) {\n if (previousOwnerId === user.id && lockedState.user.id !== 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,\n }\n setCurrentEditor(lockedState.user)\n }\n }\n }\n\n return state\n },\n [\n collectionSlug,\n editSessionStartTime,\n globalSlug,\n serverURL,\n apiRoute,\n id,\n isLockingEnabled,\n operation,\n schemaPath,\n getDocPreferences,\n setCurrentEditor,\n setDocumentIsLocked,\n user,\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 (documentLockStateRef.current?.user?.id === user?.id) {\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 const shouldShowDocumentLockedModal =\n documentIsLocked &&\n currentEditor &&\n currentEditor.id !== 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 {((collectionConfig &&\n !(collectionConfig.versions?.drafts && collectionConfig.versions?.drafts?.autosave)) ||\n (globalConfig &&\n !(globalConfig.versions?.drafts && globalConfig.versions?.drafts?.autosave))) &&\n !disableLeaveWithoutSaving &&\n !isReadOnlyForIncomingUser && <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 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 {BeforeDocument}\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={BeforeFields}\n docPermissions={docPermissions}\n fields={fields}\n forceSidebarWrap\n readOnly={isReadOnlyForIncomingUser || !hasSavePermission}\n schemaPath={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 readonly breakpoints: LivePreviewConfig['breakpoints']\n readonly initialData: Data\n readonly url: string\n}> = (props) => {\n const { breakpoints, url } = 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 { isPopupOpen, openPopupWindow, popupRef } = usePopupWindow({\n eventType: 'payload-live-preview',\n url,\n })\n\n const collectionConfig = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n\n const globalConfig = getEntityConfig({ globalSlug }) as ClientGlobalConfig\n\n const schemaPath = collectionSlug || globalSlug\n\n return (\n <Fragment>\n <SetViewActions\n actions={\n (collectionConfig || globalConfig)?.admin?.components?.views?.edit?.livePreview?.actions\n }\n />\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 fields={(collectionConfig || globalConfig)?.fields}\n globalConfig={globalConfig}\n schemaPath={schemaPath}\n serverURL={serverURL}\n />\n </LivePreviewProvider>\n </Fragment>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAYA,SACEC,gBAAgB,EAChBC,cAAc,EACdC,IAAI,EACJC,iBAAiB,EACjBC,cAAc,EACdC,OAAO,EACPC,SAAS,EACTC,iBAAiB,EACjBC,eAAe,EACfC,cAAc,QACT;AACP,SACEC,YAAY,EACZC,qBAAqB,EACrBC,YAAY,EACZC,cAAc,QACT;AACP,SAASC,SAAS,QAAQ;AAC1B,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AAE1E,SAASC,cAAc,QAAQ;AAC/B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,qBAAqB,QAAQ;AACtC,SAASC,mBAAmB,QAAQ;AAEpC,SAASC,WAAW,QAAQ;AAC5B,SAASC,cAAc,QAAQ;AAE/B,MAAMC,SAAA,GAAY;AAYlB,MAAMC,WAAA,GAA+BA,CAAC;EACpCC,QAAQ;EACRC,gBAAgB;EAChBC,MAAM;EACNC,MAAM;EACNC,YAAY;EACZC,UAAU;EACVC;AAAS,CACV;EACC,MAAM;IACJC,EAAE;IACFC,MAAM;IACNC,aAAa;IACbC,WAAW;IACXC,MAAM;IACNC,cAAc;IACdC,YAAY;IACZC,cAAc;IACdC,aAAa;IACbC,cAAc;IACdC,yBAAyB;IACzBC,cAAc;IACdC,gBAAgB;IAChBC,iBAAiB;IACjBC,UAAU;IACVC,oBAAoB;IACpBC,iBAAiB;IACjBC,WAAW;IACXC,YAAY;IACZC,SAAS;IACTC,cAAc;IACdC,cAAc;IACdC,MAAA,EAAQC,eAAe;IACvBC,gBAAgB;IAChBC,mBAAmB;IACnBC,cAAc;IACdC;EAAoB,CACrB,GAAG1D,eAAA;EAEJ,MAAM2D,SAAA,GAAY5B,EAAA,GAAK,WAAW;EAElC,MAAM;IACJL,MAAA,EAAQ;MACNkC,KAAA,EAAO;QAAEC,IAAA,EAAMC;MAAQ,CAAE;MACzBC,MAAA,EAAQ;QAAEH,KAAA,EAAOI;MAAU;IAAE;EAC9B,CACF,GAAGlE,SAAA;EACJ,MAAMmE,MAAA,GAAS3D,SAAA;EACf,MAAM;IAAE4D;EAAC,CAAE,GAAGjE,cAAA;EACd,MAAM;IAAEkE;EAAiB,CAAE,GAAGjD,qBAAA;EAC9B,MAAM;IAAEkD,kBAAkB;IAAEP;EAAI,CAAE,GAAGhE,OAAA;EACrC,MAAM;IAAEwE;EAAY,CAAE,GAAGtE,iBAAA;EAEzB,MAAMuE,SAAA,GAAY7C,gBAAA,IAAoBG,YAAA;EAEtC,MAAM2C,iBAAA,GAAoBD,SAAA,EAAWE,aAAA,KAAkBC,SAAA,GAAYH,SAAA,EAAWE,aAAA,GAAgB;EAC9F,MAAME,gBAAA,GAAmBH,iBAAA,KAAsB;EAE/C,MAAMI,mBAAA,GAAsB,IAAI;EAAA;EAChC,MAAMC,YAAA,GACJ,OAAOL,iBAAA,KAAsB,WAAWA,iBAAA,CAAkBM,QAAQ,GAAGF,mBAAA;EACvE,MAAMG,0BAAA,GAA6BF,YAAA,GAAe;EAElD,MAAM,CAACG,yBAAA,EAA2BC,4BAAA,CAA6B,GAAGpE,QAAA,CAAS;EAC3E,MAAM,CAACqE,iBAAA,EAAmBC,oBAAA,CAAqB,GAAGtE,QAAA,CAAS;EAE3D,MAAM,CAACuE,oBAAA,EAAsBC,uBAAA,CAAwB,GAAGxE,QAAA,CAASyE,IAAA,CAAKC,GAAG;EAEzE,MAAMC,cAAA,GAAiBnC,cAAA,GAAiB0B,0BAAA;EAExC,MAAMU,aAAA,GAAgBH,IAAA,CAAKC,GAAG,KAAKC,cAAA;EAEnC,MAAME,oBAAA,GAAuB9E,MAAA,CAInB;IACR+E,mBAAA,EAAqB;IACrBC,QAAA,EAAU;IACV9B,IAAA,EAAM;EACR;EAEA,MAAMR,MAAA,GAAS5C,WAAA,CACZmF,IAAA;IACCvB,YAAA,CAAa;MACXtC,EAAA;MACA8D,UAAA,EAAYvD,cAAA;MACZwD,SAAA,EAAWF,IAAA,EAAMG,MAAA,EAAQD,SAAA,IAAa,IAAIT,IAAA,GAAOW,WAAW;IAC9D;IAEA;IACA;IACA,IAAInC,IAAA,IAAQvB,cAAA,KAAmBwB,QAAA,IAAY/B,EAAA,KAAO8B,IAAA,CAAK9B,EAAE,EAAE;MACzD,KAAKqC,kBAAA;IACP;IAEA;IACA,IAAI,CAACrC,EAAA,IAAMc,UAAS,KAAM6B,gBAAA,EAAkB;MAC1ClB,mBAAA,CAAoB;IACtB;IAEA,IAAI,OAAOF,eAAA,KAAoB,YAAY;MACzC,KAAKA,eAAA,CAAgB;QACnB,GAAGsC,IAAI;QACPjC,SAAA,EAAW5B,EAAA,GAAK,WAAW;MAC7B;IACF;EACF,GACA,CACEO,cAAA,EACAO,UAAA,EACAd,EAAA,EACA2C,gBAAA,EACApB,eAAA,EACAc,kBAAA,EACAC,YAAA,EACAb,mBAAA,EACAK,IAAA,EACAC,QAAA,CACD;EAGH,MAAMmC,QAAA,GAAqCxF,WAAA,CACzC,OAAO;IAAEyF,SAAA,EAAWC;EAAa,CAAE;IACjC,MAAMC,WAAA,GAAcf,IAAA,CAAKC,GAAG;IAC5B,MAAMe,mBAAA,GAAsBD,WAAA,GAAcjB,oBAAA;IAE1C,MAAMmB,gBAAA,GAAmB5B,gBAAA,IAAoB2B,mBAAA,IAAuB,MAAM;IAAA;IAE1E,IAAIC,gBAAA,EAAkB;MACpBlB,uBAAA,CAAwBgB,WAAA;IAC1B;IAEA,MAAMG,cAAA,GAAiB,MAAM3D,iBAAA;IAE7B,MAAM;MAAE4D,WAAW;MAAEC;IAAK,CAAE,GAAG,MAAMvG,YAAA,CAAa;MAChDsB,QAAA;MACAkF,IAAA,EAAM;QACJ3E,EAAA;QACAO,cAAA;QACAiE,cAAA;QACAL,SAAA,EAAWC,aAAA;QACXtD,UAAA;QACAc,SAAA;QACAgD,gBAAA,EAAkBjC,gBAAA,GAAmB,OAAO;QAC5C7C,UAAA;QACAyE;MACF;MACAxE;IACF;IAEA0B,mBAAA,CAAoB;IAEpB,IAAIkB,gBAAA,EAAkB;MACpB,MAAMkC,eAAA,GAAkBnB,oBAAA,CAAqBoB,OAAO,EAAEhD,IAAA,EAAM9B,EAAA;MAE5D,IAAIyE,WAAA,EAAa;QACf,IAAI,CAACf,oBAAA,CAAqBoB,OAAO,IAAIL,WAAA,CAAY3C,IAAI,CAAC9B,EAAE,KAAK6E,eAAA,EAAiB;UAC5E,IAAIA,eAAA,KAAoB/C,IAAA,CAAK9B,EAAE,IAAIyE,WAAA,CAAY3C,IAAI,CAAC9B,EAAE,KAAK8B,IAAA,CAAK9B,EAAE,EAAE;YAClEmD,oBAAA,CAAqB;YACrBO,oBAAA,CAAqBoB,OAAO,CAACnB,mBAAmB,GAAG;UACrD;UAEAD,oBAAA,CAAqBoB,OAAO,GAAGpB,oBAAA,CAAqBoB,OAAO,GAAG;YAC5DnB,mBAAA,EAAqBD,oBAAA,CAAqBoB,OAAO,EAAEnB,mBAAA,IAAuB;YAC1EC,QAAA,EAAU;YACV9B,IAAA,EAAM2C,WAAA,CAAY3C;UACpB;UACAN,gBAAA,CAAiBiD,WAAA,CAAY3C,IAAI;QACnC;MACF;IACF;IAEA,OAAO4C,KAAA;EACT,GACA,CACEnE,cAAA,EACA6C,oBAAA,EACAtC,UAAA,EACAf,SAAA,EACAN,QAAA,EACAO,EAAA,EACA2C,gBAAA,EACAf,SAAA,EACA9B,UAAA,EACAe,iBAAA,EACAW,gBAAA,EACAC,mBAAA,EACAK,IAAA,CACD;EAGH;EACAnD,SAAA,CAAU;IACR,OAAO;MACL,IAAI,CAACgE,gBAAA,EAAkB;QACrB;MACF;MAEA,MAAMoC,WAAA,GAAcC,MAAA,CAAOC,QAAQ,CAACC,QAAQ;MAE5C,MAAMC,UAAA,GAAanF,EAAA,IAAMc,UAAA;MAEzB;MACA,MAAMsE,uBAAA,GAA0B,CAAC,WAAW,OAAO,WAAW;MAE9D,MAAMC,uBAAA,GAA0BD,uBAAA,CAAwBE,IAAI,CAAEC,IAAA,IAC5DR,WAAA,CAAYS,QAAQ,CAACD,IAAA;MAGvB;MACA,IAAIJ,UAAA,IAAcvE,gBAAA,IAAoB,CAACyE,uBAAA,EAAyB;QAC9D;QACA,IAAI3B,oBAAA,CAAqBoB,OAAO,EAAEhD,IAAA,EAAM9B,EAAA,KAAO8B,IAAA,EAAM9B,EAAA,EAAI;UACvD,KAAK0B,cAAA,CAAe1B,EAAA,EAAIO,cAAA,IAAkBO,UAAA;UAC1CW,mBAAA,CAAoB;UACpBD,gBAAA,CAAiB;QACnB;MACF;MAEA2B,oBAAA,CAAqB;IACvB;EACF,GAAG,CACD5C,cAAA,EACAO,UAAA,EACAd,EAAA,EACA0B,cAAA,EACAI,IAAA,EACAN,gBAAA,EACAmB,gBAAA,EACA/B,gBAAA,EACAa,mBAAA,CACD;EAED,MAAMgE,6BAAA,GACJ7E,gBAAA,IACAJ,aAAA,IACAA,aAAA,CAAcR,EAAE,KAAK8B,IAAA,CAAK9B,EAAE,IAC5B,CAACgD,yBAAA,IACD,CAACE,iBAAA;EACD;EACA,CAACQ,oBAAA,CAAqBoB,OAAO,EAAEnB,mBAAA,IAC/B,CAACF,aAAA;EAEH,oBACEiC,IAAA,CAAC9H,iBAAA;IAAkBgE,SAAA,EAAWA,SAAA;cAC5B,aAAA+D,KAAA,CAAChI,IAAA;MACCsC,MAAA,EAAQA,MAAA;MACR2F,SAAA,EAAW,GAAGrG,SAAA,QAAiB;MAC/BsG,QAAA,EAAU7C,yBAAA,IAA6B,CAAChC,iBAAA;MACxCE,YAAA,EAAcA,YAAA;MACdE,cAAA,EAAgBA,cAAA;MAChB0E,MAAA,EAAQ9F,EAAA,GAAK,UAAU;MACvBkE,QAAA,EAAU,CAACA,QAAA,CAAS;MACpB6B,SAAA,EAAWzE,MAAA;iBAEVqB,gBAAA,IAAoB8C,6BAAA,IAAiC,CAACzC,yBAAA,iBACrD0C,IAAA,CAAC5G,cAAA;QACCT,YAAA,EAAcA,CAAA,KAAMA,YAAA,CAAa;UAAE4D,UAAA;UAAY1B,cAAA;UAAgB2B;QAAO;QACtE8D,QAAA,EAAUP,6BAAA;QACVQ,UAAA,EAAYA,CAAA;UACVhD,4BAAA,CAA6B;UAC7BE,oBAAA,CAAqB;QACvB;QACA+C,UAAA,EAAYA,CAAA,KACV5H,cAAA,CACE0B,EAAA,EACAO,cAAA,EACAO,UAAA,EACAgB,IAAA,EACA,OACAH,oBAAA,EACAH,gBAAA,EACAkC,oBAAA,EACAf,gBAAA;QAGJoB,SAAA,EAAW1C,cAAA;QACXS,IAAA,EAAMtB;UAGTmC,gBAAA,IAAoBO,iBAAA,iBACnBwC,IAAA,CAAC3G,gBAAA;QACCX,qBAAA,EAAuBA,CAAA,KAAMA,qBAAA,CAAsB;UAAE6D,UAAA;UAAYC;QAAO;QACxE8D,QAAA,EAAU9C,iBAAA;QACV+C,UAAA,EAAYA,CAAA;UACVhD,4BAAA,CAA6B;UAC7BE,oBAAA,CAAqB;QACvB;UAGF,CAAAzD,gBAAC,IACD,EAAEA,gBAAA,CAAiByG,QAAQ,EAAEC,MAAA,IAAU1G,gBAAA,CAAiByG,QAAQ,EAAEC,MAAA,EAAQC,QAAO,KAChFxG,YAAA,IACC,EAAEA,YAAA,CAAasG,QAAQ,EAAEC,MAAA,IAAUvG,YAAA,CAAasG,QAAQ,EAAEC,MAAA,EAAQC,QAAO,CAAE,KAC7E,CAAC3F,yBAAA,IACD,CAACsC,yBAAA,iBAA6B0C,IAAA,CAAC1G,kBAAA,O,aACjC0G,IAAA,CAACzG,kBAAA;QACCsB,cAAA,EAAgBA,cAAA;QAChB+F,WAAA,EAAazG,YAAA,EAAc0G,KAAA;QAC3BzF,UAAA,EAAYA,UAAA;QACZd,EAAA,EAAIA,EAAA;QACJwG,WAAA,EAAa9G,gBAAA,GAAmBA,gBAAA,EAAkB+G,MAAA,EAAQC,MAAA,GAAShE,SAAA;QACnEiE,UAAA,EAAYjH,gBAAA,GAAmBA,gBAAA,EAAkBmC,KAAA,EAAO8E,UAAA,GAAajE,SAAA;QACrEkE,IAAA,EAAMzE,CAAA,CAAE;uBAEVuD,IAAA,CAACxG,gBAAA;QACCQ,gBAAA,EAAkBA,gBAAA;QAClBC,MAAA,EAAQA,MAAA;QACRkH,QAAA,EAAU7G,EAAA,EAAI8G,QAAA,MAAc;QAC5BjH,YAAA,EAAcA;uBAEhB6F,IAAA,CAACjI,gBAAA;QACC2C,MAAA,EAAQA,MAAA;QACR2G,IAAA,EAAM9F,WAAA;QACNR,cAAA,EAAgBA,cAAA;QAChBM,oBAAA,EAAsBA,oBAAA;QACtBC,iBAAA,EAAmBA,iBAAA;QACnBhB,EAAA,EAAIA,EAAA;QACJmB,SAAA,EAAWA,SAAA;QACX+E,UAAA,EAAYA,CAAA,KACV5H,cAAA,CACE0B,EAAA,EACAO,cAAA,EACAO,UAAA,EACAgB,IAAA,EACA,MACAH,oBAAA,EACAH,gBAAA,EACAkC,oBAAA,EACAf,gBAAA,EACAM,4BAAA;QAGJ+D,WAAA,EAAarG,cAAA;QACbsG,uBAAA,EAAyBjE,yBAAA;QACzBkE,IAAA,EAAMxH,gBAAA,EAAkBwH,IAAA,IAAQrH,YAAA,EAAcqH,IAAA;QAC9CpF,IAAA,EAAMtB;uBAERmF,KAAA,CAAC;QACCC,SAAA,EAAW,CAACrG,SAAA,EAAW6C,iBAAA,KAAsB,WAAW,GAAG7C,SAAA,YAAqB,CAAC,CAC9E4H,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;gCAER1B,KAAA,CAAC;UACCC,SAAA,EAAW,CACT,GAAGrG,SAAA,QAAiB,EACpB6C,iBAAA,KAAsB,WAAW,GAAG7C,SAAA,oBAA6B,CAClE,CACE4H,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;qBAEPhH,cAAA,E,aACDqF,IAAA,CAAChI,cAAA;YACCyC,WAAA,EAAaA,WAAA;YACbG,YAAA,EAAcA,YAAA;YACdK,cAAA,EAAgBA,cAAA;YAChBf,MAAA,EAAQA,MAAA;YACR0H,gBAAgB;YAChBC,QAAA,EAAUvE,yBAAA,IAA6B,CAAChC,iBAAA;YACxClB,UAAA,EAAYS,cAAA,IAAkBO;cAE/BZ,aAAA;yBAEHwF,IAAA,CAACrG,WAAA;UAAYkB,cAAA,EAAgBA,cAAA;UAAgBO,UAAA,EAAYA;;;;;AAKnE;AAEA,OAAO,MAAM0G,iBAAA,GAIRC,KAAA;EAAA,MAAAC,CAAA,GAAAlK,EAAA;EACH;IAAAmK,WAAA;IAAAC;EAAA,IAA6BH,KAAA;EAC7B;IAAAlH,cAAA;IAAAO;EAAA,IAAuC7C,eAAA;EAEvC;IAAA0B,MAAA;IAAAA,MAAA,EAAAkI,EAAA;IAAAC;EAAA,IAOI/J,SAAA;EALM;IAAAiE,MAAA,EAAA+F,EAAA;IAAAhI;EAAA,IAAA8H,EAGP;EAFS;IAAAG,GAAA,EAAAvI;EAAA,IAAAsI,EAAiB;EAAA,IAAAE,EAAA;EAAA,IAAAP,CAAA,QAAAE,GAAA;IAMqCK,EAAA;MAAAC,SAAA,EACrD;MAAAN;IAAA;IAEbF,CAAA,MAAAE,GAAA;IAAAF,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAHA;IAAAS,WAAA;IAAAC,eAAA;IAAAC;EAAA,IAAmD/I,cAAA,CAAe2I,EAGlE;EAAA,IAAAK,EAAA;EAAA,IAAAZ,CAAA,QAAAnH,cAAA,IAAAmH,CAAA,QAAAI,eAAA,IAAAJ,CAAA,QAAA5G,UAAA,IAAA4G,CAAA,QAAAjI,QAAA,IAAAiI,CAAA,QAAA/H,MAAA,IAAA+H,CAAA,QAAA3H,SAAA,IAAA2H,CAAA,QAAAC,WAAA,IAAAD,CAAA,QAAAS,WAAA,IAAAT,CAAA,SAAAU,eAAA,IAAAV,CAAA,SAAAW,QAAA,IAAAX,CAAA,SAAAE,GAAA;IAEA,MAAAlI,gBAAA,GAAyBoI,eAAA;MAAAvH;IAAA,CAAiC;IAE1D,MAAAV,YAAA,GAAqBiI,eAAA;MAAAhH;IAAA,CAA6B;IAElD,MAAAhB,UAAA,GAAmBS,cAAA,IAAkBO,UAAA;IAGnCwH,EAAA,GAAA3C,KAAA,CAAAlH,QAAA;MAAA8J,QAAA,GACE7C,IAAA,CAAA7H,cAAA;QAAA2K,OAAA,GAEK9I,gBAAA,IAAoBG,YAAW,GAAAgC,KAAA,EAAA4G,UAAA,EAAAC,KAAA,EAAAC,IAAA,EAAAC,WAAA,EAAAJ;MAAA,C,GAGpC9C,IAAA,CAAAtG,mBAAA;QAAAuI,WAAA;QAAAkB,WAAA,EAEenJ,gBAAA,EAAAE,MAAA,IAA4BC,YAAA,EAAAD,MAAc;QAAAuI,WAAA;QAAAC,eAAA;QAAAC,QAAA;QAAAT,GAAA;QAAAW,QAAA,EAMvD7C,IAAA,CAAAlG,WAAA;UAAAC,QAAA;UAAAC,gBAAA;UAAAC,MAAA;UAAAC,MAAA,GAIWF,gBAAA,IAAoBG,YAAW,GAAAD,MAAA;UAAAC,YAAA;UAAAC,UAAA;UAAAC;QAAA,C;;;;;;;;;;;;;;;;;;SAlB9CuI,E;CA0BJ","ignoreList":[]}
1
+ {"version":3,"file":"index.client.js","names":["c","_c","DocumentControls","DocumentFields","Form","OperationProvider","SetViewActions","useAuth","useConfig","useDocumentEvents","useDocumentInfo","useTranslation","getFormState","handleBackToDashboard","handleGoBack","handleTakeOver","useRouter","React","Fragment","useCallback","useEffect","useRef","useState","DocumentLocked","DocumentTakeOver","LeaveWithoutSaving","SetDocumentStepNav","SetDocumentTitle","useLivePreviewContext","LivePreviewProvider","LivePreview","usePopupWindow","baseClass","PreviewView","apiRoute","collectionConfig","config","fields","globalConfig","schemaPath","serverURL","id","action","AfterDocument","AfterFields","apiURL","BeforeDocument","BeforeFields","collectionSlug","currentEditor","disableActions","disableLeaveWithoutSaving","docPermissions","documentIsLocked","getDocPreferences","globalSlug","hasPublishPermission","hasSavePermission","initialData","initialState","isEditing","isInitializing","lastUpdateTime","onSave","onSaveFromProps","setCurrentEditor","setDocumentIsLocked","unlockDocument","updateDocumentEditor","operation","admin","user","userSlug","routes","adminRoute","router","t","previewWindowType","refreshCookieAsync","reportUpdate","docConfig","lockDocumentsProp","lockDocuments","undefined","isLockingEnabled","lockDurationDefault","lockDuration","duration","lockDurationInMilliseconds","isReadOnlyForIncomingUser","setIsReadOnlyForIncomingUser","showTakeOverModal","setShowTakeOverModal","editSessionStartTime","setEditSessionStartTime","Date","now","lockExpiryTime","isLockExpired","documentLockStateRef","hasShownLockedModal","isLocked","json","entitySlug","updatedAt","result","toISOString","onChange","formState","prevFormState","currentTime","timeSinceLastUpdate","updateLastEdited","docPreferences","lockedState","state","body","returnLockStatus","previousOwnerId","current","currentPath","window","location","pathname","documentId","stayWithinDocumentPaths","isStayingWithinDocument","some","path","includes","shouldShowDocumentLockedModal","_jsx","_jsxs","className","disabled","method","onSuccess","isActive","onReadOnly","onTakeOver","versions","drafts","autosave","globalLabel","label","pluralLabel","labels","plural","useAsTitle","view","fallback","toString","data","permissions","readOnlyForIncomingUser","slug","filter","Boolean","join","forceSidebarWrap","readOnly","LivePreviewClient","props","$","breakpoints","url","t0","getEntityConfig","t1","api","t2","eventType","isPopupOpen","openPopupWindow","popupRef","t3","children","actions","components","views","edit","livePreview","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 LivePreviewConfig,\n} from 'payload'\n\nimport {\n DocumentControls,\n DocumentFields,\n Form,\n OperationProvider,\n SetViewActions,\n useAuth,\n useConfig,\n useDocumentEvents,\n useDocumentInfo,\n useTranslation,\n} from '@payloadcms/ui'\nimport {\n getFormState,\n handleBackToDashboard,\n handleGoBack,\n handleTakeOver,\n} from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useEffect, useRef, useState } from 'react'\n\nimport { DocumentLocked } from '../../elements/DocumentLocked/index.js'\nimport { DocumentTakeOver } from '../../elements/DocumentTakeOver/index.js'\nimport { LeaveWithoutSaving } from '../../elements/LeaveWithoutSaving/index.js'\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { SetDocumentTitle } from '../Edit/Default/SetDocumentTitle/index.js'\nimport { useLivePreviewContext } from './Context/context.js'\nimport { LivePreviewProvider } from './Context/index.js'\nimport './index.scss'\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}\n\nconst PreviewView: React.FC<Props> = ({\n apiRoute,\n collectionConfig,\n config,\n fields,\n globalConfig,\n schemaPath,\n serverURL,\n}) => {\n const {\n id,\n action,\n AfterDocument,\n AfterFields,\n apiURL,\n BeforeDocument,\n BeforeFields,\n collectionSlug,\n currentEditor,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n documentIsLocked,\n getDocPreferences,\n globalSlug,\n hasPublishPermission,\n hasSavePermission,\n initialData,\n initialState,\n isEditing,\n isInitializing,\n lastUpdateTime,\n onSave: onSaveFromProps,\n setCurrentEditor,\n setDocumentIsLocked,\n unlockDocument,\n updateDocumentEditor,\n } = useDocumentInfo()\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 { t } = useTranslation()\n const { previewWindowType } = useLivePreviewContext()\n const { refreshCookieAsync, user } = useAuth()\n const { reportUpdate } = useDocumentEvents()\n\n const docConfig = collectionConfig || globalConfig\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 [isReadOnlyForIncomingUser, setIsReadOnlyForIncomingUser] = useState(false)\n const [showTakeOverModal, setShowTakeOverModal] = useState(false)\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 (json) => {\n reportUpdate({\n id,\n entitySlug: collectionSlug,\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 // Unlock the document after save\n if ((id || globalSlug) && isLockingEnabled) {\n setDocumentIsLocked(false)\n }\n\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps({\n ...json,\n operation: id ? 'update' : 'create',\n })\n }\n },\n [\n collectionSlug,\n globalSlug,\n id,\n isLockingEnabled,\n onSaveFromProps,\n refreshCookieAsync,\n reportUpdate,\n setDocumentIsLocked,\n user,\n userSlug,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState }) => {\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 apiRoute,\n body: {\n id,\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n returnLockStatus: isLockingEnabled ? true : false,\n schemaPath,\n updateLastEdited,\n },\n serverURL,\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 if (!documentLockStateRef.current || lockedState.user.id !== previousOwnerId) {\n if (previousOwnerId === user.id && lockedState.user.id !== 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,\n }\n setCurrentEditor(lockedState.user)\n }\n }\n }\n\n return state\n },\n [\n collectionSlug,\n editSessionStartTime,\n globalSlug,\n serverURL,\n apiRoute,\n id,\n isLockingEnabled,\n operation,\n schemaPath,\n getDocPreferences,\n setCurrentEditor,\n setDocumentIsLocked,\n user,\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 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 {((collectionConfig &&\n !(collectionConfig.versions?.drafts && collectionConfig.versions?.drafts?.autosave)) ||\n (globalConfig &&\n !(globalConfig.versions?.drafts && globalConfig.versions?.drafts?.autosave))) &&\n !disableLeaveWithoutSaving &&\n !isReadOnlyForIncomingUser && <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 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 {BeforeDocument}\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={BeforeFields}\n docPermissions={docPermissions}\n fields={fields}\n forceSidebarWrap\n readOnly={isReadOnlyForIncomingUser || !hasSavePermission}\n schemaPath={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 readonly breakpoints: LivePreviewConfig['breakpoints']\n readonly initialData: Data\n readonly url: string\n}> = (props) => {\n const { breakpoints, url } = 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 { isPopupOpen, openPopupWindow, popupRef } = usePopupWindow({\n eventType: 'payload-live-preview',\n url,\n })\n\n const collectionConfig = getEntityConfig({ collectionSlug }) as ClientCollectionConfig\n\n const globalConfig = getEntityConfig({ globalSlug }) as ClientGlobalConfig\n\n const schemaPath = collectionSlug || globalSlug\n\n return (\n <Fragment>\n <SetViewActions\n actions={\n (collectionConfig || globalConfig)?.admin?.components?.views?.edit?.livePreview?.actions\n }\n />\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 fields={(collectionConfig || globalConfig)?.fields}\n globalConfig={globalConfig}\n schemaPath={schemaPath}\n serverURL={serverURL}\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":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,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":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AAczB,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,CA0FA,CAAA"}
@@ -135,6 +135,7 @@ export const LoginForm = t0 => {
135
135
  adminRoute,
136
136
  path: forgotRoute
137
137
  }),
138
+ prefetch: false,
138
139
  children: t("authentication:forgotPasswordQuestion")
139
140
  }), _jsx(FormSubmit, {
140
141
  size: "large",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","LinkImport","React","baseClass","Link","default","Form","FormSubmit","PasswordField","useAuth","useConfig","useTranslation","formatAdminURL","LoginField","LoginForm","t0","$","prefillEmail","prefillPassword","prefillUsername","searchParams","config","admin","t1","routes","t2","t3","user","userSlug","forgot","forgotRoute","adminRoute","api","apiRoute","t4","collections","find","collection","slug","collectionConfig","auth","authOptions","loginWithUsername","canLoginWithEmail","allowEmailLogin","canLoginWithUsername","t5","loginType","useState","t","setUser","t6","undefined","t7","t8","redirect","initialState","password","initialValue","valid","value","username","email","t9","data","handleLogin","_jsxs","action","className","disableSuccessStatus","method","onSuccess","waitForAutocomplete","children","_jsx","type","field","name","label","required","href","path","size"],"sources":["../../../../src/views/Login/LoginForm/index.tsx"],"sourcesContent":["'use client'\n\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nconst baseClass = 'login__form'\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nimport type { UserWithToken } from '@payloadcms/ui'\nimport type { FormState } from 'payload'\n\nimport { Form, FormSubmit, PasswordField, useAuth, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/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 } = 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 = config.collections?.find((collection) => collection?.slug === userSlug)\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n const canLoginWithEmail =\n !authOptions.loginWithUsername || authOptions.loginWithUsername.allowEmailLogin\n const canLoginWithUsername = authOptions.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 />\n </div>\n <Link\n href={formatAdminURL({\n adminRoute,\n path: forgotRoute,\n })}\n >\n {t('authentication:forgotPasswordQuestion')}\n </Link>\n <FormSubmit size=\"large\">{t('authentication:login')}</FormSubmit>\n </Form>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,MAAMC,SAAA,GAAY;AAClB,MAAMC,IAAA,GAAQH,UAAA,CAAWI,OAAO,IAAIJ,UAAA;AAKpC,SAASK,IAAI,EAAEC,UAAU,EAAEC,aAAa,EAAEC,OAAO,EAAEC,SAAS,EAAEC,cAAc,QAAQ;AACpF,SAASC,cAAc,QAAQ;AAI/B,SAASC,UAAU,QAAQ;AAG3B,OAAO,MAAMC,SAAA,GAKRC,EAAA;EAAA,MAAAC,CAAA,GAAAhB,EAAA;EAAC;IAAAiB,YAAA;IAAAC,eAAA;IAAAC,eAAA;IAAAC;EAAA,IAAAL,EAAgE;EACpE;IAAAM;EAAA,IAAmBX,SAAA;EAEnB;IAAAY,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC;EAAA,IAMIJ,MAAA;EALK;IAAAG,MAAA,EAAAE,EAAA;IAAAC,IAAA,EAAAC;EAAA,IAAAL,EAGN;EAFS;IAAAM,MAAA,EAAAC;EAAA,IAAAJ,EAAuB;EAGzB;IAAAJ,KAAA,EAAAS,UAAA;IAAAC,GAAA,EAAAC;EAAA,IAAAR,EAAoC;EAAA,IAAAS,EAAA;EAAA,IAAAlB,CAAA,QAAAK,MAAA,CAAAc,WAAA,IAAAnB,CAAA,QAAAY,QAAA;IAGrBM,EAAA,GAAAb,MAAA,CAAAc,WAAA,EAAAC,IAAA,CAAAC,UAAA,IAAyCA,UAAA,EAAAC,IAAA,KAAqBV,QAAA;IAAAZ,CAAA,MAAAK,MAAA,CAAAc,WAAA;IAAAnB,CAAA,MAAAY,QAAA;IAAAZ,CAAA,MAAAkB,EAAA;EAAA;IAAAA,EAAA,GAAAlB,CAAA;EAAA;EAAvF,MAAAuB,gBAAA,GAAyBL,EAA8D;EACvF;IAAAM,IAAA,EAAAC;EAAA,IAA8BF,gBAAA;EAC9B,MAAAG,iBAAA,GAA0BD,WAAA,CAAAC,iBAAA;EAC1B,MAAAC,iBAAA,GACE,CAACF,WAAA,CAAAC,iBAAA,IAAiCD,WAAA,CAAAC,iBAAA,CAAAE,eAA6C;EACjF,MAAAC,oBAAA,GAA6BJ,WAAA,CAAAC,iBAAA;EAA6B,IAAAI,EAAA;EAAA,IAAA9B,CAAA,QAAA2B,iBAAA,IAAA3B,CAAA,QAAA6B,oBAAA;IAEEC,EAAA,GAAAA,CAAA;MAAA,IACtDH,iBAAA,IAAqBE,oBAAA;QAAA,OAChB;MAAA;MAAA,IAELA,oBAAA;QAAA,OACK;MAAA;MAAA,OAEF;IAAA;IACT7B,CAAA,MAAA2B,iBAAA;IAAA3B,CAAA,MAAA6B,oBAAA;IAAA7B,CAAA,MAAA8B,EAAA;EAAA;IAAAA,EAAA,GAAA9B,CAAA;EAAA;EARA,OAAA+B,SAAA,IAAoB7C,KAAA,CAAA8C,QAAA,CAAwCF,EAQ5D;EAEA;IAAAG;EAAA,IAActC,cAAA;EACd;IAAAuC;EAAA,IAAoBzC,OAAA;EAIF,MAAA0C,EAAA,GAAAjC,eAAA,IAAAkC,SAAmB;EAE1B,MAAAC,EAAA,GAAAnC,eAAA,IAAAkC,SAAmB;EAAA,IAAAE,EAAA;EAAA,IAAAtC,CAAA,QAAAmC,EAAA,IAAAnC,CAAA,QAAAqC,EAAA,IAAArC,CAAA,QAAA0B,iBAAA,IAAA1B,CAAA,QAAAG,eAAA,IAAAH,CAAA,SAAAC,YAAA,IAAAD,CAAA,SAAAkC,OAAA,IAAAlC,CAAA,SAAAiB,QAAA,IAAAjB,CAAA,SAAAY,QAAA,IAAAZ,CAAA,SAAAI,YAAA,EAAAmC,QAAA,IAAAvC,CAAA,SAAAe,UAAA,IAAAf,CAAA,SAAA+B,SAAA,IAAA/B,CAAA,SAAAiC,CAAA,IAAAjC,CAAA,SAAAc,WAAA;IAJ9B,MAAA0B,YAAA;MAAAC,QAAA;QAAAC,YAAA,EAEkBP,EAAmB;QAAAQ,KAAA;QAAAC,KAAA,EAE1BP;MAAmB;IAAA;IAE9B,IAEIX,iBAAA;MACFc,YAAA,CAAAK,QAAA;QAAAH,YAAA,EACgBvC,eAAA,IAAAiC,SAAmB;QAAAO,KAAA;QAAAC,KAAA,EAE1BzC,eAAA,IAAAiC;MAAmB;IAAA;MAG5BI,YAAA,CAAAM,KAAA;QAAAJ,YAAA,EACgBzC,YAAA,IAAAmC,SAAgB;QAAAO,KAAA;QAAAC,KAAA,EAEvB3C,YAAA,IAAAmC;MAAgB;IAAA;IAAA,IAAAW,EAAA;IAAA,IAAA/C,CAAA,SAAAkC,OAAA;MAIPa,EAAA,GAAAC,IAAA;QAClBd,OAAA,CAAQc,IAAA;MAAA;MACVhD,CAAA,OAAAkC,OAAA;MAAAlC,CAAA,OAAA+C,EAAA;IAAA;MAAAA,EAAA,GAAA/C,CAAA;IAAA;IAFA,MAAAiD,WAAA,GAAoBF,EAEpB;IAGET,EAAA,GAAAY,KAAA,CAAA5D,IAAA;MAAA6D,MAAA,EACU,GAAGlC,QAAA,IAAYL,QAAA,QAAgB;MAAAwC,SAAA,EAAAjE,SAAA;MAAAkE,oBAAA;MAAAb,YAAA;MAAAc,MAAA,EAIhC;MAAAC,SAAA,EACIN,WAAA;MAAAV,QAAA,EACD,OAAOnC,YAAA,EAAAmC,QAAA,KAA2B,WAAWnC,YAAA,CAAAmC,QAAA,GAAwBxB,UAAA;MAAAyC,mBAAA;MAAAC,QAAA,GAG/EP,KAAA,CAAC;QAAAE,SAAA,EAAe,GAAAjE,SAAA,aAAyB;QAAAsE,QAAA,GACvCC,IAAA,CAAA7D,UAAA;UAAA8D,IAAA,EAAkB5B;QAAA,C,GAClB2B,IAAA,CAAAlE,aAAA;UAAAoE,KAAA;YAAAC,IAAA,EAEU;YAAAC,KAAA,EACC7B,CAAA,CAAE;YAAA8B,QAAA;UAAA;QAAA,C;UAKfL,IAAA,CAAAtE,IAAA;QAAA4E,IAAA,EACQpE,cAAA;UAAAmB,UAAA;UAAAkD,IAAA,EAEEnD;QAAA,CACR;QAAA2C,QAAA,EAECxB,CAAA,CAAE;MAAA,C,GAELyB,IAAA,CAAAnE,UAAA;QAAA2E,IAAA,EAAiB;QAAAT,QAAA,EAASxB,CAAA,CAAE;MAAA,C;;;;;;;;;;;;;;;;;;;SA5B9BK,E;CA+BJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","LinkImport","React","baseClass","Link","default","Form","FormSubmit","PasswordField","useAuth","useConfig","useTranslation","formatAdminURL","LoginField","LoginForm","t0","$","prefillEmail","prefillPassword","prefillUsername","searchParams","config","admin","t1","routes","t2","t3","user","userSlug","forgot","forgotRoute","adminRoute","api","apiRoute","t4","collections","find","collection","slug","collectionConfig","auth","authOptions","loginWithUsername","canLoginWithEmail","allowEmailLogin","canLoginWithUsername","t5","loginType","useState","t","setUser","t6","undefined","t7","t8","redirect","initialState","password","initialValue","valid","value","username","email","t9","data","handleLogin","_jsxs","action","className","disableSuccessStatus","method","onSuccess","waitForAutocomplete","children","_jsx","type","field","name","label","required","href","path","prefetch","size"],"sources":["../../../../src/views/Login/LoginForm/index.tsx"],"sourcesContent":["'use client'\n\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nconst baseClass = 'login__form'\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nimport type { UserWithToken } from '@payloadcms/ui'\nimport type { FormState } from 'payload'\n\nimport { Form, FormSubmit, PasswordField, useAuth, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL } from '@payloadcms/ui/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 } = 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 = config.collections?.find((collection) => collection?.slug === userSlug)\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n const canLoginWithEmail =\n !authOptions.loginWithUsername || authOptions.loginWithUsername.allowEmailLogin\n const canLoginWithUsername = authOptions.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 />\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 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ResetPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAK7C,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,sBAAsB,mBAAmB,CAAA;AAItD,OAAO,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAA;AAEzD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAiElD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ResetPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAK7C,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,sBAAsB,mBAAmB,CAAA;AAItD,OAAO,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAA;AAEzD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAmElD,CAAA"}
@@ -49,6 +49,7 @@ export const ResetPassword = ({
49
49
  adminRoute,
50
50
  path: accountRoute
51
51
  }),
52
+ prefetch: false,
52
53
  children: children
53
54
  })
54
55
  },
@@ -77,6 +78,7 @@ export const ResetPassword = ({
77
78
  adminRoute,
78
79
  path: loginRoute
79
80
  }),
81
+ prefetch: false,
80
82
  children: i18n.t('authentication:backToLogin')
81
83
  })]
82
84
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Button","formatAdminURL","Translation","LinkImport","React","FormHeader","ResetPasswordForm","resetPasswordBaseClass","Link","default","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","i18nKey","t","heading","buttonStyle","el","size","to"],"sources":["../../../src/views/ResetPassword/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport { Button } from '@payloadcms/ui'\nimport { formatAdminURL, Translation } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nimport { FormHeader } from '../../elements/FormHeader/index.js'\nimport './index.scss'\nimport { ResetPasswordForm } from './ResetPasswordForm/index.js'\n\nexport const resetPasswordBaseClass = 'reset-password'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport { generateResetPasswordMetadata } from './meta.js'\n\nexport const ResetPassword: React.FC<AdminViewProps> = ({ initPageResult, params }) => {\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 >\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\" Link={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 >\n {i18n.t('authentication:backToLogin')}\n </Link>\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,MAAM,QAAQ;AACvB,SAASC,cAAc,EAAEC,WAAW,QAAQ;AAC5C,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAE3B,SAASC,iBAAiB,QAAQ;AAElC,OAAO,MAAMC,sBAAA,GAAyB;AAEtC,MAAMC,IAAA,GAAQL,UAAA,CAAWM,OAAO,IAAIN,UAAA;AAEpC,SAASO,6BAA6B,QAAQ;AAE9C,OAAO,MAAMC,aAAA,GAA0CA,CAAC;EAAEC,cAAc;EAAEC;AAAM,CAAE;EAChF,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,GAAGvB,sBAAA,QAA8B;8BAC/CwB,IAAA,CAAC1B,UAAA;QACC2B,WAAA,eACED,IAAA,CAAC7B,WAAA;UACC+B,QAAA,EAAU;YACR,KAAKC,CAAC;cAAEC;YAAQ,CAAE,kBAChBJ,IAAA,CAACvB,IAAA;cACC4B,IAAA,EAAMnC,cAAA,CAAe;gBACnB2B,UAAA;gBACAS,IAAA,EAAMZ;cACR;wBAECU;;UAGP;UACAG,OAAA,EAAQ;UACRC,CAAA,EAAGrB,IAAA,CAAKqB;;QAGZC,OAAA,EAAStB,IAAA,CAAKqB,CAAC,CAAC;uBAElBR,IAAA,CAAC/B,MAAA;QAAOyC,WAAA,EAAY;QAAYC,EAAA,EAAG;QAAOlC,IAAA,EAAMA,IAAA;QAAMmC,IAAA,EAAK;QAAQC,EAAA,EAAIhB,UAAA;kBACpEV,IAAA,CAAKqB,CAAC,CAAC;;;EAIhB;EAEA,oBACEV,KAAA,CAAC;IAAIC,SAAA,EAAW,GAAGvB,sBAAA,QAA8B;4BAC/CwB,IAAA,CAAC1B,UAAA;MAAWmC,OAAA,EAAStB,IAAA,CAAKqB,CAAC,CAAC;qBAC5BR,IAAA,CAACzB,iBAAA;MAAkBW,KAAA,EAAOA;qBAC1Bc,IAAA,CAACvB,IAAA;MACC4B,IAAA,EAAMnC,cAAA,CAAe;QACnB2B,UAAA;QACAS,IAAA,EAAMV;MACR;gBAECT,IAAA,CAAKqB,CAAC,CAAC;;;AAIhB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Button","formatAdminURL","Translation","LinkImport","React","FormHeader","ResetPasswordForm","resetPasswordBaseClass","Link","default","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 { AdminViewProps } from 'payload'\n\nimport { Button } from '@payloadcms/ui'\nimport { formatAdminURL, Translation } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nimport { FormHeader } from '../../elements/FormHeader/index.js'\nimport './index.scss'\nimport { ResetPasswordForm } from './ResetPasswordForm/index.js'\n\nexport const resetPasswordBaseClass = 'reset-password'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport { generateResetPasswordMetadata } from './meta.js'\n\nexport const ResetPassword: React.FC<AdminViewProps> = ({ initPageResult, params }) => {\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\" Link={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,QAAQ;AACvB,SAASC,cAAc,EAAEC,WAAW,QAAQ;AAC5C,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,SAASC,UAAU,QAAQ;AAE3B,SAASC,iBAAiB,QAAQ;AAElC,OAAO,MAAMC,sBAAA,GAAyB;AAEtC,MAAMC,IAAA,GAAQL,UAAA,CAAWM,OAAO,IAAIN,UAAA;AAEpC,SAASO,6BAA6B,QAAQ;AAE9C,OAAO,MAAMC,aAAA,GAA0CA,CAAC;EAAEC,cAAc;EAAEC;AAAM,CAAE;EAChF,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,GAAGvB,sBAAA,QAA8B;8BAC/CwB,IAAA,CAAC1B,UAAA;QACC2B,WAAA,eACED,IAAA,CAAC7B,WAAA;UACC+B,QAAA,EAAU;YACR,KAAKC,CAAC;cAAEC;YAAQ,CAAE,kBAChBJ,IAAA,CAACvB,IAAA;cACC4B,IAAA,EAAMnC,cAAA,CAAe;gBACnB2B,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,CAAC/B,MAAA;QAAO0C,WAAA,EAAY;QAAYC,EAAA,EAAG;QAAOnC,IAAA,EAAMA,IAAA;QAAMoC,IAAA,EAAK;QAAQC,EAAA,EAAIjB,UAAA;kBACpEV,IAAA,CAAKsB,CAAC,CAAC;;;EAIhB;EAEA,oBACEX,KAAA,CAAC;IAAIC,SAAA,EAAW,GAAGvB,sBAAA,QAA8B;4BAC/CwB,IAAA,CAAC1B,UAAA;MAAWoC,OAAA,EAASvB,IAAA,CAAKsB,CAAC,CAAC;qBAC5BT,IAAA,CAACzB,iBAAA;MAAkBW,KAAA,EAAOA;qBAC1Bc,IAAA,CAACvB,IAAA;MACC4B,IAAA,EAAMnC,cAAA,CAAe;QACnB2B,UAAA;QACAS,IAAA,EAAMV;MACR;MACAW,QAAA,EAAU;gBAETpB,IAAA,CAAKsB,CAAC,CAAC;;;AAIhB","ignoreList":[]}
@@ -66,6 +66,7 @@ export const CreatedAtCell = t0 => {
66
66
  }
67
67
  t4 = _jsx(Link, {
68
68
  href: to,
69
+ prefetch: false,
69
70
  children: t5
70
71
  });
71
72
  $[0] = collectionSlug;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useConfig","useTableCell","useTranslation","formatAdminURL","formatDate","LinkImport","React","Link","default","CreatedAtCell","t0","$","collectionSlug","docID","globalSlug","config","t1","admin","t2","routes","t3","dateFormat","adminRoute","i18n","cellData","rowData","versionID","id","t4","to","t5","date","pattern","_jsx","href","children"],"sources":["../../../../../src/views/Versions/cells/CreatedAt/index.tsx"],"sourcesContent":["'use client'\nimport { useConfig, useTableCell, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL, formatDate } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\ntype CreatedAtCellProps = {\n collectionSlug?: string\n docID?: number | string\n globalSlug?: string\n}\n\nexport const CreatedAtCell: React.FC<CreatedAtCellProps> = ({\n collectionSlug,\n docID,\n globalSlug,\n}) => {\n const {\n config: {\n admin: { dateFormat },\n routes: { admin: adminRoute },\n },\n } = useConfig()\n\n const { i18n } = useTranslation()\n\n const { cellData, rowData } = useTableCell()\n\n const versionID = rowData.id\n\n let to: string\n\n if (collectionSlug) {\n to = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${docID}/versions/${versionID}`,\n })\n }\n\n if (globalSlug) {\n to = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions/${versionID}`,\n })\n }\n\n return (\n <Link href={to}>\n {cellData &&\n formatDate({ date: cellData as Date | number | string, i18n, pattern: dateFormat })}\n </Link>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,SAAS,EAAEC,YAAY,EAAEC,cAAc,QAAQ;AACxD,SAASC,cAAc,EAAEC,UAAU,QAAQ;AAC3C,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,MAAMC,IAAA,GAAQF,UAAA,CAAWG,OAAO,IAAIH,UAAA;AAQpC,OAAO,MAAMI,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,cAAA;IAAAC,KAAA;IAAAC;EAAA,IAAAJ,EAI3D;EACC;IAAAK,MAAA,EAAAC;EAAA,IAKIhB,SAAA;EAJM;IAAAiB,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC;EAAA,IAAAJ,EAGP;EAFQ;IAAAK;EAAA,IAAAH,EAAc;EACb;IAAAD,KAAA,EAAAK;EAAA,IAAAF,EAAqB;EAIjC;IAAAG;EAAA,IAAiBrB,cAAA;EAEjB;IAAAsB,QAAA;IAAAC;EAAA,IAA8BxB,YAAA;EAE9B,MAAAyB,SAAA,GAAkBD,OAAA,CAAAE,EAAA;EAAU,IAAAC,EAAA;EAAA,IAAAjB,CAAA,QAAAC,cAAA,IAAAD,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAe,SAAA,IAAAf,CAAA,QAAAW,UAAA,IAAAX,CAAA,QAAAG,UAAA,IAAAH,CAAA,QAAAa,QAAA,IAAAb,CAAA,QAAAY,IAAA,IAAAZ,CAAA,QAAAU,UAAA;IAExBQ,GAAA,CAAAA,EAAA;IAAA,IAEAjB,cAAA;MACFiB,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,gBAAgBjB,cAAA,IAAkBC,KAAA,aAAkBa,SAAA;MAAW,CACvE;IAHA;IAAA,IAMEZ,UAAA;MACFe,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,YAAYf,UAAA,aAAuBY,SAAA;MAAW,CACtD;IAHA;IAAA,IAAAI,EAAA;IAAA,IAAAnB,CAAA,QAAAa,QAAA,IAAAb,CAAA,SAAAY,IAAA,IAAAZ,CAAA,SAAAU,UAAA;MAQGS,EAAA,GAAAN,QAAA,IACCpB,UAAA;QAAA2B,IAAA,EAAmBP,QAAA;QAAAD,IAAA;QAAAS,OAAA,EAAmDX;MAAA,CAAW;MAAAV,CAAA,MAAAa,QAAA;MAAAb,CAAA,OAAAY,IAAA;MAAAZ,CAAA,OAAAU,UAAA;MAAAV,CAAA,OAAAmB,EAAA;IAAA;MAAAA,EAAA,GAAAnB,CAAA;IAAA;IAFrFiB,EAAA,GAAAK,IAAA,CAAA1B,IAAA;MAAA2B,IAAA,EAAYL,EAAA;MAAAM,QAAA,EACTL;IACkF,C;;;;;;;;;;;;;SAFrFF,E;CAKJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useConfig","useTableCell","useTranslation","formatAdminURL","formatDate","LinkImport","React","Link","default","CreatedAtCell","t0","$","collectionSlug","docID","globalSlug","config","t1","admin","t2","routes","t3","dateFormat","adminRoute","i18n","cellData","rowData","versionID","id","t4","to","t5","date","pattern","_jsx","href","prefetch","children"],"sources":["../../../../../src/views/Versions/cells/CreatedAt/index.tsx"],"sourcesContent":["'use client'\nimport { useConfig, useTableCell, useTranslation } from '@payloadcms/ui'\nimport { formatAdminURL, formatDate } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React from 'react'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\ntype CreatedAtCellProps = {\n collectionSlug?: string\n docID?: number | string\n globalSlug?: string\n}\n\nexport const CreatedAtCell: React.FC<CreatedAtCellProps> = ({\n collectionSlug,\n docID,\n globalSlug,\n}) => {\n const {\n config: {\n admin: { dateFormat },\n routes: { admin: adminRoute },\n },\n } = useConfig()\n\n const { i18n } = useTranslation()\n\n const { cellData, rowData } = useTableCell()\n\n const versionID = rowData.id\n\n let to: string\n\n if (collectionSlug) {\n to = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${docID}/versions/${versionID}`,\n })\n }\n\n if (globalSlug) {\n to = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}/versions/${versionID}`,\n })\n }\n\n return (\n <Link href={to} prefetch={false}>\n {cellData &&\n formatDate({ date: cellData as Date | number | string, i18n, pattern: dateFormat })}\n </Link>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,SAAS,EAAEC,YAAY,EAAEC,cAAc,QAAQ;AACxD,SAASC,cAAc,EAAEC,UAAU,QAAQ;AAC3C,OAAOC,UAAA,MAAgB;AACvB,OAAOC,KAAA,MAAW;AAElB,MAAMC,IAAA,GAAQF,UAAA,CAAWG,OAAO,IAAIH,UAAA;AAQpC,OAAO,MAAMI,aAAA,GAA8CC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,cAAA;IAAAC,KAAA;IAAAC;EAAA,IAAAJ,EAI3D;EACC;IAAAK,MAAA,EAAAC;EAAA,IAKIhB,SAAA;EAJM;IAAAiB,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC;EAAA,IAAAJ,EAGP;EAFQ;IAAAK;EAAA,IAAAH,EAAc;EACb;IAAAD,KAAA,EAAAK;EAAA,IAAAF,EAAqB;EAIjC;IAAAG;EAAA,IAAiBrB,cAAA;EAEjB;IAAAsB,QAAA;IAAAC;EAAA,IAA8BxB,YAAA;EAE9B,MAAAyB,SAAA,GAAkBD,OAAA,CAAAE,EAAA;EAAU,IAAAC,EAAA;EAAA,IAAAjB,CAAA,QAAAC,cAAA,IAAAD,CAAA,QAAAE,KAAA,IAAAF,CAAA,QAAAe,SAAA,IAAAf,CAAA,QAAAW,UAAA,IAAAX,CAAA,QAAAG,UAAA,IAAAH,CAAA,QAAAa,QAAA,IAAAb,CAAA,QAAAY,IAAA,IAAAZ,CAAA,QAAAU,UAAA;IAExBQ,GAAA,CAAAA,EAAA;IAAA,IAEAjB,cAAA;MACFiB,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,gBAAgBjB,cAAA,IAAkBC,KAAA,aAAkBa,SAAA;MAAW,CACvE;IAHA;IAAA,IAMEZ,UAAA;MACFe,EAAA,CAAAA,CAAA,CAAKA;QAAAA;QAAAA,KAAA,CAEGA,YAAYf,UAAA,aAAuBY,SAAA;MAAW,CACtD;IAHA;IAAA,IAAAI,EAAA;IAAA,IAAAnB,CAAA,QAAAa,QAAA,IAAAb,CAAA,SAAAY,IAAA,IAAAZ,CAAA,SAAAU,UAAA;MAQGS,EAAA,GAAAN,QAAA,IACCpB,UAAA;QAAA2B,IAAA,EAAmBP,QAAA;QAAAD,IAAA;QAAAS,OAAA,EAAmDX;MAAA,CAAW;MAAAV,CAAA,MAAAa,QAAA;MAAAb,CAAA,OAAAY,IAAA;MAAAZ,CAAA,OAAAU,UAAA;MAAAV,CAAA,OAAAmB,EAAA;IAAA;MAAAA,EAAA,GAAAnB,CAAA;IAAA;IAFrFiB,EAAA,GAAAK,IAAA,CAAA1B,IAAA;MAAA2B,IAAA,EAAYL,EAAA;MAAAM,QAAA;MAAAC,QAAA,EACTN;IACkF,C;;;;;;;;;;;;;SAFrFF,E;CAKJ","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/next",
3
- "version": "3.0.0-beta.122",
3
+ "version": "3.0.0-beta.124",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -71,9 +71,9 @@
71
71
  "sonner": "^1.5.0",
72
72
  "uuid": "10.0.0",
73
73
  "ws": "^8.16.0",
74
- "@payloadcms/graphql": "3.0.0-beta.122",
75
- "@payloadcms/ui": "3.0.0-beta.122",
76
- "@payloadcms/translations": "3.0.0-beta.122"
74
+ "@payloadcms/graphql": "3.0.0-beta.124",
75
+ "@payloadcms/ui": "3.0.0-beta.124",
76
+ "@payloadcms/translations": "3.0.0-beta.124"
77
77
  },
78
78
  "devDependencies": {
79
79
  "@babel/cli": "^7.24.5",
@@ -93,12 +93,12 @@
93
93
  "eslint-plugin-react-compiler": "0.0.0-experimental-7670337-20240918",
94
94
  "swc-plugin-transform-remove-imports": "1.15.0",
95
95
  "@payloadcms/eslint-config": "3.0.0-beta.112",
96
- "payload": "3.0.0-beta.122"
96
+ "payload": "3.0.0-beta.124"
97
97
  },
98
98
  "peerDependencies": {
99
99
  "graphql": "^16.8.1",
100
100
  "next": "^15.0.0",
101
- "payload": "3.0.0-beta.122"
101
+ "payload": "3.0.0-beta.124"
102
102
  },
103
103
  "engines": {
104
104
  "node": "^18.20.2 || >=20.9.0"