@payloadcms/ui 3.69.0-canary.0 → 3.69.0-canary.2

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 (83) hide show
  1. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  2. package/dist/elements/AppHeader/index.js +4 -2
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  5. package/dist/elements/DeleteDocument/index.js +2 -1
  6. package/dist/elements/DeleteDocument/index.js.map +1 -1
  7. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  8. package/dist/elements/DocumentControls/index.js +4 -2
  9. package/dist/elements/DocumentControls/index.js.map +1 -1
  10. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  11. package/dist/elements/DuplicateDocument/index.js +10 -5
  12. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  13. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  14. package/dist/elements/EditMany/DrawerContent.js +16 -4
  15. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  16. package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +1 -1
  17. package/dist/elements/FolderView/BrowseByFolderButton/index.js +4 -2
  18. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  19. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  20. package/dist/elements/IDLabel/index.js +14 -11
  21. package/dist/elements/IDLabel/index.js.map +1 -1
  22. package/dist/elements/Logout/index.d.ts.map +1 -1
  23. package/dist/elements/Logout/index.js +11 -8
  24. package/dist/elements/Logout/index.js.map +1 -1
  25. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  26. package/dist/elements/PermanentlyDeleteButton/index.js +2 -1
  27. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  28. package/dist/elements/QueryPresets/QueryPresetBar/index.d.ts.map +1 -1
  29. package/dist/elements/QueryPresets/QueryPresetBar/index.js +15 -6
  30. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  31. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  32. package/dist/elements/RestoreButton/index.js +2 -1
  33. package/dist/elements/RestoreButton/index.js.map +1 -1
  34. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  35. package/dist/elements/StayLoggedIn/index.js +20 -17
  36. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  37. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  38. package/dist/elements/Table/DefaultCell/index.js +12 -9
  39. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  40. package/dist/exports/client/index.js +24 -24
  41. package/dist/exports/client/index.js.map +3 -3
  42. package/dist/exports/shared/index.js +1 -1
  43. package/dist/exports/shared/index.js.map +3 -3
  44. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  45. package/dist/fields/Relationship/Input.js +3 -2
  46. package/dist/fields/Relationship/Input.js.map +1 -1
  47. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +1 -1
  48. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +2 -2
  49. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  50. package/dist/graphics/Account/index.d.ts.map +1 -1
  51. package/dist/graphics/Account/index.js +4 -2
  52. package/dist/graphics/Account/index.js.map +1 -1
  53. package/dist/providers/Auth/index.d.ts.map +1 -1
  54. package/dist/providers/Auth/index.js +29 -8
  55. package/dist/providers/Auth/index.js.map +1 -1
  56. package/dist/providers/Folders/index.d.ts.map +1 -1
  57. package/dist/providers/Folders/index.js +3 -2
  58. package/dist/providers/Folders/index.js.map +1 -1
  59. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  60. package/dist/providers/TableColumns/buildColumnState/renderCell.js +2 -1
  61. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  62. package/dist/utilities/buildFormState.js +2 -2
  63. package/dist/utilities/buildFormState.js.map +1 -1
  64. package/dist/utilities/handleBackToDashboard.d.ts +2 -1
  65. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -1
  66. package/dist/utilities/handleBackToDashboard.js +4 -2
  67. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  68. package/dist/utilities/handleGoBack.d.ts +2 -1
  69. package/dist/utilities/handleGoBack.d.ts.map +1 -1
  70. package/dist/utilities/handleGoBack.js +4 -2
  71. package/dist/utilities/handleGoBack.js.map +1 -1
  72. package/dist/views/CollectionFolder/index.js +5 -3
  73. package/dist/views/CollectionFolder/index.js.map +1 -1
  74. package/dist/views/Edit/SetDocumentStepNav/index.d.ts.map +1 -1
  75. package/dist/views/Edit/SetDocumentStepNav/index.js +23 -17
  76. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  77. package/dist/views/Edit/index.d.ts.map +1 -1
  78. package/dist/views/Edit/index.js +9 -5
  79. package/dist/views/Edit/index.js.map +1 -1
  80. package/dist/views/List/index.d.ts.map +1 -1
  81. package/dist/views/List/index.js +5 -3
  82. package/dist/views/List/index.js.map +1 -1
  83. package/package.json +6 -6
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","useRouter","formatAdminURL","qs","React","Fragment","useCallback","useState","toast","CheckboxInput","useConfig","useDocumentTitle","useRouteTransition","useTranslation","requests","Button","ConfirmationModal","Translation","baseClass","RestoreButton","props","id","buttonId","collectionSlug","onRestore","redirectAfterRestore","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","serverURL","getEntityConfig","collectionConfig","router","i18n","t","startRouteTransition","openModal","modalSlug","restoreAsPublished","setRestoreAsPublished","addDefaultError","error","handleRestore","url","stringify","trash","where","and","equals","deletedAt","exists","body","versions","drafts","_status","res","patch","JSON","headers","language","json","status","success","label","message","push","path","errors","forEach","_err","_jsxs","_jsx","buttonStyle","onClick","elements","1","children","i18nKey","variables","className","checked","name","onToggle","e","target","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/RestoreButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentTitle } from '../../providers/DocumentTitle/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { Translation } from '../Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'restore-button'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onRestore?: DocumentDrawerContextType['onRestore']\n readonly redirectAfterRestore?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n}\n\nexport const RestoreButton: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onRestore,\n redirectAfterRestore = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentTitle()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n\n const modalSlug = `restore-${id}`\n\n const [restoreAsPublished, setRestoreAsPublished] = useState(false)\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:restoringTitle', { title }))\n }, [t, title])\n\n const handleRestore = useCallback(async () => {\n try {\n const url = `${serverURL}${api}/${collectionSlug}?${qs.stringify({\n trash: true,\n where: {\n and: [{ id: { equals: id } }, { deletedAt: { exists: true } }],\n },\n })}`\n\n const body: Record<string, unknown> = {\n deletedAt: null,\n }\n\n // Only include _status if drafts are enabled\n if (collectionConfig?.versions?.drafts) {\n body._status = restoreAsPublished ? 'published' : 'draft'\n }\n\n const res = await requests.patch(url, {\n body: JSON.stringify(body),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleRestored', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n if (redirectAfterRestore) {\n return startRouteTransition(() =>\n router.push(\n formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${id}`,\n }),\n ),\n )\n }\n\n if (typeof onRestore === 'function') {\n await onRestore({ id, collectionConfig })\n }\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n } catch (_err) {\n addDefaultError()\n }\n }, [\n serverURL,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterRestore,\n onRestore,\n collectionConfig,\n startRouteTransition,\n restoreAsPublished,\n ])\n\n if (id) {\n return (\n <Fragment>\n <Button\n buttonStyle=\"primary\"\n id={buttonId}\n key={buttonId}\n onClick={() => {\n openModal(modalSlug)\n }}\n >\n {t('general:restore')}\n </Button>\n <ConfirmationModal\n body={\n <Fragment>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey={\n collectionConfig?.versions?.drafts\n ? 'general:aboutToRestoreAsDraft'\n : 'general:aboutToRestore'\n }\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n {collectionConfig?.versions?.drafts && (\n <div className={`${baseClass}__checkbox`}>\n <CheckboxInput\n checked={restoreAsPublished}\n id=\"restore-as-published\"\n label={t('general:restoreAsPublished')}\n name=\"restore-as-published\"\n onToggle={(e) => setRestoreAsPublished(e.target.checked)}\n />\n </div>\n )}\n </Fragment>\n }\n className={baseClass}\n confirmingLabel={t('general:restoring')}\n heading={t('general:confirmRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"AAAA;;;AAIA,SAASA,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,YAAYC,EAAA,MAAQ;AACpB,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,QAAQ,QAAQ;AACvD,SAASC,KAAK,QAAQ;AAItB,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AACzB,SAASC,MAAM,QAAQ;AACvB,SAASC,iBAAiB,QAAQ;AAClC,SAASC,WAAW,QAAQ;AAC5B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAYlB,OAAO,MAAMC,aAAA,GAAkCC,KAAA;EAC7C,MAAM;IACJC,EAAE;IACFC,QAAQ;IACRC,cAAc;IACdC,SAAS;IACTC,oBAAA,GAAuB,IAAI;IAC3BC,aAAa;IACbC,KAAA,EAAOC;EAAc,CACtB,GAAGR,KAAA;EAEJ,MAAM;IACJS,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,KAAA,EAAOC,UAAU;QAAEC;MAAG,CAAE;MAClCC;IAAS,CACV;IACDC;EAAe,CAChB,GAAGzB,SAAA;EAEJ,MAAM0B,gBAAA,GAAmBD,eAAA,CAAgB;IAAEZ;EAAe;EAC1D,MAAMc,MAAA,GAASpC,SAAA;EACf,MAAM;IAAEqC,IAAI;IAAEC;EAAC,CAAE,GAAG1B,cAAA;EACpB,MAAM;IAAEc;EAAK,CAAE,GAAGhB,gBAAA;EAClB,MAAM;IAAE6B;EAAoB,CAAE,GAAG5B,kBAAA;EACjC,MAAM;IAAE6B;EAAS,CAAE,GAAG1C,QAAA;EAEtB,MAAM2C,SAAA,GAAY,WAAWrB,EAAA,EAAI;EAEjC,MAAM,CAACsB,kBAAA,EAAoBC,qBAAA,CAAsB,GAAGrC,QAAA,CAAS;EAE7D,MAAMsC,eAAA,GAAkBvC,WAAA,CAAY;IAClCE,KAAA,CAAMsC,KAAK,CAACP,CAAA,CAAE,wBAAwB;MAAEZ;IAAM;EAChD,GAAG,CAACY,CAAA,EAAGZ,KAAA,CAAM;EAEb,MAAMoB,aAAA,GAAgBzC,WAAA,CAAY;IAChC,IAAI;MACF,MAAM0C,GAAA,GAAM,GAAGd,SAAA,GAAYD,GAAA,IAAOV,cAAA,IAAkBpB,EAAA,CAAG8C,SAAS,CAAC;QAC/DC,KAAA,EAAO;QACPC,KAAA,EAAO;UACLC,GAAA,EAAK,CAAC;YAAE/B,EAAA,EAAI;cAAEgC,MAAA,EAAQhC;YAAG;UAAE,GAAG;YAAEiC,SAAA,EAAW;cAAEC,MAAA,EAAQ;YAAK;UAAE;QAC9D;MACF,IAAI;MAEJ,MAAMC,IAAA,GAAgC;QACpCF,SAAA,EAAW;MACb;MAEA;MACA,IAAIlB,gBAAA,EAAkBqB,QAAA,EAAUC,MAAA,EAAQ;QACtCF,IAAA,CAAKG,OAAO,GAAGhB,kBAAA,GAAqB,cAAc;MACpD;MAEA,MAAMiB,GAAA,GAAM,MAAM9C,QAAA,CAAS+C,KAAK,CAACb,GAAA,EAAK;QACpCQ,IAAA,EAAMM,IAAA,CAAKb,SAAS,CAACO,IAAA;QACrBO,OAAA,EAAS;UACP,mBAAmBzB,IAAA,CAAK0B,QAAQ;UAChC,gBAAgB;QAClB;MACF;MAEA,MAAMC,IAAA,GAAO,MAAML,GAAA,CAAIK,IAAI;MAE3B,IAAIL,GAAA,CAAIM,MAAM,GAAG,KAAK;QACpB1D,KAAA,CAAM2D,OAAO,CACX5B,CAAA,CAAE,yBAAyB;UACzB6B,KAAA,EAAOpE,cAAA,CAAe0B,aAAA,EAAeY,IAAA;UACrCX;QACF,MAAMsC,IAAA,CAAKI,OAAO;QAGpB,IAAI5C,oBAAA,EAAsB;UACxB,OAAOe,oBAAA,CAAqB,MAC1BH,MAAA,CAAOiC,IAAI,CACTpE,cAAA,CAAe;YACb8B,UAAA;YACAuC,IAAA,EAAM,gBAAgBhD,cAAA,IAAkBF,EAAA;UAC1C;QAGN;QAEA,IAAI,OAAOG,SAAA,KAAc,YAAY;UACnC,MAAMA,SAAA,CAAU;YAAEH,EAAA;YAAIe;UAAiB;QACzC;QAEA;MACF;MAEA,IAAI6B,IAAA,CAAKO,MAAM,EAAE;QACfP,IAAA,CAAKO,MAAM,CAACC,OAAO,CAAE3B,KAAA,IAAUtC,KAAA,CAAMsC,KAAK,CAACA,KAAA,CAAMuB,OAAO;MAC1D,OAAO;QACLxB,eAAA;MACF;IACF,EAAE,OAAO6B,IAAA,EAAM;MACb7B,eAAA;IACF;EACF,GAAG,CACDX,SAAA,EACAD,GAAA,EACAV,cAAA,EACAF,EAAA,EACAkB,CAAA,EACAb,aAAA,EACAmB,eAAA,EACAP,IAAA,EACAX,KAAA,EACAU,MAAA,EACAL,UAAA,EACAP,oBAAA,EACAD,SAAA,EACAY,gBAAA,EACAI,oBAAA,EACAG,kBAAA,CACD;EAED,IAAItB,EAAA,EAAI;IACN,oBACEsD,KAAA,CAACtE,QAAA;8BACCuE,IAAA,CAAC7D,MAAA;QACC8D,WAAA,EAAY;QACZxD,EAAA,EAAIC,QAAA;QAEJwD,OAAA,EAASA,CAAA;UACPrC,SAAA,CAAUC,SAAA;QACZ;kBAECH,CAAA,CAAE;SALEjB,QAAA,G,aAOPsD,IAAA,CAAC5D,iBAAA;QACCwC,IAAA,eACEmB,KAAA,CAACtE,QAAA;kCACCuE,IAAA,CAAC3D,WAAA;YACC8D,QAAA,EAAU;cACR,KAAKC,CAAC;gBAAEC;cAAQ,CAAE,kBAAKL,IAAA,CAAC;0BAAQK;;YAClC;YACAC,OAAA,EACE9C,gBAAA,EAAkBqB,QAAA,EAAUC,MAAA,GACxB,kCACA;YAENnB,CAAA,EAAGA,CAAA;YACH4C,SAAA,EAAW;cACTf,KAAA,EAAOpE,cAAA,CAAe0B,aAAA,EAAeY,IAAA;cACrCX,KAAA,EAAOC,cAAA,IAAkBD,KAAA,IAASN;YACpC;cAEDe,gBAAA,EAAkBqB,QAAA,EAAUC,MAAA,iBAC3BkB,IAAA,CAAC;YAAIQ,SAAA,EAAW,GAAGlE,SAAA,YAAqB;sBACtC,aAAA0D,IAAA,CAACnE,aAAA;cACC4E,OAAA,EAAS1C,kBAAA;cACTtB,EAAA,EAAG;cACH+C,KAAA,EAAO7B,CAAA,CAAE;cACT+C,IAAA,EAAK;cACLC,QAAA,EAAWC,CAAA,IAAM5C,qBAAA,CAAsB4C,CAAA,CAAEC,MAAM,CAACJ,OAAO;;;;QAMjED,SAAA,EAAWlE,SAAA;QACXwE,eAAA,EAAiBnD,CAAA,CAAE;QACnBoD,OAAA,EAASpD,CAAA,CAAE;QACXG,SAAA,EAAWA,SAAA;QACXkD,SAAA,EAAW7C;;;EAInB;EAEA,OAAO;AACT","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","useRouter","formatAdminURL","qs","React","Fragment","useCallback","useState","toast","CheckboxInput","useConfig","useDocumentTitle","useRouteTransition","useTranslation","requests","Button","ConfirmationModal","Translation","baseClass","RestoreButton","props","id","buttonId","collectionSlug","onRestore","redirectAfterRestore","singularLabel","title","titleFromProps","config","routes","admin","adminRoute","api","serverURL","getEntityConfig","collectionConfig","router","i18n","t","startRouteTransition","openModal","modalSlug","restoreAsPublished","setRestoreAsPublished","addDefaultError","error","handleRestore","url","stringify","trash","where","and","equals","deletedAt","exists","body","versions","drafts","_status","res","patch","JSON","headers","language","json","status","success","label","message","push","path","errors","forEach","_err","_jsxs","_jsx","buttonStyle","onClick","elements","1","children","i18nKey","variables","className","checked","name","onToggle","e","target","confirmingLabel","heading","onConfirm"],"sources":["../../../src/elements/RestoreButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { SanitizedCollectionConfig } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { CheckboxInput } from '../../fields/Checkbox/Input.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentTitle } from '../../providers/DocumentTitle/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { requests } from '../../utilities/api.js'\nimport { Button } from '../Button/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { Translation } from '../Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'restore-button'\n\nexport type Props = {\n readonly buttonId?: string\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly id?: string\n readonly onRestore?: DocumentDrawerContextType['onRestore']\n readonly redirectAfterRestore?: boolean\n readonly singularLabel: SanitizedCollectionConfig['labels']['singular']\n readonly title?: string\n}\n\nexport const RestoreButton: React.FC<Props> = (props) => {\n const {\n id,\n buttonId,\n collectionSlug,\n onRestore,\n redirectAfterRestore = true,\n singularLabel,\n title: titleFromProps,\n } = props\n\n const {\n config: {\n routes: { admin: adminRoute, api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { title } = useDocumentTitle()\n const { startRouteTransition } = useRouteTransition()\n const { openModal } = useModal()\n\n const modalSlug = `restore-${id}`\n\n const [restoreAsPublished, setRestoreAsPublished] = useState(false)\n\n const addDefaultError = useCallback(() => {\n toast.error(t('error:restoringTitle', { title }))\n }, [t, title])\n\n const handleRestore = useCallback(async () => {\n try {\n const url = `${serverURL}${api}/${collectionSlug}?${qs.stringify({\n trash: true,\n where: {\n and: [{ id: { equals: id } }, { deletedAt: { exists: true } }],\n },\n })}`\n\n const body: Record<string, unknown> = {\n deletedAt: null,\n }\n\n // Only include _status if drafts are enabled\n if (collectionConfig?.versions?.drafts) {\n body._status = restoreAsPublished ? 'published' : 'draft'\n }\n\n const res = await requests.patch(url, {\n body: JSON.stringify(body),\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n })\n\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleRestored', {\n label: getTranslation(singularLabel, i18n),\n title,\n }) || json.message,\n )\n\n if (redirectAfterRestore) {\n return startRouteTransition(() =>\n router.push(\n formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${id}`,\n serverURL,\n }),\n ),\n )\n }\n\n if (typeof onRestore === 'function') {\n await onRestore({ id, collectionConfig })\n }\n\n return\n }\n\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n addDefaultError()\n }\n } catch (_err) {\n addDefaultError()\n }\n }, [\n serverURL,\n api,\n collectionSlug,\n id,\n t,\n singularLabel,\n addDefaultError,\n i18n,\n title,\n router,\n adminRoute,\n redirectAfterRestore,\n onRestore,\n collectionConfig,\n startRouteTransition,\n restoreAsPublished,\n ])\n\n if (id) {\n return (\n <Fragment>\n <Button\n buttonStyle=\"primary\"\n id={buttonId}\n key={buttonId}\n onClick={() => {\n openModal(modalSlug)\n }}\n >\n {t('general:restore')}\n </Button>\n <ConfirmationModal\n body={\n <Fragment>\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey={\n collectionConfig?.versions?.drafts\n ? 'general:aboutToRestoreAsDraft'\n : 'general:aboutToRestore'\n }\n t={t}\n variables={{\n label: getTranslation(singularLabel, i18n),\n title: titleFromProps || title || id,\n }}\n />\n {collectionConfig?.versions?.drafts && (\n <div className={`${baseClass}__checkbox`}>\n <CheckboxInput\n checked={restoreAsPublished}\n id=\"restore-as-published\"\n label={t('general:restoreAsPublished')}\n name=\"restore-as-published\"\n onToggle={(e) => setRestoreAsPublished(e.target.checked)}\n />\n </div>\n )}\n </Fragment>\n }\n className={baseClass}\n confirmingLabel={t('general:restoring')}\n heading={t('general:confirmRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StayLoggedIn/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAU1C,eAAO,MAAM,qBAAqB,mBAAmB,CAAA;AAErD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EA0CrC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/StayLoggedIn/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAU1C,eAAO,MAAM,qBAAqB,mBAAmB,CAAA;AAErD,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EA4CrC,CAAA"}
@@ -12,7 +12,7 @@ import { useTranslation } from '../../providers/Translation/index.js';
12
12
  import { ConfirmationModal } from '../ConfirmationModal/index.js';
13
13
  export const stayLoggedInModalSlug = 'stay-logged-in';
14
14
  export const StayLoggedInModal = () => {
15
- const $ = _c(11);
15
+ const $ = _c(12);
16
16
  const {
17
17
  refreshCookie
18
18
  } = useAuth();
@@ -22,7 +22,8 @@ export const StayLoggedInModal = () => {
22
22
  } = useConfig();
23
23
  const {
24
24
  admin: t0,
25
- routes: t1
25
+ routes: t1,
26
+ serverURL
26
27
  } = config;
27
28
  const {
28
29
  routes: t2
@@ -40,33 +41,35 @@ export const StayLoggedInModal = () => {
40
41
  startRouteTransition
41
42
  } = useRouteTransition();
42
43
  let t3;
43
- if ($[0] !== adminRoute || $[1] !== logoutRoute || $[2] !== router || $[3] !== startRouteTransition) {
44
+ if ($[0] !== adminRoute || $[1] !== logoutRoute || $[2] !== router || $[3] !== serverURL || $[4] !== startRouteTransition) {
44
45
  t3 = () => startRouteTransition(() => router.push(formatAdminURL({
45
46
  adminRoute,
46
- path: logoutRoute
47
+ path: logoutRoute,
48
+ serverURL
47
49
  })));
48
50
  $[0] = adminRoute;
49
51
  $[1] = logoutRoute;
50
52
  $[2] = router;
51
- $[3] = startRouteTransition;
52
- $[4] = t3;
53
+ $[3] = serverURL;
54
+ $[4] = startRouteTransition;
55
+ $[5] = t3;
53
56
  } else {
54
- t3 = $[4];
57
+ t3 = $[5];
55
58
  }
56
59
  const onConfirm = t3;
57
60
  let t4;
58
- if ($[5] !== refreshCookie) {
61
+ if ($[6] !== refreshCookie) {
59
62
  t4 = () => {
60
63
  refreshCookie();
61
64
  };
62
- $[5] = refreshCookie;
63
- $[6] = t4;
65
+ $[6] = refreshCookie;
66
+ $[7] = t4;
64
67
  } else {
65
- t4 = $[6];
68
+ t4 = $[7];
66
69
  }
67
70
  const onCancel = t4;
68
71
  let t5;
69
- if ($[7] !== onCancel || $[8] !== onConfirm || $[9] !== t) {
72
+ if ($[8] !== onCancel || $[9] !== onConfirm || $[10] !== t) {
70
73
  t5 = _jsx(ConfirmationModal, {
71
74
  body: t("authentication:youAreInactive"),
72
75
  cancelLabel: t("authentication:stayLoggedIn"),
@@ -76,12 +79,12 @@ export const StayLoggedInModal = () => {
76
79
  onCancel,
77
80
  onConfirm
78
81
  });
79
- $[7] = onCancel;
80
- $[8] = onConfirm;
81
- $[9] = t;
82
- $[10] = t5;
82
+ $[8] = onCancel;
83
+ $[9] = onConfirm;
84
+ $[10] = t;
85
+ $[11] = t5;
83
86
  } else {
84
- t5 = $[10];
87
+ t5 = $[11];
85
88
  }
86
89
  return t5;
87
90
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useRouter","formatAdminURL","React","useCallback","useAuth","useConfig","useRouteTransition","useTranslation","ConfirmationModal","stayLoggedInModalSlug","StayLoggedInModal","$","refreshCookie","router","config","admin","t0","routes","t1","t2","logout","logoutRoute","adminRoute","t","startRouteTransition","t3","push","path","onConfirm","t4","onCancel","t5","_jsx","body","cancelLabel","confirmLabel","heading","modalSlug"],"sources":["../../../src/elements/StayLoggedIn/index.tsx"],"sourcesContent":["'use client'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback } from 'react'\n\nimport type { OnCancel } from '../ConfirmationModal/index.js'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\n\nexport const stayLoggedInModalSlug = 'stay-logged-in'\n\nexport const StayLoggedInModal: React.FC = () => {\n const { refreshCookie } = useAuth()\n\n const router = useRouter()\n const { config } = useConfig()\n\n const {\n admin: {\n routes: { logout: logoutRoute },\n },\n routes: { admin: adminRoute },\n } = config\n\n const { t } = useTranslation()\n const { startRouteTransition } = useRouteTransition()\n\n const onConfirm = useCallback(() => {\n return startRouteTransition(() =>\n router.push(\n formatAdminURL({\n adminRoute,\n path: logoutRoute,\n }),\n ),\n )\n }, [router, startRouteTransition, adminRoute, logoutRoute])\n\n const onCancel: OnCancel = useCallback(() => {\n refreshCookie()\n }, [refreshCookie])\n\n return (\n <ConfirmationModal\n body={t('authentication:youAreInactive')}\n cancelLabel={t('authentication:stayLoggedIn')}\n confirmLabel={t('authentication:logOut')}\n heading={t('authentication:stayLoggedIn')}\n modalSlug={stayLoggedInModalSlug}\n onCancel={onCancel}\n onConfirm={onConfirm}\n />\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,WAAW,QAAQ;AAInC,SAASC,OAAO,QAAQ;AACxB,SAASC,SAAS,QAAQ;AAC1B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAElC,OAAO,MAAMC,qBAAA,GAAwB;AAErC,OAAO,MAAMC,iBAAA,GAA8BA,CAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EACzC;IAAAa;EAAA,IAA0BR,OAAA;EAE1B,MAAAS,MAAA,GAAeb,SAAA;EACf;IAAAc;EAAA,IAAmBT,SAAA;EAEnB;IAAAU,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC;EAAA,IAKIJ,MAAA;EAJK;IAAAG,MAAA,EAAAE;EAAA,IAAAH,EAEN;EADS;IAAAI,MAAA,EAAAC;EAAA,IAAAF,EAAuB;EAEzB;IAAAJ,KAAA,EAAAO;EAAA,IAAAJ,EAAqB;EAG/B;IAAAK;EAAA,IAAchB,cAAA;EACd;IAAAiB;EAAA,IAAiClB,kBAAA;EAAA,IAAAmB,EAAA;EAAA,IAAAd,CAAA,QAAAW,UAAA,IAAAX,CAAA,QAAAU,WAAA,IAAAV,CAAA,QAAAE,MAAA,IAAAF,CAAA,QAAAa,oBAAA;IAEHC,EAAA,GAAAA,CAAA,KACrBD,oBAAA,OACLX,MAAA,CAAAa,IAAA,CACEzB,cAAA;MAAAqB,UAAA;MAAAK,IAAA,EAEQN;IAAA,CACR;IAGNV,CAAA,MAAAW,UAAA;IAAAX,CAAA,MAAAU,WAAA;IAAAV,CAAA,MAAAE,MAAA;IAAAF,CAAA,MAAAa,oBAAA;IAAAb,CAAA,MAAAc,EAAA;EAAA;IAAAA,EAAA,GAAAd,CAAA;EAAA;EATA,MAAAiB,SAAA,GAAkBH,EASwC;EAAA,IAAAI,EAAA;EAAA,IAAAlB,CAAA,QAAAC,aAAA;IAEnBiB,EAAA,GAAAA,CAAA;MACrCjB,aAAA;IAAA;IACFD,CAAA,MAAAC,aAAA;IAAAD,CAAA,MAAAkB,EAAA;EAAA;IAAAA,EAAA,GAAAlB,CAAA;EAAA;EAFA,MAAAmB,QAAA,GAA2BD,EAET;EAAA,IAAAE,EAAA;EAAA,IAAApB,CAAA,QAAAmB,QAAA,IAAAnB,CAAA,QAAAiB,SAAA,IAAAjB,CAAA,QAAAY,CAAA;IAGhBQ,EAAA,GAAAC,IAAA,CAAAxB,iBAAA;MAAAyB,IAAA,EACQV,CAAA,CAAE;MAAAW,WAAA,EACKX,CAAA,CAAE;MAAAY,YAAA,EACDZ,CAAA,CAAE;MAAAa,OAAA,EACPb,CAAA,CAAE;MAAAc,SAAA,EAAA5B,qBAAA;MAAAqB,QAAA;MAAAF;IAAA,C;;;;;;;;SAJbG,E;CAUJ","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useRouter","formatAdminURL","React","useCallback","useAuth","useConfig","useRouteTransition","useTranslation","ConfirmationModal","stayLoggedInModalSlug","StayLoggedInModal","$","refreshCookie","router","config","admin","t0","routes","t1","serverURL","t2","logout","logoutRoute","adminRoute","t","startRouteTransition","t3","push","path","onConfirm","t4","onCancel","t5","_jsx","body","cancelLabel","confirmLabel","heading","modalSlug"],"sources":["../../../src/elements/StayLoggedIn/index.tsx"],"sourcesContent":["'use client'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { useCallback } from 'react'\n\nimport type { OnCancel } from '../ConfirmationModal/index.js'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useRouteTransition } from '../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\n\nexport const stayLoggedInModalSlug = 'stay-logged-in'\n\nexport const StayLoggedInModal: React.FC = () => {\n const { refreshCookie } = useAuth()\n\n const router = useRouter()\n const { config } = useConfig()\n\n const {\n admin: {\n routes: { logout: logoutRoute },\n },\n routes: { admin: adminRoute },\n serverURL,\n } = config\n\n const { t } = useTranslation()\n const { startRouteTransition } = useRouteTransition()\n\n const onConfirm = useCallback(() => {\n return startRouteTransition(() =>\n router.push(\n formatAdminURL({\n adminRoute,\n path: logoutRoute,\n serverURL,\n }),\n ),\n )\n }, [router, startRouteTransition, adminRoute, logoutRoute, serverURL])\n\n const onCancel: OnCancel = useCallback(() => {\n refreshCookie()\n }, [refreshCookie])\n\n return (\n <ConfirmationModal\n body={t('authentication:youAreInactive')}\n cancelLabel={t('authentication:stayLoggedIn')}\n confirmLabel={t('authentication:logOut')}\n heading={t('authentication:stayLoggedIn')}\n modalSlug={stayLoggedInModalSlug}\n onCancel={onCancel}\n onConfirm={onConfirm}\n />\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,WAAW,QAAQ;AAInC,SAASC,OAAO,QAAQ;AACxB,SAASC,SAAS,QAAQ;AAC1B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAElC,OAAO,MAAMC,qBAAA,GAAwB;AAErC,OAAO,MAAMC,iBAAA,GAA8BA,CAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EACzC;IAAAa;EAAA,IAA0BR,OAAA;EAE1B,MAAAS,MAAA,GAAeb,SAAA;EACf;IAAAc;EAAA,IAAmBT,SAAA;EAEnB;IAAAU,KAAA,EAAAC,EAAA;IAAAC,MAAA,EAAAC,EAAA;IAAAC;EAAA,IAMIL,MAAA;EALK;IAAAG,MAAA,EAAAG;EAAA,IAAAJ,EAEN;EADS;IAAAK,MAAA,EAAAC;EAAA,IAAAF,EAAuB;EAEzB;IAAAL,KAAA,EAAAQ;EAAA,IAAAL,EAAqB;EAI/B;IAAAM;EAAA,IAAcjB,cAAA;EACd;IAAAkB;EAAA,IAAiCnB,kBAAA;EAAA,IAAAoB,EAAA;EAAA,IAAAf,CAAA,QAAAY,UAAA,IAAAZ,CAAA,QAAAW,WAAA,IAAAX,CAAA,QAAAE,MAAA,IAAAF,CAAA,QAAAQ,SAAA,IAAAR,CAAA,QAAAc,oBAAA;IAEHC,EAAA,GAAAA,CAAA,KACrBD,oBAAA,OACLZ,MAAA,CAAAc,IAAA,CACE1B,cAAA;MAAAsB,UAAA;MAAAK,IAAA,EAEQN,WAAA;MAAAH;IAAA,CAER;IAGNR,CAAA,MAAAY,UAAA;IAAAZ,CAAA,MAAAW,WAAA;IAAAX,CAAA,MAAAE,MAAA;IAAAF,CAAA,MAAAQ,SAAA;IAAAR,CAAA,MAAAc,oBAAA;IAAAd,CAAA,MAAAe,EAAA;EAAA;IAAAA,EAAA,GAAAf,CAAA;EAAA;EAVA,MAAAkB,SAAA,GAAkBH,EAUmD;EAAA,IAAAI,EAAA;EAAA,IAAAnB,CAAA,QAAAC,aAAA;IAE9BkB,EAAA,GAAAA,CAAA;MACrClB,aAAA;IAAA;IACFD,CAAA,MAAAC,aAAA;IAAAD,CAAA,MAAAmB,EAAA;EAAA;IAAAA,EAAA,GAAAnB,CAAA;EAAA;EAFA,MAAAoB,QAAA,GAA2BD,EAET;EAAA,IAAAE,EAAA;EAAA,IAAArB,CAAA,QAAAoB,QAAA,IAAApB,CAAA,QAAAkB,SAAA,IAAAlB,CAAA,SAAAa,CAAA;IAGhBQ,EAAA,GAAAC,IAAA,CAAAzB,iBAAA;MAAA0B,IAAA,EACQV,CAAA,CAAE;MAAAW,WAAA,EACKX,CAAA,CAAE;MAAAY,YAAA,EACDZ,CAAA,CAAE;MAAAa,OAAA,EACPb,CAAA,CAAE;MAAAc,SAAA,EAAA7B,qBAAA;MAAAsB,QAAA;MAAAF;IAAA,C;;;;;;;;SAJbG,E;CAUJ","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAqB,MAAM,SAAS,CAAA;AAI3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA8J3D,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAqB,MAAM,SAAS,CAAA;AAI3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAWzB,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAgK3D,CAAA"}
@@ -14,7 +14,7 @@ import { Link } from '../../Link/index.js';
14
14
  import { CodeCell } from './fields/Code/index.js';
15
15
  import { cellComponents } from './fields/index.js';
16
16
  export const DefaultCell = props => {
17
- const $ = _c(16);
17
+ const $ = _c(17);
18
18
  const {
19
19
  cellData,
20
20
  className: classNameFromProps,
@@ -38,14 +38,15 @@ export const DefaultCell = props => {
38
38
  getEntityConfig
39
39
  } = useConfig();
40
40
  const {
41
- routes: t2
41
+ routes: t2,
42
+ serverURL
42
43
  } = t1;
43
44
  const {
44
45
  admin: adminRoute
45
46
  } = t2;
46
47
  let t3;
47
48
  let t4;
48
- if ($[0] !== admin || $[1] !== adminRoute || $[2] !== cellData || $[3] !== classNameFromProps || $[4] !== collectionSlug || $[5] !== field || $[6] !== getEntityConfig || $[7] !== i18n || $[8] !== link || $[9] !== linkURL || $[10] !== onClickFromProps || $[11] !== props || $[12] !== rowData || $[13] !== viewType) {
49
+ if ($[0] !== admin || $[1] !== adminRoute || $[2] !== cellData || $[3] !== classNameFromProps || $[4] !== collectionSlug || $[5] !== field || $[6] !== getEntityConfig || $[7] !== i18n || $[8] !== link || $[9] !== linkURL || $[10] !== onClickFromProps || $[11] !== props || $[12] !== rowData || $[13] !== serverURL || $[14] !== viewType) {
49
50
  t4 = Symbol.for("react.early_return_sentinel");
50
51
  bb0: {
51
52
  const collectionConfig = getEntityConfig({
@@ -66,7 +67,8 @@ export const DefaultCell = props => {
66
67
  } else {
67
68
  wrapElementProps.href = collectionConfig?.slug ? formatAdminURL({
68
69
  adminRoute,
69
- path: `/collections/${collectionConfig?.slug}${viewType === "trash" ? "/trash" : ""}/${encodeURIComponent(rowData.id)}`
70
+ path: `/collections/${collectionConfig?.slug}${viewType === "trash" ? "/trash" : ""}/${encodeURIComponent(rowData.id)}`,
71
+ serverURL
70
72
  }) : "";
71
73
  }
72
74
  }
@@ -161,12 +163,13 @@ export const DefaultCell = props => {
161
163
  $[10] = onClickFromProps;
162
164
  $[11] = props;
163
165
  $[12] = rowData;
164
- $[13] = viewType;
165
- $[14] = t3;
166
- $[15] = t4;
166
+ $[13] = serverURL;
167
+ $[14] = viewType;
168
+ $[15] = t3;
169
+ $[16] = t4;
167
170
  } else {
168
- t3 = $[14];
169
- t4 = $[15];
171
+ t3 = $[15];
172
+ t4 = $[16];
170
173
  }
171
174
  if (t4 !== Symbol.for("react.early_return_sentinel")) {
172
175
  return t4;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","fieldAffectsData","fieldIsID","React","useConfig","useTranslation","formatAdminURL","getDisplayedFieldValue","isValidReactElement","Link","CodeCell","cellComponents","DefaultCell","props","$","cellData","className","classNameFromProps","collectionSlug","field","t0","link","linkURL","onClick","onClickFromProps","rowData","viewType","admin","i18n","config","t1","getEntityConfig","routes","t2","adminRoute","t3","t4","Symbol","for","collectionConfig","classNameFromConfigContext","undefined","WrapElement","wrapElementProps","prefetch","href","slug","path","encodeURIComponent","id","type","_jsx","children","nowrap","displayedValue","DefaultCellComponent","CellComponent","upload","name","FileCellComponent","File","_jsxs","t","label","JSON","stringify","options","length","classes","Array","isArray","map","_temp","join","className_0","filter","Boolean","value"],"sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps, UploadFieldClient } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldAffectsData, fieldIsID } from 'payload/shared'\nimport React from 'react' // TODO: abstract this out to support all routers\n\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { getDisplayedFieldValue } from '../../../utilities/getDisplayedFieldValue.js'\nimport { isValidReactElement } from '../../../utilities/isValidReactElement.js'\nimport { Link } from '../../Link/index.js'\nimport { CodeCell } from './fields/Code/index.js'\nimport { cellComponents } from './fields/index.js'\n\nexport const DefaultCell: React.FC<DefaultCellComponentProps> = (props) => {\n const {\n cellData,\n className: classNameFromProps,\n collectionSlug,\n field,\n field: { admin },\n link,\n linkURL,\n onClick: onClickFromProps,\n rowData,\n viewType,\n } = props\n\n const { i18n } = useTranslation()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const classNameFromConfigContext = admin && 'className' in admin ? admin.className : undefined\n\n const className =\n classNameFromProps ||\n (field.admin && 'className' in field.admin ? field.admin.className : null) ||\n classNameFromConfigContext\n\n const onClick = onClickFromProps\n\n let WrapElement: React.ComponentType<any> | string = 'span'\n\n const wrapElementProps: {\n className?: string\n href?: string\n onClick?: () => void\n prefetch?: false\n type?: 'button'\n } = {\n className,\n }\n\n if (link) {\n wrapElementProps.prefetch = false\n WrapElement = Link\n\n // Use custom linkURL if provided, otherwise use default URL generation\n if (linkURL) {\n wrapElementProps.href = linkURL\n } else {\n wrapElementProps.href = collectionConfig?.slug\n ? formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig?.slug}${viewType === 'trash' ? '/trash' : ''}/${encodeURIComponent(rowData.id)}`,\n })\n : ''\n }\n }\n\n if (typeof onClick === 'function') {\n WrapElement = 'button'\n wrapElementProps.type = 'button'\n wrapElementProps.onClick = () => {\n onClick({\n cellData,\n collectionSlug: collectionConfig?.slug,\n rowData,\n })\n }\n }\n\n if (fieldIsID(field)) {\n return (\n <WrapElement {...wrapElementProps}>\n <CodeCell\n cellData={`ID: ${cellData}`}\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n field={{\n ...field,\n type: 'code',\n }}\n nowrap\n rowData={rowData}\n />\n </WrapElement>\n )\n }\n\n const displayedValue = getDisplayedFieldValue(cellData, field, i18n)\n\n const DefaultCellComponent: React.FC<DefaultCellComponentProps> =\n typeof cellData !== 'undefined' && cellComponents[field.type]\n\n let CellComponent: React.ReactNode = null\n\n // Handle JSX labels before using DefaultCellComponent\n if (isValidReactElement(displayedValue)) {\n CellComponent = displayedValue\n } else if (DefaultCellComponent) {\n CellComponent = <DefaultCellComponent cellData={cellData} rowData={rowData} {...props} />\n } else if (!DefaultCellComponent) {\n // DefaultCellComponent does not exist for certain field types like `text`\n if (\n collectionConfig?.upload &&\n fieldAffectsData(field) &&\n field.name === 'filename' &&\n field.type === 'text'\n ) {\n const FileCellComponent = cellComponents.File\n\n CellComponent = (\n <FileCellComponent\n cellData={cellData}\n rowData={rowData}\n {...(props as DefaultCellComponentProps<UploadFieldClient>)}\n collectionConfig={collectionConfig}\n field={field}\n />\n )\n } else {\n return (\n <WrapElement {...wrapElementProps}>\n {(displayedValue === '' ||\n typeof displayedValue === 'undefined' ||\n displayedValue === null) &&\n i18n.t('general:noLabel', {\n label: getTranslation(('label' in field ? field.label : null) || 'data', i18n),\n })}\n {typeof displayedValue === 'string' && displayedValue}\n {typeof displayedValue === 'number' && displayedValue}\n {typeof displayedValue === 'object' &&\n displayedValue !== null &&\n JSON.stringify(displayedValue)}\n </WrapElement>\n )\n }\n }\n\n if ((field.type === 'select' || field.type === 'radio') && field.options.length && cellData) {\n const classes = Array.isArray(cellData)\n ? cellData.map((value) => `selected--${value}`).join(' ')\n : `selected--${cellData}`\n\n const className = [wrapElementProps.className, classes].filter(Boolean).join(' ')\n\n return (\n <WrapElement {...wrapElementProps} className={className}>\n {CellComponent}\n </WrapElement>\n )\n }\n\n return <WrapElement {...wrapElementProps}>{CellComponent}</WrapElement>\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","fieldAffectsData","fieldIsID","React","useConfig","useTranslation","formatAdminURL","getDisplayedFieldValue","isValidReactElement","Link","CodeCell","cellComponents","DefaultCell","props","$","cellData","className","classNameFromProps","collectionSlug","field","t0","link","linkURL","onClick","onClickFromProps","rowData","viewType","admin","i18n","config","t1","getEntityConfig","routes","t2","serverURL","adminRoute","t3","t4","Symbol","for","collectionConfig","classNameFromConfigContext","undefined","WrapElement","wrapElementProps","prefetch","href","slug","path","encodeURIComponent","id","type","_jsx","children","nowrap","displayedValue","DefaultCellComponent","CellComponent","upload","name","FileCellComponent","File","_jsxs","t","label","JSON","stringify","options","length","classes","Array","isArray","map","_temp","join","className_0","filter","Boolean","value"],"sources":["../../../../src/elements/Table/DefaultCell/index.tsx"],"sourcesContent":["'use client'\nimport type { DefaultCellComponentProps, UploadFieldClient } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { fieldAffectsData, fieldIsID } from 'payload/shared'\nimport React from 'react' // TODO: abstract this out to support all routers\n\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { getDisplayedFieldValue } from '../../../utilities/getDisplayedFieldValue.js'\nimport { isValidReactElement } from '../../../utilities/isValidReactElement.js'\nimport { Link } from '../../Link/index.js'\nimport { CodeCell } from './fields/Code/index.js'\nimport { cellComponents } from './fields/index.js'\n\nexport const DefaultCell: React.FC<DefaultCellComponentProps> = (props) => {\n const {\n cellData,\n className: classNameFromProps,\n collectionSlug,\n field,\n field: { admin },\n link,\n linkURL,\n onClick: onClickFromProps,\n rowData,\n viewType,\n } = props\n\n const { i18n } = useTranslation()\n\n const {\n config: {\n routes: { admin: adminRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const classNameFromConfigContext = admin && 'className' in admin ? admin.className : undefined\n\n const className =\n classNameFromProps ||\n (field.admin && 'className' in field.admin ? field.admin.className : null) ||\n classNameFromConfigContext\n\n const onClick = onClickFromProps\n\n let WrapElement: React.ComponentType<any> | string = 'span'\n\n const wrapElementProps: {\n className?: string\n href?: string\n onClick?: () => void\n prefetch?: false\n type?: 'button'\n } = {\n className,\n }\n\n if (link) {\n wrapElementProps.prefetch = false\n WrapElement = Link\n\n // Use custom linkURL if provided, otherwise use default URL generation\n if (linkURL) {\n wrapElementProps.href = linkURL\n } else {\n wrapElementProps.href = collectionConfig?.slug\n ? formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig?.slug}${viewType === 'trash' ? '/trash' : ''}/${encodeURIComponent(rowData.id)}`,\n serverURL,\n })\n : ''\n }\n }\n\n if (typeof onClick === 'function') {\n WrapElement = 'button'\n wrapElementProps.type = 'button'\n wrapElementProps.onClick = () => {\n onClick({\n cellData,\n collectionSlug: collectionConfig?.slug,\n rowData,\n })\n }\n }\n\n if (fieldIsID(field)) {\n return (\n <WrapElement {...wrapElementProps}>\n <CodeCell\n cellData={`ID: ${cellData}`}\n collectionConfig={collectionConfig}\n collectionSlug={collectionSlug}\n field={{\n ...field,\n type: 'code',\n }}\n nowrap\n rowData={rowData}\n />\n </WrapElement>\n )\n }\n\n const displayedValue = getDisplayedFieldValue(cellData, field, i18n)\n\n const DefaultCellComponent: React.FC<DefaultCellComponentProps> =\n typeof cellData !== 'undefined' && cellComponents[field.type]\n\n let CellComponent: React.ReactNode = null\n\n // Handle JSX labels before using DefaultCellComponent\n if (isValidReactElement(displayedValue)) {\n CellComponent = displayedValue\n } else if (DefaultCellComponent) {\n CellComponent = <DefaultCellComponent cellData={cellData} rowData={rowData} {...props} />\n } else if (!DefaultCellComponent) {\n // DefaultCellComponent does not exist for certain field types like `text`\n if (\n collectionConfig?.upload &&\n fieldAffectsData(field) &&\n field.name === 'filename' &&\n field.type === 'text'\n ) {\n const FileCellComponent = cellComponents.File\n\n CellComponent = (\n <FileCellComponent\n cellData={cellData}\n rowData={rowData}\n {...(props as DefaultCellComponentProps<UploadFieldClient>)}\n collectionConfig={collectionConfig}\n field={field}\n />\n )\n } else {\n return (\n <WrapElement {...wrapElementProps}>\n {(displayedValue === '' ||\n typeof displayedValue === 'undefined' ||\n displayedValue === null) &&\n i18n.t('general:noLabel', {\n label: getTranslation(('label' in field ? field.label : null) || 'data', i18n),\n })}\n {typeof displayedValue === 'string' && displayedValue}\n {typeof displayedValue === 'number' && displayedValue}\n {typeof displayedValue === 'object' &&\n displayedValue !== null &&\n JSON.stringify(displayedValue)}\n </WrapElement>\n )\n }\n }\n\n if ((field.type === 'select' || field.type === 'radio') && field.options.length && cellData) {\n const classes = Array.isArray(cellData)\n ? cellData.map((value) => `selected--${value}`).join(' ')\n : `selected--${cellData}`\n\n const className = [wrapElementProps.className, classes].filter(Boolean).join(' ')\n\n return (\n <WrapElement {...wrapElementProps} className={className}>\n {CellComponent}\n </WrapElement>\n )\n }\n\n return <WrapElement {...wrapElementProps}>{CellComponent}</WrapElement>\n}\n"],"mappings":"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","ignoreList":[]}