@payloadcms/ui 3.69.0-internal.2883df2 → 3.69.0-internal.35bf893

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 (103) hide show
  1. package/dist/elements/AddNewRelation/index.js +1 -1
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  4. package/dist/elements/AppHeader/index.js +4 -2
  5. package/dist/elements/AppHeader/index.js.map +1 -1
  6. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  7. package/dist/elements/DeleteDocument/index.js +2 -1
  8. package/dist/elements/DeleteDocument/index.js.map +1 -1
  9. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  10. package/dist/elements/DocumentControls/index.js +4 -2
  11. package/dist/elements/DocumentControls/index.js.map +1 -1
  12. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  13. package/dist/elements/DuplicateDocument/index.js +10 -5
  14. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  15. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  16. package/dist/elements/EditMany/DrawerContent.js +16 -4
  17. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  18. package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +1 -1
  19. package/dist/elements/FolderView/BrowseByFolderButton/index.js +4 -2
  20. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  21. package/dist/elements/IDLabel/index.d.ts.map +1 -1
  22. package/dist/elements/IDLabel/index.js +14 -11
  23. package/dist/elements/IDLabel/index.js.map +1 -1
  24. package/dist/elements/ListControls/index.d.ts.map +1 -1
  25. package/dist/elements/ListControls/index.js +6 -4
  26. package/dist/elements/ListControls/index.js.map +1 -1
  27. package/dist/elements/Logout/index.d.ts.map +1 -1
  28. package/dist/elements/Logout/index.js +11 -8
  29. package/dist/elements/Logout/index.js.map +1 -1
  30. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  31. package/dist/elements/PermanentlyDeleteButton/index.js +2 -1
  32. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  33. package/dist/elements/Popup/PopupButtonList/index.scss +1 -0
  34. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -1
  35. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  36. package/dist/elements/Popup/PopupTrigger/index.js +24 -92
  37. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  38. package/dist/elements/Popup/index.d.ts +32 -1
  39. package/dist/elements/Popup/index.d.ts.map +1 -1
  40. package/dist/elements/Popup/index.js +249 -122
  41. package/dist/elements/Popup/index.js.map +1 -1
  42. package/dist/elements/Popup/index.scss +49 -231
  43. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  44. package/dist/elements/PublishButton/index.js +3 -1
  45. package/dist/elements/PublishButton/index.js.map +1 -1
  46. package/dist/elements/QueryPresets/QueryPresetBar/index.d.ts.map +1 -1
  47. package/dist/elements/QueryPresets/QueryPresetBar/index.js +15 -6
  48. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  49. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  50. package/dist/elements/RestoreButton/index.js +2 -1
  51. package/dist/elements/RestoreButton/index.js.map +1 -1
  52. package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
  53. package/dist/elements/StayLoggedIn/index.js +20 -17
  54. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  55. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  56. package/dist/elements/Table/DefaultCell/index.js +12 -9
  57. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  58. package/dist/exports/client/index.js +24 -24
  59. package/dist/exports/client/index.js.map +4 -4
  60. package/dist/exports/shared/index.js +1 -1
  61. package/dist/exports/shared/index.js.map +3 -3
  62. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  63. package/dist/fields/Relationship/Input.js +3 -2
  64. package/dist/fields/Relationship/Input.js.map +1 -1
  65. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +1 -1
  66. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +2 -2
  67. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  68. package/dist/graphics/Account/index.d.ts.map +1 -1
  69. package/dist/graphics/Account/index.js +4 -2
  70. package/dist/graphics/Account/index.js.map +1 -1
  71. package/dist/providers/Auth/index.d.ts.map +1 -1
  72. package/dist/providers/Auth/index.js +29 -8
  73. package/dist/providers/Auth/index.js.map +1 -1
  74. package/dist/providers/Folders/index.d.ts.map +1 -1
  75. package/dist/providers/Folders/index.js +3 -2
  76. package/dist/providers/Folders/index.js.map +1 -1
  77. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  78. package/dist/providers/TableColumns/buildColumnState/renderCell.js +2 -1
  79. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  80. package/dist/scss/app.scss +2 -1
  81. package/dist/styles.css +1 -1
  82. package/dist/utilities/buildFormState.js +2 -2
  83. package/dist/utilities/buildFormState.js.map +1 -1
  84. package/dist/utilities/handleBackToDashboard.d.ts +2 -1
  85. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -1
  86. package/dist/utilities/handleBackToDashboard.js +4 -2
  87. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  88. package/dist/utilities/handleGoBack.d.ts +2 -1
  89. package/dist/utilities/handleGoBack.d.ts.map +1 -1
  90. package/dist/utilities/handleGoBack.js +4 -2
  91. package/dist/utilities/handleGoBack.js.map +1 -1
  92. package/dist/views/CollectionFolder/index.js +5 -3
  93. package/dist/views/CollectionFolder/index.js.map +1 -1
  94. package/dist/views/Edit/SetDocumentStepNav/index.d.ts.map +1 -1
  95. package/dist/views/Edit/SetDocumentStepNav/index.js +23 -17
  96. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  97. package/dist/views/Edit/index.d.ts.map +1 -1
  98. package/dist/views/Edit/index.js +9 -5
  99. package/dist/views/Edit/index.js.map +1 -1
  100. package/dist/views/List/index.d.ts.map +1 -1
  101. package/dist/views/List/index.js +5 -3
  102. package/dist/views/List/index.js.map +1 -1
  103. package/package.json +5 -5
@@ -2,13 +2,6 @@
2
2
 
