@payloadcms/next 3.35.0-canary.0 → 3.35.0-internal.b3d367c

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 (113) hide show
  1. package/dist/prod/styles.css +1 -1
  2. package/dist/views/Version/Default/SetStepNav.d.ts +2 -2
  3. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  4. package/dist/views/Version/Default/SetStepNav.js +4 -5
  5. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  6. package/dist/views/Version/Default/index.d.ts.map +1 -1
  7. package/dist/views/Version/Default/index.js +332 -127
  8. package/dist/views/Version/Default/index.js.map +1 -1
  9. package/dist/views/Version/Default/index.scss +102 -32
  10. package/dist/views/Version/Default/types.d.ts +12 -8
  11. package/dist/views/Version/Default/types.d.ts.map +1 -1
  12. package/dist/views/Version/Default/types.js.map +1 -1
  13. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +4 -4
  14. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
  15. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +32 -33
  16. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  17. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.scss +30 -3
  18. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts +6 -1
  19. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -1
  20. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +21 -17
  21. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
  22. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +4 -3
  23. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  24. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +80 -55
  25. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  26. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +11 -11
  27. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  28. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts +4 -0
  29. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts.map +1 -0
  30. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +78 -0
  31. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -0
  32. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.scss +4 -0
  33. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +11 -11
  34. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  35. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.scss +0 -10
  36. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +20 -20
  37. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  38. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +3 -5
  39. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  40. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +49 -58
  41. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  42. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +0 -11
  43. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  44. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +39 -45
  45. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  46. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +0 -11
  47. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  48. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +37 -37
  49. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  50. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.scss +0 -11
  51. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  52. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +77 -60
  53. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  54. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +0 -11
  55. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  56. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +2 -1
  57. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  58. package/dist/views/Version/RenderFieldsToDiff/index.js +1 -0
  59. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
  60. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  61. package/dist/views/Version/Restore/index.js +1 -1
  62. package/dist/views/Version/Restore/index.js.map +1 -1
  63. package/dist/views/Version/Restore/index.scss +6 -1
  64. package/dist/views/Version/SelectComparison/VersionPillLabel.d.ts +6 -0
  65. package/dist/views/Version/SelectComparison/VersionPillLabel.d.ts.map +1 -0
  66. package/dist/views/Version/SelectComparison/VersionPillLabel.js +70 -0
  67. package/dist/views/Version/SelectComparison/VersionPillLabel.js.map +1 -0
  68. package/dist/views/Version/SelectComparison/formatVersionPill.d.ts +8 -0
  69. package/dist/views/Version/SelectComparison/formatVersionPill.d.ts.map +1 -0
  70. package/dist/views/Version/SelectComparison/formatVersionPill.js +24 -0
  71. package/dist/views/Version/SelectComparison/formatVersionPill.js.map +1 -0
  72. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
  73. package/dist/views/Version/SelectComparison/index.js +26 -68
  74. package/dist/views/Version/SelectComparison/index.js.map +1 -1
  75. package/dist/views/Version/SelectComparison/index.scss +0 -4
  76. package/dist/views/Version/SelectComparison/types.d.ts +4 -4
  77. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
  78. package/dist/views/Version/SelectComparison/types.js.map +1 -1
  79. package/dist/views/Version/SelectLocales/index.d.ts +9 -2
  80. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  81. package/dist/views/Version/SelectLocales/index.js +33 -60
  82. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  83. package/dist/views/Version/index.d.ts.map +1 -1
  84. package/dist/views/Version/index.js +105 -56
  85. package/dist/views/Version/index.js.map +1 -1
  86. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  87. package/dist/views/Versions/cells/AutosaveCell/index.js +4 -4
  88. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  89. package/dist/views/Versions/getLatestVersion.d.ts +2 -2
  90. package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
  91. package/dist/views/Versions/getLatestVersion.js.map +1 -1
  92. package/package.json +7 -8
  93. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.d.ts +0 -9
  94. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.d.ts.map +0 -1
  95. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js +0 -23
  96. package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js.map +0 -1
  97. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.d.ts +0 -9
  98. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.d.ts.map +0 -1
  99. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js +0 -23
  100. package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js.map +0 -1
  101. package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.d.ts +0 -7
  102. package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.d.ts.map +0 -1
  103. package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js +0 -7
  104. package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js.map +0 -1
  105. package/dist/views/Version/RenderFieldsToDiff/fields/styles.d.ts +0 -3
  106. package/dist/views/Version/RenderFieldsToDiff/fields/styles.d.ts.map +0 -1
  107. package/dist/views/Version/RenderFieldsToDiff/fields/styles.js +0 -37
  108. package/dist/views/Version/RenderFieldsToDiff/fields/styles.js.map +0 -1
  109. package/dist/views/Version/SelectLocales/index.scss +0 -9
  110. package/dist/views/Version/SelectLocales/types.d.ts +0 -7
  111. package/dist/views/Version/SelectLocales/types.d.ts.map +0 -1
  112. package/dist/views/Version/SelectLocales/types.js +0 -2
  113. package/dist/views/Version/SelectLocales/types.js.map +0 -1
@@ -1,4 +1,5 @@
1
1
  import { Collapsible } from './Collapsible/index.js';
2
+ import { DateDiffComponent } from './Date/index.js';
2
3
  import { Group } from './Group/index.js';
3
4
  import { Iterable } from './Iterable/index.js';
4
5
  import { Relationship } from './Relationship/index.js';
