@payloadcms/ui 3.0.0-beta.78 → 3.0.0-beta.79

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 (543) hide show
  1. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  2. package/dist/elements/AppHeader/index.js +5 -2
  3. package/dist/elements/AppHeader/index.js.map +1 -1
  4. package/dist/elements/Autosave/index.d.ts.map +1 -1
  5. package/dist/elements/Autosave/index.js +1 -1
  6. package/dist/elements/Autosave/index.js.map +1 -1
  7. package/dist/elements/ColumnSelector/index.d.ts +1 -1
  8. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  9. package/dist/elements/ColumnSelector/index.js +2 -2
  10. package/dist/elements/ColumnSelector/index.js.map +1 -1
  11. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  12. package/dist/elements/DeleteDocument/index.js +1 -1
  13. package/dist/elements/DeleteDocument/index.js.map +1 -1
  14. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  15. package/dist/elements/DeleteMany/index.js +1 -1
  16. package/dist/elements/DeleteMany/index.js.map +1 -1
  17. package/dist/elements/DocumentControls/index.d.ts +10 -10
  18. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  19. package/dist/elements/DocumentControls/index.js +11 -13
  20. package/dist/elements/DocumentControls/index.js.map +1 -1
  21. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  22. package/dist/elements/DocumentDrawer/DrawerContent.js +6 -5
  23. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  24. package/dist/elements/DocumentDrawer/types.d.ts +10 -10
  25. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  26. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  27. package/dist/elements/DocumentFields/index.d.ts +9 -9
  28. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  29. package/dist/elements/DocumentFields/index.js +6 -5
  30. package/dist/elements/DocumentFields/index.js.map +1 -1
  31. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +6 -6
  32. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  33. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  34. package/dist/elements/Drawer/types.d.ts +7 -7
  35. package/dist/elements/Drawer/types.d.ts.map +1 -1
  36. package/dist/elements/Drawer/types.js.map +1 -1
  37. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  38. package/dist/elements/DuplicateDocument/index.js +1 -2
  39. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  40. package/dist/elements/EditMany/index.d.ts +3 -3
  41. package/dist/elements/EditMany/index.d.ts.map +1 -1
  42. package/dist/elements/EditMany/index.js +4 -4
  43. package/dist/elements/EditMany/index.js.map +1 -1
  44. package/dist/elements/FieldSelect/index.d.ts +4 -4
  45. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  46. package/dist/elements/FieldSelect/index.js +32 -21
  47. package/dist/elements/FieldSelect/index.js.map +1 -1
  48. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts +2 -2
  49. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  50. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +4 -3
  51. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  52. package/dist/elements/ListControls/index.d.ts +2 -2
  53. package/dist/elements/ListControls/index.d.ts.map +1 -1
  54. package/dist/elements/ListControls/index.js +8 -8
  55. package/dist/elements/ListControls/index.js.map +1 -1
  56. package/dist/elements/ListDrawer/DrawerContent.js +6 -5
  57. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  58. package/dist/elements/ListDrawer/index.d.ts.map +1 -1
  59. package/dist/elements/ListDrawer/index.js +1 -1
  60. package/dist/elements/ListDrawer/index.js.map +1 -1
  61. package/dist/elements/ListDrawer/types.d.ts +6 -6
  62. package/dist/elements/ListDrawer/types.d.ts.map +1 -1
  63. package/dist/elements/ListDrawer/types.js.map +1 -1
  64. package/dist/elements/Localizer/index.js +1 -1
  65. package/dist/elements/Localizer/index.js.map +1 -1
  66. package/dist/elements/Logout/index.d.ts.map +1 -1
  67. package/dist/elements/Logout/index.js +6 -6
  68. package/dist/elements/Logout/index.js.map +1 -1
  69. package/dist/elements/Popup/index.d.ts +1 -1
  70. package/dist/elements/Popup/index.d.ts.map +1 -1
  71. package/dist/elements/Popup/index.js.map +1 -1
  72. package/dist/elements/PreviewButton/index.d.ts +2 -1
  73. package/dist/elements/PreviewButton/index.d.ts.map +1 -1
  74. package/dist/elements/PreviewButton/index.js +6 -1
  75. package/dist/elements/PreviewButton/index.js.map +1 -1
  76. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  77. package/dist/elements/PreviewButton/usePreviewURL.js +1 -1
  78. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  79. package/dist/elements/PublishButton/index.d.ts +2 -1
  80. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  81. package/dist/elements/PublishButton/index.js +4 -1
  82. package/dist/elements/PublishButton/index.js.map +1 -1
  83. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  84. package/dist/elements/PublishMany/index.js +1 -1
  85. package/dist/elements/PublishMany/index.js.map +1 -1
  86. package/dist/elements/ReactSelect/Control/index.d.ts.map +1 -1
  87. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  88. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  89. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  90. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  91. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  92. package/dist/elements/ReactSelect/SingleValue/index.d.ts.map +1 -1
  93. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  94. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  95. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  96. package/dist/elements/SaveButton/index.d.ts +2 -1
  97. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  98. package/dist/elements/SaveButton/index.js +4 -1
  99. package/dist/elements/SaveButton/index.js.map +1 -1
  100. package/dist/elements/SaveDraftButton/index.d.ts +2 -1
  101. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  102. package/dist/elements/SaveDraftButton/index.js +5 -2
  103. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  104. package/dist/elements/Status/index.d.ts.map +1 -1
  105. package/dist/elements/Status/index.js +1 -1
  106. package/dist/elements/Status/index.js.map +1 -1
  107. package/dist/elements/StayLoggedIn/index.js +1 -1
  108. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  109. package/dist/elements/StepNav/index.d.ts +2 -2
  110. package/dist/elements/StepNav/index.d.ts.map +1 -1
  111. package/dist/elements/StepNav/index.js +11 -8
  112. package/dist/elements/StepNav/index.js.map +1 -1
  113. package/dist/elements/StepNav/types.d.ts +2 -2
  114. package/dist/elements/StepNav/types.js.map +1 -1
  115. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts +2 -3
  116. package/dist/elements/Table/DefaultCell/fields/Array/index.d.ts.map +1 -1
  117. package/dist/elements/Table/DefaultCell/fields/Array/index.js +1 -1
  118. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  119. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -4
  120. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  121. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -1
  122. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  123. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts +2 -2
  124. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.d.ts.map +1 -1
  125. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  126. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts +3 -3
  127. package/dist/elements/Table/DefaultCell/fields/Code/index.d.ts.map +1 -1
  128. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  129. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts +2 -2
  130. package/dist/elements/Table/DefaultCell/fields/Date/index.d.ts.map +1 -1
  131. package/dist/elements/Table/DefaultCell/fields/Date/index.js +4 -4
  132. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  133. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts +2 -2
  134. package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
  135. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  136. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts +2 -2
  137. package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
  138. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  139. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -4
  140. package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
  141. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +6 -8
  142. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  143. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts +2 -3
  144. package/dist/elements/Table/DefaultCell/fields/Select/index.d.ts.map +1 -1
  145. package/dist/elements/Table/DefaultCell/fields/Select/index.js +1 -1
  146. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  147. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts +2 -2
  148. package/dist/elements/Table/DefaultCell/fields/Textarea/index.d.ts.map +1 -1
  149. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  150. package/dist/elements/Table/DefaultCell/fields/index.d.ts +4 -4
  151. package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
  152. package/dist/elements/Table/DefaultCell/index.js +16 -12
  153. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  154. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  155. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  156. package/dist/elements/Table/RelationshipProvider/index.js +1 -2
  157. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  158. package/dist/elements/Table/TableCellProvider/index.d.ts +6 -6
  159. package/dist/elements/Table/TableCellProvider/index.d.ts.map +1 -1
  160. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  161. package/dist/elements/Table/index.d.ts +11 -14
  162. package/dist/elements/Table/index.d.ts.map +1 -1
  163. package/dist/elements/Table/index.js +7 -1
  164. package/dist/elements/Table/index.js.map +1 -1
  165. package/dist/elements/TableColumns/buildColumnState.d.ts +2 -2
  166. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  167. package/dist/elements/TableColumns/buildColumnState.js +30 -32
  168. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  169. package/dist/elements/TableColumns/filterFields.d.ts +2 -2
  170. package/dist/elements/TableColumns/filterFields.d.ts.map +1 -1
  171. package/dist/elements/TableColumns/filterFields.js +8 -11
  172. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  173. package/dist/elements/TableColumns/getInitialColumns.d.ts +2 -3
  174. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -1
  175. package/dist/elements/TableColumns/getInitialColumns.js +9 -11
  176. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
  177. package/dist/elements/TableColumns/index.d.ts +6 -6
  178. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  179. package/dist/elements/TableColumns/index.js +8 -11
  180. package/dist/elements/TableColumns/index.js.map +1 -1
  181. package/dist/elements/ThumbnailCard/index.d.ts +2 -2
  182. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  183. package/dist/elements/ThumbnailCard/index.js +1 -1
  184. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  185. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  186. package/dist/elements/UnpublishMany/index.js +2 -2
  187. package/dist/elements/UnpublishMany/index.js.map +1 -1
  188. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  189. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +5 -5
  190. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  191. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts +3 -3
  192. package/dist/elements/WhereBuilder/Condition/Relationship/types.d.ts.map +1 -1
  193. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  194. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +1 -2
  195. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  196. package/dist/elements/WhereBuilder/Condition/Text/index.js +1 -2
  197. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  198. package/dist/elements/WhereBuilder/Condition/index.d.ts +9 -9
  199. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  200. package/dist/elements/WhereBuilder/Condition/index.js +25 -20
  201. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  202. package/dist/elements/WhereBuilder/index.js +9 -8
  203. package/dist/elements/WhereBuilder/index.js.map +1 -1
  204. package/dist/elements/WhereBuilder/reduceClientFields.d.ts +15 -0
  205. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -0
  206. package/dist/elements/WhereBuilder/{reduceFieldMap.js → reduceClientFields.js} +28 -26
  207. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -0
  208. package/dist/elements/WhereBuilder/types.d.ts +6 -5
  209. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  210. package/dist/elements/WhereBuilder/types.js.map +1 -1
  211. package/dist/exports/client/{CodeEditor-UPOVAXRP.js → CodeEditor-MODTAQNB.js} +1 -1
  212. package/dist/exports/client/{CodeEditor-UPOVAXRP.js.map → CodeEditor-MODTAQNB.js.map} +1 -1
  213. package/dist/exports/client/{DatePicker-XJHHMZP7.js → DatePicker-QKRYICNS.js} +2 -2
  214. package/dist/exports/client/chunk-HR5HEGNB.js +30 -0
  215. package/dist/exports/client/{chunk-TIH7OFW3.js.map → chunk-HR5HEGNB.js.map} +4 -4
  216. package/dist/exports/client/index.d.ts +9 -2
  217. package/dist/exports/client/index.d.ts.map +1 -1
  218. package/dist/exports/client/index.js +27 -27
  219. package/dist/exports/client/index.js.map +4 -4
  220. package/dist/exports/shared/index.d.ts +4 -1
  221. package/dist/exports/shared/index.d.ts.map +1 -1
  222. package/dist/exports/shared/index.js +2 -2
  223. package/dist/exports/shared/index.js.map +4 -4
  224. package/dist/fields/Array/ArrayRow.d.ts +21 -21
  225. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  226. package/dist/fields/Array/ArrayRow.js +3 -3
  227. package/dist/fields/Array/ArrayRow.js.map +1 -1
  228. package/dist/fields/Array/index.d.ts.map +1 -1
  229. package/dist/fields/Array/index.js +11 -9
  230. package/dist/fields/Array/index.js.map +1 -1
  231. package/dist/fields/Blocks/BlockRow.d.ts +3 -3
  232. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  233. package/dist/fields/Blocks/BlockRow.js +9 -6
  234. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  235. package/dist/fields/Blocks/BlocksDrawer/index.d.ts +6 -6
  236. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  237. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  238. package/dist/fields/Blocks/RowActions.d.ts +13 -13
  239. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  240. package/dist/fields/Blocks/RowActions.js.map +1 -1
  241. package/dist/fields/Blocks/index.d.ts +2 -2
  242. package/dist/fields/Blocks/index.d.ts.map +1 -1
  243. package/dist/fields/Blocks/index.js +10 -6
  244. package/dist/fields/Blocks/index.js.map +1 -1
  245. package/dist/fields/Checkbox/Input.d.ts +15 -15
  246. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  247. package/dist/fields/Checkbox/Input.js +9 -4
  248. package/dist/fields/Checkbox/Input.js.map +1 -1
  249. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  250. package/dist/fields/Checkbox/index.js +9 -6
  251. package/dist/fields/Checkbox/index.js.map +1 -1
  252. package/dist/fields/Code/index.d.ts.map +1 -1
  253. package/dist/fields/Code/index.js +14 -6
  254. package/dist/fields/Code/index.js.map +1 -1
  255. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  256. package/dist/fields/Collapsible/index.js +7 -5
  257. package/dist/fields/Collapsible/index.js.map +1 -1
  258. package/dist/fields/ConfirmPassword/index.d.ts +2 -2
  259. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  260. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  261. package/dist/fields/DateTime/index.d.ts.map +1 -1
  262. package/dist/fields/DateTime/index.js +14 -6
  263. package/dist/fields/DateTime/index.js.map +1 -1
  264. package/dist/fields/Email/index.d.ts.map +1 -1
  265. package/dist/fields/Email/index.js +15 -6
  266. package/dist/fields/Email/index.js.map +1 -1
  267. package/dist/fields/FieldDescription/index.d.ts.map +1 -1
  268. package/dist/fields/FieldDescription/index.js +8 -4
  269. package/dist/fields/FieldDescription/index.js.map +1 -1
  270. package/dist/fields/FieldError/index.d.ts.map +1 -1
  271. package/dist/fields/FieldError/index.js +8 -4
  272. package/dist/fields/FieldError/index.js.map +1 -1
  273. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  274. package/dist/fields/FieldLabel/index.js +8 -4
  275. package/dist/fields/FieldLabel/index.js.map +1 -1
  276. package/dist/fields/Group/index.d.ts.map +1 -1
  277. package/dist/fields/Group/index.js +63 -56
  278. package/dist/fields/Group/index.js.map +1 -1
  279. package/dist/fields/Hidden/index.d.ts.map +1 -1
  280. package/dist/fields/Hidden/index.js +1 -1
  281. package/dist/fields/Hidden/index.js.map +1 -1
  282. package/dist/fields/JSON/index.d.ts.map +1 -1
  283. package/dist/fields/JSON/index.js +14 -6
  284. package/dist/fields/JSON/index.js.map +1 -1
  285. package/dist/fields/Number/Input.d.ts +2 -0
  286. package/dist/fields/Number/Input.d.ts.map +1 -0
  287. package/dist/fields/Number/Input.js +2 -0
  288. package/dist/fields/Number/Input.js.map +1 -0
  289. package/dist/fields/Number/index.d.ts.map +1 -1
  290. package/dist/fields/Number/index.js +14 -6
  291. package/dist/fields/Number/index.js.map +1 -1
  292. package/dist/fields/Password/index.d.ts +1 -24
  293. package/dist/fields/Password/index.d.ts.map +1 -1
  294. package/dist/fields/Password/index.js +8 -7
  295. package/dist/fields/Password/index.js.map +1 -1
  296. package/dist/fields/Password/input.d.ts.map +1 -1
  297. package/dist/fields/Password/input.js +18 -8
  298. package/dist/fields/Password/input.js.map +1 -1
  299. package/dist/fields/Password/types.d.ts +32 -23
  300. package/dist/fields/Password/types.d.ts.map +1 -1
  301. package/dist/fields/Password/types.js.map +1 -1
  302. package/dist/fields/Point/index.d.ts.map +1 -1
  303. package/dist/fields/Point/index.js +23 -9
  304. package/dist/fields/Point/index.js.map +1 -1
  305. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  306. package/dist/fields/RadioGroup/index.js +7 -4
  307. package/dist/fields/RadioGroup/index.js.map +1 -1
  308. package/dist/fields/Relationship/AddNew/useRelatedCollections.js +1 -1
  309. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  310. package/dist/fields/Relationship/index.d.ts.map +1 -1
  311. package/dist/fields/Relationship/index.js +8 -5
  312. package/dist/fields/Relationship/index.js.map +1 -1
  313. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  314. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  315. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  316. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  317. package/dist/fields/RichText/index.d.ts +2 -2
  318. package/dist/fields/RichText/index.d.ts.map +1 -1
  319. package/dist/fields/RichText/index.js.map +1 -1
  320. package/dist/fields/Row/index.d.ts.map +1 -1
  321. package/dist/fields/Row/index.js +6 -8
  322. package/dist/fields/Row/index.js.map +1 -1
  323. package/dist/fields/Select/Input.d.ts +26 -6
  324. package/dist/fields/Select/Input.d.ts.map +1 -1
  325. package/dist/fields/Select/Input.js +13 -6
  326. package/dist/fields/Select/Input.js.map +1 -1
  327. package/dist/fields/Select/index.d.ts.map +1 -1
  328. package/dist/fields/Select/index.js +8 -9
  329. package/dist/fields/Select/index.js.map +1 -1
  330. package/dist/fields/Tabs/Tab/index.d.ts +5 -5
  331. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  332. package/dist/fields/Tabs/Tab/index.js +4 -5
  333. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  334. package/dist/fields/Tabs/index.d.ts.map +1 -1
  335. package/dist/fields/Tabs/index.js +10 -9
  336. package/dist/fields/Tabs/index.js.map +1 -1
  337. package/dist/fields/Text/Input.d.ts.map +1 -1
  338. package/dist/fields/Text/Input.js +13 -6
  339. package/dist/fields/Text/Input.js.map +1 -1
  340. package/dist/fields/Text/index.js +9 -10
  341. package/dist/fields/Text/index.js.map +1 -1
  342. package/dist/fields/Text/types.d.ts +32 -13
  343. package/dist/fields/Text/types.d.ts.map +1 -1
  344. package/dist/fields/Text/types.js.map +1 -1
  345. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  346. package/dist/fields/Textarea/Input.js +13 -6
  347. package/dist/fields/Textarea/Input.js.map +1 -1
  348. package/dist/fields/Textarea/index.js +9 -10
  349. package/dist/fields/Textarea/index.js.map +1 -1
  350. package/dist/fields/Textarea/types.d.ts +28 -6
  351. package/dist/fields/Textarea/types.d.ts.map +1 -1
  352. package/dist/fields/Textarea/types.js.map +1 -1
  353. package/dist/fields/Upload/Input.d.ts +25 -12
  354. package/dist/fields/Upload/Input.d.ts.map +1 -1
  355. package/dist/fields/Upload/Input.js +5 -4
  356. package/dist/fields/Upload/Input.js.map +1 -1
  357. package/dist/fields/Upload/index.d.ts.map +1 -1
  358. package/dist/fields/Upload/index.js +7 -10
  359. package/dist/fields/Upload/index.js.map +1 -1
  360. package/dist/fields/index.d.ts +5 -1
  361. package/dist/fields/index.d.ts.map +1 -1
  362. package/dist/fields/index.js.map +1 -1
  363. package/dist/forms/FieldPropsProvider/index.d.ts +11 -11
  364. package/dist/forms/FieldPropsProvider/index.d.ts.map +1 -1
  365. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  366. package/dist/forms/Form/createNestedClientFieldPath.d.ts +3 -0
  367. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -0
  368. package/dist/forms/Form/{createNestedFieldPath.js → createNestedClientFieldPath.js} +2 -13
  369. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -0
  370. package/dist/forms/Form/index.js +1 -1
  371. package/dist/forms/Form/index.js.map +1 -1
  372. package/dist/forms/Form/types.d.ts +3 -3
  373. package/dist/forms/Form/types.d.ts.map +1 -1
  374. package/dist/forms/Form/types.js.map +1 -1
  375. package/dist/forms/NullifyField/index.d.ts +3 -3
  376. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  377. package/dist/forms/NullifyField/index.js +5 -15
  378. package/dist/forms/NullifyField/index.js.map +1 -1
  379. package/dist/forms/RenderFields/RenderField.d.ts +12 -15
  380. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  381. package/dist/forms/RenderFields/RenderField.js +35 -16
  382. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  383. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  384. package/dist/forms/RenderFields/index.js +7 -14
  385. package/dist/forms/RenderFields/index.js.map +1 -1
  386. package/dist/forms/RenderFields/types.d.ts +11 -11
  387. package/dist/forms/RenderFields/types.d.ts.map +1 -1
  388. package/dist/forms/RenderFields/types.js.map +1 -1
  389. package/dist/forms/RowLabel/Context/index.d.ts +4 -4
  390. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  391. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  392. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  393. package/dist/forms/RowLabel/index.js +8 -2
  394. package/dist/forms/RowLabel/index.js.map +1 -1
  395. package/dist/forms/RowLabel/types.d.ts +7 -8
  396. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  397. package/dist/forms/RowLabel/types.js.map +1 -1
  398. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts +2 -2
  399. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  400. package/dist/forms/WatchChildErrors/buildPathSegments.js +11 -10
  401. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  402. package/dist/forms/WatchChildErrors/index.d.ts +2 -2
  403. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  404. package/dist/forms/WatchChildErrors/index.js +3 -3
  405. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  406. package/dist/forms/useField/index.js +1 -1
  407. package/dist/forms/useField/index.js.map +1 -1
  408. package/dist/forms/withCondition/WatchCondition.d.ts +1 -1
  409. package/dist/forms/withCondition/WatchCondition.d.ts.map +1 -1
  410. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  411. package/dist/graphics/Account/index.d.ts.map +1 -1
  412. package/dist/graphics/Account/index.js +14 -8
  413. package/dist/graphics/Account/index.js.map +1 -1
  414. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  415. package/dist/hooks/useDelayedRender.js.map +1 -1
  416. package/dist/hooks/useUseAsTitle.d.ts +2 -2
  417. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  418. package/dist/hooks/useUseAsTitle.js +3 -3
  419. package/dist/hooks/useUseAsTitle.js.map +1 -1
  420. package/dist/providers/Actions/SetViewActions/index.d.ts +3 -3
  421. package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
  422. package/dist/providers/Actions/SetViewActions/index.js +1 -1
  423. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  424. package/dist/providers/Actions/index.d.ts +3 -3
  425. package/dist/providers/Actions/index.d.ts.map +1 -1
  426. package/dist/providers/Actions/index.js +2 -2
  427. package/dist/providers/Actions/index.js.map +1 -1
  428. package/dist/providers/Auth/index.js +1 -1
  429. package/dist/providers/Auth/index.js.map +1 -1
  430. package/dist/providers/Config/RenderComponent.d.ts +12 -0
  431. package/dist/providers/Config/RenderComponent.d.ts.map +1 -0
  432. package/dist/providers/Config/RenderComponent.js +69 -0
  433. package/dist/providers/Config/RenderComponent.js.map +1 -0
  434. package/dist/providers/Config/createClientConfig/collections.d.ts +24 -0
  435. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -0
  436. package/dist/providers/Config/createClientConfig/collections.js +173 -0
  437. package/dist/providers/Config/createClientConfig/collections.js.map +1 -0
  438. package/dist/providers/Config/createClientConfig/fields.d.ts +22 -0
  439. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -0
  440. package/dist/providers/Config/createClientConfig/fields.js +299 -0
  441. package/dist/providers/Config/createClientConfig/fields.js.map +1 -0
  442. package/dist/providers/Config/createClientConfig/getComponent.d.ts +11 -0
  443. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -0
  444. package/dist/providers/Config/createClientConfig/getComponent.js +29 -0
  445. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -0
  446. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts +11 -0
  447. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -0
  448. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +86 -0
  449. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -0
  450. package/dist/providers/Config/createClientConfig/globals.d.ts +22 -0
  451. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -0
  452. package/dist/providers/Config/createClientConfig/globals.js +103 -0
  453. package/dist/providers/Config/createClientConfig/globals.js.map +1 -0
  454. package/dist/providers/Config/createClientConfig/index.d.ts +21 -0
  455. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -0
  456. package/dist/providers/Config/createClientConfig/index.js +98 -0
  457. package/dist/providers/Config/createClientConfig/index.js.map +1 -0
  458. package/dist/providers/Config/index.d.ts +10 -3
  459. package/dist/providers/Config/index.d.ts.map +1 -1
  460. package/dist/providers/Config/index.js +17 -3
  461. package/dist/providers/Config/index.js.map +1 -1
  462. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  463. package/dist/providers/DocumentInfo/index.js +1 -1
  464. package/dist/providers/DocumentInfo/index.js.map +1 -1
  465. package/dist/providers/FieldComponents/index.d.ts +4 -3
  466. package/dist/providers/FieldComponents/index.d.ts.map +1 -1
  467. package/dist/providers/FieldComponents/index.js +2 -3
  468. package/dist/providers/FieldComponents/index.js.map +1 -1
  469. package/dist/providers/ListInfo/index.d.ts +12 -12
  470. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  471. package/dist/providers/ListInfo/index.js.map +1 -1
  472. package/dist/providers/Locale/index.d.ts.map +1 -1
  473. package/dist/providers/Locale/index.js +1 -1
  474. package/dist/providers/Locale/index.js.map +1 -1
  475. package/dist/providers/Preferences/index.js +1 -1
  476. package/dist/providers/Preferences/index.js.map +1 -1
  477. package/dist/providers/Root/index.d.ts +0 -2
  478. package/dist/providers/Root/index.d.ts.map +1 -1
  479. package/dist/providers/Root/index.js +46 -48
  480. package/dist/providers/Root/index.js.map +1 -1
  481. package/dist/styles.css +1 -1
  482. package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
  483. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -0
  484. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  485. package/dist/utilities/buildFormState.d.ts.map +1 -1
  486. package/dist/utilities/buildFormState.js +2 -4
  487. package/dist/utilities/buildFormState.js.map +1 -1
  488. package/dist/utilities/flattenFieldMap.d.ts +2 -2
  489. package/dist/utilities/flattenFieldMap.d.ts.map +1 -1
  490. package/dist/utilities/flattenFieldMap.js +8 -8
  491. package/dist/utilities/flattenFieldMap.js.map +1 -1
  492. package/dist/utilities/groupNavItems.d.ts +3 -3
  493. package/dist/utilities/groupNavItems.d.ts.map +1 -1
  494. package/dist/utilities/groupNavItems.js.map +1 -1
  495. package/package.json +11 -5
  496. package/dist/elements/RenderCustomClientComponent/index.d.ts +0 -8
  497. package/dist/elements/RenderCustomClientComponent/index.d.ts.map +0 -1
  498. package/dist/elements/RenderCustomClientComponent/index.js +0 -19
  499. package/dist/elements/RenderCustomClientComponent/index.js.map +0 -1
  500. package/dist/elements/RenderCustomComponent/index.d.ts +0 -17
  501. package/dist/elements/RenderCustomComponent/index.d.ts.map +0 -1
  502. package/dist/elements/RenderCustomComponent/index.js +0 -26
  503. package/dist/elements/RenderCustomComponent/index.js.map +0 -1
  504. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts +0 -14
  505. package/dist/elements/WhereBuilder/reduceFieldMap.d.ts.map +0 -1
  506. package/dist/elements/WhereBuilder/reduceFieldMap.js.map +0 -1
  507. package/dist/exports/client/chunk-TIH7OFW3.js +0 -30
  508. package/dist/forms/Form/createNestedFieldPath.d.ts +0 -4
  509. package/dist/forms/Form/createNestedFieldPath.d.ts.map +0 -1
  510. package/dist/forms/Form/createNestedFieldPath.js.map +0 -1
  511. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts +0 -9
  512. package/dist/providers/ComponentMap/buildComponentMap/actions.d.ts.map +0 -1
  513. package/dist/providers/ComponentMap/buildComponentMap/actions.js +0 -45
  514. package/dist/providers/ComponentMap/buildComponentMap/actions.js.map +0 -1
  515. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts +0 -18
  516. package/dist/providers/ComponentMap/buildComponentMap/collections.d.ts.map +0 -1
  517. package/dist/providers/ComponentMap/buildComponentMap/collections.js +0 -118
  518. package/dist/providers/ComponentMap/buildComponentMap/collections.js.map +0 -1
  519. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts +0 -18
  520. package/dist/providers/ComponentMap/buildComponentMap/fields.d.ts.map +0 -1
  521. package/dist/providers/ComponentMap/buildComponentMap/fields.js +0 -703
  522. package/dist/providers/ComponentMap/buildComponentMap/fields.js.map +0 -1
  523. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts +0 -19
  524. package/dist/providers/ComponentMap/buildComponentMap/globals.d.ts.map +0 -1
  525. package/dist/providers/ComponentMap/buildComponentMap/globals.js +0 -81
  526. package/dist/providers/ComponentMap/buildComponentMap/globals.js.map +0 -1
  527. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts +0 -16
  528. package/dist/providers/ComponentMap/buildComponentMap/index.d.ts.map +0 -1
  529. package/dist/providers/ComponentMap/buildComponentMap/index.js +0 -79
  530. package/dist/providers/ComponentMap/buildComponentMap/index.js.map +0 -1
  531. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts +0 -39
  532. package/dist/providers/ComponentMap/buildComponentMap/types.d.ts.map +0 -1
  533. package/dist/providers/ComponentMap/buildComponentMap/types.js +0 -3
  534. package/dist/providers/ComponentMap/buildComponentMap/types.js.map +0 -1
  535. package/dist/providers/ComponentMap/index.d.ts +0 -25
  536. package/dist/providers/ComponentMap/index.d.ts.map +0 -1
  537. package/dist/providers/ComponentMap/index.js +0 -53
  538. package/dist/providers/ComponentMap/index.js.map +0 -1
  539. package/dist/utilities/buildComponentMap.d.ts +0 -4
  540. package/dist/utilities/buildComponentMap.d.ts.map +0 -1
  541. package/dist/utilities/buildComponentMap.js +0 -4
  542. package/dist/utilities/buildComponentMap.js.map +0 -1
  543. /package/dist/exports/client/{DatePicker-XJHHMZP7.js.map → DatePicker-QKRYICNS.js.map} +0 -0
