@payloadcms/ui 3.4.0 → 3.4.1-canary.2a8fa30

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 (47) hide show
  1. package/dist/elements/CodeEditor/CodeEditor.js +39 -32
  2. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  3. package/dist/elements/CodeEditor/types.d.ts +4 -0
  4. package/dist/elements/CodeEditor/types.d.ts.map +1 -1
  5. package/dist/elements/CodeEditor/types.js.map +1 -1
  6. package/dist/elements/PublishButton/index.js +15 -18
  7. package/dist/elements/PublishButton/index.js.map +1 -1
  8. package/dist/exports/client/{CodeEditor-RZ32B2QF.js → CodeEditor-QIIK6FKF.js} +2 -2
  9. package/dist/exports/client/{chunk-CKHKQPOO.js → chunk-MFQ5YTBK.js} +6 -6
  10. package/dist/exports/client/chunk-MFQ5YTBK.js.map +8 -0
  11. package/dist/exports/client/index.d.ts +4 -0
  12. package/dist/exports/client/index.d.ts.map +1 -1
  13. package/dist/exports/client/index.js +10 -10
  14. package/dist/exports/client/index.js.map +4 -4
  15. package/dist/exports/shared/index.js +2 -2
  16. package/dist/exports/shared/index.js.map +3 -3
  17. package/dist/fields/Group/index.d.ts.map +1 -1
  18. package/dist/fields/Group/index.js +2 -1
  19. package/dist/fields/Group/index.js.map +1 -1
  20. package/dist/fields/Relationship/index.d.ts.map +1 -1
  21. package/dist/fields/Relationship/index.js +1 -1
  22. package/dist/fields/Relationship/index.js.map +1 -1
  23. package/dist/fields/Select/Input.d.ts +1 -0
  24. package/dist/fields/Select/Input.d.ts.map +1 -1
  25. package/dist/fields/Select/Input.js +41 -38
  26. package/dist/fields/Select/Input.js.map +1 -1
  27. package/dist/fields/Tabs/index.d.ts +15 -0
  28. package/dist/fields/Tabs/index.d.ts.map +1 -1
  29. package/dist/fields/Tabs/index.js +2 -2
  30. package/dist/fields/Tabs/index.js.map +1 -1
  31. package/dist/forms/Form/index.d.ts.map +1 -1
  32. package/dist/forms/Form/index.js +2 -1
  33. package/dist/forms/Form/index.js.map +1 -1
  34. package/dist/providers/Locale/index.d.ts +15 -1
  35. package/dist/providers/Locale/index.d.ts.map +1 -1
  36. package/dist/providers/Locale/index.js +50 -119
  37. package/dist/providers/Locale/index.js.map +1 -1
  38. package/dist/providers/SearchParams/index.d.ts.map +1 -1
  39. package/dist/providers/SearchParams/index.js +25 -68
  40. package/dist/providers/SearchParams/index.js.map +1 -1
  41. package/dist/styles.css +1 -1
  42. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  43. package/dist/utilities/groupNavItems.js +6 -6
  44. package/dist/utilities/groupNavItems.js.map +1 -1
  45. package/package.json +5 -5
  46. package/dist/exports/client/chunk-CKHKQPOO.js.map +0 -8
  47. /package/dist/exports/client/{CodeEditor-RZ32B2QF.js.map → CodeEditor-QIIK6FKF.js.map} +0 -0
