@payloadcms/ui 3.0.0-beta.84 → 3.0.0-beta.86

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 (780) 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 +164 -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.d.ts.map +1 -1
  106. package/dist/elements/ListDrawer/DrawerContent.js +507 -257
  107. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  108. package/dist/elements/ListDrawer/index.js +227 -120
  109. package/dist/elements/ListDrawer/index.js.map +1 -1
  110. package/dist/elements/ListDrawer/types.js +1 -2
  111. package/dist/elements/ListDrawer/types.js.map +1 -1
  112. package/dist/elements/ListSelection/index.js +54 -36
  113. package/dist/elements/ListSelection/index.js.map +1 -1
  114. package/dist/elements/Loading/index.js +150 -73
  115. package/dist/elements/Loading/index.js.map +1 -1
  116. package/dist/elements/LoadingOverlay/index.js +120 -59
  117. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  118. package/dist/elements/LoadingOverlay/reducer.d.ts.map +1 -1
  119. package/dist/elements/LoadingOverlay/reducer.js +30 -27
  120. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  121. package/dist/elements/LoadingOverlay/types.js +1 -2
  122. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  123. package/dist/elements/Localizer/LocalizerLabel/index.js +56 -27
  124. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  125. package/dist/elements/Localizer/index.js +85 -40
  126. package/dist/elements/Localizer/index.js.map +1 -1
  127. package/dist/elements/Logout/index.js +94 -26
  128. package/dist/elements/Logout/index.js.map +1 -1
  129. package/dist/elements/Modal/index.d.ts.map +1 -1
  130. package/dist/elements/Modal/index.js +2 -1
  131. package/dist/elements/Modal/index.js.map +1 -1
  132. package/dist/elements/Nav/NavToggler/index.js +78 -28
  133. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  134. package/dist/elements/Nav/context.js +126 -88
  135. package/dist/elements/Nav/context.js.map +1 -1
  136. package/dist/elements/NavGroup/index.js +141 -73
  137. package/dist/elements/NavGroup/index.js.map +1 -1
  138. package/dist/elements/Pagination/ClickableArrow/index.js +15 -15
  139. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  140. package/dist/elements/Pagination/Page/index.js +15 -14
  141. package/dist/elements/Pagination/Page/index.js.map +1 -1
  142. package/dist/elements/Pagination/Separator/index.js +5 -5
  143. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  144. package/dist/elements/Pagination/index.js +90 -81
  145. package/dist/elements/Pagination/index.js.map +1 -1
  146. package/dist/elements/PerPage/index.js +77 -48
  147. package/dist/elements/PerPage/index.js.map +1 -1
  148. package/dist/elements/Pill/index.js +108 -64
  149. package/dist/elements/Pill/index.js.map +1 -1
  150. package/dist/elements/Popup/PopupButtonList/index.js +51 -48
  151. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  152. package/dist/elements/Popup/PopupTrigger/index.js +34 -32
  153. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  154. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  155. package/dist/elements/Popup/index.js +143 -145
  156. package/dist/elements/Popup/index.js.map +1 -1
  157. package/dist/elements/PreviewButton/index.js +44 -21
  158. package/dist/elements/PreviewButton/index.js.map +1 -1
  159. package/dist/elements/PreviewButton/usePreviewURL.js +57 -48
  160. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  161. package/dist/elements/PreviewSizes/index.js +118 -129
  162. package/dist/elements/PreviewSizes/index.js.map +1 -1
  163. package/dist/elements/PublishButton/index.js +108 -44
  164. package/dist/elements/PublishButton/index.js.map +1 -1
  165. package/dist/elements/PublishMany/index.js +120 -115
  166. package/dist/elements/PublishMany/index.js.map +1 -1
  167. package/dist/elements/ReactSelect/ClearIndicator/index.js +26 -20
  168. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  169. package/dist/elements/ReactSelect/Control/index.js +40 -31
  170. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  171. package/dist/elements/ReactSelect/DropdownIndicator/index.js +20 -15
  172. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  173. package/dist/elements/ReactSelect/Input/index.js +12 -11
  174. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  175. package/dist/elements/ReactSelect/MultiValue/index.js +124 -38
  176. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  177. package/dist/elements/ReactSelect/MultiValueLabel/index.js +20 -14
  178. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  179. package/dist/elements/ReactSelect/MultiValueRemove/index.js +84 -35
  180. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  181. package/dist/elements/ReactSelect/SingleValue/index.js +13 -13
  182. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  183. package/dist/elements/ReactSelect/ValueContainer/index.js +15 -11
  184. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  185. package/dist/elements/ReactSelect/index.js +180 -165
  186. package/dist/elements/ReactSelect/index.js.map +1 -1
  187. package/dist/elements/ReactSelect/types.js +1 -2
  188. package/dist/elements/ReactSelect/types.js.map +1 -1
  189. package/dist/elements/RenderTitle/index.js +53 -23
  190. package/dist/elements/RenderTitle/index.js.map +1 -1
  191. package/dist/elements/SaveButton/index.js +98 -41
  192. package/dist/elements/SaveButton/index.js.map +1 -1
  193. package/dist/elements/SaveDraftButton/index.js +143 -73
  194. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  195. package/dist/elements/SearchFilter/index.js +85 -27
  196. package/dist/elements/SearchFilter/index.js.map +1 -1
  197. package/dist/elements/SelectAll/index.js +44 -15
  198. package/dist/elements/SelectAll/index.js.map +1 -1
  199. package/dist/elements/SelectRow/index.js +41 -11
  200. package/dist/elements/SelectRow/index.js.map +1 -1
  201. package/dist/elements/ShimmerEffect/index.js +61 -31
  202. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  203. package/dist/elements/SortColumn/index.js +107 -65
  204. package/dist/elements/SortColumn/index.js.map +1 -1
  205. package/dist/elements/SortComplex/index.js +172 -101
  206. package/dist/elements/SortComplex/index.js.map +1 -1
  207. package/dist/elements/Status/index.js +233 -176
  208. package/dist/elements/Status/index.js.map +1 -1
  209. package/dist/elements/StayLoggedIn/index.js +98 -52
  210. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  211. package/dist/elements/StepNav/SetStepNav.js +27 -10
  212. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  213. package/dist/elements/StepNav/context.d.ts.map +1 -1
  214. package/dist/elements/StepNav/context.js +35 -11
  215. package/dist/elements/StepNav/context.js.map +1 -1
  216. package/dist/elements/StepNav/index.js +89 -67
  217. package/dist/elements/StepNav/index.js.map +1 -1
  218. package/dist/elements/StepNav/types.js +1 -2
  219. package/dist/elements/StepNav/types.js.map +1 -1
  220. package/dist/elements/Table/DefaultCell/fields/Array/index.js +26 -7
  221. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  222. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +51 -24
  223. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  224. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +25 -8
  225. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  226. package/dist/elements/Table/DefaultCell/fields/Code/index.js +16 -13
  227. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  228. package/dist/elements/Table/DefaultCell/fields/Date/index.js +59 -11
  229. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  230. package/dist/elements/Table/DefaultCell/fields/File/index.js +27 -23
  231. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  232. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +11 -9
  233. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  234. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +182 -89
  235. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  236. package/dist/elements/Table/DefaultCell/fields/Select/index.js +58 -17
  237. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  238. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +8 -6
  239. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  240. package/dist/elements/Table/DefaultCell/fields/index.js +13 -13
  241. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  242. package/dist/elements/Table/DefaultCell/index.js +158 -72
  243. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  244. package/dist/elements/Table/RelationshipProvider/index.js +144 -82
  245. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  246. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  247. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  248. package/dist/elements/Table/TableCellProvider/index.js +41 -18
  249. package/dist/elements/Table/TableCellProvider/index.js.map +1 -1
  250. package/dist/elements/Table/index.js +83 -46
  251. package/dist/elements/Table/index.js.map +1 -1
  252. package/dist/elements/TableColumns/buildColumnState.js +104 -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 +455 -291
  273. package/dist/elements/Upload/index.js.map +1 -1
  274. package/dist/elements/ViewDescription/index.js +37 -14
  275. package/dist/elements/ViewDescription/index.js.map +1 -1
  276. package/dist/elements/ViewDescription/types.js.map +1 -1
  277. package/dist/elements/WhereBuilder/Condition/Date/index.js +19 -12
  278. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  279. package/dist/elements/WhereBuilder/Condition/Date/types.js +1 -2
  280. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  281. package/dist/elements/WhereBuilder/Condition/Number/index.js +38 -10
  282. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  283. package/dist/elements/WhereBuilder/Condition/Number/types.js +1 -2
  284. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  285. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +272 -300
  286. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  287. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.d.ts.map +1 -1
  288. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +68 -83
  289. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  290. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +1 -2
  291. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  292. package/dist/elements/WhereBuilder/Condition/Select/index.js +159 -68
  293. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  294. package/dist/elements/WhereBuilder/Condition/Select/types.js +1 -2
  295. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  296. package/dist/elements/WhereBuilder/Condition/Text/index.js +38 -10
  297. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  298. package/dist/elements/WhereBuilder/Condition/Text/types.js +1 -2
  299. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  300. package/dist/elements/WhereBuilder/Condition/index.js +296 -140
  301. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  302. package/dist/elements/WhereBuilder/Condition/types.js +1 -2
  303. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  304. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  305. package/dist/elements/WhereBuilder/field-types.js +103 -163
  306. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  307. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  308. package/dist/elements/WhereBuilder/index.js +274 -229
  309. package/dist/elements/WhereBuilder/index.js.map +1 -1
  310. package/dist/elements/WhereBuilder/reduceClientFields.js +95 -89
  311. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  312. package/dist/elements/WhereBuilder/transformWhereQuery.d.ts.map +1 -1
  313. package/dist/elements/WhereBuilder/transformWhereQuery.js +39 -45
  314. package/dist/elements/WhereBuilder/transformWhereQuery.js.map +1 -1
  315. package/dist/elements/WhereBuilder/types.js +1 -2
  316. package/dist/elements/WhereBuilder/types.js.map +1 -1
  317. package/dist/elements/WhereBuilder/validateWhereQuery.d.ts.map +1 -1
  318. package/dist/elements/WhereBuilder/validateWhereQuery.js +30 -29
  319. package/dist/elements/WhereBuilder/validateWhereQuery.js.map +1 -1
  320. package/dist/elements/WindowInfo/index.d.ts.map +1 -1
  321. package/dist/elements/WindowInfo/index.js +2 -1
  322. package/dist/elements/WindowInfo/index.js.map +1 -1
  323. package/dist/elements/WithServerSideProps/index.js +20 -17
  324. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  325. package/dist/elements/withMergedProps/index.js +25 -21
  326. package/dist/elements/withMergedProps/index.js.map +1 -1
  327. package/dist/exports/client/CodeEditor-C4FLUUO7.js +24 -0
  328. package/dist/exports/client/CodeEditor-C4FLUUO7.js.map +8 -0
  329. package/dist/exports/client/{DatePicker-QKRYICNS.js → DatePicker-E6IJFDN2.js} +2 -2
  330. package/dist/exports/client/{chunk-HR5HEGNB.js → chunk-OBXEO4WP.js} +3 -3
  331. package/dist/exports/client/{chunk-HR5HEGNB.js.map → chunk-OBXEO4WP.js.map} +3 -3
  332. package/dist/exports/client/chunk-UGBVRIVY.js +14 -0
  333. package/dist/exports/client/chunk-UGBVRIVY.js.map +8 -0
  334. package/dist/exports/client/index.js +19 -19
  335. package/dist/exports/client/index.js.map +4 -4
  336. package/dist/fields/Array/ArrayRow.js +163 -67
  337. package/dist/fields/Array/ArrayRow.js.map +1 -1
  338. package/dist/fields/Array/index.js +471 -291
  339. package/dist/fields/Array/index.js.map +1 -1
  340. package/dist/fields/Blocks/BlockRow.js +155 -80
  341. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  342. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js +36 -16
  343. package/dist/fields/Blocks/BlocksDrawer/BlockSearch/index.js.map +1 -1
  344. package/dist/fields/Blocks/BlocksDrawer/index.js +121 -68
  345. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  346. package/dist/fields/Blocks/RowActions.js +98 -34
  347. package/dist/fields/Blocks/RowActions.js.map +1 -1
  348. package/dist/fields/Blocks/SectionTitle/index.js +77 -27
  349. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  350. package/dist/fields/Blocks/index.js +473 -307
  351. package/dist/fields/Blocks/index.js.map +1 -1
  352. package/dist/fields/Checkbox/Input.js +47 -51
  353. package/dist/fields/Checkbox/Input.js.map +1 -1
  354. package/dist/fields/Checkbox/index.js +212 -76
  355. package/dist/fields/Checkbox/index.js.map +1 -1
  356. package/dist/fields/Code/index.js +198 -71
  357. package/dist/fields/Code/index.js.map +1 -1
  358. package/dist/fields/Collapsible/index.js +212 -124
  359. package/dist/fields/Collapsible/index.js.map +1 -1
  360. package/dist/fields/ConfirmPassword/index.js +80 -46
  361. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  362. package/dist/fields/DateTime/index.js +191 -72
  363. package/dist/fields/DateTime/index.js.map +1 -1
  364. package/dist/fields/Email/index.js +190 -74
  365. package/dist/fields/Email/index.js.map +1 -1
  366. package/dist/fields/FieldDescription/index.js +57 -26
  367. package/dist/fields/FieldDescription/index.js.map +1 -1
  368. package/dist/fields/FieldError/index.js +73 -29
  369. package/dist/fields/FieldError/index.js.map +1 -1
  370. package/dist/fields/FieldLabel/index.js +82 -30
  371. package/dist/fields/FieldLabel/index.js.map +1 -1
  372. package/dist/fields/Group/index.js +176 -80
  373. package/dist/fields/Group/index.js.map +1 -1
  374. package/dist/fields/Group/provider.js +13 -8
  375. package/dist/fields/Group/provider.js.map +1 -1
  376. package/dist/fields/Hidden/index.js +73 -22
  377. package/dist/fields/Hidden/index.js.map +1 -1
  378. package/dist/fields/JSON/index.js +114 -114
  379. package/dist/fields/JSON/index.js.map +1 -1
  380. package/dist/fields/Number/index.js +315 -165
  381. package/dist/fields/Number/index.js.map +1 -1
  382. package/dist/fields/Password/index.js +173 -68
  383. package/dist/fields/Password/index.js.map +1 -1
  384. package/dist/fields/Password/input.js +131 -62
  385. package/dist/fields/Password/input.js.map +1 -1
  386. package/dist/fields/Password/types.js +1 -2
  387. package/dist/fields/Password/types.js.map +1 -1
  388. package/dist/fields/Point/index.js +255 -133
  389. package/dist/fields/Point/index.js.map +1 -1
  390. package/dist/fields/RadioGroup/Radio/index.js +79 -34
  391. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  392. package/dist/fields/RadioGroup/index.js +241 -94
  393. package/dist/fields/RadioGroup/index.js.map +1 -1
  394. package/dist/fields/Relationship/AddNew/index.js +246 -158
  395. package/dist/fields/Relationship/AddNew/index.js.map +1 -1
  396. package/dist/fields/Relationship/AddNew/types.js +1 -2
  397. package/dist/fields/Relationship/AddNew/types.js.map +1 -1
  398. package/dist/fields/Relationship/AddNew/useRelatedCollections.d.ts.map +1 -1
  399. package/dist/fields/Relationship/AddNew/useRelatedCollections.js +25 -13
  400. package/dist/fields/Relationship/AddNew/useRelatedCollections.js.map +1 -1
  401. package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
  402. package/dist/fields/Relationship/createRelationMap.js +48 -45
  403. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  404. package/dist/fields/Relationship/findOptionsByValue.d.ts.map +1 -1
  405. package/dist/fields/Relationship/findOptionsByValue.js +33 -29
  406. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  407. package/dist/fields/Relationship/index.js +642 -471
  408. package/dist/fields/Relationship/index.js.map +1 -1
  409. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  410. package/dist/fields/Relationship/optionsReducer.js +110 -113
  411. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  412. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +168 -66
  413. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  414. package/dist/fields/Relationship/select-components/SingleValue/index.js +173 -67
  415. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  416. package/dist/fields/Relationship/types.js +1 -2
  417. package/dist/fields/Relationship/types.js.map +1 -1
  418. package/dist/fields/RichText/index.d.ts.map +1 -1
  419. package/dist/fields/RichText/index.js +4 -3
  420. package/dist/fields/RichText/index.js.map +1 -1
  421. package/dist/fields/Row/index.js +69 -22
  422. package/dist/fields/Row/index.js.map +1 -1
  423. package/dist/fields/Row/provider.js +13 -8
  424. package/dist/fields/Row/provider.js.map +1 -1
  425. package/dist/fields/Select/Input.js +193 -70
  426. package/dist/fields/Select/Input.js.map +1 -1
  427. package/dist/fields/Select/index.js +99 -79
  428. package/dist/fields/Select/index.js.map +1 -1
  429. package/dist/fields/Tabs/Tab/index.js +65 -30
  430. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  431. package/dist/fields/Tabs/index.js +234 -118
  432. package/dist/fields/Tabs/index.js.map +1 -1
  433. package/dist/fields/Tabs/index.scss +2 -1
  434. package/dist/fields/Tabs/provider.js +13 -8
  435. package/dist/fields/Tabs/provider.js.map +1 -1
  436. package/dist/fields/Text/Input.js +171 -82
  437. package/dist/fields/Text/Input.js.map +1 -1
  438. package/dist/fields/Text/index.js +194 -95
  439. package/dist/fields/Text/index.js.map +1 -1
  440. package/dist/fields/Text/types.js +1 -2
  441. package/dist/fields/Text/types.js.map +1 -1
  442. package/dist/fields/Textarea/Input.js +144 -69
  443. package/dist/fields/Textarea/Input.js.map +1 -1
  444. package/dist/fields/Textarea/index.js +132 -53
  445. package/dist/fields/Textarea/index.js.map +1 -1
  446. package/dist/fields/Textarea/types.js +1 -2
  447. package/dist/fields/Textarea/types.js.map +1 -1
  448. package/dist/fields/UI/index.d.ts.map +1 -1
  449. package/dist/fields/UI/index.js +4 -3
  450. package/dist/fields/UI/index.js.map +1 -1
  451. package/dist/fields/Upload/Input.js +296 -143
  452. package/dist/fields/Upload/Input.js.map +1 -1
  453. package/dist/fields/Upload/index.js +142 -63
  454. package/dist/fields/Upload/index.js.map +1 -1
  455. package/dist/fields/index.d.ts.map +1 -1
  456. package/dist/fields/index.js +26 -25
  457. package/dist/fields/index.js.map +1 -1
  458. package/dist/fields/shared/index.d.ts.map +1 -1
  459. package/dist/fields/shared/index.js +17 -8
  460. package/dist/fields/shared/index.js.map +1 -1
  461. package/dist/forms/FieldPropsProvider/index.js +37 -27
  462. package/dist/forms/FieldPropsProvider/index.js.map +1 -1
  463. package/dist/forms/Form/context.js +30 -14
  464. package/dist/forms/Form/context.js.map +1 -1
  465. package/dist/forms/Form/createNestedClientFieldPath.d.ts.map +1 -1
  466. package/dist/forms/Form/createNestedClientFieldPath.js +11 -10
  467. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  468. package/dist/forms/Form/errorMessages.d.ts.map +1 -1
  469. package/dist/forms/Form/errorMessages.js +3 -2
  470. package/dist/forms/Form/errorMessages.js.map +1 -1
  471. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  472. package/dist/forms/Form/fieldReducer.js +319 -288
  473. package/dist/forms/Form/fieldReducer.js.map +1 -1
  474. package/dist/forms/Form/index.js +510 -528
  475. package/dist/forms/Form/index.js.map +1 -1
  476. package/dist/forms/Form/initContextState.d.ts.map +1 -1
  477. package/dist/forms/Form/initContextState.js +34 -33
  478. package/dist/forms/Form/initContextState.js.map +1 -1
  479. package/dist/forms/Form/mergeErrorPaths.d.ts.map +1 -1
  480. package/dist/forms/Form/mergeErrorPaths.js +25 -24
  481. package/dist/forms/Form/mergeErrorPaths.js.map +1 -1
  482. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  483. package/dist/forms/Form/mergeServerFormState.js +52 -51
  484. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  485. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  486. package/dist/forms/Form/rowHelpers.js +29 -21
  487. package/dist/forms/Form/rowHelpers.js.map +1 -1
  488. package/dist/forms/Form/rows.d.ts.map +1 -1
  489. package/dist/forms/Form/rows.js +33 -32
  490. package/dist/forms/Form/rows.js.map +1 -1
  491. package/dist/forms/Form/types.js +1 -2
  492. package/dist/forms/Form/types.js.map +1 -1
  493. package/dist/forms/NullifyField/index.js +57 -27
  494. package/dist/forms/NullifyField/index.js.map +1 -1
  495. package/dist/forms/RenderFields/RenderField.js +65 -61
  496. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  497. package/dist/forms/RenderFields/index.js +112 -51
  498. package/dist/forms/RenderFields/index.js.map +1 -1
  499. package/dist/forms/RenderFields/types.js +1 -2
  500. package/dist/forms/RenderFields/types.js.map +1 -1
  501. package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
  502. package/dist/forms/RowLabel/Context/index.js +29 -20
  503. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  504. package/dist/forms/RowLabel/index.d.ts.map +1 -1
  505. package/dist/forms/RowLabel/index.js +29 -24
  506. package/dist/forms/RowLabel/index.js.map +1 -1
  507. package/dist/forms/RowLabel/types.js +1 -2
  508. package/dist/forms/RowLabel/types.js.map +1 -1
  509. package/dist/forms/Submit/index.js +40 -17
  510. package/dist/forms/Submit/index.js.map +1 -1
  511. package/dist/forms/WatchChildErrors/buildPathSegments.d.ts.map +1 -1
  512. package/dist/forms/WatchChildErrors/buildPathSegments.js +33 -32
  513. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  514. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.d.ts.map +1 -1
  515. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js +26 -22
  516. package/dist/forms/WatchChildErrors/getFieldStateFromPaths.js.map +1 -1
  517. package/dist/forms/WatchChildErrors/getNestedFieldState.d.ts.map +1 -1
  518. package/dist/forms/WatchChildErrors/getNestedFieldState.js +19 -14
  519. package/dist/forms/WatchChildErrors/getNestedFieldState.js.map +1 -1
  520. package/dist/forms/WatchChildErrors/index.d.ts +1 -1
  521. package/dist/forms/WatchChildErrors/index.d.ts.map +1 -1
  522. package/dist/forms/WatchChildErrors/index.js +54 -19
  523. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  524. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js +395 -368
  525. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  526. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js +54 -61
  527. package/dist/forms/buildStateFromSchema/buildStateFromSchema.spec.js.map +1 -1
  528. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js +16 -11
  529. package/dist/forms/buildStateFromSchema/calculateDefaultValues/index.js.map +1 -1
  530. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js +20 -14
  531. package/dist/forms/buildStateFromSchema/calculateDefaultValues/iterateFields.js.map +1 -1
  532. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +127 -121
  533. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  534. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.js +26 -27
  535. package/dist/forms/buildStateFromSchema/getFilterOptionsQuery.js.map +1 -1
  536. package/dist/forms/buildStateFromSchema/index.js +37 -30
  537. package/dist/forms/buildStateFromSchema/index.js.map +1 -1
  538. package/dist/forms/buildStateFromSchema/iterateFields.js +56 -36
  539. package/dist/forms/buildStateFromSchema/iterateFields.js.map +1 -1
  540. package/dist/forms/useField/index.js +162 -173
  541. package/dist/forms/useField/index.js.map +1 -1
  542. package/dist/forms/useField/types.js +1 -2
  543. package/dist/forms/useField/types.js.map +1 -1
  544. package/dist/forms/withCondition/WatchCondition.js +56 -18
  545. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  546. package/dist/forms/withCondition/index.js +37 -17
  547. package/dist/forms/withCondition/index.js.map +1 -1
  548. package/dist/graphics/Account/Default/index.js +21 -29
  549. package/dist/graphics/Account/Default/index.js.map +1 -1
  550. package/dist/graphics/Account/Gravatar/index.js +32 -19
  551. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  552. package/dist/graphics/Account/index.js +71 -19
  553. package/dist/graphics/Account/index.js.map +1 -1
  554. package/dist/graphics/DefaultBlockImage/index.js +31 -38
  555. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  556. package/dist/graphics/ExternalLink/index.js +18 -17
  557. package/dist/graphics/ExternalLink/index.js.map +1 -1
  558. package/dist/graphics/File/index.js +18 -23
  559. package/dist/graphics/File/index.js.map +1 -1
  560. package/dist/graphics/Icon/index.js +18 -20
  561. package/dist/graphics/Icon/index.js.map +1 -1
  562. package/dist/graphics/Logo/index.js +29 -41
  563. package/dist/graphics/Logo/index.js.map +1 -1
  564. package/dist/hooks/useDebounce.js +26 -15
  565. package/dist/hooks/useDebounce.js.map +1 -1
  566. package/dist/hooks/useDebouncedCallback.d.ts.map +1 -1
  567. package/dist/hooks/useDebouncedCallback.js +24 -15
  568. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  569. package/dist/hooks/useDebouncedEffect.d.ts.map +1 -1
  570. package/dist/hooks/useDebouncedEffect.js +54 -18
  571. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  572. package/dist/hooks/useDelay.d.ts.map +1 -1
  573. package/dist/hooks/useDelay.js +53 -27
  574. package/dist/hooks/useDelay.js.map +1 -1
  575. package/dist/hooks/useDelayedRender.d.ts.map +1 -1
  576. package/dist/hooks/useDelayedRender.js +77 -40
  577. package/dist/hooks/useDelayedRender.js.map +1 -1
  578. package/dist/hooks/useHotkey.js +105 -91
  579. package/dist/hooks/useHotkey.js.map +1 -1
  580. package/dist/hooks/useIntersect.d.ts +1 -0
  581. package/dist/hooks/useIntersect.d.ts.map +1 -1
  582. package/dist/hooks/useIntersect.js +83 -26
  583. package/dist/hooks/useIntersect.js.map +1 -1
  584. package/dist/hooks/usePayloadAPI.d.ts +1 -0
  585. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  586. package/dist/hooks/usePayloadAPI.js +180 -79
  587. package/dist/hooks/usePayloadAPI.js.map +1 -1
  588. package/dist/hooks/useResize.d.ts.map +1 -1
  589. package/dist/hooks/useResize.js +70 -41
  590. package/dist/hooks/useResize.js.map +1 -1
  591. package/dist/hooks/useThrottledEffect.d.ts +1 -0
  592. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  593. package/dist/hooks/useThrottledEffect.js +51 -17
  594. package/dist/hooks/useThrottledEffect.js.map +1 -1
  595. package/dist/hooks/useUseAsTitle.d.ts.map +1 -1
  596. package/dist/hooks/useUseAsTitle.js +10 -5
  597. package/dist/hooks/useUseAsTitle.js.map +1 -1
  598. package/dist/icons/Calendar/index.js +10 -11
  599. package/dist/icons/Calendar/index.js.map +1 -1
  600. package/dist/icons/Check/index.js +10 -11
  601. package/dist/icons/Check/index.js.map +1 -1
  602. package/dist/icons/Chevron/index.js +19 -20
  603. package/dist/icons/Chevron/index.js.map +1 -1
  604. package/dist/icons/CloseMenu/index.js +10 -11
  605. package/dist/icons/CloseMenu/index.js.map +1 -1
  606. package/dist/icons/CodeBlock/index.js +12 -13
  607. package/dist/icons/CodeBlock/index.js.map +1 -1
  608. package/dist/icons/Copy/index.js +16 -15
  609. package/dist/icons/Copy/index.js.map +1 -1
  610. package/dist/icons/DragHandle/index.js +32 -41
  611. package/dist/icons/DragHandle/index.js.map +1 -1
  612. package/dist/icons/Edit/index.js +12 -14
  613. package/dist/icons/Edit/index.js.map +1 -1
  614. package/dist/icons/Line/index.js +13 -14
  615. package/dist/icons/Line/index.js.map +1 -1
  616. package/dist/icons/Link/index.js +15 -16
  617. package/dist/icons/Link/index.js.map +1 -1
  618. package/dist/icons/LogOut/index.js +13 -14
  619. package/dist/icons/LogOut/index.js.map +1 -1
  620. package/dist/icons/Menu/index.js +13 -14
  621. package/dist/icons/Menu/index.js.map +1 -1
  622. package/dist/icons/MinimizeMaximize/index.js +18 -20
  623. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  624. package/dist/icons/More/index.js +20 -26
  625. package/dist/icons/More/index.js.map +1 -1
  626. package/dist/icons/Plus/index.js +12 -13
  627. package/dist/icons/Plus/index.js.map +1 -1
  628. package/dist/icons/Search/index.js +11 -12
  629. package/dist/icons/Search/index.js.map +1 -1
  630. package/dist/icons/Swap/index.js +10 -11
  631. package/dist/icons/Swap/index.js.map +1 -1
  632. package/dist/icons/X/index.js +14 -16
  633. package/dist/icons/X/index.js.map +1 -1
  634. package/dist/providers/Actions/SetViewActions/index.d.ts +1 -1
  635. package/dist/providers/Actions/SetViewActions/index.d.ts.map +1 -1
  636. package/dist/providers/Actions/SetViewActions/index.js +31 -14
  637. package/dist/providers/Actions/SetViewActions/index.js.map +1 -1
  638. package/dist/providers/Actions/index.js +89 -24
  639. package/dist/providers/Actions/index.js.map +1 -1
  640. package/dist/providers/Auth/index.js +226 -256
  641. package/dist/providers/Auth/index.js.map +1 -1
  642. package/dist/providers/ClientFunction/index.js +103 -54
  643. package/dist/providers/ClientFunction/index.js.map +1 -1
  644. package/dist/providers/Config/RenderComponent.js +66 -61
  645. package/dist/providers/Config/RenderComponent.js.map +1 -1
  646. package/dist/providers/Config/createClientConfig/collections.js +165 -156
  647. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  648. package/dist/providers/Config/createClientConfig/fields.js +285 -279
  649. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  650. package/dist/providers/Config/createClientConfig/getComponent.js +31 -23
  651. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
  652. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +86 -84
  653. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
  654. package/dist/providers/Config/createClientConfig/globals.js +97 -90
  655. package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
  656. package/dist/providers/Config/createClientConfig/index.js +92 -82
  657. package/dist/providers/Config/createClientConfig/index.js.map +1 -1
  658. package/dist/providers/Config/index.js +50 -21
  659. package/dist/providers/Config/index.js.map +1 -1
  660. package/dist/providers/DocumentEvents/index.js +29 -13
  661. package/dist/providers/DocumentEvents/index.js.map +1 -1
  662. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  663. package/dist/providers/DocumentInfo/index.js +403 -447
  664. package/dist/providers/DocumentInfo/index.js.map +1 -1
  665. package/dist/providers/DocumentInfo/types.js +1 -2
  666. package/dist/providers/DocumentInfo/types.js.map +1 -1
  667. package/dist/providers/EditDepth/index.js +12 -7
  668. package/dist/providers/EditDepth/index.js.map +1 -1
  669. package/dist/providers/EntityVisibility/index.js +49 -20
  670. package/dist/providers/EntityVisibility/index.js.map +1 -1
  671. package/dist/providers/FieldComponents/index.js +13 -8
  672. package/dist/providers/FieldComponents/index.js.map +1 -1
  673. package/dist/providers/ListInfo/index.js +13 -8
  674. package/dist/providers/ListInfo/index.js.map +1 -1
  675. package/dist/providers/ListQuery/index.js +122 -131
  676. package/dist/providers/ListQuery/index.js.map +1 -1
  677. package/dist/providers/Locale/index.js +124 -56
  678. package/dist/providers/Locale/index.js.map +1 -1
  679. package/dist/providers/Operation/index.js +12 -7
  680. package/dist/providers/Operation/index.js.map +1 -1
  681. package/dist/providers/Params/index.js +24 -8
  682. package/dist/providers/Params/index.js.map +1 -1
  683. package/dist/providers/Preferences/index.js +111 -109
  684. package/dist/providers/Preferences/index.js.map +1 -1
  685. package/dist/providers/Root/index.js +72 -66
  686. package/dist/providers/Root/index.js.map +1 -1
  687. package/dist/providers/RouteCache/index.js +58 -22
  688. package/dist/providers/RouteCache/index.js.map +1 -1
  689. package/dist/providers/ScrollInfo/index.d.ts.map +1 -1
  690. package/dist/providers/ScrollInfo/index.js +10 -5
  691. package/dist/providers/ScrollInfo/index.js.map +1 -1
  692. package/dist/providers/SearchParams/index.js +84 -35
  693. package/dist/providers/SearchParams/index.js.map +1 -1
  694. package/dist/providers/Selection/index.js +212 -128
  695. package/dist/providers/Selection/index.js.map +1 -1
  696. package/dist/providers/Theme/index.js +97 -57
  697. package/dist/providers/Theme/index.js.map +1 -1
  698. package/dist/providers/ToastContainer/icons/Error.d.ts.map +1 -1
  699. package/dist/providers/ToastContainer/icons/Error.js +19 -21
  700. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  701. package/dist/providers/ToastContainer/icons/Info.d.ts.map +1 -1
  702. package/dist/providers/ToastContainer/icons/Info.js +19 -21
  703. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  704. package/dist/providers/ToastContainer/icons/Success.d.ts.map +1 -1
  705. package/dist/providers/ToastContainer/icons/Success.js +19 -21
  706. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  707. package/dist/providers/ToastContainer/icons/Warning.d.ts.map +1 -1
  708. package/dist/providers/ToastContainer/icons/Warning.js +19 -21
  709. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  710. package/dist/providers/ToastContainer/index.js +31 -31
  711. package/dist/providers/ToastContainer/index.js.map +1 -1
  712. package/dist/providers/Translation/index.js +114 -58
  713. package/dist/providers/Translation/index.js.map +1 -1
  714. package/dist/providers/UploadEdits/index.d.ts.map +1 -1
  715. package/dist/providers/UploadEdits/index.js +53 -22
  716. package/dist/providers/UploadEdits/index.js.map +1 -1
  717. package/dist/providers/WindowInfo/index.d.ts.map +1 -1
  718. package/dist/providers/WindowInfo/index.js +10 -5
  719. package/dist/providers/WindowInfo/index.js.map +1 -1
  720. package/dist/styles.css +1 -1
  721. package/dist/utilities/api.js +77 -78
  722. package/dist/utilities/api.js.map +1 -1
  723. package/dist/utilities/arraysHaveSameStrings.js +13 -14
  724. package/dist/utilities/arraysHaveSameStrings.js.map +1 -1
  725. package/dist/utilities/buildFieldSchemaMap/index.js +40 -44
  726. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  727. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +76 -71
  728. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  729. package/dist/utilities/buildFieldSchemaMap/types.js +1 -2
  730. package/dist/utilities/buildFieldSchemaMap/types.js.map +1 -1
  731. package/dist/utilities/buildFormState.js +158 -154
  732. package/dist/utilities/buildFormState.js.map +1 -1
  733. package/dist/utilities/canUseDOM.js +0 -1
  734. package/dist/utilities/canUseDOM.js.map +1 -1
  735. package/dist/utilities/dateLocales.js +26 -27
  736. package/dist/utilities/dateLocales.js.map +1 -1
  737. package/dist/utilities/findLocaleFromCode.js +5 -6
  738. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  739. package/dist/utilities/flattenFieldMap.js +16 -25
  740. package/dist/utilities/flattenFieldMap.js.map +1 -1
  741. package/dist/utilities/formatAdminURL.js +16 -12
  742. package/dist/utilities/formatAdminURL.js.map +1 -1
  743. package/dist/utilities/formatDate.js +17 -11
  744. package/dist/utilities/formatDate.js.map +1 -1
  745. package/dist/utilities/formatDocTitle.js +32 -26
  746. package/dist/utilities/formatDocTitle.js.map +1 -1
  747. package/dist/utilities/formatFields.js +1 -2
  748. package/dist/utilities/formatFields.js.map +1 -1
  749. package/dist/utilities/generateFieldID.js +2 -3
  750. package/dist/utilities/generateFieldID.js.map +1 -1
  751. package/dist/utilities/getFormState.js +29 -23
  752. package/dist/utilities/getFormState.js.map +1 -1
  753. package/dist/utilities/getOffsetTop.js +13 -14
  754. package/dist/utilities/getOffsetTop.js.map +1 -1
  755. package/dist/utilities/getRequestLanguage.js +8 -5
  756. package/dist/utilities/getRequestLanguage.js.map +1 -1
  757. package/dist/utilities/getSupportedMonacoLocale.js +13 -14
  758. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  759. package/dist/utilities/groupNavItems.js +31 -35
  760. package/dist/utilities/groupNavItems.js.map +1 -1
  761. package/dist/utilities/hasSavePermission.js +14 -10
  762. package/dist/utilities/hasSavePermission.js.map +1 -1
  763. package/dist/utilities/isEditing.js +5 -2
  764. package/dist/utilities/isEditing.js.map +1 -1
  765. package/dist/utilities/reduceFieldsToValuesWithValidation.js +16 -16
  766. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  767. package/dist/utilities/scrollToID.js +9 -10
  768. package/dist/utilities/scrollToID.js.map +1 -1
  769. package/dist/utilities/setsAreEqual.js +2 -3
  770. package/dist/utilities/setsAreEqual.js.map +1 -1
  771. package/package.json +14 -12
  772. package/dist/exports/client/CodeEditor-MODTAQNB.js +0 -24
  773. package/dist/exports/client/CodeEditor-MODTAQNB.js.map +0 -8
  774. package/dist/exports/client/chunk-QJ5EJH4V.js +0 -14
  775. package/dist/exports/client/chunk-QJ5EJH4V.js.map +0 -8
  776. package/dist/fields/Number/Input.d.ts +0 -2
  777. package/dist/fields/Number/Input.d.ts.map +0 -1
  778. package/dist/fields/Number/Input.js +0 -2
  779. package/dist/fields/Number/Input.js.map +0 -1
  780. /package/dist/exports/client/{DatePicker-QKRYICNS.js.map → DatePicker-E6IJFDN2.js.map} +0 -0
