@payloadcms/ui 4.0.0-internal.811e0a4 → 4.0.0-internal.8ba6b5b

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 (32) hide show
  1. package/dist/elements/ListControls/index.js +1 -1
  2. package/dist/elements/ListControls/index.js.map +1 -1
  3. package/dist/fields/Slug/index.d.ts +7 -5
  4. package/dist/fields/Slug/index.d.ts.map +1 -1
  5. package/dist/fields/Slug/index.js +6 -4
  6. package/dist/fields/Slug/index.js.map +1 -1
  7. package/dist/fields/index.d.ts.map +1 -1
  8. package/dist/fields/index.js +2 -0
  9. package/dist/fields/index.js.map +1 -1
  10. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  11. package/dist/forms/RenderFields/RenderField.js +10 -0
  12. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  13. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  14. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +12 -4
  15. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  16. package/dist/styles.css +1 -1
  17. package/dist/utilities/copyDataFromLocale.d.ts.map +1 -1
  18. package/dist/utilities/copyDataFromLocale.js +1 -0
  19. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  20. package/dist/utilities/isURLAllowed.d.ts.map +1 -1
  21. package/dist/utilities/isURLAllowed.js +9 -3
  22. package/dist/utilities/isURLAllowed.js.map +1 -1
  23. package/dist/utilities/slugify.d.ts +1 -1
  24. package/dist/utilities/slugify.js +1 -1
  25. package/dist/utilities/slugify.js.map +1 -1
  26. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
  27. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +1 -0
  28. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
  29. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  30. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +1 -0
  31. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  32. package/package.json +5 -5
