@payloadcms/ui 3.0.0-canary.9beaa28 → 3.0.0-canary.9de3ffd

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 (156) hide show
  1. package/dist/elements/AddNewRelation/index.d.ts.map +1 -0
  2. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.js +98 -82
  3. package/dist/elements/AddNewRelation/index.js.map +1 -0
  4. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.scss +7 -3
  5. package/dist/elements/AddNewRelation/types.d.ts +11 -0
  6. package/dist/elements/AddNewRelation/types.d.ts.map +1 -0
  7. package/dist/elements/AddNewRelation/types.js.map +1 -0
  8. package/dist/elements/AddNewRelation/useRelatedCollections.d.ts.map +1 -0
  9. package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.js +1 -1
  10. package/dist/elements/AddNewRelation/useRelatedCollections.js.map +1 -0
  11. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +9 -0
  12. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -0
  13. package/dist/elements/BulkUpload/ActionsBar/index.js +186 -0
  14. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -0
  15. package/dist/elements/BulkUpload/ActionsBar/index.scss +59 -0
  16. package/dist/elements/BulkUpload/AddFilesView/index.d.ts +9 -0
  17. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -0
  18. package/dist/elements/BulkUpload/AddFilesView/index.js +44 -0
  19. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -0
  20. package/dist/elements/BulkUpload/AddFilesView/index.scss +15 -0
  21. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts +4 -0
  22. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -0
  23. package/dist/elements/BulkUpload/AddingFilesView/index.js +98 -0
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -0
  25. package/dist/elements/BulkUpload/AddingFilesView/index.scss +23 -0
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts +4 -0
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -0
  28. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +89 -0
  29. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -0
  30. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts +9 -0
  31. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts.map +1 -0
  32. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +38 -0
  33. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -0
  34. package/dist/elements/BulkUpload/DrawerCloseButton/index.scss +27 -0
  35. package/dist/elements/BulkUpload/EditForm/index.d.ts +5 -0
  36. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -0
  37. package/dist/elements/BulkUpload/EditForm/index.js +176 -0
  38. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -0
  39. package/dist/elements/BulkUpload/EditForm/index.scss +9 -0
  40. package/dist/elements/BulkUpload/EditForm/types.d.ts +4 -0
  41. package/dist/elements/BulkUpload/EditForm/types.d.ts.map +1 -0
  42. package/dist/elements/BulkUpload/EditForm/types.js +2 -0
  43. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -0
  44. package/dist/elements/BulkUpload/FileSidebar/index.d.ts +4 -0
  45. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -0
  46. package/dist/elements/BulkUpload/FileSidebar/index.js +242 -0
  47. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -0
  48. package/dist/elements/BulkUpload/FileSidebar/index.scss +275 -0
  49. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +3 -0
  50. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -0
  51. package/dist/elements/BulkUpload/FormsManager/createFormData.js +22 -0
  52. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -0
  53. package/dist/elements/BulkUpload/FormsManager/index.d.ts +35 -0
  54. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -0
  55. package/dist/elements/BulkUpload/FormsManager/index.js +308 -0
  56. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -0
  57. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts +30 -0
  58. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts.map +1 -0
  59. package/dist/elements/BulkUpload/FormsManager/reducer.js +69 -0
  60. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -0
  61. package/dist/elements/BulkUpload/Header/index.d.ts +9 -0
  62. package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -0
  63. package/dist/elements/BulkUpload/Header/index.js +22 -0
  64. package/dist/elements/BulkUpload/Header/index.js.map +1 -0
  65. package/dist/elements/BulkUpload/Header/index.scss +12 -0
  66. package/dist/elements/BulkUpload/index.d.ts +10 -0
  67. package/dist/elements/BulkUpload/index.d.ts.map +1 -0
  68. package/dist/elements/BulkUpload/index.js +114 -0
  69. package/dist/elements/BulkUpload/index.js.map +1 -0
  70. package/dist/elements/BulkUpload/index.scss +0 -0
  71. package/dist/elements/DocumentDrawer/DrawerContent.js +1 -1
  72. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  73. package/dist/elements/DocumentDrawer/index.js +1 -1
  74. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  75. package/dist/elements/Dropzone/index.scss +2 -0
  76. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +20 -0
  77. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -0
  78. package/dist/elements/FileDetails/DraggableFileDetails/index.js +116 -0
  79. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -0
  80. package/dist/elements/FileDetails/DraggableFileDetails/index.scss +33 -0
  81. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +17 -0
  82. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -0
  83. package/dist/elements/FileDetails/StaticFileDetails/index.js +71 -0
  84. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -0
  85. package/dist/elements/FileDetails/{index.scss → StaticFileDetails/index.scss} +1 -1
  86. package/dist/elements/FileDetails/index.d.ts +19 -4
  87. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  88. package/dist/elements/FileDetails/index.js +11 -62
  89. package/dist/elements/FileDetails/index.js.map +1 -1
  90. package/dist/elements/FullscreenModal/index.d.ts +4 -0
  91. package/dist/elements/FullscreenModal/index.d.ts.map +1 -0
  92. package/dist/elements/FullscreenModal/index.js +38 -0
  93. package/dist/elements/FullscreenModal/index.js.map +1 -0
  94. package/dist/elements/ListControls/index.d.ts.map +1 -1
  95. package/dist/elements/ListControls/index.js +15 -10
  96. package/dist/elements/ListControls/index.js.map +1 -1
  97. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  98. package/dist/elements/ListDrawer/DrawerContent.js +42 -31
  99. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  100. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  101. package/dist/elements/ListDrawer/index.js.map +1 -1
  102. package/dist/elements/ListDrawer/types.d.ts +4 -1
  103. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  104. package/dist/elements/ListDrawer/types.js.map +1 -1
  105. package/dist/elements/SelectMany/index.d.ts +6 -0
  106. package/dist/elements/SelectMany/index.d.ts.map +1 -0
  107. package/dist/elements/SelectMany/index.js +29 -0
  108. package/dist/elements/SelectMany/index.js.map +1 -0
  109. package/dist/exports/client/index.d.ts +4 -1
  110. package/dist/exports/client/index.d.ts.map +1 -1
  111. package/dist/exports/client/index.js +19 -19
  112. package/dist/exports/client/index.js.map +4 -4
  113. package/dist/fields/Relationship/index.d.ts.map +1 -1
  114. package/dist/fields/Relationship/index.js +1 -3
  115. package/dist/fields/Relationship/index.js.map +1 -1
  116. package/dist/fields/Upload/HasMany/index.d.ts +4 -0
  117. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -0
  118. package/dist/fields/Upload/HasMany/index.js +468 -0
  119. package/dist/fields/Upload/HasMany/index.js.map +1 -0
  120. package/dist/fields/Upload/HasMany/index.scss +53 -0
  121. package/dist/fields/Upload/{Input.d.ts → HasOne/Input.d.ts} +1 -1
  122. package/dist/fields/Upload/HasOne/Input.d.ts.map +1 -0
  123. package/dist/fields/Upload/{Input.js → HasOne/Input.js} +12 -12
  124. package/dist/fields/Upload/HasOne/Input.js.map +1 -0
  125. package/dist/fields/Upload/HasOne/index.d.ts +12 -0
  126. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -0
  127. package/dist/fields/Upload/HasOne/index.js +131 -0
  128. package/dist/fields/Upload/HasOne/index.js.map +1 -0
  129. package/dist/fields/Upload/{index.scss → HasOne/index.scss} +1 -1
  130. package/dist/fields/Upload/index.d.ts +4 -4
  131. package/dist/fields/Upload/index.d.ts.map +1 -1
  132. package/dist/fields/Upload/index.js +84 -98
  133. package/dist/fields/Upload/index.js.map +1 -1
  134. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  135. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +1 -27
  136. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  137. package/dist/providers/ListInfo/index.d.ts +6 -0
  138. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  139. package/dist/providers/ListInfo/index.js.map +1 -1
  140. package/dist/providers/Selection/index.d.ts +5 -3
  141. package/dist/providers/Selection/index.d.ts.map +1 -1
  142. package/dist/providers/Selection/index.js.map +1 -1
  143. package/dist/styles.css +1 -1
  144. package/package.json +4 -4
  145. package/dist/fields/Relationship/AddNew/index.d.ts.map +0 -1
  146. package/dist/fields/Relationship/AddNew/index.js.map +0 -1
  147. package/dist/fields/Relationship/AddNew/types.d.ts +0 -12
  148. package/dist/fields/Relationship/AddNew/types.d.ts.map +0 -1
  149. package/dist/fields/Relationship/AddNew/types.js.map +0 -1
  150. package/dist/fields/Relationship/AddNew/useRelatedCollections.d.ts.map +0 -1
  151. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +0 -1
  152. package/dist/fields/Upload/Input.d.ts.map +0 -1
  153. package/dist/fields/Upload/Input.js.map +0 -1
  154. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/index.d.ts +0 -0
  155. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/types.js +0 -0
  156. /package/dist/{fields/Relationship/AddNew → elements/AddNewRelation}/useRelatedCollections.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/AddNewRelation/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAqD,MAAM,OAAO,CAAA;AAIzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAUvC,OAAO,cAAc,CAAA;AAKrB,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAkM1C,CAAA"}
