@payloadcms/ui 3.19.0-canary.edf2c5e → 3.19.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 (48) hide show
  1. package/dist/elements/BulkUpload/ActionsBar/index.d.ts +5 -1
  2. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  3. package/dist/elements/BulkUpload/ActionsBar/index.js +38 -31
  4. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  5. package/dist/elements/BulkUpload/AddingFilesView/index.js +5 -3
  6. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  7. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  8. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  9. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts +11 -0
  10. package/dist/elements/BulkUpload/EditMany/DrawerContent.d.ts.map +1 -0
  11. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +166 -0
  12. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -0
  13. package/dist/elements/BulkUpload/EditMany/index.d.ts +9 -0
  14. package/dist/elements/BulkUpload/EditMany/index.d.ts.map +1 -0
  15. package/dist/elements/BulkUpload/EditMany/index.js +69 -0
  16. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -0
  17. package/dist/elements/BulkUpload/EditMany/index.scss +201 -0
  18. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  19. package/dist/elements/BulkUpload/FileSidebar/index.js +3 -2
  20. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/FileSidebar/index.scss +5 -0
  22. package/dist/elements/BulkUpload/FormsManager/index.d.ts +1 -0
  23. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  24. package/dist/elements/BulkUpload/FormsManager/index.js +68 -31
  25. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts +6 -0
  27. package/dist/elements/BulkUpload/FormsManager/reducer.d.ts.map +1 -1
  28. package/dist/elements/BulkUpload/FormsManager/reducer.js +18 -0
  29. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  30. package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -1
  31. package/dist/elements/BulkUpload/Header/index.js +2 -0
  32. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  33. package/dist/elements/BulkUpload/Header/index.scss +2 -0
  34. package/dist/elements/EditMany/DrawerContent.d.ts +1 -1
  35. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  36. package/dist/elements/EditMany/DrawerContent.js +4 -2
  37. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  38. package/dist/elements/ViewDescription/index.scss +7 -0
  39. package/dist/exports/client/index.js +22 -22
  40. package/dist/exports/client/index.js.map +4 -4
  41. package/dist/fields/Tabs/index.js +2 -1
  42. package/dist/fields/Tabs/index.js.map +1 -1
  43. package/dist/styles.css +1 -1
  44. package/dist/utilities/filterOutUploadFields.d.ts +3 -0
  45. package/dist/utilities/filterOutUploadFields.d.ts.map +1 -0
  46. package/dist/utilities/filterOutUploadFields.js +6 -0
  47. package/dist/utilities/filterOutUploadFields.js.map +1 -0
  48. package/package.json +4 -4
@@ -1,6 +1,10 @@
1
+ import type { ClientCollectionConfig } from 'payload';
1
2
  import React from 'react';
2
3
  import './index.scss';
3
- export declare function ActionsBar(): React.JSX.Element;
4
+ type Props = {
5
+ readonly collectionConfig: ClientCollectionConfig;
6
+ };
7
+ export declare function ActionsBar({ collectionConfig }: Props): React.JSX.Element;
4
8
  type ActionsProps = {
5
9
  readonly className?: string;
6
10
  };
@@ -1 +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,sBAkDzB;AAED,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AACD,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,YAAY,qBA4BlD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/ActionsBar/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAErD,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,OAAO,cAAc,CAAA;AAIrB,KAAK,KAAK,GAAG;IACX,QAAQ,CAAC,gBAAgB,EAAE,sBAAsB,CAAA;CAClD,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,gBAAgB,EAAE,EAAE,KAAK,qBAmDrD;AAED,KAAK,YAAY,GAAG;IAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AACD,wBAAgB,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,YAAY,qBA4BlD"}
@@ -7,11 +7,15 @@ import { ChevronIcon } from '../../../icons/Chevron/index.js';
7
7
  import { useConfig } from '../../../providers/Config/index.js';
8
8
  import { useTranslation } from '../../../providers/Translation/index.js';
9
9
  import { Button } from '../../Button/index.js';
10
+ import { EditManyBulkUploads } from '../EditMany/index.js';
10
11
  import { useFormsManager } from '../FormsManager/index.js';
11
12
  import './index.scss';
12
13
  const baseClass = 'bulk-upload--actions-bar';
