@payloadcms/ui 3.69.0-internal.424436e → 3.69.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.
- package/dist/elements/AppHeader/index.js +1 -2
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/AppHeader/index.scss +0 -1
- package/dist/elements/ArrayAction/index.d.ts +6 -6
- package/dist/elements/ArrayAction/index.d.ts.map +1 -1
- package/dist/elements/ArrayAction/index.js +8 -8
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +20 -5
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +10 -6
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/CopyLocaleData/index.d.ts.map +1 -1
- package/dist/elements/CopyLocaleData/index.js +36 -39
- package/dist/elements/CopyLocaleData/index.js.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.js +1 -2
- package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +9 -7
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +19 -16
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +2 -4
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +4 -6
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +8 -12
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/FolderView/BrowseByFolderButton/index.d.ts.map +1 -1
- package/dist/elements/FolderView/BrowseByFolderButton/index.js +2 -4
- package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
- package/dist/elements/FolderView/Cell/index.client.d.ts.map +1 -1
- package/dist/elements/FolderView/Cell/index.client.js +9 -2
- package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
- package/dist/elements/FolderView/CurrentFolderActions/index.d.ts.map +1 -1
- package/dist/elements/FolderView/CurrentFolderActions/index.js +7 -4
- package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.d.ts +1 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.d.ts.map +1 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.js +5 -1
- package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
- package/dist/elements/IDLabel/index.d.ts.map +1 -1
- package/dist/elements/IDLabel/index.js +11 -14
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/ItemsDrawer/ItemSearch/index.d.ts +8 -0
- package/dist/elements/ItemsDrawer/ItemSearch/index.d.ts.map +1 -0
- package/dist/elements/ItemsDrawer/ItemSearch/index.js +56 -0
- package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -0
- package/dist/elements/ItemsDrawer/ItemSearch/index.scss +38 -0
- package/dist/elements/ItemsDrawer/index.d.ts +15 -0
- package/dist/elements/ItemsDrawer/index.d.ts.map +1 -0
- package/dist/elements/ItemsDrawer/index.js +195 -0
- package/dist/elements/ItemsDrawer/index.js.map +1 -0
- package/dist/elements/ItemsDrawer/index.scss +102 -0
- package/dist/elements/Link/index.d.ts.map +1 -1
- package/dist/elements/Link/index.js +5 -3
- package/dist/elements/Link/index.js.map +1 -1
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +6 -4
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +9 -2
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
- package/dist/elements/Logout/index.d.ts.map +1 -1
- package/dist/elements/Logout/index.js +8 -11
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
- package/dist/elements/PermanentlyDeleteButton/index.js +19 -14
- package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
- package/dist/elements/Popup/PopupButtonList/index.scss +1 -0
- package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -1
- package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +24 -92
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.d.ts +32 -1
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +249 -122
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/Popup/index.scss +49 -231
- package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +6 -2
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +14 -4
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.js +8 -5
- package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetBar/index.d.ts.map +1 -1
- package/dist/elements/QueryPresets/QueryPresetBar/index.js +7 -9
- package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
- package/dist/elements/RestoreButton/index.d.ts.map +1 -1
- package/dist/elements/RestoreButton/index.js +19 -14
- package/dist/elements/RestoreButton/index.js.map +1 -1
- package/dist/elements/RestoreMany/index.d.ts.map +1 -1
- package/dist/elements/RestoreMany/index.js +17 -14
- package/dist/elements/RestoreMany/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +11 -5
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/Status/index.d.ts.map +1 -1
- package/dist/elements/Status/index.js +11 -5
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.d.ts.map +1 -1
- package/dist/elements/StayLoggedIn/index.js +17 -20
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/context.d.ts.map +1 -1
- package/dist/elements/StepNav/context.js +9 -1
- package/dist/elements/StepNav/context.js.map +1 -1
- package/dist/elements/StepNav/index.scss +0 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +39 -41
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +9 -12
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
- package/dist/elements/Table/OrderableTable.js +5 -1
- package/dist/elements/Table/OrderableTable.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js +25 -24
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.js +8 -5
- package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +7 -5
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js +14 -8
- package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
- package/dist/elements/withMergedProps/index.d.ts +1 -1
- package/dist/elements/withMergedProps/index.js +1 -1
- package/dist/elements/withMergedProps/index.js.map +1 -1
- package/dist/exports/client/index.d.ts +1 -2
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +12 -12
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/rsc/index.d.ts +1 -0
- package/dist/exports/rsc/index.d.ts.map +1 -1
- package/dist/exports/rsc/index.js +1 -0
- package/dist/exports/rsc/index.js.map +1 -1
- package/dist/exports/shared/index.d.ts +3 -0
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +4 -4
- package/dist/fields/Array/ArrayRow.d.ts +7 -18
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +133 -65
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +3 -10
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Relationship/Input.d.ts.map +1 -1
- package/dist/fields/Relationship/Input.js +9 -3
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +7 -3
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +8 -1
- package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
- package/dist/graphics/Account/index.d.ts.map +1 -1
- package/dist/graphics/Account/index.js +2 -4
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +23 -26
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +16 -15
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +1 -2
- package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/useGetDocPermissions.js +16 -6
- package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
- package/dist/providers/Folders/index.d.ts.map +1 -1
- package/dist/providers/Folders/index.js +14 -11
- package/dist/providers/Folders/index.js.map +1 -1
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js +45 -34
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Preferences/index.d.ts.map +1 -1
- package/dist/providers/Preferences/index.js +16 -7
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/RouteTransition/index.d.ts.map +1 -1
- package/dist/providers/RouteTransition/index.js +6 -1
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
- package/dist/providers/TableColumns/buildColumnState/renderCell.js +1 -2
- package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
- package/dist/scss/app.scss +14 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/getGlobalData.d.ts +11 -0
- package/dist/utilities/getGlobalData.d.ts.map +1 -0
- package/dist/utilities/getGlobalData.js +49 -0
- package/dist/utilities/getGlobalData.js.map +1 -0
- package/dist/utilities/getNavGroups.d.ts +5 -0
- package/dist/utilities/getNavGroups.d.ts.map +1 -0
- package/dist/utilities/getNavGroups.js +22 -0
- package/dist/utilities/getNavGroups.js.map +1 -0
- package/dist/utilities/getVisibleEntities.d.ts +5 -0
- package/dist/utilities/getVisibleEntities.d.ts.map +1 -0
- package/dist/utilities/getVisibleEntities.js +31 -0
- package/dist/utilities/getVisibleEntities.js.map +1 -0
- package/dist/utilities/groupNavItems.d.ts +3 -0
- package/dist/utilities/groupNavItems.d.ts.map +1 -1
- package/dist/utilities/groupNavItems.js +3 -0
- package/dist/utilities/groupNavItems.js.map +1 -1
- package/dist/utilities/handleBackToDashboard.js +1 -1
- package/dist/utilities/handleBackToDashboard.js.map +1 -1
- package/dist/utilities/handleGoBack.d.ts.map +1 -1
- package/dist/utilities/handleGoBack.js +1 -2
- package/dist/utilities/handleGoBack.js.map +1 -1
- package/dist/utilities/normalizeRelationshipValue.spec.js +1 -1
- package/dist/utilities/normalizeRelationshipValue.spec.js.map +1 -1
- package/dist/views/CollectionFolder/index.js +2 -4
- package/dist/views/CollectionFolder/index.js.map +1 -1
- package/dist/views/Edit/Auth/index.d.ts.map +1 -1
- package/dist/views/Edit/Auth/index.js +22 -21
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.d.ts.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.js +36 -22
- package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +2 -3
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +1 -2
- package/dist/views/List/index.js.map +1 -1
- package/dist/widgets/CollectionCards/index.d.ts +5 -0
- package/dist/widgets/CollectionCards/index.d.ts.map +1 -0
- package/dist/widgets/CollectionCards/index.js +135 -0
- package/dist/widgets/CollectionCards/index.js.map +1 -0
- package/dist/widgets/CollectionCards/index.scss +70 -0
- package/package.json +5 -5
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { c as _c } from "react/compiler-runtime";
|
|
3
4
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
4
5
|
import { getTranslation } from '@payloadcms/translations';
|
|
5
6
|
import React from 'react';
|
|
@@ -14,100 +15,167 @@ import { useThrottledValue } from '../../hooks/useThrottledValue.js';
|
|
|
14
15
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
15
16
|
import './index.scss';
|
|
16
17
|
const baseClass = 'array-field';
|
|
17
|
-
export const ArrayRow =
|
|
18
|
+
export const ArrayRow = t0 => {
|
|
19
|
+
const $ = _c(40);
|
|
18
20
|
const {
|
|
19
21
|
addRow,
|
|
22
|
+
attributes,
|
|
20
23
|
copyRow,
|
|
21
24
|
CustomRowLabel,
|
|
22
25
|
duplicateRow,
|
|
23
26
|
errorCount,
|
|
24
27
|
fields,
|
|
25
|
-
forceRender
|
|
28
|
+
forceRender: t1,
|
|
26
29
|
hasMaxRows,
|
|
30
|
+
isDragging,
|
|
27
31
|
isLoading: isLoadingFromProps,
|
|
28
32
|
isSortable,
|
|
29
33
|
labels,
|
|
34
|
+
listeners,
|
|
30
35
|
moveRow,
|
|
31
36
|
parentPath,
|
|
32
37
|
pasteRow,
|
|
33
38
|
path,
|
|
34
39
|
permissions,
|
|
35
40
|
readOnly,
|
|
36
|
-
ref,
|
|
37
41
|
removeRow,
|
|
38
42
|
row,
|
|
39
43
|
rowCount,
|
|
40
44
|
rowIndex,
|
|
41
45
|
schemaPath,
|
|
42
46
|
setCollapse,
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
47
|
+
setNodeRef,
|
|
48
|
+
transform,
|
|
49
|
+
transition
|
|
50
|
+
} = t0;
|
|
51
|
+
const forceRender = t1 === undefined ? false : t1;
|
|
46
52
|
const isLoading = useThrottledValue(isLoadingFromProps, 500);
|
|
47
53
|
const {
|
|
48
54
|
i18n
|
|
49
55
|
} = useTranslation();
|
|
50
56
|
const hasSubmitted = useFormSubmitted();
|
|
51
|
-
const fallbackLabel = `${getTranslation(labels.singular, i18n)} ${String(rowIndex + 1).padStart(2,
|
|
57
|
+
const fallbackLabel = `${getTranslation(labels.singular, i18n)} ${String(rowIndex + 1).padStart(2, "0")}`;
|
|
52
58
|
const fieldHasErrors = errorCount > 0 && hasSubmitted;
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
59
|
+
const t2 = fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`;
|
|
60
|
+
let t3;
|
|
61
|
+
if ($[0] !== t2) {
|
|
62
|
+
t3 = [`${baseClass}__row`, t2].filter(Boolean);
|
|
63
|
+
$[0] = t2;
|
|
64
|
+
$[1] = t3;
|
|
65
|
+
} else {
|
|
66
|
+
t3 = $[1];
|
|
67
|
+
}
|
|
68
|
+
const classNames = t3.join(" ");
|
|
69
|
+
const t4 = `${parentPath.split(".").join("-")}-row-${rowIndex}`;
|
|
70
|
+
const t5 = isDragging ? 1 : undefined;
|
|
71
|
+
let t6;
|
|
72
|
+
if ($[2] !== CustomRowLabel || $[3] !== addRow || $[4] !== attributes || $[5] !== classNames || $[6] !== copyRow || $[7] !== duplicateRow || $[8] !== errorCount || $[9] !== fallbackLabel || $[10] !== fieldHasErrors || $[11] !== fields || $[12] !== forceRender || $[13] !== hasMaxRows || $[14] !== i18n || $[15] !== isLoading || $[16] !== isSortable || $[17] !== listeners || $[18] !== moveRow || $[19] !== parentPath || $[20] !== pasteRow || $[21] !== path || $[22] !== permissions || $[23] !== readOnly || $[24] !== removeRow || $[25] !== row.collapsed || $[26] !== row.id || $[27] !== rowCount || $[28] !== rowIndex || $[29] !== schemaPath || $[30] !== setCollapse || $[31] !== setNodeRef || $[32] !== t4 || $[33] !== t5 || $[34] !== transform || $[35] !== transition) {
|
|
73
|
+
let t7;
|
|
74
|
+
if ($[37] !== row.id || $[38] !== setCollapse) {
|
|
75
|
+
t7 = collapsed => setCollapse(row.id, collapsed);
|
|
76
|
+
$[37] = row.id;
|
|
77
|
+
$[38] = setCollapse;
|
|
78
|
+
$[39] = t7;
|
|
79
|
+
} else {
|
|
80
|
+
t7 = $[39];
|
|
81
|
+
}
|
|
82
|
+
t6 = _jsx("div", {
|
|
83
|
+
id: t4,
|
|
84
|
+
ref: setNodeRef,
|
|
85
|
+
style: {
|
|
86
|
+
transform,
|
|
87
|
+
transition,
|
|
88
|
+
zIndex: t5
|
|
89
|
+
},
|
|
90
|
+
children: _jsx(Collapsible, {
|
|
91
|
+
actions: !readOnly ? _jsx(ArrayAction, {
|
|
92
|
+
addRow,
|
|
93
|
+
copyRow,
|
|
94
|
+
duplicateRow,
|
|
95
|
+
hasMaxRows,
|
|
96
|
+
index: rowIndex,
|
|
97
|
+
isSortable,
|
|
98
|
+
moveRow,
|
|
99
|
+
pasteRow,
|
|
100
|
+
removeRow,
|
|
101
|
+
rowCount
|
|
102
|
+
}) : undefined,
|
|
103
|
+
className: classNames,
|
|
104
|
+
collapsibleStyle: fieldHasErrors ? "error" : "default",
|
|
105
|
+
dragHandleProps: isSortable ? {
|
|
106
|
+
id: row.id,
|
|
107
|
+
attributes,
|
|
108
|
+
listeners
|
|
109
|
+
} : undefined,
|
|
110
|
+
header: _jsxs("div", {
|
|
111
|
+
className: `${baseClass}__row-header`,
|
|
112
|
+
children: [isLoading ? _jsx(ShimmerEffect, {
|
|
113
|
+
height: "1rem",
|
|
114
|
+
width: "8rem"
|
|
115
|
+
}) : _jsx(RowLabel, {
|
|
116
|
+
CustomComponent: CustomRowLabel,
|
|
117
|
+
label: fallbackLabel,
|
|
118
|
+
path,
|
|
119
|
+
rowNumber: rowIndex
|
|
120
|
+
}), fieldHasErrors && _jsx(ErrorPill, {
|
|
121
|
+
count: errorCount,
|
|
122
|
+
i18n,
|
|
123
|
+
withMessage: true
|
|
124
|
+
})]
|
|
125
|
+
}),
|
|
126
|
+
isCollapsed: row.collapsed,
|
|
127
|
+
onToggle: t7,
|
|
128
|
+
children: isLoading ? _jsx(ShimmerEffect, {}) : _jsx(RenderFields, {
|
|
129
|
+
className: `${baseClass}__fields`,
|
|
130
|
+
fields,
|
|
131
|
+
forceRender,
|
|
132
|
+
margins: "small",
|
|
133
|
+
parentIndexPath: "",
|
|
134
|
+
parentPath: path,
|
|
135
|
+
parentSchemaPath: schemaPath,
|
|
136
|
+
permissions: permissions === true ? permissions : permissions?.fields,
|
|
137
|
+
readOnly
|
|
138
|
+
})
|
|
109
139
|
})
|
|
110
|
-
})
|
|
111
|
-
|
|
140
|
+
}, `${parentPath}-row-${row.id}`);
|
|
141
|
+
$[2] = CustomRowLabel;
|
|
142
|
+
$[3] = addRow;
|
|
143
|
+
$[4] = attributes;
|
|
144
|
+
$[5] = classNames;
|
|
145
|
+
$[6] = copyRow;
|
|
146
|
+
$[7] = duplicateRow;
|
|
147
|
+
$[8] = errorCount;
|
|
148
|
+
$[9] = fallbackLabel;
|
|
149
|
+
$[10] = fieldHasErrors;
|
|
150
|
+
$[11] = fields;
|
|
151
|
+
$[12] = forceRender;
|
|
152
|
+
$[13] = hasMaxRows;
|
|
153
|
+
$[14] = i18n;
|
|
154
|
+
$[15] = isLoading;
|
|
155
|
+
$[16] = isSortable;
|
|
156
|
+
$[17] = listeners;
|
|
157
|
+
$[18] = moveRow;
|
|
158
|
+
$[19] = parentPath;
|
|
159
|
+
$[20] = pasteRow;
|
|
160
|
+
$[21] = path;
|
|
161
|
+
$[22] = permissions;
|
|
162
|
+
$[23] = readOnly;
|
|
163
|
+
$[24] = removeRow;
|
|
164
|
+
$[25] = row.collapsed;
|
|
165
|
+
$[26] = row.id;
|
|
166
|
+
$[27] = rowCount;
|
|
167
|
+
$[28] = rowIndex;
|
|
168
|
+
$[29] = schemaPath;
|
|
169
|
+
$[30] = setCollapse;
|
|
170
|
+
$[31] = setNodeRef;
|
|
171
|
+
$[32] = t4;
|
|
172
|
+
$[33] = t5;
|
|
173
|
+
$[34] = transform;
|
|
174
|
+
$[35] = transition;
|
|
175
|
+
$[36] = t6;
|
|
176
|
+
} else {
|
|
177
|
+
t6 = $[36];
|
|
178
|
+
}
|
|
179
|
+
return t6;
|
|
112
180
|
};
|
|
113
181
|
//# sourceMappingURL=ArrayRow.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArrayRow.js","names":["getTranslation","React","ArrayAction","Collapsible","ErrorPill","ShimmerEffect","useFormSubmitted","RenderFields","RowLabel","useThrottledValue","useTranslation","baseClass","ArrayRow","props","addRow","copyRow","CustomRowLabel","duplicateRow","errorCount","fields","forceRender","hasMaxRows","isLoading","isLoadingFromProps","isSortable","labels","moveRow","parentPath","pasteRow","path","permissions","readOnly","ref","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","showActions","style","i18n","hasSubmitted","fallbackLabel","singular","String","padStart","fieldHasErrors","classNames","filter","Boolean","join","_jsx","id","split","zIndex","isDragging","undefined","actions","index","className","collapsibleStyle","dragHandleProps","attributes","dragHandleAttributes","listeners","dragHandleListeners","header","_jsxs","height","width","CustomComponent","label","rowNumber","count","withMessage","isCollapsed","collapsed","onToggle","margins","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Array/ArrayRow.tsx"],"sourcesContent":["'use client'\nimport type {\n ArrayField,\n ClientComponentProps,\n ClientField,\n Row,\n SanitizedFieldPermissions,\n} from 'payload'\nimport type { CSSProperties } from 'react'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\n\nimport { ArrayAction } from '../../elements/ArrayAction/index.js'\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useThrottledValue } from '../../hooks/useThrottledValue.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'array-field'\n\ntype ArrayRowProps = {\n readonly addRow?: (rowIndex: number) => Promise<void> | void\n readonly copyRow?: (rowIndex: number) => void\n readonly CustomRowLabel?: React.ReactNode\n readonly duplicateRow?: (rowIndex: number) => void\n readonly errorCount: number\n readonly fields: ClientField[]\n readonly hasMaxRows?: boolean\n readonly isLoading?: boolean\n readonly isSortable?: boolean\n readonly labels: Partial<ArrayField['labels']>\n readonly moveRow?: (fromIndex: number, toIndex: number) => void\n readonly parentPath: string\n readonly pasteRow?: (rowIndex: number) => void\n readonly path: string\n readonly permissions: SanitizedFieldPermissions\n readonly readOnly?: boolean\n readonly ref?: React.Ref<HTMLDivElement>\n readonly removeRow?: (rowIndex: number) => void\n readonly row: Row\n readonly rowCount: number\n readonly rowIndex: number\n readonly schemaPath: string\n readonly setCollapse: (rowID: string, collapsed: boolean) => void\n readonly showActions?: boolean\n readonly style?: CSSProperties\n} & (\n | {\n readonly dragHandleAttributes?: React.HTMLAttributes<HTMLElement>\n readonly dragHandleListeners?: UseDraggableSortableReturn['listeners']\n readonly isDragging?: UseDraggableSortableReturn['isDragging']\n readonly isSortable: true\n }\n | {\n readonly isSortable?: false\n }\n) &\n Pick<ClientComponentProps, 'forceRender'>\n\nexport const ArrayRow: React.FC<ArrayRowProps> = (props) => {\n const {\n addRow,\n copyRow,\n CustomRowLabel,\n duplicateRow,\n errorCount,\n fields,\n forceRender = false,\n hasMaxRows,\n isLoading: isLoadingFromProps,\n isSortable,\n labels,\n moveRow,\n parentPath,\n pasteRow,\n path,\n permissions,\n readOnly,\n ref,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n showActions,\n style,\n } = props\n\n const isLoading = useThrottledValue(isLoadingFromProps, 500)\n\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const fallbackLabel = `${getTranslation(labels.singular, i18n)} ${String(rowIndex + 1).padStart(\n 2,\n '0',\n )}`\n\n const fieldHasErrors = errorCount > 0 && hasSubmitted\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div\n id={`${parentPath.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${row.id}`}\n ref={ref}\n style={{\n ...(style || {}),\n zIndex: isSortable && props?.isDragging ? 1 : undefined,\n }}\n >\n <Collapsible\n actions={\n !readOnly && showActions !== false ? (\n <ArrayAction\n addRow={addRow}\n copyRow={copyRow}\n duplicateRow={duplicateRow}\n hasMaxRows={hasMaxRows}\n index={rowIndex}\n isSortable={isSortable}\n moveRow={moveRow}\n pasteRow={pasteRow}\n removeRow={removeRow}\n rowCount={rowCount}\n />\n ) : undefined\n }\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n dragHandleProps={\n isSortable\n ? {\n id: row.id,\n attributes: props?.dragHandleAttributes,\n listeners: props?.dragHandleListeners,\n }\n : undefined\n }\n header={\n <div className={`${baseClass}__row-header`}>\n {isLoading ? (\n <ShimmerEffect height=\"1rem\" width=\"8rem\" />\n ) : (\n <RowLabel\n CustomComponent={CustomRowLabel}\n label={fallbackLabel}\n path={path}\n rowNumber={rowIndex}\n />\n )}\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n }\n isCollapsed={row.collapsed}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n {isLoading ? (\n <ShimmerEffect />\n ) : (\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n forceRender={forceRender}\n margins=\"small\"\n parentIndexPath=\"\"\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={permissions === true ? permissions : permissions?.fields}\n readOnly={readOnly}\n />\n )}\n </Collapsible>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ArrayRow.js","names":["c","_c","getTranslation","React","ArrayAction","Collapsible","ErrorPill","ShimmerEffect","useFormSubmitted","RenderFields","RowLabel","useThrottledValue","useTranslation","baseClass","ArrayRow","t0","$","addRow","attributes","copyRow","CustomRowLabel","duplicateRow","errorCount","fields","forceRender","t1","hasMaxRows","isDragging","isLoading","isLoadingFromProps","isSortable","labels","listeners","moveRow","parentPath","pasteRow","path","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","setNodeRef","transform","transition","undefined","i18n","hasSubmitted","fallbackLabel","singular","String","padStart","fieldHasErrors","t2","t3","filter","Boolean","classNames","join","t4","split","t5","t6","collapsed","id","t7","_jsx","ref","style","zIndex","children","actions","index","className","collapsibleStyle","dragHandleProps","header","_jsxs","height","width","CustomComponent","label","rowNumber","count","withMessage","onToggle","margins","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Array/ArrayRow.tsx"],"sourcesContent":["'use client'\nimport type {\n ArrayField,\n ClientComponentProps,\n ClientField,\n Row,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\n\nimport { ArrayAction } from '../../elements/ArrayAction/index.js'\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.js'\nimport { useThrottledValue } from '../../hooks/useThrottledValue.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\n\nconst baseClass = 'array-field'\n\ntype ArrayRowProps = {\n readonly addRow: (rowIndex: number) => Promise<void> | void\n readonly copyRow: (rowIndex: number) => void\n readonly CustomRowLabel?: React.ReactNode\n readonly duplicateRow: (rowIndex: number) => void\n readonly errorCount: number\n readonly fields: ClientField[]\n readonly hasMaxRows?: boolean\n readonly isLoading?: boolean\n readonly isSortable?: boolean\n readonly labels: Partial<ArrayField['labels']>\n readonly moveRow: (fromIndex: number, toIndex: number) => void\n readonly parentPath: string\n readonly pasteRow: (rowIndex: number) => void\n readonly path: string\n readonly permissions: SanitizedFieldPermissions\n readonly readOnly?: boolean\n readonly removeRow: (rowIndex: number) => void\n readonly row: Row\n readonly rowCount: number\n readonly rowIndex: number\n readonly schemaPath: string\n readonly setCollapse: (rowID: string, collapsed: boolean) => void\n} & Pick<ClientComponentProps, 'forceRender'> &\n UseDraggableSortableReturn\n\nexport const ArrayRow: React.FC<ArrayRowProps> = ({\n addRow,\n attributes,\n copyRow,\n CustomRowLabel,\n duplicateRow,\n errorCount,\n fields,\n forceRender = false,\n hasMaxRows,\n isDragging,\n isLoading: isLoadingFromProps,\n isSortable,\n labels,\n listeners,\n moveRow,\n parentPath,\n pasteRow,\n path,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n setNodeRef,\n transform,\n transition,\n}) => {\n const isLoading = useThrottledValue(isLoadingFromProps, 500)\n\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const fallbackLabel = `${getTranslation(labels.singular, i18n)} ${String(rowIndex + 1).padStart(\n 2,\n '0',\n )}`\n\n const fieldHasErrors = errorCount > 0 && hasSubmitted\n\n const classNames = [\n `${baseClass}__row`,\n fieldHasErrors ? `${baseClass}__row--has-errors` : `${baseClass}__row--no-errors`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div\n id={`${parentPath.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${row.id}`}\n ref={setNodeRef}\n style={{\n transform,\n transition,\n zIndex: isDragging ? 1 : undefined,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <ArrayAction\n addRow={addRow}\n copyRow={copyRow}\n duplicateRow={duplicateRow}\n hasMaxRows={hasMaxRows}\n index={rowIndex}\n isSortable={isSortable}\n moveRow={moveRow}\n pasteRow={pasteRow}\n removeRow={removeRow}\n rowCount={rowCount}\n />\n ) : undefined\n }\n className={classNames}\n collapsibleStyle={fieldHasErrors ? 'error' : 'default'}\n dragHandleProps={\n isSortable\n ? {\n id: row.id,\n attributes,\n listeners,\n }\n : undefined\n }\n header={\n <div className={`${baseClass}__row-header`}>\n {isLoading ? (\n <ShimmerEffect height=\"1rem\" width=\"8rem\" />\n ) : (\n <RowLabel\n CustomComponent={CustomRowLabel}\n label={fallbackLabel}\n path={path}\n rowNumber={rowIndex}\n />\n )}\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n }\n isCollapsed={row.collapsed}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n {isLoading ? (\n <ShimmerEffect />\n ) : (\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n forceRender={forceRender}\n margins=\"small\"\n parentIndexPath=\"\"\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={permissions === true ? permissions : permissions?.fields}\n readOnly={readOnly}\n />\n )}\n </Collapsible>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Array/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,SAAS,CAAA;AAGhB,OAAO,KAAyC,MAAM,OAAO,CAAA;AAiC7D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,mBAAmB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Array/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,yBAAyB,EAG1B,MAAM,SAAS,CAAA;AAGhB,OAAO,KAAyC,MAAM,OAAO,CAAA;AAiC7D,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,mBAAmB,EAAE,yBAybjC,CAAA;AAED,eAAO,MAAM,UAAU;;;;+EAAqC,CAAA"}
|
|
@@ -380,18 +380,16 @@ export const ArrayFieldComponent = props => {
|
|
|
380
380
|
return /*#__PURE__*/_jsx(DraggableSortableItem, {
|
|
381
381
|
disabled: readOnly || disabled || !isSortable,
|
|
382
382
|
id: rowID_0,
|
|
383
|
-
children:
|
|
383
|
+
children: draggableSortableItemProps => /*#__PURE__*/_jsx(ArrayRow, {
|
|
384
|
+
...draggableSortableItemProps,
|
|
384
385
|
addRow: addRow,
|
|
385
386
|
copyRow: copyRow,
|
|
386
387
|
CustomRowLabel: rows?.[i]?.customComponents?.RowLabel,
|
|
387
|
-
dragHandleAttributes: dragProps?.attributes,
|
|
388
|
-
dragHandleListeners: dragProps?.listeners,
|
|
389
388
|
duplicateRow: duplicateRow,
|
|
390
389
|
errorCount: rowErrorCount,
|
|
391
390
|
fields: fields,
|
|
392
391
|
forceRender: forceRender,
|
|
393
392
|
hasMaxRows: hasMaxRows,
|
|
394
|
-
isDragging: dragProps?.isDragging,
|
|
395
393
|
isLoading: isLoading,
|
|
396
394
|
isSortable: isSortable,
|
|
397
395
|
labels: labels,
|
|
@@ -401,17 +399,12 @@ export const ArrayFieldComponent = props => {
|
|
|
401
399
|
path: rowPath,
|
|
402
400
|
permissions: permissions,
|
|
403
401
|
readOnly: readOnly || disabled,
|
|
404
|
-
ref: dragProps?.setNodeRef,
|
|
405
402
|
removeRow: removeRow,
|
|
406
403
|
row: rowData,
|
|
407
404
|
rowCount: rows?.length,
|
|
408
405
|
rowIndex: i,
|
|
409
406
|
schemaPath: schemaPath,
|
|
410
|
-
setCollapse: setCollapse
|
|
411
|
-
style: {
|
|
412
|
-
transform: dragProps?.transform,
|
|
413
|
-
transition: dragProps?.transition
|
|
414
|
-
}
|
|
407
|
+
setCollapse: setCollapse
|
|
415
408
|
})
|
|
416
409
|
}, rowID_0);
|
|
417
410
|
}), !valid && /*#__PURE__*/_jsxs(React.Fragment, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","React","Fragment","useCallback","useMemo","toast","Banner","Button","clipboardCopy","clipboardPaste","ClipboardAction","mergeFormStateFromClipboard","reduceFormStateByPath","DraggableSortableItem","DraggableSortable","ErrorPill","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","useField","withCondition","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","mergeFieldStyles","fieldBaseClass","ArrayRow","baseClass","ArrayFieldComponent","props","field","name","type","admin","className","description","isSortable","fields","label","localized","maxRows","minRows","minRowsProp","required","forceRender","path","pathFromProps","permissions","readOnly","schemaPath","schemaPathFromProps","validate","setDocFieldPreferences","addFieldRow","dispatchFields","getFields","moveFieldRow","removeFieldRow","replaceState","setModified","submitted","code","locale","i18n","t","config","localization","editingDefaultLocale","fallback","defaultLocale","getLabels","p","labels","plural","singular","undefined","memoizedValidate","value","options","customComponents","AfterInput","BeforeInput","Description","Error","Label","disabled","errorPaths","rows","showError","valid","hasRows","potentiallyStalePath","addRow","rowIndex","setTimeout","duplicateRow","removeRow","moveRow","moveFromIndex","moveToIndex","toggleCollapseAll","collapsed","collapsedIDs","updatedRows","setCollapse","rowID","copyRow","formState","clipboardResult","getDataToCopy","error","success","pasteRow","pasteArgs","onPaste","dataFromClipboard","newState","schemaFields","pasteField","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showRequired","showMinRows","styles","_jsxs","filter","Boolean","join","id","replace","style","_jsx","CustomComponent","Fallback","as","count","withMessage","onClick","allowCopy","allowPaste","fieldValue","ids","map","row","onDragEnd","rowData","i","isLoading","rowPath","rowErrorCount","errorPath","startsWith","dragProps","CustomRowLabel","RowLabel","dragHandleAttributes","attributes","dragHandleListeners","listeners","errorCount","isDragging","parentPath","ref","setNodeRef","rowCount","transform","transition","buttonStyle","icon","iconPosition","iconStyle","ArrayField"],"sources":["../../../src/fields/Array/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ArrayFieldClientComponent,\n ArrayFieldClientProps,\n ArrayField as ArrayFieldType,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { ClipboardPasteData } from '../../elements/ClipboardAction/types.js'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { clipboardCopy, clipboardPaste } from '../../elements/ClipboardAction/clipboardUtilities.js'\nimport { ClipboardAction } from '../../elements/ClipboardAction/index.js'\nimport {\n mergeFormStateFromClipboard,\n reduceFormStateByPath,\n} from '../../elements/ClipboardAction/mergeFormStateFromClipboard.js'\nimport { DraggableSortableItem } from '../../elements/DraggableSortable/DraggableSortableItem/index.js'\nimport { DraggableSortable } from '../../elements/DraggableSortable/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { FieldDescription } from '../../fields/FieldDescription/index.js'\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm, useFormSubmitted } from '../../forms/Form/context.js'\nimport { extractRowsAndCollapsedIDs, toggleAllRows } from '../../forms/Form/rowHelpers.js'\nimport { NullifyLocaleField } from '../../forms/NullifyField/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { scrollToID } from '../../utilities/scrollToID.js'\nimport { mergeFieldStyles } from '../mergeFieldStyles.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { ArrayRow } from './ArrayRow.js'\nimport './index.scss'\n\nconst baseClass = 'array-field'\n\nexport const ArrayFieldComponent: ArrayFieldClientComponent = (props) => {\n const {\n field,\n field: {\n name,\n type,\n admin: { className, description, isSortable = true } = {},\n fields,\n label,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n forceRender = false,\n path: pathFromProps,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\n\n const schemaPath = schemaPathFromProps ?? name\n\n const minRows = minRowsProp ?? (required ? 1 : 0)\n\n const { setDocFieldPreferences } = useDocumentInfo()\n const {\n addFieldRow,\n dispatchFields,\n getFields,\n moveFieldRow,\n removeFieldRow,\n replaceState,\n setModified,\n } = useForm()\n const submitted = useFormSubmitted()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const {\n config: { localization },\n } = useConfig()\n\n const editingDefaultLocale = (() => {\n if (localization && localization.fallback) {\n const defaultLocale = localization.defaultLocale\n return locale === defaultLocale\n }\n\n return true\n })()\n\n // Handle labeling for Arrays, Global Arrays, and Blocks\n const getLabels = (p: ArrayFieldClientProps): Partial<ArrayFieldType['labels']> => {\n if ('labels' in p && p?.labels) {\n return p.labels\n }\n\n if ('labels' in p.field && p.field.labels) {\n return { plural: p.field.labels?.plural, singular: p.field.labels?.singular }\n }\n\n if ('label' in p.field && p.field.label) {\n return { plural: undefined, singular: p.field.label }\n }\n\n return { plural: t('general:rows'), singular: t('general:row') }\n }\n\n const labels = getLabels(props)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\n }\n\n if (typeof validate === 'function') {\n return validate(value, { ...options, maxRows, minRows, required })\n }\n },\n [maxRows, minRows, required, validate, editingDefaultLocale],\n )\n\n const {\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled,\n errorPaths,\n path,\n rows = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const addRow = useCallback(\n (rowIndex: number) => {\n addFieldRow({\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex}`)\n }, 0)\n },\n [dispatchFields, path, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n removeFieldRow({ path, rowIndex })\n },\n [removeFieldRow, path],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n moveFieldRow({\n moveFromIndex,\n moveToIndex,\n path,\n })\n },\n [path, moveFieldRow],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows,\n })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const copyRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const clipboardResult = clipboardCopy({\n type,\n fields,\n getDataToCopy: () =>\n reduceFormStateByPath({\n formState,\n path,\n rowIndex,\n }),\n path,\n rowIndex,\n t,\n })\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n } else {\n toast.success(t('general:copied'))\n }\n },\n [fields, getFields, path, t, type],\n )\n\n const pasteRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const pasteArgs = {\n onPaste: (dataFromClipboard: ClipboardPasteData) => {\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n rowIndex,\n })\n replaceState(newState)\n setModified(true)\n },\n path,\n schemaFields: fields,\n t,\n }\n\n const clipboardResult = clipboardPaste(pasteArgs)\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n }\n },\n [fields, getFields, path, replaceState, setModified, t],\n )\n\n const pasteField = useCallback(\n (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n })\n replaceState(newState)\n setModified(true)\n },\n [getFields, path, replaceState, setModified],\n )\n\n const getDataToCopy = useCallback(\n () =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n }),\n [getFields, path],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && errorPaths.length > 0\n\n const showRequired = (readOnly || disabled) && rows.length === 0\n const showMinRows = (rows.length && rows.length < minRows) || (required && rows.length === 0)\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={styles}\n >\n {showError && (\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n )}\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h3 className={`${baseClass}__title`}>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel\n as=\"span\"\n label={label}\n localized={localized}\n path={path}\n required={required}\n />\n }\n />\n </h3>\n {fieldHasErrors && fieldErrorCount > 0 && (\n <ErrorPill count={fieldErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n <ul className={`${baseClass}__header-actions`}>\n {rows?.length > 0 && (\n <Fragment>\n <li>\n <button\n className={`${baseClass}__header-action`}\n onClick={() => toggleCollapseAll(true)}\n type=\"button\"\n >\n {t('fields:collapseAll')}\n </button>\n </li>\n <li>\n <button\n className={`${baseClass}__header-action`}\n onClick={() => toggleCollapseAll(false)}\n type=\"button\"\n >\n {t('fields:showAll')}\n </button>\n </li>\n </Fragment>\n )}\n <li>\n <ClipboardAction\n allowCopy={rows?.length > 0}\n allowPaste={!readOnly}\n className={`${baseClass}__header-action`}\n disabled={disabled}\n fields={fields}\n getDataToCopy={getDataToCopy}\n onPaste={pasteField}\n path={path}\n type={type}\n />\n </li>\n </ul>\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n <NullifyLocaleField\n fieldValue={value}\n localized={localized}\n path={path}\n readOnly={readOnly}\n />\n {BeforeInput}\n {(rows?.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__draggable-rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n >\n {rows.map((rowData, i) => {\n const { id: rowID, isLoading } = rowData\n\n const rowPath = `${path}.${i}`\n\n const rowErrorCount = errorPaths?.filter((errorPath) =>\n errorPath.startsWith(rowPath + '.'),\n ).length\n\n return (\n <DraggableSortableItem\n disabled={readOnly || disabled || !isSortable}\n id={rowID}\n key={rowID}\n >\n {(dragProps) => (\n <ArrayRow\n addRow={addRow}\n copyRow={copyRow}\n CustomRowLabel={rows?.[i]?.customComponents?.RowLabel}\n dragHandleAttributes={dragProps?.attributes}\n dragHandleListeners={dragProps?.listeners}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={fields}\n forceRender={forceRender}\n hasMaxRows={hasMaxRows}\n isDragging={dragProps?.isDragging}\n isLoading={isLoading}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n pasteRow={pasteRow}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly || disabled}\n ref={dragProps?.setNodeRef}\n removeRow={removeRow}\n row={rowData}\n rowCount={rows?.length}\n rowIndex={i}\n schemaPath={schemaPath}\n setCollapse={setCollapse}\n style={{\n transform: dragProps?.transform,\n transition: dragProps?.transition,\n }}\n />\n )}\n </DraggableSortableItem>\n )\n })}\n {!valid && (\n <React.Fragment>\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n {showMinRows && (\n <Banner type=\"error\">\n {t('validation:requiresAtLeast', {\n count: minRows,\n label:\n getTranslation(minRows > 1 ? labels.plural : labels.singular, i18n) ||\n t(minRows > 1 ? 'general:rows' : 'general:row'),\n })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && !readOnly && (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-row`}\n disabled={disabled}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n void addRow(value || 0)\n }}\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n )}\n {AfterInput}\n </div>\n )\n}\n\nexport const ArrayField = withCondition(ArrayFieldComponent)\n"],"mappings":"AAAA;;;AAOA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,IAASC,QAAQ,EAAEC,WAAW,EAAEC,OAAO,QAAQ;AACtD,SAASC,KAAK,QAAQ;AAItB,SAASC,MAAM,QAAQ;AACvB,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,EAAEC,cAAc,QAAQ;AAC9C,SAASC,eAAe,QAAQ;AAChC,SACEC,2BAA2B,EAC3BC,qBAAqB,QAChB;AACP,SAASC,qBAAqB,QAAQ;AACtC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,SAAS,QAAQ;AAC1B,SAASC,qBAAqB,QAAQ;AACtC,SAASC,gBAAgB,QAAQ;AACjC,SAASC,UAAU,QAAQ;AAC3B,SAASC,UAAU,QAAQ;AAC3B,SAASC,OAAO,EAAEC,gBAAgB,QAAQ;AAC1C,SAASC,0BAA0B,EAAEC,aAAa,QAAQ;AAC1D,SAASC,kBAAkB,QAAQ;AACnC,SAASC,QAAQ,QAAQ;AACzB,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,eAAe,QAAQ;AAChC,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAC/B,SAASC,UAAU,QAAQ;AAC3B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AACzB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,OAAO,MAAMC,mBAAA,GAAkDC,KAAA;EAC7D,MAAM;IACJC,KAAK;IACLA,KAAA,EAAO;MACLC,IAAI;MACJC,IAAI;MACJC,KAAA,EAAO;QAAEC,SAAS;QAAEC,WAAW;QAAEC,UAAA,GAAa;MAAI,CAAE,GAAG,CAAC,CAAC;MACzDC,MAAM;MACNC,KAAK;MACLC,SAAS;MACTC,OAAO;MACPC,OAAA,EAASC,WAAW;MACpBC;IAAQ,CACT;IACDC,WAAA,GAAc,KAAK;IACnBC,IAAA,EAAMC,aAAa;IACnBC,WAAW;IACXC,QAAQ;IACRC,UAAA,EAAYC,mBAAmB;IAC/BC;EAAQ,CACT,GAAGtB,KAAA;EAEJ,MAAMoB,UAAA,GAAaC,mBAAA,IAAuBnB,IAAA;EAE1C,MAAMU,OAAA,GAAUC,WAAA,KAAgBC,QAAA,GAAW,IAAI;EAE/C,MAAM;IAAES;EAAsB,CAAE,GAAGhC,eAAA;EACnC,MAAM;IACJiC,WAAW;IACXC,cAAc;IACdC,SAAS;IACTC,YAAY;IACZC,cAAc;IACdC,YAAY;IACZC;EAAW,CACZ,GAAG/C,OAAA;EACJ,MAAMgD,SAAA,GAAY/C,gBAAA;EAClB,MAAM;IAAEgD,IAAA,EAAMC;EAAM,CAAE,GAAGzC,SAAA;EACzB,MAAM;IAAE0C,IAAI;IAAEC;EAAC,CAAE,GAAG1C,cAAA;EAEpB,MAAM;IACJ2C,MAAA,EAAQ;MAAEC;IAAY;EAAE,CACzB,GAAG/C,SAAA;EAEJ,MAAMgD,oBAAA,GAAuB,CAAC;IAC5B,IAAID,YAAA,IAAgBA,YAAA,CAAaE,QAAQ,EAAE;MACzC,MAAMC,aAAA,GAAgBH,YAAA,CAAaG,aAAa;MAChD,OAAOP,MAAA,KAAWO,aAAA;IACpB;IAEA,OAAO;EACT;EAEA;EACA,MAAMC,SAAA,GAAaC,CAAA;IACjB,IAAI,YAAYA,CAAA,IAAKA,CAAA,EAAGC,MAAA,EAAQ;MAC9B,OAAOD,CAAA,CAAEC,MAAM;IACjB;IAEA,IAAI,YAAYD,CAAA,CAAEzC,KAAK,IAAIyC,CAAA,CAAEzC,KAAK,CAAC0C,MAAM,EAAE;MACzC,OAAO;QAAEC,MAAA,EAAQF,CAAA,CAAEzC,KAAK,CAAC0C,MAAM,EAAEC,MAAA;QAAQC,QAAA,EAAUH,CAAA,CAAEzC,KAAK,CAAC0C,MAAM,EAAEE;MAAS;IAC9E;IAEA,IAAI,WAAWH,CAAA,CAAEzC,KAAK,IAAIyC,CAAA,CAAEzC,KAAK,CAACQ,KAAK,EAAE;MACvC,OAAO;QAAEmC,MAAA,EAAQE,SAAA;QAAWD,QAAA,EAAUH,CAAA,CAAEzC,KAAK,CAACQ;MAAM;IACtD;IAEA,OAAO;MAAEmC,MAAA,EAAQT,CAAA,CAAE;MAAiBU,QAAA,EAAUV,CAAA,CAAE;IAAe;EACjE;EAEA,MAAMQ,MAAA,GAASF,SAAA,CAAUzC,KAAA;EAEzB,MAAM+C,gBAAA,GAAmBjF,WAAA,CACvB,CAACkF,KAAA,EAAOC,OAAA;IACN;IACA,IAAI,CAACX,oBAAA,IAAwBU,KAAA,KAAU,MAAM;MAC3C,OAAO;IACT;IAEA,IAAI,OAAO1B,QAAA,KAAa,YAAY;MAClC,OAAOA,QAAA,CAAS0B,KAAA,EAAO;QAAE,GAAGC,OAAO;QAAEtC,OAAA;QAASC,OAAA;QAASE;MAAS;IAClE;EACF,GACA,CAACH,OAAA,EAASC,OAAA,EAASE,QAAA,EAAUQ,QAAA,EAAUgB,oBAAA,CAAqB;EAG9D,MAAM;IACJY,gBAAA,EAAkB;MAAEC,UAAU;MAAEC,WAAW;MAAEC,WAAW;MAAEC,KAAK;MAAEC;IAAK,CAAE,GAAG,CAAC,CAAC;IAC7EC,QAAQ;IACRC,UAAU;IACVzC,IAAI;IACJ0C,IAAA,GAAO,EAAE;IACTC,SAAS;IACTC,KAAK;IACLZ,KAAK,EAALA;EAAK,CACN,GAAG5D,QAAA,CAAiB;IACnByE,OAAA,EAAS;IACTC,oBAAA,EAAsB7C,aAAA;IACtBK,QAAA,EAAUyB;EACZ;EAEA,MAAMgB,MAAA,GAASjG,WAAA,CACZkG,QAAA;IACCxC,WAAA,CAAY;MACVR,IAAA;MACAgD,QAAA;MACA5C;IACF;IAEA6C,UAAA,CAAW;MACTvE,UAAA,CAAW,GAAGsB,IAAA,QAAYgD,QAAA,EAAU;IACtC,GAAG;EACL,GACA,CAACxC,WAAA,EAAaR,IAAA,EAAMI,UAAA,CAAW;EAGjC,MAAM8C,YAAA,GAAepG,WAAA,CAClBkG,UAAA;IACCvC,cAAA,CAAe;MAAEtB,IAAA,EAAM;MAAiBa,IAAA;MAAMgD,QAAA,EAAAA;IAAS;IAEvDlC,WAAA,CAAY;IAEZmC,UAAA,CAAW;MACTvE,UAAA,CAAW,GAAGsB,IAAA,QAAYgD,UAAA,EAAU;IACtC,GAAG;EACL,GACA,CAACvC,cAAA,EAAgBT,IAAA,EAAMc,WAAA,CAAY;EAGrC,MAAMqC,SAAA,GAAYrG,WAAA,CACfkG,UAAA;IACCpC,cAAA,CAAe;MAAEZ,IAAA;MAAMgD,QAAA,EAAAA;IAAS;EAClC,GACA,CAACpC,cAAA,EAAgBZ,IAAA,CAAK;EAGxB,MAAMoD,OAAA,GAAUtG,WAAA,CACd,CAACuG,aAAA,EAAuBC,WAAA;IACtB3C,YAAA,CAAa;MACX0C,aAAA;MACAC,WAAA;MACAtD;IACF;EACF,GACA,CAACA,IAAA,EAAMW,YAAA,CAAa;EAGtB,MAAM4C,iBAAA,GAAoBzG,WAAA,CACvB0G,SAAA;IACC,MAAM;MAAEC,YAAY;MAAEC;IAAW,CAAE,GAAGxF,aAAA,CAAc;MAClDsF,SAAA;MACAd;IACF;IACAnC,sBAAA,CAAuBP,IAAA,EAAM;MAAEwD,SAAA,EAAWC;IAAa;IACvDhD,cAAA,CAAe;MAAEtB,IAAA,EAAM;MAA0Ba,IAAA;MAAM0D;IAAY;EACrE,GACA,CAACjD,cAAA,EAAgBT,IAAA,EAAM0C,IAAA,EAAMnC,sBAAA,CAAuB;EAGtD,MAAMoD,WAAA,GAAc7G,WAAA,CAClB,CAAC8G,KAAA,EAAeJ,WAAA;IACd,MAAM;MAAEC,YAAY,EAAZA,cAAY;MAAEC,WAAW,EAAXA;IAAW,CAAE,GAAGzF,0BAAA,CAA2B;MAC/DuF,SAAA,EAAAA,WAAA;MACAI,KAAA;MACAlB;IACF;IAEAjC,cAAA,CAAe;MAAEtB,IAAA,EAAM;MAAqBa,IAAA;MAAM0D,WAAA,EAAAA;IAAY;IAC9DnD,sBAAA,CAAuBP,IAAA,EAAM;MAAEwD,SAAA,EAAWC;IAAa;EACzD,GACA,CAAChD,cAAA,EAAgBT,IAAA,EAAM0C,IAAA,EAAMnC,sBAAA,CAAuB;EAGtD,MAAMsD,OAAA,GAAU/G,WAAA,CACbkG,UAAA;IACC,MAAMc,SAAA,GAAY;MAAE,GAAGpD,SAAA;IAAY;IACnC,MAAMqD,eAAA,GAAkB5G,aAAA,CAAc;MACpCgC,IAAA;MACAK,MAAA;MACAwE,aAAA,EAAeA,CAAA,KACbzG,qBAAA,CAAsB;QACpBuG,SAAA;QACA9D,IAAA;QACAgD,QAAA,EAAAA;MACF;MACFhD,IAAA;MACAgD,QAAA,EAAAA,UAAA;MACA7B;IACF;IAEA,IAAI,OAAO4C,eAAA,KAAoB,UAAU;MACvC/G,KAAA,CAAMiH,KAAK,CAACF,eAAA;IACd,OAAO;MACL/G,KAAA,CAAMkH,OAAO,CAAC/C,CAAA,CAAE;IAClB;EACF,GACA,CAAC3B,MAAA,EAAQkB,SAAA,EAAWV,IAAA,EAAMmB,CAAA,EAAGhC,IAAA,CAAK;EAGpC,MAAMgF,QAAA,GAAWrH,WAAA,CACdkG,UAAA;IACC,MAAMc,WAAA,GAAY;MAAE,GAAGpD,SAAA;IAAY;IACnC,MAAM0D,SAAA,GAAY;MAChBC,OAAA,EAAUC,iBAAA;QACR,MAAMC,QAAA,GAAWjH,2BAAA,CAA4B;UAC3CgH,iBAAA;UACAR,SAAA,EAAAA,WAAA;UACA9D,IAAA;UACAgD,QAAA,EAAAA;QACF;QACAnC,YAAA,CAAa0D,QAAA;QACbzD,WAAA,CAAY;MACd;MACAd,IAAA;MACAwE,YAAA,EAAchF,MAAA;MACd2B;IACF;IAEA,MAAM4C,iBAAA,GAAkB3G,cAAA,CAAegH,SAAA;IAEvC,IAAI,OAAOL,iBAAA,KAAoB,UAAU;MACvC/G,KAAA,CAAMiH,KAAK,CAACF,iBAAA;IACd;EACF,GACA,CAACvE,MAAA,EAAQkB,SAAA,EAAWV,IAAA,EAAMa,YAAA,EAAcC,WAAA,EAAaK,CAAA,CAAE;EAGzD,MAAMsD,UAAA,GAAa3H,WAAA,CAChBwH,mBAAA;IACC,MAAMR,WAAA,GAAY;MAAE,GAAGpD,SAAA;IAAY;IACnC,MAAM6D,UAAA,GAAWjH,2BAAA,CAA4B;MAC3CgH,iBAAA,EAAAA,mBAAA;MACAR,SAAA,EAAAA,WAAA;MACA9D;IACF;IACAa,YAAA,CAAa0D,UAAA;IACbzD,WAAA,CAAY;EACd,GACA,CAACJ,SAAA,EAAWV,IAAA,EAAMa,YAAA,EAAcC,WAAA,CAAY;EAG9C,MAAMkD,aAAA,GAAgBlH,WAAA,CACpB,MACES,qBAAA,CAAsB;IACpBuG,SAAA,EAAW;MAAE,GAAGpD,SAAA;IAAY;IAC5BV;EACF,IACF,CAACU,SAAA,EAAWV,IAAA,CAAK;EAGnB,MAAM0E,UAAA,GAAa/E,OAAA,IAAW+C,IAAA,CAAKiC,MAAM,IAAIhF,OAAA;EAE7C,MAAMiF,eAAA,GAAkBnC,UAAA,CAAWkC,MAAM;EACzC,MAAME,cAAA,GAAiB9D,SAAA,IAAa0B,UAAA,CAAWkC,MAAM,GAAG;EAExD,MAAMG,YAAA,GAAe,CAAC3E,QAAA,IAAYqC,QAAO,KAAME,IAAA,CAAKiC,MAAM,KAAK;EAC/D,MAAMI,WAAA,GAAcrC,IAAC,CAAKiC,MAAM,IAAIjC,IAAA,CAAKiC,MAAM,GAAG/E,OAAA,IAAaE,QAAA,IAAY4C,IAAA,CAAKiC,MAAM,KAAK;EAE3F,MAAMK,MAAA,GAASjI,OAAA,CAAQ,MAAM4B,gBAAA,CAAiBM,KAAA,GAAQ,CAACA,KAAA,CAAM;EAE7D,oBACEgG,KAAA,CAAC;IACC5F,SAAA,EAAW,CACTT,cAAA,EACAE,SAAA,EACAO,SAAA,EACAwF,cAAA,GAAiB,GAAG/F,SAAA,aAAsB,GAAG,GAAGA,SAAA,gBAAyB,CAC1E,CACEoG,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;IACRC,EAAA,EAAI,SAASrF,IAAA,CAAKsF,OAAO,CAAC,OAAO,OAAO;IACxCC,KAAA,EAAOP,MAAA;eAENrC,SAAA,iBACC6C,IAAA,CAAC7H,qBAAA;MACC8H,eAAA,EAAiBnD,KAAA;MACjBoD,QAAA,eAAUF,IAAA,CAAC3H,UAAA;QAAWmC,IAAA,EAAMA,IAAA;QAAM2C,SAAA,EAAWA;;qBAGjDsC,KAAA,CAAC;MAAO5F,SAAA,EAAW,GAAGP,SAAA,UAAmB;8BACvCmG,KAAA,CAAC;QAAI5F,SAAA,EAAW,GAAGP,SAAA,eAAwB;gCACzCmG,KAAA,CAAC;UAAI5F,SAAA,EAAW,GAAGP,SAAA,kBAA2B;kCAC5C0G,IAAA,CAAC;YAAGnG,SAAA,EAAW,GAAGP,SAAA,SAAkB;sBAClC,aAAA0G,IAAA,CAAC7H,qBAAA;cACC8H,eAAA,EAAiBlD,KAAA;cACjBmD,QAAA,eACEF,IAAA,CAAC1H,UAAA;gBACC6H,EAAA,EAAG;gBACHlG,KAAA,EAAOA,KAAA;gBACPC,SAAA,EAAWA,SAAA;gBACXM,IAAA,EAAMA,IAAA;gBACNF,QAAA,EAAUA;;;cAKjB+E,cAAA,IAAkBD,eAAA,GAAkB,kBACnCY,IAAA,CAAC9H,SAAA;YAAUkI,KAAA,EAAOhB,eAAA;YAAiB1D,IAAA,EAAMA,IAAA;YAAM2E,WAAW;;yBAG9DZ,KAAA,CAAC;UAAG5F,SAAA,EAAW,GAAGP,SAAA,kBAA2B;qBAC1C4D,IAAA,EAAMiC,MAAA,GAAS,kBACdM,KAAA,CAACpI,QAAA;oCACC2I,IAAA,CAAC;wBACC,aAAAA,IAAA,CAAC;gBACCnG,SAAA,EAAW,GAAGP,SAAA,iBAA0B;gBACxCgH,OAAA,EAASA,CAAA,KAAMvC,iBAAA,CAAkB;gBACjCpE,IAAA,EAAK;0BAEJgC,CAAA,CAAE;;6BAGPqE,IAAA,CAAC;wBACC,aAAAA,IAAA,CAAC;gBACCnG,SAAA,EAAW,GAAGP,SAAA,iBAA0B;gBACxCgH,OAAA,EAASA,CAAA,KAAMvC,iBAAA,CAAkB;gBACjCpE,IAAA,EAAK;0BAEJgC,CAAA,CAAE;;;2BAKXqE,IAAA,CAAC;sBACC,aAAAA,IAAA,CAACnI,eAAA;cACC0I,SAAA,EAAWrD,IAAA,EAAMiC,MAAA,GAAS;cAC1BqB,UAAA,EAAY,CAAC7F,QAAA;cACbd,SAAA,EAAW,GAAGP,SAAA,iBAA0B;cACxC0D,QAAA,EAAUA,QAAA;cACVhD,MAAA,EAAQA,MAAA;cACRwE,aAAA,EAAeA,aAAA;cACfK,OAAA,EAASI,UAAA;cACTzE,IAAA,EAAMA,IAAA;cACNb,IAAA,EAAMA;;;;uBAKdqG,IAAA,CAAC7H,qBAAA;QACC8H,eAAA,EAAiBpD,WAAA;QACjBqD,QAAA,eAAUF,IAAA,CAAC5H,gBAAA;UAAiB0B,WAAA,EAAaA,WAAA;UAAaU,IAAA,EAAMA;;;qBAGhEwF,IAAA,CAACrH,kBAAA;MACC8H,UAAA,EAAYjE,OAAA;MACZtC,SAAA,EAAWA,SAAA;MACXM,IAAA,EAAMA,IAAA;MACNG,QAAA,EAAUA;QAEXiC,WAAA,EACC,CAAAM,IAAA,EAAMiC,MAAA,GAAS,KAAM,CAAC/B,KAAA,KAAUkC,YAAA,IAAgBC,WAAU,CAAE,kBAC5DE,KAAA,CAACxH,iBAAA;MACC4B,SAAA,EAAW,GAAGP,SAAA,kBAA2B;MACzCoH,GAAA,EAAKxD,IAAA,CAAKyD,GAAG,CAAEC,GAAA,IAAQA,GAAA,CAAIf,EAAE;MAC7BgB,SAAA,EAAWA,CAAC;QAAEhD,aAAa,EAAbA,eAAa;QAAEC,WAAW,EAAXA;MAAW,CAAE,KAAKF,OAAA,CAAQC,eAAA,EAAeC,aAAA;iBAErEZ,IAAA,CAAKyD,GAAG,CAAC,CAACG,OAAA,EAASC,CAAA;QAClB,MAAM;UAAElB,EAAA,EAAIzB,OAAK;UAAE4C;QAAS,CAAE,GAAGF,OAAA;QAEjC,MAAMG,OAAA,GAAU,GAAGzG,IAAA,IAAQuG,CAAA,EAAG;QAE9B,MAAMG,aAAA,GAAgBjE,UAAA,EAAYyC,MAAA,CAAQyB,SAAA,IACxCA,SAAA,CAAUC,UAAU,CAACH,OAAA,GAAU,MAC/B9B,MAAA;QAEF,oBACEa,IAAA,CAAChI,qBAAA;UACCgF,QAAA,EAAUrC,QAAA,IAAYqC,QAAA,IAAY,CAACjD,UAAA;UACnC8F,EAAA,EAAIzB,OAAA;oBAGFiD,SAAA,iBACArB,IAAA,CAAC3G,QAAA;YACCkE,MAAA,EAAQA,MAAA;YACRc,OAAA,EAASA,OAAA;YACTiD,cAAA,EAAgBpE,IAAA,GAAO6D,CAAA,CAAE,EAAErE,gBAAA,EAAkB6E,QAAA;YAC7CC,oBAAA,EAAsBH,SAAA,EAAWI,UAAA;YACjCC,mBAAA,EAAqBL,SAAA,EAAWM,SAAA;YAChCjE,YAAA,EAAcA,YAAA;YACdkE,UAAA,EAAYV,aAAA;YACZlH,MAAA,EAAQA,MAAA;YACRO,WAAA,EAAaA,WAAA;YACb2E,UAAA,EAAYA,UAAA;YACZ2C,UAAA,EAAYR,SAAA,EAAWQ,UAAA;YACvBb,SAAA,EAAWA,SAAA;YACXjH,UAAA,EAAYA,UAAA;YACZoC,MAAA,EAAQA,MAAA;YACRyB,OAAA,EAASA,OAAA;YACTkE,UAAA,EAAYtH,IAAA;YACZmE,QAAA,EAAUA,QAAA;YACVnE,IAAA,EAAMyG,OAAA;YACNvG,WAAA,EAAaA,WAAA;YACbC,QAAA,EAAUA,QAAA,IAAYqC,QAAA;YACtB+E,GAAA,EAAKV,SAAA,EAAWW,UAAA;YAChBrE,SAAA,EAAWA,SAAA;YACXiD,GAAA,EAAKE,OAAA;YACLmB,QAAA,EAAU/E,IAAA,EAAMiC,MAAA;YAChB3B,QAAA,EAAUuD,CAAA;YACVnG,UAAA,EAAYA,UAAA;YACZuD,WAAA,EAAaA,WAAA;YACb4B,KAAA,EAAO;cACLmC,SAAA,EAAWb,SAAA,EAAWa,SAAA;cACtBC,UAAA,EAAYd,SAAA,EAAWc;YACzB;;WAlCC/D,OAAA;MAuCX,IACC,CAAChB,KAAA,iBACAqC,KAAA,CAACrI,KAAA,CAAMC,QAAQ;mBACZiI,YAAA,iBACCU,IAAA,CAACvI,MAAA;oBACEkE,CAAA,CAAE,yBAAyB;YAAE1B,KAAA,EAAO9C,cAAA,CAAegF,MAAA,CAAOC,MAAM,EAAEV,IAAA;UAAM;YAG5E6D,WAAA,iBACCS,IAAA,CAACvI,MAAA;UAAOkC,IAAA,EAAK;oBACVgC,CAAA,CAAE,8BAA8B;YAC/ByE,KAAA,EAAOhG,OAAA;YACPH,KAAA,EACE9C,cAAA,CAAeiD,OAAA,GAAU,IAAI+B,MAAA,CAAOC,MAAM,GAAGD,MAAA,CAAOE,QAAQ,EAAEX,IAAA,KAC9DC,CAAA,CAAEvB,OAAA,GAAU,IAAI,iBAAiB;UACrC;;;QAOX,CAAC8E,UAAA,IAAc,CAACvE,QAAA,iBACfqF,IAAA,CAACtI,MAAA;MACC0K,WAAA,EAAY;MACZvI,SAAA,EAAW,GAAGP,SAAA,WAAoB;MAClC0D,QAAA,EAAUA,QAAA;MACVqF,IAAA,EAAK;MACLC,YAAA,EAAa;MACbC,SAAA,EAAU;MACVjC,OAAA,EAASA,CAAA;QACP,KAAK/C,MAAA,CAAOf,OAAA,IAAS;MACvB;gBAECb,CAAA,CAAE,mBAAmB;QAAE1B,KAAA,EAAO9C,cAAA,CAAegF,MAAA,CAAOE,QAAQ,EAAEX,IAAA;MAAM;QAGxEiB,UAAA;;AAGP;AAEA,OAAO,MAAM6F,UAAA,GAAa3J,aAAA,CAAcU,mBAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","React","Fragment","useCallback","useMemo","toast","Banner","Button","clipboardCopy","clipboardPaste","ClipboardAction","mergeFormStateFromClipboard","reduceFormStateByPath","DraggableSortableItem","DraggableSortable","ErrorPill","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","useField","withCondition","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","mergeFieldStyles","fieldBaseClass","ArrayRow","baseClass","ArrayFieldComponent","props","field","name","type","admin","className","description","isSortable","fields","label","localized","maxRows","minRows","minRowsProp","required","forceRender","path","pathFromProps","permissions","readOnly","schemaPath","schemaPathFromProps","validate","setDocFieldPreferences","addFieldRow","dispatchFields","getFields","moveFieldRow","removeFieldRow","replaceState","setModified","submitted","code","locale","i18n","t","config","localization","editingDefaultLocale","fallback","defaultLocale","getLabels","p","labels","plural","singular","undefined","memoizedValidate","value","options","customComponents","AfterInput","BeforeInput","Description","Error","Label","disabled","errorPaths","rows","showError","valid","hasRows","potentiallyStalePath","addRow","rowIndex","setTimeout","duplicateRow","removeRow","moveRow","moveFromIndex","moveToIndex","toggleCollapseAll","collapsed","collapsedIDs","updatedRows","setCollapse","rowID","copyRow","formState","clipboardResult","getDataToCopy","error","success","pasteRow","pasteArgs","onPaste","dataFromClipboard","newState","schemaFields","pasteField","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showRequired","showMinRows","styles","_jsxs","filter","Boolean","join","id","replace","style","_jsx","CustomComponent","Fallback","as","count","withMessage","onClick","allowCopy","allowPaste","fieldValue","ids","map","row","onDragEnd","rowData","i","isLoading","rowPath","rowErrorCount","errorPath","startsWith","draggableSortableItemProps","CustomRowLabel","RowLabel","errorCount","parentPath","rowCount","buttonStyle","icon","iconPosition","iconStyle","ArrayField"],"sources":["../../../src/fields/Array/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ArrayFieldClientComponent,\n ArrayFieldClientProps,\n ArrayField as ArrayFieldType,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, useCallback, useMemo } from 'react'\nimport { toast } from 'sonner'\n\nimport type { ClipboardPasteData } from '../../elements/ClipboardAction/types.js'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.js'\nimport { clipboardCopy, clipboardPaste } from '../../elements/ClipboardAction/clipboardUtilities.js'\nimport { ClipboardAction } from '../../elements/ClipboardAction/index.js'\nimport {\n mergeFormStateFromClipboard,\n reduceFormStateByPath,\n} from '../../elements/ClipboardAction/mergeFormStateFromClipboard.js'\nimport { DraggableSortableItem } from '../../elements/DraggableSortable/DraggableSortableItem/index.js'\nimport { DraggableSortable } from '../../elements/DraggableSortable/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { FieldDescription } from '../../fields/FieldDescription/index.js'\nimport { FieldError } from '../../fields/FieldError/index.js'\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm, useFormSubmitted } from '../../forms/Form/context.js'\nimport { extractRowsAndCollapsedIDs, toggleAllRows } from '../../forms/Form/rowHelpers.js'\nimport { NullifyLocaleField } from '../../forms/NullifyField/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { scrollToID } from '../../utilities/scrollToID.js'\nimport { mergeFieldStyles } from '../mergeFieldStyles.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { ArrayRow } from './ArrayRow.js'\nimport './index.scss'\n\nconst baseClass = 'array-field'\n\nexport const ArrayFieldComponent: ArrayFieldClientComponent = (props) => {\n const {\n field,\n field: {\n name,\n type,\n admin: { className, description, isSortable = true } = {},\n fields,\n label,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n forceRender = false,\n path: pathFromProps,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\n\n const schemaPath = schemaPathFromProps ?? name\n\n const minRows = minRowsProp ?? (required ? 1 : 0)\n\n const { setDocFieldPreferences } = useDocumentInfo()\n const {\n addFieldRow,\n dispatchFields,\n getFields,\n moveFieldRow,\n removeFieldRow,\n replaceState,\n setModified,\n } = useForm()\n const submitted = useFormSubmitted()\n const { code: locale } = useLocale()\n const { i18n, t } = useTranslation()\n\n const {\n config: { localization },\n } = useConfig()\n\n const editingDefaultLocale = (() => {\n if (localization && localization.fallback) {\n const defaultLocale = localization.defaultLocale\n return locale === defaultLocale\n }\n\n return true\n })()\n\n // Handle labeling for Arrays, Global Arrays, and Blocks\n const getLabels = (p: ArrayFieldClientProps): Partial<ArrayFieldType['labels']> => {\n if ('labels' in p && p?.labels) {\n return p.labels\n }\n\n if ('labels' in p.field && p.field.labels) {\n return { plural: p.field.labels?.plural, singular: p.field.labels?.singular }\n }\n\n if ('label' in p.field && p.field.label) {\n return { plural: undefined, singular: p.field.label }\n }\n\n return { plural: t('general:rows'), singular: t('general:row') }\n }\n\n const labels = getLabels(props)\n\n const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\n }\n\n if (typeof validate === 'function') {\n return validate(value, { ...options, maxRows, minRows, required })\n }\n },\n [maxRows, minRows, required, validate, editingDefaultLocale],\n )\n\n const {\n customComponents: { AfterInput, BeforeInput, Description, Error, Label } = {},\n disabled,\n errorPaths,\n path,\n rows = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n potentiallyStalePath: pathFromProps,\n validate: memoizedValidate,\n })\n\n const addRow = useCallback(\n (rowIndex: number) => {\n addFieldRow({\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex}`)\n }, 0)\n },\n [dispatchFields, path, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n removeFieldRow({ path, rowIndex })\n },\n [removeFieldRow, path],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n moveFieldRow({\n moveFromIndex,\n moveToIndex,\n path,\n })\n },\n [path, moveFieldRow],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows,\n })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const copyRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const clipboardResult = clipboardCopy({\n type,\n fields,\n getDataToCopy: () =>\n reduceFormStateByPath({\n formState,\n path,\n rowIndex,\n }),\n path,\n rowIndex,\n t,\n })\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n } else {\n toast.success(t('general:copied'))\n }\n },\n [fields, getFields, path, t, type],\n )\n\n const pasteRow = useCallback(\n (rowIndex: number) => {\n const formState = { ...getFields() }\n const pasteArgs = {\n onPaste: (dataFromClipboard: ClipboardPasteData) => {\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n rowIndex,\n })\n replaceState(newState)\n setModified(true)\n },\n path,\n schemaFields: fields,\n t,\n }\n\n const clipboardResult = clipboardPaste(pasteArgs)\n\n if (typeof clipboardResult === 'string') {\n toast.error(clipboardResult)\n }\n },\n [fields, getFields, path, replaceState, setModified, t],\n )\n\n const pasteField = useCallback(\n (dataFromClipboard: ClipboardPasteData) => {\n const formState = { ...getFields() }\n const newState = mergeFormStateFromClipboard({\n dataFromClipboard,\n formState,\n path,\n })\n replaceState(newState)\n setModified(true)\n },\n [getFields, path, replaceState, setModified],\n )\n\n const getDataToCopy = useCallback(\n () =>\n reduceFormStateByPath({\n formState: { ...getFields() },\n path,\n }),\n [getFields, path],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && errorPaths.length > 0\n\n const showRequired = (readOnly || disabled) && rows.length === 0\n const showMinRows = (rows.length && rows.length < minRows) || (required && rows.length === 0)\n\n const styles = useMemo(() => mergeFieldStyles(field), [field])\n\n return (\n <div\n className={[\n fieldBaseClass,\n baseClass,\n className,\n fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`,\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={styles}\n >\n {showError && (\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n )}\n <header className={`${baseClass}__header`}>\n <div className={`${baseClass}__header-wrap`}>\n <div className={`${baseClass}__header-content`}>\n <h3 className={`${baseClass}__title`}>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel\n as=\"span\"\n label={label}\n localized={localized}\n path={path}\n required={required}\n />\n }\n />\n </h3>\n {fieldHasErrors && fieldErrorCount > 0 && (\n <ErrorPill count={fieldErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n <ul className={`${baseClass}__header-actions`}>\n {rows?.length > 0 && (\n <Fragment>\n <li>\n <button\n className={`${baseClass}__header-action`}\n onClick={() => toggleCollapseAll(true)}\n type=\"button\"\n >\n {t('fields:collapseAll')}\n </button>\n </li>\n <li>\n <button\n className={`${baseClass}__header-action`}\n onClick={() => toggleCollapseAll(false)}\n type=\"button\"\n >\n {t('fields:showAll')}\n </button>\n </li>\n </Fragment>\n )}\n <li>\n <ClipboardAction\n allowCopy={rows?.length > 0}\n allowPaste={!readOnly}\n className={`${baseClass}__header-action`}\n disabled={disabled}\n fields={fields}\n getDataToCopy={getDataToCopy}\n onPaste={pasteField}\n path={path}\n type={type}\n />\n </li>\n </ul>\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n <NullifyLocaleField\n fieldValue={value}\n localized={localized}\n path={path}\n readOnly={readOnly}\n />\n {BeforeInput}\n {(rows?.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__draggable-rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n >\n {rows.map((rowData, i) => {\n const { id: rowID, isLoading } = rowData\n\n const rowPath = `${path}.${i}`\n\n const rowErrorCount = errorPaths?.filter((errorPath) =>\n errorPath.startsWith(rowPath + '.'),\n ).length\n\n return (\n <DraggableSortableItem\n disabled={readOnly || disabled || !isSortable}\n id={rowID}\n key={rowID}\n >\n {(draggableSortableItemProps) => (\n <ArrayRow\n {...draggableSortableItemProps}\n addRow={addRow}\n copyRow={copyRow}\n CustomRowLabel={rows?.[i]?.customComponents?.RowLabel}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={fields}\n forceRender={forceRender}\n hasMaxRows={hasMaxRows}\n isLoading={isLoading}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n pasteRow={pasteRow}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly || disabled}\n removeRow={removeRow}\n row={rowData}\n rowCount={rows?.length}\n rowIndex={i}\n schemaPath={schemaPath}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n })}\n {!valid && (\n <React.Fragment>\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n {showMinRows && (\n <Banner type=\"error\">\n {t('validation:requiresAtLeast', {\n count: minRows,\n label:\n getTranslation(minRows > 1 ? labels.plural : labels.singular, i18n) ||\n t(minRows > 1 ? 'general:rows' : 'general:row'),\n })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && !readOnly && (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-row`}\n disabled={disabled}\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n onClick={() => {\n void addRow(value || 0)\n }}\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n )}\n {AfterInput}\n </div>\n )\n}\n\nexport const ArrayField = withCondition(ArrayFieldComponent)\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Relationship/Input.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAwE,MAAM,OAAO,CAAA;AAK5F,OAAO,KAAK,EAA6B,sBAAsB,EAAiB,MAAM,YAAY,CAAA;AAuBlG,OAAO,cAAc,CAAA;AAMrB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Relationship/Input.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAwE,MAAM,OAAO,CAAA;AAK5F,OAAO,KAAK,EAA6B,sBAAsB,EAAiB,MAAM,YAAY,CAAA;AAuBlG,OAAO,cAAc,CAAA;AAMrB,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA23B9D,CAAA"}
|
|
@@ -241,7 +241,10 @@ export const RelationshipInput = props => {
|
|
|
241
241
|
query.where.and.push(relationFilterOption);
|
|
242
242
|
}
|
|
243
243
|
sanitizeFilterOptionsQuery(query.where);
|
|
244
|
-
const response = await fetch(
|
|
244
|
+
const response = await fetch(formatAdminURL({
|
|
245
|
+
apiRoute: api,
|
|
246
|
+
path: `/${relation_0}`
|
|
247
|
+
}), {
|
|
245
248
|
body: qs.stringify(query),
|
|
246
249
|
credentials: 'include',
|
|
247
250
|
headers: {
|
|
@@ -294,7 +297,7 @@ export const RelationshipInput = props => {
|
|
|
294
297
|
}
|
|
295
298
|
}
|
|
296
299
|
});
|
|
297
|
-
}, [permissions, queueTask, relationTo, errorLoading, search, getEntityConfig, sortOptions, maxResultsPerRequest, locale,
|
|
300
|
+
}, [permissions, queueTask, relationTo, errorLoading, search, getEntityConfig, sortOptions, maxResultsPerRequest, locale, api, i18n, config, t]);
|
|
298
301
|
const updateSearch = useDebouncedCallback(({
|
|
299
302
|
hasMany: hasManyArg_0,
|
|
300
303
|
search: searchArg_0,
|
|
@@ -363,7 +366,10 @@ export const RelationshipInput = props => {
|
|
|
363
366
|
}
|
|
364
367
|
};
|
|
365
368
|
if (!errorLoading) {
|
|
366
|
-
const response_0 = await fetch(
|
|
369
|
+
const response_0 = await fetch(formatAdminURL({
|
|
370
|
+
apiRoute: api,
|
|
371
|
+
path: `/${relation_1}`
|
|
372
|
+
}), {
|
|
367
373
|
body: qs.stringify(query_0),
|
|
368
374
|
credentials: 'include',
|
|
369
375
|
headers: {
|