@@ -4,24 +4,26 @@ import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import { getTranslation } from '@payloadcms/translations';
6
6
  import React, { Fragment, useCallback, useEffect, useState } from 'react';
7
- import { Button } from '../../../elements/Button/index.js';
8
- import { useDocumentDrawer } from '../../../elements/DocumentDrawer/index.js';
9
- import * as PopupList from '../../../elements/Popup/PopupButtonList/index.js';
10
- import { Popup } from '../../../elements/Popup/index.js';
11
- import { Tooltip } from '../../../elements/Tooltip/index.js';
12
- import { PlusIcon } from '../../../icons/Plus/index.js';
13
- import { useAuth } from '../../../providers/Auth/index.js';
14
- import { useTranslation } from '../../../providers/Translation/index.js';
7
+ import { PlusIcon } from '../../icons/Plus/index.js';
8
+ import { useAuth } from '../../providers/Auth/index.js';
9
+ import { useTranslation } from '../../providers/Translation/index.js';
10
+ import { Button } from '../Button/index.js';
11
+ import { useDocumentDrawer } from '../DocumentDrawer/index.js';
12
+ import * as PopupList from '../Popup/PopupButtonList/index.js';
13
+ import { Popup } from '../Popup/index.js';
14
+ import { Tooltip } from '../Tooltip/index.js';
15
15
  import './index.scss';
16
16
  import { useRelatedCollections } from './useRelatedCollections.js';
17
17
  const baseClass = 'relationship-add-new';
