@payloadcms/ui 3.0.0-beta.107 → 3.0.0-beta.109

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 (288) hide show
  1. package/dist/elements/Autosave/index.d.ts.map +1 -1
  2. package/dist/elements/Autosave/index.js +1 -3
  3. package/dist/elements/Autosave/index.js.map +1 -1
  4. package/dist/elements/BulkUpload/ActionsBar/index.js +2 -2
  5. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  6. package/dist/elements/BulkUpload/EditForm/index.js +3 -1
  7. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  8. package/dist/elements/BulkUpload/FormsManager/index.js +3 -1
  9. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  10. package/dist/elements/Button/index.d.ts.map +1 -1
  11. package/dist/elements/Button/index.js +1 -0
  12. package/dist/elements/Button/index.js.map +1 -1
  13. package/dist/elements/Button/types.d.ts +6 -0
  14. package/dist/elements/Button/types.d.ts.map +1 -1
  15. package/dist/elements/Button/types.js.map +1 -1
  16. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  17. package/dist/elements/CodeEditor/CodeEditor.js +51 -25
  18. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  19. package/dist/elements/CodeEditor/index.d.ts.map +1 -1
  20. package/dist/elements/CodeEditor/index.js +2 -8
  21. package/dist/elements/CodeEditor/index.js.map +1 -1
  22. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  23. package/dist/elements/ColumnSelector/index.js +14 -2
  24. package/dist/elements/ColumnSelector/index.js.map +1 -1
  25. package/dist/elements/DocumentControls/index.d.ts +4 -1
  26. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  27. package/dist/elements/DocumentControls/index.js +42 -6
  28. package/dist/elements/DocumentControls/index.js.map +1 -1
  29. package/dist/elements/DocumentControls/index.scss +8 -0
  30. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  31. package/dist/elements/DocumentDrawer/DrawerContent.js +23 -17
  32. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  33. package/dist/elements/DocumentDrawer/types.d.ts +4 -1
  34. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  35. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  36. package/dist/elements/EditMany/index.d.ts.map +1 -1
  37. package/dist/elements/EditMany/index.js +235 -124
  38. package/dist/elements/EditMany/index.js.map +1 -1
  39. package/dist/elements/Hamburger/index.scss +4 -0
  40. package/dist/elements/ListControls/index.d.ts.map +1 -1
  41. package/dist/elements/ListControls/index.js +9 -5
  42. package/dist/elements/ListControls/index.js.map +1 -1
  43. package/dist/elements/ListControls/index.scss +0 -6
  44. package/dist/elements/ListDrawer/DrawerContent.d.ts +2 -0
  45. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  46. package/dist/elements/ListDrawer/DrawerContent.js +3 -3
  47. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  48. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  49. package/dist/elements/ListDrawer/index.js +18 -15
  50. package/dist/elements/ListDrawer/index.js.map +1 -1
  51. package/dist/elements/ListDrawer/types.d.ts +2 -0
  52. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  53. package/dist/elements/ListDrawer/types.js.map +1 -1
  54. package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
  55. package/dist/elements/Localizer/LocalizerLabel/index.js +9 -5
  56. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  57. package/dist/elements/Localizer/LocalizerLabel/index.scss +7 -3
  58. package/dist/elements/Locked/index.d.ts +8 -0
  59. package/dist/elements/Locked/index.d.ts.map +1 -0
  60. package/dist/elements/Locked/index.js +72 -0
  61. package/dist/elements/Locked/index.js.map +1 -0
  62. package/dist/elements/Locked/index.scss +14 -0
  63. package/dist/elements/Pagination/index.d.ts.map +1 -1
  64. package/dist/elements/Pagination/index.js +1 -1
  65. package/dist/elements/Pagination/index.js.map +1 -1
  66. package/dist/elements/PerPage/index.d.ts +5 -5
  67. package/dist/elements/PerPage/index.d.ts.map +1 -1
  68. package/dist/elements/PerPage/index.js +2 -1
  69. package/dist/elements/PerPage/index.js.map +1 -1
  70. package/dist/elements/Pill/index.scss +3 -1
  71. package/dist/elements/Popup/PopupTrigger/index.d.ts +1 -0
  72. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  73. package/dist/elements/Popup/PopupTrigger/index.js +3 -2
  74. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  75. package/dist/elements/Popup/PopupTrigger/index.scss +12 -0
  76. package/dist/elements/Popup/index.d.ts +1 -0
  77. package/dist/elements/Popup/index.d.ts.map +1 -1
  78. package/dist/elements/Popup/index.js +6 -3
  79. package/dist/elements/Popup/index.js.map +1 -1
  80. package/dist/elements/Popup/index.scss +18 -1
  81. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  82. package/dist/elements/PreviewButton/usePreviewURL.js +11 -3
  83. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  84. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  85. package/dist/elements/PublishButton/index.js +97 -46
  86. package/dist/elements/PublishButton/index.js.map +1 -1
  87. package/dist/elements/PublishMany/index.js +2 -1
  88. package/dist/elements/PublishMany/index.js.map +1 -1
  89. package/dist/elements/ReactSelect/index.scss +4 -0
  90. package/dist/elements/RelationshipTable/TableWrapper.d.ts +8 -0
  91. package/dist/elements/RelationshipTable/TableWrapper.d.ts.map +1 -0
  92. package/dist/elements/RelationshipTable/TableWrapper.js +69 -0
  93. package/dist/elements/RelationshipTable/TableWrapper.js.map +1 -0
  94. package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts +8 -0
  95. package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts.map +1 -0
  96. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +82 -0
  97. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -0
  98. package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +4 -0
  99. package/dist/elements/RelationshipTable/index.d.ts +15 -0
  100. package/dist/elements/RelationshipTable/index.d.ts.map +1 -0
  101. package/dist/elements/RelationshipTable/index.js +445 -0
  102. package/dist/elements/RelationshipTable/index.js.map +1 -0
  103. package/dist/elements/RelationshipTable/index.scss +26 -0
  104. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  105. package/dist/elements/SelectRow/index.js +60 -29
  106. package/dist/elements/SelectRow/index.js.map +1 -1
  107. package/dist/elements/SortColumn/index.d.ts +1 -0
  108. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  109. package/dist/elements/SortColumn/index.js +29 -17
  110. package/dist/elements/SortColumn/index.js.map +1 -1
  111. package/dist/elements/SortColumn/index.scss +10 -1
  112. package/dist/elements/Status/index.js +1 -1
  113. package/dist/elements/Status/index.js.map +1 -1
  114. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -3
  115. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  116. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +43 -40
  117. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  118. package/dist/elements/Table/DefaultCell/fields/Relationship/index.scss +0 -3
  119. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -0
  120. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  121. package/dist/elements/Table/DefaultCell/fields/index.js +1 -0
  122. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  123. package/dist/elements/Table/RenderCell.d.ts +11 -0
  124. package/dist/elements/Table/RenderCell.d.ts.map +1 -0
  125. package/dist/elements/Table/RenderCell.js +30 -0
  126. package/dist/elements/Table/RenderCell.js.map +1 -0
  127. package/dist/elements/Table/index.d.ts +3 -6
  128. package/dist/elements/Table/index.d.ts.map +1 -1
  129. package/dist/elements/Table/index.js +36 -31
  130. package/dist/elements/Table/index.js.map +1 -1
  131. package/dist/elements/Table/index.scss +50 -0
  132. package/dist/elements/TableColumns/buildColumnState.d.ts +5 -2
  133. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  134. package/dist/elements/TableColumns/buildColumnState.js +35 -22
  135. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  136. package/dist/elements/TableColumns/index.d.ts +5 -0
  137. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  138. package/dist/elements/TableColumns/index.js +107 -74
  139. package/dist/elements/TableColumns/index.js.map +1 -1
  140. package/dist/elements/Tooltip/index.d.ts +1 -0
  141. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  142. package/dist/elements/Tooltip/index.js +15 -13
  143. package/dist/elements/Tooltip/index.js.map +1 -1
  144. package/dist/elements/Tooltip/index.scss +2 -2
  145. package/dist/elements/UnpublishMany/index.js +2 -1
  146. package/dist/elements/UnpublishMany/index.js.map +1 -1
  147. package/dist/elements/WhereBuilder/Condition/index.js +32 -30
  148. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  149. package/dist/exports/client/{CodeEditor-CHKRX3U2.js → CodeEditor-FARZ6UIX.js} +6 -4
  150. package/dist/exports/client/CodeEditor-FARZ6UIX.js.map +8 -0
  151. package/dist/exports/client/{DatePicker-OLRZVTAD.js → DatePicker-NBYDOP2X.js} +2 -2
  152. package/dist/exports/client/chunk-6IWEPNUV.js +14 -0
  153. package/dist/exports/client/chunk-6IWEPNUV.js.map +8 -0
  154. package/dist/exports/client/{chunk-JINNHJP7.js → chunk-6MRITTMD.js} +3 -3
  155. package/dist/exports/client/{chunk-JINNHJP7.js.map → chunk-6MRITTMD.js.map} +4 -4
  156. package/dist/exports/client/index.d.ts +1 -0
  157. package/dist/exports/client/index.d.ts.map +1 -1
  158. package/dist/exports/client/index.js +19 -19
  159. package/dist/exports/client/index.js.map +4 -4
  160. package/dist/exports/shared/index.d.ts +3 -0
  161. package/dist/exports/shared/index.d.ts.map +1 -1
  162. package/dist/exports/shared/index.js +2 -2
  163. package/dist/exports/shared/index.js.map +4 -4
  164. package/dist/fields/Array/ArrayRow.js +2 -2
  165. package/dist/fields/Array/ArrayRow.js.map +1 -1
  166. package/dist/fields/Blocks/BlockRow.js +2 -2
  167. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  168. package/dist/fields/Collapsible/index.d.ts +16 -16
  169. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  170. package/dist/fields/Group/index.js +2 -2
  171. package/dist/fields/Group/index.js.map +1 -1
  172. package/dist/fields/Join/index.d.ts +9 -0
  173. package/dist/fields/Join/index.d.ts.map +1 -0
  174. package/dist/fields/Join/index.js +75 -0
  175. package/dist/fields/Join/index.js.map +1 -0
  176. package/dist/fields/Number/index.js +1 -1
  177. package/dist/fields/Number/index.js.map +1 -1
  178. package/dist/fields/Password/index.js +29 -25
  179. package/dist/fields/Password/index.js.map +1 -1
  180. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  181. package/dist/fields/Relationship/select-components/SingleValue/index.js +11 -13
  182. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  183. package/dist/fields/Row/index.scss +3 -0
  184. package/dist/fields/Textarea/index.d.ts.map +1 -1
  185. package/dist/fields/Textarea/index.js +2 -0
  186. package/dist/fields/Textarea/index.js.map +1 -1
  187. package/dist/fields/Upload/RelationshipContent/index.js +28 -29
  188. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  189. package/dist/fields/Upload/UploadCard/index.scss +0 -1
  190. package/dist/fields/index.d.ts.map +1 -1
  191. package/dist/fields/index.js +2 -0
  192. package/dist/fields/index.js.map +1 -1
  193. package/dist/forms/Form/index.js +6 -2
  194. package/dist/forms/Form/index.js.map +1 -1
  195. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  196. package/dist/forms/NullifyField/index.js +1 -0
  197. package/dist/forms/NullifyField/index.js.map +1 -1
  198. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  199. package/dist/forms/RenderFields/RenderField.js +3 -1
  200. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  201. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  202. package/dist/forms/RenderFields/index.js +18 -15
  203. package/dist/forms/RenderFields/index.js.map +1 -1
  204. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  205. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +3 -4
  206. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  207. package/dist/forms/buildStateFromSchema/index.d.ts +2 -0
  208. package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
  209. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  210. package/dist/forms/useField/index.js +203 -111
  211. package/dist/forms/useField/index.js.map +1 -1
  212. package/dist/hooks/useDelay.js +48 -15
  213. package/dist/hooks/useDelay.js.map +1 -1
  214. package/dist/hooks/useDelayedRender.js +71 -32
  215. package/dist/hooks/useDelayedRender.js.map +1 -1
  216. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  217. package/dist/hooks/usePayloadAPI.js.map +1 -1
  218. package/dist/icons/Chevron/index.d.ts +3 -3
  219. package/dist/icons/Chevron/index.d.ts.map +1 -1
  220. package/dist/icons/Chevron/index.js +4 -4
  221. package/dist/icons/Chevron/index.js.map +1 -1
  222. package/dist/icons/Chevron/index.scss +9 -1
  223. package/dist/icons/Lock/index.d.ts +6 -0
  224. package/dist/icons/Lock/index.d.ts.map +1 -0
  225. package/dist/icons/Lock/index.js +27 -0
  226. package/dist/icons/Lock/index.js.map +1 -0
  227. package/dist/icons/Lock/index.scss +8 -0
  228. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  229. package/dist/providers/Config/createClientConfig/collections.js +11 -1
  230. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  231. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  232. package/dist/providers/Config/createClientConfig/fields.js +3 -0
  233. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  234. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  235. package/dist/providers/DocumentInfo/index.js +101 -6
  236. package/dist/providers/DocumentInfo/index.js.map +1 -1
  237. package/dist/providers/DocumentInfo/types.d.ts +32 -27
  238. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  239. package/dist/providers/DocumentInfo/types.js.map +1 -1
  240. package/dist/providers/ListQuery/index.d.ts +5 -5
  241. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  242. package/dist/providers/ListQuery/index.js.map +1 -1
  243. package/dist/providers/Preferences/index.js +3 -1
  244. package/dist/providers/Preferences/index.js.map +1 -1
  245. package/dist/providers/Root/index.d.ts.map +1 -1
  246. package/dist/providers/Root/index.js +2 -2
  247. package/dist/providers/Root/index.js.map +1 -1
  248. package/dist/providers/Selection/index.d.ts +2 -1
  249. package/dist/providers/Selection/index.d.ts.map +1 -1
  250. package/dist/providers/Selection/index.js +23 -8
  251. package/dist/providers/Selection/index.js.map +1 -1
  252. package/dist/providers/Theme/index.d.ts +0 -1
  253. package/dist/providers/Theme/index.d.ts.map +1 -1
  254. package/dist/providers/Theme/index.js +29 -21
  255. package/dist/providers/Theme/index.js.map +1 -1
  256. package/dist/providers/Translation/index.d.ts.map +1 -1
  257. package/dist/providers/Translation/index.js +5 -7
  258. package/dist/providers/Translation/index.js.map +1 -1
  259. package/dist/styles.css +1 -1
  260. package/dist/utilities/buildFormState.d.ts +9 -3
  261. package/dist/utilities/buildFormState.d.ts.map +1 -1
  262. package/dist/utilities/buildFormState.js +82 -4
  263. package/dist/utilities/buildFormState.js.map +1 -1
  264. package/dist/utilities/deepMerge.d.ts +12 -0
  265. package/dist/utilities/deepMerge.d.ts.map +1 -0
  266. package/dist/utilities/deepMerge.js +25 -0
  267. package/dist/utilities/deepMerge.js.map +1 -0
  268. package/dist/utilities/getFormState.d.ts +8 -2
  269. package/dist/utilities/getFormState.d.ts.map +1 -1
  270. package/dist/utilities/getFormState.js +3 -1
  271. package/dist/utilities/getFormState.js.map +1 -1
  272. package/dist/utilities/handleBackToDashboard.d.ts +8 -0
  273. package/dist/utilities/handleBackToDashboard.d.ts.map +1 -0
  274. package/dist/utilities/handleBackToDashboard.js +12 -0
  275. package/dist/utilities/handleBackToDashboard.js.map +1 -0
  276. package/dist/utilities/handleGoBack.d.ts +9 -0
  277. package/dist/utilities/handleGoBack.d.ts.map +1 -0
  278. package/dist/utilities/handleGoBack.js +13 -0
  279. package/dist/utilities/handleGoBack.js.map +1 -0
  280. package/dist/utilities/handleTakeOver.d.ts +7 -0
  281. package/dist/utilities/handleTakeOver.d.ts.map +1 -0
  282. package/dist/utilities/handleTakeOver.js +27 -0
  283. package/dist/utilities/handleTakeOver.js.map +1 -0
  284. package/package.json +14 -14
  285. package/dist/exports/client/CodeEditor-CHKRX3U2.js.map +0 -8
  286. package/dist/exports/client/chunk-BGA6EPOL.js +0 -14
  287. package/dist/exports/client/chunk-BGA6EPOL.js.map +0 -8
  288. /package/dist/exports/client/{DatePicker-OLRZVTAD.js.map → DatePicker-NBYDOP2X.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"RenderField.js","names":["React","HiddenField","RenderComponent","useFieldComponents","useOperation","FieldPropsProvider","useFieldProps","RenderField","name","fieldComponentProps","indexPath","path","pathFromProps","permissions","schemaPath","schemaPathFromProps","siblingPermissions","fieldComponents","operation","readOnly","readOnlyFromContext","filter","Boolean","join","read","permission","field","admin","disabled","RenderedField","components","Field","hidden","_jsx","forceRender","clientProps","Component","type","mappedComponent","custom"],"sources":["../../../src/forms/RenderFields/RenderField.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientField, FieldPermissions } from 'payload'\n\nimport React from 'react'\n\nimport { HiddenField } from '../../fields/Hidden/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useFieldComponents } from '../../providers/FieldComponents/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { FieldPropsProvider, useFieldProps } from '../FieldPropsProvider/index.js'\n\ntype Props = {\n readonly fieldComponentProps?: {\n field: ClientField\n forceRender?: boolean\n readOnly?: boolean\n }\n readonly indexPath?: string\n readonly isHidden?: boolean\n readonly name?: string\n readonly path: string\n readonly permissions?: FieldPermissions\n readonly schemaPath: string\n readonly siblingPermissions: {\n [fieldName: string]: FieldPermissions\n }\n}\n\nexport const RenderField: React.FC<Props> = ({\n name,\n fieldComponentProps,\n indexPath,\n path: pathFromProps,\n permissions,\n schemaPath: schemaPathFromProps,\n siblingPermissions,\n}) => {\n const fieldComponents = useFieldComponents()\n const operation = useOperation()\n const { readOnly: readOnlyFromContext } = useFieldProps()\n\n if (!fieldComponents) {\n return null\n }\n\n const path = [pathFromProps, name].filter(Boolean).join('.')\n const schemaPath = [schemaPathFromProps, name].filter(Boolean).join('.')\n\n // if the user cannot read the field, then filter it out\n // this is different from `admin.readOnly` which is executed based on `operation`\n if (permissions?.read?.permission === false || fieldComponentProps?.field?.admin?.disabled) {\n return null\n }\n\n // `admin.readOnly` displays the value but prevents the field from being edited\n fieldComponentProps.readOnly = fieldComponentProps?.field?.admin?.readOnly\n\n // if parent field is `readOnly: true`, but this field is `readOnly: false`, the field should still be editable\n if (readOnlyFromContext && fieldComponentProps.readOnly !== false) {\n fieldComponentProps.readOnly = true\n }\n\n // if the user does not have access control to begin with, force it to be read-only\n if (permissions?.[operation]?.permission === false) {\n fieldComponentProps.readOnly = true\n }\n\n let RenderedField: React.ReactElement\n\n if (fieldComponentProps?.field?.admin?.components?.Field === null) {\n return null\n }\n\n // hide from admin if field is `admin.hidden: true`\n if (\n 'admin' in fieldComponentProps.field &&\n 'hidden' in fieldComponentProps.field.admin &&\n fieldComponentProps.field.admin.hidden\n ) {\n RenderedField = (\n <HiddenField\n field={fieldComponentProps.field}\n forceRender={fieldComponentProps.forceRender}\n readOnly={fieldComponentProps.readOnly}\n />\n )\n } else {\n RenderedField = (\n <RenderComponent\n clientProps={{\n field: fieldComponentProps.field,\n forceRender: fieldComponentProps.forceRender,\n readOnly: fieldComponentProps.readOnly,\n }}\n Component={fieldComponents?.[fieldComponentProps?.field?.type]}\n mappedComponent={fieldComponentProps?.field?.admin?.components?.Field}\n />\n )\n }\n\n return (\n <FieldPropsProvider\n custom={fieldComponentProps?.field?.admin?.custom}\n indexPath={indexPath}\n path={path}\n permissions={permissions}\n readOnly={fieldComponentProps.readOnly}\n schemaPath={schemaPath}\n siblingPermissions={siblingPermissions}\n type={fieldComponentProps?.field?.type}\n >\n {RenderedField}\n </FieldPropsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RenderField.js","names":["React","HiddenField","RenderComponent","useFieldComponents","useOperation","FieldPropsProvider","useFieldProps","RenderField","name","fieldComponentProps","indexPath","path","pathFromProps","permissions","schemaPath","schemaPathFromProps","siblingPermissions","fieldComponents","operation","readOnly","readOnlyFromContext","filter","Boolean","join","read","permission","field","admin","disabled","isReadOnly","RenderedField","components","Field","hidden","_jsx","forceRender","clientProps","Component","type","mappedComponent","custom"],"sources":["../../../src/forms/RenderFields/RenderField.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientField, FieldPermissions } from 'payload'\n\nimport React from 'react'\n\nimport { HiddenField } from '../../fields/Hidden/index.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useFieldComponents } from '../../providers/FieldComponents/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { FieldPropsProvider, useFieldProps } from '../FieldPropsProvider/index.js'\n\ntype Props = {\n readonly fieldComponentProps?: {\n field: ClientField\n forceRender?: boolean\n readOnly?: boolean\n }\n readonly indexPath?: string\n readonly isHidden?: boolean\n readonly name?: string\n readonly path: string\n readonly permissions?: FieldPermissions\n readonly schemaPath: string\n readonly siblingPermissions: {\n [fieldName: string]: FieldPermissions\n }\n}\n\nexport const RenderField: React.FC<Props> = ({\n name,\n fieldComponentProps,\n indexPath,\n path: pathFromProps,\n permissions,\n schemaPath: schemaPathFromProps,\n siblingPermissions,\n}) => {\n const fieldComponents = useFieldComponents()\n const operation = useOperation()\n const { readOnly: readOnlyFromContext } = useFieldProps()\n\n if (!fieldComponents) {\n return null\n }\n\n const path = [pathFromProps, name].filter(Boolean).join('.')\n const schemaPath = [schemaPathFromProps, name].filter(Boolean).join('.')\n\n // if the user cannot read the field, then filter it out\n // this is different from `admin.readOnly` which is executed based on `operation`\n if (permissions?.read?.permission === false || fieldComponentProps?.field?.admin?.disabled) {\n return null\n }\n\n // Combine readOnlyFromContext with the readOnly prop passed down from RenderFields\n const isReadOnly = fieldComponentProps.readOnly ?? readOnlyFromContext\n\n // `admin.readOnly` displays the value but prevents the field from being edited\n fieldComponentProps.readOnly = fieldComponentProps?.field?.admin?.readOnly\n\n // if parent field is `readOnly: true`, but this field is `readOnly: false`, the field should still be editable\n if (isReadOnly && fieldComponentProps.readOnly !== false) {\n fieldComponentProps.readOnly = true\n }\n\n // if the user does not have access control to begin with, force it to be read-only\n if (permissions?.[operation]?.permission === false) {\n fieldComponentProps.readOnly = true\n }\n\n let RenderedField: React.ReactElement\n\n if (fieldComponentProps?.field?.admin?.components?.Field === null) {\n return null\n }\n\n // hide from admin if field is `admin.hidden: true`\n if (\n 'admin' in fieldComponentProps.field &&\n 'hidden' in fieldComponentProps.field.admin &&\n fieldComponentProps.field.admin.hidden\n ) {\n RenderedField = (\n <HiddenField\n field={fieldComponentProps.field}\n forceRender={fieldComponentProps.forceRender}\n readOnly={fieldComponentProps.readOnly}\n />\n )\n } else {\n RenderedField = (\n <RenderComponent\n clientProps={{\n field: fieldComponentProps.field,\n forceRender: fieldComponentProps.forceRender,\n readOnly: fieldComponentProps.readOnly,\n }}\n Component={fieldComponents?.[fieldComponentProps?.field?.type]}\n mappedComponent={fieldComponentProps?.field?.admin?.components?.Field}\n />\n )\n }\n\n return (\n <FieldPropsProvider\n custom={fieldComponentProps?.field?.admin?.custom}\n indexPath={indexPath}\n path={path}\n permissions={permissions}\n readOnly={fieldComponentProps.readOnly}\n schemaPath={schemaPath}\n siblingPermissions={siblingPermissions}\n type={fieldComponentProps?.field?.type}\n >\n {RenderedField}\n </FieldPropsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvC,OAAO,cAAc,CAAA;AAKrB,OAAO,EAAE,KAAK,EAAE,CAAA;AAEhB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAqExC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvC,OAAO,cAAc,CAAA;AAKrB,OAAO,EAAE,KAAK,EAAE,CAAA;AAEhB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8ExC,CAAA"}
@@ -9,7 +9,7 @@ import './index.scss';
9
9
  import { RenderField } from './RenderField.js';
10
10
  const baseClass = 'render-fields';
11
11
  export const RenderFields = props => {
12
- const $ = _c(21);
12
+ const $ = _c(22);
13
13
  const {
14
14
  className,
15
15
  fields,
@@ -18,6 +18,7 @@ export const RenderFields = props => {
18
18
  margins,
19
19
  path,
20
20
  permissions,
21
+ readOnly,
21
22
  schemaPath
22
23
  } = props;
23
24
  const {
@@ -76,14 +77,15 @@ export const RenderFields = props => {
76
77
  }
77
78
  const t6 = t5.join(" ");
78
79
  let t7;
79
- if ($[9] !== hasRendered || $[10] !== fields || $[11] !== forceRender || $[12] !== indexPath || $[13] !== path || $[14] !== permissions || $[15] !== schemaPath) {
80
+ if ($[9] !== hasRendered || $[10] !== fields || $[11] !== forceRender || $[12] !== readOnly || $[13] !== indexPath || $[14] !== path || $[15] !== permissions || $[16] !== schemaPath) {
80
81
  t7 = hasRendered && fields?.map((field, fieldIndex) => {
81
82
  const forceRenderChildren = typeof forceRender === "number" && fieldIndex <= forceRender || true;
82
83
  const name = "name" in field ? field.name : undefined;
83
84
  return _jsx(RenderField, {
84
85
  fieldComponentProps: {
85
86
  field,
86
- forceRender: forceRenderChildren
87
+ forceRender: forceRenderChildren,
88
+ readOnly
87
89
  },
88
90
  indexPath: indexPath !== undefined ? `${indexPath}.${fieldIndex}` : `${fieldIndex}`,
89
91
  name,
@@ -96,27 +98,28 @@ export const RenderFields = props => {
96
98
  $[9] = hasRendered;
97
99
  $[10] = fields;
98
100
  $[11] = forceRender;
99
- $[12] = indexPath;
100
- $[13] = path;
101
- $[14] = permissions;
102
- $[15] = schemaPath;
103
- $[16] = t7;
101
+ $[12] = readOnly;
102
+ $[13] = indexPath;
103
+ $[14] = path;
104
+ $[15] = permissions;
105
+ $[16] = schemaPath;
106
+ $[17] = t7;
104
107
  } else {
105
- t7 = $[16];
108
+ t7 = $[17];
106
109
  }
107
110
  let t8;
108
- if ($[17] !== t6 || $[18] !== intersectionRef || $[19] !== t7) {
111
+ if ($[18] !== t6 || $[19] !== intersectionRef || $[20] !== t7) {
109
112
  t8 = _jsx("div", {
110
113
  className: t6,
111
114
  ref: intersectionRef,
112
115
  children: t7
113
116
  });
114
- $[17] = t6;
115
- $[18] = intersectionRef;
116
- $[19] = t7;
117
- $[20] = t8;
117
+ $[18] = t6;
118
+ $[19] = intersectionRef;
119
+ $[20] = t7;
120
+ $[21] = t8;
118
121
  } else {
119
- t8 = $[20];
122
+ t8 = $[21];
120
123
  }
121
124
  return t8;
122
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useIntersect","useTranslation","RenderField","baseClass","RenderFields","props","$","className","fields","forceRender","indexPath","margins","path","permissions","schemaPath","i18n","hasRendered","setHasRendered","useState","Boolean","t0","Symbol","for","rootMargin","intersectionRef","entry","isIntersecting","isAboveViewport","boundingClientRect","top","shouldRender","t1","t2","useEffect","Array","isArray","length","console","error","t3","t4","t5","filter","t6","join","t7","map","field","fieldIndex","forceRenderChildren","name","undefined","_jsx","fieldComponentProps","siblingPermissions","t8","ref","children"],"sources":["../../../src/forms/RenderFields/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { useIntersect } from '../../hooks/useIntersect.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\nimport { RenderField } from './RenderField.js'\n\nconst baseClass = 'render-fields'\n\nexport { Props }\n\nexport const RenderFields: React.FC<Props> = (props) => {\n const { className, fields, forceRender, indexPath, margins, path, permissions, schemaPath } =\n props\n\n const { i18n } = useTranslation()\n const [hasRendered, setHasRendered] = React.useState(Boolean(forceRender))\n const [intersectionRef, entry] = useIntersect(\n {\n rootMargin: '1000px',\n },\n Boolean(forceRender),\n )\n\n const isIntersecting = Boolean(entry?.isIntersecting)\n const isAboveViewport = entry?.boundingClientRect?.top < 0\n const shouldRender = forceRender || isIntersecting || isAboveViewport\n\n React.useEffect(() => {\n if (shouldRender && !hasRendered) {\n setHasRendered(true)\n }\n }, [shouldRender, hasRendered])\n\n if (!fields || (Array.isArray(fields) && fields.length === 0)) {\n return null\n }\n\n if (!i18n) {\n console.error('Need to implement i18n when calling RenderFields') // eslint-disable-line no-console\n }\n\n if (fields) {\n return (\n <div\n className={[\n baseClass,\n className,\n margins && `${baseClass}--margins-${margins}`,\n margins === false && `${baseClass}--margins-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n ref={intersectionRef}\n >\n {hasRendered &&\n fields?.map((field, fieldIndex) => {\n const forceRenderChildren =\n (typeof forceRender === 'number' && fieldIndex <= forceRender) || true\n\n const name = 'name' in field ? field.name : undefined\n\n return (\n <RenderField\n fieldComponentProps={{ field, forceRender: forceRenderChildren }}\n indexPath={indexPath !== undefined ? `${indexPath}.${fieldIndex}` : `${fieldIndex}`}\n key={fieldIndex}\n name={name}\n path={path}\n permissions={permissions?.[name]}\n schemaPath={schemaPath}\n siblingPermissions={permissions}\n />\n )\n })}\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useIntersect","useTranslation","RenderField","baseClass","RenderFields","props","$","className","fields","forceRender","indexPath","margins","path","permissions","readOnly","schemaPath","i18n","hasRendered","setHasRendered","useState","Boolean","t0","Symbol","for","rootMargin","intersectionRef","entry","isIntersecting","isAboveViewport","boundingClientRect","top","shouldRender","t1","t2","useEffect","Array","isArray","length","console","error","t3","t4","t5","filter","t6","join","t7","map","field","fieldIndex","forceRenderChildren","name","undefined","_jsx","fieldComponentProps","siblingPermissions","t8","ref","children"],"sources":["../../../src/forms/RenderFields/index.tsx"],"sourcesContent":["'use client'\nimport React from 'react'\n\nimport type { Props } from './types.js'\n\nimport { useIntersect } from '../../hooks/useIntersect.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport './index.scss'\nimport { RenderField } from './RenderField.js'\n\nconst baseClass = 'render-fields'\n\nexport { Props }\n\nexport const RenderFields: React.FC<Props> = (props) => {\n const {\n className,\n fields,\n forceRender,\n indexPath,\n margins,\n path,\n permissions,\n readOnly,\n schemaPath,\n } = props\n\n const { i18n } = useTranslation()\n const [hasRendered, setHasRendered] = React.useState(Boolean(forceRender))\n const [intersectionRef, entry] = useIntersect(\n {\n rootMargin: '1000px',\n },\n Boolean(forceRender),\n )\n\n const isIntersecting = Boolean(entry?.isIntersecting)\n const isAboveViewport = entry?.boundingClientRect?.top < 0\n const shouldRender = forceRender || isIntersecting || isAboveViewport\n\n React.useEffect(() => {\n if (shouldRender && !hasRendered) {\n setHasRendered(true)\n }\n }, [shouldRender, hasRendered])\n\n if (!fields || (Array.isArray(fields) && fields.length === 0)) {\n return null\n }\n\n if (!i18n) {\n console.error('Need to implement i18n when calling RenderFields') // eslint-disable-line no-console\n }\n\n if (fields) {\n return (\n <div\n className={[\n baseClass,\n className,\n margins && `${baseClass}--margins-${margins}`,\n margins === false && `${baseClass}--margins-none`,\n ]\n .filter(Boolean)\n .join(' ')}\n ref={intersectionRef}\n >\n {hasRendered &&\n fields?.map((field, fieldIndex) => {\n const forceRenderChildren =\n (typeof forceRender === 'number' && fieldIndex <= forceRender) || true\n\n const name = 'name' in field ? field.name : undefined\n\n return (\n <RenderField\n fieldComponentProps={{ field, forceRender: forceRenderChildren, readOnly }}\n indexPath={indexPath !== undefined ? `${indexPath}.${fieldIndex}` : `${fieldIndex}`}\n key={fieldIndex}\n name={name}\n path={path}\n permissions={permissions?.[name]}\n schemaPath={schemaPath}\n siblingPermissions={permissions}\n />\n )\n })}\n </div>\n )\n }\n\n return null\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"addFieldStatePromise.d.ts","sourceRoot":"","sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,EAEL,SAAS,EACT,cAAc,EACf,MAAM,SAAS,CAAA;AAWhB,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAA;IACpD;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,EAAE,IAAI,CAAA;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IAEZ,WAAW,EAAE,mBAAmB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,cAAc,CAAA;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,SAAgB,wBAAwB,KAAG,OAAO,CAAC,IAAI,CAoevF,CAAA"}
1
+ {"version":3,"file":"addFieldStatePromise.d.ts","sourceRoot":"","sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,EAEL,SAAS,EACT,cAAc,EACf,MAAM,SAAS,CAAA;AAWhB,MAAM,MAAM,wBAAwB,GAAG;IACrC,oBAAoB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAC5C;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,KAAK,EAAE,KAAK,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB;;OAEG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,CAAA;IACpD;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,QAAQ,EAAE,IAAI,CAAA;IACd,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC9B,eAAe,EAAE,OAAO,CAAA;IACxB,IAAI,EAAE,MAAM,CAAA;IAEZ,WAAW,EAAE,mBAAmB,CAAA;IAChC;;;OAGG;IACH,GAAG,EAAE,cAAc,CAAA;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,SAAS,CAAA;CACjB,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,SAAgB,wBAAwB,KAAG,OAAO,CAAC,IAAI,CAsevF,CAAA"}
@@ -55,12 +55,11 @@ export const addFieldStatePromise = async args => {
55
55
  id,
56
56
  collectionSlug,
57
57
  data: fullData,
58
+ jsonError,
58
59
  operation,
60
+ preferences,
59
61
  req,
60
- siblingData: data,
61
- // @ts-expect-error-next-line
62
- jsonError,
63
- preferences
62
+ siblingData: data
64
63
  });
65
64
  }
66
65
  const addErrorPathToParent = errorPath => {
@@ -1 +1 @@
1
- {"version":3,"file":"addFieldStatePromise.js","names":["ObjectIdImport","fieldAffectsData","fieldHasSubFields","tabHasName","getFilterOptionsQuery","iterateFields","ObjectId","default","addFieldStatePromise","args","id","addErrorPathToParent","addErrorPathToParentArg","anyParentLocalized","collectionSlug","data","field","fieldIndex","filter","forceFullValue","fullData","includeSchema","omitParents","operation","passesCondition","path","preferences","req","skipConditionChecks","skipValidation","state","validate","fieldState","errorPaths","fieldSchema","undefined","initialValue","valid","value","validationResult","jsonError","type","name","JSON","parse","e","siblingData","errorPath","includes","push","errorMessage","arrayValue","Array","isArray","promises","rowMetadata","reduce","acc","row","i","rowPath","toHexString","fields","find","localized","parentPassesCondition","collapsedRowIDs","collapsed","admin","initCollapsed","Promise","all","length","disableFormData","rows","blocksValue","block","blocks","blockType","slug","blockField","blockName","filterOptions","relationTo","relation","query","user","hasMany","relationshipValue","map","relationship","tabs","tab","isNamedTab"],"sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"sourcesContent":["import type {\n Data,\n DocumentPreferences,\n Field,\n FormField,\n FormState,\n PayloadRequest,\n} from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\nimport { getFilterOptionsQuery } from './getFilterOptionsQuery.js'\nimport { iterateFields } from './iterateFields.js'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\nexport type AddFieldStatePromiseArgs = {\n addErrorPathToParent: (path: string) => void\n /**\n * if all parents are localized, then the field is localized\n */\n anyParentLocalized?: boolean\n collectionSlug?: string\n data: Data\n field: Field\n fieldIndex: number\n /**\n * You can use this to filter down to only `localized` fields that require translation (type: text, textarea, etc.). Another plugin might want to look for only `point` type fields to do some GIS function. With the filter function you can go in like a surgeon.\n */\n filter?: (args: AddFieldStatePromiseArgs) => boolean\n /**\n * Force the value of fields like arrays or blocks to be the full value instead of the length @default false\n */\n forceFullValue?: boolean\n fullData: Data\n id: number | string\n /**\n * Whether the field schema should be included in the state\n */\n includeSchema?: boolean\n /**\n * Whether to omit parent fields in the state. @default false\n */\n omitParents?: boolean\n operation: 'create' | 'update'\n passesCondition: boolean\n path: string\n\n preferences: DocumentPreferences\n /**\n * Req is used for validation and defaultValue calculation. If you don't need validation,\n * just create your own req and pass in the locale and the user\n */\n req: PayloadRequest\n /**\n * Whether to skip checking the field's condition. @default false\n */\n skipConditionChecks?: boolean\n /**\n * Whether to skip validating the field. @default false\n */\n skipValidation?: boolean\n state: FormState\n}\n\n/**\n * Flattens the fields schema and fields data.\n * The output is the field path (e.g. array.0.name) mapped to a FormField object.\n */\nexport const addFieldStatePromise = async (args: AddFieldStatePromiseArgs): Promise<void> => {\n const {\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized = false,\n collectionSlug,\n data,\n field,\n fieldIndex,\n filter,\n forceFullValue = false,\n fullData,\n includeSchema = false,\n omitParents = false,\n operation,\n passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks = false,\n skipValidation = false,\n state,\n } = args\n\n if (fieldAffectsData(field)) {\n const validate = field.validate\n\n const fieldState: FormField = {\n errorPaths: [],\n fieldSchema: includeSchema ? field : undefined,\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n\n let validationResult: string | true = true\n\n if (typeof validate === 'function' && !skipValidation && passesCondition) {\n let jsonError\n\n if (field.type === 'json' && typeof data[field.name] === 'string') {\n try {\n JSON.parse(data[field.name] as string)\n } catch (e) {\n jsonError = e\n }\n }\n\n validationResult = await validate(data?.[field.name], {\n ...field,\n id,\n collectionSlug,\n data: fullData,\n operation,\n req,\n siblingData: data,\n // @ts-expect-error-next-line\n jsonError,\n preferences,\n })\n }\n\n const addErrorPathToParent = (errorPath: string) => {\n if (typeof addErrorPathToParentArg === 'function') {\n addErrorPathToParentArg(errorPath)\n }\n\n if (!fieldState.errorPaths.includes(errorPath)) {\n fieldState.errorPaths.push(errorPath)\n fieldState.valid = false\n }\n }\n\n if (typeof validationResult === 'string') {\n fieldState.errorMessage = validationResult\n fieldState.valid = false\n addErrorPathToParent(`${path}${field.name}`)\n } else {\n fieldState.valid = true\n }\n\n switch (field.type) {\n case 'array': {\n const arrayValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = arrayValue.reduce(\n (acc, row, i) => {\n const rowPath = `${path}${field.name}.${i}.`\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? field.fields.find((field) => 'name' in field && field.name === 'id')\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? arrayValue : arrayValue.length\n fieldState.initialValue = forceFullValue ? arrayValue : arrayValue.length\n\n if (arrayValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'blocks': {\n const blocksValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = blocksValue.reduce(\n (acc, row, i) => {\n const block = field.blocks.find((blockType) => blockType.slug === row.blockType)\n const rowPath = `${path}${field.name}.${i}.`\n\n if (block) {\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'id',\n )\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n\n state[`${rowPath}blockType`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockType',\n )\n : undefined,\n initialValue: row.blockType,\n valid: true,\n value: row.blockType,\n }\n\n state[`${rowPath}blockName`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockName',\n )\n : undefined,\n initialValue: row.blockName,\n valid: true,\n value: row.blockName,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: block.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n blockType: row.blockType,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n }\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? blocksValue : blocksValue.length\n fieldState.initialValue = forceFullValue ? blocksValue : blocksValue.length\n\n if (blocksValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'group': {\n if (!filter || filter(args)) {\n fieldState.disableFormData = true\n state[`${path}${field.name}`] = fieldState\n }\n\n await iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: data?.[field.name] || {},\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: `${path}${field.name}.`,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n\n break\n }\n case 'upload':\n case 'relationship': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n if (typeof field.relationTo === 'string') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n } else {\n fieldState.filterOptions = field.relationTo.reduce((acc, relation) => {\n acc[relation] = field.filterOptions\n return acc\n }, {})\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await getFilterOptionsQuery(field.filterOptions, {\n id,\n data: fullData,\n relationTo: field.relationTo,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n if (field.hasMany) {\n const relationshipValue = Array.isArray(data[field.name])\n ? data[field.name].map((relationship) => {\n if (Array.isArray(field.relationTo)) {\n return {\n relationTo: relationship.relationTo,\n value:\n relationship.value && typeof relationship.value === 'object'\n ? relationship.value?.id\n : relationship.value,\n }\n }\n if (typeof relationship === 'object' && relationship !== null) {\n return relationship.id\n }\n return relationship\n })\n : undefined\n\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n } else if (Array.isArray(field.relationTo)) {\n if (\n data[field.name] &&\n typeof data[field.name] === 'object' &&\n 'relationTo' in data[field.name] &&\n 'value' in data[field.name]\n ) {\n const value =\n typeof data[field.name]?.value === 'object' &&\n data[field.name]?.value &&\n 'id' in data[field.name].value\n ? data[field.name].value.id\n : data[field.name].value\n const relationshipValue = {\n relationTo: data[field.name]?.relationTo,\n value,\n }\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n } else {\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n default: {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n\n // Add field to state\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n }\n } else if (fieldHasSubFields(field)) {\n // Handle field types that do not use names (row, etc)\n\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n\n await iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: field.localized || anyParentLocalized,\n data,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tabs') {\n const promises = field.tabs.map((tab) => {\n const isNamedTab = tabHasName(tab)\n\n return iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: tab.localized || anyParentLocalized,\n data: isNamedTab ? data?.[tab.name] || {} : data,\n fields: tab.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: isNamedTab ? `${path}${tab.name}.` : path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n })\n\n await Promise.all(promises)\n } else if (field.type === 'ui') {\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"addFieldStatePromise.js","names":["ObjectIdImport","fieldAffectsData","fieldHasSubFields","tabHasName","getFilterOptionsQuery","iterateFields","ObjectId","default","addFieldStatePromise","args","id","addErrorPathToParent","addErrorPathToParentArg","anyParentLocalized","collectionSlug","data","field","fieldIndex","filter","forceFullValue","fullData","includeSchema","omitParents","operation","passesCondition","path","preferences","req","skipConditionChecks","skipValidation","state","validate","fieldState","errorPaths","fieldSchema","undefined","initialValue","valid","value","validationResult","jsonError","type","name","JSON","parse","e","siblingData","errorPath","includes","push","errorMessage","arrayValue","Array","isArray","promises","rowMetadata","reduce","acc","row","i","rowPath","toHexString","fields","find","localized","parentPassesCondition","collapsedRowIDs","collapsed","admin","initCollapsed","Promise","all","length","disableFormData","rows","blocksValue","block","blocks","blockType","slug","blockField","blockName","filterOptions","relationTo","relation","query","user","hasMany","relationshipValue","map","relationship","tabs","tab","isNamedTab"],"sources":["../../../src/forms/buildStateFromSchema/addFieldStatePromise.ts"],"sourcesContent":["import type {\n Data,\n DocumentPreferences,\n Field,\n FormField,\n FormState,\n PayloadRequest,\n} from 'payload'\n\nimport ObjectIdImport from 'bson-objectid'\nimport { fieldAffectsData, fieldHasSubFields, tabHasName } from 'payload/shared'\n\nimport { getFilterOptionsQuery } from './getFilterOptionsQuery.js'\nimport { iterateFields } from './iterateFields.js'\n\nconst ObjectId = (ObjectIdImport.default ||\n ObjectIdImport) as unknown as typeof ObjectIdImport.default\n\nexport type AddFieldStatePromiseArgs = {\n addErrorPathToParent: (path: string) => void\n /**\n * if all parents are localized, then the field is localized\n */\n anyParentLocalized?: boolean\n collectionSlug?: string\n data: Data\n field: Field\n fieldIndex: number\n /**\n * You can use this to filter down to only `localized` fields that require translation (type: text, textarea, etc.). Another plugin might want to look for only `point` type fields to do some GIS function. With the filter function you can go in like a surgeon.\n */\n filter?: (args: AddFieldStatePromiseArgs) => boolean\n /**\n * Force the value of fields like arrays or blocks to be the full value instead of the length @default false\n */\n forceFullValue?: boolean\n fullData: Data\n id: number | string\n /**\n * Whether the field schema should be included in the state\n */\n includeSchema?: boolean\n /**\n * Whether to omit parent fields in the state. @default false\n */\n omitParents?: boolean\n operation: 'create' | 'update'\n passesCondition: boolean\n path: string\n\n preferences: DocumentPreferences\n /**\n * Req is used for validation and defaultValue calculation. If you don't need validation,\n * just create your own req and pass in the locale and the user\n */\n req: PayloadRequest\n /**\n * Whether to skip checking the field's condition. @default false\n */\n skipConditionChecks?: boolean\n /**\n * Whether to skip validating the field. @default false\n */\n skipValidation?: boolean\n state: FormState\n}\n\n/**\n * Flattens the fields schema and fields data.\n * The output is the field path (e.g. array.0.name) mapped to a FormField object.\n */\nexport const addFieldStatePromise = async (args: AddFieldStatePromiseArgs): Promise<void> => {\n const {\n id,\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized = false,\n collectionSlug,\n data,\n field,\n fieldIndex,\n filter,\n forceFullValue = false,\n fullData,\n includeSchema = false,\n omitParents = false,\n operation,\n passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks = false,\n skipValidation = false,\n state,\n } = args\n\n if (fieldAffectsData(field)) {\n const validate = field.validate\n\n const fieldState: FormField = {\n errorPaths: [],\n fieldSchema: includeSchema ? field : undefined,\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n\n let validationResult: string | true = true\n\n if (typeof validate === 'function' && !skipValidation && passesCondition) {\n let jsonError\n\n if (field.type === 'json' && typeof data[field.name] === 'string') {\n try {\n JSON.parse(data[field.name] as string)\n } catch (e) {\n jsonError = e\n }\n }\n\n validationResult = await validate(\n data?.[field.name] as never,\n {\n ...field,\n id,\n collectionSlug,\n data: fullData,\n jsonError,\n operation,\n preferences,\n req,\n siblingData: data,\n } as any,\n )\n }\n\n const addErrorPathToParent = (errorPath: string) => {\n if (typeof addErrorPathToParentArg === 'function') {\n addErrorPathToParentArg(errorPath)\n }\n\n if (!fieldState.errorPaths.includes(errorPath)) {\n fieldState.errorPaths.push(errorPath)\n fieldState.valid = false\n }\n }\n\n if (typeof validationResult === 'string') {\n fieldState.errorMessage = validationResult\n fieldState.valid = false\n addErrorPathToParent(`${path}${field.name}`)\n } else {\n fieldState.valid = true\n }\n\n switch (field.type) {\n case 'array': {\n const arrayValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = arrayValue.reduce(\n (acc, row, i) => {\n const rowPath = `${path}${field.name}.${i}.`\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? field.fields.find((field) => 'name' in field && field.name === 'id')\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? arrayValue : arrayValue.length\n fieldState.initialValue = forceFullValue ? arrayValue : arrayValue.length\n\n if (arrayValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'blocks': {\n const blocksValue = Array.isArray(data[field.name]) ? data[field.name] : []\n\n const { promises, rowMetadata } = blocksValue.reduce(\n (acc, row, i) => {\n const block = field.blocks.find((blockType) => blockType.slug === row.blockType)\n const rowPath = `${path}${field.name}.${i}.`\n\n if (block) {\n row.id = row?.id || new ObjectId().toHexString()\n\n if (!omitParents && (!filter || filter(args))) {\n state[`${rowPath}id`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'id',\n )\n : undefined,\n initialValue: row.id,\n valid: true,\n value: row.id,\n }\n\n state[`${rowPath}blockType`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockType',\n )\n : undefined,\n initialValue: row.blockType,\n valid: true,\n value: row.blockType,\n }\n\n state[`${rowPath}blockName`] = {\n fieldSchema: includeSchema\n ? block.fields.find(\n (blockField) => 'name' in blockField && blockField.name === 'blockName',\n )\n : undefined,\n initialValue: row.blockName,\n valid: true,\n value: row.blockName,\n }\n }\n\n acc.promises.push(\n iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: row,\n fields: block.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: rowPath,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n }),\n )\n\n const collapsedRowIDs = preferences?.fields?.[`${path}${field.name}`]?.collapsed\n\n acc.rowMetadata.push({\n id: row.id,\n blockType: row.blockType,\n collapsed:\n collapsedRowIDs === undefined\n ? field.admin.initCollapsed\n : collapsedRowIDs.includes(row.id),\n })\n }\n\n return acc\n },\n {\n promises: [],\n rowMetadata: [],\n },\n )\n\n await Promise.all(promises)\n\n // Add values to field state\n if (data[field.name] === null) {\n fieldState.value = null\n fieldState.initialValue = null\n } else {\n fieldState.value = forceFullValue ? blocksValue : blocksValue.length\n fieldState.initialValue = forceFullValue ? blocksValue : blocksValue.length\n\n if (blocksValue.length > 0) {\n fieldState.disableFormData = true\n }\n }\n\n fieldState.rows = rowMetadata\n\n // Add field to state\n if (!omitParents && (!filter || filter(args))) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n case 'group': {\n if (!filter || filter(args)) {\n fieldState.disableFormData = true\n state[`${path}${field.name}`] = fieldState\n }\n\n await iterateFields({\n id,\n addErrorPathToParent,\n anyParentLocalized: field.localized || anyParentLocalized,\n data: data?.[field.name] || {},\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: `${path}${field.name}.`,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n\n break\n }\n case 'upload':\n case 'relationship': {\n if (field.filterOptions) {\n if (typeof field.filterOptions === 'object') {\n if (typeof field.relationTo === 'string') {\n fieldState.filterOptions = {\n [field.relationTo]: field.filterOptions,\n }\n } else {\n fieldState.filterOptions = field.relationTo.reduce((acc, relation) => {\n acc[relation] = field.filterOptions\n return acc\n }, {})\n }\n }\n\n if (typeof field.filterOptions === 'function') {\n const query = await getFilterOptionsQuery(field.filterOptions, {\n id,\n data: fullData,\n relationTo: field.relationTo,\n siblingData: data,\n user: req.user,\n })\n\n fieldState.filterOptions = query\n }\n }\n\n if (field.hasMany) {\n const relationshipValue = Array.isArray(data[field.name])\n ? data[field.name].map((relationship) => {\n if (Array.isArray(field.relationTo)) {\n return {\n relationTo: relationship.relationTo,\n value:\n relationship.value && typeof relationship.value === 'object'\n ? relationship.value?.id\n : relationship.value,\n }\n }\n if (typeof relationship === 'object' && relationship !== null) {\n return relationship.id\n }\n return relationship\n })\n : undefined\n\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n } else if (Array.isArray(field.relationTo)) {\n if (\n data[field.name] &&\n typeof data[field.name] === 'object' &&\n 'relationTo' in data[field.name] &&\n 'value' in data[field.name]\n ) {\n const value =\n typeof data[field.name]?.value === 'object' &&\n data[field.name]?.value &&\n 'id' in data[field.name].value\n ? data[field.name].value.id\n : data[field.name].value\n const relationshipValue = {\n relationTo: data[field.name]?.relationTo,\n value,\n }\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n } else {\n const relationshipValue =\n data[field.name] && typeof data[field.name] === 'object' && 'id' in data[field.name]\n ? data[field.name].id\n : data[field.name]\n fieldState.value = relationshipValue\n fieldState.initialValue = relationshipValue\n }\n\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n\n default: {\n fieldState.value = data[field.name]\n fieldState.initialValue = data[field.name]\n\n // Add field to state\n if (!filter || filter(args)) {\n state[`${path}${field.name}`] = fieldState\n }\n\n break\n }\n }\n } else if (fieldHasSubFields(field)) {\n // Handle field types that do not use names (row, etc)\n\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n\n await iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: field.localized || anyParentLocalized,\n data,\n fields: field.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n } else if (field.type === 'tabs') {\n const promises = field.tabs.map((tab) => {\n const isNamedTab = tabHasName(tab)\n\n return iterateFields({\n id,\n // passthrough parent functionality\n addErrorPathToParent: addErrorPathToParentArg,\n anyParentLocalized: tab.localized || anyParentLocalized,\n data: isNamedTab ? data?.[tab.name] || {} : data,\n fields: tab.fields,\n filter,\n forceFullValue,\n fullData,\n includeSchema,\n omitParents,\n operation,\n parentPassesCondition: passesCondition,\n path: isNamedTab ? `${path}${tab.name}.` : path,\n preferences,\n req,\n skipConditionChecks,\n skipValidation,\n state,\n })\n })\n\n await Promise.all(promises)\n } else if (field.type === 'ui') {\n if (!filter || filter(args)) {\n state[`${path}_index-${fieldIndex}`] = {\n disableFormData: true,\n errorPaths: [],\n initialValue: undefined,\n passesCondition,\n valid: true,\n value: undefined,\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -19,7 +19,9 @@ export type BuildFormStateArgs = {
19
19
  id?: number | string;
20
20
  locale?: string;
21
21
  operation?: 'create' | 'update';
22
+ returnLockStatus?: boolean;
22
23
  schemaPath: string;
24
+ updateLastEdited?: boolean;
23
25
  };
24
26
  export declare const buildStateFromSchema: (args: Args) => Promise<FormState>;
25
27
  export { iterateFields };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/buildStateFromSchema/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,IAAI,WAAW,EACpB,SAAS,EACT,cAAc,EACf,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,WAAW,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;IACtC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC/B,WAAW,EAAE,mBAAmB,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,CAAC,EAAE,IAAI,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC/B,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,oBAAoB,SAAgB,IAAI,KAAG,OAAO,CAAC,SAAS,CAkCxE,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/buildStateFromSchema/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,mBAAmB,EACnB,KAAK,IAAI,WAAW,EACpB,SAAS,EACT,cAAc,EACf,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAElD,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,WAAW,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;IACtC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC/B,WAAW,EAAE,mBAAmB,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;IACnB,WAAW,CAAC,EAAE,IAAI,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,IAAI,CAAC,EAAE,IAAI,CAAA;IACX,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,eAAO,MAAM,oBAAoB,SAAgB,IAAI,KAAG,OAAO,CAAC,SAAS,CAkCxE,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["calculateDefaultValues","iterateFields","buildStateFromSchema","args","id","collectionSlug","data","fullData","fieldSchema","operation","preferences","req","state","dataWithDefaultValues","fields","locale","siblingData","user","addErrorPathToParent","parentPassesCondition","path"],"sources":["../../../src/forms/buildStateFromSchema/index.tsx"],"sourcesContent":["import type {\n Data,\n DocumentPreferences,\n Field as FieldSchema,\n FormState,\n PayloadRequest,\n} from 'payload'\n\nimport { calculateDefaultValues } from './calculateDefaultValues/index.js'\nimport { iterateFields } from './iterateFields.js'\n\ntype Args = {\n collectionSlug?: string\n data?: Data\n fieldSchema: FieldSchema[] | undefined\n id?: number | string\n operation?: 'create' | 'update'\n preferences: DocumentPreferences\n req: PayloadRequest\n siblingData?: Data\n}\n\nexport type BuildFormStateArgs = {\n collectionSlug?: string\n data?: Data\n docPreferences?: DocumentPreferences\n formState?: FormState\n globalSlug?: string\n id?: number | string\n locale?: string\n operation?: 'create' | 'update'\n schemaPath: string\n}\n\nexport const buildStateFromSchema = async (args: Args): Promise<FormState> => {\n const { id, collectionSlug, data: fullData = {}, fieldSchema, operation, preferences, req } = args\n\n if (fieldSchema) {\n const state: FormState = {}\n\n const dataWithDefaultValues = await calculateDefaultValues({\n id,\n data: fullData,\n fields: fieldSchema,\n locale: req.locale,\n siblingData: fullData,\n user: req.user,\n })\n\n await iterateFields({\n id,\n addErrorPathToParent: null,\n collectionSlug,\n data: dataWithDefaultValues,\n fields: fieldSchema,\n fullData,\n operation,\n parentPassesCondition: true,\n path: '',\n preferences,\n req,\n state,\n })\n\n return state\n }\n\n return {}\n}\n\nexport { iterateFields }\n"],"mappings":"AAQA,SAASA,sBAAsB,QAAQ;AACvC,SAASC,aAAa,QAAQ;AAyB9B,OAAO,MAAMC,oBAAA,GAAuB,MAAOC,IAAA;EACzC,MAAM;IAAEC,EAAE;IAAEC,cAAc;IAAEC,IAAA,EAAMC,QAAA,GAAW,CAAC,CAAC;IAAEC,WAAW;IAAEC,SAAS;IAAEC,WAAW;IAAEC;EAAG,CAAE,GAAGR,IAAA;EAE9F,IAAIK,WAAA,EAAa;IACf,MAAMI,KAAA,GAAmB,CAAC;IAE1B,MAAMC,qBAAA,GAAwB,MAAMb,sBAAA,CAAuB;MACzDI,EAAA;MACAE,IAAA,EAAMC,QAAA;MACNO,MAAA,EAAQN,WAAA;MACRO,MAAA,EAAQJ,GAAA,CAAII,MAAM;MAClBC,WAAA,EAAaT,QAAA;MACbU,IAAA,EAAMN,GAAA,CAAIM;IACZ;IAEA,MAAMhB,aAAA,CAAc;MAClBG,EAAA;MACAc,oBAAA,EAAsB;MACtBb,cAAA;MACAC,IAAA,EAAMO,qBAAA;MACNC,MAAA,EAAQN,WAAA;MACRD,QAAA;MACAE,SAAA;MACAU,qBAAA,EAAuB;MACvBC,IAAA,EAAM;MACNV,WAAA;MACAC,GAAA;MACAC;IACF;IAEA,OAAOA,KAAA;EACT;EAEA,OAAO,CAAC;AACV;AAEA,SAASX,aAAa","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["calculateDefaultValues","iterateFields","buildStateFromSchema","args","id","collectionSlug","data","fullData","fieldSchema","operation","preferences","req","state","dataWithDefaultValues","fields","locale","siblingData","user","addErrorPathToParent","parentPassesCondition","path"],"sources":["../../../src/forms/buildStateFromSchema/index.tsx"],"sourcesContent":["import type {\n Data,\n DocumentPreferences,\n Field as FieldSchema,\n FormState,\n PayloadRequest,\n} from 'payload'\n\nimport { calculateDefaultValues } from './calculateDefaultValues/index.js'\nimport { iterateFields } from './iterateFields.js'\n\ntype Args = {\n collectionSlug?: string\n data?: Data\n fieldSchema: FieldSchema[] | undefined\n id?: number | string\n operation?: 'create' | 'update'\n preferences: DocumentPreferences\n req: PayloadRequest\n siblingData?: Data\n}\n\nexport type BuildFormStateArgs = {\n collectionSlug?: string\n data?: Data\n docPreferences?: DocumentPreferences\n formState?: FormState\n globalSlug?: string\n id?: number | string\n locale?: string\n operation?: 'create' | 'update'\n returnLockStatus?: boolean\n schemaPath: string\n updateLastEdited?: boolean\n}\n\nexport const buildStateFromSchema = async (args: Args): Promise<FormState> => {\n const { id, collectionSlug, data: fullData = {}, fieldSchema, operation, preferences, req } = args\n\n if (fieldSchema) {\n const state: FormState = {}\n\n const dataWithDefaultValues = await calculateDefaultValues({\n id,\n data: fullData,\n fields: fieldSchema,\n locale: req.locale,\n siblingData: fullData,\n user: req.user,\n })\n\n await iterateFields({\n id,\n addErrorPathToParent: null,\n collectionSlug,\n data: dataWithDefaultValues,\n fields: fieldSchema,\n fullData,\n operation,\n parentPassesCondition: true,\n path: '',\n preferences,\n req,\n state,\n })\n\n return state\n }\n\n return {}\n}\n\nexport { iterateFields }\n"],"mappings":"AAQA,SAASA,sBAAsB,QAAQ;AACvC,SAASC,aAAa,QAAQ;AA2B9B,OAAO,MAAMC,oBAAA,GAAuB,MAAOC,IAAA;EACzC,MAAM;IAAEC,EAAE;IAAEC,cAAc;IAAEC,IAAA,EAAMC,QAAA,GAAW,CAAC,CAAC;IAAEC,WAAW;IAAEC,SAAS;IAAEC,WAAW;IAAEC;EAAG,CAAE,GAAGR,IAAA;EAE9F,IAAIK,WAAA,EAAa;IACf,MAAMI,KAAA,GAAmB,CAAC;IAE1B,MAAMC,qBAAA,GAAwB,MAAMb,sBAAA,CAAuB;MACzDI,EAAA;MACAE,IAAA,EAAMC,QAAA;MACNO,MAAA,EAAQN,WAAA;MACRO,MAAA,EAAQJ,GAAA,CAAII,MAAM;MAClBC,WAAA,EAAaT,QAAA;MACbU,IAAA,EAAMN,GAAA,CAAIM;IACZ;IAEA,MAAMhB,aAAA,CAAc;MAClBG,EAAA;MACAc,oBAAA,EAAsB;MACtBb,cAAA;MACAC,IAAA,EAAMO,qBAAA;MACNC,MAAA,EAAQN,WAAA;MACRD,QAAA;MACAE,SAAA;MACAU,qBAAA,EAAuB;MACvBC,IAAA,EAAM;MACNV,WAAA;MACAC,GAAA;MACAC;IACF;IAEA,OAAOA,KAAA;EACT;EAEA,OAAO,CAAC;AACV;AAEA,SAASX,aAAa","ignoreList":[]}