@@ -127,7 +127,7 @@ export const ListControls = props => {
127
127
  className: `${baseClass}__toggle-where`,
128
128
  extraButtonProps: {
129
129
  "aria-controls": `${baseClass}-where`,
130
- "aria-expanded": visibleDrawer === "where"
130
+ "aria-expanded": isWhereOpen
131
131
  },
132
132
  icon: _jsx(ChevronIcon, {
133
133
  direction: isWhereOpen ? "up" : "down",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","useWindowInfo","React","Fragment","useEffect","useRef","useState","Popup","PopupList","ChevronIcon","Dots","useListQuery","useTranslation","Button","ListColumnSelectionButton","ListGroupByButton","ListWhereBuilder","QueryPresetBar","ListSearchFilter","baseClass","ListControls","props","$","beforeActions","collectionConfig","collectionSlug","disableQueryPresets","enableColumns","t0","enableFilters","t1","enableSort","t2","hasCreatePermission","isWhereOpen","isWhereOpenFromProps","listMenuItems","newDocumentURL","onWhereToggle","queryPreset","activePreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","undefined","isControlled","handleSearchChange","hasActiveFilters","query","t","breakpoints","t3","s","smallBreak","searchLabelTranslated","label","split","hasWhereParam","Boolean","where","visibleDrawer","setVisibleDrawer","t4","current","t5","t6","t7","handleWhereToggle","_jsxs","className","children","_jsx","onSearchChange","searchQueryParam","search","enableQueryPresets","buttonStyle","extraButtonProps","icon","direction","size","onClick","selected","slug","fields","el","id","to","Array","isArray","length","button","ariaLabel","horizontalAlign","verticalAlign","ButtonGroup","map","_temp","collectionPluralLabel","labels","plural","onEmptyRemove","item","i"],"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport type { ListControlsProps } from './types.js'\n\nimport { Popup, PopupList } from '../../elements/Popup/index.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { Dots } from '../../icons/Dots/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { ListColumnSelectionButton } from '../ListColumnSelectionButton/index.js'\nimport { ListGroupByButton } from '../ListGroupByButton/index.js'\nimport { ListWhereBuilder } from '../ListWhereBuilder/index.js'\nimport { QueryPresetBar } from '../QueryPresets/QueryPresetBar/index.js'\nimport { ListSearchFilter } from '../Search/ListSearchFilter/index.js'\nimport './index.css'\n\nconst baseClass = 'list-controls'\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const {\n beforeActions,\n collectionConfig,\n collectionSlug,\n disableQueryPresets,\n enableColumns = true,\n enableFilters = true,\n enableSort = false,\n hasCreatePermission,\n isWhereOpen: isWhereOpenFromProps,\n listMenuItems,\n newDocumentURL,\n onWhereToggle,\n queryPreset: activePreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n } = props\n\n const isControlled = typeof onWhereToggle === 'function'\n\n const { handleSearchChange, hasActiveFilters, query } = useListQuery()\n\n const { t } = useTranslation()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n // Simplified placeholder - just \"Search\" instead of \"Search by X, Y, Z\"\n const searchLabelTranslated = t('general:searchBy', { label: '' }).split(' ')[0]\n\n const hasWhereParam = useRef(Boolean(query?.where))\n\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'sort' | 'where'>(\n hasActiveFilters ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, query?.where])\n\n const isWhereOpen = isControlled ? Boolean(isWhereOpenFromProps) : visibleDrawer === 'where'\n const handleWhereToggle = isControlled\n ? onWhereToggle\n : () => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__search-row`}>\n <div className={`${baseClass}__left`}>\n <ListSearchFilter\n key={collectionSlug}\n label={searchLabelTranslated}\n onSearchChange={handleSearchChange}\n searchQueryParam={query?.search}\n />\n {collectionConfig?.enableQueryPresets && !disableQueryPresets && (\n <QueryPresetBar\n activePreset={activePreset}\n collectionSlug={collectionSlug}\n queryPresetPermissions={queryPresetPermissions}\n />\n )}\n </div>\n <div className={`${baseClass}__spacer`} />\n <div className={`${baseClass}__actions`}>\n {!smallBreak && beforeActions}\n {enableFilters && (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__toggle-where`}\n extraButtonProps={{\n 'aria-controls': `${baseClass}-where`,\n 'aria-expanded': visibleDrawer === 'where',\n }}\n icon={<ChevronIcon direction={isWhereOpen ? 'up' : 'down'} size={16} />}\n id=\"toggle-list-filters\"\n onClick={handleWhereToggle}\n selected={isWhereOpen || hasActiveFilters}\n size=\"medium\"\n >\n {t('general:filters')}\n </Button>\n )}\n <ListGroupByButton\n collectionSlug={collectionConfig.slug}\n fields={collectionConfig.fields}\n />\n {enableColumns && <ListColumnSelectionButton collectionSlug={collectionConfig.slug} />}\n {enableSort && (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__toggle-sort`}\n extraButtonProps={{\n 'aria-controls': `${baseClass}-sort`,\n 'aria-expanded': visibleDrawer === 'sort',\n }}\n icon={<ChevronIcon size={16} />}\n id=\"toggle-list-sort\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n size=\"medium\"\n >\n {t('general:sort')}\n </Button>\n )}\n {hasCreatePermission && newDocumentURL && (\n <Button\n buttonStyle=\"primary\"\n className={`${baseClass}__create-new`}\n el=\"link\"\n id=\"create-new-doc\"\n size=\"medium\"\n to={newDocumentURL}\n >\n {t('general:createNew')}\n </Button>\n )}\n {listMenuItems && Array.isArray(listMenuItems) && listMenuItems.length > 0 && (\n <Popup\n button={<Dots ariaLabel={t('general:moreOptions')} />}\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n id=\"list-menu\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {listMenuItems.map((item, i) => (\n <Fragment key={`list-menu-item-${i}`}>{item}</Fragment>\n ))}\n </PopupList.ButtonGroup>\n </Popup>\n )}\n </div>\n </div>\n {!isControlled && isWhereOpen && (\n <div className={`${baseClass}__where`} id={`${baseClass}-where`}>\n <ListWhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n fields={collectionConfig?.fields}\n onEmptyRemove={() => setVisibleDrawer(undefined)}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n </div>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","useWindowInfo","React","Fragment","useEffect","useRef","useState","Popup","PopupList","ChevronIcon","Dots","useListQuery","useTranslation","Button","ListColumnSelectionButton","ListGroupByButton","ListWhereBuilder","QueryPresetBar","ListSearchFilter","baseClass","ListControls","props","$","beforeActions","collectionConfig","collectionSlug","disableQueryPresets","enableColumns","t0","enableFilters","t1","enableSort","t2","hasCreatePermission","isWhereOpen","isWhereOpenFromProps","listMenuItems","newDocumentURL","onWhereToggle","queryPreset","activePreset","queryPresetPermissions","renderedFilters","resolvedFilterOptions","undefined","isControlled","handleSearchChange","hasActiveFilters","query","t","breakpoints","t3","s","smallBreak","searchLabelTranslated","label","split","hasWhereParam","Boolean","where","visibleDrawer","setVisibleDrawer","t4","current","t5","t6","t7","handleWhereToggle","_jsxs","className","children","_jsx","onSearchChange","searchQueryParam","search","enableQueryPresets","buttonStyle","extraButtonProps","icon","direction","size","onClick","selected","slug","fields","el","id","to","Array","isArray","length","button","ariaLabel","horizontalAlign","verticalAlign","ButtonGroup","map","_temp","collectionPluralLabel","labels","plural","onEmptyRemove","item","i"],"sources":["../../../src/elements/ListControls/index.tsx"],"sourcesContent":["'use client'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React, { Fragment, useEffect, useRef, useState } from 'react'\n\nimport type { ListControlsProps } from './types.js'\n\nimport { Popup, PopupList } from '../../elements/Popup/index.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { Dots } from '../../icons/Dots/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport { ListColumnSelectionButton } from '../ListColumnSelectionButton/index.js'\nimport { ListGroupByButton } from '../ListGroupByButton/index.js'\nimport { ListWhereBuilder } from '../ListWhereBuilder/index.js'\nimport { QueryPresetBar } from '../QueryPresets/QueryPresetBar/index.js'\nimport { ListSearchFilter } from '../Search/ListSearchFilter/index.js'\nimport './index.css'\n\nconst baseClass = 'list-controls'\n\n/**\n * The ListControls component is used to render the controls (search, filter, where)\n * for a collection's list view. You can find those directly above the table which lists\n * the collection's documents.\n */\nexport const ListControls: React.FC<ListControlsProps> = (props) => {\n const {\n beforeActions,\n collectionConfig,\n collectionSlug,\n disableQueryPresets,\n enableColumns = true,\n enableFilters = true,\n enableSort = false,\n hasCreatePermission,\n isWhereOpen: isWhereOpenFromProps,\n listMenuItems,\n newDocumentURL,\n onWhereToggle,\n queryPreset: activePreset,\n queryPresetPermissions,\n renderedFilters,\n resolvedFilterOptions,\n } = props\n\n const isControlled = typeof onWhereToggle === 'function'\n\n const { handleSearchChange, hasActiveFilters, query } = useListQuery()\n\n const { t } = useTranslation()\n\n const {\n breakpoints: { s: smallBreak },\n } = useWindowInfo()\n\n // Simplified placeholder - just \"Search\" instead of \"Search by X, Y, Z\"\n const searchLabelTranslated = t('general:searchBy', { label: '' }).split(' ')[0]\n\n const hasWhereParam = useRef(Boolean(query?.where))\n\n const [visibleDrawer, setVisibleDrawer] = useState<'columns' | 'sort' | 'where'>(\n hasActiveFilters ? 'where' : undefined,\n )\n\n useEffect(() => {\n if (hasWhereParam.current && !query?.where) {\n hasWhereParam.current = false\n } else if (query?.where) {\n hasWhereParam.current = true\n }\n }, [setVisibleDrawer, query?.where])\n\n const isWhereOpen = isControlled ? Boolean(isWhereOpenFromProps) : visibleDrawer === 'where'\n const handleWhereToggle = isControlled\n ? onWhereToggle\n : () => setVisibleDrawer(visibleDrawer !== 'where' ? 'where' : undefined)\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__search-row`}>\n <div className={`${baseClass}__left`}>\n <ListSearchFilter\n key={collectionSlug}\n label={searchLabelTranslated}\n onSearchChange={handleSearchChange}\n searchQueryParam={query?.search}\n />\n {collectionConfig?.enableQueryPresets && !disableQueryPresets && (\n <QueryPresetBar\n activePreset={activePreset}\n collectionSlug={collectionSlug}\n queryPresetPermissions={queryPresetPermissions}\n />\n )}\n </div>\n <div className={`${baseClass}__spacer`} />\n <div className={`${baseClass}__actions`}>\n {!smallBreak && beforeActions}\n {enableFilters && (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__toggle-where`}\n extraButtonProps={{\n 'aria-controls': `${baseClass}-where`,\n 'aria-expanded': isWhereOpen,\n }}\n icon={<ChevronIcon direction={isWhereOpen ? 'up' : 'down'} size={16} />}\n id=\"toggle-list-filters\"\n onClick={handleWhereToggle}\n selected={isWhereOpen || hasActiveFilters}\n size=\"medium\"\n >\n {t('general:filters')}\n </Button>\n )}\n <ListGroupByButton\n collectionSlug={collectionConfig.slug}\n fields={collectionConfig.fields}\n />\n {enableColumns && <ListColumnSelectionButton collectionSlug={collectionConfig.slug} />}\n {enableSort && (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__toggle-sort`}\n extraButtonProps={{\n 'aria-controls': `${baseClass}-sort`,\n 'aria-expanded': visibleDrawer === 'sort',\n }}\n icon={<ChevronIcon size={16} />}\n id=\"toggle-list-sort\"\n onClick={() => setVisibleDrawer(visibleDrawer !== 'sort' ? 'sort' : undefined)}\n size=\"medium\"\n >\n {t('general:sort')}\n </Button>\n )}\n {hasCreatePermission && newDocumentURL && (\n <Button\n buttonStyle=\"primary\"\n className={`${baseClass}__create-new`}\n el=\"link\"\n id=\"create-new-doc\"\n size=\"medium\"\n to={newDocumentURL}\n >\n {t('general:createNew')}\n </Button>\n )}\n {listMenuItems && Array.isArray(listMenuItems) && listMenuItems.length > 0 && (\n <Popup\n button={<Dots ariaLabel={t('general:moreOptions')} />}\n className={`${baseClass}__popup`}\n horizontalAlign=\"right\"\n id=\"list-menu\"\n verticalAlign=\"bottom\"\n >\n <PopupList.ButtonGroup>\n {listMenuItems.map((item, i) => (\n <Fragment key={`list-menu-item-${i}`}>{item}</Fragment>\n ))}\n </PopupList.ButtonGroup>\n </Popup>\n )}\n </div>\n </div>\n {!isControlled && isWhereOpen && (\n <div className={`${baseClass}__where`} id={`${baseClass}-where`}>\n <ListWhereBuilder\n collectionPluralLabel={collectionConfig?.labels?.plural}\n collectionSlug={collectionConfig.slug}\n fields={collectionConfig?.fields}\n onEmptyRemove={() => setVisibleDrawer(undefined)}\n renderedFilters={renderedFilters}\n resolvedFilterOptions={resolvedFilterOptions}\n />\n </div>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,10 @@
1
- import type { SlugFieldClientProps } from 'payload';
1
+ import type { SlugFieldClient } from 'payload';
2
2
  import React from 'react';
3
3
  import './index.css';
4
- /**
5
- * @experimental This component is experimental and may change or be removed in the future. Use at your own risk.
6
- */
7
- export declare const SlugField: React.FC<SlugFieldClientProps>;
4
+ type SlugFieldProps = {
5
+ readonly field: SlugFieldClient;
6
+ readonly path?: string;
7
+ };
8
+ export declare const SlugField: React.FC<SlugFieldProps>;
9
+ export {};
8
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Slug/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAGnD,OAAO,KAAgC,MAAM,OAAO,CAAA;AAcpD,OAAO,aAAa,CAAA;AAIpB;;GAEG;AACH,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAiJpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Slug/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAG9C,OAAO,KAAgC,MAAM,OAAO,CAAA;AAepD,OAAO,aAAa,CAAA;AAIpB,KAAK,cAAc,GAAG;IACpB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAwJD,eAAO,MAAM,SAAS,0BAAoC,CAAA"}
@@ -10,6 +10,7 @@ import { FieldError } from '../../fields/FieldError/index.js';
10
10
  import { FieldLabel } from '../../fields/FieldLabel/index.js';
11
11
  import { useForm } from '../../forms/Form/index.js';
12
12
  import { useField } from '../../forms/useField/index.js';
13
+ import { withCondition } from '../../forms/withCondition/index.js';
13
14
  import { LockIcon } from '../../icons/Lock/index.js';
14
15
  import { LockOpenIcon } from '../../icons/LockOpen/index.js';
15
16
  import { RefreshIcon } from '../../icons/Refresh/index.js';
@@ -21,17 +22,17 @@ const baseClass = 'slug-field-component';
21
22
  /**
22
23
  * @experimental This component is experimental and may change or be removed in the future. Use at your own risk.
23
24
  */
24
- export const SlugField = t0 => {
25
+ const SlugFieldComponent = t0 => {
25
26
  const $ = _c(17);
26
27
  const {
27
28
  field,
28
- path,
29
- useAsSlug
29
+ path
30
30
  } = t0;
31
31
  const {
32
32
  admin,
33
33
  label,
34
- required
34
+ required,
35
+ useAsSlug
35
36
  } = field;
36
37
  const {
37
38
  description,
@@ -194,6 +195,7 @@ export const SlugField = t0 => {
194
195
  })]
195
196
  });
196
197
  };
198
+ export const SlugField = withCondition(SlugFieldComponent);
197
199
  function _temp(prev) {
198
200
  return !prev;
199
201
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useCallback","useState","Button","FieldDescription","FieldError","FieldLabel","useForm","useField","LockIcon","LockOpenIcon","RefreshIcon","useDocumentInfo","useServerFunctions","useTranslation","baseClass","SlugField","t0","$","field","path","useAsSlug","admin","label","required","description","placeholder","readOnly","readOnlyFromProps","i18n","t","collectionSlug","globalSlug","slugify","t1","name","t2","fieldPath","setValue","showError","value","getData","getDataByPath","isLocked","setIsLocked","t3","e","preventDefault","valueToSlugify","formattedSlug","data","undefined","handleGenerate","t4","Symbol","for","e_0","_temp","toggleLock","t5","e_1","target","handleChange","isReadOnly","Boolean","t6","filter","join","t7","_jsx","htmlFor","t8","t9","t10","_jsxs","className","children","disabled","id","replace","onChange","type","buttonStyle","icon","margin","onClick","size","prev"],"sources":["../../../src/fields/Slug/index.tsx"],"sourcesContent":["'use client'\n\nimport type { SlugFieldClientProps } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useState } from 'react'\n\nimport { Button } from '../../elements/Button/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 } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { LockIcon } from '../../icons/Lock/index.js'\nimport { LockOpenIcon } from '../../icons/LockOpen/index.js'\nimport { RefreshIcon } from '../../icons/Refresh/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'slug-field-component'\n\n/**\n * @experimental This component is experimental and may change or be removed in the future. Use at your own risk.\n */\nexport const SlugField: React.FC<SlugFieldClientProps> = ({ field, path, useAsSlug }) => {\n const { admin, label, required } = field\n const { description, placeholder, readOnly: readOnlyFromProps } = admin || {}\n\n const { i18n, t } = useTranslation()\n\n const { collectionSlug, globalSlug } = useDocumentInfo()\n\n const { slugify } = useServerFunctions()\n\n const {\n path: fieldPath,\n setValue,\n showError,\n value,\n } = useField<string>({ path: path || field.name })\n\n const { getData, getDataByPath } = useForm()\n\n const [isLocked, setIsLocked] = useState(true)\n\n /**\n * This method allows the user to generate their slug on demand, e.g. when they click the \"generate\" button.\n * It uses the `slugify` server function to gain access to their custom slugify function defined in their field config.\n */\n const handleGenerate = useCallback(\n async (e: React.MouseEvent<Element>) => {\n e.preventDefault()\n\n const valueToSlugify = getDataByPath(useAsSlug)\n\n const formattedSlug = await slugify({\n collectionSlug,\n data: getData(),\n globalSlug,\n path: fieldPath,\n valueToSlugify,\n })\n\n if (formattedSlug === null || formattedSlug === undefined) {\n setValue('')\n return\n }\n\n /**\n * The result may be the same as the current value, and if so, we don't want to trigger a re-render.\n */\n if (value !== formattedSlug) {\n setValue(formattedSlug)\n }\n },\n [\n setValue,\n value,\n useAsSlug,\n getData,\n slugify,\n getDataByPath,\n collectionSlug,\n globalSlug,\n fieldPath,\n ],\n )\n\n const toggleLock = useCallback((e: React.MouseEvent<Element>) => {\n e.preventDefault()\n setIsLocked((prev) => !prev)\n }, [])\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setValue(e.target.value)\n },\n [setValue],\n )\n\n const isReadOnly = Boolean(readOnlyFromProps || isLocked)\n\n return (\n <div\n className={[\n 'field-type',\n baseClass,\n showError && `${baseClass}--error`,\n isLocked && `${baseClass}--locked`,\n readOnlyFromProps && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <FieldLabel htmlFor={`field-${fieldPath}`} label={label} required={required} />\n <div className={`${baseClass}__wrap`}>\n <FieldError path={fieldPath} showError={showError} />\n\n <div\n className={[\n 'form-input-group',\n `${baseClass}__input-container`,\n showError && 'form-input-group-error',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <input\n aria-label={getTranslation(label, i18n) || path}\n className={`form-input ${baseClass}__input`}\n disabled={isReadOnly}\n id={`field-${fieldPath?.replace(/\\./g, '__')}`}\n name={fieldPath}\n onChange={handleChange}\n placeholder={getTranslation(placeholder, i18n)}\n type=\"text\"\n value={value || ''}\n />\n\n {!readOnlyFromProps && (\n <div className={`${baseClass}__actions`}>\n {!isLocked && (\n <Button\n aria-label={t('authentication:generate')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={<RefreshIcon />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-generate`}\n margin={false}\n onClick={handleGenerate}\n />\n )}\n <Button\n aria-label={isLocked ? t('general:unlock') : t('general:lock')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={isLocked ? <LockIcon size={16} /> : <LockOpenIcon size={16} />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-lock`}\n margin={false}\n onClick={toggleLock}\n />\n </div>\n )}\n </div>\n\n <FieldDescription description={description} path={fieldPath} />\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","React","useCallback","useState","Button","FieldDescription","FieldError","FieldLabel","useForm","useField","withCondition","LockIcon","LockOpenIcon","RefreshIcon","useDocumentInfo","useServerFunctions","useTranslation","baseClass","SlugFieldComponent","t0","$","field","path","admin","label","required","useAsSlug","description","placeholder","readOnly","readOnlyFromProps","i18n","t","collectionSlug","globalSlug","slugify","t1","name","t2","fieldPath","setValue","showError","value","getData","getDataByPath","isLocked","setIsLocked","t3","e","preventDefault","valueToSlugify","formattedSlug","data","undefined","handleGenerate","t4","Symbol","for","e_0","_temp","toggleLock","t5","e_1","target","handleChange","isReadOnly","Boolean","t6","filter","join","t7","_jsx","htmlFor","t8","t9","t10","_jsxs","className","children","disabled","id","replace","onChange","type","buttonStyle","icon","margin","onClick","size","SlugField","prev"],"sources":["../../../src/fields/Slug/index.tsx"],"sourcesContent":["'use client'\n\nimport type { SlugFieldClient } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React, { useCallback, useState } from 'react'\n\nimport { Button } from '../../elements/Button/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 } from '../../forms/Form/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { LockIcon } from '../../icons/Lock/index.js'\nimport { LockOpenIcon } from '../../icons/LockOpen/index.js'\nimport { RefreshIcon } from '../../icons/Refresh/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useServerFunctions } from '../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.css'\n\nconst baseClass = 'slug-field-component'\n\ntype SlugFieldProps = {\n readonly field: SlugFieldClient\n readonly path?: string\n}\n\n/**\n * @experimental This component is experimental and may change or be removed in the future. Use at your own risk.\n */\nconst SlugFieldComponent: React.FC<SlugFieldProps> = ({ field, path }) => {\n const { admin, label, required, useAsSlug } = field\n const { description, placeholder, readOnly: readOnlyFromProps } = admin || {}\n\n const { i18n, t } = useTranslation()\n\n const { collectionSlug, globalSlug } = useDocumentInfo()\n\n const { slugify } = useServerFunctions()\n\n const {\n path: fieldPath,\n setValue,\n showError,\n value,\n } = useField<string>({ path: path || field.name })\n\n const { getData, getDataByPath } = useForm()\n\n const [isLocked, setIsLocked] = useState(true)\n\n /**\n * This method allows the user to generate their slug on demand, e.g. when they click the \"generate\" button.\n * It uses the `slugify` server function to gain access to their custom slugify function defined in their field config.\n */\n const handleGenerate = useCallback(\n async (e: React.MouseEvent<Element>) => {\n e.preventDefault()\n\n const valueToSlugify = getDataByPath(useAsSlug)\n\n const formattedSlug = await slugify({\n collectionSlug,\n data: getData(),\n globalSlug,\n path: fieldPath,\n valueToSlugify,\n })\n\n if (formattedSlug === null || formattedSlug === undefined) {\n setValue('')\n return\n }\n\n /**\n * The result may be the same as the current value, and if so, we don't want to trigger a re-render.\n */\n if (value !== formattedSlug) {\n setValue(formattedSlug)\n }\n },\n [\n setValue,\n value,\n useAsSlug,\n getData,\n slugify,\n getDataByPath,\n collectionSlug,\n globalSlug,\n fieldPath,\n ],\n )\n\n const toggleLock = useCallback((e: React.MouseEvent<Element>) => {\n e.preventDefault()\n setIsLocked((prev) => !prev)\n }, [])\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setValue(e.target.value)\n },\n [setValue],\n )\n\n const isReadOnly = Boolean(readOnlyFromProps || isLocked)\n\n return (\n <div\n className={[\n 'field-type',\n baseClass,\n showError && `${baseClass}--error`,\n isLocked && `${baseClass}--locked`,\n readOnlyFromProps && `${baseClass}--read-only`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <FieldLabel htmlFor={`field-${fieldPath}`} label={label} required={required} />\n <div className={`${baseClass}__wrap`}>\n <FieldError path={fieldPath} showError={showError} />\n\n <div\n className={[\n 'form-input-group',\n `${baseClass}__input-container`,\n showError && 'form-input-group-error',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <input\n aria-label={getTranslation(label, i18n) || path}\n className={`form-input ${baseClass}__input`}\n disabled={isReadOnly}\n id={`field-${fieldPath?.replace(/\\./g, '__')}`}\n name={fieldPath}\n onChange={handleChange}\n placeholder={getTranslation(placeholder, i18n)}\n type=\"text\"\n value={value || ''}\n />\n\n {!readOnlyFromProps && (\n <div className={`${baseClass}__actions`}>\n {!isLocked && (\n <Button\n aria-label={t('authentication:generate')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={<RefreshIcon />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-generate`}\n margin={false}\n onClick={handleGenerate}\n />\n )}\n <Button\n aria-label={isLocked ? t('general:unlock') : t('general:lock')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__action-btn`}\n icon={isLocked ? <LockIcon size={16} /> : <LockOpenIcon size={16} />}\n id={`field-${fieldPath?.replace(/\\./g, '__')}-lock`}\n margin={false}\n onClick={toggleLock}\n />\n </div>\n )}\n </div>\n\n <FieldDescription description={description} path={fieldPath} />\n </div>\n </div>\n )\n}\n\nexport const SlugField = withCondition(SlugFieldComponent)\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fields/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAgC3E,cAAc,mBAAmB,CAAA;AAEjC,MAAM,MAAM,oBAAoB,GAAG;KAChC,CAAC,IAAI,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC;CAC1D,GAAG;IACF,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAA;IACpD,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,oBA0B7B,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAA;IAC9C,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAA;IAClC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAA;IAClC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAA;CACnB,GAAG,oBAAoB,CAAA;AAExB,eAAO,MAAM,kBAAkB,EAAE,wBAMhC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fields/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAiC3E,cAAc,mBAAmB,CAAA;AAEjC,MAAM,MAAM,oBAAoB,GAAG;KAChC,CAAC,IAAI,UAAU,GAAG,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,eAAe,CAAC;CAC1D,GAAG;IACF,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAA;IACpD,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,oBA2B7B,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAA;IAC9C,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAA;IAClC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAA;IAClC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAA;CACnB,GAAG,oBAAoB,CAAA;AAExB,eAAO,MAAM,kBAAkB,EAAE,wBAMhC,CAAA"}
@@ -24,6 +24,7 @@ import { RelationshipField } from './Relationship/index.js';
24
24
  import { RichTextField } from './RichText/index.js';
25
25
  import { RowField } from './Row/index.js';
26
26
  import { SelectField } from './Select/index.js';
27
+ import { SlugField } from './Slug/index.js';
27
28
  import { TabsField } from './Tabs/index.js';
28
29
  import { TextField } from './Text/index.js';
29
30
  import { TextareaField } from './Textarea/index.js';
@@ -31,6 +32,7 @@ import { UIField } from './UI/index.js';
31
32
  import { UploadField } from './Upload/index.js';
32
33
  export * from './shared/index.js';
33
34
  export const fieldComponents = {
35
+ slug: SlugField,
34
36
  array: ArrayField,
35
37
  blocks: BlocksField,
36
38
  checkbox: CheckboxField,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["RowLabel","ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","ConfirmPasswordField","DateTimeField","EmailField","FieldDescription","FieldError","FieldLabel","GroupField","HiddenField","JoinField","JSONField","NumberField","PasswordField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","TabsField","TextField","TextareaField","UIField","UploadField","fieldComponents","array","blocks","checkbox","code","collapsible","confirmPassword","date","email","group","hidden","join","json","number","password","point","radio","relationship","richText","row","select","tabs","text","textarea","ui","upload","allFieldComponents","Description","Error","Label"],"sources":["../../src/fields/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientFieldBase,\n FieldTypes,\n GenericDescriptionProps,\n GenericErrorProps,\n GenericLabelProps,\n HiddenFieldProps,\n} from 'payload'\nimport type React from 'react'\n\nimport type { ConfirmPasswordFieldProps } from './ConfirmPassword/index.js'\n\nimport { RowLabel } from '../forms/RowLabel/index.js'\nimport { ArrayField } from './Array/index.js'\nimport { BlocksField } from './Blocks/index.js'\nimport { CheckboxField } from './Checkbox/index.js'\nimport { CodeField } from './Code/index.js'\nimport { CollapsibleField } from './Collapsible/index.js'\nimport { ConfirmPasswordField } from './ConfirmPassword/index.js'\nimport { DateTimeField } from './DateTime/index.js'\nimport { EmailField } from './Email/index.js'\nimport { FieldDescription } from './FieldDescription/index.js'\nimport { FieldError } from './FieldError/index.js'\nimport { FieldLabel } from './FieldLabel/index.js'\nimport { GroupField } from './Group/index.js'\nimport { HiddenField } from './Hidden/index.js'\nimport { JoinField } from './Join/index.js'\nimport { JSONField } from './JSON/index.js'\nimport { NumberField } from './Number/index.js'\nimport { PasswordField } from './Password/index.js'\nimport { PointField } from './Point/index.js'\nimport { RadioGroupField } from './RadioGroup/index.js'\nimport { RelationshipField } from './Relationship/index.js'\nimport { RichTextField } from './RichText/index.js'\nimport { RowField } from './Row/index.js'\nimport { SelectField } from './Select/index.js'\nimport { TabsField } from './Tabs/index.js'\nimport { TextField } from './Text/index.js'\nimport { TextareaField } from './Textarea/index.js'\nimport { UIField } from './UI/index.js'\nimport { UploadField } from './Upload/index.js'\n\nexport * from './shared/index.js'\n\nexport type FieldTypesComponents = {\n [K in 'password' | FieldTypes]: React.FC<ClientFieldBase>\n} & {\n confirmPassword: React.FC<ConfirmPasswordFieldProps>\n hidden: React.FC<HiddenFieldProps>\n}\n\nexport const fieldComponents: FieldTypesComponents = {\n array: ArrayField,\n blocks: BlocksField,\n checkbox: CheckboxField,\n code: CodeField,\n collapsible: CollapsibleField,\n confirmPassword: ConfirmPasswordField,\n date: DateTimeField,\n email: EmailField,\n group: GroupField,\n hidden: HiddenField,\n join: JoinField,\n json: JSONField,\n number: NumberField,\n password: PasswordField,\n point: PointField,\n radio: RadioGroupField,\n relationship: RelationshipField,\n richText: RichTextField,\n row: RowField,\n select: SelectField,\n tabs: TabsField,\n text: TextField,\n textarea: TextareaField,\n ui: UIField,\n upload: UploadField,\n}\n\nexport type FieldComponentsWithSlots = {\n Description: React.FC<GenericDescriptionProps>\n Error: React.FC<GenericErrorProps>\n Label: React.FC<GenericLabelProps>\n RowLabel: React.FC\n} & FieldTypesComponents\n\nexport const allFieldComponents: FieldComponentsWithSlots = {\n ...fieldComponents,\n Description: FieldDescription,\n Error: FieldError,\n Label: FieldLabel,\n RowLabel,\n}\n"],"mappings":"AAAA;;AAaA,SAASA,QAAQ,QAAQ;AACzB,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,aAAa,QAAQ;AAC9B,SAASC,UAAU,QAAQ;AAC3B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,UAAU,QAAQ;AAC3B,SAASC,UAAU,QAAQ;AAC3B,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,WAAW,QAAQ;AAC5B,SAASC,aAAa,QAAQ;AAC9B,SAASC,UAAU,QAAQ;AAC3B,SAASC,eAAe,QAAQ;AAChC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,aAAa,QAAQ;AAC9B,SAASC,OAAO,QAAQ;AACxB,SAASC,WAAW,QAAQ;AAE5B,cAAc;AASd,OAAO,MAAMC,eAAA,GAAwC;EACnDC,KAAA,EAAO7B,UAAA;EACP8B,MAAA,EAAQ7B,WAAA;EACR8B,QAAA,EAAU7B,aAAA;EACV8B,IAAA,EAAM7B,SAAA;EACN8B,WAAA,EAAa7B,gBAAA;EACb8B,eAAA,EAAiB7B,oBAAA;EACjB8B,IAAA,EAAM7B,aAAA;EACN8B,KAAA,EAAO7B,UAAA;EACP8B,KAAA,EAAO1B,UAAA;EACP2B,MAAA,EAAQ1B,WAAA;EACR2B,IAAA,EAAM1B,SAAA;EACN2B,IAAA,EAAM1B,SAAA;EACN2B,MAAA,EAAQ1B,WAAA;EACR2B,QAAA,EAAU1B,aAAA;EACV2B,KAAA,EAAO1B,UAAA;EACP2B,KAAA,EAAO1B,eAAA;EACP2B,YAAA,EAAc1B,iBAAA;EACd2B,QAAA,EAAU1B,aAAA;EACV2B,GAAA,EAAK1B,QAAA;EACL2B,MAAA,EAAQ1B,WAAA;EACR2B,IAAA,EAAM1B,SAAA;EACN2B,IAAA,EAAM1B,SAAA;EACN2B,QAAA,EAAU1B,aAAA;EACV2B,EAAA,EAAI1B,OAAA;EACJ2B,MAAA,EAAQ1B;AACV;AASA,OAAO,MAAM2B,kBAAA,GAA+C;EAC1D,GAAG1B,eAAe;EAClB2B,WAAA,EAAa/C,gBAAA;EACbgD,KAAA,EAAO/C,UAAA;EACPgD,KAAA,EAAO/C,UAAA;EACPX;AACF","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["RowLabel","ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","ConfirmPasswordField","DateTimeField","EmailField","FieldDescription","FieldError","FieldLabel","GroupField","HiddenField","JoinField","JSONField","NumberField","PasswordField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","SlugField","TabsField","TextField","TextareaField","UIField","UploadField","fieldComponents","slug","array","blocks","checkbox","code","collapsible","confirmPassword","date","email","group","hidden","join","json","number","password","point","radio","relationship","richText","row","select","tabs","text","textarea","ui","upload","allFieldComponents","Description","Error","Label"],"sources":["../../src/fields/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientFieldBase,\n FieldTypes,\n GenericDescriptionProps,\n GenericErrorProps,\n GenericLabelProps,\n HiddenFieldProps,\n} from 'payload'\nimport type React from 'react'\n\nimport type { ConfirmPasswordFieldProps } from './ConfirmPassword/index.js'\n\nimport { RowLabel } from '../forms/RowLabel/index.js'\nimport { ArrayField } from './Array/index.js'\nimport { BlocksField } from './Blocks/index.js'\nimport { CheckboxField } from './Checkbox/index.js'\nimport { CodeField } from './Code/index.js'\nimport { CollapsibleField } from './Collapsible/index.js'\nimport { ConfirmPasswordField } from './ConfirmPassword/index.js'\nimport { DateTimeField } from './DateTime/index.js'\nimport { EmailField } from './Email/index.js'\nimport { FieldDescription } from './FieldDescription/index.js'\nimport { FieldError } from './FieldError/index.js'\nimport { FieldLabel } from './FieldLabel/index.js'\nimport { GroupField } from './Group/index.js'\nimport { HiddenField } from './Hidden/index.js'\nimport { JoinField } from './Join/index.js'\nimport { JSONField } from './JSON/index.js'\nimport { NumberField } from './Number/index.js'\nimport { PasswordField } from './Password/index.js'\nimport { PointField } from './Point/index.js'\nimport { RadioGroupField } from './RadioGroup/index.js'\nimport { RelationshipField } from './Relationship/index.js'\nimport { RichTextField } from './RichText/index.js'\nimport { RowField } from './Row/index.js'\nimport { SelectField } from './Select/index.js'\nimport { SlugField } from './Slug/index.js'\nimport { TabsField } from './Tabs/index.js'\nimport { TextField } from './Text/index.js'\nimport { TextareaField } from './Textarea/index.js'\nimport { UIField } from './UI/index.js'\nimport { UploadField } from './Upload/index.js'\n\nexport * from './shared/index.js'\n\nexport type FieldTypesComponents = {\n [K in 'password' | FieldTypes]: React.FC<ClientFieldBase>\n} & {\n confirmPassword: React.FC<ConfirmPasswordFieldProps>\n hidden: React.FC<HiddenFieldProps>\n}\n\nexport const fieldComponents: FieldTypesComponents = {\n slug: SlugField,\n array: ArrayField,\n blocks: BlocksField,\n checkbox: CheckboxField,\n code: CodeField,\n collapsible: CollapsibleField,\n confirmPassword: ConfirmPasswordField,\n date: DateTimeField,\n email: EmailField,\n group: GroupField,\n hidden: HiddenField,\n join: JoinField,\n json: JSONField,\n number: NumberField,\n password: PasswordField,\n point: PointField,\n radio: RadioGroupField,\n relationship: RelationshipField,\n richText: RichTextField,\n row: RowField,\n select: SelectField,\n tabs: TabsField,\n text: TextField,\n textarea: TextareaField,\n ui: UIField,\n upload: UploadField,\n}\n\nexport type FieldComponentsWithSlots = {\n Description: React.FC<GenericDescriptionProps>\n Error: React.FC<GenericErrorProps>\n Label: React.FC<GenericLabelProps>\n RowLabel: React.FC\n} & FieldTypesComponents\n\nexport const allFieldComponents: FieldComponentsWithSlots = {\n ...fieldComponents,\n Description: FieldDescription,\n Error: FieldError,\n Label: FieldLabel,\n RowLabel,\n}\n"],"mappings":"AAAA;;AAaA,SAASA,QAAQ,QAAQ;AACzB,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,aAAa,QAAQ;AAC9B,SAASC,SAAS,QAAQ;AAC1B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,aAAa,QAAQ;AAC9B,SAASC,UAAU,QAAQ;AAC3B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,UAAU,QAAQ;AAC3B,SAASC,UAAU,QAAQ;AAC3B,SAASC,UAAU,QAAQ;AAC3B,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,WAAW,QAAQ;AAC5B,SAASC,aAAa,QAAQ;AAC9B,SAASC,UAAU,QAAQ;AAC3B,SAASC,eAAe,QAAQ;AAChC,SAASC,iBAAiB,QAAQ;AAClC,SAASC,aAAa,QAAQ;AAC9B,SAASC,QAAQ,QAAQ;AACzB,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,aAAa,QAAQ;AAC9B,SAASC,OAAO,QAAQ;AACxB,SAASC,WAAW,QAAQ;AAE5B,cAAc;AASd,OAAO,MAAMC,eAAA,GAAwC;EACnDC,IAAA,EAAMP,SAAA;EACNQ,KAAA,EAAO/B,UAAA;EACPgC,MAAA,EAAQ/B,WAAA;EACRgC,QAAA,EAAU/B,aAAA;EACVgC,IAAA,EAAM/B,SAAA;EACNgC,WAAA,EAAa/B,gBAAA;EACbgC,eAAA,EAAiB/B,oBAAA;EACjBgC,IAAA,EAAM/B,aAAA;EACNgC,KAAA,EAAO/B,UAAA;EACPgC,KAAA,EAAO5B,UAAA;EACP6B,MAAA,EAAQ5B,WAAA;EACR6B,IAAA,EAAM5B,SAAA;EACN6B,IAAA,EAAM5B,SAAA;EACN6B,MAAA,EAAQ5B,WAAA;EACR6B,QAAA,EAAU5B,aAAA;EACV6B,KAAA,EAAO5B,UAAA;EACP6B,KAAA,EAAO5B,eAAA;EACP6B,YAAA,EAAc5B,iBAAA;EACd6B,QAAA,EAAU5B,aAAA;EACV6B,GAAA,EAAK5B,QAAA;EACL6B,MAAA,EAAQ5B,WAAA;EACR6B,IAAA,EAAM3B,SAAA;EACN4B,IAAA,EAAM3B,SAAA;EACN4B,QAAA,EAAU3B,aAAA;EACV4B,EAAA,EAAI3B,OAAA;EACJ4B,MAAA,EAAQ3B;AACV;AASA,OAAO,MAAM4B,kBAAA,GAA+C;EAC1D,GAAG3B,eAAe;EAClB4B,WAAA,EAAajD,gBAAA;EACbkD,KAAA,EAAOjD,UAAA;EACPkD,KAAA,EAAOjD,UAAA;EACPX;AACF","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"RenderField.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/RenderField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,MAAM,OAAO,CAAA;AA2BzB,KAAK,gBAAgB,GAAG;IACtB,iBAAiB,EAAE,WAAW,CAAA;IAC9B,WAAW,EAAE,yBAAyB,CAAA;CACvC,GAAG,UAAU,GACZ,IAAI,CAAC,oBAAoB,EAAE,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC,CAAA;AAEvE,wBAAgB,WAAW,CAAC,EAC1B,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,UAAU,GACX,EAAE,gBAAgB,0PA+FlB"}
1
+ {"version":3,"file":"RenderField.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/RenderField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,oBAAoB,EACpB,WAAW,EACX,UAAU,EACV,yBAAyB,EAC1B,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,MAAM,OAAO,CAAA;AA4BzB,KAAK,gBAAgB,GAAG;IACtB,iBAAiB,EAAE,WAAW,CAAA;IAC9B,WAAW,EAAE,yBAAyB,CAAA;CACvC,GAAG,UAAU,GACZ,IAAI,CAAC,oBAAoB,EAAE,aAAa,GAAG,UAAU,GAAG,YAAY,CAAC,CAAA;AAEvE,wBAAgB,WAAW,CAAC,EAC1B,iBAAiB,EACjB,WAAW,EACX,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,UAAU,GACX,EAAE,gBAAgB,0PAkGlB"}
@@ -21,6 +21,7 @@ import { RelationshipField } from '../../fields/Relationship/index.js';
21
21
  import { RichTextField } from '../../fields/RichText/index.js';
22
22
  import { RowField } from '../../fields/Row/index.js';
23
23
  import { SelectField } from '../../fields/Select/index.js';
24
+ import { SlugField } from '../../fields/Slug/index.js';
24
25
  import { TabsField } from '../../fields/Tabs/index.js';
25
26
  import { TextField } from '../../fields/Text/index.js';
26
27
  import { TextareaField } from '../../fields/Textarea/index.js';
@@ -233,6 +234,15 @@ export function RenderField(t0) {
233
234
  });
234
235
  break bb0;
235
236
  }
237
+ case "slug":
238
+ {
239
+ t2 = _jsx(SlugField, {
240
+ ...baseFieldProps,
241
+ field: clientFieldConfig,
242
+ path
243
+ });
244
+ break bb0;
245
+ }
236
246
  case "tabs":
237
247
  {
238
248
  t2 = _jsx(TabsField, {
@@ -1 +1 @@
1
- {"version":3,"file":"RenderField.js","names":["c","_c","React","ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","DateTimeField","EmailField","GroupField","HiddenField","JoinField","JSONField","NumberField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","TabsField","TextField","TextareaField","UIField","UploadField","useFormFields","RenderField","t0","$","clientFieldConfig","forceRender","indexPath","parentPath","parentSchemaPath","path","permissions","readOnly","schemaPath","t1","t2","fields","customComponents","Field","CustomField","Symbol","for","baseFieldProps","admin","hidden","_jsx","undefined","bb0","iterableFieldProps","type","field"],"sources":["../../../src/forms/RenderFields/RenderField.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport React from 'react'\n\nimport { ArrayField } from '../../fields/Array/index.js'\nimport { BlocksField } from '../../fields/Blocks/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { CodeField } from '../../fields/Code/index.js'\nimport { CollapsibleField } from '../../fields/Collapsible/index.js'\nimport { DateTimeField } from '../../fields/DateTime/index.js'\nimport { EmailField } from '../../fields/Email/index.js'\nimport { GroupField } from '../../fields/Group/index.js'\nimport { HiddenField } from '../../fields/Hidden/index.js'\nimport { JoinField } from '../../fields/Join/index.js'\nimport { JSONField } from '../../fields/JSON/index.js'\nimport { NumberField } from '../../fields/Number/index.js'\nimport { PointField } from '../../fields/Point/index.js'\nimport { RadioGroupField } from '../../fields/RadioGroup/index.js'\nimport { RelationshipField } from '../../fields/Relationship/index.js'\nimport { RichTextField } from '../../fields/RichText/index.js'\nimport { RowField } from '../../fields/Row/index.js'\nimport { SelectField } from '../../fields/Select/index.js'\nimport { TabsField } from '../../fields/Tabs/index.js'\nimport { TextField } from '../../fields/Text/index.js'\nimport { TextareaField } from '../../fields/Textarea/index.js'\nimport { UIField } from '../../fields/UI/index.js'\nimport { UploadField } from '../../fields/Upload/index.js'\nimport { useFormFields } from '../../forms/Form/index.js'\n\ntype RenderFieldProps = {\n clientFieldConfig: ClientField\n permissions: SanitizedFieldPermissions\n} & FieldPaths &\n Pick<ClientComponentProps, 'forceRender' | 'readOnly' | 'schemaPath'>\n\nexport function RenderField({\n clientFieldConfig,\n forceRender,\n indexPath,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n}: RenderFieldProps) {\n const CustomField = useFormFields(([fields]) => fields && fields?.[path]?.customComponents?.Field)\n\n const baseFieldProps: Pick<\n ClientComponentProps,\n 'forceRender' | 'permissions' | 'readOnly' | 'schemaPath'\n > = {\n forceRender,\n permissions,\n readOnly,\n schemaPath,\n }\n\n if (clientFieldConfig.admin?.hidden) {\n return <HiddenField {...baseFieldProps} path={path} />\n }\n\n if (CustomField !== undefined) {\n return CustomField || null\n }\n\n const iterableFieldProps = {\n ...baseFieldProps,\n indexPath,\n parentPath,\n parentSchemaPath,\n }\n\n switch (clientFieldConfig.type) {\n case 'array':\n return <ArrayField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'blocks':\n return <BlocksField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'checkbox':\n return <CheckboxField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'code':\n return <CodeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'collapsible':\n return <CollapsibleField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'date':\n return <DateTimeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'email':\n return <EmailField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'group':\n return <GroupField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'join':\n return <JoinField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'json':\n return <JSONField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'number':\n return <NumberField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'point':\n return <PointField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'radio':\n return <RadioGroupField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'relationship':\n return <RelationshipField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'richText':\n return <RichTextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'row':\n return <RowField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'select':\n return <SelectField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'tabs':\n return <TabsField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'text':\n return <TextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'textarea':\n return <TextareaField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'ui':\n return <UIField />\n\n case 'upload':\n return <UploadField {...baseFieldProps} field={clientFieldConfig} path={path} />\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RenderField.js","names":["c","_c","React","ArrayField","BlocksField","CheckboxField","CodeField","CollapsibleField","DateTimeField","EmailField","GroupField","HiddenField","JoinField","JSONField","NumberField","PointField","RadioGroupField","RelationshipField","RichTextField","RowField","SelectField","SlugField","TabsField","TextField","TextareaField","UIField","UploadField","useFormFields","RenderField","t0","$","clientFieldConfig","forceRender","indexPath","parentPath","parentSchemaPath","path","permissions","readOnly","schemaPath","t1","t2","fields","customComponents","Field","CustomField","Symbol","for","baseFieldProps","admin","hidden","_jsx","undefined","bb0","iterableFieldProps","type","field"],"sources":["../../../src/forms/RenderFields/RenderField.tsx"],"sourcesContent":["'use client'\n\nimport type {\n ClientComponentProps,\n ClientField,\n FieldPaths,\n SanitizedFieldPermissions,\n} from 'payload'\n\nimport React from 'react'\n\nimport { ArrayField } from '../../fields/Array/index.js'\nimport { BlocksField } from '../../fields/Blocks/index.js'\nimport { CheckboxField } from '../../fields/Checkbox/index.js'\nimport { CodeField } from '../../fields/Code/index.js'\nimport { CollapsibleField } from '../../fields/Collapsible/index.js'\nimport { DateTimeField } from '../../fields/DateTime/index.js'\nimport { EmailField } from '../../fields/Email/index.js'\nimport { GroupField } from '../../fields/Group/index.js'\nimport { HiddenField } from '../../fields/Hidden/index.js'\nimport { JoinField } from '../../fields/Join/index.js'\nimport { JSONField } from '../../fields/JSON/index.js'\nimport { NumberField } from '../../fields/Number/index.js'\nimport { PointField } from '../../fields/Point/index.js'\nimport { RadioGroupField } from '../../fields/RadioGroup/index.js'\nimport { RelationshipField } from '../../fields/Relationship/index.js'\nimport { RichTextField } from '../../fields/RichText/index.js'\nimport { RowField } from '../../fields/Row/index.js'\nimport { SelectField } from '../../fields/Select/index.js'\nimport { SlugField } from '../../fields/Slug/index.js'\nimport { TabsField } from '../../fields/Tabs/index.js'\nimport { TextField } from '../../fields/Text/index.js'\nimport { TextareaField } from '../../fields/Textarea/index.js'\nimport { UIField } from '../../fields/UI/index.js'\nimport { UploadField } from '../../fields/Upload/index.js'\nimport { useFormFields } from '../../forms/Form/index.js'\n\ntype RenderFieldProps = {\n clientFieldConfig: ClientField\n permissions: SanitizedFieldPermissions\n} & FieldPaths &\n Pick<ClientComponentProps, 'forceRender' | 'readOnly' | 'schemaPath'>\n\nexport function RenderField({\n clientFieldConfig,\n forceRender,\n indexPath,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n readOnly,\n schemaPath,\n}: RenderFieldProps) {\n const CustomField = useFormFields(([fields]) => fields && fields?.[path]?.customComponents?.Field)\n\n const baseFieldProps: Pick<\n ClientComponentProps,\n 'forceRender' | 'permissions' | 'readOnly' | 'schemaPath'\n > = {\n forceRender,\n permissions,\n readOnly,\n schemaPath,\n }\n\n if (clientFieldConfig.admin?.hidden) {\n return <HiddenField {...baseFieldProps} path={path} />\n }\n\n if (CustomField !== undefined) {\n return CustomField || null\n }\n\n const iterableFieldProps = {\n ...baseFieldProps,\n indexPath,\n parentPath,\n parentSchemaPath,\n }\n\n switch (clientFieldConfig.type) {\n case 'array':\n return <ArrayField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'blocks':\n return <BlocksField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'checkbox':\n return <CheckboxField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'code':\n return <CodeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'collapsible':\n return <CollapsibleField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'date':\n return <DateTimeField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'email':\n return <EmailField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'group':\n return <GroupField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'join':\n return <JoinField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'json':\n return <JSONField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'number':\n return <NumberField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'point':\n return <PointField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'radio':\n return <RadioGroupField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'relationship':\n return <RelationshipField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'richText':\n return <RichTextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'row':\n return <RowField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'select':\n return <SelectField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'slug':\n return <SlugField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'tabs':\n return <TabsField {...iterableFieldProps} field={clientFieldConfig} path={path} />\n\n case 'text':\n return <TextField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'textarea':\n return <TextareaField {...baseFieldProps} field={clientFieldConfig} path={path} />\n\n case 'ui':\n return <UIField />\n\n case 'upload':\n return <UploadField {...baseFieldProps} field={clientFieldConfig} path={path} />\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"addFieldStatePromise.d.ts","sourceRoot":"","sources":["../../../src/forms/fieldSchemasToFormState/addFieldStatePromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,cAAc,EAGd,SAAS,EACT,0BAA0B,EAC1B,cAAc,EAGd,0BAA0B,EAC1B,UAAU,EACV,UAAU,EACV,UAAU,EAEX,MAAM,SAAS,CAAA;AAchB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAQnD,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;OAEG;IACH,SAAS,EAAE,IAAI,GAAG,SAAS,CAAA;IAC3B,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,cAAc,CAAA;IAC9B;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAA;IACpD;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,EAAE,IAAI,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACzC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,0BAA0B,CAAA;IAC7C,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,mBAAmB,CAAA;IAChC,iBAAiB,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,iBAAiB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,cAAc,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,0BAA0B,CAAA;CAClC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAU,MAAM,wBAAwB,KAAG,OAAO,CAAC,IAAI,CA26BvF,CAAA"}
1
+ {"version":3,"file":"addFieldStatePromise.d.ts","sourceRoot":"","sources":["../../../src/forms/fieldSchemasToFormState/addFieldStatePromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,IAAI,EACJ,mBAAmB,EACnB,KAAK,EACL,cAAc,EAGd,SAAS,EACT,0BAA0B,EAC1B,cAAc,EAGd,0BAA0B,EAC1B,UAAU,EACV,UAAU,EACV,UAAU,EAEX,MAAM,SAAS,CAAA;AAchB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAQnD,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAA;IACjD;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B;;OAEG;IACH,SAAS,EAAE,IAAI,GAAG,SAAS,CAAA;IAC3B,oBAAoB,CAAC,EAAE,oBAAoB,CAAA;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,KAAK,GAAG,UAAU,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,cAAc,CAAA;IAC9B;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAA;IACpD;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,EAAE,IAAI,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAA;IACzC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,0BAA0B,CAAA;IAC7C,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,mBAAmB,CAAA;IAChC,iBAAiB,EAAE,SAAS,CAAA;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,EAAE,OAAO,CAAA;IACxB,aAAa,EAAE,iBAAiB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,cAAc,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,UAAU,CAAC,EAAE,UAAU,CAAA;IACvB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,0BAA0B,CAAA;CAClC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAU,MAAM,wBAAwB,KAAG,OAAO,CAAC,IAAI,CAq7BvF,CAAA"}
@@ -72,10 +72,12 @@ export const addFieldStatePromise = async args => {
72
72
  if (includeSchema) {
73
73
  fieldState.fieldSchema = field;
74
74
  }
75
- // Short-circuit to prevent hidden fields from recursing and rendering.
76
- // Note: `tab` is excluded bc tab visibility is keyed by `field.id` rather than `path`.
77
- // The tab branch below owns that write and the skip-recursion.
78
- if (passesCondition === false && field.type !== 'tab') {
75
+ // Short-circuit hidden fields to prevent recursing and rendering. Two exclusions:
76
+ // - `tab`: visibility is keyed by `field.id` (not `path`); the tab branch owns that write.
77
+ // - presentational containers (row, collapsible, unnamed group): they hold no value, so
78
+ // returning here drops their nested fields' values.
79
+ const isPresentationalWithSubFields = fieldHasSubFields(field) && !fieldAffectsData(field);
80
+ if (passesCondition === false && field.type !== 'tab' && !isPresentationalWithSubFields) {
79
81
  if (fieldAffectsData(field) && data?.[field.name] !== undefined) {
80
82
  fieldState.value = data[field.name];
81
83
  fieldState.initialValue = data[field.name];
@@ -578,6 +580,12 @@ export const addFieldStatePromise = async args => {
578
580
  state[path] = {
579
581
  disableFormData: true
580
582
  };
583
+ // Presentational containers are hidden client-side via `withCondition`, which reads
584
+ // `passesCondition` from their own state entry. Must be set here since these fields
585
+ // are excluded from the short-circuit above (which would otherwise carry the flag).
586
+ if (passesCondition === false) {
587
+ state[path].passesCondition = false;
588
+ }
581
589
  }
582
590
  await iterateFields({
583
591
  id,