@payloadcms/ui 3.76.0 → 3.76.1

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.
@@ -22,7 +22,7 @@ import './index.scss';
22
22
  const baseClass = 'tabs-field';
23
23
  export { TabsProvider };
24
24
  const TabsFieldComponent = props => {
25
- const $ = _c(43);
25
+ const $ = _c(44);
26
26
  const {
27
27
  field: t0,
28
28
  forceRender: t1,
@@ -108,7 +108,7 @@ const TabsFieldComponent = props => {
108
108
  const tabsPrefKey = `tabs-${indexPath}`;
109
109
  const activeTabInfo = tabStates[activeTabIndex];
110
110
  const activeTabConfig = activeTabInfo?.tab;
111
- const activeTabDescription = activeTabConfig.admin?.description ?? activeTabConfig.description;
111
+ const activeTabDescription = activeTabConfig?.admin?.description ?? activeTabConfig?.description;
112
112
  const activeTabStaticDescription = typeof activeTabDescription === "function" ? activeTabDescription({
113
113
  i18n,
114
114
  t: i18n.t
@@ -153,13 +153,13 @@ const TabsFieldComponent = props => {
153
153
  }
154
154
  const handleTabChange = t13;
155
155
  let t14;
156
- if ($[14] !== getPreference || $[15] !== path || $[16] !== preferencesKey || $[17] !== tabsPrefKey) {
156
+ if ($[14] !== getPreference || $[15] !== path || $[16] !== preferencesKey || $[17] !== tabStates.length || $[18] !== tabsPrefKey) {
157
157
  t14 = () => {
158
158
  if (preferencesKey) {
159
159
  const getInitialPref = async () => {
160
160
  const existingPreferences_0 = await getPreference(preferencesKey);
161
161
  const initialIndex = path ? existingPreferences_0?.fields?.[path]?.tabIndex : existingPreferences_0?.fields?.[tabsPrefKey]?.tabIndex;
162
- const newIndex = initialIndex || 0;
162
+ const newIndex = typeof initialIndex === "number" && initialIndex < tabStates.length ? initialIndex : 0;
163
163
  setActiveTabIndex(newIndex);
164
164
  };
165
165
  getInitialPref();
@@ -168,28 +168,29 @@ const TabsFieldComponent = props => {
168
168
  $[14] = getPreference;
169
169
  $[15] = path;
170
170
  $[16] = preferencesKey;
171
- $[17] = tabsPrefKey;
172
- $[18] = t14;
171
+ $[17] = tabStates.length;
172
+ $[18] = tabsPrefKey;
173
+ $[19] = t14;
173
174
  } else {
174
- t14 = $[18];
175
+ t14 = $[19];
175
176
  }
176
177
  let t15;
177
- if ($[19] !== getPreference || $[20] !== parentPath || $[21] !== parentSchemaPath || $[22] !== path || $[23] !== preferencesKey || $[24] !== tabs || $[25] !== tabsPrefKey) {
178
+ if ($[20] !== getPreference || $[21] !== parentPath || $[22] !== parentSchemaPath || $[23] !== path || $[24] !== preferencesKey || $[25] !== tabs || $[26] !== tabsPrefKey) {
178
179
  t15 = [path, getPreference, preferencesKey, tabsPrefKey, tabs, parentPath, parentSchemaPath];
179
- $[19] = getPreference;
180
- $[20] = parentPath;
181
- $[21] = parentSchemaPath;
182
- $[22] = path;
183
- $[23] = preferencesKey;
184
- $[24] = tabs;
185
- $[25] = tabsPrefKey;
186
- $[26] = t15;
180
+ $[20] = getPreference;
181
+ $[21] = parentPath;
182
+ $[22] = parentSchemaPath;
183
+ $[23] = path;
184
+ $[24] = preferencesKey;
185
+ $[25] = tabs;
186
+ $[26] = tabsPrefKey;
187
+ $[27] = t15;
187
188
  } else {
188
- t15 = $[26];
189
+ t15 = $[27];
189
190
  }
190
191
  useEffect(t14, t15);
191
192
  let t16;
192
- if ($[27] !== activeTabInfo?.passesCondition || $[28] !== handleTabChange || $[29] !== tabStates) {
193
+ if ($[28] !== activeTabInfo?.passesCondition || $[29] !== handleTabChange || $[30] !== tabStates) {
193
194
  t16 = () => {
194
195
  if (activeTabInfo?.passesCondition === false) {
195
196
  const nextTab = tabStates.find(_temp3);
@@ -198,38 +199,38 @@ const TabsFieldComponent = props => {
198
199
  }
199
200
  }
200
201
  };
201
- $[27] = activeTabInfo?.passesCondition;
202
- $[28] = handleTabChange;
203
- $[29] = tabStates;
204
- $[30] = t16;
202
+ $[28] = activeTabInfo?.passesCondition;
203
+ $[29] = handleTabChange;
204
+ $[30] = tabStates;
205
+ $[31] = t16;
205
206
  } else {
206
- t16 = $[30];
207
+ t16 = $[31];
207
208
  }
208
209
  let t17;
209
- if ($[31] !== activeTabInfo || $[32] !== handleTabChange || $[33] !== tabStates) {
210
+ if ($[32] !== activeTabInfo || $[33] !== handleTabChange || $[34] !== tabStates) {
210
211
  t17 = [activeTabInfo, tabStates, handleTabChange];
211
- $[31] = activeTabInfo;
212
- $[32] = handleTabChange;
213
- $[33] = tabStates;
214
- $[34] = t17;
212
+ $[32] = activeTabInfo;
213
+ $[33] = handleTabChange;
214
+ $[34] = tabStates;
215
+ $[35] = t17;
215
216
  } else {
216
- t17 = $[34];
217
+ t17 = $[35];
217
218
  }
218
219
  useEffect(t16, t17);
219
220
  const t18 = isWithinCollapsible && `${baseClass}--within-collapsible`;
220
221
  const t19 = !hasVisibleTabs && `${baseClass}--hidden`;
221
222
  let t20;
222
- if ($[35] !== className || $[36] !== t18 || $[37] !== t19) {
223
+ if ($[36] !== className || $[37] !== t18 || $[38] !== t19) {
223
224
  t20 = [fieldBaseClass, className, baseClass, t18, t19].filter(Boolean);
224
- $[35] = className;
225
- $[36] = t18;
226
- $[37] = t19;
227
- $[38] = t20;
225
+ $[36] = className;
226
+ $[37] = t18;
227
+ $[38] = t19;
228
+ $[39] = t20;
228
229
  } else {
229
- t20 = $[38];
230
+ t20 = $[39];
230
231
  }
231
232
  let t21;
232
- if ($[39] !== activeTabIndex || $[40] !== handleTabChange || $[41] !== path) {
233
+ if ($[40] !== activeTabIndex || $[41] !== handleTabChange || $[42] !== path) {
233
234
  t21 = t22 => {
234
235
  const {
235
236
  index: index_0,
@@ -246,12 +247,12 @@ const TabsFieldComponent = props => {
246
247
  tab: tab_0
247
248
  }, index_0);
248
249
  };
249
- $[39] = activeTabIndex;
250
- $[40] = handleTabChange;
251
- $[41] = path;
252
- $[42] = t21;
250
+ $[40] = activeTabIndex;
251
+ $[41] = handleTabChange;
252
+ $[42] = path;
253
+ $[43] = t21;
253
254
  } else {
254
- t21 = $[42];
255
+ t21 = $[43];
255
256
  }
256
257
  return _jsx("div", {
257
258
  className: t20.join(" "),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","getTranslation","getFieldPaths","toKebabCase","React","useCallback","useEffect","useState","useCollapsible","RenderCustomComponent","useFormFields","RenderFields","useField","withCondition","useDocumentInfo","usePreferences","useTranslation","FieldDescription","fieldBaseClass","TabsProvider","TabComponent","baseClass","TabsFieldComponent","props","$","field","t0","forceRender","t1","indexPath","t2","parentPath","t3","parentSchemaPath","t4","path","t5","permissions","readOnly","schemaPath","t6","admin","t7","tabs","t8","t9","undefined","className","t10","getPreference","setPreference","preferencesKey","i18n","isWithinCollapsible","t11","t12","fields","map","tab","index","id","passesCondition","tabStates","filter","_temp","activeTabIndex","setActiveTabIndex","tabsPrefKey","activeTabInfo","activeTabConfig","activeTabDescription","description","activeTabStaticDescription","t","hasVisibleTabs","some","_temp2","t13","incomingTabIndex","existingPreferences","tabIndex","handleTabChange","t14","getInitialPref","existingPreferences_0","initialIndex","newIndex","t15","t16","nextTab","find","_temp3","t17","t18","t19","t20","Boolean","t21","t22","index_0","passesCondition_2","tab_0","_jsx","hidden","isActive","setIsActive","join","children","_jsxs","TabContent","parentIndexPath","name","TabsField","label","customComponents","Field","bb0","AfterInput","BeforeInput","Description","CustomComponent","Fallback","marginPlacement","passesCondition_0","passesCondition_1"],"sources":["../../../src/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientComponentProps,\n ClientTab,\n DocumentPreferences,\n SanitizedFieldPermissions,\n StaticDescription,\n TabsFieldClientComponent,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { getFieldPaths, 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 { useFormFields } from '../../forms/Form/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 { TabsProvider } from './provider.js'\nimport { TabComponent } from './Tab/index.js'\nimport './index.scss'\n\nconst baseClass = 'tabs-field'\n\nexport { TabsProvider }\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 schemaPath = '',\n } = props\n\n const { getPreference, setPreference } = usePreferences()\n const { preferencesKey } = useDocumentInfo()\n const { i18n } = useTranslation()\n const { isWithinCollapsible } = useCollapsible()\n\n const tabStates = useFormFields(([fields]) => {\n return tabs.map((tab, index) => {\n const id = tab?.id\n\n return {\n index,\n passesCondition: fields?.[id]?.passesCondition ?? true,\n tab,\n }\n })\n })\n\n const [activeTabIndex, setActiveTabIndex] = useState<number>(\n () => tabStates.filter(({ passesCondition }) => passesCondition)?.[0]?.index ?? 0,\n )\n\n const tabsPrefKey = `tabs-${indexPath}`\n\n const activeTabInfo = tabStates[activeTabIndex]\n const activeTabConfig = activeTabInfo?.tab\n const activeTabDescription = activeTabConfig.admin?.description ?? activeTabConfig.description\n\n const activeTabStaticDescription =\n typeof activeTabDescription === 'function'\n ? activeTabDescription({ i18n, t: i18n.t })\n : activeTabDescription\n\n const hasVisibleTabs = tabStates.some(({ passesCondition }) => passesCondition)\n\n const handleTabChange = useCallback(\n async (incomingTabIndex: number): Promise<void> => {\n setActiveTabIndex(incomingTabIndex)\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 [getPreference, preferencesKey, setPreference, path, tabsPrefKey],\n )\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 void getInitialPref()\n }\n }, [path, getPreference, preferencesKey, tabsPrefKey, tabs, parentPath, parentSchemaPath])\n\n useEffect(() => {\n if (activeTabInfo?.passesCondition === false) {\n const nextTab = tabStates.find(({ passesCondition }) => passesCondition)\n if (nextTab) {\n void handleTabChange(nextTab.index)\n }\n }\n }, [activeTabInfo, tabStates, handleTabChange])\n\n return (\n <div\n className={[\n fieldBaseClass,\n className,\n baseClass,\n isWithinCollapsible && `${baseClass}--within-collapsible`,\n !hasVisibleTabs && `${baseClass}--hidden`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <TabsProvider>\n <div className={`${baseClass}__tabs-wrap`}>\n <div className={`${baseClass}__tabs`}>\n {tabStates.map(({ index, passesCondition, tab }) => (\n <TabComponent\n hidden={!passesCondition}\n isActive={activeTabIndex === index}\n key={index}\n parentPath={path}\n setIsActive={() => {\n void handleTabChange(index)\n }}\n tab={tab}\n />\n ))}\n </div>\n </div>\n <div className={`${baseClass}__content-wrap`}>\n {activeTabConfig && (\n <TabContent\n description={activeTabStaticDescription}\n field={activeTabConfig}\n forceRender={forceRender}\n hidden={false}\n parentIndexPath={indexPath}\n parentPath={path}\n parentSchemaPath={schemaPath}\n path={path}\n permissions={\n permissions && typeof permissions === 'object' && 'name' in activeTabConfig\n ? permissions[activeTabConfig.name] &&\n typeof permissions[activeTabConfig.name] === 'object' &&\n 'fields' in permissions[activeTabConfig.name]\n ? permissions[activeTabConfig.name].fields\n : permissions[activeTabConfig.name]\n : permissions\n }\n readOnly={readOnly}\n tabIndex={activeTabIndex}\n />\n )}\n </div>\n </TabsProvider>\n </div>\n )\n}\n\nexport const TabsField = withCondition(TabsFieldComponent)\n\ntype ActiveTabProps = {\n readonly description: StaticDescription\n readonly field: ClientTab\n readonly hidden: boolean\n readonly label?: string\n readonly parentIndexPath: string\n readonly parentPath: string\n readonly parentSchemaPath: string\n readonly path: string\n readonly permissions: SanitizedFieldPermissions\n readonly readOnly: boolean\n readonly tabIndex: number\n} & Pick<ClientComponentProps, 'forceRender'>\n\nfunction TabContent({\n description,\n field,\n forceRender,\n hidden,\n label,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n readOnly,\n tabIndex,\n}: ActiveTabProps) {\n const { i18n } = useTranslation()\n\n const { customComponents: { AfterInput, BeforeInput, Description, Field } = {} } = useField()\n\n if (Field) {\n return Field\n }\n\n const { indexPath, path, schemaPath } = getFieldPaths({\n field,\n index: tabIndex,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n return (\n <div\n className={[\n hidden && `${baseClass}__tab--hidden`,\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={\n <FieldDescription description={description} marginPlacement=\"bottom\" path={parentPath} />\n }\n />\n {BeforeInput}\n <RenderFields\n fields={field.fields}\n forceRender={forceRender}\n parentIndexPath={indexPath}\n parentPath={path}\n parentSchemaPath={schemaPath}\n permissions={permissions}\n readOnly={readOnly}\n />\n {AfterInput}\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAUA,SAASC,cAAc,QAAQ;AAC/B,SAASC,aAAa,EAAEC,WAAW,QAAQ;AAC3C,OAAOC,KAAA,IAASC,WAAW,EAAEC,SAAS,EAAEC,QAAQ,QAAQ;AAExD,SAASC,cAAc,QAAQ;AAC/B,SAASC,qBAAqB,QAAQ;AACtC,SAASC,aAAa,QAAQ;AAC9B,SAASC,YAAY,QAAQ;AAC7B,SAASC,QAAQ,QAAQ;AACzB,SAASC,aAAa,QAAQ;AAC9B,SAASC,eAAe,QAAQ;AAChC,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAC/B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,cAAc,QAAQ;AAC/B,SAASC,YAAY,QAAQ;AAC7B,SAASC,YAAY,QAAQ;AAC7B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAElB,SAASF,YAAY;AAErB,MAAMG,kBAAA,GAA+CC,KAAA;EAAA,MAAAC,CAAA,GAAAxB,EAAA;EACnD;IAAAyB,KAAA,EAAAC,EAAA;IAAAC,WAAA,EAAAC,EAAA;IAAAC,SAAA,EAAAC,EAAA;IAAAC,UAAA,EAAAC,EAAA;IAAAC,gBAAA,EAAAC,EAAA;IAAAC,IAAA,EAAAC,EAAA;IAAAC,WAAA;IAAAC,QAAA;IAAAC,UAAA,EAAAC;EAAA,IAUIjB,KAAA;EATK;IAAAkB,KAAA,EAAAC,EAAA;IAAAC,IAAA,EAAAC;EAAA,IAAAlB,EAAwC;EAAA,IAAAmB,EAAA;EAAA,IAAArB,CAAA,QAAAkB,EAAA;IAA/BG,EAAA,GAAAH,EAAkB,KAAAI,SAAA,QAAlBJ,EAAkB;IAAAlB,CAAA,MAAAkB,EAAA;IAAAlB,CAAA,MAAAqB,EAAA;EAAA;IAAAA,EAAA,GAAArB,CAAA;EAAA;EAAlB;IAAAuB;EAAA,IAAAF,EAAkB;EAAA,IAAAG,GAAA;EAAA,IAAAxB,CAAA,QAAAoB,EAAA;IAAEI,GAAA,GAAAJ,EAAS,KAAAE,SAAA,QAATF,EAAS;IAAApB,CAAA,MAAAoB,EAAA;IAAApB,CAAA,MAAAwB,GAAA;EAAA;IAAAA,GAAA,GAAAxB,CAAA;EAAA;EAAT,MAAAmB,IAAA,GAAAK,GAAS;EAC7C,MAAArB,WAAA,GAAAC,EAAmB,KAAAkB,SAAA,WAAnBlB,EAAmB;EACnB,MAAAC,SAAA,GAAAC,EAAc,KAAAgB,SAAA,GAAF,EAAE,GAAdhB,EAAc;EACd,MAAAC,UAAA,GAAAC,EAAe,KAAAc,SAAA,GAAF,EAAE,GAAfd,EAAe;EACf,MAAAC,gBAAA,GAAAC,EAAqB,KAAAY,SAAA,GAAF,EAAE,GAArBZ,EAAqB;EACrB,MAAAC,IAAA,GAAAC,EAAS,KAAAU,SAAA,GAAF,EAAE,GAATV,EAAS;EAGT,MAAAG,UAAA,GAAAC,EAAe,KAAAM,SAAA,GAAF,EAAE,GAAfN,EAAe;EAGjB;IAAAS,aAAA;IAAAC;EAAA,IAAyCnC,cAAA;EACzC;IAAAoC;EAAA,IAA2BrC,eAAA;EAC3B;IAAAsC;EAAA,IAAiBpC,cAAA;EACjB;IAAAqC;EAAA,IAAgC7C,cAAA;EAAA,IAAA8C,GAAA;EAAA,IAAA9B,CAAA,QAAAmB,IAAA;IAEAW,GAAA,GAAAC,GAAA;MAAC,OAAAC,MAAA,IAAAD,GAAQ;MAAA,OAChCZ,IAAA,CAAAc,GAAA,EAAAC,GAAA,EAAAC,KAAA;QACL,MAAAC,EAAA,GAAWF,GAAA,EAAAE,EAAA;QAAK;UAAAD,KAAA;UAAAE,eAAA,EAIGL,MAAA,GAASI,EAAA,GAAAC,eAAA,QAAwB;UAAAH;QAAA;MAAA,CAGtD;IAAA;IACFlC,CAAA,MAAAmB,IAAA;IAAAnB,CAAA,MAAA8B,GAAA;EAAA;IAAAA,GAAA,GAAA9B,CAAA;EAAA;EAVA,MAAAsC,SAAA,GAAkBpD,aAAA,CAAc4C,GAUhC;EAAA,IAAAC,GAAA;EAAA,IAAA/B,CAAA,QAAAsC,SAAA;IAGEP,GAAA,GAAAA,CAAA,KAAMO,SAAA,CAAAC,MAAA,CAAAC,KAA0C,QAAAL,KAAA,KAAgC;IAAAnC,CAAA,MAAAsC,SAAA;IAAAtC,CAAA,MAAA+B,GAAA;EAAA;IAAAA,GAAA,GAAA/B,CAAA;EAAA;EADlF,OAAAyC,cAAA,EAAAC,iBAAA,IAA4C3D,QAAA,CAC1CgD,GAAgF;EAGlF,MAAAY,WAAA,GAAoB,QAAQtC,SAAA,EAAW;EAEvC,MAAAuC,aAAA,GAAsBN,SAAS,CAACG,cAAA;EAChC,MAAAI,eAAA,GAAwBD,aAAA,EAAAV,GAAA;EACxB,MAAAY,oBAAA,GAA6BD,eAAA,CAAA5B,KAAA,EAAA8B,WAAA,IAAsCF,eAAA,CAAAE,WAA2B;EAE9F,MAAAC,0BAAA,GACE,OAAOF,oBAAA,KAAyB,aAC5BA,oBAAA;IAAAlB,IAAA;IAAAqB,CAAA,EAAgCrB,IAAA,CAAAqB;EAAA,CAAO,IACvCH,oBAAA;EAEN,MAAAI,cAAA,GAAuBZ,SAAA,CAAAa,IAAA,CAAAC,MAAwC;EAAA,IAAAC,GAAA;EAAA,IAAArD,CAAA,QAAAyB,aAAA,IAAAzB,CAAA,QAAAW,IAAA,IAAAX,CAAA,SAAA2B,cAAA,IAAA3B,CAAA,SAAA0B,aAAA,IAAA1B,CAAA,SAAA2C,WAAA;IAG7DU,GAAA,SAAAC,gBAAA;MACEZ,iBAAA,CAAkBY,gBAAA;MAElB,MAAAC,mBAAA,SAAuD9B,aAAA,CAAcE,cAAA;MAAA,IAEjEA,cAAA;QACGD,aAAA,CAAcC,cAAA;UAAA,GACd4B,mBAAmB;UAAA,IAClB5C,IAAA;YAAAqB,MAAA;cAAA,IAGQuB,mBAAA,EAAAvB,MAAA,MAAiC;cAAA,CACpCrB,IAAA;gBAAA,GACI4C,mBAAA,EAAAvB,MAAA,GAA8BrB,IAAA;gBAAA6C,QAAA,EACvBF;cAAA;YAAA;UAAA;YAAAtB,MAAA;cAAA,GAMTuB,mBAAA,EAAAvB,MAAA;cAAA,CACFW,WAAA;gBAAA,GACIY,mBAAA,EAAAvB,MAAA,GAA8BW,WAAA;gBAAAa,QAAA,EACvBF;cAAA;YAAA;UAAA,CAGf;QAAA,CACP;MAAA;IAAA;IAEJtD,CAAA,MAAAyB,aAAA;IAAAzB,CAAA,MAAAW,IAAA;IAAAX,CAAA,OAAA2B,cAAA;IAAA3B,CAAA,OAAA0B,aAAA;IAAA1B,CAAA,OAAA2C,WAAA;IAAA3C,CAAA,OAAAqD,GAAA;EAAA;IAAAA,GAAA,GAAArD,CAAA;EAAA;EA9BF,MAAAyD,eAAA,GAAwBJ,GA+B2C;EAAA,IAAAK,GAAA;EAAA,IAAA1D,CAAA,SAAAyB,aAAA,IAAAzB,CAAA,SAAAW,IAAA,IAAAX,CAAA,SAAA2B,cAAA,IAAA3B,CAAA,SAAA2C,WAAA;IAGzDe,GAAA,GAAAA,CAAA;MAAA,IACJ/B,cAAA;QACF,MAAAgC,cAAA,SAAAA,CAAA;UACE,MAAAC,qBAAA,SAAuDnC,aAAA,CAAcE,cAAA;UACrE,MAAAkC,YAAA,GAAqBlD,IAAA,GACjB4C,qBAAA,EAAAvB,MAAA,GAA8BrB,IAAA,GAAA6C,QAAA,GAC9BD,qBAAA,EAAAvB,MAAA,GAA8BW,WAAA,GAAAa,QAAc;UAEhD,MAAAM,QAAA,GAAiBD,YAAA,KAAgB;UACjCnB,iBAAA,CAAkBoB,QAAA;QAAA;QAEfH,cAAA;MAAA;IAAA;IAET3D,CAAA,OAAAyB,aAAA;IAAAzB,CAAA,OAAAW,IAAA;IAAAX,CAAA,OAAA2B,cAAA;IAAA3B,CAAA,OAAA2C,WAAA;IAAA3C,CAAA,OAAA0D,GAAA;EAAA;IAAAA,GAAA,GAAA1D,CAAA;EAAA;EAAA,IAAA+D,GAAA;EAAA,IAAA/D,CAAA,SAAAyB,aAAA,IAAAzB,CAAA,SAAAO,UAAA,IAAAP,CAAA,SAAAS,gBAAA,IAAAT,CAAA,SAAAW,IAAA,IAAAX,CAAA,SAAA2B,cAAA,IAAA3B,CAAA,SAAAmB,IAAA,IAAAnB,CAAA,SAAA2C,WAAA;IAAGoB,GAAA,IAACpD,IAAA,EAAMc,aAAA,EAAeE,cAAA,EAAgBgB,WAAA,EAAaxB,IAAA,EAAMZ,UAAA,EAAYE,gBAAA;IAAiBT,CAAA,OAAAyB,aAAA;IAAAzB,CAAA,OAAAO,UAAA;IAAAP,CAAA,OAAAS,gBAAA;IAAAT,CAAA,OAAAW,IAAA;IAAAX,CAAA,OAAA2B,cAAA;IAAA3B,CAAA,OAAAmB,IAAA;IAAAnB,CAAA,OAAA2C,WAAA;IAAA3C,CAAA,OAAA+D,GAAA;EAAA;IAAAA,GAAA,GAAA/D,CAAA;EAAA;EAbzFlB,SAAA,CAAU4E,GAaV,EAAGK,GAAsF;EAAA,IAAAC,GAAA;EAAA,IAAAhE,CAAA,SAAA4C,aAAA,EAAAP,eAAA,IAAArC,CAAA,SAAAyD,eAAA,IAAAzD,CAAA,SAAAsC,SAAA;IAE/E0B,GAAA,GAAAA,CAAA;MAAA,IACJpB,aAAA,EAAAP,eAAA,UAAmC;QACrC,MAAA4B,OAAA,GAAgB3B,SAAA,CAAA4B,IAAA,CAAAC,MAAwC;QAAA,IACpDF,OAAA;UACGR,eAAA,CAAgBQ,OAAA,CAAA9B,KAAa;QAAA;MAAA;IAAA;IAGxCnC,CAAA,OAAA4C,aAAA,EAAAP,eAAA;IAAArC,CAAA,OAAAyD,eAAA;IAAAzD,CAAA,OAAAsC,SAAA;IAAAtC,CAAA,OAAAgE,GAAA;EAAA;IAAAA,GAAA,GAAAhE,CAAA;EAAA;EAAA,IAAAoE,GAAA;EAAA,IAAApE,CAAA,SAAA4C,aAAA,IAAA5C,CAAA,SAAAyD,eAAA,IAAAzD,CAAA,SAAAsC,SAAA;IAAG8B,GAAA,IAACxB,aAAA,EAAeN,SAAA,EAAWmB,eAAA;IAAgBzD,CAAA,OAAA4C,aAAA;IAAA5C,CAAA,OAAAyD,eAAA;IAAAzD,CAAA,OAAAsC,SAAA;IAAAtC,CAAA,OAAAoE,GAAA;EAAA;IAAAA,GAAA,GAAApE,CAAA;EAAA;EAP9ClB,SAAA,CAAUkF,GAOV,EAAGI,GAA2C;EAQxC,MAAAC,GAAA,GAAAxC,mBAAA,IAAuB,GAAAhC,SAAA,sBAAkC;EACzD,MAAAyE,GAAA,IAACpB,cAAA,IAAkB,GAAArD,SAAA,UAAsB;EAAA,IAAA0E,GAAA;EAAA,IAAAvE,CAAA,SAAAuB,SAAA,IAAAvB,CAAA,SAAAqE,GAAA,IAAArE,CAAA,SAAAsE,GAAA;IALhCC,GAAA,IAAA7E,cAAA,EAET6B,SAAA,EAAA1B,SAAA,EAEAwE,GAAyD,EACzDC,GAAyC,EAAA/B,MAAA,CAAAiC,OAEjC;IAAAxE,CAAA,OAAAuB,SAAA;IAAAvB,CAAA,OAAAqE,GAAA;IAAArE,CAAA,OAAAsE,GAAA;IAAAtE,CAAA,OAAAuE,GAAA;EAAA;IAAAA,GAAA,GAAAvE,CAAA;EAAA;EAAA,IAAAyE,GAAA;EAAA,IAAAzE,CAAA,SAAAyC,cAAA,IAAAzC,CAAA,SAAAyD,eAAA,IAAAzD,CAAA,SAAAW,IAAA;IAMW8D,GAAA,GAAAC,GAAA;MAAC;QAAAvC,KAAA,EAAAwC,OAAA;QAAAtC,eAAA,EAAAuC,iBAAA;QAAA1C,GAAA,EAAA2C;MAAA,IAAAH,GAA+B;MAAA,OAC7CI,IAAA,CAAAlF,YAAA;QAAAmF,MAAA,GACW1C,iBAAA;QAAA2C,QAAA,EACCvC,cAAA,KAAmBN,OAAA;QAAA5B,UAAA,EAEjBI,IAAA;QAAAsE,WAAA,EAAAA,CAAA;UAELxB,eAAA,CAAgBtB,OAAA;QAAA;QAAAD,GAAA,EAElBA;MAAA,GALAC,OAAA;IAAA;IAAAnC,CAAA,OAAAyC,cAAA;IAAAzC,CAAA,OAAAyD,eAAA;IAAAzD,CAAA,OAAAW,IAAA;IAAAX,CAAA,OAAAyE,GAAA;EAAA;IAAAA,GAAA,GAAAzE,CAAA;EAAA;EAAA,OAlBjB8E,IAAA,CAAC;IAAAvD,SAAA,EACYgD,GAOD,CAAAW,IAAA,CACF;IAAAC,QAAA,EAERC,KAAA,CAAAzF,YAAA;MAAAwF,QAAA,GACEL,IAAA,CAAC;QAAAvD,SAAA,EAAe,GAAA1B,SAAA,aAAyB;QAAAsF,QAAA,EACvCL,IAAA,CAAC;UAAAvD,SAAA,EAAe,GAAA1B,SAAA,QAAoB;UAAAsF,QAAA,EACjC7C,SAAA,CAAAL,GAAA,CAAcwC,GAIN;QAAA,C;UAUbK,IAAA,CAAC;QAAAvD,SAAA,EAAe,GAAA1B,SAAA,gBAA4B;QAAAsF,QAAA,EACzCtC,eAAA,IACCiC,IAAA,CAAAO,UAAA;UAAAtC,WAAA,EACeC,0BAAA;UAAA/C,KAAA,EACN4C,eAAA;UAAA1C,WAAA;UAAA4E,MAAA;UAAAO,eAAA,EAGUjF,SAAA;UAAAE,UAAA,EACLI,IAAA;UAAAF,gBAAA,EACMM,UAAA;UAAAJ,IAAA;UAAAE,WAAA,EAGhBA,WAAA,IAAe,OAAOA,WAAA,KAAgB,YAAY,UAAUgC,eAAA,GACxDhC,WAAW,CAACgC,eAAA,CAAA0C,IAAA,KACZ,OAAO1E,WAAW,CAACgC,eAAA,CAAA0C,IAAA,MAA0B,YAC7C,YAAY1E,WAAW,CAACgC,eAAA,CAAA0C,IAAA,CAAqB,GAC3C1E,WAAW,CAACgC,eAAA,CAAA0C,IAAA,EAAAvD,MAAA,GACZnB,WAAW,CAACgC,eAAA,CAAA0C,IAAA,CAAqB,GACnC1E,WAAA;UAAAC,QAAA;UAAA0C,QAAA,EAGIf;QAAA,C;;;;CAOxB;AAEA,OAAO,MAAM+C,SAAA,GAAYnG,aAAA,CAAcS,kBAAA;AAgBvC,SAAAuF,WAAAnF,EAAA;EAAA,MAAAF,CAAA,GAAAxB,EAAA;EAAoB;IAAAuE,WAAA;IAAA9C,KAAA;IAAAE,WAAA;IAAA4E,MAAA;IAAAU,KAAA;IAAAH,eAAA;IAAA/E,UAAA;IAAAE,gBAAA;IAAAI,WAAA;IAAAC,QAAA;IAAA0C;EAAA,IAAAtD,EAYH;EACf;IAAA0B;EAAA,IAAiBpC,cAAA;EAEjB;IAAAkG,gBAAA,EAAAtF;EAAA,IAAmFhB,QAAA;EAAA,IAAAkB,EAAA;EAAA,IAAAE,EAAA;EAAA,IAAAR,CAAA,QAAA+C,WAAA,IAAA/C,CAAA,QAAAC,KAAA,IAAAD,CAAA,QAAAG,WAAA,IAAAH,CAAA,QAAA+E,MAAA,IAAA/E,CAAA,QAAA4B,IAAA,IAAA5B,CAAA,QAAAyF,KAAA,IAAAzF,CAAA,QAAAsF,eAAA,IAAAtF,CAAA,QAAAO,UAAA,IAAAP,CAAA,QAAAS,gBAAA,IAAAT,CAAA,QAAAa,WAAA,IAAAb,CAAA,SAAAc,QAAA,IAAAd,CAAA,SAAAI,EAAA,IAAAJ,CAAA,SAAAwD,QAAA;IAG1EmC,EAAA,CAAAA,CAAA,CAAAA,wCAAA;IAAAC,GAAA;MAHiB;QAAAC,UAAA;QAAAC,WAAA;QAAAC,WAAA;QAAAJ;MAAA,IAAAvF,EAAoD,KAAAkB,SAAA,QAApDlB,EAAoD;MAAA,IAE1EuF,KAAA;QACKA,EAAA,CAAAA,CAAA,CAAAA,KAAA;QAAA,MAAAC,GAAA;MAAA;MAGT;QAAAvF,SAAA;QAAAM,IAAA;QAAAI;MAAA,IAAwCrC,aAAA;QAAAuB,KAAA;QAAAkC,KAAA,EAE/BqB,QAAA;QAAA8B,eAAA;QAAA/E,UAAA;QAAAE;MAAA,CAIT;MAKM,MAAAC,EAAA,GAAAqE,MAAA,IAAU,GAAAlF,SAAA,eAA2B;MAAA,IAAAe,EAAA;MAAA,IAAAZ,CAAA,SAAA4B,IAAA,IAAA5B,CAAA,SAAAyF,KAAA;QAErC7E,EAAA,GAAA6E,KAAA,IAAS,GAAA5F,SAAA,oBAAgClB,WAAA,CAAYF,cAAA,CAAegH,KAAA,EAAO7D,IAAA,IAAQ;QAAA5B,CAAA,OAAA4B,IAAA;QAAA5B,CAAA,OAAAyF,KAAA;QAAAzF,CAAA,OAAAY,EAAA;MAAA;QAAAA,EAAA,GAAAZ,CAAA;MAAA;MAAA,IAAAgB,EAAA;MAAA,IAAAhB,CAAA,SAAAU,EAAA,IAAAV,CAAA,SAAAY,EAAA;QAH1EI,EAAA,IACTN,EAAqC,EACrC,GAAAb,SAAA,OAAmB,EACnBe,EAAmF,EAAA2B,MAAA,CAAAiC,OAE3E;QAAAxE,CAAA,OAAAU,EAAA;QAAAV,CAAA,OAAAY,EAAA;QAAAZ,CAAA,OAAAgB,EAAA;MAAA;QAAAA,EAAA,GAAAhB,CAAA;MAAA;MANZM,EAAA,GAAA8E,KAAA,CAAC;QAAA7D,SAAA,EACYP,EAKD,CAAAkE,IAAA,CACF;QAAAC,QAAA,GAERL,IAAA,CAAA7F,qBAAA;UAAA+G,eAAA,EACmBD,WAAA;UAAAE,QAAA,EAEfnB,IAAA,CAAArF,gBAAA;YAAAsD,WAAA;YAAAmD,eAAA,EAA4D;YAAAvF,IAAA,EAAeJ;UAAA,C;YAG9EuF,WAAA,EACDhB,IAAA,CAAA3F,YAAA;UAAA6C,MAAA,EACU/B,KAAA,CAAA+B,MAAA;UAAA7B,WAAA;UAAAmF,eAAA,EAESjF,SAAA;UAAAE,UAAA,EACLI,IAAA;UAAAF,gBAAA,EACMM,UAAA;UAAAF,WAAA;UAAAC;QAAA,C,GAInB+E,UAAA;MAAA,C;;;;;;;;;;;;;;;;;;;;;;;;SAzBHvF,E;;AAlNiD,SAAAkC,MAAAtC,EAAA;EA+BzB;IAAAmC;EAAA,IAAAnC,EAAmB;EAAA,OAAKmC,eAAA;AAAA;AA/BC,SAAAe,OAAAlD,EAAA;EA6CZ;IAAAmC,eAAA,EAAA8D;EAAA,IAAAjG,EAAmB;EAAA,OAAKmC,iBAAA;AAAA;AA7CZ,SAAA8B,OAAAjE,EAAA;EAkGf;IAAAmC,eAAA,EAAA+D;EAAA,IAAAlG,EAAmB;EAAA,OAAKmC,iBAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","getTranslation","getFieldPaths","toKebabCase","React","useCallback","useEffect","useState","useCollapsible","RenderCustomComponent","useFormFields","RenderFields","useField","withCondition","useDocumentInfo","usePreferences","useTranslation","FieldDescription","fieldBaseClass","TabsProvider","TabComponent","baseClass","TabsFieldComponent","props","$","field","t0","forceRender","t1","indexPath","t2","parentPath","t3","parentSchemaPath","t4","path","t5","permissions","readOnly","schemaPath","t6","admin","t7","tabs","t8","t9","undefined","className","t10","getPreference","setPreference","preferencesKey","i18n","isWithinCollapsible","t11","t12","fields","map","tab","index","id","passesCondition","tabStates","filter","_temp","activeTabIndex","setActiveTabIndex","tabsPrefKey","activeTabInfo","activeTabConfig","activeTabDescription","description","activeTabStaticDescription","t","hasVisibleTabs","some","_temp2","t13","incomingTabIndex","existingPreferences","tabIndex","handleTabChange","t14","length","getInitialPref","existingPreferences_0","initialIndex","newIndex","t15","t16","nextTab","find","_temp3","t17","t18","t19","t20","Boolean","t21","t22","index_0","passesCondition_2","tab_0","_jsx","hidden","isActive","setIsActive","join","children","_jsxs","TabContent","parentIndexPath","name","TabsField","label","customComponents","Field","bb0","AfterInput","BeforeInput","Description","CustomComponent","Fallback","marginPlacement","passesCondition_0","passesCondition_1"],"sources":["../../../src/fields/Tabs/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientComponentProps,\n ClientTab,\n DocumentPreferences,\n SanitizedFieldPermissions,\n StaticDescription,\n TabsFieldClientComponent,\n} from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { getFieldPaths, 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 { useFormFields } from '../../forms/Form/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 { TabsProvider } from './provider.js'\nimport { TabComponent } from './Tab/index.js'\nimport './index.scss'\n\nconst baseClass = 'tabs-field'\n\nexport { TabsProvider }\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 schemaPath = '',\n } = props\n\n const { getPreference, setPreference } = usePreferences()\n const { preferencesKey } = useDocumentInfo()\n const { i18n } = useTranslation()\n const { isWithinCollapsible } = useCollapsible()\n\n const tabStates = useFormFields(([fields]) => {\n return tabs.map((tab, index) => {\n const id = tab?.id\n\n return {\n index,\n passesCondition: fields?.[id]?.passesCondition ?? true,\n tab,\n }\n })\n })\n\n const [activeTabIndex, setActiveTabIndex] = useState<number>(\n () => tabStates.filter(({ passesCondition }) => passesCondition)?.[0]?.index ?? 0,\n )\n\n const tabsPrefKey = `tabs-${indexPath}`\n\n const activeTabInfo = tabStates[activeTabIndex]\n const activeTabConfig = activeTabInfo?.tab\n const activeTabDescription = activeTabConfig?.admin?.description ?? activeTabConfig?.description\n\n const activeTabStaticDescription =\n typeof activeTabDescription === 'function'\n ? activeTabDescription({ i18n, t: i18n.t })\n : activeTabDescription\n\n const hasVisibleTabs = tabStates.some(({ passesCondition }) => passesCondition)\n\n const handleTabChange = useCallback(\n async (incomingTabIndex: number): Promise<void> => {\n setActiveTabIndex(incomingTabIndex)\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 [getPreference, preferencesKey, setPreference, path, tabsPrefKey],\n )\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 = typeof initialIndex === 'number' && initialIndex < tabStates.length ? initialIndex : 0\n setActiveTabIndex(newIndex)\n }\n void getInitialPref()\n }\n }, [path, getPreference, preferencesKey, tabsPrefKey, tabs, parentPath, parentSchemaPath])\n\n useEffect(() => {\n if (activeTabInfo?.passesCondition === false) {\n const nextTab = tabStates.find(({ passesCondition }) => passesCondition)\n if (nextTab) {\n void handleTabChange(nextTab.index)\n }\n }\n }, [activeTabInfo, tabStates, handleTabChange])\n\n return (\n <div\n className={[\n fieldBaseClass,\n className,\n baseClass,\n isWithinCollapsible && `${baseClass}--within-collapsible`,\n !hasVisibleTabs && `${baseClass}--hidden`,\n ]\n .filter(Boolean)\n .join(' ')}\n >\n <TabsProvider>\n <div className={`${baseClass}__tabs-wrap`}>\n <div className={`${baseClass}__tabs`}>\n {tabStates.map(({ index, passesCondition, tab }) => (\n <TabComponent\n hidden={!passesCondition}\n isActive={activeTabIndex === index}\n key={index}\n parentPath={path}\n setIsActive={() => {\n void handleTabChange(index)\n }}\n tab={tab}\n />\n ))}\n </div>\n </div>\n <div className={`${baseClass}__content-wrap`}>\n {activeTabConfig && (\n <TabContent\n description={activeTabStaticDescription}\n field={activeTabConfig}\n forceRender={forceRender}\n hidden={false}\n parentIndexPath={indexPath}\n parentPath={path}\n parentSchemaPath={schemaPath}\n path={path}\n permissions={\n permissions && typeof permissions === 'object' && 'name' in activeTabConfig\n ? permissions[activeTabConfig.name] &&\n typeof permissions[activeTabConfig.name] === 'object' &&\n 'fields' in permissions[activeTabConfig.name]\n ? permissions[activeTabConfig.name].fields\n : permissions[activeTabConfig.name]\n : permissions\n }\n readOnly={readOnly}\n tabIndex={activeTabIndex}\n />\n )}\n </div>\n </TabsProvider>\n </div>\n )\n}\n\nexport const TabsField = withCondition(TabsFieldComponent)\n\ntype ActiveTabProps = {\n readonly description: StaticDescription\n readonly field: ClientTab\n readonly hidden: boolean\n readonly label?: string\n readonly parentIndexPath: string\n readonly parentPath: string\n readonly parentSchemaPath: string\n readonly path: string\n readonly permissions: SanitizedFieldPermissions\n readonly readOnly: boolean\n readonly tabIndex: number\n} & Pick<ClientComponentProps, 'forceRender'>\n\nfunction TabContent({\n description,\n field,\n forceRender,\n hidden,\n label,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n permissions,\n readOnly,\n tabIndex,\n}: ActiveTabProps) {\n const { i18n } = useTranslation()\n\n const { customComponents: { AfterInput, BeforeInput, Description, Field } = {} } = useField()\n\n if (Field) {\n return Field\n }\n\n const { indexPath, path, schemaPath } = getFieldPaths({\n field,\n index: tabIndex,\n parentIndexPath,\n parentPath,\n parentSchemaPath,\n })\n\n return (\n <div\n className={[\n hidden && `${baseClass}__tab--hidden`,\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={\n <FieldDescription description={description} marginPlacement=\"bottom\" path={parentPath} />\n }\n />\n {BeforeInput}\n <RenderFields\n fields={field.fields}\n forceRender={forceRender}\n parentIndexPath={indexPath}\n parentPath={path}\n parentSchemaPath={schemaPath}\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/providers/ServerFunctions/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/ServerFunctions/index.tsx"],"names":[],"mappings":"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"}
@@ -121,16 +121,14 @@ export const ServerFunctionsProvider = ({
121
121
  signal: remoteSignal,
122
122
  ...rest
123
123
  } = args || {};
124
- try {
125
- const result = await serverFunction({
126
- name: 'copy-data-from-locale',
127
- args: rest
128
- });
129
- if (!remoteSignal?.aborted) {
130
- return result;
131
- }
132
- } catch (_err) {
133
- console.error(_err); // eslint-disable-line no-console
124
+ const result = await serverFunction({
125
+ name: 'copy-data-from-locale',
126
+ args: rest
127
+ });
128
+ if (!remoteSignal?.aborted) {
129
+ return {
130
+ data: result
131
+ };
134
132
  }
135
133
  }, [serverFunction]);
136
134
  const getFolderResultsComponentAndData = useCallback(async args => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","createContext","useCallback","ServerFunctionsContext","undefined","useServerFunctions","context","use","Error","ServerFunctionsProvider","children","serverFunction","getDocumentSlots","args","name","schedulePublish","signal","remoteSignal","rest","aborted","result","_err","console","error","type","doc","value","relationTo","getFormState","fallbackLocale","state","getTableState","renderDocument","copyDataFromLocale","getFolderResultsComponentAndData","_internal_renderField","slugify","_jsx"],"sources":["../../../src/providers/ServerFunctions/index.tsx"],"sourcesContent":["import type {\n AdminViewServerPropsOnly,\n BuildFormStateArgs,\n BuildTableStateArgs,\n Data,\n DocumentPreferences,\n DocumentSlots,\n FormState,\n GetFolderResultsComponentAndDataArgs,\n Params,\n RenderDocumentVersionsProperties,\n ServerFunction,\n ServerFunctionClient,\n SlugifyServerFunctionArgs,\n} from 'payload'\nimport type { Slugify } from 'payload/shared'\n\nimport React, { createContext, useCallback } from 'react'\n\nimport type {\n RenderFieldServerFnArgs,\n RenderFieldServerFnReturnType,\n} from '../../forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js'\nimport type { buildFormStateHandler } from '../../utilities/buildFormState.js'\nimport type { buildTableStateHandler } from '../../utilities/buildTableState.js'\nimport type { CopyDataFromLocaleArgs } from '../../utilities/copyDataFromLocale.js'\nimport type { getFolderResultsComponentAndDataHandler } from '../../utilities/getFolderResultsComponentAndData.js'\nimport type {\n schedulePublishHandler,\n SchedulePublishHandlerArgs,\n} from '../../utilities/schedulePublishHandler.js'\n\ntype GetFormStateClient = (\n args: {\n signal?: AbortSignal\n } & Omit<BuildFormStateArgs, 'clientConfig' | 'req'>,\n) => ReturnType<typeof buildFormStateHandler>\n\ntype SchedulePublishClient = (\n args: {\n signal?: AbortSignal\n } & Omit<SchedulePublishHandlerArgs, 'clientConfig' | 'req'>,\n) => ReturnType<typeof schedulePublishHandler>\n\ntype GetTableStateClient = (\n args: {\n signal?: AbortSignal\n } & Omit<BuildTableStateArgs, 'clientConfig' | 'req'>,\n) => ReturnType<typeof buildTableStateHandler>\n\ntype SlugifyClient = (\n args: {\n signal?: AbortSignal\n } & Omit<SlugifyServerFunctionArgs, 'clientConfig' | 'req'>,\n) => ReturnType<Slugify>\n\nexport type RenderDocumentResult = {\n data: any\n Document: React.ReactNode\n preferences: DocumentPreferences\n}\n\ntype RenderDocumentBaseArgs = {\n collectionSlug: string\n disableActions?: boolean\n docID: number | string\n drawerSlug?: string\n initialData?: Data\n initialState?: FormState\n overrideEntityVisibility?: boolean\n paramsOverride?: AdminViewServerPropsOnly['params']\n redirectAfterCreate?: boolean\n redirectAfterDelete: boolean\n redirectAfterDuplicate: boolean\n redirectAfterRestore?: boolean\n searchParams?: Params\n /**\n * Properties specific to the versions view\n */\n versions?: RenderDocumentVersionsProperties\n}\n\nexport type RenderDocumentServerFunction = ServerFunction<\n RenderDocumentBaseArgs,\n Promise<RenderDocumentResult>\n>\n\ntype RenderDocumentServerFunctionHookFn = (\n // No req or importMap - those are augmented by handleServerFunctions\n args: {\n signal?: AbortSignal\n } & RenderDocumentBaseArgs,\n) => Promise<RenderDocumentResult>\n\ntype CopyDataFromLocaleClient = (\n args: {\n signal?: AbortSignal\n } & Omit<CopyDataFromLocaleArgs, 'req'>,\n) => Promise<{ data: Data }>\n\ntype GetDocumentSlots = (args: {\n collectionSlug: string\n id?: number | string\n signal?: AbortSignal\n}) => Promise<DocumentSlots>\n\ntype GetFolderResultsComponentAndDataClient = (\n args: {\n signal?: AbortSignal\n } & Omit<GetFolderResultsComponentAndDataArgs, 'req'>,\n) => ReturnType<typeof getFolderResultsComponentAndDataHandler>\n\ntype RenderFieldClient = (args: RenderFieldServerFnArgs) => Promise<RenderFieldServerFnReturnType>\n\nexport type ServerFunctionsContextType = {\n _internal_renderField: RenderFieldClient\n copyDataFromLocale: CopyDataFromLocaleClient\n getDocumentSlots: GetDocumentSlots\n getFolderResultsComponentAndData: GetFolderResultsComponentAndDataClient\n getFormState: GetFormStateClient\n getTableState: GetTableStateClient\n renderDocument: RenderDocumentServerFunctionHookFn\n schedulePublish: SchedulePublishClient\n serverFunction: ServerFunctionClient\n slugify: SlugifyClient\n}\n\nexport const ServerFunctionsContext = createContext<ServerFunctionsContextType | undefined>(\n undefined,\n)\n\nexport const useServerFunctions = () => {\n const context = React.use(ServerFunctionsContext)\n if (context === undefined) {\n throw new Error('useServerFunctions must be used within a ServerFunctionsProvider')\n }\n return context\n}\n\nexport const ServerFunctionsProvider: React.FC<{\n children: React.ReactNode\n serverFunction: ServerFunctionClient\n}> = ({ children, serverFunction }) => {\n if (!serverFunction) {\n throw new Error('ServerFunctionsProvider requires a serverFunction prop')\n }\n\n const getDocumentSlots = useCallback<GetDocumentSlots>(\n async (args) =>\n await serverFunction({\n name: 'render-document-slots',\n args,\n }),\n [serverFunction],\n )\n\n const schedulePublish = useCallback<SchedulePublishClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args\n\n try {\n if (!remoteSignal?.aborted) {\n const result = await serverFunction({\n name: 'schedule-publish',\n args: { ...rest },\n })\n\n if (!remoteSignal?.aborted) {\n return result\n }\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n\n let error = `Error scheduling ${rest.type}`\n\n if (rest.doc) {\n error += ` for document with ID ${rest.doc.value} in collection ${rest.doc.relationTo}`\n }\n\n return { error }\n },\n [serverFunction],\n )\n\n const getFormState = useCallback<GetFormStateClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n if (!remoteSignal?.aborted) {\n const result = (await serverFunction({\n name: 'form-state',\n args: { fallbackLocale: false, ...rest },\n })) as Awaited<ReturnType<typeof buildFormStateHandler>> // TODO: infer this type when `strictNullChecks` is enabled\n\n if (!remoteSignal?.aborted) {\n return result\n }\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n\n return { state: null }\n },\n [serverFunction],\n )\n\n const getTableState = useCallback<GetTableStateClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n if (!remoteSignal?.aborted) {\n const result = (await serverFunction({\n name: 'table-state',\n args: { fallbackLocale: false, ...rest },\n })) as Awaited<ReturnType<typeof buildTableStateHandler>> // TODO: infer this type when `strictNullChecks` is enabled\n\n if (!remoteSignal?.aborted) {\n return result\n }\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n\n // return { state: args.formState }\n },\n [serverFunction],\n )\n\n const renderDocument = useCallback<RenderDocumentServerFunctionHookFn>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n try {\n const result = (await serverFunction({\n name: 'render-document',\n args: {\n fallbackLocale: false,\n ...rest,\n } as Parameters<RenderDocumentServerFunctionHookFn>[0],\n })) as Awaited<ReturnType<RenderDocumentServerFunctionHookFn>> // TODO: infer this type when `strictNullChecks` is enabled\n\n return result\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const copyDataFromLocale = useCallback<CopyDataFromLocaleClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n const result = (await serverFunction({\n name: 'copy-data-from-locale',\n args: rest,\n })) as { data: Data }\n\n if (!remoteSignal?.aborted) {\n return result\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const getFolderResultsComponentAndData = useCallback<GetFolderResultsComponentAndDataClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n const result = (await serverFunction({\n name: 'get-folder-results-component-and-data',\n args: rest,\n })) as Awaited<ReturnType<typeof getFolderResultsComponentAndDataHandler>>\n\n if (!remoteSignal?.aborted) {\n return result\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const _internal_renderField = useCallback<RenderFieldClient>(\n async (args) => {\n try {\n const result = (await serverFunction({\n name: 'render-field',\n args,\n })) as RenderFieldServerFnReturnType\n\n return result\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const slugify = useCallback<SlugifyClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n const result = (await serverFunction({\n name: 'slugify',\n args: { ...rest },\n })) as Awaited<ReturnType<Slugify>> // TODO: infer this type when `strictNullChecks` is enabled\n\n return result\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n return (\n <ServerFunctionsContext\n value={{\n _internal_renderField,\n copyDataFromLocale,\n getDocumentSlots,\n getFolderResultsComponentAndData,\n getFormState,\n getTableState,\n renderDocument,\n schedulePublish,\n serverFunction,\n slugify,\n }}\n >\n {children}\n </ServerFunctionsContext>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","createContext","useCallback","ServerFunctionsContext","undefined","useServerFunctions","context","use","Error","ServerFunctionsProvider","children","serverFunction","getDocumentSlots","args","name","schedulePublish","signal","remoteSignal","rest","aborted","result","_err","console","error","type","doc","value","relationTo","getFormState","fallbackLocale","state","getTableState","renderDocument","copyDataFromLocale","data","getFolderResultsComponentAndData","_internal_renderField","slugify","_jsx"],"sources":["../../../src/providers/ServerFunctions/index.tsx"],"sourcesContent":["import type {\n AdminViewServerPropsOnly,\n BuildFormStateArgs,\n BuildTableStateArgs,\n Data,\n DocumentPreferences,\n DocumentSlots,\n FormState,\n GetFolderResultsComponentAndDataArgs,\n Params,\n RenderDocumentVersionsProperties,\n ServerFunction,\n ServerFunctionClient,\n SlugifyServerFunctionArgs,\n} from 'payload'\nimport type { Slugify } from 'payload/shared'\n\nimport React, { createContext, useCallback } from 'react'\n\nimport type {\n RenderFieldServerFnArgs,\n RenderFieldServerFnReturnType,\n} from '../../forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js'\nimport type { buildFormStateHandler } from '../../utilities/buildFormState.js'\nimport type { buildTableStateHandler } from '../../utilities/buildTableState.js'\nimport type { CopyDataFromLocaleArgs } from '../../utilities/copyDataFromLocale.js'\nimport type { getFolderResultsComponentAndDataHandler } from '../../utilities/getFolderResultsComponentAndData.js'\nimport type {\n schedulePublishHandler,\n SchedulePublishHandlerArgs,\n} from '../../utilities/schedulePublishHandler.js'\n\ntype GetFormStateClient = (\n args: {\n signal?: AbortSignal\n } & Omit<BuildFormStateArgs, 'clientConfig' | 'req'>,\n) => ReturnType<typeof buildFormStateHandler>\n\ntype SchedulePublishClient = (\n args: {\n signal?: AbortSignal\n } & Omit<SchedulePublishHandlerArgs, 'clientConfig' | 'req'>,\n) => ReturnType<typeof schedulePublishHandler>\n\ntype GetTableStateClient = (\n args: {\n signal?: AbortSignal\n } & Omit<BuildTableStateArgs, 'clientConfig' | 'req'>,\n) => ReturnType<typeof buildTableStateHandler>\n\ntype SlugifyClient = (\n args: {\n signal?: AbortSignal\n } & Omit<SlugifyServerFunctionArgs, 'clientConfig' | 'req'>,\n) => ReturnType<Slugify>\n\nexport type RenderDocumentResult = {\n data: any\n Document: React.ReactNode\n preferences: DocumentPreferences\n}\n\ntype RenderDocumentBaseArgs = {\n collectionSlug: string\n disableActions?: boolean\n docID: number | string\n drawerSlug?: string\n initialData?: Data\n initialState?: FormState\n overrideEntityVisibility?: boolean\n paramsOverride?: AdminViewServerPropsOnly['params']\n redirectAfterCreate?: boolean\n redirectAfterDelete: boolean\n redirectAfterDuplicate: boolean\n redirectAfterRestore?: boolean\n searchParams?: Params\n /**\n * Properties specific to the versions view\n */\n versions?: RenderDocumentVersionsProperties\n}\n\nexport type RenderDocumentServerFunction = ServerFunction<\n RenderDocumentBaseArgs,\n Promise<RenderDocumentResult>\n>\n\ntype RenderDocumentServerFunctionHookFn = (\n // No req or importMap - those are augmented by handleServerFunctions\n args: {\n signal?: AbortSignal\n } & RenderDocumentBaseArgs,\n) => Promise<RenderDocumentResult>\n\ntype CopyDataFromLocaleClient = (\n args: {\n signal?: AbortSignal\n } & Omit<CopyDataFromLocaleArgs, 'req'>,\n) => Promise<{ data: Data }>\n\ntype GetDocumentSlots = (args: {\n collectionSlug: string\n id?: number | string\n signal?: AbortSignal\n}) => Promise<DocumentSlots>\n\ntype GetFolderResultsComponentAndDataClient = (\n args: {\n signal?: AbortSignal\n } & Omit<GetFolderResultsComponentAndDataArgs, 'req'>,\n) => ReturnType<typeof getFolderResultsComponentAndDataHandler>\n\ntype RenderFieldClient = (args: RenderFieldServerFnArgs) => Promise<RenderFieldServerFnReturnType>\n\nexport type ServerFunctionsContextType = {\n _internal_renderField: RenderFieldClient\n copyDataFromLocale: CopyDataFromLocaleClient\n getDocumentSlots: GetDocumentSlots\n getFolderResultsComponentAndData: GetFolderResultsComponentAndDataClient\n getFormState: GetFormStateClient\n getTableState: GetTableStateClient\n renderDocument: RenderDocumentServerFunctionHookFn\n schedulePublish: SchedulePublishClient\n serverFunction: ServerFunctionClient\n slugify: SlugifyClient\n}\n\nexport const ServerFunctionsContext = createContext<ServerFunctionsContextType | undefined>(\n undefined,\n)\n\nexport const useServerFunctions = () => {\n const context = React.use(ServerFunctionsContext)\n if (context === undefined) {\n throw new Error('useServerFunctions must be used within a ServerFunctionsProvider')\n }\n return context\n}\n\nexport const ServerFunctionsProvider: React.FC<{\n children: React.ReactNode\n serverFunction: ServerFunctionClient\n}> = ({ children, serverFunction }) => {\n if (!serverFunction) {\n throw new Error('ServerFunctionsProvider requires a serverFunction prop')\n }\n\n const getDocumentSlots = useCallback<GetDocumentSlots>(\n async (args) =>\n await serverFunction({\n name: 'render-document-slots',\n args,\n }),\n [serverFunction],\n )\n\n const schedulePublish = useCallback<SchedulePublishClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args\n\n try {\n if (!remoteSignal?.aborted) {\n const result = await serverFunction({\n name: 'schedule-publish',\n args: { ...rest },\n })\n\n if (!remoteSignal?.aborted) {\n return result\n }\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n\n let error = `Error scheduling ${rest.type}`\n\n if (rest.doc) {\n error += ` for document with ID ${rest.doc.value} in collection ${rest.doc.relationTo}`\n }\n\n return { error }\n },\n [serverFunction],\n )\n\n const getFormState = useCallback<GetFormStateClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n if (!remoteSignal?.aborted) {\n const result = (await serverFunction({\n name: 'form-state',\n args: { fallbackLocale: false, ...rest },\n })) as Awaited<ReturnType<typeof buildFormStateHandler>> // TODO: infer this type when `strictNullChecks` is enabled\n\n if (!remoteSignal?.aborted) {\n return result\n }\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n\n return { state: null }\n },\n [serverFunction],\n )\n\n const getTableState = useCallback<GetTableStateClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n if (!remoteSignal?.aborted) {\n const result = (await serverFunction({\n name: 'table-state',\n args: { fallbackLocale: false, ...rest },\n })) as Awaited<ReturnType<typeof buildTableStateHandler>> // TODO: infer this type when `strictNullChecks` is enabled\n\n if (!remoteSignal?.aborted) {\n return result\n }\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n\n // return { state: args.formState }\n },\n [serverFunction],\n )\n\n const renderDocument = useCallback<RenderDocumentServerFunctionHookFn>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n try {\n const result = (await serverFunction({\n name: 'render-document',\n args: {\n fallbackLocale: false,\n ...rest,\n } as Parameters<RenderDocumentServerFunctionHookFn>[0],\n })) as Awaited<ReturnType<RenderDocumentServerFunctionHookFn>> // TODO: infer this type when `strictNullChecks` is enabled\n\n return result\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const copyDataFromLocale = useCallback<CopyDataFromLocaleClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n const result = (await serverFunction({\n name: 'copy-data-from-locale',\n args: rest,\n })) as Data\n\n if (!remoteSignal?.aborted) {\n return { data: result }\n }\n },\n [serverFunction],\n )\n\n const getFolderResultsComponentAndData = useCallback<GetFolderResultsComponentAndDataClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n const result = (await serverFunction({\n name: 'get-folder-results-component-and-data',\n args: rest,\n })) as Awaited<ReturnType<typeof getFolderResultsComponentAndDataHandler>>\n\n if (!remoteSignal?.aborted) {\n return result\n }\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const _internal_renderField = useCallback<RenderFieldClient>(\n async (args) => {\n try {\n const result = (await serverFunction({\n name: 'render-field',\n args,\n })) as RenderFieldServerFnReturnType\n\n return result\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n const slugify = useCallback<SlugifyClient>(\n async (args) => {\n const { signal: remoteSignal, ...rest } = args || {}\n\n try {\n const result = (await serverFunction({\n name: 'slugify',\n args: { ...rest },\n })) as Awaited<ReturnType<Slugify>> // TODO: infer this type when `strictNullChecks` is enabled\n\n return result\n } catch (_err) {\n console.error(_err) // eslint-disable-line no-console\n }\n },\n [serverFunction],\n )\n\n return (\n <ServerFunctionsContext\n value={{\n _internal_renderField,\n copyDataFromLocale,\n getDocumentSlots,\n getFolderResultsComponentAndData,\n getFormState,\n getTableState,\n renderDocument,\n schedulePublish,\n serverFunction,\n slugify,\n }}\n >\n {children}\n </ServerFunctionsContext>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"copyDataFromLocale.d.ts","sourceRoot":"","sources":["../../src/utilities/copyDataFromLocale.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,cAAc,EAKnB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,SAAS,CAAA;AAKhB,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AA6LD,eAAO,MAAM,yBAAyB,EAAE,cAAc,CAAC,sBAAsB,CAiB5E,CAAA;AAED,eAAO,MAAM,kBAAkB,SAAgB,sBAAsB,0CAkGpE,CAAA"}
1
+ {"version":3,"file":"copyDataFromLocale.d.ts","sourceRoot":"","sources":["../../src/utilities/copyDataFromLocale.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,cAAc,EAInB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEpB,MAAM,SAAS,CAAA;AAKhB,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,GAAG,EAAE,cAAc,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AA6LD,eAAO,MAAM,yBAAyB,EAAE,cAAc,CAAC,sBAAsB,CAc5E,CAAA;AAED,eAAO,MAAM,kBAAkB,SAAgB,sBAAsB,0CAkGpE,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import ObjectIdImport from 'bson-objectid';
2
- import { canAccessAdmin, formatErrors, traverseFields } from 'payload';
2
+ import { canAccessAdmin, traverseFields } from 'payload';
3
3
  import { fieldAffectsData, fieldShouldBeLocalized, tabHasName } from 'payload/shared';
4
4
  const ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport;
5
5
  function iterateFields(fields, fromLocaleData, toLocaleData, req, parentIsLocalized) {
@@ -141,10 +141,8 @@ export const copyDataFromLocaleHandler = async args => {
141
141
  err,
142
142
  msg: `There was an error copying data from "${args.fromLocale}" to "${args.toLocale}"`
143
143
  });
144
- if (err.message === 'Unauthorized') {
145
- return null;
146
- }
147
- return formatErrors(err);
144
+ // Re-throw the error so it can be caught by the client
145
+ throw err;
148
146
  }
149
147
  };
150
148
  export const copyDataFromLocale = async args => {
@@ -1 +1 @@
1
- {"version":3,"file":"copyDataFromLocale.js","names":["ObjectIdImport","canAccessAdmin","formatErrors","traverseFields","fieldAffectsData","fieldShouldBeLocalized","tabHasName","ObjectId","default","iterateFields","fields","fromLocaleData","toLocaleData","req","parentIsLocalized","map","field","type","name","undefined","includes","item","index","id","toHexString","localized","Array","isArray","length","blockData","block","payload","blocks","blockType","blockReferences","find","slug","tabs","tab","mergeData","removeIdIfParentIsLocalized","data","callback","ref","fillEmpty","copyDataFromLocaleHandler","args","copyDataFromLocale","err","logger","error","msg","fromLocale","toLocale","message","collectionSlug","docID","globalSlug","overrideData","collections","globals","user","Promise","allSettled","findGlobal","depth","locale","overrideAccess","findByID","collection","joins","status","Error","config","fromLocaleDataWithoutID","value","toLocaleDataWithoutID","dataWithID","updateGlobal","update"],"sources":["../../src/utilities/copyDataFromLocale.ts"],"sourcesContent":["import ObjectIdImport from 'bson-objectid'\nimport {\n canAccessAdmin,\n type CollectionSlug,\n type Data,\n type Field,\n type FlattenedBlock,\n formatErrors,\n type PayloadRequest,\n type ServerFunction,\n traverseFields,\n} from 'payload'\nimport { fieldAffectsData, fieldShouldBeLocalized, tabHasName } from 'payload/shared'\n\nconst ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport\n\nexport type CopyDataFromLocaleArgs = {\n collectionSlug?: CollectionSlug\n docID?: number | string\n fromLocale: string\n globalSlug?: string\n overrideData?: boolean\n req: PayloadRequest\n toLocale: string\n}\n\nfunction iterateFields(\n fields: Field[],\n fromLocaleData: Data,\n toLocaleData: Data,\n req: PayloadRequest,\n parentIsLocalized: boolean,\n): void {\n fields.map((field) => {\n if (fieldAffectsData(field)) {\n switch (field.type) {\n case 'array':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((item: Data, index: number) => {\n if (fromLocaleData[field.name]?.[index]) {\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (fieldShouldBeLocalized({ field, parentIsLocalized })) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n iterateFields(\n field.fields,\n fromLocaleData[field.name][index],\n item,\n req,\n parentIsLocalized || field.localized,\n )\n }\n })\n }\n break\n\n case 'blocks':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null, undefined, or empty array\n ([null, undefined].includes(toLocaleData[field.name]) ||\n (Array.isArray(toLocaleData[field.name]) && toLocaleData[field.name].length === 0)) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((blockData: Data, index: number) => {\n const block =\n req.payload.blocks[blockData.blockType] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockData.blockType,\n ) as FlattenedBlock | undefined)\n\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (fieldShouldBeLocalized({ field, parentIsLocalized })) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n if (block?.fields?.length) {\n iterateFields(\n block?.fields,\n fromLocaleData[field.name][index],\n blockData,\n req,\n parentIsLocalized || field.localized,\n )\n }\n })\n }\n\n break\n\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload':\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n }\n break\n\n case 'group': {\n if (\n fieldAffectsData(field) &&\n field.name in toLocaleData &&\n fromLocaleData?.[field.name] !== undefined\n ) {\n iterateFields(\n field.fields,\n fromLocaleData[field.name],\n toLocaleData[field.name],\n req,\n parentIsLocalized || field.localized,\n )\n } else {\n iterateFields(field.fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n }\n break\n }\n }\n } else {\n switch (field.type) {\n case 'collapsible':\n case 'row':\n iterateFields(field.fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n if (tabHasName(tab)) {\n if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {\n iterateFields(\n tab.fields,\n fromLocaleData[tab.name],\n toLocaleData[tab.name],\n req,\n parentIsLocalized,\n )\n }\n } else {\n iterateFields(tab.fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n }\n })\n break\n }\n }\n })\n}\n\nfunction mergeData(\n fromLocaleData: Data,\n toLocaleData: Data,\n fields: Field[],\n req: PayloadRequest,\n parentIsLocalized: boolean,\n): Data {\n iterateFields(fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n\n return toLocaleData\n}\n\n/**\n * We don't have to recursively remove all ids,\n * just the ones from the fields inside a localized array or block.\n */\nfunction removeIdIfParentIsLocalized(data: Data, fields: Field[]): Data {\n traverseFields({\n callback: ({ parentIsLocalized, ref }) => {\n if (parentIsLocalized) {\n delete (ref as { id: unknown }).id\n }\n },\n fields,\n fillEmpty: false,\n ref: data,\n })\n\n return data\n}\n\nexport const copyDataFromLocaleHandler: ServerFunction<CopyDataFromLocaleArgs> = async (args) => {\n const { req } = args\n\n try {\n return await copyDataFromLocale(args)\n } catch (err) {\n req.payload.logger.error({\n err,\n msg: `There was an error copying data from \"${args.fromLocale}\" to \"${args.toLocale}\"`,\n })\n\n if (err.message === 'Unauthorized') {\n return null\n }\n\n return formatErrors(err)\n }\n}\n\nexport const copyDataFromLocale = async (args: CopyDataFromLocaleArgs) => {\n const {\n collectionSlug,\n docID,\n fromLocale,\n globalSlug,\n overrideData = false,\n req: {\n payload,\n payload: { collections, globals },\n user,\n },\n req,\n toLocale,\n } = args\n\n await canAccessAdmin({ req })\n\n const [fromLocaleData, toLocaleData] = await Promise.allSettled([\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n ])\n\n if (fromLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${fromLocale}\"`)\n }\n\n if (toLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${toLocale}\"`)\n }\n\n const fields = globalSlug\n ? globals[globalSlug].config.fields\n : collections[collectionSlug].config.fields\n\n const fromLocaleDataWithoutID = fromLocaleData.value\n const toLocaleDataWithoutID = toLocaleData.value\n\n const dataWithID = overrideData\n ? fromLocaleDataWithoutID\n : mergeData(fromLocaleDataWithoutID, toLocaleDataWithoutID, fields, req, false)\n\n const data = removeIdIfParentIsLocalized(dataWithID, fields)\n\n return globalSlug\n ? await payload.updateGlobal({\n slug: globalSlug,\n data,\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n : await payload.update({\n id: docID,\n collection: collectionSlug,\n data,\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"copyDataFromLocale.js","names":["ObjectIdImport","canAccessAdmin","traverseFields","fieldAffectsData","fieldShouldBeLocalized","tabHasName","ObjectId","default","iterateFields","fields","fromLocaleData","toLocaleData","req","parentIsLocalized","map","field","type","name","undefined","includes","item","index","id","toHexString","localized","Array","isArray","length","blockData","block","payload","blocks","blockType","blockReferences","find","slug","tabs","tab","mergeData","removeIdIfParentIsLocalized","data","callback","ref","fillEmpty","copyDataFromLocaleHandler","args","copyDataFromLocale","err","logger","error","msg","fromLocale","toLocale","collectionSlug","docID","globalSlug","overrideData","collections","globals","user","Promise","allSettled","findGlobal","depth","locale","overrideAccess","findByID","collection","joins","status","Error","config","fromLocaleDataWithoutID","value","toLocaleDataWithoutID","dataWithID","updateGlobal","update"],"sources":["../../src/utilities/copyDataFromLocale.ts"],"sourcesContent":["import ObjectIdImport from 'bson-objectid'\nimport {\n canAccessAdmin,\n type CollectionSlug,\n type Data,\n type Field,\n type FlattenedBlock,\n type PayloadRequest,\n type ServerFunction,\n traverseFields,\n} from 'payload'\nimport { fieldAffectsData, fieldShouldBeLocalized, tabHasName } from 'payload/shared'\n\nconst ObjectId = 'default' in ObjectIdImport ? ObjectIdImport.default : ObjectIdImport\n\nexport type CopyDataFromLocaleArgs = {\n collectionSlug?: CollectionSlug\n docID?: number | string\n fromLocale: string\n globalSlug?: string\n overrideData?: boolean\n req: PayloadRequest\n toLocale: string\n}\n\nfunction iterateFields(\n fields: Field[],\n fromLocaleData: Data,\n toLocaleData: Data,\n req: PayloadRequest,\n parentIsLocalized: boolean,\n): void {\n fields.map((field) => {\n if (fieldAffectsData(field)) {\n switch (field.type) {\n case 'array':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((item: Data, index: number) => {\n if (fromLocaleData[field.name]?.[index]) {\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (fieldShouldBeLocalized({ field, parentIsLocalized })) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n iterateFields(\n field.fields,\n fromLocaleData[field.name][index],\n item,\n req,\n parentIsLocalized || field.localized,\n )\n }\n })\n }\n break\n\n case 'blocks':\n // if the field has no value, take the source value\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null, undefined, or empty array\n ([null, undefined].includes(toLocaleData[field.name]) ||\n (Array.isArray(toLocaleData[field.name]) && toLocaleData[field.name].length === 0)) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n break\n }\n\n // if the field has a value - loop over the data from target\n if (field.name in toLocaleData) {\n toLocaleData[field.name].map((blockData: Data, index: number) => {\n const block =\n req.payload.blocks[blockData.blockType] ??\n ((field.blockReferences ?? field.blocks).find(\n (block) => typeof block !== 'string' && block.slug === blockData.blockType,\n ) as FlattenedBlock | undefined)\n\n // Generate new IDs if the field is localized to prevent errors with relational DBs.\n if (fieldShouldBeLocalized({ field, parentIsLocalized })) {\n toLocaleData[field.name][index].id = new ObjectId().toHexString()\n }\n\n if (block?.fields?.length) {\n iterateFields(\n block?.fields,\n fromLocaleData[field.name][index],\n blockData,\n req,\n parentIsLocalized || field.localized,\n )\n }\n })\n }\n\n break\n\n case 'checkbox':\n case 'code':\n case 'date':\n case 'email':\n case 'json':\n case 'number':\n case 'point':\n case 'radio':\n case 'relationship':\n case 'richText':\n case 'select':\n case 'text':\n case 'textarea':\n case 'upload':\n if (\n field.name in toLocaleData &&\n // only replace if the target value is null or undefined\n [null, undefined].includes(toLocaleData[field.name]) &&\n field.name in fromLocaleData\n ) {\n toLocaleData[field.name] = fromLocaleData[field.name]\n }\n break\n\n case 'group': {\n if (\n fieldAffectsData(field) &&\n field.name in toLocaleData &&\n fromLocaleData?.[field.name] !== undefined\n ) {\n iterateFields(\n field.fields,\n fromLocaleData[field.name],\n toLocaleData[field.name],\n req,\n parentIsLocalized || field.localized,\n )\n } else {\n iterateFields(field.fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n }\n break\n }\n }\n } else {\n switch (field.type) {\n case 'collapsible':\n case 'row':\n iterateFields(field.fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n if (tabHasName(tab)) {\n if (tab.name in toLocaleData && fromLocaleData?.[tab.name] !== undefined) {\n iterateFields(\n tab.fields,\n fromLocaleData[tab.name],\n toLocaleData[tab.name],\n req,\n parentIsLocalized,\n )\n }\n } else {\n iterateFields(tab.fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n }\n })\n break\n }\n }\n })\n}\n\nfunction mergeData(\n fromLocaleData: Data,\n toLocaleData: Data,\n fields: Field[],\n req: PayloadRequest,\n parentIsLocalized: boolean,\n): Data {\n iterateFields(fields, fromLocaleData, toLocaleData, req, parentIsLocalized)\n\n return toLocaleData\n}\n\n/**\n * We don't have to recursively remove all ids,\n * just the ones from the fields inside a localized array or block.\n */\nfunction removeIdIfParentIsLocalized(data: Data, fields: Field[]): Data {\n traverseFields({\n callback: ({ parentIsLocalized, ref }) => {\n if (parentIsLocalized) {\n delete (ref as { id: unknown }).id\n }\n },\n fields,\n fillEmpty: false,\n ref: data,\n })\n\n return data\n}\n\nexport const copyDataFromLocaleHandler: ServerFunction<CopyDataFromLocaleArgs> = async (args) => {\n const { req } = args\n\n try {\n return await copyDataFromLocale(args)\n } catch (err) {\n req.payload.logger.error({\n err,\n msg: `There was an error copying data from \"${args.fromLocale}\" to \"${args.toLocale}\"`,\n })\n\n // Re-throw the error so it can be caught by the client\n throw err\n }\n}\n\nexport const copyDataFromLocale = async (args: CopyDataFromLocaleArgs) => {\n const {\n collectionSlug,\n docID,\n fromLocale,\n globalSlug,\n overrideData = false,\n req: {\n payload,\n payload: { collections, globals },\n user,\n },\n req,\n toLocale,\n } = args\n\n await canAccessAdmin({ req })\n\n const [fromLocaleData, toLocaleData] = await Promise.allSettled([\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: fromLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n globalSlug\n ? payload.findGlobal({\n slug: globalSlug,\n depth: 0,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n })\n : payload.findByID({\n id: docID,\n collection: collectionSlug,\n depth: 0,\n joins: false,\n locale: toLocale,\n overrideAccess: false,\n user,\n // `select` would allow us to select only the fields we need in the future\n }),\n ])\n\n if (fromLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${fromLocale}\"`)\n }\n\n if (toLocaleData.status === 'rejected') {\n throw new Error(`Error fetching data from locale \"${toLocale}\"`)\n }\n\n const fields = globalSlug\n ? globals[globalSlug].config.fields\n : collections[collectionSlug].config.fields\n\n const fromLocaleDataWithoutID = fromLocaleData.value\n const toLocaleDataWithoutID = toLocaleData.value\n\n const dataWithID = overrideData\n ? fromLocaleDataWithoutID\n : mergeData(fromLocaleDataWithoutID, toLocaleDataWithoutID, fields, req, false)\n\n const data = removeIdIfParentIsLocalized(dataWithID, fields)\n\n return globalSlug\n ? await payload.updateGlobal({\n slug: globalSlug,\n data,\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n : await payload.update({\n id: docID,\n collection: collectionSlug,\n data,\n locale: toLocale,\n overrideAccess: false,\n req,\n user,\n })\n}\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payloadcms/ui",
3
- "version": "3.76.0",
3
+ "version": "3.76.1",
4
4
  "homepage": "https://payloadcms.com",
5
5
  "repository": {
6
6
  "type": "git",
@@ -136,7 +136,7 @@
136
136
  "ts-essentials": "10.0.3",
137
137
  "use-context-selector": "2.0.0",
138
138
  "uuid": "10.0.0",
139
- "@payloadcms/translations": "3.76.0"
139
+ "@payloadcms/translations": "3.76.1"
140
140
  },
141
141
  "devDependencies": {
142
142
  "@babel/cli": "7.27.2",
@@ -152,13 +152,13 @@
152
152
  "esbuild": "0.27.1",
153
153
  "esbuild-sass-plugin": "3.3.1",
154
154
  "@payloadcms/eslint-config": "3.28.0",
155
- "payload": "3.76.0"
155
+ "payload": "3.76.1"
156
156
  },
157
157
  "peerDependencies": {
158
158
  "next": ">=15.2.9 <15.3.0 || >=15.3.9 <15.4.0 || >=15.4.11 <15.5.0 || >=16.2.0-canary.10 <17.0.0",
159
159
  "react": "^19.0.1 || ^19.1.2 || ^19.2.1",
160
160
  "react-dom": "^19.0.1 || ^19.1.2 || ^19.2.1",
161
- "payload": "3.76.0"
161
+ "payload": "3.76.1"
162
162
  },
163
163
  "engines": {
164
164
  "node": "^18.20.2 || >=20.9.0"