@payloadcms/ui 3.56.0-internal.72f4fd2 → 3.56.0

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 (180) hide show
  1. package/dist/elements/BulkUpload/EditForm/index.js +4 -18
  2. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  3. package/dist/elements/ClipboardAction/index.js +173 -74
  4. package/dist/elements/ClipboardAction/index.js.map +1 -1
  5. package/dist/elements/CodeEditor/CodeEditor.js +155 -67
  6. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  7. package/dist/elements/Collapsible/index.js +15 -7
  8. package/dist/elements/Collapsible/index.js.map +1 -1
  9. package/dist/elements/ConfirmationModal/index.js +44 -8
  10. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  11. package/dist/elements/CopyLocaleData/index.js +97 -89
  12. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  13. package/dist/elements/CopyToClipboard/index.js +22 -2
  14. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  15. package/dist/elements/DefaultListViewTabs/index.js +47 -32
  16. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  17. package/dist/elements/DeleteMany/index.js +83 -47
  18. package/dist/elements/DeleteMany/index.js.map +1 -1
  19. package/dist/elements/DocumentControls/index.js +55 -27
  20. package/dist/elements/DocumentControls/index.js.map +1 -1
  21. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +10 -2
  22. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  23. package/dist/elements/DocumentDrawer/index.js +99 -47
  24. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  25. package/dist/elements/Drawer/index.js +57 -23
  26. package/dist/elements/Drawer/index.js.map +1 -1
  27. package/dist/elements/DrawerActionHeader/index.js +21 -3
  28. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  29. package/dist/elements/EmailAndUsername/index.d.ts.map +1 -1
  30. package/dist/elements/EmailAndUsername/index.js +31 -24
  31. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  32. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +225 -149
  33. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  34. package/dist/elements/FolderView/FolderFileCard/index.js +27 -19
  35. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  36. package/dist/elements/FolderView/MoveDocToFolder/index.js +23 -12
  37. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  38. package/dist/elements/FullscreenModal/index.js +20 -10
  39. package/dist/elements/FullscreenModal/index.js.map +1 -1
  40. package/dist/elements/ListDrawer/index.js +24 -18
  41. package/dist/elements/ListDrawer/index.js.map +1 -1
  42. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +32 -19
  43. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  44. package/dist/elements/ListSelection/index.js +27 -11
  45. package/dist/elements/ListSelection/index.js.map +1 -1
  46. package/dist/elements/LivePreview/Window/index.js +146 -65
  47. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  48. package/dist/elements/Loading/index.js +11 -2
  49. package/dist/elements/Loading/index.js.map +1 -1
  50. package/dist/elements/LoadingOverlay/index.js +102 -46
  51. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  52. package/dist/elements/Localizer/LocalizerLabel/index.js +36 -23
  53. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  54. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +139 -41
  55. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  56. package/dist/elements/RenderIfInViewport/index.d.ts +2 -2
  57. package/dist/elements/RenderIfInViewport/index.d.ts.map +1 -1
  58. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  59. package/dist/elements/SelectRow/index.js +40 -39
  60. package/dist/elements/SelectRow/index.js.map +1 -1
  61. package/dist/elements/ShimmerEffect/index.js +12 -20
  62. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  63. package/dist/elements/SortColumn/index.js +30 -21
  64. package/dist/elements/SortColumn/index.js.map +1 -1
  65. package/dist/elements/Table/DefaultCell/fields/Date/index.js +37 -9
  66. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  67. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +37 -35
  68. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  69. package/dist/elements/Table/DefaultCell/fields/Select/index.js +27 -12
  70. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  71. package/dist/elements/Thumbnail/index.js +75 -35
  72. package/dist/elements/Thumbnail/index.js.map +1 -1
  73. package/dist/elements/ThumbnailCard/index.js +26 -17
  74. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  75. package/dist/elements/Tooltip/index.js +127 -51
  76. package/dist/elements/Tooltip/index.js.map +1 -1
  77. package/dist/elements/Upload/index.js +10 -2
  78. package/dist/elements/Upload/index.js.map +1 -1
  79. package/dist/elements/WhereBuilder/Condition/Select/index.js +44 -31
  80. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  81. package/dist/exports/client/{CodeEditor-RHQXPDK5.js → CodeEditor-4J4OH4TD.js} +2 -2
  82. package/dist/exports/client/{DatePicker-F432AIH3.js → DatePicker-NMDEHPWL.js} +2 -2
  83. package/dist/exports/client/{chunk-AZDI6MW4.js → chunk-7RGKTZG2.js} +1 -1
  84. package/dist/exports/client/{chunk-AZDI6MW4.js.map → chunk-7RGKTZG2.js.map} +1 -1
  85. package/dist/exports/client/chunk-HBCG32CP.js +26 -0
  86. package/dist/exports/client/{chunk-FKP64OEZ.js.map → chunk-HBCG32CP.js.map} +4 -4
  87. package/dist/exports/client/index.d.ts +4 -5
  88. package/dist/exports/client/index.d.ts.map +1 -1
  89. package/dist/exports/client/index.js +12 -12
  90. package/dist/exports/client/index.js.map +4 -4
  91. package/dist/exports/rsc/index.d.ts +0 -1
  92. package/dist/exports/rsc/index.d.ts.map +1 -1
  93. package/dist/exports/rsc/index.js +0 -1
  94. package/dist/exports/rsc/index.js.map +1 -1
  95. package/dist/fields/Array/ArrayRow.d.ts +3 -2
  96. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  97. package/dist/fields/Array/ArrayRow.js +23 -13
  98. package/dist/fields/Array/ArrayRow.js.map +1 -1
  99. package/dist/fields/Array/index.js +477 -273
  100. package/dist/fields/Array/index.js.map +1 -1
  101. package/dist/fields/Checkbox/Input.js +19 -2
  102. package/dist/fields/Checkbox/Input.js.map +1 -1
  103. package/dist/fields/FieldError/index.js +29 -30
  104. package/dist/fields/FieldError/index.js.map +1 -1
  105. package/dist/fields/FieldLabel/index.js +64 -12
  106. package/dist/fields/FieldLabel/index.js.map +1 -1
  107. package/dist/fields/Group/index.d.ts +1 -1
  108. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  109. package/dist/fields/Relationship/Input.js +8 -0
  110. package/dist/fields/Relationship/Input.js.map +1 -1
  111. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +103 -45
  112. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  113. package/dist/fields/Relationship/select-components/SingleValue/index.js +44 -29
  114. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  115. package/dist/fields/Row/index.d.ts +3 -1
  116. package/dist/fields/Row/index.d.ts.map +1 -1
  117. package/dist/fields/Select/Input.js +31 -18
  118. package/dist/fields/Select/Input.js.map +1 -1
  119. package/dist/fields/Tabs/Tab/index.js +11 -2
  120. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  121. package/dist/fields/Tabs/index.d.ts +1 -2
  122. package/dist/fields/Tabs/index.d.ts.map +1 -1
  123. package/dist/fields/Tabs/index.js +225 -185
  124. package/dist/fields/Tabs/index.js.map +1 -1
  125. package/dist/fields/Upload/RelationshipContent/index.js +127 -79
  126. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  127. package/dist/forms/Form/createNestedClientFieldPath.js +1 -1
  128. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  129. package/dist/forms/Form/index.d.ts.map +1 -1
  130. package/dist/forms/Form/index.js +8 -1
  131. package/dist/forms/Form/index.js.map +1 -1
  132. package/dist/forms/RenderFields/RenderField.js +237 -245
  133. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  134. package/dist/forms/RenderFields/context.d.ts +29 -0
  135. package/dist/forms/RenderFields/context.d.ts.map +1 -1
  136. package/dist/forms/RenderFields/context.js +30 -2
  137. package/dist/forms/RenderFields/context.js.map +1 -1
  138. package/dist/forms/RenderFields/types.d.ts +10 -2
  139. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  140. package/dist/forms/RenderFields/types.js.map +1 -1
  141. package/dist/forms/useField/index.d.ts +0 -5
  142. package/dist/forms/useField/index.d.ts.map +1 -1
  143. package/dist/forms/useField/index.js +45 -74
  144. package/dist/forms/useField/index.js.map +1 -1
  145. package/dist/hooks/useIntersect.js +53 -35
  146. package/dist/hooks/useIntersect.js.map +1 -1
  147. package/dist/hooks/usePayloadAPI.js +44 -36
  148. package/dist/hooks/usePayloadAPI.js.map +1 -1
  149. package/dist/providers/Config/index.d.ts +17 -2
  150. package/dist/providers/Config/index.d.ts.map +1 -1
  151. package/dist/providers/Config/index.js +57 -20
  152. package/dist/providers/Config/index.js.map +1 -1
  153. package/dist/providers/Folders/index.d.ts.map +1 -1
  154. package/dist/providers/Folders/index.js +24 -13
  155. package/dist/providers/Folders/index.js.map +1 -1
  156. package/dist/providers/ServerFunctions/index.d.ts +1 -4
  157. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  158. package/dist/providers/ServerFunctions/index.js +0 -13
  159. package/dist/providers/ServerFunctions/index.js.map +1 -1
  160. package/dist/utilities/buildFormState.d.ts.map +1 -1
  161. package/dist/utilities/buildFormState.js +2 -1
  162. package/dist/utilities/buildFormState.js.map +1 -1
  163. package/dist/utilities/reduceFieldsToOptions.d.ts +1 -1
  164. package/dist/utilities/reduceFieldsToOptions.d.ts.map +1 -1
  165. package/dist/utilities/reduceFieldsToOptions.js +7 -12
  166. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  167. package/dist/views/BrowseByFolder/index.js +55 -37
  168. package/dist/views/BrowseByFolder/index.js.map +1 -1
  169. package/dist/views/CollectionFolder/index.js +40 -13
  170. package/dist/views/CollectionFolder/index.js.map +1 -1
  171. package/dist/views/Edit/Auth/index.js +105 -93
  172. package/dist/views/Edit/Auth/index.js.map +1 -1
  173. package/package.json +8 -8
  174. package/dist/exports/client/chunk-FKP64OEZ.js +0 -26
  175. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts +0 -35
  176. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +0 -1
  177. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +0 -83
  178. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +0 -1
  179. /package/dist/exports/client/{CodeEditor-RHQXPDK5.js.map → CodeEditor-4J4OH4TD.js.map} +0 -0
  180. /package/dist/exports/client/{DatePicker-F432AIH3.js.map → DatePicker-NMDEHPWL.js.map} +0 -0