13
- export function ActionsBar() {
14
- const $ = _c(14);
14
+ export function ActionsBar(t0) {
15
+ const $ = _c(15);
16
+ const {
17
+ collectionConfig
18
+ } = t0;
15
19
  const {
16
20
  activeIndex,
17
21
  forms,
@@ -20,12 +24,12 @@ export function ActionsBar() {
20
24
  const {
21
25
  t
22
26
  } = useTranslation();
23
- const t0 = activeIndex + 1;
24
- let t1;
25
- if ($[0] !== activeIndex || $[1] !== forms.length || $[2] !== setActiveIndex || $[3] !== t || $[4] !== t0) {
26
- let t2;
27
- if ($[6] !== activeIndex || $[7] !== forms.length || $[8] !== setActiveIndex) {
28
- t2 = () => {
27
+ const t1 = activeIndex + 1;
28
+ let t2;
29
+ if ($[0] !== activeIndex || $[1] !== collectionConfig || $[2] !== forms.length || $[3] !== setActiveIndex || $[4] !== t || $[5] !== t1) {
30
+ let t3;
31
+ if ($[7] !== activeIndex || $[8] !== forms.length || $[9] !== setActiveIndex) {
32
+ t3 = () => {
29
33
  const nextIndex = activeIndex - 1;
30
34
  if (nextIndex < 0) {
31
35
  setActiveIndex(forms.length - 1);
@@ -33,16 +37,16 @@ export function ActionsBar() {
33
37
  setActiveIndex(nextIndex);
34
38
  }
35
39
  };
36
- $[6] = activeIndex;
37
- $[7] = forms.length;
38
- $[8] = setActiveIndex;
39
- $[9] = t2;
40
+ $[7] = activeIndex;
41
+ $[8] = forms.length;
42
+ $[9] = setActiveIndex;
43
+ $[10] = t3;
40
44
  } else {
41
- t2 = $[9];
45
+ t3 = $[10];
42
46
  }
43
- let t3;
44
- if ($[10] !== activeIndex || $[11] !== forms.length || $[12] !== setActiveIndex) {
45
- t3 = () => {
47
+ let t4;
48
+ if ($[11] !== activeIndex || $[12] !== forms.length || $[13] !== setActiveIndex) {
49
+ t4 = () => {
46
50
  const nextIndex_0 = activeIndex + 1;
47
51
  if (nextIndex_0 === forms.length) {
48
52
  setActiveIndex(0);
@@ -50,21 +54,21 @@ export function ActionsBar() {
50
54
  setActiveIndex(nextIndex_0);
51
55
  }
52
56
  };
53
- $[10] = activeIndex;
54
- $[11] = forms.length;
55
- $[12] = setActiveIndex;
56
- $[13] = t3;
57
+ $[11] = activeIndex;
58
+ $[12] = forms.length;
59
+ $[13] = setActiveIndex;
60
+ $[14] = t4;
57
61
  } else {
58
- t3 = $[13];
62
+ t4 = $[14];
59
63
  }
60
- t1 = _jsxs("div", {
64
+ t2 = _jsxs("div", {
61
65
  className: baseClass,
62
66
  children: [_jsxs("div", {
63
67
  className: `${baseClass}__navigation`,
64
68
  children: [_jsxs("p", {
65
69
  className: `${baseClass}__locationText`,
66
70
  children: [_jsx("strong", {
67
- children: t0
71
+ children: t1
68
72
  }), " of ", _jsx("strong", {
69
73
  children: forms.length
70
74
  })]
@@ -73,7 +77,7 @@ export function ActionsBar() {
73
77
  children: [_jsx(Button, {
74
78
  "aria-label": t("general:previous"),
75
79
  buttonStyle: "none",
76
- onClick: t2,
80
+ onClick: t3,
77
81
  type: "button",
78
82
  children: _jsx(ChevronIcon, {
79
83
  direction: "left"
@@ -81,27 +85,30 @@ export function ActionsBar() {
81
85
  }), _jsx(Button, {
82
86
  "aria-label": t("general:next"),
83
87
  buttonStyle: "none",
84
- onClick: t3,
88
+ onClick: t4,
85
89
  type: "button",
86
90
  children: _jsx(ChevronIcon, {
87
91
  direction: "right"
88
92
  })
89
93
  })]
94
+ }), _jsx(EditManyBulkUploads, {
95
+ collection: collectionConfig
90
96
  })]
91
97
  }), _jsx(Actions, {
92
98
  className: `${baseClass}__saveButtons`
93
99
  })]
94
100
  });
95
101
  $[0] = activeIndex;
96
- $[1] = forms.length;
97
- $[2] = setActiveIndex;
98
- $[3] = t;
99
- $[4] = t0;
102
+ $[1] = collectionConfig;
103
+ $[2] = forms.length;
104
+ $[3] = setActiveIndex;
105
+ $[4] = t;
100
106
  $[5] = t1;
107
+ $[6] = t2;
101
108
  } else {
102
- t1 = $[5];
109
+ t2 = $[6];
103
110
  }
104
- return t1;
111
+ return t2;
105
112
  }
106
113
  export function Actions(t0) {
107
114
  const $ = _c(12);
@@ -1 +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","getEntityConfig","collectionSlug","hasPublishPermission","hasSavePermission","saveAllDocs","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) {\n setActiveIndex(forms.length - 1)\n } else {\n setActiveIndex(nextIndex)\n }\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) {\n setActiveIndex(0)\n } else {\n setActiveIndex(nextIndex)\n }\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 { getEntityConfig } = useConfig()\n const { t } = useTranslation()\n const { collectionSlug, hasPublishPermission, hasSavePermission, saveAllDocs } = useFormsManager()\n\n const collectionConfig = getEntityConfig({ 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":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","ChevronIcon","useConfig","useTranslation","Button","EditManyBulkUploads","useFormsManager","baseClass","ActionsBar","t0","$","collectionConfig","activeIndex","forms","setActiveIndex","t","t1","t2","length","t3","nextIndex","t4","nextIndex_0","_jsxs","className","children","_jsx","buttonStyle","onClick","type","direction","collection","Actions","getEntityConfig","collectionSlug","hasPublishPermission","hasSavePermission","saveAllDocs","filter","Boolean","join","versions","drafts","overrides","_status"],"sources":["../../../../src/elements/BulkUpload/ActionsBar/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\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 { EditManyBulkUploads } from '../EditMany/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--actions-bar'\n\ntype Props = {\n readonly collectionConfig: ClientCollectionConfig\n}\n\nexport function ActionsBar({ collectionConfig }: Props) {\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) {\n setActiveIndex(forms.length - 1)\n } else {\n setActiveIndex(nextIndex)\n }\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) {\n setActiveIndex(0)\n } else {\n setActiveIndex(nextIndex)\n }\n }}\n type=\"button\"\n >\n <ChevronIcon direction=\"right\" />\n </Button>\n </div>\n <EditManyBulkUploads collection={collectionConfig} />\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 { getEntityConfig } = useConfig()\n const { t } = useTranslation()\n const { collectionSlug, hasPublishPermission, hasSavePermission, saveAllDocs } = useFormsManager()\n\n const collectionConfig = getEntityConfig({ 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":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,OAAOC,KAAA,MAAW;AAElB,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,mBAAmB,QAAQ;AACpC,SAASC,eAAe,QAAQ;AAChC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAMlB,OAAO,SAAAC,WAAAC,EAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAAoB;IAAAY;EAAA,IAAAF,EAA2B;EACpD;IAAAG,WAAA;IAAAC,KAAA;IAAAC;EAAA,IAA+CR,eAAA;EAC/C;IAAAS;EAAA,IAAcZ,cAAA;EAMG,MAAAa,EAAA,GAAAJ,WAAA,IAAc;EAAA,IAAAK,EAAA;EAAA,IAAAP,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAC,gBAAA,IAAAD,CAAA,QAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,QAAAI,cAAA,IAAAJ,CAAA,QAAAK,CAAA,IAAAL,CAAA,QAAAM,EAAA;IAAA,IAAAG,EAAA;IAAA,IAAAT,CAAA,QAAAE,WAAA,IAAAF,CAAA,QAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,QAAAI,cAAA;MASZK,EAAA,GAAAA,CAAA;QACP,MAAAC,SAAA,GAAkBR,WAAA,IAAc;QAAA,IAC5BQ,SAAA,IAAY;UACdN,cAAA,CAAeD,KAAA,CAAAK,MAAA,IAAe;QAAA;UAE9BJ,cAAA,CAAeM,SAAA;QAAA;MAAA;MAEnBV,CAAA,MAAAE,WAAA;MAAAF,CAAA,MAAAG,KAAA,CAAAK,MAAA;MAAAR,CAAA,MAAAI,cAAA;MAAAJ,CAAA,OAAAS,EAAA;IAAA;MAAAA,EAAA,GAAAT,CAAA;IAAA;IAAA,IAAAW,EAAA;IAAA,IAAAX,CAAA,SAAAE,WAAA,IAAAF,CAAA,SAAAG,KAAA,CAAAK,MAAA,IAAAR,CAAA,SAAAI,cAAA;MAQSO,EAAA,GAAAA,CAAA;QACP,MAAAC,WAAA,GAAkBV,WAAA,IAAc;QAAA,IAC5BQ,WAAA,KAAcP,KAAA,CAAAK,MAAY;UAC5BJ,cAAA,EAAe;QAAA;UAEfA,cAAA,CAAeM,WAAA;QAAA;MAAA;MAEnBV,CAAA,OAAAE,WAAA;MAAAF,CAAA,OAAAG,KAAA,CAAAK,MAAA;MAAAR,CAAA,OAAAI,cAAA;MAAAJ,CAAA,OAAAW,EAAA;IAAA;MAAAA,EAAA,GAAAX,CAAA;IAAA;IAlCRO,EAAA,GAAAM,KAAA,CAAC;MAAAC,SAAA,EAAAjB,SAAA;MAAAkB,QAAA,GACCF,KAAA,CAAC;QAAAC,SAAA,EAAe,GAAAjB,SAAA,cAA0B;QAAAkB,QAAA,GACxCF,KAAA,CAAC;UAAAC,SAAA,EAAa,GAAAjB,SAAA,gBAA4B;UAAAkB,QAAA,GACxCC,IAAA,CAAC;YAAAD,QAAA,EAAQT;UAAc,C,GACtB,QACDU,IAAA,CAAC;YAAAD,QAAA,EAAQZ,KAAA,CAAAK;UAAA,C;YAGXK,KAAA,CAAC;UAAAC,SAAA,EAAe,GAAAjB,SAAA,YAAwB;UAAAkB,QAAA,GACtCC,IAAA,CAAAtB,MAAA;YAAA,cACcW,CAAA,CAAE;YAAAY,WAAA,EACF;YAAAC,OAAA,EACHT,EAOT;YAAAU,IAAA,EACK;YAAAJ,QAAA,EAELC,IAAA,CAAAzB,WAAA;cAAA6B,SAAA,EAAuB;YAAA,C;cAEzBJ,IAAA,CAAAtB,MAAA;YAAA,cACcW,CAAA,CAAE;YAAAY,WAAA,EACF;YAAAC,OAAA,EACHP,EAOT;YAAAQ,IAAA,EACK;YAAAJ,QAAA,EAELC,IAAA,CAAAzB,WAAA;cAAA6B,SAAA,EAAuB;YAAA,C;;YAG3BJ,IAAA,CAAArB,mBAAA;UAAA0B,UAAA,EAAiCpB;QAAA,C;UAGnCe,IAAA,CAAAM,OAAA;QAAAR,SAAA,EAAoB,GAAAjB,SAAA;MAA2B,C;;;;;;;;;;;;SA3CjDU,E;;AAmDJ,OAAO,SAAAe,QAAAvB,EAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAAiB;IAAAyB;EAAA,IAAAf,EAA2B;EACjD;IAAAwB;EAAA,IAA4B/B,SAAA;EAC5B;IAAAa;EAAA,IAAcZ,cAAA;EACd;IAAA+B,cAAA;IAAAC,oBAAA;IAAAC,iBAAA;IAAAC;EAAA,IAAiF/B,eAAA;EAAA,IAAAU,EAAA;EAAA,IAAAN,CAAA,QAAAwB,cAAA,IAAAxB,CAAA,QAAAuB,eAAA;IAExDjB,EAAA,GAAAiB,eAAA;MAAAC;IAAA,CAAiC;IAAAxB,CAAA,MAAAwB,cAAA;IAAAxB,CAAA,MAAAuB,eAAA;IAAAvB,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAA1D,MAAAC,gBAAA,GAAyBK,EAAiC;EAAA,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAc,SAAA;IAGxCP,EAAA,IAAC,GAAAV,SAAA,WAAuB,EAAEiB,SAAA,EAAAc,MAAA,CAAAC,OAAkB;IAAA7B,CAAA,MAAAc,SAAA;IAAAd,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAA5C,MAAAS,EAAA,GAAAF,EAA4C,CAAAuB,IAAA,CAAc;EAAA,IAAAnB,EAAA;EAAA,IAAAX,CAAA,QAAAC,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAAhC,CAAA,QAAAyB,oBAAA,IAAAzB,CAAA,QAAA0B,iBAAA,IAAA1B,CAAA,QAAA2B,WAAA,IAAA3B,CAAA,QAAAK,CAAA,IAAAL,CAAA,SAAAS,EAAA;IAA1EE,EAAA,GAAAE,KAAA,CAAC;MAAAC,SAAA,EAAeL,EAA0D;MAAAM,QAAA,GACvEd,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAsCN,iBAAA,GACrCV,IAAA,CAAAtB,MAAA;QAAAuB,WAAA,EACc;QAAAC,OAAA,EAAAA,CAAA,UACQS,WAAA;UAAAM,SAAA;YAAAC,OAAA,EAAoC;UAAA;QAAA,CAAU;QAAAnB,QAAA,EAEjEV,CAAA,CAAE;MAAA,C,QAEH,EACHJ,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAsCP,oBAAA,GACrCT,IAAA,CAAAtB,MAAA;QAAAwB,OAAA,EAAAA,CAAA,UAA4BS,WAAA;UAAAM,SAAA;YAAAC,OAAA,EAAoC;UAAA;QAAA,CAAc;QAAAnB,QAAA,EAC3EV,CAAA,CAAE;MAAA,C,QAEH,EAEH,CAACJ,gBAAA,EAAA8B,QAAA,EAAAC,MAAA,IAAsCN,iBAAA,GACtCV,IAAA,CAAAtB,MAAA;QAAAwB,OAAA,EAAAA,CAAA,UAA4BS,WAAA;QAAAZ,QAAA,EAAgBV,CAAA,CAAE;MAAA,C,QAC5C;IAAA,C;;;;;;;;;;;SAjBNM,E","ignoreList":[]}
@@ -45,7 +45,7 @@ export function AddingFilesView() {
45
45
  } = useModal();
46
46
  let t0;
47
47
  if ($[0] !== activeForm || $[1] !== activeIndex || $[2] !== collectionSlug || $[3] !== docPermissions || $[4] !== documentSlots || $[5] !== forms.length || $[6] !== getEntityConfig || $[7] !== hasPublishPermission || $[8] !== hasSavePermission || $[9] !== hasSubmitted || $[10] !== i18n || $[11] !== openModal || $[12] !== user) {
48
- const collection = getEntityConfig({
48
+ const collectionConfig = getEntityConfig({
49
49
  collectionSlug
50
50
  });
51
51
  let t1;
@@ -62,7 +62,7 @@ export function AddingFilesView() {
62
62
  className: `${baseClass}__editView`,
63
63
  children: [_jsx(DrawerHeader, {
64
64
  onClose: t1,
65
- title: getTranslation(collection.labels.singular, i18n)
65
+ title: getTranslation(collectionConfig.labels.singular, i18n)
66
66
  }), activeForm ? _jsxs(DocumentInfoProvider, {
67
67
  collectionSlug,
68
68
  currentEditor: user,
@@ -79,7 +79,9 @@ export function AddingFilesView() {
79
79
  unpublishedVersionCount: 0,
80
80
  Upload: documentSlots.Upload,
81
81
  versionCount: 0,
82
- children: [_jsx(ActionsBar, {}), _jsx(EditForm, {
82
+ children: [_jsx(ActionsBar, {
83
+ collectionConfig
84
+ }), _jsx(EditForm, {
83
85
  submitted: hasSubmitted
84
86
  })]
85
87
  }, `${activeIndex}-${forms.length}`) : null]
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","reduceFieldsToValues","React","useAuth","useConfig","DocumentInfoProvider","useTranslation","ActionsBar","discardBulkUploadModalSlug","DiscardWithoutSaving","EditForm","FileSidebar","useFormsManager","DrawerHeader","baseClass","AddingFilesView","$","activeIndex","collectionSlug","docPermissions","documentSlots","forms","hasPublishPermission","hasSavePermission","hasSubmitted","activeForm","getEntityConfig","i18n","user","openModal","t0","length","collection","t1","_jsxs","className","children","_jsx","onClose","title","labels","singular","currentEditor","hasPublishedDoc","id","initialData","formState","initialState","isLocked","lastUpdateTime","mostRecentVersionIsAutosaved","unpublishedVersionCount","Upload","versionCount","submitted"],"sources":["../../../../src/elements/BulkUpload/AddingFilesView/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport React from 'react'\n\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { DocumentInfoProvider } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ActionsBar } from '../ActionsBar/index.js'\nimport { discardBulkUploadModalSlug, DiscardWithoutSaving } from '../DiscardWithoutSaving/index.js'\nimport { EditForm } from '../EditForm/index.js'\nimport { FileSidebar } from '../FileSidebar/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { DrawerHeader } from '../Header/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--file-manager'\n\nexport function AddingFilesView() {\n const {\n activeIndex,\n collectionSlug,\n docPermissions,\n documentSlots,\n forms,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n } = useFormsManager()\n const activeForm = forms[activeIndex]\n const { getEntityConfig } = useConfig()\n const { i18n } = useTranslation()\n const { user } = useAuth()\n const { openModal } = useModal()\n\n const collection = getEntityConfig({ collectionSlug })\n\n return (\n <div className={baseClass}>\n <FileSidebar />\n\n <div className={`${baseClass}__editView`}>\n <DrawerHeader\n onClose={() => openModal(discardBulkUploadModalSlug)}\n title={getTranslation(collection.labels.singular, i18n)}\n />\n {activeForm ? (\n <DocumentInfoProvider\n collectionSlug={collectionSlug}\n currentEditor={user}\n docPermissions={docPermissions}\n hasPublishedDoc={false}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={null}\n initialData={reduceFieldsToValues(activeForm.formState, true)}\n initialState={activeForm.formState}\n isLocked={false}\n key={`${activeIndex}-${forms.length}`}\n lastUpdateTime={0}\n mostRecentVersionIsAutosaved={false}\n unpublishedVersionCount={0}\n Upload={documentSlots.Upload}\n versionCount={0}\n >\n <ActionsBar />\n <EditForm submitted={hasSubmitted} />\n </DocumentInfoProvider>\n ) : null}\n </div>\n\n <DiscardWithoutSaving />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","getTranslation","reduceFieldsToValues","React","useAuth","useConfig","DocumentInfoProvider","useTranslation","ActionsBar","discardBulkUploadModalSlug","DiscardWithoutSaving","EditForm","FileSidebar","useFormsManager","DrawerHeader","baseClass","AddingFilesView","$","activeIndex","collectionSlug","docPermissions","documentSlots","forms","hasPublishPermission","hasSavePermission","hasSubmitted","activeForm","getEntityConfig","i18n","user","openModal","t0","length","collectionConfig","t1","_jsxs","className","children","_jsx","onClose","title","labels","singular","currentEditor","hasPublishedDoc","id","initialData","formState","initialState","isLocked","lastUpdateTime","mostRecentVersionIsAutosaved","unpublishedVersionCount","Upload","versionCount","submitted"],"sources":["../../../../src/elements/BulkUpload/AddingFilesView/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport React from 'react'\n\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { DocumentInfoProvider } from '../../../providers/DocumentInfo/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ActionsBar } from '../ActionsBar/index.js'\nimport { discardBulkUploadModalSlug, DiscardWithoutSaving } from '../DiscardWithoutSaving/index.js'\nimport { EditForm } from '../EditForm/index.js'\nimport { FileSidebar } from '../FileSidebar/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { DrawerHeader } from '../Header/index.js'\nimport './index.scss'\n\nconst baseClass = 'bulk-upload--file-manager'\n\nexport function AddingFilesView() {\n const {\n activeIndex,\n collectionSlug,\n docPermissions,\n documentSlots,\n forms,\n hasPublishPermission,\n hasSavePermission,\n hasSubmitted,\n } = useFormsManager()\n const activeForm = forms[activeIndex]\n const { getEntityConfig } = useConfig()\n const { i18n } = useTranslation()\n const { user } = useAuth()\n const { openModal } = useModal()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n\n return (\n <div className={baseClass}>\n <FileSidebar />\n\n <div className={`${baseClass}__editView`}>\n <DrawerHeader\n onClose={() => openModal(discardBulkUploadModalSlug)}\n title={getTranslation(collectionConfig.labels.singular, i18n)}\n />\n {activeForm ? (\n <DocumentInfoProvider\n collectionSlug={collectionSlug}\n currentEditor={user}\n docPermissions={docPermissions}\n hasPublishedDoc={false}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={null}\n initialData={reduceFieldsToValues(activeForm.formState, true)}\n initialState={activeForm.formState}\n isLocked={false}\n key={`${activeIndex}-${forms.length}`}\n lastUpdateTime={0}\n mostRecentVersionIsAutosaved={false}\n unpublishedVersionCount={0}\n Upload={documentSlots.Upload}\n versionCount={0}\n >\n <ActionsBar collectionConfig={collectionConfig} />\n <EditForm submitted={hasSubmitted} />\n </DocumentInfoProvider>\n ) : null}\n </div>\n\n <DiscardWithoutSaving />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAiC,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAmB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,aAAa,qBAgJpD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAiC,MAAM,OAAO,CAAA;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAmB/C,OAAO,cAAc,CAAA;AAQrB,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,aAAa,qBAgJpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useServerFunctions","useUploadEdits","abortAndIgnore","handleAbortRef","formatAdminURL","useDocumentDrawerContext","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","abortOnChangeRef","useRef","collectionConfig","router","depth","params","reportUpdate","resetUploadEdits","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","controller","docPreferences","state","newFormState","signal","current","abortOnChange","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig } from 'payload'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const abortOnChangeRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug })\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const docPreferences = await getDocPreferences()\n\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n })\n\n abortOnChangeRef.current = null\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"AAAA;;;AAIA,SAASA,SAAS,EAAEC,eAAe,QAAQ;AAC3C,OAAOC,KAAA,IAASC,WAAW,EAAEC,SAAS,QAAQ;AAI9C,SAASC,IAAI,EAAEC,OAAO,QAAQ;AAE9B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,SAAS,QAAQ;AAC1B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,eAAe,QAAQ;AAChC,SAASC,YAAY,QAAQ;AAC7B,SAASC,iBAAiB,QAAQ;AAClC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,EAAEC,cAAc,QAAQ;AAC/C,SAASC,cAAc,QAAQ;AAC/B,SAASC,wBAAwB,QAAQ;AACzC,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB;AACA;AACA;AAEA,OAAO,SAASC,SAAS;EAAEC;AAAS,CAAiB;EACnD,MAAM;IACJC,MAAM;IACNC,cAAA,EAAgBC,OAAO;IACvBC,cAAc;IACdC,iBAAiB;IACjBC,iBAAiB;IACjBC,YAAY;IACZC,SAAS;IACTC,cAAc;IACdd,MAAA,EAAQe;EAAY,CACrB,GAAGzB,eAAA;EAEJ,MAAM;IAAE0B,MAAA,EAAQC;EAAiB,CAAE,GAAGnB,wBAAA;EAEtC,MAAM;IAAEoB;EAAY,CAAE,GAAGzB,kBAAA;EAEzB,MAAM;IACJ0B,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC,KAAA,EAAOC;MAAU;IAAE,CAC9B;IACDC;EAAe,CAChB,GAAGnC,SAAA;EAEJ,MAAMoC,gBAAA,GAAmB1C,KAAA,CAAM2C,MAAM,CAAkB;EAEvD,MAAMC,gBAAA,GAAmBH,eAAA,CAAgB;IAAEhB,cAAA,EAAgBC;EAAQ;EACnE,MAAMmB,MAAA,GAAS/C,SAAA;EACf,MAAMgD,KAAA,GAAQrC,YAAA;EACd,MAAMsC,MAAA,GAAShD,eAAA;EACf,MAAM;IAAEiD;EAAY,CAAE,GAAGzC,iBAAA;EACzB,MAAM;IAAE0C;EAAgB,CAAE,GAAGrC,cAAA;EAE7B,MAAMsC,MAAA,GAASH,MAAA,CAAOI,GAAG,CAAC;EAE1B,MAAM1B,cAAA,GAAiBmB,gBAAA,CAAiBQ,IAAI;EAE5C,MAAM,CAACC,UAAA,CAAW,GAAGrD,KAAA,CAAMsD,QAAQ,CAAC7B,cAAA;EAEpC,MAAMS,MAAA,GAASjC,WAAA,CACZsD,IAAA;IACCP,YAAA,CAAa;MACXQ,UAAA,EAAY/B,cAAA;MACZgC,SAAA,EAAWF,IAAA,EAAMG,MAAA,EAAQD,SAAA,IAAa,IAAIE,IAAA,GAAOC,WAAW;IAC9D;IAEA,IAAI,OAAOzB,iBAAA,KAAsB,YAAY;MAC3C,KAAKA,iBAAA,CAAkB;QACrB,GAAGoB,IAAI;QACPM,SAAA,EAAW;MACb;IACF;IAEA,IAAI,CAAC9B,SAAA,IAAae,KAAA,GAAQ,GAAG;MAC3B;MACA,MAAMgB,aAAA,GAAgB/C,cAAA,CAAe;QACnCyB,UAAA;QACAuB,IAAA,EAAM,gBAAgBtC,cAAA,IAAkB8B,IAAA,EAAMS,GAAA,EAAKC,EAAA,GAAKf,MAAA,GAAS,WAAWA,MAAA,EAAQ,GAAG;MACzF;MACAL,MAAA,CAAOqB,IAAI,CAACJ,aAAA;IACd,OAAO;MACLb,gBAAA;IACF;EACF,GACA,CACET,UAAA,EACAf,cAAA,EACAqB,KAAA,EACAf,SAAA,EACAmB,MAAA,EACAf,iBAAA,EACAa,YAAA,EACAC,gBAAA,EACAJ,MAAA,CACD;EAGH,MAAMsB,QAAA,GAAkDlE,WAAA,CACtD,OAAO;IAAEmE,SAAA,EAAWC;EAAa,CAAE;IACjC,MAAMC,UAAA,GAAaxD,cAAA,CAAe4B,gBAAA;IAElC,MAAM6B,cAAA,GAAiB,MAAM3C,iBAAA;IAE7B,MAAM;MAAE4C,KAAA,EAAOC;IAAY,CAAE,GAAG,MAAMrC,YAAA,CAAa;MACjDX,cAAA;MACAE,cAAA;MACA4C,cAAA;MACAH,SAAA,EAAWC,aAAA;MACXR,SAAA,EAAW;MACXR,UAAA;MACAqB,MAAA,EAAQJ,UAAA,CAAWI;IACrB;IAEAhC,gBAAA,CAAiBiC,OAAO,GAAG;IAE3B,OAAOF,YAAA;EACT,GACA,CAAChD,cAAA,EAAgB4B,UAAA,EAAYzB,iBAAA,EAAmBQ,YAAA,EAAcT,cAAA,CAAe;EAG/EzB,SAAA,CAAU;IACR,MAAM0E,aAAA,GAAgBlC,gBAAA,CAAiBiC,OAAO;IAE9C,OAAO;MACL9D,cAAA,CAAe+D,aAAA;IACjB;EACF,GAAG,EAAE;EAEL,oBACEC,IAAA,CAACnE,iBAAA;IAAkBmD,SAAA,EAAU;cAC3B,aAAAgB,IAAA,CAACzD,kBAAA;gBACC,aAAA0D,KAAA,CAAC3E,IAAA;QACCqB,MAAA,EAAQA,MAAA;QACRuD,SAAA,EAAW,GAAG1D,SAAA,QAAiB;QAC/B2D,QAAA,EAAUhD,cAAA,IAAkB,CAACH,iBAAA;QAC7BC,YAAA,EAAcE,cAAA,GAAiBiD,SAAA,GAAYnD,YAAA;QAC3CE,cAAA,EAAgBA,cAAA;QAChBkD,MAAA,EAAO;QACPf,QAAA,EAAU,CAACA,QAAA,CAAS;QACpBgB,SAAA,EAAWjD,MAAA;QACXX,SAAA,EAAWA,SAAA;gCAEXsD,IAAA,CAAC5D,cAAA;UACCmE,YAAA,eACEP,IAAA,CAAC7E,KAAA,CAAMqF,QAAQ;sBACZpD,YAAA,iBACC4C,IAAA,CAAC3D,MAAA;cACCO,cAAA,EAAgBmB,gBAAA,CAAiBQ,IAAI;cACrCtB,YAAA,EAAcA,YAAA;cACdwD,YAAA,EAAc1C,gBAAA,CAAiB2C;;;UAKvC5D,cAAA,EAAgBA,cAAA;UAChB6D,MAAA,EAAQ5C,gBAAA,CAAiB4C,MAAM;UAC/BC,kBAAA,EAAoB,CAAC7C,gBAAA,CAAiBQ,IAAI;yBAE5CyB,IAAA,CAACa,eAAA,O,aACDb,IAAA,CAACc,aAAA;;;;AAKX;AAEA,SAASA,cAAA;EACP,MAAM;IAAEC;EAAS,CAAE,GAAGxF,OAAA;EACtB,MAAM;IAAEyF;EAAc,CAAE,GAAG1E,eAAA;EAE3BnB,KAAA,CAAME,SAAS,CAAC;IACd2F,cAAA,CAAelB,OAAO,GAAGiB,SAAA;EAC3B,GAAG,CAACA,SAAA,EAAWC,cAAA,CAAe;EAE9B,OAAO;AACT;AAEA,SAASH,gBAAA;EACP,MAAM;IAAEI;EAAS,CAAE,GAAGtF,eAAA;EACtB,MAAM;IAAEuF,WAAW;IAAEC;EAAsB,CAAE,GAAG7E,eAAA;EAChD,MAAM8E,aAAA,GAAgBjG,KAAA,CAAM2C,MAAM,CAAC;EAEnC,MAAMuD,oBAAA,GAAuBlG,KAAA,CAAMC,WAAW,CAC3CkG,UAAA;IACC,IAAIA,UAAA,KAAeF,aAAA,CAActB,OAAO,EAAE;MACxC;IACF;IACAqB,sBAAA,CAAuB;MAAEG,UAAA;MAAYC,KAAA,EAAOL;IAAY;IACxDE,aAAA,CAActB,OAAO,GAAGwB,UAAA;EAC1B,GACA,CAACJ,WAAA,EAAaC,sBAAA,CAAuB;EAGvC,IAAI,CAACF,SAAA,EAAW;IACd,OAAO;EACT;EAEA,oBACEjB,IAAA,CAACxE,gBAAA;IAAiBmF,MAAA,EAAQM,SAAA,CAAUN,MAAM;IAAEzB,IAAA,EAAM,EAAE;IAAEsC,aAAA,EAAeH;;AAEzE","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useRouter","useSearchParams","React","useCallback","useEffect","Form","useForm","WatchChildErrors","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","OperationProvider","useServerFunctions","useUploadEdits","abortAndIgnore","handleAbortRef","formatAdminURL","useDocumentDrawerContext","DocumentFields","Upload","useFormsManager","BulkUploadProvider","baseClass","EditForm","submitted","action","collectionSlug","docSlug","docPermissions","getDocPreferences","hasSavePermission","initialState","isEditing","isInitializing","CustomUpload","onSave","onSaveFromContext","getFormState","config","routes","admin","adminRoute","getEntityConfig","abortOnChangeRef","useRef","collectionConfig","router","depth","params","reportUpdate","resetUploadEdits","locale","get","slug","schemaPath","useState","json","entitySlug","updatedAt","result","Date","toISOString","operation","redirectRoute","path","doc","id","push","onChange","formState","prevFormState","controller","docPreferences","state","newFormState","signal","current","abortOnChange","_jsx","_jsxs","className","disabled","undefined","method","onSuccess","BeforeFields","Fragment","uploadConfig","upload","fields","schemaPathSegments","ReportAllErrors","GetFieldProxy","getFields","getFormDataRef","docConfig","activeIndex","setFormTotalErrorCount","errorCountRef","reportFormErrorCount","errorCount","index","setErrorCount"],"sources":["../../../../src/elements/BulkUpload/EditForm/index.tsx"],"sourcesContent":["'use client'\n\nimport { useRouter, useSearchParams } from 'next/navigation.js'\nimport React, { useCallback, useEffect } from 'react'\n\nimport type { EditFormProps } from './types.js'\n\nimport { Form, useForm } from '../../../forms/Form/index.js'\nimport { type FormProps } from '../../../forms/Form/types.js'\nimport { WatchChildErrors } from '../../../forms/WatchChildErrors/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useDocumentEvents } from '../../../providers/DocumentEvents/index.js'\nimport { useDocumentInfo } from '../../../providers/DocumentInfo/index.js'\nimport { useEditDepth } from '../../../providers/EditDepth/index.js'\nimport { OperationProvider } from '../../../providers/Operation/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useUploadEdits } from '../../../providers/UploadEdits/index.js'\nimport { abortAndIgnore, handleAbortRef } from '../../../utilities/abortAndIgnore.js'\nimport { formatAdminURL } from '../../../utilities/formatAdminURL.js'\nimport { useDocumentDrawerContext } from '../../DocumentDrawer/Provider.js'\nimport { DocumentFields } from '../../DocumentFields/index.js'\nimport { Upload } from '../../Upload/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { BulkUploadProvider } from '../index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\n\nexport function EditForm({ submitted }: EditFormProps) {\n const {\n action,\n collectionSlug: docSlug,\n docPermissions,\n getDocPreferences,\n hasSavePermission,\n initialState,\n isEditing,\n isInitializing,\n Upload: CustomUpload,\n } = useDocumentInfo()\n\n const { onSave: onSaveFromContext } = useDocumentDrawerContext()\n\n const { getFormState } = useServerFunctions()\n\n const {\n config: {\n routes: { admin: adminRoute },\n },\n getEntityConfig,\n } = useConfig()\n\n const abortOnChangeRef = React.useRef<AbortController>(null)\n\n const collectionConfig = getEntityConfig({ collectionSlug: docSlug })\n const router = useRouter()\n const depth = useEditDepth()\n const params = useSearchParams()\n const { reportUpdate } = useDocumentEvents()\n const { resetUploadEdits } = useUploadEdits()\n\n const locale = params.get('locale')\n\n const collectionSlug = collectionConfig.slug\n\n const [schemaPath] = React.useState(collectionSlug)\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n entitySlug: collectionSlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`,\n })\n router.push(redirectRoute)\n } else {\n resetUploadEdits()\n }\n },\n [\n adminRoute,\n collectionSlug,\n depth,\n isEditing,\n locale,\n onSaveFromContext,\n reportUpdate,\n resetUploadEdits,\n router,\n ],\n )\n\n const onChange: NonNullable<FormProps['onChange']>[0] = useCallback(\n async ({ formState: prevFormState }) => {\n const controller = handleAbortRef(abortOnChangeRef)\n\n const docPreferences = await getDocPreferences()\n\n const { state: newFormState } = await getFormState({\n collectionSlug,\n docPermissions,\n docPreferences,\n formState: prevFormState,\n operation: 'create',\n schemaPath,\n signal: controller.signal,\n })\n\n abortOnChangeRef.current = null\n\n return newFormState\n },\n [collectionSlug, schemaPath, getDocPreferences, getFormState, docPermissions],\n )\n\n useEffect(() => {\n const abortOnChange = abortOnChangeRef.current\n\n return () => {\n abortAndIgnore(abortOnChange)\n }\n }, [])\n\n return (\n <OperationProvider operation=\"create\">\n <BulkUploadProvider>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disabled={isInitializing || !hasSavePermission}\n initialState={isInitializing ? undefined : initialState}\n isInitializing={isInitializing}\n method=\"POST\"\n onChange={[onChange]}\n onSuccess={onSave}\n submitted={submitted}\n >\n <DocumentFields\n BeforeFields={\n <React.Fragment>\n {CustomUpload || (\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={collectionConfig.upload}\n />\n )}\n </React.Fragment>\n }\n docPermissions={docPermissions}\n fields={collectionConfig.fields}\n schemaPathSegments={[collectionConfig.slug]}\n />\n <ReportAllErrors />\n <GetFieldProxy />\n </Form>\n </BulkUploadProvider>\n </OperationProvider>\n )\n}\n\nfunction GetFieldProxy() {\n const { getFields } = useForm()\n const { getFormDataRef } = useFormsManager()\n\n React.useEffect(() => {\n getFormDataRef.current = getFields\n }, [getFields, getFormDataRef])\n\n return null\n}\n\nfunction ReportAllErrors() {\n const { docConfig } = useDocumentInfo()\n const { activeIndex, setFormTotalErrorCount } = useFormsManager()\n const errorCountRef = React.useRef(0)\n\n const reportFormErrorCount = React.useCallback(\n (errorCount) => {\n if (errorCount === errorCountRef.current) {\n return\n }\n setFormTotalErrorCount({ errorCount, index: activeIndex })\n errorCountRef.current = errorCount\n },\n [activeIndex, setFormTotalErrorCount],\n )\n\n if (!docConfig) {\n return null\n }\n\n return (\n <WatchChildErrors fields={docConfig.fields} path={[]} setErrorCount={reportFormErrorCount} />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import type { ClientCollectionConfig } from 'payload';
2
+ import React from 'react';
3
+ import type { State } from '../FormsManager/reducer.js';
4
+ import { type EditManyBulkUploadsProps } from './index.js';
5
+ import './index.scss';
6
+ export declare const EditManyBulkUploadsDrawerContent: React.FC<{
7
+ collection: ClientCollectionConfig;
8
+ drawerSlug: string;
9
+ forms: State['forms'];
10
+ } & EditManyBulkUploadsProps>;
11
+ //# sourceMappingURL=DrawerContent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerContent.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditMany/DrawerContent.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAuB,MAAM,SAAS,CAAA;AAI1E,OAAO,KAAgC,MAAM,OAAO,CAAA;AAGpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAA;AAWvD,OAAO,EAAa,KAAK,wBAAwB,EAAE,MAAM,YAAY,CAAA;AACrE,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,gCAAgC,EAAE,KAAK,CAAC,EAAE,CACrD;IACE,UAAU,EAAE,sBAAsB,CAAA;IAClC,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;CACtB,GAAG,wBAAwB,CAuE7B,CAAA"}
@@ -0,0 +1,166 @@
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 { useModal } from '@faceless-ui/modal';
6
+ import { getTranslation } from '@payloadcms/translations';
7
+ import React, { useCallback, useState } from 'react';
8
+ import { Button } from '../../../elements/Button/index.js';
9
+ import { Form } from '../../../forms/Form/index.js';
10
+ import { RenderFields } from '../../../forms/RenderFields/index.js';
11
+ import { XIcon } from '../../../icons/X/index.js';
12
+ import { useAuth } from '../../../providers/Auth/index.js';
13
+ import { useTranslation } from '../../../providers/Translation/index.js';
14
+ import { filterOutUploadFields } from '../../../utilities/filterOutUploadFields.js';
15
+ import { FieldSelect } from '../../FieldSelect/index.js';
16
+ import { useFormsManager } from '../FormsManager/index.js';
17
+ import { baseClass } from './index.js';
18
+ import './index.scss';
19
+ export const EditManyBulkUploadsDrawerContent = props => {
20
+ const $ = _c(23);
21
+ const {
22
+ collection: t0,
23
+ drawerSlug,
24
+ forms
25
+ } = props;
26
+ let t1;
27
+ if ($[0] !== t0) {
28
+ t1 = t0 === undefined ? {} : t0;
29
+ $[0] = t0;
30
+ $[1] = t1;
31
+ } else {
32
+ t1 = $[1];
33
+ }
34
+ const {
35
+ slug,
36
+ fields,
37
+ labels: t2
38
+ } = t1;
39
+ const {
40
+ plural
41
+ } = t2;
42
+ const {
43
+ permissions
44
+ } = useAuth();
45
+ const {
46
+ i18n,
47
+ t
48
+ } = useTranslation();
49
+ const {
50
+ closeModal
51
+ } = useModal();
52
+ const {
53
+ bulkUpdateForm
54
+ } = useFormsManager();
55
+ let t3;
56
+ if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
57
+ t3 = [];
58
+ $[2] = t3;
59
+ } else {
60
+ t3 = $[2];
61
+ }
62
+ const [selectedFields, setSelectedFields] = useState(t3);
63
+ const collectionPermissions = permissions?.collections?.[slug];
64
+ let t4;
65
+ if ($[3] !== bulkUpdateForm || $[4] !== closeModal || $[5] !== collectionPermissions?.fields || $[6] !== drawerSlug || $[7] !== fields || $[8] !== forms.length || $[9] !== i18n || $[10] !== plural || $[11] !== selectedFields || $[12] !== slug || $[13] !== t) {
66
+ const filteredFields = filterOutUploadFields(fields);
67
+ let t5;
68
+ if ($[15] !== bulkUpdateForm || $[16] !== closeModal || $[17] !== drawerSlug || $[18] !== selectedFields) {
69
+ t5 = formState => {
70
+ const pairedData = selectedFields.reduce((acc, field) => {
71
+ const {
72
+ path
73
+ } = field;
74
+ if (formState[path]) {
75
+ acc[path] = formState[path].value;
76
+ }
77
+ return acc;
78
+ }, {});
79
+ bulkUpdateForm(pairedData, () => closeModal(drawerSlug));
80
+ };
81
+ $[15] = bulkUpdateForm;
82
+ $[16] = closeModal;
83
+ $[17] = drawerSlug;
84
+ $[18] = selectedFields;
85
+ $[19] = t5;
86
+ } else {
87
+ t5 = $[19];
88
+ }
89
+ const handleSubmit = t5;
90
+ let t6;
91
+ if ($[20] !== closeModal || $[21] !== drawerSlug) {
92
+ t6 = () => closeModal(drawerSlug);
93
+ $[20] = closeModal;
94
+ $[21] = drawerSlug;
95
+ $[22] = t6;
96
+ } else {
97
+ t6 = $[22];
98
+ }
99
+ t4 = _jsxs("div", {
100
+ className: `${baseClass}__main`,
101
+ children: [_jsxs("div", {
102
+ className: `${baseClass}__header`,
103
+ children: [_jsx("h2", {
104
+ className: `${baseClass}__header__title`,
105
+ children: t("general:editingLabel", {
106
+ count: forms.length,
107
+ label: getTranslation(plural, i18n)
108
+ })
109
+ }), _jsx("button", {
110
+ "aria-label": t("general:close"),
111
+ className: `${baseClass}__header__close`,
112
+ id: `close-drawer__${drawerSlug}`,
113
+ onClick: t6,
114
+ type: "button",
115
+ children: _jsx(XIcon, {})
116
+ })]
117
+ }), _jsxs(Form, {
118
+ className: `${baseClass}__form`,
119
+ initialState: {},
120
+ onSubmit: handleSubmit,
121
+ children: [_jsx(FieldSelect, {
122
+ fields: filteredFields,
123
+ setSelected: setSelectedFields
124
+ }), selectedFields.length === 0 ? null : _jsx(RenderFields, {
125
+ fields: selectedFields,
126
+ parentIndexPath: "",
127
+ parentPath: "",
128
+ parentSchemaPath: slug,
129
+ permissions: collectionPermissions?.fields,
130
+ readOnly: false
131
+ }), _jsx("div", {
132
+ className: `${baseClass}__sidebar-wrap`,
133
+ children: _jsx("div", {
134
+ className: `${baseClass}__sidebar`,
135
+ children: _jsx("div", {
136
+ className: `${baseClass}__sidebar-sticky-wrap`,
137
+ children: _jsx("div", {
138
+ className: `${baseClass}__document-actions`,
139
+ children: _jsx(Button, {
140
+ type: "submit",
141
+ children: t("general:applyChanges")
142
+ })
143
+ })
144
+ })
145
+ })
146
+ })]
147
+ })]
148
+ });
149
+ $[3] = bulkUpdateForm;
150
+ $[4] = closeModal;
151
+ $[5] = collectionPermissions?.fields;
152
+ $[6] = drawerSlug;
153
+ $[7] = fields;
154
+ $[8] = forms.length;
155
+ $[9] = i18n;
156
+ $[10] = plural;
157
+ $[11] = selectedFields;
158
+ $[12] = slug;
159
+ $[13] = t;
160
+ $[14] = t4;
161
+ } else {
162
+ t4 = $[14];
163
+ }
164
+ return t4;
165
+ };
166
+ //# sourceMappingURL=DrawerContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DrawerContent.js","names":["c","_c","useModal","getTranslation","React","useCallback","useState","Button","Form","RenderFields","XIcon","useAuth","useTranslation","filterOutUploadFields","FieldSelect","useFormsManager","baseClass","EditManyBulkUploadsDrawerContent","props","$","collection","t0","drawerSlug","forms","t1","undefined","slug","fields","labels","t2","plural","permissions","i18n","t","closeModal","bulkUpdateForm","t3","Symbol","for","selectedFields","setSelectedFields","collectionPermissions","collections","t4","length","filteredFields","t5","formState","pairedData","reduce","acc","field","path","value","handleSubmit","t6","_jsxs","className","children","_jsx","count","label","id","onClick","type","initialState","onSubmit","setSelected","parentIndexPath","parentPath","parentSchemaPath","readOnly"],"sources":["../../../../src/elements/BulkUpload/EditMany/DrawerContent.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, FieldWithPathClient } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useState } from 'react'\n\nimport type { FormProps } from '../../../forms/Form/index.js'\nimport type { State } from '../FormsManager/reducer.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { Form } from '../../../forms/Form/index.js'\nimport { RenderFields } from '../../../forms/RenderFields/index.js'\nimport { XIcon } from '../../../icons/X/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { filterOutUploadFields } from '../../../utilities/filterOutUploadFields.js'\nimport { FieldSelect } from '../../FieldSelect/index.js'\nimport { useFormsManager } from '../FormsManager/index.js'\nimport { baseClass, type EditManyBulkUploadsProps } from './index.js'\nimport './index.scss'\n\nexport const EditManyBulkUploadsDrawerContent: React.FC<\n {\n collection: ClientCollectionConfig\n drawerSlug: string\n forms: State['forms']\n } & EditManyBulkUploadsProps\n> = (props) => {\n const { collection: { slug, fields, labels: { plural } } = {}, drawerSlug, forms } = props\n\n const { permissions } = useAuth()\n const { i18n, t } = useTranslation()\n const { closeModal } = useModal()\n const { bulkUpdateForm } = useFormsManager()\n\n const [selectedFields, setSelectedFields] = useState<FieldWithPathClient[]>([])\n const collectionPermissions = permissions?.collections?.[slug]\n const filteredFields = filterOutUploadFields(fields)\n\n const handleSubmit: FormProps['onSubmit'] = useCallback(\n (formState) => {\n const pairedData = selectedFields.reduce((acc, field) => {\n const { path } = field\n if (formState[path]) {\n acc[path] = formState[path].value\n }\n return acc\n }, {})\n\n void bulkUpdateForm(pairedData, () => closeModal(drawerSlug))\n },\n [closeModal, drawerSlug, bulkUpdateForm, selectedFields],\n )\n\n return (\n <div className={`${baseClass}__main`}>\n <div className={`${baseClass}__header`}>\n <h2 className={`${baseClass}__header__title`}>\n {t('general:editingLabel', {\n count: forms.length,\n label: getTranslation(plural, i18n),\n })}\n </h2>\n <button\n aria-label={t('general:close')}\n className={`${baseClass}__header__close`}\n id={`close-drawer__${drawerSlug}`}\n onClick={() => closeModal(drawerSlug)}\n type=\"button\"\n >\n <XIcon />\n </button>\n </div>\n <Form className={`${baseClass}__form`} initialState={{}} onSubmit={handleSubmit}>\n <FieldSelect fields={filteredFields} setSelected={setSelectedFields} />\n {selectedFields.length === 0 ? null : (\n <RenderFields\n fields={selectedFields}\n parentIndexPath=\"\"\n parentPath=\"\"\n parentSchemaPath={slug}\n permissions={collectionPermissions?.fields}\n readOnly={false}\n />\n )}\n <div className={`${baseClass}__sidebar-wrap`}>\n <div className={`${baseClass}__sidebar`}>\n <div className={`${baseClass}__sidebar-sticky-wrap`}>\n <div className={`${baseClass}__document-actions`}>\n <Button type=\"submit\">{t('general:applyChanges')}</Button>\n </div>\n </div>\n </div>\n </div>\n </Form>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import type { ClientCollectionConfig } from 'payload';
2
+ import React from 'react';
3
+ import './index.scss';
4
+ export declare const baseClass = "edit-many-bulk-uploads";
5
+ export type EditManyBulkUploadsProps = {
6
+ readonly collection: ClientCollectionConfig;
7
+ };
8
+ export declare const EditManyBulkUploads: React.FC<EditManyBulkUploadsProps>;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/BulkUpload/EditMany/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAErD,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,OAAO,cAAc,CAAA;AAGrB,eAAO,MAAM,SAAS,2BAA2B,CAAA;AAEjD,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,UAAU,EAAE,sBAAsB,CAAA;CAC5C,CAAA;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAqClE,CAAA"}
@@ -0,0 +1,69 @@
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 { useAuth } from '../../../providers/Auth/index.js';
7
+ import { EditDepthProvider } from '../../../providers/EditDepth/index.js';
8
+ import { useTranslation } from '../../../providers/Translation/index.js';
9
+ import { Drawer, DrawerToggler } from '../../Drawer/index.js';
10
+ import { useFormsManager } from '../FormsManager/index.js';
11
+ import './index.scss';
12
+ import { EditManyBulkUploadsDrawerContent } from './DrawerContent.js';
13
+ export const baseClass = 'edit-many-bulk-uploads';
14
+ export const EditManyBulkUploads = props => {
15
+ const $ = _c(5);
16
+ const {
17
+ collection: t0,
18
+ collection
19
+ } = props;
20
+ const {
21
+ slug
22
+ } = t0 === undefined ? {} : t0;
23
+ const {
24
+ permissions
25
+ } = useAuth();
26
+ const {
27
+ t
28
+ } = useTranslation();
29
+ const {
30
+ forms
31
+ } = useFormsManager();
32
+ const collectionPermissions = permissions?.collections?.[slug];
33
+ const hasUpdatePermission = collectionPermissions?.update;
34
+ const drawerSlug = `edit-${slug}-bulk-uploads`;
35
+ if (!hasUpdatePermission) {
36
+ return null;
37
+ }
38
+ let t1;
39
+ if ($[0] !== collection || $[1] !== drawerSlug || $[2] !== forms || $[3] !== t) {
40
+ t1 = _jsxs("div", {
41
+ className: baseClass,
42
+ children: [_jsx(DrawerToggler, {
43
+ "aria-label": t("general:editAll"),
44
+ className: `${baseClass}__toggle`,
45
+ slug: drawerSlug,
46
+ children: t("general:editAll")
47
+ }), _jsx(EditDepthProvider, {
48
+ children: _jsx(Drawer, {
49
+ Header: null,
50
+ slug: drawerSlug,
51
+ children: _jsx(EditManyBulkUploadsDrawerContent, {
52
+ collection,
53
+ drawerSlug,
54
+ forms
55
+ })
56
+ })
57
+ })]
58
+ });
59
+ $[0] = collection;
60
+ $[1] = drawerSlug;
61
+ $[2] = forms;
62
+ $[3] = t;
63
+ $[4] = t1;
64
+ } else {
65
+ t1 = $[4];
66
+ }
67
+ return t1;
68
+ };
69
+ //# sourceMappingURL=index.js.map