3
3
  @layer payload-default {
4
4
  .popup {
5
- --popup-button-highlight: var(--theme-elevation-200);
6
- --popup-bg: var(--theme-input-bg);
7
- --popup-text: var(--theme-text);
8
- --popup-caret-size: 10px;
9
- --popup-x-padding: calc(var(--base) * 0.33);
10
- --popup-padding: calc(var(--base) * 0.5);
11
- --button-size-offset: -8px;
12
5
  position: relative;
13
6
 
14
7
  &__trigger-wrap {
@@ -18,248 +11,73 @@
18
11
  cursor: pointer;
19
12
  }
20
13
 
21
- &__content {
22
- position: absolute;
23
- background: var(--popup-bg);
24
- opacity: 0;
25
- visibility: hidden;
26
- pointer-events: none;
27
- z-index: var(--z-popup);
28
- max-width: calc(100vw - #{$baseline});
29
- color: var(--popup-text);
30
- border-radius: 4px;
31
- padding-left: var(--popup-padding);
32
- padding-right: var(--popup-padding);
33
- min-width: var(--popup-width, auto);
34
- }
35
-
36
- &__hide-scrollbar {
37
- overflow: hidden;
38
- }
39
-
40
- &__scroll-container {
41
- overflow-y: auto;
42
- white-space: nowrap;
43
- width: calc(100% + var(--scrollbar-width));
44
- padding-top: var(--popup-padding);
45
- padding-bottom: var(--popup-padding);
46
- max-height: calc(var(--base) * 10);
47
- overflow-y: auto;
48
- }
49
-
50
- &__scroll-content {
51
- width: calc(100% - var(--scrollbar-width));
52
- }
53
-
54
- &--show-scrollbar {
55
- .popup__scroll-container,
56
- .popup__scroll-content {
57
- width: 100%;
58
- }
59
- }
60
-
61
- &:focus,
62
- &:active {
63
- outline: none;
64
- }
65
-
66
- ////////////////////////////////
67
- // SIZE
68
- ////////////////////////////////
69
-
70
- &--size-xsmall {
71
- --popup-width: 80px;
72
- .popup__content {
73
- @include shadow-sm;
74
- }
75
- }
76
-
77
- &--size-small {
78
- --popup-width: 100px;
79
- .popup__content {
80
- @include shadow-m;
81
- }
14
+ &__on-hover-watch {
15
+ display: contents;
82
16
  }
17
+ }
83
18
 
84
- &--size-medium {
85
- --popup-width: 150px;
86
- .popup__content {
87
- @include shadow-lg;
88
- }
89
- }
19
+ .popup__hidden-content {
20
+ display: none;
21
+ }
90
22
 
91
- &--size-large {
92
- --popup-width: 200px;
93
- .popup__content {
94
- @include shadow-lg;
95
- }
96
- }
23
+ .popup__content {
24
+ --popup-caret-size: 8px;
25
+ --popup-button-highlight: var(--theme-elevation-150);
97
26
 
98
- ////////////////////////////////
99
- /// BUTTON SIZE
100
- ////////////////////////////////
27
+ position: absolute;
28
+ z-index: var(--z-popup);
29
+ background: var(--theme-input-bg);
30
+ color: var(--theme-text);
31
+ border-radius: 4px;
32
+ padding: calc(var(--base) * 0.5);
33
+ min-width: 150px;
34
+ max-width: calc(100vw - var(--base));
35
+ @include shadow-lg;
101
36
 
102
- &--button-size-xsmall {
103
- --button-size-offset: -12px;
37
+ &.popup--size-xsmall {
38
+ min-width: 80px;
104
39
  }
105
-
106
- &--button-size-small {
107
- --button-size-offset: -8px;
40
+ &.popup--size-small {
41
+ min-width: 100px;
108
42
  }
109
-
110
- &--button-size-medium {
111
- --button-size-offset: -4px;
43
+ &.popup--size-large {
44
+ min-width: 200px;
112
45
  }
113
-
114
- &--button-size-large {
115
- --button-size-offset: 0px;
46
+ &.popup--size-fit-content {
47
+ min-width: fit-content;
116
48
  }
49
+ }
117
50
 
118
- ////////////////////////////////
119
- // HORIZONTAL ALIGNMENT
120
- ////////////////////////////////
121
- [dir='rtl'] &--h-align-left {
122
- .popup__caret {
123
- right: var(--popup-padding);
124
- left: unset;
125
- }
126
- }
127
- &--h-align-left {
128
- .popup__caret {
129
- left: var(--popup-padding);
130
- }
131
- }
132
- &--h-align-center {
133
- .popup__content {
134
- left: 50%;
135
- transform: translateX(-50%);
136
- }
137
-
138
- .popup__caret {
139
- left: 50%;
140
- transform: translateX(-50%);
141
- }
142
- }
143
-
144
- [dir='rtl'] &--h-align-right {
145
- .popup__content {
146
- right: unset;
147
- left: 0;
148
- }
149
-
150
- .popup__caret {
151
- right: unset;
152
- left: var(--popup-padding);
153
- }
154
- }
155
-
156
- &--h-align-right {
157
- .popup__content {
158
- right: var(--button-size-offset);
159
- }
160
-
161
- .popup__caret {
162
- right: var(--popup-padding);
163
- }
164
- }
165
-
166
- ////////////////////////////////
167
- // VERTICAL ALIGNMENT
168
- ////////////////////////////////
169
-
170
- &__caret {
171
- position: absolute;
172
- border: var(--popup-caret-size) solid transparent;
173
- }
174
-
175
- &--v-align-top {
176
- .popup__content {
177
- @include shadow-lg;
178
- bottom: calc(100% + var(--popup-caret-size));
179
- }
180
-
181
- .popup__caret {
182
- top: calc(100% - 1px);
183
- border-top-color: var(--popup-bg);
184
- }
185
- }
51
+ .popup__scroll-container {
52
+ overflow-y: auto;
53
+ max-height: calc(var(--base) * 10);
186
54
 
187
- &--v-align-bottom {
188
- .popup__content {
189
- @include shadow-lg-top;
190
- top: calc(100% + var(--popup-caret-size));
191
- }
55
+ &:not(.popup__scroll-container--show-scrollbar) {
56
+ scrollbar-width: none; // Firefox
57
+ -ms-overflow-style: none; // IE/Edge
192
58
 
193
- .popup__caret {
194
- bottom: calc(100% - 1px);
195
- border-bottom-color: var(--popup-bg);
59
+ &::-webkit-scrollbar {
60
+ display: none; // Chrome/Safari/Opera
196
61
  }
197
62
  }
63
+ }
198
64
 
199
- ////////////////////////////////
200
- // ACTIVE
201
- ////////////////////////////////
65
+ .popup__caret {
66
+ position: absolute;
67
+ width: 0;
68
+ height: 0;
69
+ border: var(--popup-caret-size) solid transparent;
70
+ left: var(--caret-left, 16px);
71
+ transform: translateX(-50%);
202
72
 
203
- &--active {
204
- .popup__content {
205
- opacity: 1;
206
- visibility: visible;
207
- pointer-events: all;
208
- }
73
+ .popup--v-bottom & {
74
+ top: calc(var(--popup-caret-size) * -2);
75
+ border-bottom-color: var(--theme-input-bg);
209
76
  }
210
77
 
211
- @include mid-break {
212
- --popup-padding: calc(var(--base) * 0.25);
213
-
214
- &--h-align-center {
215
- .popup__content {
216
- left: 50%;
217
- transform: translateX(-0%);
218
- }
219
-
220
- .popup__caret {
221
- left: 50%;
222
- transform: translateX(-0%);
223
- }
224
- }
225
-
226
- &--h-align-right {
227
- .popup__content {
228
- right: 0;
229
- }
230
-
231
- .popup__caret {
232
- right: var(--popup-padding);
233
- }
234
- }
235
-
236
- &--force-h-align-left {
237
- .popup__content {
238
- left: 0;
239
- right: unset;
240
- transform: unset;
241
- }
242
-
243
- .popup__caret {
244
- left: var(--popup-padding);
245
- right: unset;
246
- transform: unset;
247
- }
248
- }
249
-
250
- &--force-h-align-right {
251
- .popup__content {
252
- right: 0;
253
- left: unset;
254
- transform: unset;
255
- }
256
-
257
- .popup__caret {
258
- right: var(--popup-padding);
259
- left: unset;
260
- transform: unset;
261
- }
262
- }
78
+ .popup--v-top & {
79
+ bottom: calc(var(--popup-caret-size) * -2);
80
+ border-top-color: var(--theme-input-bg);
263
81
  }
264
82
  }
265
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAKvD,OAAO,KAA2C,MAAM,OAAO,CAAA;AAe/D,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,wBAAwB,qBAyP3E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/PublishButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAMvD,OAAO,KAA2C,MAAM,OAAO,CAAA;AAe/D,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,wBAAwB,qBAqP3E"}
@@ -2,6 +2,7 @@
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  import { useModal } from '@faceless-ui/modal';
5
+ import { getTranslation } from '@payloadcms/translations';
5
6
  import { hasAutosaveEnabled, hasScheduledPublishEnabled } from 'payload/shared';
6
7
  import * as qs from 'qs-esm';
7
8
  import React, { useCallback, useEffect, useState } from 'react';
@@ -57,6 +58,7 @@ export function PublishButton({
57
58
  serverURL
58
59
  } = config;
59
60
  const {
61
+ i18n,
60
62
  t
61
63
  } = useTranslation();
62
64
  const label = labelProp || t('version:publishChanges');
@@ -159,7 +161,7 @@ export function PublishButton({
159
161
  // Publish to all locales unless there are localized fields AND defaultLocalePublishOption is 'active'
160
162
  const isDefaultPublishAll = !isSpecificLocalePublishEnabled || localization && localization?.defaultLocalePublishOption !== 'active';
161
163
  const activeLocale = localization && localization?.locales.find(locale_0 => typeof locale_0 === 'string' ? locale_0 === localeCode : locale_0.code === localeCode);
162
- const activeLocaleLabel = activeLocale && (typeof activeLocale.label === 'string' ? activeLocale.label : activeLocale.label?.[localeCode] ?? undefined);
164
+ const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n);
163
165
  if (!hasPublishPermission) {
164
166
  return null;
165
167
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","hasAutosaveEnabled","hasScheduledPublishEnabled","qs","React","useCallback","useEffect","useState","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","ScheduleDrawer","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","code","localeCode","isModalOpen","toggleModal","drawerSlug","localization","routes","api","serverURL","t","entityConfig","useMemo","hasNewerVersions","canPublish","scheduledPublishEnabled","hasAutosave","canSchedulePublish","Boolean","hasLocalizedFields","setHasLocalizedFields","hasLocalizedField","fields","isSpecificLocalePublishEnabled","operation","disabled","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","publish","result","publishSpecificLocale","locale","params","stringify","depth","isDefaultPublishAll","defaultLocalePublishOption","activeLocale","locales","find","activeLocaleLabel","undefined","_jsxs","Fragment","_jsx","buttonId","enableSubMenu","onClick","size","SubMenuPopupContent","close","ButtonGroup","Button","type","defaultType","schedulePublishConfig","versions","drafts","schedulePublish","slug"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { hasAutosaveEnabled, hasScheduledPublishEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js'\nimport { PopupList } from '../Popup/index.js'\nimport { ScheduleDrawer } from './ScheduleDrawer/index.js'\n\nexport function PublishButton({ label: labelProp }: PublishButtonClientProps) {\n const {\n id,\n collectionSlug,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n uploadStatus,\n } = useDocumentInfo()\n\n const { config, getEntityConfig } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: localeCode } = useLocale()\n const { isModalOpen, toggleModal } = useModal()\n\n const drawerSlug = `schedule-publish-${id}`\n\n const {\n localization,\n routes: { api },\n serverURL,\n } = config\n\n const { t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const hasNewerVersions = unpublishedVersionCount > 0\n\n const canPublish =\n hasPublishPermission &&\n (modified || hasNewerVersions || !hasPublishedDoc) &&\n uploadStatus !== 'uploading'\n\n const scheduledPublishEnabled = hasScheduledPublishEnabled(entityConfig)\n\n // If autosave is enabled the modified will always be true so only conditionally check on modified state\n const hasAutosave = hasAutosaveEnabled(entityConfig)\n\n const canSchedulePublish = Boolean(\n scheduledPublishEnabled &&\n hasPublishPermission &&\n (globalSlug || (collectionSlug && id)) &&\n (hasAutosave || !modified),\n )\n\n const [hasLocalizedFields, setHasLocalizedFields] = useState(false)\n\n useEffect(() => {\n const hasLocalizedField = traverseForLocalizedFields(entityConfig?.fields)\n setHasLocalizedFields(hasLocalizedField)\n }, [entityConfig?.fields])\n\n const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission\n\n const operation = useOperation()\n\n const disabled = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const search = `?locale=${localeCode}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, localeCode, id, disabled])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && hasAutosave) {\n void saveDraft()\n }\n })\n\n const publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const result = await submit({\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishSpecificLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify({\n depth: 0,\n publishSpecificLocale: locale,\n })\n\n const action = `${serverURL}${api}${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params ? '?' + params : ''}`\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setHasPublishedDoc(true)\n }\n },\n [api, collectionSlug, globalSlug, id, serverURL, setHasPublishedDoc, submit, uploadStatus],\n )\n\n // Publish to all locales unless there are localized fields AND defaultLocalePublishOption is 'active'\n const isDefaultPublishAll =\n !isSpecificLocalePublishEnabled ||\n (localization && localization?.defaultLocalePublishOption !== 'active')\n\n const activeLocale =\n localization &&\n localization?.locales.find((locale) =>\n typeof locale === 'string' ? locale === localeCode : locale.code === localeCode,\n )\n\n const activeLocaleLabel =\n activeLocale &&\n (typeof activeLocale.label === 'string'\n ? activeLocale.label\n : (activeLocale.label?.[localeCode] ?? undefined))\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n enableSubMenu={canSchedulePublish}\n onClick={isDefaultPublishAll ? publish : () => publishSpecificLocale(activeLocale.code)}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled || canSchedulePublish\n ? ({ close }) => {\n return (\n <React.Fragment>\n {canSchedulePublish && (\n <PopupList.ButtonGroup key=\"schedule-publish\">\n <PopupList.Button\n id=\"schedule-publish\"\n onClick={() => [toggleModal(drawerSlug), close()]}\n >\n {t('version:schedulePublish')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n {isSpecificLocalePublishEnabled && (\n <PopupList.ButtonGroup>\n <PopupList.Button\n id=\"publish-locale\"\n onClick={\n isDefaultPublishAll\n ? () => publishSpecificLocale(activeLocale.code)\n : publish\n }\n >\n {isDefaultPublishAll\n ? t('version:publishIn', { locale: activeLocaleLabel })\n : t('version:publishAllLocales')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n </React.Fragment>\n )\n }\n : undefined\n }\n type=\"button\"\n >\n {!isDefaultPublishAll ? t('version:publishIn', { locale: activeLocaleLabel }) : label}\n </FormSubmit>\n {canSchedulePublish && isModalOpen(drawerSlug) && (\n <ScheduleDrawer\n defaultType={!hasNewerVersions ? 'unpublish' : 'publish'}\n schedulePublishConfig={\n scheduledPublishEnabled &&\n typeof entityConfig.versions.drafts.schedulePublish === 'object'\n ? entityConfig.versions.drafts.schedulePublish\n : undefined\n }\n slug={drawerSlug}\n />\n )}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","hasAutosaveEnabled","hasScheduledPublishEnabled","qs","React","useCallback","useEffect","useState","useForm","useFormModified","FormSubmit","useHotkey","useConfig","useDocumentInfo","useEditDepth","useLocale","useOperation","useTranslation","traverseForLocalizedFields","PopupList","ScheduleDrawer","PublishButton","label","labelProp","id","collectionSlug","globalSlug","hasPublishedDoc","hasPublishPermission","setHasPublishedDoc","setMostRecentVersionIsAutosaved","setUnpublishedVersionCount","unpublishedVersionCount","uploadStatus","config","getEntityConfig","submit","modified","editDepth","code","localeCode","isModalOpen","toggleModal","drawerSlug","localization","routes","api","serverURL","i18n","t","entityConfig","useMemo","hasNewerVersions","canPublish","scheduledPublishEnabled","hasAutosave","canSchedulePublish","Boolean","hasLocalizedFields","setHasLocalizedFields","hasLocalizedField","fields","isSpecificLocalePublishEnabled","operation","disabled","saveDraft","search","action","method","overrides","_status","skipValidation","cmdCtrlKey","keyCodes","e","preventDefault","stopPropagation","publish","result","publishSpecificLocale","locale","params","stringify","depth","isDefaultPublishAll","defaultLocalePublishOption","activeLocale","locales","find","activeLocaleLabel","_jsxs","Fragment","_jsx","buttonId","enableSubMenu","onClick","size","SubMenuPopupContent","close","ButtonGroup","Button","undefined","type","defaultType","schedulePublishConfig","versions","drafts","schedulePublish","slug"],"sources":["../../../src/elements/PublishButton/index.tsx"],"sourcesContent":["'use client'\n\nimport type { PublishButtonClientProps } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { hasAutosaveEnabled, hasScheduledPublishEnabled } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useForm, useFormModified } from '../../forms/Form/context.js'\nimport { FormSubmit } from '../../forms/Submit/index.js'\nimport { useHotkey } from '../../hooks/useHotkey.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { traverseForLocalizedFields } from '../../utilities/traverseForLocalizedFields.js'\nimport { PopupList } from '../Popup/index.js'\nimport { ScheduleDrawer } from './ScheduleDrawer/index.js'\n\nexport function PublishButton({ label: labelProp }: PublishButtonClientProps) {\n const {\n id,\n collectionSlug,\n globalSlug,\n hasPublishedDoc,\n hasPublishPermission,\n setHasPublishedDoc,\n setMostRecentVersionIsAutosaved,\n setUnpublishedVersionCount,\n unpublishedVersionCount,\n uploadStatus,\n } = useDocumentInfo()\n\n const { config, getEntityConfig } = useConfig()\n const { submit } = useForm()\n const modified = useFormModified()\n const editDepth = useEditDepth()\n const { code: localeCode } = useLocale()\n const { isModalOpen, toggleModal } = useModal()\n\n const drawerSlug = `schedule-publish-${id}`\n\n const {\n localization,\n routes: { api },\n serverURL,\n } = config\n\n const { i18n, t } = useTranslation()\n const label = labelProp || t('version:publishChanges')\n\n const entityConfig = React.useMemo(() => {\n if (collectionSlug) {\n return getEntityConfig({ collectionSlug })\n }\n\n if (globalSlug) {\n return getEntityConfig({ globalSlug })\n }\n }, [collectionSlug, globalSlug, getEntityConfig])\n\n const hasNewerVersions = unpublishedVersionCount > 0\n\n const canPublish =\n hasPublishPermission &&\n (modified || hasNewerVersions || !hasPublishedDoc) &&\n uploadStatus !== 'uploading'\n\n const scheduledPublishEnabled = hasScheduledPublishEnabled(entityConfig)\n\n // If autosave is enabled the modified will always be true so only conditionally check on modified state\n const hasAutosave = hasAutosaveEnabled(entityConfig)\n\n const canSchedulePublish = Boolean(\n scheduledPublishEnabled &&\n hasPublishPermission &&\n (globalSlug || (collectionSlug && id)) &&\n (hasAutosave || !modified),\n )\n\n const [hasLocalizedFields, setHasLocalizedFields] = useState(false)\n\n useEffect(() => {\n const hasLocalizedField = traverseForLocalizedFields(entityConfig?.fields)\n setHasLocalizedFields(hasLocalizedField)\n }, [entityConfig?.fields])\n\n const isSpecificLocalePublishEnabled = localization && hasLocalizedFields && hasPublishPermission\n\n const operation = useOperation()\n\n const disabled = operation === 'update' && !modified\n\n const saveDraft = useCallback(async () => {\n if (disabled) {\n return\n }\n\n const search = `?locale=${localeCode}&depth=0&fallback-locale=null&draft=true`\n let action\n let method = 'POST'\n\n if (collectionSlug) {\n action = `${serverURL}${api}/${collectionSlug}${id ? `/${id}` : ''}${search}`\n if (id) {\n method = 'PATCH'\n }\n }\n\n if (globalSlug) {\n action = `${serverURL}${api}/globals/${globalSlug}${search}`\n }\n\n await submit({\n action,\n method,\n overrides: {\n _status: 'draft',\n },\n skipValidation: true,\n })\n }, [submit, collectionSlug, globalSlug, serverURL, api, localeCode, id, disabled])\n\n useHotkey({ cmdCtrlKey: true, editDepth, keyCodes: ['s'] }, (e) => {\n e.preventDefault()\n e.stopPropagation()\n\n if (saveDraft && hasAutosave) {\n void saveDraft()\n }\n })\n\n const publish = useCallback(async () => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const result = await submit({\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setUnpublishedVersionCount(0)\n setMostRecentVersionIsAutosaved(false)\n setHasPublishedDoc(true)\n }\n }, [\n setHasPublishedDoc,\n submit,\n setUnpublishedVersionCount,\n uploadStatus,\n setMostRecentVersionIsAutosaved,\n ])\n\n const publishSpecificLocale = useCallback(\n async (locale) => {\n if (uploadStatus === 'uploading') {\n return\n }\n\n const params = qs.stringify({\n depth: 0,\n publishSpecificLocale: locale,\n })\n\n const action = `${serverURL}${api}${\n globalSlug ? `/globals/${globalSlug}` : `/${collectionSlug}${id ? `/${id}` : ''}`\n }${params ? '?' + params : ''}`\n\n const result = await submit({\n action,\n overrides: {\n _status: 'published',\n },\n })\n\n if (result) {\n setHasPublishedDoc(true)\n }\n },\n [api, collectionSlug, globalSlug, id, serverURL, setHasPublishedDoc, submit, uploadStatus],\n )\n\n // Publish to all locales unless there are localized fields AND defaultLocalePublishOption is 'active'\n const isDefaultPublishAll =\n !isSpecificLocalePublishEnabled ||\n (localization && localization?.defaultLocalePublishOption !== 'active')\n\n const activeLocale =\n localization &&\n localization?.locales.find((locale) =>\n typeof locale === 'string' ? locale === localeCode : locale.code === localeCode,\n )\n\n const activeLocaleLabel = activeLocale && getTranslation(activeLocale.label, i18n)\n\n if (!hasPublishPermission) {\n return null\n }\n\n return (\n <React.Fragment>\n <FormSubmit\n buttonId=\"action-save\"\n disabled={!canPublish}\n enableSubMenu={canSchedulePublish}\n onClick={isDefaultPublishAll ? publish : () => publishSpecificLocale(activeLocale.code)}\n size=\"medium\"\n SubMenuPopupContent={\n isSpecificLocalePublishEnabled || canSchedulePublish\n ? ({ close }) => {\n return (\n <React.Fragment>\n {canSchedulePublish && (\n <PopupList.ButtonGroup key=\"schedule-publish\">\n <PopupList.Button\n id=\"schedule-publish\"\n onClick={() => [toggleModal(drawerSlug), close()]}\n >\n {t('version:schedulePublish')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n {isSpecificLocalePublishEnabled && (\n <PopupList.ButtonGroup>\n <PopupList.Button\n id=\"publish-locale\"\n onClick={\n isDefaultPublishAll\n ? () => publishSpecificLocale(activeLocale.code)\n : publish\n }\n >\n {isDefaultPublishAll\n ? t('version:publishIn', { locale: activeLocaleLabel })\n : t('version:publishAllLocales')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n </React.Fragment>\n )\n }\n : undefined\n }\n type=\"button\"\n >\n {!isDefaultPublishAll ? t('version:publishIn', { locale: activeLocaleLabel }) : label}\n </FormSubmit>\n {canSchedulePublish && isModalOpen(drawerSlug) && (\n <ScheduleDrawer\n defaultType={!hasNewerVersions ? 'unpublish' : 'publish'}\n schedulePublishConfig={\n scheduledPublishEnabled &&\n typeof entityConfig.versions.drafts.schedulePublish === 'object'\n ? entityConfig.versions.drafts.schedulePublish\n : undefined\n }\n slug={drawerSlug}\n />\n )}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/QueryPresets/QueryPresetBar/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA;AAKzE,OAAO,KAAyC,MAAM,OAAO,CAAA;AAc7D,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,YAAY,EAAE,WAAW,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,sBAAsB,EAAE,6BAA6B,CAAA;CACtD,CAiSA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/QueryPresets/QueryPresetBar/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,6BAA6B,EAAE,MAAM,SAAS,CAAA;AASzE,OAAO,KAAyC,MAAM,OAAO,CAAA;AAc7D,OAAO,cAAc,CAAA;AAQrB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,YAAY,EAAE,WAAW,CAAA;IACzB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,sBAAsB,EAAE,6BAA6B,CAAA;CACtD,CA0TA,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useModal } from '@faceless-ui/modal';
3
3
  import { getTranslation } from '@payloadcms/translations';
4
- import { transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared';
4
+ import { formatApiURL, transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared';
5
5
  import React, { Fragment, useCallback, useMemo } from 'react';
6
6
  import { toast } from 'sonner';
7
7
  import { PlusIcon } from '../../../icons/Plus/index.js';
@@ -41,7 +41,8 @@ export const QueryPresetBar = ({
41
41
  config: {
42
42
  routes: {
43
43
  api: apiRoute
44
- }
44
+ },
45
+ serverURL
45
46
  },
46
47
  getEntityConfig
47
48
  } = useConfig();
@@ -96,7 +97,11 @@ export const QueryPresetBar = ({
96
97
  }, [refineListData]);
97
98
  const handleDeletePreset = useCallback(async () => {
98
99
  try {
99
- await fetch(`${apiRoute}/${queryPresetsSlug}/${activePreset.id}`, {
100
+ await fetch(formatApiURL({
101
+ apiRoute,
102
+ path: `/${queryPresetsSlug}/${activePreset.id}`,
103
+ serverURL
104
+ }), {
100
105
  method: 'DELETE'
101
106
  }).then(async res => {
102
107
  try {
@@ -127,10 +132,14 @@ export const QueryPresetBar = ({
127
132
  title: activePreset.title
128
133
  }));
129
134
  }
130
- }, [apiRoute, activePreset?.id, activePreset?.title, t, presetConfig, i18n, resetQueryPreset]);
135
+ }, [apiRoute, activePreset?.id, activePreset?.title, t, presetConfig, i18n, resetQueryPreset, serverURL]);
131
136
  const saveCurrentChanges = useCallback(async () => {
132
137
  try {
133
- await fetch(`${apiRoute}/payload-query-presets/${activePreset.id}`, {
138
+ await fetch(formatApiURL({
139
+ apiRoute,
140
+ path: `/${queryPresetsSlug}/${activePreset.id}`,
141
+ serverURL
142
+ }), {
134
143
  body: JSON.stringify({
135
144
  columns: transformColumnsToPreferences(query.columns),
136
145
  groupBy: query.groupBy,
@@ -163,7 +172,7 @@ export const QueryPresetBar = ({
163
172
  } catch (_err) {
164
173
  toast.error(t('error:unknown'));
165
174
  }
166
- }, [apiRoute, activePreset?.id, query.columns, query.groupBy, query.where, t, presetConfig?.labels?.singular, i18n, setQueryModified]);
175
+ }, [apiRoute, activePreset?.id, query.columns, query.groupBy, query.where, t, presetConfig?.labels?.singular, i18n, setQueryModified, serverURL]);
167
176
  const hasModifiedPreset = activePreset && modified;
168
177
  return /*#__PURE__*/_jsxs(Fragment, {
169
178
  children: [/*#__PURE__*/_jsxs("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","useCallback","useMemo","toast","PlusIcon","useConfig","useListQuery","useTranslation","ConfirmationModal","useDocumentDrawer","useListDrawer","ListSelectionButton","Pill","Translation","QueryPresetToggler","confirmDeletePresetModalSlug","queryPresetsSlug","baseClass","QueryPresetBar","activePreset","collectionSlug","queryPresetPermissions","modified","query","refineListData","setModified","setQueryModified","i18n","t","openModal","config","routes","api","apiRoute","getEntityConfig","presetConfig","PresetDocumentDrawer","openDrawer","openDocumentDrawer","id","CreateNewPresetDrawer","closeDrawer","closeCreateNewDrawer","openCreateNewDrawer","filterOptions","isTemp","not_equals","relatedCollection","equals","ListDrawer","closeListDrawer","openListDrawer","collectionSlugs","selectedCollection","handlePresetChange","preset","columns","undefined","groupBy","where","resetQueryPreset","handleDeletePreset","fetch","method","then","res","json","status","success","label","labels","singular","title","errors","forEach","error","message","_err","saveCurrentChanges","body","JSON","stringify","credentials","headers","hasModifiedPreset","_jsxs","className","_jsx","openPresetListDrawer","resetPreset","icon","onClick","size","type","update","isShared","delete","initialData","onSave","doc","redirectAfterCreate","elements","1","children","i18nKey","variables","confirmingLabel","heading","modalSlug","onConfirm","onDelete","onDuplicate","allowCreate","disableQueryPresets","onSelect"],"sources":["../../../../src/elements/QueryPresets/QueryPresetBar/index.tsx"],"sourcesContent":["import type { QueryPreset, SanitizedCollectionPermission } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { transformColumnsToPreferences, transformColumnsToSearchParams } from 'payload/shared'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport { PlusIcon } from '../../../icons/Plus/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useListQuery } from '../../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../../ConfirmationModal/index.js'\nimport { useDocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { useListDrawer } from '../../ListDrawer/index.js'\nimport { ListSelectionButton } from '../../ListSelection/index.js'\nimport { Pill } from '../../Pill/index.js'\nimport { Translation } from '../../Translation/index.js'\nimport { QueryPresetToggler } from '../QueryPresetToggler/index.js'\nimport './index.scss'\n\nconst confirmDeletePresetModalSlug = 'confirm-delete-preset'\n\nconst queryPresetsSlug = 'payload-query-presets'\n\nconst baseClass = 'query-preset-bar'\n\nexport const QueryPresetBar: React.FC<{\n activePreset: QueryPreset\n collectionSlug?: string\n queryPresetPermissions: SanitizedCollectionPermission\n}> = ({ activePreset, collectionSlug, queryPresetPermissions }) => {\n const { modified, query, refineListData, setModified: setQueryModified } = useListQuery()\n\n const { i18n, t } = useTranslation()\n const { openModal } = useModal()\n\n const {\n config: {\n routes: { api: apiRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const presetConfig = getEntityConfig({ collectionSlug: queryPresetsSlug })\n\n const [PresetDocumentDrawer, , { openDrawer: openDocumentDrawer }] = useDocumentDrawer({\n id: activePreset?.id,\n collectionSlug: queryPresetsSlug,\n })\n\n const [\n CreateNewPresetDrawer,\n ,\n { closeDrawer: closeCreateNewDrawer, openDrawer: openCreateNewDrawer },\n ] = useDocumentDrawer({\n collectionSlug: queryPresetsSlug,\n })\n\n const filterOptions = useMemo(\n () => ({\n 'payload-query-presets': {\n isTemp: {\n not_equals: true,\n },\n relatedCollection: {\n equals: collectionSlug,\n },\n },\n }),\n [collectionSlug],\n )\n\n const [ListDrawer, , { closeDrawer: closeListDrawer, openDrawer: openListDrawer }] =\n useListDrawer({\n collectionSlugs: [queryPresetsSlug],\n filterOptions,\n selectedCollection: queryPresetsSlug,\n })\n\n const handlePresetChange = useCallback(\n async (preset: QueryPreset) => {\n await refineListData(\n {\n columns: preset.columns ? transformColumnsToSearchParams(preset.columns) : undefined,\n groupBy: preset.groupBy || '',\n preset: preset.id,\n where: preset.where,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const resetQueryPreset = useCallback(async () => {\n await refineListData(\n {\n columns: [],\n groupBy: '',\n preset: '',\n where: {},\n },\n false,\n )\n }, [refineListData])\n\n const handleDeletePreset = useCallback(async () => {\n try {\n await fetch(`${apiRoute}/${queryPresetsSlug}/${activePreset.id}`, {\n method: 'DELETE',\n }).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleDeleted', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n title: activePreset.title,\n }),\n )\n\n await resetQueryPreset()\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n })\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }, [apiRoute, activePreset?.id, activePreset?.title, t, presetConfig, i18n, resetQueryPreset])\n\n const saveCurrentChanges = useCallback(async () => {\n try {\n await fetch(`${apiRoute}/payload-query-presets/${activePreset.id}`, {\n body: JSON.stringify({\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n where: query.where,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n }).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:updatedLabelSuccessfully', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n }),\n )\n\n setQueryModified(false)\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:unknown'))\n }\n }\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n })\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n }, [\n apiRoute,\n activePreset?.id,\n query.columns,\n query.groupBy,\n query.where,\n t,\n presetConfig?.labels?.singular,\n i18n,\n setQueryModified,\n ])\n\n const hasModifiedPreset = activePreset && modified\n\n return (\n <Fragment>\n <div className={baseClass}>\n <div className={`${baseClass}__menu`}>\n <QueryPresetToggler\n activePreset={activePreset}\n openPresetListDrawer={openListDrawer}\n resetPreset={resetQueryPreset}\n />\n <Pill\n aria-label={t('general:newLabel', { label: presetConfig?.labels?.singular })}\n className={`${baseClass}__create-new-preset`}\n icon={<PlusIcon />}\n id=\"create-new-preset\"\n onClick={() => {\n openCreateNewDrawer()\n }}\n size=\"small\"\n />\n </div>\n <div className={`${baseClass}__menu-items`}>\n {hasModifiedPreset && (\n <ListSelectionButton\n id=\"reset-preset\"\n key=\"reset\"\n onClick={async () => {\n await refineListData(\n {\n columns: transformColumnsToSearchParams(activePreset.columns),\n groupBy: activePreset.groupBy || '',\n where: activePreset.where,\n },\n false,\n )\n }}\n type=\"button\"\n >\n {t('general:reset')}\n </ListSelectionButton>\n )}\n {hasModifiedPreset && queryPresetPermissions.update && (\n <ListSelectionButton\n id=\"save-preset\"\n key=\"save\"\n onClick={async () => {\n await saveCurrentChanges()\n }}\n type=\"button\"\n >\n {activePreset?.isShared ? t('general:updateForEveryone') : t('fields:saveChanges')}\n </ListSelectionButton>\n )}\n {activePreset && queryPresetPermissions?.delete && (\n <Fragment>\n <ListSelectionButton\n id=\"delete-preset\"\n onClick={() => openModal(confirmDeletePresetModalSlug)}\n type=\"button\"\n >\n {t('general:deleteLabel', { label: presetConfig?.labels?.singular })}\n </ListSelectionButton>\n <ListSelectionButton\n id=\"edit-preset\"\n onClick={() => {\n openDocumentDrawer()\n }}\n type=\"button\"\n >\n {t('general:editLabel', { label: presetConfig?.labels?.singular })}\n </ListSelectionButton>\n </Fragment>\n )}\n </div>\n </div>\n <CreateNewPresetDrawer\n initialData={{\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n relatedCollection: collectionSlug,\n where: query.where,\n }}\n onSave={async ({ doc }) => {\n closeCreateNewDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n redirectAfterCreate={false}\n />\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: presetConfig?.labels?.singular,\n title: activePreset?.title,\n }}\n />\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmDeletePresetModalSlug}\n onConfirm={handleDeletePreset}\n />\n <PresetDocumentDrawer\n onDelete={() => {\n // setSelectedPreset(undefined)\n }}\n onDuplicate={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n onSave={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n <ListDrawer\n allowCreate={false}\n disableQueryPresets\n onSelect={async ({ doc }) => {\n closeListDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","formatApiURL","transformColumnsToPreferences","transformColumnsToSearchParams","React","Fragment","useCallback","useMemo","toast","PlusIcon","useConfig","useListQuery","useTranslation","ConfirmationModal","useDocumentDrawer","useListDrawer","ListSelectionButton","Pill","Translation","QueryPresetToggler","confirmDeletePresetModalSlug","queryPresetsSlug","baseClass","QueryPresetBar","activePreset","collectionSlug","queryPresetPermissions","modified","query","refineListData","setModified","setQueryModified","i18n","t","openModal","config","routes","api","apiRoute","serverURL","getEntityConfig","presetConfig","PresetDocumentDrawer","openDrawer","openDocumentDrawer","id","CreateNewPresetDrawer","closeDrawer","closeCreateNewDrawer","openCreateNewDrawer","filterOptions","isTemp","not_equals","relatedCollection","equals","ListDrawer","closeListDrawer","openListDrawer","collectionSlugs","selectedCollection","handlePresetChange","preset","columns","undefined","groupBy","where","resetQueryPreset","handleDeletePreset","fetch","path","method","then","res","json","status","success","label","labels","singular","title","errors","forEach","error","message","_err","saveCurrentChanges","body","JSON","stringify","credentials","headers","hasModifiedPreset","_jsxs","className","_jsx","openPresetListDrawer","resetPreset","icon","onClick","size","type","update","isShared","delete","initialData","onSave","doc","redirectAfterCreate","elements","1","children","i18nKey","variables","confirmingLabel","heading","modalSlug","onConfirm","onDelete","onDuplicate","allowCreate","disableQueryPresets","onSelect"],"sources":["../../../../src/elements/QueryPresets/QueryPresetBar/index.tsx"],"sourcesContent":["import type { QueryPreset, SanitizedCollectionPermission } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n formatApiURL,\n transformColumnsToPreferences,\n transformColumnsToSearchParams,\n} from 'payload/shared'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport { PlusIcon } from '../../../icons/Plus/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useListQuery } from '../../../providers/ListQuery/context.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../../ConfirmationModal/index.js'\nimport { useDocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { useListDrawer } from '../../ListDrawer/index.js'\nimport { ListSelectionButton } from '../../ListSelection/index.js'\nimport { Pill } from '../../Pill/index.js'\nimport { Translation } from '../../Translation/index.js'\nimport { QueryPresetToggler } from '../QueryPresetToggler/index.js'\nimport './index.scss'\n\nconst confirmDeletePresetModalSlug = 'confirm-delete-preset'\n\nconst queryPresetsSlug = 'payload-query-presets'\n\nconst baseClass = 'query-preset-bar'\n\nexport const QueryPresetBar: React.FC<{\n activePreset: QueryPreset\n collectionSlug?: string\n queryPresetPermissions: SanitizedCollectionPermission\n}> = ({ activePreset, collectionSlug, queryPresetPermissions }) => {\n const { modified, query, refineListData, setModified: setQueryModified } = useListQuery()\n\n const { i18n, t } = useTranslation()\n const { openModal } = useModal()\n\n const {\n config: {\n routes: { api: apiRoute },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const presetConfig = getEntityConfig({ collectionSlug: queryPresetsSlug })\n\n const [PresetDocumentDrawer, , { openDrawer: openDocumentDrawer }] = useDocumentDrawer({\n id: activePreset?.id,\n collectionSlug: queryPresetsSlug,\n })\n\n const [\n CreateNewPresetDrawer,\n ,\n { closeDrawer: closeCreateNewDrawer, openDrawer: openCreateNewDrawer },\n ] = useDocumentDrawer({\n collectionSlug: queryPresetsSlug,\n })\n\n const filterOptions = useMemo(\n () => ({\n 'payload-query-presets': {\n isTemp: {\n not_equals: true,\n },\n relatedCollection: {\n equals: collectionSlug,\n },\n },\n }),\n [collectionSlug],\n )\n\n const [ListDrawer, , { closeDrawer: closeListDrawer, openDrawer: openListDrawer }] =\n useListDrawer({\n collectionSlugs: [queryPresetsSlug],\n filterOptions,\n selectedCollection: queryPresetsSlug,\n })\n\n const handlePresetChange = useCallback(\n async (preset: QueryPreset) => {\n await refineListData(\n {\n columns: preset.columns ? transformColumnsToSearchParams(preset.columns) : undefined,\n groupBy: preset.groupBy || '',\n preset: preset.id,\n where: preset.where,\n },\n false,\n )\n },\n [refineListData],\n )\n\n const resetQueryPreset = useCallback(async () => {\n await refineListData(\n {\n columns: [],\n groupBy: '',\n preset: '',\n where: {},\n },\n false,\n )\n }, [refineListData])\n\n const handleDeletePreset = useCallback(async () => {\n try {\n await fetch(\n formatApiURL({\n apiRoute,\n path: `/${queryPresetsSlug}/${activePreset.id}`,\n serverURL,\n }),\n {\n method: 'DELETE',\n },\n ).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:titleDeleted', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n title: activePreset.title,\n }),\n )\n\n await resetQueryPreset()\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n })\n } catch (_err) {\n toast.error(t('error:deletingTitle', { title: activePreset.title }))\n }\n }, [\n apiRoute,\n activePreset?.id,\n activePreset?.title,\n t,\n presetConfig,\n i18n,\n resetQueryPreset,\n serverURL,\n ])\n\n const saveCurrentChanges = useCallback(async () => {\n try {\n await fetch(\n formatApiURL({\n apiRoute,\n path: `/${queryPresetsSlug}/${activePreset.id}`,\n serverURL,\n }),\n {\n body: JSON.stringify({\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n where: query.where,\n }),\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json',\n },\n method: 'PATCH',\n },\n ).then(async (res) => {\n try {\n const json = await res.json()\n\n if (res.status < 400) {\n toast.success(\n t('general:updatedLabelSuccessfully', {\n label: getTranslation(presetConfig?.labels?.singular, i18n),\n }),\n )\n\n setQueryModified(false)\n } else {\n if (json.errors) {\n json.errors.forEach((error) => toast.error(error.message))\n } else {\n toast.error(t('error:unknown'))\n }\n }\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n })\n } catch (_err) {\n toast.error(t('error:unknown'))\n }\n }, [\n apiRoute,\n activePreset?.id,\n query.columns,\n query.groupBy,\n query.where,\n t,\n presetConfig?.labels?.singular,\n i18n,\n setQueryModified,\n serverURL,\n ])\n\n const hasModifiedPreset = activePreset && modified\n\n return (\n <Fragment>\n <div className={baseClass}>\n <div className={`${baseClass}__menu`}>\n <QueryPresetToggler\n activePreset={activePreset}\n openPresetListDrawer={openListDrawer}\n resetPreset={resetQueryPreset}\n />\n <Pill\n aria-label={t('general:newLabel', { label: presetConfig?.labels?.singular })}\n className={`${baseClass}__create-new-preset`}\n icon={<PlusIcon />}\n id=\"create-new-preset\"\n onClick={() => {\n openCreateNewDrawer()\n }}\n size=\"small\"\n />\n </div>\n <div className={`${baseClass}__menu-items`}>\n {hasModifiedPreset && (\n <ListSelectionButton\n id=\"reset-preset\"\n key=\"reset\"\n onClick={async () => {\n await refineListData(\n {\n columns: transformColumnsToSearchParams(activePreset.columns),\n groupBy: activePreset.groupBy || '',\n where: activePreset.where,\n },\n false,\n )\n }}\n type=\"button\"\n >\n {t('general:reset')}\n </ListSelectionButton>\n )}\n {hasModifiedPreset && queryPresetPermissions.update && (\n <ListSelectionButton\n id=\"save-preset\"\n key=\"save\"\n onClick={async () => {\n await saveCurrentChanges()\n }}\n type=\"button\"\n >\n {activePreset?.isShared ? t('general:updateForEveryone') : t('fields:saveChanges')}\n </ListSelectionButton>\n )}\n {activePreset && queryPresetPermissions?.delete && (\n <Fragment>\n <ListSelectionButton\n id=\"delete-preset\"\n onClick={() => openModal(confirmDeletePresetModalSlug)}\n type=\"button\"\n >\n {t('general:deleteLabel', { label: presetConfig?.labels?.singular })}\n </ListSelectionButton>\n <ListSelectionButton\n id=\"edit-preset\"\n onClick={() => {\n openDocumentDrawer()\n }}\n type=\"button\"\n >\n {t('general:editLabel', { label: presetConfig?.labels?.singular })}\n </ListSelectionButton>\n </Fragment>\n )}\n </div>\n </div>\n <CreateNewPresetDrawer\n initialData={{\n columns: transformColumnsToPreferences(query.columns),\n groupBy: query.groupBy,\n relatedCollection: collectionSlug,\n where: query.where,\n }}\n onSave={async ({ doc }) => {\n closeCreateNewDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n redirectAfterCreate={false}\n />\n <ConfirmationModal\n body={\n <Translation\n elements={{\n '1': ({ children }) => <strong>{children}</strong>,\n }}\n i18nKey=\"general:aboutToDelete\"\n t={t}\n variables={{\n label: presetConfig?.labels?.singular,\n title: activePreset?.title,\n }}\n />\n }\n confirmingLabel={t('general:deleting')}\n heading={t('general:confirmDeletion')}\n modalSlug={confirmDeletePresetModalSlug}\n onConfirm={handleDeletePreset}\n />\n <PresetDocumentDrawer\n onDelete={() => {\n // setSelectedPreset(undefined)\n }}\n onDuplicate={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n onSave={async ({ doc }) => {\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n <ListDrawer\n allowCreate={false}\n disableQueryPresets\n onSelect={async ({ doc }) => {\n closeListDrawer()\n await handlePresetChange(doc as QueryPreset)\n }}\n />\n </Fragment>\n )\n}\n"],"mappings":";AAEA,SAASA,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SACEC,YAAY,EACZC,6BAA6B,EAC7BC,8BAA8B,QACzB;AACP,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,OAAO,QAAQ;AACtD,SAASC,KAAK,QAAQ;AAEtB,SAASC,QAAQ,QAAQ;AACzB,SAASC,SAAS,QAAQ;AAC1B,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,mBAAmB,QAAQ;AACpC,SAASC,IAAI,QAAQ;AACrB,SAASC,WAAW,QAAQ;AAC5B,SAASC,kBAAkB,QAAQ;AACnC,OAAO;AAEP,MAAMC,4BAAA,GAA+B;AAErC,MAAMC,gBAAA,GAAmB;AAEzB,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,cAAA,GAIRA,CAAC;EAAEC,YAAY;EAAEC,cAAc;EAAEC;AAAsB,CAAE;EAC5D,MAAM;IAAEC,QAAQ;IAAEC,KAAK;IAAEC,cAAc;IAAEC,WAAA,EAAaC;EAAgB,CAAE,GAAGpB,YAAA;EAE3E,MAAM;IAAEqB,IAAI;IAAEC;EAAC,CAAE,GAAGrB,cAAA;EACpB,MAAM;IAAEsB;EAAS,CAAE,GAAGnC,QAAA;EAEtB,MAAM;IACJoC,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,GAAA,EAAKC;MAAQ,CAAE;MACzBC;IAAS,CACV;IACDC;EAAe,CAChB,GAAG9B,SAAA;EAEJ,MAAM+B,YAAA,GAAeD,eAAA,CAAgB;IAAEf,cAAA,EAAgBJ;EAAiB;EAExE,MAAM,CAACqB,oBAAA,GAAwB;IAAEC,UAAA,EAAYC;EAAkB,CAAE,CAAC,GAAG9B,iBAAA,CAAkB;IACrF+B,EAAA,EAAIrB,YAAA,EAAcqB,EAAA;IAClBpB,cAAA,EAAgBJ;EAClB;EAEA,MAAM,CACJyB,qBAAA,GAEA;IAAEC,WAAA,EAAaC,oBAAoB;IAAEL,UAAA,EAAYM;EAAmB,CAAE,CACvE,GAAGnC,iBAAA,CAAkB;IACpBW,cAAA,EAAgBJ;EAClB;EAEA,MAAM6B,aAAA,GAAgB3C,OAAA,CACpB,OAAO;IACL,yBAAyB;MACvB4C,MAAA,EAAQ;QACNC,UAAA,EAAY;MACd;MACAC,iBAAA,EAAmB;QACjBC,MAAA,EAAQ7B;MACV;IACF;EACF,IACA,CAACA,cAAA,CAAe;EAGlB,MAAM,CAAC8B,UAAA,GAAc;IAAER,WAAA,EAAaS,eAAe;IAAEb,UAAA,EAAYc;EAAc,CAAE,CAAC,GAChF1C,aAAA,CAAc;IACZ2C,eAAA,EAAiB,CAACrC,gBAAA,CAAiB;IACnC6B,aAAA;IACAS,kBAAA,EAAoBtC;EACtB;EAEF,MAAMuC,kBAAA,GAAqBtD,WAAA,CACzB,MAAOuD,MAAA;IACL,MAAMhC,cAAA,CACJ;MACEiC,OAAA,EAASD,MAAA,CAAOC,OAAO,GAAG3D,8BAAA,CAA+B0D,MAAA,CAAOC,OAAO,IAAIC,SAAA;MAC3EC,OAAA,EAASH,MAAA,CAAOG,OAAO,IAAI;MAC3BH,MAAA,EAAQA,MAAA,CAAOhB,EAAE;MACjBoB,KAAA,EAAOJ,MAAA,CAAOI;IAChB,GACA;EAEJ,GACA,CAACpC,cAAA,CAAe;EAGlB,MAAMqC,gBAAA,GAAmB5D,WAAA,CAAY;IACnC,MAAMuB,cAAA,CACJ;MACEiC,OAAA,EAAS,EAAE;MACXE,OAAA,EAAS;MACTH,MAAA,EAAQ;MACRI,KAAA,EAAO,CAAC;IACV,GACA;EAEJ,GAAG,CAACpC,cAAA,CAAe;EAEnB,MAAMsC,kBAAA,GAAqB7D,WAAA,CAAY;IACrC,IAAI;MACF,MAAM8D,KAAA,CACJnE,YAAA,CAAa;QACXqC,QAAA;QACA+B,IAAA,EAAM,IAAIhD,gBAAA,IAAoBG,YAAA,CAAaqB,EAAE,EAAE;QAC/CN;MACF,IACA;QACE+B,MAAA,EAAQ;MACV,GACAC,IAAI,CAAC,MAAOC,GAAA;QACZ,IAAI;UACF,MAAMC,IAAA,GAAO,MAAMD,GAAA,CAAIC,IAAI;UAE3B,IAAID,GAAA,CAAIE,MAAM,GAAG,KAAK;YACpBlE,KAAA,CAAMmE,OAAO,CACX1C,CAAA,CAAE,wBAAwB;cACxB2C,KAAA,EAAO5E,cAAA,CAAeyC,YAAA,EAAcoC,MAAA,EAAQC,QAAA,EAAU9C,IAAA;cACtD+C,KAAA,EAAOvD,YAAA,CAAauD;YACtB;YAGF,MAAMb,gBAAA;UACR,OAAO;YACL,IAAIO,IAAA,CAAKO,MAAM,EAAE;cACfP,IAAA,CAAKO,MAAM,CAACC,OAAO,CAAEC,KAAA,IAAU1E,KAAA,CAAM0E,KAAK,CAACA,KAAA,CAAMC,OAAO;YAC1D,OAAO;cACL3E,KAAA,CAAM0E,KAAK,CAACjD,CAAA,CAAE,uBAAuB;gBAAE8C,KAAA,EAAOvD,YAAA,CAAauD;cAAM;YACnE;UACF;QACF,EAAE,OAAOK,IAAA,EAAM;UACb5E,KAAA,CAAM0E,KAAK,CAACjD,CAAA,CAAE,uBAAuB;YAAE8C,KAAA,EAAOvD,YAAA,CAAauD;UAAM;QACnE;MACF;IACF,EAAE,OAAOK,IAAA,EAAM;MACb5E,KAAA,CAAM0E,KAAK,CAACjD,CAAA,CAAE,uBAAuB;QAAE8C,KAAA,EAAOvD,YAAA,CAAauD;MAAM;IACnE;EACF,GAAG,CACDzC,QAAA,EACAd,YAAA,EAAcqB,EAAA,EACdrB,YAAA,EAAcuD,KAAA,EACd9C,CAAA,EACAQ,YAAA,EACAT,IAAA,EACAkC,gBAAA,EACA3B,SAAA,CACD;EAED,MAAM8C,kBAAA,GAAqB/E,WAAA,CAAY;IACrC,IAAI;MACF,MAAM8D,KAAA,CACJnE,YAAA,CAAa;QACXqC,QAAA;QACA+B,IAAA,EAAM,IAAIhD,gBAAA,IAAoBG,YAAA,CAAaqB,EAAE,EAAE;QAC/CN;MACF,IACA;QACE+C,IAAA,EAAMC,IAAA,CAAKC,SAAS,CAAC;UACnB1B,OAAA,EAAS5D,6BAAA,CAA8B0B,KAAA,CAAMkC,OAAO;UACpDE,OAAA,EAASpC,KAAA,CAAMoC,OAAO;UACtBC,KAAA,EAAOrC,KAAA,CAAMqC;QACf;QACAwB,WAAA,EAAa;QACbC,OAAA,EAAS;UACP,gBAAgB;QAClB;QACApB,MAAA,EAAQ;MACV,GACAC,IAAI,CAAC,MAAOC,GAAA;QACZ,IAAI;UACF,MAAMC,IAAA,GAAO,MAAMD,GAAA,CAAIC,IAAI;UAE3B,IAAID,GAAA,CAAIE,MAAM,GAAG,KAAK;YACpBlE,KAAA,CAAMmE,OAAO,CACX1C,CAAA,CAAE,oCAAoC;cACpC2C,KAAA,EAAO5E,cAAA,CAAeyC,YAAA,EAAcoC,MAAA,EAAQC,QAAA,EAAU9C,IAAA;YACxD;YAGFD,gBAAA,CAAiB;UACnB,OAAO;YACL,IAAI0C,IAAA,CAAKO,MAAM,EAAE;cACfP,IAAA,CAAKO,MAAM,CAACC,OAAO,CAAEC,KAAA,IAAU1E,KAAA,CAAM0E,KAAK,CAACA,KAAA,CAAMC,OAAO;YAC1D,OAAO;cACL3E,KAAA,CAAM0E,KAAK,CAACjD,CAAA,CAAE;YAChB;UACF;QACF,EAAE,OAAOmD,IAAA,EAAM;UACb5E,KAAA,CAAM0E,KAAK,CAACjD,CAAA,CAAE;QAChB;MACF;IACF,EAAE,OAAOmD,IAAA,EAAM;MACb5E,KAAA,CAAM0E,KAAK,CAACjD,CAAA,CAAE;IAChB;EACF,GAAG,CACDK,QAAA,EACAd,YAAA,EAAcqB,EAAA,EACdjB,KAAA,CAAMkC,OAAO,EACblC,KAAA,CAAMoC,OAAO,EACbpC,KAAA,CAAMqC,KAAK,EACXhC,CAAA,EACAQ,YAAA,EAAcoC,MAAA,EAAQC,QAAA,EACtB9C,IAAA,EACAD,gBAAA,EACAQ,SAAA,CACD;EAED,MAAMoD,iBAAA,GAAoBnE,YAAA,IAAgBG,QAAA;EAE1C,oBACEiE,KAAA,CAACvF,QAAA;4BACCuF,KAAA,CAAC;MAAIC,SAAA,EAAWvE,SAAA;8BACdsE,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGvE,SAAA,QAAiB;gCAClCwE,IAAA,CAAC3E,kBAAA;UACCK,YAAA,EAAcA,YAAA;UACduE,oBAAA,EAAsBtC,cAAA;UACtBuC,WAAA,EAAa9B;yBAEf4B,IAAA,CAAC7E,IAAA;UACC,cAAYgB,CAAA,CAAE,oBAAoB;YAAE2C,KAAA,EAAOnC,YAAA,EAAcoC,MAAA,EAAQC;UAAS;UAC1Ee,SAAA,EAAW,GAAGvE,SAAA,qBAA8B;UAC5C2E,IAAA,eAAMH,IAAA,CAACrF,QAAA;UACPoC,EAAA,EAAG;UACHqD,OAAA,EAASA,CAAA;YACPjD,mBAAA;UACF;UACAkD,IAAA,EAAK;;uBAGTP,KAAA,CAAC;QAAIC,SAAA,EAAW,GAAGvE,SAAA,cAAuB;mBACvCqE,iBAAA,iBACCG,IAAA,CAAC9E,mBAAA;UACC6B,EAAA,EAAG;UAEHqD,OAAA,EAAS,MAAAA,CAAA;YACP,MAAMrE,cAAA,CACJ;cACEiC,OAAA,EAAS3D,8BAAA,CAA+BqB,YAAA,CAAasC,OAAO;cAC5DE,OAAA,EAASxC,YAAA,CAAawC,OAAO,IAAI;cACjCC,KAAA,EAAOzC,YAAA,CAAayC;YACtB,GACA;UAEJ;UACAmC,IAAA,EAAK;oBAEJnE,CAAA,CAAE;WAbC,UAgBP0D,iBAAA,IAAqBjE,sBAAA,CAAuB2E,MAAM,iBACjDP,IAAA,CAAC9E,mBAAA;UACC6B,EAAA,EAAG;UAEHqD,OAAA,EAAS,MAAAA,CAAA;YACP,MAAMb,kBAAA;UACR;UACAe,IAAA,EAAK;oBAEJ5E,YAAA,EAAc8E,QAAA,GAAWrE,CAAA,CAAE,+BAA+BA,CAAA,CAAE;WANzD,SASPT,YAAA,IAAgBE,sBAAA,EAAwB6E,MAAA,iBACvCX,KAAA,CAACvF,QAAA;kCACCyF,IAAA,CAAC9E,mBAAA;YACC6B,EAAA,EAAG;YACHqD,OAAA,EAASA,CAAA,KAAMhE,SAAA,CAAUd,4BAAA;YACzBgF,IAAA,EAAK;sBAEJnE,CAAA,CAAE,uBAAuB;cAAE2C,KAAA,EAAOnC,YAAA,EAAcoC,MAAA,EAAQC;YAAS;2BAEpEgB,IAAA,CAAC9E,mBAAA;YACC6B,EAAA,EAAG;YACHqD,OAAA,EAASA,CAAA;cACPtD,kBAAA;YACF;YACAwD,IAAA,EAAK;sBAEJnE,CAAA,CAAE,qBAAqB;cAAE2C,KAAA,EAAOnC,YAAA,EAAcoC,MAAA,EAAQC;YAAS;;;;qBAM1EgB,IAAA,CAAChD,qBAAA;MACC0D,WAAA,EAAa;QACX1C,OAAA,EAAS5D,6BAAA,CAA8B0B,KAAA,CAAMkC,OAAO;QACpDE,OAAA,EAASpC,KAAA,CAAMoC,OAAO;QACtBX,iBAAA,EAAmB5B,cAAA;QACnBwC,KAAA,EAAOrC,KAAA,CAAMqC;MACf;MACAwC,MAAA,EAAQ,MAAAA,CAAO;QAAEC;MAAG,CAAE;QACpB1D,oBAAA;QACA,MAAMY,kBAAA,CAAmB8C,GAAA;MAC3B;MACAC,mBAAA,EAAqB;qBAEvBb,IAAA,CAACjF,iBAAA;MACCyE,IAAA,eACEQ,IAAA,CAAC5E,WAAA;QACC0F,QAAA,EAAU;UACR,KAAKC,CAAC;YAAEC;UAAQ,CAAE,kBAAKhB,IAAA,CAAC;sBAAQgB;;QAClC;QACAC,OAAA,EAAQ;QACR9E,CAAA,EAAGA,CAAA;QACH+E,SAAA,EAAW;UACTpC,KAAA,EAAOnC,YAAA,EAAcoC,MAAA,EAAQC,QAAA;UAC7BC,KAAA,EAAOvD,YAAA,EAAcuD;QACvB;;MAGJkC,eAAA,EAAiBhF,CAAA,CAAE;MACnBiF,OAAA,EAASjF,CAAA,CAAE;MACXkF,SAAA,EAAW/F,4BAAA;MACXgG,SAAA,EAAWjD;qBAEb2B,IAAA,CAACpD,oBAAA;MACC2E,QAAA,EAAUA,CAAA;QACR;MAAA,CACF;MACAC,WAAA,EAAa,MAAAA,CAAO;QAAEZ;MAAG,CAAE;QACzB,MAAM9C,kBAAA,CAAmB8C,GAAA;MAC3B;MACAD,MAAA,EAAQ,MAAAA,CAAO;QAAEC;MAAG,CAAE;QACpB,MAAM9C,kBAAA,CAAmB8C,GAAA;MAC3B;qBAEFZ,IAAA,CAACvC,UAAA;MACCgE,WAAA,EAAa;MACbC,mBAAmB;MACnBC,QAAA,EAAU,MAAAA,CAAO;QAAEf;MAAG,CAAE;QACtBlD,eAAA;QACA,MAAMI,kBAAA,CAAmB8C,GAAA;MAC3B;;;AAIR","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RestoreButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAOxD,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAW9E,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,SAAS,CAAC,EAAE,yBAAyB,CAAC,WAAW,CAAC,CAAA;IAC3D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA0KzC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/RestoreButton/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAOxD,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAA;AAW9E,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,cAAc,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAC1D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,SAAS,CAAC,EAAE,yBAAyB,CAAC,WAAW,CAAC,CAAA;IAC3D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAA;IACvC,QAAQ,CAAC,aAAa,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;IACvE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA2KzC,CAAA"}
@@ -102,7 +102,8 @@ export const RestoreButton = props => {
102
102
  if (redirectAfterRestore) {
103
103
  return startRouteTransition(() => router.push(formatAdminURL({
104
104
  adminRoute,
105
- path: `/collections/${collectionSlug}/${id}`
105
+ path: `/collections/${collectionSlug}/${id}`,
106
+ serverURL
106
107
  })));
107
108
  }
108
109
  if (typeof onRestore === 'function') {