@@ -32,7 +32,7 @@ import { SaveDraftButton } from '../SaveDraftButton/index.js';
32
32
  import { Status } from '../Status/index.js';
33
33
  const baseClass = 'doc-controls';
34
34
  export const DocumentControls = props => {
35
- const $ = _c(5);
35
+ const $ = _c(15);
36
36
  const {
37
37
  id,
38
38
  slug,
@@ -59,12 +59,20 @@ export const DocumentControls = props => {
59
59
  redirectAfterRestore,
60
60
  user
61
61
  } = props;
62
+ let t1;
63
+ if ($[0] !== t0) {
64
+ t1 = t0 === undefined ? {} : t0;
65
+ $[0] = t0;
66
+ $[1] = t1;
67
+ } else {
68
+ t1 = $[1];
69
+ }
62
70
  const {
63
71
  PreviewButton: CustomPreviewButton,
64
72
  PublishButton: CustomPublishButton,
65
73
  SaveButton: CustomSaveButton,
66
74
  SaveDraftButton: CustomSaveDraftButton
67
- } = t0 === undefined ? {} : t0;
75
+ } = t1;
68
76
  const {
69
77
  i18n,
70
78
  t
@@ -84,24 +92,24 @@ export const DocumentControls = props => {
84
92
  isLivePreviewEnabled
85
93
  } = useLivePreviewContext();
86
94
  const {
87
- admin: t1,
95
+ admin: t2,
88
96
  localization,
89
- routes: t2
97
+ routes: t3
90
98
  } = config;
91
99
  const {
92
100
  dateFormat
93
- } = t1;
101
+ } = t2;
94
102
  const {
95
103
  admin: adminRoute
96
- } = t2;
104
+ } = t3;
97
105
  const [updatedAt, setUpdatedAt] = React.useState("");
98
106
  const [createdAt, setCreatedAt] = React.useState("");
99
107
  const processing = useFormProcessing();
100
108
  const initializing = useFormInitializing();
101
- let t3;
102
109
  let t4;