@@ -7,7 +7,7 @@ import { RenderField } from './RenderField.js';
7
7
  import './index.scss';
8
8
  const baseClass = 'render-fields';
9
9
  export const RenderFields = (props)=>{
10
- const { className, fieldMap, forceRender, indexPath, margins, path, permissions, schemaPath } = props;
10
+ const { className, fields, forceRender, indexPath, margins, path, permissions, schemaPath } = props;
11
11
  const { i18n } = useTranslation();
12
12
  const [hasRendered, setHasRendered] = React.useState(Boolean(forceRender));
13
13
  const [intersectionRef, entry] = useIntersect({
@@ -24,14 +24,14 @@ export const RenderFields = (props)=>{
24
24
  shouldRender,
25
25
  hasRendered
26
26
  ]);
27
- if (!fieldMap || Array.isArray(fieldMap) && fieldMap.length === 0) {
27
+ if (!fields || Array.isArray(fields) && fields.length === 0) {
28
28
  return null;
29
29
  }
30
30
  if (!i18n) {
31
31
  console.error('Need to implement i18n when calling RenderFields') // eslint-disable-line no-console
32
32
  ;
33
33
  }
34
- if (fieldMap) {
34
+ if (fields) {
35
35
  return /*#__PURE__*/ _jsx("div", {
36
36
  className: [
37
37
  baseClass,
@@ -40,27 +40,20 @@ export const RenderFields = (props)=>{
40
40
  margins === false && `${baseClass}--margins-none`
41
41
  ].filter(Boolean).join(' '),
42
42
  ref: intersectionRef,
43
- children: hasRendered && fieldMap?.map((f, fieldIndex)=>{
44
- const { type, CustomField, custom, disabled, fieldComponentProps, fieldComponentProps: { readOnly }, isHidden } = f;
43
+ children: hasRendered && fields?.map((field, fieldIndex)=>{
45
44
  const forceRenderChildren = typeof forceRender === 'number' && fieldIndex <= forceRender || true;
46
- const name = 'name' in f ? f.name : undefined;
45
+ const name = 'name' in field ? field.name : undefined;
47
46
  return /*#__PURE__*/ _jsx(RenderField, {
48
- CustomField: CustomField,
49
- custom: custom,
50
- disabled: disabled,
51
47
  fieldComponentProps: {
52
- ...fieldComponentProps,
48
+ field,
53
49
  forceRender: forceRenderChildren
54
50
  },
55
51
  indexPath: indexPath !== undefined ? `${indexPath}.${fieldIndex}` : `${fieldIndex}`,
56
- isHidden: isHidden,
57
52
  name: name,
58
53
  path: path,
59
54
  permissions: permissions?.[name],
60
- readOnly: readOnly,
61
55
  schemaPath: schemaPath,
62
- siblingPermissions: permissions,
63
- type: type
56
+ siblingPermissions: permissions
64
57
  }, fieldIndex);
65
58
  })
66
59
  });
@@ -1 +1 @@
1
- {"version":3,"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 { RenderField } from './RenderField.js'\nimport './index.scss'\n\nconst baseClass = 'render-fields'\n\nexport { Props }\n\nexport const RenderFields: React.FC<Props> = (props) => {\n const { className, fieldMap, 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 (!fieldMap || (Array.isArray(fieldMap) && fieldMap.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 (fieldMap) {\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 fieldMap?.map((f, fieldIndex) => {\n const {\n type,\n CustomField,\n custom,\n disabled,\n fieldComponentProps,\n fieldComponentProps: { readOnly },\n isHidden,\n } = f\n\n const forceRenderChildren =\n (typeof forceRender === 'number' && fieldIndex <= forceRender) || true\n\n const name = 'name' in f ? f.name : undefined\n\n return (\n <RenderField\n CustomField={CustomField}\n custom={custom}\n disabled={disabled}\n fieldComponentProps={{ ...fieldComponentProps, forceRender: forceRenderChildren }}\n indexPath={indexPath !== undefined ? `${indexPath}.${fieldIndex}` : `${fieldIndex}`}\n isHidden={isHidden}\n key={fieldIndex}\n name={name}\n path={path}\n permissions={permissions?.[name]}\n readOnly={readOnly}\n schemaPath={schemaPath}\n siblingPermissions={permissions}\n type={type}\n />\n )\n })}\n </div>\n )\n }\n\n return null\n}\n"],"names":["React","useIntersect","useTranslation","RenderField","baseClass","RenderFields","props","className","fieldMap","forceRender","indexPath","margins","path","permissions","schemaPath","i18n","hasRendered","setHasRendered","useState","Boolean","intersectionRef","entry","rootMargin","isIntersecting","isAboveViewport","boundingClientRect","top","shouldRender","useEffect","Array","isArray","length","console","error","div","filter","join","ref","map","f","fieldIndex","type","CustomField","custom","disabled","fieldComponentProps","readOnly","isHidden","forceRenderChildren","name","undefined","siblingPermissions"],"mappings":"AAAA;;AACA,OAAOA,WAAW,QAAO;AAIzB,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,OAAO,eAAc;AAErB,MAAMC,YAAY;AAIlB,OAAO,MAAMC,eAAgC,CAACC;IAC5C,MAAM,EAAEC,SAAS,EAAEC,QAAQ,EAAEC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,IAAI,EAAEC,WAAW,EAAEC,UAAU,EAAE,GAC3FR;IAEF,MAAM,EAAES,IAAI,EAAE,GAAGb;IACjB,MAAM,CAACc,aAAaC,eAAe,GAAGjB,MAAMkB,QAAQ,CAACC,QAAQV;IAC7D,MAAM,CAACW,iBAAiBC,MAAM,GAAGpB,aAC/B;QACEqB,YAAY;IACd,GACAH,QAAQV;IAGV,MAAMc,iBAAiBJ,QAAQE,OAAOE;IACtC,MAAMC,kBAAkBH,OAAOI,oBAAoBC,MAAM;IACzD,MAAMC,eAAelB,eAAec,kBAAkBC;IAEtDxB,MAAM4B,SAAS,CAAC;QACd,IAAID,gBAAgB,CAACX,aAAa;YAChCC,eAAe;QACjB;IACF,GAAG;QAACU;QAAcX;KAAY;IAE9B,IAAI,CAACR,YAAaqB,MAAMC,OAAO,CAACtB,aAAaA,SAASuB,MAAM,KAAK,GAAI;QACnE,OAAO;IACT;IAEA,IAAI,CAAChB,MAAM;QACTiB,QAAQC,KAAK,CAAC,oDAAoD,iCAAiC;;IACrG;IAEA,IAAIzB,UAAU;QACZ,qBACE,KAAC0B;YACC3B,WAAW;gBACTH;gBACAG;gBACAI,WAAW,CAAC,EAAEP,UAAU,UAAU,EAAEO,QAAQ,CAAC;gBAC7CA,YAAY,SAAS,CAAC,EAAEP,UAAU,cAAc,CAAC;aAClD,CACE+B,MAAM,CAAChB,SACPiB,IAAI,CAAC;YACRC,KAAKjB;sBAEJJ,eACCR,UAAU8B,IAAI,CAACC,GAAGC;gBAChB,MAAM,EACJC,IAAI,EACJC,WAAW,EACXC,MAAM,EACNC,QAAQ,EACRC,mBAAmB,EACnBA,qBAAqB,EAAEC,QAAQ,EAAE,EACjCC,QAAQ,EACT,GAAGR;gBAEJ,MAAMS,sBACJ,AAAC,OAAOvC,gBAAgB,YAAY+B,cAAc/B,eAAgB;gBAEpE,MAAMwC,OAAO,UAAUV,IAAIA,EAAEU,IAAI,GAAGC;gBAEpC,qBACE,KAAC/C;oBACCuC,aAAaA;oBACbC,QAAQA;oBACRC,UAAUA;oBACVC,qBAAqB;wBAAE,GAAGA,mBAAmB;wBAAEpC,aAAauC;oBAAoB;oBAChFtC,WAAWA,cAAcwC,YAAY,CAAC,EAAExC,UAAU,CAAC,EAAE8B,WAAW,CAAC,GAAG,CAAC,EAAEA,WAAW,CAAC;oBACnFO,UAAUA;oBAEVE,MAAMA;oBACNrC,MAAMA;oBACNC,aAAaA,aAAa,CAACoC,KAAK;oBAChCH,UAAUA;oBACVhC,YAAYA;oBACZqC,oBAAoBtC;oBACpB4B,MAAMA;mBAPDD;YAUX;;IAGR;IAEA,OAAO;AACT,EAAC"}
1
+ {"version":3,"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 { RenderField } from './RenderField.js'\nimport './index.scss'\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"],"names":["React","useIntersect","useTranslation","RenderField","baseClass","RenderFields","props","className","fields","forceRender","indexPath","margins","path","permissions","schemaPath","i18n","hasRendered","setHasRendered","useState","Boolean","intersectionRef","entry","rootMargin","isIntersecting","isAboveViewport","boundingClientRect","top","shouldRender","useEffect","Array","isArray","length","console","error","div","filter","join","ref","map","field","fieldIndex","forceRenderChildren","name","undefined","fieldComponentProps","siblingPermissions"],"mappings":"AAAA;;AACA,OAAOA,WAAW,QAAO;AAIzB,SAASC,YAAY,QAAQ,8BAA6B;AAC1D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,WAAW,QAAQ,mBAAkB;AAC9C,OAAO,eAAc;AAErB,MAAMC,YAAY;AAIlB,OAAO,MAAMC,eAAgC,CAACC;IAC5C,MAAM,EAAEC,SAAS,EAAEC,MAAM,EAAEC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,IAAI,EAAEC,WAAW,EAAEC,UAAU,EAAE,GACzFR;IAEF,MAAM,EAAES,IAAI,EAAE,GAAGb;IACjB,MAAM,CAACc,aAAaC,eAAe,GAAGjB,MAAMkB,QAAQ,CAACC,QAAQV;IAC7D,MAAM,CAACW,iBAAiBC,MAAM,GAAGpB,aAC/B;QACEqB,YAAY;IACd,GACAH,QAAQV;IAGV,MAAMc,iBAAiBJ,QAAQE,OAAOE;IACtC,MAAMC,kBAAkBH,OAAOI,oBAAoBC,MAAM;IACzD,MAAMC,eAAelB,eAAec,kBAAkBC;IAEtDxB,MAAM4B,SAAS,CAAC;QACd,IAAID,gBAAgB,CAACX,aAAa;YAChCC,eAAe;QACjB;IACF,GAAG;QAACU;QAAcX;KAAY;IAE9B,IAAI,CAACR,UAAWqB,MAAMC,OAAO,CAACtB,WAAWA,OAAOuB,MAAM,KAAK,GAAI;QAC7D,OAAO;IACT;IAEA,IAAI,CAAChB,MAAM;QACTiB,QAAQC,KAAK,CAAC,oDAAoD,iCAAiC;;IACrG;IAEA,IAAIzB,QAAQ;QACV,qBACE,KAAC0B;YACC3B,WAAW;gBACTH;gBACAG;gBACAI,WAAW,CAAC,EAAEP,UAAU,UAAU,EAAEO,QAAQ,CAAC;gBAC7CA,YAAY,SAAS,CAAC,EAAEP,UAAU,cAAc,CAAC;aAClD,CACE+B,MAAM,CAAChB,SACPiB,IAAI,CAAC;YACRC,KAAKjB;sBAEJJ,eACCR,QAAQ8B,IAAI,CAACC,OAAOC;gBAClB,MAAMC,sBACJ,AAAC,OAAOhC,gBAAgB,YAAY+B,cAAc/B,eAAgB;gBAEpE,MAAMiC,OAAO,UAAUH,QAAQA,MAAMG,IAAI,GAAGC;gBAE5C,qBACE,KAACxC;oBACCyC,qBAAqB;wBAAEL;wBAAO9B,aAAagC;oBAAoB;oBAC/D/B,WAAWA,cAAciC,YAAY,CAAC,EAAEjC,UAAU,CAAC,EAAE8B,WAAW,CAAC,GAAG,CAAC,EAAEA,WAAW,CAAC;oBAEnFE,MAAMA;oBACN9B,MAAMA;oBACNC,aAAaA,aAAa,CAAC6B,KAAK;oBAChC5B,YAAYA;oBACZ+B,oBAAoBhC;mBALf2B;YAQX;;IAGR;IAEA,OAAO;AACT,EAAC"}
@@ -1,7 +1,7 @@
1
- import type { FieldMap, FieldPermissions, Operation } from 'payload';
1
+ import type { ClientField, FieldPermissions, Operation } from 'payload';
2
2
  export type Props = {
3
- className?: string;
4
- fieldMap: FieldMap;
3
+ readonly className?: string;
4
+ readonly fields: ClientField[];
5
5
  /**
6
6
  * Controls the rendering behavior of the fields, i.e. defers rendering until they intersect with the viewport using the Intersection Observer API.
7
7
  *
@@ -9,15 +9,15 @@ export type Props = {
9
9
  *
10
10
  * If a number is provided, will immediately render fields _up to that index_.
11
11
  */
12
- forceRender?: boolean | number;
13
- indexPath?: string;
14
- margins?: 'small' | false;
15
- operation?: Operation;
16
- path: string;
17
- permissions?: {
12
+ readonly forceRender?: boolean | number;
13
+ readonly indexPath?: string;
14
+ readonly margins?: 'small' | false;
15
+ readonly operation?: Operation;
16
+ readonly path: string;
17
+ readonly permissions?: {
18
18
  [fieldName: string]: FieldPermissions;
19
19
  };
20
- readOnly: boolean;
21
- schemaPath: string;
20
+ readonly readOnly: boolean;
21
+ readonly schemaPath: string;
22
22
  };
23
23
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEpE,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,QAAQ,CAAA;IAClB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,CAAA;IACzB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE;QACZ,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;KACtC,CAAA;IACD,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/forms/RenderFields/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEvE,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,CAAA;IAC9B;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,KAAK,CAAA;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAA;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE;QACrB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,CAAA;KACtC,CAAA;IACD,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAC5B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/RenderFields/types.ts"],"sourcesContent":["import type { FieldMap, FieldPermissions, Operation } from 'payload'\n\nexport type Props = {\n className?: string\n fieldMap: FieldMap\n /**\n * Controls the rendering behavior of the fields, i.e. defers rendering until they intersect with the viewport using the Intersection Observer API.\n *\n * If true, the fields will be rendered immediately, rather than waiting for them to intersect with the viewport.\n *\n * If a number is provided, will immediately render fields _up to that index_.\n */\n forceRender?: boolean | number\n indexPath?: string\n margins?: 'small' | false\n operation?: Operation\n path: string\n permissions?: {\n [fieldName: string]: FieldPermissions\n }\n readOnly: boolean\n schemaPath: string\n}\n"],"names":[],"mappings":"AAEA,WAoBC"}
1
+ {"version":3,"sources":["../../../src/forms/RenderFields/types.ts"],"sourcesContent":["import type { ClientField, FieldPermissions, Operation } from 'payload'\n\nexport type Props = {\n readonly className?: string\n readonly fields: ClientField[]\n /**\n * Controls the rendering behavior of the fields, i.e. defers rendering until they intersect with the viewport using the Intersection Observer API.\n *\n * If true, the fields will be rendered immediately, rather than waiting for them to intersect with the viewport.\n *\n * If a number is provided, will immediately render fields _up to that index_.\n */\n readonly forceRender?: boolean | number\n readonly indexPath?: string\n readonly margins?: 'small' | false\n readonly operation?: Operation\n readonly path: string\n readonly permissions?: {\n [fieldName: string]: FieldPermissions\n }\n readonly readOnly: boolean\n readonly schemaPath: string\n}\n"],"names":[],"mappings":"AAEA,WAoBC"}
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
2
  type RowLabelType<T = unknown> = {
3
- data: T;
4
- path: string;
5
- rowNumber?: number;
3
+ readonly data: T;
4
+ readonly path: string;
5
+ readonly rowNumber?: number;
6
6
  };
7
7
  type Props<T> = {
8
- children: React.ReactNode;
8
+ readonly children: React.ReactNode;
9
9
  } & Omit<RowLabelType<T>, 'data'>;
10
10
  export declare const RowLabelProvider: React.FC<Props<unknown>>;
11
11
  export declare const useRowLabel: <T>() => RowLabelType<T>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/forms/RowLabel/Context/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,KAAK,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IAC/B,IAAI,EAAE,CAAC,CAAA;IACP,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAQD,KAAK,KAAK,CAAC,CAAC,IAAI;IACd,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAC1B,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;AAEjC,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAOrD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,CAAC,OACU,YAAY,CAAC,CAAC,CACpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/forms/RowLabel/Context/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,KAAK,YAAY,CAAC,CAAC,GAAG,OAAO,IAAI;IAC/B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;IAChB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA;AAQD,KAAK,KAAK,CAAC,CAAC,IAAI;IACd,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;AAEjC,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAOrD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,CAAC,OACU,YAAY,CAAC,CAAC,CACpD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/forms/RowLabel/Context/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { useWatchForm } from '../../Form/context.js'\n\ntype RowLabelType<T = unknown> = {\n data: T\n path: string\n rowNumber?: number\n}\n\nconst RowLabel = React.createContext<RowLabelType>({\n data: {},\n path: '',\n rowNumber: undefined,\n})\n\ntype Props<T> = {\n children: React.ReactNode\n} & Omit<RowLabelType<T>, 'data'>\n\nexport const RowLabelProvider: React.FC<Props<unknown>> = ({ children, path, rowNumber }) => {\n const { getDataByPath, getSiblingData } = useWatchForm()\n const collapsibleData = getSiblingData(path)\n const arrayData = getDataByPath(path)\n const data = arrayData || collapsibleData\n\n return <RowLabel.Provider value={{ data, path, rowNumber }}>{children}</RowLabel.Provider>\n}\n\nexport const useRowLabel = <T,>() => {\n return React.useContext(RowLabel) as RowLabelType<T>\n}\n"],"names":["React","useWatchForm","RowLabel","createContext","data","path","rowNumber","undefined","RowLabelProvider","children","getDataByPath","getSiblingData","collapsibleData","arrayData","Provider","value","useRowLabel","useContext"],"mappings":"AAAA;;AAEA,OAAOA,WAAW,QAAO;AAEzB,SAASC,YAAY,QAAQ,wBAAuB;AAQpD,MAAMC,yBAAWF,MAAMG,aAAa,CAAe;IACjDC,MAAM,CAAC;IACPC,MAAM;IACNC,WAAWC;AACb;AAMA,OAAO,MAAMC,mBAA6C,CAAC,EAAEC,QAAQ,EAAEJ,IAAI,EAAEC,SAAS,EAAE;IACtF,MAAM,EAAEI,aAAa,EAAEC,cAAc,EAAE,GAAGV;IAC1C,MAAMW,kBAAkBD,eAAeN;IACvC,MAAMQ,YAAYH,cAAcL;IAChC,MAAMD,OAAOS,aAAaD;IAE1B,qBAAO,KAACV,SAASY,QAAQ;QAACC,OAAO;YAAEX;YAAMC;YAAMC;QAAU;kBAAIG;;AAC/D,EAAC;AAED,OAAO,MAAMO,cAAc;IACzB,OAAOhB,MAAMiB,UAAU,CAACf;AAC1B,EAAC"}
1
+ {"version":3,"sources":["../../../../src/forms/RowLabel/Context/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport { useWatchForm } from '../../Form/context.js'\n\ntype RowLabelType<T = unknown> = {\n readonly data: T\n readonly path: string\n readonly rowNumber?: number\n}\n\nconst RowLabel = React.createContext<RowLabelType>({\n data: {},\n path: '',\n rowNumber: undefined,\n})\n\ntype Props<T> = {\n readonly children: React.ReactNode\n} & Omit<RowLabelType<T>, 'data'>\n\nexport const RowLabelProvider: React.FC<Props<unknown>> = ({ children, path, rowNumber }) => {\n const { getDataByPath, getSiblingData } = useWatchForm()\n const collapsibleData = getSiblingData(path)\n const arrayData = getDataByPath(path)\n const data = arrayData || collapsibleData\n\n return <RowLabel.Provider value={{ data, path, rowNumber }}>{children}</RowLabel.Provider>\n}\n\nexport const useRowLabel = <T,>() => {\n return React.useContext(RowLabel) as RowLabelType<T>\n}\n"],"names":["React","useWatchForm","RowLabel","createContext","data","path","rowNumber","undefined","RowLabelProvider","children","getDataByPath","getSiblingData","collapsibleData","arrayData","Provider","value","useRowLabel","useContext"],"mappings":"AAAA;;AAEA,OAAOA,WAAW,QAAO;AAEzB,SAASC,YAAY,QAAQ,wBAAuB;AAQpD,MAAMC,yBAAWF,MAAMG,aAAa,CAAe;IACjDC,MAAM,CAAC;IACPC,MAAM;IACNC,WAAWC;AACb;AAMA,OAAO,MAAMC,mBAA6C,CAAC,EAAEC,QAAQ,EAAEJ,IAAI,EAAEC,SAAS,EAAE;IACtF,MAAM,EAAEI,aAAa,EAAEC,cAAc,EAAE,GAAGV;IAC1C,MAAMW,kBAAkBD,eAAeN;IACvC,MAAMQ,YAAYH,cAAcL;IAChC,MAAMD,OAAOS,aAAaD;IAE1B,qBAAO,KAACV,SAASY,QAAQ;QAACC,OAAO;YAAEX;YAAMC;YAAMC;QAAU;kBAAIG;;AAC/D,EAAC;AAED,OAAO,MAAMO,cAAc;IACzB,OAAOhB,MAAMiB,UAAU,CAACf;AAC1B,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/RowLabel/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,YAAY,EAAE,aAAa,EAAE,CAAA;AAM7B,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA6B5C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/RowLabel/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC/C,YAAY,EAAE,aAAa,EAAE,CAAA;AAO7B,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA6B5C,CAAA"}
@@ -1,15 +1,21 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { getTranslation } from '@payloadcms/translations';
3
3
  import React from 'react';
4
+ import { RenderComponent } from '../../providers/Config/RenderComponent.js';
4
5
  import { RowLabelProvider } from '../RowLabel/Context/index.js';
5
6
  const baseClass = 'row-label';
6
7
  export const RowLabel = (props)=>{
7
- const { RowLabelComponent, className, i18n, path, rowLabel, rowNumber } = props;
8
+ const { RowLabel: RowLabelComponent, className, i18n, path, rowLabel, rowNumber } = props;
8
9
  if (RowLabelComponent) {
9
10
  return /*#__PURE__*/ _jsx(RowLabelProvider, {
10
11
  path: path,
11
12
  rowNumber: rowNumber,
12
- children: RowLabelComponent
13
+ children: /*#__PURE__*/ _jsx(RenderComponent, {
14
+ clientProps: {
15
+ label: rowLabel
16
+ },
17
+ mappedComponent: RowLabelComponent
18
+ })
13
19
  });
14
20
  }
15
21
  const label = rowLabel ? typeof rowLabel === 'object' ? getTranslation(rowLabel, i18n) : typeof rowLabel === 'string' ? rowLabel : '' : '';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/RowLabel/index.tsx"],"sourcesContent":["import { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { RowLabelProps } from './types.js'\nexport type { RowLabelProps }\n\nimport { RowLabelProvider } from '../RowLabel/Context/index.js'\n\nconst baseClass = 'row-label'\n\nexport const RowLabel: React.FC<RowLabelProps> = (props) => {\n const { RowLabelComponent, className, i18n, path, rowLabel, rowNumber } = props\n\n if (RowLabelComponent) {\n return (\n <RowLabelProvider path={path} rowNumber={rowNumber}>\n {RowLabelComponent}\n </RowLabelProvider>\n )\n }\n\n const label = rowLabel\n ? typeof rowLabel === 'object'\n ? getTranslation(rowLabel, i18n)\n : typeof rowLabel === 'string'\n ? rowLabel\n : ''\n : ''\n\n return (\n <span\n className={[baseClass, className].filter(Boolean).join(' ')}\n style={{\n pointerEvents: 'none',\n }}\n >\n {label}\n </span>\n )\n}\n"],"names":["getTranslation","React","RowLabelProvider","baseClass","RowLabel","props","RowLabelComponent","className","i18n","path","rowLabel","rowNumber","label","span","filter","Boolean","join","style","pointerEvents"],"mappings":";AAAA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAKzB,SAASC,gBAAgB,QAAQ,+BAA8B;AAE/D,MAAMC,YAAY;AAElB,OAAO,MAAMC,WAAoC,CAACC;IAChD,MAAM,EAAEC,iBAAiB,EAAEC,SAAS,EAAEC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAGN;IAE1E,IAAIC,mBAAmB;QACrB,qBACE,KAACJ;YAAiBO,MAAMA;YAAME,WAAWA;sBACtCL;;IAGP;IAEA,MAAMM,QAAQF,WACV,OAAOA,aAAa,WAClBV,eAAeU,UAAUF,QACzB,OAAOE,aAAa,WAClBA,WACA,KACJ;IAEJ,qBACE,KAACG;QACCN,WAAW;YAACJ;YAAWI;SAAU,CAACO,MAAM,CAACC,SAASC,IAAI,CAAC;QACvDC,OAAO;YACLC,eAAe;QACjB;kBAECN;;AAGP,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/RowLabel/index.tsx"],"sourcesContent":["import { getTranslation } from '@payloadcms/translations'\nimport React from 'react'\n\nimport type { RowLabelProps } from './types.js'\nexport type { RowLabelProps }\n\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { RowLabelProvider } from '../RowLabel/Context/index.js'\n\nconst baseClass = 'row-label'\n\nexport const RowLabel: React.FC<RowLabelProps> = (props) => {\n const { RowLabel: RowLabelComponent, className, i18n, path, rowLabel, rowNumber } = props\n\n if (RowLabelComponent) {\n return (\n <RowLabelProvider path={path} rowNumber={rowNumber}>\n <RenderComponent clientProps={{ label: rowLabel }} mappedComponent={RowLabelComponent} />\n </RowLabelProvider>\n )\n }\n\n const label = rowLabel\n ? typeof rowLabel === 'object'\n ? getTranslation(rowLabel, i18n)\n : typeof rowLabel === 'string'\n ? rowLabel\n : ''\n : ''\n\n return (\n <span\n className={[baseClass, className].filter(Boolean).join(' ')}\n style={{\n pointerEvents: 'none',\n }}\n >\n {label}\n </span>\n )\n}\n"],"names":["getTranslation","React","RenderComponent","RowLabelProvider","baseClass","RowLabel","props","RowLabelComponent","className","i18n","path","rowLabel","rowNumber","clientProps","label","mappedComponent","span","filter","Boolean","join","style","pointerEvents"],"mappings":";AAAA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,OAAOC,WAAW,QAAO;AAKzB,SAASC,eAAe,QAAQ,4CAA2C;AAC3E,SAASC,gBAAgB,QAAQ,+BAA8B;AAE/D,MAAMC,YAAY;AAElB,OAAO,MAAMC,WAAoC,CAACC;IAChD,MAAM,EAAED,UAAUE,iBAAiB,EAAEC,SAAS,EAAEC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,SAAS,EAAE,GAAGN;IAEpF,IAAIC,mBAAmB;QACrB,qBACE,KAACJ;YAAiBO,MAAMA;YAAME,WAAWA;sBACvC,cAAA,KAACV;gBAAgBW,aAAa;oBAAEC,OAAOH;gBAAS;gBAAGI,iBAAiBR;;;IAG1E;IAEA,MAAMO,QAAQH,WACV,OAAOA,aAAa,WAClBX,eAAeW,UAAUF,QACzB,OAAOE,aAAa,WAClBA,WACA,KACJ;IAEJ,qBACE,KAACK;QACCR,WAAW;YAACJ;YAAWI;SAAU,CAACS,MAAM,CAACC,SAASC,IAAI,CAAC;QACvDC,OAAO;YACLC,eAAe;QACjB;kBAECP;;AAGP,EAAC"}
@@ -1,12 +1,11 @@
1
1
  import type { I18nClient } from '@payloadcms/translations';
2
- import type { LabelProps } from 'payload';
3
- import type React from 'react';
2
+ import type { LabelProps, MappedComponent } from 'payload';
4
3
  export type RowLabelProps = {
5
- RowLabelComponent?: React.ReactNode;
6
- className?: string;
7
- i18n: I18nClient;
8
- path: string;
9
- rowLabel?: LabelProps['label'];
10
- rowNumber?: number;
4
+ readonly RowLabel?: MappedComponent;
5
+ readonly className?: string;
6
+ readonly i18n: I18nClient;
7
+ readonly path: string;
8
+ readonly rowLabel?: LabelProps['label'];
9
+ readonly rowNumber?: number;
11
10
  };
12
11
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/forms/RowLabel/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACzC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,aAAa,GAAG;IAC1B,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACnC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,UAAU,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/forms/RowLabel/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE1D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAA;IACnC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAA;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAC5B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/RowLabel/types.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { LabelProps } from 'payload'\nimport type React from 'react'\n\nexport type RowLabelProps = {\n RowLabelComponent?: React.ReactNode\n className?: string\n i18n: I18nClient\n path: string\n rowLabel?: LabelProps['label']\n rowNumber?: number\n}\n"],"names":[],"mappings":"AAIA,WAOC"}
1
+ {"version":3,"sources":["../../../src/forms/RowLabel/types.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { LabelProps, MappedComponent } from 'payload'\n\nexport type RowLabelProps = {\n readonly RowLabel?: MappedComponent\n readonly className?: string\n readonly i18n: I18nClient\n readonly path: string\n readonly rowLabel?: LabelProps['label']\n readonly rowNumber?: number\n}\n"],"names":[],"mappings":"AAGA,WAOC"}
@@ -1,3 +1,3 @@
1
- import type { FieldMap } from 'payload';
2
- export declare const buildPathSegments: (parentPath: string, fieldMap: FieldMap) => string[];
1
+ import type { ClientField } from 'payload';
2
+ export declare const buildPathSegments: (parentPath: string, fields: ClientField[]) => string[];
3
3
  //# sourceMappingURL=buildPathSegments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildPathSegments.d.ts","sourceRoot":"","sources":["../../../src/forms/WatchChildErrors/buildPathSegments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAEvC,eAAO,MAAM,iBAAiB,eAAgB,MAAM,YAAY,QAAQ,KAAG,MAAM,EAmChF,CAAA"}
1
+ {"version":3,"file":"buildPathSegments.d.ts","sourceRoot":"","sources":["../../../src/forms/WatchChildErrors/buildPathSegments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAI1C,eAAO,MAAM,iBAAiB,eAAgB,MAAM,UAAU,WAAW,EAAE,KAAG,MAAM,EAkCnF,CAAA"}
@@ -1,27 +1,28 @@
1
- export const buildPathSegments = (parentPath, fieldMap)=>{
2
- const pathNames = fieldMap.reduce((acc, field)=>{
3
- const fieldMap = 'fieldMap' in field.fieldComponentProps ? field.fieldComponentProps.fieldMap : undefined;
4
- if (fieldMap) {
5
- if (field.isFieldAffectingData) {
1
+ import { fieldAffectsData } from 'payload/shared';
2
+ export const buildPathSegments = (parentPath, fields)=>{
3
+ const pathNames = fields.reduce((acc, field)=>{
4
+ const fields = 'fields' in field ? field.fields : undefined;
5
+ if (fields) {
6
+ if (fieldAffectsData(field)) {
6
7
  // group, block, array
7
8
  const name = 'name' in field ? field.name : 'unnamed';
8
9
  acc.push(parentPath ? `${parentPath}.${name}.` : `${name}.`);
9
10
  } else {
10
11
  // rows, collapsibles, unnamed-tab
11
- acc.push(...buildPathSegments(parentPath, fieldMap));
12
+ acc.push(...buildPathSegments(parentPath, fields));
12
13
  }
13
14
  } else if (field.type === 'tabs') {
14
15
  // tabs
15
- if ('tabs' in field.fieldComponentProps) {
16
- field.fieldComponentProps.tabs?.forEach((tab)=>{
16
+ if ('tabs' in field) {
17
+ field.tabs?.forEach((tab)=>{
17
18
  let tabPath = parentPath;
18
19
  if ('name' in tab) {
19
20
  tabPath = parentPath ? `${parentPath}.${tab.name}` : tab.name;
20
21
  }
21
- acc.push(...buildPathSegments(tabPath, tab.fieldMap));
22
+ acc.push(...buildPathSegments(tabPath, tab.fields));
22
23
  });
23
24
  }
24
- } else if (field.isFieldAffectingData) {
25
+ } else if (fieldAffectsData(field)) {
25
26
  // text, number, date, etc.
26
27
  const name = 'name' in field ? field.name : 'unnamed';
27
28
  acc.push(parentPath ? `${parentPath}.${name}` : name);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/WatchChildErrors/buildPathSegments.ts"],"sourcesContent":["import type { FieldMap } from 'payload'\n\nexport const buildPathSegments = (parentPath: string, fieldMap: FieldMap): string[] => {\n const pathNames = fieldMap.reduce((acc, field) => {\n const fieldMap =\n 'fieldMap' in field.fieldComponentProps ? field.fieldComponentProps.fieldMap : undefined\n\n if (fieldMap) {\n if (field.isFieldAffectingData) {\n // group, block, array\n const name = 'name' in field ? field.name : 'unnamed'\n acc.push(parentPath ? `${parentPath}.${name}.` : `${name}.`)\n } else {\n // rows, collapsibles, unnamed-tab\n acc.push(...buildPathSegments(parentPath, fieldMap))\n }\n } else if (field.type === 'tabs') {\n // tabs\n if ('tabs' in field.fieldComponentProps) {\n field.fieldComponentProps.tabs?.forEach((tab) => {\n let tabPath = parentPath\n if ('name' in tab) {\n tabPath = parentPath ? `${parentPath}.${tab.name}` : tab.name\n }\n acc.push(...buildPathSegments(tabPath, tab.fieldMap))\n })\n }\n } else if (field.isFieldAffectingData) {\n // text, number, date, etc.\n const name = 'name' in field ? field.name : 'unnamed'\n acc.push(parentPath ? `${parentPath}.${name}` : name)\n }\n\n return acc\n }, [])\n\n return pathNames\n}\n"],"names":["buildPathSegments","parentPath","fieldMap","pathNames","reduce","acc","field","fieldComponentProps","undefined","isFieldAffectingData","name","push","type","tabs","forEach","tab","tabPath"],"mappings":"AAEA,OAAO,MAAMA,oBAAoB,CAACC,YAAoBC;IACpD,MAAMC,YAAYD,SAASE,MAAM,CAAC,CAACC,KAAKC;QACtC,MAAMJ,WACJ,cAAcI,MAAMC,mBAAmB,GAAGD,MAAMC,mBAAmB,CAACL,QAAQ,GAAGM;QAEjF,IAAIN,UAAU;YACZ,IAAII,MAAMG,oBAAoB,EAAE;gBAC9B,sBAAsB;gBACtB,MAAMC,OAAO,UAAUJ,QAAQA,MAAMI,IAAI,GAAG;gBAC5CL,IAAIM,IAAI,CAACV,aAAa,CAAC,EAAEA,WAAW,CAAC,EAAES,KAAK,CAAC,CAAC,GAAG,CAAC,EAAEA,KAAK,CAAC,CAAC;YAC7D,OAAO;gBACL,kCAAkC;gBAClCL,IAAIM,IAAI,IAAIX,kBAAkBC,YAAYC;YAC5C;QACF,OAAO,IAAII,MAAMM,IAAI,KAAK,QAAQ;YAChC,OAAO;YACP,IAAI,UAAUN,MAAMC,mBAAmB,EAAE;gBACvCD,MAAMC,mBAAmB,CAACM,IAAI,EAAEC,QAAQ,CAACC;oBACvC,IAAIC,UAAUf;oBACd,IAAI,UAAUc,KAAK;wBACjBC,UAAUf,aAAa,CAAC,EAAEA,WAAW,CAAC,EAAEc,IAAIL,IAAI,CAAC,CAAC,GAAGK,IAAIL,IAAI;oBAC/D;oBACAL,IAAIM,IAAI,IAAIX,kBAAkBgB,SAASD,IAAIb,QAAQ;gBACrD;YACF;QACF,OAAO,IAAII,MAAMG,oBAAoB,EAAE;YACrC,2BAA2B;YAC3B,MAAMC,OAAO,UAAUJ,QAAQA,MAAMI,IAAI,GAAG;YAC5CL,IAAIM,IAAI,CAACV,aAAa,CAAC,EAAEA,WAAW,CAAC,EAAES,KAAK,CAAC,GAAGA;QAClD;QAEA,OAAOL;IACT,GAAG,EAAE;IAEL,OAAOF;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/WatchChildErrors/buildPathSegments.ts"],"sourcesContent":["import type { ClientField } from 'payload'\n\nimport { fieldAffectsData } from 'payload/shared'\n\nexport const buildPathSegments = (parentPath: string, fields: ClientField[]): string[] => {\n const pathNames = fields.reduce((acc, field) => {\n const fields: ClientField[] = 'fields' in field ? field.fields : undefined\n\n if (fields) {\n if (fieldAffectsData(field)) {\n // group, block, array\n const name = 'name' in field ? field.name : 'unnamed'\n acc.push(parentPath ? `${parentPath}.${name}.` : `${name}.`)\n } else {\n // rows, collapsibles, unnamed-tab\n acc.push(...buildPathSegments(parentPath, fields))\n }\n } else if (field.type === 'tabs') {\n // tabs\n if ('tabs' in field) {\n field.tabs?.forEach((tab) => {\n let tabPath = parentPath\n if ('name' in tab) {\n tabPath = parentPath ? `${parentPath}.${tab.name}` : tab.name\n }\n acc.push(...buildPathSegments(tabPath, tab.fields))\n })\n }\n } else if (fieldAffectsData(field)) {\n // text, number, date, etc.\n const name = 'name' in field ? field.name : 'unnamed'\n acc.push(parentPath ? `${parentPath}.${name}` : name)\n }\n\n return acc\n }, [])\n\n return pathNames\n}\n"],"names":["fieldAffectsData","buildPathSegments","parentPath","fields","pathNames","reduce","acc","field","undefined","name","push","type","tabs","forEach","tab","tabPath"],"mappings":"AAEA,SAASA,gBAAgB,QAAQ,iBAAgB;AAEjD,OAAO,MAAMC,oBAAoB,CAACC,YAAoBC;IACpD,MAAMC,YAAYD,OAAOE,MAAM,CAAC,CAACC,KAAKC;QACpC,MAAMJ,SAAwB,YAAYI,QAAQA,MAAMJ,MAAM,GAAGK;QAEjE,IAAIL,QAAQ;YACV,IAAIH,iBAAiBO,QAAQ;gBAC3B,sBAAsB;gBACtB,MAAME,OAAO,UAAUF,QAAQA,MAAME,IAAI,GAAG;gBAC5CH,IAAII,IAAI,CAACR,aAAa,CAAC,EAAEA,WAAW,CAAC,EAAEO,KAAK,CAAC,CAAC,GAAG,CAAC,EAAEA,KAAK,CAAC,CAAC;YAC7D,OAAO;gBACL,kCAAkC;gBAClCH,IAAII,IAAI,IAAIT,kBAAkBC,YAAYC;YAC5C;QACF,OAAO,IAAII,MAAMI,IAAI,KAAK,QAAQ;YAChC,OAAO;YACP,IAAI,UAAUJ,OAAO;gBACnBA,MAAMK,IAAI,EAAEC,QAAQ,CAACC;oBACnB,IAAIC,UAAUb;oBACd,IAAI,UAAUY,KAAK;wBACjBC,UAAUb,aAAa,CAAC,EAAEA,WAAW,CAAC,EAAEY,IAAIL,IAAI,CAAC,CAAC,GAAGK,IAAIL,IAAI;oBAC/D;oBACAH,IAAII,IAAI,IAAIT,kBAAkBc,SAASD,IAAIX,MAAM;gBACnD;YACF;QACF,OAAO,IAAIH,iBAAiBO,QAAQ;YAClC,2BAA2B;YAC3B,MAAME,OAAO,UAAUF,QAAQA,MAAME,IAAI,GAAG;YAC5CH,IAAII,IAAI,CAACR,aAAa,CAAC,EAAEA,WAAW,CAAC,EAAEO,KAAK,CAAC,GAAGA;QAClD;QAEA,OAAOH;IACT,GAAG,EAAE;IAEL,OAAOF;AACT,EAAC"}
@@ -1,7 +1,7 @@
1
- import type { FieldMap } from 'payload';
1
+ import type { ClientField } from 'packages/payload/src/index.js';
2
2
  import type React from 'react';
3
3
  type TrackSubSchemaErrorCountProps = {
4
- fieldMap?: FieldMap;
4
+ fields?: ClientField[];
5
5
  path: string;
6
6
  setErrorCount: (count: number) => void;
7
7
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/WatchChildErrors/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,KAAK,6BAA6B,GAAG;IACnC,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAsBpE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/forms/WatchChildErrors/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAChE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,KAAK,6BAA6B,GAAG;IACnC,MAAM,CAAC,EAAE,WAAW,EAAE,CAAA;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACvC,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CAsBpE,CAAA"}
@@ -3,10 +3,10 @@ import { useThrottledEffect } from '../../hooks/useThrottledEffect.js';
3
3
  import { useAllFormFields, useFormSubmitted } from '../Form/context.js';
4
4
  import { buildPathSegments } from './buildPathSegments.js';
5
5
  import { getFieldStateFromPaths } from './getFieldStateFromPaths.js';
6
- export const WatchChildErrors = ({ fieldMap, path, setErrorCount })=>{
6
+ export const WatchChildErrors = ({ fields, path, setErrorCount })=>{
7
7
  const [formState] = useAllFormFields();
8
8
  const hasSubmitted = useFormSubmitted();
9
- const pathSegments = buildPathSegments(path, fieldMap);
9
+ const pathSegments = buildPathSegments(path, fields);
10
10
  useThrottledEffect(()=>{
11
11
  if (hasSubmitted) {
12
12
  const { errorCount } = getFieldStateFromPaths({
@@ -18,7 +18,7 @@ export const WatchChildErrors = ({ fieldMap, path, setErrorCount })=>{
18
18
  }, 250, [
19
19
  formState,
20
20
  hasSubmitted,
21
- fieldMap
21
+ fields
22
22
  ]);
23
23
  return null;
24
24
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/WatchChildErrors/index.tsx"],"sourcesContent":["'use client'\nimport type { FieldMap } from 'payload'\nimport type React from 'react'\n\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { useAllFormFields, useFormSubmitted } from '../Form/context.js'\nimport { buildPathSegments } from './buildPathSegments.js'\nimport { getFieldStateFromPaths } from './getFieldStateFromPaths.js'\n\ntype TrackSubSchemaErrorCountProps = {\n fieldMap?: FieldMap\n path: string\n setErrorCount: (count: number) => void\n}\n\nexport const WatchChildErrors: React.FC<TrackSubSchemaErrorCountProps> = ({\n fieldMap,\n path,\n setErrorCount,\n}) => {\n const [formState] = useAllFormFields()\n const hasSubmitted = useFormSubmitted()\n\n const pathSegments = buildPathSegments(path, fieldMap)\n\n useThrottledEffect(\n () => {\n if (hasSubmitted) {\n const { errorCount } = getFieldStateFromPaths({ formState, pathSegments })\n setErrorCount(errorCount)\n }\n },\n 250,\n [formState, hasSubmitted, fieldMap],\n )\n\n return null\n}\n"],"names":["useThrottledEffect","useAllFormFields","useFormSubmitted","buildPathSegments","getFieldStateFromPaths","WatchChildErrors","fieldMap","path","setErrorCount","formState","hasSubmitted","pathSegments","errorCount"],"mappings":"AAAA;AAIA,SAASA,kBAAkB,QAAQ,oCAAmC;AACtE,SAASC,gBAAgB,EAAEC,gBAAgB,QAAQ,qBAAoB;AACvE,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,sBAAsB,QAAQ,8BAA6B;AAQpE,OAAO,MAAMC,mBAA4D,CAAC,EACxEC,QAAQ,EACRC,IAAI,EACJC,aAAa,EACd;IACC,MAAM,CAACC,UAAU,GAAGR;IACpB,MAAMS,eAAeR;IAErB,MAAMS,eAAeR,kBAAkBI,MAAMD;IAE7CN,mBACE;QACE,IAAIU,cAAc;YAChB,MAAM,EAAEE,UAAU,EAAE,GAAGR,uBAAuB;gBAAEK;gBAAWE;YAAa;YACxEH,cAAcI;QAChB;IACF,GACA,KACA;QAACH;QAAWC;QAAcJ;KAAS;IAGrC,OAAO;AACT,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/WatchChildErrors/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField } from 'packages/payload/src/index.js'\nimport type React from 'react'\n\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { useAllFormFields, useFormSubmitted } from '../Form/context.js'\nimport { buildPathSegments } from './buildPathSegments.js'\nimport { getFieldStateFromPaths } from './getFieldStateFromPaths.js'\n\ntype TrackSubSchemaErrorCountProps = {\n fields?: ClientField[]\n path: string\n setErrorCount: (count: number) => void\n}\n\nexport const WatchChildErrors: React.FC<TrackSubSchemaErrorCountProps> = ({\n fields,\n path,\n setErrorCount,\n}) => {\n const [formState] = useAllFormFields()\n const hasSubmitted = useFormSubmitted()\n\n const pathSegments = buildPathSegments(path, fields)\n\n useThrottledEffect(\n () => {\n if (hasSubmitted) {\n const { errorCount } = getFieldStateFromPaths({ formState, pathSegments })\n setErrorCount(errorCount)\n }\n },\n 250,\n [formState, hasSubmitted, fields],\n )\n\n return null\n}\n"],"names":["useThrottledEffect","useAllFormFields","useFormSubmitted","buildPathSegments","getFieldStateFromPaths","WatchChildErrors","fields","path","setErrorCount","formState","hasSubmitted","pathSegments","errorCount"],"mappings":"AAAA;AAIA,SAASA,kBAAkB,QAAQ,oCAAmC;AACtE,SAASC,gBAAgB,EAAEC,gBAAgB,QAAQ,qBAAoB;AACvE,SAASC,iBAAiB,QAAQ,yBAAwB;AAC1D,SAASC,sBAAsB,QAAQ,8BAA6B;AAQpE,OAAO,MAAMC,mBAA4D,CAAC,EACxEC,MAAM,EACNC,IAAI,EACJC,aAAa,EACd;IACC,MAAM,CAACC,UAAU,GAAGR;IACpB,MAAMS,eAAeR;IAErB,MAAMS,eAAeR,kBAAkBI,MAAMD;IAE7CN,mBACE;QACE,IAAIU,cAAc;YAChB,MAAM,EAAEE,UAAU,EAAE,GAAGR,uBAAuB;gBAAEK;gBAAWE;YAAa;YACxEH,cAAcI;QAChB;IACF,GACA,KACA;QAACH;QAAWC;QAAcJ;KAAO;IAGnC,OAAO;AACT,EAAC"}
@@ -28,7 +28,7 @@ import { useForm, useFormFields, useFormInitializing, useFormModified, useFormPr
28
28
  field: fields && fields?.[path] || null
29
29
  }));
30
30
  const { t } = useTranslation();
31
- const config = useConfig();
31
+ const { config } = useConfig();
32
32
  const { getData, getDataByPath, getSiblingData, setModified } = useForm();
33
33
  const modified = useFormModified();
34
34
  const filterOptions = field?.filterOptions;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/useField/index.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequest } from 'payload'\n\nimport { useCallback, useMemo, useRef } from 'react'\n\nimport type { UPDATE } from '../Form/types.js'\nimport type { FieldType, Options } from './types.js'\n\nexport type { FieldType, Options }\n\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useFieldProps } from '../FieldPropsProvider/index.js'\nimport {\n useForm,\n useFormFields,\n useFormInitializing,\n useFormModified,\n useFormProcessing,\n useFormSubmitted,\n} from '../Form/context.js'\n\n/**\n * Get and set the value of a form field.\n *\n * @see https://payloadcms.com/docs/admin/hooks#usefield\n */\nexport const useField = <T,>(options: Options): FieldType<T> => {\n const { disableFormData = false, hasRows, validate } = options\n\n const { path: pathFromContext, permissions, readOnly, schemaPath } = useFieldProps()\n\n // Prioritize passed in path over context path. If the context path should be prioritized (which is the case for top-level useField calls in fields), it should be passed in as the options path.\n const path = options.path || pathFromContext\n\n const submitted = useFormSubmitted()\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { user } = useAuth()\n const { id, collectionSlug } = useDocumentInfo()\n const operation = useOperation()\n\n const { dispatchField, field } = useFormFields(([fields, dispatch]) => ({\n dispatchField: dispatch,\n field: (fields && fields?.[path]) || null,\n }))\n\n const { t } = useTranslation()\n const config = useConfig()\n\n const { getData, getDataByPath, getSiblingData, setModified } = useForm()\n const modified = useFormModified()\n\n const filterOptions = field?.filterOptions\n const value = field?.value as T\n const initialValue = field?.initialValue as T\n const valid = typeof field?.valid === 'boolean' ? field.valid : true\n const showError = valid === false && submitted\n\n const prevValid = useRef(valid)\n const prevErrorMessage = useRef(field?.errorMessage)\n\n // Method to return from `useField`, used to\n // update field values from field component(s)\n const setValue = useCallback(\n (e, disableModifyingForm = false) => {\n const val = e && e.target ? e.target.value : e\n\n dispatchField({\n type: 'UPDATE',\n disableFormData: disableFormData || (hasRows && val > 0),\n path,\n value: val,\n })\n\n if (!disableModifyingForm) {\n if (typeof setModified === 'function') {\n // Only update setModified to true if the form is not already set to modified. Otherwise the following could happen:\n // 1. Text field: someone types in it in an unmodified form\n // 2. After setTimeout triggers setModified(true): form is set to modified. Save Button becomes available. Good!\n // 3. Type something in text field\n // 4. Click on save button before setTimeout in useField has finished (so setModified(true) has not been run yet)\n // 5. Form is saved, setModified(false) is set in the Form/index.tsx `submit` function, \"saved successfully\" toast appears\n // 6. setModified(true) inside the timeout is run, form is set to modified again, even though it was already saved and thus set to unmodified. Bad! This should have happened before the form is saved. Now the form should be unmodified and stay that way\n // until a NEW change happens. Due to this, the \"Leave without saving\" modal appears even though it should not when leaving the page fast immediately after saving the document.\n // This is only an issue for forms which have already been set to modified true, as that causes the save button to be enabled. If we prevent this setTimeout to be run\n // for already-modified forms first place (which is unnecessary), we can avoid this issue. As for unmodified forms, this race issue will not happen, because you cannot click the save button faster\n // than the timeout in useField is run. That's because the save button won't even be enabled for clicking until the setTimeout in useField has run.\n // This fixes e2e test flakes, as e2e tests were often so fast that they were saving the form before the timeout in useField has run.\n // Specifically, this fixes the 'should not warn about unsaved changes when navigating to lexical editor with blocks node and then leaving the page after making a change and saving' lexical e2e test.\n if (modified === false) {\n // Update modified state after field value comes back\n // to avoid cursor jump caused by state value / DOM mismatch\n setTimeout(() => {\n setModified(true)\n }, 10)\n }\n }\n }\n },\n [setModified, path, dispatchField, disableFormData, hasRows, modified],\n )\n\n // Store result from hook as ref\n // to prevent unnecessary rerenders\n const result: FieldType<T> = useMemo(\n () => ({\n errorMessage: field?.errorMessage,\n errorPaths: field?.errorPaths || [],\n filterOptions,\n formInitializing: initializing,\n formProcessing: processing,\n formSubmitted: submitted,\n initialValue,\n path,\n permissions,\n readOnly: readOnly || false,\n rows: field?.rows,\n schemaPath,\n setValue,\n showError,\n valid: field?.valid,\n value,\n }),\n [\n field?.errorMessage,\n field?.rows,\n field?.valid,\n field?.errorPaths,\n processing,\n setValue,\n showError,\n submitted,\n value,\n initialValue,\n path,\n schemaPath,\n readOnly,\n permissions,\n filterOptions,\n initializing,\n ],\n )\n\n // Throttle the validate function\n useThrottledEffect(\n () => {\n const validateField = async () => {\n let valueToValidate = value\n\n if (field?.rows && Array.isArray(field.rows)) {\n valueToValidate = getDataByPath(path)\n }\n\n let errorMessage: string | undefined\n let valid: boolean | string = prevValid.current\n\n const isValid =\n typeof validate === 'function'\n ? await validate(valueToValidate, {\n id,\n collectionSlug,\n data: getData(),\n operation,\n preferences: {} as any,\n req: {\n payload: {\n config,\n },\n t,\n user,\n } as PayloadRequest,\n siblingData: getSiblingData(path),\n })\n : true\n\n if (typeof isValid === 'string') {\n valid = false\n errorMessage = isValid\n } else if (typeof isValid === 'boolean') {\n valid = isValid\n errorMessage = undefined\n }\n\n // Only dispatch if the validation result has changed\n // This will prevent unnecessary rerenders\n if (valid !== prevValid.current || errorMessage !== prevErrorMessage.current) {\n prevValid.current = valid\n prevErrorMessage.current = errorMessage\n\n const update: UPDATE = {\n type: 'UPDATE',\n errorMessage,\n path,\n rows: field?.rows,\n valid,\n validate,\n value,\n }\n\n if (disableFormData || (hasRows ? typeof value === 'number' && value > 0 : false)) {\n update.disableFormData = true\n }\n\n if (typeof dispatchField === 'function') {\n dispatchField(update)\n }\n }\n }\n\n void validateField()\n },\n 150,\n [\n value,\n disableFormData,\n dispatchField,\n getData,\n getSiblingData,\n getDataByPath,\n id,\n operation,\n path,\n user,\n validate,\n field?.rows,\n collectionSlug,\n ],\n )\n\n return result\n}\n"],"names":["useCallback","useMemo","useRef","useThrottledEffect","useAuth","useConfig","useDocumentInfo","useOperation","useTranslation","useFieldProps","useForm","useFormFields","useFormInitializing","useFormModified","useFormProcessing","useFormSubmitted","useField","options","disableFormData","hasRows","validate","path","pathFromContext","permissions","readOnly","schemaPath","submitted","processing","initializing","user","id","collectionSlug","operation","dispatchField","field","fields","dispatch","t","config","getData","getDataByPath","getSiblingData","setModified","modified","filterOptions","value","initialValue","valid","showError","prevValid","prevErrorMessage","errorMessage","setValue","e","disableModifyingForm","val","target","type","setTimeout","result","errorPaths","formInitializing","formProcessing","formSubmitted","rows","validateField","valueToValidate","Array","isArray","current","isValid","data","preferences","req","payload","siblingData","undefined","update"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../src/forms/useField/index.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequest } from 'payload'\n\nimport { useCallback, useMemo, useRef } from 'react'\n\nimport type { UPDATE } from '../Form/types.js'\nimport type { FieldType, Options } from './types.js'\n\nexport type { FieldType, Options }\n\nimport { useThrottledEffect } from '../../hooks/useThrottledEffect.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useOperation } from '../../providers/Operation/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { useFieldProps } from '../FieldPropsProvider/index.js'\nimport {\n useForm,\n useFormFields,\n useFormInitializing,\n useFormModified,\n useFormProcessing,\n useFormSubmitted,\n} from '../Form/context.js'\n\n/**\n * Get and set the value of a form field.\n *\n * @see https://payloadcms.com/docs/admin/hooks#usefield\n */\nexport const useField = <T,>(options: Options): FieldType<T> => {\n const { disableFormData = false, hasRows, validate } = options\n\n const { path: pathFromContext, permissions, readOnly, schemaPath } = useFieldProps()\n\n // Prioritize passed in path over context path. If the context path should be prioritized (which is the case for top-level useField calls in fields), it should be passed in as the options path.\n const path = options.path || pathFromContext\n\n const submitted = useFormSubmitted()\n const processing = useFormProcessing()\n const initializing = useFormInitializing()\n const { user } = useAuth()\n const { id, collectionSlug } = useDocumentInfo()\n const operation = useOperation()\n\n const { dispatchField, field } = useFormFields(([fields, dispatch]) => ({\n dispatchField: dispatch,\n field: (fields && fields?.[path]) || null,\n }))\n\n const { t } = useTranslation()\n const { config } = useConfig()\n\n const { getData, getDataByPath, getSiblingData, setModified } = useForm()\n const modified = useFormModified()\n\n const filterOptions = field?.filterOptions\n const value = field?.value as T\n const initialValue = field?.initialValue as T\n const valid = typeof field?.valid === 'boolean' ? field.valid : true\n const showError = valid === false && submitted\n\n const prevValid = useRef(valid)\n const prevErrorMessage = useRef(field?.errorMessage)\n\n // Method to return from `useField`, used to\n // update field values from field component(s)\n const setValue = useCallback(\n (e, disableModifyingForm = false) => {\n const val = e && e.target ? e.target.value : e\n\n dispatchField({\n type: 'UPDATE',\n disableFormData: disableFormData || (hasRows && val > 0),\n path,\n value: val,\n })\n\n if (!disableModifyingForm) {\n if (typeof setModified === 'function') {\n // Only update setModified to true if the form is not already set to modified. Otherwise the following could happen:\n // 1. Text field: someone types in it in an unmodified form\n // 2. After setTimeout triggers setModified(true): form is set to modified. Save Button becomes available. Good!\n // 3. Type something in text field\n // 4. Click on save button before setTimeout in useField has finished (so setModified(true) has not been run yet)\n // 5. Form is saved, setModified(false) is set in the Form/index.tsx `submit` function, \"saved successfully\" toast appears\n // 6. setModified(true) inside the timeout is run, form is set to modified again, even though it was already saved and thus set to unmodified. Bad! This should have happened before the form is saved. Now the form should be unmodified and stay that way\n // until a NEW change happens. Due to this, the \"Leave without saving\" modal appears even though it should not when leaving the page fast immediately after saving the document.\n // This is only an issue for forms which have already been set to modified true, as that causes the save button to be enabled. If we prevent this setTimeout to be run\n // for already-modified forms first place (which is unnecessary), we can avoid this issue. As for unmodified forms, this race issue will not happen, because you cannot click the save button faster\n // than the timeout in useField is run. That's because the save button won't even be enabled for clicking until the setTimeout in useField has run.\n // This fixes e2e test flakes, as e2e tests were often so fast that they were saving the form before the timeout in useField has run.\n // Specifically, this fixes the 'should not warn about unsaved changes when navigating to lexical editor with blocks node and then leaving the page after making a change and saving' lexical e2e test.\n if (modified === false) {\n // Update modified state after field value comes back\n // to avoid cursor jump caused by state value / DOM mismatch\n setTimeout(() => {\n setModified(true)\n }, 10)\n }\n }\n }\n },\n [setModified, path, dispatchField, disableFormData, hasRows, modified],\n )\n\n // Store result from hook as ref\n // to prevent unnecessary rerenders\n const result: FieldType<T> = useMemo(\n () => ({\n errorMessage: field?.errorMessage,\n errorPaths: field?.errorPaths || [],\n filterOptions,\n formInitializing: initializing,\n formProcessing: processing,\n formSubmitted: submitted,\n initialValue,\n path,\n permissions,\n readOnly: readOnly || false,\n rows: field?.rows,\n schemaPath,\n setValue,\n showError,\n valid: field?.valid,\n value,\n }),\n [\n field?.errorMessage,\n field?.rows,\n field?.valid,\n field?.errorPaths,\n processing,\n setValue,\n showError,\n submitted,\n value,\n initialValue,\n path,\n schemaPath,\n readOnly,\n permissions,\n filterOptions,\n initializing,\n ],\n )\n\n // Throttle the validate function\n useThrottledEffect(\n () => {\n const validateField = async () => {\n let valueToValidate = value\n\n if (field?.rows && Array.isArray(field.rows)) {\n valueToValidate = getDataByPath(path)\n }\n\n let errorMessage: string | undefined\n let valid: boolean | string = prevValid.current\n\n const isValid =\n typeof validate === 'function'\n ? await validate(valueToValidate, {\n id,\n collectionSlug,\n data: getData(),\n operation,\n preferences: {} as any,\n req: {\n payload: {\n config,\n },\n t,\n user,\n } as unknown as PayloadRequest,\n siblingData: getSiblingData(path),\n })\n : true\n\n if (typeof isValid === 'string') {\n valid = false\n errorMessage = isValid\n } else if (typeof isValid === 'boolean') {\n valid = isValid\n errorMessage = undefined\n }\n\n // Only dispatch if the validation result has changed\n // This will prevent unnecessary rerenders\n if (valid !== prevValid.current || errorMessage !== prevErrorMessage.current) {\n prevValid.current = valid\n prevErrorMessage.current = errorMessage\n\n const update: UPDATE = {\n type: 'UPDATE',\n errorMessage,\n path,\n rows: field?.rows,\n valid,\n validate,\n value,\n }\n\n if (disableFormData || (hasRows ? typeof value === 'number' && value > 0 : false)) {\n update.disableFormData = true\n }\n\n if (typeof dispatchField === 'function') {\n dispatchField(update)\n }\n }\n }\n\n void validateField()\n },\n 150,\n [\n value,\n disableFormData,\n dispatchField,\n getData,\n getSiblingData,\n getDataByPath,\n id,\n operation,\n path,\n user,\n validate,\n field?.rows,\n collectionSlug,\n ],\n )\n\n return result\n}\n"],"names":["useCallback","useMemo","useRef","useThrottledEffect","useAuth","useConfig","useDocumentInfo","useOperation","useTranslation","useFieldProps","useForm","useFormFields","useFormInitializing","useFormModified","useFormProcessing","useFormSubmitted","useField","options","disableFormData","hasRows","validate","path","pathFromContext","permissions","readOnly","schemaPath","submitted","processing","initializing","user","id","collectionSlug","operation","dispatchField","field","fields","dispatch","t","config","getData","getDataByPath","getSiblingData","setModified","modified","filterOptions","value","initialValue","valid","showError","prevValid","prevErrorMessage","errorMessage","setValue","e","disableModifyingForm","val","target","type","setTimeout","result","errorPaths","formInitializing","formProcessing","formSubmitted","rows","validateField","valueToValidate","Array","isArray","current","isValid","data","preferences","req","payload","siblingData","undefined","update"],"mappings":"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"}
@@ -5,6 +5,6 @@ export declare const WatchCondition: React.FC<{
5
5
  indexPath: string;
6
6
  name?: string;
7
7
  path?: string;
8
- type: keyof FieldTypes;
8
+ type: FieldTypes;
9
9
  }>;
10
10
  //# sourceMappingURL=WatchCondition.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WatchCondition.d.ts","sourceRoot":"","sources":["../../../src/forms/withCondition/WatchCondition.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,UAAU,CAAA;CACvB,CAqBA,CAAA"}
1
+ {"version":3,"file":"WatchCondition.d.ts","sourceRoot":"","sources":["../../../src/forms/withCondition/WatchCondition.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IACpC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,UAAU,CAAA;CACjB,CAqBA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/forms/withCondition/WatchCondition.tsx"],"sourcesContent":["'use client'\nimport type { FieldTypes } from 'payload'\n\nimport React, { Fragment } from 'react'\n\nimport { useFormFields } from '../Form/context.js'\n\nexport const WatchCondition: React.FC<{\n children: React.ReactNode\n indexPath: string\n name?: string\n path?: string\n type: keyof FieldTypes\n}> = (props) => {\n const { name, type, children, indexPath, path: pathFromProps } = props\n\n const path = typeof pathFromProps === 'string' ? pathFromProps : name\n\n let formStateID = path\n\n if (['collapsible', 'row'].includes(type)) {\n const index = indexPath.split('.').pop()\n formStateID = `${path ? `${path}.` : ''}_index-${index}`\n }\n\n const field = useFormFields(([fields]) => (fields && fields?.[formStateID]) || null)\n\n const { passesCondition } = field || {}\n\n if (passesCondition === false) {\n return null\n }\n\n return <Fragment>{children}</Fragment>\n}\n"],"names":["React","Fragment","useFormFields","WatchCondition","props","name","type","children","indexPath","path","pathFromProps","formStateID","includes","index","split","pop","field","fields","passesCondition"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,QAAQ,QAAQ,QAAO;AAEvC,SAASC,aAAa,QAAQ,qBAAoB;AAElD,OAAO,MAAMC,iBAMR,CAACC;IACJ,MAAM,EAAEC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,MAAMC,aAAa,EAAE,GAAGN;IAEjE,MAAMK,OAAO,OAAOC,kBAAkB,WAAWA,gBAAgBL;IAEjE,IAAIM,cAAcF;IAElB,IAAI;QAAC;QAAe;KAAM,CAACG,QAAQ,CAACN,OAAO;QACzC,MAAMO,QAAQL,UAAUM,KAAK,CAAC,KAAKC,GAAG;QACtCJ,cAAc,CAAC,EAAEF,OAAO,CAAC,EAAEA,KAAK,CAAC,CAAC,GAAG,GAAG,OAAO,EAAEI,MAAM,CAAC;IAC1D;IAEA,MAAMG,QAAQd,cAAc,CAAC,CAACe,OAAO,GAAK,AAACA,UAAUA,QAAQ,CAACN,YAAY,IAAK;IAE/E,MAAM,EAAEO,eAAe,EAAE,GAAGF,SAAS,CAAC;IAEtC,IAAIE,oBAAoB,OAAO;QAC7B,OAAO;IACT;IAEA,qBAAO,KAACjB;kBAAUM;;AACpB,EAAC"}
1
+ {"version":3,"sources":["../../../src/forms/withCondition/WatchCondition.tsx"],"sourcesContent":["'use client'\nimport type { FieldTypes } from 'payload'\n\nimport React, { Fragment } from 'react'\n\nimport { useFormFields } from '../Form/context.js'\n\nexport const WatchCondition: React.FC<{\n children: React.ReactNode\n indexPath: string\n name?: string\n path?: string\n type: FieldTypes\n}> = (props) => {\n const { name, type, children, indexPath, path: pathFromProps } = props\n\n const path = typeof pathFromProps === 'string' ? pathFromProps : name\n\n let formStateID = path\n\n if (['collapsible', 'row'].includes(type)) {\n const index = indexPath.split('.').pop()\n formStateID = `${path ? `${path}.` : ''}_index-${index}`\n }\n\n const field = useFormFields(([fields]) => (fields && fields?.[formStateID]) || null)\n\n const { passesCondition } = field || {}\n\n if (passesCondition === false) {\n return null\n }\n\n return <Fragment>{children}</Fragment>\n}\n"],"names":["React","Fragment","useFormFields","WatchCondition","props","name","type","children","indexPath","path","pathFromProps","formStateID","includes","index","split","pop","field","fields","passesCondition"],"mappings":"AAAA;;AAGA,OAAOA,SAASC,QAAQ,QAAQ,QAAO;AAEvC,SAASC,aAAa,QAAQ,qBAAoB;AAElD,OAAO,MAAMC,iBAMR,CAACC;IACJ,MAAM,EAAEC,IAAI,EAAEC,IAAI,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,MAAMC,aAAa,EAAE,GAAGN;IAEjE,MAAMK,OAAO,OAAOC,kBAAkB,WAAWA,gBAAgBL;IAEjE,IAAIM,cAAcF;IAElB,IAAI;QAAC;QAAe;KAAM,CAACG,QAAQ,CAACN,OAAO;QACzC,MAAMO,QAAQL,UAAUM,KAAK,CAAC,KAAKC,GAAG;QACtCJ,cAAc,CAAC,EAAEF,OAAO,CAAC,EAAEA,KAAK,CAAC,CAAC,GAAG,GAAG,OAAO,EAAEI,MAAM,CAAC;IAC1D;IAEA,MAAMG,QAAQd,cAAc,CAAC,CAACe,OAAO,GAAK,AAACA,UAAUA,QAAQ,CAACN,YAAY,IAAK;IAE/E,MAAM,EAAEO,eAAe,EAAE,GAAGF,SAAS,CAAC;IAEtC,IAAIE,oBAAoB,OAAO;QAC7B,OAAO;IACT;IAEA,qBAAO,KAACjB;kBAAUM;;AACpB,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphics/Account/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AAQzB,eAAO,MAAM,OAAO,yBAenB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/graphics/Account/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAA;AASzB,eAAO,MAAM,OAAO,yBA6BnB,CAAA"}
@@ -2,26 +2,32 @@
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { usePathname } from 'next/navigation.js';
4
4
  import React from 'react';
5
- import { useAuth } from '../../providers/Auth/index.js';
5
+ import { RenderComponent } from '../../providers/Config/RenderComponent.js';
6
6
  import { useConfig } from '../../providers/Config/index.js';
7
7
  import { formatAdminURL } from '../../utilities/formatAdminURL.js';
8
- import { DefaultAccountIcon } from './Default/index.js';
9
8
  import { GravatarAccountIcon } from './Gravatar/index.js';
9
+ import { useAuth } from '@payloadcms/ui';
10
+ import { DefaultAccountIcon } from './Default/index.js';
10
11
  export const Account = ()=>{
11
- const { admin: { avatar: Avatar }, admin: { routes: { account: accountRoute } }, routes: { admin: adminRoute } } = useConfig();
12
+ const { config: { admin: { avatar, routes: { account: accountRoute }, components: { Avatar: CustomAvatar } }, routes: { admin: adminRoute } } } = useConfig();
12
13
  const { user } = useAuth();
13
14
  const pathname = usePathname();
14
15
  const isOnAccountPage = pathname === formatAdminURL({
15
16
  adminRoute,
16
17
  path: accountRoute
17
18
  });
18
- if (!user?.email || Avatar === 'default') return /*#__PURE__*/ _jsx(DefaultAccountIcon, {
19
- active: isOnAccountPage
20
- });
21
- if (Avatar === 'gravatar') return /*#__PURE__*/ _jsx(GravatarAccountIcon, {});
22
- if (Avatar) return /*#__PURE__*/ _jsx(Avatar, {
19
+ if (CustomAvatar) {
20
+ return /*#__PURE__*/ _jsx(RenderComponent, {
21
+ clientProps: {
22
+ active: isOnAccountPage
23
+ },
24
+ mappedComponent: CustomAvatar
25
+ });
26
+ }
27
+ if (!user?.email || avatar === 'default') return /*#__PURE__*/ _jsx(DefaultAccountIcon, {
23
28
  active: isOnAccountPage
24
29
  });
30
+ if (avatar === 'gravatar') return /*#__PURE__*/ _jsx(GravatarAccountIcon, {});
25
31
  };
26
32
 
27
33
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/graphics/Account/index.tsx"],"sourcesContent":["'use client'\nimport { usePathname } from 'next/navigation.js'\nimport React from 'react'\n\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { DefaultAccountIcon } from './Default/index.js'\nimport { GravatarAccountIcon } from './Gravatar/index.js'\n\nexport const Account = () => {\n const {\n admin: { avatar: Avatar },\n admin: {\n routes: { account: accountRoute },\n },\n routes: { admin: adminRoute },\n } = useConfig()\n\n const { user } = useAuth()\n const pathname = usePathname()\n const isOnAccountPage = pathname === formatAdminURL({ adminRoute, path: accountRoute })\n if (!user?.email || Avatar === 'default') return <DefaultAccountIcon active={isOnAccountPage} />\n if (Avatar === 'gravatar') return <GravatarAccountIcon />\n if (Avatar) return <Avatar active={isOnAccountPage} />\n}\n"],"names":["usePathname","React","useAuth","useConfig","formatAdminURL","DefaultAccountIcon","GravatarAccountIcon","Account","admin","avatar","Avatar","routes","account","accountRoute","adminRoute","user","pathname","isOnAccountPage","path","email","active"],"mappings":"AAAA;;AACA,SAASA,WAAW,QAAQ,qBAAoB;AAChD,OAAOC,WAAW,QAAO;AAEzB,SAASC,OAAO,QAAQ,gCAA+B;AACvD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,oCAAmC;AAClE,SAASC,kBAAkB,QAAQ,qBAAoB;AACvD,SAASC,mBAAmB,QAAQ,sBAAqB;AAEzD,OAAO,MAAMC,UAAU;IACrB,MAAM,EACJC,OAAO,EAAEC,QAAQC,MAAM,EAAE,EACzBF,OAAO,EACLG,QAAQ,EAAEC,SAASC,YAAY,EAAE,EAClC,EACDF,QAAQ,EAAEH,OAAOM,UAAU,EAAE,EAC9B,GAAGX;IAEJ,MAAM,EAAEY,IAAI,EAAE,GAAGb;IACjB,MAAMc,WAAWhB;IACjB,MAAMiB,kBAAkBD,aAAaZ,eAAe;QAAEU;QAAYI,MAAML;IAAa;IACrF,IAAI,CAACE,MAAMI,SAAST,WAAW,WAAW,qBAAO,KAACL;QAAmBe,QAAQH;;IAC7E,IAAIP,WAAW,YAAY,qBAAO,KAACJ;IACnC,IAAII,QAAQ,qBAAO,KAACA;QAAOU,QAAQH;;AACrC,EAAC"}
1
+ {"version":3,"sources":["../../../src/graphics/Account/index.tsx"],"sourcesContent":["'use client'\nimport { usePathname } from 'next/navigation.js'\nimport React from 'react'\n\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { formatAdminURL } from '../../utilities/formatAdminURL.js'\nimport { GravatarAccountIcon } from './Gravatar/index.js'\nimport { useAuth } from '@payloadcms/ui'\nimport { DefaultAccountIcon } from './Default/index.js'\n\nexport const Account = () => {\n const {\n config: {\n admin: {\n avatar,\n routes: { account: accountRoute },\n components: { Avatar: CustomAvatar },\n },\n routes: { admin: adminRoute },\n },\n } = useConfig()\n\n const { user } = useAuth()\n const pathname = usePathname()\n const isOnAccountPage = pathname === formatAdminURL({ adminRoute, path: accountRoute })\n\n if (CustomAvatar) {\n return (\n <RenderComponent\n clientProps={{\n active: isOnAccountPage,\n }}\n mappedComponent={CustomAvatar}\n />\n )\n }\n\n if (!user?.email || avatar === 'default') return <DefaultAccountIcon active={isOnAccountPage} />\n if (avatar === 'gravatar') return <GravatarAccountIcon />\n}\n"],"names":["usePathname","React","RenderComponent","useConfig","formatAdminURL","GravatarAccountIcon","useAuth","DefaultAccountIcon","Account","config","admin","avatar","routes","account","accountRoute","components","Avatar","CustomAvatar","adminRoute","user","pathname","isOnAccountPage","path","clientProps","active","mappedComponent","email"],"mappings":"AAAA;;AACA,SAASA,WAAW,QAAQ,qBAAoB;AAChD,OAAOC,WAAW,QAAO;AAEzB,SAASC,eAAe,QAAQ,4CAA2C;AAC3E,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,oCAAmC;AAClE,SAASC,mBAAmB,QAAQ,sBAAqB;AACzD,SAASC,OAAO,QAAQ,iBAAgB;AACxC,SAASC,kBAAkB,QAAQ,qBAAoB;AAEvD,OAAO,MAAMC,UAAU;IACrB,MAAM,EACJC,QAAQ,EACNC,OAAO,EACLC,MAAM,EACNC,QAAQ,EAAEC,SAASC,YAAY,EAAE,EACjCC,YAAY,EAAEC,QAAQC,YAAY,EAAE,EACrC,EACDL,QAAQ,EAAEF,OAAOQ,UAAU,EAAE,EAC9B,EACF,GAAGf;IAEJ,MAAM,EAAEgB,IAAI,EAAE,GAAGb;IACjB,MAAMc,WAAWpB;IACjB,MAAMqB,kBAAkBD,aAAahB,eAAe;QAAEc;QAAYI,MAAMR;IAAa;IAErF,IAAIG,cAAc;QAChB,qBACE,KAACf;YACCqB,aAAa;gBACXC,QAAQH;YACV;YACAI,iBAAiBR;;IAGvB;IAEA,IAAI,CAACE,MAAMO,SAASf,WAAW,WAAW,qBAAO,KAACJ;QAAmBiB,QAAQH;;IAC7E,IAAIV,WAAW,YAAY,qBAAO,KAACN;AACrC,EAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useDelayedRender.d.ts","sourceRoot":"","sources":["../../src/hooks/useDelayedRender.ts"],"names":[],"mappings":"AAIA,KAAK,kBAAkB,GAAG;IACxB,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAA;IACvB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAA;IAClB;;SAEK;IACL,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AACD,KAAK,iBAAiB,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK;IACtD,6DAA6D;IAC7D,SAAS,EAAE,OAAO,CAAA;IAClB,6CAA6C;IAC7C,YAAY,EAAE,OAAO,CAAA;IACrB,wEAAwE;IACxE,oBAAoB,EAAE,MAAM,IAAI,CAAA;CACjC,CAAA;AACD,eAAO,MAAM,gBAAgB,EAAE,iBA2C9B,CAAA"}
1
+ {"version":3,"file":"useDelayedRender.d.ts","sourceRoot":"","sources":["../../src/hooks/useDelayedRender.ts"],"names":[],"mappings":"AAIA,KAAK,kBAAkB,GAAG;IACxB,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAA;IACvB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,WAAW,EAAE,MAAM,CAAA;IACnB,uDAAuD;IACvD,UAAU,EAAE,MAAM,CAAA;IAClB;;SAEK;IACL,IAAI,EAAE,OAAO,CAAA;CACd,CAAA;AACD,KAAK,iBAAiB,GAAG,CAAC,KAAK,EAAE,kBAAkB,KAAK;IACtD,6DAA6D;IAC7D,SAAS,EAAE,OAAO,CAAA;IAClB,6CAA6C;IAC7C,YAAY,EAAE,OAAO,CAAA;IACrB,wEAAwE;IACxE,oBAAoB,EAAE,MAAM,IAAI,CAAA;CACjC,CAAA;AACD,eAAO,MAAM,gBAAgB,EAAE,iBA0C9B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/useDelayedRender.ts"],"sourcesContent":["import * as React from 'react'\n\nimport { useDelay } from './useDelay.js'\n\ntype DelayedRenderProps = {\n /** Time in ms to wait before \"mounting\" the component. */\n delayBeforeShow: number\n /** Time in ms for the \"enter\" phase of the transition, after delay completes. */\n inTimeout: number\n /** Min time in ms for the \"entered\" phase of the transition. */\n minShowTime: number\n /** Time in ms for the exit phase of the transition. */\n outTimeout: number\n /** `true` starts the mount process.\n * `false` starts the unmount process.\n * */\n show: boolean\n}\ntype useDelayedRenderT = (props: DelayedRenderProps) => {\n /** `true` if the component has mounted after the timeout. */\n isMounted: boolean\n /** `true` if the component is unmounting. */\n isUnmounting: boolean\n /** Call this function to trigger the timeout delay before rendering. */\n triggerDelayedRender: () => void\n}\nexport const useDelayedRender: useDelayedRenderT = ({\n delayBeforeShow,\n inTimeout,\n minShowTime,\n outTimeout,\n show,\n}) => {\n const totalMountTime = inTimeout + minShowTime + outTimeout\n const [hasDelayed, triggerDelay] = useDelay(delayBeforeShow)\n const [isMounted, setIsMounted] = React.useState(false)\n const [isUnmounting, setIsUnmounting] = React.useState(false)\n const onMountTimestampRef = React.useRef(0)\n const unmountTimeoutRef: React.MutableRefObject<NodeJS.Timeout | undefined> =\n React.useRef(undefined)\n\n const unmount = React.useCallback(() => {\n setIsUnmounting(true)\n unmountTimeoutRef.current = setTimeout(() => {\n setIsMounted(false)\n setIsUnmounting(false)\n }, outTimeout)\n }, [setIsUnmounting, outTimeout])\n\n React.useEffect(() => {\n const shouldMount = hasDelayed && !isMounted && show\n const shouldUnmount = isMounted && !show\n\n if (shouldMount) {\n onMountTimestampRef.current = Date.now()\n setIsMounted(true)\n } else if (shouldUnmount) {\n const totalTimeMounted = Date.now() - onMountTimestampRef.current\n const remainingTime = totalMountTime - totalTimeMounted\n clearTimeout(unmountTimeoutRef.current)\n unmountTimeoutRef.current = setTimeout(unmount, Math.max(0, remainingTime))\n }\n }, [isMounted, show, unmount, totalMountTime, hasDelayed])\n\n return {\n isMounted,\n isUnmounting,\n triggerDelayedRender: triggerDelay,\n }\n}\n"],"names":["React","useDelay","useDelayedRender","delayBeforeShow","inTimeout","minShowTime","outTimeout","show","totalMountTime","hasDelayed","triggerDelay","isMounted","setIsMounted","useState","isUnmounting","setIsUnmounting","onMountTimestampRef","useRef","unmountTimeoutRef","undefined","unmount","useCallback","current","setTimeout","useEffect","shouldMount","shouldUnmount","Date","now","totalTimeMounted","remainingTime","clearTimeout","Math","max","triggerDelayedRender"],"mappings":"AAAA,YAAYA,WAAW,QAAO;AAE9B,SAASC,QAAQ,QAAQ,gBAAe;AAwBxC,OAAO,MAAMC,mBAAsC,CAAC,EAClDC,eAAe,EACfC,SAAS,EACTC,WAAW,EACXC,UAAU,EACVC,IAAI,EACL;IACC,MAAMC,iBAAiBJ,YAAYC,cAAcC;IACjD,MAAM,CAACG,YAAYC,aAAa,GAAGT,SAASE;IAC5C,MAAM,CAACQ,WAAWC,aAAa,GAAGZ,MAAMa,QAAQ,CAAC;IACjD,MAAM,CAACC,cAAcC,gBAAgB,GAAGf,MAAMa,QAAQ,CAAC;IACvD,MAAMG,sBAAsBhB,MAAMiB,MAAM,CAAC;IACzC,MAAMC,oBACJlB,MAAMiB,MAAM,CAACE;IAEf,MAAMC,UAAUpB,MAAMqB,WAAW,CAAC;QAChCN,gBAAgB;QAChBG,kBAAkBI,OAAO,GAAGC,WAAW;YACrCX,aAAa;YACbG,gBAAgB;QAClB,GAAGT;IACL,GAAG;QAACS;QAAiBT;KAAW;IAEhCN,MAAMwB,SAAS,CAAC;QACd,MAAMC,cAAchB,cAAc,CAACE,aAAaJ;QAChD,MAAMmB,gBAAgBf,aAAa,CAACJ;QAEpC,IAAIkB,aAAa;YACfT,oBAAoBM,OAAO,GAAGK,KAAKC,GAAG;YACtChB,aAAa;QACf,OAAO,IAAIc,eAAe;YACxB,MAAMG,mBAAmBF,KAAKC,GAAG,KAAKZ,oBAAoBM,OAAO;YACjE,MAAMQ,gBAAgBtB,iBAAiBqB;YACvCE,aAAab,kBAAkBI,OAAO;YACtCJ,kBAAkBI,OAAO,GAAGC,WAAWH,SAASY,KAAKC,GAAG,CAAC,GAAGH;QAC9D;IACF,GAAG;QAACnB;QAAWJ;QAAMa;QAASZ;QAAgBC;KAAW;IAEzD,OAAO;QACLE;QACAG;QACAoB,sBAAsBxB;IACxB;AACF,EAAC"}
1
+ {"version":3,"sources":["../../src/hooks/useDelayedRender.ts"],"sourcesContent":["import * as React from 'react'\n\nimport { useDelay } from './useDelay.js'\n\ntype DelayedRenderProps = {\n /** Time in ms to wait before \"mounting\" the component. */\n delayBeforeShow: number\n /** Time in ms for the \"enter\" phase of the transition, after delay completes. */\n inTimeout: number\n /** Min time in ms for the \"entered\" phase of the transition. */\n minShowTime: number\n /** Time in ms for the exit phase of the transition. */\n outTimeout: number\n /** `true` starts the mount process.\n * `false` starts the unmount process.\n * */\n show: boolean\n}\ntype useDelayedRenderT = (props: DelayedRenderProps) => {\n /** `true` if the component has mounted after the timeout. */\n isMounted: boolean\n /** `true` if the component is unmounting. */\n isUnmounting: boolean\n /** Call this function to trigger the timeout delay before rendering. */\n triggerDelayedRender: () => void\n}\nexport const useDelayedRender: useDelayedRenderT = ({\n delayBeforeShow,\n inTimeout,\n minShowTime,\n outTimeout,\n show,\n}) => {\n const totalMountTime = inTimeout + minShowTime + outTimeout\n const [hasDelayed, triggerDelay] = useDelay(delayBeforeShow)\n const [isMounted, setIsMounted] = React.useState(false)\n const [isUnmounting, setIsUnmounting] = React.useState(false)\n const onMountTimestampRef = React.useRef(0)\n const unmountTimeoutRef: React.RefObject<NodeJS.Timeout | undefined> = React.useRef(undefined)\n\n const unmount = React.useCallback(() => {\n setIsUnmounting(true)\n unmountTimeoutRef.current = setTimeout(() => {\n setIsMounted(false)\n setIsUnmounting(false)\n }, outTimeout)\n }, [setIsUnmounting, outTimeout])\n\n React.useEffect(() => {\n const shouldMount = hasDelayed && !isMounted && show\n const shouldUnmount = isMounted && !show\n\n if (shouldMount) {\n onMountTimestampRef.current = Date.now()\n setIsMounted(true)\n } else if (shouldUnmount) {\n const totalTimeMounted = Date.now() - onMountTimestampRef.current\n const remainingTime = totalMountTime - totalTimeMounted\n clearTimeout(unmountTimeoutRef.current)\n unmountTimeoutRef.current = setTimeout(unmount, Math.max(0, remainingTime))\n }\n }, [isMounted, show, unmount, totalMountTime, hasDelayed])\n\n return {\n isMounted,\n isUnmounting,\n triggerDelayedRender: triggerDelay,\n }\n}\n"],"names":["React","useDelay","useDelayedRender","delayBeforeShow","inTimeout","minShowTime","outTimeout","show","totalMountTime","hasDelayed","triggerDelay","isMounted","setIsMounted","useState","isUnmounting","setIsUnmounting","onMountTimestampRef","useRef","unmountTimeoutRef","undefined","unmount","useCallback","current","setTimeout","useEffect","shouldMount","shouldUnmount","Date","now","totalTimeMounted","remainingTime","clearTimeout","Math","max","triggerDelayedRender"],"mappings":"AAAA,YAAYA,WAAW,QAAO;AAE9B,SAASC,QAAQ,QAAQ,gBAAe;AAwBxC,OAAO,MAAMC,mBAAsC,CAAC,EAClDC,eAAe,EACfC,SAAS,EACTC,WAAW,EACXC,UAAU,EACVC,IAAI,EACL;IACC,MAAMC,iBAAiBJ,YAAYC,cAAcC;IACjD,MAAM,CAACG,YAAYC,aAAa,GAAGT,SAASE;IAC5C,MAAM,CAACQ,WAAWC,aAAa,GAAGZ,MAAMa,QAAQ,CAAC;IACjD,MAAM,CAACC,cAAcC,gBAAgB,GAAGf,MAAMa,QAAQ,CAAC;IACvD,MAAMG,sBAAsBhB,MAAMiB,MAAM,CAAC;IACzC,MAAMC,oBAAiElB,MAAMiB,MAAM,CAACE;IAEpF,MAAMC,UAAUpB,MAAMqB,WAAW,CAAC;QAChCN,gBAAgB;QAChBG,kBAAkBI,OAAO,GAAGC,WAAW;YACrCX,aAAa;YACbG,gBAAgB;QAClB,GAAGT;IACL,GAAG;QAACS;QAAiBT;KAAW;IAEhCN,MAAMwB,SAAS,CAAC;QACd,MAAMC,cAAchB,cAAc,CAACE,aAAaJ;QAChD,MAAMmB,gBAAgBf,aAAa,CAACJ;QAEpC,IAAIkB,aAAa;YACfT,oBAAoBM,OAAO,GAAGK,KAAKC,GAAG;YACtChB,aAAa;QACf,OAAO,IAAIc,eAAe;YACxB,MAAMG,mBAAmBF,KAAKC,GAAG,KAAKZ,oBAAoBM,OAAO;YACjE,MAAMQ,gBAAgBtB,iBAAiBqB;YACvCE,aAAab,kBAAkBI,OAAO;YACtCJ,kBAAkBI,OAAO,GAAGC,WAAWH,SAASY,KAAKC,GAAG,CAAC,GAAGH;QAC9D;IACF,GAAG;QAACnB;QAAWJ;QAAMa;QAASZ;QAAgBC;KAAW;IAEzD,OAAO;QACLE;QACAG;QACAoB,sBAAsBxB;IACxB;AACF,EAAC"}