@payloadcms/ui 3.0.0-beta.27 → 3.0.0-beta.29

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 (109) hide show
  1. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  2. package/dist/elements/FieldSelect/index.js +4 -1
  3. package/dist/elements/FieldSelect/index.js.map +1 -1
  4. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  5. package/dist/elements/TableColumns/buildColumnState.js +2 -1
  6. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  7. package/dist/{providers/ComponentMap/buildComponentMap/WithServerSideProps.d.ts → elements/WithServerSideProps/index.d.ts} +1 -1
  8. package/dist/elements/WithServerSideProps/index.d.ts.map +1 -0
  9. package/dist/{providers/ComponentMap/buildComponentMap/WithServerSideProps.js → elements/WithServerSideProps/index.js} +3 -3
  10. package/dist/elements/WithServerSideProps/index.js.map +1 -0
  11. package/dist/fields/Array/index.d.ts +0 -2
  12. package/dist/fields/Array/index.d.ts.map +1 -1
  13. package/dist/fields/Array/index.js +1 -1
  14. package/dist/fields/Array/index.js.map +1 -1
  15. package/dist/fields/Blocks/index.d.ts +1 -2
  16. package/dist/fields/Blocks/index.d.ts.map +1 -1
  17. package/dist/fields/Blocks/index.js.map +1 -1
  18. package/dist/fields/Checkbox/Input.d.ts +3 -3
  19. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  20. package/dist/fields/Checkbox/Input.js.map +1 -1
  21. package/dist/fields/Checkbox/types.d.ts +0 -2
  22. package/dist/fields/Checkbox/types.d.ts.map +1 -1
  23. package/dist/fields/Checkbox/types.js.map +1 -1
  24. package/dist/fields/Code/index.d.ts +1 -2
  25. package/dist/fields/Code/index.d.ts.map +1 -1
  26. package/dist/fields/Code/index.js.map +1 -1
  27. package/dist/fields/Collapsible/index.d.ts +0 -2
  28. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  29. package/dist/fields/Collapsible/index.js +2 -2
  30. package/dist/fields/Collapsible/index.js.map +1 -1
  31. package/dist/fields/DateTime/index.d.ts +1 -2
  32. package/dist/fields/DateTime/index.d.ts.map +1 -1
  33. package/dist/fields/DateTime/index.js.map +1 -1
  34. package/dist/fields/Email/index.d.ts +1 -2
  35. package/dist/fields/Email/index.d.ts.map +1 -1
  36. package/dist/fields/Email/index.js.map +1 -1
  37. package/dist/fields/Group/index.d.ts +0 -2
  38. package/dist/fields/Group/index.d.ts.map +1 -1
  39. package/dist/fields/Group/index.js +3 -3
  40. package/dist/fields/Group/index.js.map +1 -1
  41. package/dist/fields/JSON/index.d.ts +1 -2
  42. package/dist/fields/JSON/index.d.ts.map +1 -1
  43. package/dist/fields/JSON/index.js.map +1 -1
  44. package/dist/fields/Number/index.d.ts +1 -2
  45. package/dist/fields/Number/index.d.ts.map +1 -1
  46. package/dist/fields/Number/index.js.map +1 -1
  47. package/dist/fields/Password/index.d.ts +0 -1
  48. package/dist/fields/Password/index.d.ts.map +1 -1
  49. package/dist/fields/Password/index.js.map +1 -1
  50. package/dist/fields/Point/index.d.ts +0 -2
  51. package/dist/fields/Point/index.d.ts.map +1 -1
  52. package/dist/fields/Point/index.js +2 -2
  53. package/dist/fields/Point/index.js.map +1 -1
  54. package/dist/fields/RadioGroup/index.d.ts +1 -2
  55. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  56. package/dist/fields/RadioGroup/index.js.map +1 -1
  57. package/dist/fields/Relationship/types.d.ts +1 -2
  58. package/dist/fields/Relationship/types.d.ts.map +1 -1
  59. package/dist/fields/Relationship/types.js.map +1 -1
  60. package/dist/fields/RichText/index.d.ts +0 -2
  61. package/dist/fields/RichText/index.d.ts.map +1 -1
  62. package/dist/fields/RichText/index.js.map +1 -1
  63. package/dist/fields/Select/index.d.ts +1 -2
  64. package/dist/fields/Select/index.d.ts.map +1 -1
  65. package/dist/fields/Select/index.js.map +1 -1
  66. package/dist/fields/Text/index.d.ts.map +1 -1
  67. package/dist/fields/Text/index.js +2 -1
  68. package/dist/fields/Text/index.js.map +1 -1
  69. package/dist/fields/Text/types.d.ts +1 -2
  70. package/dist/fields/Text/types.d.ts.map +1 -1
  71. package/dist/fields/Text/types.js.map +1 -1
  72. package/dist/fields/Textarea/index.d.ts.map +1 -1
  73. package/dist/fields/Textarea/index.js +2 -1
  74. package/dist/fields/Textarea/index.js.map +1 -1
  75. package/dist/fields/Textarea/types.d.ts +1 -2
  76. package/dist/fields/Textarea/types.d.ts.map +1 -1
  77. package/dist/fields/Textarea/types.js.map +1 -1
  78. package/dist/fields/Upload/types.d.ts +0 -1
  79. package/dist/fields/Upload/types.d.ts.map +1 -1
  80. package/dist/fields/Upload/types.js.map +1 -1
  81. package/dist/fields/shared/index.d.ts +3 -2
  82. package/dist/fields/shared/index.d.ts.map +1 -1
  83. package/dist/fields/shared/index.js.map +1 -1
  84. package/dist/forms/RowLabel/types.d.ts +2 -3
  85. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  86. package/dist/forms/RowLabel/types.js +1 -4
  87. package/dist/forms/RowLabel/types.js.map +1 -1
  88. package/dist/graphics/Account/index.js +0 -9
  89. package/dist/graphics/Account/index.js.map +1 -1
  90. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +1 -1
  91. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +1 -1
  92. package/dist/providers/ComponentMap/buildComponentMap/collections.js +16 -4
  93. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +1 -1
  94. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +1 -1
  95. package/dist/providers/ComponentMap/buildComponentMap/fields.js +41 -36
  96. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +1 -1
  97. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +1 -1
  98. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +1 -1
  99. package/dist/providers/ComponentMap/buildComponentMap/globals.js +16 -4
  100. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +1 -1
  101. package/dist/providers/ComponentMap/buildComponentMap/index.js +1 -1
  102. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +1 -1
  103. package/dist/providers/ComponentMap/index.d.ts +0 -1
  104. package/dist/providers/ComponentMap/index.d.ts.map +1 -1
  105. package/dist/providers/ComponentMap/index.js +0 -1
  106. package/dist/providers/ComponentMap/index.js.map +1 -1
  107. package/package.json +5 -5
  108. package/dist/providers/ComponentMap/buildComponentMap/WithServerSideProps.d.ts.map +0 -1
  109. package/dist/providers/ComponentMap/buildComponentMap/WithServerSideProps.js.map +0 -1
@@ -1,9 +1,10 @@
1
1
  import { ViewDescription } from '@payloadcms/ui/elements/ViewDescription';
2
- import { isPlainFunction, isReactComponent } from 'payload/utilities';
3
2
  import React from 'react';
4
3
  import { mapActions } from './actions.js';
5
4
  import { mapFields } from './fields.js';