@@ -12,7 +13,7 @@ export const diffComponents = {
12
13
  checkbox: Text,
13
14
  code: Text,
14
15
  collapsible: Collapsible,
15
- date: Text,
16
+ date: DateDiffComponent,
16
17
  email: Text,
17
18
  group: Group,
18
19
  join: null,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Collapsible","Group","Iterable","Relationship","Row","Select","Tabs","Text","diffComponents","array","blocks","checkbox","code","collapsible","date","email","group","join","json","number","point","radio","relationship","richText","row","select","tabs","text","textarea","ui","upload"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/fields/index.tsx"],"sourcesContent":["import type { FieldDiffClientProps, FieldTypes } from 'payload'\n\nimport { Collapsible } from './Collapsible/index.js'\nimport { Group } from './Group/index.js'\nimport { Iterable } from './Iterable/index.js'\nimport { Relationship } from './Relationship/index.js'\nimport { Row } from './Row/index.js'\nimport { Select } from './Select/index.js'\nimport { Tabs } from './Tabs/index.js'\nimport { Text } from './Text/index.js'\n\nexport const diffComponents: Record<FieldTypes, React.ComponentType<FieldDiffClientProps>> = {\n array: Iterable,\n blocks: Iterable,\n checkbox: Text,\n code: Text,\n collapsible: Collapsible,\n date: Text,\n email: Text,\n group: Group,\n join: null,\n json: Text,\n number: Text,\n point: Text,\n radio: Select,\n relationship: Relationship,\n richText: Text,\n row: Row,\n select: Select,\n tabs: Tabs,\n text: Text,\n textarea: Text,\n ui: null,\n upload: Relationship,\n}\n"],"mappings":"AAEA,SAASA,WAAW,QAAQ;AAC5B,SAASC,KAAK,QAAQ;AACtB,SAASC,QAAQ,QAAQ;AACzB,SAASC,YAAY,QAAQ;AAC7B,SAASC,GAAG,QAAQ;AACpB,SAASC,MAAM,QAAQ;AACvB,SAASC,IAAI,QAAQ;AACrB,SAASC,IAAI,QAAQ;AAErB,OAAO,MAAMC,cAAA,GAAgF;EAC3FC,KAAA,EAAOP,QAAA;EACPQ,MAAA,EAAQR,QAAA;EACRS,QAAA,EAAUJ,IAAA;EACVK,IAAA,EAAML,IAAA;EACNM,WAAA,EAAab,WAAA;EACbc,IAAA,EAAMP,IAAA;EACNQ,KAAA,EAAOR,IAAA;EACPS,KAAA,EAAOf,KAAA;EACPgB,IAAA,EAAM;EACNC,IAAA,EAAMX,IAAA;EACNY,MAAA,EAAQZ,IAAA;EACRa,KAAA,EAAOb,IAAA;EACPc,KAAA,EAAOhB,MAAA;EACPiB,YAAA,EAAcnB,YAAA;EACdoB,QAAA,EAAUhB,IAAA;EACViB,GAAA,EAAKpB,GAAA;EACLqB,MAAA,EAAQpB,MAAA;EACRqB,IAAA,EAAMpB,IAAA;EACNqB,IAAA,EAAMpB,IAAA;EACNqB,QAAA,EAAUrB,IAAA;EACVsB,EAAA,EAAI;EACJC,MAAA,EAAQ3B;AACV","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["Collapsible","DateDiffComponent","Group","Iterable","Relationship","Row","Select","Tabs","Text","diffComponents","array","blocks","checkbox","code","collapsible","date","email","group","join","json","number","point","radio","relationship","richText","row","select","tabs","text","textarea","ui","upload"],"sources":["../../../../../src/views/Version/RenderFieldsToDiff/fields/index.tsx"],"sourcesContent":["import type { FieldDiffClientProps, FieldTypes } from 'payload'\n\nimport { Collapsible } from './Collapsible/index.js'\nimport { DateDiffComponent } from './Date/index.js'\nimport { Group } from './Group/index.js'\nimport { Iterable } from './Iterable/index.js'\nimport { Relationship } from './Relationship/index.js'\nimport { Row } from './Row/index.js'\nimport { Select } from './Select/index.js'\nimport { Tabs } from './Tabs/index.js'\nimport { Text } from './Text/index.js'\n\nexport const diffComponents: Record<FieldTypes, React.ComponentType<FieldDiffClientProps>> = {\n array: Iterable,\n blocks: Iterable,\n checkbox: Text,\n code: Text,\n collapsible: Collapsible,\n date: DateDiffComponent,\n email: Text,\n group: Group,\n join: null,\n json: Text,\n number: Text,\n point: Text,\n radio: Select,\n relationship: Relationship,\n richText: Text,\n row: Row,\n select: Select,\n tabs: Tabs,\n text: Text,\n textarea: Text,\n ui: null,\n upload: Relationship,\n}\n"],"mappings":"AAEA,SAASA,WAAW,QAAQ;AAC5B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,KAAK,QAAQ;AACtB,SAASC,QAAQ,QAAQ;AACzB,SAASC,YAAY,QAAQ;AAC7B,SAASC,GAAG,QAAQ;AACpB,SAASC,MAAM,QAAQ;AACvB,SAASC,IAAI,QAAQ;AACrB,SAASC,IAAI,QAAQ;AAErB,OAAO,MAAMC,cAAA,GAAgF;EAC3FC,KAAA,EAAOP,QAAA;EACPQ,MAAA,EAAQR,QAAA;EACRS,QAAA,EAAUJ,IAAA;EACVK,IAAA,EAAML,IAAA;EACNM,WAAA,EAAad,WAAA;EACbe,IAAA,EAAMd,iBAAA;EACNe,KAAA,EAAOR,IAAA;EACPS,KAAA,EAAOf,KAAA;EACPgB,IAAA,EAAM;EACNC,IAAA,EAAMX,IAAA;EACNY,MAAA,EAAQZ,IAAA;EACRa,KAAA,EAAOb,IAAA;EACPc,KAAA,EAAOhB,MAAA;EACPiB,YAAA,EAAcnB,YAAA;EACdoB,QAAA,EAAUhB,IAAA;EACViB,GAAA,EAAKpB,GAAA;EACLqB,MAAA,EAAQpB,MAAA;EACRqB,IAAA,EAAMpB,IAAA;EACNqB,IAAA,EAAMpB,IAAA;EACNqB,QAAA,EAAUrB,IAAA;EACVsB,EAAA,EAAI;EACJC,MAAA,EAAQ3B;AACV","ignoreList":[]}
@@ -6,6 +6,7 @@ export const RenderDiff = args => {
6
6
  versionFields
7
7
  } = buildVersionFields(args);
8
8
  return /*#__PURE__*/_jsx(RenderVersionFieldsToDiff, {
9
+ parent: true,
9
10
  versionFields: versionFields
10
11
  });