@@ -1,4 +1,5 @@
1
1
  'use client';
2
+
2
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
4
  export * as PopupList from './PopupButtonList/index.js';
4
5
  import { useWindowInfo } from '@faceless-ui/window-info';
@@ -7,153 +8,150 @@ import { useIntersect } from '../../hooks/useIntersect.js';
7
8
  import { PopupTrigger } from './PopupTrigger/index.js';
8
9
  import './index.scss';
9
10
  const baseClass = 'popup';
10
- export const Popup = (props)=>{
11
- const { boundingRef, button, buttonClassName, buttonType = 'default', caret = true, children, className, forceOpen, horizontalAlign: horizontalAlignFromProps = 'left', initActive = false, onToggleOpen, render, showOnHover = false, showScrollbar = false, size = 'medium', verticalAlign: verticalAlignFromProps = 'top' } = props;
12
- const { height: windowHeight, width: windowWidth } = useWindowInfo();
13
- const [intersectionRef, intersectionEntry] = useIntersect({
14
- root: boundingRef?.current || null,
15
- rootMargin: '-100px 0px 0px 0px',
16
- threshold: 1
17
- });
18
- const contentRef = useRef(null);
19
- const [active, setActive] = useState(initActive);
20
- const [verticalAlign, setVerticalAlign] = useState(verticalAlignFromProps);
21
- const [horizontalAlign, setHorizontalAlign] = useState(horizontalAlignFromProps);
22
- const setPosition = useCallback(({ horizontal = false, vertical = false })=>{
23
- if (contentRef.current) {
24
- const bounds = contentRef.current.getBoundingClientRect();
25
- const { bottom: contentBottomPos, left: contentLeftPos, right: contentRightPos, top: contentTopPos } = bounds;
26
- let boundingTopPos = 100;
27
- let boundingRightPos = document.documentElement.clientWidth;
28
- let boundingBottomPos = document.documentElement.clientHeight;
29
- let boundingLeftPos = 0;
30
- if (boundingRef?.current) {
31
- ({ bottom: boundingBottomPos, left: boundingLeftPos, right: boundingRightPos, top: boundingTopPos } = boundingRef.current.getBoundingClientRect());
32
- }
33
- if (horizontal) {
34
- if (contentRightPos > boundingRightPos && contentLeftPos > boundingLeftPos) {
35
- setHorizontalAlign('right');
36
- } else if (contentLeftPos < boundingLeftPos && contentRightPos < boundingRightPos) {
37
- setHorizontalAlign('left');
38
- }
39
- }
40
- if (vertical) {
41
- if (contentTopPos < boundingTopPos && contentBottomPos < boundingBottomPos) {
42
- setVerticalAlign('bottom');
43
- } else if (contentBottomPos > boundingBottomPos && contentTopPos > boundingTopPos) {
44
- setVerticalAlign('top');
45
- }
46
- }
11
+ export const Popup = props => {
12
+ const {
13
+ boundingRef,
14
+ button,
15
+ buttonClassName,
16
+ buttonType = 'default',
17
+ caret = true,
18
+ children,
19
+ className,
20
+ forceOpen,
21
+ horizontalAlign: horizontalAlignFromProps = 'left',
22
+ initActive = false,
23
+ onToggleOpen,
24
+ render,
25
+ showOnHover = false,
26
+ showScrollbar = false,
27
+ size = 'medium',
28
+ verticalAlign: verticalAlignFromProps = 'top'
29
+ } = props;
30
+ const {
31
+ height: windowHeight,
32
+ width: windowWidth
33
+ } = useWindowInfo();
34
+ const [intersectionRef, intersectionEntry] = useIntersect({
35
+ root: boundingRef?.current || null,
36
+ rootMargin: '-100px 0px 0px 0px',
37
+ threshold: 1
38
+ });
39
+ const contentRef = useRef(null);
40
+ const [active, setActive] = useState(initActive);
41
+ const [verticalAlign, setVerticalAlign] = useState(verticalAlignFromProps);
42
+ const [horizontalAlign, setHorizontalAlign] = useState(horizontalAlignFromProps);
43
+ const setPosition = useCallback(({
44
+ horizontal = false,
45
+ vertical = false
46
+ }) => {
47
+ if (contentRef.current) {
48
+ const bounds = contentRef.current.getBoundingClientRect();
49
+ const {
50
+ bottom: contentBottomPos,
51
+ left: contentLeftPos,
52
+ right: contentRightPos,
53
+ top: contentTopPos
54
+ } = bounds;
55
+ let boundingTopPos = 100;
56
+ let boundingRightPos = document.documentElement.clientWidth;
57
+ let boundingBottomPos = document.documentElement.clientHeight;
58
+ let boundingLeftPos = 0;
59
+ if (boundingRef?.current) {
60
+ ({
61
+ bottom: boundingBottomPos,
62
+ left: boundingLeftPos,
63
+ right: boundingRightPos,
64
+ top: boundingTopPos
65
+ } = boundingRef.current.getBoundingClientRect());
66
+ }
67
+ if (horizontal) {
68
+ if (contentRightPos > boundingRightPos && contentLeftPos > boundingLeftPos) {
69
+ setHorizontalAlign('right');
70
+ } else if (contentLeftPos < boundingLeftPos && contentRightPos < boundingRightPos) {
71
+ setHorizontalAlign('left');
47
72
  }
48
- }, [
49
- boundingRef
50
- ]);
51
- const handleClickOutside = useCallback((e)=>{
52
- if (contentRef.current.contains(e.target)) {
53
- return;
73
+ }
74
+ if (vertical) {
75
+ if (contentTopPos < boundingTopPos && contentBottomPos < boundingBottomPos) {
76
+ setVerticalAlign('bottom');
77
+ } else if (contentBottomPos > boundingBottomPos && contentTopPos > boundingTopPos) {
78
+ setVerticalAlign('top');
54
79
  }
55
- setActive(false);
56
- }, [
57
- contentRef
58
- ]);
59
- useEffect(()=>{
60
- setPosition({
61
- horizontal: true
62
- });
63
- }, [
64
- intersectionEntry,
65
- setPosition,
66
- windowWidth
67
- ]);
68
- useEffect(()=>{
69
- setPosition({
70
- vertical: true
71
- });
72
- }, [
73
- intersectionEntry,
74
- setPosition,
75
- windowHeight
76
- ]);
77
- useEffect(()=>{
78
- if (typeof onToggleOpen === 'function') onToggleOpen(active);
79
- if (active) {
80
- document.addEventListener('mousedown', handleClickOutside);
81
- } else {
82
- document.removeEventListener('mousedown', handleClickOutside);
83
- }
84
- return ()=>{
85
- document.removeEventListener('mousedown', handleClickOutside);
86
- };
87
- }, [
88
- active,
89
- handleClickOutside,
90
- onToggleOpen
91
- ]);
92
- useEffect(()=>{
93
- setActive(forceOpen);
94
- }, [
95
- forceOpen
96
- ]);
97
- const classes = [
98
- baseClass,
99
- className,
100
- `${baseClass}--size-${size}`,
101
- `${baseClass}--v-align-${verticalAlign}`,
102
- `${baseClass}--h-align-${horizontalAlign}`,
103
- active && `${baseClass}--active`,
104
- showScrollbar && `${baseClass}--show-scrollbar`
105
- ].filter(Boolean).join(' ');
106
- return /*#__PURE__*/ _jsxs("div", {
107
- className: classes,
108
- children: [
109
- /*#__PURE__*/ _jsx("div", {
110
- className: `${baseClass}__trigger-wrap`,
111
- children: showOnHover ? /*#__PURE__*/ _jsx("div", {
112
- className: `${baseClass}__on-hover-watch`,
113
- onMouseEnter: ()=>setActive(true),
114
- onMouseLeave: ()=>setActive(false),
115
- children: /*#__PURE__*/ _jsx(PopupTrigger, {
116
- active,
117
- button,
118
- buttonType,
119
- className: buttonClassName,
120
- setActive
121
- })
122
- }) : /*#__PURE__*/ _jsx(PopupTrigger, {
123
- active,
124
- button,
125
- buttonType,
126
- className: buttonClassName,
127
- setActive
128
- })
129
- }),
130
- /*#__PURE__*/ _jsxs("div", {
131
- className: `${baseClass}__content`,
132
- ref: contentRef,
133
- children: [
134
- /*#__PURE__*/ _jsx("div", {
135
- className: `${baseClass}__hide-scrollbar`,
136
- ref: intersectionRef,
137
- children: /*#__PURE__*/ _jsx("div", {
138
- className: `${baseClass}__scroll-container`,
139
- children: /*#__PURE__*/ _jsxs("div", {
140
- className: `${baseClass}__scroll-content`,
141
- children: [
142
- render && render({
143
- close: ()=>setActive(false)
144
- }),
145
- children && children
146
- ]
147
- })
148
- })
149
- }),
150
- caret && /*#__PURE__*/ _jsx("div", {
151
- className: `${baseClass}__caret`
152
- })
153
- ]
154
- })
155
- ]
80
+ }
81
+ }
82
+ }, [boundingRef]);
83
+ const handleClickOutside = useCallback(e => {
84
+ if (contentRef.current.contains(e.target)) {
85
+ return;
86
+ }
87
+ setActive(false);
88
+ }, [contentRef]);
89
+ useEffect(() => {
90
+ setPosition({
91
+ horizontal: true
156
92
  });
93
+ }, [intersectionEntry, setPosition, windowWidth]);
94
+ useEffect(() => {
95
+ setPosition({
96
+ vertical: true
97
+ });
98
+ }, [intersectionEntry, setPosition, windowHeight]);
99
+ useEffect(() => {
100
+ if (typeof onToggleOpen === 'function') onToggleOpen(active);
101
+ if (active) {
102
+ document.addEventListener('mousedown', handleClickOutside);
103
+ } else {
104
+ document.removeEventListener('mousedown', handleClickOutside);
105
+ }
106
+ return () => {
107
+ document.removeEventListener('mousedown', handleClickOutside);
108
+ };
109
+ }, [active, handleClickOutside, onToggleOpen]);
110
+ useEffect(() => {
111
+ setActive(forceOpen);
112
+ }, [forceOpen]);
113
+ const classes = [baseClass, className, `${baseClass}--size-${size}`, `${baseClass}--v-align-${verticalAlign}`, `${baseClass}--h-align-${horizontalAlign}`, active && `${baseClass}--active`, showScrollbar && `${baseClass}--show-scrollbar`].filter(Boolean).join(' ');
114
+ return /*#__PURE__*/_jsxs("div", {
115
+ className: classes,
116
+ children: [/*#__PURE__*/_jsx("div", {
117
+ className: `${baseClass}__trigger-wrap`,
118
+ children: showOnHover ? /*#__PURE__*/_jsx("div", {
119
+ className: `${baseClass}__on-hover-watch`,
120
+ onMouseEnter: () => setActive(true),
121
+ onMouseLeave: () => setActive(false),
122
+ children: /*#__PURE__*/_jsx(PopupTrigger, {
123
+ active,
124
+ button,
125
+ buttonType,
126
+ className: buttonClassName,
127
+ setActive
128
+ })
129
+ }) : /*#__PURE__*/_jsx(PopupTrigger, {
130
+ active,
131
+ button,
132
+ buttonType,
133
+ className: buttonClassName,
134
+ setActive
135
+ })
136
+ }), /*#__PURE__*/_jsxs("div", {
137
+ className: `${baseClass}__content`,
138
+ ref: contentRef,
139
+ children: [/*#__PURE__*/_jsx("div", {
140
+ className: `${baseClass}__hide-scrollbar`,
141
+ ref: intersectionRef,
142
+ children: /*#__PURE__*/_jsx("div", {
143
+ className: `${baseClass}__scroll-container`,
144
+ children: /*#__PURE__*/_jsxs("div", {
145
+ className: `${baseClass}__scroll-content`,
146
+ children: [render && render({
147
+ close: () => setActive(false)
148
+ }), children && children]
149
+ })
150
+ })
151
+ }), caret && /*#__PURE__*/_jsx("div", {
152
+ className: `${baseClass}__caret`
153
+ })]
154
+ })]
155
+ });
157
156
  };
158
-
159
157
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/Popup/index.tsx"],"sourcesContent":["'use client'\nimport type { CSSProperties } from 'react'\n\nexport * as PopupList from './PopupButtonList/index.js'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\n\nimport { useIntersect } from '../../hooks/useIntersect.js'\nimport { PopupTrigger } from './PopupTrigger/index.js'\nimport './index.scss'\n\nconst baseClass = 'popup'\n\nexport type PopupProps = {\n backgroundColor?: CSSProperties['backgroundColor']\n boundingRef?: React.RefObject<HTMLElement>\n button?: React.ReactNode\n buttonClassName?: string\n buttonType?: 'custom' | 'default' | 'none'\n caret?: boolean\n children?: React.ReactNode\n className?: string\n forceOpen?: boolean\n horizontalAlign?: 'center' | 'left' | 'right'\n initActive?: boolean\n onToggleOpen?: (active: boolean) => void\n render?: (any) => React.ReactNode\n showOnHover?: boolean\n showScrollbar?: boolean\n size?: 'fit-content' | 'large' | 'medium' | 'small'\n verticalAlign?: 'bottom' | 'top'\n}\n\nexport const Popup: React.FC<PopupProps> = (props) => {\n const {\n boundingRef,\n button,\n buttonClassName,\n buttonType = 'default',\n caret = true,\n children,\n className,\n forceOpen,\n horizontalAlign: horizontalAlignFromProps = 'left',\n initActive = false,\n onToggleOpen,\n render,\n showOnHover = false,\n showScrollbar = false,\n size = 'medium',\n verticalAlign: verticalAlignFromProps = 'top',\n } = props\n const { height: windowHeight, width: windowWidth } = useWindowInfo()\n const [intersectionRef, intersectionEntry] = useIntersect({\n root: boundingRef?.current || null,\n rootMargin: '-100px 0px 0px 0px',\n threshold: 1,\n })\n\n const contentRef = useRef(null)\n const [active, setActive] = useState(initActive)\n const [verticalAlign, setVerticalAlign] = useState(verticalAlignFromProps)\n const [horizontalAlign, setHorizontalAlign] = useState(horizontalAlignFromProps)\n\n const setPosition = useCallback(\n ({ horizontal = false, vertical = false }) => {\n if (contentRef.current) {\n const bounds = contentRef.current.getBoundingClientRect()\n\n const {\n bottom: contentBottomPos,\n left: contentLeftPos,\n right: contentRightPos,\n top: contentTopPos,\n } = bounds\n\n let boundingTopPos = 100\n let boundingRightPos = document.documentElement.clientWidth\n let boundingBottomPos = document.documentElement.clientHeight\n let boundingLeftPos = 0\n\n if (boundingRef?.current) {\n ;({\n bottom: boundingBottomPos,\n left: boundingLeftPos,\n right: boundingRightPos,\n top: boundingTopPos,\n } = boundingRef.current.getBoundingClientRect())\n }\n\n if (horizontal) {\n if (contentRightPos > boundingRightPos && contentLeftPos > boundingLeftPos) {\n setHorizontalAlign('right')\n } else if (contentLeftPos < boundingLeftPos && contentRightPos < boundingRightPos) {\n setHorizontalAlign('left')\n }\n }\n\n if (vertical) {\n if (contentTopPos < boundingTopPos && contentBottomPos < boundingBottomPos) {\n setVerticalAlign('bottom')\n } else if (contentBottomPos > boundingBottomPos && contentTopPos > boundingTopPos) {\n setVerticalAlign('top')\n }\n }\n }\n },\n [boundingRef],\n )\n\n const handleClickOutside = useCallback(\n (e) => {\n if (contentRef.current.contains(e.target)) {\n return\n }\n\n setActive(false)\n },\n [contentRef],\n )\n\n useEffect(() => {\n setPosition({ horizontal: true })\n }, [intersectionEntry, setPosition, windowWidth])\n\n useEffect(() => {\n setPosition({ vertical: true })\n }, [intersectionEntry, setPosition, windowHeight])\n\n useEffect(() => {\n if (typeof onToggleOpen === 'function') onToggleOpen(active)\n\n if (active) {\n document.addEventListener('mousedown', handleClickOutside)\n } else {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [active, handleClickOutside, onToggleOpen])\n\n useEffect(() => {\n setActive(forceOpen)\n }, [forceOpen])\n\n const classes = [\n baseClass,\n className,\n `${baseClass}--size-${size}`,\n `${baseClass}--v-align-${verticalAlign}`,\n `${baseClass}--h-align-${horizontalAlign}`,\n active && `${baseClass}--active`,\n showScrollbar && `${baseClass}--show-scrollbar`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__trigger-wrap`}>\n {showOnHover ? (\n <div\n className={`${baseClass}__on-hover-watch`}\n onMouseEnter={() => setActive(true)}\n onMouseLeave={() => setActive(false)}\n >\n <PopupTrigger\n {...{ active, button, buttonType, className: buttonClassName, setActive }}\n />\n </div>\n ) : (\n <PopupTrigger\n {...{ active, button, buttonType, className: buttonClassName, setActive }}\n />\n )}\n </div>\n\n <div className={`${baseClass}__content`} ref={contentRef}>\n <div className={`${baseClass}__hide-scrollbar`} ref={intersectionRef}>\n <div className={`${baseClass}__scroll-container`}>\n <div className={`${baseClass}__scroll-content`}>\n {render && render({ close: () => setActive(false) })}\n {children && children}\n </div>\n </div>\n </div>\n\n {caret && <div className={`${baseClass}__caret`} />}\n </div>\n </div>\n )\n}\n"],"names":["PopupList","useWindowInfo","React","useCallback","useEffect","useRef","useState","useIntersect","PopupTrigger","baseClass","Popup","props","boundingRef","button","buttonClassName","buttonType","caret","children","className","forceOpen","horizontalAlign","horizontalAlignFromProps","initActive","onToggleOpen","render","showOnHover","showScrollbar","size","verticalAlign","verticalAlignFromProps","height","windowHeight","width","windowWidth","intersectionRef","intersectionEntry","root","current","rootMargin","threshold","contentRef","active","setActive","setVerticalAlign","setHorizontalAlign","setPosition","horizontal","vertical","bounds","getBoundingClientRect","bottom","contentBottomPos","left","contentLeftPos","right","contentRightPos","top","contentTopPos","boundingTopPos","boundingRightPos","document","documentElement","clientWidth","boundingBottomPos","clientHeight","boundingLeftPos","handleClickOutside","e","contains","target","addEventListener","removeEventListener","classes","filter","Boolean","join","div","onMouseEnter","onMouseLeave","ref","close"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["PopupList","useWindowInfo","React","useCallback","useEffect","useRef","useState","useIntersect","PopupTrigger","baseClass","Popup","props","boundingRef","button","buttonClassName","buttonType","caret","children","className","forceOpen","horizontalAlign","horizontalAlignFromProps","initActive","onToggleOpen","render","showOnHover","showScrollbar","size","verticalAlign","verticalAlignFromProps","height","windowHeight","width","windowWidth","intersectionRef","intersectionEntry","root","current","rootMargin","threshold","contentRef","active","setActive","setVerticalAlign","setHorizontalAlign","setPosition","horizontal","vertical","bounds","getBoundingClientRect","bottom","contentBottomPos","left","contentLeftPos","right","contentRightPos","top","contentTopPos","boundingTopPos","boundingRightPos","document","documentElement","clientWidth","boundingBottomPos","clientHeight","boundingLeftPos","handleClickOutside","e","contains","target","addEventListener","removeEventListener","classes","filter","Boolean","join","_jsxs","_jsx","onMouseEnter","onMouseLeave","ref","close"],"sources":["../../../src/elements/Popup/index.tsx"],"sourcesContent":["'use client'\nimport type { CSSProperties } from 'react'\n\nexport * as PopupList from './PopupButtonList/index.js'\n\nimport { useWindowInfo } from '@faceless-ui/window-info'\nimport React, { useCallback, useEffect, useRef, useState } from 'react'\n\nimport { useIntersect } from '../../hooks/useIntersect.js'\nimport { PopupTrigger } from './PopupTrigger/index.js'\nimport './index.scss'\n\nconst baseClass = 'popup'\n\nexport type PopupProps = {\n backgroundColor?: CSSProperties['backgroundColor']\n boundingRef?: React.RefObject<HTMLElement>\n button?: React.ReactNode\n buttonClassName?: string\n buttonType?: 'custom' | 'default' | 'none'\n caret?: boolean\n children?: React.ReactNode\n className?: string\n forceOpen?: boolean\n horizontalAlign?: 'center' | 'left' | 'right'\n initActive?: boolean\n onToggleOpen?: (active: boolean) => void\n render?: (any) => React.ReactNode\n showOnHover?: boolean\n showScrollbar?: boolean\n size?: 'fit-content' | 'large' | 'medium' | 'small'\n verticalAlign?: 'bottom' | 'top'\n}\n\nexport const Popup: React.FC<PopupProps> = (props) => {\n const {\n boundingRef,\n button,\n buttonClassName,\n buttonType = 'default',\n caret = true,\n children,\n className,\n forceOpen,\n horizontalAlign: horizontalAlignFromProps = 'left',\n initActive = false,\n onToggleOpen,\n render,\n showOnHover = false,\n showScrollbar = false,\n size = 'medium',\n verticalAlign: verticalAlignFromProps = 'top',\n } = props\n const { height: windowHeight, width: windowWidth } = useWindowInfo()\n const [intersectionRef, intersectionEntry] = useIntersect({\n root: boundingRef?.current || null,\n rootMargin: '-100px 0px 0px 0px',\n threshold: 1,\n })\n\n const contentRef = useRef(null)\n const [active, setActive] = useState(initActive)\n const [verticalAlign, setVerticalAlign] = useState(verticalAlignFromProps)\n const [horizontalAlign, setHorizontalAlign] = useState(horizontalAlignFromProps)\n\n const setPosition = useCallback(\n ({ horizontal = false, vertical = false }) => {\n if (contentRef.current) {\n const bounds = contentRef.current.getBoundingClientRect()\n\n const {\n bottom: contentBottomPos,\n left: contentLeftPos,\n right: contentRightPos,\n top: contentTopPos,\n } = bounds\n\n let boundingTopPos = 100\n let boundingRightPos = document.documentElement.clientWidth\n let boundingBottomPos = document.documentElement.clientHeight\n let boundingLeftPos = 0\n\n if (boundingRef?.current) {\n ;({\n bottom: boundingBottomPos,\n left: boundingLeftPos,\n right: boundingRightPos,\n top: boundingTopPos,\n } = boundingRef.current.getBoundingClientRect())\n }\n\n if (horizontal) {\n if (contentRightPos > boundingRightPos && contentLeftPos > boundingLeftPos) {\n setHorizontalAlign('right')\n } else if (contentLeftPos < boundingLeftPos && contentRightPos < boundingRightPos) {\n setHorizontalAlign('left')\n }\n }\n\n if (vertical) {\n if (contentTopPos < boundingTopPos && contentBottomPos < boundingBottomPos) {\n setVerticalAlign('bottom')\n } else if (contentBottomPos > boundingBottomPos && contentTopPos > boundingTopPos) {\n setVerticalAlign('top')\n }\n }\n }\n },\n [boundingRef],\n )\n\n const handleClickOutside = useCallback(\n (e) => {\n if (contentRef.current.contains(e.target)) {\n return\n }\n\n setActive(false)\n },\n [contentRef],\n )\n\n useEffect(() => {\n setPosition({ horizontal: true })\n }, [intersectionEntry, setPosition, windowWidth])\n\n useEffect(() => {\n setPosition({ vertical: true })\n }, [intersectionEntry, setPosition, windowHeight])\n\n useEffect(() => {\n if (typeof onToggleOpen === 'function') onToggleOpen(active)\n\n if (active) {\n document.addEventListener('mousedown', handleClickOutside)\n } else {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n\n return () => {\n document.removeEventListener('mousedown', handleClickOutside)\n }\n }, [active, handleClickOutside, onToggleOpen])\n\n useEffect(() => {\n setActive(forceOpen)\n }, [forceOpen])\n\n const classes = [\n baseClass,\n className,\n `${baseClass}--size-${size}`,\n `${baseClass}--v-align-${verticalAlign}`,\n `${baseClass}--h-align-${horizontalAlign}`,\n active && `${baseClass}--active`,\n showScrollbar && `${baseClass}--show-scrollbar`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <div className={classes}>\n <div className={`${baseClass}__trigger-wrap`}>\n {showOnHover ? (\n <div\n className={`${baseClass}__on-hover-watch`}\n onMouseEnter={() => setActive(true)}\n onMouseLeave={() => setActive(false)}\n >\n <PopupTrigger\n {...{ active, button, buttonType, className: buttonClassName, setActive }}\n />\n </div>\n ) : (\n <PopupTrigger\n {...{ active, button, buttonType, className: buttonClassName, setActive }}\n />\n )}\n </div>\n\n <div className={`${baseClass}__content`} ref={contentRef}>\n <div className={`${baseClass}__hide-scrollbar`} ref={intersectionRef}>\n <div className={`${baseClass}__scroll-container`}>\n <div className={`${baseClass}__scroll-content`}>\n {render && render({ close: () => setActive(false) })}\n {children && children}\n </div>\n </div>\n </div>\n\n {caret && <div className={`${baseClass}__caret`} />}\n </div>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,32 +1,55 @@
1
1
  'use client';
2
+
3
+ import { c as _c } from "react/compiler-runtime";
2
4
  import { jsx as _jsx } from "react/jsx-runtime";
3
5
  import React from 'react';
4
6
  import { RenderComponent } from '../../providers/Config/RenderComponent.js';
5
7
  import { Button } from '../Button/index.js';
6
8
  import { usePreviewURL } from './usePreviewURL.js';
7
9
  const baseClass = 'preview-btn';
8
- const DefaultPreviewButton = ()=>{
9
- const { generatePreviewURL, label } = usePreviewURL();
10
- return /*#__PURE__*/ _jsx(Button, {
11
- buttonStyle: "secondary",
12
- className: baseClass,
13
- icon: 'link',
14
- iconPosition: "left",
15
- // disabled={disabled}
16
- onClick: ()=>generatePreviewURL({
17
- openPreviewWindow: true
18
- }),
19
- size: "medium",
20
- children: label
10
+ const DefaultPreviewButton = () => {
11
+ const $ = _c(5);
12
+ const {
13
+ generatePreviewURL,
14
+ label
15
+ } = usePreviewURL();
16
+ let t0;
17
+ if ($[0] !== generatePreviewURL) {
18
+ t0 = () => generatePreviewURL({
19
+ openPreviewWindow: true
20
+ });
21
+ $[0] = generatePreviewURL;
22
+ $[1] = t0;
23
+ } else {
24
+ t0 = $[1];
25
+ }
26
+ let t1;
27
+ if ($[2] !== t0 || $[3] !== label) {
28
+ t1 = _jsx(Button, {
29
+ buttonStyle: "secondary",
30
+ className: baseClass,
31
+ icon: "link",
32
+ iconPosition: "left",
33
+ onClick: t0,
34
+ size: "medium",
35
+ children: label
21
36
  });
37
+ $[2] = t0;
38
+ $[3] = label;
39
+ $[4] = t1;
40
+ } else {
41
+ t1 = $[4];
42
+ }
43
+ return t1;
22
44
  };
23
- export const PreviewButton = ({ CustomComponent })=>{
24
- if (CustomComponent) {
25
- return /*#__PURE__*/ _jsx(RenderComponent, {
26
- mappedComponent: CustomComponent
27
- });
28
- }
29
- return /*#__PURE__*/ _jsx(DefaultPreviewButton, {});
45
+ export const PreviewButton = ({
46
+ CustomComponent
47
+ }) => {
48
+ if (CustomComponent) {
49
+ return /*#__PURE__*/_jsx(RenderComponent, {
50
+ mappedComponent: CustomComponent
51
+ });
52
+ }
53
+ return /*#__PURE__*/_jsx(DefaultPreviewButton, {});
30
54
  };
31
-
32
55
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/PreviewButton/index.tsx"],"sourcesContent":["'use client'\nimport type { MappedComponent } from 'payload'\n\nimport React from 'react'\n\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { Button } from '../Button/index.js'\nimport { usePreviewURL } from './usePreviewURL.js'\n\nconst baseClass = 'preview-btn'\n\nconst DefaultPreviewButton: React.FC = () => {\n const { generatePreviewURL, label } = usePreviewURL()\n\n return (\n <Button\n buttonStyle=\"secondary\"\n className={baseClass}\n icon={'link'}\n iconPosition=\"left\"\n // disabled={disabled}\n onClick={() =>\n generatePreviewURL({\n openPreviewWindow: true,\n })\n }\n size=\"medium\"\n >\n {label}\n </Button>\n )\n}\n\ntype Props = {\n CustomComponent?: MappedComponent\n}\n\nexport const PreviewButton: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) {\n return <RenderComponent mappedComponent={CustomComponent} />\n }\n\n return <DefaultPreviewButton />\n}\n"],"names":["React","RenderComponent","Button","usePreviewURL","baseClass","DefaultPreviewButton","generatePreviewURL","label","buttonStyle","className","icon","iconPosition","onClick","openPreviewWindow","size","PreviewButton","CustomComponent","mappedComponent"],"mappings":"AAAA;;AAGA,OAAOA,WAAW,QAAO;AAEzB,SAASC,eAAe,QAAQ,4CAA2C;AAC3E,SAASC,MAAM,QAAQ,qBAAoB;AAC3C,SAASC,aAAa,QAAQ,qBAAoB;AAElD,MAAMC,YAAY;AAElB,MAAMC,uBAAiC;IACrC,MAAM,EAAEC,kBAAkB,EAAEC,KAAK,EAAE,GAAGJ;IAEtC,qBACE,KAACD;QACCM,aAAY;QACZC,WAAWL;QACXM,MAAM;QACNC,cAAa;QACb,sBAAsB;QACtBC,SAAS,IACPN,mBAAmB;gBACjBO,mBAAmB;YACrB;QAEFC,MAAK;kBAEJP;;AAGP;AAMA,OAAO,MAAMQ,gBAAiC,CAAC,EAAEC,eAAe,EAAE;IAChE,IAAIA,iBAAiB;QACnB,qBAAO,KAACf;YAAgBgB,iBAAiBD;;IAC3C;IAEA,qBAAO,KAACX;AACV,EAAC"}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","RenderComponent","Button","usePreviewURL","baseClass","DefaultPreviewButton","$","generatePreviewURL","label","t0","openPreviewWindow","t1","_jsx","buttonStyle","className","icon","iconPosition","onClick","size","children","PreviewButton","CustomComponent","mappedComponent"],"sources":["../../../src/elements/PreviewButton/index.tsx"],"sourcesContent":["'use client'\nimport type { MappedComponent } from 'payload'\n\nimport React from 'react'\n\nimport { RenderComponent } from '../../providers/Config/RenderComponent.js'\nimport { Button } from '../Button/index.js'\nimport { usePreviewURL } from './usePreviewURL.js'\n\nconst baseClass = 'preview-btn'\n\nconst DefaultPreviewButton: React.FC = () => {\n const { generatePreviewURL, label } = usePreviewURL()\n\n return (\n <Button\n buttonStyle=\"secondary\"\n className={baseClass}\n icon={'link'}\n iconPosition=\"left\"\n // disabled={disabled}\n onClick={() =>\n generatePreviewURL({\n openPreviewWindow: true,\n })\n }\n size=\"medium\"\n >\n {label}\n </Button>\n )\n}\n\ntype Props = {\n CustomComponent?: MappedComponent\n}\n\nexport const PreviewButton: React.FC<Props> = ({ CustomComponent }) => {\n if (CustomComponent) {\n return <RenderComponent mappedComponent={CustomComponent} />\n }\n\n return <DefaultPreviewButton />\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAGA,OAAOC,KAAA,MAAW;AAElB,SAASC,eAAe,QAAQ;AAChC,SAASC,MAAM,QAAQ;AACvB,SAASC,aAAa,QAAQ;AAE9B,MAAMC,SAAA,GAAY;AAElB,MAAMC,oBAAA,GAAiCA,CAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EACrC;IAAAQ,kBAAA;IAAAC;EAAA,IAAsCL,aAAA;EAAA,IAAAM,EAAA;EAAA,IAAAH,CAAA,QAAAC,kBAAA;IASzBE,EAAA,GAAAA,CAAA,KACPF,kBAAA;MAAAG,iBAAA;IAAA,CAEA;IAAAJ,CAAA,MAAAC,kBAAA;IAAAD,CAAA,MAAAG,EAAA;EAAA;IAAAA,EAAA,GAAAH,CAAA;EAAA;EAAA,IAAAK,EAAA;EAAA,IAAAL,CAAA,QAAAG,EAAA,IAAAH,CAAA,QAAAE,KAAA;IATJG,EAAA,GAAAC,IAAA,CAAAV,MAAA;MAAAW,WAAA,EACc;MAAAC,SAAA,EAAAV,SAAA;MAAAW,IAAA,EAEN;MAAAC,YAAA,EACO;MAAAC,OAAA,EAEJR,EAGP;MAAAS,IAAA,EAEG;MAAAC,QAAA,EAEJX;IAAA,C;;;;;;;SAbHG,E;CAgBJ;AAMA,OAAO,MAAMS,aAAA,GAAiCA,CAAC;EAAEC;AAAe,CAAE;EAChE,IAAIA,eAAA,EAAiB;IACnB,oBAAOT,IAAA,CAACX,eAAA;MAAgBqB,eAAA,EAAiBD;;EAC3C;EAEA,oBAAOT,IAAA,CAACP,oBAAA;AACV","ignoreList":[]}
@@ -1,57 +1,66 @@
1
1
  'use client';
2
+
2
3
  import { useCallback, useRef, useState } from 'react';
3
4
  import { toast } from 'sonner';
4
5
  import { useConfig } from '../../providers/Config/index.js';
5
6
  import { useDocumentInfo } from '../../providers/DocumentInfo/index.js';
6
7
  import { useLocale } from '../../providers/Locale/index.js';
7
8
  import { useTranslation } from '../../providers/Translation/index.js';
8
- export const usePreviewURL = ()=>{
9
- const { id, collectionSlug, globalSlug } = useDocumentInfo();
10
- const [isLoading, setIsLoading] = useState(false);
11
- const [previewURL, setPreviewURL] = useState('');
12
- const { code: locale } = useLocale();
13
- const { config: { routes: { api }, serverURL } } = useConfig();
14
- const { t } = useTranslation();
15
- const isGeneratingPreviewURL = useRef(false);
16
- // we need to regenerate the preview URL every time the button is clicked
17
- // to do this we need to fetch the document data fresh from the API
18
- // this will ensure the latest data is used when generating the preview URL
19
- const generatePreviewURL = useCallback(async ({ openPreviewWindow = false })=>{
20
- if (isGeneratingPreviewURL.current) return;
21
- isGeneratingPreviewURL.current = true;
22
- try {
23
- setIsLoading(true);
24
- let url = `${serverURL}${api}`;
25
- if (collectionSlug) url = `${url}/${collectionSlug}/${id}/preview`;
26
- if (globalSlug) url = `${url}/globals/${globalSlug}/preview`;
27
- const res = await fetch(`${url}${locale ? `?locale=${locale}` : ''}`);
28
- if (!res.ok) throw new Error();
29
- const newPreviewURL = await res.json();
30
- if (!newPreviewURL) throw new Error();
31
- setPreviewURL(newPreviewURL);
32
- setIsLoading(false);
33
- isGeneratingPreviewURL.current = false;
34
- if (openPreviewWindow) window.open(newPreviewURL, '_blank');
35
- } catch (err) {
36
- setIsLoading(false);
37
- isGeneratingPreviewURL.current = false;
38
- toast.error(t('error:previewing'));
39
- }
40
- }, [
41
- serverURL,
42
- api,
43
- collectionSlug,
44
- globalSlug,
45
- id,
46
- locale,
47
- t
48
- ]);
49
- return {
50
- generatePreviewURL,
51
- isLoading,
52
- label: isLoading ? t('general:loading') : t('version:preview'),
53
- previewURL
54
- };
9
+ export const usePreviewURL = () => {
10
+ const {
11
+ id,
12
+ collectionSlug,
13
+ globalSlug
14
+ } = useDocumentInfo();
15
+ const [isLoading, setIsLoading] = useState(false);
16
+ const [previewURL, setPreviewURL] = useState('');
17
+ const {
18
+ code: locale
19
+ } = useLocale();
20
+ const {
21
+ config: {
22
+ routes: {
23
+ api
24
+ },
25
+ serverURL
26
+ }
27
+ } = useConfig();
28
+ const {
29
+ t
30
+ } = useTranslation();
31
+ const isGeneratingPreviewURL = useRef(false);
32
+ // we need to regenerate the preview URL every time the button is clicked
33
+ // to do this we need to fetch the document data fresh from the API
34
+ // this will ensure the latest data is used when generating the preview URL
35
+ const generatePreviewURL = useCallback(async ({
36
+ openPreviewWindow = false
37
+ }) => {
38
+ if (isGeneratingPreviewURL.current) return;
39
+ isGeneratingPreviewURL.current = true;
40
+ try {
41
+ setIsLoading(true);
42
+ let url = `${serverURL}${api}`;
43
+ if (collectionSlug) url = `${url}/${collectionSlug}/${id}/preview`;
44
+ if (globalSlug) url = `${url}/globals/${globalSlug}/preview`;
45
+ const res = await fetch(`${url}${locale ? `?locale=${locale}` : ''}`);
46
+ if (!res.ok) throw new Error();
47
+ const newPreviewURL = await res.json();
48
+ if (!newPreviewURL) throw new Error();
49
+ setPreviewURL(newPreviewURL);
50
+ setIsLoading(false);
51
+ isGeneratingPreviewURL.current = false;
52
+ if (openPreviewWindow) window.open(newPreviewURL, '_blank');
53
+ } catch (err) {
54
+ setIsLoading(false);
55
+ isGeneratingPreviewURL.current = false;
56
+ toast.error(t('error:previewing'));
57
+ }
58
+ }, [serverURL, api, collectionSlug, globalSlug, id, locale, t]);
59
+ return {
60
+ generatePreviewURL,
61
+ isLoading,
62
+ label: isLoading ? t('general:loading') : t('version:preview'),
63
+ previewURL
64
+ };
55
65
  };
56
-
57
66
  //# sourceMappingURL=usePreviewURL.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/elements/PreviewButton/usePreviewURL.tsx"],"sourcesContent":["'use client'\nimport { useCallback, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const usePreviewURL = (): {\n generatePreviewURL: ({ openPreviewWindow }: { openPreviewWindow?: boolean }) => void\n isLoading: boolean\n label: string\n previewURL: string\n} => {\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n\n const [isLoading, setIsLoading] = useState(false)\n const [previewURL, setPreviewURL] = useState('')\n const { code: locale } = useLocale()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const { t } = useTranslation()\n\n const isGeneratingPreviewURL = useRef(false)\n\n // we need to regenerate the preview URL every time the button is clicked\n // to do this we need to fetch the document data fresh from the API\n // this will ensure the latest data is used when generating the preview URL\n const generatePreviewURL = useCallback(\n async ({ openPreviewWindow = false }) => {\n if (isGeneratingPreviewURL.current) return\n isGeneratingPreviewURL.current = true\n\n try {\n setIsLoading(true)\n\n let url = `${serverURL}${api}`\n if (collectionSlug) url = `${url}/${collectionSlug}/${id}/preview`\n if (globalSlug) url = `${url}/globals/${globalSlug}/preview`\n\n const res = await fetch(`${url}${locale ? `?locale=${locale}` : ''}`)\n\n if (!res.ok) throw new Error()\n const newPreviewURL = await res.json()\n if (!newPreviewURL) throw new Error()\n setPreviewURL(newPreviewURL)\n setIsLoading(false)\n isGeneratingPreviewURL.current = false\n if (openPreviewWindow) window.open(newPreviewURL, '_blank')\n } catch (err) {\n setIsLoading(false)\n isGeneratingPreviewURL.current = false\n toast.error(t('error:previewing'))\n }\n },\n [serverURL, api, collectionSlug, globalSlug, id, locale, t],\n )\n\n return {\n generatePreviewURL,\n isLoading,\n label: isLoading ? t('general:loading') : t('version:preview'),\n previewURL,\n }\n}\n"],"names":["useCallback","useRef","useState","toast","useConfig","useDocumentInfo","useLocale","useTranslation","usePreviewURL","id","collectionSlug","globalSlug","isLoading","setIsLoading","previewURL","setPreviewURL","code","locale","config","routes","api","serverURL","t","isGeneratingPreviewURL","generatePreviewURL","openPreviewWindow","current","url","res","fetch","ok","Error","newPreviewURL","json","window","open","err","error","label"],"mappings":"AAAA;AACA,SAASA,WAAW,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,QAAO;AACrD,SAASC,KAAK,QAAQ,SAAQ;AAE9B,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AAErE,OAAO,MAAMC,gBAAgB;IAM3B,MAAM,EAAEC,EAAE,EAAEC,cAAc,EAAEC,UAAU,EAAE,GAAGN;IAE3C,MAAM,CAACO,WAAWC,aAAa,GAAGX,SAAS;IAC3C,MAAM,CAACY,YAAYC,cAAc,GAAGb,SAAS;IAC7C,MAAM,EAAEc,MAAMC,MAAM,EAAE,GAAGX;IAEzB,MAAM,EACJY,QAAQ,EACNC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,EACF,GAAGjB;IAEJ,MAAM,EAAEkB,CAAC,EAAE,GAAGf;IAEd,MAAMgB,yBAAyBtB,OAAO;IAEtC,yEAAyE;IACzE,mEAAmE;IACnE,2EAA2E;IAC3E,MAAMuB,qBAAqBxB,YACzB,OAAO,EAAEyB,oBAAoB,KAAK,EAAE;QAClC,IAAIF,uBAAuBG,OAAO,EAAE;QACpCH,uBAAuBG,OAAO,GAAG;QAEjC,IAAI;YACFb,aAAa;YAEb,IAAIc,MAAM,CAAC,EAAEN,UAAU,EAAED,IAAI,CAAC;YAC9B,IAAIV,gBAAgBiB,MAAM,CAAC,EAAEA,IAAI,CAAC,EAAEjB,eAAe,CAAC,EAAED,GAAG,QAAQ,CAAC;YAClE,IAAIE,YAAYgB,MAAM,CAAC,EAAEA,IAAI,SAAS,EAAEhB,WAAW,QAAQ,CAAC;YAE5D,MAAMiB,MAAM,MAAMC,MAAM,CAAC,EAAEF,IAAI,EAAEV,SAAS,CAAC,QAAQ,EAAEA,OAAO,CAAC,GAAG,GAAG,CAAC;YAEpE,IAAI,CAACW,IAAIE,EAAE,EAAE,MAAM,IAAIC;YACvB,MAAMC,gBAAgB,MAAMJ,IAAIK,IAAI;YACpC,IAAI,CAACD,eAAe,MAAM,IAAID;YAC9BhB,cAAciB;YACdnB,aAAa;YACbU,uBAAuBG,OAAO,GAAG;YACjC,IAAID,mBAAmBS,OAAOC,IAAI,CAACH,eAAe;QACpD,EAAE,OAAOI,KAAK;YACZvB,aAAa;YACbU,uBAAuBG,OAAO,GAAG;YACjCvB,MAAMkC,KAAK,CAACf,EAAE;QAChB;IACF,GACA;QAACD;QAAWD;QAAKV;QAAgBC;QAAYF;QAAIQ;QAAQK;KAAE;IAG7D,OAAO;QACLE;QACAZ;QACA0B,OAAO1B,YAAYU,EAAE,qBAAqBA,EAAE;QAC5CR;IACF;AACF,EAAC"}
1
+ {"version":3,"file":"usePreviewURL.js","names":["useCallback","useRef","useState","toast","useConfig","useDocumentInfo","useLocale","useTranslation","usePreviewURL","id","collectionSlug","globalSlug","isLoading","setIsLoading","previewURL","setPreviewURL","code","locale","config","routes","api","serverURL","t","isGeneratingPreviewURL","generatePreviewURL","openPreviewWindow","current","url","res","fetch","ok","Error","newPreviewURL","json","window","open","err","error","label"],"sources":["../../../src/elements/PreviewButton/usePreviewURL.tsx"],"sourcesContent":["'use client'\nimport { useCallback, useRef, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useDocumentInfo } from '../../providers/DocumentInfo/index.js'\nimport { useLocale } from '../../providers/Locale/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\n\nexport const usePreviewURL = (): {\n generatePreviewURL: ({ openPreviewWindow }: { openPreviewWindow?: boolean }) => void\n isLoading: boolean\n label: string\n previewURL: string\n} => {\n const { id, collectionSlug, globalSlug } = useDocumentInfo()\n\n const [isLoading, setIsLoading] = useState(false)\n const [previewURL, setPreviewURL] = useState('')\n const { code: locale } = useLocale()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const { t } = useTranslation()\n\n const isGeneratingPreviewURL = useRef(false)\n\n // we need to regenerate the preview URL every time the button is clicked\n // to do this we need to fetch the document data fresh from the API\n // this will ensure the latest data is used when generating the preview URL\n const generatePreviewURL = useCallback(\n async ({ openPreviewWindow = false }) => {\n if (isGeneratingPreviewURL.current) return\n isGeneratingPreviewURL.current = true\n\n try {\n setIsLoading(true)\n\n let url = `${serverURL}${api}`\n if (collectionSlug) url = `${url}/${collectionSlug}/${id}/preview`\n if (globalSlug) url = `${url}/globals/${globalSlug}/preview`\n\n const res = await fetch(`${url}${locale ? `?locale=${locale}` : ''}`)\n\n if (!res.ok) throw new Error()\n const newPreviewURL = await res.json()\n if (!newPreviewURL) throw new Error()\n setPreviewURL(newPreviewURL)\n setIsLoading(false)\n isGeneratingPreviewURL.current = false\n if (openPreviewWindow) window.open(newPreviewURL, '_blank')\n } catch (err) {\n setIsLoading(false)\n isGeneratingPreviewURL.current = false\n toast.error(t('error:previewing'))\n }\n },\n [serverURL, api, collectionSlug, globalSlug, id, locale, t],\n )\n\n return {\n generatePreviewURL,\n isLoading,\n label: isLoading ? t('general:loading') : t('version:preview'),\n previewURL,\n }\n}\n"],"mappings":"AAAA;;AACA,SAASA,WAAW,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AAC9C,SAASC,KAAK,QAAQ;AAEtB,SAASC,SAAS,QAAQ;AAC1B,SAASC,eAAe,QAAQ;AAChC,SAASC,SAAS,QAAQ;AAC1B,SAASC,cAAc,QAAQ;AAE/B,OAAO,MAAMC,aAAA,GAAgBA,CAAA;EAM3B,MAAM;IAAEC,EAAE;IAAEC,cAAc;IAAEC;EAAU,CAAE,GAAGN,eAAA;EAE3C,MAAM,CAACO,SAAA,EAAWC,YAAA,CAAa,GAAGX,QAAA,CAAS;EAC3C,MAAM,CAACY,UAAA,EAAYC,aAAA,CAAc,GAAGb,QAAA,CAAS;EAC7C,MAAM;IAAEc,IAAA,EAAMC;EAAM,CAAE,GAAGX,SAAA;EAEzB,MAAM;IACJY,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC;MAAG,CAAE;MACfC;IAAS;EACV,CACF,GAAGjB,SAAA;EAEJ,MAAM;IAAEkB;EAAC,CAAE,GAAGf,cAAA;EAEd,MAAMgB,sBAAA,GAAyBtB,MAAA,CAAO;EAEtC;EACA;EACA;EACA,MAAMuB,kBAAA,GAAqBxB,WAAA,CACzB,OAAO;IAAEyB,iBAAA,GAAoB;EAAK,CAAE;IAClC,IAAIF,sBAAA,CAAuBG,OAAO,EAAE;IACpCH,sBAAA,CAAuBG,OAAO,GAAG;IAEjC,IAAI;MACFb,YAAA,CAAa;MAEb,IAAIc,GAAA,GAAM,GAAGN,SAAA,GAAYD,GAAA,EAAK;MAC9B,IAAIV,cAAA,EAAgBiB,GAAA,GAAM,GAAGA,GAAA,IAAOjB,cAAA,IAAkBD,EAAA,UAAY;MAClE,IAAIE,UAAA,EAAYgB,GAAA,GAAM,GAAGA,GAAA,YAAehB,UAAA,UAAoB;MAE5D,MAAMiB,GAAA,GAAM,MAAMC,KAAA,CAAM,GAAGF,GAAA,GAAMV,MAAA,GAAS,WAAWA,MAAA,EAAQ,GAAG,IAAI;MAEpE,IAAI,CAACW,GAAA,CAAIE,EAAE,EAAE,MAAM,IAAIC,KAAA;MACvB,MAAMC,aAAA,GAAgB,MAAMJ,GAAA,CAAIK,IAAI;MACpC,IAAI,CAACD,aAAA,EAAe,MAAM,IAAID,KAAA;MAC9BhB,aAAA,CAAciB,aAAA;MACdnB,YAAA,CAAa;MACbU,sBAAA,CAAuBG,OAAO,GAAG;MACjC,IAAID,iBAAA,EAAmBS,MAAA,CAAOC,IAAI,CAACH,aAAA,EAAe;IACpD,EAAE,OAAOI,GAAA,EAAK;MACZvB,YAAA,CAAa;MACbU,sBAAA,CAAuBG,OAAO,GAAG;MACjCvB,KAAA,CAAMkC,KAAK,CAACf,CAAA,CAAE;IAChB;EACF,GACA,CAACD,SAAA,EAAWD,GAAA,EAAKV,cAAA,EAAgBC,UAAA,EAAYF,EAAA,EAAIQ,MAAA,EAAQK,CAAA,CAAE;EAG7D,OAAO;IACLE,kBAAA;IACAZ,SAAA;IACA0B,KAAA,EAAO1B,SAAA,GAAYU,CAAA,CAAE,qBAAqBA,CAAA,CAAE;IAC5CR;EACF;AACF","ignoreList":[]}