@@ -17,6 +17,7 @@ export type SelectInputProps = {
17
17
  readonly localized?: boolean;
18
18
  readonly name: string;
19
19
  readonly onChange?: ReactSelectAdapterProps['onChange'];
20
+ readonly onInputChange?: ReactSelectAdapterProps['onInputChange'];
20
21
  readonly options?: OptionObject[];
21
22
  readonly path: string;
22
23
  readonly readOnly?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Select/Input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAG3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AASlF,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAA;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA2FlD,CAAA"}
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/fields/Select/Input.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAG3E,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAA;AASlF,OAAO,cAAc,CAAA;AAErB,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACrC,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtC,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAA;IACxC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAChC,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAA;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB,CAAC,UAAU,CAAC,CAAA;IACvD,QAAQ,CAAC,aAAa,CAAC,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAA;IACjE,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAA;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6FlD,CAAA"}
@@ -13,7 +13,7 @@ import { useTranslation } from '../../providers/Translation/index.js';
13
13
  import { fieldBaseClass } from '../shared/index.js';
14
14
  import './index.scss';
15
15
  export const SelectInput = props => {
16
- const $ = _c(38);
16
+ const $ = _c(39);
17
17
  const {
18
18
  AfterInput,
19
19
  BeforeInput,
@@ -28,6 +28,7 @@ export const SelectInput = props => {
28
28
  Label,
29
29
  localized,
30
30
  onChange,
31
+ onInputChange,
31
32
  options,
32
33
  path,
33
34
  readOnly,
@@ -43,11 +44,11 @@ export const SelectInput = props => {
43
44
  i18n
44
45
  } = useTranslation();
45
46
  let t3;
46
- if ($[0] !== AfterInput || $[1] !== BeforeInput || $[2] !== Description || $[3] !== Error || $[4] !== Label || $[5] !== className || $[6] !== description || $[7] !== hasMany || $[8] !== i18n || $[9] !== isClearable || $[10] !== isSortable || $[11] !== label || $[12] !== localized || $[13] !== onChange || $[14] !== options || $[15] !== path || $[16] !== readOnly || $[17] !== required || $[18] !== showError || $[19] !== style || $[20] !== value) {
47
+ if ($[0] !== AfterInput || $[1] !== BeforeInput || $[2] !== Description || $[3] !== Error || $[4] !== Label || $[5] !== className || $[6] !== description || $[7] !== hasMany || $[8] !== i18n || $[9] !== isClearable || $[10] !== isSortable || $[11] !== label || $[12] !== localized || $[13] !== onChange || $[14] !== onInputChange || $[15] !== options || $[16] !== path || $[17] !== readOnly || $[18] !== required || $[19] !== showError || $[20] !== style || $[21] !== value) {
47
48
  let valueToRender;
48
49
  if (hasMany && Array.isArray(value)) {
49
50
  let t4;
50
- if ($[22] !== i18n || $[23] !== options) {
51
+ if ($[23] !== i18n || $[24] !== options) {
51
52
  t4 = val => {
52
53
  const matchingOption = options.find(option => option.value === val);
53
54
  return {
@@ -55,36 +56,36 @@ export const SelectInput = props => {
55
56
  value: matchingOption?.value ?? val
56
57
  };
57
58
  };
58
- $[22] = i18n;
59
- $[23] = options;
60
- $[24] = t4;
59
+ $[23] = i18n;
60
+ $[24] = options;
61
+ $[25] = t4;
61
62
  } else {
62
- t4 = $[24];
63
+ t4 = $[25];
63
64
  }
64
65
  valueToRender = value.map(t4);
65
66
  } else {
66
67
  if (value) {
67
68
  let matchingOption_0;
68
69
  let t4;
69
- if ($[25] !== i18n || $[26] !== options || $[27] !== value) {
70
+ if ($[26] !== i18n || $[27] !== options || $[28] !== value) {
70
71
  let t5;
71
- if ($[30] !== value) {
72
+ if ($[31] !== value) {
72
73
  t5 = option_0 => option_0.value === value;
73
- $[30] = value;
74
- $[31] = t5;
74
+ $[31] = value;
75
+ $[32] = t5;
75
76
  } else {
76
- t5 = $[31];
77
+ t5 = $[32];
77
78
  }
78
79
  matchingOption_0 = options.find(t5);
79
80
  t4 = matchingOption_0 ? getTranslation(matchingOption_0.label, i18n) : value;
80
- $[25] = i18n;
81
- $[26] = options;
82
- $[27] = value;
83
- $[28] = matchingOption_0;
84
- $[29] = t4;
81
+ $[26] = i18n;
82
+ $[27] = options;
83
+ $[28] = value;
84
+ $[29] = matchingOption_0;
85
+ $[30] = t4;
85
86
  } else {
86
- matchingOption_0 = $[28];
87
- t4 = $[29];
87
+ matchingOption_0 = $[29];
88
+ t4 = $[30];
88
89
  }
89
90
  valueToRender = {
90
91
  label: t4,
@@ -95,25 +96,25 @@ export const SelectInput = props => {
95
96
  const t4 = showError && "error";
96
97
  const t5 = readOnly && "read-only";
97
98
  let t6;
98
- if ($[32] !== className || $[33] !== t4 || $[34] !== t5) {
99
+ if ($[33] !== className || $[34] !== t4 || $[35] !== t5) {
99
100
  t6 = [fieldBaseClass, "select", className, t4, t5].filter(Boolean);
100
- $[32] = className;
101
- $[33] = t4;
102
- $[34] = t5;
103
- $[35] = t6;
101
+ $[33] = className;
102
+ $[34] = t4;
103
+ $[35] = t5;
104
+ $[36] = t6;
104
105
  } else {
105
- t6 = $[35];
106
+ t6 = $[36];
106
107
  }
107
108
  let t7;
108
- if ($[36] !== i18n) {
109
+ if ($[37] !== i18n) {
109
110
  t7 = option_1 => ({
110
111
  ...option_1,
111
112
  label: getTranslation(option_1.label, i18n)
112
113
  });
113
- $[36] = i18n;
114
- $[37] = t7;
114
+ $[37] = i18n;
115
+ $[38] = t7;
115
116
  } else {
116
- t7 = $[37];
117
+ t7 = $[38];
117
118
  }
118
119
  t3 = _jsxs("div", {
119
120
  className: t6.join(" "),
@@ -141,6 +142,7 @@ export const SelectInput = props => {
141
142
  isMulti: hasMany,
142
143
  isSortable,
143
144
  onChange,
145
+ onInputChange,
144
146
  options: options.map(t7),
145
147
  showError,
146
148
  value: valueToRender
@@ -167,16 +169,17 @@ export const SelectInput = props => {
167
169
  $[11] = label;
168
170
  $[12] = localized;
169
171
  $[13] = onChange;
170
- $[14] = options;
171
- $[15] = path;
172
- $[16] = readOnly;
173
- $[17] = required;
174
- $[18] = showError;
175
- $[19] = style;
176
- $[20] = value;
177
- $[21] = t3;
172
+ $[14] = onInputChange;
173
+ $[15] = options;
174
+ $[16] = path;
175
+ $[17] = readOnly;
176
+ $[18] = required;
177
+ $[19] = showError;
178
+ $[20] = style;
179
+ $[21] = value;
180
+ $[22] = t3;
178
181
  } else {
179
- t3 = $[21];
182
+ t3 = $[22];
180
183
  }
181
184
  return t3;
182
185
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","names":["c","_c","getTranslation","React","ReactSelect","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useTranslation","fieldBaseClass","SelectInput","props","$","AfterInput","BeforeInput","className","Description","description","Error","hasMany","t0","isClearable","t1","isSortable","t2","label","Label","localized","onChange","options","path","readOnly","required","showError","style","value","undefined","i18n","t3","valueToRender","Array","isArray","t4","val","matchingOption","find","option","map","matchingOption_0","t5","option_0","t6","filter","Boolean","t7","option_1","_jsxs","join","id","replace","children","_jsx","CustomComponent","Fallback","disabled","isMulti"],"sources":["../../../src/fields/Select/Input.tsx"],"sourcesContent":["'use client'\nimport type { OptionObject, StaticDescription, StaticLabel } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { ReactSelectAdapterProps } from '../../elements/ReactSelect/types.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/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 { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type SelectInputProps = {\n readonly AfterInput?: React.ReactNode\n readonly BeforeInput?: React.ReactNode\n readonly className?: string\n readonly Description?: React.ReactNode\n readonly description?: StaticDescription\n readonly Error?: React.ReactNode\n readonly hasMany?: boolean\n readonly isClearable?: boolean\n readonly isSortable?: boolean\n readonly Label?: React.ReactNode\n readonly label?: StaticLabel\n readonly localized?: boolean\n readonly name: string\n readonly onChange?: ReactSelectAdapterProps['onChange']\n readonly options?: OptionObject[]\n readonly path: string\n readonly readOnly?: boolean\n readonly required?: boolean\n readonly showError?: boolean\n readonly style?: React.CSSProperties\n readonly value?: string | string[]\n}\n\nexport const SelectInput: React.FC<SelectInputProps> = (props) => {\n const {\n AfterInput,\n BeforeInput,\n className,\n Description,\n description,\n Error,\n hasMany = false,\n isClearable = true,\n isSortable = true,\n label,\n Label,\n localized,\n onChange,\n options,\n path,\n readOnly,\n required,\n showError,\n style,\n value,\n } = props\n\n const { i18n } = useTranslation()\n\n let valueToRender\n\n if (hasMany && Array.isArray(value)) {\n valueToRender = value.map((val) => {\n const matchingOption = options.find((option) => option.value === val)\n return {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : val,\n value: matchingOption?.value ?? val,\n }\n })\n } else if (value) {\n const matchingOption = options.find((option) => option.value === value)\n valueToRender = {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : value,\n value: matchingOption?.value ?? value,\n }\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'select',\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={style}\n >\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n }\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n {BeforeInput}\n <ReactSelect\n disabled={readOnly}\n isClearable={isClearable}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={onChange}\n options={options.map((option) => ({\n ...option,\n label: getTranslation(option.label, i18n),\n }))}\n showError={showError}\n value={valueToRender as OptionObject}\n />\n {AfterInput}\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Input.js","names":["c","_c","getTranslation","React","ReactSelect","RenderCustomComponent","FieldDescription","FieldError","FieldLabel","useTranslation","fieldBaseClass","SelectInput","props","$","AfterInput","BeforeInput","className","Description","description","Error","hasMany","t0","isClearable","t1","isSortable","t2","label","Label","localized","onChange","onInputChange","options","path","readOnly","required","showError","style","value","undefined","i18n","t3","valueToRender","Array","isArray","t4","val","matchingOption","find","option","map","matchingOption_0","t5","option_0","t6","filter","Boolean","t7","option_1","_jsxs","join","id","replace","children","_jsx","CustomComponent","Fallback","disabled","isMulti"],"sources":["../../../src/fields/Select/Input.tsx"],"sourcesContent":["'use client'\nimport type { OptionObject, StaticDescription, StaticLabel } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { ReactSelectAdapterProps } from '../../elements/ReactSelect/types.js'\n\nimport { ReactSelect } from '../../elements/ReactSelect/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 { useTranslation } from '../../providers/Translation/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\n\nexport type SelectInputProps = {\n readonly AfterInput?: React.ReactNode\n readonly BeforeInput?: React.ReactNode\n readonly className?: string\n readonly Description?: React.ReactNode\n readonly description?: StaticDescription\n readonly Error?: React.ReactNode\n readonly hasMany?: boolean\n readonly isClearable?: boolean\n readonly isSortable?: boolean\n readonly Label?: React.ReactNode\n readonly label?: StaticLabel\n readonly localized?: boolean\n readonly name: string\n readonly onChange?: ReactSelectAdapterProps['onChange']\n readonly onInputChange?: ReactSelectAdapterProps['onInputChange']\n readonly options?: OptionObject[]\n readonly path: string\n readonly readOnly?: boolean\n readonly required?: boolean\n readonly showError?: boolean\n readonly style?: React.CSSProperties\n readonly value?: string | string[]\n}\n\nexport const SelectInput: React.FC<SelectInputProps> = (props) => {\n const {\n AfterInput,\n BeforeInput,\n className,\n Description,\n description,\n Error,\n hasMany = false,\n isClearable = true,\n isSortable = true,\n label,\n Label,\n localized,\n onChange,\n onInputChange,\n options,\n path,\n readOnly,\n required,\n showError,\n style,\n value,\n } = props\n\n const { i18n } = useTranslation()\n\n let valueToRender\n\n if (hasMany && Array.isArray(value)) {\n valueToRender = value.map((val) => {\n const matchingOption = options.find((option) => option.value === val)\n return {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : val,\n value: matchingOption?.value ?? val,\n }\n })\n } else if (value) {\n const matchingOption = options.find((option) => option.value === value)\n valueToRender = {\n label: matchingOption ? getTranslation(matchingOption.label, i18n) : value,\n value: matchingOption?.value ?? value,\n }\n }\n\n return (\n <div\n className={[\n fieldBaseClass,\n 'select',\n className,\n showError && 'error',\n readOnly && 'read-only',\n ]\n .filter(Boolean)\n .join(' ')}\n id={`field-${path.replace(/\\./g, '__')}`}\n style={style}\n >\n <RenderCustomComponent\n CustomComponent={Label}\n Fallback={\n <FieldLabel label={label} localized={localized} path={path} required={required} />\n }\n />\n <div className={`${fieldBaseClass}__wrap`}>\n <RenderCustomComponent\n CustomComponent={Error}\n Fallback={<FieldError path={path} showError={showError} />}\n />\n {BeforeInput}\n <ReactSelect\n disabled={readOnly}\n isClearable={isClearable}\n isMulti={hasMany}\n isSortable={isSortable}\n onChange={onChange}\n onInputChange={onInputChange}\n options={options.map((option) => ({\n ...option,\n label: getTranslation(option.label, i18n),\n }))}\n showError={showError}\n value={valueToRender as OptionObject}\n />\n {AfterInput}\n </div>\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,23 @@
1
+ import type { ClientField, SanitizedFieldPermissions, StaticDescription } from 'payload';
1
2
  import React from 'react';
2
3
  import './index.scss';
3
4
  import { TabsProvider } from './provider.js';
5
+ export declare const baseClass = "tabs-field";
4
6
  export { TabsProvider };
5
7
  export declare const TabsField: React.FC<import("payload").FieldPaths & Pick<import("payload").ServerFieldBase, "permissions"> & {
6
8
  readonly field: Omit<import("payload").TabsFieldClient, "type"> & Partial<Pick<import("payload").TabsFieldClient, "type">>;
7
9
  } & Omit<import("payload").ClientComponentProps, "field" | "customComponents">>;
10
+ type ActiveTabProps = {
11
+ description: StaticDescription;
12
+ fields: ClientField[];
13
+ forceRender?: boolean;
14
+ label?: string;
15
+ parentIndexPath: string;
16
+ parentPath: string;
17
+ parentSchemaPath: string;
18
+ path: string;
19
+ permissions: SanitizedFieldPermissions;
20
+ readOnly: boolean;
21
+ };
22
+ export declare function ActiveTabContent({ description, fields, forceRender, label, parentIndexPath, parentPath, parentSchemaPath, path, permissions, readOnly, }: ActiveTabProps): string | number | bigint | true | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode>> | React.JSX.Element;
8
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Tabs/index.tsx"],"names":[],"mappings":"AAYA,OAAO,KAA2C,MAAM,OAAO,CAAA;AAY/D,OAAO,cAAc,CAAA;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAK5C,OAAO,EAAE,YAAY,EAAE,CAAA;AAuLvB,eAAO,MAAM,SAAS;;+EAAoC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/fields/Tabs/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EAGX,yBAAyB,EACzB,iBAAiB,EAElB,MAAM,SAAS,CAAA;AAIhB,OAAO,KAA2C,MAAM,OAAO,CAAA;AAY/D,OAAO,cAAc,CAAA;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAG5C,eAAO,MAAM,SAAS,eAAe,CAAA;AAErC,OAAO,EAAE,YAAY,EAAE,CAAA;AAuLvB,eAAO,MAAM,SAAS;;+EAAoC,CAAA;AAE1D,KAAK,cAAc,GAAG;IACpB,WAAW,EAAE,iBAAiB,CAAA;IAC9B,MAAM,EAAE,WAAW,EAAE,CAAA;IACrB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,yBAAyB,CAAA;IACtC,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AACD,wBAAgB,gBAAgB,CAAC,EAC/B,WAAW,EACX,MAAM,EACN,WAAW,EACX,KAAK,EACL,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,IAAI,EACJ,WAAW,EACX,QAAQ,GACT,EAAE,cAAc,0PAoChB"}
@@ -18,7 +18,7 @@ import { fieldBaseClass } from '../shared/index.js';
18
18
  import './index.scss';
19
19
  import { TabsProvider } from './provider.js';
20
20
  import { TabComponent } from './Tab/index.js';
21
- const baseClass = 'tabs-field';
21
+ export const baseClass = 'tabs-field';
22
22
  export { TabsProvider };
23
23
  function generateTabPath({
24
24
  activeTabConfig,
@@ -334,7 +334,7 @@ const TabsFieldComponent = props => {
334
334
  return t21;
335
335
  };
336
336
  export const TabsField = withCondition(TabsFieldComponent);
337
- function ActiveTabContent(t0) {
337
+ export function ActiveTabContent(t0) {
338
338
  const $ = _c(20);
339
339
  const {
340
340
  description,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","tabHasName","toKebabCase","React","useCallback","useEffect","useState","useCollapsible","RenderCustomComponent","RenderFields","useField","withCondition","useDocumentInfo","usePreferences","useTranslation","FieldDescription","fieldBaseClass","TabsProvider","TabComponent","baseClass","generateTabPath","activeTabConfig","path","tabPath","name","TabsFieldComponent","props","$","field","t0","forceRender","t1","indexPath","t2","parentPath","t3","parentSchemaPath","t4","t5","permissions","readOnly","admin","t6","tabs","t7","t8","undefined","className","t9","getPreference","setPreference","preferencesKey","i18n","isWithinCollapsible","activeTabIndex","setActiveTabIndex","tabsPrefKey","t10","activeTabPath","setActiveTabPath","t11","activePathChildrenPath","t12","activeTabSchemaPath","setActiveTabSchemaPath","t13","activePathSchemaChildrenPath","t14","t15","getInitialPref","existingPreferences","initialIndex","fields","tabIndex","newIndex","t16","incomingTabIndex","existingPreferences_0","handleTabChange","activeTabDescription","description","t17","t","activeTabStaticDescription","t18","t19","filter","Boolean","t20","join","t21","t22","tab","_jsx","isActive","setIsActive","t23","ActiveTabContent","parentIndexPath","String","children","_jsxs","map","TabsField","label","customComponents","AfterInput","BeforeInput","Description","Field","CustomComponent","Fallback"],"sources":["../../../src/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientField,\n ClientTab,\n DocumentPreferences,\n SanitizedFieldPermissions,\n StaticDescription,\n TabsFieldClientComponent,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { tabHasName, toKebabCase } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useCollapsible } from '../../elements/Collapsible/provider.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\nimport { TabsProvider } from './provider.js'\nimport { TabComponent } from './Tab/index.js'\n\nconst baseClass = 'tabs-field'\n\nexport { TabsProvider }\n\nfunction generateTabPath({ activeTabConfig, path }: { activeTabConfig: ClientTab; path: string }) {\n let tabPath = path\n\n if (tabHasName(activeTabConfig) && activeTabConfig.name) {\n if (path) {\n tabPath = `${path}.${activeTabConfig.name}`\n } else {\n tabPath = activeTabConfig.name\n }\n }\n\n return tabPath\n}\n\nconst TabsFieldComponent: TabsFieldClientComponent = (props) => {\n const {\n field: { admin: { className } = {}, tabs = [] },\n forceRender = false,\n indexPath = '',\n parentPath = '',\n parentSchemaPath = '',\n path = '',\n permissions,\n readOnly,\n } = props\n\n const { getPreference, setPreference } = usePreferences()\n const { preferencesKey } = useDocumentInfo()\n const { i18n } = useTranslation()\n const { isWithinCollapsible } = useCollapsible()\n const [activeTabIndex, setActiveTabIndex] = useState<number>(0)\n const tabsPrefKey = `tabs-${indexPath}`\n const [activeTabPath, setActiveTabPath] = useState<string>(() =>\n generateTabPath({ activeTabConfig: tabs[activeTabIndex], path: parentPath }),\n )\n\n const activePathChildrenPath = tabHasName(tabs[activeTabIndex]) ? activeTabPath : parentPath\n\n const [activeTabSchemaPath, setActiveTabSchemaPath] = useState<string>(() =>\n generateTabPath({ activeTabConfig: tabs[0], path: parentSchemaPath }),\n )\n\n const activePathSchemaChildrenPath = tabHasName(tabs[activeTabIndex])\n ? activeTabSchemaPath\n : parentSchemaPath\n\n useEffect(() => {\n if (preferencesKey) {\n const getInitialPref = async () => {\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n const initialIndex = path\n ? existingPreferences?.fields?.[path]?.tabIndex\n : existingPreferences?.fields?.[tabsPrefKey]?.tabIndex\n\n const newIndex = initialIndex || 0\n setActiveTabIndex(newIndex)\n\n setActiveTabPath(generateTabPath({ activeTabConfig: tabs[newIndex], path: parentPath }))\n setActiveTabSchemaPath(\n generateTabPath({ activeTabConfig: tabs[newIndex], path: parentSchemaPath }),\n )\n }\n void getInitialPref()\n }\n }, [path, getPreference, preferencesKey, tabsPrefKey, tabs, parentPath, parentSchemaPath])\n\n const handleTabChange = useCallback(\n async (incomingTabIndex: number): Promise<void> => {\n setActiveTabIndex(incomingTabIndex)\n setActiveTabPath(\n generateTabPath({ activeTabConfig: tabs[incomingTabIndex], path: parentPath }),\n )\n setActiveTabSchemaPath(\n generateTabPath({ activeTabConfig: tabs[incomingTabIndex], path: parentSchemaPath }),\n )\n\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n\n if (preferencesKey) {\n void setPreference(preferencesKey, {\n ...existingPreferences,\n ...(path\n ? {\n fields: {\n ...(existingPreferences?.fields || {}),\n [path]: {\n ...existingPreferences?.fields?.[path],\n tabIndex: incomingTabIndex,\n },\n },\n }\n : {\n fields: {\n ...existingPreferences?.fields,\n [tabsPrefKey]: {\n ...existingPreferences?.fields?.[tabsPrefKey],\n tabIndex: incomingTabIndex,\n },\n },\n }),\n })\n }\n },\n [\n tabs,\n parentPath,\n parentSchemaPath,\n getPreference,\n preferencesKey,\n setPreference,\n path,\n tabsPrefKey,\n ],\n )\n\n const activeTabConfig = tabs[activeTabIndex]\n\n const activeTabDescription = activeTabConfig.description\n\n const activeTabStaticDescription =\n typeof activeTabDescription === 'function'\n ? activeTabDescription({ t: i18n.t })\n : activeTabDescription\n\n return (\n <div\n className={[\n fieldBaseClass,\n className,\n baseClass,\n isWithinCollapsible && `${baseClass}--within-collapsible`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <TabsProvider>\n <div className={`${baseClass}__tabs-wrap`}>\n <div className={`${baseClass}__tabs`}>\n {tabs.map((tab, tabIndex) => {\n return (\n <TabComponent\n isActive={activeTabIndex === tabIndex}\n key={tabIndex}\n parentPath={path}\n setIsActive={() => {\n void handleTabChange(tabIndex)\n }}\n tab={tab}\n />\n )\n })}\n </div>\n </div>\n <div className={`${baseClass}__content-wrap`}>\n {activeTabConfig && (\n <ActiveTabContent\n description={activeTabStaticDescription}\n fields={activeTabConfig.fields}\n forceRender={forceRender}\n parentIndexPath={\n tabHasName(activeTabConfig)\n ? ''\n : `${indexPath ? indexPath + '-' : ''}` + String(activeTabIndex)\n }\n parentPath={activePathChildrenPath}\n parentSchemaPath={activePathSchemaChildrenPath}\n path={activeTabPath}\n permissions={\n 'name' in activeTabConfig && permissions?.[activeTabConfig.name]?.fields\n ? permissions[activeTabConfig.name].fields\n : permissions\n }\n readOnly={readOnly}\n />\n )}\n </div>\n </TabsProvider>\n </div>\n )\n}\n\nexport const TabsField = withCondition(TabsFieldComponent)\n\ntype ActiveTabProps = {\n description: StaticDescription\n fields: ClientField[]\n forceRender?: boolean\n label?: string\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n path: string\n permissions: SanitizedFieldPermissions\n readOnly: boolean\n}\nfunction ActiveTabContent({\n description,\n fields,\n forceRender,\n label,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n readOnly,\n}: ActiveTabProps) {\n const { i18n } = useTranslation()\n const { customComponents: { AfterInput, BeforeInput, Description, Field } = {} } = useField({\n path,\n })\n\n if (Field) {\n return Field\n }\n\n return (\n <div\n className={[\n `${baseClass}__tab`,\n label && `${baseClass}__tabConfigLabel-${toKebabCase(getTranslation(label, i18n))}`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n {BeforeInput}\n <RenderFields\n fields={fields}\n forceRender={forceRender}\n parentIndexPath={parentIndexPath}\n parentPath={parentPath}\n parentSchemaPath={parentSchemaPath}\n permissions={permissions}\n readOnly={readOnly}\n />\n {AfterInput}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","tabHasName","toKebabCase","React","useCallback","useEffect","useState","useCollapsible","RenderCustomComponent","RenderFields","useField","withCondition","useDocumentInfo","usePreferences","useTranslation","FieldDescription","fieldBaseClass","TabsProvider","TabComponent","baseClass","generateTabPath","activeTabConfig","path","tabPath","name","TabsFieldComponent","props","$","field","t0","forceRender","t1","indexPath","t2","parentPath","t3","parentSchemaPath","t4","t5","permissions","readOnly","admin","t6","tabs","t7","t8","undefined","className","t9","getPreference","setPreference","preferencesKey","i18n","isWithinCollapsible","activeTabIndex","setActiveTabIndex","tabsPrefKey","t10","activeTabPath","setActiveTabPath","t11","activePathChildrenPath","t12","activeTabSchemaPath","setActiveTabSchemaPath","t13","activePathSchemaChildrenPath","t14","t15","getInitialPref","existingPreferences","initialIndex","fields","tabIndex","newIndex","t16","incomingTabIndex","existingPreferences_0","handleTabChange","activeTabDescription","description","t17","t","activeTabStaticDescription","t18","t19","filter","Boolean","t20","join","t21","t22","tab","_jsx","isActive","setIsActive","t23","ActiveTabContent","parentIndexPath","String","children","_jsxs","map","TabsField","label","customComponents","AfterInput","BeforeInput","Description","Field","CustomComponent","Fallback"],"sources":["../../../src/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientField,\n ClientTab,\n DocumentPreferences,\n SanitizedFieldPermissions,\n StaticDescription,\n TabsFieldClientComponent,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { tabHasName, toKebabCase } from 'payload/shared'\nimport React, { useCallback, useEffect, useState } from 'react'\n\nimport { useCollapsible } from '../../elements/Collapsible/provider.js'\nimport { RenderCustomComponent } from '../../elements/RenderCustomComponent/index.js'\nimport { RenderFields } from '../../forms/RenderFields/index.js'\nimport { useField } from '../../forms/useField/index.js'\nimport { withCondition } from '../../forms/withCondition/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { usePreferences } from '../../providers/Preferences/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { FieldDescription } from '../FieldDescription/index.js'\nimport { fieldBaseClass } from '../shared/index.js'\nimport './index.scss'\nimport { TabsProvider } from './provider.js'\nimport { TabComponent } from './Tab/index.js'\n\nexport const baseClass = 'tabs-field'\n\nexport { TabsProvider }\n\nfunction generateTabPath({ activeTabConfig, path }: { activeTabConfig: ClientTab; path: string }) {\n let tabPath = path\n\n if (tabHasName(activeTabConfig) && activeTabConfig.name) {\n if (path) {\n tabPath = `${path}.${activeTabConfig.name}`\n } else {\n tabPath = activeTabConfig.name\n }\n }\n\n return tabPath\n}\n\nconst TabsFieldComponent: TabsFieldClientComponent = (props) => {\n const {\n field: { admin: { className } = {}, tabs = [] },\n forceRender = false,\n indexPath = '',\n parentPath = '',\n parentSchemaPath = '',\n path = '',\n permissions,\n readOnly,\n } = props\n\n const { getPreference, setPreference } = usePreferences()\n const { preferencesKey } = useDocumentInfo()\n const { i18n } = useTranslation()\n const { isWithinCollapsible } = useCollapsible()\n const [activeTabIndex, setActiveTabIndex] = useState<number>(0)\n const tabsPrefKey = `tabs-${indexPath}`\n const [activeTabPath, setActiveTabPath] = useState<string>(() =>\n generateTabPath({ activeTabConfig: tabs[activeTabIndex], path: parentPath }),\n )\n\n const activePathChildrenPath = tabHasName(tabs[activeTabIndex]) ? activeTabPath : parentPath\n\n const [activeTabSchemaPath, setActiveTabSchemaPath] = useState<string>(() =>\n generateTabPath({ activeTabConfig: tabs[0], path: parentSchemaPath }),\n )\n\n const activePathSchemaChildrenPath = tabHasName(tabs[activeTabIndex])\n ? activeTabSchemaPath\n : parentSchemaPath\n\n useEffect(() => {\n if (preferencesKey) {\n const getInitialPref = async () => {\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n const initialIndex = path\n ? existingPreferences?.fields?.[path]?.tabIndex\n : existingPreferences?.fields?.[tabsPrefKey]?.tabIndex\n\n const newIndex = initialIndex || 0\n setActiveTabIndex(newIndex)\n\n setActiveTabPath(generateTabPath({ activeTabConfig: tabs[newIndex], path: parentPath }))\n setActiveTabSchemaPath(\n generateTabPath({ activeTabConfig: tabs[newIndex], path: parentSchemaPath }),\n )\n }\n void getInitialPref()\n }\n }, [path, getPreference, preferencesKey, tabsPrefKey, tabs, parentPath, parentSchemaPath])\n\n const handleTabChange = useCallback(\n async (incomingTabIndex: number): Promise<void> => {\n setActiveTabIndex(incomingTabIndex)\n setActiveTabPath(\n generateTabPath({ activeTabConfig: tabs[incomingTabIndex], path: parentPath }),\n )\n setActiveTabSchemaPath(\n generateTabPath({ activeTabConfig: tabs[incomingTabIndex], path: parentSchemaPath }),\n )\n\n const existingPreferences: DocumentPreferences = await getPreference(preferencesKey)\n\n if (preferencesKey) {\n void setPreference(preferencesKey, {\n ...existingPreferences,\n ...(path\n ? {\n fields: {\n ...(existingPreferences?.fields || {}),\n [path]: {\n ...existingPreferences?.fields?.[path],\n tabIndex: incomingTabIndex,\n },\n },\n }\n : {\n fields: {\n ...existingPreferences?.fields,\n [tabsPrefKey]: {\n ...existingPreferences?.fields?.[tabsPrefKey],\n tabIndex: incomingTabIndex,\n },\n },\n }),\n })\n }\n },\n [\n tabs,\n parentPath,\n parentSchemaPath,\n getPreference,\n preferencesKey,\n setPreference,\n path,\n tabsPrefKey,\n ],\n )\n\n const activeTabConfig = tabs[activeTabIndex]\n\n const activeTabDescription = activeTabConfig.description\n\n const activeTabStaticDescription =\n typeof activeTabDescription === 'function'\n ? activeTabDescription({ t: i18n.t })\n : activeTabDescription\n\n return (\n <div\n className={[\n fieldBaseClass,\n className,\n baseClass,\n isWithinCollapsible && `${baseClass}--within-collapsible`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <TabsProvider>\n <div className={`${baseClass}__tabs-wrap`}>\n <div className={`${baseClass}__tabs`}>\n {tabs.map((tab, tabIndex) => {\n return (\n <TabComponent\n isActive={activeTabIndex === tabIndex}\n key={tabIndex}\n parentPath={path}\n setIsActive={() => {\n void handleTabChange(tabIndex)\n }}\n tab={tab}\n />\n )\n })}\n </div>\n </div>\n <div className={`${baseClass}__content-wrap`}>\n {activeTabConfig && (\n <ActiveTabContent\n description={activeTabStaticDescription}\n fields={activeTabConfig.fields}\n forceRender={forceRender}\n parentIndexPath={\n tabHasName(activeTabConfig)\n ? ''\n : `${indexPath ? indexPath + '-' : ''}` + String(activeTabIndex)\n }\n parentPath={activePathChildrenPath}\n parentSchemaPath={activePathSchemaChildrenPath}\n path={activeTabPath}\n permissions={\n 'name' in activeTabConfig && permissions?.[activeTabConfig.name]?.fields\n ? permissions[activeTabConfig.name].fields\n : permissions\n }\n readOnly={readOnly}\n />\n )}\n </div>\n </TabsProvider>\n </div>\n )\n}\n\nexport const TabsField = withCondition(TabsFieldComponent)\n\ntype ActiveTabProps = {\n description: StaticDescription\n fields: ClientField[]\n forceRender?: boolean\n label?: string\n parentIndexPath: string\n parentPath: string\n parentSchemaPath: string\n path: string\n permissions: SanitizedFieldPermissions\n readOnly: boolean\n}\nexport function ActiveTabContent({\n description,\n fields,\n forceRender,\n label,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n path,\n permissions,\n readOnly,\n}: ActiveTabProps) {\n const { i18n } = useTranslation()\n const { customComponents: { AfterInput, BeforeInput, Description, Field } = {} } = useField({\n path,\n })\n\n if (Field) {\n return Field\n }\n\n return (\n <div\n className={[\n `${baseClass}__tab`,\n label && `${baseClass}__tabConfigLabel-${toKebabCase(getTranslation(label, i18n))}`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <RenderCustomComponent\n CustomComponent={Description}\n Fallback={<FieldDescription description={description} path={path} />}\n />\n {BeforeInput}\n <RenderFields\n fields={fields}\n forceRender={forceRender}\n parentIndexPath={parentIndexPath}\n parentPath={parentPath}\n parentSchemaPath={parentSchemaPath}\n permissions={permissions}\n readOnly={readOnly}\n />\n {AfterInput}\n </div>\n )\n}\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,CA6pBpC,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,CA+pBpC,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"}
@@ -374,6 +374,7 @@ export const Form = props => {
374
374
  docPermissions,
375
375
  docPreferences,
376
376
  globalSlug,
377
+ locale,
377
378
  operation,
378
379
  renderAllFields: true,
379
380
  schemaPath: collectionSlug ? collectionSlug : globalSlug,
@@ -387,7 +388,7 @@ export const Form = props => {
387
388
  type: 'REPLACE_STATE',
388
389
  state: newState
389
390
  });
390
- }, [collectionSlug, dispatchFields, globalSlug, id, operation, getFormState, docPermissions, getDocPreferences]);
391
+ }, [collectionSlug, dispatchFields, globalSlug, id, operation, getFormState, docPermissions, getDocPreferences, locale]);
391
392
  const replaceState = useCallback(state => {
392
393
  contextRef.current = {
393
394
  ...initContextState