@payloadcms/ui 3.0.0 → 3.0.1-canary.d23ede3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/elements/RenderServerComponent/index.d.ts +8 -5
  2. package/dist/elements/RenderServerComponent/index.d.ts.map +1 -1
  3. package/dist/elements/RenderServerComponent/index.js +14 -11
  4. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  5. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  6. package/dist/elements/TableColumns/buildColumnState.js +6 -20
  7. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  8. package/dist/elements/WithServerSideProps/index.js +1 -3
  9. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  10. package/dist/exports/client/index.js +10 -10
  11. package/dist/exports/client/index.js.map +4 -4
  12. package/dist/exports/shared/index.js +2 -2
  13. package/dist/exports/shared/index.js.map +2 -2
  14. package/dist/fields/Array/index.d.ts.map +1 -1
  15. package/dist/fields/Array/index.js +53 -55
  16. package/dist/fields/Array/index.js.map +1 -1
  17. package/dist/fields/Blocks/index.d.ts.map +1 -1
  18. package/dist/fields/Blocks/index.js +53 -55
  19. package/dist/fields/Blocks/index.js.map +1 -1
  20. package/dist/forms/Form/index.d.ts.map +1 -1
  21. package/dist/forms/Form/index.js +2 -0
  22. package/dist/forms/Form/index.js.map +1 -1
  23. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  24. package/dist/forms/fieldSchemasToFormState/renderField.js +42 -50
  25. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  26. package/dist/utilities/renderTable.js +2 -2
  27. package/dist/utilities/renderTable.js.map +1 -1
  28. package/dist/views/List/index.d.ts.map +1 -1
  29. package/dist/views/List/index.js +25 -5
  30. package/dist/views/List/index.js.map +1 -1
  31. package/package.json +5 -5