6
- export const mapCollections = ({ DefaultEditView, DefaultListView, WithServerSideProps, collections, config, i18n, readOnly: readOnlyOverride })=>collections.reduce((acc, collectionConfig)=>{
5
+ export const mapCollections = (args)=>{
6
+ const { DefaultEditView, DefaultListView, WithServerSideProps, collections, config, i18n, i18n: { t }, readOnly: readOnlyOverride } = args;
7
+ return collections.reduce((acc, collectionConfig)=>{
7
8
  const { slug, fields } = collectionConfig;
8
9
  const internalCollections = [
9
10
  'payload-preferences',
@@ -50,10 +51,20 @@ export const mapCollections = ({ DefaultEditView, DefaultListView, WithServerSid
50
51
  const AfterListTable = afterListTable && Array.isArray(afterListTable) && afterListTable?.map((Component)=>/*#__PURE__*/ React.createElement(WithServerSideProps, {
51
52
  Component: Component
52
53
  })) || null;
54
+ let description = undefined;
55
+ if (collectionConfig.admin && 'description' in collectionConfig.admin) {
56
+ if (typeof collectionConfig.admin?.description === 'string' || typeof collectionConfig.admin?.description === 'object') {
57
+ description = collectionConfig.admin.description;
58
+ } else if (typeof collectionConfig.admin?.description === 'function') {
59
+ description = collectionConfig.admin?.description({
60
+ t
61
+ });
62
+ }
63
+ }
53
64
  const descriptionProps = {
54
- description: collectionConfig.admin && 'description' in collectionConfig.admin && ((typeof collectionConfig.admin?.description === 'string' || typeof collectionConfig.admin?.description === 'object') && collectionConfig.admin.description || typeof collectionConfig.admin?.description === 'function' && isPlainFunction(collectionConfig.admin?.description) && collectionConfig.admin?.description()) || undefined
65
+ description
55
66
  };
56
- const DescriptionComponent = collectionConfig.admin && 'description' in collectionConfig.admin && (isReactComponent(collectionConfig.admin.description) && collectionConfig.admin.description || collectionConfig.admin.description && ViewDescription) || undefined;
67
+ const DescriptionComponent = collectionConfig.admin?.components?.edit?.Description || (description ? ViewDescription : undefined);
57
68
  const Description = DescriptionComponent !== undefined ? /*#__PURE__*/ React.createElement(WithServerSideProps, {
58
69
  Component: DescriptionComponent,
59
70
  ...descriptionProps || {}
@@ -92,5 +103,6 @@ export const mapCollections = ({ DefaultEditView, DefaultListView, WithServerSid
92
103
  [slug]: componentMap
93
104
  };
94
105
  }, {});
106
+ };
95
107
 
96
108
  //# sourceMappingURL=collections.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/collections.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { ViewDescriptionProps } from '@payloadcms/ui/elements/ViewDescription'\nimport type {\n AdminViewProps,\n EditViewProps,\n EntityDescriptionComponent,\n EntityDescriptionFunction,\n SanitizedCollectionConfig,\n SanitizedConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport { ViewDescription } from '@payloadcms/ui/elements/ViewDescription'\nimport { isPlainFunction, isReactComponent } from 'payload/utilities'\nimport React from 'react'\n\nimport type { CollectionComponentMap } from './types.js'\n\nimport { mapActions } from './actions.js'\nimport { mapFields } from './fields.js'\n\nexport const mapCollections = ({\n DefaultEditView,\n DefaultListView,\n WithServerSideProps,\n collections,\n config,\n i18n,\n readOnly: readOnlyOverride,\n}: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n WithServerSideProps: WithServerSidePropsType\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n i18n: I18n\n readOnly?: boolean\n}): {\n [key: SanitizedCollectionConfig['slug']]: CollectionComponentMap\n} =>\n collections.reduce((acc, collectionConfig) => {\n const { slug, fields } = collectionConfig\n\n const internalCollections = ['payload-preferences', 'payload-migrations']\n\n if (internalCollections.includes(slug)) {\n return acc\n }\n\n const editViewFromConfig = collectionConfig?.admin?.components?.views?.Edit\n\n const listViewFromConfig = collectionConfig?.admin?.components?.views?.List\n\n const CustomEditView =\n typeof editViewFromConfig === 'function'\n ? editViewFromConfig\n : typeof editViewFromConfig === 'object' && typeof editViewFromConfig.Default === 'function'\n ? editViewFromConfig.Default\n : typeof editViewFromConfig?.Default === 'object' &&\n 'Component' in editViewFromConfig.Default &&\n typeof editViewFromConfig.Default.Component === 'function'\n ? (editViewFromConfig.Default.Component as React.FC<EditViewProps>)\n : undefined\n\n const CustomListView =\n typeof listViewFromConfig === 'function'\n ? listViewFromConfig\n : typeof listViewFromConfig === 'object' &&\n typeof listViewFromConfig.Component === 'function'\n ? listViewFromConfig.Component\n : undefined\n\n const Edit = (CustomEditView as React.FC<EditViewProps>) || DefaultEditView\n\n const List = CustomListView || DefaultListView\n\n const SaveButtonComponent = collectionConfig?.admin?.components?.edit?.SaveButton\n\n const SaveButton = SaveButtonComponent ? (\n <WithServerSideProps Component={SaveButtonComponent} />\n ) : undefined\n\n const SaveDraftButtonComponent = collectionConfig?.admin?.components?.edit?.SaveDraftButton\n\n const SaveDraftButton = SaveDraftButtonComponent ? (\n <WithServerSideProps Component={SaveDraftButtonComponent} />\n ) : undefined\n\n const PreviewButtonComponent = collectionConfig?.admin?.components?.edit?.PreviewButton\n\n const PreviewButton = PreviewButtonComponent ? (\n <WithServerSideProps Component={PreviewButtonComponent} />\n ) : undefined\n\n const PublishButtonComponent = collectionConfig?.admin?.components?.edit?.PublishButton\n\n const PublishButton = PublishButtonComponent ? (\n <WithServerSideProps Component={PublishButtonComponent} />\n ) : undefined\n\n const beforeList = collectionConfig?.admin?.components?.BeforeList\n\n const BeforeList =\n (beforeList &&\n Array.isArray(beforeList) &&\n beforeList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const beforeListTable = collectionConfig?.admin?.components?.BeforeListTable\n\n const BeforeListTable =\n (beforeListTable &&\n Array.isArray(beforeListTable) &&\n beforeListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterList = collectionConfig?.admin?.components?.AfterList\n\n const AfterList =\n (afterList &&\n Array.isArray(afterList) &&\n afterList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterListTable = collectionConfig?.admin?.components?.AfterListTable\n\n const AfterListTable =\n (afterListTable &&\n Array.isArray(afterListTable) &&\n afterListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const descriptionProps: ViewDescriptionProps = {\n description:\n (collectionConfig.admin &&\n 'description' in collectionConfig.admin &&\n (((typeof collectionConfig.admin?.description === 'string' ||\n typeof collectionConfig.admin?.description === 'object') &&\n collectionConfig.admin.description) ||\n (typeof collectionConfig.admin?.description === 'function' &&\n isPlainFunction<EntityDescriptionFunction>(collectionConfig.admin?.description) &&\n collectionConfig.admin?.description()))) ||\n undefined,\n }\n\n const DescriptionComponent =\n (collectionConfig.admin &&\n 'description' in collectionConfig.admin &&\n ((isReactComponent<EntityDescriptionComponent>(collectionConfig.admin.description) &&\n collectionConfig.admin.description) ||\n (collectionConfig.admin.description && ViewDescription))) ||\n undefined\n\n const Description =\n DescriptionComponent !== undefined ? (\n <WithServerSideProps Component={DescriptionComponent} {...(descriptionProps || {})} />\n ) : undefined\n\n const componentMap: CollectionComponentMap = {\n AfterList,\n AfterListTable,\n BeforeList,\n BeforeListTable,\n Description,\n Edit: <Edit collectionSlug={collectionConfig.slug} />,\n List: <List collectionSlug={collectionConfig.slug} />,\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n actionsMap: mapActions({\n WithServerSideProps,\n collectionConfig,\n }),\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: fields,\n i18n,\n readOnly: readOnlyOverride,\n }),\n isPreviewEnabled: !!collectionConfig?.admin?.preview,\n }\n\n return {\n ...acc,\n [slug]: componentMap,\n }\n }, {})\n"],"names":["ViewDescription","isPlainFunction","isReactComponent","React","mapActions","mapFields","mapCollections","DefaultEditView","DefaultListView","WithServerSideProps","collections","config","i18n","readOnly","readOnlyOverride","reduce","acc","collectionConfig","slug","fields","internalCollections","includes","editViewFromConfig","admin","components","views","Edit","listViewFromConfig","List","CustomEditView","Default","Component","undefined","CustomListView","SaveButtonComponent","edit","SaveButton","SaveDraftButtonComponent","SaveDraftButton","PreviewButtonComponent","PreviewButton","PublishButtonComponent","PublishButton","beforeList","BeforeList","Array","isArray","map","beforeListTable","BeforeListTable","afterList","AfterList","afterListTable","AfterListTable","descriptionProps","description","DescriptionComponent","Description","componentMap","collectionSlug","actionsMap","fieldMap","fieldSchema","isPreviewEnabled","preview"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/collections.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { ViewDescriptionProps } from '@payloadcms/ui/elements/ViewDescription'\nimport type {\n AdminViewProps,\n EditViewProps,\n SanitizedCollectionConfig,\n SanitizedConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport { ViewDescription } from '@payloadcms/ui/elements/ViewDescription'\nimport React from 'react'\n\nimport type { CollectionComponentMap } from './types.js'\n\nimport { mapActions } from './actions.js'\nimport { mapFields } from './fields.js'\n\nexport const mapCollections = (args: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n WithServerSideProps: WithServerSidePropsType\n collections: SanitizedCollectionConfig[]\n config: SanitizedConfig\n i18n: I18n\n readOnly?: boolean\n}): {\n [key: SanitizedCollectionConfig['slug']]: CollectionComponentMap\n} => {\n const {\n DefaultEditView,\n DefaultListView,\n WithServerSideProps,\n collections,\n config,\n i18n,\n i18n: { t },\n readOnly: readOnlyOverride,\n } = args\n\n return collections.reduce((acc, collectionConfig) => {\n const { slug, fields } = collectionConfig\n\n const internalCollections = ['payload-preferences', 'payload-migrations']\n\n if (internalCollections.includes(slug)) {\n return acc\n }\n\n const editViewFromConfig = collectionConfig?.admin?.components?.views?.Edit\n\n const listViewFromConfig = collectionConfig?.admin?.components?.views?.List\n\n const CustomEditView =\n typeof editViewFromConfig === 'function'\n ? editViewFromConfig\n : typeof editViewFromConfig === 'object' && typeof editViewFromConfig.Default === 'function'\n ? editViewFromConfig.Default\n : typeof editViewFromConfig?.Default === 'object' &&\n 'Component' in editViewFromConfig.Default &&\n typeof editViewFromConfig.Default.Component === 'function'\n ? (editViewFromConfig.Default.Component as React.FC<EditViewProps>)\n : undefined\n\n const CustomListView =\n typeof listViewFromConfig === 'function'\n ? listViewFromConfig\n : typeof listViewFromConfig === 'object' &&\n typeof listViewFromConfig.Component === 'function'\n ? listViewFromConfig.Component\n : undefined\n\n const Edit = (CustomEditView as React.FC<EditViewProps>) || DefaultEditView\n\n const List = CustomListView || DefaultListView\n\n const SaveButtonComponent = collectionConfig?.admin?.components?.edit?.SaveButton\n\n const SaveButton = SaveButtonComponent ? (\n <WithServerSideProps Component={SaveButtonComponent} />\n ) : undefined\n\n const SaveDraftButtonComponent = collectionConfig?.admin?.components?.edit?.SaveDraftButton\n\n const SaveDraftButton = SaveDraftButtonComponent ? (\n <WithServerSideProps Component={SaveDraftButtonComponent} />\n ) : undefined\n\n const PreviewButtonComponent = collectionConfig?.admin?.components?.edit?.PreviewButton\n\n const PreviewButton = PreviewButtonComponent ? (\n <WithServerSideProps Component={PreviewButtonComponent} />\n ) : undefined\n\n const PublishButtonComponent = collectionConfig?.admin?.components?.edit?.PublishButton\n\n const PublishButton = PublishButtonComponent ? (\n <WithServerSideProps Component={PublishButtonComponent} />\n ) : undefined\n\n const beforeList = collectionConfig?.admin?.components?.BeforeList\n\n const BeforeList =\n (beforeList &&\n Array.isArray(beforeList) &&\n beforeList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const beforeListTable = collectionConfig?.admin?.components?.BeforeListTable\n\n const BeforeListTable =\n (beforeListTable &&\n Array.isArray(beforeListTable) &&\n beforeListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterList = collectionConfig?.admin?.components?.AfterList\n\n const AfterList =\n (afterList &&\n Array.isArray(afterList) &&\n afterList?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n const afterListTable = collectionConfig?.admin?.components?.AfterListTable\n\n const AfterListTable =\n (afterListTable &&\n Array.isArray(afterListTable) &&\n afterListTable?.map((Component) => <WithServerSideProps Component={Component} />)) ||\n null\n\n let description = undefined\n if (collectionConfig.admin && 'description' in collectionConfig.admin) {\n if (\n typeof collectionConfig.admin?.description === 'string' ||\n typeof collectionConfig.admin?.description === 'object'\n ) {\n description = collectionConfig.admin.description\n } else if (typeof collectionConfig.admin?.description === 'function') {\n description = collectionConfig.admin?.description({ t })\n }\n }\n\n const descriptionProps: ViewDescriptionProps = {\n description,\n }\n\n const DescriptionComponent =\n collectionConfig.admin?.components?.edit?.Description ||\n (description ? ViewDescription : undefined)\n\n const Description =\n DescriptionComponent !== undefined ? (\n <WithServerSideProps Component={DescriptionComponent} {...(descriptionProps || {})} />\n ) : undefined\n\n const componentMap: CollectionComponentMap = {\n AfterList,\n AfterListTable,\n BeforeList,\n BeforeListTable,\n Description,\n Edit: <Edit collectionSlug={collectionConfig.slug} />,\n List: <List collectionSlug={collectionConfig.slug} />,\n PreviewButton,\n PublishButton,\n SaveButton,\n SaveDraftButton,\n actionsMap: mapActions({\n WithServerSideProps,\n collectionConfig,\n }),\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: fields,\n i18n,\n readOnly: readOnlyOverride,\n }),\n isPreviewEnabled: !!collectionConfig?.admin?.preview,\n }\n\n return {\n ...acc,\n [slug]: componentMap,\n }\n }, {})\n}\n"],"names":["ViewDescription","React","mapActions","mapFields","mapCollections","args","DefaultEditView","DefaultListView","WithServerSideProps","collections","config","i18n","t","readOnly","readOnlyOverride","reduce","acc","collectionConfig","slug","fields","internalCollections","includes","editViewFromConfig","admin","components","views","Edit","listViewFromConfig","List","CustomEditView","Default","Component","undefined","CustomListView","SaveButtonComponent","edit","SaveButton","SaveDraftButtonComponent","SaveDraftButton","PreviewButtonComponent","PreviewButton","PublishButtonComponent","PublishButton","beforeList","BeforeList","Array","isArray","map","beforeListTable","BeforeListTable","afterList","AfterList","afterListTable","AfterListTable","description","descriptionProps","DescriptionComponent","Description","componentMap","collectionSlug","actionsMap","fieldMap","fieldSchema","isPreviewEnabled","preview"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,KAAK,EAIV,KAAK,EAGL,aAAa,EAIb,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AAiCtB,OAAO,KAAK,EAEV,QAAQ,EAIT,MAAM,YAAY,CAAA;AAInB,eAAO,MAAM,SAAS,SAAU;IAC9B,mBAAmB,EAAE,uBAAuB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAA;IAClC,IAAI,EAAE,IAAI,CAAA;IACV,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,aAsuBA,CAAA"}
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AAEpD,OAAO,KAAK,EAEV,KAAK,EAEL,aAAa,EAGb,eAAe,EACf,mBAAmB,IAAI,uBAAuB,EAC/C,MAAM,eAAe,CAAA;AA2BtB,OAAO,KAAK,EAEV,QAAQ,EAIT,MAAM,YAAY,CAAA;AAInB,eAAO,MAAM,SAAS,SAAU;IAC9B,mBAAmB,EAAE,uBAAuB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB;;OAEG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAA;IAClC,IAAI,EAAE,IAAI,CAAA;IACV,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,aAmuBA,CAAA"}
@@ -1,6 +1,5 @@
1
1
  import { FieldDescription } from '@payloadcms/ui/forms/FieldDescription';
2
2
  import { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types';
3
- import { isPlainFunction, isReactComponent } from 'payload/utilities';
4
3
  import React, { Fragment } from 'react';
5
4
  import { HiddenInput } from '../../../fields/HiddenInput/index.js';
6
5
  export const mapFields = (args)=>{
@@ -27,21 +26,45 @@ export const mapFields = (args)=>{
27
26
  Component: Component,
28
27
  key: i
29
28
  }))) || null;
29
+ let label = undefined;
30
+ if ('label' in field) {
31
+ if (typeof field.label === 'string' || typeof field.label === 'object') {
32
+ label = field.label;
33
+ } else if (typeof field.label === 'function') {
34
+ label = field.label({
35
+ t
36
+ });
37
+ }
38
+ }
30
39
  const labelProps = {
31
- label: 'label' in field && !isPlainFunction(field.label) && !isReactComponent(field.label) ? field.label : undefined,
40
+ label,
32
41
  required: 'required' in field ? field.required : undefined
33
42
  };
34
43
  const CustomLabelComponent = 'admin' in field && field.admin?.components && 'Label' in field.admin.components && field.admin.components?.Label || undefined;
44
+ // If we return undefined here (so if no CUSTOM label component is set), the field client component is responsible for falling back to the default label
35
45
  const CustomLabel = CustomLabelComponent !== undefined ? /*#__PURE__*/ React.createElement(WithServerSideProps, {
36
46
  Component: CustomLabelComponent,
37
47
  ...labelProps || {}
38
48
  }) : undefined;
49
+ let description = undefined;
50
+ if (field.admin && 'description' in field.admin) {
51
+ if (typeof field.admin?.description === 'string' || typeof field.admin?.description === 'object') {
52
+ description = field.admin.description;
53
+ } else if (typeof field.admin?.description === 'function') {
54
+ description = field.admin?.description({
55
+ t
56
+ });
57
+ }
58
+ }
39
59
  const descriptionProps = {
40
- description: field.admin && 'description' in field.admin && ((typeof field.admin?.description === 'string' || typeof field.admin?.description === 'object') && field.admin.description || typeof field.admin?.description === 'function' && isPlainFunction(field.admin?.description) && field.admin?.description({
41
- t
42
- })) || undefined
60
+ description
43
61
  };
44
- const CustomDescriptionComponent = field.admin && 'description' in field.admin && (isReactComponent(field.admin.description) && field.admin.description || field.admin.description && FieldDescription) || undefined;
62
+ let CustomDescriptionComponent = undefined;
63
+ if (field.admin?.components && 'Description' in field.admin.components && field.admin.components?.Description) {
64
+ CustomDescriptionComponent = field.admin.components.Description;
65
+ } else if (description) {
66
+ CustomDescriptionComponent = FieldDescription;
67
+ }
45
68
  const CustomDescription = CustomDescriptionComponent !== undefined ? /*#__PURE__*/ React.createElement(WithServerSideProps, {
46
69
  Component: CustomDescriptionComponent,
47
70
  ...descriptionProps || {}
@@ -54,6 +77,7 @@ export const mapFields = (args)=>{
54
77
  Component: CustomErrorComponent,
55
78
  ...errorProps || {}
56
79
  }) : undefined;
80
+ // These fields are shared across all field types even if they are not used in the default field, as the custom field component can use them
57
81
  const baseFieldProps = {
58
82
  AfterInput,
59
83
  BeforeInput,
@@ -64,7 +88,7 @@ export const mapFields = (args)=>{
64
88
  descriptionProps,
65
89
  disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,
66
90
  errorProps,
67
- labelProps,
91
+ label: labelProps?.label,
68
92
  path,
69
93
  required: 'required' in field ? field.required : undefined
70
94
  };
@@ -75,7 +99,7 @@ export const mapFields = (args)=>{
75
99
  if (typeof option === 'object' && typeof option.label === 'function') {
76
100
  return {
77
101
  label: option.label({
78
- t: i18n.t
102
+ t
79
103
  }),
80
104
  value: option.value
81
105
  };
@@ -87,7 +111,7 @@ export const mapFields = (args)=>{
87
111
  name: 'name' in field ? field.name : undefined,
88
112
  fieldType: field.type,
89
113
  isFieldAffectingData,
90
- label: 'label' in field && field.label && typeof field.label !== 'function' ? field.label : undefined,
114
+ label: labelProps?.label || undefined,
91
115
  labels: 'labels' in field ? field.labels : undefined,
92
116
  options: 'options' in field ? fieldOptions : undefined,
93
117
  relationTo: 'relationTo' in field ? field.relationTo : undefined
@@ -96,10 +120,11 @@ export const mapFields = (args)=>{
96
120
  case 'array':
97
121
  {
98
122
  let CustomRowLabel;
99
- if ('admin' in field && field.admin.components && 'RowLabel' in field.admin.components && field.admin.components.RowLabel && isReactComponent(field.admin.components.RowLabel)) {
123
+ if ('admin' in field && field.admin.components && 'RowLabel' in field.admin.components && field.admin.components.RowLabel) {
100
124
  const CustomRowLabelComponent = field.admin.components.RowLabel;
101
125
  CustomRowLabel = /*#__PURE__*/ React.createElement(WithServerSideProps, {
102
- Component: CustomRowLabelComponent
126
+ Component: CustomRowLabelComponent,
127
+ ...labelProps || {}
103
128
  });
104
129
  }
105
130
  const arrayFieldProps = {
@@ -118,7 +143,6 @@ export const mapFields = (args)=>{
118
143
  readOnly: readOnlyOverride
119
144
  }),
120
145
  isSortable: field.admin?.isSortable,
121
- label: field?.label,
122
146
  labels: field.labels,
123
147
  maxRows: field.maxRows,
124
148
  minRows: field.minRows,
@@ -159,7 +183,6 @@ export const mapFields = (args)=>{
159
183
  className: field.admin?.className,
160
184
  disabled: field.admin?.disabled,
161
185
  isSortable: field.admin?.isSortable,
162
- label: field?.label,
163
186
  labels: field.labels,
164
187
  maxRows: field.maxRows,
165
188
  minRows: field.minRows,
@@ -182,7 +205,6 @@ export const mapFields = (args)=>{
182
205
  name: field.name,
183
206
  className: field.admin?.className,
184
207
  disabled: field.admin?.disabled,
185
- label: field.label,
186
208
  readOnly: field.admin?.readOnly,
187
209
  required: field.required,
188
210
  style: field.admin?.style,
@@ -199,7 +221,6 @@ export const mapFields = (args)=>{
199
221
  className: field.admin?.className,
200
222
  disabled: field.admin?.disabled,
201
223
  editorOptions: field.admin?.editorOptions,
202
- label: field.label,
203
224
  language: field.admin?.language,
204
225
  readOnly: field.admin?.readOnly,
205
226
  required: field.required,
@@ -212,10 +233,11 @@ export const mapFields = (args)=>{
212
233
  case 'collapsible':
213
234
  {
214
235
  let CustomCollapsibleLabel;
215
- if (isReactComponent(field.label) || isPlainFunction(field.label)) {
216
- const CustomCollapsibleLabelComponent = field.label;
236
+ if (field?.admin?.components && 'RowLabel' in field.admin.components && field?.admin?.components?.RowLabel) {
237
+ const CustomCollapsibleLabelComponent = field.admin.components.RowLabel;
217
238
  CustomCollapsibleLabel = /*#__PURE__*/ React.createElement(WithServerSideProps, {
218
- Component: CustomCollapsibleLabelComponent
239
+ Component: CustomCollapsibleLabelComponent,
240
+ ...labelProps || {}
219
241
  });
220
242
  }
221
243
  const collapsibleField = {
@@ -234,7 +256,6 @@ export const mapFields = (args)=>{
234
256
  readOnly: readOnlyOverride
235
257
  }),
236
258
  initCollapsed: field.admin?.initCollapsed,
237
- label: !CustomCollapsibleLabel ? field.label : undefined,
238
259
  readOnly: field.admin?.readOnly,
239
260
  required: field.required,
240
261
  style: field.admin?.style,
@@ -252,7 +273,6 @@ export const mapFields = (args)=>{
252
273
  className: field.admin?.className,
253
274
  date: field.admin?.date,
254
275
  disabled: field.admin?.disabled,
255
- label: field.label,
256
276
  placeholder: field.admin?.placeholder,
257
277
  readOnly: field.admin?.readOnly,
258
278
  required: field.required,
@@ -270,7 +290,6 @@ export const mapFields = (args)=>{
270
290
  name: field.name,
271
291
  className: field.admin?.className,
272
292
  disabled: field.admin?.disabled,
273
- label: field.label,
274
293
  placeholder: field.admin?.placeholder,
275
294
  readOnly: field.admin?.readOnly,
276
295
  required: field.required,
@@ -297,7 +316,6 @@ export const mapFields = (args)=>{
297
316
  parentPath: path,
298
317
  readOnly: readOnlyOverride
299
318
  }),
300
- label: field.label,
301
319
  readOnly: field.admin?.readOnly,
302
320
  style: field.admin?.style,
303
321
  width: field.admin?.width
@@ -314,7 +332,6 @@ export const mapFields = (args)=>{
314
332
  disabled: field.admin?.disabled,
315
333
  editorOptions: field.admin?.editorOptions,
316
334
  jsonSchema: field.jsonSchema,
317
- label: field.label,
318
335
  readOnly: field.admin?.readOnly,
319
336
  required: field.required,
320
337
  style: field.admin?.style,
@@ -331,7 +348,6 @@ export const mapFields = (args)=>{
331
348
  className: field.admin?.className,
332
349
  disabled: field.admin?.disabled,
333
350
  hasMany: field.hasMany,
334
- label: field.label,
335
351
  max: field.max,
336
352
  maxRows: field.maxRows,
337
353
  min: field.min,
@@ -351,7 +367,6 @@ export const mapFields = (args)=>{
351
367
  name: field.name,
352
368
  className: field.admin?.className,
353
369
  disabled: field.admin?.disabled,
354
- label: field.label,
355
370
  readOnly: field.admin?.readOnly,
356
371
  required: field.required,
357
372
  style: field.admin?.style,
@@ -369,7 +384,6 @@ export const mapFields = (args)=>{
369
384
  className: field.admin?.className,
370
385
  disabled: field.admin?.disabled,
371
386
  hasMany: field.hasMany,
372
- label: field.label,
373
387
  readOnly: field.admin?.readOnly,
374
388
  relationTo: field.relationTo,
375
389
  required: field.required,
@@ -388,7 +402,6 @@ export const mapFields = (args)=>{
388
402
  name: field.name,
389
403
  className: field.admin?.className,
390
404
  disabled: field.admin?.disabled,
391
- label: field.label,
392
405
  options: fieldOptions,
393
406
  readOnly: field.admin?.readOnly,
394
407
  required: field.required,
@@ -406,7 +419,6 @@ export const mapFields = (args)=>{
406
419
  name: field.name,
407
420
  className: field.admin?.className,
408
421
  disabled: field.admin?.disabled,
409
- label: field.label,
410
422
  readOnly: field.admin?.readOnly,
411
423
  required: field.required,
412
424
  style: field.admin?.style,
@@ -505,7 +517,6 @@ export const mapFields = (args)=>{
505
517
  className: field.admin?.className,
506
518
  disabled: field.admin?.disabled,
507
519
  hasMany: field.hasMany,
508
- label: field.label,
509
520
  maxLength: field.maxLength,
510
521
  minLength: field.minLength,
511
522
  placeholder: field.admin?.placeholder,
@@ -524,7 +535,6 @@ export const mapFields = (args)=>{
524
535
  name: field.name,
525
536
  className: field.admin?.className,
526
537
  disabled: field.admin?.disabled,
527
- label: field.label,
528
538
  maxLength: field.maxLength,
529
539
  minLength: field.minLength,
530
540
  placeholder: field.admin?.placeholder,
@@ -550,7 +560,6 @@ export const mapFields = (args)=>{
550
560
  className: field.admin?.className,
551
561
  disabled: field.admin?.disabled,
552
562
  filterOptions: field.filterOptions,
553
- label: field.label,
554
563
  readOnly: field.admin?.readOnly,
555
564
  relationTo: field.relationTo,
556
565
  required: field.required,
@@ -570,7 +579,6 @@ export const mapFields = (args)=>{
570
579
  disabled: field.admin?.disabled,
571
580
  hasMany: field.hasMany,
572
581
  isClearable: field.admin?.isClearable,
573
- label: field.label,
574
582
  options: fieldOptions,
575
583
  readOnly: field.admin?.readOnly,
576
584
  required: field.required,
@@ -626,10 +634,7 @@ export const mapFields = (args)=>{
626
634
  disableBulkEdit: true,
627
635
  fieldComponentProps: {
628
636
  name: 'id',
629
- label: 'ID',
630
- labelProps: {
631
- label: 'ID'
632
- }
637
+ label: 'ID'
633
638
  },
634
639
  fieldIsPresentational: false,
635
640
  isFieldAffectingData: true,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { CustomComponent } from 'payload/config'\nimport type {\n CellComponentProps,\n DescriptionComponent,\n DescriptionFunction,\n Field,\n FieldBase,\n FieldDescriptionProps,\n FieldWithPath,\n LabelProps,\n Option,\n RowLabelComponent,\n SanitizedConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport { FieldDescription } from '@payloadcms/ui/forms/FieldDescription'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types'\nimport {\n isPlainFunction,\n isReactClientComponent,\n isReactComponent,\n isReactServerComponent,\n} from 'payload/utilities'\nimport React, { Fragment } from 'react'\n\nimport type { ArrayFieldProps } from '../../../fields/Array/index.js'\nimport type { BlocksFieldProps } from '../../../fields/Blocks/index.js'\nimport type { CheckboxFieldProps } from '../../../fields/Checkbox/index.js'\nimport type { CodeFieldProps } from '../../../fields/Code/index.js'\nimport type { CollapsibleFieldProps } from '../../../fields/Collapsible/index.js'\nimport type { DateFieldProps } from '../../../fields/DateTime/index.js'\nimport type { EmailFieldProps } from '../../../fields/Email/index.js'\nimport type { GroupFieldProps } from '../../../fields/Group/index.js'\nimport type { JSONFieldProps } from '../../../fields/JSON/index.js'\nimport type { NumberFieldProps } from '../../../fields/Number/index.js'\nimport type { PointFieldProps } from '../../../fields/Point/index.js'\nimport type { RadioFieldProps } from '../../../fields/RadioGroup/index.js'\nimport type { RelationshipFieldProps } from '../../../fields/Relationship/types.js'\nimport type { RichTextFieldProps } from '../../../fields/RichText/index.js'\nimport type { RowFieldProps } from '../../../fields/Row/types.js'\nimport type { SelectFieldProps } from '../../../fields/Select/index.js'\nimport type { TabsFieldProps } from '../../../fields/Tabs/index.js'\nimport type { TextFieldProps } from '../../../fields/Text/types.js'\nimport type { TextareaFieldProps } from '../../../fields/Textarea/types.js'\nimport type { UploadFieldProps } from '../../../fields/Upload/types.js'\nimport type { FormFieldBase } from '../../../fields/shared/index.js'\nimport type {\n FieldComponentProps,\n FieldMap,\n MappedField,\n MappedTab,\n ReducedBlock,\n} from './types.js'\n\nimport { HiddenInput } from '../../../fields/HiddenInput/index.js'\n\nexport const mapFields = (args: {\n WithServerSideProps: WithServerSidePropsType\n config: SanitizedConfig\n /**\n * If mapFields is used outside of collections, you might not want it to add an id field\n */\n disableAddingID?: boolean\n fieldSchema: FieldWithPath[]\n filter?: (field: Field) => boolean\n i18n: I18n\n parentPath?: string\n readOnly?: boolean\n}): FieldMap => {\n const {\n WithServerSideProps,\n config,\n disableAddingID,\n fieldSchema,\n filter,\n i18n,\n i18n: { t },\n parentPath,\n readOnly: readOnlyOverride,\n } = args\n\n const result: FieldMap = fieldSchema.reduce((acc, field): FieldMap => {\n const fieldIsPresentational = fieldIsPresentationalOnly(field)\n let CustomFieldComponent: CustomComponent<FieldComponentProps> = field.admin?.components?.Field\n\n const CustomCellComponent = field.admin?.components?.Cell\n\n const isHidden = field?.admin && 'hidden' in field.admin && field.admin.hidden\n\n if (fieldIsPresentational || (!field?.hidden && field?.admin?.disabled !== true)) {\n if ((filter && typeof filter === 'function' && filter(field)) || !filter) {\n if (isHidden) {\n if (CustomFieldComponent) {\n CustomFieldComponent = HiddenInput\n }\n }\n\n const isFieldAffectingData = fieldAffectsData(field)\n\n const path = `${parentPath ? `${parentPath}.` : ''}${\n field.path || (isFieldAffectingData && 'name' in field ? field.name : '')\n }`\n\n const AfterInput =\n ('admin' in field &&\n 'components' in field.admin &&\n 'afterInput' in field.admin.components &&\n Array.isArray(field.admin?.components?.afterInput) && (\n <Fragment>\n {field.admin.components.afterInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n const BeforeInput =\n ('admin' in field &&\n field.admin?.components &&\n 'beforeInput' in field.admin.components &&\n Array.isArray(field.admin.components.beforeInput) && (\n <Fragment>\n {field.admin.components.beforeInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n const labelProps: LabelProps = {\n label:\n 'label' in field && !isPlainFunction(field.label) && !isReactComponent(field.label)\n ? field.label\n : undefined,\n required: 'required' in field ? field.required : undefined,\n }\n\n const CustomLabelComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Label' in field.admin.components &&\n field.admin.components?.Label) ||\n undefined\n\n const CustomLabel =\n CustomLabelComponent !== undefined ? (\n <WithServerSideProps Component={CustomLabelComponent} {...(labelProps || {})} />\n ) : undefined\n\n const descriptionProps: FieldDescriptionProps = {\n description:\n (field.admin &&\n 'description' in field.admin &&\n (((typeof field.admin?.description === 'string' ||\n typeof field.admin?.description === 'object') &&\n field.admin.description) ||\n (typeof field.admin?.description === 'function' &&\n isPlainFunction<DescriptionFunction>(field.admin?.description) &&\n field.admin?.description({ t })))) ||\n undefined,\n }\n\n const CustomDescriptionComponent =\n (field.admin &&\n 'description' in field.admin &&\n ((isReactComponent<DescriptionComponent>(field.admin.description) &&\n field.admin.description) ||\n (field.admin.description && FieldDescription))) ||\n undefined\n\n const CustomDescription =\n CustomDescriptionComponent !== undefined ? (\n <WithServerSideProps\n Component={CustomDescriptionComponent}\n {...(descriptionProps || {})}\n />\n ) : undefined\n\n const errorProps = {\n path,\n }\n\n const CustomErrorComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Error' in field.admin.components &&\n field.admin?.components?.Error) ||\n undefined\n\n const CustomError =\n CustomErrorComponent !== undefined ? (\n <WithServerSideProps Component={CustomErrorComponent} {...(errorProps || {})} />\n ) : undefined\n\n const baseFieldProps: FormFieldBase = {\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n custom: 'admin' in field && 'custom' in field.admin ? field.admin?.custom : undefined,\n descriptionProps,\n disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,\n errorProps,\n labelProps,\n path,\n required: 'required' in field ? field.required : undefined,\n }\n\n let fieldComponentProps: FieldComponentProps\n\n let fieldOptions: Option[]\n\n if ('options' in field) {\n fieldOptions = field.options.map((option) => {\n if (typeof option === 'object' && typeof option.label === 'function') {\n return {\n label: option.label({ t: i18n.t }),\n value: option.value,\n }\n }\n\n return option\n })\n }\n\n const cellComponentProps: CellComponentProps = {\n name: 'name' in field ? field.name : undefined,\n fieldType: field.type,\n isFieldAffectingData,\n label:\n 'label' in field && field.label && typeof field.label !== 'function'\n ? field.label\n : undefined,\n labels: 'labels' in field ? field.labels : undefined,\n options: 'options' in field ? fieldOptions : undefined,\n relationTo: 'relationTo' in field ? field.relationTo : undefined,\n }\n\n switch (field.type) {\n case 'array': {\n let CustomRowLabel: React.ReactNode\n\n if (\n 'admin' in field &&\n field.admin.components &&\n 'RowLabel' in field.admin.components &&\n field.admin.components.RowLabel &&\n isReactComponent<RowLabelComponent>(field.admin.components.RowLabel)\n ) {\n const CustomRowLabelComponent = field.admin.components.RowLabel\n CustomRowLabel = <WithServerSideProps Component={CustomRowLabelComponent} />\n }\n\n const arrayFieldProps: Omit<ArrayFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n CustomRowLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n isSortable: field.admin?.isSortable,\n label: field?.label,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = arrayFieldProps\n break\n }\n case 'blocks': {\n const blocks = field.blocks.map((block) => {\n const blockFieldMap = mapFields({\n WithServerSideProps,\n config,\n fieldSchema: block.fields,\n filter,\n i18n,\n parentPath: `${path}.${block.slug}`,\n readOnly: readOnlyOverride,\n })\n\n const reducedBlock: ReducedBlock = {\n slug: block.slug,\n custom: block.admin?.custom,\n fieldMap: blockFieldMap,\n imageAltText: block.imageAltText,\n imageURL: block.imageURL,\n labels: block.labels,\n }\n\n return reducedBlock\n })\n\n const blocksField: Omit<BlocksFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n blocks,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n isSortable: field.admin?.isSortable,\n label: field?.label,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = blocksField\n\n cellComponentProps.blocks = field.blocks.map((b) => ({\n slug: b.slug,\n labels: b.labels,\n }))\n\n break\n }\n case 'checkbox': {\n const checkboxField: CheckboxFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n label: field.label,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = checkboxField\n break\n }\n case 'code': {\n const codeField: CodeFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n label: field.label,\n language: field.admin?.language,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = codeField\n break\n }\n case 'collapsible': {\n let CustomCollapsibleLabel: React.ReactNode\n\n if (isReactComponent(field.label) || isPlainFunction(field.label)) {\n const CustomCollapsibleLabelComponent = field.label as RowLabelComponent\n CustomCollapsibleLabel = (\n <WithServerSideProps Component={CustomCollapsibleLabelComponent} />\n )\n }\n\n const collapsibleField: Omit<CollapsibleFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n CustomLabel: CustomCollapsibleLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n initCollapsed: field.admin?.initCollapsed,\n label: !CustomCollapsibleLabel ? (field.label as FieldBase['label']) : undefined,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = collapsibleField as CollapsibleFieldProps // TODO: dunno why this is needed\n break\n }\n case 'date': {\n const dateField: DateFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n date: field.admin?.date,\n disabled: field.admin?.disabled,\n label: field.label,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = dateField\n cellComponentProps.dateDisplayFormat = field.admin?.date?.displayFormat\n break\n }\n case 'email': {\n const emailField: EmailFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n label: field.label,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = emailField\n break\n }\n case 'group': {\n const groupField: Omit<GroupFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n label: field.label,\n readOnly: field.admin?.readOnly,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = groupField\n break\n }\n case 'json': {\n const jsonField: JSONFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n jsonSchema: field.jsonSchema,\n label: field.label,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = jsonField\n break\n }\n case 'number': {\n const numberField: NumberFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n label: field.label,\n max: field.max,\n maxRows: field.maxRows,\n min: field.min,\n readOnly: field.admin?.readOnly,\n required: field.required,\n step: field.admin?.step,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = numberField\n break\n }\n case 'point': {\n const pointField: PointFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n label: field.label,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = pointField\n break\n }\n case 'relationship': {\n const relationshipField: RelationshipFieldProps = {\n ...baseFieldProps,\n name: field.name,\n allowCreate: field.admin.allowCreate,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n label: field.label,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n sortOptions: field.admin.sortOptions,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = relationshipField\n break\n }\n case 'radio': {\n const radioField: RadioFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n label: field.label,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = radioField\n break\n }\n case 'richText': {\n const richTextField: RichTextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n label: field.label,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n if (typeof field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n const RichTextFieldComponent = field.editor.FieldComponent\n const RichTextCellComponent = field.editor.CellComponent\n\n if (typeof field.editor.generateComponentMap === 'function') {\n const result = field.editor.generateComponentMap({\n WithServerSideProps,\n config,\n i18n,\n schemaPath: path,\n })\n richTextField.richTextComponentMap = result\n cellComponentProps.richTextComponentMap = result\n }\n\n if (RichTextFieldComponent) {\n CustomFieldComponent = RichTextFieldComponent\n }\n\n if (RichTextCellComponent) {\n cellComponentProps.CellComponentOverride = (\n <WithServerSideProps Component={RichTextCellComponent} />\n )\n }\n\n fieldComponentProps = richTextField\n\n break\n }\n case 'row': {\n const rowField: Omit<RowFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = rowField\n break\n }\n case 'tabs': {\n // `tabs` fields require a field map of each of its tab's nested fields\n const tabs = field.tabs.map((tab) => {\n const tabFieldMap = mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: tab.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n })\n\n const reducedTab: MappedTab = {\n name: 'name' in tab ? tab.name : undefined,\n fieldMap: tabFieldMap,\n label: tab.label,\n }\n\n return reducedTab\n })\n\n const tabsField: Omit<TabsFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: 'name' in field ? (field.name as string) : undefined,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n tabs,\n width: field.admin?.width,\n }\n\n fieldComponentProps = tabsField\n break\n }\n case 'text': {\n const textField: TextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n label: field.label,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textField\n break\n }\n case 'textarea': {\n const textareaField: TextareaFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n label: field.label,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n rows: field.admin?.rows,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textareaField\n break\n }\n case 'ui': {\n fieldComponentProps = baseFieldProps\n break\n }\n case 'upload': {\n const uploadField: UploadFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n filterOptions: field.filterOptions,\n label: field.label,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = uploadField\n break\n }\n case 'select': {\n const selectField: SelectFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n isClearable: field.admin?.isClearable,\n label: field.label,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = selectField\n break\n }\n default: {\n break\n }\n }\n\n const reducedField: MappedField = {\n name: 'name' in field ? field.name : undefined,\n type: field.type,\n CustomCell: CustomCellComponent ? (\n <WithServerSideProps Component={CustomCellComponent} {...cellComponentProps} />\n ) : undefined,\n CustomField: CustomFieldComponent ? (\n <WithServerSideProps Component={CustomFieldComponent} {...fieldComponentProps} />\n ) : undefined,\n cellComponentProps,\n custom: field?.admin?.custom,\n disableBulkEdit:\n 'admin' in field && 'disableBulkEdit' in field.admin && field.admin.disableBulkEdit,\n fieldComponentProps,\n fieldIsPresentational,\n isFieldAffectingData,\n isHidden,\n isSidebar:\n 'admin' in field && 'position' in field.admin && field.admin.position === 'sidebar',\n localized: 'localized' in field ? field.localized : false,\n unique: 'unique' in field ? field.unique : false,\n }\n\n acc.push(reducedField)\n }\n }\n\n return acc\n }, [])\n\n const hasID =\n result.findIndex((f) => 'name' in f && f.isFieldAffectingData && f.name === 'id') > -1\n\n if (!disableAddingID && !hasID) {\n // TODO: For all fields (not just this one) we need to add the name to both .fieldComponentProps.name AND .name. This can probably be improved\n result.push({\n name: 'id',\n type: 'text',\n CustomField: null,\n cellComponentProps: {\n name: 'id',\n },\n disableBulkEdit: true,\n fieldComponentProps: {\n name: 'id',\n label: 'ID',\n labelProps: {\n label: 'ID',\n },\n },\n fieldIsPresentational: false,\n isFieldAffectingData: true,\n isHidden: true,\n localized: undefined,\n })\n }\n\n return result\n}\n"],"names":["FieldDescription","fieldAffectsData","fieldIsPresentationalOnly","isPlainFunction","isReactComponent","React","Fragment","HiddenInput","mapFields","args","WithServerSideProps","config","disableAddingID","fieldSchema","filter","i18n","t","parentPath","readOnly","readOnlyOverride","result","reduce","acc","field","fieldIsPresentational","CustomFieldComponent","admin","components","Field","CustomCellComponent","Cell","isHidden","hidden","disabled","isFieldAffectingData","path","name","AfterInput","Array","isArray","afterInput","map","Component","i","key","BeforeInput","beforeInput","labelProps","label","undefined","required","CustomLabelComponent","Label","CustomLabel","descriptionProps","description","CustomDescriptionComponent","CustomDescription","errorProps","CustomErrorComponent","Error","CustomError","baseFieldProps","custom","fieldComponentProps","fieldOptions","options","option","value","cellComponentProps","fieldType","type","labels","relationTo","CustomRowLabel","RowLabel","CustomRowLabelComponent","arrayFieldProps","className","fieldMap","fields","isSortable","maxRows","minRows","style","width","blocks","block","blockFieldMap","slug","reducedBlock","imageAltText","imageURL","blocksField","b","checkboxField","codeField","editorOptions","language","CustomCollapsibleLabel","CustomCollapsibleLabelComponent","collapsibleField","initCollapsed","dateField","date","placeholder","dateDisplayFormat","displayFormat","emailField","groupField","jsonField","jsonSchema","numberField","hasMany","max","min","step","pointField","relationshipField","allowCreate","sortOptions","radioField","richTextField","editor","RichTextFieldComponent","FieldComponent","RichTextCellComponent","CellComponent","generateComponentMap","schemaPath","richTextComponentMap","CellComponentOverride","rowField","tabs","tab","tabFieldMap","reducedTab","tabsField","textField","maxLength","minLength","textareaField","rows","uploadField","filterOptions","selectField","isClearable","reducedField","CustomCell","CustomField","disableBulkEdit","isSidebar","position","localized","unique","push","hasID","findIndex","f"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/providers/ComponentMap/buildComponentMap/fields.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { CustomComponent } from 'payload/config'\nimport type {\n CellComponentProps,\n Field,\n FieldDescriptionProps,\n FieldWithPath,\n LabelProps,\n Option,\n SanitizedConfig,\n WithServerSideProps as WithServerSidePropsType,\n} from 'payload/types'\n\nimport { FieldDescription } from '@payloadcms/ui/forms/FieldDescription'\nimport { fieldAffectsData, fieldIsPresentationalOnly } from 'payload/types'\nimport React, { Fragment } from 'react'\n\nimport type { ArrayFieldProps } from '../../../fields/Array/index.js'\nimport type { BlocksFieldProps } from '../../../fields/Blocks/index.js'\nimport type { CheckboxFieldProps } from '../../../fields/Checkbox/index.js'\nimport type { CodeFieldProps } from '../../../fields/Code/index.js'\nimport type { CollapsibleFieldProps } from '../../../fields/Collapsible/index.js'\nimport type { DateFieldProps } from '../../../fields/DateTime/index.js'\nimport type { EmailFieldProps } from '../../../fields/Email/index.js'\nimport type { GroupFieldProps } from '../../../fields/Group/index.js'\nimport type { JSONFieldProps } from '../../../fields/JSON/index.js'\nimport type { NumberFieldProps } from '../../../fields/Number/index.js'\nimport type { PointFieldProps } from '../../../fields/Point/index.js'\nimport type { RadioFieldProps } from '../../../fields/RadioGroup/index.js'\nimport type { RelationshipFieldProps } from '../../../fields/Relationship/types.js'\nimport type { RichTextFieldProps } from '../../../fields/RichText/index.js'\nimport type { RowFieldProps } from '../../../fields/Row/types.js'\nimport type { SelectFieldProps } from '../../../fields/Select/index.js'\nimport type { TabsFieldProps } from '../../../fields/Tabs/index.js'\nimport type { TextFieldProps } from '../../../fields/Text/types.js'\nimport type { TextareaFieldProps } from '../../../fields/Textarea/types.js'\nimport type { UploadFieldProps } from '../../../fields/Upload/types.js'\nimport type { FormFieldBase } from '../../../fields/shared/index.js'\nimport type {\n FieldComponentProps,\n FieldMap,\n MappedField,\n MappedTab,\n ReducedBlock,\n} from './types.js'\n\nimport { HiddenInput } from '../../../fields/HiddenInput/index.js'\n\nexport const mapFields = (args: {\n WithServerSideProps: WithServerSidePropsType\n config: SanitizedConfig\n /**\n * If mapFields is used outside of collections, you might not want it to add an id field\n */\n disableAddingID?: boolean\n fieldSchema: FieldWithPath[]\n filter?: (field: Field) => boolean\n i18n: I18n\n parentPath?: string\n readOnly?: boolean\n}): FieldMap => {\n const {\n WithServerSideProps,\n config,\n disableAddingID,\n fieldSchema,\n filter,\n i18n,\n i18n: { t },\n parentPath,\n readOnly: readOnlyOverride,\n } = args\n\n const result: FieldMap = fieldSchema.reduce((acc, field): FieldMap => {\n const fieldIsPresentational = fieldIsPresentationalOnly(field)\n let CustomFieldComponent: CustomComponent<FieldComponentProps> = field.admin?.components?.Field\n\n const CustomCellComponent = field.admin?.components?.Cell\n\n const isHidden = field?.admin && 'hidden' in field.admin && field.admin.hidden\n\n if (fieldIsPresentational || (!field?.hidden && field?.admin?.disabled !== true)) {\n if ((filter && typeof filter === 'function' && filter(field)) || !filter) {\n if (isHidden) {\n if (CustomFieldComponent) {\n CustomFieldComponent = HiddenInput\n }\n }\n\n const isFieldAffectingData = fieldAffectsData(field)\n\n const path = `${parentPath ? `${parentPath}.` : ''}${\n field.path || (isFieldAffectingData && 'name' in field ? field.name : '')\n }`\n\n const AfterInput =\n ('admin' in field &&\n 'components' in field.admin &&\n 'afterInput' in field.admin.components &&\n Array.isArray(field.admin?.components?.afterInput) && (\n <Fragment>\n {field.admin.components.afterInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n const BeforeInput =\n ('admin' in field &&\n field.admin?.components &&\n 'beforeInput' in field.admin.components &&\n Array.isArray(field.admin.components.beforeInput) && (\n <Fragment>\n {field.admin.components.beforeInput.map((Component, i) => (\n <WithServerSideProps Component={Component} key={i} />\n ))}\n </Fragment>\n )) ||\n null\n\n let label = undefined\n if ('label' in field) {\n if (typeof field.label === 'string' || typeof field.label === 'object') {\n label = field.label\n } else if (typeof field.label === 'function') {\n label = field.label({ t })\n }\n }\n\n const labelProps: LabelProps = {\n label,\n required: 'required' in field ? field.required : undefined,\n }\n\n const CustomLabelComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Label' in field.admin.components &&\n field.admin.components?.Label) ||\n undefined\n\n // If we return undefined here (so if no CUSTOM label component is set), the field client component is responsible for falling back to the default label\n const CustomLabel =\n CustomLabelComponent !== undefined ? (\n <WithServerSideProps Component={CustomLabelComponent} {...(labelProps || {})} />\n ) : undefined\n\n let description = undefined\n if (field.admin && 'description' in field.admin) {\n if (\n typeof field.admin?.description === 'string' ||\n typeof field.admin?.description === 'object'\n ) {\n description = field.admin.description\n } else if (typeof field.admin?.description === 'function') {\n description = field.admin?.description({ t })\n }\n }\n\n const descriptionProps: FieldDescriptionProps = {\n description,\n }\n\n let CustomDescriptionComponent = undefined\n if (\n field.admin?.components &&\n 'Description' in field.admin.components &&\n field.admin.components?.Description\n ) {\n CustomDescriptionComponent = field.admin.components.Description\n } else if (description) {\n CustomDescriptionComponent = FieldDescription\n }\n\n const CustomDescription =\n CustomDescriptionComponent !== undefined ? (\n <WithServerSideProps\n Component={CustomDescriptionComponent}\n {...(descriptionProps || {})}\n />\n ) : undefined\n\n const errorProps = {\n path,\n }\n\n const CustomErrorComponent =\n ('admin' in field &&\n field.admin?.components &&\n 'Error' in field.admin.components &&\n field.admin?.components?.Error) ||\n undefined\n\n const CustomError =\n CustomErrorComponent !== undefined ? (\n <WithServerSideProps Component={CustomErrorComponent} {...(errorProps || {})} />\n ) : undefined\n\n // These fields are shared across all field types even if they are not used in the default field, as the custom field component can use them\n const baseFieldProps: FormFieldBase = {\n AfterInput,\n BeforeInput,\n CustomDescription,\n CustomError,\n CustomLabel,\n custom: 'admin' in field && 'custom' in field.admin ? field.admin?.custom : undefined,\n descriptionProps,\n disabled: 'admin' in field && 'disabled' in field.admin ? field.admin?.disabled : false,\n errorProps,\n label: labelProps?.label,\n path,\n required: 'required' in field ? field.required : undefined,\n }\n\n let fieldComponentProps: FieldComponentProps\n\n let fieldOptions: Option[]\n\n if ('options' in field) {\n fieldOptions = field.options.map((option) => {\n if (typeof option === 'object' && typeof option.label === 'function') {\n return {\n label: option.label({ t }),\n value: option.value,\n }\n }\n\n return option\n })\n }\n\n const cellComponentProps: CellComponentProps = {\n name: 'name' in field ? field.name : undefined,\n fieldType: field.type,\n isFieldAffectingData,\n label: labelProps?.label || undefined,\n labels: 'labels' in field ? field.labels : undefined,\n options: 'options' in field ? fieldOptions : undefined,\n relationTo: 'relationTo' in field ? field.relationTo : undefined,\n }\n\n switch (field.type) {\n case 'array': {\n let CustomRowLabel: React.ReactNode\n\n if (\n 'admin' in field &&\n field.admin.components &&\n 'RowLabel' in field.admin.components &&\n field.admin.components.RowLabel\n ) {\n const CustomRowLabelComponent = field.admin.components.RowLabel\n CustomRowLabel = (\n <WithServerSideProps Component={CustomRowLabelComponent} {...(labelProps || {})} />\n )\n }\n\n const arrayFieldProps: Omit<ArrayFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n CustomRowLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n isSortable: field.admin?.isSortable,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = arrayFieldProps\n break\n }\n case 'blocks': {\n const blocks = field.blocks.map((block) => {\n const blockFieldMap = mapFields({\n WithServerSideProps,\n config,\n fieldSchema: block.fields,\n filter,\n i18n,\n parentPath: `${path}.${block.slug}`,\n readOnly: readOnlyOverride,\n })\n\n const reducedBlock: ReducedBlock = {\n slug: block.slug,\n custom: block.admin?.custom,\n fieldMap: blockFieldMap,\n imageAltText: block.imageAltText,\n imageURL: block.imageURL,\n labels: block.labels,\n }\n\n return reducedBlock\n })\n\n const blocksField: Omit<BlocksFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n blocks,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n isSortable: field.admin?.isSortable,\n labels: field.labels,\n maxRows: field.maxRows,\n minRows: field.minRows,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = blocksField\n\n cellComponentProps.blocks = field.blocks.map((b) => ({\n slug: b.slug,\n labels: b.labels,\n }))\n\n break\n }\n case 'checkbox': {\n const checkboxField: CheckboxFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = checkboxField\n break\n }\n case 'code': {\n const codeField: CodeFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n language: field.admin?.language,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = codeField\n break\n }\n case 'collapsible': {\n let CustomCollapsibleLabel: React.ReactNode\n if (\n field?.admin?.components &&\n 'RowLabel' in field.admin.components &&\n field?.admin?.components?.RowLabel\n ) {\n const CustomCollapsibleLabelComponent = field.admin.components.RowLabel\n CustomCollapsibleLabel = (\n <WithServerSideProps\n Component={CustomCollapsibleLabelComponent}\n {...(labelProps || {})}\n />\n )\n }\n\n const collapsibleField: Omit<CollapsibleFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n CustomLabel: CustomCollapsibleLabel,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n initCollapsed: field.admin?.initCollapsed,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = collapsibleField as CollapsibleFieldProps // TODO: dunno why this is needed\n break\n }\n case 'date': {\n const dateField: DateFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n date: field.admin?.date,\n disabled: field.admin?.disabled,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = dateField\n cellComponentProps.dateDisplayFormat = field.admin?.date?.displayFormat\n break\n }\n case 'email': {\n const emailField: EmailFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = emailField\n break\n }\n case 'group': {\n const groupField: Omit<GroupFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = groupField\n break\n }\n case 'json': {\n const jsonField: JSONFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n editorOptions: field.admin?.editorOptions,\n jsonSchema: field.jsonSchema,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = jsonField\n break\n }\n case 'number': {\n const numberField: NumberFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n max: field.max,\n maxRows: field.maxRows,\n min: field.min,\n readOnly: field.admin?.readOnly,\n required: field.required,\n step: field.admin?.step,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = numberField\n break\n }\n case 'point': {\n const pointField: PointFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = pointField\n break\n }\n case 'relationship': {\n const relationshipField: RelationshipFieldProps = {\n ...baseFieldProps,\n name: field.name,\n allowCreate: field.admin.allowCreate,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n sortOptions: field.admin.sortOptions,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = relationshipField\n break\n }\n case 'radio': {\n const radioField: RadioFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = radioField\n break\n }\n case 'richText': {\n const richTextField: RichTextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n if (typeof field?.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n const RichTextFieldComponent = field.editor.FieldComponent\n const RichTextCellComponent = field.editor.CellComponent\n\n if (typeof field.editor.generateComponentMap === 'function') {\n const result = field.editor.generateComponentMap({\n WithServerSideProps,\n config,\n i18n,\n schemaPath: path,\n })\n richTextField.richTextComponentMap = result\n cellComponentProps.richTextComponentMap = result\n }\n\n if (RichTextFieldComponent) {\n CustomFieldComponent = RichTextFieldComponent\n }\n\n if (RichTextCellComponent) {\n cellComponentProps.CellComponentOverride = (\n <WithServerSideProps Component={RichTextCellComponent} />\n )\n }\n\n fieldComponentProps = richTextField\n\n break\n }\n case 'row': {\n const rowField: Omit<RowFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n fieldMap: mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: field.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n }),\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = rowField\n break\n }\n case 'tabs': {\n // `tabs` fields require a field map of each of its tab's nested fields\n const tabs = field.tabs.map((tab) => {\n const tabFieldMap = mapFields({\n WithServerSideProps,\n config,\n disableAddingID: true,\n fieldSchema: tab.fields,\n filter,\n i18n,\n parentPath: path,\n readOnly: readOnlyOverride,\n })\n\n const reducedTab: MappedTab = {\n name: 'name' in tab ? tab.name : undefined,\n fieldMap: tabFieldMap,\n label: tab.label,\n }\n\n return reducedTab\n })\n\n const tabsField: Omit<TabsFieldProps, 'indexPath' | 'permissions'> = {\n ...baseFieldProps,\n name: 'name' in field ? (field.name as string) : undefined,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n tabs,\n width: field.admin?.width,\n }\n\n fieldComponentProps = tabsField\n break\n }\n case 'text': {\n const textField: TextFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textField\n break\n }\n case 'textarea': {\n const textareaField: TextareaFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n maxLength: field.maxLength,\n minLength: field.minLength,\n placeholder: field.admin?.placeholder,\n readOnly: field.admin?.readOnly,\n required: field.required,\n rows: field.admin?.rows,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n fieldComponentProps = textareaField\n break\n }\n case 'ui': {\n fieldComponentProps = baseFieldProps\n break\n }\n case 'upload': {\n const uploadField: UploadFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n filterOptions: field.filterOptions,\n readOnly: field.admin?.readOnly,\n relationTo: field.relationTo,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.relationTo = field.relationTo\n fieldComponentProps = uploadField\n break\n }\n case 'select': {\n const selectField: SelectFieldProps = {\n ...baseFieldProps,\n name: field.name,\n className: field.admin?.className,\n disabled: field.admin?.disabled,\n hasMany: field.hasMany,\n isClearable: field.admin?.isClearable,\n options: fieldOptions,\n readOnly: field.admin?.readOnly,\n required: field.required,\n style: field.admin?.style,\n width: field.admin?.width,\n }\n\n cellComponentProps.options = fieldOptions\n fieldComponentProps = selectField\n break\n }\n default: {\n break\n }\n }\n\n const reducedField: MappedField = {\n name: 'name' in field ? field.name : undefined,\n type: field.type,\n CustomCell: CustomCellComponent ? (\n <WithServerSideProps Component={CustomCellComponent} {...cellComponentProps} />\n ) : undefined,\n CustomField: CustomFieldComponent ? (\n <WithServerSideProps Component={CustomFieldComponent} {...fieldComponentProps} />\n ) : undefined,\n cellComponentProps,\n custom: field?.admin?.custom,\n disableBulkEdit:\n 'admin' in field && 'disableBulkEdit' in field.admin && field.admin.disableBulkEdit,\n fieldComponentProps,\n fieldIsPresentational,\n isFieldAffectingData,\n isHidden,\n isSidebar:\n 'admin' in field && 'position' in field.admin && field.admin.position === 'sidebar',\n localized: 'localized' in field ? field.localized : false,\n unique: 'unique' in field ? field.unique : false,\n }\n\n acc.push(reducedField)\n }\n }\n\n return acc\n }, [])\n\n const hasID =\n result.findIndex((f) => 'name' in f && f.isFieldAffectingData && f.name === 'id') > -1\n\n if (!disableAddingID && !hasID) {\n // TODO: For all fields (not just this one) we need to add the name to both .fieldComponentProps.name AND .name. This can probably be improved\n result.push({\n name: 'id',\n type: 'text',\n CustomField: null,\n cellComponentProps: {\n name: 'id',\n },\n disableBulkEdit: true,\n fieldComponentProps: {\n name: 'id',\n label: 'ID',\n },\n fieldIsPresentational: false,\n isFieldAffectingData: true,\n isHidden: true,\n localized: undefined,\n })\n }\n\n return result\n}\n"],"names":["FieldDescription","fieldAffectsData","fieldIsPresentationalOnly","React","Fragment","HiddenInput","mapFields","args","WithServerSideProps","config","disableAddingID","fieldSchema","filter","i18n","t","parentPath","readOnly","readOnlyOverride","result","reduce","acc","field","fieldIsPresentational","CustomFieldComponent","admin","components","Field","CustomCellComponent","Cell","isHidden","hidden","disabled","isFieldAffectingData","path","name","AfterInput","Array","isArray","afterInput","map","Component","i","key","BeforeInput","beforeInput","label","undefined","labelProps","required","CustomLabelComponent","Label","CustomLabel","description","descriptionProps","CustomDescriptionComponent","Description","CustomDescription","errorProps","CustomErrorComponent","Error","CustomError","baseFieldProps","custom","fieldComponentProps","fieldOptions","options","option","value","cellComponentProps","fieldType","type","labels","relationTo","CustomRowLabel","RowLabel","CustomRowLabelComponent","arrayFieldProps","className","fieldMap","fields","isSortable","maxRows","minRows","style","width","blocks","block","blockFieldMap","slug","reducedBlock","imageAltText","imageURL","blocksField","b","checkboxField","codeField","editorOptions","language","CustomCollapsibleLabel","CustomCollapsibleLabelComponent","collapsibleField","initCollapsed","dateField","date","placeholder","dateDisplayFormat","displayFormat","emailField","groupField","jsonField","jsonSchema","numberField","hasMany","max","min","step","pointField","relationshipField","allowCreate","sortOptions","radioField","richTextField","editor","RichTextFieldComponent","FieldComponent","RichTextCellComponent","CellComponent","generateComponentMap","schemaPath","richTextComponentMap","CellComponentOverride","rowField","tabs","tab","tabFieldMap","reducedTab","tabsField","textField","maxLength","minLength","textareaField","rows","uploadField","filterOptions","selectField","isClearable","reducedField","CustomCell","CustomField","disableBulkEdit","isSidebar","position","localized","unique","push","hasID","findIndex","f"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}