18
18
  export const AddNewRelation = t0 => {
19
- const $ = _c(42);
19
+ const $ = _c(46);
20
20
  const {
21
+ Button: ButtonFromProps,
21
22
  hasMany,
22
23
  path,
23
24
  relationTo,
24
25
  setValue,
26
+ unstyled,
25
27
  value
26
28
  } = t0;
27
29
  const relatedCollections = useRelatedCollections(relationTo);
@@ -185,82 +187,96 @@ export const AddNewRelation = t0 => {
185
187
  t14 = $[29];
186
188
  }
187
189
  useEffect(t13, t14);
188
- if (show) {
189
- const t15 = `${path}-add-new`;
190
- let t16;
191
- if ($[30] !== relatedCollections || $[31] !== i18n || $[32] !== t || $[33] !== showTooltip || $[34] !== DocumentDrawerToggler || $[35] !== onSave || $[36] !== DocumentDrawer || $[37] !== popupOpen || $[38] !== permissions || $[39] !== collectionConfig || $[40] !== t15) {
192
- t16 = _jsxs("div", {
193
- className: baseClass,
194
- id: t15,
195
- children: [relatedCollections.length === 1 && _jsxs(Fragment, {
196
- children: [_jsxs(DocumentDrawerToggler, {
197
- className: `${baseClass}__add-button`,
198
- onClick: () => setShowTooltip(false),
199
- onMouseEnter: () => setShowTooltip(true),
200
- onMouseLeave: () => setShowTooltip(false),
201
- children: [_jsx(Tooltip, {
202
- className: `${baseClass}__tooltip`,
203
- show: showTooltip,
204
- children: t("fields:addNewLabel", {
205
- label: getTranslation(relatedCollections[0].labels.singular, i18n)
190
+ const t15 = relatedCollections[0];
191
+ const t16 = t15.labels.singular;
192
+ let t17;
193
+ if ($[30] !== t15.labels.singular || $[31] !== i18n || $[32] !== t || $[33] !== show || $[34] !== path || $[35] !== relatedCollections || $[36] !== unstyled || $[37] !== ButtonFromProps || $[38] !== showTooltip || $[39] !== DocumentDrawerToggler || $[40] !== onSave || $[41] !== DocumentDrawer || $[42] !== popupOpen || $[43] !== permissions || $[44] !== collectionConfig) {
194
+ t17 = Symbol.for("react.early_return_sentinel");
195
+ bb0: {
196
+ const label = t("fields:addNewLabel", {
197
+ label: getTranslation(t16, i18n)
198
+ });
199
+ if (show) {
200
+ t17 = _jsxs("div", {
201
+ className: baseClass,
202
+ id: `${path}-add-new`,
203
+ children: [relatedCollections.length === 1 && _jsxs(Fragment, {
204
+ children: [_jsx(DocumentDrawerToggler, {
205
+ className: [`${baseClass}__add-button`, !unstyled && `${baseClass}__add-button--styled`].join(" "),
206
+ onClick: () => setShowTooltip(false),
207
+ onMouseEnter: () => setShowTooltip(true),
208
+ onMouseLeave: () => setShowTooltip(false),
209
+ children: ButtonFromProps ? ButtonFromProps : _jsxs(Fragment, {
210
+ children: [_jsx(Tooltip, {
211
+ className: `${baseClass}__tooltip`,
212
+ show: showTooltip,
213
+ children: label
214
+ }), _jsx(PlusIcon, {})]
206
215
  })
207
- }), _jsx(PlusIcon, {})]
208
- }), _jsx(DocumentDrawer, {
209
- onSave
210
- })]
211
- }), relatedCollections.length > 1 && _jsxs(Fragment, {
212
- children: [_jsx(Popup, {
213
- button: _jsx(Button, {
214
- buttonStyle: "none",
215
- className: `${baseClass}__add-button`,
216
- tooltip: popupOpen ? undefined : t("fields:addNew"),
217
- children: _jsx(PlusIcon, {})
218
- }),
219
- buttonType: "custom",
220
- horizontalAlign: "center",
221
- onToggleOpen: onPopupToggle,
222
- render: t17 => {
223
- const {
224
- close: closePopup
225
- } = t17;
226
- return _jsx(PopupList.ButtonGroup, {
227
- children: relatedCollections.map(relatedCollection => {
228
- if (permissions.collections[relatedCollection?.slug].create.permission) {
229
- return _jsx(PopupList.Button, {
230
- className: `${baseClass}__relation-button--${relatedCollection?.slug}`,
231
- onClick: () => {
232
- closePopup();
233
- setSelectedCollection(relatedCollection?.slug);
234
- },
235
- children: getTranslation(relatedCollection?.labels?.singular, i18n)
236
- }, relatedCollection?.slug);
237
- }
238
- return null;
239
- })
240
- });
241
- },
242
- size: "medium"
243
- }), collectionConfig && permissions.collections[collectionConfig?.slug]?.create?.permission && _jsx(DocumentDrawer, {
244
- onSave
216
+ }), _jsx(DocumentDrawer, {
217
+ onSave
218
+ })]
219
+ }), relatedCollections.length > 1 && _jsxs(Fragment, {
220
+ children: [_jsx(Popup, {
221
+ button: ButtonFromProps ? ButtonFromProps : _jsx(Button, {
222
+ buttonStyle: "none",
223
+ className: `${baseClass}__add-button`,
224
+ tooltip: popupOpen ? undefined : t("fields:addNew"),
225
+ children: _jsx(PlusIcon, {})
226
+ }),
227
+ buttonType: "custom",
228
+ horizontalAlign: "center",
229
+ onToggleOpen: onPopupToggle,
230
+ render: t18 => {
231
+ const {
232
+ close: closePopup
233
+ } = t18;
234
+ return _jsx(PopupList.ButtonGroup, {
235
+ children: relatedCollections.map(relatedCollection => {
236
+ if (permissions.collections[relatedCollection?.slug].create.permission) {
237
+ return _jsx(PopupList.Button, {
238
+ className: `${baseClass}__relation-button--${relatedCollection?.slug}`,
239
+ onClick: () => {
240
+ closePopup();
241
+ setSelectedCollection(relatedCollection?.slug);
242
+ },
243
+ children: getTranslation(relatedCollection?.labels?.singular, i18n)
244
+ }, relatedCollection?.slug);
245
+ }
246
+ return null;
247
+ })
248
+ });
249
+ },
250
+ size: "medium"
251
+ }), collectionConfig && permissions.collections[collectionConfig?.slug]?.create?.permission && _jsx(DocumentDrawer, {
252
+ onSave
253
+ })]
245
254
  })]
246
- })]
247
- });
248
- $[30] = relatedCollections;
249
- $[31] = i18n;
250
- $[32] = t;
251
- $[33] = showTooltip;
252
- $[34] = DocumentDrawerToggler;
253
- $[35] = onSave;
254
- $[36] = DocumentDrawer;
255
- $[37] = popupOpen;
256
- $[38] = permissions;
257
- $[39] = collectionConfig;
258
- $[40] = t15;
259
- $[41] = t16;
260
- } else {
261
- t16 = $[41];
255
+ });
256
+ break bb0;
257
+ }
262
258
  }
263
- return t16;
259
+ $[30] = t15.labels.singular;
260
+ $[31] = i18n;
261
+ $[32] = t;
262
+ $[33] = show;
263
+ $[34] = path;
264
+ $[35] = relatedCollections;
265
+ $[36] = unstyled;
266
+ $[37] = ButtonFromProps;
267
+ $[38] = showTooltip;
268
+ $[39] = DocumentDrawerToggler;
269
+ $[40] = onSave;
270
+ $[41] = DocumentDrawer;
271
+ $[42] = popupOpen;
272
+ $[43] = permissions;
273
+ $[44] = collectionConfig;
274
+ $[45] = t17;
275
+ } else {
276
+ t17 = $[45];
277
+ }
278
+ if (t17 !== Symbol.for("react.early_return_sentinel")) {
279
+ return t17;
264
280
  }
265
281
  return null;
266
282
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","Fragment","useCallback","useEffect","useState","PlusIcon","useAuth","useTranslation","Button","useDocumentDrawer","PopupList","Popup","Tooltip","useRelatedCollections","baseClass","AddNewRelation","t0","$","ButtonFromProps","hasMany","path","relationTo","setValue","unstyled","value","relatedCollections","permissions","show","setShow","selectedCollection","setSelectedCollection","relatedToMany","length","t1","undefined","collectionConfig","setCollectionConfig","popupOpen","setPopupOpen","i18n","t","showTooltip","setShowTooltip","t2","slug","t3","collectionSlug","DocumentDrawer","DocumentDrawerToggler","t4","isDrawerOpen","toggleDrawer","t5","t6","doc","operation","newValue","Array","isArray","id","isNewValue","some","v","onSave","Symbol","for","state","onPopupToggle","t7","t8","collections","create","permission","collection","t9","t10","find","collection_0","t11","t12","t13","t14","t15","t16","labels","singular","t17","label","_jsxs","className","children","_jsx","join","onClick","onMouseEnter","onMouseLeave","button","buttonStyle","tooltip","horizontalAlign","onToggleOpen","render","t18","close","closePopup","ButtonGroup","map","relatedCollection"],"sources":["../../../src/elements/AddNewRelation/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useEffect, useState } from 'react'\n\nimport type { Value } from '../../fields/Relationship/types.js'\nimport type { DocumentInfoContext } from '../../providers/DocumentInfo/types.js'\nimport type { Props } from './types.js'\n\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { useDocumentDrawer } from '../DocumentDrawer/index.js'\nimport * as PopupList from '../Popup/PopupButtonList/index.js'\nimport { Popup } from '../Popup/index.js'\nimport { Tooltip } from '../Tooltip/index.js'\nimport './index.scss'\nimport { useRelatedCollections } from './useRelatedCollections.js'\n\nconst baseClass = 'relationship-add-new'\n\nexport const AddNewRelation: React.FC<Props> = ({\n Button: ButtonFromProps,\n hasMany,\n path,\n relationTo,\n setValue,\n unstyled,\n value,\n}) => {\n const relatedCollections = useRelatedCollections(relationTo)\n const { permissions } = useAuth()\n const [show, setShow] = useState(false)\n const [selectedCollection, setSelectedCollection] = useState<string>()\n const relatedToMany = relatedCollections.length > 1\n const [collectionConfig, setCollectionConfig] = useState<ClientCollectionConfig>(() =>\n !relatedToMany ? relatedCollections[0] : undefined,\n )\n const [popupOpen, setPopupOpen] = useState(false)\n const { i18n, t } = useTranslation()\n const [showTooltip, setShowTooltip] = useState(false)\n\n const [DocumentDrawer, DocumentDrawerToggler, { isDrawerOpen, toggleDrawer }] = useDocumentDrawer(\n {\n collectionSlug: collectionConfig?.slug,\n },\n )\n\n const onSave: DocumentInfoContext['onSave'] = useCallback(\n ({ doc, operation }) => {\n if (operation === 'create') {\n const newValue: Value = Array.isArray(relationTo)\n ? {\n relationTo: collectionConfig?.slug,\n value: doc.id,\n }\n : doc.id\n\n // ensure the value is not already in the array\n const isNewValue =\n Array.isArray(relationTo) && Array.isArray(value)\n ? !value.some((v) => v && typeof v === 'object' && v.value === doc.id)\n : value !== doc.id\n\n if (isNewValue) {\n // dispatchOptions({\n // collection: collectionConfig,\n // // TODO: fix this\n // // @ts-expect-error-next-line\n // type: 'ADD',\n // config,\n // docs: [doc],\n // i18n,\n // sort: true,\n // })\n\n if (hasMany) {\n setValue([...(Array.isArray(value) ? value : []), newValue])\n } else {\n setValue(newValue)\n }\n }\n\n setSelectedCollection(undefined)\n }\n },\n [relationTo, collectionConfig, hasMany, setValue, value],\n )\n\n const onPopupToggle = useCallback((state) => {\n setPopupOpen(state)\n }, [])\n\n useEffect(() => {\n if (permissions) {\n if (relatedCollections.length === 1) {\n setShow(permissions.collections[relatedCollections[0]?.slug]?.create?.permission)\n } else {\n setShow(\n relatedCollections.some(\n (collection) => permissions.collections[collection?.slug]?.create?.permission,\n ),\n )\n }\n }\n }, [permissions, relatedCollections])\n\n useEffect(() => {\n if (relatedToMany && selectedCollection) {\n setCollectionConfig(\n relatedCollections.find((collection) => collection?.slug === selectedCollection),\n )\n }\n }, [selectedCollection, relatedToMany, relatedCollections])\n\n useEffect(() => {\n if (relatedToMany && collectionConfig) {\n // the drawer must be rendered on the page before before opening it\n // this is why 'selectedCollection' is different from 'collectionConfig'\n toggleDrawer()\n setSelectedCollection(undefined)\n }\n }, [toggleDrawer, relatedToMany, collectionConfig])\n\n useEffect(() => {\n if (relatedToMany && !isDrawerOpen) {\n setCollectionConfig(undefined)\n }\n }, [isDrawerOpen, relatedToMany])\n\n const label = t('fields:addNewLabel', {\n label: getTranslation(relatedCollections[0].labels.singular, i18n),\n })\n\n if (show) {\n return (\n <div className={baseClass} id={`${path}-add-new`}>\n {relatedCollections.length === 1 && (\n <Fragment>\n <DocumentDrawerToggler\n className={[\n `${baseClass}__add-button`,\n !unstyled && `${baseClass}__add-button--styled`,\n ].join(' ')}\n onClick={() => setShowTooltip(false)}\n onMouseEnter={() => setShowTooltip(true)}\n onMouseLeave={() => setShowTooltip(false)}\n >\n {ButtonFromProps ? (\n ButtonFromProps\n ) : (\n <Fragment>\n <Tooltip className={`${baseClass}__tooltip`} show={showTooltip}>\n {label}\n </Tooltip>\n <PlusIcon />\n </Fragment>\n )}\n </DocumentDrawerToggler>\n <DocumentDrawer onSave={onSave} />\n </Fragment>\n )}\n {relatedCollections.length > 1 && (\n <Fragment>\n <Popup\n button={\n ButtonFromProps ? (\n ButtonFromProps\n ) : (\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__add-button`}\n tooltip={popupOpen ? undefined : t('fields:addNew')}\n >\n <PlusIcon />\n </Button>\n )\n }\n buttonType=\"custom\"\n horizontalAlign=\"center\"\n onToggleOpen={onPopupToggle}\n render={({ close: closePopup }) => (\n <PopupList.ButtonGroup>\n {relatedCollections.map((relatedCollection) => {\n if (permissions.collections[relatedCollection?.slug].create.permission) {\n return (\n <PopupList.Button\n className={`${baseClass}__relation-button--${relatedCollection?.slug}`}\n key={relatedCollection?.slug}\n onClick={() => {\n closePopup()\n setSelectedCollection(relatedCollection?.slug)\n }}\n >\n {getTranslation(relatedCollection?.labels?.singular, i18n)}\n </PopupList.Button>\n )\n }\n\n return null\n })}\n </PopupList.ButtonGroup>\n )}\n size=\"medium\"\n />\n {collectionConfig &&\n permissions.collections[collectionConfig?.slug]?.create?.permission && (\n <DocumentDrawer onSave={onSave} />\n )}\n </Fragment>\n )}\n </div>\n )\n }\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ;AAMlE,SAASC,QAAQ,QAAQ;AACzB,SAASC,OAAO,QAAQ;AACxB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,iBAAiB,QAAQ;AAClC,YAAYC,SAAA,MAAe;AAC3B,SAASC,KAAK,QAAQ;AACtB,SAASC,OAAO,QAAQ;AACxB,OAAO;AACP,SAASC,qBAAqB,QAAQ;AAEtC,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,cAAA,GAAkCC,EAAA;EAAA,MAAAC,CAAA,GAAAnB,EAAA;EAAC;IAAAU,MAAA,EAAAU,eAAA;IAAAC,OAAA;IAAAC,IAAA;IAAAC,UAAA;IAAAC,QAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAR,EAQ/C;EACC,MAAAS,kBAAA,GAA2BZ,qBAAA,CAAsBQ,UAAA;EACjD;IAAAK;EAAA,IAAwBpB,OAAA;EACxB,OAAAqB,IAAA,EAAAC,OAAA,IAAwBxB,QAAA,MAAS;EACjC,OAAAyB,kBAAA,EAAAC,qBAAA,IAAoD1B,QAAA;EACpD,MAAA2B,aAAA,GAAsBN,kBAAA,CAAAO,MAAA,IAA4B;EAAA,IAAAC,EAAA;EAAA,IAAAhB,CAAA,QAAAc,aAAA,IAAAd,CAAA,QAAAQ,kBAAA;IAC+BQ,EAAA,GAAAA,CAAA,KAC/E,CAACF,aAAA,GAAgBN,kBAAkB,MAAAS,SAAM;IAAAjB,CAAA,MAAAc,aAAA;IAAAd,CAAA,MAAAQ,kBAAA;IAAAR,CAAA,MAAAgB,EAAA;EAAA;IAAAA,EAAA,GAAAhB,CAAA;EAAA;EAD3C,OAAAkB,gBAAA,EAAAC,mBAAA,IAAgDhC,QAAA,CAAiC6B,EACtC;EAE3C,OAAAI,SAAA,EAAAC,YAAA,IAAkClC,QAAA,MAAS;EAC3C;IAAAmC,IAAA;IAAAC;EAAA,IAAoBjC,cAAA;EACpB,OAAAkC,WAAA,EAAAC,cAAA,IAAsCtC,QAAA,MAAS;EAI3B,MAAAuC,EAAA,GAAAR,gBAAA,EAAAS,IAAA;EAAkB,IAAAC,EAAA;EAAA,IAAA5B,CAAA,QAAA0B,EAAA;IADpCE,EAAA;MAAAC,cAAA,EACkBH;IAAkB;IACpC1B,CAAA,MAAA0B,EAAA;IAAA1B,CAAA,MAAA4B,EAAA;EAAA;IAAAA,EAAA,GAAA5B,CAAA;EAAA;EAHF,OAAA8B,cAAA,EAAAC,qBAAA,EAAAC,EAAA,IAAgFxC,iBAAA,CAC9EoC,EAEA;EAH4C;IAAAK,YAAA;IAAAC;EAAA,IAAAF,EAA8B;EAAA,IAAAG,EAAA;EAAA,IAAAnC,CAAA,QAAAI,UAAA,IAAAJ,CAAA,QAAAkB,gBAAA,IAAAlB,CAAA,QAAAO,KAAA,IAAAP,CAAA,QAAAE,OAAA,IAAAF,CAAA,QAAAK,QAAA;IAO1E8B,EAAA,GAAAC,EAAA;MAAC;QAAAC,GAAA;QAAAC;MAAA,IAAAF,EAAkB;MAAA,IACbE,SAAA,KAAc;QAChB,MAAAC,QAAA,GAAwBC,KAAA,CAAAC,OAAA,CAAcrC,UAAA;UAAAA,UAAA,EAEpBc,gBAAA,EAAAS,IAAA;UAAApB,KAAA,EACL8B,GAAA,CAAAK;QAAA,IAETL,GAAA,CAAAK,EAAM;QAGV,MAAAC,UAAA,GACEH,KAAA,CAAAC,OAAA,CAAcrC,UAAA,KAAeoC,KAAA,CAAAC,OAAA,CAAclC,KAAA,KACtCA,KAAA,CAAAqC,IAAA,CAAAC,CAAA,IAAkBA,CAAA,IAAK,OAAOA,CAAA,KAAM,YAAYA,CAAA,CAAAtC,KAAA,KAAY8B,GAAA,CAAAK,EAAM,IACnEnC,KAAA,KAAU8B,GAAA,CAAAK,EAAM;QAAA,IAElBC,UAAA;UAAA,IAYEzC,OAAA;YACFG,QAAA,MAAcmC,KAAA,CAAAC,OAAA,CAAclC,KAAA,IAASA,KAAA,KAAU,GAAGgC,QAAA,CAAS;UAAA;YAE3DlC,QAAA,CAASkC,QAAA;UAAA;QAAA;QAIb1B,qBAAA,CAAAI,SAAsB;MAAA;IAAA;IAE1BjB,CAAA,MAAAI,UAAA;IAAAJ,CAAA,MAAAkB,gBAAA;IAAAlB,CAAA,MAAAO,KAAA;IAAAP,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAK,QAAA;IAAAL,CAAA,OAAAmC,EAAA;EAAA;IAAAA,EAAA,GAAAnC,CAAA;EAAA;EArCF,MAAA8C,MAAA,GAA8CX,EAsCY;EAAA,IAAAC,EAAA;EAAA,IAAApC,CAAA,SAAA+C,MAAA,CAAAC,GAAA;IAGxBZ,EAAA,GAAAa,KAAA;MAChC5B,YAAA,CAAa4B,KAAA;IAAA;IACfjD,CAAA,OAAAoC,EAAA;EAAA;IAAAA,EAAA,GAAApC,CAAA;EAAA;EAFA,MAAAkD,aAAA,GAAsBd,EAEjB;EAAA,IAAAe,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAApD,CAAA,SAAAS,WAAA,IAAAT,CAAA,SAAAQ,kBAAA;IAEK2C,EAAA,GAAAA,CAAA;MAAA,IACJ1C,WAAA;QAAA,IACED,kBAAA,CAAAO,MAAA,MAA8B;UAChCJ,OAAA,CAAQF,WAAA,CAAA4C,WAAA,CAAwB7C,kBAAkB,KAAAmB,IAAA,GAAA2B,MAAA,EAAAC,UAAoB;QAAA;UAEtE5C,OAAA,CACEH,kBAAA,CAAAoC,IAAA,CAAAY,UAAA,IACkB/C,WAAA,CAAA4C,WAAA,CAAwBG,UAAA,EAAA7B,IAAA,GAAA2B,MAAA,EAAAC,UAA2B;QAAA;MAAA;IAAA;IAK1EH,EAAA,IAAC3C,WAAA,EAAaD,kBAAA;IAAmBR,CAAA,OAAAS,WAAA;IAAAT,CAAA,OAAAQ,kBAAA;IAAAR,CAAA,OAAAmD,EAAA;IAAAnD,CAAA,OAAAoD,EAAA;EAAA;IAAAD,EAAA,GAAAnD,CAAA;IAAAoD,EAAA,GAAApD,CAAA;EAAA;EAZpCd,SAAA,CAAUiE,EAYV,EAAGC,EAAiC;EAAA,IAAAK,EAAA;EAAA,IAAAC,GAAA;EAAA,IAAA1D,CAAA,SAAAc,aAAA,IAAAd,CAAA,SAAAY,kBAAA,IAAAZ,CAAA,SAAAQ,kBAAA;IAE1BiD,EAAA,GAAAA,CAAA;MAAA,IACJ3C,aAAA,IAAiBF,kBAAA;QACnBO,mBAAA,CACEX,kBAAA,CAAAmD,IAAA,CAAAC,YAAA,IAAwCJ,YAAA,EAAA7B,IAAA,KAAqBf,kBAAA;MAAA;IAAA;IAGhE8C,GAAA,IAAC9C,kBAAA,EAAoBE,aAAA,EAAeN,kBAAA;IAAmBR,CAAA,OAAAc,aAAA;IAAAd,CAAA,OAAAY,kBAAA;IAAAZ,CAAA,OAAAQ,kBAAA;IAAAR,CAAA,OAAAyD,EAAA;IAAAzD,CAAA,OAAA0D,GAAA;EAAA;IAAAD,EAAA,GAAAzD,CAAA;IAAA0D,GAAA,GAAA1D,CAAA;EAAA;EAN1Dd,SAAA,CAAUuE,EAMV,EAAGC,GAAuD;EAAA,IAAAG,GAAA;EAAA,IAAAC,GAAA;EAAA,IAAA9D,CAAA,SAAAc,aAAA,IAAAd,CAAA,SAAAkB,gBAAA,IAAAlB,CAAA,SAAAkC,YAAA;IAEhD2B,GAAA,GAAAA,CAAA;MAAA,IACJ/C,aAAA,IAAiBI,gBAAA;QAGnBgB,YAAA;QACArB,qBAAA,CAAAI,SAAsB;MAAA;IAAA;IAEvB6C,GAAA,IAAC5B,YAAA,EAAcpB,aAAA,EAAeI,gBAAA;IAAiBlB,CAAA,OAAAc,aAAA;IAAAd,CAAA,OAAAkB,gBAAA;IAAAlB,CAAA,OAAAkC,YAAA;IAAAlC,CAAA,OAAA6D,GAAA;IAAA7D,CAAA,OAAA8D,GAAA;EAAA;IAAAD,GAAA,GAAA7D,CAAA;IAAA8D,GAAA,GAAA9D,CAAA;EAAA;EAPlDd,SAAA,CAAU2E,GAOV,EAAGC,GAA+C;EAAA,IAAAC,GAAA;EAAA,IAAAC,GAAA;EAAA,IAAAhE,CAAA,SAAAc,aAAA,IAAAd,CAAA,SAAAiC,YAAA;IAExC8B,GAAA,GAAAA,CAAA;MAAA,IACJjD,aAAA,KAAkBmB,YAAA;QACpBd,mBAAA,CAAAF,SAAoB;MAAA;IAAA;IAErB+C,GAAA,IAAC/B,YAAA,EAAcnB,aAAA;IAAcd,CAAA,OAAAc,aAAA;IAAAd,CAAA,OAAAiC,YAAA;IAAAjC,CAAA,OAAA+D,GAAA;IAAA/D,CAAA,OAAAgE,GAAA;EAAA;IAAAD,GAAA,GAAA/D,CAAA;IAAAgE,GAAA,GAAAhE,CAAA;EAAA;EAJhCd,SAAA,CAAU6E,GAIV,EAAGC,GAA6B;EAGR,MAAAC,GAAA,GAAAzD,kBAAkB;EAAlB,MAAA0D,GAAA,GAAAD,GAAqB,CAAAE,MAAA,CAAAC,QAAA;EAAgB,IAAAC,GAAA;EAAA,IAAArE,CAAA,SAAAiE,GAAA,CAAAE,MAAA,CAAAC,QAAA,IAAApE,CAAA,SAAAsB,IAAA,IAAAtB,CAAA,SAAAuB,CAAA,IAAAvB,CAAA,SAAAU,IAAA,IAAAV,CAAA,SAAAG,IAAA,IAAAH,CAAA,SAAAQ,kBAAA,IAAAR,CAAA,SAAAM,QAAA,IAAAN,CAAA,SAAAC,eAAA,IAAAD,CAAA,SAAAwB,WAAA,IAAAxB,CAAA,SAAA+B,qBAAA,IAAA/B,CAAA,SAAA8C,MAAA,IAAA9C,CAAA,SAAA8B,cAAA,IAAA9B,CAAA,SAAAoB,SAAA,IAAApB,CAAA,SAAAS,WAAA,IAAAT,CAAA,SAAAkB,gBAAA;IAKzDmD,GAAA,GAAAtB,MAAA,CAAAC,GAAA,8B;;MANJ,MAAAsB,KAAA,GAAc/C,CAAA,CAAE;QAAA+C,KAAA,EACPxF,cAAA,CAAeoF,GAAqC,EAAE5C,IAAA;MAAA,CAC/D;MAAA,IAEIZ,IAAA;QAEA2D,GAAA,GAAAE,KAAA,CAAC;UAAAC,SAAA,EAAA3E,SAAA;UAAA6C,EAAA,EAA8B,GAAGvC,IAAA,UAAc;UAAAsE,QAAA,GAC7CjE,kBAAA,CAAAO,MAAA,MAA8B,IAC7BwD,KAAA,CAAAvF,QAAA;YAAAyF,QAAA,GACEC,IAAA,CAAC3C,qBAAA;cAAAyC,SAAA,EACY,CACT,GAAA3E,SAAA,cAA0B,EAC1B,CAACS,QAAA,IAAY,GAAAT,SAAA,sBAAkC,EAAA8E,IAAA,CAC1C;cAAAC,OAAA,EAAAA,CAAA,KACQnD,cAAA,MAAe;cAAAoD,YAAA,EAAAA,CAAA,KACVpD,cAAA,KAAe;cAAAqD,YAAA,EAAAA,CAAA,KACfrD,cAAA,MAAe;cAAAgD,QAAA,EAElCxE,eAAA,GACCA,eAAA,GAEAsE,KAAA,CAAAvF,QAAA;gBAAAyF,QAAA,GACEC,IAAA,CAAA/E,OAAA;kBAAA6E,SAAA,EAAoB,GAAA3E,SAAA,WAAuB;kBAAAa,IAAA,EAAQc,WAAA;kBAAAiD,QAAA,EAChDH;gBAAA,C,GAEHI,IAAA,CAAAtF,QAAA,IAAC;cAAA,C;gBAIPsF,IAAA,CAAC5C,cAAA;cAAAgB;YAAA,C;cAGJtC,kBAAA,CAAAO,MAAA,IAA4B,IAC3BwD,KAAA,CAAAvF,QAAA;YAAAyF,QAAA,GACEC,IAAA,CAAAhF,KAAA;cAAAqF,MAAA,EAEI9E,eAAA,GACEA,eAAA,GAEAyE,IAAA,CAAAnF,MAAA;gBAAAyF,WAAA,EACc;gBAAAR,SAAA,EACD,GAAA3E,SAAA,cAA0B;gBAAAoF,OAAA,EAC5B7D,SAAA,GAAAH,SAAA,GAAwBM,CAAA,CAAE;gBAAAkD,QAAA,EAEnCC,IAAA,CAAAtF,QAAA,IAAC;cAAA,C;0BAII;cAAA8F,eAAA,EACK;cAAAC,YAAA,EACFjC,aAAA;cAAAkC,MAAA,EAAAC,GAAA;gBACL;kBAAAC,KAAA,EAAAC;gBAAA,IAAAF,GAAqB;gBAAA,OAC5BX,IAAA,CAAAjF,SAAA,CAAA+F,WAAA;kBAAAf,QAAA,EACGjE,kBAAA,CAAAiF,GAAA,CAAAC,iBAAA;oBAAA,IACKjF,WAAA,CAAA4C,WAAA,CAAwBqC,iBAAA,EAAA/D,IAAA,EAAA2B,MAAA,CAAAC,UAAA;sBAAA,OAExBmB,IAAA,CAAAjF,SAAA,CAAAF,MAAA;wBAAAiF,SAAA,EACa,GAAA3E,SAAA,sBAAkC6F,iBAAA,EAAA/D,IAAA,EAAyB;wBAAAiD,OAAA,EAAAA,CAAA;0BAGpEW,UAAA;0BACA1E,qBAAA,CAAsB6E,iBAAA,EAAA/D,IAAmB;wBAAA;wBAAA8C,QAAA,EAG1C3F,cAAA,CAAe4G,iBAAA,EAAAvB,MAAA,EAAAC,QAAA,EAAqC9C,IAAA;sBAAA,GANhDoE,iBAAA,EAAA/D,IAAmB;oBAAA;oBAAA;kBAAA,CAYhC;gBAAA,C;;oBAGC;YAAA,C,GAENT,gBAAA,IACCT,WAAA,CAAA4C,WAAA,CAAwBnC,gBAAA,EAAAS,IAAA,GAAA2B,MAAA,EAAAC,UAAiC,IACvDmB,IAAA,CAAC5C,cAAA;cAAAgB;YAAA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQjB","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- @import '../../../scss/styles.scss';
1
+ @import '../../scss/styles.scss';
2
2
 
3
3
  .relationship-add-new {
4
4
  display: flex;
@@ -10,8 +10,12 @@
10
10
  height: 100%;
11
11
  }
12
12
 
13
- &__add-button,
14
- &__add-button.doc-drawer__toggler {
13
+ &__add-button {
14
+ position: relative;
15
+ }
16
+
17
+ &__add-button--unstyled,
18
+ &__add-button--unstyled.doc-drawer__toggler {
15
19
  @include formInput;
16
20
  margin: 0;
17
21
  border-top-left-radius: 0;
@@ -0,0 +1,11 @@
1
+ import type { Value } from '../../fields/Relationship/types.js';
2
+ export type Props = {
3
+ readonly Button?: React.ReactNode;
4
+ readonly hasMany: boolean;
5
+ readonly path: string;
6
+ readonly relationTo: string | string[];
7
+ readonly setValue: (value: unknown) => void;
8
+ readonly unstyled?: boolean;
9
+ readonly value: Value | Value[];
10
+ };
11
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/AddNewRelation/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAA;AAE/D,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACjC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;IACtC,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,CAAA;CAChC,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/AddNewRelation/types.ts"],"sourcesContent":["import type { Value } from '../../fields/Relationship/types.js'\n\nexport type Props = {\n readonly Button?: React.ReactNode\n readonly hasMany: boolean\n readonly path: string\n readonly relationTo: string | string[]\n readonly setValue: (value: unknown) => void\n readonly unstyled?: boolean\n readonly value: Value | Value[]\n}\n"],"mappings":"AAEA","ignoreList":[]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRelatedCollections.d.ts","sourceRoot":"","sources":["../../../src/elements/AddNewRelation/useRelatedCollections.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAMrD,eAAO,MAAM,qBAAqB,eAAgB,MAAM,GAAG,MAAM,EAAE,KAAG,sBAAsB,EAc3F,CAAA"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import { useState } from 'react';
5
- import { useConfig } from '../../../providers/Config/index.js';
5
+ import { useConfig } from '../../providers/Config/index.js';
6
6
  export const useRelatedCollections = relationTo => {
7
7
  const $ = _c(3);
8
8
  const {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRelatedCollections.js","names":["c","_c","useState","useConfig","useRelatedCollections","relationTo","$","config","t0","collections","relations","map","relation","find","collection","slug","relatedCollections"],"sources":["../../../src/elements/AddNewRelation/useRelatedCollections.ts"],"sourcesContent":["'use client'\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useState } from 'react'\n\nimport { useConfig } from '../../providers/Config/index.js'\n\nexport const useRelatedCollections = (relationTo: string | string[]): ClientCollectionConfig[] => {\n const { config } = useConfig()\n\n const [relatedCollections] = useState(() => {\n if (relationTo) {\n const relations = typeof relationTo === 'string' ? [relationTo] : relationTo\n return relations.map((relation) =>\n config.collections.find((collection) => collection.slug === relation),\n )\n }\n return []\n })\n\n return relatedCollections\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;AAGA,SAASC,QAAQ,QAAQ;AAEzB,SAASC,SAAS,QAAQ;AAE1B,OAAO,MAAMC,qBAAA,GAAwBC,UAAA;EAAA,MAAAC,CAAA,GAAAL,EAAA;EACnC;IAAAM;EAAA,IAAmBJ,SAAA;EAAA,IAAAK,EAAA;EAAA,IAAAF,CAAA,QAAAD,UAAA,IAAAC,CAAA,QAAAC,MAAA,CAAAE,WAAA;IAEmBD,EAAA,GAAAA,CAAA;MAAA,IAChCH,UAAA;QACF,MAAAK,SAAA,GAAkB,OAAOL,UAAA,KAAe,YAAYA,UAAA,IAAcA,UAAA;QAAA,OAC3DK,SAAA,CAAAC,GAAA,CAAAC,QAAA,IACLL,MAAA,CAAAE,WAAA,CAAAI,IAAA,CAAAC,UAAA,IAAwCA,UAAA,CAAAC,IAAA,KAAoBH,QAAA;MAAA;MAAA;IAAA;IAIlEN,CAAA,MAAAD,UAAA;IAAAC,CAAA,MAAAC,MAAA,CAAAE,WAAA;IAAAH,CAAA,MAAAE,EAAA;EAAA;IAAAA,EAAA,GAAAF,CAAA;EAAA;EARA,OAAAU,kBAAA,IAA6Bd,QAAA,CAASM,EAQtC;EAAA,OAEOQ,kBAAA;AAAA,CACT","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import './index.scss';
3
+ export declare function ActionsBar(): React.JSX.Element;
4
+ type ActionsProps = {
5
+ readonly className?: string;
6
+ };
7
+ export declare function Actions({ className }: ActionsProps): React.JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/ActionsBar/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,cAAc,CAAA;AAIrB,wBAAgB,UAAU,sBA4CzB;AAED,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AACD,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,YAAY,qBA4BlD"}
@@ -0,0 +1,186 @@
1
+ 'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
4
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
+ import React from 'react';
6
+ import { ChevronIcon } from '../../../icons/Chevron/index.js';
7
+ import { useConfig } from '../../../providers/Config/index.js';
8
+ import { useTranslation } from '../../../providers/Translation/index.js';
9
+ import { Button } from '../../Button/index.js';
10
+ import { useFormsManager } from '../FormsManager/index.js';
11
+ import './index.scss';
12
+ const baseClass = 'bulk-upload--actions-bar';
13
+ export function ActionsBar() {
14
+ const $ = _c(14);
15
+ const {
16
+ activeIndex,
17
+ forms,
18
+ setActiveIndex
19
+ } = useFormsManager();
20
+ const {
21
+ t
22
+ } = useTranslation();
23
+ const t0 = activeIndex + 1;
24
+ let t1;
25
+ if ($[0] !== t0 || $[1] !== forms.length || $[2] !== t || $[3] !== activeIndex || $[4] !== setActiveIndex) {
26
+ let t2;
27
+ if ($[6] !== activeIndex || $[7] !== setActiveIndex || $[8] !== forms.length) {
28
+ t2 = () => {
29
+ const nextIndex = activeIndex - 1;
30
+ if (nextIndex < 0) {
31
+ setActiveIndex(forms.length - 1);
32
+ } else {
33
+ setActiveIndex(nextIndex);
34
+ }
35
+ };
36
+ $[6] = activeIndex;
37
+ $[7] = setActiveIndex;
38
+ $[8] = forms.length;
39
+ $[9] = t2;
40
+ } else {
41
+ t2 = $[9];
42
+ }
43
+ let t3;
44
+ if ($[10] !== activeIndex || $[11] !== forms.length || $[12] !== setActiveIndex) {
45
+ t3 = () => {
46
+ const nextIndex_0 = activeIndex + 1;
47
+ if (nextIndex_0 === forms.length) {
48
+ setActiveIndex(0);
49
+ } else {
50
+ setActiveIndex(nextIndex_0);
51
+ }
52
+ };
53
+ $[10] = activeIndex;
54
+ $[11] = forms.length;
55
+ $[12] = setActiveIndex;
56
+ $[13] = t3;
57
+ } else {
58
+ t3 = $[13];
59
+ }
60
+ t1 = _jsxs("div", {
61
+ className: baseClass,
62
+ children: [_jsxs("div", {
63
+ className: `${baseClass}__navigation`,
64
+ children: [_jsxs("p", {
65
+ className: `${baseClass}__locationText`,
66
+ children: [_jsx("strong", {
67
+ children: t0
68
+ }), " of ", _jsx("strong", {
69
+ children: forms.length
70
+ })]
71
+ }), _jsxs("div", {
72
+ className: `${baseClass}__controls`,
73
+ children: [_jsx(Button, {
74
+ "aria-label": t("general:previous"),
75
+ buttonStyle: "none",
76
+ onClick: t2,
77
+ type: "button",
78
+ children: _jsx(ChevronIcon, {
79
+ direction: "left"
80
+ })
81
+ }), _jsx(Button, {
82
+ "aria-label": t("general:next"),
83
+ buttonStyle: "none",
84
+ onClick: t3,
85
+ type: "button",
86
+ children: _jsx(ChevronIcon, {
87
+ direction: "right"
88
+ })
89
+ })]
90
+ })]
91
+ }), _jsx(Actions, {
92
+ className: `${baseClass}__saveButtons`
93
+ })]
94
+ });
95
+ $[0] = t0;
96
+ $[1] = forms.length;
97
+ $[2] = t;
98
+ $[3] = activeIndex;
99
+ $[4] = setActiveIndex;
100
+ $[5] = t1;
101
+ } else {
102
+ t1 = $[5];
103
+ }
104
+ return t1;
105
+ }
106
+ export function Actions(t0) {
107
+ const $ = _c(14);
108
+ const {
109
+ className
110
+ } = t0;
111
+ const {
112
+ config
113
+ } = useConfig();
114
+ const {
115
+ t
116
+ } = useTranslation();
117
+ const {
118
+ collectionSlug,
119
+ hasPublishPermission,
120
+ hasSavePermission,
121
+ saveAllDocs
122
+ } = useFormsManager();
123
+ let t1;
124
+ if ($[0] !== collectionSlug || $[1] !== config.collections) {
125
+ let t2;
126
+ if ($[3] !== collectionSlug) {
127
+ t2 = c => c.slug === collectionSlug;
128
+ $[3] = collectionSlug;
129
+ $[4] = t2;
130
+ } else {
131
+ t2 = $[4];
132
+ }
133
+ t1 = config.collections.find(t2);
134
+ $[0] = collectionSlug;
135
+ $[1] = config.collections;
136
+ $[2] = t1;
137
+ } else {
138
+ t1 = $[2];
139
+ }
140
+ const collectionConfig = t1;
141
+ let t2;
142
+ if ($[5] !== className) {
143
+ t2 = [`${baseClass}__buttons`, className].filter(Boolean);
144
+ $[5] = className;
145
+ $[6] = t2;
146
+ } else {
147
+ t2 = $[6];
148
+ }
149
+ const t3 = t2.join(" ");
150
+ let t4;
151
+ if ($[7] !== collectionConfig || $[8] !== hasSavePermission || $[9] !== saveAllDocs || $[10] !== t || $[11] !== hasPublishPermission || $[12] !== t3) {
152
+ t4 = _jsxs("div", {
153
+ className: t3,
154
+ children: [collectionConfig?.versions?.drafts && hasSavePermission ? _jsx(Button, {
155
+ buttonStyle: "secondary",
156
+ onClick: () => void saveAllDocs({
157
+ overrides: {
158
+ _status: "draft"
159
+ }
160
+ }),
161
+ children: t("version:saveDraft")
162
+ }) : null, collectionConfig?.versions?.drafts && hasPublishPermission ? _jsx(Button, {
163
+ onClick: () => void saveAllDocs({
164
+ overrides: {
165
+ _status: "published"
166
+ }
167
+ }),
168
+ children: t("version:publish")
169
+ }) : null, !collectionConfig?.versions?.drafts && hasSavePermission ? _jsx(Button, {
170
+ onClick: () => void saveAllDocs(),
171
+ children: t("general:save")
172
+ }) : null]
173
+ });
174
+ $[7] = collectionConfig;
175
+ $[8] = hasSavePermission;
176
+ $[9] = saveAllDocs;
177
+ $[10] = t;
178
+ $[11] = hasPublishPermission;
179
+ $[12] = t3;
180
+ $[13] = t4;
181
+ } else {
182
+ t4 = $[13];
183
+ }
184
+ return t4;
185
+ }
186
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["c","_c","React","ChevronIcon","useConfig","useTranslation","Button","useFormsManager","baseClass","ActionsBar","$","activeIndex","forms","setActiveIndex","t","t0","t1","length","t2","nextIndex","t3","nextIndex_0","_jsxs","className","children","_jsx","buttonStyle","onClick","type","direction","Actions","config","collectionSlug","hasPublishPermission","hasSavePermission","saveAllDocs","collections","slug","find","collectionConfig","filter","Boolean","join","t4","versions","drafts","overrides","_status"],"sources":["../../../../src/elements/BulkUpload/ActionsBar/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { ChevronIcon } from '../../../icons/Chevron/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--actions-bar'\n\nexport function ActionsBar() {\n const { activeIndex, forms, setActiveIndex } = useFormsManager()\n const { t } = useTranslation()\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__navigation`}>\n <p className={`${baseClass}__locationText`}>\n <strong>{activeIndex + 1}</strong>\n {' of '}\n <strong>{forms.length}</strong>\n </p>\n\n <div className={`${baseClass}__controls`}>\n <Button\n aria-label={t('general:previous')}\n buttonStyle=\"none\"\n onClick={() => {\n const nextIndex = activeIndex - 1\n if (nextIndex < 0) setActiveIndex(forms.length - 1)\n else setActiveIndex(nextIndex)\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"left\" />\n </Button>\n <Button\n aria-label={t('general:next')}\n buttonStyle=\"none\"\n onClick={() => {\n const nextIndex = activeIndex + 1\n if (nextIndex === forms.length) setActiveIndex(0)\n else setActiveIndex(nextIndex)\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"right\" />\n </Button>\n </div>\n </div>\n\n <Actions className={`${baseClass}__saveButtons`} />\n </div>\n )\n}\n\ntype ActionsProps = {\n readonly className?: string\n}\nexport function Actions({ className }: ActionsProps) {\n const { config } = useConfig()\n const { t } = useTranslation()\n const { collectionSlug, hasPublishPermission, hasSavePermission, saveAllDocs } = useFormsManager()\n\n const collectionConfig = config.collections.find((c) => c.slug === collectionSlug)\n\n return (\n <div className={[`${baseClass}__buttons`, className].filter(Boolean).join(' ')}>\n {collectionConfig?.versions?.drafts && hasSavePermission ? (\n <Button\n buttonStyle=\"secondary\"\n onClick={() => void saveAllDocs({ overrides: { _status: 'draft' } })}\n >\n {t('version:saveDraft')}\n </Button>\n ) : null}\n {collectionConfig?.versions?.drafts && hasPublishPermission ? (\n <Button onClick={() => void saveAllDocs({ overrides: { _status: 'published' } })}>\n {t('version:publish')}\n </Button>\n ) : null}\n\n {!collectionConfig?.versions?.drafts && hasSavePermission ? (\n <Button onClick={() => void saveAllDocs()}>{t('general:save')}</Button>\n ) : null}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ @import '../../../scss/styles.scss';
2
+
3
+ .bulk-upload--actions-bar {
4
+ display: flex;
5
+ padding-inline: var(--gutter-h);
6
+ align-items: center;
7
+ border-bottom: 1px solid var(--theme-border-color);
8
+ position: sticky;
9
+ z-index: 1;
10
+ top: 0;
11
+ background-color: var(--theme-bg);
12
+ height: var(--doc-controls-height);
13
+
14
+ &__navigation {
15
+ display: flex;
16
+ gap: var(--base);
17
+ align-items: center;
18
+ width: 100%;
19
+ }
20
+
21
+ &__locationText {
22
+ font-variant-numeric: tabular-nums;
23
+ margin: 0;
24
+ }
25
+
26
+ &__controls {
27
+ display: flex;
28
+ gap: calc(var(--base) / 2);
29
+
30
+ .btn {
31
+ background-color: var(--theme-elevation-100);
32
+ width: calc(var(--base) * 1.2);
33
+ height: calc(var(--base) * 1.2);
34
+
35
+ &:hover {
36
+ background-color: var(--theme-elevation-200);
37
+ }
38
+
39
+ &__label {
40
+ display: flex;
41
+ }
42
+ }
43
+ }
44
+
45
+ &__buttons {
46
+ display: flex;
47
+ gap: var(--base);
48
+ margin-left: auto;
49
+ }
50
+
51
+ @include mid-break {
52
+ &__navigation {
53
+ justify-content: space-between;
54
+ }
55
+ &__saveButtons {
56
+ display: none;
57
+ }
58
+ }
59
+ }
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ import './index.scss';
3
+ type Props = {
4
+ readonly onCancel: () => void;
5
+ readonly onDrop: (acceptedFiles: FileList) => void;
6
+ };
7
+ export declare function AddFilesView({ onCancel, onDrop }: Props): React.JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/AddFilesView/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,cAAc,CAAA;AAIrB,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,QAAQ,KAAK,IAAI,CAAA;CACnD,CAAA;AACD,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,qBAWvD"}