@payloadcms/next 3.22.0 → 3.23.0-canary.597254e

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/LivePreview/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAMV,IAAI,EACJ,aAAa,EAEb,iBAAiB,EAClB,MAAM,SAAS,CAAA;AA+BhB,OAAO,KAA6D,MAAM,OAAO,CAAA;AAGjF,OAAO,cAAc,CAAA;AAqfrB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CACtC;IACE,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACtD,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB,GAAG,aAAa,CAqDlB,CAAA"}
1
+ {"version":3,"file":"index.client.d.ts","sourceRoot":"","sources":["../../../src/views/LivePreview/index.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAMV,IAAI,EACJ,aAAa,EAEb,iBAAiB,EAClB,MAAM,SAAS,CAAA;AA+BhB,OAAO,KAA6D,MAAM,OAAO,CAAA;AAGjF,OAAO,cAAc,CAAA;AA6frB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CACtC;IACE,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAA;IACtD,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAA;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB,GAAG,aAAa,CA0DlB,CAAA"}
@@ -11,6 +11,13 @@ import { LivePreviewProvider } from './Context/index.js';
11
11
  import { LivePreview } from './Preview/index.js';
12
12
  import { usePopupWindow } from './usePopupWindow.js';
13
13
  const baseClass = 'live-preview';
14
+ const getAbsoluteUrl = url => {
15
+ try {
16
+ return new URL(url, window.location.origin).href;
17
+ } catch {
18
+ return url;
19
+ }
20
+ };
14
21
  const PreviewView = ({
15
22
  collectionConfig,
16
23
  config,
@@ -347,10 +354,10 @@ const PreviewView = ({
347
354
  });
348
355
  };
349
356
  export const LivePreviewClient = props => {
350
- const $ = _c(20);
357
+ const $ = _c(22);
351
358
  const {
352
359
  breakpoints,
353
- url
360
+ url: incomingUrl
354
361
  } = props;
355
362
  const {
356
363
  collectionSlug,
@@ -369,23 +376,32 @@ export const LivePreviewClient = props => {
369
376
  api: apiRoute
370
377
  } = t1;
371
378
  let t2;
372
- if ($[0] !== url) {
373
- t2 = {
379
+ if ($[0] !== incomingUrl) {
380
+ t2 = incomingUrl.startsWith("http://") || incomingUrl.startsWith("https://") ? incomingUrl : getAbsoluteUrl(incomingUrl);
381
+ $[0] = incomingUrl;
382
+ $[1] = t2;
383
+ } else {
384
+ t2 = $[1];
385
+ }
386
+ const url = t2;
387
+ let t3;
388
+ if ($[2] !== url) {
389
+ t3 = {
374
390
  eventType: "payload-live-preview",
375
391
  url
376
392
  };
377
- $[0] = url;
378
- $[1] = t2;
393
+ $[2] = url;
394
+ $[3] = t3;
379
395
  } else {
380
- t2 = $[1];
396
+ t3 = $[3];
381
397
  }
382
398
  const {
383
399
  isPopupOpen,
384
400
  openPopupWindow,
385
401
  popupRef
386
- } = usePopupWindow(t2);
387
- let t3;
388
- if ($[2] !== apiRoute || $[3] !== breakpoints || $[4] !== collectionSlug || $[5] !== config || $[6] !== getEntityConfig || $[7] !== globalSlug || $[8] !== isPopupOpen || $[9] !== openPopupWindow || $[10] !== popupRef || $[11] !== props.Description || $[12] !== props.PreviewButton || $[13] !== props.PublishButton || $[14] !== props.SaveButton || $[15] !== props.SaveDraftButton || $[16] !== props.Upload || $[17] !== serverURL || $[18] !== url) {
402
+ } = usePopupWindow(t3);
403
+ let t4;
404
+ if ($[4] !== apiRoute || $[5] !== breakpoints || $[6] !== collectionSlug || $[7] !== config || $[8] !== getEntityConfig || $[9] !== globalSlug || $[10] !== isPopupOpen || $[11] !== openPopupWindow || $[12] !== popupRef || $[13] !== props.Description || $[14] !== props.PreviewButton || $[15] !== props.PublishButton || $[16] !== props.SaveButton || $[17] !== props.SaveDraftButton || $[18] !== props.Upload || $[19] !== serverURL || $[20] !== url) {
389
405
  const collectionConfig = getEntityConfig({
390
406
  collectionSlug
391
407
  });
@@ -393,7 +409,7 @@ export const LivePreviewClient = props => {
393
409
  globalSlug
394
410
  });
395
411
  const schemaPath = collectionSlug || globalSlug;
396
- t3 = _jsx(Fragment, {
412
+ t4 = _jsx(Fragment, {
397
413
  children: _jsx(LivePreviewProvider, {
398
414
  breakpoints,
399
415
  fieldSchema: collectionConfig?.fields || globalConfig?.fields,
@@ -418,27 +434,27 @@ export const LivePreviewClient = props => {
418
434
  })
419
435
  })
420
436
  });
421
- $[2] = apiRoute;
422
- $[3] = breakpoints;
423
- $[4] = collectionSlug;
424
- $[5] = config;
425
- $[6] = getEntityConfig;
426
- $[7] = globalSlug;
427
- $[8] = isPopupOpen;
428
- $[9] = openPopupWindow;
429
- $[10] = popupRef;
430
- $[11] = props.Description;
431
- $[12] = props.PreviewButton;
432
- $[13] = props.PublishButton;
433
- $[14] = props.SaveButton;
434
- $[15] = props.SaveDraftButton;
435
- $[16] = props.Upload;
436
- $[17] = serverURL;
437
- $[18] = url;
438
- $[19] = t3;
437
+ $[4] = apiRoute;
438
+ $[5] = breakpoints;
439
+ $[6] = collectionSlug;
440
+ $[7] = config;
441
+ $[8] = getEntityConfig;
442
+ $[9] = globalSlug;
443
+ $[10] = isPopupOpen;
444
+ $[11] = openPopupWindow;
445
+ $[12] = popupRef;
446
+ $[13] = props.Description;
447
+ $[14] = props.PreviewButton;
448
+ $[15] = props.PublishButton;
449
+ $[16] = props.SaveButton;
450
+ $[17] = props.SaveDraftButton;
451
+ $[18] = props.Upload;
452
+ $[19] = serverURL;
453
+ $[20] = url;
454
+ $[21] = t4;
439
455
  } else {
440
- t3 = $[19];
456
+ t4 = $[21];
441
457
  }
442
- return t3;
458
+ return t4;
443
459
  };
444
460
  //# sourceMappingURL=index.client.js.map
@@ -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","useServerFunctions","useTranslation","useUploadEdits","abortAndIgnore","formatAdminURL","handleAbortRef","handleBackToDashboard","handleGoBack","handleTakeOver","useRouter","useSearchParams","React","Fragment","useCallback","useEffect","useRef","useState","useLivePreviewContext","LivePreviewProvider","LivePreview","usePopupWindow","baseClass","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","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","window","location","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","url","t0","getEntityConfig","t1","serverURL","api","apiRoute","t2","eventType","isPopupOpen","openPopupWindow","popupRef","t3","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 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 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\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 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 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 } = 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 })\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","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","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 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\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 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 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":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/next",
3
- "version": "3.22.0",
3
+ "version": "3.23.0-canary.597254e",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -80,9 +80,9 @@
80
80
  "sass": "1.77.4",
81
81
  "sonner": "^1.7.0",
82
82
  "uuid": "10.0.0",
83
- "@payloadcms/graphql": "3.22.0",
84
- "@payloadcms/translations": "3.22.0",
85
- "@payloadcms/ui": "3.22.0"
83
+ "@payloadcms/graphql": "3.23.0-canary.597254e",
84
+ "@payloadcms/ui": "3.23.0-canary.597254e",
85
+ "@payloadcms/translations": "3.23.0-canary.597254e"
86
86
  },
87
87
  "devDependencies": {
88
88
  "@babel/cli": "7.26.4",
@@ -100,13 +100,13 @@
100
100
  "esbuild-sass-plugin": "3.3.1",
101
101
  "eslint-plugin-react-compiler": "19.0.0-beta-714736e-20250131",
102
102
  "swc-plugin-transform-remove-imports": "3.1.0",
103
- "payload": "3.22.0",
104
- "@payloadcms/eslint-config": "3.9.0"
103
+ "@payloadcms/eslint-config": "3.9.0",
104
+ "payload": "3.23.0-canary.597254e"
105
105
  },
106
106
  "peerDependencies": {
107
107
  "graphql": "^16.8.1",
108
108
  "next": "^15.0.0",
109
- "payload": "3.22.0"
109
+ "payload": "3.23.0-canary.597254e"
110
110
  },
111
111
  "engines": {
112
112
  "node": "^18.20.2 || >=20.9.0"