@@ -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","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 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: { 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 setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath, setModified],\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 {(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 </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","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: { 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 {(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 </div>\n )\n}\n\nexport const ArrayField = withCondition(ArrayFieldComponent)\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;AAoUrB,eAAO,MAAM,WAAW;;;;+EAAsC,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;AAkUrB,eAAO,MAAM,WAAW;;;;+EAAsC,CAAA"}
@@ -31,7 +31,7 @@ import { BlocksDrawer } from './BlocksDrawer/index.js';
31
31
  import './index.scss';
32
32
  const baseClass = 'blocks-field';
33
33
  const BlocksFieldComponent = props => {
34
- const $ = _c(53);
34
+ const $ = _c(52);
35
35
  const {
36
36
  i18n,
37
37
  t
@@ -174,7 +174,7 @@ const BlocksFieldComponent = props => {
174
174
  }
175
175
  const rows = t11;
176
176
  let t12;
177
- if ($[15] !== addFieldRow || $[16] !== path || $[17] !== schemaPath || $[18] !== setModified) {
177
+ if ($[15] !== addFieldRow || $[16] !== path || $[17] !== schemaPath) {
178
178
  t12 = (rowIndex, blockType) => {
179
179
  addFieldRow({
180
180
  blockType,
@@ -182,7 +182,6 @@ const BlocksFieldComponent = props => {
182
182
  rowIndex,
183
183
  schemaPath
184
184
  });
185
- setModified(true);
186
185
  setTimeout(() => {
187
186
  scrollToID(`${path}-row-${rowIndex + 1}`);
188
187
  }, 0);
@@ -190,14 +189,13 @@ const BlocksFieldComponent = props => {
190
189
  $[15] = addFieldRow;
191
190
  $[16] = path;
192
191
  $[17] = schemaPath;
193
- $[18] = setModified;
194
- $[19] = t12;
192
+ $[18] = t12;
195
193
  } else {
196
- t12 = $[19];
194
+ t12 = $[18];
197
195
  }
198
196
  const addRow = t12;
199
197
  let t13;
200
- if ($[20] !== dispatchFields || $[21] !== path || $[22] !== setModified) {
198
+ if ($[19] !== dispatchFields || $[20] !== path || $[21] !== setModified) {
201
199
  t13 = rowIndex_0 => {
202
200
  dispatchFields({
203
201
  type: "DUPLICATE_ROW",
@@ -209,16 +207,16 @@ const BlocksFieldComponent = props => {
209
207
  scrollToID(`${path}-row-${rowIndex_0 + 1}`);
210
208
  }, 0);
211
209
  };
212
- $[20] = dispatchFields;
213
- $[21] = path;
214
- $[22] = setModified;
215
- $[23] = t13;
210
+ $[19] = dispatchFields;
211
+ $[20] = path;
212
+ $[21] = setModified;
213
+ $[22] = t13;
216
214
  } else {
217
- t13 = $[23];
215
+ t13 = $[22];
218
216
  }
219
217
  const duplicateRow = t13;
220
218
  let t14;
221
- if ($[24] !== dispatchFields || $[25] !== path || $[26] !== setModified) {
219
+ if ($[23] !== dispatchFields || $[24] !== path || $[25] !== setModified) {
222
220
  t14 = rowIndex_1 => {
223
221
  dispatchFields({
224
222
  type: "REMOVE_ROW",
@@ -227,16 +225,16 @@ const BlocksFieldComponent = props => {
227
225
  });
228
226
  setModified(true);
229
227
  };
230
- $[24] = dispatchFields;
231
- $[25] = path;
232
- $[26] = setModified;
233
- $[27] = t14;
228
+ $[23] = dispatchFields;
229
+ $[24] = path;
230
+ $[25] = setModified;
231
+ $[26] = t14;
234
232
  } else {
235
- t14 = $[27];
233
+ t14 = $[26];
236
234
  }
237
235
  const removeRow = t14;
238
236
  let t15;
239
- if ($[28] !== dispatchFields || $[29] !== path || $[30] !== setModified) {
237
+ if ($[27] !== dispatchFields || $[28] !== path || $[29] !== setModified) {
240
238
  t15 = (moveFromIndex, moveToIndex) => {
241
239
  dispatchFields({
242
240
  type: "MOVE_ROW",
@@ -246,16 +244,16 @@ const BlocksFieldComponent = props => {
246
244
  });
247
245
  setModified(true);
248
246
  };
249
- $[28] = dispatchFields;
250
- $[29] = path;
251
- $[30] = setModified;
252
- $[31] = t15;
247
+ $[27] = dispatchFields;
248
+ $[28] = path;
249
+ $[29] = setModified;
250
+ $[30] = t15;
253
251
  } else {
254
- t15 = $[31];
252
+ t15 = $[30];
255
253
  }
256
254
  const moveRow = t15;
257
255
  let t16;
258
- if ($[32] !== rows || $[33] !== dispatchFields || $[34] !== path || $[35] !== setDocFieldPreferences) {
256
+ if ($[31] !== rows || $[32] !== dispatchFields || $[33] !== path || $[34] !== setDocFieldPreferences) {
259
257
  t16 = collapsed => {
260
258
  const {
261
259
  collapsedIDs,
@@ -273,17 +271,17 @@ const BlocksFieldComponent = props => {
273
271
  collapsed: collapsedIDs
274
272
  });
275
273
  };
276
- $[32] = rows;
277
- $[33] = dispatchFields;
278
- $[34] = path;
279
- $[35] = setDocFieldPreferences;
280
- $[36] = t16;
274
+ $[31] = rows;
275
+ $[32] = dispatchFields;
276
+ $[33] = path;
277
+ $[34] = setDocFieldPreferences;
278
+ $[35] = t16;
281
279
  } else {
282
- t16 = $[36];
280
+ t16 = $[35];
283
281
  }
284
282
  const toggleCollapseAll = t16;
285
283
  let t17;
286
- if ($[37] !== rows || $[38] !== dispatchFields || $[39] !== path || $[40] !== setDocFieldPreferences) {
284
+ if ($[36] !== rows || $[37] !== dispatchFields || $[38] !== path || $[39] !== setDocFieldPreferences) {
287
285
  t17 = (rowID, collapsed_0) => {
288
286
  const {
289
287
  collapsedIDs: collapsedIDs_0,
@@ -302,13 +300,13 @@ const BlocksFieldComponent = props => {
302
300
  collapsed: collapsedIDs_0
303
301
  });
304
302
  };
305
- $[37] = rows;
306
- $[38] = dispatchFields;
307
- $[39] = path;
308
- $[40] = setDocFieldPreferences;
309
- $[41] = t17;
303
+ $[36] = rows;
304
+ $[37] = dispatchFields;
305
+ $[38] = path;
306
+ $[39] = setDocFieldPreferences;
307
+ $[40] = t17;
310
308
  } else {
311
- t17 = $[41];
309
+ t17 = $[40];
312
310
  }
313
311
  const setCollapse = t17;
314
312
  const hasMaxRows = maxRows && rows.length >= maxRows;
@@ -318,16 +316,16 @@ const BlocksFieldComponent = props => {
318
316
  const showRequired = readOnly && rows.length === 0;
319
317
  const t18 = fieldHasErrors ? `${baseClass}--has-error` : `${baseClass}--has-no-error`;
320
318
  let t19;
321
- if ($[42] !== className || $[43] !== t18) {
319
+ if ($[41] !== className || $[42] !== t18) {
322
320
  t19 = [fieldBaseClass, baseClass, className, t18].filter(Boolean);
323
- $[42] = className;
324
- $[43] = t18;
325
- $[44] = t19;
321
+ $[41] = className;
322
+ $[42] = t18;
323
+ $[43] = t19;
326
324
  } else {
327
- t19 = $[44];
325
+ t19 = $[43];
328
326
  }
329
327
  let t20;
330
- if ($[45] !== showError || $[46] !== path || $[47] !== Error) {
328
+ if ($[44] !== showError || $[45] !== path || $[46] !== Error) {
331
329
  t20 = showError && _jsx(RenderCustomComponent, {
332
330
  CustomComponent: Error,
333
331
  Fallback: _jsx(FieldError, {
@@ -335,26 +333,26 @@ const BlocksFieldComponent = props => {
335
333
  showError
336
334
  })
337
335
  });
338
- $[45] = showError;
339
- $[46] = path;
340
- $[47] = Error;
341
- $[48] = t20;
336
+ $[44] = showError;
337
+ $[45] = path;
338
+ $[46] = Error;
339
+ $[47] = t20;
342
340
  } else {
343
- t20 = $[48];
341
+ t20 = $[47];
344
342
  }
345
343
  let t21;
346
- if ($[49] !== fieldHasErrors || $[50] !== fieldErrorCount || $[51] !== i18n) {
344
+ if ($[48] !== fieldHasErrors || $[49] !== fieldErrorCount || $[50] !== i18n) {
347
345
  t21 = fieldHasErrors && fieldErrorCount > 0 && _jsx(ErrorPill, {
348
346
  count: fieldErrorCount,
349
347
  i18n,
350
348
  withMessage: true
351
349
  });
352
- $[49] = fieldHasErrors;
353
- $[50] = fieldErrorCount;
354
- $[51] = i18n;
355
- $[52] = t21;
350
+ $[48] = fieldHasErrors;
351
+ $[49] = fieldErrorCount;
352
+ $[50] = i18n;
353
+ $[51] = t21;
356
354
  } else {
357
- t21 = $[52];
355
+ t21 = $[51];
358
356
  }
359
357
  return _jsxs("div", {
360
358
  className: t19.join(" "),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","Fragment","useCallback","Banner","Button","DraggableSortableItem","DraggableSortable","DrawerToggler","useDrawerSlug","ErrorPill","RenderCustomComponent","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","useField","withCondition","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","FieldDescription","FieldError","FieldLabel","fieldBaseClass","BlockRow","BlocksDrawer","baseClass","BlocksFieldComponent","props","$","i18n","t","field","t0","path","permissions","readOnly","schemaPath","schemaPathFromProps","validate","name","admin","t1","blocks","label","labels","labelsFromProps","localized","maxRows","minRows","minRowsProp","required","t2","undefined","className","description","isSortable","t3","setDocFieldPreferences","addFieldRow","dispatchFields","setModified","code","locale","config","t4","localization","drawerSlug","submitted","plural","singular","t5","bb0","fallback","defaultLocale","editingDefaultLocale","t6","value","options","memoizedValidate","t7","hasRows","customComponents","t8","errorPaths","rows","t9","showError","valid","value_0","t10","Description","Error","Label","t11","t12","rowIndex","blockType","setTimeout","addRow","t13","rowIndex_0","type","duplicateRow","t14","rowIndex_1","removeRow","t15","moveFromIndex","moveToIndex","moveRow","t16","collapsed","collapsedIDs","updatedRows","toggleCollapseAll","t17","rowID","collapsed_0","collapsedIDs_0","updatedRows_0","setCollapse","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showMinRows","showRequired","t18","t19","filter","Boolean","t20","_jsx","CustomComponent","Fallback","t21","count","withMessage","_jsxs","join","id","replace","children","onClick","fieldValue","ids","map","_temp","onDragEnd","t22","moveFromIndex_0","moveToIndex_0","row_0","i","blockType_0","row","blockConfig","find","block","slug","rowPath","rowErrorCount","errorPath","startsWith","disabled","draggableSortableItemProps","errorCount","fields","parentPath","rowCount","buttonStyle","el","icon","iconPosition","iconStyle","addRowIndex","BlocksField"],"sources":["../../../src/fields/Blocks/index.tsx"],"sourcesContent":["'use client'\nimport type { BlocksFieldClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, 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 { DrawerToggler } from '../../elements/Drawer/index.js'\nimport { useDrawerSlug } from '../../elements/Drawer/useDrawerSlug.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/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 { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { BlockRow } from './BlockRow.js'\nimport { BlocksDrawer } from './BlocksDrawer/index.js'\nimport './index.scss'\n\nconst baseClass = 'blocks-field'\n\nconst BlocksFieldComponent: BlocksFieldClientComponent = (props) => {\n const { i18n, t } = useTranslation()\n\n const {\n field: {\n name,\n admin: { className, description, isSortable = true } = {},\n blocks,\n label,\n labels: labelsFromProps,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n path,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\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 { code: locale } = useLocale()\n const {\n config: { localization },\n } = useConfig()\n const drawerSlug = useDrawerSlug('blocks-drawer')\n const submitted = useFormSubmitted()\n\n const labels = {\n plural: t('fields:blocks'),\n singular: t('fields:block'),\n ...labelsFromProps,\n }\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 const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\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: { Description, Error, Label } = {},\n errorPaths,\n rows = [],\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, blockType: string) => {\n addFieldRow({\n blockType,\n path,\n rowIndex,\n schemaPath,\n })\n\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath, setModified],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [dispatchFields, path, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({\n type: 'REMOVE_ROW',\n path,\n rowIndex,\n })\n\n setModified(true)\n },\n [path, dispatchFields, 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,\n })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\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 dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && fieldErrorCount + (valid ? 0 : 1) > 0\n\n const showMinRows = rows.length < minRows || (required && rows.length === 0)\n const showRequired = readOnly && rows.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}__heading-with-error`}>\n <h3>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n }\n />\n </h3>\n {fieldHasErrors && fieldErrorCount > 0 && (\n <ErrorPill count={fieldErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n {rows.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 {(rows.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n >\n {rows.map((row, i) => {\n const { blockType } = row\n const blockConfig = blocks.find((block) => block.slug === blockType)\n\n if (blockConfig) {\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={row.id} key={row.id}>\n {(draggableSortableItemProps) => (\n <BlockRow\n {...draggableSortableItemProps}\n addRow={addRow}\n block={blockConfig}\n blocks={blocks}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={blockConfig.fields}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n Label={Label}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly}\n removeRow={removeRow}\n row={row}\n rowCount={rows.length}\n rowIndex={i}\n schemaPath={schemaPath + blockConfig.slug}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n }\n\n return null\n })}\n {!editingDefaultLocale && (\n <React.Fragment>\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:row' : 'general:rows'),\n })}\n </Banner>\n )}\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && (\n <Fragment>\n <DrawerToggler className={`${baseClass}__drawer-toggler`} slug={drawerSlug}>\n <Button\n buttonStyle=\"icon-label\"\n disabled={readOnly}\n el=\"span\"\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n </DrawerToggler>\n <BlocksDrawer\n addRow={addRow}\n addRowIndex={rows?.length || 0}\n blocks={blocks}\n drawerSlug={drawerSlug}\n labels={labels}\n />\n </Fragment>\n )}\n </div>\n )\n}\n\nexport const BlocksField = withCondition(BlocksFieldComponent)\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","Fragment","useCallback","Banner","Button","DraggableSortableItem","DraggableSortable","DrawerToggler","useDrawerSlug","ErrorPill","RenderCustomComponent","useForm","useFormSubmitted","extractRowsAndCollapsedIDs","toggleAllRows","NullifyLocaleField","useField","withCondition","useConfig","useDocumentInfo","useLocale","useTranslation","scrollToID","FieldDescription","FieldError","FieldLabel","fieldBaseClass","BlockRow","BlocksDrawer","baseClass","BlocksFieldComponent","props","$","i18n","t","field","t0","path","permissions","readOnly","schemaPath","schemaPathFromProps","validate","name","admin","t1","blocks","label","labels","labelsFromProps","localized","maxRows","minRows","minRowsProp","required","t2","undefined","className","description","isSortable","t3","setDocFieldPreferences","addFieldRow","dispatchFields","setModified","code","locale","config","t4","localization","drawerSlug","submitted","plural","singular","t5","bb0","fallback","defaultLocale","editingDefaultLocale","t6","value","options","memoizedValidate","t7","hasRows","customComponents","t8","errorPaths","rows","t9","showError","valid","value_0","t10","Description","Error","Label","t11","t12","rowIndex","blockType","setTimeout","addRow","t13","rowIndex_0","type","duplicateRow","t14","rowIndex_1","removeRow","t15","moveFromIndex","moveToIndex","moveRow","t16","collapsed","collapsedIDs","updatedRows","toggleCollapseAll","t17","rowID","collapsed_0","collapsedIDs_0","updatedRows_0","setCollapse","hasMaxRows","length","fieldErrorCount","fieldHasErrors","showMinRows","showRequired","t18","t19","filter","Boolean","t20","_jsx","CustomComponent","Fallback","t21","count","withMessage","_jsxs","join","id","replace","children","onClick","fieldValue","ids","map","_temp","onDragEnd","t22","moveFromIndex_0","moveToIndex_0","row_0","i","blockType_0","row","blockConfig","find","block","slug","rowPath","rowErrorCount","errorPath","startsWith","disabled","draggableSortableItemProps","errorCount","fields","parentPath","rowCount","buttonStyle","el","icon","iconPosition","iconStyle","addRowIndex","BlocksField"],"sources":["../../../src/fields/Blocks/index.tsx"],"sourcesContent":["'use client'\nimport type { BlocksFieldClientComponent } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { Fragment, 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 { DrawerToggler } from '../../elements/Drawer/index.js'\nimport { useDrawerSlug } from '../../elements/Drawer/useDrawerSlug.js'\nimport { ErrorPill } from '../../elements/ErrorPill/index.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/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 { FieldDescription } from '../FieldDescription/index.js'\nimport { FieldError } from '../FieldError/index.js'\nimport { FieldLabel } from '../FieldLabel/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport { BlockRow } from './BlockRow.js'\nimport { BlocksDrawer } from './BlocksDrawer/index.js'\nimport './index.scss'\n\nconst baseClass = 'blocks-field'\n\nconst BlocksFieldComponent: BlocksFieldClientComponent = (props) => {\n const { i18n, t } = useTranslation()\n\n const {\n field: {\n name,\n admin: { className, description, isSortable = true } = {},\n blocks,\n label,\n labels: labelsFromProps,\n localized,\n maxRows,\n minRows: minRowsProp,\n required,\n },\n path,\n permissions,\n readOnly,\n schemaPath: schemaPathFromProps,\n validate,\n } = props\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 { code: locale } = useLocale()\n const {\n config: { localization },\n } = useConfig()\n const drawerSlug = useDrawerSlug('blocks-drawer')\n const submitted = useFormSubmitted()\n\n const labels = {\n plural: t('fields:blocks'),\n singular: t('fields:block'),\n ...labelsFromProps,\n }\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 const memoizedValidate = useCallback(\n (value, options) => {\n // alternative locales can be null\n if (!editingDefaultLocale && value === null) {\n return true\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: { Description, Error, Label } = {},\n errorPaths,\n rows = [],\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, blockType: string) => {\n addFieldRow({\n blockType,\n path,\n rowIndex,\n schemaPath,\n })\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [addFieldRow, path, schemaPath],\n )\n\n const duplicateRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({ type: 'DUPLICATE_ROW', path, rowIndex })\n setModified(true)\n\n setTimeout(() => {\n scrollToID(`${path}-row-${rowIndex + 1}`)\n }, 0)\n },\n [dispatchFields, path, setModified],\n )\n\n const removeRow = useCallback(\n (rowIndex: number) => {\n dispatchFields({\n type: 'REMOVE_ROW',\n path,\n rowIndex,\n })\n\n setModified(true)\n },\n [path, dispatchFields, 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,\n })\n dispatchFields({ type: 'SET_ALL_ROWS_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\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 dispatchFields({ type: 'SET_ROW_COLLAPSED', path, updatedRows })\n setDocFieldPreferences(path, { collapsed: collapsedIDs })\n },\n [dispatchFields, path, rows, setDocFieldPreferences],\n )\n\n const hasMaxRows = maxRows && rows.length >= maxRows\n\n const fieldErrorCount = errorPaths.length\n const fieldHasErrors = submitted && fieldErrorCount + (valid ? 0 : 1) > 0\n\n const showMinRows = rows.length < minRows || (required && rows.length === 0)\n const showRequired = readOnly && rows.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}__heading-with-error`}>\n <h3>\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n }\n />\n </h3>\n {fieldHasErrors && fieldErrorCount > 0 && (\n <ErrorPill count={fieldErrorCount} i18n={i18n} withMessage />\n )}\n </div>\n {rows.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 {(rows.length > 0 || (!valid && (showRequired || showMinRows))) && (\n <DraggableSortable\n className={`${baseClass}__rows`}\n ids={rows.map((row) => row.id)}\n onDragEnd={({ moveFromIndex, moveToIndex }) => moveRow(moveFromIndex, moveToIndex)}\n >\n {rows.map((row, i) => {\n const { blockType } = row\n const blockConfig = blocks.find((block) => block.slug === blockType)\n\n if (blockConfig) {\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={row.id} key={row.id}>\n {(draggableSortableItemProps) => (\n <BlockRow\n {...draggableSortableItemProps}\n addRow={addRow}\n block={blockConfig}\n blocks={blocks}\n duplicateRow={duplicateRow}\n errorCount={rowErrorCount}\n fields={blockConfig.fields}\n hasMaxRows={hasMaxRows}\n isSortable={isSortable}\n Label={Label}\n labels={labels}\n moveRow={moveRow}\n parentPath={path}\n path={rowPath}\n permissions={permissions}\n readOnly={readOnly}\n removeRow={removeRow}\n row={row}\n rowCount={rows.length}\n rowIndex={i}\n schemaPath={schemaPath + blockConfig.slug}\n setCollapse={setCollapse}\n />\n )}\n </DraggableSortableItem>\n )\n }\n\n return null\n })}\n {!editingDefaultLocale && (\n <React.Fragment>\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:row' : 'general:rows'),\n })}\n </Banner>\n )}\n {showRequired && (\n <Banner>\n {t('validation:fieldHasNo', { label: getTranslation(labels.plural, i18n) })}\n </Banner>\n )}\n </React.Fragment>\n )}\n </DraggableSortable>\n )}\n {!hasMaxRows && (\n <Fragment>\n <DrawerToggler className={`${baseClass}__drawer-toggler`} slug={drawerSlug}>\n <Button\n buttonStyle=\"icon-label\"\n disabled={readOnly}\n el=\"span\"\n icon=\"plus\"\n iconPosition=\"left\"\n iconStyle=\"with-border\"\n >\n {t('fields:addLabel', { label: getTranslation(labels.singular, i18n) })}\n </Button>\n </DrawerToggler>\n <BlocksDrawer\n addRow={addRow}\n addRowIndex={rows?.length || 0}\n blocks={blocks}\n drawerSlug={drawerSlug}\n labels={labels}\n />\n </Fragment>\n )}\n </div>\n )\n}\n\nexport const BlocksField = withCondition(BlocksFieldComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/index.tsx"],"names":[],"mappings":"AAYA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAGnF,OAAO,KAAK,EAEV,SAAS,EAGV,MAAM,YAAY,CAAA;AA6BnB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CA6oBpC,CAAA;AAED,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/Form/index.tsx"],"names":[],"mappings":"AAYA,OAAO,KAA+D,MAAM,OAAO,CAAA;AAGnF,OAAO,KAAK,EAEV,SAAS,EAGV,MAAM,YAAY,CAAA;AA6BnB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,SAAS,CAipBpC,CAAA;AAED,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,GACb,MAAM,cAAc,CAAA;AAErB,OAAO,EAAE,SAAS,EAAE,CAAA"}
@@ -405,6 +405,7 @@ export const Form = props => {
405
405
  rowIndex,
406
406
  subFieldState
407
407
  });
408
+ setModified(true);
408
409
  }, [dispatchFields, getDataByPath]);
409
410
  const removeFieldRow = useCallback(({
410
411
  path: path_4,
@@ -431,6 +432,7 @@ export const Form = props => {
431
432
  rowIndex: rowIndex_1,
432
433
  subFieldState: subFieldState_0
433
434
  });
435
+ setModified(true);
434
436
  }, [dispatchFields, getDataByPath]);
435
437
  useEffect(() => {
436
438
  return () => {