@payloadcms/ui 3.6.1-canary.ca44922 → 3.7.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/exports/client/index.js +10 -10
- package/dist/exports/client/index.js.map +4 -4
- package/dist/fields/Array/ArrayRow.d.ts +1 -0
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +41 -36
- 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 -1
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts +1 -0
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +45 -40
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +3 -1
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
- package/dist/forms/Form/fieldReducer.js +2 -1
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +12 -20
- package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.d.ts.map +1 -1
- package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
- package/dist/forms/useField/index.d.ts.map +1 -1
- package/dist/forms/useField/index.js +0 -5
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/withCondition/WatchCondition.d.ts +1 -1
- package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
- package/dist/forms/withCondition/WatchCondition.js +2 -14
- package/dist/forms/withCondition/WatchCondition.js.map +1 -1
- package/dist/hooks/useThrottledValue.d.ts +8 -0
- package/dist/hooks/useThrottledValue.d.ts.map +1 -0
- package/dist/hooks/useThrottledValue.js +21 -0
- package/dist/hooks/useThrottledValue.js.map +1 -0
- package/dist/styles.css +1 -1
- package/dist/views/Edit/Auth/index.d.ts.map +1 -1
- package/dist/views/Edit/Auth/index.js +0 -3
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -10,6 +10,7 @@ type ArrayRowProps = {
|
|
|
10
10
|
readonly fields: ClientField[];
|
|
11
11
|
readonly forceRender?: boolean;
|
|
12
12
|
readonly hasMaxRows?: boolean;
|
|
13
|
+
readonly isLoading?: boolean;
|
|
13
14
|
readonly isSortable?: boolean;
|
|
14
15
|
readonly labels: Partial<ArrayField['labels']>;
|
|
15
16
|
readonly moveRow: (fromIndex: number, toIndex: number) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArrayRow.d.ts","sourceRoot":"","sources":["../../../src/fields/Array/ArrayRow.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAGtF,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAA;
|
|
1
|
+
{"version":3,"file":"ArrayRow.d.ts","sourceRoot":"","sources":["../../../src/fields/Array/ArrayRow.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAGtF,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAA;AAUhH,OAAO,cAAc,CAAA;AAKrB,KAAK,aAAa,GAAG;IACnB,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IAC3D,QAAQ,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACzC,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAA;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IAC9C,QAAQ,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,yBAAyB,CAAA;IAC/C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9C,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAA;IACjB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CAClE,GAAG,0BAA0B,CAAA;AAE9B,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAqH5C,CAAA"}
|
|
@@ -7,14 +7,16 @@ import React from 'react';
|
|
|
7
7
|
import { ArrayAction } from '../../elements/ArrayAction/index.js';
|
|
8
8
|
import { Collapsible } from '../../elements/Collapsible/index.js';
|
|
9
9
|
import { ErrorPill } from '../../elements/ErrorPill/index.js';
|
|
10
|
+
import { ShimmerEffect } from '../../elements/ShimmerEffect/index.js';
|
|
10
11
|
import { useFormSubmitted } from '../../forms/Form/context.js';
|
|
11
12
|
import { RenderFields } from '../../forms/RenderFields/index.js';
|
|
12
13
|
import { RowLabel } from '../../forms/RowLabel/index.js';
|
|
13
|
-
import {
|
|
14
|
+
import { useThrottledValue } from '../../hooks/useThrottledValue.js';
|
|
14
15
|
import './index.scss';
|
|
16
|
+
import { useTranslation } from '../../providers/Translation/index.js';
|
|
15
17
|
const baseClass = 'array-field';
|
|
16
18
|
export const ArrayRow = t0 => {
|
|
17
|
-
const $ = _c(
|
|
19
|
+
const $ = _c(42);
|
|
18
20
|
const {
|
|
19
21
|
addRow,
|
|
20
22
|
attributes,
|
|
@@ -25,6 +27,7 @@ export const ArrayRow = t0 => {
|
|
|
25
27
|
forceRender: t1,
|
|
26
28
|
hasMaxRows,
|
|
27
29
|
isDragging,
|
|
30
|
+
isLoading: isLoadingFromProps,
|
|
28
31
|
isSortable,
|
|
29
32
|
labels,
|
|
30
33
|
listeners,
|
|
@@ -44,6 +47,7 @@ export const ArrayRow = t0 => {
|
|
|
44
47
|
transition
|
|
45
48
|
} = t0;
|
|
46
49
|
const forceRender = t1 === undefined ? false : t1;
|
|
50
|
+
const isLoading = useThrottledValue(isLoadingFromProps, 500);
|
|
47
51
|
const {
|
|
48
52
|
i18n
|
|
49
53
|
} = useTranslation();
|
|
@@ -63,29 +67,29 @@ export const ArrayRow = t0 => {
|
|
|
63
67
|
const t4 = `${parentPath.split(".").join("-")}-row-${rowIndex}`;
|
|
64
68
|
const t5 = isDragging ? 1 : undefined;
|
|
65
69
|
let t6;
|
|
66
|
-
if ($[2] !== CustomRowLabel || $[3] !== addRow || $[4] !== attributes || $[5] !== classNames || $[6] !== duplicateRow || $[7] !== errorCount || $[8] !== fallbackLabel || $[9] !== fieldHasErrors || $[10] !== fields || $[11] !== forceRender || $[12] !== hasMaxRows || $[13] !== i18n || $[14] !==
|
|
70
|
+
if ($[2] !== CustomRowLabel || $[3] !== addRow || $[4] !== attributes || $[5] !== classNames || $[6] !== duplicateRow || $[7] !== errorCount || $[8] !== fallbackLabel || $[9] !== fieldHasErrors || $[10] !== fields || $[11] !== forceRender || $[12] !== hasMaxRows || $[13] !== i18n || $[14] !== isLoading || $[15] !== isSortable || $[16] !== listeners || $[17] !== moveRow || $[18] !== parentPath || $[19] !== path || $[20] !== permissions || $[21] !== readOnly || $[22] !== removeRow || $[23] !== row.collapsed || $[24] !== row.id || $[25] !== rowCount || $[26] !== rowIndex || $[27] !== schemaPath || $[28] !== setCollapse || $[29] !== setNodeRef || $[30] !== t4 || $[31] !== t5 || $[32] !== transform || $[33] !== transition) {
|
|
67
71
|
let t7;
|
|
68
|
-
if ($[
|
|
72
|
+
if ($[35] !== errorCount || $[36] !== fieldHasErrors || $[37] !== i18n) {
|
|
69
73
|
t7 = fieldHasErrors && _jsx(ErrorPill, {
|
|
70
74
|
count: errorCount,
|
|
71
75
|
i18n,
|
|
72
76
|
withMessage: true
|
|
73
77
|
});
|
|
74
|
-
$[
|
|
75
|
-
$[
|
|
76
|
-
$[
|
|
77
|
-
$[
|
|
78
|
+
$[35] = errorCount;
|
|
79
|
+
$[36] = fieldHasErrors;
|
|
80
|
+
$[37] = i18n;
|
|
81
|
+
$[38] = t7;
|
|
78
82
|
} else {
|
|
79
|
-
t7 = $[
|
|
83
|
+
t7 = $[38];
|
|
80
84
|
}
|
|
81
85
|
let t8;
|
|
82
|
-
if ($[
|
|
86
|
+
if ($[39] !== row.id || $[40] !== setCollapse) {
|
|
83
87
|
t8 = collapsed => setCollapse(row.id, collapsed);
|
|
84
|
-
$[
|
|
85
|
-
$[
|
|
86
|
-
$[
|
|
88
|
+
$[39] = row.id;
|
|
89
|
+
$[40] = setCollapse;
|
|
90
|
+
$[41] = t8;
|
|
87
91
|
} else {
|
|
88
|
-
t8 = $[
|
|
92
|
+
t8 = $[41];
|
|
89
93
|
}
|
|
90
94
|
t6 = _jsx("div", {
|
|
91
95
|
id: t4,
|
|
@@ -124,7 +128,7 @@ export const ArrayRow = t0 => {
|
|
|
124
128
|
}),
|
|
125
129
|
isCollapsed: row.collapsed,
|
|
126
130
|
onToggle: t8,
|
|
127
|
-
children: _jsx(RenderFields, {
|
|
131
|
+
children: isLoading ? _jsx(ShimmerEffect, {}) : _jsx(RenderFields, {
|
|
128
132
|
className: `${baseClass}__fields`,
|
|
129
133
|
fields,
|
|
130
134
|
forceRender,
|
|
@@ -149,28 +153,29 @@ export const ArrayRow = t0 => {
|
|
|
149
153
|
$[11] = forceRender;
|
|
150
154
|
$[12] = hasMaxRows;
|
|
151
155
|
$[13] = i18n;
|
|
152
|
-
$[14] =
|
|
153
|
-
$[15] =
|
|
154
|
-
$[16] =
|
|
155
|
-
$[17] =
|
|
156
|
-
$[18] =
|
|
157
|
-
$[19] =
|
|
158
|
-
$[20] =
|
|
159
|
-
$[21] =
|
|
160
|
-
$[22] =
|
|
161
|
-
$[23] = row.
|
|
162
|
-
$[24] =
|
|
163
|
-
$[25] =
|
|
164
|
-
$[26] =
|
|
165
|
-
$[27] =
|
|
166
|
-
$[28] =
|
|
167
|
-
$[29] =
|
|
168
|
-
$[30] =
|
|
169
|
-
$[31] =
|
|
170
|
-
$[32] =
|
|
171
|
-
$[33] =
|
|
156
|
+
$[14] = isLoading;
|
|
157
|
+
$[15] = isSortable;
|
|
158
|
+
$[16] = listeners;
|
|
159
|
+
$[17] = moveRow;
|
|
160
|
+
$[18] = parentPath;
|
|
161
|
+
$[19] = path;
|
|
162
|
+
$[20] = permissions;
|
|
163
|
+
$[21] = readOnly;
|
|
164
|
+
$[22] = removeRow;
|
|
165
|
+
$[23] = row.collapsed;
|
|
166
|
+
$[24] = row.id;
|
|
167
|
+
$[25] = rowCount;
|
|
168
|
+
$[26] = rowIndex;
|
|
169
|
+
$[27] = schemaPath;
|
|
170
|
+
$[28] = setCollapse;
|
|
171
|
+
$[29] = setNodeRef;
|
|
172
|
+
$[30] = t4;
|
|
173
|
+
$[31] = t5;
|
|
174
|
+
$[32] = transform;
|
|
175
|
+
$[33] = transition;
|
|
176
|
+
$[34] = t6;
|
|
172
177
|
} else {
|
|
173
|
-
t6 = $[
|
|
178
|
+
t6 = $[34];
|
|
174
179
|
}
|
|
175
180
|
return t6;
|
|
176
181
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ArrayRow.js","names":["c","_c","getTranslation","React","ArrayAction","Collapsible","ErrorPill","useFormSubmitted","RenderFields","RowLabel","useTranslation","baseClass","ArrayRow","t0","$","addRow","attributes","CustomRowLabel","duplicateRow","errorCount","fields","forceRender","t1","hasMaxRows","isDragging","isSortable","labels","listeners","moveRow","parentPath","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","count","withMessage","t8","ref","style","zIndex","children","actions","index","className","collapsibleStyle","dragHandleProps","header","_jsxs","CustomComponent","label","rowNumber","onToggle","margins","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Array/ArrayRow.tsx"],"sourcesContent":["'use client'\nimport type { ArrayField, ClientField, Row, SanitizedFieldPermissions } 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 { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { RowLabel } from '../../forms/RowLabel/index.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 CustomRowLabel?: React.ReactNode\n readonly duplicateRow: (rowIndex: number) => void\n readonly errorCount: number\n readonly fields: ClientField[]\n readonly forceRender?: boolean\n readonly hasMaxRows?: 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 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} & UseDraggableSortableReturn\n\nexport const ArrayRow: React.FC<ArrayRowProps> = ({\n addRow,\n attributes,\n CustomRowLabel,\n duplicateRow,\n errorCount,\n fields,\n forceRender = false,\n hasMaxRows,\n isDragging,\n isSortable,\n labels,\n listeners,\n moveRow,\n parentPath,\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 { 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 duplicateRow={duplicateRow}\n hasMaxRows={hasMaxRows}\n index={rowIndex}\n isSortable={isSortable}\n moveRow={moveRow}\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 <RowLabel\n CustomComponent={CustomRowLabel}\n label={fallbackLabel}\n path={path}\n rowNumber={rowIndex}\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 <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 </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","CustomRowLabel","duplicateRow","errorCount","fields","forceRender","t1","hasMaxRows","isDragging","isLoading","isLoadingFromProps","isSortable","labels","listeners","moveRow","parentPath","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","count","withMessage","t8","ref","style","zIndex","children","actions","index","className","collapsibleStyle","dragHandleProps","header","_jsxs","CustomComponent","label","rowNumber","onToggle","margins","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Array/ArrayRow.tsx"],"sourcesContent":["'use client'\nimport type { ArrayField, ClientField, Row, SanitizedFieldPermissions } 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 './index.scss'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nconst baseClass = 'array-field'\n\ntype ArrayRowProps = {\n readonly addRow: (rowIndex: number) => Promise<void> | void\n readonly CustomRowLabel?: React.ReactNode\n readonly duplicateRow: (rowIndex: number) => void\n readonly errorCount: number\n readonly fields: ClientField[]\n readonly forceRender?: boolean\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 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} & UseDraggableSortableReturn\n\nexport const ArrayRow: React.FC<ArrayRowProps> = ({\n addRow,\n attributes,\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 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 duplicateRow={duplicateRow}\n hasMaxRows={hasMaxRows}\n index={rowIndex}\n isSortable={isSortable}\n moveRow={moveRow}\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 <RowLabel\n CustomComponent={CustomRowLabel}\n label={fallbackLabel}\n path={path}\n rowNumber={rowIndex}\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,KAAsB,MAAM,OAAO,CAAA;AAuB1C,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,KAAsB,MAAM,OAAO,CAAA;AAuB1C,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,mBAAmB,EAAE,yBAiUjC,CAAA;AAED,eAAO,MAAM,UAAU;;;;+EAAqC,CAAA"}
|
|
@@ -441,7 +441,8 @@ export const ArrayFieldComponent = props => {
|
|
|
441
441
|
},
|
|
442
442
|
children: [rowsData.map((rowData, i) => {
|
|
443
443
|
const {
|
|
444
|
-
id: rowID_0
|
|
444
|
+
id: rowID_0,
|
|
445
|
+
isLoading
|
|
445
446
|
} = rowData;
|
|
446
447
|
const rowPath = `${path}.${i}`;
|
|
447
448
|
const rowErrorCount = errorPaths?.filter(errorPath => errorPath.startsWith(rowPath + ".")).length;
|
|
@@ -457,6 +458,7 @@ export const ArrayFieldComponent = props => {
|
|
|
457
458
|
fields,
|
|
458
459
|
forceRender,
|
|
459
460
|
hasMaxRows,
|
|
461
|
+
isLoading,
|
|
460
462
|
isSortable,
|
|
461
463
|
labels,
|
|
462
464
|
moveRow,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useCallback","Banner","Button","DraggableSortableItem","DraggableSortable","ErrorPill","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","useField","withCondition","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","fieldBaseClass","ArrayRow","baseClass","ArrayFieldComponent","props","$","field","t0","forceRender","t1","path","permissions","readOnly","schemaPath","schemaPathFromProps","validate","name","admin","t2","fields","label","localized","maxRows","minRows","minRowsProp","required","t3","undefined","className","description","isSortable","t4","setDocFieldPreferences","addFieldRow","dispatchFields","setModified","submitted","code","locale","i18n","t","config","t5","localization","t6","bb0","fallback","defaultLocale","editingDefaultLocale","t7","p","labels","plural","singular","getLabels","t8","value","options","memoizedValidate","t9","hasRows","customComponents","t10","errorPaths","rows","t11","showError","valid","value_0","t12","AfterInput","BeforeInput","Description","Error","Label","RowLabels","t13","rowsData","t14","rowIndex","setTimeout","addRow","t15","rowIndex_0","type","duplicateRow","t16","rowIndex_1","removeRow","t17","moveFromIndex","moveToIndex","moveRow","t18","collapsed","collapsedIDs","updatedRows","toggleCollapseAll","t19","rowID","collapsed_0","collapsedIDs_0","updatedRows_0","setCollapse","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showRequired","showMinRows","t20","t21","filter","Boolean","t22","_jsx","CustomComponent","Fallback","t23","count","withMessage","_jsxs","join","id","replace","children","as","onClick","fieldValue","ids","map","_temp","onDragEnd","t24","moveFromIndex_0","moveToIndex_0","rowData","i","rowID_0","rowPath","rowErrorCount","errorPath","startsWith","disabled","draggableSortableItemProps","CustomRowLabel","errorCount","parentPath","row","rowCount","Fragment","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, { useCallback } from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.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 { 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 name,\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,\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 { addFieldRow, dispatchFields, setModified } = 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 || 'en'\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, RowLabels } = {},\n errorPaths,\n rows: rowsData = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n path,\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 dispatchFields({ type: 'REMOVE_ROW', path, rowIndex })\n setModified(true)\n },\n [dispatchFields, path, setModified],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n dispatchFields({ type: 'MOVE_ROW', moveFromIndex, moveToIndex, path })\n setModified(true)\n },\n [dispatchFields, path, setModified],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows: rowsData,\n })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n },\n [dispatchFields, path, rowsData, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows: rowsData,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rowsData, setDocFieldPreferences],\n )\n\n const hasMaxRows = maxRows && rowsData.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && errorPaths.length > 0\n\n const showRequired = readOnly && rowsData.length === 0\n const showMinRows = rowsData.length < minRows || (required && rowsData.length === 0)\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 >\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 {rowsData?.length > 0 && (\n <ul className={`${baseClass}__header-actions`}>\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 </ul>\n )}\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n <NullifyLocaleField fieldValue={value} localized={localized} path={path} />\n {BeforeInput}\n {(rowsData?.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__draggable-rows`}\n ids={rowsData.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n >\n {rowsData.map((rowData, i) => {\n const { id: rowID } = 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 disabled={readOnly || !isSortable} id={rowID} key={rowID}>\n {(draggableSortableItemProps) => (\n <ArrayRow\n {...draggableSortableItemProps}\n addRow={addRow}\n CustomRowLabel={RowLabels?.[i]}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={fields}\n forceRender={forceRender}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly}\n removeRow={removeRow}\n row={rowData}\n rowCount={rowsData?.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 && (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-row`}\n disabled={readOnly}\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
|
+
{"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useCallback","Banner","Button","DraggableSortableItem","DraggableSortable","ErrorPill","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","useField","withCondition","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","fieldBaseClass","ArrayRow","baseClass","ArrayFieldComponent","props","$","field","t0","forceRender","t1","path","permissions","readOnly","schemaPath","schemaPathFromProps","validate","name","admin","t2","fields","label","localized","maxRows","minRows","minRowsProp","required","t3","undefined","className","description","isSortable","t4","setDocFieldPreferences","addFieldRow","dispatchFields","setModified","submitted","code","locale","i18n","t","config","t5","localization","t6","bb0","fallback","defaultLocale","editingDefaultLocale","t7","p","labels","plural","singular","getLabels","t8","value","options","memoizedValidate","t9","hasRows","customComponents","t10","errorPaths","rows","t11","showError","valid","value_0","t12","AfterInput","BeforeInput","Description","Error","Label","RowLabels","t13","rowsData","t14","rowIndex","setTimeout","addRow","t15","rowIndex_0","type","duplicateRow","t16","rowIndex_1","removeRow","t17","moveFromIndex","moveToIndex","moveRow","t18","collapsed","collapsedIDs","updatedRows","toggleCollapseAll","t19","rowID","collapsed_0","collapsedIDs_0","updatedRows_0","setCollapse","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showRequired","showMinRows","t20","t21","filter","Boolean","t22","_jsx","CustomComponent","Fallback","t23","count","withMessage","_jsxs","join","id","replace","children","as","onClick","fieldValue","ids","map","_temp","onDragEnd","t24","moveFromIndex_0","moveToIndex_0","rowData","i","rowID_0","isLoading","rowPath","rowErrorCount","errorPath","startsWith","disabled","draggableSortableItemProps","CustomRowLabel","errorCount","parentPath","row","rowCount","Fragment","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, { useCallback } from 'react'\n\nimport { Banner } from '../../elements/Banner/index.js'\nimport { Button } from '../../elements/Button/index.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 { 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 name,\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,\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 { addFieldRow, dispatchFields, setModified } = 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 || 'en'\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, RowLabels } = {},\n errorPaths,\n rows: rowsData = [],\n showError,\n valid,\n value,\n } = useField<number>({\n hasRows: true,\n path,\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 dispatchFields({ type: 'REMOVE_ROW', path, rowIndex })\n setModified(true)\n },\n [dispatchFields, path, setModified],\n )\n\n const moveRow = useCallback(\n (moveFromIndex: number, moveToIndex: number) => {\n dispatchFields({ type: 'MOVE_ROW', moveFromIndex, moveToIndex, path })\n setModified(true)\n },\n [dispatchFields, path, setModified],\n )\n\n const toggleCollapseAll = useCallback(\n (collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = toggleAllRows({\n collapsed,\n rows: rowsData,\n })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n },\n [dispatchFields, path, rowsData, setDocFieldPreferences],\n )\n\n const setCollapse = useCallback(\n (rowID: string, collapsed: boolean) => {\n const { collapsedIDs, updatedRows } = extractRowsAndCollapsedIDs({\n collapsed,\n rowID,\n rows: rowsData,\n })\n\n dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rowsData, setDocFieldPreferences],\n )\n\n const hasMaxRows = maxRows && rowsData.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && errorPaths.length > 0\n\n const showRequired = readOnly && rowsData.length === 0\n const showMinRows = rowsData.length < minRows || (required && rowsData.length === 0)\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 >\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 {rowsData?.length > 0 && (\n <ul className={`${baseClass}__header-actions`}>\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 </ul>\n )}\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </header>\n <NullifyLocaleField fieldValue={value} localized={localized} path={path} />\n {BeforeInput}\n {(rowsData?.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__draggable-rows`}\n ids={rowsData.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n >\n {rowsData.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 disabled={readOnly || !isSortable} id={rowID} key={rowID}>\n {(draggableSortableItemProps) => (\n <ArrayRow\n {...draggableSortableItemProps}\n addRow={addRow}\n CustomRowLabel={RowLabels?.[i]}\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 path={rowPath}\n permissions={permissions}\n readOnly={readOnly}\n removeRow={removeRow}\n row={rowData}\n rowCount={rowsData?.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 && (\n <Button\n buttonStyle=\"icon-label\"\n className={`${baseClass}__add-row`}\n disabled={readOnly}\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":"BlockRow.d.ts","sourceRoot":"","sources":["../../../src/fields/Blocks/BlockRow.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"BlockRow.d.ts","sourceRoot":"","sources":["../../../src/fields/Blocks/BlockRow.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAA;AAG/F,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAA;AAgBhH,KAAK,gBAAgB,GAAG;IACtB,MAAM,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACrE,KAAK,EAAE,WAAW,CAAA;IAClB,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACxC,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;IACrD,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,yBAAyB,CAAA;IACtC,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACrC,GAAG,EAAE,GAAG,CAAA;IACR,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;CACtD,GAAG,0BAA0B,CAAA;AAE9B,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAoI/C,CAAA"}
|
|
@@ -7,14 +7,16 @@ import React from 'react';
|
|
|
7
7
|
import { Collapsible } from '../../elements/Collapsible/index.js';
|
|
8
8
|
import { ErrorPill } from '../../elements/ErrorPill/index.js';
|
|
9
9
|
import { Pill } from '../../elements/Pill/index.js';
|
|
10
|
+
import { ShimmerEffect } from '../../elements/ShimmerEffect/index.js';
|
|
10
11
|
import { useFormSubmitted } from '../../forms/Form/context.js';
|
|
11
12
|
import { RenderFields } from '../../forms/RenderFields/index.js';
|
|
13
|
+
import { useThrottledValue } from '../../hooks/useThrottledValue.js';
|
|
12
14
|
import { useTranslation } from '../../providers/Translation/index.js';
|
|
13
15
|
import { RowActions } from './RowActions.js';
|
|
14
16
|
import { SectionTitle } from './SectionTitle/index.js';
|
|
15
17
|
const baseClass = 'blocks-field';
|
|
16
18
|
export const BlockRow = t0 => {
|
|
17
|
-
const $ = _c(
|
|
19
|
+
const $ = _c(48);
|
|
18
20
|
const {
|
|
19
21
|
addRow,
|
|
20
22
|
attributes,
|
|
@@ -24,6 +26,7 @@ export const BlockRow = t0 => {
|
|
|
24
26
|
errorCount,
|
|
25
27
|
fields,
|
|
26
28
|
hasMaxRows,
|
|
29
|
+
isLoading: isLoadingFromProps,
|
|
27
30
|
isSortable,
|
|
28
31
|
Label,
|
|
29
32
|
labels,
|
|
@@ -42,6 +45,7 @@ export const BlockRow = t0 => {
|
|
|
42
45
|
setNodeRef,
|
|
43
46
|
transform
|
|
44
47
|
} = t0;
|
|
48
|
+
const isLoading = useThrottledValue(isLoadingFromProps, 500);
|
|
45
49
|
const {
|
|
46
50
|
i18n
|
|
47
51
|
} = useTranslation();
|
|
@@ -70,9 +74,9 @@ export const BlockRow = t0 => {
|
|
|
70
74
|
}
|
|
71
75
|
const t3 = `${parentPath?.split(".").join("-")}-row-${rowIndex}`;
|
|
72
76
|
let t4;
|
|
73
|
-
if ($[2] !== Label || $[3] !== addRow || $[4] !== attributes || $[5] !== block || $[6] !== blockPermissions || $[7] !== blocks || $[8] !== classNames || $[9] !== duplicateRow || $[10] !== errorCount || $[11] !== fieldHasErrors || $[12] !== fields || $[13] !== hasMaxRows || $[14] !== i18n || $[15] !==
|
|
77
|
+
if ($[2] !== Label || $[3] !== addRow || $[4] !== attributes || $[5] !== block || $[6] !== blockPermissions || $[7] !== blocks || $[8] !== classNames || $[9] !== duplicateRow || $[10] !== errorCount || $[11] !== fieldHasErrors || $[12] !== fields || $[13] !== hasMaxRows || $[14] !== i18n || $[15] !== isLoading || $[16] !== isSortable || $[17] !== labels || $[18] !== listeners || $[19] !== moveRow || $[20] !== parentPath || $[21] !== path || $[22] !== readOnly || $[23] !== removeRow || $[24] !== row.blockType || $[25] !== row.collapsed || $[26] !== row.id || $[27] !== rowCount || $[28] !== rowIndex || $[29] !== schemaPath || $[30] !== setCollapse || $[31] !== setNodeRef || $[32] !== t3 || $[33] !== transform) {
|
|
74
78
|
let t5;
|
|
75
|
-
if ($[
|
|
79
|
+
if ($[35] !== Label || $[36] !== block || $[37] !== errorCount || $[38] !== fieldHasErrors || $[39] !== i18n || $[40] !== path || $[41] !== readOnly || $[42] !== row.blockType || $[43] !== rowIndex) {
|
|
76
80
|
t5 = Label || _jsxs("div", {
|
|
77
81
|
className: `${baseClass}__block-header`,
|
|
78
82
|
children: [_jsx("span", {
|
|
@@ -91,27 +95,27 @@ export const BlockRow = t0 => {
|
|
|
91
95
|
withMessage: true
|
|
92
96
|
})]
|
|
93
97
|
});
|
|
94
|
-
$[
|
|
95
|
-
$[
|
|
96
|
-
$[
|
|
97
|
-
$[
|
|
98
|
-
$[
|
|
99
|
-
$[
|
|
100
|
-
$[
|
|
101
|
-
$[
|
|
102
|
-
$[
|
|
103
|
-
$[
|
|
98
|
+
$[35] = Label;
|
|
99
|
+
$[36] = block;
|
|
100
|
+
$[37] = errorCount;
|
|
101
|
+
$[38] = fieldHasErrors;
|
|
102
|
+
$[39] = i18n;
|
|
103
|
+
$[40] = path;
|
|
104
|
+
$[41] = readOnly;
|
|
105
|
+
$[42] = row.blockType;
|
|
106
|
+
$[43] = rowIndex;
|
|
107
|
+
$[44] = t5;
|
|
104
108
|
} else {
|
|
105
|
-
t5 = $[
|
|
109
|
+
t5 = $[44];
|
|
106
110
|
}
|
|
107
111
|
let t6;
|
|
108
|
-
if ($[
|
|
112
|
+
if ($[45] !== row.id || $[46] !== setCollapse) {
|
|
109
113
|
t6 = collapsed => setCollapse(row.id, collapsed);
|
|
110
|
-
$[
|
|
111
|
-
$[
|
|
112
|
-
$[
|
|
114
|
+
$[45] = row.id;
|
|
115
|
+
$[46] = setCollapse;
|
|
116
|
+
$[47] = t6;
|
|
113
117
|
} else {
|
|
114
|
-
t6 = $[
|
|
118
|
+
t6 = $[47];
|
|
115
119
|
}
|
|
116
120
|
t4 = _jsx("div", {
|
|
117
121
|
id: t3,
|
|
@@ -144,7 +148,7 @@ export const BlockRow = t0 => {
|
|
|
144
148
|
header: t5,
|
|
145
149
|
isCollapsed: row.collapsed,
|
|
146
150
|
onToggle: t6,
|
|
147
|
-
children: _jsx(RenderFields, {
|
|
151
|
+
children: isLoading ? _jsx(ShimmerEffect, {}) : _jsx(RenderFields, {
|
|
148
152
|
className: `${baseClass}__fields`,
|
|
149
153
|
fields,
|
|
150
154
|
margins: "small",
|
|
@@ -169,27 +173,28 @@ export const BlockRow = t0 => {
|
|
|
169
173
|
$[12] = fields;
|
|
170
174
|
$[13] = hasMaxRows;
|
|
171
175
|
$[14] = i18n;
|
|
172
|
-
$[15] =
|
|
173
|
-
$[16] =
|
|
174
|
-
$[17] =
|
|
175
|
-
$[18] =
|
|
176
|
-
$[19] =
|
|
177
|
-
$[20] =
|
|
178
|
-
$[21] =
|
|
179
|
-
$[22] =
|
|
180
|
-
$[23] =
|
|
181
|
-
$[24] = row.
|
|
182
|
-
$[25] = row.
|
|
183
|
-
$[26] =
|
|
184
|
-
$[27] =
|
|
185
|
-
$[28] =
|
|
186
|
-
$[29] =
|
|
187
|
-
$[30] =
|
|
188
|
-
$[31] =
|
|
189
|
-
$[32] =
|
|
190
|
-
$[33] =
|
|
176
|
+
$[15] = isLoading;
|
|
177
|
+
$[16] = isSortable;
|
|
178
|
+
$[17] = labels;
|
|
179
|
+
$[18] = listeners;
|
|
180
|
+
$[19] = moveRow;
|
|
181
|
+
$[20] = parentPath;
|
|
182
|
+
$[21] = path;
|
|
183
|
+
$[22] = readOnly;
|
|
184
|
+
$[23] = removeRow;
|
|
185
|
+
$[24] = row.blockType;
|
|
186
|
+
$[25] = row.collapsed;
|
|
187
|
+
$[26] = row.id;
|
|
188
|
+
$[27] = rowCount;
|
|
189
|
+
$[28] = rowIndex;
|
|
190
|
+
$[29] = schemaPath;
|
|
191
|
+
$[30] = setCollapse;
|
|
192
|
+
$[31] = setNodeRef;
|
|
193
|
+
$[32] = t3;
|
|
194
|
+
$[33] = transform;
|
|
195
|
+
$[34] = t4;
|
|
191
196
|
} else {
|
|
192
|
-
t4 = $[
|
|
197
|
+
t4 = $[34];
|
|
193
198
|
}
|
|
194
199
|
return t4;
|
|
195
200
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockRow.js","names":["c","_c","getTranslation","React","Collapsible","ErrorPill","Pill","useFormSubmitted","RenderFields","useTranslation","RowActions","SectionTitle","baseClass","BlockRow","t0","$","addRow","attributes","block","blocks","duplicateRow","errorCount","fields","hasMaxRows","isSortable","Label","labels","listeners","moveRow","parentPath","path","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","setNodeRef","transform","i18n","hasSubmitted","fieldHasErrors","t1","t2","filter","Boolean","classNames","join","blockPermissions","permissionsBlockSpecific","slug","t3","split","t4","blockType","collapsed","id","t5","_jsxs","className","children","_jsx","String","padStart","pillStyle","singular","count","withMessage","t6","ref","style","actions","collapsibleStyle","dragHandleProps","undefined","header","onToggle","margins","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Blocks/BlockRow.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientBlock,\n ClientField,\n Labels,\n Row,\n SanitizedFieldPermissions,\n SanitizedFieldsPermissions,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\nimport type { RenderFieldsProps } from '../../forms/RenderFields/types.js'\n\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { Pill } from '../../elements/Pill/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { RowActions } from './RowActions.js'\nimport { SectionTitle } from './SectionTitle/index.js'\n\nconst baseClass = 'blocks-field'\n\ntype BlocksFieldProps = {\n addRow: (rowIndex: number, blockType: string) => Promise<void> | void\n block: ClientBlock\n blocks: ClientBlock[]\n duplicateRow: (rowIndex: number) => void\n errorCount: number\n fields: ClientField[]\n hasMaxRows?: boolean\n isSortable?: boolean\n Label?: React.ReactNode\n labels: Labels\n moveRow: (fromIndex: number, toIndex: number) => void\n parentPath: string\n path: string\n permissions: SanitizedFieldPermissions\n readOnly: boolean\n removeRow: (rowIndex: number) => void\n row: Row\n rowCount: number\n rowIndex: number\n schemaPath: string\n setCollapse: (id: string, collapsed: boolean) => void\n} & UseDraggableSortableReturn\n\nexport const BlockRow: React.FC<BlocksFieldProps> = ({\n addRow,\n attributes,\n block,\n blocks,\n duplicateRow,\n errorCount,\n fields,\n hasMaxRows,\n isSortable,\n Label,\n labels,\n listeners,\n moveRow,\n parentPath,\n path,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n setNodeRef,\n transform,\n}) => {\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const fieldHasErrors = hasSubmitted && errorCount > 0\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 let blockPermissions: RenderFieldsProps['permissions'] = undefined\n\n if (permissions === true) {\n blockPermissions = true\n } else {\n const permissionsBlockSpecific = permissions?.blocks?.[block.slug]\n if (permissionsBlockSpecific === true) {\n blockPermissions = true\n } else {\n blockPermissions = permissionsBlockSpecific?.fields\n }\n }\n\n return (\n <div\n id={`${parentPath?.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${rowIndex}`}\n ref={setNodeRef}\n style={{\n transform,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <RowActions\n addRow={addRow}\n blocks={blocks}\n blockType={row.blockType}\n duplicateRow={duplicateRow}\n fields={block.fields}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n removeRow={removeRow}\n rowCount={rowCount}\n rowIndex={rowIndex}\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 Label || (\n <div className={`${baseClass}__block-header`}>\n <span className={`${baseClass}__block-number`}>\n {String(rowIndex + 1).padStart(2, '0')}\n </span>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${row.blockType}`}\n pillStyle=\"white\"\n >\n {getTranslation(block.labels.singular, i18n)}\n </Pill>\n <SectionTitle path={`${path}.blockName`} readOnly={readOnly} />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n )\n }\n isCollapsed={row.collapsed}\n key={row.id}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n margins=\"small\"\n parentIndexPath=\"\"\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={blockPermissions}\n readOnly={readOnly}\n />\n </Collapsible>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"BlockRow.js","names":["c","_c","getTranslation","React","Collapsible","ErrorPill","Pill","ShimmerEffect","useFormSubmitted","RenderFields","useThrottledValue","useTranslation","RowActions","SectionTitle","baseClass","BlockRow","t0","$","addRow","attributes","block","blocks","duplicateRow","errorCount","fields","hasMaxRows","isLoading","isLoadingFromProps","isSortable","Label","labels","listeners","moveRow","parentPath","path","permissions","readOnly","removeRow","row","rowCount","rowIndex","schemaPath","setCollapse","setNodeRef","transform","i18n","hasSubmitted","fieldHasErrors","t1","t2","filter","Boolean","classNames","join","blockPermissions","permissionsBlockSpecific","slug","t3","split","t4","blockType","collapsed","id","t5","_jsxs","className","children","_jsx","String","padStart","pillStyle","singular","count","withMessage","t6","ref","style","actions","collapsibleStyle","dragHandleProps","undefined","header","onToggle","margins","parentIndexPath","parentSchemaPath"],"sources":["../../../src/fields/Blocks/BlockRow.tsx"],"sourcesContent":["'use client'\nimport type { ClientBlock, ClientField, Labels, Row, SanitizedFieldPermissions } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { UseDraggableSortableReturn } from '../../elements/DraggableSortable/useDraggableSortable/types.js'\nimport type { RenderFieldsProps } from '../../forms/RenderFields/types.js'\n\nimport { Collapsible } from '../../elements/Collapsible/index.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { Pill } from '../../elements/Pill/index.js'\nimport { ShimmerEffect } from '../../elements/ShimmerEffect/index.js'\nimport { useFormSubmitted } from '../../forms/Form/context.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { useThrottledValue } from '../../hooks/useThrottledValue.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { RowActions } from './RowActions.js'\nimport { SectionTitle } from './SectionTitle/index.js'\n\nconst baseClass = 'blocks-field'\n\ntype BlocksFieldProps = {\n addRow: (rowIndex: number, blockType: string) => Promise<void> | void\n block: ClientBlock\n blocks: ClientBlock[]\n duplicateRow: (rowIndex: number) => void\n errorCount: number\n fields: ClientField[]\n hasMaxRows?: boolean\n isLoading?: boolean\n isSortable?: boolean\n Label?: React.ReactNode\n labels: Labels\n moveRow: (fromIndex: number, toIndex: number) => void\n parentPath: string\n path: string\n permissions: SanitizedFieldPermissions\n readOnly: boolean\n removeRow: (rowIndex: number) => void\n row: Row\n rowCount: number\n rowIndex: number\n schemaPath: string\n setCollapse: (id: string, collapsed: boolean) => void\n} & UseDraggableSortableReturn\n\nexport const BlockRow: React.FC<BlocksFieldProps> = ({\n addRow,\n attributes,\n block,\n blocks,\n duplicateRow,\n errorCount,\n fields,\n hasMaxRows,\n isLoading: isLoadingFromProps,\n isSortable,\n Label,\n labels,\n listeners,\n moveRow,\n parentPath,\n path,\n permissions,\n readOnly,\n removeRow,\n row,\n rowCount,\n rowIndex,\n schemaPath,\n setCollapse,\n setNodeRef,\n transform,\n}) => {\n const isLoading = useThrottledValue(isLoadingFromProps, 500)\n\n const { i18n } = useTranslation()\n const hasSubmitted = useFormSubmitted()\n\n const fieldHasErrors = hasSubmitted && errorCount > 0\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 let blockPermissions: RenderFieldsProps['permissions'] = undefined\n\n if (permissions === true) {\n blockPermissions = true\n } else {\n const permissionsBlockSpecific = permissions?.blocks?.[block.slug]\n if (permissionsBlockSpecific === true) {\n blockPermissions = true\n } else {\n blockPermissions = permissionsBlockSpecific?.fields\n }\n }\n\n return (\n <div\n id={`${parentPath?.split('.').join('-')}-row-${rowIndex}`}\n key={`${parentPath}-row-${rowIndex}`}\n ref={setNodeRef}\n style={{\n transform,\n }}\n >\n <Collapsible\n actions={\n !readOnly ? (\n <RowActions\n addRow={addRow}\n blocks={blocks}\n blockType={row.blockType}\n duplicateRow={duplicateRow}\n fields={block.fields}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n labels={labels}\n moveRow={moveRow}\n removeRow={removeRow}\n rowCount={rowCount}\n rowIndex={rowIndex}\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 Label || (\n <div className={`${baseClass}__block-header`}>\n <span className={`${baseClass}__block-number`}>\n {String(rowIndex + 1).padStart(2, '0')}\n </span>\n <Pill\n className={`${baseClass}__block-pill ${baseClass}__block-pill-${row.blockType}`}\n pillStyle=\"white\"\n >\n {getTranslation(block.labels.singular, i18n)}\n </Pill>\n <SectionTitle path={`${path}.blockName`} readOnly={readOnly} />\n {fieldHasErrors && <ErrorPill count={errorCount} i18n={i18n} withMessage />}\n </div>\n )\n }\n isCollapsed={row.collapsed}\n key={row.id}\n onToggle={(collapsed) => setCollapse(row.id, collapsed)}\n >\n {isLoading ? (\n <ShimmerEffect />\n ) : (\n <RenderFields\n className={`${baseClass}__fields`}\n fields={fields}\n margins=\"small\"\n parentIndexPath=\"\"\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={blockPermissions}\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/Blocks/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAgC,MAAM,OAAO,CAAA;AA0BpD,OAAO,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Blocks/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAgC,MAAM,OAAO,CAAA;AA0BpD,OAAO,cAAc,CAAA;AAyUrB,eAAO,MAAM,WAAW;;;;+EAAsC,CAAA"}
|
|
@@ -417,7 +417,8 @@ const BlocksFieldComponent = props => {
|
|
|
417
417
|
},
|
|
418
418
|
children: [rows.map((row_0, i) => {
|
|
419
419
|
const {
|
|
420
|
-
blockType: blockType_0
|
|
420
|
+
blockType: blockType_0,
|
|
421
|
+
isLoading
|
|
421
422
|
} = row_0;
|
|
422
423
|
const blockConfig = blocks.find(block => block.slug === blockType_0);
|
|
423
424
|
if (blockConfig) {
|
|
@@ -435,6 +436,7 @@ const BlocksFieldComponent = props => {
|
|
|
435
436
|
errorCount: rowErrorCount,
|
|
436
437
|
fields: blockConfig.fields,
|
|
437
438
|
hasMaxRows,
|
|
439
|
+
isLoading,
|
|
438
440
|
isSortable,
|
|
439
441
|
Label,
|
|
440
442
|
labels,
|