11
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["buildVersionFields","RenderVersionFieldsToDiff","RenderDiff","args","versionFields","_jsx"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["import { buildVersionFields, type BuildVersionFieldsArgs } from './buildVersionFields.js'\nimport { RenderVersionFieldsToDiff } from './RenderVersionFieldsToDiff.js'\n\nexport const RenderDiff = (args: BuildVersionFieldsArgs): React.ReactNode => {\n const { versionFields } = buildVersionFields(args)\n\n return <RenderVersionFieldsToDiff versionFields={versionFields} />\n}\n"],"mappings":";AAAA,SAASA,kBAAkB,QAAqC;AAChE,SAASC,yBAAyB,QAAQ;AAE1C,OAAO,MAAMC,UAAA,GAAcC,IAAA;EACzB,MAAM;IAAEC;EAAa,CAAE,GAAGJ,kBAAA,CAAmBG,IAAA;EAE7C,oBAAOE,IAAA,CAACJ,yBAAA;IAA0BG,aAAA,EAAeA;;AACnD","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["buildVersionFields","RenderVersionFieldsToDiff","RenderDiff","args","versionFields","_jsx","parent"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["import { buildVersionFields, type BuildVersionFieldsArgs } from './buildVersionFields.js'\nimport { RenderVersionFieldsToDiff } from './RenderVersionFieldsToDiff.js'\n\nexport const RenderDiff = (args: BuildVersionFieldsArgs): React.ReactNode => {\n const { versionFields } = buildVersionFields(args)\n\n return <RenderVersionFieldsToDiff parent={true} versionFields={versionFields} />\n}\n"],"mappings":";AAAA,SAASA,kBAAkB,QAAqC;AAChE,SAASC,yBAAyB,QAAQ;AAE1C,OAAO,MAAMC,UAAA,GAAcC,IAAA;EACzB,MAAM;IAAEC;EAAa,CAAE,GAAGJ,kBAAA,CAAmBG,IAAA;EAE7C,oBAAOE,IAAA,CAACJ,yBAAA;IAA0BK,MAAA,EAAQ;IAAMF,aAAA,EAAeA;;AACjE","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAE9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAoG5B,CAAA;AAED,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAE9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAsG5B,CAAA;AAED,eAAe,OAAO,CAAA"}
@@ -84,7 +84,7 @@ const Restore = ({
84
84
  className: [baseClass, className].filter(Boolean).join(' '),
85
85
  children: /*#__PURE__*/_jsx(Button, {
86
86
  buttonStyle: "pill",
87
- className: [canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' '),
87
+ className: [canRestoreAsDraft && `${baseClass}__restore-as-draft-button`].filter(Boolean).join(' '),
88
88
  onClick: () => toggleModal(modalSlug),
89
89
  size: "small",
90
90
  SubMenuPopupContent: canRestoreAsDraft ? () => /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","Button","ConfirmationModal","PopupList","toast","useConfig","useModal","useRouteTransition","useTranslation","requests","useRouter","formatAdminURL","React","Fragment","useCallback","useState","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","routes","admin","adminRoute","api","apiRoute","serverURL","getEntityConfig","collectionConfig","toggleModal","router","i18n","t","draft","setDraft","startRouteTransition","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","versions","drafts","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","_jsx","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","body","confirmingLabel","heading","onConfirm"],"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ConfirmationModal,\n PopupList,\n toast,\n useConfig,\n useModal,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n const { startRouteTransition } = useRouteTransition()\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n return startRouteTransition(() => router.push(redirectURL))\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router, startRouteTransition])\n\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"pill\"\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"small\"\n SubMenuPopupContent={\n canRestoreAsDraft\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : null\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <ConfirmationModal\n body={restoreMessage}\n confirmingLabel={t('version:restoring')}\n heading={t('version:confirmVersionRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n}\n\nexport default Restore\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","Button","ConfirmationModal","PopupList","toast","useConfig","useModal","useRouteTransition","useTranslation","requests","useRouter","formatAdminURL","React","Fragment","useCallback","useState","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","routes","admin","adminRoute","api","apiRoute","serverURL","getEntityConfig","collectionConfig","toggleModal","router","i18n","t","draft","setDraft","startRouteTransition","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","versions","drafts","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","_jsx","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","body","confirmingLabel","heading","onConfirm"],"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ConfirmationModal,\n PopupList,\n toast,\n useConfig,\n useModal,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useCallback, useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n const { startRouteTransition } = useRouteTransition()\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n return startRouteTransition(() => router.push(redirectURL))\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router, startRouteTransition])\n\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"pill\"\n className={[canRestoreAsDraft && `${baseClass}__restore-as-draft-button`]\n .filter(Boolean)\n .join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"small\"\n SubMenuPopupContent={\n canRestoreAsDraft\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : null\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <ConfirmationModal\n body={restoreMessage}\n confirmingLabel={t('version:restoring')}\n heading={t('version:confirmVersionRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n}\n\nexport default Restore\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,7 @@
4
4
  .restore-version {
5
5
  cursor: pointer;
6
6
  display: flex;
7
+ min-width: max-content;
7
8
 
8
9
  .popup-button {
9
10
  display: flex;
@@ -24,7 +25,11 @@
24
25
  }
25
26
  }
26
27
 
27
- &__button {
28
+ .btn {
29
+ margin-block: 0;
30
+ }
31
+
32
+ &__restore-as-draft-button {
28
33
  border-top-right-radius: 0px;
29
34
  border-bottom-right-radius: 0px;
30
35
  margin-right: 2px;
@@ -0,0 +1,6 @@
1
+ export declare const VersionPillLabel: React.FC<{
2
+ doc: any;
3
+ latestDraftVersionID: string;
4
+ latestPublishedVersionID: string;
5
+ }>;
6
+ //# sourceMappingURL=VersionPillLabel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VersionPillLabel.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/VersionPillLabel.tsx"],"names":[],"mappings":"AAQA,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC;IACtC,GAAG,EAAE,GAAG,CAAA;IACR,oBAAoB,EAAE,MAAM,CAAA;IAC5B,wBAAwB,EAAE,MAAM,CAAA;CACjC,CAqDA,CAAA"}
@@ -0,0 +1,70 @@
1
+ 'use client';
2
+
3
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
+ import { Pill, useConfig, useTranslation } from '@payloadcms/ui';
5
+ import { formatDate } from '@payloadcms/ui/shared';
6
+ import { useMemo } from 'react';
7
+ import { renderPill } from '../../Versions/cells/AutosaveCell/index.js';
8
+ export const VersionPillLabel = args => {
9
+ const {
10
+ config: {
11
+ admin: {
12
+ dateFormat
13
+ },
14
+ localization
15
+ }
16
+ } = useConfig();
17
+ const {
18
+ i18n,
19
+ t
20
+ } = useTranslation();
21
+ const {
22
+ doc,
23
+ latestDraftVersionID,
24
+ latestPublishedVersionID
25
+ } = args;
26
+ const status = doc.version._status;
27
+ let publishedLocalePill = null;
28
+ const publishedLocale = doc.publishedLocale || undefined;
29
+ const versionInfo = useMemo(() => {
30
+ return {
31
+ draft: {
32
+ currentLabel: t('version:currentDraft'),
33
+ latestVersion: latestDraftVersionID,
34
+ pillStyle: undefined,
35
+ previousLabel: t('version:draft')
36
+ },
37
+ published: {
38
+ currentLabel: t('version:currentlyPublished'),
39
+ latestVersion: latestPublishedVersionID,
40
+ pillStyle: 'success',
41
+ previousLabel: t('version:previouslyPublished')
42
+ }
43
+ };
44
+ }, [latestDraftVersionID, latestPublishedVersionID, t]);
45
+ const {
46
+ currentLabel,
47
+ latestVersion,
48
+ pillStyle,
49
+ previousLabel
50
+ } = versionInfo[status] || {};
51
+ if (localization && localization?.locales && publishedLocale) {
52
+ const localeCode = Array.isArray(publishedLocale) ? publishedLocale[0] : publishedLocale;
53
+ const locale = localization.locales.find(loc => loc.code === localeCode);
54
+ const formattedLabel = locale?.label?.[i18n?.language] || locale?.label;
55
+ if (formattedLabel) {
56
+ publishedLocalePill = /*#__PURE__*/_jsx(Pill, {
57
+ children: formattedLabel
58
+ });
59
+ }
60
+ }
61
+ return /*#__PURE__*/_jsxs("div", {
62
+ className: `version-pill-label`,
63
+ children: [formatDate({
64
+ date: doc.updatedAt,
65
+ i18n,
66
+ pattern: dateFormat
67
+ }), "  ", renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle), publishedLocalePill]
68
+ });
69
+ };
70
+ //# sourceMappingURL=VersionPillLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VersionPillLabel.js","names":["Pill","useConfig","useTranslation","formatDate","useMemo","renderPill","VersionPillLabel","args","config","admin","dateFormat","localization","i18n","t","doc","latestDraftVersionID","latestPublishedVersionID","status","version","_status","publishedLocalePill","publishedLocale","undefined","versionInfo","draft","currentLabel","latestVersion","pillStyle","previousLabel","published","locales","localeCode","Array","isArray","locale","find","loc","code","formattedLabel","label","language","_jsx","_jsxs","className","date","updatedAt","pattern"],"sources":["../../../../src/views/Version/SelectComparison/VersionPillLabel.tsx"],"sourcesContent":["'use client'\n\nimport { Pill, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { useMemo } from 'react'\n\nimport { renderPill } from '../../Versions/cells/AutosaveCell/index.js'\n\nexport const VersionPillLabel: React.FC<{\n doc: any\n latestDraftVersionID: string\n latestPublishedVersionID: string\n}> = (args) => {\n const {\n config: {\n admin: { dateFormat },\n localization,\n },\n } = useConfig()\n const { i18n, t } = useTranslation()\n\n const { doc, latestDraftVersionID, latestPublishedVersionID } = args\n\n const status = doc.version._status\n let publishedLocalePill = null\n const publishedLocale = doc.publishedLocale || undefined\n\n const versionInfo = useMemo(() => {\n return {\n draft: {\n currentLabel: t('version:currentDraft'),\n latestVersion: latestDraftVersionID,\n pillStyle: undefined,\n previousLabel: t('version:draft'),\n },\n published: {\n currentLabel: t('version:currentlyPublished'),\n latestVersion: latestPublishedVersionID,\n pillStyle: 'success',\n previousLabel: t('version:previouslyPublished'),\n },\n }\n }, [latestDraftVersionID, latestPublishedVersionID, t])\n\n const { currentLabel, latestVersion, pillStyle, previousLabel } = versionInfo[status] || {}\n\n if (localization && localization?.locales && publishedLocale) {\n const localeCode = Array.isArray(publishedLocale) ? publishedLocale[0] : publishedLocale\n\n const locale = localization.locales.find((loc) => loc.code === localeCode)\n const formattedLabel = locale?.label?.[i18n?.language] || locale?.label\n\n if (formattedLabel) {\n publishedLocalePill = <Pill>{formattedLabel}</Pill>\n }\n }\n\n return (\n <div className={`version-pill-label`}>\n {formatDate({ date: doc.updatedAt, i18n, pattern: dateFormat })}\n &nbsp;&nbsp;\n {renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle)}\n {publishedLocalePill}\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAEA,SAASA,IAAI,EAAEC,SAAS,EAAEC,cAAc,QAAQ;AAChD,SAASC,UAAU,QAAQ;AAC3B,SAASC,OAAO,QAAQ;AAExB,SAASC,UAAU,QAAQ;AAE3B,OAAO,MAAMC,gBAAA,GAIPC,IAAA;EACJ,MAAM;IACJC,MAAA,EAAQ;MACNC,KAAA,EAAO;QAAEC;MAAU,CAAE;MACrBC;IAAY;EACb,CACF,GAAGV,SAAA;EACJ,MAAM;IAAEW,IAAI;IAAEC;EAAC,CAAE,GAAGX,cAAA;EAEpB,MAAM;IAAEY,GAAG;IAAEC,oBAAoB;IAAEC;EAAwB,CAAE,GAAGT,IAAA;EAEhE,MAAMU,MAAA,GAASH,GAAA,CAAII,OAAO,CAACC,OAAO;EAClC,IAAIC,mBAAA,GAAsB;EAC1B,MAAMC,eAAA,GAAkBP,GAAA,CAAIO,eAAe,IAAIC,SAAA;EAE/C,MAAMC,WAAA,GAAcnB,OAAA,CAAQ;IAC1B,OAAO;MACLoB,KAAA,EAAO;QACLC,YAAA,EAAcZ,CAAA,CAAE;QAChBa,aAAA,EAAeX,oBAAA;QACfY,SAAA,EAAWL,SAAA;QACXM,aAAA,EAAef,CAAA,CAAE;MACnB;MACAgB,SAAA,EAAW;QACTJ,YAAA,EAAcZ,CAAA,CAAE;QAChBa,aAAA,EAAeV,wBAAA;QACfW,SAAA,EAAW;QACXC,aAAA,EAAef,CAAA,CAAE;MACnB;IACF;EACF,GAAG,CAACE,oBAAA,EAAsBC,wBAAA,EAA0BH,CAAA,CAAE;EAEtD,MAAM;IAAEY,YAAY;IAAEC,aAAa;IAAEC,SAAS;IAAEC;EAAa,CAAE,GAAGL,WAAW,CAACN,MAAA,CAAO,IAAI,CAAC;EAE1F,IAAIN,YAAA,IAAgBA,YAAA,EAAcmB,OAAA,IAAWT,eAAA,EAAiB;IAC5D,MAAMU,UAAA,GAAaC,KAAA,CAAMC,OAAO,CAACZ,eAAA,IAAmBA,eAAe,CAAC,EAAE,GAAGA,eAAA;IAEzE,MAAMa,MAAA,GAASvB,YAAA,CAAamB,OAAO,CAACK,IAAI,CAAEC,GAAA,IAAQA,GAAA,CAAIC,IAAI,KAAKN,UAAA;IAC/D,MAAMO,cAAA,GAAiBJ,MAAA,EAAQK,KAAA,GAAQ3B,IAAA,EAAM4B,QAAA,CAAS,IAAIN,MAAA,EAAQK,KAAA;IAElE,IAAID,cAAA,EAAgB;MAClBlB,mBAAA,gBAAsBqB,IAAA,CAACzC,IAAA;kBAAMsC;;IAC/B;EACF;EAEA,oBACEI,KAAA,CAAC;IAAIC,SAAA,EAAW,oBAAoB;eACjCxC,UAAA,CAAW;MAAEyC,IAAA,EAAM9B,GAAA,CAAI+B,SAAS;MAAEjC,IAAA;MAAMkC,OAAA,EAASpC;IAAW,IAAG,MAE/DL,UAAA,CAAWS,GAAA,EAAKY,aAAA,EAAeD,YAAA,EAAcG,aAAA,EAAeD,SAAA,GAC5DP,mBAAA;;AAGP","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { TypeWithVersion } from 'payload';
2
+ import type { VersionPill } from '../Default/types.js';
3
+ export declare function formatVersionPill(args: {
4
+ doc: TypeWithVersion<any>;
5
+ latestDraftVersionID: string;
6
+ latestPublishedVersionID: string;
7
+ }): VersionPill;
8
+ //# sourceMappingURL=formatVersionPill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatVersionPill.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/formatVersionPill.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAItD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,CAAA;IACzB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,wBAAwB,EAAE,MAAM,CAAA;CACjC,GAAG,WAAW,CAqBd"}
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { VersionPillLabel } from './VersionPillLabel.js';
3
+ export function formatVersionPill(args) {
4
+ const {
5
+ doc,
6
+ latestDraftVersionID,
7
+ latestPublishedVersionID
8
+ } = args;
9
+ if (!doc) {
10
+ return {
11
+ id: '',
12
+ Label: ''
13
+ };
14
+ }
15
+ return {
16
+ id: doc.id,
17
+ Label: /*#__PURE__*/_jsx(VersionPillLabel, {
18
+ doc: doc,
19
+ latestDraftVersionID: latestDraftVersionID,
20
+ latestPublishedVersionID: latestPublishedVersionID
21
+ }, doc.id)
22
+ };
23
+ }
24
+ //# sourceMappingURL=formatVersionPill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatVersionPill.js","names":["VersionPillLabel","formatVersionPill","args","doc","latestDraftVersionID","latestPublishedVersionID","id","Label","_jsx"],"sources":["../../../../src/views/Version/SelectComparison/formatVersionPill.tsx"],"sourcesContent":["import type { TypeWithVersion } from 'payload'\n\nimport type { VersionPill } from '../Default/types.js'\n\nimport { VersionPillLabel } from './VersionPillLabel.js'\n\nexport function formatVersionPill(args: {\n doc: TypeWithVersion<any>\n latestDraftVersionID: string\n latestPublishedVersionID: string\n}): VersionPill {\n const { doc, latestDraftVersionID, latestPublishedVersionID } = args\n\n if (!doc) {\n return {\n id: '',\n Label: '',\n }\n }\n\n return {\n id: doc.id,\n Label: (\n <VersionPillLabel\n doc={doc}\n key={doc.id}\n latestDraftVersionID={latestDraftVersionID}\n latestPublishedVersionID={latestPublishedVersionID}\n />\n ),\n }\n}\n"],"mappings":";AAIA,SAASA,gBAAgB,QAAQ;AAEjC,OAAO,SAASC,kBAAkBC,IAIjC;EACC,MAAM;IAAEC,GAAG;IAAEC,oBAAoB;IAAEC;EAAwB,CAAE,GAAGH,IAAA;EAEhE,IAAI,CAACC,GAAA,EAAK;IACR,OAAO;MACLG,EAAA,EAAI;MACJC,KAAA,EAAO;IACT;EACF;EAEA,OAAO;IACLD,EAAA,EAAIH,GAAA,CAAIG,EAAE;IACVC,KAAA,eACEC,IAAA,CAACR,gBAAA;MACCG,GAAA,EAAKA,GAAA;MAELC,oBAAA,EAAsBA,oBAAA;MACtBC,wBAAA,EAA0BA;OAFrBF,GAAA,CAAIG,EAAE;EAKjB;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAE/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAyL5C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAExE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AASrB,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA4J5C,CAAA"}
@@ -1,11 +1,10 @@
1
1
  'use client';
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
- import { fieldBaseClass, Pill, ReactSelect, useConfig, useTranslation } from '@payloadcms/ui';
5
- import { formatDate } from '@payloadcms/ui/shared';
4
+ import { fieldBaseClass, ReactSelect, useConfig, useTranslation } from '@payloadcms/ui';
6
5
  import { stringify } from 'qs-esm';
7
6
  import React, { useCallback, useEffect, useState } from 'react';
8
- import { renderPill } from '../../Versions/cells/AutosaveCell/index.js';
7
+ import { formatVersionPill } from './formatVersionPill.js';
9
8
  const baseClass = 'compare-version';
10
9
  const maxResultsPerRequest = 10;
11
10
  const baseOptions = [];
@@ -13,28 +12,25 @@ export const SelectComparison = props => {
13
12
  const {
14
13
  baseURL,
15
14
  draftsEnabled,
16
- latestDraftVersion,
17
- latestPublishedVersion,
15
+ latestDraftVersionID,
16
+ latestPublishedVersionID,
18
17
  onChange,
19
18
  parentID,
20
- value,
21
- versionID
19
+ versionFromOption,
20
+ versionToID
22
21
  } = props;
22
+ const {
23
+ i18n,
24
+ t
25
+ } = useTranslation();
23
26
  const {
24
27
  config: {
25
- admin: {
26
- dateFormat
27
- },
28
28
  localization
29
29
  }
30
30
  } = useConfig();
31
31
  const [options, setOptions] = useState(baseOptions);
32
32
  const [lastLoadedPage, setLastLoadedPage] = useState(1);
33
33
  const [errorLoading, setErrorLoading] = useState('');
34
- const {
35
- i18n,
36
- t
37
- } = useTranslation();
38
34
  const loadedAllOptionsRef = React.useRef(false);
39
35
  const getResults = useCallback(async ({
40
36
  lastLoadedPage: lastLoadedPageArg
@@ -49,7 +45,7 @@ export const SelectComparison = props => {
49
45
  where: {
50
46
  and: [{
51
47
  id: {
52
- not_equals: versionID
48
+ not_equals: versionToID
53
49
  }
54
50
  }]
55
51
  }
@@ -78,52 +74,18 @@ export const SelectComparison = props => {
78
74
  if (response.ok) {
79
75
  const data = await response.json();
80
76
  if (data.docs.length > 0) {
81
- const versionInfo = {
82
- draft: {
83
- currentLabel: t('version:currentDraft'),
84
- latestVersion: latestDraftVersion,
85
- pillStyle: undefined,
86
- previousLabel: t('version:draft')
87
- },
88
- published: {
89
- currentLabel: t('version:currentPublishedVersion'),
90
- latestVersion: latestPublishedVersion,
91
- pillStyle: 'success',
92
- previousLabel: t('version:previouslyPublished')
93
- }
94
- };
95
77
  const additionalOptions = data.docs.map(doc => {
96
- const status = doc.version._status;
97
- let publishedLocalePill = null;
98
- const publishedLocale = doc.publishedLocale || undefined;
99
- const {
100
- currentLabel,
101
- latestVersion,
102
- pillStyle,
103
- previousLabel
104
- } = versionInfo[status] || {};
105
- if (localization && localization?.locales && publishedLocale) {
106
- const localeCode = Array.isArray(publishedLocale) ? publishedLocale[0] : publishedLocale;
107
- const locale = localization.locales.find(loc => loc.code === localeCode);
108
- const formattedLabel = locale?.label?.[i18n?.language] || locale?.label;
109
- if (formattedLabel) {
110
- publishedLocalePill = /*#__PURE__*/_jsx(Pill, {
111
- children: formattedLabel
112
- });
113
- }
114
- }
78
+ const pill = formatVersionPill({
79
+ doc,
80
+ latestDraftVersionID,
81
+ latestPublishedVersionID
82
+ });
115
83
  return {
116
- label: /*#__PURE__*/_jsxs("div", {
117
- children: [formatDate({
118
- date: doc.updatedAt,
119
- i18n,
120
- pattern: dateFormat
121
- }), "  ", renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle), publishedLocalePill]
122
- }),
123
- value: doc.id
84
+ label: pill.Label,
85
+ value: pill.id
124
86
  };
125
87
  });
126
- setOptions(existingOptions => [...existingOptions, ...additionalOptions]);
88
+ setOptions(existingOptions => [...existingOptions, ...additionalOptions].filter((option, index, self) => self.findIndex(t_0 => t_0.value === option.value) === index));
127
89
  if (!data.hasNextPage) {
128
90
  loadedAllOptionsRef.current = true;
129
91
  }
@@ -132,7 +94,7 @@ export const SelectComparison = props => {
132
94
  } else {
133
95
  setErrorLoading(t('error:unspecific'));
134
96
  }
135
- }, [dateFormat, baseURL, parentID, versionID, t, i18n, latestDraftVersion, latestPublishedVersion]);
97
+ }, [versionToID, parentID, localization, draftsEnabled, baseURL, i18n.language, latestDraftVersionID, latestPublishedVersionID, t]);
136
98
  useEffect(() => {
137
99
  if (!i18n.dateFNS) {
138
100
  // If dateFNS is not loaded, we can't format the date in getResults
@@ -142,18 +104,14 @@ export const SelectComparison = props => {
142
104
  lastLoadedPage: 1
143
105
  });
144
106
  }, [getResults, i18n.dateFNS]);
145
- const filteredOptions = options.filter((option, index, self) => self.findIndex(t_0 => t_0.value === option.value) === index);
146
107
  useEffect(() => {
147
- if (filteredOptions.length > 0 && !value) {
148
- onChange(filteredOptions[0]);
108
+ if (options.length > 0 && !versionFromOption) {
109
+ onChange(options[0]);
149
110
  }
150
- }, [filteredOptions, value, onChange]);
111
+ }, [options, versionFromOption, onChange]);
151
112
  return /*#__PURE__*/_jsxs("div", {
152
113
  className: [fieldBaseClass, baseClass, errorLoading && 'error-loading'].filter(Boolean).join(' '),
153
- children: [/*#__PURE__*/_jsx("div", {
154
- className: `${baseClass}__label`,
155
- children: t('version:compareVersion')
156
- }), !errorLoading && /*#__PURE__*/_jsx(ReactSelect, {
114
+ children: [!errorLoading && /*#__PURE__*/_jsx(ReactSelect, {
157
115
  isClearable: false,
158
116
  isSearchable: false,
159
117
  onChange: onChange,
@@ -162,9 +120,9 @@ export const SelectComparison = props => {
162
120
  lastLoadedPage: lastLoadedPage + 1
163
121
  });
164
122
  },
165
- options: filteredOptions,
123
+ options: options,
166
124
  placeholder: t('version:selectVersionToCompare'),
167
- value: value
125
+ value: versionFromOption
168
126
  }), errorLoading && /*#__PURE__*/_jsx("div", {
169
127
  className: `${baseClass}__error-loading`,
170
128
  children: errorLoading
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["fieldBaseClass","Pill","ReactSelect","useConfig","useTranslation","formatDate","stringify","React","useCallback","useEffect","useState","renderPill","baseClass","maxResultsPerRequest","baseOptions","SelectComparison","props","baseURL","draftsEnabled","latestDraftVersion","latestPublishedVersion","onChange","parentID","value","versionID","config","admin","dateFormat","localization","options","setOptions","lastLoadedPage","setLastLoadedPage","errorLoading","setErrorLoading","i18n","t","loadedAllOptionsRef","useRef","getResults","lastLoadedPageArg","current","query","depth","limit","page","where","and","id","not_equals","push","parent","equals","snapshot","search","response","fetch","credentials","headers","language","ok","data","json","docs","length","versionInfo","draft","currentLabel","latestVersion","pillStyle","undefined","previousLabel","published","additionalOptions","map","doc","status","version","_status","publishedLocalePill","publishedLocale","locales","localeCode","Array","isArray","locale","find","loc","code","formattedLabel","label","_jsx","_jsxs","date","updatedAt","pattern","existingOptions","hasNextPage","dateFNS","filteredOptions","filter","option","index","self","findIndex","className","Boolean","join","isClearable","isSearchable","onMenuScrollToBottom","placeholder"],"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { fieldBaseClass, Pill, ReactSelect, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { stringify } from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { renderPill } from '../../Versions/cells/AutosaveCell/index.js'\nimport './index.scss'\n\nconst baseClass = 'compare-version'\n\nconst maxResultsPerRequest = 10\n\nconst baseOptions = []\n\nexport const SelectComparison: React.FC<Props> = (props) => {\n const {\n baseURL,\n draftsEnabled,\n latestDraftVersion,\n latestPublishedVersion,\n onChange,\n parentID,\n value,\n versionID,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n localization,\n },\n } = useConfig()\n\n const [options, setOptions] = useState<\n {\n label: React.ReactNode | string\n value: string\n }[]\n >(baseOptions)\n const [lastLoadedPage, setLastLoadedPage] = useState(1)\n const [errorLoading, setErrorLoading] = useState('')\n const { i18n, t } = useTranslation()\n const loadedAllOptionsRef = React.useRef(false)\n\n const getResults = useCallback(\n async ({ lastLoadedPage: lastLoadedPageArg }) => {\n if (loadedAllOptionsRef.current) {\n return\n }\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n limit: maxResultsPerRequest,\n page: lastLoadedPageArg,\n where: {\n and: [\n {\n id: {\n not_equals: versionID,\n },\n },\n ],\n },\n }\n\n if (parentID) {\n query.where.and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n if (localization && draftsEnabled) {\n query.where.and.push({\n snapshot: {\n not_equals: true,\n },\n })\n }\n\n const search = stringify(query)\n\n const response = await fetch(`${baseURL}?${search}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n\n if (data.docs.length > 0) {\n const versionInfo = {\n draft: {\n currentLabel: t('version:currentDraft'),\n latestVersion: latestDraftVersion,\n pillStyle: undefined,\n previousLabel: t('version:draft'),\n },\n published: {\n currentLabel: t('version:currentPublishedVersion'),\n latestVersion: latestPublishedVersion,\n pillStyle: 'success',\n previousLabel: t('version:previouslyPublished'),\n },\n }\n\n const additionalOptions = data.docs.map((doc) => {\n const status = doc.version._status\n let publishedLocalePill = null\n const publishedLocale = doc.publishedLocale || undefined\n const { currentLabel, latestVersion, pillStyle, previousLabel } =\n versionInfo[status] || {}\n\n if (localization && localization?.locales && publishedLocale) {\n const localeCode = Array.isArray(publishedLocale)\n ? publishedLocale[0]\n : publishedLocale\n\n const locale = localization.locales.find((loc) => loc.code === localeCode)\n const formattedLabel = locale?.label?.[i18n?.language] || locale?.label\n\n if (formattedLabel) {\n publishedLocalePill = <Pill>{formattedLabel}</Pill>\n }\n }\n\n return {\n label: (\n <div>\n {formatDate({ date: doc.updatedAt, i18n, pattern: dateFormat })}\n &nbsp;&nbsp;\n {renderPill(doc, latestVersion, currentLabel, previousLabel, pillStyle)}\n {publishedLocalePill}\n </div>\n ),\n value: doc.id,\n }\n })\n\n setOptions((existingOptions) => [...existingOptions, ...additionalOptions])\n\n if (!data.hasNextPage) {\n loadedAllOptionsRef.current = true\n }\n setLastLoadedPage(data.page)\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n },\n [dateFormat, baseURL, parentID, versionID, t, i18n, latestDraftVersion, latestPublishedVersion],\n )\n\n useEffect(() => {\n if (!i18n.dateFNS) {\n // If dateFNS is not loaded, we can't format the date in getResults\n return\n }\n void getResults({ lastLoadedPage: 1 })\n }, [getResults, i18n.dateFNS])\n\n const filteredOptions = options.filter(\n (option, index, self) => self.findIndex((t) => t.value === option.value) === index,\n )\n\n useEffect(() => {\n if (filteredOptions.length > 0 && !value) {\n onChange(filteredOptions[0])\n }\n }, [filteredOptions, value, onChange])\n\n return (\n <div\n className={[fieldBaseClass, baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')}\n >\n <div className={`${baseClass}__label`}>{t('version:compareVersion')}</div>\n {!errorLoading && (\n <ReactSelect\n isClearable={false}\n isSearchable={false}\n onChange={onChange}\n onMenuScrollToBottom={() => {\n void getResults({ lastLoadedPage: lastLoadedPage + 1 })\n }}\n options={filteredOptions}\n placeholder={t('version:selectVersionToCompare')}\n value={value}\n />\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["fieldBaseClass","ReactSelect","useConfig","useTranslation","stringify","React","useCallback","useEffect","useState","formatVersionPill","baseClass","maxResultsPerRequest","baseOptions","SelectComparison","props","baseURL","draftsEnabled","latestDraftVersionID","latestPublishedVersionID","onChange","parentID","versionFromOption","versionToID","i18n","t","config","localization","options","setOptions","lastLoadedPage","setLastLoadedPage","errorLoading","setErrorLoading","loadedAllOptionsRef","useRef","getResults","lastLoadedPageArg","current","query","depth","limit","page","where","and","id","not_equals","push","parent","equals","snapshot","search","response","fetch","credentials","headers","language","ok","data","json","docs","length","additionalOptions","map","doc","pill","label","Label","value","existingOptions","filter","option","index","self","findIndex","hasNextPage","dateFNS","_jsxs","className","Boolean","join","_jsx","isClearable","isSearchable","onMenuScrollToBottom","placeholder"],"sources":["../../../../src/views/Version/SelectComparison/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PaginatedDocs, Where } from 'payload'\n\nimport { fieldBaseClass, Pill, ReactSelect, useConfig, useTranslation } from '@payloadcms/ui'\nimport { formatDate } from '@payloadcms/ui/shared'\nimport { stringify } from 'qs-esm'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\n\nimport type { Props } from './types.js'\n\nimport { renderPill } from '../../Versions/cells/AutosaveCell/index.js'\nimport './index.scss'\nimport { formatVersionPill } from './formatVersionPill.js'\n\nconst baseClass = 'compare-version'\n\nconst maxResultsPerRequest = 10\n\nconst baseOptions = []\n\nexport const SelectComparison: React.FC<Props> = (props) => {\n const {\n baseURL,\n draftsEnabled,\n latestDraftVersionID,\n latestPublishedVersionID,\n onChange,\n parentID,\n versionFromOption,\n versionToID,\n } = props\n const { i18n, t } = useTranslation()\n\n const {\n config: { localization },\n } = useConfig()\n\n const [options, setOptions] = useState<\n {\n label: React.ReactNode | string\n value: string\n }[]\n >(baseOptions)\n const [lastLoadedPage, setLastLoadedPage] = useState(1)\n const [errorLoading, setErrorLoading] = useState('')\n const loadedAllOptionsRef = React.useRef(false)\n\n const getResults = useCallback(\n async ({ lastLoadedPage: lastLoadedPageArg }) => {\n if (loadedAllOptionsRef.current) {\n return\n }\n const query: {\n [key: string]: unknown\n where: Where\n } = {\n depth: 0,\n limit: maxResultsPerRequest,\n page: lastLoadedPageArg,\n where: {\n and: [\n {\n id: {\n not_equals: versionToID,\n },\n },\n ],\n },\n }\n\n if (parentID) {\n query.where.and.push({\n parent: {\n equals: parentID,\n },\n })\n }\n\n if (localization && draftsEnabled) {\n query.where.and.push({\n snapshot: {\n not_equals: true,\n },\n })\n }\n\n const search = stringify(query)\n\n const response = await fetch(`${baseURL}?${search}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (response.ok) {\n const data: PaginatedDocs = await response.json()\n\n if (data.docs.length > 0) {\n const additionalOptions = data.docs.map((doc) => {\n const pill = formatVersionPill({\n doc,\n latestDraftVersionID,\n latestPublishedVersionID,\n })\n\n return {\n label: pill.Label,\n value: pill.id,\n }\n })\n\n setOptions((existingOptions) =>\n [...existingOptions, ...additionalOptions].filter(\n (option, index, self) => self.findIndex((t) => t.value === option.value) === index,\n ),\n )\n\n if (!data.hasNextPage) {\n loadedAllOptionsRef.current = true\n }\n setLastLoadedPage(data.page)\n }\n } else {\n setErrorLoading(t('error:unspecific'))\n }\n },\n [\n versionToID,\n parentID,\n localization,\n draftsEnabled,\n baseURL,\n i18n.language,\n latestDraftVersionID,\n latestPublishedVersionID,\n t,\n ],\n )\n\n useEffect(() => {\n if (!i18n.dateFNS) {\n // If dateFNS is not loaded, we can't format the date in getResults\n return\n }\n void getResults({ lastLoadedPage: 1 })\n }, [getResults, i18n.dateFNS])\n\n useEffect(() => {\n if (options.length > 0 && !versionFromOption) {\n onChange(options[0])\n }\n }, [options, versionFromOption, onChange])\n\n return (\n <div\n className={[fieldBaseClass, baseClass, errorLoading && 'error-loading']\n .filter(Boolean)\n .join(' ')}\n >\n {!errorLoading && (\n <ReactSelect\n isClearable={false}\n isSearchable={false}\n onChange={onChange}\n onMenuScrollToBottom={() => {\n void getResults({ lastLoadedPage: lastLoadedPage + 1 })\n }}\n options={options}\n placeholder={t('version:selectVersionToCompare')}\n value={versionFromOption}\n />\n )}\n {errorLoading && <div className={`${baseClass}__error-loading`}>{errorLoading}</div>}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -7,9 +7,5 @@
7
7
  background-color: var(--theme-error-100);
8
8
  color: var(--theme-elevation-0);
9
9
  }
10
-
11
- &__label {
12
- margin-bottom: calc(var(--base) * 0.25);
13
- }
14
10
  }
15
11
  }
@@ -3,12 +3,12 @@ import type { CompareOption } from '../Default/types.js';
3
3
  export type Props = {
4
4
  baseURL: string;
5
5
  draftsEnabled?: boolean;
6
- latestDraftVersion?: string;
7
- latestPublishedVersion?: string;
6
+ latestDraftVersionID?: string;
7
+ latestPublishedVersionID?: string;
8
8
  onChange: (val: CompareOption) => void;
9
9
  parentID?: number | string;
10
- value: CompareOption;
11
- versionID: string;
10
+ versionFromOption: CompareOption;
11
+ versionToID: string;
12
12
  };
13
13
  type CLEAR = {
14
14
  required: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,KAAK,EAAE,aAAa,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,yBAAyB,CAAA;IACrC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAA;AAEhC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectComparison/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAExD,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,wBAAwB,CAAC,EAAE,MAAM,CAAA;IACjC,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,IAAI,CAAA;IACtC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,iBAAiB,EAAE,aAAa,CAAA;IAChC,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,OAAO,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AAED,KAAK,GAAG,GAAG;IACT,UAAU,EAAE,yBAAyB,CAAA;IACrC,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,CAAA;IACxB,IAAI,EAAE,KAAK,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAA;AAEhC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/SelectComparison/types.ts"],"sourcesContent":["import type { PaginatedDocs, SanitizedCollectionConfig } from 'payload'\n\nimport type { CompareOption } from '../Default/types.js'\n\nexport type Props = {\n baseURL: string\n draftsEnabled?: boolean\n latestDraftVersion?: string\n latestPublishedVersion?: string\n onChange: (val: CompareOption) => void\n parentID?: number | string\n value: CompareOption\n versionID: string\n}\n\ntype CLEAR = {\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n"],"mappings":"AA4BA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/views/Version/SelectComparison/types.ts"],"sourcesContent":["import type { PaginatedDocs, SanitizedCollectionConfig } from 'payload'\n\nimport type { CompareOption } from '../Default/types.js'\n\nexport type Props = {\n baseURL: string\n draftsEnabled?: boolean\n latestDraftVersionID?: string\n latestPublishedVersionID?: string\n onChange: (val: CompareOption) => void\n parentID?: number | string\n versionFromOption: CompareOption\n versionToID: string\n}\n\ntype CLEAR = {\n required: boolean\n type: 'CLEAR'\n}\n\ntype ADD = {\n collection: SanitizedCollectionConfig\n data: PaginatedDocs<any>\n type: 'ADD'\n}\n\nexport type Action = ADD | CLEAR\n\nexport type ValueWithRelation = {\n relationTo: string\n value: string\n}\n"],"mappings":"AA4BA","ignoreList":[]}
@@ -1,5 +1,12 @@
1
+ import { type SelectablePill } from '@payloadcms/ui';
1
2
  import React from 'react';
2
- import type { Props } from './types.js';
3
- import './index.scss';
3
+ export type SelectedLocaleOnChange = (args: {
4
+ locales: SelectablePill[];
5
+ }) => void;
6
+ export type Props = {
7
+ locales: SelectablePill[];
8
+ localeSelectorOpen: boolean;
9
+ onChange: SelectedLocaleOnChange;
10
+ };
4
11
  export declare const SelectLocales: React.FC<Props>;
5
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectLocales/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8BzC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/SelectLocales/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAClE,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,MAAM,MAAM,sBAAsB,GAAG,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,cAAc,EAAE,CAAA;CAAE,KAAK,IAAI,CAAA;AAClF,MAAM,MAAM,KAAK,GAAG;IAClB,OAAO,EAAE,cAAc,EAAE,CAAA;IACzB,kBAAkB,EAAE,OAAO,CAAA;IAC3B,QAAQ,EAAE,sBAAsB,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAyBzC,CAAA"}