@payloadcms/ui 3.0.0-beta.85 → 3.0.0-beta.87

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 (827) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js +0 -1
  3. package/dist/assets/index.js.map +1 -1
  4. package/dist/elements/AppHeader/index.js +132 -95
  5. package/dist/elements/AppHeader/index.js.map +1 -1
  6. package/dist/elements/ArrayAction/index.js +93 -83
  7. package/dist/elements/ArrayAction/index.js.map +1 -1
  8. package/dist/elements/Autosave/index.js +277 -199
  9. package/dist/elements/Autosave/index.js.map +1 -1
  10. package/dist/elements/Banner/index.js +27 -31
  11. package/dist/elements/Banner/index.js.map +1 -1
  12. package/dist/elements/Button/index.js +212 -101
  13. package/dist/elements/Button/index.js.map +1 -1
  14. package/dist/elements/Button/types.js +1 -2
  15. package/dist/elements/Button/types.js.map +1 -1
  16. package/dist/elements/Card/index.js +33 -32
  17. package/dist/elements/Card/index.js.map +1 -1
  18. package/dist/elements/CodeEditor/CodeEditor.js +77 -28
  19. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  20. package/dist/elements/CodeEditor/index.js +15 -13
  21. package/dist/elements/CodeEditor/index.js.map +1 -1
  22. package/dist/elements/CodeEditor/types.js +1 -2
  23. package/dist/elements/CodeEditor/types.js.map +1 -1
  24. package/dist/elements/Collapsible/index.js +167 -84
  25. package/dist/elements/Collapsible/index.js.map +1 -1
  26. package/dist/elements/Collapsible/provider.js +31 -27
  27. package/dist/elements/Collapsible/provider.js.map +1 -1
  28. package/dist/elements/ColumnSelector/index.js +94 -41
  29. package/dist/elements/ColumnSelector/index.js.map +1 -1
  30. package/dist/elements/CopyToClipboard/index.js +78 -45
  31. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  32. package/dist/elements/DatePicker/DatePicker.js +132 -81
  33. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  34. package/dist/elements/DatePicker/getFormattedLocale.d.ts.map +1 -1
  35. package/dist/elements/DatePicker/getFormattedLocale.js +11 -10
  36. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  37. package/dist/elements/DatePicker/index.js +10 -10
  38. package/dist/elements/DatePicker/index.js.map +1 -1
  39. package/dist/elements/DatePicker/types.js +1 -2
  40. package/dist/elements/DatePicker/types.js.map +1 -1
  41. package/dist/elements/DeleteDocument/index.js +127 -130
  42. package/dist/elements/DeleteDocument/index.js.map +1 -1
  43. package/dist/elements/DeleteMany/index.js +119 -114
  44. package/dist/elements/DeleteMany/index.js.map +1 -1
  45. package/dist/elements/DocumentControls/index.js +179 -201
  46. package/dist/elements/DocumentControls/index.js.map +1 -1
  47. package/dist/elements/DocumentDrawer/DrawerContent.js +169 -82
  48. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  49. package/dist/elements/DocumentDrawer/index.js +251 -107
  50. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  51. package/dist/elements/DocumentDrawer/types.js +1 -2
  52. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  53. package/dist/elements/DocumentFields/index.js +53 -56
  54. package/dist/elements/DocumentFields/index.js.map +1 -1
  55. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +59 -21
  56. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  57. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +1 -2
  58. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  59. package/dist/elements/DraggableSortable/index.js +96 -40
  60. package/dist/elements/DraggableSortable/index.js.map +1 -1
  61. package/dist/elements/DraggableSortable/types.js +1 -2
  62. package/dist/elements/DraggableSortable/types.js.map +1 -1
  63. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +85 -24
  64. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  65. package/dist/elements/DraggableSortable/useDraggableSortable/types.js +1 -2
  66. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  67. package/dist/elements/Drawer/index.js +217 -103
  68. package/dist/elements/Drawer/index.js.map +1 -1
  69. package/dist/elements/Drawer/types.js +1 -2
  70. package/dist/elements/Drawer/types.js.map +1 -1
  71. package/dist/elements/Drawer/useDrawerSlug.js +19 -7
  72. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  73. package/dist/elements/Dropzone/index.js +157 -113
  74. package/dist/elements/Dropzone/index.js.map +1 -1
  75. package/dist/elements/DuplicateDocument/index.js +165 -97
  76. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  77. package/dist/elements/EditMany/index.js +399 -211
  78. package/dist/elements/EditMany/index.js.map +1 -1
  79. package/dist/elements/EditUpload/index.js +452 -401
  80. package/dist/elements/EditUpload/index.js.map +1 -1
  81. package/dist/elements/ErrorPill/index.js +21 -23
  82. package/dist/elements/ErrorPill/index.js.map +1 -1
  83. package/dist/elements/FieldSelect/index.js +165 -135
  84. package/dist/elements/FieldSelect/index.js.map +1 -1
  85. package/dist/elements/FileDetails/FileMeta/index.js +92 -61
  86. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  87. package/dist/elements/FileDetails/index.js +60 -49
  88. package/dist/elements/FileDetails/index.js.map +1 -1
  89. package/dist/elements/GenerateConfirmation/index.js +62 -59
  90. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  91. package/dist/elements/Gutter/index.d.ts.map +1 -1
  92. package/dist/elements/Gutter/index.js +18 -16
  93. package/dist/elements/Gutter/index.js.map +1 -1
  94. package/dist/elements/Hamburger/index.js +38 -25
  95. package/dist/elements/Hamburger/index.js.map +1 -1
  96. package/dist/elements/HydrateAuthProvider/index.js +27 -10
  97. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  98. package/dist/elements/IDLabel/index.js +10 -13
  99. package/dist/elements/IDLabel/index.js.map +1 -1
  100. package/dist/elements/ListControls/getTextFieldsToBeSearched.d.ts.map +1 -1
  101. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +8 -7
  102. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  103. package/dist/elements/ListControls/index.js +248 -150
  104. package/dist/elements/ListControls/index.js.map +1 -1
  105. package/dist/elements/ListDrawer/DrawerContent.js +508 -263
  106. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  107. package/dist/elements/ListDrawer/index.js +227 -120
  108. package/dist/elements/ListDrawer/index.js.map +1 -1
  109. package/dist/elements/ListDrawer/types.js +1 -2
  110. package/dist/elements/ListDrawer/types.js.map +1 -1
  111. package/dist/elements/ListSelection/index.js +54 -36
  112. package/dist/elements/ListSelection/index.js.map +1 -1
  113. package/dist/elements/Loading/index.js +150 -73
  114. package/dist/elements/Loading/index.js.map +1 -1
  115. package/dist/elements/LoadingOverlay/index.js +120 -59
  116. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  117. package/dist/elements/LoadingOverlay/reducer.d.ts.map +1 -1
  118. package/dist/elements/LoadingOverlay/reducer.js +30 -27
  119. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  120. package/dist/elements/LoadingOverlay/types.js +1 -2
  121. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  122. package/dist/elements/Localizer/LocalizerLabel/index.js +56 -27
  123. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  124. package/dist/elements/Localizer/index.js +85 -40
  125. package/dist/elements/Localizer/index.js.map +1 -1
  126. package/dist/elements/Logout/index.js +94 -26
  127. package/dist/elements/Logout/index.js.map +1 -1
  128. package/dist/elements/Modal/index.d.ts.map +1 -1
  129. package/dist/elements/Modal/index.js +2 -1
  130. package/dist/elements/Modal/index.js.map +1 -1
  131. package/dist/elements/Nav/NavToggler/index.js +78 -28
  132. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  133. package/dist/elements/Nav/context.js +126 -88
  134. package/dist/elements/Nav/context.js.map +1 -1
  135. package/dist/elements/NavGroup/index.js +141 -73
  136. package/dist/elements/NavGroup/index.js.map +1 -1
  137. package/dist/elements/Pagination/ClickableArrow/index.js +15 -15
  138. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  139. package/dist/elements/Pagination/Page/index.js +15 -14
  140. package/dist/elements/Pagination/Page/index.js.map +1 -1
  141. package/dist/elements/Pagination/Separator/index.js +5 -5
  142. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  143. package/dist/elements/Pagination/index.js +90 -81
  144. package/dist/elements/Pagination/index.js.map +1 -1
  145. package/dist/elements/PerPage/index.js +77 -48
  146. package/dist/elements/PerPage/index.js.map +1 -1
  147. package/dist/elements/Pill/index.js +108 -64
  148. package/dist/elements/Pill/index.js.map +1 -1
  149. package/dist/elements/Popup/PopupButtonList/index.js +51 -48
  150. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  151. package/dist/elements/Popup/PopupTrigger/index.js +34 -32
  152. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  153. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  154. package/dist/elements/Popup/index.js +143 -145
  155. package/dist/elements/Popup/index.js.map +1 -1
  156. package/dist/elements/PreviewButton/index.js +44 -21
  157. package/dist/elements/PreviewButton/index.js.map +1 -1
  158. package/dist/elements/PreviewButton/usePreviewURL.js +57 -48
  159. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  160. package/dist/elements/PreviewSizes/index.js +118 -129
  161. package/dist/elements/PreviewSizes/index.js.map +1 -1
  162. package/dist/elements/PublishButton/index.js +108 -44
  163. package/dist/elements/PublishButton/index.js.map +1 -1
  164. package/dist/elements/PublishMany/index.js +120 -115
  165. package/dist/elements/PublishMany/index.js.map +1 -1
  166. package/dist/elements/ReactSelect/ClearIndicator/index.js +26 -20
  167. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  168. package/dist/elements/ReactSelect/Control/index.js +40 -31
  169. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  170. package/dist/elements/ReactSelect/DropdownIndicator/index.js +20 -15
  171. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  172. package/dist/elements/ReactSelect/Input/index.js +12 -11
  173. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  174. package/dist/elements/ReactSelect/MultiValue/index.js +124 -38
  175. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  176. package/dist/elements/ReactSelect/MultiValueLabel/index.js +20 -14
  177. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  178. package/dist/elements/ReactSelect/MultiValueRemove/index.js +84 -35
  179. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  180. package/dist/elements/ReactSelect/SingleValue/index.js +13 -13
  181. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  182. package/dist/elements/ReactSelect/ValueContainer/index.js +15 -11
  183. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  184. package/dist/elements/ReactSelect/index.js +180 -165
  185. package/dist/elements/ReactSelect/index.js.map +1 -1
  186. package/dist/elements/ReactSelect/types.js +1 -2
  187. package/dist/elements/ReactSelect/types.js.map +1 -1
  188. package/dist/elements/RenderTitle/index.js +53 -23
  189. package/dist/elements/RenderTitle/index.js.map +1 -1
  190. package/dist/elements/SaveButton/index.js +98 -41
  191. package/dist/elements/SaveButton/index.js.map +1 -1
  192. package/dist/elements/SaveDraftButton/index.js +143 -73
  193. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  194. package/dist/elements/SearchFilter/index.js +85 -27
  195. package/dist/elements/SearchFilter/index.js.map +1 -1
  196. package/dist/elements/SelectAll/index.js +44 -15
  197. package/dist/elements/SelectAll/index.js.map +1 -1
  198. package/dist/elements/SelectRow/index.js +41 -11
  199. package/dist/elements/SelectRow/index.js.map +1 -1
  200. package/dist/elements/ShimmerEffect/index.js +61 -31
  201. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  202. package/dist/elements/SortColumn/index.js +107 -65
  203. package/dist/elements/SortColumn/index.js.map +1 -1
  204. package/dist/elements/SortComplex/index.js +172 -101
  205. package/dist/elements/SortComplex/index.js.map +1 -1
  206. package/dist/elements/Status/index.js +233 -176
  207. package/dist/elements/Status/index.js.map +1 -1
  208. package/dist/elements/StayLoggedIn/index.js +98 -52
  209. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  210. package/dist/elements/StepNav/SetStepNav.js +27 -10
  211. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  212. package/dist/elements/StepNav/context.d.ts.map +1 -1
  213. package/dist/elements/StepNav/context.js +35 -11
  214. package/dist/elements/StepNav/context.js.map +1 -1
  215. package/dist/elements/StepNav/index.js +89 -67
  216. package/dist/elements/StepNav/index.js.map +1 -1
  217. package/dist/elements/StepNav/types.js +1 -2
  218. package/dist/elements/StepNav/types.js.map +1 -1
  219. package/dist/elements/Table/DefaultCell/fields/Array/index.js +26 -7
  220. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  221. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +51 -24
  222. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  223. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +25 -8
  224. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  225. package/dist/elements/Table/DefaultCell/fields/Code/index.js +16 -13
  226. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  227. package/dist/elements/Table/DefaultCell/fields/Date/index.js +59 -11
  228. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  229. package/dist/elements/Table/DefaultCell/fields/File/index.js +27 -23
  230. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  231. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +11 -9
  232. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  233. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +182 -89
  234. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  235. package/dist/elements/Table/DefaultCell/fields/Select/index.js +58 -17
  236. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  237. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +8 -6
  238. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  239. package/dist/elements/Table/DefaultCell/fields/index.js +13 -13
  240. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  241. package/dist/elements/Table/DefaultCell/index.js +158 -72
  242. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  243. package/dist/elements/Table/RelationshipProvider/index.js +144 -82
  244. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  245. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  246. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  247. package/dist/elements/Table/TableCellProvider/index.js +41 -18
  248. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  249. package/dist/elements/Table/index.js +83 -46
  250. package/dist/elements/Table/index.js.map +1 -1
  251. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  252. package/dist/elements/TableColumns/buildColumnState.js +105 -97
  253. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  254. package/dist/elements/TableColumns/filterFields.js +17 -20
  255. package/dist/elements/TableColumns/filterFields.js.map +1 -1
  256. package/dist/elements/TableColumns/getInitialColumns.d.ts.map +1 -1
  257. package/dist/elements/TableColumns/getInitialColumns.js +29 -42
  258. package/dist/elements/TableColumns/getInitialColumns.js.map +1 -1
  259. package/dist/elements/TableColumns/index.js +248 -125
  260. package/dist/elements/TableColumns/index.js.map +1 -1
  261. package/dist/elements/Thumbnail/index.js +100 -43
  262. package/dist/elements/Thumbnail/index.js.map +1 -1
  263. package/dist/elements/ThumbnailCard/index.js +77 -35
  264. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  265. package/dist/elements/Tooltip/index.js +131 -69
  266. package/dist/elements/Tooltip/index.js.map +1 -1
  267. package/dist/elements/Translation/index.d.ts.map +1 -1
  268. package/dist/elements/Translation/index.js +40 -31
  269. package/dist/elements/Translation/index.js.map +1 -1
  270. package/dist/elements/UnpublishMany/index.js +121 -116
  271. package/dist/elements/UnpublishMany/index.js.map +1 -1
  272. package/dist/elements/Upload/index.js +456 -291
  273. package/dist/elements/Upload/index.js.map +1 -1
  274. package/dist/elements/ViewDescription/index.d.ts +5 -5
  275. package/dist/elements/ViewDescription/index.d.ts.map +1 -1
  276. package/dist/elements/ViewDescription/index.js +37 -14
  277. package/dist/elements/ViewDescription/index.js.map +1 -1
  278. package/dist/elements/ViewDescription/types.js.map +1 -1
  279. package/dist/elements/WhereBuilder/Condition/Date/index.js +19 -12
  280. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  281. package/dist/elements/WhereBuilder/Condition/Date/types.js +1 -2
  282. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  283. package/dist/elements/WhereBuilder/Condition/Number/index.js +38 -10
  284. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  285. package/dist/elements/WhereBuilder/Condition/Number/types.js +1 -2
  286. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  287. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +272 -300
  288. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  289. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.d.ts.map +1 -1
  290. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +68 -83
  291. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  292. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +1 -2
  293. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  294. package/dist/elements/WhereBuilder/Condition/Select/index.js +159 -68
  295. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  296. package/dist/elements/WhereBuilder/Condition/Select/types.js +1 -2
  297. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  298. package/dist/elements/WhereBuilder/Condition/Text/index.js +38 -10
  299. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  300. package/dist/elements/WhereBuilder/Condition/Text/types.js +1 -2
  301. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  302. package/dist/elements/WhereBuilder/Condition/index.js +296 -140
  303. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  304. package/dist/elements/WhereBuilder/Condition/types.js +1 -2
  305. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  306. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  307. package/dist/elements/WhereBuilder/field-types.js +103 -163
  308. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  309. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  310. package/dist/elements/WhereBuilder/index.js +274 -229
  311. package/dist/elements/WhereBuilder/index.js.map +1 -1
  312. package/dist/elements/WhereBuilder/reduceClientFields.js +95 -89
  313. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  314. package/dist/elements/WhereBuilder/transformWhereQuery.d.ts.map +1 -1
  315. package/dist/elements/WhereBuilder/transformWhereQuery.js +39 -45
  316. package/dist/elements/WhereBuilder/transformWhereQuery.js.map +1 -1
  317. package/dist/elements/WhereBuilder/types.js +1 -2
  318. package/dist/elements/WhereBuilder/types.js.map +1 -1
  319. package/dist/elements/WhereBuilder/validateWhereQuery.d.ts.map +1 -1
  320. package/dist/elements/WhereBuilder/validateWhereQuery.js +30 -29
  321. package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -1
  322. package/dist/elements/WindowInfo/index.d.ts.map +1 -1
  323. package/dist/elements/WindowInfo/index.js +2 -1
  324. package/dist/elements/WindowInfo/index.js.map +1 -1
  325. package/dist/elements/WithServerSideProps/index.js +20 -17
  326. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  327. package/dist/elements/withMergedProps/index.js +25 -21
  328. package/dist/elements/withMergedProps/index.js.map +1 -1
  329. package/dist/exports/client/CodeEditor-C4FLUUO7.js +24 -0
  330. package/dist/exports/client/CodeEditor-C4FLUUO7.js.map +8 -0
  331. package/dist/exports/client/{DatePicker-QKRYICNS.js → DatePicker-E6IJFDN2.js} +2 -2
  332. package/dist/exports/client/{chunk-HR5HEGNB.js → chunk-OBXEO4WP.js} +3 -3
  333. package/dist/exports/client/{chunk-HR5HEGNB.js.map → chunk-OBXEO4WP.js.map} +3 -3
  334. package/dist/exports/client/chunk-UGBVRIVY.js +14 -0
  335. package/dist/exports/client/chunk-UGBVRIVY.js.map +8 -0
  336. package/dist/exports/client/index.js +19 -19
  337. package/dist/exports/client/index.js.map +4 -4
  338. package/dist/exports/shared/index.js +2 -2
  339. package/dist/exports/shared/index.js.map +3 -3
  340. package/dist/fields/Array/ArrayRow.js +163 -67
  341. package/dist/fields/Array/ArrayRow.js.map +1 -1
  342. package/dist/fields/Array/index.d.ts.map +1 -1
  343. package/dist/fields/Array/index.js +474 -291
  344. package/dist/fields/Array/index.js.map +1 -1
  345. package/dist/fields/Blocks/BlockRow.js +155 -80
  346. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  347. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +36 -16
  348. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  349. package/dist/fields/Blocks/BlocksDrawer/index.js +121 -68
  350. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  351. package/dist/fields/Blocks/RowActions.js +98 -34
  352. package/dist/fields/Blocks/RowActions.js.map +1 -1
  353. package/dist/fields/Blocks/SectionTitle/index.js +77 -27
  354. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  355. package/dist/fields/Blocks/index.d.ts.map +1 -1
  356. package/dist/fields/Blocks/index.js +476 -307
  357. package/dist/fields/Blocks/index.js.map +1 -1
  358. package/dist/fields/Checkbox/Input.d.ts +5 -3
  359. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  360. package/dist/fields/Checkbox/Input.js +49 -51
  361. package/dist/fields/Checkbox/Input.js.map +1 -1
  362. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  363. package/dist/fields/Checkbox/index.js +214 -76
  364. package/dist/fields/Checkbox/index.js.map +1 -1
  365. package/dist/fields/Code/index.d.ts.map +1 -1
  366. package/dist/fields/Code/index.js +201 -71
  367. package/dist/fields/Code/index.js.map +1 -1
  368. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  369. package/dist/fields/Collapsible/index.js +213 -124
  370. package/dist/fields/Collapsible/index.js.map +1 -1
  371. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  372. package/dist/fields/ConfirmPassword/index.js +82 -46
  373. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  374. package/dist/fields/DateTime/index.d.ts.map +1 -1
  375. package/dist/fields/DateTime/index.js +194 -72
  376. package/dist/fields/DateTime/index.js.map +1 -1
  377. package/dist/fields/Email/index.d.ts.map +1 -1
  378. package/dist/fields/Email/index.js +193 -74
  379. package/dist/fields/Email/index.js.map +1 -1
  380. package/dist/fields/FieldDescription/index.d.ts +2 -3
  381. package/dist/fields/FieldDescription/index.d.ts.map +1 -1
  382. package/dist/fields/FieldDescription/index.js +57 -26
  383. package/dist/fields/FieldDescription/index.js.map +1 -1
  384. package/dist/fields/FieldError/index.d.ts +2 -3
  385. package/dist/fields/FieldError/index.d.ts.map +1 -1
  386. package/dist/fields/FieldError/index.js +73 -29
  387. package/dist/fields/FieldError/index.js.map +1 -1
  388. package/dist/fields/FieldLabel/index.d.ts +2 -3
  389. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  390. package/dist/fields/FieldLabel/index.js +82 -30
  391. package/dist/fields/FieldLabel/index.js.map +1 -1
  392. package/dist/fields/Group/index.d.ts.map +1 -1
  393. package/dist/fields/Group/index.js +177 -80
  394. package/dist/fields/Group/index.js.map +1 -1
  395. package/dist/fields/Group/provider.js +13 -8
  396. package/dist/fields/Group/provider.js.map +1 -1
  397. package/dist/fields/Hidden/index.js +73 -22
  398. package/dist/fields/Hidden/index.js.map +1 -1
  399. package/dist/fields/JSON/index.d.ts.map +1 -1
  400. package/dist/fields/JSON/index.js +117 -114
  401. package/dist/fields/JSON/index.js.map +1 -1
  402. package/dist/fields/Number/index.d.ts.map +1 -1
  403. package/dist/fields/Number/index.js +318 -165
  404. package/dist/fields/Number/index.js.map +1 -1
  405. package/dist/fields/Password/index.js +173 -68
  406. package/dist/fields/Password/index.js.map +1 -1
  407. package/dist/fields/Password/input.d.ts.map +1 -1
  408. package/dist/fields/Password/input.js +135 -62
  409. package/dist/fields/Password/input.js.map +1 -1
  410. package/dist/fields/Password/types.d.ts +7 -3
  411. package/dist/fields/Password/types.d.ts.map +1 -1
  412. package/dist/fields/Password/types.js +1 -2
  413. package/dist/fields/Password/types.js.map +1 -1
  414. package/dist/fields/Point/index.d.ts.map +1 -1
  415. package/dist/fields/Point/index.js +258 -133
  416. package/dist/fields/Point/index.js.map +1 -1
  417. package/dist/fields/RadioGroup/Radio/index.js +79 -34
  418. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  419. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  420. package/dist/fields/RadioGroup/index.js +244 -94
  421. package/dist/fields/RadioGroup/index.js.map +1 -1
  422. package/dist/fields/Relationship/AddNew/index.js +246 -158
  423. package/dist/fields/Relationship/AddNew/index.js.map +1 -1
  424. package/dist/fields/Relationship/AddNew/types.js +1 -2
  425. package/dist/fields/Relationship/AddNew/types.js.map +1 -1
  426. package/dist/fields/Relationship/AddNew/useRelatedCollections.d.ts.map +1 -1
  427. package/dist/fields/Relationship/AddNew/useRelatedCollections.js +25 -13
  428. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  429. package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
  430. package/dist/fields/Relationship/createRelationMap.js +48 -45
  431. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  432. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  433. package/dist/fields/Relationship/findOptionsByValue.js +33 -29
  434. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  435. package/dist/fields/Relationship/index.d.ts.map +1 -1
  436. package/dist/fields/Relationship/index.js +645 -471
  437. package/dist/fields/Relationship/index.js.map +1 -1
  438. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  439. package/dist/fields/Relationship/optionsReducer.js +110 -113
  440. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  441. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +168 -66
  442. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  443. package/dist/fields/Relationship/select-components/SingleValue/index.js +173 -67
  444. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  445. package/dist/fields/Relationship/types.js +1 -2
  446. package/dist/fields/Relationship/types.js.map +1 -1
  447. package/dist/fields/RichText/index.d.ts.map +1 -1
  448. package/dist/fields/RichText/index.js +4 -3
  449. package/dist/fields/RichText/index.js.map +1 -1
  450. package/dist/fields/Row/index.js +69 -22
  451. package/dist/fields/Row/index.js.map +1 -1
  452. package/dist/fields/Row/provider.js +13 -8
  453. package/dist/fields/Row/provider.js.map +1 -1
  454. package/dist/fields/Select/Input.d.ts +3 -1
  455. package/dist/fields/Select/Input.d.ts.map +1 -1
  456. package/dist/fields/Select/Input.js +198 -70
  457. package/dist/fields/Select/Input.js.map +1 -1
  458. package/dist/fields/Select/index.d.ts.map +1 -1
  459. package/dist/fields/Select/index.js +100 -79
  460. package/dist/fields/Select/index.js.map +1 -1
  461. package/dist/fields/Tabs/Tab/index.js +65 -30
  462. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  463. package/dist/fields/Tabs/index.js +235 -118
  464. package/dist/fields/Tabs/index.js.map +1 -1
  465. package/dist/fields/Tabs/provider.js +13 -8
  466. package/dist/fields/Tabs/provider.js.map +1 -1
  467. package/dist/fields/Text/Input.d.ts.map +1 -1
  468. package/dist/fields/Text/Input.js +176 -82
  469. package/dist/fields/Text/Input.js.map +1 -1
  470. package/dist/fields/Text/index.d.ts.map +1 -1
  471. package/dist/fields/Text/index.js +195 -95
  472. package/dist/fields/Text/index.js.map +1 -1
  473. package/dist/fields/Text/types.d.ts +3 -1
  474. package/dist/fields/Text/types.d.ts.map +1 -1
  475. package/dist/fields/Text/types.js +1 -2
  476. package/dist/fields/Text/types.js.map +1 -1
  477. package/dist/fields/Textarea/Input.d.ts.map +1 -1
  478. package/dist/fields/Textarea/Input.js +149 -69
  479. package/dist/fields/Textarea/Input.js.map +1 -1
  480. package/dist/fields/Textarea/index.d.ts.map +1 -1
  481. package/dist/fields/Textarea/index.js +138 -53
  482. package/dist/fields/Textarea/index.js.map +1 -1
  483. package/dist/fields/Textarea/types.d.ts +6 -4
  484. package/dist/fields/Textarea/types.d.ts.map +1 -1
  485. package/dist/fields/Textarea/types.js +1 -2
  486. package/dist/fields/Textarea/types.js.map +1 -1
  487. package/dist/fields/UI/index.d.ts.map +1 -1
  488. package/dist/fields/UI/index.js +4 -3
  489. package/dist/fields/UI/index.js.map +1 -1
  490. package/dist/fields/Upload/Input.d.ts +6 -4
  491. package/dist/fields/Upload/Input.d.ts.map +1 -1
  492. package/dist/fields/Upload/Input.js +302 -143
  493. package/dist/fields/Upload/Input.js.map +1 -1
  494. package/dist/fields/Upload/index.d.ts.map +1 -1
  495. package/dist/fields/Upload/index.js +148 -63
  496. package/dist/fields/Upload/index.js.map +1 -1
  497. package/dist/fields/index.d.ts.map +1 -1
  498. package/dist/fields/index.js +26 -25
  499. package/dist/fields/index.js.map +1 -1
  500. package/dist/fields/shared/index.d.ts.map +1 -1
  501. package/dist/fields/shared/index.js +17 -8
  502. package/dist/fields/shared/index.js.map +1 -1
  503. package/dist/forms/FieldPropsProvider/index.js +37 -27
  504. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  505. package/dist/forms/Form/context.js +30 -14
  506. package/dist/forms/Form/context.js.map +1 -1
  507. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -1
  508. package/dist/forms/Form/createNestedClientFieldPath.js +11 -10
  509. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  510. package/dist/forms/Form/errorMessages.d.ts.map +1 -1
  511. package/dist/forms/Form/errorMessages.js +3 -2
  512. package/dist/forms/Form/errorMessages.js.map +1 -1
  513. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  514. package/dist/forms/Form/fieldReducer.js +319 -288
  515. package/dist/forms/Form/fieldReducer.js.map +1 -1
  516. package/dist/forms/Form/index.js +510 -528
  517. package/dist/forms/Form/index.js.map +1 -1
  518. package/dist/forms/Form/initContextState.d.ts.map +1 -1
  519. package/dist/forms/Form/initContextState.js +34 -33
  520. package/dist/forms/Form/initContextState.js.map +1 -1
  521. package/dist/forms/Form/mergeErrorPaths.d.ts.map +1 -1
  522. package/dist/forms/Form/mergeErrorPaths.js +25 -24
  523. package/dist/forms/Form/mergeErrorPaths.js.map +1 -1
  524. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  525. package/dist/forms/Form/mergeServerFormState.js +52 -51
  526. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  527. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  528. package/dist/forms/Form/rowHelpers.js +29 -21
  529. package/dist/forms/Form/rowHelpers.js.map +1 -1
  530. package/dist/forms/Form/rows.d.ts.map +1 -1
  531. package/dist/forms/Form/rows.js +33 -32
  532. package/dist/forms/Form/rows.js.map +1 -1
  533. package/dist/forms/Form/types.js +1 -2
  534. package/dist/forms/Form/types.js.map +1 -1
  535. package/dist/forms/NullifyField/index.js +57 -27
  536. package/dist/forms/NullifyField/index.js.map +1 -1
  537. package/dist/forms/RenderFields/RenderField.js +65 -61
  538. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  539. package/dist/forms/RenderFields/index.js +112 -51
  540. package/dist/forms/RenderFields/index.js.map +1 -1
  541. package/dist/forms/RenderFields/types.js +1 -2
  542. package/dist/forms/RenderFields/types.js.map +1 -1
  543. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  544. package/dist/forms/RowLabel/Context/index.js +29 -20
  545. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  546. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  547. package/dist/forms/RowLabel/index.js +29 -24
  548. package/dist/forms/RowLabel/index.js.map +1 -1
  549. package/dist/forms/RowLabel/types.d.ts +2 -2
  550. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  551. package/dist/forms/RowLabel/types.js +1 -2
  552. package/dist/forms/RowLabel/types.js.map +1 -1
  553. package/dist/forms/Submit/index.js +40 -17
  554. package/dist/forms/Submit/index.js.map +1 -1
  555. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  556. package/dist/forms/WatchChildErrors/buildPathSegments.js +33 -32
  557. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  558. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.d.ts.map +1 -1
  559. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js +26 -22
  560. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js.map +1 -1
  561. package/dist/forms/WatchChildErrors/getNestedFieldState.d.ts.map +1 -1
  562. package/dist/forms/WatchChildErrors/getNestedFieldState.js +19 -14
  563. package/dist/forms/WatchChildErrors/getNestedFieldState.js.map +1 -1
  564. package/dist/forms/WatchChildErrors/index.d.ts +1 -1
  565. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  566. package/dist/forms/WatchChildErrors/index.js +54 -19
  567. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  568. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +395 -368
  569. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  570. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js +54 -61
  571. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js.map +1 -1
  572. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js +16 -11
  573. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -1
  574. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js +20 -14
  575. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -1
  576. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +127 -121
  577. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  578. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.js +26 -27
  579. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.js.map +1 -1
  580. package/dist/forms/buildStateFromSchema/index.js +37 -30
  581. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  582. package/dist/forms/buildStateFromSchema/iterateFields.js +56 -36
  583. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  584. package/dist/forms/useField/index.js +162 -173
  585. package/dist/forms/useField/index.js.map +1 -1
  586. package/dist/forms/useField/types.js +1 -2
  587. package/dist/forms/useField/types.js.map +1 -1
  588. package/dist/forms/withCondition/WatchCondition.js +56 -18
  589. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  590. package/dist/forms/withCondition/index.js +37 -17
  591. package/dist/forms/withCondition/index.js.map +1 -1
  592. package/dist/graphics/Account/Default/index.js +21 -29
  593. package/dist/graphics/Account/Default/index.js.map +1 -1
  594. package/dist/graphics/Account/Gravatar/index.js +32 -19
  595. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  596. package/dist/graphics/Account/index.js +71 -19
  597. package/dist/graphics/Account/index.js.map +1 -1
  598. package/dist/graphics/DefaultBlockImage/index.js +31 -38
  599. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  600. package/dist/graphics/ExternalLink/index.js +18 -17
  601. package/dist/graphics/ExternalLink/index.js.map +1 -1
  602. package/dist/graphics/File/index.js +18 -23
  603. package/dist/graphics/File/index.js.map +1 -1
  604. package/dist/graphics/Icon/index.js +18 -20
  605. package/dist/graphics/Icon/index.js.map +1 -1
  606. package/dist/graphics/Logo/index.js +29 -41
  607. package/dist/graphics/Logo/index.js.map +1 -1
  608. package/dist/hooks/useDebounce.js +26 -15
  609. package/dist/hooks/useDebounce.js.map +1 -1
  610. package/dist/hooks/useDebouncedCallback.d.ts.map +1 -1
  611. package/dist/hooks/useDebouncedCallback.js +24 -15
  612. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  613. package/dist/hooks/useDebouncedEffect.d.ts.map +1 -1
  614. package/dist/hooks/useDebouncedEffect.js +54 -18
  615. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  616. package/dist/hooks/useDelay.d.ts.map +1 -1
  617. package/dist/hooks/useDelay.js +53 -27
  618. package/dist/hooks/useDelay.js.map +1 -1
  619. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  620. package/dist/hooks/useDelayedRender.js +77 -40
  621. package/dist/hooks/useDelayedRender.js.map +1 -1
  622. package/dist/hooks/useHotkey.js +105 -91
  623. package/dist/hooks/useHotkey.js.map +1 -1
  624. package/dist/hooks/useIntersect.d.ts +1 -0
  625. package/dist/hooks/useIntersect.d.ts.map +1 -1
  626. package/dist/hooks/useIntersect.js +83 -26
  627. package/dist/hooks/useIntersect.js.map +1 -1
  628. package/dist/hooks/usePayloadAPI.d.ts +1 -0
  629. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  630. package/dist/hooks/usePayloadAPI.js +180 -79
  631. package/dist/hooks/usePayloadAPI.js.map +1 -1
  632. package/dist/hooks/useResize.d.ts.map +1 -1
  633. package/dist/hooks/useResize.js +70 -41
  634. package/dist/hooks/useResize.js.map +1 -1
  635. package/dist/hooks/useThrottledEffect.d.ts +1 -0
  636. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  637. package/dist/hooks/useThrottledEffect.js +51 -17
  638. package/dist/hooks/useThrottledEffect.js.map +1 -1
  639. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  640. package/dist/hooks/useUseAsTitle.js +10 -5
  641. package/dist/hooks/useUseAsTitle.js.map +1 -1
  642. package/dist/icons/Calendar/index.js +10 -11
  643. package/dist/icons/Calendar/index.js.map +1 -1
  644. package/dist/icons/Check/index.js +10 -11
  645. package/dist/icons/Check/index.js.map +1 -1
  646. package/dist/icons/Chevron/index.js +19 -20
  647. package/dist/icons/Chevron/index.js.map +1 -1
  648. package/dist/icons/CloseMenu/index.js +10 -11
  649. package/dist/icons/CloseMenu/index.js.map +1 -1
  650. package/dist/icons/CodeBlock/index.js +12 -13
  651. package/dist/icons/CodeBlock/index.js.map +1 -1
  652. package/dist/icons/Copy/index.js +16 -15
  653. package/dist/icons/Copy/index.js.map +1 -1
  654. package/dist/icons/DragHandle/index.js +32 -41
  655. package/dist/icons/DragHandle/index.js.map +1 -1
  656. package/dist/icons/Edit/index.js +12 -14
  657. package/dist/icons/Edit/index.js.map +1 -1
  658. package/dist/icons/Line/index.js +13 -14
  659. package/dist/icons/Line/index.js.map +1 -1
  660. package/dist/icons/Link/index.js +15 -16
  661. package/dist/icons/Link/index.js.map +1 -1
  662. package/dist/icons/LogOut/index.js +13 -14
  663. package/dist/icons/LogOut/index.js.map +1 -1
  664. package/dist/icons/Menu/index.js +13 -14
  665. package/dist/icons/Menu/index.js.map +1 -1
  666. package/dist/icons/MinimizeMaximize/index.js +18 -20
  667. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  668. package/dist/icons/More/index.js +20 -26
  669. package/dist/icons/More/index.js.map +1 -1
  670. package/dist/icons/Plus/index.js +12 -13
  671. package/dist/icons/Plus/index.js.map +1 -1
  672. package/dist/icons/Search/index.js +11 -12
  673. package/dist/icons/Search/index.js.map +1 -1
  674. package/dist/icons/Swap/index.js +10 -11
  675. package/dist/icons/Swap/index.js.map +1 -1
  676. package/dist/icons/X/index.js +14 -16
  677. package/dist/icons/X/index.js.map +1 -1
  678. package/dist/providers/Actions/SetViewActions/index.d.ts +1 -1
  679. package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
  680. package/dist/providers/Actions/SetViewActions/index.js +31 -14
  681. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  682. package/dist/providers/Actions/index.js +89 -24
  683. package/dist/providers/Actions/index.js.map +1 -1
  684. package/dist/providers/Auth/index.js +226 -256
  685. package/dist/providers/Auth/index.js.map +1 -1
  686. package/dist/providers/ClientFunction/index.js +103 -54
  687. package/dist/providers/ClientFunction/index.js.map +1 -1
  688. package/dist/providers/Config/RenderComponent.js +66 -61
  689. package/dist/providers/Config/RenderComponent.js.map +1 -1
  690. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  691. package/dist/providers/Config/createClientConfig/collections.js +171 -154
  692. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  693. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  694. package/dist/providers/Config/createClientConfig/fields.js +289 -278
  695. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  696. package/dist/providers/Config/createClientConfig/getComponent.js +31 -23
  697. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
  698. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -1
  699. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +92 -84
  700. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
  701. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -1
  702. package/dist/providers/Config/createClientConfig/globals.js +100 -89
  703. package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
  704. package/dist/providers/Config/createClientConfig/index.js +92 -82
  705. package/dist/providers/Config/createClientConfig/index.js.map +1 -1
  706. package/dist/providers/Config/index.js +50 -21
  707. package/dist/providers/Config/index.js.map +1 -1
  708. package/dist/providers/DocumentEvents/index.js +29 -13
  709. package/dist/providers/DocumentEvents/index.js.map +1 -1
  710. package/dist/providers/DocumentInfo/index.js +403 -448
  711. package/dist/providers/DocumentInfo/index.js.map +1 -1
  712. package/dist/providers/DocumentInfo/types.js +1 -2
  713. package/dist/providers/DocumentInfo/types.js.map +1 -1
  714. package/dist/providers/EditDepth/index.js +12 -7
  715. package/dist/providers/EditDepth/index.js.map +1 -1
  716. package/dist/providers/EntityVisibility/index.js +49 -20
  717. package/dist/providers/EntityVisibility/index.js.map +1 -1
  718. package/dist/providers/FieldComponents/index.js +13 -8
  719. package/dist/providers/FieldComponents/index.js.map +1 -1
  720. package/dist/providers/ListInfo/index.js +13 -8
  721. package/dist/providers/ListInfo/index.js.map +1 -1
  722. package/dist/providers/ListQuery/index.js +122 -131
  723. package/dist/providers/ListQuery/index.js.map +1 -1
  724. package/dist/providers/Locale/index.js +124 -56
  725. package/dist/providers/Locale/index.js.map +1 -1
  726. package/dist/providers/Operation/index.js +12 -7
  727. package/dist/providers/Operation/index.js.map +1 -1
  728. package/dist/providers/Params/index.js +24 -8
  729. package/dist/providers/Params/index.js.map +1 -1
  730. package/dist/providers/Preferences/index.js +111 -109
  731. package/dist/providers/Preferences/index.js.map +1 -1
  732. package/dist/providers/Root/index.js +72 -66
  733. package/dist/providers/Root/index.js.map +1 -1
  734. package/dist/providers/RouteCache/index.js +58 -22
  735. package/dist/providers/RouteCache/index.js.map +1 -1
  736. package/dist/providers/ScrollInfo/index.d.ts.map +1 -1
  737. package/dist/providers/ScrollInfo/index.js +10 -5
  738. package/dist/providers/ScrollInfo/index.js.map +1 -1
  739. package/dist/providers/SearchParams/index.js +84 -35
  740. package/dist/providers/SearchParams/index.js.map +1 -1
  741. package/dist/providers/Selection/index.js +212 -128
  742. package/dist/providers/Selection/index.js.map +1 -1
  743. package/dist/providers/Theme/index.js +97 -57
  744. package/dist/providers/Theme/index.js.map +1 -1
  745. package/dist/providers/ToastContainer/icons/Error.d.ts.map +1 -1
  746. package/dist/providers/ToastContainer/icons/Error.js +19 -21
  747. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  748. package/dist/providers/ToastContainer/icons/Info.d.ts.map +1 -1
  749. package/dist/providers/ToastContainer/icons/Info.js +19 -21
  750. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  751. package/dist/providers/ToastContainer/icons/Success.d.ts.map +1 -1
  752. package/dist/providers/ToastContainer/icons/Success.js +19 -21
  753. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  754. package/dist/providers/ToastContainer/icons/Warning.d.ts.map +1 -1
  755. package/dist/providers/ToastContainer/icons/Warning.js +19 -21
  756. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  757. package/dist/providers/ToastContainer/index.js +31 -31
  758. package/dist/providers/ToastContainer/index.js.map +1 -1
  759. package/dist/providers/Translation/index.js +114 -58
  760. package/dist/providers/Translation/index.js.map +1 -1
  761. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  762. package/dist/providers/UploadEdits/index.js +53 -22
  763. package/dist/providers/UploadEdits/index.js.map +1 -1
  764. package/dist/providers/WindowInfo/index.d.ts.map +1 -1
  765. package/dist/providers/WindowInfo/index.js +10 -5
  766. package/dist/providers/WindowInfo/index.js.map +1 -1
  767. package/dist/styles.css +1 -1
  768. package/dist/utilities/api.js +77 -78
  769. package/dist/utilities/api.js.map +1 -1
  770. package/dist/utilities/arraysHaveSameStrings.js +13 -14
  771. package/dist/utilities/arraysHaveSameStrings.js.map +1 -1
  772. package/dist/utilities/buildFieldSchemaMap/index.js +40 -44
  773. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  774. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +76 -71
  775. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  776. package/dist/utilities/buildFieldSchemaMap/types.js +1 -2
  777. package/dist/utilities/buildFieldSchemaMap/types.js.map +1 -1
  778. package/dist/utilities/buildFormState.js +158 -154
  779. package/dist/utilities/buildFormState.js.map +1 -1
  780. package/dist/utilities/canUseDOM.js +0 -1
  781. package/dist/utilities/canUseDOM.js.map +1 -1
  782. package/dist/utilities/dateLocales.js +26 -27
  783. package/dist/utilities/dateLocales.js.map +1 -1
  784. package/dist/utilities/findLocaleFromCode.js +5 -6
  785. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  786. package/dist/utilities/flattenFieldMap.js +16 -25
  787. package/dist/utilities/flattenFieldMap.js.map +1 -1
  788. package/dist/utilities/formatAdminURL.js +16 -12
  789. package/dist/utilities/formatAdminURL.js.map +1 -1
  790. package/dist/utilities/formatDate.js +17 -11
  791. package/dist/utilities/formatDate.js.map +1 -1
  792. package/dist/utilities/formatDocTitle.js +32 -26
  793. package/dist/utilities/formatDocTitle.js.map +1 -1
  794. package/dist/utilities/formatFields.js +1 -2
  795. package/dist/utilities/formatFields.js.map +1 -1
  796. package/dist/utilities/generateFieldID.js +2 -3
  797. package/dist/utilities/generateFieldID.js.map +1 -1
  798. package/dist/utilities/getFormState.js +29 -23
  799. package/dist/utilities/getFormState.js.map +1 -1
  800. package/dist/utilities/getOffsetTop.js +13 -14
  801. package/dist/utilities/getOffsetTop.js.map +1 -1
  802. package/dist/utilities/getRequestLanguage.js +8 -5
  803. package/dist/utilities/getRequestLanguage.js.map +1 -1
  804. package/dist/utilities/getSupportedMonacoLocale.js +13 -14
  805. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  806. package/dist/utilities/groupNavItems.js +31 -35
  807. package/dist/utilities/groupNavItems.js.map +1 -1
  808. package/dist/utilities/hasSavePermission.js +14 -10
  809. package/dist/utilities/hasSavePermission.js.map +1 -1
  810. package/dist/utilities/isEditing.js +5 -2
  811. package/dist/utilities/isEditing.js.map +1 -1
  812. package/dist/utilities/reduceFieldsToValuesWithValidation.js +16 -16
  813. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  814. package/dist/utilities/scrollToID.js +9 -10
  815. package/dist/utilities/scrollToID.js.map +1 -1
  816. package/dist/utilities/setsAreEqual.js +2 -3
  817. package/dist/utilities/setsAreEqual.js.map +1 -1
  818. package/package.json +13 -11
  819. package/dist/exports/client/CodeEditor-MODTAQNB.js +0 -24
  820. package/dist/exports/client/CodeEditor-MODTAQNB.js.map +0 -8
  821. package/dist/exports/client/chunk-QJ5EJH4V.js +0 -14
  822. package/dist/exports/client/chunk-QJ5EJH4V.js.map +0 -8
  823. package/dist/fields/Number/Input.d.ts +0 -2
  824. package/dist/fields/Number/Input.d.ts.map +0 -1
  825. package/dist/fields/Number/Input.js +0 -2
  826. package/dist/fields/Number/Input.js.map +0 -1
  827. /package/dist/exports/client/{DatePicker-QKRYICNS.js.map → DatePicker-E6IJFDN2.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/EditUpload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadEdits } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React, { forwardRef, useRef, useState } from 'react'\nimport ReactCrop from 'react-image-crop'\nimport 'react-image-crop/dist/ReactCrop.css'\n\nimport { editDrawerSlug } from '../../elements/Upload/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'edit-upload'\n\ntype Props = {\n name: string\n onChange: (value: string) => void\n value: string\n}\n\nconst Input = forwardRef<HTMLInputElement, Props>((props, ref) => {\n const { name, onChange, value } = props\n\n return (\n <div className={`${baseClass}__input`}>\n {name}\n <input\n name={name}\n onChange={(e) => onChange(e.target.value)}\n ref={ref}\n type=\"number\"\n value={value}\n />\n </div>\n )\n})\n\ntype FocalPosition = {\n x: number\n y: number\n}\n\nexport type EditUploadProps = {\n fileName: string\n fileSrc: string\n imageCacheTag?: string\n initialCrop?: UploadEdits['crop']\n initialFocalPoint?: FocalPosition\n onSave?: (uploadEdits: UploadEdits) => void\n showCrop?: boolean\n showFocalPoint?: boolean\n}\n\nconst defaultCrop: UploadEdits['crop'] = {\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n}\n\nexport const EditUpload: React.FC<EditUploadProps> = ({\n fileName,\n fileSrc,\n imageCacheTag,\n initialCrop,\n initialFocalPoint,\n onSave,\n showCrop,\n showFocalPoint,\n}) => {\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const [crop, setCrop] = useState<UploadEdits['crop']>(() => ({\n ...defaultCrop,\n ...(initialCrop || {}),\n }))\n\n const defaultFocalPosition: FocalPosition = {\n x: 50,\n y: 50,\n }\n\n const [focalPosition, setFocalPosition] = useState<FocalPosition>(() => ({\n ...defaultFocalPosition,\n ...initialFocalPoint,\n }))\n\n const [checkBounds, setCheckBounds] = useState<boolean>(false)\n const [uncroppedPixelHeight, setUncroppedPixelHeight] = useState<number>(0)\n const [uncroppedPixelWidth, setUncroppedPixelWidth] = useState<number>(0)\n\n const focalWrapRef = useRef<HTMLDivElement | undefined>(undefined)\n const imageRef = useRef<HTMLImageElement | undefined>(undefined)\n const cropRef = useRef<HTMLDivElement | undefined>(undefined)\n\n const heightInputRef = useRef<HTMLInputElement | null>(null)\n const widthInputRef = useRef<HTMLInputElement | null>(null)\n\n const [imageLoaded, setImageLoaded] = useState<boolean>(false)\n\n const onImageLoad = (e) => {\n // set the default image height/width on load\n setUncroppedPixelHeight(e.currentTarget.naturalHeight)\n setUncroppedPixelWidth(e.currentTarget.naturalWidth)\n setImageLoaded(true)\n }\n\n const fineTuneCrop = ({ dimension, value }: { dimension: 'height' | 'width'; value: string }) => {\n const intValue = parseInt(value)\n if (dimension === 'width' && intValue >= uncroppedPixelWidth) return null\n if (dimension === 'height' && intValue >= uncroppedPixelHeight) return null\n\n const percentage =\n 100 * (intValue / (dimension === 'width' ? uncroppedPixelWidth : uncroppedPixelHeight))\n\n if (percentage === 100 || percentage === 0) return null\n\n setCrop({\n ...crop,\n [dimension]: percentage,\n })\n }\n\n const fineTuneFocalPosition = ({\n coordinate,\n value,\n }: {\n coordinate: 'x' | 'y'\n value: string\n }) => {\n const intValue = parseInt(value)\n if (intValue >= 0 && intValue <= 100) {\n setFocalPosition((prevPosition) => ({ ...prevPosition, [coordinate]: intValue }))\n }\n }\n\n const saveEdits = () => {\n if (typeof onSave === 'function')\n onSave({\n crop: crop ? crop : undefined,\n focalPoint: focalPosition,\n heightInPixels: Number(heightInputRef?.current?.value ?? uncroppedPixelHeight),\n widthInPixels: Number(widthInputRef?.current?.value ?? uncroppedPixelWidth),\n })\n closeModal(editDrawerSlug)\n }\n\n const onDragEnd = React.useCallback(({ x, y }) => {\n setFocalPosition({ x, y })\n setCheckBounds(false)\n }, [])\n\n const centerFocalPoint = () => {\n const containerRect = focalWrapRef.current.getBoundingClientRect()\n const boundsRect = showCrop\n ? cropRef.current.getBoundingClientRect()\n : imageRef.current.getBoundingClientRect()\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n setFocalPosition({ x: xCenter, y: yCenter })\n }\n\n const fileSrcToUse = imageCacheTag ? `${fileSrc}?${imageCacheTag}` : fileSrc\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n <h2 title={`${t('general:editing')} ${fileName}`}>\n {t('general:editing')} {fileName}\n </h2>\n <div className={`${baseClass}__actions`}>\n <Button\n aria-label={t('general:cancel')}\n buttonStyle=\"secondary\"\n className={`${baseClass}__cancel`}\n onClick={() => closeModal(editDrawerSlug)}\n >\n {t('general:cancel')}\n </Button>\n <Button\n aria-label={t('general:applyChanges')}\n buttonStyle=\"primary\"\n className={`${baseClass}__save`}\n disabled={!imageLoaded}\n onClick={saveEdits}\n >\n {t('general:applyChanges')}\n </Button>\n </div>\n </div>\n <div className={`${baseClass}__toolWrap`}>\n <div className={`${baseClass}__crop`}>\n <div\n className={`${baseClass}__focal-wrapper`}\n ref={focalWrapRef}\n style={{\n aspectRatio: `${uncroppedPixelWidth / uncroppedPixelHeight}`,\n }}\n >\n {showCrop ? (\n <ReactCrop\n className={`${baseClass}__reactCrop`}\n crop={crop}\n onChange={(_, c) => setCrop(c)}\n onComplete={() => setCheckBounds(true)}\n renderSelectionAddon={() => {\n return <div className={`${baseClass}__crop-window`} ref={cropRef} />\n }}\n >\n <img\n alt={t('upload:setCropArea')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n </ReactCrop>\n ) : (\n <img\n alt={t('upload:setFocalPoint')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n )}\n {showFocalPoint && (\n <DraggableElement\n boundsRef={showCrop ? cropRef : imageRef}\n checkBounds={showCrop ? checkBounds : false}\n className={`${baseClass}__focalPoint`}\n containerRef={focalWrapRef}\n initialPosition={focalPosition}\n onDragEnd={onDragEnd}\n setCheckBounds={showCrop ? setCheckBounds : false}\n >\n <PlusIcon />\n </DraggableElement>\n )}\n </div>\n </div>\n {(showCrop || showFocalPoint) && (\n <div className={`${baseClass}__sidebar`}>\n {showCrop && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:crop')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={() =>\n setCrop({\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n })\n }\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:cropToolDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name={`${t('upload:width')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'width', value })}\n ref={widthInputRef}\n value={((crop.width / 100) * uncroppedPixelWidth).toFixed(0)}\n />\n <Input\n name={`${t('upload:height')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'height', value })}\n ref={heightInputRef}\n value={((crop.height / 100) * uncroppedPixelHeight).toFixed(0)}\n />\n </div>\n </div>\n )}\n\n {showFocalPoint && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:focalPoint')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={centerFocalPoint}\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:focalPointDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name=\"X %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'x', value })}\n value={focalPosition.x.toFixed(0)}\n />\n <Input\n name=\"Y %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'y', value })}\n value={focalPosition.y.toFixed(0)}\n />\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n )\n}\n\nconst DraggableElement = ({\n boundsRef,\n checkBounds,\n children,\n className,\n containerRef,\n initialPosition = { x: 50, y: 50 },\n onDragEnd,\n setCheckBounds,\n}) => {\n const [position, setPosition] = useState({ x: initialPosition.x, y: initialPosition.y })\n const [isDragging, setIsDragging] = useState(false)\n const dragRef = useRef<HTMLButtonElement | undefined>(undefined)\n\n const getCoordinates = React.useCallback(\n (mouseXArg?: number, mouseYArg?: number, recenter?: boolean) => {\n const containerRect = containerRef.current.getBoundingClientRect()\n const boundsRect = boundsRef.current.getBoundingClientRect()\n const mouseX = mouseXArg ?? boundsRect.left\n const mouseY = mouseYArg ?? boundsRect.top\n\n const xOutOfBounds = mouseX < boundsRect.left || mouseX > boundsRect.right\n const yOutOfBounds = mouseY < boundsRect.top || mouseY > boundsRect.bottom\n\n let x = ((mouseX - containerRect.left) / containerRect.width) * 100\n let y = ((mouseY - containerRect.top) / containerRect.height) * 100\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n if (xOutOfBounds || yOutOfBounds) {\n setIsDragging(false)\n if (mouseX < boundsRect.left) {\n x = ((boundsRect.left - containerRect.left) / containerRect.width) * 100\n } else if (mouseX > boundsRect.right) {\n x =\n ((containerRect.width - (containerRect.right - boundsRect.right)) /\n containerRect.width) *\n 100\n }\n\n if (mouseY < boundsRect.top) {\n y = ((boundsRect.top - containerRect.top) / containerRect.height) * 100\n } else if (mouseY > boundsRect.bottom) {\n y =\n ((containerRect.height - (containerRect.bottom - boundsRect.bottom)) /\n containerRect.height) *\n 100\n }\n\n if (recenter) {\n x = xOutOfBounds ? xCenter : x\n y = yOutOfBounds ? yCenter : y\n }\n }\n\n return { x, y }\n },\n [boundsRef, containerRef],\n )\n\n const handleMouseDown = (event) => {\n event.preventDefault()\n setIsDragging(true)\n }\n\n const handleMouseMove = (event) => {\n if (!isDragging) return null\n const { x, y } = getCoordinates(event.clientX, event.clientY)\n\n setPosition({ x, y })\n }\n\n const onDrop = () => {\n setIsDragging(false)\n onDragEnd(position)\n }\n\n React.useEffect(() => {\n if (isDragging || !dragRef.current) return\n if (checkBounds) {\n const { height, left, top, width } = dragRef.current.getBoundingClientRect()\n const { x, y } = getCoordinates(left + width / 2, top + height / 2, true)\n onDragEnd({ x, y })\n setPosition({ x, y })\n setCheckBounds(false)\n return\n }\n }, [getCoordinates, isDragging, checkBounds, setCheckBounds, position.x, position.y, onDragEnd])\n\n React.useEffect(() => {\n setPosition({ x: initialPosition.x, y: initialPosition.y })\n }, [initialPosition.x, initialPosition.y])\n\n return (\n <div\n className={[\n `${baseClass}__draggable-container`,\n isDragging && `${baseClass}__draggable-container--dragging`,\n ]\n .filter(Boolean)\n .join(' ')}\n onMouseMove={handleMouseMove}\n >\n <button\n className={[`${baseClass}__draggable`, className].filter(Boolean).join(' ')}\n onMouseDown={handleMouseDown}\n onMouseUp={onDrop}\n ref={dragRef}\n style={{ left: `${position.x}%`, top: `${position.y}%` }}\n type=\"button\"\n >\n {children}\n </button>\n <div />\n </div>\n )\n}\n"],"names":["useModal","React","forwardRef","useRef","useState","ReactCrop","editDrawerSlug","PlusIcon","useTranslation","Button","baseClass","Input","props","ref","name","onChange","value","div","className","input","e","target","type","defaultCrop","height","unit","width","x","y","EditUpload","fileName","fileSrc","imageCacheTag","initialCrop","initialFocalPoint","onSave","showCrop","showFocalPoint","closeModal","t","crop","setCrop","defaultFocalPosition","focalPosition","setFocalPosition","checkBounds","setCheckBounds","uncroppedPixelHeight","setUncroppedPixelHeight","uncroppedPixelWidth","setUncroppedPixelWidth","focalWrapRef","undefined","imageRef","cropRef","heightInputRef","widthInputRef","imageLoaded","setImageLoaded","onImageLoad","currentTarget","naturalHeight","naturalWidth","fineTuneCrop","dimension","intValue","parseInt","percentage","fineTuneFocalPosition","coordinate","prevPosition","saveEdits","focalPoint","heightInPixels","Number","current","widthInPixels","onDragEnd","useCallback","centerFocalPoint","containerRect","getBoundingClientRect","boundsRect","xCenter","left","yCenter","top","fileSrcToUse","h2","title","aria-label","buttonStyle","onClick","disabled","style","aspectRatio","_","c","onComplete","renderSelectionAddon","img","alt","onLoad","src","DraggableElement","boundsRef","containerRef","initialPosition","h3","span","toFixed","children","position","setPosition","isDragging","setIsDragging","dragRef","getCoordinates","mouseXArg","mouseYArg","recenter","mouseX","mouseY","xOutOfBounds","right","yOutOfBounds","bottom","handleMouseDown","event","preventDefault","handleMouseMove","clientX","clientY","onDrop","useEffect","filter","Boolean","join","onMouseMove","button","onMouseDown","onMouseUp"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["c","_c","useModal","React","forwardRef","useRef","useState","ReactCrop","editDrawerSlug","PlusIcon","useTranslation","Button","baseClass","Input","props","ref","name","onChange","value","_jsxs","className","_jsx","e","target","type","defaultCrop","height","unit","width","x","y","EditUpload","t0","$","fileName","fileSrc","imageCacheTag","initialCrop","initialFocalPoint","onSave","showCrop","showFocalPoint","closeModal","t","t1","crop","setCrop","t2","Symbol","for","defaultFocalPosition","t3","focalPosition","setFocalPosition","checkBounds","setCheckBounds","uncroppedPixelHeight","setUncroppedPixelHeight","uncroppedPixelWidth","setUncroppedPixelWidth","focalWrapRef","undefined","imageRef","cropRef","heightInputRef","widthInputRef","imageLoaded","setImageLoaded","t4","currentTarget","naturalHeight","naturalWidth","onImageLoad","t5","t6","dimension","intValue","parseInt","percentage","fineTuneCrop","t7","coordinate","value_0","intValue_0","prevPosition","fineTuneFocalPosition","saveEdits","focalPoint","heightInPixels","Number","current","widthInPixels","t8","onDragEnd","centerFocalPoint","containerRect","getBoundingClientRect","boundsRect","xCenter","left","yCenter","top","fileSrcToUse","children","title","buttonStyle","onClick","disabled","style","aspectRatio","_","onComplete","renderSelectionAddon","alt","onLoad","src","DraggableElement","boundsRef","containerRef","initialPosition","value_1","toFixed","value_2","value_3","value_4","position","setPosition","isDragging","setIsDragging","dragRef","getCoordinates","useCallback","mouseXArg","mouseYArg","recenter","mouseX","mouseY","xOutOfBounds","right","yOutOfBounds","bottom","handleMouseDown","event","preventDefault","handleMouseMove","clientX","clientY","onDrop","useEffect","filter","Boolean","join","onMouseMove","onMouseDown","onMouseUp"],"sources":["../../../src/elements/EditUpload/index.tsx"],"sourcesContent":["'use client'\n\nimport type { UploadEdits } from 'payload'\n\nimport { useModal } from '@faceless-ui/modal'\nimport React, { forwardRef, useRef, useState } from 'react'\nimport ReactCrop from 'react-image-crop'\nimport 'react-image-crop/dist/ReactCrop.css'\n\nimport { editDrawerSlug } from '../../elements/Upload/index.js'\nimport { PlusIcon } from '../../icons/Plus/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { Button } from '../Button/index.js'\nimport './index.scss'\n\nconst baseClass = 'edit-upload'\n\ntype Props = {\n name: string\n onChange: (value: string) => void\n value: string\n}\n\nconst Input = forwardRef<HTMLInputElement, Props>((props, ref) => {\n const { name, onChange, value } = props\n\n return (\n <div className={`${baseClass}__input`}>\n {name}\n <input\n name={name}\n onChange={(e) => onChange(e.target.value)}\n ref={ref}\n type=\"number\"\n value={value}\n />\n </div>\n )\n})\n\ntype FocalPosition = {\n x: number\n y: number\n}\n\nexport type EditUploadProps = {\n fileName: string\n fileSrc: string\n imageCacheTag?: string\n initialCrop?: UploadEdits['crop']\n initialFocalPoint?: FocalPosition\n onSave?: (uploadEdits: UploadEdits) => void\n showCrop?: boolean\n showFocalPoint?: boolean\n}\n\nconst defaultCrop: UploadEdits['crop'] = {\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n}\n\nexport const EditUpload: React.FC<EditUploadProps> = ({\n fileName,\n fileSrc,\n imageCacheTag,\n initialCrop,\n initialFocalPoint,\n onSave,\n showCrop,\n showFocalPoint,\n}) => {\n const { closeModal } = useModal()\n const { t } = useTranslation()\n\n const [crop, setCrop] = useState<UploadEdits['crop']>(() => ({\n ...defaultCrop,\n ...(initialCrop || {}),\n }))\n\n const defaultFocalPosition: FocalPosition = {\n x: 50,\n y: 50,\n }\n\n const [focalPosition, setFocalPosition] = useState<FocalPosition>(() => ({\n ...defaultFocalPosition,\n ...initialFocalPoint,\n }))\n\n const [checkBounds, setCheckBounds] = useState<boolean>(false)\n const [uncroppedPixelHeight, setUncroppedPixelHeight] = useState<number>(0)\n const [uncroppedPixelWidth, setUncroppedPixelWidth] = useState<number>(0)\n\n const focalWrapRef = useRef<HTMLDivElement | undefined>(undefined)\n const imageRef = useRef<HTMLImageElement | undefined>(undefined)\n const cropRef = useRef<HTMLDivElement | undefined>(undefined)\n\n const heightInputRef = useRef<HTMLInputElement | null>(null)\n const widthInputRef = useRef<HTMLInputElement | null>(null)\n\n const [imageLoaded, setImageLoaded] = useState<boolean>(false)\n\n const onImageLoad = (e) => {\n // set the default image height/width on load\n setUncroppedPixelHeight(e.currentTarget.naturalHeight)\n setUncroppedPixelWidth(e.currentTarget.naturalWidth)\n setImageLoaded(true)\n }\n\n const fineTuneCrop = ({ dimension, value }: { dimension: 'height' | 'width'; value: string }) => {\n const intValue = parseInt(value)\n if (dimension === 'width' && intValue >= uncroppedPixelWidth) return null\n if (dimension === 'height' && intValue >= uncroppedPixelHeight) return null\n\n const percentage =\n 100 * (intValue / (dimension === 'width' ? uncroppedPixelWidth : uncroppedPixelHeight))\n\n if (percentage === 100 || percentage === 0) return null\n\n setCrop({\n ...crop,\n [dimension]: percentage,\n })\n }\n\n const fineTuneFocalPosition = ({\n coordinate,\n value,\n }: {\n coordinate: 'x' | 'y'\n value: string\n }) => {\n const intValue = parseInt(value)\n if (intValue >= 0 && intValue <= 100) {\n setFocalPosition((prevPosition) => ({ ...prevPosition, [coordinate]: intValue }))\n }\n }\n\n const saveEdits = () => {\n if (typeof onSave === 'function')\n onSave({\n crop: crop ? crop : undefined,\n focalPoint: focalPosition,\n heightInPixels: Number(heightInputRef?.current?.value ?? uncroppedPixelHeight),\n widthInPixels: Number(widthInputRef?.current?.value ?? uncroppedPixelWidth),\n })\n closeModal(editDrawerSlug)\n }\n\n const onDragEnd = React.useCallback(({ x, y }) => {\n setFocalPosition({ x, y })\n setCheckBounds(false)\n }, [])\n\n const centerFocalPoint = () => {\n const containerRect = focalWrapRef.current.getBoundingClientRect()\n const boundsRect = showCrop\n ? cropRef.current.getBoundingClientRect()\n : imageRef.current.getBoundingClientRect()\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n setFocalPosition({ x: xCenter, y: yCenter })\n }\n\n const fileSrcToUse = imageCacheTag ? `${fileSrc}?${imageCacheTag}` : fileSrc\n\n return (\n <div className={baseClass}>\n <div className={`${baseClass}__header`}>\n <h2 title={`${t('general:editing')} ${fileName}`}>\n {t('general:editing')} {fileName}\n </h2>\n <div className={`${baseClass}__actions`}>\n <Button\n aria-label={t('general:cancel')}\n buttonStyle=\"secondary\"\n className={`${baseClass}__cancel`}\n onClick={() => closeModal(editDrawerSlug)}\n >\n {t('general:cancel')}\n </Button>\n <Button\n aria-label={t('general:applyChanges')}\n buttonStyle=\"primary\"\n className={`${baseClass}__save`}\n disabled={!imageLoaded}\n onClick={saveEdits}\n >\n {t('general:applyChanges')}\n </Button>\n </div>\n </div>\n <div className={`${baseClass}__toolWrap`}>\n <div className={`${baseClass}__crop`}>\n <div\n className={`${baseClass}__focal-wrapper`}\n ref={focalWrapRef}\n style={{\n aspectRatio: `${uncroppedPixelWidth / uncroppedPixelHeight}`,\n }}\n >\n {showCrop ? (\n <ReactCrop\n className={`${baseClass}__reactCrop`}\n crop={crop}\n onChange={(_, c) => setCrop(c)}\n onComplete={() => setCheckBounds(true)}\n renderSelectionAddon={() => {\n return <div className={`${baseClass}__crop-window`} ref={cropRef} />\n }}\n >\n <img\n alt={t('upload:setCropArea')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n </ReactCrop>\n ) : (\n <img\n alt={t('upload:setFocalPoint')}\n onLoad={onImageLoad}\n ref={imageRef}\n src={fileSrcToUse}\n />\n )}\n {showFocalPoint && (\n <DraggableElement\n boundsRef={showCrop ? cropRef : imageRef}\n checkBounds={showCrop ? checkBounds : false}\n className={`${baseClass}__focalPoint`}\n containerRef={focalWrapRef}\n initialPosition={focalPosition}\n onDragEnd={onDragEnd}\n setCheckBounds={showCrop ? setCheckBounds : false}\n >\n <PlusIcon />\n </DraggableElement>\n )}\n </div>\n </div>\n {(showCrop || showFocalPoint) && (\n <div className={`${baseClass}__sidebar`}>\n {showCrop && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:crop')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={() =>\n setCrop({\n height: 100,\n unit: '%',\n width: 100,\n x: 0,\n y: 0,\n })\n }\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:cropToolDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name={`${t('upload:width')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'width', value })}\n ref={widthInputRef}\n value={((crop.width / 100) * uncroppedPixelWidth).toFixed(0)}\n />\n <Input\n name={`${t('upload:height')} (px)`}\n onChange={(value) => fineTuneCrop({ dimension: 'height', value })}\n ref={heightInputRef}\n value={((crop.height / 100) * uncroppedPixelHeight).toFixed(0)}\n />\n </div>\n </div>\n )}\n\n {showFocalPoint && (\n <div className={`${baseClass}__groupWrap`}>\n <div>\n <div className={`${baseClass}__titleWrap`}>\n <h3>{t('upload:focalPoint')}</h3>\n <Button\n buttonStyle=\"none\"\n className={`${baseClass}__reset`}\n onClick={centerFocalPoint}\n >\n {t('general:reset')}\n </Button>\n </div>\n </div>\n <span className={`${baseClass}__description`}>\n {t('upload:focalPointDescription')}\n </span>\n <div className={`${baseClass}__inputsWrap`}>\n <Input\n name=\"X %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'x', value })}\n value={focalPosition.x.toFixed(0)}\n />\n <Input\n name=\"Y %\"\n onChange={(value) => fineTuneFocalPosition({ coordinate: 'y', value })}\n value={focalPosition.y.toFixed(0)}\n />\n </div>\n </div>\n )}\n </div>\n )}\n </div>\n </div>\n )\n}\n\nconst DraggableElement = ({\n boundsRef,\n checkBounds,\n children,\n className,\n containerRef,\n initialPosition = { x: 50, y: 50 },\n onDragEnd,\n setCheckBounds,\n}) => {\n const [position, setPosition] = useState({ x: initialPosition.x, y: initialPosition.y })\n const [isDragging, setIsDragging] = useState(false)\n const dragRef = useRef<HTMLButtonElement | undefined>(undefined)\n\n const getCoordinates = React.useCallback(\n (mouseXArg?: number, mouseYArg?: number, recenter?: boolean) => {\n const containerRect = containerRef.current.getBoundingClientRect()\n const boundsRect = boundsRef.current.getBoundingClientRect()\n const mouseX = mouseXArg ?? boundsRect.left\n const mouseY = mouseYArg ?? boundsRect.top\n\n const xOutOfBounds = mouseX < boundsRect.left || mouseX > boundsRect.right\n const yOutOfBounds = mouseY < boundsRect.top || mouseY > boundsRect.bottom\n\n let x = ((mouseX - containerRect.left) / containerRect.width) * 100\n let y = ((mouseY - containerRect.top) / containerRect.height) * 100\n const xCenter =\n ((boundsRect.left - containerRect.left + boundsRect.width / 2) / containerRect.width) * 100\n const yCenter =\n ((boundsRect.top - containerRect.top + boundsRect.height / 2) / containerRect.height) * 100\n if (xOutOfBounds || yOutOfBounds) {\n setIsDragging(false)\n if (mouseX < boundsRect.left) {\n x = ((boundsRect.left - containerRect.left) / containerRect.width) * 100\n } else if (mouseX > boundsRect.right) {\n x =\n ((containerRect.width - (containerRect.right - boundsRect.right)) /\n containerRect.width) *\n 100\n }\n\n if (mouseY < boundsRect.top) {\n y = ((boundsRect.top - containerRect.top) / containerRect.height) * 100\n } else if (mouseY > boundsRect.bottom) {\n y =\n ((containerRect.height - (containerRect.bottom - boundsRect.bottom)) /\n containerRect.height) *\n 100\n }\n\n if (recenter) {\n x = xOutOfBounds ? xCenter : x\n y = yOutOfBounds ? yCenter : y\n }\n }\n\n return { x, y }\n },\n [boundsRef, containerRef],\n )\n\n const handleMouseDown = (event) => {\n event.preventDefault()\n setIsDragging(true)\n }\n\n const handleMouseMove = (event) => {\n if (!isDragging) return null\n const { x, y } = getCoordinates(event.clientX, event.clientY)\n\n setPosition({ x, y })\n }\n\n const onDrop = () => {\n setIsDragging(false)\n onDragEnd(position)\n }\n\n React.useEffect(() => {\n if (isDragging || !dragRef.current) return\n if (checkBounds) {\n const { height, left, top, width } = dragRef.current.getBoundingClientRect()\n const { x, y } = getCoordinates(left + width / 2, top + height / 2, true)\n onDragEnd({ x, y })\n setPosition({ x, y })\n setCheckBounds(false)\n return\n }\n }, [getCoordinates, isDragging, checkBounds, setCheckBounds, position.x, position.y, onDragEnd])\n\n React.useEffect(() => {\n setPosition({ x: initialPosition.x, y: initialPosition.y })\n }, [initialPosition.x, initialPosition.y])\n\n return (\n <div\n className={[\n `${baseClass}__draggable-container`,\n isDragging && `${baseClass}__draggable-container--dragging`,\n ]\n .filter(Boolean)\n .join(' ')}\n onMouseMove={handleMouseMove}\n >\n <button\n className={[`${baseClass}__draggable`, className].filter(Boolean).join(' ')}\n onMouseDown={handleMouseDown}\n onMouseUp={onDrop}\n ref={dragRef}\n style={{ left: `${position.x}%`, top: `${position.y}%` }}\n type=\"button\"\n >\n {children}\n </button>\n <div />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,SAASC,QAAQ,QAAQ;AACzB,OAAOC,KAAA,IAASC,UAAU,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AACpD,OAAOC,SAAA,MAAe;AACtB,OAAO;AAEP,SAASC,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAC/B,SAASC,MAAM,QAAQ;AACvB,OAAO;AAEP,MAAMC,SAAA,GAAY;AAQlB,MAAMC,KAAA,gBAAQT,UAAA,CAAoC,CAACU,KAAA,EAAOC,GAAA;EACxD,MAAM;IAAEC,IAAI;IAAEC,QAAQ;IAAEC;EAAK,CAAE,GAAGJ,KAAA;EAElC,oBACEK,KAAA,CAAC;IAAIC,SAAA,EAAW,GAAGR,SAAA,SAAkB;eAClCI,IAAA,E,aACDK,IAAA,CAAC;MACCL,IAAA,EAAMA,IAAA;MACNC,QAAA,EAAWK,CAAA,IAAML,QAAA,CAASK,CAAA,CAAEC,MAAM,CAACL,KAAK;MACxCH,GAAA,EAAKA,GAAA;MACLS,IAAA,EAAK;MACLN,KAAA,EAAOA;;;AAIf;AAkBA,MAAMO,WAAA,GAAmC;EACvCC,MAAA,EAAQ;EACRC,IAAA,EAAM;EACNC,KAAA,EAAO;EACPC,CAAA,EAAG;EACHC,CAAA,EAAG;AACL;AAEA,OAAO,MAAMC,UAAA,GAAwCC,EAAA;EAAA,MAAAC,CAAA,GAAAhC,EAAA;EAAC;IAAAiC,QAAA;IAAAC,OAAA;IAAAC,aAAA;IAAAC,WAAA;IAAAC,iBAAA;IAAAC,MAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAT,EASrD;EACC;IAAAU;EAAA,IAAuBxC,QAAA;EACvB;IAAAyC;EAAA,IAAcjC,cAAA;EAAA,IAAAkC,EAAA;EAAA,IAAAX,CAAA,QAAAI,WAAA;IAEwCO,EAAA,GAAAA,CAAA;MAAA,GAAAnB,WAAA;MAAA,IAEhDY,WAAA,MAAiB;IAAA;IACvBJ,CAAA,MAAAI,WAAA;IAAAJ,CAAA,MAAAW,EAAA;EAAA;IAAAA,EAAA,GAAAX,CAAA;EAAA;EAHA,OAAAY,IAAA,EAAAC,OAAA,IAAwBxC,QAAA,CAA8BsC,EAGtD;EAAA,IAAAG,EAAA;EAAA,IAAAd,CAAA,QAAAe,MAAA,CAAAC,GAAA;IAE4CF,EAAA;MAAAlB,CAAA;MAAAC,CAAA;IAAA;IAG5CG,CAAA,MAAAc,EAAA;EAAA;IAAAA,EAAA,GAAAd,CAAA;EAAA;EAHA,MAAAiB,oBAAA,GAA4CH,EAG5C;EAAA,IAAAI,EAAA;EAAA,IAAAlB,CAAA,QAAAK,iBAAA;IAEkEa,EAAA,GAAAA,CAAA;MAAA,GAC7DD,oBAAoB;MAAA,GACpBZ;IAAiB;IACtBL,CAAA,MAAAK,iBAAA;IAAAL,CAAA,MAAAkB,EAAA;EAAA;IAAAA,EAAA,GAAAlB,CAAA;EAAA;EAHA,OAAAmB,aAAA,EAAAC,gBAAA,IAA0C/C,QAAA,CAAwB6C,EAGlE;EAEA,OAAAG,WAAA,EAAAC,cAAA,IAAsCjD,QAAA,MAAkB;EACxD,OAAAkD,oBAAA,EAAAC,uBAAA,IAAwDnD,QAAA,EAAiB;EACzE,OAAAoD,mBAAA,EAAAC,sBAAA,IAAsDrD,QAAA,EAAiB;EAEvE,MAAAsD,YAAA,GAAqBvD,MAAA,CAAAwD,SAAmC;EACxD,MAAAC,QAAA,GAAiBzD,MAAA,CAAAwD,SAAqC;EACtD,MAAAE,OAAA,GAAgB1D,MAAA,CAAAwD,SAAmC;EAEnD,MAAAG,cAAA,GAAuB3D,MAAA,KAAgC;EACvD,MAAA4D,aAAA,GAAsB5D,MAAA,KAAgC;EAEtD,OAAA6D,WAAA,EAAAC,cAAA,IAAsC7D,QAAA,MAAkB;EAAA,IAAA8D,EAAA;EAAA,IAAAnC,CAAA,QAAAe,MAAA,CAAAC,GAAA;IAEpCmB,EAAA,GAAA9C,CAAA;MAElBmC,uBAAA,CAAwBnC,CAAA,CAAA+C,aAAA,CAAAC,aAA6B;MACrDX,sBAAA,CAAuBrC,CAAA,CAAA+C,aAAA,CAAAE,YAA4B;MACnDJ,cAAA,KAAe;IAAA;IACjBlC,CAAA,MAAAmC,EAAA;EAAA;IAAAA,EAAA,GAAAnC,CAAA;EAAA;EALA,MAAAuC,WAAA,GAAoBJ,EAKpB;EAAA,IAAAK,EAAA;EAAA,IAAAxC,CAAA,QAAAyB,mBAAA,IAAAzB,CAAA,QAAAuB,oBAAA,IAAAvB,CAAA,QAAAY,IAAA;IAEqB4B,EAAA,GAAAC,EAAA;MAAC;QAAAC,SAAA;QAAAzD;MAAA,IAAAwD,EAAsE;MAC1F,MAAAE,QAAA,GAAiBC,QAAA,CAAS3D,KAAA;MAAA,IACtByD,SAAA,KAAc,WAAWC,QAAA,IAAYlB,mBAAA;QAAA;MAAA;MAAA,IACrCiB,SAAA,KAAc,YAAYC,QAAA,IAAYpB,oBAAA;QAAA;MAAA;MAE1C,MAAAsB,UAAA,GACE,OAAOF,QAAA,IAAYD,SAAA,KAAc,UAAUjB,mBAAA,GAAsBF,oBAAmB,CAAC;MAAA,IAEnFsB,UAAA,QAAe,IAAOA,UAAA,MAAe;QAAA;MAAA;MAEzChC,OAAA;QAAA,GACKD,IAAI;QAAA,CACN8B,SAAA,GAAYG;MAAA,CACf;IAAA;IACF7C,CAAA,MAAAyB,mBAAA;IAAAzB,CAAA,MAAAuB,oBAAA;IAAAvB,CAAA,MAAAY,IAAA;IAAAZ,CAAA,MAAAwC,EAAA;EAAA;IAAAA,EAAA,GAAAxC,CAAA;EAAA;EAdA,MAAA8C,YAAA,GAAqBN,EAcrB;EAAA,IAAAC,EAAA;EAAA,IAAAzC,CAAA,SAAAe,MAAA,CAAAC,GAAA;IAE8ByB,EAAA,GAAAM,EAAA;MAAC;QAAAC,UAAA;QAAA/D,KAAA,EAAAgE;MAAA,IAAAF,EAM9B;MACC,MAAAG,UAAA,GAAiBN,QAAA,CAAS3D,OAAA;MAAA,IACtB0D,UAAA,KAAY,IAAKA,UAAA,OAAY;QAC/BvB,gBAAA,CAAA+B,YAAA;UAAA,GAAyCA,YAAY;UAAA,CAAGH,UAAA,GAAaL;QAAA,EAAS;MAAA;IAAA;IAElF3C,CAAA,OAAAyC,EAAA;EAAA;IAAAA,EAAA,GAAAzC,CAAA;EAAA;EAXA,MAAAoD,qBAAA,GAA8BX,EAW9B;EAEA,MAAAY,SAAA,GAAAA,CAAA;IAAA,IACM,OAAO/C,MAAA,KAAW;MACpBA,MAAA;QAAAM,IAAA,EACQA,IAAA,GAAOA,IAAA,GAAAgB,SAAO;QAAA0B,UAAA,EACRnC,aAAA;QAAAoC,cAAA,EACIC,MAAA,CAAOzB,cAAA,EAAA0B,OAAA,EAAAxE,KAAA,IAAkCsC,oBAAA;QAAAmC,aAAA,EAC1CF,MAAA,CAAOxB,aAAA,EAAAyB,OAAA,EAAAxE,KAAA,IAAiCwC,mBAAA;MAAA,CACzD;IAAA;IACFhB,UAAA,CAAAlC,cAAW;EAAA;EACb,IAAAwE,EAAA;EAAA,IAAA/C,CAAA,SAAAe,MAAA,CAAAC,GAAA;IAEoC+B,EAAA,GAAAY,EAAA;MAAC;QAAA/D,CAAA;QAAAC;MAAA,IAAA8D,EAAQ;MAC3CvC,gBAAA;QAAAxB,CAAA;QAAAC;MAAA,CAAwB;MACxByB,cAAA,MAAe;IAAA;IACjBtB,CAAA,OAAA+C,EAAA;EAAA;IAAAA,EAAA,GAAA/C,CAAA;EAAA;EAHA,MAAA4D,SAAA,GAAkBb,EAGb;EAEL,MAAAc,gBAAA,GAAAA,CAAA;IACE,MAAAC,aAAA,GAAsBnC,YAAA,CAAA8B,OAAA,CAAAM,qBAAA,CAA0C;IAChE,MAAAC,UAAA,GAAmBzD,QAAA,GACfuB,OAAA,CAAA2B,OAAA,CAAAM,qBAAA,CAAqC,IACrClC,QAAA,CAAA4B,OAAA,CAAAM,qBAAA,CAAsC;IAC1C,MAAAE,OAAA,GACE,CAAED,UAAA,CAAAE,IAAA,GAAkBJ,aAAA,CAAAI,IAAkB,GAAGF,UAAA,CAAArE,KAAA,IAAmB,IAAKmE,aAAA,CAAAnE,KAAmB,MAAI;IAC1F,MAAAwE,OAAA,GACE,CAAEH,UAAA,CAAAI,GAAA,GAAiBN,aAAA,CAAAM,GAAiB,GAAGJ,UAAA,CAAAvE,MAAA,IAAoB,IAAKqE,aAAA,CAAArE,MAAoB,MAAI;IAC1F2B,gBAAA;MAAAxB,CAAA,EAAsBqE,OAAA;MAAApE,CAAA,EAAYsE;IAAA,CAAQ;EAAA;EAG5C,MAAAE,YAAA,GAAqBlE,aAAA,GAAgB,GAAGD,OAAA,IAAWC,aAAA,EAAe,GAAGD,OAAA;EAAA,IAAAyD,EAAA;EAAA,IAAA3D,CAAA,SAAAS,UAAA;IAalDkD,EAAA,GAAAA,CAAA,KAAMlD,UAAA,CAAAlC,cAAW;IAAAyB,CAAA,OAAAS,UAAA;IAAAT,CAAA,OAAA2D,EAAA;EAAA;IAAAA,EAAA,GAAA3D,CAAA;EAAA;EAAA,OAVlCd,KAAA,CAAC;IAAAC,SAAA,EAAAR,SAAA;IAAA2F,QAAA,GACCpF,KAAA,CAAC;MAAAC,SAAA,EAAe,GAAAR,SAAA,UAAsB;MAAA2F,QAAA,GACpCpF,KAAA,CAAC;QAAAqF,KAAA,EAAU,GAAG7D,CAAA,CAAE,sBAAsBT,QAAA,EAAU;QAAAqE,QAAA,GAC7C5D,CAAA,CAAE,oBAAmB,KAAET,QAAA;MAAA,C,GAE1Bf,KAAA,CAAC;QAAAC,SAAA,EAAe,GAAAR,SAAA,WAAuB;QAAA2F,QAAA,GACrClF,IAAA,CAAAV,MAAA;UAAA,cACcgC,CAAA,CAAE;UAAA8D,WAAA,EACF;UAAArF,SAAA,EACD,GAAAR,SAAA,UAAsB;UAAA8F,OAAA,EACxBd,EAAiB;UAAAW,QAAA,EAEzB5D,CAAA,CAAE;QAAA,C,GAELtB,IAAA,CAAAV,MAAA;UAAA,cACcgC,CAAA,CAAE;UAAA8D,WAAA,EACF;UAAArF,SAAA,EACD,GAAAR,SAAA,QAAoB;UAAA+F,QAAA,GACpBzC,WAAA;UAAAwC,OAAA,EACFpB,SAAA;UAAAiB,QAAA,EAER5D,CAAA,CAAE;QAAA,C;;QAITxB,KAAA,CAAC;MAAAC,SAAA,EAAe,GAAAR,SAAA,YAAwB;MAAA2F,QAAA,GACtClF,IAAA,CAAC;QAAAD,SAAA,EAAe,GAAAR,SAAA,QAAoB;QAAA2F,QAAA,EAClCpF,KAAA,CAAC;UAAAC,SAAA,EACY,GAAAR,SAAA,iBAA6B;UAAAG,GAAA,EACnC6C,YAAA;UAAAgD,KAAA;YAAAC,WAAA,EAEU,GAAGnD,mBAAA,GAAsBF,oBAAA;UAAsB;UAAA+C,QAAA,GAG7D/D,QAAA,GACCnB,IAAA,CAAAd,SAAA;YAAAa,SAAA,EACa,GAAAR,SAAA,aAAyB;YAAAiC,IAAA;YAAA5B,QAAA,EAAAA,CAAA6F,CAAA,EAAA9G,CAAA,KAEhB8C,OAAA,CAAQ9C,CAAA;YAAA+G,UAAA,EAAAA,CAAA,KACVxD,cAAA,KAAe;YAAAyD,oBAAA,EAAAA,CAAA,KAExB3F,IAAA,CAAC;cAAAD,SAAA,EAAe,GAAAR,SAAA,eAA2B;cAAAG,GAAA,EAAOgD;YAAA,C;sBAG3D1C,IAAA,CAAC;cAAA4F,GAAA,EACMtE,CAAA,CAAE;cAAAuE,MAAA,EACC1C,WAAA;cAAAzD,GAAA,EACH+C,QAAA;cAAAqD,GAAA,EACAb;YAAA,C;eAITjF,IAAA,CAAC;YAAA4F,GAAA,EACMtE,CAAA,CAAE;YAAAuE,MAAA,EACC1C,WAAA;YAAAzD,GAAA,EACH+C,QAAA;YAAAqD,GAAA,EACAb;UAAA,C,GAGR7D,cAAA,IACCpB,IAAA,CAAA+F,gBAAA;YAAAC,SAAA,EACa7E,QAAA,GAAWuB,OAAA,GAAUD,QAAA;YAAAR,WAAA,EACnBd,QAAA,GAAWc,WAAA,QAAc;YAAAlC,SAAA,EAC3B,GAAAR,SAAA,cAA0B;YAAA0G,YAAA,EACvB1D,YAAA;YAAA2D,eAAA,EACGnE,aAAA;YAAAyC,SAAA;YAAAtC,cAAA,EAEDf,QAAA,GAAWe,cAAA,QAAiB;YAAAgD,QAAA,EAE5ClF,IAAA,CAAAZ,QAAA,IAAC;UAAA,C;;UAKP,CAAA+B,QAAA,IAAYC,cAAa,KACzBtB,KAAA,CAAC;QAAAC,SAAA,EAAe,GAAAR,SAAA,WAAuB;QAAA2F,QAAA,GACpC/D,QAAA,IACCrB,KAAA,CAAC;UAAAC,SAAA,EAAe,GAAAR,SAAA,aAAyB;UAAA2F,QAAA,GACvClF,IAAA,CAAC;YAAAkF,QAAA,EACCpF,KAAA,CAAC;cAAAC,SAAA,EAAe,GAAAR,SAAA,aAAyB;cAAA2F,QAAA,GACvClF,IAAA,CAAC;gBAAAkF,QAAA,EAAI5D,CAAA,CAAE;cAAA,C,GACPtB,IAAA,CAAAV,MAAA;gBAAA8F,WAAA,EACc;gBAAArF,SAAA,EACD,GAAAR,SAAA,SAAqB;gBAAA8F,OAAA,EAAAA,CAAA,KAE9B5D,OAAA;kBAAApB,MAAA;kBAAAC,IAAA,EAEQ;kBAAAC,KAAA;kBAAAC,CAAA;kBAAAC,CAAA;gBAAA,CAIR;gBAAAyE,QAAA,EAGD5D,CAAA,CAAE;cAAA,C;;cAITtB,IAAA,CAAC;YAAAD,SAAA,EAAgB,GAAAR,SAAA,eAA2B;YAAA2F,QAAA,EACzC5D,CAAA,CAAE;UAAA,C,GAELxB,KAAA,CAAC;YAAAC,SAAA,EAAe,GAAAR,SAAA,cAA0B;YAAA2F,QAAA,GACxClF,IAAA,CAAAR,KAAA;cAAAG,IAAA,EACQ,GAAG2B,CAAA,CAAE,sBAAsB;cAAA1B,QAAA,EAAAuG,OAAA,IACZzC,YAAA;gBAAAJ,SAAA,EAA0B;gBAAAzD,KAAA,EAASA;cAAA,CAAM;cAAAH,GAAA,EACzDkD,aAAA;cAAA/C,KAAA,EACE,CAAC2B,IAAC,CAAAjB,KAAA,MAAa,GAAO8B,mBAAkB,EAAA+D,OAAA,EAAW;YAAA,C,GAE5DpG,IAAA,CAAAR,KAAA;cAAAG,IAAA,EACQ,GAAG2B,CAAA,CAAE,uBAAuB;cAAA1B,QAAA,EAAAyG,OAAA,IACb3C,YAAA;gBAAAJ,SAAA,EAA0B;gBAAAzD,KAAA,EAAUA;cAAA,CAAM;cAAAH,GAAA,EAC1DiD,cAAA;cAAA9C,KAAA,EACE,CAAC2B,IAAC,CAAAnB,MAAA,MAAc,GAAO8B,oBAAmB,EAAAiE,OAAA,EAAW;YAAA,C;;YAMnEhF,cAAA,IACCtB,KAAA,CAAC;UAAAC,SAAA,EAAe,GAAAR,SAAA,aAAyB;UAAA2F,QAAA,GACvClF,IAAA,CAAC;YAAAkF,QAAA,EACCpF,KAAA,CAAC;cAAAC,SAAA,EAAe,GAAAR,SAAA,aAAyB;cAAA2F,QAAA,GACvClF,IAAA,CAAC;gBAAAkF,QAAA,EAAI5D,CAAA,CAAE;cAAA,C,GACPtB,IAAA,CAAAV,MAAA;gBAAA8F,WAAA,EACc;gBAAArF,SAAA,EACD,GAAAR,SAAA,SAAqB;gBAAA8F,OAAA,EACvBZ,gBAAA;gBAAAS,QAAA,EAER5D,CAAA,CAAE;cAAA,C;;cAITtB,IAAA,CAAC;YAAAD,SAAA,EAAgB,GAAAR,SAAA,eAA2B;YAAA2F,QAAA,EACzC5D,CAAA,CAAE;UAAA,C,GAELxB,KAAA,CAAC;YAAAC,SAAA,EAAe,GAAAR,SAAA,cAA0B;YAAA2F,QAAA,GACxClF,IAAA,CAAAR,KAAA;cAAAG,IAAA,EACO;cAAAC,QAAA,EAAA0G,OAAA,IACgBtC,qBAAA;gBAAAJ,UAAA,EAAoC;gBAAA/D,KAAA,EAAKA;cAAA,CAAM;cAAAA,KAAA,EAC7DkC,aAAA,CAAAvB,CAAA,CAAA4F,OAAA,EAAwB;YAAA,C,GAEjCpG,IAAA,CAAAR,KAAA;cAAAG,IAAA,EACO;cAAAC,QAAA,EAAA2G,OAAA,IACgBvC,qBAAA;gBAAAJ,UAAA,EAAoC;gBAAA/D,KAAA,EAAKA;cAAA,CAAM;cAAAA,KAAA,EAC7DkC,aAAA,CAAAtB,CAAA,CAAA2F,OAAA,EAAwB;YAAA,C;;;;;;CAUnD;AAEA,MAAML,gBAAA,GAAmBA,CAAC;EACxBC,SAAS;EACT/D,WAAW;EACXiD,QAAQ;EACRnF,SAAS;EACTkG,YAAY;EACZC,eAAA,GAAkB;IAAE1F,CAAA,EAAG;IAAIC,CAAA,EAAG;EAAG,CAAC;EAClC+D,SAAS;EACTtC;AAAc,CACf;EACC,MAAM,CAACsE,QAAA,EAAUC,WAAA,CAAY,GAAGxH,QAAA,CAAS;IAAEuB,CAAA,EAAG0F,eAAA,CAAgB1F,CAAC;IAAEC,CAAA,EAAGyF,eAAA,CAAgBzF;EAAE;EACtF,MAAM,CAACiG,UAAA,EAAYC,aAAA,CAAc,GAAG1H,QAAA,CAAS;EAC7C,MAAM2H,OAAA,GAAU5H,MAAA,CAAsCwD,SAAA;EAEtD,MAAMqE,cAAA,GAAiB/H,KAAA,CAAMgI,WAAW,CACtC,CAACC,SAAA,EAAoBC,SAAA,EAAoBC,QAAA;IACvC,MAAMvC,aAAA,GAAgBuB,YAAA,CAAa5B,OAAO,CAACM,qBAAqB;IAChE,MAAMC,UAAA,GAAaoB,SAAA,CAAU3B,OAAO,CAACM,qBAAqB;IAC1D,MAAMuC,MAAA,GAASH,SAAA,IAAanC,UAAA,CAAWE,IAAI;IAC3C,MAAMqC,MAAA,GAASH,SAAA,IAAapC,UAAA,CAAWI,GAAG;IAE1C,MAAMoC,YAAA,GAAeF,MAAA,GAAStC,UAAA,CAAWE,IAAI,IAAIoC,MAAA,GAAStC,UAAA,CAAWyC,KAAK;IAC1E,MAAMC,YAAA,GAAeH,MAAA,GAASvC,UAAA,CAAWI,GAAG,IAAImC,MAAA,GAASvC,UAAA,CAAW2C,MAAM;IAE1E,IAAI/G,CAAA,GAAI,CAAE0G,MAAA,GAASxC,aAAA,CAAcI,IAAI,IAAIJ,aAAA,CAAcnE,KAAK,GAAI;IAChE,IAAIE,CAAA,GAAI,CAAE0G,MAAA,GAASzC,aAAA,CAAcM,GAAG,IAAIN,aAAA,CAAcrE,MAAM,GAAI;IAChE,MAAMwE,OAAA,GACJ,CAAED,UAAA,CAAWE,IAAI,GAAGJ,aAAA,CAAcI,IAAI,GAAGF,UAAA,CAAWrE,KAAK,GAAG,KAAKmE,aAAA,CAAcnE,KAAK,GAAI;IAC1F,MAAMwE,OAAA,GACJ,CAAEH,UAAA,CAAWI,GAAG,GAAGN,aAAA,CAAcM,GAAG,GAAGJ,UAAA,CAAWvE,MAAM,GAAG,KAAKqE,aAAA,CAAcrE,MAAM,GAAI;IAC1F,IAAI+G,YAAA,IAAgBE,YAAA,EAAc;MAChCX,aAAA,CAAc;MACd,IAAIO,MAAA,GAAStC,UAAA,CAAWE,IAAI,EAAE;QAC5BtE,CAAA,GAAI,CAAEoE,UAAA,CAAWE,IAAI,GAAGJ,aAAA,CAAcI,IAAI,IAAIJ,aAAA,CAAcnE,KAAK,GAAI;MACvE,OAAO,IAAI2G,MAAA,GAAStC,UAAA,CAAWyC,KAAK,EAAE;QACpC7G,CAAA,GACE,CAAEkE,aAAA,CAAcnE,KAAK,IAAImE,aAAA,CAAc2C,KAAK,GAAGzC,UAAA,CAAWyC,KAAK,KAC7D3C,aAAA,CAAcnE,KAAK,GACrB;MACJ;MAEA,IAAI4G,MAAA,GAASvC,UAAA,CAAWI,GAAG,EAAE;QAC3BvE,CAAA,GAAI,CAAEmE,UAAA,CAAWI,GAAG,GAAGN,aAAA,CAAcM,GAAG,IAAIN,aAAA,CAAcrE,MAAM,GAAI;MACtE,OAAO,IAAI8G,MAAA,GAASvC,UAAA,CAAW2C,MAAM,EAAE;QACrC9G,CAAA,GACE,CAAEiE,aAAA,CAAcrE,MAAM,IAAIqE,aAAA,CAAc6C,MAAM,GAAG3C,UAAA,CAAW2C,MAAM,KAChE7C,aAAA,CAAcrE,MAAM,GACtB;MACJ;MAEA,IAAI4G,QAAA,EAAU;QACZzG,CAAA,GAAI4G,YAAA,GAAevC,OAAA,GAAUrE,CAAA;QAC7BC,CAAA,GAAI6G,YAAA,GAAevC,OAAA,GAAUtE,CAAA;MAC/B;IACF;IAEA,OAAO;MAAED,CAAA;MAAGC;IAAE;EAChB,GACA,CAACuF,SAAA,EAAWC,YAAA,CAAa;EAG3B,MAAMuB,eAAA,GAAmBC,KAAA;IACvBA,KAAA,CAAMC,cAAc;IACpBf,aAAA,CAAc;EAChB;EAEA,MAAMgB,eAAA,GAAmBF,OAAA;IACvB,IAAI,CAACf,UAAA,EAAY,OAAO;IACxB,MAAM;MAAElG,CAAC,EAADA,GAAC;MAAEC,CAAC,EAADA;IAAC,CAAE,GAAGoG,cAAA,CAAeY,OAAA,CAAMG,OAAO,EAAEH,OAAA,CAAMI,OAAO;IAE5DpB,WAAA,CAAY;MAAEjG,CAAA,EAAAA,GAAA;MAAGC,CAAA,EAAAA;IAAE;EACrB;EAEA,MAAMqH,MAAA,GAASA,CAAA;IACbnB,aAAA,CAAc;IACdnC,SAAA,CAAUgC,QAAA;EACZ;EAEA1H,KAAA,CAAMiJ,SAAS,CAAC;IACd,IAAIrB,UAAA,IAAc,CAACE,OAAA,CAAQvC,OAAO,EAAE;IACpC,IAAIpC,WAAA,EAAa;MACf,MAAM;QAAE5B,MAAM;QAAEyE,IAAI;QAAEE,GAAG;QAAEzE;MAAK,CAAE,GAAGqG,OAAA,CAAQvC,OAAO,CAACM,qBAAqB;MAC1E,MAAM;QAAEnE,CAAC,EAADA,GAAC;QAAEC,CAAC,EAADA;MAAC,CAAE,GAAGoG,cAAA,CAAe/B,IAAA,GAAOvE,KAAA,GAAQ,GAAGyE,GAAA,GAAM3E,MAAA,GAAS,GAAG;MACpEmE,SAAA,CAAU;QAAEhE,CAAA,EAAAA,GAAA;QAAGC,CAAA,EAAAA;MAAE;MACjBgG,WAAA,CAAY;QAAEjG,CAAA,EAAAA,GAAA;QAAGC,CAAA,EAAAA;MAAE;MACnByB,cAAA,CAAe;MACf;IACF;EACF,GAAG,CAAC2E,cAAA,EAAgBH,UAAA,EAAYzE,WAAA,EAAaC,cAAA,EAAgBsE,QAAA,CAAShG,CAAC,EAAEgG,QAAA,CAAS/F,CAAC,EAAE+D,SAAA,CAAU;EAE/F1F,KAAA,CAAMiJ,SAAS,CAAC;IACdtB,WAAA,CAAY;MAAEjG,CAAA,EAAG0F,eAAA,CAAgB1F,CAAC;MAAEC,CAAA,EAAGyF,eAAA,CAAgBzF;IAAE;EAC3D,GAAG,CAACyF,eAAA,CAAgB1F,CAAC,EAAE0F,eAAA,CAAgBzF,CAAC,CAAC;EAEzC,oBACEX,KAAA,CAAC;IACCC,SAAA,EAAW,CACT,GAAGR,SAAA,uBAAgC,EACnCmH,UAAA,IAAc,GAAGnH,SAAA,iCAA0C,CAC5D,CACEyI,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;IACRC,WAAA,EAAaR,eAAA;4BAEb3H,IAAA,CAAC;MACCD,SAAA,EAAW,CAAC,GAAGR,SAAA,aAAsB,EAAEQ,SAAA,CAAU,CAACiI,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;MACvEE,WAAA,EAAaZ,eAAA;MACba,SAAA,EAAWP,MAAA;MACXpI,GAAA,EAAKkH,OAAA;MACLrB,KAAA,EAAO;QAAET,IAAA,EAAM,GAAG0B,QAAA,CAAShG,CAAC,GAAG;QAAEwE,GAAA,EAAK,GAAGwB,QAAA,CAAS/F,CAAC;MAAI;MACvDN,IAAA,EAAK;gBAEJ+E;qBAEHlF,IAAA,CAAC;;AAGP","ignoreList":[]}
@@ -1,30 +1,28 @@
1
1
  'use client';
2
+
2
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
4
  import React from 'react';
4
5
  import './index.scss';
5
6
  const baseClass = 'error-pill';
6
- export const ErrorPill = (props)=>{
7
- const { className, count, i18n, withMessage } = props;
8
- const lessThan3Chars = !withMessage && count < 99;
9
- const classes = [
10
- baseClass,
11
- lessThan3Chars && `${baseClass}--fixed-width`,
12
- className && className
13
- ].filter(Boolean).join(' ');
14
- if (count === 0) return null;
15
- return /*#__PURE__*/ _jsx("div", {
16
- className: classes,
17
- children: /*#__PURE__*/ _jsxs("div", {
18
- className: `${baseClass}__content`,
19
- children: [
20
- /*#__PURE__*/ _jsx("span", {
21
- className: `${baseClass}__count`,
22
- children: count
23
- }),
24
- withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`
25
- ]
26
- })
27
- });
7
+ export const ErrorPill = props => {
8
+ const {
9
+ className,
10
+ count,
11
+ i18n,
12
+ withMessage
13
+ } = props;
14
+ const lessThan3Chars = !withMessage && count < 99;
15
+ const classes = [baseClass, lessThan3Chars && `${baseClass}--fixed-width`, className && className].filter(Boolean).join(' ');
16
+ if (count === 0) return null;
17
+ return /*#__PURE__*/_jsx("div", {
18
+ className: classes,
19
+ children: /*#__PURE__*/_jsxs("div", {
20
+ className: `${baseClass}__content`,
21
+ children: [/*#__PURE__*/_jsx("span", {
22
+ className: `${baseClass}__count`,
23
+ children: count
24
+ }), withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`]
25
+ })
26
+ });
28
27
  };
29
-
30
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/ErrorPill/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'error-pill'\n\nexport type ErrorPillProps = {\n className?: string\n count: number\n i18n: I18nClient\n withMessage?: boolean\n}\n\nexport const ErrorPill: React.FC<ErrorPillProps> = (props) => {\n const { className, count, i18n, withMessage } = props\n const lessThan3Chars = !withMessage && count < 99\n\n const classes = [baseClass, lessThan3Chars && `${baseClass}--fixed-width`, className && className]\n .filter(Boolean)\n .join(' ')\n\n if (count === 0) return null\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__content`}>\n <span className={`${baseClass}__count`}>{count}</span>\n {withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`}\n </div>\n </div>\n )\n}\n"],"names":["React","baseClass","ErrorPill","props","className","count","i18n","withMessage","lessThan3Chars","classes","filter","Boolean","join","div","span","t"],"mappings":"AAAA;;AAGA,OAAOA,WAAW,QAAO;AAEzB,OAAO,eAAc;AAErB,MAAMC,YAAY;AASlB,OAAO,MAAMC,YAAsC,CAACC;IAClD,MAAM,EAAEC,SAAS,EAAEC,KAAK,EAAEC,IAAI,EAAEC,WAAW,EAAE,GAAGJ;IAChD,MAAMK,iBAAiB,CAACD,eAAeF,QAAQ;IAE/C,MAAMI,UAAU;QAACR;QAAWO,kBAAkB,CAAC,EAAEP,UAAU,aAAa,CAAC;QAAEG,aAAaA;KAAU,CAC/FM,MAAM,CAACC,SACPC,IAAI,CAAC;IAER,IAAIP,UAAU,GAAG,OAAO;IAExB,qBACE,KAACQ;QAAIT,WAAWK;kBACd,cAAA,MAACI;YAAIT,WAAW,CAAC,EAAEH,UAAU,SAAS,CAAC;;8BACrC,KAACa;oBAAKV,WAAW,CAAC,EAAEH,UAAU,OAAO,CAAC;8BAAGI;;gBACxCE,eAAe,CAAC,CAAC,EAAEF,QAAQ,IAAIC,KAAKS,CAAC,CAAC,oBAAoBT,KAAKS,CAAC,CAAC,iBAAiB,CAAC;;;;AAI5F,EAAC"}
1
+ {"version":3,"file":"index.js","names":["React","baseClass","ErrorPill","props","className","count","i18n","withMessage","lessThan3Chars","classes","filter","Boolean","join","_jsx","_jsxs","t"],"sources":["../../../src/elements/ErrorPill/index.tsx"],"sourcesContent":["'use client'\nimport type { I18nClient } from '@payloadcms/translations'\n\nimport React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'error-pill'\n\nexport type ErrorPillProps = {\n className?: string\n count: number\n i18n: I18nClient\n withMessage?: boolean\n}\n\nexport const ErrorPill: React.FC<ErrorPillProps> = (props) => {\n const { className, count, i18n, withMessage } = props\n const lessThan3Chars = !withMessage && count < 99\n\n const classes = [baseClass, lessThan3Chars && `${baseClass}--fixed-width`, className && className]\n .filter(Boolean)\n .join(' ')\n\n if (count === 0) return null\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__content`}>\n <span className={`${baseClass}__count`}>{count}</span>\n {withMessage && ` ${count > 1 ? i18n.t('general:errors') : i18n.t('general:error')}`}\n </div>\n </div>\n )\n}\n"],"mappings":"AAAA;;;AAGA,OAAOA,KAAA,MAAW;AAElB,OAAO;AAEP,MAAMC,SAAA,GAAY;AASlB,OAAO,MAAMC,SAAA,GAAuCC,KAAA;EAClD,MAAM;IAAEC,SAAS;IAAEC,KAAK;IAAEC,IAAI;IAAEC;EAAW,CAAE,GAAGJ,KAAA;EAChD,MAAMK,cAAA,GAAiB,CAACD,WAAA,IAAeF,KAAA,GAAQ;EAE/C,MAAMI,OAAA,GAAU,CAACR,SAAA,EAAWO,cAAA,IAAkB,GAAGP,SAAA,eAAwB,EAAEG,SAAA,IAAaA,SAAA,CAAU,CAC/FM,MAAM,CAACC,OAAA,EACPC,IAAI,CAAC;EAER,IAAIP,KAAA,KAAU,GAAG,OAAO;EAExB,oBACEQ,IAAA,CAAC;IAAIT,SAAA,EAAWK,OAAA;cACd,aAAAK,KAAA,CAAC;MAAIV,SAAA,EAAW,GAAGH,SAAA,WAAoB;8BACrCY,IAAA,CAAC;QAAKT,SAAA,EAAW,GAAGH,SAAA,SAAkB;kBAAGI;UACxCE,WAAA,IAAe,IAAIF,KAAA,GAAQ,IAAIC,IAAA,CAAKS,CAAC,CAAC,oBAAoBT,IAAA,CAAKS,CAAC,CAAC,kBAAkB;;;AAI5F","ignoreList":[]}
@@ -1,4 +1,6 @@
1
1
  'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
2
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
5
  import { fieldAffectsData, fieldHasSubFields } from 'payload/shared';
4
6
  import React, { Fragment, useState } from 'react';
@@ -10,148 +12,176 @@ import { useTranslation } from '../../providers/Translation/index.js';
10
12
  import { ReactSelect } from '../ReactSelect/index.js';
11
13
  import './index.scss';
12
14
  const baseClass = 'field-select';
13
- export const combineLabel = ({ customLabel, field, prefix })=>{
14
- const CustomLabelToRender = field?.admin?.components && 'Label' in field.admin.components && field?.admin?.components?.Label !== undefined ? field.admin.components.Label : null;
15
- const DefaultLabelToRender = field && 'label' in field && field.label ? {
16
- type: 'client',
17
- Component: FieldLabel,
18
- props: {
19
- Label: field.admin?.components && 'Label' in field.admin.components ? field.admin?.components?.Label : null,
20
- label: field.label
21
- }
22
- } : null;
23
- const LabelToRender = CustomLabelToRender || DefaultLabelToRender || {
24
- type: 'client',
25
- Component: null,
26
- RenderedComponent: customLabel
27
- };
28
- if (!LabelToRender) return null;
29
- return /*#__PURE__*/ _jsxs(Fragment, {
30
- children: [
31
- prefix && /*#__PURE__*/ _jsxs(Fragment, {
32
- children: [
33
- /*#__PURE__*/ _jsx("span", {
34
- style: {
35
- display: 'inline-block'
36
- },
37
- children: prefix
38
- }),
39
- ' > '
40
- ]
41
- }),
42
- /*#__PURE__*/ _jsx("span", {
43
- style: {
44
- display: 'inline-block'
45
- },
46
- children: /*#__PURE__*/ _jsx(RenderComponent, {
47
- mappedComponent: LabelToRender
48
- })
49
- })
50
- ]
51
- });
15
+ export const combineLabel = ({
16
+ customLabel,
17
+ field,
18
+ prefix
19
+ }) => {
20
+ const CustomLabelToRender = field?.admin?.components && 'Label' in field.admin.components && field?.admin?.components?.Label !== undefined ? field.admin.components.Label : null;
21
+ const DefaultLabelToRender = field && 'label' in field && field.label ? {
22
+ type: 'client',
23
+ Component: FieldLabel,
24
+ props: {
25
+ Label: field.admin?.components && 'Label' in field.admin.components ? field.admin?.components?.Label : null,
26
+ label: field.label
27
+ }
28
+ } : null;
29
+ const LabelToRender = CustomLabelToRender || DefaultLabelToRender || {
30
+ type: 'client',
31
+ Component: null,
32
+ RenderedComponent: customLabel
33
+ };
34
+ if (!LabelToRender) return null;
35
+ return /*#__PURE__*/_jsxs(Fragment, {
36
+ children: [prefix && /*#__PURE__*/_jsxs(Fragment, {
37
+ children: [/*#__PURE__*/_jsx("span", {
38
+ style: {
39
+ display: 'inline-block'
40
+ },
41
+ children: prefix
42
+ }), ' > ']
43
+ }), /*#__PURE__*/_jsx("span", {
44
+ style: {
45
+ display: 'inline-block'
46
+ },
47
+ children: /*#__PURE__*/_jsx(RenderComponent, {
48
+ mappedComponent: LabelToRender
49
+ })
50
+ })]
51
+ });
52
52
  };
53
- const reduceFields = ({ fields, labelPrefix = null, path = '' })=>{
54
- if (!fields) {
55
- return [];
53
+ const reduceFields = ({
54
+ fields,
55
+ labelPrefix = null,
56
+ path = ''
57
+ }) => {
58
+ if (!fields) {
59
+ return [];
60
+ }
61
+ return fields?.reduce((fieldsToUse, field) => {
62
+ // escape for a variety of reasons
63
+ if (fieldAffectsData(field) && (field.admin.disableBulkEdit || field.unique || field.admin.hidden || 'readOnly' in field && field.readOnly)) {
64
+ return fieldsToUse;
56
65
  }
57
- return fields?.reduce((fieldsToUse, field)=>{
58
- // escape for a variety of reasons
59
- if (fieldAffectsData(field) && (field.admin.disableBulkEdit || field.unique || field.admin.hidden || 'readOnly' in field && field.readOnly)) {
60
- return fieldsToUse;
61
- }
62
- if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) {
63
- return [
64
- ...fieldsToUse,
65
- ...reduceFields({
66
- fields: field.fields,
67
- labelPrefix: combineLabel({
68
- field,
69
- prefix: labelPrefix
70
- }),
71
- path: createNestedClientFieldPath(path, field)
72
- })
73
- ];
74
- }
75
- if (field.type === 'tabs' && 'tabs' in field) {
76
- return [
77
- ...fieldsToUse,
78
- ...field.tabs.reduce((tabFields, tab)=>{
79
- if ('fields' in tab) {
80
- const isNamedTab = 'name' in tab && tab.name;
81
- return [
82
- ...tabFields,
83
- ...reduceFields({
84
- fields: tab.fields,
85
- labelPrefix,
86
- path: isNamedTab ? createNestedClientFieldPath(path, field) : path
87
- })
88
- ];
89
- }
90
- }, [])
91
- ];
66
+ if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) {
67
+ return [...fieldsToUse, ...reduceFields({
68
+ fields: field.fields,
69
+ labelPrefix: combineLabel({
70
+ field,
71
+ prefix: labelPrefix
72
+ }),
73
+ path: createNestedClientFieldPath(path, field)
74
+ })];
75
+ }
76
+ if (field.type === 'tabs' && 'tabs' in field) {
77
+ return [...fieldsToUse, ...field.tabs.reduce((tabFields, tab) => {
78
+ if ('fields' in tab) {
79
+ const isNamedTab = 'name' in tab && tab.name;
80
+ return [...tabFields, ...reduceFields({
81
+ fields: tab.fields,
82
+ labelPrefix,
83
+ path: isNamedTab ? createNestedClientFieldPath(path, field) : path
84
+ })];
92
85
  }
93
- const formattedField = {
94
- label: combineLabel({
95
- field,
96
- prefix: labelPrefix
97
- }),
98
- value: {
99
- ...field,
100
- path: createNestedClientFieldPath(path, field)
101
- }
102
- };
103
- return [
104
- ...fieldsToUse,
105
- formattedField
106
- ];
107
- }, []);
86
+ }, [])];
87
+ }
88
+ const formattedField = {
89
+ label: combineLabel({
90
+ field,
91
+ prefix: labelPrefix
92
+ }),
93
+ value: {
94
+ ...field,
95
+ path: createNestedClientFieldPath(path, field)
96
+ }
97
+ };
98
+ return [...fieldsToUse, formattedField];
99
+ }, []);
108
100
  };
109
- export const FieldSelect = ({ fields, setSelected })=>{
110
- const { t } = useTranslation();
111
- const [options] = useState(()=>reduceFields({
112
- fields
101
+ export const FieldSelect = t0 => {
102
+ const $ = _c(10);
103
+ const {
104
+ fields,
105
+ setSelected
106
+ } = t0;
107
+ const {
108
+ t
109
+ } = useTranslation();
110
+ let t1;
111
+ if ($[0] !== fields) {
112
+ t1 = () => reduceFields({
113
+ fields
114
+ });
115
+ $[0] = fields;
116
+ $[1] = t1;
117
+ } else {
118
+ t1 = $[1];
119
+ }
120
+ const [options] = useState(t1);
121
+ const {
122
+ dispatchFields,
123
+ getFields
124
+ } = useForm();
125
+ let t2;
126
+ if ($[2] !== getFields || $[3] !== setSelected || $[4] !== dispatchFields) {
127
+ t2 = selected => {
128
+ const activeFields = getFields();
129
+ if (selected === null) {
130
+ setSelected([]);
131
+ } else {
132
+ setSelected(selected.map(t3 => {
133
+ const {
134
+ value
135
+ } = t3;
136
+ return value;
113
137
  }));
114
- const { dispatchFields, getFields } = useForm();
115
- const handleChange = (selected)=>{
116
- const activeFields = getFields();
117
- if (selected === null) {
118
- setSelected([]);
119
- } else {
120
- setSelected(selected.map(({ value })=>value));
121
- }
122
- // remove deselected values from form state
123
- if (selected === null || Object.keys(activeFields || []).length > selected.length) {
124
- Object.keys(activeFields).forEach((path)=>{
125
- if (selected === null || !selected.find((field)=>{
126
- return field.value.path === path;
127
- })) {
128
- dispatchFields({
129
- type: 'REMOVE',
130
- path
131
- });
132
- }
138
+ }
139
+ if (selected === null || Object.keys(activeFields || []).length > selected.length) {
140
+ Object.keys(activeFields).forEach(path => {
141
+ if (selected === null || !selected.find(field => field.value.path === path)) {
142
+ dispatchFields({
143
+ type: "REMOVE",
144
+ path
133
145
  });
134
- }
146
+ }
147
+ });
148
+ }
135
149
  };
136
- return /*#__PURE__*/ _jsxs("div", {
137
- className: baseClass,
138
- children: [
139
- /*#__PURE__*/ _jsx(FieldLabel, {
140
- label: t('fields:selectFieldsToEdit')
141
- }),
142
- /*#__PURE__*/ _jsx(ReactSelect, {
143
- getOptionValue: (option)=>{
144
- if (typeof option.value === 'object' && 'path' in option.value) {
145
- return String(option.value.path);
146
- }
147
- return String(option.value);
148
- },
149
- isMulti: true,
150
- onChange: handleChange,
151
- options: options
152
- })
153
- ]
150
+ $[2] = getFields;
151
+ $[3] = setSelected;
152
+ $[4] = dispatchFields;
153
+ $[5] = t2;
154
+ } else {
155
+ t2 = $[5];
156
+ }
157
+ const handleChange = t2;
158
+ let t3;
159
+ if ($[6] !== t || $[7] !== handleChange || $[8] !== options) {
160
+ t3 = _jsxs("div", {
161
+ className: baseClass,
162
+ children: [_jsx(FieldLabel, {
163
+ field: null,
164
+ label: t("fields:selectFieldsToEdit")
165
+ }), _jsx(ReactSelect, {
166
+ getOptionValue: _temp,
167
+ isMulti: true,
168
+ onChange: handleChange,
169
+ options
170
+ })]
154
171
  });
172
+ $[6] = t;
173
+ $[7] = handleChange;
174
+ $[8] = options;
175
+ $[9] = t3;
176
+ } else {
177
+ t3 = $[9];
178
+ }
179
+ return t3;
155
180
  };
156
-
181
+ function _temp(option) {
182
+ if (typeof option.value === "object" && "path" in option.value) {
183
+ return String(option.value.path);
184
+ }
185
+ return String(option.value);
186
+ }
157
187
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/FieldSelect/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, FieldWithPath, MappedComponent } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields } from 'payload/shared'\nimport React, { Fragment, type JSX, useState } from 'react'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ReactSelect } from '../ReactSelect/index.js'\nimport './index.scss'\n\nconst baseClass = 'field-select'\n\nexport type FieldSelectProps = {\n readonly fields: ClientField[]\n readonly setSelected: (fields: FieldWithPath[]) => void\n}\n\nexport const combineLabel = ({\n customLabel,\n field,\n prefix,\n}: {\n customLabel?: string\n field?: ClientField\n prefix?: JSX.Element | string\n}): JSX.Element => {\n const CustomLabelToRender: MappedComponent =\n field?.admin?.components &&\n 'Label' in field.admin.components &&\n field?.admin?.components?.Label !== undefined\n ? field.admin.components.Label\n : null\n\n const DefaultLabelToRender: MappedComponent =\n field && 'label' in field && field.label\n ? {\n type: 'client',\n Component: FieldLabel,\n props: {\n Label:\n field.admin?.components && 'Label' in field.admin.components\n ? field.admin?.components?.Label\n : null,\n label: field.label,\n },\n }\n : null\n\n const LabelToRender: MappedComponent = CustomLabelToRender ||\n DefaultLabelToRender || {\n type: 'client',\n Component: null,\n RenderedComponent: customLabel,\n }\n\n if (!LabelToRender) return null\n\n return (\n <Fragment>\n {prefix && (\n <Fragment>\n <span style={{ display: 'inline-block' }}>{prefix}</span>\n {' > '}\n </Fragment>\n )}\n <span style={{ display: 'inline-block' }}>\n <RenderComponent mappedComponent={LabelToRender} />\n </span>\n </Fragment>\n )\n}\n\nconst reduceFields = ({\n fields,\n labelPrefix = null,\n path = '',\n}: {\n fields: ClientField[]\n labelPrefix?: JSX.Element | string\n path?: string\n}): { Label: JSX.Element; value: FieldWithPath }[] => {\n if (!fields) {\n return []\n }\n\n return fields?.reduce((fieldsToUse, field) => {\n // escape for a variety of reasons\n if (\n fieldAffectsData(field) &&\n (field.admin.disableBulkEdit ||\n field.unique ||\n field.admin.hidden ||\n ('readOnly' in field && field.readOnly))\n ) {\n return fieldsToUse\n }\n\n if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) {\n return [\n ...fieldsToUse,\n ...reduceFields({\n fields: field.fields,\n labelPrefix: combineLabel({ field, prefix: labelPrefix }),\n path: createNestedClientFieldPath(path, field),\n }),\n ]\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n return [\n ...fieldsToUse,\n ...field.tabs.reduce((tabFields, tab) => {\n if ('fields' in tab) {\n const isNamedTab = 'name' in tab && tab.name\n return [\n ...tabFields,\n ...reduceFields({\n fields: tab.fields,\n labelPrefix,\n path: isNamedTab ? createNestedClientFieldPath(path, field) : path,\n }),\n ]\n }\n }, []),\n ]\n }\n\n const formattedField = {\n label: combineLabel({ field, prefix: labelPrefix }),\n value: {\n ...field,\n path: createNestedClientFieldPath(path, field),\n },\n }\n\n return [...fieldsToUse, formattedField]\n }, [])\n}\n\nexport const FieldSelect: React.FC<FieldSelectProps> = ({ fields, setSelected }) => {\n const { t } = useTranslation()\n const [options] = useState(() => reduceFields({ fields }))\n\n const { dispatchFields, getFields } = useForm()\n\n const handleChange = (selected) => {\n const activeFields = getFields()\n if (selected === null) {\n setSelected([])\n } else {\n setSelected(selected.map(({ value }) => value))\n }\n\n // remove deselected values from form state\n if (selected === null || Object.keys(activeFields || []).length > selected.length) {\n Object.keys(activeFields).forEach((path) => {\n if (\n selected === null ||\n !selected.find((field) => {\n return field.value.path === path\n })\n ) {\n dispatchFields({\n type: 'REMOVE',\n path,\n })\n }\n })\n }\n }\n\n return (\n <div className={baseClass}>\n <FieldLabel label={t('fields:selectFieldsToEdit')} />\n <ReactSelect\n getOptionValue={(option) => {\n if (typeof option.value === 'object' && 'path' in option.value) {\n return String(option.value.path)\n }\n return String(option.value)\n }}\n isMulti\n onChange={handleChange}\n options={options}\n />\n </div>\n )\n}\n"],"names":["fieldAffectsData","fieldHasSubFields","React","Fragment","useState","FieldLabel","useForm","createNestedClientFieldPath","RenderComponent","useTranslation","ReactSelect","baseClass","combineLabel","customLabel","field","prefix","CustomLabelToRender","admin","components","Label","undefined","DefaultLabelToRender","label","type","Component","props","LabelToRender","RenderedComponent","span","style","display","mappedComponent","reduceFields","fields","labelPrefix","path","reduce","fieldsToUse","disableBulkEdit","unique","hidden","readOnly","tabs","tabFields","tab","isNamedTab","name","formattedField","value","FieldSelect","setSelected","t","options","dispatchFields","getFields","handleChange","selected","activeFields","map","Object","keys","length","forEach","find","div","className","getOptionValue","option","String","isMulti","onChange"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["c","_c","fieldAffectsData","fieldHasSubFields","React","Fragment","useState","FieldLabel","useForm","createNestedClientFieldPath","RenderComponent","useTranslation","ReactSelect","baseClass","combineLabel","customLabel","field","prefix","CustomLabelToRender","admin","components","Label","undefined","DefaultLabelToRender","label","type","Component","props","LabelToRender","RenderedComponent","_jsxs","_jsx","style","display","mappedComponent","reduceFields","fields","labelPrefix","path","reduce","fieldsToUse","disableBulkEdit","unique","hidden","readOnly","tabs","tabFields","tab","isNamedTab","name","formattedField","value","FieldSelect","t0","$","setSelected","t","t1","options","dispatchFields","getFields","t2","selected","activeFields","map","t3","Object","keys","length","forEach","find","handleChange","className","children","getOptionValue","_temp","isMulti","onChange","option","String"],"sources":["../../../src/elements/FieldSelect/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, FieldWithPath, MappedComponent } from 'payload'\n\nimport { fieldAffectsData, fieldHasSubFields } from 'payload/shared'\nimport React, { Fragment, type JSX, useState } from 'react'\n\nimport { FieldLabel } from '../../fields/FieldLabel/index.js'\nimport { useForm } from '../../forms/Form/context.js'\nimport { createNestedClientFieldPath } from '../../forms/Form/createNestedClientFieldPath.js'\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ReactSelect } from '../ReactSelect/index.js'\nimport './index.scss'\n\nconst baseClass = 'field-select'\n\nexport type FieldSelectProps = {\n readonly fields: ClientField[]\n readonly setSelected: (fields: FieldWithPath[]) => void\n}\n\nexport const combineLabel = ({\n customLabel,\n field,\n prefix,\n}: {\n customLabel?: string\n field?: ClientField\n prefix?: JSX.Element | string\n}): JSX.Element => {\n const CustomLabelToRender: MappedComponent =\n field?.admin?.components &&\n 'Label' in field.admin.components &&\n field?.admin?.components?.Label !== undefined\n ? field.admin.components.Label\n : null\n\n const DefaultLabelToRender: MappedComponent =\n field && 'label' in field && field.label\n ? {\n type: 'client',\n Component: FieldLabel,\n props: {\n Label:\n field.admin?.components && 'Label' in field.admin.components\n ? field.admin?.components?.Label\n : null,\n label: field.label,\n },\n }\n : null\n\n const LabelToRender: MappedComponent = CustomLabelToRender ||\n DefaultLabelToRender || {\n type: 'client',\n Component: null,\n RenderedComponent: customLabel,\n }\n\n if (!LabelToRender) return null\n\n return (\n <Fragment>\n {prefix && (\n <Fragment>\n <span style={{ display: 'inline-block' }}>{prefix}</span>\n {' > '}\n </Fragment>\n )}\n <span style={{ display: 'inline-block' }}>\n <RenderComponent mappedComponent={LabelToRender} />\n </span>\n </Fragment>\n )\n}\n\nconst reduceFields = ({\n fields,\n labelPrefix = null,\n path = '',\n}: {\n fields: ClientField[]\n labelPrefix?: JSX.Element | string\n path?: string\n}): { Label: JSX.Element; value: FieldWithPath }[] => {\n if (!fields) {\n return []\n }\n\n return fields?.reduce((fieldsToUse, field) => {\n // escape for a variety of reasons\n if (\n fieldAffectsData(field) &&\n (field.admin.disableBulkEdit ||\n field.unique ||\n field.admin.hidden ||\n ('readOnly' in field && field.readOnly))\n ) {\n return fieldsToUse\n }\n\n if (!(field.type === 'array' || field.type === 'blocks') && fieldHasSubFields(field)) {\n return [\n ...fieldsToUse,\n ...reduceFields({\n fields: field.fields,\n labelPrefix: combineLabel({ field, prefix: labelPrefix }),\n path: createNestedClientFieldPath(path, field),\n }),\n ]\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n return [\n ...fieldsToUse,\n ...field.tabs.reduce((tabFields, tab) => {\n if ('fields' in tab) {\n const isNamedTab = 'name' in tab && tab.name\n return [\n ...tabFields,\n ...reduceFields({\n fields: tab.fields,\n labelPrefix,\n path: isNamedTab ? createNestedClientFieldPath(path, field) : path,\n }),\n ]\n }\n }, []),\n ]\n }\n\n const formattedField = {\n label: combineLabel({ field, prefix: labelPrefix }),\n value: {\n ...field,\n path: createNestedClientFieldPath(path, field),\n },\n }\n\n return [...fieldsToUse, formattedField]\n }, [])\n}\n\nexport const FieldSelect: React.FC<FieldSelectProps> = ({ fields, setSelected }) => {\n const { t } = useTranslation()\n const [options] = useState(() => reduceFields({ fields }))\n\n const { dispatchFields, getFields } = useForm()\n\n const handleChange = (selected) => {\n const activeFields = getFields()\n if (selected === null) {\n setSelected([])\n } else {\n setSelected(selected.map(({ value }) => value))\n }\n\n // remove deselected values from form state\n if (selected === null || Object.keys(activeFields || []).length > selected.length) {\n Object.keys(activeFields).forEach((path) => {\n if (\n selected === null ||\n !selected.find((field) => {\n return field.value.path === path\n })\n ) {\n dispatchFields({\n type: 'REMOVE',\n path,\n })\n }\n })\n }\n }\n\n return (\n <div className={baseClass}>\n <FieldLabel field={null} label={t('fields:selectFieldsToEdit')} />\n <ReactSelect\n getOptionValue={(option) => {\n if (typeof option.value === 'object' && 'path' in option.value) {\n return String(option.value.path)\n }\n return String(option.value)\n }}\n isMulti\n onChange={handleChange}\n options={options}\n />\n </div>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,SAASC,gBAAgB,EAAEC,iBAAiB,QAAQ;AACpD,OAAOC,KAAA,IAASC,QAAQ,EAAYC,QAAQ,QAAQ;AAEpD,SAASC,UAAU,QAAQ;AAC3B,SAASC,OAAO,QAAQ;AACxB,SAASC,2BAA2B,QAAQ;AAC5C,SAASC,eAAe,QAAQ;AAChC,SAASC,cAAc,QAAQ;AAC/B,SAASC,WAAW,QAAQ;AAC5B,OAAO;AAEP,MAAMC,SAAA,GAAY;AAOlB,OAAO,MAAMC,YAAA,GAAeA,CAAC;EAC3BC,WAAW;EACXC,KAAK;EACLC;AAAM,CAKP;EACC,MAAMC,mBAAA,GACJF,KAAA,EAAOG,KAAA,EAAOC,UAAA,IACd,WAAWJ,KAAA,CAAMG,KAAK,CAACC,UAAU,IACjCJ,KAAA,EAAOG,KAAA,EAAOC,UAAA,EAAYC,KAAA,KAAUC,SAAA,GAChCN,KAAA,CAAMG,KAAK,CAACC,UAAU,CAACC,KAAK,GAC5B;EAEN,MAAME,oBAAA,GACJP,KAAA,IAAS,WAAWA,KAAA,IAASA,KAAA,CAAMQ,KAAK,GACpC;IACEC,IAAA,EAAM;IACNC,SAAA,EAAWnB,UAAA;IACXoB,KAAA,EAAO;MACLN,KAAA,EACEL,KAAA,CAAMG,KAAK,EAAEC,UAAA,IAAc,WAAWJ,KAAA,CAAMG,KAAK,CAACC,UAAU,GACxDJ,KAAA,CAAMG,KAAK,EAAEC,UAAA,EAAYC,KAAA,GACzB;MACNG,KAAA,EAAOR,KAAA,CAAMQ;IACf;EACF,IACA;EAEN,MAAMI,aAAA,GAAiCV,mBAAA,IACrCK,oBAAA,IAAwB;IACtBE,IAAA,EAAM;IACNC,SAAA,EAAW;IACXG,iBAAA,EAAmBd;EACrB;EAEF,IAAI,CAACa,aAAA,EAAe,OAAO;EAE3B,oBACEE,KAAA,CAACzB,QAAA;eACEY,MAAA,iBACCa,KAAA,CAACzB,QAAA;8BACC0B,IAAA,CAAC;QAAKC,KAAA,EAAO;UAAEC,OAAA,EAAS;QAAe;kBAAIhB;UAC1C;qBAGLc,IAAA,CAAC;MAAKC,KAAA,EAAO;QAAEC,OAAA,EAAS;MAAe;gBACrC,aAAAF,IAAA,CAACrB,eAAA;QAAgBwB,eAAA,EAAiBN;;;;AAI1C;AAEA,MAAMO,YAAA,GAAeA,CAAC;EACpBC,MAAM;EACNC,WAAA,GAAc,IAAI;EAClBC,IAAA,GAAO;AAAE,CAKV;EACC,IAAI,CAACF,MAAA,EAAQ;IACX,OAAO,EAAE;EACX;EAEA,OAAOA,MAAA,EAAQG,MAAA,CAAO,CAACC,WAAA,EAAaxB,KAAA;IAClC;IACA,IACEd,gBAAA,CAAiBc,KAAA,MAChBA,KAAA,CAAMG,KAAK,CAACsB,eAAe,IAC1BzB,KAAA,CAAM0B,MAAM,IACZ1B,KAAA,CAAMG,KAAK,CAACwB,MAAM,IACjB,cAAc3B,KAAA,IAASA,KAAA,CAAM4B,QAAQ,GACxC;MACA,OAAOJ,WAAA;IACT;IAEA,IAAI,EAAExB,KAAA,CAAMS,IAAI,KAAK,WAAWT,KAAA,CAAMS,IAAI,KAAK,QAAO,KAAMtB,iBAAA,CAAkBa,KAAA,GAAQ;MACpF,OAAO,C,GACFwB,WAAA,E,GACAL,YAAA,CAAa;QACdC,MAAA,EAAQpB,KAAA,CAAMoB,MAAM;QACpBC,WAAA,EAAavB,YAAA,CAAa;UAAEE,KAAA;UAAOC,MAAA,EAAQoB;QAAY;QACvDC,IAAA,EAAM7B,2BAAA,CAA4B6B,IAAA,EAAMtB,KAAA;MAC1C,GACD;IACH;IAEA,IAAIA,KAAA,CAAMS,IAAI,KAAK,UAAU,UAAUT,KAAA,EAAO;MAC5C,OAAO,C,GACFwB,WAAA,E,GACAxB,KAAA,CAAM6B,IAAI,CAACN,MAAM,CAAC,CAACO,SAAA,EAAWC,GAAA;QAC/B,IAAI,YAAYA,GAAA,EAAK;UACnB,MAAMC,UAAA,GAAa,UAAUD,GAAA,IAAOA,GAAA,CAAIE,IAAI;UAC5C,OAAO,C,GACFH,SAAA,E,GACAX,YAAA,CAAa;YACdC,MAAA,EAAQW,GAAA,CAAIX,MAAM;YAClBC,WAAA;YACAC,IAAA,EAAMU,UAAA,GAAavC,2BAAA,CAA4B6B,IAAA,EAAMtB,KAAA,IAASsB;UAChE,GACD;QACH;MACF,GAAG,EAAE,EACN;IACH;IAEA,MAAMY,cAAA,GAAiB;MACrB1B,KAAA,EAAOV,YAAA,CAAa;QAAEE,KAAA;QAAOC,MAAA,EAAQoB;MAAY;MACjDc,KAAA,EAAO;QACL,GAAGnC,KAAK;QACRsB,IAAA,EAAM7B,2BAAA,CAA4B6B,IAAA,EAAMtB,KAAA;MAC1C;IACF;IAEA,OAAO,C,GAAIwB,WAAA,EAAaU,cAAA,CAAe;EACzC,GAAG,EAAE;AACP;AAEA,OAAO,MAAME,WAAA,GAA0CC,EAAA;EAAA,MAAAC,CAAA,GAAArD,EAAA;EAAC;IAAAmC,MAAA;IAAAmB;EAAA,IAAAF,EAAuB;EAC7E;IAAAG;EAAA,IAAc7C,cAAA;EAAA,IAAA8C,EAAA;EAAA,IAAAH,CAAA,QAAAlB,MAAA;IACaqB,EAAA,GAAAA,CAAA,KAAMtB,YAAA;MAAAC;IAAA,CAAsB;IAAAkB,CAAA,MAAAlB,MAAA;IAAAkB,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAAvD,OAAAI,OAAA,IAAkBpD,QAAA,CAASmD,EAA4B;EAEvD;IAAAE,cAAA;IAAAC;EAAA,IAAsCpD,OAAA;EAAA,IAAAqD,EAAA;EAAA,IAAAP,CAAA,QAAAM,SAAA,IAAAN,CAAA,QAAAC,WAAA,IAAAD,CAAA,QAAAK,cAAA;IAEjBE,EAAA,GAAAC,QAAA;MACnB,MAAAC,YAAA,GAAqBH,SAAA;MAAA,IACjBE,QAAA,SAAa;QACfP,WAAA,GAAc;MAAA;QAEdA,WAAA,CAAYO,QAAA,CAAAE,GAAA,CAAAC,EAAA;UAAc;YAAAd;UAAA,IAAAc,EAAS;UAAA,OAAKd,KAAA;QAAA;MAAA;MAAA,IAItCW,QAAA,SAAa,IAAQI,MAAA,CAAAC,IAAA,CAAYJ,YAAA,MAAkB,EAAAK,MAAA,GAAWN,QAAA,CAAAM,MAAe;QAC/EF,MAAA,CAAAC,IAAA,CAAYJ,YAAA,EAAAM,OAAA,CAAA/B,IAAA;UAAA,IAERwB,QAAA,SAAa,KACZA,QAAA,CAAAQ,IAAA,CAAAtD,KAAA,IACQA,KAAA,CAAAmC,KAAA,CAAAb,IAAA,KAAqBA,IAC9B;YAEAqB,cAAA;cAAAlC,IAAA,EACQ;cAAAa;YAAA,CAER;UAAA;QAAA,CAEJ;MAAA;IAAA;IAEJgB,CAAA,MAAAM,SAAA;IAAAN,CAAA,MAAAC,WAAA;IAAAD,CAAA,MAAAK,cAAA;IAAAL,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAxBA,MAAAiB,YAAA,GAAqBV,EAwBrB;EAAA,IAAAI,EAAA;EAAA,IAAAX,CAAA,QAAAE,CAAA,IAAAF,CAAA,QAAAiB,YAAA,IAAAjB,CAAA,QAAAI,OAAA;IAGEO,EAAA,GAAAnC,KAAA,CAAC;MAAA0C,SAAA,EAAA3D,SAAA;MAAA4D,QAAA,GACC1C,IAAA,CAAAxB,UAAA;QAAAS,KAAA;QAAAQ,KAAA,EAAgCgC,CAAA,CAAE;MAAA,C,GAClCzB,IAAA,CAAAnB,WAAA;QAAA8D,cAAA,EAAAC,KAAA;QAAAC,OAAA;QAAAC,QAAA,EAQYN,YAAA;QAAAb;MAAA,C;;;;;;;;;SAVdO,E;CAeJ;AAhDuD,SAAAU,MAAAG,MAAA;EAAA,IAqCzC,OAAOA,MAAA,CAAA3B,KAAA,KAAiB,YAAY,UAAU2B,MAAA,CAAA3B,KAAY;IAAA,OACrD4B,MAAA,CAAOD,MAAA,CAAA3B,KAAA,CAAAb,IAAiB;EAAA;EAAA,OAE1ByC,MAAA,CAAOD,MAAA,CAAA3B,KAAY;AAAA","ignoreList":[]}