@payloadcms/ui 4.0.0-canary.0 → 4.0.0-canary.1

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 (1021) hide show
  1. package/dist/css/colors.css +107 -60
  2. package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
  3. package/dist/elements/AddNewRelation/index.js +85 -103
  4. package/dist/elements/AddNewRelation/index.js.map +1 -1
  5. package/dist/elements/AppHeader/index.d.ts +2 -1
  6. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  7. package/dist/elements/AppHeader/index.js +7 -27
  8. package/dist/elements/AppHeader/index.js.map +1 -1
  9. package/dist/elements/Button/index.css +8 -0
  10. package/dist/elements/Chip/index.css +1 -1
  11. package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
  12. package/dist/elements/CodeEditor/CodeEditor.js +19 -0
  13. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  14. package/dist/elements/Combobox/index.css +9 -8
  15. package/dist/elements/Combobox/index.d.ts +2 -0
  16. package/dist/elements/Combobox/index.d.ts.map +1 -1
  17. package/dist/elements/Combobox/index.js +25 -20
  18. package/dist/elements/Combobox/index.js.map +1 -1
  19. package/dist/elements/ConfirmationModal/index.css +7 -0
  20. package/dist/elements/ConfirmationModal/index.d.ts +1 -0
  21. package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
  22. package/dist/elements/ConfirmationModal/index.js +29 -116
  23. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  24. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  25. package/dist/elements/DatePicker/DatePicker.js +4 -2
  26. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  27. package/dist/elements/DatePicker/index.css +5 -0
  28. package/dist/elements/DatePicker/index.js +1 -1
  29. package/dist/elements/DatePicker/index.js.map +1 -1
  30. package/dist/elements/DeleteMany/index.d.ts +3 -26
  31. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  32. package/dist/elements/DeleteMany/index.js +1 -95
  33. package/dist/elements/DeleteMany/index.js.map +1 -1
  34. package/dist/elements/Dialog/DialogBody/index.d.ts +6 -0
  35. package/dist/elements/Dialog/DialogBody/index.d.ts.map +1 -0
  36. package/dist/elements/Dialog/DialogBody/index.js +14 -0
  37. package/dist/elements/Dialog/DialogBody/index.js.map +1 -0
  38. package/dist/elements/Dialog/DialogCancel/index.d.ts +7 -0
  39. package/dist/elements/Dialog/DialogCancel/index.d.ts.map +1 -0
  40. package/dist/elements/Dialog/DialogCancel/index.js +69 -0
  41. package/dist/elements/Dialog/DialogCancel/index.js.map +1 -0
  42. package/dist/elements/Dialog/DialogConfirm/index.d.ts +8 -0
  43. package/dist/elements/Dialog/DialogConfirm/index.d.ts.map +1 -0
  44. package/dist/elements/Dialog/DialogConfirm/index.js +75 -0
  45. package/dist/elements/Dialog/DialogConfirm/index.js.map +1 -0
  46. package/dist/elements/Dialog/DialogFooter/index.d.ts +6 -0
  47. package/dist/elements/Dialog/DialogFooter/index.d.ts.map +1 -0
  48. package/dist/elements/Dialog/DialogFooter/index.js +17 -0
  49. package/dist/elements/Dialog/DialogFooter/index.js.map +1 -0
  50. package/dist/elements/Dialog/DialogHeader/index.d.ts +8 -0
  51. package/dist/elements/Dialog/DialogHeader/index.d.ts.map +1 -0
  52. package/dist/elements/Dialog/DialogHeader/index.js +70 -0
  53. package/dist/elements/Dialog/DialogHeader/index.js.map +1 -0
  54. package/dist/elements/Dialog/DialogModal/index.d.ts +18 -0
  55. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -0
  56. package/dist/elements/Dialog/DialogModal/index.js +99 -0
  57. package/dist/elements/Dialog/DialogModal/index.js.map +1 -0
  58. package/dist/elements/Dialog/context.d.ts +8 -0
  59. package/dist/elements/Dialog/context.d.ts.map +1 -0
  60. package/dist/elements/Dialog/context.js +10 -0
  61. package/dist/elements/Dialog/context.js.map +1 -0
  62. package/dist/elements/{Modal → Dialog}/index.css +46 -32
  63. package/dist/elements/Dialog/index.d.ts +13 -0
  64. package/dist/elements/Dialog/index.d.ts.map +1 -0
  65. package/dist/elements/Dialog/index.js +7 -0
  66. package/dist/elements/Dialog/index.js.map +1 -0
  67. package/dist/elements/DocumentControls/index.css +10 -0
  68. package/dist/elements/DocumentControls/index.d.ts +6 -0
  69. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  70. package/dist/elements/DocumentControls/index.js +7 -6
  71. package/dist/elements/DocumentControls/index.js.map +1 -1
  72. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  73. package/dist/elements/DocumentDrawer/DrawerContent.js +10 -6
  74. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  75. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +76 -4
  76. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts +7 -1
  77. package/dist/elements/DocumentDrawer/DrawerHeader/index.d.ts.map +1 -1
  78. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +148 -87
  79. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  80. package/dist/elements/DocumentDrawer/types.d.ts +1 -0
  81. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  82. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  83. package/dist/elements/DocumentFields/index.css +60 -1
  84. package/dist/elements/DocumentLocked/index.css +5 -0
  85. package/dist/elements/DocumentLocked/index.d.ts +1 -0
  86. package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
  87. package/dist/elements/DocumentLocked/index.js +68 -92
  88. package/dist/elements/DocumentLocked/index.js.map +1 -1
  89. package/dist/elements/DocumentStaleData/index.d.ts.map +1 -1
  90. package/dist/elements/DocumentStaleData/index.js +36 -34
  91. package/dist/elements/DocumentStaleData/index.js.map +1 -1
  92. package/dist/elements/DocumentTakeOver/index.d.ts.map +1 -1
  93. package/dist/elements/DocumentTakeOver/index.js +46 -52
  94. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  95. package/dist/elements/Drawer/index.css +57 -26
  96. package/dist/elements/Drawer/index.d.ts.map +1 -1
  97. package/dist/elements/Drawer/index.js +48 -41
  98. package/dist/elements/Drawer/index.js.map +1 -1
  99. package/dist/elements/Drawer/types.d.ts +1 -0
  100. package/dist/elements/Drawer/types.d.ts.map +1 -1
  101. package/dist/elements/Drawer/types.js.map +1 -1
  102. package/dist/elements/EditMany/DrawerContent.d.ts +1 -1
  103. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  104. package/dist/elements/EditMany/DrawerContent.js +76 -71
  105. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  106. package/dist/elements/EditMany/index.css +71 -0
  107. package/dist/elements/EditMany/index.d.ts +9 -11
  108. package/dist/elements/EditMany/index.d.ts.map +1 -1
  109. package/dist/elements/EditMany/index.js +2 -40
  110. package/dist/elements/EditMany/index.js.map +1 -1
  111. package/dist/elements/FieldSelect/index.css +3 -0
  112. package/dist/elements/GroupByControl/index.d.ts.map +1 -1
  113. package/dist/elements/GroupByControl/index.js +5 -6
  114. package/dist/elements/GroupByControl/index.js.map +1 -1
  115. package/dist/elements/Hierarchy/Drawer/index.css +3 -21
  116. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +1 -1
  117. package/dist/elements/Hierarchy/Drawer/index.js +5 -3
  118. package/dist/elements/Hierarchy/Drawer/index.js.map +1 -1
  119. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
  120. package/dist/elements/LeaveWithoutSaving/index.js +40 -35
  121. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  122. package/dist/elements/ListControls/index.css +4 -6
  123. package/dist/elements/ListControls/index.d.ts.map +1 -1
  124. package/dist/elements/ListControls/index.js +24 -10
  125. package/dist/elements/ListControls/index.js.map +1 -1
  126. package/dist/elements/ListControls/types.d.ts +2 -0
  127. package/dist/elements/ListControls/types.d.ts.map +1 -1
  128. package/dist/elements/ListControls/types.js.map +1 -1
  129. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  130. package/dist/elements/ListDrawer/DrawerContent.js +12 -6
  131. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  132. package/dist/elements/ListSelection/index.css +1 -1
  133. package/dist/elements/LivePreview/ToolbarArea/index.d.ts +1 -1
  134. package/dist/elements/LivePreview/ToolbarArea/index.d.ts.map +1 -1
  135. package/dist/elements/LivePreview/ToolbarArea/index.js +1 -1
  136. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  137. package/dist/elements/Loading/index.css +28 -74
  138. package/dist/elements/Loading/index.d.ts.map +1 -1
  139. package/dist/elements/Loading/index.js +16 -60
  140. package/dist/elements/Loading/index.js.map +1 -1
  141. package/dist/elements/Localizer/index.d.ts.map +1 -1
  142. package/dist/elements/Localizer/index.js +3 -4
  143. package/dist/elements/Localizer/index.js.map +1 -1
  144. package/dist/elements/MenuSeparator/index.d.ts +4 -0
  145. package/dist/elements/MenuSeparator/index.d.ts.map +1 -0
  146. package/dist/elements/MenuSeparator/index.js +10 -0
  147. package/dist/elements/MenuSeparator/index.js.map +1 -0
  148. package/dist/elements/Modal/index.d.ts +1 -17
  149. package/dist/elements/Modal/index.d.ts.map +1 -1
  150. package/dist/elements/Modal/index.js +1 -44
  151. package/dist/elements/Modal/index.js.map +1 -1
  152. package/dist/elements/Nav/NavWrapper/{index.scss → index.css} +2 -4
  153. package/dist/elements/Nav/NavWrapper/index.d.ts +1 -1
  154. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  155. package/dist/elements/Nav/NavWrapper/index.js +1 -1
  156. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  157. package/dist/elements/Nav/SidebarTabs/index.css +6 -0
  158. package/dist/elements/Nav/index.d.ts.map +1 -1
  159. package/dist/elements/Nav/index.js +4 -23
  160. package/dist/elements/Nav/index.js.map +1 -1
  161. package/dist/elements/NavGroup/index.d.ts.map +1 -1
  162. package/dist/elements/NavGroup/index.js +21 -29
  163. package/dist/elements/NavGroup/index.js.map +1 -1
  164. package/dist/elements/Pill/index.css +1 -1
  165. package/dist/elements/PillSelector/index.css +1 -1
  166. package/dist/elements/Popup/PopupButtonList/index.css +43 -4
  167. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  168. package/dist/elements/Popup/PopupButtonList/index.js +1 -0
  169. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  170. package/dist/elements/Popup/index.d.ts +7 -0
  171. package/dist/elements/Popup/index.d.ts.map +1 -1
  172. package/dist/elements/Popup/index.js +125 -59
  173. package/dist/elements/Popup/index.js.map +1 -1
  174. package/dist/elements/ReactSelect/index.css +53 -52
  175. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  176. package/dist/elements/ReactSelect/index.js +80 -12
  177. package/dist/elements/ReactSelect/index.js.map +1 -1
  178. package/dist/elements/ReactSelect/types.d.ts +6 -1
  179. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  180. package/dist/elements/ReactSelect/types.js.map +1 -1
  181. package/dist/elements/RenderTitle/index.css +10 -0
  182. package/dist/elements/RenderTitle/index.d.ts +5 -0
  183. package/dist/elements/RenderTitle/index.d.ts.map +1 -1
  184. package/dist/elements/RenderTitle/index.js +52 -27
  185. package/dist/elements/RenderTitle/index.js.map +1 -1
  186. package/dist/elements/ShimmerEffect/index.css +40 -0
  187. package/dist/elements/ShimmerEffect/index.d.ts +1 -1
  188. package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
  189. package/dist/elements/ShimmerEffect/index.js +1 -1
  190. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  191. package/dist/elements/Spinner/index.css +16 -0
  192. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  193. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +1 -2
  194. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  195. package/dist/elements/Table/OrderableRow.d.ts.map +1 -1
  196. package/dist/elements/Table/OrderableRow.js +1 -1
  197. package/dist/elements/Table/OrderableRow.js.map +1 -1
  198. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  199. package/dist/elements/Table/RelationshipProvider/index.js +1 -0
  200. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  201. package/dist/elements/Table/index.css +10 -5
  202. package/dist/elements/TimezonePicker/index.css +73 -24
  203. package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
  204. package/dist/elements/TimezonePicker/index.js +31 -4
  205. package/dist/elements/TimezonePicker/index.js.map +1 -1
  206. package/dist/elements/Tooltip/index.css +20 -4
  207. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  208. package/dist/elements/Tooltip/index.js +71 -3
  209. package/dist/elements/Tooltip/index.js.map +1 -1
  210. package/dist/elements/UserMenu/LanguageMenu/index.d.ts +6 -0
  211. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -0
  212. package/dist/elements/UserMenu/LanguageMenu/index.js +133 -0
  213. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -0
  214. package/dist/elements/UserMenu/SettingsMenu/index.d.ts +11 -0
  215. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -0
  216. package/dist/elements/UserMenu/SettingsMenu/index.js +114 -0
  217. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -0
  218. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts +6 -0
  219. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -0
  220. package/dist/elements/UserMenu/SubMenuHeader/index.js +34 -0
  221. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -0
  222. package/dist/elements/UserMenu/ThemeMenu/index.d.ts +6 -0
  223. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -0
  224. package/dist/elements/UserMenu/ThemeMenu/index.js +145 -0
  225. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -0
  226. package/dist/elements/UserMenu/index.css +80 -0
  227. package/dist/elements/UserMenu/index.d.ts +9 -0
  228. package/dist/elements/UserMenu/index.d.ts.map +1 -0
  229. package/dist/elements/UserMenu/index.js +201 -0
  230. package/dist/elements/UserMenu/index.js.map +1 -0
  231. package/dist/elements/WhereBuilder/Condition/Number/index.d.ts +0 -1
  232. package/dist/elements/WhereBuilder/Condition/Number/index.d.ts.map +1 -1
  233. package/dist/elements/WhereBuilder/Condition/Number/index.js +26 -40
  234. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  235. package/dist/elements/WhereBuilder/Condition/Relationship/index.css +2 -2
  236. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts +0 -1
  237. package/dist/elements/WhereBuilder/Condition/Text/index.d.ts.map +1 -1
  238. package/dist/elements/WhereBuilder/Condition/Text/index.js +24 -35
  239. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  240. package/dist/elements/WhereBuilder/Condition/index.css +111 -0
  241. package/dist/elements/WhereBuilder/Condition/index.d.ts +5 -2
  242. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  243. package/dist/elements/WhereBuilder/Condition/index.js +41 -21
  244. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  245. package/dist/elements/WhereBuilder/index.css +74 -0
  246. package/dist/elements/WhereBuilder/index.d.ts +1 -1
  247. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  248. package/dist/elements/WhereBuilder/index.js +138 -92
  249. package/dist/elements/WhereBuilder/index.js.map +1 -1
  250. package/dist/elements/WhereBuilder/types.d.ts +7 -0
  251. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  252. package/dist/elements/WhereBuilder/types.js.map +1 -1
  253. package/dist/exports/client/{DatePicker-XEMRSUWJ.js → CodeEditor-T3624SG3.js} +2 -2
  254. package/dist/exports/client/{CodeEditor-A66UUZBE.js → DatePicker-6KF52Z3G.js} +2 -2
  255. package/dist/exports/client/{chunk-I3GONEJJ.js → chunk-7T64ULOM.js} +2 -2
  256. package/dist/exports/client/{chunk-I3GONEJJ.js.map → chunk-7T64ULOM.js.map} +3 -3
  257. package/dist/exports/client/chunk-DMFYTMX6.js +27 -0
  258. package/dist/exports/client/chunk-DMFYTMX6.js.map +7 -0
  259. package/dist/exports/client/index.d.ts +41 -6
  260. package/dist/exports/client/index.d.ts.map +1 -1
  261. package/dist/exports/client/index.js +26 -26
  262. package/dist/exports/client/index.js.map +4 -4
  263. package/dist/exports/shared/index.js +2 -2
  264. package/dist/exports/shared/index.js.map +2 -2
  265. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.css +1 -49
  266. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.d.ts.map +1 -1
  267. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +27 -20
  268. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  269. package/dist/fields/Blocks/BlockSelector/index.css +17 -3
  270. package/dist/fields/Blocks/BlockSelector/index.js +1 -1
  271. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  272. package/dist/fields/Blocks/index.d.ts.map +1 -1
  273. package/dist/fields/Blocks/index.js +6 -11
  274. package/dist/fields/Blocks/index.js.map +1 -1
  275. package/dist/fields/Group/index.css +1 -1
  276. package/dist/fields/Join/index.js +1 -1
  277. package/dist/fields/Join/index.js.map +1 -1
  278. package/dist/fields/Relationship/select-components/MultiValueLabel/index.css +3 -3
  279. package/dist/fields/Row/index.d.ts +1 -1
  280. package/dist/forms/RenderFields/RenderField.js +2 -1
  281. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  282. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +1 -1
  283. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  284. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +1 -1
  285. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  286. package/dist/forms/fieldSchemasToFormState/renderField.js +1 -1
  287. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  288. package/dist/icons/Dots/index.css +4 -4
  289. package/dist/icons/InteractionEnter/index.css +5 -0
  290. package/dist/icons/InteractionEnter/index.d.ts +11 -0
  291. package/dist/icons/InteractionEnter/index.d.ts.map +1 -0
  292. package/dist/icons/InteractionEnter/index.js +25 -0
  293. package/dist/icons/InteractionEnter/index.js.map +1 -0
  294. package/dist/icons/LogOut/index.js +2 -2
  295. package/dist/icons/LogOut/index.js.map +1 -1
  296. package/dist/icons/VariableColor/index.css +5 -0
  297. package/dist/icons/VariableColor/index.d.ts +7 -0
  298. package/dist/icons/VariableColor/index.d.ts.map +1 -0
  299. package/dist/icons/VariableColor/index.js +23 -0
  300. package/dist/icons/VariableColor/index.js.map +1 -0
  301. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  302. package/dist/providers/ListQuery/index.js +23 -8
  303. package/dist/providers/ListQuery/index.js.map +1 -1
  304. package/dist/providers/ListQuery/types.d.ts +2 -0
  305. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  306. package/dist/providers/ListQuery/types.js.map +1 -1
  307. package/dist/providers/Root/index.d.ts.map +1 -1
  308. package/dist/providers/Root/index.js +27 -33
  309. package/dist/providers/Root/index.js.map +1 -1
  310. package/dist/providers/RouteTransition/ProgressBar/index.css +23 -0
  311. package/dist/providers/RouteTransition/ProgressBar/index.d.ts +1 -1
  312. package/dist/providers/RouteTransition/ProgressBar/index.d.ts.map +1 -1
  313. package/dist/providers/RouteTransition/ProgressBar/index.js +1 -1
  314. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  315. package/dist/providers/TableColumns/RenderDefaultCell/index.css +8 -10
  316. package/dist/providers/Theme/index.d.ts +17 -2
  317. package/dist/providers/Theme/index.d.ts.map +1 -1
  318. package/dist/providers/Theme/index.js +126 -75
  319. package/dist/providers/Theme/index.js.map +1 -1
  320. package/dist/scss/app.scss +1 -1
  321. package/dist/scss/styles.scss +4 -4
  322. package/dist/scss/toastify.scss +2 -2
  323. package/dist/styles.css +1 -1
  324. package/dist/templates/Default/index.d.ts.map +1 -1
  325. package/dist/templates/Default/index.js +9 -1
  326. package/dist/templates/Default/index.js.map +1 -1
  327. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +1 -2
  328. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  329. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +1 -2
  330. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  331. package/dist/utilities/copyDataFromLocale.js +1 -1
  332. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  333. package/dist/utilities/formatDocTitle/formatDateTitle.d.ts.map +1 -1
  334. package/dist/utilities/formatDocTitle/formatDateTitle.js +1 -1
  335. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  336. package/dist/utilities/formatMetadata.d.ts +5 -0
  337. package/dist/utilities/formatMetadata.d.ts.map +1 -0
  338. package/dist/utilities/formatMetadata.js +108 -0
  339. package/dist/utilities/formatMetadata.js.map +1 -0
  340. package/dist/utilities/formatMetadata.spec.js +83 -0
  341. package/dist/utilities/formatMetadata.spec.js.map +1 -0
  342. package/dist/utilities/getDocPreferences.d.ts +11 -0
  343. package/dist/utilities/getDocPreferences.d.ts.map +1 -0
  344. package/dist/utilities/getDocPreferences.js +45 -0
  345. package/dist/utilities/getDocPreferences.js.map +1 -0
  346. package/dist/utilities/getDocumentData.d.ts +14 -0
  347. package/dist/utilities/getDocumentData.d.ts.map +1 -0
  348. package/dist/utilities/getDocumentData.js +60 -0
  349. package/dist/utilities/getDocumentData.js.map +1 -0
  350. package/dist/utilities/getDocumentPermissions.d.ts +18 -0
  351. package/dist/utilities/getDocumentPermissions.d.ts.map +1 -0
  352. package/dist/utilities/getDocumentPermissions.js +125 -0
  353. package/dist/utilities/getDocumentPermissions.js.map +1 -0
  354. package/dist/utilities/getHierarchyAncestry.d.ts +24 -0
  355. package/dist/utilities/getHierarchyAncestry.d.ts.map +1 -0
  356. package/dist/utilities/getHierarchyAncestry.js +103 -0
  357. package/dist/utilities/getHierarchyAncestry.js.map +1 -0
  358. package/dist/utilities/getIsLocked.d.ts +16 -0
  359. package/dist/utilities/getIsLocked.d.ts.map +1 -0
  360. package/dist/utilities/getIsLocked.js +79 -0
  361. package/dist/utilities/getIsLocked.js.map +1 -0
  362. package/dist/utilities/getRouteWithoutAdmin.d.ts +5 -0
  363. package/dist/utilities/getRouteWithoutAdmin.d.ts.map +1 -0
  364. package/dist/utilities/getRouteWithoutAdmin.js +7 -0
  365. package/dist/utilities/getRouteWithoutAdmin.js.map +1 -0
  366. package/dist/utilities/getVersions.d.ts +26 -0
  367. package/dist/utilities/getVersions.d.ts.map +1 -0
  368. package/dist/utilities/getVersions.js +235 -0
  369. package/dist/utilities/getVersions.js.map +1 -0
  370. package/dist/utilities/handleAuthRedirect.d.ts +23 -0
  371. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -0
  372. package/dist/utilities/handleAuthRedirect.js +42 -0
  373. package/dist/utilities/handleAuthRedirect.js.map +1 -0
  374. package/dist/utilities/handleServerFunctions.d.ts +11 -0
  375. package/dist/utilities/handleServerFunctions.d.ts.map +1 -0
  376. package/dist/utilities/handleServerFunctions.js +72 -0
  377. package/dist/utilities/handleServerFunctions.js.map +1 -0
  378. package/dist/utilities/isCustomAdminView.d.ts +8 -0
  379. package/dist/utilities/isCustomAdminView.d.ts.map +1 -0
  380. package/dist/utilities/isCustomAdminView.js +22 -0
  381. package/dist/utilities/isCustomAdminView.js.map +1 -0
  382. package/dist/utilities/isCustomAdminView.spec.js +90 -0
  383. package/dist/utilities/isCustomAdminView.spec.js.map +1 -0
  384. package/dist/utilities/isPathMatchingRoute.d.ts +8 -0
  385. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -0
  386. package/dist/utilities/isPathMatchingRoute.js +30 -0
  387. package/dist/utilities/isPathMatchingRoute.js.map +1 -0
  388. package/dist/utilities/isPathMatchingRoute.spec.js +178 -0
  389. package/dist/utilities/isPathMatchingRoute.spec.js.map +1 -0
  390. package/dist/utilities/isPublicAdminRoute.d.ts +7 -0
  391. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -0
  392. package/dist/utilities/isPublicAdminRoute.js +24 -0
  393. package/dist/utilities/isPublicAdminRoute.js.map +1 -0
  394. package/dist/utilities/renderTable.js +1 -1
  395. package/dist/utilities/renderTable.js.map +1 -1
  396. package/dist/utilities/slugify.d.ts +15 -0
  397. package/dist/utilities/slugify.d.ts.map +1 -0
  398. package/dist/utilities/slugify.js +47 -0
  399. package/dist/utilities/slugify.js.map +1 -0
  400. package/dist/utilities/switchLanguageHandler.d.ts +13 -0
  401. package/dist/utilities/switchLanguageHandler.d.ts.map +1 -0
  402. package/dist/utilities/switchLanguageHandler.js +16 -0
  403. package/dist/utilities/switchLanguageHandler.js.map +1 -0
  404. package/dist/utilities/traverseForLocalizedFields.d.ts.map +1 -1
  405. package/dist/utilities/traverseForLocalizedFields.js +3 -0
  406. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  407. package/dist/views/API/LocaleSelector/index.d.ts +9 -0
  408. package/dist/views/API/LocaleSelector/index.d.ts.map +1 -0
  409. package/dist/views/API/LocaleSelector/index.js +45 -0
  410. package/dist/views/API/LocaleSelector/index.js.map +1 -0
  411. package/dist/views/API/generateAPIViewMetadata.d.ts +19 -0
  412. package/dist/views/API/generateAPIViewMetadata.d.ts.map +1 -0
  413. package/dist/views/API/generateAPIViewMetadata.js +29 -0
  414. package/dist/views/API/generateAPIViewMetadata.js.map +1 -0
  415. package/dist/views/API/index.client.d.ts +4 -0
  416. package/dist/views/API/index.client.d.ts.map +1 -0
  417. package/dist/views/API/index.client.js +263 -0
  418. package/dist/views/API/index.client.js.map +1 -0
  419. package/dist/views/API/index.css +205 -0
  420. package/dist/views/API/index.d.ts +4 -0
  421. package/dist/views/API/index.d.ts.map +1 -0
  422. package/dist/views/API/index.js +8 -0
  423. package/dist/views/API/index.js.map +1 -0
  424. package/dist/views/Account/ResetPreferences/index.d.ts +5 -0
  425. package/dist/views/Account/ResetPreferences/index.d.ts.map +1 -0
  426. package/dist/views/Account/ResetPreferences/index.js +116 -0
  427. package/dist/views/Account/ResetPreferences/index.js.map +1 -0
  428. package/dist/views/Account/Settings/LanguageSelector.d.ts +6 -0
  429. package/dist/views/Account/Settings/LanguageSelector.d.ts.map +1 -0
  430. package/dist/views/Account/Settings/LanguageSelector.js +53 -0
  431. package/dist/views/Account/Settings/LanguageSelector.js.map +1 -0
  432. package/dist/views/Account/Settings/index.css +43 -0
  433. package/dist/views/Account/Settings/index.d.ts +13 -0
  434. package/dist/views/Account/Settings/index.d.ts.map +1 -0
  435. package/dist/views/Account/Settings/index.js +33 -0
  436. package/dist/views/Account/Settings/index.js.map +1 -0
  437. package/dist/views/Account/ToggleHighContrast/index.d.ts +3 -0
  438. package/dist/views/Account/ToggleHighContrast/index.d.ts.map +1 -0
  439. package/dist/views/Account/ToggleHighContrast/index.js +47 -0
  440. package/dist/views/Account/ToggleHighContrast/index.js.map +1 -0
  441. package/dist/views/Account/ToggleTheme/index.d.ts +3 -0
  442. package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -0
  443. package/dist/views/Account/ToggleTheme/index.js +46 -0
  444. package/dist/views/Account/ToggleTheme/index.js.map +1 -0
  445. package/dist/views/Account/index.client.d.ts +3 -0
  446. package/dist/views/Account/index.client.d.ts.map +1 -0
  447. package/dist/views/Account/index.client.js +38 -0
  448. package/dist/views/Account/index.client.js.map +1 -0
  449. package/dist/views/Account/index.d.ts +4 -0
  450. package/dist/views/Account/index.d.ts.map +1 -0
  451. package/dist/views/Account/index.js +181 -0
  452. package/dist/views/Account/index.js.map +1 -0
  453. package/dist/views/Account/metadata.d.ts +3 -0
  454. package/dist/views/Account/metadata.d.ts.map +1 -0
  455. package/dist/views/Account/metadata.js +14 -0
  456. package/dist/views/Account/metadata.js.map +1 -0
  457. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.d.ts +11 -0
  458. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.d.ts.map +1 -0
  459. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.js +25 -0
  460. package/dist/views/CollectionTrash/generateCollectionTrashMetadata.js.map +1 -0
  461. package/dist/views/CollectionTrash/index.d.ts +18 -0
  462. package/dist/views/CollectionTrash/index.d.ts.map +1 -0
  463. package/dist/views/CollectionTrash/index.js +20 -0
  464. package/dist/views/CollectionTrash/index.js.map +1 -0
  465. package/dist/views/CreateFirstUser/index.client.d.ts +10 -0
  466. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -0
  467. package/dist/views/CreateFirstUser/index.client.js +128 -0
  468. package/dist/views/CreateFirstUser/index.client.js.map +1 -0
  469. package/dist/views/CreateFirstUser/index.css +69 -0
  470. package/dist/views/CreateFirstUser/index.d.ts +5 -0
  471. package/dist/views/CreateFirstUser/index.d.ts.map +1 -0
  472. package/dist/views/CreateFirstUser/index.js +94 -0
  473. package/dist/views/CreateFirstUser/index.js.map +1 -0
  474. package/dist/views/CreateFirstUser/metadata.d.ts +3 -0
  475. package/dist/views/CreateFirstUser/metadata.d.ts.map +1 -0
  476. package/dist/views/CreateFirstUser/metadata.js +14 -0
  477. package/dist/views/CreateFirstUser/metadata.js.map +1 -0
  478. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts +19 -0
  479. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -0
  480. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +216 -0
  481. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -0
  482. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts +11 -0
  483. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.d.ts.map +1 -0
  484. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js +137 -0
  485. package/dist/views/Dashboard/Default/ModularDashboard/WidgetConfigDrawer.js.map +1 -0
  486. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts +8 -0
  487. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -0
  488. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +81 -0
  489. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -0
  490. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts +22 -0
  491. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -0
  492. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +444 -0
  493. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -0
  494. package/dist/views/Dashboard/Default/ModularDashboard/index.css +299 -0
  495. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts +5 -0
  496. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts.map +1 -0
  497. package/dist/views/Dashboard/Default/ModularDashboard/index.js +74 -0
  498. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -0
  499. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.d.ts +15 -0
  500. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.d.ts.map +1 -0
  501. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js +107 -0
  502. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -0
  503. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.d.ts +12 -0
  504. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.d.ts.map +1 -0
  505. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +65 -0
  506. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -0
  507. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.d.ts +21 -0
  508. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.d.ts.map +1 -0
  509. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +80 -0
  510. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -0
  511. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts +21 -0
  512. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -0
  513. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +194 -0
  514. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -0
  515. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.d.ts +7 -0
  516. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.d.ts.map +1 -0
  517. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js +38 -0
  518. package/dist/views/Dashboard/Default/ModularDashboard/utils/collisionDetection.js.map +1 -0
  519. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.d.ts +4 -0
  520. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.d.ts.map +1 -0
  521. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.js +21 -0
  522. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromConfig.js.map +1 -0
  523. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts +4 -0
  524. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.d.ts.map +1 -0
  525. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js +10 -0
  526. package/dist/views/Dashboard/Default/ModularDashboard/utils/getItemsFromPreferences.js.map +1 -0
  527. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.d.ts +23 -0
  528. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.d.ts.map +1 -0
  529. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js +103 -0
  530. package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js.map +1 -0
  531. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.d.ts +2 -0
  532. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.d.ts.map +1 -0
  533. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +269 -0
  534. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -0
  535. package/dist/views/Dashboard/Default/index.d.ts +21 -0
  536. package/dist/views/Dashboard/Default/index.d.ts.map +1 -0
  537. package/dist/views/Dashboard/Default/index.js +56 -0
  538. package/dist/views/Dashboard/Default/index.js.map +1 -0
  539. package/dist/views/Dashboard/index.d.ts +6 -0
  540. package/dist/views/Dashboard/index.d.ts.map +1 -0
  541. package/dist/views/Dashboard/index.js +55 -0
  542. package/dist/views/Dashboard/index.js.map +1 -0
  543. package/dist/views/Dashboard/metadata.d.ts +3 -0
  544. package/dist/views/Dashboard/metadata.d.ts.map +1 -0
  545. package/dist/views/Dashboard/metadata.js +16 -0
  546. package/dist/views/Dashboard/metadata.js.map +1 -0
  547. package/dist/views/Dashboard/serverFunctions.d.ts +5 -0
  548. package/dist/views/Dashboard/serverFunctions.d.ts.map +1 -0
  549. package/dist/views/Dashboard/serverFunctions.js +3 -0
  550. package/dist/views/Dashboard/serverFunctions.js.map +1 -0
  551. package/dist/views/Document/generateEditViewMetadata.d.ts +6 -0
  552. package/dist/views/Document/generateEditViewMetadata.d.ts.map +1 -0
  553. package/dist/views/Document/generateEditViewMetadata.js +52 -0
  554. package/dist/views/Document/generateEditViewMetadata.js.map +1 -0
  555. package/dist/views/Document/getCustomDocumentViewByKey.d.ts +3 -0
  556. package/dist/views/Document/getCustomDocumentViewByKey.d.ts.map +1 -0
  557. package/dist/views/Document/getCustomDocumentViewByKey.js +4 -0
  558. package/dist/views/Document/getCustomDocumentViewByKey.js.map +1 -0
  559. package/dist/views/Document/getCustomViewByRoute.d.ts +10 -0
  560. package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -0
  561. package/dist/views/Document/getCustomViewByRoute.js +35 -0
  562. package/dist/views/Document/getCustomViewByRoute.js.map +1 -0
  563. package/dist/views/Document/getDocumentView.d.ts +18 -0
  564. package/dist/views/Document/getDocumentView.d.ts.map +1 -0
  565. package/dist/views/Document/getDocumentView.js +306 -0
  566. package/dist/views/Document/getDocumentView.js.map +1 -0
  567. package/dist/views/Document/getMetaBySegment.d.ts +20 -0
  568. package/dist/views/Document/getMetaBySegment.d.ts.map +1 -0
  569. package/dist/views/Document/getMetaBySegment.js +136 -0
  570. package/dist/views/Document/getMetaBySegment.js.map +1 -0
  571. package/dist/views/Document/handleServerFunction.d.ts +3 -0
  572. package/dist/views/Document/handleServerFunction.d.ts.map +1 -0
  573. package/dist/views/Document/handleServerFunction.js +134 -0
  574. package/dist/views/Document/handleServerFunction.js.map +1 -0
  575. package/dist/views/Document/index.d.ts +24 -0
  576. package/dist/views/Document/index.d.ts.map +1 -0
  577. package/dist/views/Document/index.js +401 -0
  578. package/dist/views/Document/index.js.map +1 -0
  579. package/dist/views/Document/renderDocumentSlots.d.ts +15 -0
  580. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -0
  581. package/dist/views/Document/renderDocumentSlots.js +179 -0
  582. package/dist/views/Document/renderDocumentSlots.js.map +1 -0
  583. package/dist/views/Edit/index.css +47 -0
  584. package/dist/views/Edit/index.d.ts +1 -1
  585. package/dist/views/Edit/index.d.ts.map +1 -1
  586. package/dist/views/Edit/index.js +64 -49
  587. package/dist/views/Edit/index.js.map +1 -1
  588. package/dist/views/ForgotPassword/ForgotPasswordForm/index.css +24 -0
  589. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts +4 -0
  590. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -0
  591. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +193 -0
  592. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -0
  593. package/dist/views/ForgotPassword/index.css +12 -0
  594. package/dist/views/ForgotPassword/index.d.ts +6 -0
  595. package/dist/views/ForgotPassword/index.d.ts.map +1 -0
  596. package/dist/views/ForgotPassword/index.js +80 -0
  597. package/dist/views/ForgotPassword/index.js.map +1 -0
  598. package/dist/views/ForgotPassword/metadata.d.ts +3 -0
  599. package/dist/views/ForgotPassword/metadata.d.ts.map +1 -0
  600. package/dist/views/ForgotPassword/metadata.js +14 -0
  601. package/dist/views/ForgotPassword/metadata.js.map +1 -0
  602. package/dist/views/Hierarchy/index.d.ts +18 -0
  603. package/dist/views/Hierarchy/index.d.ts.map +1 -0
  604. package/dist/views/Hierarchy/index.js +19 -0
  605. package/dist/views/Hierarchy/index.js.map +1 -0
  606. package/dist/views/HierarchyList/DocumentListSelection/index.js +4 -4
  607. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  608. package/dist/views/List/ListHeader/index.css +23 -1
  609. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  610. package/dist/views/List/ListHeader/index.js +0 -1
  611. package/dist/views/List/ListHeader/index.js.map +1 -1
  612. package/dist/views/List/ListSelection/index.d.ts.map +1 -1
  613. package/dist/views/List/ListSelection/index.js +80 -29
  614. package/dist/views/List/ListSelection/index.js.map +1 -1
  615. package/dist/views/List/createSerializableValue.d.ts +2 -0
  616. package/dist/views/List/createSerializableValue.d.ts.map +1 -0
  617. package/dist/views/List/createSerializableValue.js +14 -0
  618. package/dist/views/List/createSerializableValue.js.map +1 -0
  619. package/dist/views/List/enrichDocsWithVersionStatus.d.ts +14 -0
  620. package/dist/views/List/enrichDocsWithVersionStatus.d.ts.map +1 -0
  621. package/dist/views/List/enrichDocsWithVersionStatus.js +96 -0
  622. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -0
  623. package/dist/views/List/extractRelationshipDisplayValue.d.ts +3 -0
  624. package/dist/views/List/extractRelationshipDisplayValue.d.ts.map +1 -0
  625. package/dist/views/List/extractRelationshipDisplayValue.js +17 -0
  626. package/dist/views/List/extractRelationshipDisplayValue.js.map +1 -0
  627. package/dist/views/List/extractValueOrRelationshipID.d.ts +2 -0
  628. package/dist/views/List/extractValueOrRelationshipID.d.ts.map +1 -0
  629. package/dist/views/List/extractValueOrRelationshipID.js +19 -0
  630. package/dist/views/List/extractValueOrRelationshipID.js.map +1 -0
  631. package/dist/views/List/generateListViewMetadata.d.ts +5 -0
  632. package/dist/views/List/generateListViewMetadata.d.ts.map +1 -0
  633. package/dist/views/List/generateListViewMetadata.js +24 -0
  634. package/dist/views/List/generateListViewMetadata.js.map +1 -0
  635. package/dist/views/List/handleGroupBy.d.ts +24 -0
  636. package/dist/views/List/handleGroupBy.d.ts.map +1 -0
  637. package/dist/views/List/handleGroupBy.js +160 -0
  638. package/dist/views/List/handleGroupBy.js.map +1 -0
  639. package/dist/views/List/handleHierarchy.d.ts +18 -0
  640. package/dist/views/List/handleHierarchy.d.ts.map +1 -0
  641. package/dist/views/List/handleHierarchy.js +259 -0
  642. package/dist/views/List/handleHierarchy.js.map +1 -0
  643. package/dist/views/List/handleServerFunction.d.ts +4 -0
  644. package/dist/views/List/handleServerFunction.d.ts.map +1 -0
  645. package/dist/views/List/handleServerFunction.js +131 -0
  646. package/dist/views/List/handleServerFunction.js.map +1 -0
  647. package/dist/views/List/index.client.d.ts +5 -0
  648. package/dist/views/List/index.client.d.ts.map +1 -0
  649. package/dist/views/List/index.client.js +306 -0
  650. package/dist/views/List/index.client.js.map +1 -0
  651. package/dist/views/List/index.css +19 -0
  652. package/dist/views/List/index.d.ts +40 -2
  653. package/dist/views/List/index.d.ts.map +1 -1
  654. package/dist/views/List/index.js +421 -264
  655. package/dist/views/List/index.js.map +1 -1
  656. package/dist/views/List/renderListViewSlots.d.ts +12 -0
  657. package/dist/views/List/renderListViewSlots.d.ts.map +1 -0
  658. package/dist/views/List/renderListViewSlots.js +81 -0
  659. package/dist/views/List/renderListViewSlots.js.map +1 -0
  660. package/dist/views/List/resolveAllFilterOptions.d.ts +8 -0
  661. package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -0
  662. package/dist/views/List/resolveAllFilterOptions.js +49 -0
  663. package/dist/views/List/resolveAllFilterOptions.js.map +1 -0
  664. package/dist/views/List/transformColumnsToSelect.d.ts +3 -0
  665. package/dist/views/List/transformColumnsToSelect.d.ts.map +1 -0
  666. package/dist/views/List/transformColumnsToSelect.js +11 -0
  667. package/dist/views/List/transformColumnsToSelect.js.map +1 -0
  668. package/dist/views/Login/LoginField/index.d.ts +9 -0
  669. package/dist/views/Login/LoginField/index.d.ts.map +1 -0
  670. package/dist/views/Login/LoginField/index.js +100 -0
  671. package/dist/views/Login/LoginField/index.js.map +1 -0
  672. package/dist/views/Login/LoginForm/index.css +48 -0
  673. package/dist/views/Login/LoginForm/index.d.ts +11 -0
  674. package/dist/views/Login/LoginForm/index.d.ts.map +1 -0
  675. package/dist/views/Login/LoginForm/index.js +188 -0
  676. package/dist/views/Login/LoginForm/index.js.map +1 -0
  677. package/dist/views/Login/index.css +8 -0
  678. package/dist/views/Login/index.d.ts +6 -0
  679. package/dist/views/Login/index.d.ts.map +1 -0
  680. package/dist/views/Login/index.js +99 -0
  681. package/dist/views/Login/index.js.map +1 -0
  682. package/dist/views/Login/metadata.d.ts +3 -0
  683. package/dist/views/Login/metadata.d.ts.map +1 -0
  684. package/dist/views/Login/metadata.js +14 -0
  685. package/dist/views/Login/metadata.js.map +1 -0
  686. package/dist/views/Logout/LogoutClient.d.ts +18 -0
  687. package/dist/views/Logout/LogoutClient.d.ts.map +1 -0
  688. package/dist/views/Logout/LogoutClient.js +145 -0
  689. package/dist/views/Logout/LogoutClient.js.map +1 -0
  690. package/dist/views/Logout/index.css +18 -0
  691. package/dist/views/Logout/index.d.ts +7 -0
  692. package/dist/views/Logout/index.d.ts.map +1 -0
  693. package/dist/views/Logout/index.js +32 -0
  694. package/dist/views/Logout/index.js.map +1 -0
  695. package/dist/views/Logout/metadata.d.ts +3 -0
  696. package/dist/views/Logout/metadata.d.ts.map +1 -0
  697. package/dist/views/Logout/metadata.js +13 -0
  698. package/dist/views/Logout/metadata.js.map +1 -0
  699. package/dist/views/NotFound/index.client.d.ts +4 -0
  700. package/dist/views/NotFound/index.client.d.ts.map +1 -0
  701. package/dist/views/NotFound/index.client.js +75 -0
  702. package/dist/views/NotFound/index.client.js.map +1 -0
  703. package/dist/views/NotFound/index.css +47 -0
  704. package/dist/views/NotFound/index.d.ts +6 -0
  705. package/dist/views/NotFound/index.d.ts.map +1 -0
  706. package/dist/views/NotFound/index.js +9 -0
  707. package/dist/views/NotFound/index.js.map +1 -0
  708. package/dist/views/NotFound/metadata.d.ts +3 -0
  709. package/dist/views/NotFound/metadata.d.ts.map +1 -0
  710. package/dist/views/NotFound/metadata.js +13 -0
  711. package/dist/views/NotFound/metadata.js.map +1 -0
  712. package/dist/views/NotFound/page.d.ts +23 -0
  713. package/dist/views/NotFound/page.d.ts.map +1 -0
  714. package/dist/views/NotFound/page.js +90 -0
  715. package/dist/views/NotFound/page.js.map +1 -0
  716. package/dist/views/ResetPassword/ResetPasswordForm/index.css +24 -0
  717. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +8 -0
  718. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
  719. package/dist/views/ResetPassword/ResetPasswordForm/index.js +130 -0
  720. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
  721. package/dist/views/ResetPassword/index.css +18 -0
  722. package/dist/views/ResetPassword/index.d.ts +6 -0
  723. package/dist/views/ResetPassword/index.d.ts.map +1 -0
  724. package/dist/views/ResetPassword/index.js +89 -0
  725. package/dist/views/ResetPassword/index.js.map +1 -0
  726. package/dist/views/ResetPassword/metadata.d.ts +3 -0
  727. package/dist/views/ResetPassword/metadata.d.ts.map +1 -0
  728. package/dist/views/ResetPassword/metadata.js +14 -0
  729. package/dist/views/ResetPassword/metadata.js.map +1 -0
  730. package/dist/views/Root/adminViews.d.ts +9 -0
  731. package/dist/views/Root/adminViews.d.ts.map +1 -0
  732. package/dist/views/Root/adminViews.js +83 -0
  733. package/dist/views/Root/adminViews.js.map +1 -0
  734. package/dist/views/Root/attachViewActions.d.ts +10 -0
  735. package/dist/views/Root/attachViewActions.d.ts.map +1 -0
  736. package/dist/views/Root/attachViewActions.js +27 -0
  737. package/dist/views/Root/attachViewActions.js.map +1 -0
  738. package/dist/views/Root/generateCustomViewMetadata.d.ts +10 -0
  739. package/dist/views/Root/generateCustomViewMetadata.d.ts.map +1 -0
  740. package/dist/views/Root/generateCustomViewMetadata.js +25 -0
  741. package/dist/views/Root/generateCustomViewMetadata.js.map +1 -0
  742. package/dist/views/Root/generatePageMetadata.d.ts +19 -0
  743. package/dist/views/Root/generatePageMetadata.d.ts.map +1 -0
  744. package/dist/views/Root/generatePageMetadata.js +143 -0
  745. package/dist/views/Root/generatePageMetadata.js.map +1 -0
  746. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts +12 -0
  747. package/dist/views/Root/getCustomCollectionViewByRoute.d.ts.map +1 -0
  748. package/dist/views/Root/getCustomCollectionViewByRoute.js +48 -0
  749. package/dist/views/Root/getCustomCollectionViewByRoute.js.map +1 -0
  750. package/dist/views/Root/getCustomCollectionViewByRoute.spec.js +168 -0
  751. package/dist/views/Root/getCustomCollectionViewByRoute.spec.js.map +1 -0
  752. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +12 -0
  753. package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -0
  754. package/dist/views/Root/getCustomGlobalViewByRoute.js +46 -0
  755. package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -0
  756. package/dist/views/Root/getCustomViewByKey.d.ts +10 -0
  757. package/dist/views/Root/getCustomViewByKey.d.ts.map +1 -0
  758. package/dist/views/Root/getCustomViewByKey.js +16 -0
  759. package/dist/views/Root/getCustomViewByKey.js.map +1 -0
  760. package/dist/views/Root/getCustomViewByRoute.d.ts +16 -0
  761. package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -0
  762. package/dist/views/Root/getCustomViewByRoute.js +49 -0
  763. package/dist/views/Root/getCustomViewByRoute.js.map +1 -0
  764. package/dist/views/Root/getDocumentViewInfo.d.ts +6 -0
  765. package/dist/views/Root/getDocumentViewInfo.d.ts.map +1 -0
  766. package/dist/views/Root/getDocumentViewInfo.js +28 -0
  767. package/dist/views/Root/getDocumentViewInfo.js.map +1 -0
  768. package/dist/views/Root/getRouteData.d.ts +41 -0
  769. package/dist/views/Root/getRouteData.d.ts.map +1 -0
  770. package/dist/views/Root/getRouteData.js +345 -0
  771. package/dist/views/Root/getRouteData.js.map +1 -0
  772. package/dist/views/Root/index.d.ts +28 -0
  773. package/dist/views/Root/index.d.ts.map +1 -0
  774. package/dist/views/Root/index.js +304 -0
  775. package/dist/views/Root/index.js.map +1 -0
  776. package/dist/views/Unauthorized/index.css +44 -0
  777. package/dist/views/Unauthorized/index.d.ts +6 -0
  778. package/dist/views/Unauthorized/index.d.ts.map +1 -0
  779. package/dist/views/Unauthorized/index.js +34 -0
  780. package/dist/views/Unauthorized/index.js.map +1 -0
  781. package/dist/views/Unauthorized/metadata.d.ts +3 -0
  782. package/dist/views/Unauthorized/metadata.d.ts.map +1 -0
  783. package/dist/views/Unauthorized/metadata.js +14 -0
  784. package/dist/views/Unauthorized/metadata.js.map +1 -0
  785. package/dist/views/Verify/index.client.d.ts +11 -0
  786. package/dist/views/Verify/index.client.d.ts.map +1 -0
  787. package/dist/views/Verify/index.client.js +132 -0
  788. package/dist/views/Verify/index.client.js.map +1 -0
  789. package/dist/views/Verify/index.css +38 -0
  790. package/dist/views/Verify/index.d.ts +6 -0
  791. package/dist/views/Verify/index.d.ts.map +1 -0
  792. package/dist/views/Verify/index.js +68 -0
  793. package/dist/views/Verify/index.js.map +1 -0
  794. package/dist/views/Verify/metadata.d.ts +3 -0
  795. package/dist/views/Verify/metadata.d.ts.map +1 -0
  796. package/dist/views/Verify/metadata.js +14 -0
  797. package/dist/views/Verify/metadata.js.map +1 -0
  798. package/dist/views/Version/Default/SelectedLocalesContext.d.ts +7 -0
  799. package/dist/views/Version/Default/SelectedLocalesContext.d.ts.map +1 -0
  800. package/dist/views/Version/Default/SelectedLocalesContext.js +8 -0
  801. package/dist/views/Version/Default/SelectedLocalesContext.js.map +1 -0
  802. package/dist/views/Version/Default/SetStepNav.d.ts +11 -0
  803. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -0
  804. package/dist/views/Version/Default/SetStepNav.js +139 -0
  805. package/dist/views/Version/Default/SetStepNav.js.map +1 -0
  806. package/dist/views/Version/Default/index.css +225 -0
  807. package/dist/views/Version/Default/index.d.ts +5 -0
  808. package/dist/views/Version/Default/index.d.ts.map +1 -0
  809. package/dist/views/Version/Default/index.js +242 -0
  810. package/dist/views/Version/Default/index.js.map +1 -0
  811. package/dist/views/Version/Default/types.d.ts +23 -0
  812. package/dist/views/Version/Default/types.d.ts.map +1 -0
  813. package/dist/views/Version/Default/types.js +2 -0
  814. package/dist/views/Version/Default/types.js.map +1 -0
  815. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.css +64 -0
  816. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +26 -0
  817. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -0
  818. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +134 -0
  819. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -0
  820. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts +12 -0
  821. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.d.ts.map +1 -0
  822. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js +81 -0
  823. package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -0
  824. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts +31 -0
  825. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -0
  826. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +439 -0
  827. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -0
  828. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.css +97 -0
  829. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts +4 -0
  830. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts.map +1 -0
  831. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +94 -0
  832. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -0
  833. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts +3 -0
  834. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts.map +1 -0
  835. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js +61 -0
  836. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -0
  837. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.css +29 -0
  838. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts +4 -0
  839. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts.map +1 -0
  840. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +82 -0
  841. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -0
  842. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.css +5 -0
  843. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts +4 -0
  844. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -0
  845. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js +67 -0
  846. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -0
  847. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.css +40 -0
  848. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts +5 -0
  849. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -0
  850. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +131 -0
  851. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -0
  852. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts +10 -0
  853. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -0
  854. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +67 -0
  855. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -0
  856. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.css +209 -0
  857. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +21 -0
  858. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -0
  859. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +240 -0
  860. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -0
  861. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts +3 -0
  862. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts.map +1 -0
  863. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js +17 -0
  864. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -0
  865. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.css +4 -0
  866. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +4 -0
  867. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -0
  868. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +91 -0
  869. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -0
  870. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.css +6 -0
  871. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +4 -0
  872. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -0
  873. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +159 -0
  874. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -0
  875. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.css +4 -0
  876. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +4 -0
  877. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -0
  878. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +104 -0
  879. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -0
  880. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.css +188 -0
  881. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts +33 -0
  882. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -0
  883. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js +225 -0
  884. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -0
  885. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +3 -0
  886. package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -0
  887. package/dist/views/Version/RenderFieldsToDiff/fields/index.js +29 -0
  888. package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -0
  889. package/dist/views/Version/RenderFieldsToDiff/index.css +24 -0
  890. package/dist/views/Version/RenderFieldsToDiff/index.d.ts +3 -0
  891. package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -0
  892. package/dist/views/Version/RenderFieldsToDiff/index.js +14 -0
  893. package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -0
  894. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts +25 -0
  895. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -0
  896. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +242 -0
  897. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -0
  898. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +861 -0
  899. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +1 -0
  900. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.d.ts +2 -0
  901. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.d.ts.map +1 -0
  902. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js +4 -0
  903. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.js.map +1 -0
  904. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +47 -0
  905. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +1 -0
  906. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts +19 -0
  907. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -0
  908. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +45 -0
  909. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -0
  910. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +135 -0
  911. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +1 -0
  912. package/dist/views/Version/Restore/index.css +26 -0
  913. package/dist/views/Version/Restore/index.d.ts +16 -0
  914. package/dist/views/Version/Restore/index.d.ts.map +1 -0
  915. package/dist/views/Version/Restore/index.js +113 -0
  916. package/dist/views/Version/Restore/index.js.map +1 -0
  917. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.d.ts +4 -0
  918. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.d.ts.map +1 -0
  919. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js +60 -0
  920. package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -0
  921. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts +33 -0
  922. package/dist/views/Version/SelectComparison/VersionDrawer/index.d.ts.map +1 -0
  923. package/dist/views/Version/SelectComparison/VersionDrawer/index.js +246 -0
  924. package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -0
  925. package/dist/views/Version/SelectComparison/VersionDrawer/index.scss +18 -0
  926. package/dist/views/Version/SelectComparison/index.d.ts +5 -0
  927. package/dist/views/Version/SelectComparison/index.d.ts.map +1 -0
  928. package/dist/views/Version/SelectComparison/index.js +60 -0
  929. package/dist/views/Version/SelectComparison/index.js.map +1 -0
  930. package/dist/views/Version/SelectComparison/index.scss +9 -0
  931. package/dist/views/Version/SelectComparison/types.d.ts +26 -0
  932. package/dist/views/Version/SelectComparison/types.d.ts.map +1 -0
  933. package/dist/views/Version/SelectComparison/types.js +2 -0
  934. package/dist/views/Version/SelectComparison/types.js.map +1 -0
  935. package/dist/views/Version/SelectLocales/index.d.ts +11 -0
  936. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -0
  937. package/dist/views/Version/SelectLocales/index.js +90 -0
  938. package/dist/views/Version/SelectLocales/index.js.map +1 -0
  939. package/dist/views/Version/generateVersionViewMetadata.d.ts +6 -0
  940. package/dist/views/Version/generateVersionViewMetadata.d.ts.map +1 -0
  941. package/dist/views/Version/generateVersionViewMetadata.js +58 -0
  942. package/dist/views/Version/generateVersionViewMetadata.js.map +1 -0
  943. package/dist/views/Version/index.d.ts +4 -0
  944. package/dist/views/Version/index.d.ts.map +1 -0
  945. package/dist/views/Version/index.js +351 -0
  946. package/dist/views/Version/index.js.map +1 -0
  947. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.d.ts +31 -0
  948. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.d.ts.map +1 -0
  949. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js +126 -0
  950. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -0
  951. package/dist/views/Versions/VersionPillLabel/getVersionLabel.d.ts +37 -0
  952. package/dist/views/Versions/VersionPillLabel/getVersionLabel.d.ts.map +1 -0
  953. package/dist/views/Versions/VersionPillLabel/getVersionLabel.js +43 -0
  954. package/dist/views/Versions/VersionPillLabel/getVersionLabel.js.map +1 -0
  955. package/dist/views/Versions/VersionPillLabel/index.css +31 -0
  956. package/dist/views/Versions/buildColumns.d.ts +16 -0
  957. package/dist/views/Versions/buildColumns.d.ts.map +1 -0
  958. package/dist/views/Versions/buildColumns.js +87 -0
  959. package/dist/views/Versions/buildColumns.js.map +1 -0
  960. package/dist/views/Versions/cells/AutosaveCell/index.css +7 -0
  961. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +21 -0
  962. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -0
  963. package/dist/views/Versions/cells/AutosaveCell/index.js +47 -0
  964. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -0
  965. package/dist/views/Versions/cells/CreatedAt/index.d.ts +13 -0
  966. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -0
  967. package/dist/views/Versions/cells/CreatedAt/index.js +62 -0
  968. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -0
  969. package/dist/views/Versions/cells/ID/index.d.ts +5 -0
  970. package/dist/views/Versions/cells/ID/index.d.ts.map +1 -0
  971. package/dist/views/Versions/cells/ID/index.js +12 -0
  972. package/dist/views/Versions/cells/ID/index.js.map +1 -0
  973. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.d.ts +4 -0
  974. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.d.ts.map +1 -0
  975. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.js +60 -0
  976. package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.js.map +1 -0
  977. package/dist/views/Versions/fetchVersions.d.ts +42 -0
  978. package/dist/views/Versions/fetchVersions.d.ts.map +1 -0
  979. package/dist/views/Versions/fetchVersions.js +151 -0
  980. package/dist/views/Versions/fetchVersions.js.map +1 -0
  981. package/dist/views/Versions/generateVersionsViewMetadata.d.ts +6 -0
  982. package/dist/views/Versions/generateVersionsViewMetadata.d.ts.map +1 -0
  983. package/dist/views/Versions/generateVersionsViewMetadata.js +51 -0
  984. package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -0
  985. package/dist/views/Versions/index.client.d.ts +9 -0
  986. package/dist/views/Versions/index.client.d.ts.map +1 -0
  987. package/dist/views/Versions/index.client.js +77 -0
  988. package/dist/views/Versions/index.client.js.map +1 -0
  989. package/dist/views/Versions/index.css +92 -0
  990. package/dist/views/Versions/index.d.ts +5 -0
  991. package/dist/views/Versions/index.d.ts.map +1 -0
  992. package/dist/views/Versions/index.js +178 -0
  993. package/dist/views/Versions/index.js.map +1 -0
  994. package/dist/views/Versions/types.d.ts +17 -0
  995. package/dist/views/Versions/types.d.ts.map +1 -0
  996. package/dist/views/Versions/types.js +2 -0
  997. package/dist/views/Versions/types.js.map +1 -0
  998. package/package.json +106 -4
  999. package/dist/elements/EditMany/index.scss +0 -182
  1000. package/dist/elements/ShimmerEffect/index.scss +0 -40
  1001. package/dist/elements/WhereBuilder/Condition/Number/index.scss +0 -7
  1002. package/dist/elements/WhereBuilder/Condition/Text/index.scss +0 -7
  1003. package/dist/elements/WhereBuilder/Condition/index.scss +0 -59
  1004. package/dist/elements/WhereBuilder/index.scss +0 -42
  1005. package/dist/exports/client/chunk-ZJOSXDGN.js +0 -27
  1006. package/dist/exports/client/chunk-ZJOSXDGN.js.map +0 -7
  1007. package/dist/providers/LivePreview/index.scss +0 -68
  1008. package/dist/providers/Params/index.d.ts +0 -19
  1009. package/dist/providers/Params/index.d.ts.map +0 -1
  1010. package/dist/providers/Params/index.js +0 -37
  1011. package/dist/providers/Params/index.js.map +0 -1
  1012. package/dist/providers/RouteTransition/ProgressBar/index.scss +0 -23
  1013. package/dist/providers/SearchParams/index.d.ts +0 -27
  1014. package/dist/providers/SearchParams/index.d.ts.map +0 -1
  1015. package/dist/providers/SearchParams/index.js +0 -54
  1016. package/dist/providers/SearchParams/index.js.map +0 -1
  1017. package/dist/views/Edit/index.scss +0 -60
  1018. /package/dist/elements/LivePreview/ToolbarArea/{index.scss → index.css} +0 -0
  1019. /package/dist/exports/client/{CodeEditor-A66UUZBE.js.map → CodeEditor-T3624SG3.js.map} +0 -0
  1020. /package/dist/exports/client/{DatePicker-XEMRSUWJ.js.map → DatePicker-6KF52Z3G.js.map} +0 -0
  1021. /package/dist/forms/Form/{index.scss → index.css} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["isFieldDisabled","React","useCallback","useMemo","useRef","CheckIcon","ChevronIcon","TrashIcon","XIcon","useAuth","useListQuery","useTranslation","reduceFieldsToOptions","Button","Popup","PopupList","baseClass","supportedFieldTypes","GroupByControl","collectionSlug","fields","i18n","t","permissions","listQuery","closeRef","groupByRaw","query","groupBy","groupByFieldName","replace","fieldPermissions","collections","reducedFields","filteredFields","filter","field","fieldPath","includes","type","groupByField","find","isActive","Boolean","handleFieldSelect","value","refineListData","startsWith","page","handleClear","current","handleDirectionSelect","directionValue","triggerLabel","label","_jsx","className","horizontalAlign","portalClassName","render","close","_jsxs","buttonStyle","icon","onClick","round","size","closeFieldPopup","ButtonGroup","map","i","active","undefined","renderButton","onKeyDown","direction","verticalAlign","disabled","closeSortPopup","RadioGroup","RadioGroupItem","join","ariaProps","extraButtonProps","id","selected","theme"],"sources":["../../../src/elements/GroupByControl/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, Field, SanitizedCollectionConfig } from 'payload'\n\nimport { isFieldDisabled } from 'payload/shared'\nimport React, { useCallback, useMemo, useRef } from 'react'\n\nimport { CheckIcon } from '../../icons/Check/index.js'\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { TrashIcon } from '../../icons/Trash/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { reduceFieldsToOptions } from '../../utilities/reduceFieldsToOptions.js'\nimport { Button } from '../Button/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport './index.css'\n\nexport type GroupByControlProps = {\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly fields: ClientField[]\n}\n\nconst baseClass = 'group-by-control'\n\n/**\n * Supported field types for group by functionality.\n */\nconst supportedFieldTypes: Field['type'][] = [\n 'text',\n 'textarea',\n 'number',\n 'select',\n 'relationship',\n 'date',\n 'checkbox',\n 'radio',\n 'email',\n 'upload',\n]\n\nexport const GroupByControl: React.FC<GroupByControlProps> = ({ collectionSlug, fields }) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const listQuery = useListQuery()\n const closeRef = useRef<(() => void) | null>(null)\n\n const groupByRaw = listQuery.query?.groupBy\n const groupByFieldName = groupByRaw?.replace(/^-/, '')\n\n const fieldPermissions = permissions?.collections?.[collectionSlug]?.fields\n\n const reducedFields = useMemo(\n () =>\n reduceFieldsToOptions({\n fieldPermissions,\n fields,\n i18n,\n }),\n [fields, fieldPermissions, i18n],\n )\n\n const filteredFields = useMemo(\n () =>\n reducedFields.filter(\n (field) =>\n !isFieldDisabled(field.field, 'groupBy') &&\n field.fieldPath !== 'id' &&\n supportedFieldTypes.includes(field.field.type),\n ),\n [reducedFields],\n )\n\n const groupByField = reducedFields.find((field) => field.fieldPath === groupByFieldName)\n const isActive = Boolean(groupByFieldName && groupByField)\n\n const handleFieldSelect = useCallback(\n (value: string) => {\n void (async () => {\n if (typeof listQuery.refineListData !== 'function') {\n return\n }\n await listQuery.refineListData({\n groupBy: listQuery.query?.groupBy?.startsWith('-') ? `-${value}` : value,\n page: 1,\n })\n })()\n },\n [listQuery],\n )\n\n const handleClear = useCallback(() => {\n void (async () => {\n if (typeof listQuery.refineListData === 'function') {\n await listQuery.refineListData({ groupBy: '' })\n }\n closeRef.current?.()\n })()\n }, [listQuery])\n\n const handleDirectionSelect = useCallback(\n (value: 'asc' | 'desc') => {\n void (async () => {\n if (!groupByFieldName || typeof listQuery.refineListData !== 'function') {\n return\n }\n await listQuery.refineListData({\n groupBy: value === 'asc' ? groupByFieldName : `-${groupByFieldName}`,\n page: 1,\n })\n })()\n },\n [groupByFieldName, listQuery],\n )\n\n const directionValue =\n !groupByRaw || typeof groupByRaw !== 'string'\n ? 'asc'\n : groupByRaw.startsWith('-')\n ? 'desc'\n : 'asc'\n\n // Build the trigger button label\n const triggerLabel = isActive\n ? t('general:groupByLabel', { label: groupByField?.label || '' })\n : t('general:groupByLabel', { label: '' })\n\n return (\n <Popup\n className={baseClass}\n horizontalAlign=\"right\"\n portalClassName={`${baseClass}__popup`}\n render={({ close }) => {\n closeRef.current = close\n return (\n <div className={`${baseClass}__content`}>\n <div className={`${baseClass}__header`}>\n <span className={`${baseClass}__title`}>\n {t('general:groupByLabel', { label: '' })}\n </span>\n <div className={`${baseClass}__header-actions`}>\n {isActive && (\n <Button\n aria-label={t('general:clear')}\n buttonStyle=\"ghost\"\n icon={<TrashIcon />}\n onClick={handleClear}\n round\n size=\"medium\"\n />\n )}\n <Button\n aria-label={t('general:close')}\n buttonStyle=\"ghost\"\n icon={<XIcon size={24} />}\n onClick={close}\n round\n size=\"medium\"\n />\n </div>\n </div>\n <div className={`${baseClass}__body`}>\n <div className={`${baseClass}__row`}>\n <label className={`${baseClass}__label`}>{t('general:field')}</label>\n <div className={`${baseClass}__input`} data-popup-prevent-close>\n <Popup\n className={`${baseClass}__select-popup`}\n horizontalAlign=\"right\"\n render={({ close: closeFieldPopup }) => (\n <PopupList.ButtonGroup>\n {filteredFields.map((field, i) => (\n <PopupList.Button\n active={field.fieldPath === groupByFieldName}\n icon={\n field.fieldPath === groupByFieldName ? (\n <CheckIcon size={16} />\n ) : undefined\n }\n key={i}\n onClick={() => {\n handleFieldSelect(field.fieldPath)\n closeFieldPopup()\n }}\n >\n {field.label}\n </PopupList.Button>\n ))}\n </PopupList.ButtonGroup>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <button\n className={`${baseClass}__select-trigger`}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className={`${baseClass}__select-value`}>\n {groupByField?.label || t('general:selectValue')}\n </span>\n <ChevronIcon direction={active ? 'up' : 'down'} size={16} />\n </button>\n )}\n size=\"medium\"\n verticalAlign=\"bottom\"\n />\n </div>\n </div>\n <div className={`${baseClass}__row`}>\n <label className={`${baseClass}__label`}>{t('general:sort')}</label>\n <div className={`${baseClass}__input`} data-popup-prevent-close>\n <Popup\n className={`${baseClass}__select-popup`}\n disabled={!groupByFieldName}\n horizontalAlign=\"right\"\n render={({ close: closeSortPopup }) => (\n <PopupList.RadioGroup>\n <PopupList.RadioGroupItem\n active={directionValue === 'desc'}\n onClick={() => {\n handleDirectionSelect('desc')\n closeSortPopup()\n }}\n >\n {t('general:descending')}\n </PopupList.RadioGroupItem>\n <PopupList.RadioGroupItem\n active={directionValue === 'asc'}\n onClick={() => {\n handleDirectionSelect('asc')\n closeSortPopup()\n }}\n >\n {t('general:ascending')}\n </PopupList.RadioGroupItem>\n </PopupList.RadioGroup>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <button\n className={[\n `${baseClass}__select-trigger`,\n !groupByFieldName && `${baseClass}__select-trigger--disabled`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={!groupByFieldName}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className={`${baseClass}__select-value`}>\n {directionValue === 'desc'\n ? t('general:descending')\n : t('general:ascending')}\n </span>\n <ChevronIcon direction={active ? 'up' : 'down'} size={16} />\n </button>\n )}\n size=\"small\"\n verticalAlign=\"bottom\"\n />\n </div>\n </div>\n </div>\n </div>\n )\n }}\n renderButton={({ active, onClick, onKeyDown, ...ariaProps }) => (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__trigger`}\n extraButtonProps={{ onKeyDown }}\n icon={<ChevronIcon direction={active ? 'up' : 'down'} size={16} />}\n id=\"toggle-group-by\"\n onClick={onClick}\n selected={active || isActive}\n size=\"medium\"\n {...ariaProps}\n >\n {triggerLabel}\n </Button>\n )}\n size=\"large\"\n theme=\"auto\"\n verticalAlign=\"bottom\"\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["isFieldDisabled","React","useCallback","useMemo","useRef","ChevronIcon","TrashIcon","XIcon","useAuth","useListQuery","useTranslation","reduceFieldsToOptions","Button","Popup","PopupList","baseClass","supportedFieldTypes","GroupByControl","collectionSlug","fields","i18n","t","permissions","listQuery","closeRef","groupByRaw","query","groupBy","groupByFieldName","replace","fieldPermissions","collections","reducedFields","filteredFields","filter","field","fieldPath","includes","type","groupByField","find","isActive","Boolean","handleFieldSelect","value","refineListData","startsWith","page","handleClear","current","handleDirectionSelect","length","directionValue","triggerLabel","label","_jsx","className","horizontalAlign","portalClassName","render","close","_jsxs","buttonStyle","icon","onClick","round","size","closeFieldPopup","RadioGroup","map","i","RadioGroupItem","active","renderButton","onKeyDown","direction","verticalAlign","disabled","closeSortPopup","join","ariaProps","extraButtonProps","id","selected","theme"],"sources":["../../../src/elements/GroupByControl/index.tsx"],"sourcesContent":["'use client'\nimport type { ClientField, Field, SanitizedCollectionConfig } from 'payload'\n\nimport { isFieldDisabled } from 'payload/shared'\nimport React, { useCallback, useMemo, useRef } from 'react'\n\nimport { ChevronIcon } from '../../icons/Chevron/index.js'\nimport { TrashIcon } from '../../icons/Trash/index.js'\nimport { XIcon } from '../../icons/X/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useListQuery } from '../../providers/ListQuery/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { reduceFieldsToOptions } from '../../utilities/reduceFieldsToOptions.js'\nimport { Button } from '../Button/index.js'\nimport { Popup, PopupList } from '../Popup/index.js'\nimport './index.css'\n\nexport type GroupByControlProps = {\n readonly collectionSlug: SanitizedCollectionConfig['slug']\n readonly fields: ClientField[]\n}\n\nconst baseClass = 'group-by-control'\n\n/**\n * Supported field types for group by functionality.\n */\nconst supportedFieldTypes: Field['type'][] = [\n 'text',\n 'textarea',\n 'number',\n 'select',\n 'relationship',\n 'date',\n 'checkbox',\n 'radio',\n 'email',\n 'upload',\n]\n\nexport const GroupByControl: React.FC<GroupByControlProps> = ({ collectionSlug, fields }) => {\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const listQuery = useListQuery()\n const closeRef = useRef<(() => void) | null>(null)\n\n const groupByRaw = listQuery.query?.groupBy\n const groupByFieldName = groupByRaw?.replace(/^-/, '')\n\n const fieldPermissions = permissions?.collections?.[collectionSlug]?.fields\n\n const reducedFields = useMemo(\n () =>\n reduceFieldsToOptions({\n fieldPermissions,\n fields,\n i18n,\n }),\n [fields, fieldPermissions, i18n],\n )\n\n const filteredFields = useMemo(\n () =>\n reducedFields.filter(\n (field) =>\n !isFieldDisabled(field.field, 'groupBy') &&\n field.fieldPath !== 'id' &&\n supportedFieldTypes.includes(field.field.type),\n ),\n [reducedFields],\n )\n\n const groupByField = reducedFields.find((field) => field.fieldPath === groupByFieldName)\n const isActive = Boolean(groupByFieldName && groupByField)\n\n const handleFieldSelect = useCallback(\n (value: string) => {\n void (async () => {\n if (typeof listQuery.refineListData !== 'function') {\n return\n }\n await listQuery.refineListData({\n groupBy: listQuery.query?.groupBy?.startsWith('-') ? `-${value}` : value,\n page: 1,\n })\n })()\n },\n [listQuery],\n )\n\n const handleClear = useCallback(() => {\n void (async () => {\n if (typeof listQuery.refineListData === 'function') {\n await listQuery.refineListData({ groupBy: '' })\n }\n closeRef.current?.()\n })()\n }, [listQuery])\n\n const handleDirectionSelect = useCallback(\n (value: 'asc' | 'desc') => {\n void (async () => {\n if (!groupByFieldName || typeof listQuery.refineListData !== 'function') {\n return\n }\n await listQuery.refineListData({\n groupBy: value === 'asc' ? groupByFieldName : `-${groupByFieldName}`,\n page: 1,\n })\n })()\n },\n [groupByFieldName, listQuery],\n )\n\n if (filteredFields.length === 0) {\n return null\n }\n\n const directionValue =\n !groupByRaw || typeof groupByRaw !== 'string'\n ? 'asc'\n : groupByRaw.startsWith('-')\n ? 'desc'\n : 'asc'\n\n // Build the trigger button label\n const triggerLabel = isActive\n ? t('general:groupByLabel', { label: groupByField?.label || '' })\n : t('general:groupByLabel', { label: '' })\n\n return (\n <Popup\n className={baseClass}\n horizontalAlign=\"right\"\n portalClassName={`${baseClass}__popup`}\n render={({ close }) => {\n closeRef.current = close\n return (\n <div className={`${baseClass}__content`}>\n <div className={`${baseClass}__header`}>\n <span className={`${baseClass}__title`}>\n {t('general:groupByLabel', { label: '' })}\n </span>\n <div className={`${baseClass}__header-actions`}>\n {isActive && (\n <Button\n aria-label={t('general:clear')}\n buttonStyle=\"ghost\"\n icon={<TrashIcon />}\n onClick={handleClear}\n round\n size=\"medium\"\n />\n )}\n <Button\n aria-label={t('general:close')}\n buttonStyle=\"ghost\"\n icon={<XIcon size={24} />}\n onClick={close}\n round\n size=\"medium\"\n />\n </div>\n </div>\n <div className={`${baseClass}__body`}>\n <div className={`${baseClass}__row`}>\n <label className={`${baseClass}__label`}>{t('general:field')}</label>\n <div className={`${baseClass}__input`} data-popup-prevent-close>\n <Popup\n className={`${baseClass}__select-popup`}\n horizontalAlign=\"right\"\n render={({ close: closeFieldPopup }) => (\n <PopupList.RadioGroup>\n {filteredFields.map((field, i) => (\n <PopupList.RadioGroupItem\n active={field.fieldPath === groupByFieldName}\n key={i}\n onClick={() => {\n handleFieldSelect(field.fieldPath)\n closeFieldPopup()\n }}\n >\n {field.label}\n </PopupList.RadioGroupItem>\n ))}\n </PopupList.RadioGroup>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <button\n className={`${baseClass}__select-trigger`}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className={`${baseClass}__select-value`}>\n {groupByField?.label || t('general:selectValue')}\n </span>\n <ChevronIcon direction={active ? 'up' : 'down'} size={16} />\n </button>\n )}\n size=\"medium\"\n verticalAlign=\"bottom\"\n />\n </div>\n </div>\n <div className={`${baseClass}__row`}>\n <label className={`${baseClass}__label`}>{t('general:sort')}</label>\n <div className={`${baseClass}__input`} data-popup-prevent-close>\n <Popup\n className={`${baseClass}__select-popup`}\n disabled={!groupByFieldName}\n horizontalAlign=\"right\"\n render={({ close: closeSortPopup }) => (\n <PopupList.RadioGroup>\n <PopupList.RadioGroupItem\n active={directionValue === 'desc'}\n onClick={() => {\n handleDirectionSelect('desc')\n closeSortPopup()\n }}\n >\n {t('general:descending')}\n </PopupList.RadioGroupItem>\n <PopupList.RadioGroupItem\n active={directionValue === 'asc'}\n onClick={() => {\n handleDirectionSelect('asc')\n closeSortPopup()\n }}\n >\n {t('general:ascending')}\n </PopupList.RadioGroupItem>\n </PopupList.RadioGroup>\n )}\n renderButton={({ active, onClick, onKeyDown }) => (\n <button\n className={[\n `${baseClass}__select-trigger`,\n !groupByFieldName && `${baseClass}__select-trigger--disabled`,\n ]\n .filter(Boolean)\n .join(' ')}\n disabled={!groupByFieldName}\n onClick={onClick}\n onKeyDown={onKeyDown}\n type=\"button\"\n >\n <span className={`${baseClass}__select-value`}>\n {directionValue === 'desc'\n ? t('general:descending')\n : t('general:ascending')}\n </span>\n <ChevronIcon direction={active ? 'up' : 'down'} size={16} />\n </button>\n )}\n size=\"small\"\n verticalAlign=\"bottom\"\n />\n </div>\n </div>\n </div>\n </div>\n )\n }}\n renderButton={({ active, onClick, onKeyDown, ...ariaProps }) => (\n <Button\n buttonStyle=\"secondary\"\n className={`${baseClass}__trigger`}\n extraButtonProps={{ onKeyDown }}\n icon={<ChevronIcon direction={active ? 'up' : 'down'} size={16} />}\n id=\"toggle-group-by\"\n onClick={onClick}\n selected={active || isActive}\n size=\"medium\"\n {...ariaProps}\n >\n {triggerLabel}\n </Button>\n )}\n size=\"large\"\n theme=\"auto\"\n verticalAlign=\"bottom\"\n />\n )\n}\n"],"mappings":"AAAA;;;AAGA,SAASA,eAAe,QAAQ;AAChC,OAAOC,KAAA,IAASC,WAAW,EAAEC,OAAO,EAAEC,MAAM,QAAQ;AAEpD,SAASC,WAAW,QAAQ;AAC5B,SAASC,SAAS,QAAQ;AAC1B,SAASC,KAAK,QAAQ;AACtB,SAASC,OAAO,QAAQ;AACxB,SAASC,YAAY,QAAQ;AAC7B,SAASC,cAAc,QAAQ;AAC/B,SAASC,qBAAqB,QAAQ;AACtC,SAASC,MAAM,QAAQ;AACvB,SAASC,KAAK,EAAEC,SAAS,QAAQ;AACjC,OAAO;AAOP,MAAMC,SAAA,GAAY;AAElB;;;AAGA,MAAMC,mBAAA,GAAuC,CAC3C,QACA,YACA,UACA,UACA,gBACA,QACA,YACA,SACA,SACA,SACD;AAED,OAAO,MAAMC,cAAA,GAAgDA,CAAC;EAAEC,cAAc;EAAEC;AAAM,CAAE;EACtF,MAAM;IAAEC,IAAI;IAAEC;EAAC,CAAE,GAAGX,cAAA;EACpB,MAAM;IAAEY;EAAW,CAAE,GAAGd,OAAA;EACxB,MAAMe,SAAA,GAAYd,YAAA;EAClB,MAAMe,QAAA,GAAWpB,MAAA,CAA4B;EAE7C,MAAMqB,UAAA,GAAaF,SAAA,CAAUG,KAAK,EAAEC,OAAA;EACpC,MAAMC,gBAAA,GAAmBH,UAAA,EAAYI,OAAA,CAAQ,MAAM;EAEnD,MAAMC,gBAAA,GAAmBR,WAAA,EAAaS,WAAA,GAAcb,cAAA,CAAe,EAAEC,MAAA;EAErE,MAAMa,aAAA,GAAgB7B,OAAA,CACpB,MACEQ,qBAAA,CAAsB;IACpBmB,gBAAA;IACAX,MAAA;IACAC;EACF,IACF,CAACD,MAAA,EAAQW,gBAAA,EAAkBV,IAAA,CAAK;EAGlC,MAAMa,cAAA,GAAiB9B,OAAA,CACrB,MACE6B,aAAA,CAAcE,MAAM,CACjBC,KAAA,IACC,CAACnC,eAAA,CAAgBmC,KAAA,CAAMA,KAAK,EAAE,cAC9BA,KAAA,CAAMC,SAAS,KAAK,QACpBpB,mBAAA,CAAoBqB,QAAQ,CAACF,KAAA,CAAMA,KAAK,CAACG,IAAI,IAEnD,CAACN,aAAA,CAAc;EAGjB,MAAMO,YAAA,GAAeP,aAAA,CAAcQ,IAAI,CAAEL,OAAA,IAAUA,OAAA,CAAMC,SAAS,KAAKR,gBAAA;EACvE,MAAMa,QAAA,GAAWC,OAAA,CAAQd,gBAAA,IAAoBW,YAAA;EAE7C,MAAMI,iBAAA,GAAoBzC,WAAA,CACvB0C,KAAA;IACC,KAAK,CAAC;MACJ,IAAI,OAAOrB,SAAA,CAAUsB,cAAc,KAAK,YAAY;QAClD;MACF;MACA,MAAMtB,SAAA,CAAUsB,cAAc,CAAC;QAC7BlB,OAAA,EAASJ,SAAA,CAAUG,KAAK,EAAEC,OAAA,EAASmB,UAAA,CAAW,OAAO,IAAIF,KAAA,EAAO,GAAGA,KAAA;QACnEG,IAAA,EAAM;MACR;IACF;EACF,GACA,CAACxB,SAAA,CAAU;EAGb,MAAMyB,WAAA,GAAc9C,WAAA,CAAY;IAC9B,KAAK,CAAC;MACJ,IAAI,OAAOqB,SAAA,CAAUsB,cAAc,KAAK,YAAY;QAClD,MAAMtB,SAAA,CAAUsB,cAAc,CAAC;UAAElB,OAAA,EAAS;QAAG;MAC/C;MACAH,QAAA,CAASyB,OAAO;IAClB;EACF,GAAG,CAAC1B,SAAA,CAAU;EAEd,MAAM2B,qBAAA,GAAwBhD,WAAA,CAC3B0C,OAAA;IACC,KAAK,CAAC;MACJ,IAAI,CAAChB,gBAAA,IAAoB,OAAOL,SAAA,CAAUsB,cAAc,KAAK,YAAY;QACvE;MACF;MACA,MAAMtB,SAAA,CAAUsB,cAAc,CAAC;QAC7BlB,OAAA,EAASiB,OAAA,KAAU,QAAQhB,gBAAA,GAAmB,IAAIA,gBAAA,EAAkB;QACpEmB,IAAA,EAAM;MACR;IACF;EACF,GACA,CAACnB,gBAAA,EAAkBL,SAAA,CAAU;EAG/B,IAAIU,cAAA,CAAekB,MAAM,KAAK,GAAG;IAC/B,OAAO;EACT;EAEA,MAAMC,cAAA,GACJ,CAAC3B,UAAA,IAAc,OAAOA,UAAA,KAAe,WACjC,QACAA,UAAA,CAAWqB,UAAU,CAAC,OACpB,SACA;EAER;EACA,MAAMO,YAAA,GAAeZ,QAAA,GACjBpB,CAAA,CAAE,wBAAwB;IAAEiC,KAAA,EAAOf,YAAA,EAAce,KAAA,IAAS;EAAG,KAC7DjC,CAAA,CAAE,wBAAwB;IAAEiC,KAAA,EAAO;EAAG;EAE1C,oBACEC,IAAA,CAAC1C,KAAA;IACC2C,SAAA,EAAWzC,SAAA;IACX0C,eAAA,EAAgB;IAChBC,eAAA,EAAiB,GAAG3C,SAAA,SAAkB;IACtC4C,MAAA,EAAQA,CAAC;MAAEC;IAAK,CAAE;MAChBpC,QAAA,CAASyB,OAAO,GAAGW,KAAA;MACnB,oBACEC,KAAA,CAAC;QAAIL,SAAA,EAAW,GAAGzC,SAAA,WAAoB;gCACrC8C,KAAA,CAAC;UAAIL,SAAA,EAAW,GAAGzC,SAAA,UAAmB;kCACpCwC,IAAA,CAAC;YAAKC,SAAA,EAAW,GAAGzC,SAAA,SAAkB;sBACnCM,CAAA,CAAE,wBAAwB;cAAEiC,KAAA,EAAO;YAAG;2BAEzCO,KAAA,CAAC;YAAIL,SAAA,EAAW,GAAGzC,SAAA,kBAA2B;uBAC3C0B,QAAA,iBACCc,IAAA,CAAC3C,MAAA;cACC,cAAYS,CAAA,CAAE;cACdyC,WAAA,EAAY;cACZC,IAAA,eAAMR,IAAA,CAACjD,SAAA;cACP0D,OAAA,EAAShB,WAAA;cACTiB,KAAK;cACLC,IAAA,EAAK;6BAGTX,IAAA,CAAC3C,MAAA;cACC,cAAYS,CAAA,CAAE;cACdyC,WAAA,EAAY;cACZC,IAAA,eAAMR,IAAA,CAAChD,KAAA;gBAAM2D,IAAA,EAAM;;cACnBF,OAAA,EAASJ,KAAA;cACTK,KAAK;cACLC,IAAA,EAAK;;;yBAIXL,KAAA,CAAC;UAAIL,SAAA,EAAW,GAAGzC,SAAA,QAAiB;kCAClC8C,KAAA,CAAC;YAAIL,SAAA,EAAW,GAAGzC,SAAA,OAAgB;oCACjCwC,IAAA,CAAC;cAAMC,SAAA,EAAW,GAAGzC,SAAA,SAAkB;wBAAGM,CAAA,CAAE;6BAC5CkC,IAAA,CAAC;cAAIC,SAAA,EAAW,GAAGzC,SAAA,SAAkB;cAAE,0BAAwB;wBAC7D,aAAAwC,IAAA,CAAC1C,KAAA;gBACC2C,SAAA,EAAW,GAAGzC,SAAA,gBAAyB;gBACvC0C,eAAA,EAAgB;gBAChBE,MAAA,EAAQA,CAAC;kBAAEC,KAAA,EAAOO;gBAAe,CAAE,kBACjCZ,IAAA,CAACzC,SAAA,CAAUsD,UAAU;4BAClBnC,cAAA,CAAeoC,GAAG,CAAC,CAAClC,OAAA,EAAOmC,CAAA,kBAC1Bf,IAAA,CAACzC,SAAA,CAAUyD,cAAc;oBACvBC,MAAA,EAAQrC,OAAA,CAAMC,SAAS,KAAKR,gBAAA;oBAE5BoC,OAAA,EAASA,CAAA;sBACPrB,iBAAA,CAAkBR,OAAA,CAAMC,SAAS;sBACjC+B,eAAA;oBACF;8BAEChC,OAAA,CAAMmB;qBANFgB,CAAA;;gBAWbG,YAAA,EAAcA,CAAC;kBAAED,MAAM;kBAAER,OAAO;kBAAEU;gBAAS,CAAE,kBAC3Cb,KAAA,CAAC;kBACCL,SAAA,EAAW,GAAGzC,SAAA,kBAA2B;kBACzCiD,OAAA,EAASA,OAAA;kBACTU,SAAA,EAAWA,SAAA;kBACXpC,IAAA,EAAK;0CAELiB,IAAA,CAAC;oBAAKC,SAAA,EAAW,GAAGzC,SAAA,gBAAyB;8BAC1CwB,YAAA,EAAce,KAAA,IAASjC,CAAA,CAAE;mCAE5BkC,IAAA,CAAClD,WAAA;oBAAYsE,SAAA,EAAWH,MAAA,GAAS,OAAO;oBAAQN,IAAA,EAAM;;;gBAG1DA,IAAA,EAAK;gBACLU,aAAA,EAAc;;;2BAIpBf,KAAA,CAAC;YAAIL,SAAA,EAAW,GAAGzC,SAAA,OAAgB;oCACjCwC,IAAA,CAAC;cAAMC,SAAA,EAAW,GAAGzC,SAAA,SAAkB;wBAAGM,CAAA,CAAE;6BAC5CkC,IAAA,CAAC;cAAIC,SAAA,EAAW,GAAGzC,SAAA,SAAkB;cAAE,0BAAwB;wBAC7D,aAAAwC,IAAA,CAAC1C,KAAA;gBACC2C,SAAA,EAAW,GAAGzC,SAAA,gBAAyB;gBACvC8D,QAAA,EAAU,CAACjD,gBAAA;gBACX6B,eAAA,EAAgB;gBAChBE,MAAA,EAAQA,CAAC;kBAAEC,KAAA,EAAOkB;gBAAc,CAAE,kBAChCjB,KAAA,CAAC/C,SAAA,CAAUsD,UAAU;0CACnBb,IAAA,CAACzC,SAAA,CAAUyD,cAAc;oBACvBC,MAAA,EAAQpB,cAAA,KAAmB;oBAC3BY,OAAA,EAASA,CAAA;sBACPd,qBAAA,CAAsB;sBACtB4B,cAAA;oBACF;8BAECzD,CAAA,CAAE;mCAELkC,IAAA,CAACzC,SAAA,CAAUyD,cAAc;oBACvBC,MAAA,EAAQpB,cAAA,KAAmB;oBAC3BY,OAAA,EAASA,CAAA;sBACPd,qBAAA,CAAsB;sBACtB4B,cAAA;oBACF;8BAECzD,CAAA,CAAE;;;gBAIToD,YAAA,EAAcA,CAAC;kBAAED,MAAM,EAANA,QAAM;kBAAER,OAAO,EAAPA,SAAO;kBAAEU,SAAS,EAATA;gBAAS,CAAE,kBAC3Cb,KAAA,CAAC;kBACCL,SAAA,EAAW,CACT,GAAGzC,SAAA,kBAA2B,EAC9B,CAACa,gBAAA,IAAoB,GAAGb,SAAA,4BAAqC,CAC9D,CACEmB,MAAM,CAACQ,OAAA,EACPqC,IAAI,CAAC;kBACRF,QAAA,EAAU,CAACjD,gBAAA;kBACXoC,OAAA,EAASA,SAAA;kBACTU,SAAA,EAAWA,WAAA;kBACXpC,IAAA,EAAK;0CAELiB,IAAA,CAAC;oBAAKC,SAAA,EAAW,GAAGzC,SAAA,gBAAyB;8BAC1CqC,cAAA,KAAmB,SAChB/B,CAAA,CAAE,wBACFA,CAAA,CAAE;mCAERkC,IAAA,CAAClD,WAAA;oBAAYsE,SAAA,EAAWH,QAAA,GAAS,OAAO;oBAAQN,IAAA,EAAM;;;gBAG1DA,IAAA,EAAK;gBACLU,aAAA,EAAc;;;;;;IAO5B;IACAH,YAAA,EAAcA,CAAC;MAAED,MAAM,EAANA,QAAM;MAAER,OAAO,EAAPA,SAAO;MAAEU,SAAS,EAATA,WAAS;MAAE,GAAGM;IAAA,CAAW,kBACzDzB,IAAA,CAAC3C,MAAA;MACCkD,WAAA,EAAY;MACZN,SAAA,EAAW,GAAGzC,SAAA,WAAoB;MAClCkE,gBAAA,EAAkB;QAAEP,SAAA,EAAAA;MAAU;MAC9BX,IAAA,eAAMR,IAAA,CAAClD,WAAA;QAAYsE,SAAA,EAAWH,QAAA,GAAS,OAAO;QAAQN,IAAA,EAAM;;MAC5DgB,EAAA,EAAG;MACHlB,OAAA,EAASA,SAAA;MACTmB,QAAA,EAAUX,QAAA,IAAU/B,QAAA;MACpByB,IAAA,EAAK;MACJ,GAAGc,SAAS;gBAEZ3B;;IAGLa,IAAA,EAAK;IACLkB,KAAA,EAAM;IACNR,aAAA,EAAc;;AAGpB","ignoreList":[]}
@@ -1,26 +1,8 @@
1
1
  @layer payload-default {
2
- /* Override drawer to be a centered modal instead of side panel */
3
- .hierarchy-drawer.drawer {
4
- justify-content: center;
5
- align-items: center;
6
- }
7
-
8
- .hierarchy-drawer .drawer__blur-bg {
9
- background: var(--color-modalbackdrop);
10
- }
11
-
12
- .hierarchy-drawer .drawer__content {
2
+ .dialog.hierarchy-drawer {
13
3
  width: min(900px, calc(100vw - var(--spacer-6)));
14
4
  height: min(700px, calc(100vh - var(--spacer-6)));
15
- border-radius: var(--radius-large);
16
- transform: none;
17
- box-shadow: var(--elevation-500-dialog);
18
- }
19
-
20
- .hierarchy-drawer .drawer__close {
21
- position: absolute;
22
- inset: 0;
23
- background: transparent;
5
+ max-width: calc(100vw - var(--spacer-6));
24
6
  }
25
7
 
26
8
  .hierarchy-drawer__content {
@@ -40,7 +22,7 @@
40
22
  display: flex;
41
23
  justify-content: space-between;
42
24
  align-items: center;
43
- padding: var(--spacer-2) var(--gutter-h);
25
+ padding: var(--spacer-2) var(--spacer-2-5);
44
26
  border-bottom: 1px solid var(--color-border);
45
27
  flex-shrink: 0;
46
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Drawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAON,MAAM,OAAO,CAAA;AAEd,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAC1E,OAAO,KAAK,EAAE,4BAA4B,EAAqB,MAAM,YAAY,CAAA;AAYjF,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,qBAAqB,CAAA;AAE3C,KAAK,2BAA2B,GAAG;IACjC,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAA;IACpE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACrE,GAAG,4BAA4B,CAAA;AAEhC,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;CAC1C,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAmC,iOAiBnE;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAA;CAAE,GAAG,2BAA2B,sBAwL3F,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CA8FlE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Drawer/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAON,MAAM,OAAO,CAAA;AAEd,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAC1E,OAAO,KAAK,EAAE,4BAA4B,EAAqB,MAAM,YAAY,CAAA;AAajF,OAAO,aAAa,CAAA;AAEpB,eAAO,MAAM,SAAS,qBAAqB,CAAA;AAE3C,KAAK,2BAA2B,GAAG;IACjC,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAA;IACpE,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACrE,GAAG,4BAA4B,CAAA;AAEhC,MAAM,MAAM,yBAAyB,GAAG;IACtC,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAA;CAC1C,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAmC,iOAiBnE;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAAA;CAAE,GAAG,2BAA2B,sBAwL3F,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CA8FlE,CAAA"}
@@ -8,8 +8,9 @@ import { TagIcon } from '../../../icons/Tag/index.js';
8
8
  import { useConfig } from '../../../providers/Config/index.js';
9
9
  import { useHierarchy } from '../../../providers/Hierarchy/index.js';
10
10
  import { useTranslation } from '../../../providers/Translation/index.js';
11
+ import { DialogModal } from '../../Dialog/index.js';
11
12
  import { useDocumentDrawer } from '../../DocumentDrawer/index.js';
12
- import { Drawer, DrawerDepthProvider } from '../../Drawer/index.js';
13
+ import { DrawerDepthProvider } from '../../Drawer/index.js';
13
14
  import { DrawerActionHeader } from '../../DrawerActionHeader/index.js';
14
15
  import { HierarchyColumnBrowser } from '../ColumnBrowser/index.js';
15
16
  import { fetchAncestorPath } from './fetchAncestorPath.js';
@@ -275,9 +276,10 @@ export const HierarchyDrawer = props => {
275
276
  ref: drawerContentRef
276
277
  }), [handleCreateNew, props]);
277
278
  return /*#__PURE__*/_jsxs(_Fragment, {
278
- children: [/*#__PURE__*/_jsx(Drawer, {
279
+ children: [/*#__PURE__*/_jsx(DialogModal, {
279
280
  className: baseClass,
280
- Header: null,
281
+ closeOnBlur: true,
282
+ size: "large",
281
283
  slug: drawerSlug,
282
284
  children: drawerContent
283
285
  }), /*#__PURE__*/_jsx(DrawerDepthProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","React","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","useEffectEvent","TagIcon","useConfig","useHierarchy","useTranslation","useDocumentDrawer","Drawer","DrawerDepthProvider","DrawerActionHeader","HierarchyColumnBrowser","fetchAncestorPath","baseClass","HierarchyDrawerContent","baseFilter","closeDrawer","columnBrowserRef","disabledIds","filterByCollection","hasMany","hierarchyCollectionSlug","Icon","initialSelections","onCreateNew","onMoveToRoot","onSave","parentFieldName","ref","showMoveToRoot","useAsTitle","i18n","t","config","routes","api","serverURL","getEntityConfig","collectionConfig","collectionSlug","collectionLabel","labels","plural","parentFieldName_internal","hierarchy","initialExpandedPath","setInitialExpandedPath","isLoadingPath","setIsLoadingPath","Boolean","length","hasLoadedPathRef","firstSelection","loadAncestorPath","itemId","path","current","selections","setSelections","map","Map","id","set","selectedIds","Set","keys","ancestorsWithSelections","handleCancel","handleSave","handleSelect","prev","next","has","delete","clear","handleClearAll","selectItem","selectionCount","size","_jsxs","className","_jsx","onCancel","saveLabel","title","label","onClick","type","_Fragment","onSelect","HierarchyDrawer","props","drawerSlug","refreshTree","createParentId","setCreateParentId","drawerContentRef","documentDrawerKey","setDocumentDrawerKey","documentDrawerSlug","DocumentDrawer","closeDocumentDrawer","openDrawer","openDocumentDrawer","handleCreateNew","parentId","setTimeout","handleDocumentSave","doc","undefined","refreshColumn","drawerContent","Header","slug","initialData"],"sources":["../../../../src/elements/Hierarchy/Drawer/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, {\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport type { HierarchyColumnBrowserRef } from '../ColumnBrowser/index.js'\nimport type { HierarchyDrawerInternalProps, SelectionWithPath } from './types.js'\n\nimport { useEffectEvent } from '../../../hooks/useEffectEvent.js'\nimport { TagIcon } from '../../../icons/Tag/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useHierarchy } from '../../../providers/Hierarchy/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { useDocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { Drawer, DrawerDepthProvider } from '../../Drawer/index.js'\nimport { DrawerActionHeader } from '../../DrawerActionHeader/index.js'\nimport { HierarchyColumnBrowser } from '../ColumnBrowser/index.js'\nimport { fetchAncestorPath } from './fetchAncestorPath.js'\nimport './index.css'\n\nexport const baseClass = 'hierarchy-drawer'\n\ntype HierarchyDrawerContentProps = {\n columnBrowserRef?: React.RefObject<HierarchyColumnBrowserRef | null>\n onCreateNew?: (params: { parentId: null | number | string }) => void\n} & HierarchyDrawerInternalProps\n\nexport type HierarchyDrawerContentRef = {\n selectItem: (id: number | string) => void\n}\n\nexport const HierarchyDrawerContent = function HierarchyDrawerContent({\n baseFilter,\n closeDrawer,\n columnBrowserRef,\n disabledIds,\n filterByCollection,\n hasMany = false,\n hierarchyCollectionSlug,\n Icon,\n initialSelections,\n onCreateNew,\n onMoveToRoot,\n onSave,\n parentFieldName,\n ref,\n showMoveToRoot,\n useAsTitle,\n}: { ref?: React.RefObject<HierarchyDrawerContentRef | null> } & HierarchyDrawerContentProps) {\n const { i18n, t } = useTranslation()\n // NOTE: Do NOT use useModal() here - it causes re-renders when any modal state changes\n // Use closeDrawer prop instead which already handles closing the modal\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: hierarchyCollectionSlug })\n const collectionLabel = collectionConfig\n ? getTranslation(collectionConfig.labels?.plural || hierarchyCollectionSlug, i18n)\n : hierarchyCollectionSlug\n\n const parentFieldName_internal =\n collectionConfig?.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy.parentFieldName\n : parentFieldName\n\n const [initialExpandedPath, setInitialExpandedPath] = useState<(number | string)[] | undefined>()\n const [isLoadingPath, setIsLoadingPath] = useState(Boolean(initialSelections?.length))\n const hasLoadedPathRef = React.useRef(false)\n const firstSelection = initialSelections?.[0]\n\n const loadAncestorPath = useEffectEvent(async (itemId?: number | string) => {\n if (!itemId) {\n setIsLoadingPath(false)\n return\n }\n\n try {\n const path = await fetchAncestorPath({\n api,\n collectionSlug: hierarchyCollectionSlug,\n itemId,\n parentFieldName: parentFieldName_internal,\n serverURL,\n })\n setInitialExpandedPath(path)\n } catch {\n // Silently handle fetch errors - will just start at root\n } finally {\n setIsLoadingPath(false)\n }\n })\n\n // Load ancestor path on mount\n useEffect(() => {\n if (hasLoadedPathRef.current) {\n return\n }\n hasLoadedPathRef.current = true\n void loadAncestorPath(firstSelection)\n }, [firstSelection])\n\n const [selections, setSelections] = useState<Map<number | string, SelectionWithPath>>(() => {\n const map = new Map<number | string, SelectionWithPath>()\n\n if (initialSelections) {\n for (const id of initialSelections) {\n map.set(id, { id, path: [] })\n }\n }\n\n return map\n })\n\n const selectedIds = useMemo(() => new Set(selections.keys()), [selections])\n\n // For now, ancestorsWithSelections is empty - will be computed when we have path tracking\n const ancestorsWithSelections = useMemo(() => new Set<number | string>(), [])\n\n const handleCancel = useCallback(() => {\n closeDrawer()\n }, [closeDrawer])\n\n const handleSave = useCallback(() => {\n onSave({ closeDrawer, selections })\n }, [onSave, selections, closeDrawer])\n\n const handleSelect = useCallback(\n ({\n id,\n path,\n }: {\n id: number | string\n path: Array<{ id: number | string; title: string }>\n }) => {\n setSelections((prev) => {\n const next = new Map(prev)\n\n if (next.has(id)) {\n next.delete(id)\n } else {\n if (!hasMany) {\n // Single select: clear previous selections\n next.clear()\n }\n next.set(id, { id, path })\n }\n\n return next\n })\n },\n [hasMany],\n )\n\n const handleClearAll = useCallback(() => {\n setSelections(new Map())\n }, [])\n\n // Expose selectItem for programmatic selection (e.g., after creating a new item)\n useImperativeHandle(\n ref,\n () => ({\n selectItem: (id: number | string) => {\n setSelections((prev) => {\n const next = new Map(prev)\n if (!hasMany) {\n next.clear()\n }\n // Path will be empty for newly created items - could be enhanced later\n next.set(id, { id, path: [] })\n return next\n })\n },\n }),\n [hasMany],\n )\n\n const selectionCount = selections.size\n\n return (\n <div className={`${baseClass}__content`}>\n <DrawerActionHeader\n onCancel={handleCancel}\n onSave={handleSave}\n saveLabel={t('general:select')}\n title={t('general:selectValue', { label: collectionLabel })}\n />\n <div className={`${baseClass}__subheader`}>\n <div className={`${baseClass}__subheader-left`}>\n {Icon || <TagIcon />}\n <h4>{collectionLabel}</h4>\n </div>\n <div className={`${baseClass}__subheader-right`}>\n {showMoveToRoot && onMoveToRoot && (\n <button className={`${baseClass}__move-to-root`} onClick={onMoveToRoot} type=\"button\">\n {t('hierarchy:moveToRoot')}\n </button>\n )}\n {selectionCount > 0 && (\n <>\n <span className={`${baseClass}__selection-info`}>{selectionCount} selected</span>\n <span>—</span>\n <button className={`${baseClass}__clear-all`} onClick={handleClearAll} type=\"button\">\n {t('general:clearAll')}\n </button>\n </>\n )}\n </div>\n </div>\n <div className={`${baseClass}__columns`}>\n <HierarchyColumnBrowser\n ancestorsWithSelections={ancestorsWithSelections}\n baseFilter={baseFilter}\n disabledIds={disabledIds}\n filterByCollection={filterByCollection}\n hierarchyCollectionSlug={hierarchyCollectionSlug}\n initialExpandedPath={initialExpandedPath}\n isLoadingPath={isLoadingPath}\n onCreateNew={onCreateNew}\n onSelect={handleSelect}\n parentFieldName={parentFieldName}\n ref={columnBrowserRef}\n selectedIds={selectedIds}\n useAsTitle={useAsTitle}\n />\n </div>\n </div>\n )\n}\n\nexport const HierarchyDrawer: React.FC<HierarchyDrawerInternalProps> = (props) => {\n const { drawerSlug, hierarchyCollectionSlug, parentFieldName } = props\n\n const { refreshTree } = useHierarchy()\n\n // Get parentFieldName from hierarchy config\n const { getEntityConfig } = useConfig()\n const collectionConfig = getEntityConfig({ collectionSlug: hierarchyCollectionSlug })\n const parentFieldName_internal =\n collectionConfig?.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy.parentFieldName\n : parentFieldName\n\n // Track which parentId is being used for the document drawer - use state to trigger re-render\n const [createParentId, setCreateParentId] = useState<null | number | string>(null)\n\n // Ref to access column browser's refresh function\n const columnBrowserRef = useRef<HierarchyColumnBrowserRef | null>(null)\n\n // Ref to access drawer content's selectItem function\n const drawerContentRef = useRef<HierarchyDrawerContentRef | null>(null)\n\n // Key for DocumentDrawer to force remount when parentId changes\n const [documentDrawerKey, setDocumentDrawerKey] = useState(0)\n\n // Stable drawer slug for the document drawer - must not change on remount\n const documentDrawerSlug = `${drawerSlug}-create-doc`\n\n // Document drawer for creating new items - rendered OUTSIDE the Drawer to avoid nested modal issues\n const [DocumentDrawer, , { closeDrawer: closeDocumentDrawer, openDrawer: openDocumentDrawer }] =\n useDocumentDrawer({\n collectionSlug: hierarchyCollectionSlug,\n drawerSlug: documentDrawerSlug,\n })\n\n const handleCreateNew = useCallback(\n ({ parentId }: { parentId: null | number | string }) => {\n // Increment key to force DocumentDrawer remount with new initialData\n setDocumentDrawerKey((prev) => prev + 1)\n setCreateParentId(parentId)\n // Use setTimeout to ensure state update triggers re-render before opening drawer\n setTimeout(() => {\n openDocumentDrawer()\n }, 0)\n },\n [openDocumentDrawer],\n )\n\n // Refresh the column, select the new item, and close the document drawer after creation\n const handleDocumentSave = useCallback<\n NonNullable<React.ComponentProps<typeof DocumentDrawer>['onSave']>\n >(\n ({ doc }) => {\n if (columnBrowserRef.current && createParentId !== undefined) {\n void columnBrowserRef.current.refreshColumn(createParentId)\n }\n if (drawerContentRef.current && doc?.id) {\n drawerContentRef.current.selectItem(doc.id)\n }\n refreshTree(hierarchyCollectionSlug)\n closeDocumentDrawer()\n },\n [closeDocumentDrawer, createParentId, hierarchyCollectionSlug, refreshTree],\n )\n\n // Memoize the content - only depends on stable values\n const drawerContent = useMemo(\n () => (\n <HierarchyDrawerContent\n {...props}\n columnBrowserRef={columnBrowserRef}\n onCreateNew={handleCreateNew}\n ref={drawerContentRef}\n />\n ),\n [handleCreateNew, props],\n )\n\n return (\n <>\n <Drawer className={baseClass} Header={null} slug={drawerSlug}>\n {drawerContent}\n </Drawer>\n <DrawerDepthProvider>\n <DocumentDrawer\n initialData={\n createParentId !== null ? { [parentFieldName_internal]: createParentId } : undefined\n }\n key={documentDrawerKey}\n onSave={handleDocumentSave}\n />\n </DrawerDepthProvider>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["getTranslation","React","useCallback","useEffect","useImperativeHandle","useMemo","useRef","useState","useEffectEvent","TagIcon","useConfig","useHierarchy","useTranslation","DialogModal","useDocumentDrawer","DrawerDepthProvider","DrawerActionHeader","HierarchyColumnBrowser","fetchAncestorPath","baseClass","HierarchyDrawerContent","baseFilter","closeDrawer","columnBrowserRef","disabledIds","filterByCollection","hasMany","hierarchyCollectionSlug","Icon","initialSelections","onCreateNew","onMoveToRoot","onSave","parentFieldName","ref","showMoveToRoot","useAsTitle","i18n","t","config","routes","api","serverURL","getEntityConfig","collectionConfig","collectionSlug","collectionLabel","labels","plural","parentFieldName_internal","hierarchy","initialExpandedPath","setInitialExpandedPath","isLoadingPath","setIsLoadingPath","Boolean","length","hasLoadedPathRef","firstSelection","loadAncestorPath","itemId","path","current","selections","setSelections","map","Map","id","set","selectedIds","Set","keys","ancestorsWithSelections","handleCancel","handleSave","handleSelect","prev","next","has","delete","clear","handleClearAll","selectItem","selectionCount","size","_jsxs","className","_jsx","onCancel","saveLabel","title","label","onClick","type","_Fragment","onSelect","HierarchyDrawer","props","drawerSlug","refreshTree","createParentId","setCreateParentId","drawerContentRef","documentDrawerKey","setDocumentDrawerKey","documentDrawerSlug","DocumentDrawer","closeDocumentDrawer","openDrawer","openDocumentDrawer","handleCreateNew","parentId","setTimeout","handleDocumentSave","doc","undefined","refreshColumn","drawerContent","closeOnBlur","slug","initialData"],"sources":["../../../../src/elements/Hierarchy/Drawer/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport React, {\n useCallback,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react'\n\nimport type { HierarchyColumnBrowserRef } from '../ColumnBrowser/index.js'\nimport type { HierarchyDrawerInternalProps, SelectionWithPath } from './types.js'\n\nimport { useEffectEvent } from '../../../hooks/useEffectEvent.js'\nimport { TagIcon } from '../../../icons/Tag/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useHierarchy } from '../../../providers/Hierarchy/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { DialogModal } from '../../Dialog/index.js'\nimport { useDocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { DrawerDepthProvider } from '../../Drawer/index.js'\nimport { DrawerActionHeader } from '../../DrawerActionHeader/index.js'\nimport { HierarchyColumnBrowser } from '../ColumnBrowser/index.js'\nimport { fetchAncestorPath } from './fetchAncestorPath.js'\nimport './index.css'\n\nexport const baseClass = 'hierarchy-drawer'\n\ntype HierarchyDrawerContentProps = {\n columnBrowserRef?: React.RefObject<HierarchyColumnBrowserRef | null>\n onCreateNew?: (params: { parentId: null | number | string }) => void\n} & HierarchyDrawerInternalProps\n\nexport type HierarchyDrawerContentRef = {\n selectItem: (id: number | string) => void\n}\n\nexport const HierarchyDrawerContent = function HierarchyDrawerContent({\n baseFilter,\n closeDrawer,\n columnBrowserRef,\n disabledIds,\n filterByCollection,\n hasMany = false,\n hierarchyCollectionSlug,\n Icon,\n initialSelections,\n onCreateNew,\n onMoveToRoot,\n onSave,\n parentFieldName,\n ref,\n showMoveToRoot,\n useAsTitle,\n}: { ref?: React.RefObject<HierarchyDrawerContentRef | null> } & HierarchyDrawerContentProps) {\n const { i18n, t } = useTranslation()\n // NOTE: Do NOT use useModal() here - it causes re-renders when any modal state changes\n // Use closeDrawer prop instead which already handles closing the modal\n const {\n config: {\n routes: { api },\n serverURL,\n },\n getEntityConfig,\n } = useConfig()\n\n const collectionConfig = getEntityConfig({ collectionSlug: hierarchyCollectionSlug })\n const collectionLabel = collectionConfig\n ? getTranslation(collectionConfig.labels?.plural || hierarchyCollectionSlug, i18n)\n : hierarchyCollectionSlug\n\n const parentFieldName_internal =\n collectionConfig?.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy.parentFieldName\n : parentFieldName\n\n const [initialExpandedPath, setInitialExpandedPath] = useState<(number | string)[] | undefined>()\n const [isLoadingPath, setIsLoadingPath] = useState(Boolean(initialSelections?.length))\n const hasLoadedPathRef = React.useRef(false)\n const firstSelection = initialSelections?.[0]\n\n const loadAncestorPath = useEffectEvent(async (itemId?: number | string) => {\n if (!itemId) {\n setIsLoadingPath(false)\n return\n }\n\n try {\n const path = await fetchAncestorPath({\n api,\n collectionSlug: hierarchyCollectionSlug,\n itemId,\n parentFieldName: parentFieldName_internal,\n serverURL,\n })\n setInitialExpandedPath(path)\n } catch {\n // Silently handle fetch errors - will just start at root\n } finally {\n setIsLoadingPath(false)\n }\n })\n\n // Load ancestor path on mount\n useEffect(() => {\n if (hasLoadedPathRef.current) {\n return\n }\n hasLoadedPathRef.current = true\n void loadAncestorPath(firstSelection)\n }, [firstSelection])\n\n const [selections, setSelections] = useState<Map<number | string, SelectionWithPath>>(() => {\n const map = new Map<number | string, SelectionWithPath>()\n\n if (initialSelections) {\n for (const id of initialSelections) {\n map.set(id, { id, path: [] })\n }\n }\n\n return map\n })\n\n const selectedIds = useMemo(() => new Set(selections.keys()), [selections])\n\n // For now, ancestorsWithSelections is empty - will be computed when we have path tracking\n const ancestorsWithSelections = useMemo(() => new Set<number | string>(), [])\n\n const handleCancel = useCallback(() => {\n closeDrawer()\n }, [closeDrawer])\n\n const handleSave = useCallback(() => {\n onSave({ closeDrawer, selections })\n }, [onSave, selections, closeDrawer])\n\n const handleSelect = useCallback(\n ({\n id,\n path,\n }: {\n id: number | string\n path: Array<{ id: number | string; title: string }>\n }) => {\n setSelections((prev) => {\n const next = new Map(prev)\n\n if (next.has(id)) {\n next.delete(id)\n } else {\n if (!hasMany) {\n // Single select: clear previous selections\n next.clear()\n }\n next.set(id, { id, path })\n }\n\n return next\n })\n },\n [hasMany],\n )\n\n const handleClearAll = useCallback(() => {\n setSelections(new Map())\n }, [])\n\n // Expose selectItem for programmatic selection (e.g., after creating a new item)\n useImperativeHandle(\n ref,\n () => ({\n selectItem: (id: number | string) => {\n setSelections((prev) => {\n const next = new Map(prev)\n if (!hasMany) {\n next.clear()\n }\n // Path will be empty for newly created items - could be enhanced later\n next.set(id, { id, path: [] })\n return next\n })\n },\n }),\n [hasMany],\n )\n\n const selectionCount = selections.size\n\n return (\n <div className={`${baseClass}__content`}>\n <DrawerActionHeader\n onCancel={handleCancel}\n onSave={handleSave}\n saveLabel={t('general:select')}\n title={t('general:selectValue', { label: collectionLabel })}\n />\n <div className={`${baseClass}__subheader`}>\n <div className={`${baseClass}__subheader-left`}>\n {Icon || <TagIcon />}\n <h4>{collectionLabel}</h4>\n </div>\n <div className={`${baseClass}__subheader-right`}>\n {showMoveToRoot && onMoveToRoot && (\n <button className={`${baseClass}__move-to-root`} onClick={onMoveToRoot} type=\"button\">\n {t('hierarchy:moveToRoot')}\n </button>\n )}\n {selectionCount > 0 && (\n <>\n <span className={`${baseClass}__selection-info`}>{selectionCount} selected</span>\n <span>—</span>\n <button className={`${baseClass}__clear-all`} onClick={handleClearAll} type=\"button\">\n {t('general:clearAll')}\n </button>\n </>\n )}\n </div>\n </div>\n <div className={`${baseClass}__columns`}>\n <HierarchyColumnBrowser\n ancestorsWithSelections={ancestorsWithSelections}\n baseFilter={baseFilter}\n disabledIds={disabledIds}\n filterByCollection={filterByCollection}\n hierarchyCollectionSlug={hierarchyCollectionSlug}\n initialExpandedPath={initialExpandedPath}\n isLoadingPath={isLoadingPath}\n onCreateNew={onCreateNew}\n onSelect={handleSelect}\n parentFieldName={parentFieldName}\n ref={columnBrowserRef}\n selectedIds={selectedIds}\n useAsTitle={useAsTitle}\n />\n </div>\n </div>\n )\n}\n\nexport const HierarchyDrawer: React.FC<HierarchyDrawerInternalProps> = (props) => {\n const { drawerSlug, hierarchyCollectionSlug, parentFieldName } = props\n\n const { refreshTree } = useHierarchy()\n\n // Get parentFieldName from hierarchy config\n const { getEntityConfig } = useConfig()\n const collectionConfig = getEntityConfig({ collectionSlug: hierarchyCollectionSlug })\n const parentFieldName_internal =\n collectionConfig?.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy.parentFieldName\n : parentFieldName\n\n // Track which parentId is being used for the document drawer - use state to trigger re-render\n const [createParentId, setCreateParentId] = useState<null | number | string>(null)\n\n // Ref to access column browser's refresh function\n const columnBrowserRef = useRef<HierarchyColumnBrowserRef | null>(null)\n\n // Ref to access drawer content's selectItem function\n const drawerContentRef = useRef<HierarchyDrawerContentRef | null>(null)\n\n // Key for DocumentDrawer to force remount when parentId changes\n const [documentDrawerKey, setDocumentDrawerKey] = useState(0)\n\n // Stable drawer slug for the document drawer - must not change on remount\n const documentDrawerSlug = `${drawerSlug}-create-doc`\n\n // Document drawer for creating new items - rendered OUTSIDE the Drawer to avoid nested modal issues\n const [DocumentDrawer, , { closeDrawer: closeDocumentDrawer, openDrawer: openDocumentDrawer }] =\n useDocumentDrawer({\n collectionSlug: hierarchyCollectionSlug,\n drawerSlug: documentDrawerSlug,\n })\n\n const handleCreateNew = useCallback(\n ({ parentId }: { parentId: null | number | string }) => {\n // Increment key to force DocumentDrawer remount with new initialData\n setDocumentDrawerKey((prev) => prev + 1)\n setCreateParentId(parentId)\n // Use setTimeout to ensure state update triggers re-render before opening drawer\n setTimeout(() => {\n openDocumentDrawer()\n }, 0)\n },\n [openDocumentDrawer],\n )\n\n // Refresh the column, select the new item, and close the document drawer after creation\n const handleDocumentSave = useCallback<\n NonNullable<React.ComponentProps<typeof DocumentDrawer>['onSave']>\n >(\n ({ doc }) => {\n if (columnBrowserRef.current && createParentId !== undefined) {\n void columnBrowserRef.current.refreshColumn(createParentId)\n }\n if (drawerContentRef.current && doc?.id) {\n drawerContentRef.current.selectItem(doc.id)\n }\n refreshTree(hierarchyCollectionSlug)\n closeDocumentDrawer()\n },\n [closeDocumentDrawer, createParentId, hierarchyCollectionSlug, refreshTree],\n )\n\n // Memoize the content - only depends on stable values\n const drawerContent = useMemo(\n () => (\n <HierarchyDrawerContent\n {...props}\n columnBrowserRef={columnBrowserRef}\n onCreateNew={handleCreateNew}\n ref={drawerContentRef}\n />\n ),\n [handleCreateNew, props],\n )\n\n return (\n <>\n <DialogModal className={baseClass} closeOnBlur size=\"large\" slug={drawerSlug}>\n {drawerContent}\n </DialogModal>\n <DrawerDepthProvider>\n <DocumentDrawer\n initialData={\n createParentId !== null ? { [parentFieldName_internal]: createParentId } : undefined\n }\n key={documentDrawerKey}\n onSave={handleDocumentSave}\n />\n </DrawerDepthProvider>\n </>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/LeaveWithoutSaving/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAS7D,KAAK,uBAAuB,GAAG;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACtC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,KAAK,IAAI,CAAA;CAC9C,CAAA;AAID,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA+ChE,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,qCAIrC;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACtC,sBAcA,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/LeaveWithoutSaving/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAA;AAE1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAA;AAS7D,KAAK,uBAAuB,GAAG;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACtC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,KAAK,IAAI,CAAA;CAC9C,CAAA;AAID,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAgDhE,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,qCAIrC;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CACtC,sBAcA,CAAA"}
@@ -11,14 +11,15 @@ import { useModal } from '../Modal/index.js';
11
11
  import { usePreventLeave } from './usePreventLeave.js';
12
12
  const leaveWithoutSavingModalSlug = 'leave-without-saving';
13
13
  export const LeaveWithoutSaving = t0 => {
14
- const $ = _c(17);
14
+ const $ = _c(21);
15
15
  const {
16
16
  disablePreventLeave: t1,
17
+ modalSlug: modalSlugProp,
17
18
  onConfirm,
18
19
  onPrevent
19
20
  } = t0;
20
21
  const disablePreventLeave = t1 === undefined ? false : t1;
21
- const modalSlug = leaveWithoutSavingModalSlug;
22
+ const modalSlug = modalSlugProp ?? leaveWithoutSavingModalSlug;
22
23
  const {
23
24
  closeModal,
24
25
  openModal
@@ -33,62 +34,65 @@ export const LeaveWithoutSaving = t0 => {
33
34
  const [hasAccepted, setHasAccepted] = React.useState(false);
34
35
  const prevent = !disablePreventLeave && Boolean((modified || !isValid) && user);
35
36
  let t2;
36
- if ($[0] !== onPrevent || $[1] !== openModal) {
37
+ if ($[0] !== modalSlug || $[1] !== onPrevent || $[2] !== openModal) {
37
38
  t2 = () => {
38
39
  const activeHref = document.activeElement?.href || null;
39
40
  if (onPrevent) {
40
41
  onPrevent(activeHref);
41
42
  }
42
- openModal(leaveWithoutSavingModalSlug);
43
+ openModal(modalSlug);
43
44
  };
44
- $[0] = onPrevent;
45
- $[1] = openModal;
46
- $[2] = t2;
45
+ $[0] = modalSlug;
46
+ $[1] = onPrevent;
47
+ $[2] = openModal;
48
+ $[3] = t2;
47
49
  } else {
48
- t2 = $[2];
50
+ t2 = $[3];
49
51
  }
50
52
  const handlePrevent = t2;
51
53
  let t3;
52
- if ($[3] !== closeModal) {
54
+ if ($[4] !== closeModal || $[5] !== modalSlug) {
53
55
  t3 = () => {
54
- closeModal(leaveWithoutSavingModalSlug);
56
+ closeModal(modalSlug);
55
57
  };
56
- $[3] = closeModal;
57
- $[4] = t3;
58
+ $[4] = closeModal;
59
+ $[5] = modalSlug;
60
+ $[6] = t3;
58
61
  } else {
59
- t3 = $[4];
62
+ t3 = $[6];
60
63
  }
61
64
  const handleAccept = t3;
62
65
  let t4;
63
- if ($[5] !== handleAccept || $[6] !== handlePrevent || $[7] !== hasAccepted || $[8] !== prevent) {
66
+ if ($[7] !== handleAccept || $[8] !== handlePrevent || $[9] !== hasAccepted || $[10] !== prevent) {
64
67
  t4 = {
65
68
  hasAccepted,
66
69
  onAccept: handleAccept,
67
70
  onPrevent: handlePrevent,
68
71
  prevent
69
72
  };
70
- $[5] = handleAccept;
71
- $[6] = handlePrevent;
72
- $[7] = hasAccepted;
73
- $[8] = prevent;
74
- $[9] = t4;
73
+ $[7] = handleAccept;
74
+ $[8] = handlePrevent;
75
+ $[9] = hasAccepted;
76
+ $[10] = prevent;
77
+ $[11] = t4;
75
78
  } else {
76
- t4 = $[9];
79
+ t4 = $[11];
77
80
  }
78
81
  usePreventLeave(t4);
79
82
  let t5;
80
- if ($[10] !== closeModal) {
83
+ if ($[12] !== closeModal || $[13] !== modalSlug) {
81
84
  t5 = () => {
82
- closeModal(leaveWithoutSavingModalSlug);
85
+ closeModal(modalSlug);
83
86
  };
84
- $[10] = closeModal;
85
- $[11] = t5;
87
+ $[12] = closeModal;
88
+ $[13] = modalSlug;
89
+ $[14] = t5;
86
90
  } else {
87
- t5 = $[11];
91
+ t5 = $[14];
88
92
  }
89
93
  const onCancel = t5;
90
94
  let t6;
91
- if ($[12] !== onConfirm) {
95
+ if ($[15] !== onConfirm) {
92
96
  t6 = async () => {
93
97
  if (onConfirm) {
94
98
  ;
@@ -101,24 +105,25 @@ export const LeaveWithoutSaving = t0 => {
101
105
  }
102
106
  setHasAccepted(true);
103
107
  };
104
- $[12] = onConfirm;
105
- $[13] = t6;
108
+ $[15] = onConfirm;
109
+ $[16] = t6;
106
110
  } else {
107
- t6 = $[13];
111
+ t6 = $[16];
108
112
  }
109
113
  const handleConfirm = t6;
110
114
  let t7;
111
- if ($[14] !== handleConfirm || $[15] !== onCancel) {
115
+ if ($[17] !== handleConfirm || $[18] !== modalSlug || $[19] !== onCancel) {
112
116
  t7 = _jsx(LeaveWithoutSavingModal, {
113
- modalSlug: leaveWithoutSavingModalSlug,
117
+ modalSlug,
114
118
  onCancel,
115
119
  onConfirm: handleConfirm
116
120
  });
117
- $[14] = handleConfirm;
118
- $[15] = onCancel;
119
- $[16] = t7;
121
+ $[17] = handleConfirm;
122
+ $[18] = modalSlug;
123
+ $[19] = onCancel;
124
+ $[20] = t7;
120
125
  } else {
121
- t7 = $[16];
126
+ t7 = $[20];
122
127
  }
123
128
  return t7;
124
129
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useForm","useFormModified","useAuth","useTranslation","ConfirmationModal","useModal","usePreventLeave","leaveWithoutSavingModalSlug","LeaveWithoutSaving","t0","$","disablePreventLeave","t1","onConfirm","onPrevent","undefined","modalSlug","closeModal","openModal","modified","isValid","user","hasAccepted","setHasAccepted","useState","prevent","Boolean","t2","activeHref","document","activeElement","href","handlePrevent","t3","handleAccept","t4","onAccept","t5","onCancel","t6","t7","err","console","error","handleConfirm","_jsx","LeaveWithoutSavingModal","t","body","cancelLabel","confirmLabel","heading"],"sources":["../../../src/elements/LeaveWithoutSaving/index.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback } from 'react'\n\nimport type { OnCancel } from '../ConfirmationModal/index.js'\n\nimport { useForm, useFormModified } from '../../forms/Form/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { useModal } from '../Modal/index.js'\nimport { usePreventLeave } from './usePreventLeave.js'\n\ntype LeaveWithoutSavingProps = {\n disablePreventLeave?: boolean\n modalSlug?: string\n onConfirm?: () => Promise<void> | void\n onPrevent?: (nextHref: null | string) => void\n}\n\nconst leaveWithoutSavingModalSlug = 'leave-without-saving'\n\nexport const LeaveWithoutSaving: React.FC<LeaveWithoutSavingProps> = ({\n disablePreventLeave = false,\n onConfirm,\n onPrevent,\n}) => {\n const modalSlug = leaveWithoutSavingModalSlug\n const { closeModal, openModal } = useModal()\n const modified = useFormModified()\n const { isValid } = useForm()\n const { user } = useAuth()\n const [hasAccepted, setHasAccepted] = React.useState(false)\n\n const prevent = !disablePreventLeave && Boolean((modified || !isValid) && user)\n\n const handlePrevent = useCallback(() => {\n const activeHref = (document.activeElement as HTMLAnchorElement)?.href || null\n if (onPrevent) {\n onPrevent(activeHref)\n }\n openModal(modalSlug)\n }, [openModal, onPrevent, modalSlug])\n\n const handleAccept = useCallback(() => {\n closeModal(modalSlug)\n }, [closeModal, modalSlug])\n\n usePreventLeave({ hasAccepted, onAccept: handleAccept, onPrevent: handlePrevent, prevent })\n\n const onCancel: OnCancel = useCallback(() => {\n closeModal(modalSlug)\n }, [closeModal, modalSlug])\n\n const handleConfirm = useCallback(async () => {\n if (onConfirm) {\n try {\n await onConfirm()\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Error in LeaveWithoutSaving onConfirm:', err)\n }\n }\n setHasAccepted(true)\n }, [onConfirm])\n\n return (\n <LeaveWithoutSavingModal modalSlug={modalSlug} onCancel={onCancel} onConfirm={handleConfirm} />\n )\n}\n\nexport const LeaveWithoutSavingModal = ({\n modalSlug,\n onCancel,\n onConfirm,\n}: {\n modalSlug: string\n onCancel?: OnCancel\n onConfirm: () => Promise<void> | void\n}) => {\n const { t } = useTranslation()\n\n return (\n <ConfirmationModal\n body={t('general:changesNotSaved')}\n cancelLabel={t('general:stayOnThisPage')}\n confirmLabel={t('general:leaveAnyway')}\n heading={t('general:leaveWithoutSaving')}\n modalSlug={modalSlug}\n onCancel={onCancel}\n onConfirm={onConfirm}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["c","_c","React","useCallback","useForm","useFormModified","useAuth","useTranslation","ConfirmationModal","useModal","usePreventLeave","leaveWithoutSavingModalSlug","LeaveWithoutSaving","t0","$","disablePreventLeave","t1","modalSlug","modalSlugProp","onConfirm","onPrevent","undefined","closeModal","openModal","modified","isValid","user","hasAccepted","setHasAccepted","useState","prevent","Boolean","t2","activeHref","document","activeElement","href","handlePrevent","t3","handleAccept","t4","onAccept","t5","onCancel","t6","t7","err","console","error","handleConfirm","_jsx","LeaveWithoutSavingModal","t","body","cancelLabel","confirmLabel","heading"],"sources":["../../../src/elements/LeaveWithoutSaving/index.tsx"],"sourcesContent":["'use client'\nimport React, { useCallback } from 'react'\n\nimport type { OnCancel } from '../ConfirmationModal/index.js'\n\nimport { useForm, useFormModified } from '../../forms/Form/index.js'\nimport { useAuth } from '../../providers/Auth/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { ConfirmationModal } from '../ConfirmationModal/index.js'\nimport { useModal } from '../Modal/index.js'\nimport { usePreventLeave } from './usePreventLeave.js'\n\ntype LeaveWithoutSavingProps = {\n disablePreventLeave?: boolean\n modalSlug?: string\n onConfirm?: () => Promise<void> | void\n onPrevent?: (nextHref: null | string) => void\n}\n\nconst leaveWithoutSavingModalSlug = 'leave-without-saving'\n\nexport const LeaveWithoutSaving: React.FC<LeaveWithoutSavingProps> = ({\n disablePreventLeave = false,\n modalSlug: modalSlugProp,\n onConfirm,\n onPrevent,\n}) => {\n const modalSlug = modalSlugProp ?? leaveWithoutSavingModalSlug\n const { closeModal, openModal } = useModal()\n const modified = useFormModified()\n const { isValid } = useForm()\n const { user } = useAuth()\n const [hasAccepted, setHasAccepted] = React.useState(false)\n\n const prevent = !disablePreventLeave && Boolean((modified || !isValid) && user)\n\n const handlePrevent = useCallback(() => {\n const activeHref = (document.activeElement as HTMLAnchorElement)?.href || null\n if (onPrevent) {\n onPrevent(activeHref)\n }\n openModal(modalSlug)\n }, [openModal, onPrevent, modalSlug])\n\n const handleAccept = useCallback(() => {\n closeModal(modalSlug)\n }, [closeModal, modalSlug])\n\n usePreventLeave({ hasAccepted, onAccept: handleAccept, onPrevent: handlePrevent, prevent })\n\n const onCancel: OnCancel = useCallback(() => {\n closeModal(modalSlug)\n }, [closeModal, modalSlug])\n\n const handleConfirm = useCallback(async () => {\n if (onConfirm) {\n try {\n await onConfirm()\n } catch (err) {\n // eslint-disable-next-line no-console\n console.error('Error in LeaveWithoutSaving onConfirm:', err)\n }\n }\n setHasAccepted(true)\n }, [onConfirm])\n\n return (\n <LeaveWithoutSavingModal modalSlug={modalSlug} onCancel={onCancel} onConfirm={handleConfirm} />\n )\n}\n\nexport const LeaveWithoutSavingModal = ({\n modalSlug,\n onCancel,\n onConfirm,\n}: {\n modalSlug: string\n onCancel?: OnCancel\n onConfirm: () => Promise<void> | void\n}) => {\n const { t } = useTranslation()\n\n return (\n <ConfirmationModal\n body={t('general:changesNotSaved')}\n cancelLabel={t('general:stayOnThisPage')}\n confirmLabel={t('general:leaveAnyway')}\n heading={t('general:leaveWithoutSaving')}\n modalSlug={modalSlug}\n onCancel={onCancel}\n onConfirm={onConfirm}\n />\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,16 +6,15 @@
6
6
  border-bottom: var(--stroke-width-small) solid var(--color-border);
7
7
 
8
8
  .pill-selector,
9
- .where-builder,
10
9
  .sort-complex,
11
10
  .group-by-builder {
12
11
  margin-top: var(--spacer-2);
13
12
  }
13
+ }
14
14
 
15
- .search-bar {
16
- min-width: 180px;
17
- width: 180px;
18
- }
15
+ .drawer .list-controls {
16
+ padding-left: var(--spacer-3);
17
+ padding-right: var(--spacer-3);
19
18
  }
20
19
 
21
20
  .list-controls__search-row {
@@ -67,7 +66,6 @@
67
66
  }
68
67
  }
69
68
 
70
- .list-controls__toggle-where,
71
69
  .list-controls__toggle-sort,
72
70
  .list-controls__toggle-group-by {
73
71
  flex: 1;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAgD,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAcnD,OAAO,aAAa,CAAA;AAIpB;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAsJpD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/ListControls/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAgD,MAAM,OAAO,CAAA;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAanD,OAAO,aAAa,CAAA;AAIpB;;;;GAIG;AACH,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAwJpD,CAAA"}
@@ -3,14 +3,12 @@
3
3
  import { c as _c } from "react/compiler-runtime";
4
4
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  import { useWindowInfo } from '@faceless-ui/window-info';
6
- import { validateWhereQuery } from 'payload/shared';
7
6
  import React, { Fragment, useEffect, useRef, useState } from 'react';
8
7
  import { Popup, PopupList } from '../../elements/Popup/index.js';
9
8
  import { ChevronIcon } from '../../icons/Chevron/index.js';
10
9
  import { Dots } from '../../icons/Dots/index.js';
11
10
  import { useListQuery } from '../../providers/ListQuery/index.js';
12
11
  import { useTranslation } from '../../providers/Translation/index.js';
13
- import { AnimateHeight } from '../AnimateHeight/index.js';
14
12
  import { Button } from '../Button/index.js';
15
13
  import { ColumnsButton } from '../ColumnsButton/index.js';
16
14
  import { GroupByControl } from '../GroupByControl/index.js';
@@ -25,7 +23,7 @@ const baseClass = 'list-controls';
25
23
  * the collection's documents.
26
24
  */
27
25
  export const ListControls = props => {
28
- const $ = _c(4);
26
+ const $ = _c(8);
29
27
  const {
30
28
  beforeActions,
31
29
  collectionConfig,
@@ -35,8 +33,10 @@ export const ListControls = props => {
35
33
  enableFilters: t1,
36
34
  enableSort: t2,
37
35
  hasCreatePermission,
36
+ isWhereOpen: isWhereOpenFromProps,
38
37
  listMenuItems,
39
38
  newDocumentURL,
39
+ onWhereToggle,
40
40
  queryPreset: activePreset,
41
41
  queryPresetPermissions,
42
42
  renderedFilters,
@@ -45,8 +45,10 @@ export const ListControls = props => {
45
45
  const enableColumns = t0 === undefined ? true : t0;
46
46
  const enableFilters = t1 === undefined ? true : t1;
47
47
  const enableSort = t2 === undefined ? false : t2;
48
+ const isControlled = typeof onWhereToggle === "function";
48
49
  const {
49
50
  handleSearchChange,
51
+ hasActiveFilters,
50
52
  query
51
53
  } = useListQuery();
52
54
  const {
@@ -62,8 +64,7 @@ export const ListControls = props => {
62
64
  label: ""
63
65
  }).split(" ")[0];
64
66
  const hasWhereParam = useRef(Boolean(query?.where));
65
- const shouldInitializeWhereOpened = validateWhereQuery(query?.where);
66
- const [visibleDrawer, setVisibleDrawer] = useState(shouldInitializeWhereOpened ? "where" : undefined);
67
+ const [visibleDrawer, setVisibleDrawer] = useState(hasActiveFilters ? "where" : undefined);
67
68
  let t4;
68
69
  if ($[0] !== query?.where) {
69
70
  t4 = () => {
@@ -90,6 +91,18 @@ export const ListControls = props => {
90
91
  t6 = $[3];
91
92
  }
92
93
  useEffect(t4, t6);
94
+ const isWhereOpen = isControlled ? Boolean(isWhereOpenFromProps) : visibleDrawer === "where";
95
+ let t7;
96
+ if ($[4] !== isControlled || $[5] !== onWhereToggle || $[6] !== visibleDrawer) {
97
+ t7 = isControlled ? onWhereToggle : () => setVisibleDrawer(visibleDrawer !== "where" ? "where" : undefined);
98
+ $[4] = isControlled;
99
+ $[5] = onWhereToggle;
100
+ $[6] = visibleDrawer;
101
+ $[7] = t7;
102
+ } else {
103
+ t7 = $[7];
104
+ }
105
+ const handleWhereToggle = t7;
93
106
  return _jsxs("div", {
94
107
  className: baseClass,
95
108
  children: [_jsxs("div", {
@@ -117,14 +130,15 @@ export const ListControls = props => {
117
130
  "aria-expanded": visibleDrawer === "where"
118
131
  },
119
132
  icon: _jsx(ChevronIcon, {
120
- direction: visibleDrawer === "where" ? "up" : "down",
133
+ direction: isWhereOpen ? "up" : "down",
121
134
  size: 16
122
135
  }),
123
136
  id: "toggle-list-filters",
124
- onClick: () => setVisibleDrawer(visibleDrawer !== "where" ? "where" : undefined),
137
+ onClick: handleWhereToggle,
138
+ selected: isWhereOpen || hasActiveFilters,
125
139
  size: "medium",
126
140
  children: t("general:filters")
127
- }), collectionConfig.admin.groupBy && _jsx(GroupByControl, {
141
+ }), _jsx(GroupByControl, {
128
142
  collectionSlug: collectionConfig.slug,
129
143
  fields: collectionConfig.fields
130
144
  }), enableColumns && _jsx(ColumnsButton, {
@@ -165,14 +179,14 @@ export const ListControls = props => {
165
179
  })
166
180
  })]
167
181
  })]
168
- }), _jsx(AnimateHeight, {
182
+ }), !isControlled && isWhereOpen && _jsx("div", {
169
183
  className: `${baseClass}__where`,
170
- height: visibleDrawer === "where" ? "auto" : 0,
171
184
  id: `${baseClass}-where`,
172
185
  children: _jsx(WhereBuilder, {
173
186
  collectionPluralLabel: collectionConfig?.labels?.plural,
174
187
  collectionSlug: collectionConfig.slug,
175
188
  fields: collectionConfig?.fields,
189
+ onClose: () => setVisibleDrawer(undefined),
176
190
  renderedFilters,
177
191
  resolvedFilterOptions
178
192
  })