103
- if ($[0] !== data || $[1] !== dateFormat || $[2] !== i18n) {
104
- t3 = () => {
110
+ let t5;
111
+ if ($[2] !== data || $[3] !== dateFormat || $[4] !== i18n) {
112
+ t4 = () => {
105
113
  if (data?.updatedAt) {
106
114
  setUpdatedAt(formatDate({
107
115
  date: data.updatedAt,
@@ -117,17 +125,17 @@ export const DocumentControls = props => {
117
125
  }));
118
126
  }
119
127
  };
120
- t4 = [data, i18n, dateFormat];
121
- $[0] = data;
122
- $[1] = dateFormat;
123
- $[2] = i18n;
124
- $[3] = t3;
125
- $[4] = t4;
128
+ t5 = [data, i18n, dateFormat];
129
+ $[2] = data;
130
+ $[3] = dateFormat;
131
+ $[4] = i18n;
132
+ $[5] = t4;
133
+ $[6] = t5;
126
134
  } else {
127
- t3 = $[3];
128
- t4 = $[4];
135
+ t4 = $[5];
136
+ t5 = $[6];
129
137
  }
130
- useEffect(t3, t4);
138
+ useEffect(t4, t5);
131
139
  const hasCreatePermission = permissions && "create" in permissions && permissions.create;
132
140
  const hasDeletePermission = permissions && "delete" in permissions && permissions.delete;
133
141
  const showDotMenu = Boolean(collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission));
@@ -141,6 +149,33 @@ export const DocumentControls = props => {
141
149
  const showCopyToLocale = localization && !collectionConfig?.admin?.disableCopyToLocale;
142
150
  const showFolderMetaIcon = collectionConfig && collectionConfig.folders;
143
151
  const showLockedMetaIcon = user && readOnlyForIncomingUser;
152
+ let t6;
153
+ if ($[7] !== isInDrawer || $[8] !== isLivePreviewEnabled) {
154
+ t6 = isLivePreviewEnabled && !isInDrawer && _jsx(LivePreviewToggler, {});
155
+ $[7] = isInDrawer;
156
+ $[8] = isLivePreviewEnabled;
157
+ $[9] = t6;
158
+ } else {
159
+ t6 = $[9];
160
+ }
161
+ let t7;
162
+ if ($[10] !== onTakeOver || $[11] !== readOnlyForIncomingUser || $[12] !== t || $[13] !== user) {
163
+ t7 = user && readOnlyForIncomingUser && _jsx(Button, {
164
+ buttonStyle: "secondary",
165
+ id: "take-over",
166
+ onClick: onTakeOver,
167
+ size: "medium",
168
+ type: "button",
169
+ children: t("general:takeOver")
170
+ });
171
+ $[10] = onTakeOver;
172
+ $[11] = readOnlyForIncomingUser;
173
+ $[12] = t;
174
+ $[13] = user;
175
+ $[14] = t7;
176
+ } else {
177
+ t7 = $[14];
178
+ }
144
179
  return _jsxs(Gutter, {
145
180
  className: baseClass,
146
181
  children: [_jsxs("div", {
@@ -207,7 +242,7 @@ export const DocumentControls = props => {
207
242
  className: `${baseClass}__controls-wrapper`,
208
243
  children: [_jsxs("div", {
209
244
  className: `${baseClass}__controls`,
210
- children: [BeforeDocumentControls, isLivePreviewEnabled && !isInDrawer && _jsx(LivePreviewToggler, {}), (collectionConfig?.admin.preview || globalConfig?.admin.preview) && _jsx(RenderCustomComponent, {
245
+ children: [BeforeDocumentControls, t6, (collectionConfig?.admin.preview || globalConfig?.admin.preview) && _jsx(RenderCustomComponent, {
211
246
  CustomComponent: CustomPreviewButton,
212
247
  Fallback: _jsx(PreviewButton, {})
213
248
  }), hasSavePermission && !isTrashed && _jsx(Fragment, {
@@ -237,14 +272,7 @@ export const DocumentControls = props => {
237
272
  onRestore,
238
273
  redirectAfterRestore,
239
274
  singularLabel: collectionConfig?.labels?.singular
240
- }), user && readOnlyForIncomingUser && _jsx(Button, {
241
- buttonStyle: "secondary",
242
- id: "take-over",
243
- onClick: onTakeOver,
244
- size: "medium",
245
- type: "button",
246
- children: t("general:takeOver")
247
- })]
275
+ }), t7]
248
276
  }), showDotMenu && !readOnlyForIncomingUser && _jsx(Popup, {
249
277
  button: _jsxs("div", {
250
278
  className: `${baseClass}__dots`,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","formatAdminURL","React","Fragment","useEffect","useFormInitializing","useFormProcessing","useConfig","useEditDepth","useLivePreviewContext","useTranslation","formatDate","Autosave","Button","CopyLocaleData","DeleteDocument","DuplicateDocument","MoveDocToFolder","Gutter","LivePreviewToggler","Locked","PermanentlyDeleteButton","Popup","PopupList","PreviewButton","PublishButton","RenderCustomComponent","RestoreButton","SaveButton","SaveDraftButton","Status","baseClass","DocumentControls","props","$","id","slug","BeforeDocumentControls","customComponents","t0","data","disableActions","disableCreate","EditMenuItems","hasSavePermission","isAccountView","isEditing","isInDrawer","isTrashed","onDelete","onDrawerCreateNew","onDuplicate","onRestore","onTakeOver","permissions","readOnlyForIncomingUser","redirectAfterDelete","redirectAfterDuplicate","redirectAfterRestore","user","CustomPreviewButton","CustomPublishButton","CustomSaveButton","CustomSaveDraftButton","undefined","i18n","t","editDepth","config","getEntityConfig","collectionConfig","collectionSlug","globalConfig","globalSlug","isLivePreviewEnabled","admin","t1","localization","routes","t2","dateFormat","adminRoute","updatedAt","setUpdatedAt","useState","createdAt","setCreatedAt","processing","initializing","t3","t4","date","pattern","hasCreatePermission","create","hasDeletePermission","delete","showDotMenu","Boolean","unsavedDraftWithValidations","versions","drafts","validate","collectionConfigDrafts","globalConfigDrafts","autosaveEnabled","autosave","collectionAutosaveEnabled","globalAutosaveEnabled","showSaveDraftButton","showCopyToLocale","disableCopyToLocale","showFolderMetaIcon","folders","showLockedMetaIcon","_jsxs","className","children","_jsx","folderCollectionSlug","folderFieldName","fieldName","label","labels","singular","filter","join","collection","global","publishedDocUpdatedAt","timestamps","title","preview","CustomComponent","Fallback","buttonId","toString","singularLabel","buttonStyle","onClick","size","type","button","disabled","horizontalAlign","verticalAlign","ButtonGroup","href","path","disableDuplicate","useAsTitle"],"sources":["../../../src/elements/DocumentControls/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientUser,\n Data,\n SanitizedCollectionConfig,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useEffect } from 'react'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { useFormInitializing, useFormProcessing } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLivePreviewContext } from '../../providers/LivePreview/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatDate } from '../../utilities/formatDocTitle/formatDateTitle.js'\nimport { Autosave } from '../Autosave/index.js'\nimport { Button } from '../Button/index.js'\nimport { CopyLocaleData } from '../CopyLocaleData/index.js'\nimport { DeleteDocument } from '../DeleteDocument/index.js'\nimport { DuplicateDocument } from '../DuplicateDocument/index.js'\nimport { MoveDocToFolder } from '../FolderView/MoveDocToFolder/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { LivePreviewToggler } from '../LivePreview/Toggler/index.js'\nimport { Locked } from '../Locked/index.js'\nimport { PermanentlyDeleteButton } from '../PermanentlyDeleteButton/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { PreviewButton } from '../PreviewButton/index.js'\nimport { PublishButton } from '../PublishButton/index.js'\nimport { RenderCustomComponent } from '../RenderCustomComponent/index.js'\nimport { RestoreButton } from '../RestoreButton/index.js'\nimport { SaveButton } from '../SaveButton/index.js'\nimport './index.scss'\nimport { SaveDraftButton } from '../SaveDraftButton/index.js'\nimport { Status } from '../Status/index.js'\n\nconst baseClass = 'doc-controls'\n\nexport const DocumentControls: React.FC<{\n readonly apiURL: string\n readonly BeforeDocumentControls?: React.ReactNode\n readonly customComponents?: {\n readonly PreviewButton?: React.ReactNode\n readonly PublishButton?: React.ReactNode\n readonly SaveButton?: React.ReactNode\n readonly SaveDraftButton?: React.ReactNode\n }\n readonly data?: Data\n readonly disableActions?: boolean\n readonly disableCreate?: boolean\n readonly EditMenuItems?: React.ReactNode\n readonly hasPublishPermission?: boolean\n readonly hasSavePermission?: boolean\n readonly id?: number | string\n readonly isAccountView?: boolean\n readonly isEditing?: boolean\n readonly isInDrawer?: boolean\n readonly isTrashed?: boolean\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly onDrawerCreateNew?: () => void\n /* Only available if `redirectAfterDuplicate` is `false` */\n readonly onDuplicate?: DocumentDrawerContextType['onDuplicate']\n readonly onRestore?: DocumentDrawerContextType['onRestore']\n readonly onSave?: DocumentDrawerContextType['onSave']\n readonly onTakeOver?: () => void\n readonly permissions: null | SanitizedCollectionPermission | SanitizedGlobalPermission\n readonly readOnlyForIncomingUser?: boolean\n readonly redirectAfterDelete?: boolean\n readonly redirectAfterDuplicate?: boolean\n readonly redirectAfterRestore?: boolean\n readonly slug: SanitizedCollectionConfig['slug']\n readonly user?: ClientUser\n}> = (props) => {\n const {\n id,\n slug,\n BeforeDocumentControls,\n customComponents: {\n PreviewButton: CustomPreviewButton,\n PublishButton: CustomPublishButton,\n SaveButton: CustomSaveButton,\n SaveDraftButton: CustomSaveDraftButton,\n } = {},\n data,\n disableActions,\n disableCreate,\n EditMenuItems,\n hasSavePermission,\n isAccountView,\n isEditing,\n isInDrawer,\n isTrashed,\n onDelete,\n onDrawerCreateNew,\n onDuplicate,\n onRestore,\n onTakeOver,\n permissions,\n readOnlyForIncomingUser,\n redirectAfterDelete,\n redirectAfterDuplicate,\n redirectAfterRestore,\n user,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const editDepth = useEditDepth()\n\n const { config, getEntityConfig } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: slug })\n\n const globalConfig = getEntityConfig({ globalSlug: slug })\n\n const { isLivePreviewEnabled } = useLivePreviewContext()\n\n const {\n admin: { dateFormat },\n localization,\n routes: { admin: adminRoute },\n } = config\n\n // Settings these in state to avoid hydration issues if there is a mismatch between the server and client\n const [updatedAt, setUpdatedAt] = React.useState<string>('')\n const [createdAt, setCreatedAt] = React.useState<string>('')\n\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n\n useEffect(() => {\n if (data?.updatedAt) {\n setUpdatedAt(formatDate({ date: data.updatedAt, i18n, pattern: dateFormat }))\n }\n if (data?.createdAt) {\n setCreatedAt(formatDate({ date: data.createdAt, i18n, pattern: dateFormat }))\n }\n }, [data, i18n, dateFormat])\n\n const hasCreatePermission = permissions && 'create' in permissions && permissions.create\n\n const hasDeletePermission = permissions && 'delete' in permissions && permissions.delete\n\n const showDotMenu = Boolean(\n collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission),\n )\n\n const unsavedDraftWithValidations =\n !id && collectionConfig?.versions?.drafts && collectionConfig.versions?.drafts.validate\n\n const collectionConfigDrafts = collectionConfig?.versions?.drafts\n const globalConfigDrafts = globalConfig?.versions?.drafts\n\n const autosaveEnabled =\n (collectionConfigDrafts && collectionConfigDrafts?.autosave) ||\n (globalConfigDrafts && globalConfigDrafts?.autosave)\n\n const collectionAutosaveEnabled = collectionConfigDrafts && collectionConfigDrafts?.autosave\n const globalAutosaveEnabled = globalConfigDrafts && globalConfigDrafts?.autosave\n\n const showSaveDraftButton =\n (collectionAutosaveEnabled &&\n collectionConfigDrafts.autosave !== false &&\n collectionConfigDrafts.autosave.showSaveDraftButton === true) ||\n (globalAutosaveEnabled &&\n globalConfigDrafts.autosave !== false &&\n globalConfigDrafts.autosave.showSaveDraftButton === true)\n\n const showCopyToLocale = localization && !collectionConfig?.admin?.disableCopyToLocale\n\n const showFolderMetaIcon = collectionConfig && collectionConfig.folders\n const showLockedMetaIcon = user && readOnlyForIncomingUser\n\n return (\n <Gutter className={baseClass}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n {showLockedMetaIcon || showFolderMetaIcon ? (\n <div className={`${baseClass}__meta-icons`}>\n {showLockedMetaIcon && (\n <Locked className={`${baseClass}__locked-controls`} user={user} />\n )}\n {showFolderMetaIcon && config.folders && !isTrashed && (\n <MoveDocToFolder\n folderCollectionSlug={config.folders.slug}\n folderFieldName={config.folders.fieldName}\n />\n )}\n </div>\n ) : null}\n <ul className={`${baseClass}__meta`}>\n {collectionConfig && !isEditing && !isAccountView && (\n <li className={`${baseClass}__list-item`}>\n <p className={`${baseClass}__value`}>\n {i18n.t('general:creatingNewLabel', {\n label: getTranslation(\n collectionConfig?.labels?.singular ?? i18n.t('general:document'),\n i18n,\n ),\n })}\n </p>\n </li>\n )}\n {(collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts) && (\n <Fragment>\n {(globalConfig || (collectionConfig && isEditing)) && (\n <li\n className={[`${baseClass}__status`, `${baseClass}__list-item`]\n .filter(Boolean)\n .join(' ')}\n >\n <Status />\n </li>\n )}\n {hasSavePermission &&\n autosaveEnabled &&\n !unsavedDraftWithValidations &&\n !isTrashed && (\n <li className={`${baseClass}__list-item`}>\n <Autosave\n collection={collectionConfig}\n global={globalConfig}\n id={id}\n publishedDocUpdatedAt={data?.createdAt}\n />\n </li>\n )}\n </Fragment>\n )}\n {collectionConfig?.timestamps && (isEditing || isAccountView) && (\n <Fragment>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={data?.updatedAt ? updatedAt : ''}\n >\n <p className={`${baseClass}__label`}>\n {i18n.t(isTrashed ? 'general:deleted' : 'general:lastModified')}:&nbsp;\n </p>\n\n {data?.updatedAt && <p className={`${baseClass}__value`}>{updatedAt}</p>}\n </li>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={data?.createdAt ? createdAt : ''}\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:created')}:&nbsp;</p>\n {data?.createdAt && <p className={`${baseClass}__value`}>{createdAt}</p>}\n </li>\n </Fragment>\n )}\n </ul>\n </div>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__controls`}>\n {BeforeDocumentControls}\n {isLivePreviewEnabled && !isInDrawer && <LivePreviewToggler />}\n {(collectionConfig?.admin.preview || globalConfig?.admin.preview) && (\n <RenderCustomComponent\n CustomComponent={CustomPreviewButton}\n Fallback={<PreviewButton />}\n />\n )}\n {hasSavePermission && !isTrashed && (\n <Fragment>\n {collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? (\n <Fragment>\n {(unsavedDraftWithValidations ||\n !autosaveEnabled ||\n (autosaveEnabled && showSaveDraftButton)) && (\n <RenderCustomComponent\n CustomComponent={CustomSaveDraftButton}\n Fallback={<SaveDraftButton />}\n />\n )}\n <RenderCustomComponent\n CustomComponent={CustomPublishButton}\n Fallback={<PublishButton />}\n />\n </Fragment>\n ) : (\n <RenderCustomComponent\n CustomComponent={CustomSaveButton}\n Fallback={<SaveButton />}\n />\n )}\n </Fragment>\n )}\n {hasDeletePermission && isTrashed && (\n <PermanentlyDeleteButton\n buttonId=\"action-permanently-delete\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n onDelete={onDelete}\n redirectAfterDelete={redirectAfterDelete}\n singularLabel={collectionConfig?.labels?.singular}\n />\n )}\n {hasSavePermission && isTrashed && (\n <RestoreButton\n buttonId=\"action-restore\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n onRestore={onRestore}\n redirectAfterRestore={redirectAfterRestore}\n singularLabel={collectionConfig?.labels?.singular}\n />\n )}\n {user && readOnlyForIncomingUser && (\n <Button\n buttonStyle=\"secondary\"\n id=\"take-over\"\n onClick={onTakeOver}\n size=\"medium\"\n type=\"button\"\n >\n {t('general:takeOver')}\n </Button>\n )}\n </div>\n {showDotMenu && !readOnlyForIncomingUser && (\n <Popup\n button={\n <div className={`${baseClass}__dots`}>\n <div />\n <div />\n <div />\n </div>\n }\n className={`${baseClass}__popup`}\n disabled={initializing || processing}\n horizontalAlign=\"right\"\n size=\"large\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {showCopyToLocale && <CopyLocaleData />}\n {hasCreatePermission && (\n <React.Fragment>\n {!disableCreate && (\n <Fragment>\n {editDepth > 1 ? (\n <PopupList.Button id=\"action-create\" onClick={onDrawerCreateNew}>\n {i18n.t('general:createNew')}\n </PopupList.Button>\n ) : (\n <PopupList.Button\n href={formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig?.slug}/create`,\n })}\n id=\"action-create\"\n >\n {i18n.t('general:createNew')}\n </PopupList.Button>\n )}\n </Fragment>\n )}\n {collectionConfig.disableDuplicate !== true && isEditing && (\n <DuplicateDocument\n id={id.toString()}\n onDuplicate={onDuplicate}\n redirectAfterDuplicate={redirectAfterDuplicate}\n singularLabel={collectionConfig?.labels?.singular}\n slug={collectionConfig?.slug}\n />\n )}\n </React.Fragment>\n )}\n {hasDeletePermission && (\n <DeleteDocument\n buttonId=\"action-delete\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n onDelete={onDelete}\n redirectAfterDelete={redirectAfterDelete}\n singularLabel={collectionConfig?.labels?.singular}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n )}\n {EditMenuItems}\n </PopupList.ButtonGroup>\n </Popup>\n )}\n </div>\n </div>\n <div className={`${baseClass}__divider`} />\n </Gutter>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","formatAdminURL","React","Fragment","useEffect","useFormInitializing","useFormProcessing","useConfig","useEditDepth","useLivePreviewContext","useTranslation","formatDate","Autosave","Button","CopyLocaleData","DeleteDocument","DuplicateDocument","MoveDocToFolder","Gutter","LivePreviewToggler","Locked","PermanentlyDeleteButton","Popup","PopupList","PreviewButton","PublishButton","RenderCustomComponent","RestoreButton","SaveButton","SaveDraftButton","Status","baseClass","DocumentControls","props","$","id","slug","BeforeDocumentControls","customComponents","t0","data","disableActions","disableCreate","EditMenuItems","hasSavePermission","isAccountView","isEditing","isInDrawer","isTrashed","onDelete","onDrawerCreateNew","onDuplicate","onRestore","onTakeOver","permissions","readOnlyForIncomingUser","redirectAfterDelete","redirectAfterDuplicate","redirectAfterRestore","user","t1","undefined","CustomPreviewButton","CustomPublishButton","CustomSaveButton","CustomSaveDraftButton","i18n","t","editDepth","config","getEntityConfig","collectionConfig","collectionSlug","globalConfig","globalSlug","isLivePreviewEnabled","admin","t2","localization","routes","t3","dateFormat","adminRoute","updatedAt","setUpdatedAt","useState","createdAt","setCreatedAt","processing","initializing","t4","t5","date","pattern","hasCreatePermission","create","hasDeletePermission","delete","showDotMenu","Boolean","unsavedDraftWithValidations","versions","drafts","validate","collectionConfigDrafts","globalConfigDrafts","autosaveEnabled","autosave","collectionAutosaveEnabled","globalAutosaveEnabled","showSaveDraftButton","showCopyToLocale","disableCopyToLocale","showFolderMetaIcon","folders","showLockedMetaIcon","t6","_jsx","t7","buttonStyle","onClick","size","type","children","_jsxs","className","folderCollectionSlug","folderFieldName","fieldName","label","labels","singular","filter","join","collection","global","publishedDocUpdatedAt","timestamps","title","preview","CustomComponent","Fallback","buttonId","toString","singularLabel","button","disabled","horizontalAlign","verticalAlign","ButtonGroup","href","path","disableDuplicate","useAsTitle"],"sources":["../../../src/elements/DocumentControls/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientUser,\n Data,\n SanitizedCollectionConfig,\n SanitizedCollectionPermission,\n SanitizedGlobalPermission,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { formatAdminURL } from 'payload/shared'\nimport React, { Fragment, useEffect } from 'react'\n\nimport type { DocumentDrawerContextType } from '../DocumentDrawer/Provider.js'\n\nimport { useFormInitializing, useFormProcessing } from '../../forms/Form/context.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useLivePreviewContext } from '../../providers/LivePreview/context.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { formatDate } from '../../utilities/formatDocTitle/formatDateTitle.js'\nimport { Autosave } from '../Autosave/index.js'\nimport { Button } from '../Button/index.js'\nimport { CopyLocaleData } from '../CopyLocaleData/index.js'\nimport { DeleteDocument } from '../DeleteDocument/index.js'\nimport { DuplicateDocument } from '../DuplicateDocument/index.js'\nimport { MoveDocToFolder } from '../FolderView/MoveDocToFolder/index.js'\nimport { Gutter } from '../Gutter/index.js'\nimport { LivePreviewToggler } from '../LivePreview/Toggler/index.js'\nimport { Locked } from '../Locked/index.js'\nimport { PermanentlyDeleteButton } from '../PermanentlyDeleteButton/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport { PreviewButton } from '../PreviewButton/index.js'\nimport { PublishButton } from '../PublishButton/index.js'\nimport { RenderCustomComponent } from '../RenderCustomComponent/index.js'\nimport { RestoreButton } from '../RestoreButton/index.js'\nimport { SaveButton } from '../SaveButton/index.js'\nimport './index.scss'\nimport { SaveDraftButton } from '../SaveDraftButton/index.js'\nimport { Status } from '../Status/index.js'\n\nconst baseClass = 'doc-controls'\n\nexport const DocumentControls: React.FC<{\n readonly apiURL: string\n readonly BeforeDocumentControls?: React.ReactNode\n readonly customComponents?: {\n readonly PreviewButton?: React.ReactNode\n readonly PublishButton?: React.ReactNode\n readonly SaveButton?: React.ReactNode\n readonly SaveDraftButton?: React.ReactNode\n }\n readonly data?: Data\n readonly disableActions?: boolean\n readonly disableCreate?: boolean\n readonly EditMenuItems?: React.ReactNode\n readonly hasPublishPermission?: boolean\n readonly hasSavePermission?: boolean\n readonly id?: number | string\n readonly isAccountView?: boolean\n readonly isEditing?: boolean\n readonly isInDrawer?: boolean\n readonly isTrashed?: boolean\n readonly onDelete?: DocumentDrawerContextType['onDelete']\n readonly onDrawerCreateNew?: () => void\n /* Only available if `redirectAfterDuplicate` is `false` */\n readonly onDuplicate?: DocumentDrawerContextType['onDuplicate']\n readonly onRestore?: DocumentDrawerContextType['onRestore']\n readonly onSave?: DocumentDrawerContextType['onSave']\n readonly onTakeOver?: () => void\n readonly permissions: null | SanitizedCollectionPermission | SanitizedGlobalPermission\n readonly readOnlyForIncomingUser?: boolean\n readonly redirectAfterDelete?: boolean\n readonly redirectAfterDuplicate?: boolean\n readonly redirectAfterRestore?: boolean\n readonly slug: SanitizedCollectionConfig['slug']\n readonly user?: ClientUser\n}> = (props) => {\n const {\n id,\n slug,\n BeforeDocumentControls,\n customComponents: {\n PreviewButton: CustomPreviewButton,\n PublishButton: CustomPublishButton,\n SaveButton: CustomSaveButton,\n SaveDraftButton: CustomSaveDraftButton,\n } = {},\n data,\n disableActions,\n disableCreate,\n EditMenuItems,\n hasSavePermission,\n isAccountView,\n isEditing,\n isInDrawer,\n isTrashed,\n onDelete,\n onDrawerCreateNew,\n onDuplicate,\n onRestore,\n onTakeOver,\n permissions,\n readOnlyForIncomingUser,\n redirectAfterDelete,\n redirectAfterDuplicate,\n redirectAfterRestore,\n user,\n } = props\n\n const { i18n, t } = useTranslation()\n\n const editDepth = useEditDepth()\n\n const { config, getEntityConfig } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: slug })\n\n const globalConfig = getEntityConfig({ globalSlug: slug })\n\n const { isLivePreviewEnabled } = useLivePreviewContext()\n\n const {\n admin: { dateFormat },\n localization,\n routes: { admin: adminRoute },\n } = config\n\n // Settings these in state to avoid hydration issues if there is a mismatch between the server and client\n const [updatedAt, setUpdatedAt] = React.useState<string>('')\n const [createdAt, setCreatedAt] = React.useState<string>('')\n\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n\n useEffect(() => {\n if (data?.updatedAt) {\n setUpdatedAt(formatDate({ date: data.updatedAt, i18n, pattern: dateFormat }))\n }\n if (data?.createdAt) {\n setCreatedAt(formatDate({ date: data.createdAt, i18n, pattern: dateFormat }))\n }\n }, [data, i18n, dateFormat])\n\n const hasCreatePermission = permissions && 'create' in permissions && permissions.create\n\n const hasDeletePermission = permissions && 'delete' in permissions && permissions.delete\n\n const showDotMenu = Boolean(\n collectionConfig && id && !disableActions && (hasCreatePermission || hasDeletePermission),\n )\n\n const unsavedDraftWithValidations =\n !id && collectionConfig?.versions?.drafts && collectionConfig.versions?.drafts.validate\n\n const collectionConfigDrafts = collectionConfig?.versions?.drafts\n const globalConfigDrafts = globalConfig?.versions?.drafts\n\n const autosaveEnabled =\n (collectionConfigDrafts && collectionConfigDrafts?.autosave) ||\n (globalConfigDrafts && globalConfigDrafts?.autosave)\n\n const collectionAutosaveEnabled = collectionConfigDrafts && collectionConfigDrafts?.autosave\n const globalAutosaveEnabled = globalConfigDrafts && globalConfigDrafts?.autosave\n\n const showSaveDraftButton =\n (collectionAutosaveEnabled &&\n collectionConfigDrafts.autosave !== false &&\n collectionConfigDrafts.autosave.showSaveDraftButton === true) ||\n (globalAutosaveEnabled &&\n globalConfigDrafts.autosave !== false &&\n globalConfigDrafts.autosave.showSaveDraftButton === true)\n\n const showCopyToLocale = localization && !collectionConfig?.admin?.disableCopyToLocale\n\n const showFolderMetaIcon = collectionConfig && collectionConfig.folders\n const showLockedMetaIcon = user && readOnlyForIncomingUser\n\n return (\n <Gutter className={baseClass}>\n <div className={`${baseClass}__wrapper`}>\n <div className={`${baseClass}__content`}>\n {showLockedMetaIcon || showFolderMetaIcon ? (\n <div className={`${baseClass}__meta-icons`}>\n {showLockedMetaIcon && (\n <Locked className={`${baseClass}__locked-controls`} user={user} />\n )}\n {showFolderMetaIcon && config.folders && !isTrashed && (\n <MoveDocToFolder\n folderCollectionSlug={config.folders.slug}\n folderFieldName={config.folders.fieldName}\n />\n )}\n </div>\n ) : null}\n <ul className={`${baseClass}__meta`}>\n {collectionConfig && !isEditing && !isAccountView && (\n <li className={`${baseClass}__list-item`}>\n <p className={`${baseClass}__value`}>\n {i18n.t('general:creatingNewLabel', {\n label: getTranslation(\n collectionConfig?.labels?.singular ?? i18n.t('general:document'),\n i18n,\n ),\n })}\n </p>\n </li>\n )}\n {(collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts) && (\n <Fragment>\n {(globalConfig || (collectionConfig && isEditing)) && (\n <li\n className={[`${baseClass}__status`, `${baseClass}__list-item`]\n .filter(Boolean)\n .join(' ')}\n >\n <Status />\n </li>\n )}\n {hasSavePermission &&\n autosaveEnabled &&\n !unsavedDraftWithValidations &&\n !isTrashed && (\n <li className={`${baseClass}__list-item`}>\n <Autosave\n collection={collectionConfig}\n global={globalConfig}\n id={id}\n publishedDocUpdatedAt={data?.createdAt}\n />\n </li>\n )}\n </Fragment>\n )}\n {collectionConfig?.timestamps && (isEditing || isAccountView) && (\n <Fragment>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={data?.updatedAt ? updatedAt : ''}\n >\n <p className={`${baseClass}__label`}>\n {i18n.t(isTrashed ? 'general:deleted' : 'general:lastModified')}:&nbsp;\n </p>\n\n {data?.updatedAt && <p className={`${baseClass}__value`}>{updatedAt}</p>}\n </li>\n <li\n className={[`${baseClass}__list-item`, `${baseClass}__value-wrap`]\n .filter(Boolean)\n .join(' ')}\n title={data?.createdAt ? createdAt : ''}\n >\n <p className={`${baseClass}__label`}>{i18n.t('general:created')}:&nbsp;</p>\n {data?.createdAt && <p className={`${baseClass}__value`}>{createdAt}</p>}\n </li>\n </Fragment>\n )}\n </ul>\n </div>\n <div className={`${baseClass}__controls-wrapper`}>\n <div className={`${baseClass}__controls`}>\n {BeforeDocumentControls}\n {isLivePreviewEnabled && !isInDrawer && <LivePreviewToggler />}\n {(collectionConfig?.admin.preview || globalConfig?.admin.preview) && (\n <RenderCustomComponent\n CustomComponent={CustomPreviewButton}\n Fallback={<PreviewButton />}\n />\n )}\n {hasSavePermission && !isTrashed && (\n <Fragment>\n {collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts ? (\n <Fragment>\n {(unsavedDraftWithValidations ||\n !autosaveEnabled ||\n (autosaveEnabled && showSaveDraftButton)) && (\n <RenderCustomComponent\n CustomComponent={CustomSaveDraftButton}\n Fallback={<SaveDraftButton />}\n />\n )}\n <RenderCustomComponent\n CustomComponent={CustomPublishButton}\n Fallback={<PublishButton />}\n />\n </Fragment>\n ) : (\n <RenderCustomComponent\n CustomComponent={CustomSaveButton}\n Fallback={<SaveButton />}\n />\n )}\n </Fragment>\n )}\n {hasDeletePermission && isTrashed && (\n <PermanentlyDeleteButton\n buttonId=\"action-permanently-delete\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n onDelete={onDelete}\n redirectAfterDelete={redirectAfterDelete}\n singularLabel={collectionConfig?.labels?.singular}\n />\n )}\n {hasSavePermission && isTrashed && (\n <RestoreButton\n buttonId=\"action-restore\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n onRestore={onRestore}\n redirectAfterRestore={redirectAfterRestore}\n singularLabel={collectionConfig?.labels?.singular}\n />\n )}\n {user && readOnlyForIncomingUser && (\n <Button\n buttonStyle=\"secondary\"\n id=\"take-over\"\n onClick={onTakeOver}\n size=\"medium\"\n type=\"button\"\n >\n {t('general:takeOver')}\n </Button>\n )}\n </div>\n {showDotMenu && !readOnlyForIncomingUser && (\n <Popup\n button={\n <div className={`${baseClass}__dots`}>\n <div />\n <div />\n <div />\n </div>\n }\n className={`${baseClass}__popup`}\n disabled={initializing || processing}\n horizontalAlign=\"right\"\n size=\"large\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {showCopyToLocale && <CopyLocaleData />}\n {hasCreatePermission && (\n <React.Fragment>\n {!disableCreate && (\n <Fragment>\n {editDepth > 1 ? (\n <PopupList.Button id=\"action-create\" onClick={onDrawerCreateNew}>\n {i18n.t('general:createNew')}\n </PopupList.Button>\n ) : (\n <PopupList.Button\n href={formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig?.slug}/create`,\n })}\n id=\"action-create\"\n >\n {i18n.t('general:createNew')}\n </PopupList.Button>\n )}\n </Fragment>\n )}\n {collectionConfig.disableDuplicate !== true && isEditing && (\n <DuplicateDocument\n id={id.toString()}\n onDuplicate={onDuplicate}\n redirectAfterDuplicate={redirectAfterDuplicate}\n singularLabel={collectionConfig?.labels?.singular}\n slug={collectionConfig?.slug}\n />\n )}\n </React.Fragment>\n )}\n {hasDeletePermission && (\n <DeleteDocument\n buttonId=\"action-delete\"\n collectionSlug={collectionConfig?.slug}\n id={id.toString()}\n onDelete={onDelete}\n redirectAfterDelete={redirectAfterDelete}\n singularLabel={collectionConfig?.labels?.singular}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n )}\n {EditMenuItems}\n </PopupList.ButtonGroup>\n </Popup>\n )}\n </div>\n </div>\n <div className={`${baseClass}__divider`} />\n </Gutter>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -13,7 +13,7 @@ import { IDLabel } from '../../IDLabel/index.js';
13
13
  import { documentDrawerBaseClass } from '../index.js';
14
14
  import './index.scss';
15
15
  export const DocumentDrawerHeader = t0 => {
16
- const $ = _c(8);
16
+ const $ = _c(10);
17
17
  const {
18
18
  drawerSlug,
19
19
  showDocumentID: t1
@@ -36,6 +36,14 @@ export const DocumentDrawerHeader = t0 => {
36
36
  } else {
37
37
  t3 = $[7];
38
38
  }
39
+ let t4;
40
+ if ($[8] !== showDocumentID) {
41
+ t4 = showDocumentID && _jsx(DocumentID, {});
42
+ $[8] = showDocumentID;
43
+ $[9] = t4;
44
+ } else {
45
+ t4 = $[9];
46
+ }
39
47
  t2 = _jsxs(Gutter, {
40
48
  className: `${documentDrawerBaseClass}__header`,
41
49
  children: [_jsxs("div", {
@@ -52,7 +60,7 @@ export const DocumentDrawerHeader = t0 => {
52
60
  type: "button",
53
61
  children: _jsx(XIcon, {})
54
62
  })]
55
- }), showDocumentID && _jsx(DocumentID, {})]
63
+ }), t4]
56
64
  });
57
65
  $[0] = closeModal;
58
66
  $[1] = drawerSlug;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","Gutter","useModal","RenderTitle","XIcon","useDocumentInfo","useDocumentTitle","useTranslation","IDLabel","documentDrawerBaseClass","DocumentDrawerHeader","t0","$","drawerSlug","showDocumentID","t1","undefined","closeModal","t","t2","t3","_jsxs","className","children","_jsx","element","onClick","type","DocumentID","id","title","toString"],"sources":["../../../../src/elements/DocumentDrawer/DrawerHeader/index.tsx"],"sourcesContent":["'use client'\n\nimport { Gutter } from '../../../elements/Gutter/index.js'\nimport { useModal } from '../../../elements/Modal/index.js'\nimport { RenderTitle } from '../../../elements/RenderTitle/index.js'\nimport { XIcon } from '../../../icons/X/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../../providers/DocumentTitle/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { IDLabel } from '../../IDLabel/index.js'\nimport { documentDrawerBaseClass } from '../index.js'\nimport './index.scss'\n\nexport const DocumentDrawerHeader: React.FC<{\n drawerSlug: string\n showDocumentID?: boolean\n}> = ({ drawerSlug, showDocumentID = true }) => {\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n return (\n <Gutter className={`${documentDrawerBaseClass}__header`}>\n <div className={`${documentDrawerBaseClass}__header-content`}>\n <h2 className={`${documentDrawerBaseClass}__header-text`}>\n {<RenderTitle element=\"span\" />}\n </h2>\n <button\n aria-label={t('general:close')}\n className={`${documentDrawerBaseClass}__header-close`}\n onClick={() => closeModal(drawerSlug)}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n {showDocumentID && <DocumentID />}\n </Gutter>\n )\n}\n\nconst DocumentID: React.FC = () => {\n const { id } = useDocumentInfo()\n const { title } = useDocumentTitle()\n return id && id !== title ? <IDLabel id={id.toString()} /> : null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,KAAK,QAAQ;AACtB,SAASC,eAAe,QAAQ;AAChC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,cAAc,QAAQ;AAC/B,SAASC,OAAO,QAAQ;AACxB,SAASC,uBAAuB,QAAQ;AACxC,OAAO;AAEP,OAAO,MAAMC,oBAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,UAAA;IAAAC,cAAA,EAAAC;EAAA,IAAAJ,EAAqC;EAAvB,MAAAG,cAAA,GAAAC,EAAqB,KAAAC,SAAA,UAArBD,EAAqB;EACvC;IAAAE;EAAA,IAAuBf,QAAA;EACvB;IAAAgB;EAAA,IAAcX,cAAA;EAAA,IAAAY,EAAA;EAAA,IAAAP,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAE,cAAA,IAAAF,CAAA,QAAAM,CAAA;IAAA,IAAAE,EAAA;IAAA,IAAAR,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAC,UAAA;MAWGO,EAAA,GAAAA,CAAA,KAAMH,UAAA,CAAWJ,UAAA;MAAAD,CAAA,MAAAK,UAAA;MAAAL,CAAA,MAAAC,UAAA;MAAAD,CAAA,MAAAQ,EAAA;IAAA;MAAAA,EAAA,GAAAR,CAAA;IAAA;IARhCO,EAAA,GAAAE,KAAA,CAAApB,MAAA;MAAAqB,SAAA,EAAmB,GAAAb,uBAAA,UAAoC;MAAAc,QAAA,GACrDF,KAAA,CAAC;QAAAC,SAAA,EAAe,GAAAb,uBAAA,kBAA4C;QAAAc,QAAA,GAC1DC,IAAA,CAAC;UAAAF,SAAA,EAAc,GAAAb,uBAAA,eAAyC;UAAAc,QAAA,EACrDC,IAAA,CAAArB,WAAA;YAAAsB,OAAA,EAAqB;UAAA,C;YAExBD,IAAA,CAAC;UAAA,cACaN,CAAA,CAAE;UAAAI,SAAA,EACH,GAAAb,uBAAA,gBAA0C;UAAAiB,OAAA,EAC5CN,EAAiB;UAAAO,IAAA,EACrB;UAAAJ,QAAA,EAELC,IAAA,CAAApB,KAAA,IAAC;QAAA,C;UAGJU,cAAA,IAAkBU,IAAA,CAAAI,UAAA,IAAC;IAAA,C;;;;;;;;;SAdtBT,E;CAiBJ;AAEA,MAAMS,UAAA,GAAuBA,CAAA;EAAA,MAAAhB,CAAA,GAAAZ,EAAA;EAC3B;IAAA6B;EAAA,IAAexB,eAAA;EACf;IAAAyB;EAAA,IAAkBxB,gBAAA;EAAA,IAAAK,EAAA;EAAA,IAAAC,CAAA,QAAAiB,EAAA,IAAAjB,CAAA,QAAAkB,KAAA;IACXnB,EAAA,GAAAkB,EAAA,IAAMA,EAAA,KAAOC,KAAA,GAAQN,IAAA,CAAAhB,OAAA;MAAAqB,EAAA,EAAaA,EAAA,CAAAE,QAAA,CAAW;IAAA,C,QAAS;IAAAnB,CAAA,MAAAiB,EAAA;IAAAjB,CAAA,MAAAkB,KAAA;IAAAlB,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OAAtDD,EAAsD;AAAA,CAC/D","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","Gutter","useModal","RenderTitle","XIcon","useDocumentInfo","useDocumentTitle","useTranslation","IDLabel","documentDrawerBaseClass","DocumentDrawerHeader","t0","$","drawerSlug","showDocumentID","t1","undefined","closeModal","t","t2","t3","t4","_jsx","DocumentID","_jsxs","className","children","element","onClick","type","id","title","toString"],"sources":["../../../../src/elements/DocumentDrawer/DrawerHeader/index.tsx"],"sourcesContent":["'use client'\n\nimport { Gutter } from '../../../elements/Gutter/index.js'\nimport { useModal } from '../../../elements/Modal/index.js'\nimport { RenderTitle } from '../../../elements/RenderTitle/index.js'\nimport { XIcon } from '../../../icons/X/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useDocumentTitle } from '../../../providers/DocumentTitle/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { IDLabel } from '../../IDLabel/index.js'\nimport { documentDrawerBaseClass } from '../index.js'\nimport './index.scss'\n\nexport const DocumentDrawerHeader: React.FC<{\n drawerSlug: string\n showDocumentID?: boolean\n}> = ({ drawerSlug, showDocumentID = true }) => {\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n return (\n <Gutter className={`${documentDrawerBaseClass}__header`}>\n <div className={`${documentDrawerBaseClass}__header-content`}>\n <h2 className={`${documentDrawerBaseClass}__header-text`}>\n {<RenderTitle element=\"span\" />}\n </h2>\n <button\n aria-label={t('general:close')}\n className={`${documentDrawerBaseClass}__header-close`}\n onClick={() => closeModal(drawerSlug)}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n {showDocumentID && <DocumentID />}\n </Gutter>\n )\n}\n\nconst DocumentID: React.FC = () => {\n const { id } = useDocumentInfo()\n const { title } = useDocumentTitle()\n return id && id !== title ? <IDLabel id={id.toString()} /> : null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,SAASC,MAAM,QAAQ;AACvB,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,KAAK,QAAQ;AACtB,SAASC,eAAe,QAAQ;AAChC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,cAAc,QAAQ;AAC/B,SAASC,OAAO,QAAQ;AACxB,SAASC,uBAAuB,QAAQ;AACxC,OAAO;AAEP,OAAO,MAAMC,oBAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAAC;IAAAa,UAAA;IAAAC,cAAA,EAAAC;EAAA,IAAAJ,EAAqC;EAAvB,MAAAG,cAAA,GAAAC,EAAqB,KAAAC,SAAA,UAArBD,EAAqB;EACvC;IAAAE;EAAA,IAAuBf,QAAA;EACvB;IAAAgB;EAAA,IAAcX,cAAA;EAAA,IAAAY,EAAA;EAAA,IAAAP,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAE,cAAA,IAAAF,CAAA,QAAAM,CAAA;IAAA,IAAAE,EAAA;IAAA,IAAAR,CAAA,QAAAK,UAAA,IAAAL,CAAA,QAAAC,UAAA;MAWGO,EAAA,GAAAA,CAAA,KAAMH,UAAA,CAAWJ,UAAA;MAAAD,CAAA,MAAAK,UAAA;MAAAL,CAAA,MAAAC,UAAA;MAAAD,CAAA,MAAAQ,EAAA;IAAA;MAAAA,EAAA,GAAAR,CAAA;IAAA;IAAA,IAAAS,EAAA;IAAA,IAAAT,CAAA,QAAAE,cAAA;MAM7BO,EAAA,GAAAP,cAAA,IAAkBQ,IAAA,CAAAC,UAAA,IAAC;MAAAX,CAAA,MAAAE,cAAA;MAAAF,CAAA,MAAAS,EAAA;IAAA;MAAAA,EAAA,GAAAT,CAAA;IAAA;IAdtBO,EAAA,GAAAK,KAAA,CAAAvB,MAAA;MAAAwB,SAAA,EAAmB,GAAAhB,uBAAA,UAAoC;MAAAiB,QAAA,GACrDF,KAAA,CAAC;QAAAC,SAAA,EAAe,GAAAhB,uBAAA,kBAA4C;QAAAiB,QAAA,GAC1DJ,IAAA,CAAC;UAAAG,SAAA,EAAc,GAAAhB,uBAAA,eAAyC;UAAAiB,QAAA,EACrDJ,IAAA,CAAAnB,WAAA;YAAAwB,OAAA,EAAqB;UAAA,C;YAExBL,IAAA,CAAC;UAAA,cACaJ,CAAA,CAAE;UAAAO,SAAA,EACH,GAAAhB,uBAAA,gBAA0C;UAAAmB,OAAA,EAC5CR,EAAiB;UAAAS,IAAA,EACrB;UAAAH,QAAA,EAELJ,IAAA,CAAAlB,KAAA,IAAC;QAAA,C;UAGJiB,EAAmB;IAAA,C;;;;;;;;;SAdtBF,E;CAiBJ;AAEA,MAAMI,UAAA,GAAuBA,CAAA;EAAA,MAAAX,CAAA,GAAAZ,EAAA;EAC3B;IAAA8B;EAAA,IAAezB,eAAA;EACf;IAAA0B;EAAA,IAAkBzB,gBAAA;EAAA,IAAAK,EAAA;EAAA,IAAAC,CAAA,QAAAkB,EAAA,IAAAlB,CAAA,QAAAmB,KAAA;IACXpB,EAAA,GAAAmB,EAAA,IAAMA,EAAA,KAAOC,KAAA,GAAQT,IAAA,CAAAd,OAAA;MAAAsB,EAAA,EAAaA,EAAA,CAAAE,QAAA,CAAW;IAAA,C,QAAS;IAAApB,CAAA,MAAAkB,EAAA;IAAAlB,CAAA,MAAAmB,KAAA;IAAAnB,CAAA,MAAAD,EAAA;EAAA;IAAAA,EAAA,GAAAC,CAAA;EAAA;EAAA,OAAtDD,EAAsD;AAAA,CAC/D","ignoreList":[]}
@@ -19,41 +19,87 @@ const formatDocumentDrawerSlug = ({
19
19
  uuid
20
20
  }) => `doc-drawer_${collectionSlug}_${depth}${id ? `_${id}` : ''}_${uuid}`;
21
21
  export const DocumentDrawerToggler = t0 => {
22
- const $ = _c(2);
23
- const {
24
- children,
25
- className,
26
- collectionSlug,
27
- disabled,
28
- drawerSlug,
29
- onClick,
30
- operation,
31
- ...rest
32
- } = t0;
22
+ const $ = _c(21);
23
+ let children;
24
+ let className;
25
+ let collectionSlug;
26
+ let disabled;
27
+ let drawerSlug;
28
+ let onClick;
29
+ let operation;
30
+ let rest;
31
+ if ($[0] !== t0) {
32
+ ({
33
+ children,
34
+ className,
35
+ collectionSlug,
36
+ disabled,
37
+ drawerSlug,
38
+ onClick,
39
+ operation,
40
+ ...rest
41
+ } = t0);
42
+ $[0] = t0;
43
+ $[1] = children;
44
+ $[2] = className;
45
+ $[3] = collectionSlug;
46
+ $[4] = disabled;
47
+ $[5] = drawerSlug;
48
+ $[6] = onClick;
49
+ $[7] = operation;
50
+ $[8] = rest;
51
+ } else {
52
+ children = $[1];
53
+ className = $[2];
54
+ collectionSlug = $[3];
55
+ disabled = $[4];
56
+ drawerSlug = $[5];
57
+ onClick = $[6];
58
+ operation = $[7];
59
+ rest = $[8];
60
+ }
33
61
  const {
34
62
  t
35
63
  } = useTranslation();
36
64
  const [collectionConfig] = useRelatedCollections(collectionSlug);
37
- const t1 = t(operation === "create" ? "fields:addNewLabel" : "general:editLabel", {
38
- label: collectionConfig?.labels.singular
39
- });
40
- let t2;
41
- if ($[0] !== className) {
42
- t2 = [className, `${documentDrawerBaseClass}__toggler`].filter(Boolean);
43
- $[0] = className;
44
- $[1] = t2;
65
+ const t1 = operation === "create" ? "fields:addNewLabel" : "general:editLabel";
66
+ const t2 = collectionConfig?.labels.singular;
67
+ let t3;
68
+ if ($[9] !== children || $[10] !== className || $[11] !== disabled || $[12] !== drawerSlug || $[13] !== onClick || $[14] !== rest || $[15] !== t || $[16] !== t1 || $[17] !== t2) {
69
+ const t4 = t(t1, {
70
+ label: t2
71
+ });
72
+ let t5;
73
+ if ($[19] !== className) {
74
+ t5 = [className, `${documentDrawerBaseClass}__toggler`].filter(Boolean);
75
+ $[19] = className;
76
+ $[20] = t5;
77
+ } else {
78
+ t5 = $[20];
79
+ }
80
+ t3 = _jsx(DrawerToggler, {
81
+ "aria-label": t4,
82
+ className: t5.join(" "),
83
+ disabled,
84
+ onClick,
85
+ slug: drawerSlug,
86
+ ...rest,
87
+ children
88
+ });
89
+ $[9] = children;
90
+ $[10] = className;
91
+ $[11] = disabled;
92
+ $[12] = drawerSlug;
93
+ $[13] = onClick;
94
+ $[14] = rest;
95
+ $[15] = t;
96
+ $[16] = t1;
97
+ $[17] = t2;
98
+ $[18] = t3;
45
99
  } else {
46
- t2 = $[1];
100
+ t3 = $[18];
47
101
  }
48
- return _jsx(DrawerToggler, {
49
- "aria-label": t1,
50
- className: t2.join(" "),
51
- disabled,
52
- onClick,
53
- slug: drawerSlug,
54
- ...rest,
55
- children
56
- });
102
+ return t3;
57
103
  };
58
104
  export const DocumentDrawer = props => {
59
105
  const {
@@ -174,8 +220,9 @@ export const useDocumentDrawer = t0 => {
174
220
  }
175
221
  const openDrawer = t6;
176
222
  let t7;
223
+ let t8;
177
224
  if ($[18] !== collectionSlug || $[19] !== drawerSlug || $[20] !== id || $[21] !== overrideEntityVisibility) {
178
- t7 = props => _createElement(DocumentDrawer, {
225
+ t8 = props => _createElement(DocumentDrawer, {
179
226
  ...props,
180
227
  collectionSlug,
181
228
  drawerSlug,
@@ -187,14 +234,16 @@ export const useDocumentDrawer = t0 => {
187
234
  $[19] = drawerSlug;
188
235
  $[20] = id;
189
236
  $[21] = overrideEntityVisibility;
190
- $[22] = t7;
237
+ $[22] = t8;
191
238
  } else {
192
- t7 = $[22];
239
+ t8 = $[22];
193
240
  }
241
+ t7 = t8;
194
242
  const MemoizedDrawer = t7;
195
- let t8;
243
+ let t9;
244
+ let t10;
196
245
  if ($[23] !== collectionSlug || $[24] !== drawerSlug || $[25] !== id) {
197
- t8 = props_0 => _jsx(DocumentDrawerToggler, {
246
+ t10 = props_0 => _jsx(DocumentDrawerToggler, {
198
247
  ...props_0,
199
248
  collectionSlug,
200
249
  drawerSlug,
@@ -203,14 +252,16 @@ export const useDocumentDrawer = t0 => {
203
252
  $[23] = collectionSlug;
204
253
  $[24] = drawerSlug;
205
254
  $[25] = id;
206
- $[26] = t8;
255
+ $[26] = t10;
207
256
  } else {
208
- t8 = $[26];
257
+ t10 = $[26];
209
258
  }
210
- const MemoizedDrawerToggler = t8;
211
- let t9;
259
+ t9 = t10;
260
+ const MemoizedDrawerToggler = t9;
261
+ let t11;
262
+ let t12;
212
263
  if ($[27] !== closeDrawer || $[28] !== drawerSlug || $[29] !== editDepth || $[30] !== isOpen || $[31] !== openDrawer || $[32] !== toggleDrawer) {
213
- t9 = {
264
+ t12 = {
214
265
  closeDrawer,
215
266
  drawerDepth: editDepth,
216
267
  drawerSlug,
@@ -224,21 +275,22 @@ export const useDocumentDrawer = t0 => {
224
275
  $[30] = isOpen;
225
276
  $[31] = openDrawer;
226
277
  $[32] = toggleDrawer;
227
- $[33] = t9;
278
+ $[33] = t12;
228
279
  } else {
229
- t9 = $[33];
280
+ t12 = $[33];
230
281
  }
231
- const MemoizedDrawerState = t9;
232
- let t10;
282
+ t11 = t12;
283
+ const MemoizedDrawerState = t11;
284
+ let t13;
233
285
  if ($[34] !== MemoizedDrawer || $[35] !== MemoizedDrawerState || $[36] !== MemoizedDrawerToggler) {
234
- t10 = [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState];
286
+ t13 = [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState];
235
287
  $[34] = MemoizedDrawer;
236
288
  $[35] = MemoizedDrawerState;
237
289
  $[36] = MemoizedDrawerToggler;
238
- $[37] = t10;
290
+ $[37] = t13;
239
291
  } else {
240
- t10 = $[37];
292
+ t13 = $[37];
241
293
  }
242
- return t10;
294
+ return t13;
243
295
  };
244
296
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","React","useCallback","useEffect","useId","useMemo","useState","useRelatedCollections","useEditDepth","useTranslation","Drawer","DrawerToggler","DocumentDrawerContent","documentDrawerBaseClass","formatDocumentDrawerSlug","id","collectionSlug","depth","uuid","DocumentDrawerToggler","t0","$","children","className","disabled","drawerSlug","onClick","operation","rest","t","collectionConfig","t1","label","labels","singular","t2","filter","Boolean","_jsx","join","slug","DocumentDrawer","props","gutter","Header","useDocumentDrawer","overrideEntityVisibility","editDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","t3","t4","toggleDrawer","t5","closeDrawer","t6","openDrawer","t7","_createElement","key","MemoizedDrawer","t8","props_0","MemoizedDrawerToggler","t9","drawerDepth","isDrawerOpen","MemoizedDrawerState","t10"],"sources":["../../../src/elements/DocumentDrawer/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useId, useMemo, useState } from 'react'\n\nimport type {\n DocumentDrawerProps,\n DocumentTogglerProps,\n UseDocumentDrawer,\n UseDocumentDrawerContext,\n} from './types.js'\n\nimport { useRelatedCollections } from '../../hooks/useRelatedCollections.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { DocumentDrawerContent } from './DrawerContent.js'\nimport './index.scss'\n\nexport const documentDrawerBaseClass = 'doc-drawer'\n\nconst formatDocumentDrawerSlug = ({\n id,\n collectionSlug,\n depth,\n uuid,\n}: {\n collectionSlug: string\n depth: number\n id?: number | string\n uuid: string\n}) => `doc-drawer_${collectionSlug}_${depth}${id ? `_${id}` : ''}_${uuid}`\n\nexport const DocumentDrawerToggler: React.FC<DocumentTogglerProps> = ({\n children,\n className,\n collectionSlug,\n disabled,\n drawerSlug,\n onClick,\n operation,\n ...rest\n}) => {\n const { t } = useTranslation()\n const [collectionConfig] = useRelatedCollections(collectionSlug)\n\n return (\n <DrawerToggler\n aria-label={t(operation === 'create' ? 'fields:addNewLabel' : 'general:editLabel', {\n label: collectionConfig?.labels.singular,\n })}\n className={[className, `${documentDrawerBaseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n onClick={onClick}\n slug={drawerSlug}\n {...rest}\n >\n {children}\n </DrawerToggler>\n )\n}\n\nexport const DocumentDrawer: React.FC<DocumentDrawerProps> = (props) => {\n const { drawerSlug } = props\n\n return (\n <Drawer className={documentDrawerBaseClass} gutter={false} Header={null} slug={drawerSlug}>\n <DocumentDrawerContent {...props} />\n </Drawer>\n )\n}\n\n/**\n * A hook to manage documents from a drawer modal.\n * It provides the components and methods needed to open, close, and interact with the drawer.\n * @example\n * const [DocumentDrawer, DocumentDrawerToggler, { openDrawer, closeDrawer }] = useDocumentDrawer({\n * collectionSlug: 'posts',\n * id: postId, // optional, if not provided, it will render the \"create new\" view\n * })\n *\n * // ...\n *\n * return (\n * <div>\n * <DocumentDrawerToggler collectionSlug=\"posts\" id={postId}>\n * Edit Post\n * </DocumentDrawerToggler>\n * <DocumentDrawer collectionSlug=\"posts\" id={postId} />\n * </div>\n */\nexport const useDocumentDrawer: UseDocumentDrawer = ({\n id,\n collectionSlug,\n overrideEntityVisibility,\n}) => {\n const editDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n\n const drawerSlug = formatDocumentDrawerSlug({\n id,\n collectionSlug,\n depth: editDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [closeModal, drawerSlug])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [openModal, drawerSlug])\n\n const MemoizedDrawer = useMemo<React.FC<DocumentDrawerProps>>(() => {\n return (props) => (\n <DocumentDrawer\n {...props}\n collectionSlug={collectionSlug}\n drawerSlug={drawerSlug}\n id={id}\n key={drawerSlug}\n overrideEntityVisibility={overrideEntityVisibility}\n />\n )\n }, [id, drawerSlug, collectionSlug, overrideEntityVisibility])\n\n const MemoizedDrawerToggler = useMemo<React.FC<DocumentTogglerProps>>(() => {\n return (props) => (\n <DocumentDrawerToggler\n {...props}\n collectionSlug={collectionSlug}\n drawerSlug={drawerSlug}\n operation={!id ? 'create' : 'update'}\n />\n )\n }, [id, drawerSlug, collectionSlug])\n\n const MemoizedDrawerState = useMemo<UseDocumentDrawerContext>(\n () => ({\n closeDrawer,\n drawerDepth: editDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n toggleDrawer,\n }),\n [editDepth, drawerSlug, isOpen, toggleDrawer, closeDrawer, openDrawer],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","React","useCallback","useEffect","useId","useMemo","useState","useRelatedCollections","useEditDepth","useTranslation","Drawer","DrawerToggler","DocumentDrawerContent","documentDrawerBaseClass","formatDocumentDrawerSlug","id","collectionSlug","depth","uuid","DocumentDrawerToggler","t0","$","children","className","disabled","drawerSlug","onClick","operation","rest","t","collectionConfig","t1","t2","labels","singular","t3","t4","label","t5","filter","Boolean","_jsx","join","slug","DocumentDrawer","props","gutter","Header","useDocumentDrawer","overrideEntityVisibility","editDepth","closeModal","modalState","openModal","toggleModal","isOpen","setIsOpen","toggleDrawer","closeDrawer","t6","openDrawer","t7","t8","_createElement","key","MemoizedDrawer","t9","t10","props_0","MemoizedDrawerToggler","t11","t12","drawerDepth","isDrawerOpen","MemoizedDrawerState","t13"],"sources":["../../../src/elements/DocumentDrawer/index.tsx"],"sourcesContent":["'use client'\nimport { useModal } from '@faceless-ui/modal'\nimport React, { useCallback, useEffect, useId, useMemo, useState } from 'react'\n\nimport type {\n DocumentDrawerProps,\n DocumentTogglerProps,\n UseDocumentDrawer,\n UseDocumentDrawerContext,\n} from './types.js'\n\nimport { useRelatedCollections } from '../../hooks/useRelatedCollections.js'\nimport { useEditDepth } from '../../providers/EditDepth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Drawer, DrawerToggler } from '../Drawer/index.js'\nimport { DocumentDrawerContent } from './DrawerContent.js'\nimport './index.scss'\n\nexport const documentDrawerBaseClass = 'doc-drawer'\n\nconst formatDocumentDrawerSlug = ({\n id,\n collectionSlug,\n depth,\n uuid,\n}: {\n collectionSlug: string\n depth: number\n id?: number | string\n uuid: string\n}) => `doc-drawer_${collectionSlug}_${depth}${id ? `_${id}` : ''}_${uuid}`\n\nexport const DocumentDrawerToggler: React.FC<DocumentTogglerProps> = ({\n children,\n className,\n collectionSlug,\n disabled,\n drawerSlug,\n onClick,\n operation,\n ...rest\n}) => {\n const { t } = useTranslation()\n const [collectionConfig] = useRelatedCollections(collectionSlug)\n\n return (\n <DrawerToggler\n aria-label={t(operation === 'create' ? 'fields:addNewLabel' : 'general:editLabel', {\n label: collectionConfig?.labels.singular,\n })}\n className={[className, `${documentDrawerBaseClass}__toggler`].filter(Boolean).join(' ')}\n disabled={disabled}\n onClick={onClick}\n slug={drawerSlug}\n {...rest}\n >\n {children}\n </DrawerToggler>\n )\n}\n\nexport const DocumentDrawer: React.FC<DocumentDrawerProps> = (props) => {\n const { drawerSlug } = props\n\n return (\n <Drawer className={documentDrawerBaseClass} gutter={false} Header={null} slug={drawerSlug}>\n <DocumentDrawerContent {...props} />\n </Drawer>\n )\n}\n\n/**\n * A hook to manage documents from a drawer modal.\n * It provides the components and methods needed to open, close, and interact with the drawer.\n * @example\n * const [DocumentDrawer, DocumentDrawerToggler, { openDrawer, closeDrawer }] = useDocumentDrawer({\n * collectionSlug: 'posts',\n * id: postId, // optional, if not provided, it will render the \"create new\" view\n * })\n *\n * // ...\n *\n * return (\n * <div>\n * <DocumentDrawerToggler collectionSlug=\"posts\" id={postId}>\n * Edit Post\n * </DocumentDrawerToggler>\n * <DocumentDrawer collectionSlug=\"posts\" id={postId} />\n * </div>\n */\nexport const useDocumentDrawer: UseDocumentDrawer = ({\n id,\n collectionSlug,\n overrideEntityVisibility,\n}) => {\n const editDepth = useEditDepth()\n const uuid = useId()\n const { closeModal, modalState, openModal, toggleModal } = useModal()\n const [isOpen, setIsOpen] = useState(false)\n\n const drawerSlug = formatDocumentDrawerSlug({\n id,\n collectionSlug,\n depth: editDepth,\n uuid,\n })\n\n useEffect(() => {\n setIsOpen(Boolean(modalState[drawerSlug]?.isOpen))\n }, [modalState, drawerSlug])\n\n const toggleDrawer = useCallback(() => {\n toggleModal(drawerSlug)\n }, [toggleModal, drawerSlug])\n\n const closeDrawer = useCallback(() => {\n closeModal(drawerSlug)\n }, [closeModal, drawerSlug])\n\n const openDrawer = useCallback(() => {\n openModal(drawerSlug)\n }, [openModal, drawerSlug])\n\n const MemoizedDrawer = useMemo<React.FC<DocumentDrawerProps>>(() => {\n return (props) => (\n <DocumentDrawer\n {...props}\n collectionSlug={collectionSlug}\n drawerSlug={drawerSlug}\n id={id}\n key={drawerSlug}\n overrideEntityVisibility={overrideEntityVisibility}\n />\n )\n }, [id, drawerSlug, collectionSlug, overrideEntityVisibility])\n\n const MemoizedDrawerToggler = useMemo<React.FC<DocumentTogglerProps>>(() => {\n return (props) => (\n <DocumentDrawerToggler\n {...props}\n collectionSlug={collectionSlug}\n drawerSlug={drawerSlug}\n operation={!id ? 'create' : 'update'}\n />\n )\n }, [id, drawerSlug, collectionSlug])\n\n const MemoizedDrawerState = useMemo<UseDocumentDrawerContext>(\n () => ({\n closeDrawer,\n drawerDepth: editDepth,\n drawerSlug,\n isDrawerOpen: isOpen,\n openDrawer,\n toggleDrawer,\n }),\n [editDepth, drawerSlug, isOpen, toggleDrawer, closeDrawer, openDrawer],\n )\n\n return [MemoizedDrawer, MemoizedDrawerToggler, MemoizedDrawerState]\n}\n"],"mappings":"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","ignoreList":[]}