@j2-health/design-system 0.2.0 → 0.2.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 (310) hide show
  1. package/dist/index.cjs +96 -3614
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.js +48 -3551
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/AppConfigProvider.cjs +13 -0
  6. package/dist/src/AppConfigProvider.cjs.map +1 -0
  7. package/dist/src/AppConfigProvider.js +13 -0
  8. package/dist/src/AppConfigProvider.js.map +1 -0
  9. package/dist/src/appTheme.cjs +268 -0
  10. package/dist/src/appTheme.cjs.map +1 -0
  11. package/dist/src/appTheme.js +268 -0
  12. package/dist/src/appTheme.js.map +1 -0
  13. package/dist/src/components/alert/Alert.cjs +95 -0
  14. package/dist/src/components/alert/Alert.cjs.map +1 -0
  15. package/dist/src/components/alert/Alert.js +78 -0
  16. package/dist/src/components/alert/Alert.js.map +1 -0
  17. package/dist/src/components/alert/Alert.module.css.cjs +9 -0
  18. package/dist/src/components/alert/Alert.module.css.cjs.map +1 -0
  19. package/dist/src/components/alert/Alert.module.css.js +9 -0
  20. package/dist/src/components/alert/Alert.module.css.js.map +1 -0
  21. package/dist/src/components/barchart/BarChart.cjs +148 -0
  22. package/dist/src/components/barchart/BarChart.cjs.map +1 -0
  23. package/dist/src/components/barchart/BarChart.js +148 -0
  24. package/dist/src/components/barchart/BarChart.js.map +1 -0
  25. package/dist/src/components/barchart/chart.module.css.cjs +9 -0
  26. package/dist/src/components/barchart/chart.module.css.cjs.map +1 -0
  27. package/dist/src/components/barchart/chart.module.css.js +9 -0
  28. package/dist/src/components/barchart/chart.module.css.js.map +1 -0
  29. package/dist/src/components/breadcrumb/Breadcrumb.cjs +38 -0
  30. package/dist/src/components/breadcrumb/Breadcrumb.cjs.map +1 -0
  31. package/dist/src/components/breadcrumb/Breadcrumb.js +21 -0
  32. package/dist/src/components/breadcrumb/Breadcrumb.js.map +1 -0
  33. package/dist/src/components/bulkActionBar/BulkActionBar.cjs +81 -0
  34. package/dist/src/components/bulkActionBar/BulkActionBar.cjs.map +1 -0
  35. package/dist/src/components/bulkActionBar/BulkActionBar.js +81 -0
  36. package/dist/src/components/bulkActionBar/BulkActionBar.js.map +1 -0
  37. package/dist/src/components/button/Button.cjs +21 -0
  38. package/dist/src/components/button/Button.cjs.map +1 -0
  39. package/dist/src/components/button/Button.js +21 -0
  40. package/dist/src/components/button/Button.js.map +1 -0
  41. package/dist/src/components/card/Card.cjs +36 -0
  42. package/dist/src/components/card/Card.cjs.map +1 -0
  43. package/dist/src/components/card/Card.js +36 -0
  44. package/dist/src/components/card/Card.js.map +1 -0
  45. package/dist/src/components/checkbox/Checkbox.cjs +10 -0
  46. package/dist/src/components/checkbox/Checkbox.cjs.map +1 -0
  47. package/dist/src/components/checkbox/Checkbox.js +10 -0
  48. package/dist/src/components/checkbox/Checkbox.js.map +1 -0
  49. package/dist/src/components/checkboxTree/CheckboxTree.cjs +140 -0
  50. package/dist/src/components/checkboxTree/CheckboxTree.cjs.map +1 -0
  51. package/dist/src/components/checkboxTree/CheckboxTree.js +140 -0
  52. package/dist/src/components/checkboxTree/CheckboxTree.js.map +1 -0
  53. package/dist/src/components/checkboxTree/TreeNode.cjs +92 -0
  54. package/dist/src/components/checkboxTree/TreeNode.cjs.map +1 -0
  55. package/dist/src/components/checkboxTree/TreeNode.js +92 -0
  56. package/dist/src/components/checkboxTree/TreeNode.js.map +1 -0
  57. package/dist/src/components/checkboxTree/utils.cjs +59 -0
  58. package/dist/src/components/checkboxTree/utils.cjs.map +1 -0
  59. package/dist/src/components/checkboxTree/utils.js +59 -0
  60. package/dist/src/components/checkboxTree/utils.js.map +1 -0
  61. package/dist/src/components/collapse/Collapse.cjs +81 -0
  62. package/dist/src/components/collapse/Collapse.cjs.map +1 -0
  63. package/dist/src/components/collapse/Collapse.js +64 -0
  64. package/dist/src/components/collapse/Collapse.js.map +1 -0
  65. package/dist/src/components/collapse/Collapse.module.css.cjs +13 -0
  66. package/dist/src/components/collapse/Collapse.module.css.cjs.map +1 -0
  67. package/dist/src/components/collapse/Collapse.module.css.js +13 -0
  68. package/dist/src/components/collapse/Collapse.module.css.js.map +1 -0
  69. package/dist/src/components/drawer/Drawer.cjs +39 -0
  70. package/dist/src/components/drawer/Drawer.cjs.map +1 -0
  71. package/dist/src/components/drawer/Drawer.js +39 -0
  72. package/dist/src/components/drawer/Drawer.js.map +1 -0
  73. package/dist/src/components/dropdown/Dropdown.cjs +58 -0
  74. package/dist/src/components/dropdown/Dropdown.cjs.map +1 -0
  75. package/dist/src/components/dropdown/Dropdown.js +58 -0
  76. package/dist/src/components/dropdown/Dropdown.js.map +1 -0
  77. package/dist/src/components/filterform/FilterGroup.cjs +64 -0
  78. package/dist/src/components/filterform/FilterGroup.cjs.map +1 -0
  79. package/dist/src/components/filterform/FilterGroup.js +64 -0
  80. package/dist/src/components/filterform/FilterGroup.js.map +1 -0
  81. package/dist/src/components/filterform/FilterInput.cjs +175 -0
  82. package/dist/src/components/filterform/FilterInput.cjs.map +1 -0
  83. package/dist/src/components/filterform/FilterInput.js +158 -0
  84. package/dist/src/components/filterform/FilterInput.js.map +1 -0
  85. package/dist/src/components/filterform/FiltersForm.cjs +168 -0
  86. package/dist/src/components/filterform/FiltersForm.cjs.map +1 -0
  87. package/dist/src/components/filterform/FiltersForm.js +168 -0
  88. package/dist/src/components/filterform/FiltersForm.js.map +1 -0
  89. package/dist/src/components/filterform/FiltersForm.module.css.cjs +21 -0
  90. package/dist/src/components/filterform/FiltersForm.module.css.cjs.map +1 -0
  91. package/dist/src/components/filterform/FiltersForm.module.css.js +21 -0
  92. package/dist/src/components/filterform/FiltersForm.module.css.js.map +1 -0
  93. package/dist/src/components/filterform/filterHelpers.cjs +48 -0
  94. package/dist/src/components/filterform/filterHelpers.cjs.map +1 -0
  95. package/dist/src/components/filterform/filterHelpers.js +48 -0
  96. package/dist/src/components/filterform/filterHelpers.js.map +1 -0
  97. package/dist/src/components/filterform/useFilterField.cjs +210 -0
  98. package/dist/src/components/filterform/useFilterField.cjs.map +1 -0
  99. package/dist/src/components/filterform/useFilterField.js +193 -0
  100. package/dist/src/components/filterform/useFilterField.js.map +1 -0
  101. package/dist/src/components/filterform/useFiltersForm.cjs +160 -0
  102. package/dist/src/components/filterform/useFiltersForm.cjs.map +1 -0
  103. package/dist/src/components/filterform/useFiltersForm.js +160 -0
  104. package/dist/src/components/filterform/useFiltersForm.js.map +1 -0
  105. package/dist/src/components/form/Form.cjs +11 -0
  106. package/dist/src/components/form/Form.cjs.map +1 -0
  107. package/dist/src/components/form/Form.js +11 -0
  108. package/dist/src/components/form/Form.js.map +1 -0
  109. package/dist/src/components/icons/index.cjs +27 -0
  110. package/dist/src/components/icons/index.cjs.map +1 -0
  111. package/dist/src/components/icons/index.js +3 -0
  112. package/dist/src/components/icons/index.js.map +1 -0
  113. package/dist/src/components/input/AntdInput.cjs +13 -0
  114. package/dist/src/components/input/AntdInput.cjs.map +1 -0
  115. package/dist/src/components/input/AntdInput.js +13 -0
  116. package/dist/src/components/input/AntdInput.js.map +1 -0
  117. package/dist/src/components/input/AntdSearchInput.cjs +13 -0
  118. package/dist/src/components/input/AntdSearchInput.cjs.map +1 -0
  119. package/dist/src/components/input/AntdSearchInput.js +13 -0
  120. package/dist/src/components/input/AntdSearchInput.js.map +1 -0
  121. package/dist/src/components/input/Input.cjs +9 -0
  122. package/dist/src/components/input/Input.cjs.map +1 -0
  123. package/dist/src/components/input/Input.js +9 -0
  124. package/dist/src/components/input/Input.js.map +1 -0
  125. package/dist/src/components/inputnumber/InputNumber.cjs +32 -0
  126. package/dist/src/components/inputnumber/InputNumber.cjs.map +1 -0
  127. package/dist/src/components/inputnumber/InputNumber.js +32 -0
  128. package/dist/src/components/inputnumber/InputNumber.js.map +1 -0
  129. package/dist/src/components/inputnumber/InputNumber.module.css.cjs +9 -0
  130. package/dist/src/components/inputnumber/InputNumber.module.css.cjs.map +1 -0
  131. package/dist/src/components/inputnumber/InputNumber.module.css.js +9 -0
  132. package/dist/src/components/inputnumber/InputNumber.module.css.js.map +1 -0
  133. package/dist/src/components/legacyNavMenu/LegacyNavMenu.cjs +52 -0
  134. package/dist/src/components/legacyNavMenu/LegacyNavMenu.cjs.map +1 -0
  135. package/dist/src/components/legacyNavMenu/LegacyNavMenu.js +52 -0
  136. package/dist/src/components/legacyNavMenu/LegacyNavMenu.js.map +1 -0
  137. package/dist/src/components/legacyNavMenu/LegacyNavMenu.module.css.cjs +48 -0
  138. package/dist/src/components/legacyNavMenu/LegacyNavMenu.module.css.cjs.map +1 -0
  139. package/dist/src/components/legacyNavMenu/LegacyNavMenu.module.css.js +48 -0
  140. package/dist/src/components/legacyNavMenu/LegacyNavMenu.module.css.js.map +1 -0
  141. package/dist/src/components/legacyNavMenu/UserProfile.cjs +78 -0
  142. package/dist/src/components/legacyNavMenu/UserProfile.cjs.map +1 -0
  143. package/dist/src/components/legacyNavMenu/UserProfile.js +78 -0
  144. package/dist/src/components/legacyNavMenu/UserProfile.js.map +1 -0
  145. package/dist/src/components/legacyNavMenu/UserProfile.module.css.cjs +42 -0
  146. package/dist/src/components/legacyNavMenu/UserProfile.module.css.cjs.map +1 -0
  147. package/dist/src/components/legacyNavMenu/UserProfile.module.css.js +42 -0
  148. package/dist/src/components/legacyNavMenu/UserProfile.module.css.js.map +1 -0
  149. package/dist/src/components/listpopover/ListPopover.cjs +125 -0
  150. package/dist/src/components/listpopover/ListPopover.cjs.map +1 -0
  151. package/dist/src/components/listpopover/ListPopover.js +125 -0
  152. package/dist/src/components/listpopover/ListPopover.js.map +1 -0
  153. package/dist/src/components/listpopover/ListPopover.module.css.cjs +9 -0
  154. package/dist/src/components/listpopover/ListPopover.module.css.cjs.map +1 -0
  155. package/dist/src/components/listpopover/ListPopover.module.css.js +9 -0
  156. package/dist/src/components/listpopover/ListPopover.module.css.js.map +1 -0
  157. package/dist/src/components/menu/Menu.cjs +18 -0
  158. package/dist/src/components/menu/Menu.cjs.map +1 -0
  159. package/dist/src/components/menu/Menu.js +18 -0
  160. package/dist/src/components/menu/Menu.js.map +1 -0
  161. package/dist/src/components/menu/Menu.module.css.cjs +12 -0
  162. package/dist/src/components/menu/Menu.module.css.cjs.map +1 -0
  163. package/dist/src/components/menu/Menu.module.css.js +12 -0
  164. package/dist/src/components/menu/Menu.module.css.js.map +1 -0
  165. package/dist/src/components/message/Message.module.css.cjs +9 -0
  166. package/dist/src/components/message/Message.module.css.cjs.map +1 -0
  167. package/dist/src/components/message/Message.module.css.js +9 -0
  168. package/dist/src/components/message/Message.module.css.js.map +1 -0
  169. package/dist/src/components/message/useMessage.cjs +55 -0
  170. package/dist/src/components/message/useMessage.cjs.map +1 -0
  171. package/dist/src/components/message/useMessage.js +55 -0
  172. package/dist/src/components/message/useMessage.js.map +1 -0
  173. package/dist/src/components/modal/Modal.cjs +32 -0
  174. package/dist/src/components/modal/Modal.cjs.map +1 -0
  175. package/dist/src/components/modal/Modal.js +32 -0
  176. package/dist/src/components/modal/Modal.js.map +1 -0
  177. package/dist/src/components/navMenu/NavMenu.cjs +132 -0
  178. package/dist/src/components/navMenu/NavMenu.cjs.map +1 -0
  179. package/dist/src/components/navMenu/NavMenu.js +115 -0
  180. package/dist/src/components/navMenu/NavMenu.js.map +1 -0
  181. package/dist/src/components/navMenu/NavMenu.module.css.cjs +18 -0
  182. package/dist/src/components/navMenu/NavMenu.module.css.cjs.map +1 -0
  183. package/dist/src/components/navMenu/NavMenu.module.css.js +18 -0
  184. package/dist/src/components/navMenu/NavMenu.module.css.js.map +1 -0
  185. package/dist/src/components/notification/Notification.module.css.cjs +9 -0
  186. package/dist/src/components/notification/Notification.module.css.cjs.map +1 -0
  187. package/dist/src/components/notification/Notification.module.css.js +9 -0
  188. package/dist/src/components/notification/Notification.module.css.js.map +1 -0
  189. package/dist/src/components/notification/useNotification.cjs +52 -0
  190. package/dist/src/components/notification/useNotification.cjs.map +1 -0
  191. package/dist/src/components/notification/useNotification.js +52 -0
  192. package/dist/src/components/notification/useNotification.js.map +1 -0
  193. package/dist/src/components/notificationModal/NotifcationModal.module.css.cjs +21 -0
  194. package/dist/src/components/notificationModal/NotifcationModal.module.css.cjs.map +1 -0
  195. package/dist/src/components/notificationModal/NotifcationModal.module.css.js +21 -0
  196. package/dist/src/components/notificationModal/NotifcationModal.module.css.js.map +1 -0
  197. package/dist/src/components/notificationModal/NotificationModal.cjs +57 -0
  198. package/dist/src/components/notificationModal/NotificationModal.cjs.map +1 -0
  199. package/dist/src/components/notificationModal/NotificationModal.js +57 -0
  200. package/dist/src/components/notificationModal/NotificationModal.js.map +1 -0
  201. package/dist/src/components/pagination/Pagination.cjs +65 -0
  202. package/dist/src/components/pagination/Pagination.cjs.map +1 -0
  203. package/dist/src/components/pagination/Pagination.js +65 -0
  204. package/dist/src/components/pagination/Pagination.js.map +1 -0
  205. package/dist/src/components/pagination/Pagination.module.css.cjs +6 -0
  206. package/dist/src/components/pagination/Pagination.module.css.cjs.map +1 -0
  207. package/dist/src/components/pagination/Pagination.module.css.js +7 -0
  208. package/dist/src/components/pagination/Pagination.module.css.js.map +1 -0
  209. package/dist/src/components/popover/Popover.cjs +41 -0
  210. package/dist/src/components/popover/Popover.cjs.map +1 -0
  211. package/dist/src/components/popover/Popover.js +41 -0
  212. package/dist/src/components/popover/Popover.js.map +1 -0
  213. package/dist/src/components/popover/Popover.module.css.cjs +33 -0
  214. package/dist/src/components/popover/Popover.module.css.cjs.map +1 -0
  215. package/dist/src/components/popover/Popover.module.css.js +33 -0
  216. package/dist/src/components/popover/Popover.module.css.js.map +1 -0
  217. package/dist/src/components/progress/Progress.cjs +9 -0
  218. package/dist/src/components/progress/Progress.cjs.map +1 -0
  219. package/dist/src/components/progress/Progress.js +9 -0
  220. package/dist/src/components/progress/Progress.js.map +1 -0
  221. package/dist/src/components/radio/Radio.cjs +24 -0
  222. package/dist/src/components/radio/Radio.cjs.map +1 -0
  223. package/dist/src/components/radio/Radio.js +24 -0
  224. package/dist/src/components/radio/Radio.js.map +1 -0
  225. package/dist/src/components/rate/Rate.cjs +22 -0
  226. package/dist/src/components/rate/Rate.cjs.map +1 -0
  227. package/dist/src/components/rate/Rate.js +22 -0
  228. package/dist/src/components/rate/Rate.js.map +1 -0
  229. package/dist/src/components/select/AntdSelect.cjs +76 -0
  230. package/dist/src/components/select/AntdSelect.cjs.map +1 -0
  231. package/dist/src/components/select/AntdSelect.js +60 -0
  232. package/dist/src/components/select/AntdSelect.js.map +1 -0
  233. package/dist/src/components/select/Select.cjs +107 -0
  234. package/dist/src/components/select/Select.cjs.map +1 -0
  235. package/dist/src/components/select/Select.js +107 -0
  236. package/dist/src/components/select/Select.js.map +1 -0
  237. package/dist/src/components/select/SummarizedSelect.cjs +455 -0
  238. package/dist/src/components/select/SummarizedSelect.cjs.map +1 -0
  239. package/dist/src/components/select/SummarizedSelect.js +455 -0
  240. package/dist/src/components/select/SummarizedSelect.js.map +1 -0
  241. package/dist/src/components/select/SummarizedSelect.module.css.cjs +30 -0
  242. package/dist/src/components/select/SummarizedSelect.module.css.cjs.map +1 -0
  243. package/dist/src/components/select/SummarizedSelect.module.css.js +30 -0
  244. package/dist/src/components/select/SummarizedSelect.module.css.js.map +1 -0
  245. package/dist/src/components/skeleton/Skeleton.cjs +14 -0
  246. package/dist/src/components/skeleton/Skeleton.cjs.map +1 -0
  247. package/dist/src/components/skeleton/Skeleton.js +14 -0
  248. package/dist/src/components/skeleton/Skeleton.js.map +1 -0
  249. package/dist/src/components/spinner/Spinner.cjs +20 -0
  250. package/dist/src/components/spinner/Spinner.cjs.map +1 -0
  251. package/dist/src/components/spinner/Spinner.js +20 -0
  252. package/dist/src/components/spinner/Spinner.js.map +1 -0
  253. package/dist/src/components/steps/Steps.cjs +50 -0
  254. package/dist/src/components/steps/Steps.cjs.map +1 -0
  255. package/dist/src/components/steps/Steps.js +50 -0
  256. package/dist/src/components/steps/Steps.js.map +1 -0
  257. package/dist/src/components/steps/useSteps.cjs +56 -0
  258. package/dist/src/components/steps/useSteps.cjs.map +1 -0
  259. package/dist/src/components/steps/useSteps.js +56 -0
  260. package/dist/src/components/steps/useSteps.js.map +1 -0
  261. package/dist/src/components/switch/Switch.cjs +28 -0
  262. package/dist/src/components/switch/Switch.cjs.map +1 -0
  263. package/dist/src/components/switch/Switch.js +28 -0
  264. package/dist/src/components/switch/Switch.js.map +1 -0
  265. package/dist/src/components/table/Table.cjs +117 -0
  266. package/dist/src/components/table/Table.cjs.map +1 -0
  267. package/dist/src/components/table/Table.js +117 -0
  268. package/dist/src/components/table/Table.js.map +1 -0
  269. package/dist/src/components/table/Table.module.css.cjs +12 -0
  270. package/dist/src/components/table/Table.module.css.cjs.map +1 -0
  271. package/dist/src/components/table/Table.module.css.js +12 -0
  272. package/dist/src/components/table/Table.module.css.js.map +1 -0
  273. package/dist/src/components/tabs/Tabs.cjs +10 -0
  274. package/dist/src/components/tabs/Tabs.cjs.map +1 -0
  275. package/dist/src/components/tabs/Tabs.js +10 -0
  276. package/dist/src/components/tabs/Tabs.js.map +1 -0
  277. package/dist/src/components/tag/Tag.cjs +74 -0
  278. package/dist/src/components/tag/Tag.cjs.map +1 -0
  279. package/dist/src/components/tag/Tag.js +57 -0
  280. package/dist/src/components/tag/Tag.js.map +1 -0
  281. package/dist/src/components/tooltip/Tooltip.cjs +14 -0
  282. package/dist/src/components/tooltip/Tooltip.cjs.map +1 -0
  283. package/dist/src/components/tooltip/Tooltip.js +14 -0
  284. package/dist/src/components/tooltip/Tooltip.js.map +1 -0
  285. package/dist/src/components/vennDiagram/VennDiagram.cjs +47 -0
  286. package/dist/src/components/vennDiagram/VennDiagram.cjs.map +1 -0
  287. package/dist/src/components/vennDiagram/VennDiagram.js +47 -0
  288. package/dist/src/components/vennDiagram/VennDiagram.js.map +1 -0
  289. package/dist/src/svgs/ProgressCircle.svg.cjs +22 -0
  290. package/dist/src/svgs/ProgressCircle.svg.cjs.map +1 -0
  291. package/dist/src/svgs/ProgressCircle.svg.js +6 -0
  292. package/dist/src/svgs/ProgressCircle.svg.js.map +1 -0
  293. package/dist/src/svgs/j2-logo-menu-collapse.svg.cjs +22 -0
  294. package/dist/src/svgs/j2-logo-menu-collapse.svg.cjs.map +1 -0
  295. package/dist/src/svgs/j2-logo-menu-collapse.svg.js +6 -0
  296. package/dist/src/svgs/j2-logo-menu-collapse.svg.js.map +1 -0
  297. package/dist/src/svgs/j2-logo-menu.svg.cjs +22 -0
  298. package/dist/src/svgs/j2-logo-menu.svg.cjs.map +1 -0
  299. package/dist/src/svgs/j2-logo-menu.svg.js +6 -0
  300. package/dist/src/svgs/j2-logo-menu.svg.js.map +1 -0
  301. package/dist/src/svgs/menu-sidebar-collapse.svg.cjs +22 -0
  302. package/dist/src/svgs/menu-sidebar-collapse.svg.cjs.map +1 -0
  303. package/dist/src/svgs/menu-sidebar-collapse.svg.js +6 -0
  304. package/dist/src/svgs/menu-sidebar-collapse.svg.js.map +1 -0
  305. package/dist/src/svgs/menu-sidebar-expand.svg.cjs +22 -0
  306. package/dist/src/svgs/menu-sidebar-expand.svg.cjs.map +1 -0
  307. package/dist/src/svgs/menu-sidebar-expand.svg.js +6 -0
  308. package/dist/src/svgs/menu-sidebar-expand.svg.js.map +1 -0
  309. package/dist/style.css +646 -646
  310. package/package.json +1 -1
@@ -0,0 +1,160 @@
1
+ import { useReducer } from "react";
2
+ import cloneDeep from "lodash/cloneDeep.js";
3
+ import { isEmptyFormFilter } from "./filterHelpers.js";
4
+ const copyFilterGroups = (filterGroups) => {
5
+ return cloneDeep(filterGroups);
6
+ };
7
+ const addFilter = (filter, filterGroups) => {
8
+ const copy = copyFilterGroups(filterGroups);
9
+ const filterGroupIndex = copy.findIndex(
10
+ (filterGroup) => filterGroup.field === filter.field
11
+ );
12
+ if (filterGroupIndex === -1) {
13
+ copy.push({ field: filter.field, filters: [filter] });
14
+ } else {
15
+ copy[filterGroupIndex].filters.push(filter);
16
+ }
17
+ return copy;
18
+ };
19
+ const removeFilter = (groupIndex, filterIndex, filterGroups) => {
20
+ const copy = copyFilterGroups(filterGroups);
21
+ copy[groupIndex].filters.splice(filterIndex, 1);
22
+ return copy.filter((group) => group.filters.length > 0);
23
+ };
24
+ const filterFormReducer = (state, action) => {
25
+ var _a;
26
+ switch (action.type) {
27
+ case "initialize": {
28
+ const filterGroups = (_a = action.payload) == null ? void 0 : _a.filters.reduce(
29
+ (acc, filter) => {
30
+ return addFilter(filter, acc);
31
+ },
32
+ [...state.filterGroups]
33
+ );
34
+ return {
35
+ ...state,
36
+ filterGroups: filterGroups ?? [],
37
+ isNewFilterInputOpen: !(filterGroups == null ? void 0 : filterGroups.length)
38
+ };
39
+ }
40
+ case "openNewFilterInput": {
41
+ return {
42
+ ...state,
43
+ isNewFilterInputOpen: true
44
+ };
45
+ }
46
+ case "addNewFilter": {
47
+ if (action.payload.errors && action.payload.errors.length > 0) {
48
+ return state;
49
+ }
50
+ const filterGroups = addFilter(action.payload, state.filterGroups);
51
+ return {
52
+ ...state,
53
+ filterGroups,
54
+ newFilter: void 0,
55
+ isNewFilterInputOpen: false
56
+ };
57
+ }
58
+ case "changeNewFilter": {
59
+ return {
60
+ ...state,
61
+ newFilter: action.payload
62
+ };
63
+ }
64
+ case "removeNewFilter": {
65
+ const allFiltersRemoved = state.filterGroups.every(
66
+ (group) => group.filters.length === 0
67
+ );
68
+ return {
69
+ ...state,
70
+ newFilter: void 0,
71
+ isNewFilterInputOpen: allFiltersRemoved
72
+ };
73
+ }
74
+ case "updateFilter": {
75
+ const { groupIndex, filterIndex, filter } = action.payload;
76
+ let filterGroups = copyFilterGroups(state.filterGroups);
77
+ const groupField = filterGroups[groupIndex].field;
78
+ if (groupField === filter.field) {
79
+ filterGroups[groupIndex].filters[filterIndex] = filter;
80
+ } else {
81
+ filterGroups = removeFilter(groupIndex, filterIndex, filterGroups);
82
+ filterGroups = addFilter(filter, filterGroups);
83
+ }
84
+ return {
85
+ ...state,
86
+ filterGroups
87
+ };
88
+ }
89
+ case "changeFilter": {
90
+ const { groupIndex, filterIndex, filter } = action.payload;
91
+ const filterGroups = copyFilterGroups(state.filterGroups);
92
+ const group = filterGroups[groupIndex];
93
+ if (group) {
94
+ group.filters[filterIndex] = filter;
95
+ }
96
+ return {
97
+ ...state,
98
+ filterGroups
99
+ };
100
+ }
101
+ case "removeFilter": {
102
+ const { groupIndex, filterIndex } = action.payload;
103
+ const filterGroups = removeFilter(
104
+ groupIndex,
105
+ filterIndex,
106
+ state.filterGroups
107
+ );
108
+ return {
109
+ ...state,
110
+ filterGroups,
111
+ isNewFilterInputOpen: state.isNewFilterInputOpen || filterGroups.length === 0
112
+ };
113
+ }
114
+ case "clearAllFilters": {
115
+ return {
116
+ ...state,
117
+ filterGroups: [],
118
+ isNewFilterInputOpen: true
119
+ };
120
+ }
121
+ default:
122
+ return state;
123
+ }
124
+ };
125
+ const useFiltersForm = ({
126
+ initialValues
127
+ }) => {
128
+ const [{ filterGroups, newFilter, isNewFilterInputOpen }, dispatch] = useReducer(
129
+ filterFormReducer,
130
+ {
131
+ filterGroups: [],
132
+ newFilter: void 0,
133
+ isNewFilterInputOpen: true
134
+ },
135
+ (state) => {
136
+ return filterFormReducer(state, {
137
+ type: "initialize",
138
+ payload: initialValues
139
+ });
140
+ }
141
+ );
142
+ const isValid = (filterGroups.length === 0 || filterGroups.every(
143
+ (group) => group.filters.every(
144
+ (filter) => filter.errors && filter.errors.length === 0
145
+ )
146
+ )) && ((newFilter == null ? void 0 : newFilter.errors) ? newFilter.errors.length === 0 : true);
147
+ const isEmpty = filterGroups.length === 0 && (newFilter ? isEmptyFormFilter(newFilter) : true);
148
+ return {
149
+ dispatch,
150
+ filterGroups,
151
+ newFilter,
152
+ isNewFilterInputOpen,
153
+ isValid,
154
+ isEmpty
155
+ };
156
+ };
157
+ export {
158
+ useFiltersForm
159
+ };
160
+ //# sourceMappingURL=useFiltersForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFiltersForm.js","sources":["../../../../src/components/filterform/useFiltersForm.ts"],"sourcesContent":["import { useReducer } from 'react'\nimport { FilterForm, FilterGroup, FormFilter } from './types'\n// Deep import, not `import { cloneDeep } from 'lodash'`: lodash is CommonJS\n// and Node cannot statically detect its named exports, so the bundled\n// package throws \"Named export 'cloneDeep' not found\" when a consumer\n// loads it through native Node ESM (SSR, or vitest without a bundler).\nimport cloneDeep from 'lodash/cloneDeep.js'\nimport { isEmptyFormFilter } from './filterHelpers'\n\ntype UseFiltersFormInput = {\n initialValues?: FilterForm\n}\n\ntype UseFiltersFormOutput = {\n dispatch: (action: Action) => void\n filterGroups: FilterGroup[]\n newFilter: FormFilter | undefined\n isNewFilterInputOpen: boolean\n isValid: boolean\n isEmpty: boolean\n}\n\ntype FilterFormState = {\n filterGroups: FilterGroup[]\n newFilter: FormFilter | undefined\n isNewFilterInputOpen: boolean\n}\n\ntype InitializeAction = {\n type: 'initialize'\n payload: FilterForm | undefined\n}\n\ntype OpenNewFilterInputAction = {\n type: 'openNewFilterInput'\n}\n\ntype AddNewFilterAction = {\n type: 'addNewFilter'\n payload: FormFilter\n}\n\ntype ChangeNewFilterAction = {\n type: 'changeNewFilter'\n payload: FormFilter\n}\n\ntype RemoveNewFilterAction = {\n type: 'removeNewFilter'\n}\n\ntype ClearAllFiltersAction = {\n type: 'clearAllFilters'\n}\n\ntype UpdateFilterAction = {\n type: 'updateFilter'\n payload: {\n groupIndex: number\n filterIndex: number\n filter: FormFilter\n }\n}\n\ntype ChangeFilterAction = {\n type: 'changeFilter'\n payload: {\n groupIndex: number\n filterIndex: number\n filter: FormFilter\n }\n}\n\ntype RemoveFilterAction = {\n type: 'removeFilter'\n payload: {\n groupIndex: number\n filterIndex: number\n }\n}\n\ntype Action =\n | AddNewFilterAction\n | UpdateFilterAction\n | ClearAllFiltersAction\n | ChangeNewFilterAction\n | OpenNewFilterInputAction\n | ChangeFilterAction\n | RemoveFilterAction\n | InitializeAction\n | RemoveNewFilterAction\n\nconst copyFilterGroups = (filterGroups: FilterGroup[]): FilterGroup[] => {\n return cloneDeep(filterGroups)\n}\n\nconst addFilter = (\n filter: FormFilter,\n filterGroups: FilterGroup[]\n): FilterGroup[] => {\n const copy = copyFilterGroups(filterGroups)\n const filterGroupIndex = copy.findIndex(\n (filterGroup) => filterGroup.field === filter.field\n )\n\n if (filterGroupIndex === -1) {\n copy.push({ field: filter.field, filters: [filter] })\n } else {\n copy[filterGroupIndex].filters.push(filter)\n }\n\n return copy\n}\n\nconst removeFilter = (\n groupIndex: number,\n filterIndex: number,\n filterGroups: FilterGroup[]\n): FilterGroup[] => {\n const copy = copyFilterGroups(filterGroups)\n copy[groupIndex].filters.splice(filterIndex, 1)\n\n return copy.filter((group) => group.filters.length > 0)\n}\n\nconst filterFormReducer = (state: FilterFormState, action: Action) => {\n switch (action.type) {\n case 'initialize': {\n const filterGroups = action.payload?.filters.reduce(\n (acc, filter) => {\n return addFilter(filter, acc)\n },\n [...state.filterGroups]\n )\n\n return {\n ...state,\n filterGroups: filterGroups ?? [],\n isNewFilterInputOpen: !filterGroups?.length,\n }\n }\n case 'openNewFilterInput': {\n return {\n ...state,\n isNewFilterInputOpen: true,\n }\n }\n case 'addNewFilter': {\n if (action.payload.errors && action.payload.errors.length > 0) {\n return state\n }\n\n const filterGroups = addFilter(action.payload, state.filterGroups)\n\n return {\n ...state,\n filterGroups,\n newFilter: undefined,\n isNewFilterInputOpen: false,\n }\n }\n case 'changeNewFilter': {\n return {\n ...state,\n newFilter: action.payload,\n }\n }\n case 'removeNewFilter': {\n const allFiltersRemoved = state.filterGroups.every(\n (group) => group.filters.length === 0\n )\n return {\n ...state,\n newFilter: undefined,\n isNewFilterInputOpen: allFiltersRemoved,\n }\n }\n case 'updateFilter': {\n const { groupIndex, filterIndex, filter } = action.payload\n let filterGroups = copyFilterGroups(state.filterGroups)\n const groupField = filterGroups[groupIndex].field\n\n if (groupField === filter.field) {\n filterGroups[groupIndex].filters[filterIndex] = filter\n } else {\n filterGroups = removeFilter(groupIndex, filterIndex, filterGroups)\n filterGroups = addFilter(filter, filterGroups)\n }\n\n return {\n ...state,\n filterGroups,\n }\n }\n case 'changeFilter': {\n const { groupIndex, filterIndex, filter } = action.payload\n const filterGroups = copyFilterGroups(state.filterGroups)\n const group = filterGroups[groupIndex]\n if (group) {\n group.filters[filterIndex] = filter\n }\n\n return {\n ...state,\n filterGroups,\n }\n }\n case 'removeFilter': {\n const { groupIndex, filterIndex } = action.payload\n\n const filterGroups = removeFilter(\n groupIndex,\n filterIndex,\n state.filterGroups\n )\n\n return {\n ...state,\n filterGroups,\n isNewFilterInputOpen:\n state.isNewFilterInputOpen || filterGroups.length === 0,\n }\n }\n case 'clearAllFilters': {\n return {\n ...state,\n filterGroups: [],\n isNewFilterInputOpen: true,\n }\n }\n default:\n return state\n }\n}\n\nexport const useFiltersForm = ({\n initialValues,\n}: UseFiltersFormInput): UseFiltersFormOutput => {\n const [{ filterGroups, newFilter, isNewFilterInputOpen }, dispatch] =\n useReducer(\n filterFormReducer,\n {\n filterGroups: [],\n newFilter: undefined,\n isNewFilterInputOpen: true,\n },\n (state) => {\n return filterFormReducer(state, {\n type: 'initialize',\n payload: initialValues,\n })\n }\n )\n\n const isValid =\n (filterGroups.length === 0 ||\n filterGroups.every((group) =>\n group.filters.every(\n (filter) => filter.errors && filter.errors.length === 0\n )\n )) &&\n (newFilter?.errors ? newFilter.errors.length === 0 : true)\n\n const isEmpty =\n filterGroups.length === 0 &&\n (newFilter ? isEmptyFormFilter(newFilter) : true)\n\n return {\n dispatch,\n filterGroups,\n newFilter,\n isNewFilterInputOpen,\n isValid,\n isEmpty,\n }\n}\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const formikAntd = require("formik-antd");
5
+ ;/* empty css */
6
+ const Form = ({ children, ...props }) => {
7
+ return /* @__PURE__ */ jsxRuntime.jsx(formikAntd.Form, { ...props, children });
8
+ };
9
+ Form.Item = formikAntd.FormItem;
10
+ exports.Form = Form;
11
+ //# sourceMappingURL=Form.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.cjs","sources":["../../../../src/components/form/Form.tsx"],"sourcesContent":["import { FormProps } from 'antd'\nimport { Form as AntdForm, FormItem } from 'formik-antd'\nimport './Form.css'\n\ntype Props = Expand<FormProps>\n\nexport const Form = ({ children, ...props }: Props) => {\n return <AntdForm {...props}>{children}</AntdForm>\n}\n\nForm.Item = FormItem\n"],"names":["jsx","AntdForm","FormItem"],"mappings":";;;;;AAMO,MAAM,OAAO,CAAC,EAAE,UAAU,GAAG,YAAmB;AACrD,SAAOA,2BAAAA,IAACC,WAAAA,MAAA,EAAU,GAAG,OAAQ,SAAA,CAAS;AACxC;AAEA,KAAK,OAAOC,WAAAA;;"}
@@ -0,0 +1,11 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Form as Form$1, FormItem } from "formik-antd";
3
+ /* empty css */
4
+ const Form = ({ children, ...props }) => {
5
+ return /* @__PURE__ */ jsx(Form$1, { ...props, children });
6
+ };
7
+ Form.Item = FormItem;
8
+ export {
9
+ Form
10
+ };
11
+ //# sourceMappingURL=Form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Form.js","sources":["../../../../src/components/form/Form.tsx"],"sourcesContent":["import { FormProps } from 'antd'\nimport { Form as AntdForm, FormItem } from 'formik-antd'\nimport './Form.css'\n\ntype Props = Expand<FormProps>\n\nexport const Form = ({ children, ...props }: Props) => {\n return <AntdForm {...props}>{children}</AntdForm>\n}\n\nForm.Item = FormItem\n"],"names":["AntdForm"],"mappings":";;;AAMO,MAAM,OAAO,CAAC,EAAE,UAAU,GAAG,YAAmB;AACrD,SAAO,oBAACA,QAAA,EAAU,GAAG,OAAQ,SAAA,CAAS;AACxC;AAEA,KAAK,OAAO;"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const react = require("@phosphor-icons/react");
4
+ function _interopNamespaceDefault(e) {
5
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
6
+ if (e) {
7
+ for (const k in e) {
8
+ if (k !== "default") {
9
+ const d = Object.getOwnPropertyDescriptor(e, k);
10
+ Object.defineProperty(n, k, d.get ? d : {
11
+ enumerable: true,
12
+ get: () => e[k]
13
+ });
14
+ }
15
+ }
16
+ }
17
+ n.default = e;
18
+ return Object.freeze(n);
19
+ }
20
+ const react__namespace = /* @__PURE__ */ _interopNamespaceDefault(react);
21
+ Object.keys(react).forEach((k) => {
22
+ if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
23
+ enumerable: true,
24
+ get: () => react[k]
25
+ });
26
+ });
27
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,3 @@
1
+ import * as react from "@phosphor-icons/react";
2
+ export * from "@phosphor-icons/react";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const antd = require("antd");
6
+ const AntdInput = React.forwardRef(
7
+ ({ size = "large", ...props }, ref) => {
8
+ return /* @__PURE__ */ jsxRuntime.jsx(antd.Input, { ref, size, ...props });
9
+ }
10
+ );
11
+ AntdInput.displayName = "AntdInput";
12
+ exports.AntdInput = AntdInput;
13
+ //# sourceMappingURL=AntdInput.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AntdInput.cjs","sources":["../../../../src/components/input/AntdInput.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Input as RawAntDInput } from 'antd'\nimport type { InputProps as AntDInputProps, InputRef } from 'antd'\n\ntype AntdInputProps = Expand<AntDInputProps>\n\nexport type { InputRef }\n\nexport const AntdInput = forwardRef<InputRef, AntdInputProps>(\n ({ size = 'large', ...props }, ref) => {\n return <RawAntDInput ref={ref} size={size} {...props} />\n }\n)\n\nAntdInput.displayName = 'AntdInput'\n"],"names":["forwardRef","jsx","RawAntDInput"],"mappings":";;;;;AAQO,MAAM,YAAYA,MAAAA;AAAAA,EACvB,CAAC,EAAE,OAAO,SAAS,GAAG,MAAA,GAAS,QAAQ;AACrC,WAAOC,2BAAAA,IAACC,KAAAA,OAAA,EAAa,KAAU,MAAa,GAAG,OAAO;AAAA,EACxD;AACF;AAEA,UAAU,cAAc;;"}
@@ -0,0 +1,13 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from "react";
3
+ import { Input } from "antd";
4
+ const AntdInput = forwardRef(
5
+ ({ size = "large", ...props }, ref) => {
6
+ return /* @__PURE__ */ jsx(Input, { ref, size, ...props });
7
+ }
8
+ );
9
+ AntdInput.displayName = "AntdInput";
10
+ export {
11
+ AntdInput
12
+ };
13
+ //# sourceMappingURL=AntdInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AntdInput.js","sources":["../../../../src/components/input/AntdInput.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Input as RawAntDInput } from 'antd'\nimport type { InputProps as AntDInputProps, InputRef } from 'antd'\n\ntype AntdInputProps = Expand<AntDInputProps>\n\nexport type { InputRef }\n\nexport const AntdInput = forwardRef<InputRef, AntdInputProps>(\n ({ size = 'large', ...props }, ref) => {\n return <RawAntDInput ref={ref} size={size} {...props} />\n }\n)\n\nAntdInput.displayName = 'AntdInput'\n"],"names":["RawAntDInput"],"mappings":";;;AAQO,MAAM,YAAY;AAAA,EACvB,CAAC,EAAE,OAAO,SAAS,GAAG,MAAA,GAAS,QAAQ;AACrC,WAAO,oBAACA,OAAA,EAAa,KAAU,MAAa,GAAG,OAAO;AAAA,EACxD;AACF;AAEA,UAAU,cAAc;"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const antd = require("antd");
6
+ const AntdSearchInput = React.forwardRef(
7
+ ({ size = "large", ...props }, ref) => {
8
+ return /* @__PURE__ */ jsxRuntime.jsx(antd.Input.Search, { ref, size, ...props });
9
+ }
10
+ );
11
+ AntdSearchInput.displayName = "AntdSearchInput";
12
+ exports.AntdSearchInput = AntdSearchInput;
13
+ //# sourceMappingURL=AntdSearchInput.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AntdSearchInput.cjs","sources":["../../../../src/components/input/AntdSearchInput.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Input as RawAntDInput } from 'antd'\nimport type { InputRef } from 'antd'\nimport type { SearchProps as AntDSearchProps } from 'antd/es/input/Search'\n\ntype AntdSearchInputProps = Expand<AntDSearchProps>\n\nexport const AntdSearchInput = forwardRef<InputRef, AntdSearchInputProps>(\n ({ size = 'large', ...props }, ref) => {\n return <RawAntDInput.Search ref={ref} size={size} {...props} />\n }\n)\n\nAntdSearchInput.displayName = 'AntdSearchInput'\n"],"names":["forwardRef","RawAntDInput"],"mappings":";;;;;AAOO,MAAM,kBAAkBA,MAAAA;AAAAA,EAC7B,CAAC,EAAE,OAAO,SAAS,GAAG,MAAA,GAAS,QAAQ;AACrC,0CAAQC,KAAAA,MAAa,QAAb,EAAoB,KAAU,MAAa,GAAG,OAAO;AAAA,EAC/D;AACF;AAEA,gBAAgB,cAAc;;"}
@@ -0,0 +1,13 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { forwardRef } from "react";
3
+ import { Input } from "antd";
4
+ const AntdSearchInput = forwardRef(
5
+ ({ size = "large", ...props }, ref) => {
6
+ return /* @__PURE__ */ jsx(Input.Search, { ref, size, ...props });
7
+ }
8
+ );
9
+ AntdSearchInput.displayName = "AntdSearchInput";
10
+ export {
11
+ AntdSearchInput
12
+ };
13
+ //# sourceMappingURL=AntdSearchInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AntdSearchInput.js","sources":["../../../../src/components/input/AntdSearchInput.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Input as RawAntDInput } from 'antd'\nimport type { InputRef } from 'antd'\nimport type { SearchProps as AntDSearchProps } from 'antd/es/input/Search'\n\ntype AntdSearchInputProps = Expand<AntDSearchProps>\n\nexport const AntdSearchInput = forwardRef<InputRef, AntdSearchInputProps>(\n ({ size = 'large', ...props }, ref) => {\n return <RawAntDInput.Search ref={ref} size={size} {...props} />\n }\n)\n\nAntdSearchInput.displayName = 'AntdSearchInput'\n"],"names":["RawAntDInput"],"mappings":";;;AAOO,MAAM,kBAAkB;AAAA,EAC7B,CAAC,EAAE,OAAO,SAAS,GAAG,MAAA,GAAS,QAAQ;AACrC,+BAAQA,MAAa,QAAb,EAAoB,KAAU,MAAa,GAAG,OAAO;AAAA,EAC/D;AACF;AAEA,gBAAgB,cAAc;"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const formikAntd = require("formik-antd");
5
+ const Input = ({ size = "large", ...props }) => {
6
+ return /* @__PURE__ */ jsxRuntime.jsx(formikAntd.Input, { size, ...props });
7
+ };
8
+ exports.Input = Input;
9
+ //# sourceMappingURL=Input.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.cjs","sources":["../../../../src/components/input/Input.tsx"],"sourcesContent":["import { Input as FormikAntdInput, InputProps } from 'formik-antd'\ntype Props = Expand<InputProps>\n\nexport const Input = ({ size = 'large', ...props }: Props) => {\n return <FormikAntdInput size={size} {...props} />\n}\n"],"names":["jsx","FormikAntdInput"],"mappings":";;;;AAGO,MAAM,QAAQ,CAAC,EAAE,OAAO,SAAS,GAAG,YAAmB;AAC5D,SAAOA,2BAAAA,IAACC,WAAAA,OAAA,EAAgB,MAAa,GAAG,MAAA,CAAO;AACjD;;"}
@@ -0,0 +1,9 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { Input as Input$1 } from "formik-antd";
3
+ const Input = ({ size = "large", ...props }) => {
4
+ return /* @__PURE__ */ jsx(Input$1, { size, ...props });
5
+ };
6
+ export {
7
+ Input
8
+ };
9
+ //# sourceMappingURL=Input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Input.js","sources":["../../../../src/components/input/Input.tsx"],"sourcesContent":["import { Input as FormikAntdInput, InputProps } from 'formik-antd'\ntype Props = Expand<InputProps>\n\nexport const Input = ({ size = 'large', ...props }: Props) => {\n return <FormikAntdInput size={size} {...props} />\n}\n"],"names":["FormikAntdInput"],"mappings":";;AAGO,MAAM,QAAQ,CAAC,EAAE,OAAO,SAAS,GAAG,YAAmB;AAC5D,SAAO,oBAACA,SAAA,EAAgB,MAAa,GAAG,MAAA,CAAO;AACjD;"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const formikAntd = require("formik-antd");
5
+ const cx = require("classnames");
6
+ const InputNumber_module = require("./InputNumber.module.css.cjs");
7
+ const react = require("@phosphor-icons/react");
8
+ const InputNumber = ({
9
+ size = "large",
10
+ step = 1,
11
+ name,
12
+ max,
13
+ min,
14
+ ...props
15
+ }) => {
16
+ return /* @__PURE__ */ jsxRuntime.jsx(
17
+ formikAntd.InputNumber,
18
+ {
19
+ name,
20
+ max,
21
+ min,
22
+ step,
23
+ className: cx(InputNumber_module.default.j2InputNumber, props.className),
24
+ upHandler: /* @__PURE__ */ jsxRuntime.jsx(react.CaretUpIcon, { weight: "bold", size: 12 }),
25
+ downHandler: /* @__PURE__ */ jsxRuntime.jsx(react.CaretDownIcon, { weight: "bold", size: 12 }),
26
+ size,
27
+ ...props
28
+ }
29
+ );
30
+ };
31
+ exports.InputNumber = InputNumber;
32
+ //# sourceMappingURL=InputNumber.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber.cjs","sources":["../../../../src/components/inputnumber/InputNumber.tsx"],"sourcesContent":["import { InputNumber as FormikInputNumber, InputNumberProps } from 'formik-antd'\nimport cx from 'classnames'\nimport styles from './InputNumber.module.css'\nimport { CaretDownIcon, CaretUpIcon } from '@phosphor-icons/react'\ntype Props = Expand<InputNumberProps> & {\n name: string\n max?: number\n min?: number\n step?: number\n}\n\nexport const InputNumber = ({\n size = 'large',\n step = 1,\n name,\n max,\n min,\n ...props\n}: Props) => {\n return (\n <FormikInputNumber\n name={name}\n max={max}\n min={min}\n step={step}\n className={cx(styles.j2InputNumber, props.className)}\n upHandler={<CaretUpIcon weight=\"bold\" size={12} />}\n downHandler={<CaretDownIcon weight=\"bold\" size={12} />}\n size={size}\n {...props}\n />\n )\n}\n"],"names":["jsx","FormikInputNumber","styles","CaretUpIcon","CaretDownIcon"],"mappings":";;;;;;;AAWO,MAAM,cAAc,CAAC;AAAA,EAC1B,OAAO;AAAA,EACP,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAa;AACX,SACEA,2BAAAA;AAAAA,IAACC,WAAAA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,GAAGC,mBAAAA,QAAO,eAAe,MAAM,SAAS;AAAA,MACnD,WAAWF,2BAAAA,IAACG,mBAAA,EAAY,QAAO,QAAO,MAAM,IAAI;AAAA,MAChD,aAAaH,2BAAAA,IAACI,qBAAA,EAAc,QAAO,QAAO,MAAM,IAAI;AAAA,MACpD;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;;"}
@@ -0,0 +1,32 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { InputNumber as InputNumber$1 } from "formik-antd";
3
+ import cx from "classnames";
4
+ import styles from "./InputNumber.module.css.js";
5
+ import { CaretDownIcon, CaretUpIcon } from "@phosphor-icons/react";
6
+ const InputNumber = ({
7
+ size = "large",
8
+ step = 1,
9
+ name,
10
+ max,
11
+ min,
12
+ ...props
13
+ }) => {
14
+ return /* @__PURE__ */ jsx(
15
+ InputNumber$1,
16
+ {
17
+ name,
18
+ max,
19
+ min,
20
+ step,
21
+ className: cx(styles.j2InputNumber, props.className),
22
+ upHandler: /* @__PURE__ */ jsx(CaretUpIcon, { weight: "bold", size: 12 }),
23
+ downHandler: /* @__PURE__ */ jsx(CaretDownIcon, { weight: "bold", size: 12 }),
24
+ size,
25
+ ...props
26
+ }
27
+ );
28
+ };
29
+ export {
30
+ InputNumber
31
+ };
32
+ //# sourceMappingURL=InputNumber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber.js","sources":["../../../../src/components/inputnumber/InputNumber.tsx"],"sourcesContent":["import { InputNumber as FormikInputNumber, InputNumberProps } from 'formik-antd'\nimport cx from 'classnames'\nimport styles from './InputNumber.module.css'\nimport { CaretDownIcon, CaretUpIcon } from '@phosphor-icons/react'\ntype Props = Expand<InputNumberProps> & {\n name: string\n max?: number\n min?: number\n step?: number\n}\n\nexport const InputNumber = ({\n size = 'large',\n step = 1,\n name,\n max,\n min,\n ...props\n}: Props) => {\n return (\n <FormikInputNumber\n name={name}\n max={max}\n min={min}\n step={step}\n className={cx(styles.j2InputNumber, props.className)}\n upHandler={<CaretUpIcon weight=\"bold\" size={12} />}\n downHandler={<CaretDownIcon weight=\"bold\" size={12} />}\n size={size}\n {...props}\n />\n )\n}\n"],"names":["FormikInputNumber"],"mappings":";;;;;AAWO,MAAM,cAAc,CAAC;AAAA,EAC1B,OAAO;AAAA,EACP,OAAO;AAAA,EACP;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACL,MAAa;AACX,SACE;AAAA,IAACA;AAAAA,IAAA;AAAA,MACC;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,WAAW,GAAG,OAAO,eAAe,MAAM,SAAS;AAAA,MACnD,WAAW,oBAAC,aAAA,EAAY,QAAO,QAAO,MAAM,IAAI;AAAA,MAChD,aAAa,oBAAC,eAAA,EAAc,QAAO,QAAO,MAAM,IAAI;AAAA,MACpD;AAAA,MACC,GAAG;AAAA,IAAA;AAAA,EAAA;AAGV;"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const j2InputNumber = "_j2InputNumber_1jmfn_1";
4
+ const styles = {
5
+ j2InputNumber
6
+ };
7
+ exports.default = styles;
8
+ exports.j2InputNumber = j2InputNumber;
9
+ //# sourceMappingURL=InputNumber.module.css.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -0,0 +1,9 @@
1
+ const j2InputNumber = "_j2InputNumber_1jmfn_1";
2
+ const styles = {
3
+ j2InputNumber
4
+ };
5
+ export {
6
+ styles as default,
7
+ j2InputNumber
8
+ };
9
+ //# sourceMappingURL=InputNumber.module.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputNumber.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const LegacyNavMenu_module = require("./LegacyNavMenu.module.css.cjs");
5
+ const j2LogoMenuCollapse = require("../../svgs/j2-logo-menu-collapse.svg.cjs");
6
+ const UserProfile = require("./UserProfile.cjs");
7
+ const LegacyNavMenu = ({
8
+ sections,
9
+ user,
10
+ onItemClick,
11
+ logoUrl = "/",
12
+ onLogOut,
13
+ onChangeClient,
14
+ headerSlot,
15
+ footerSlot
16
+ }) => {
17
+ const handleItemClick = (itemId) => {
18
+ onItemClick == null ? void 0 : onItemClick(itemId);
19
+ };
20
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: LegacyNavMenu_module.default.navContainer, children: [
21
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: LegacyNavMenu_module.default.logoSection, children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: LegacyNavMenu_module.default.logoContainer, children: /* @__PURE__ */ jsxRuntime.jsx("a", { href: logoUrl, className: LegacyNavMenu_module.default.logoLink, children: /* @__PURE__ */ jsxRuntime.jsx(j2LogoMenuCollapse, { className: LegacyNavMenu_module.default.logo }) }) }) }),
22
+ headerSlot && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-4", children: headerSlot }),
23
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: LegacyNavMenu_module.default.navContent, children: sections.map((section) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: LegacyNavMenu_module.default.navSection, children: [
24
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: LegacyNavMenu_module.default.sectionHeader, children: /* @__PURE__ */ jsxRuntime.jsx("span", { className: LegacyNavMenu_module.default.sectionTitle, children: section.title }) }),
25
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: LegacyNavMenu_module.default.sectionItems, children: section.items.map((item) => /* @__PURE__ */ jsxRuntime.jsxs(
26
+ "button",
27
+ {
28
+ className: `${LegacyNavMenu_module.default.navItem} ${item.isActive ? LegacyNavMenu_module.default.active : ""}`,
29
+ onClick: () => handleItemClick(item.id),
30
+ children: [
31
+ item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: LegacyNavMenu_module.default.navItemIcon, children: item.icon }),
32
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: LegacyNavMenu_module.default.navItemLabel, children: item.label })
33
+ ]
34
+ },
35
+ item.id
36
+ )) })
37
+ ] }, section.title)) }),
38
+ footerSlot && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "px-4", children: footerSlot }),
39
+ /* @__PURE__ */ jsxRuntime.jsx(
40
+ UserProfile.UserProfile,
41
+ {
42
+ firstName: user.firstName,
43
+ lastName: user.lastName,
44
+ avatarUrl: user.avatarUrl,
45
+ onLogOut,
46
+ onChangeClient
47
+ }
48
+ )
49
+ ] });
50
+ };
51
+ exports.LegacyNavMenu = LegacyNavMenu;
52
+ //# sourceMappingURL=LegacyNavMenu.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegacyNavMenu.cjs","sources":["../../../../src/components/legacyNavMenu/LegacyNavMenu.tsx"],"sourcesContent":["import React from 'react'\nimport styles from './LegacyNavMenu.module.css'\nimport J2Logo from '../../svgs/j2-logo-menu-collapse.svg?react'\nimport { UserProfile } from './UserProfile'\n\nexport interface NavItem {\n id: string\n label: string\n icon?: React.ReactNode\n isActive?: boolean\n}\n\nexport interface NavSection {\n title: string\n items: NavItem[]\n}\n\nexport interface LegacyNavMenuUser {\n firstName: string\n lastName?: string\n avatarUrl?: string\n}\n\nexport interface LegacyNavMenuProps {\n sections: NavSection[]\n user: LegacyNavMenuUser\n onItemClick?: (itemId: string) => void\n logoUrl?: string\n onLogOut?: () => void\n onChangeClient?: () => void\n headerSlot?: React.ReactNode\n footerSlot?: React.ReactNode\n}\n\nexport const LegacyNavMenu: React.FC<LegacyNavMenuProps> = ({\n sections,\n user,\n onItemClick,\n logoUrl = '/',\n onLogOut,\n onChangeClient,\n headerSlot,\n footerSlot,\n}) => {\n const handleItemClick = (itemId: string) => {\n onItemClick?.(itemId)\n }\n\n return (\n <div className={styles.navContainer}>\n {/* Logo Section */}\n <div className={styles.logoSection}>\n <div className={styles.logoContainer}>\n <a href={logoUrl} className={styles.logoLink}>\n <J2Logo className={styles.logo} />\n </a>\n </div>\n </div>\n\n {headerSlot && <div className=\"px-4\">{headerSlot}</div>}\n\n {/* Navigation Sections */}\n <div className={styles.navContent}>\n {sections.map((section) => (\n <div key={section.title} className={styles.navSection}>\n {/* Section Header */}\n <div className={styles.sectionHeader}>\n <span className={styles.sectionTitle}>{section.title}</span>\n </div>\n\n {/* Section Items */}\n <div className={styles.sectionItems}>\n {section.items.map((item) => (\n <button\n key={item.id}\n className={`${styles.navItem} ${item.isActive ? styles.active : ''}`}\n onClick={() => handleItemClick(item.id)}\n >\n {item.icon && (\n <div className={styles.navItemIcon}>{item.icon}</div>\n )}\n <span className={styles.navItemLabel}>{item.label}</span>\n </button>\n ))}\n </div>\n </div>\n ))}\n </div>\n\n {footerSlot && <div className=\"px-4\">{footerSlot}</div>}\n\n {/* User Profile Section */}\n <UserProfile\n firstName={user.firstName}\n lastName={user.lastName}\n avatarUrl={user.avatarUrl}\n onLogOut={onLogOut}\n onChangeClient={onChangeClient}\n />\n </div>\n )\n}\n"],"names":["jsxs","styles","jsx","J2Logo","UserProfile"],"mappings":";;;;;;AAkCO,MAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,kBAAkB,CAAC,WAAmB;AAC1C,+CAAc;AAAA,EAChB;AAEA,SACEA,2BAAAA,KAAC,OAAA,EAAI,WAAWC,qBAAAA,QAAO,cAErB,UAAA;AAAA,IAAAC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,qBAAAA,QAAO,aACrB,yCAAC,OAAA,EAAI,WAAWA,qBAAAA,QAAO,eACrB,UAAAC,2BAAAA,IAAC,KAAA,EAAE,MAAM,SAAS,WAAWD,qBAAAA,QAAO,UAClC,UAAAC,2BAAAA,IAACC,oBAAA,EAAO,WAAWF,qBAAAA,QAAO,KAAA,CAAM,EAAA,CAClC,EAAA,CACF,EAAA,CACF;AAAA,IAEC,cAAcC,2BAAAA,IAAC,OAAA,EAAI,WAAU,QAAQ,UAAA,YAAW;AAAA,IAGjDA,2BAAAA,IAAC,OAAA,EAAI,WAAWD,qBAAAA,QAAO,YACpB,UAAA,SAAS,IAAI,CAAC,YACbD,2BAAAA,KAAC,OAAA,EAAwB,WAAWC,qBAAAA,QAAO,YAEzC,UAAA;AAAA,MAAAC,2BAAAA,IAAC,OAAA,EAAI,WAAWD,qBAAAA,QAAO,eACrB,UAAAC,+BAAC,QAAA,EAAK,WAAWD,qBAAAA,QAAO,cAAe,UAAA,QAAQ,MAAA,CAAM,GACvD;AAAA,MAGAC,2BAAAA,IAAC,SAAI,WAAWD,qBAAAA,QAAO,cACpB,UAAA,QAAQ,MAAM,IAAI,CAAC,SAClBD,2BAAAA;AAAAA,QAAC;AAAA,QAAA;AAAA,UAEC,WAAW,GAAGC,6BAAO,OAAO,IAAI,KAAK,WAAWA,qBAAAA,QAAO,SAAS,EAAE;AAAA,UAClE,SAAS,MAAM,gBAAgB,KAAK,EAAE;AAAA,UAErC,UAAA;AAAA,YAAA,KAAK,QACJC,+BAAC,OAAA,EAAI,WAAWD,qBAAAA,QAAO,aAAc,eAAK,KAAA,CAAK;AAAA,2CAEhD,QAAA,EAAK,WAAWA,qBAAAA,QAAO,cAAe,eAAK,MAAA,CAAM;AAAA,UAAA;AAAA,QAAA;AAAA,QAP7C,KAAK;AAAA,MAAA,CASb,EAAA,CACH;AAAA,IAAA,EAAA,GApBQ,QAAQ,KAqBlB,CACD,GACH;AAAA,IAEC,cAAcC,2BAAAA,IAAC,OAAA,EAAI,WAAU,QAAQ,UAAA,YAAW;AAAA,IAGjDA,2BAAAA;AAAAA,MAACE,YAAAA;AAAAA,MAAA;AAAA,QACC,WAAW,KAAK;AAAA,QAChB,UAAU,KAAK;AAAA,QACf,WAAW,KAAK;AAAA,QAChB;AAAA,QACA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;;"}
@@ -0,0 +1,52 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import styles from "./LegacyNavMenu.module.css.js";
3
+ import SvgJ2LogoMenuCollapse from "../../svgs/j2-logo-menu-collapse.svg.js";
4
+ import { UserProfile } from "./UserProfile.js";
5
+ const LegacyNavMenu = ({
6
+ sections,
7
+ user,
8
+ onItemClick,
9
+ logoUrl = "/",
10
+ onLogOut,
11
+ onChangeClient,
12
+ headerSlot,
13
+ footerSlot
14
+ }) => {
15
+ const handleItemClick = (itemId) => {
16
+ onItemClick == null ? void 0 : onItemClick(itemId);
17
+ };
18
+ return /* @__PURE__ */ jsxs("div", { className: styles.navContainer, children: [
19
+ /* @__PURE__ */ jsx("div", { className: styles.logoSection, children: /* @__PURE__ */ jsx("div", { className: styles.logoContainer, children: /* @__PURE__ */ jsx("a", { href: logoUrl, className: styles.logoLink, children: /* @__PURE__ */ jsx(SvgJ2LogoMenuCollapse, { className: styles.logo }) }) }) }),
20
+ headerSlot && /* @__PURE__ */ jsx("div", { className: "px-4", children: headerSlot }),
21
+ /* @__PURE__ */ jsx("div", { className: styles.navContent, children: sections.map((section) => /* @__PURE__ */ jsxs("div", { className: styles.navSection, children: [
22
+ /* @__PURE__ */ jsx("div", { className: styles.sectionHeader, children: /* @__PURE__ */ jsx("span", { className: styles.sectionTitle, children: section.title }) }),
23
+ /* @__PURE__ */ jsx("div", { className: styles.sectionItems, children: section.items.map((item) => /* @__PURE__ */ jsxs(
24
+ "button",
25
+ {
26
+ className: `${styles.navItem} ${item.isActive ? styles.active : ""}`,
27
+ onClick: () => handleItemClick(item.id),
28
+ children: [
29
+ item.icon && /* @__PURE__ */ jsx("div", { className: styles.navItemIcon, children: item.icon }),
30
+ /* @__PURE__ */ jsx("span", { className: styles.navItemLabel, children: item.label })
31
+ ]
32
+ },
33
+ item.id
34
+ )) })
35
+ ] }, section.title)) }),
36
+ footerSlot && /* @__PURE__ */ jsx("div", { className: "px-4", children: footerSlot }),
37
+ /* @__PURE__ */ jsx(
38
+ UserProfile,
39
+ {
40
+ firstName: user.firstName,
41
+ lastName: user.lastName,
42
+ avatarUrl: user.avatarUrl,
43
+ onLogOut,
44
+ onChangeClient
45
+ }
46
+ )
47
+ ] });
48
+ };
49
+ export {
50
+ LegacyNavMenu
51
+ };
52
+ //# sourceMappingURL=LegacyNavMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LegacyNavMenu.js","sources":["../../../../src/components/legacyNavMenu/LegacyNavMenu.tsx"],"sourcesContent":["import React from 'react'\nimport styles from './LegacyNavMenu.module.css'\nimport J2Logo from '../../svgs/j2-logo-menu-collapse.svg?react'\nimport { UserProfile } from './UserProfile'\n\nexport interface NavItem {\n id: string\n label: string\n icon?: React.ReactNode\n isActive?: boolean\n}\n\nexport interface NavSection {\n title: string\n items: NavItem[]\n}\n\nexport interface LegacyNavMenuUser {\n firstName: string\n lastName?: string\n avatarUrl?: string\n}\n\nexport interface LegacyNavMenuProps {\n sections: NavSection[]\n user: LegacyNavMenuUser\n onItemClick?: (itemId: string) => void\n logoUrl?: string\n onLogOut?: () => void\n onChangeClient?: () => void\n headerSlot?: React.ReactNode\n footerSlot?: React.ReactNode\n}\n\nexport const LegacyNavMenu: React.FC<LegacyNavMenuProps> = ({\n sections,\n user,\n onItemClick,\n logoUrl = '/',\n onLogOut,\n onChangeClient,\n headerSlot,\n footerSlot,\n}) => {\n const handleItemClick = (itemId: string) => {\n onItemClick?.(itemId)\n }\n\n return (\n <div className={styles.navContainer}>\n {/* Logo Section */}\n <div className={styles.logoSection}>\n <div className={styles.logoContainer}>\n <a href={logoUrl} className={styles.logoLink}>\n <J2Logo className={styles.logo} />\n </a>\n </div>\n </div>\n\n {headerSlot && <div className=\"px-4\">{headerSlot}</div>}\n\n {/* Navigation Sections */}\n <div className={styles.navContent}>\n {sections.map((section) => (\n <div key={section.title} className={styles.navSection}>\n {/* Section Header */}\n <div className={styles.sectionHeader}>\n <span className={styles.sectionTitle}>{section.title}</span>\n </div>\n\n {/* Section Items */}\n <div className={styles.sectionItems}>\n {section.items.map((item) => (\n <button\n key={item.id}\n className={`${styles.navItem} ${item.isActive ? styles.active : ''}`}\n onClick={() => handleItemClick(item.id)}\n >\n {item.icon && (\n <div className={styles.navItemIcon}>{item.icon}</div>\n )}\n <span className={styles.navItemLabel}>{item.label}</span>\n </button>\n ))}\n </div>\n </div>\n ))}\n </div>\n\n {footerSlot && <div className=\"px-4\">{footerSlot}</div>}\n\n {/* User Profile Section */}\n <UserProfile\n firstName={user.firstName}\n lastName={user.lastName}\n avatarUrl={user.avatarUrl}\n onLogOut={onLogOut}\n onChangeClient={onChangeClient}\n />\n </div>\n )\n}\n"],"names":["J2Logo"],"mappings":";;;;AAkCO,MAAM,gBAA8C,CAAC;AAAA,EAC1D;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU;AAAA,EACV;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,MAAM;AACJ,QAAM,kBAAkB,CAAC,WAAmB;AAC1C,+CAAc;AAAA,EAChB;AAEA,SACE,qBAAC,OAAA,EAAI,WAAW,OAAO,cAErB,UAAA;AAAA,IAAA,oBAAC,OAAA,EAAI,WAAW,OAAO,aACrB,8BAAC,OAAA,EAAI,WAAW,OAAO,eACrB,UAAA,oBAAC,KAAA,EAAE,MAAM,SAAS,WAAW,OAAO,UAClC,UAAA,oBAACA,uBAAA,EAAO,WAAW,OAAO,KAAA,CAAM,EAAA,CAClC,EAAA,CACF,EAAA,CACF;AAAA,IAEC,cAAc,oBAAC,OAAA,EAAI,WAAU,QAAQ,UAAA,YAAW;AAAA,IAGjD,oBAAC,OAAA,EAAI,WAAW,OAAO,YACpB,UAAA,SAAS,IAAI,CAAC,YACb,qBAAC,OAAA,EAAwB,WAAW,OAAO,YAEzC,UAAA;AAAA,MAAA,oBAAC,OAAA,EAAI,WAAW,OAAO,eACrB,UAAA,oBAAC,QAAA,EAAK,WAAW,OAAO,cAAe,UAAA,QAAQ,MAAA,CAAM,GACvD;AAAA,MAGA,oBAAC,SAAI,WAAW,OAAO,cACpB,UAAA,QAAQ,MAAM,IAAI,CAAC,SAClB;AAAA,QAAC;AAAA,QAAA;AAAA,UAEC,WAAW,GAAG,OAAO,OAAO,IAAI,KAAK,WAAW,OAAO,SAAS,EAAE;AAAA,UAClE,SAAS,MAAM,gBAAgB,KAAK,EAAE;AAAA,UAErC,UAAA;AAAA,YAAA,KAAK,QACJ,oBAAC,OAAA,EAAI,WAAW,OAAO,aAAc,eAAK,KAAA,CAAK;AAAA,gCAEhD,QAAA,EAAK,WAAW,OAAO,cAAe,eAAK,MAAA,CAAM;AAAA,UAAA;AAAA,QAAA;AAAA,QAP7C,KAAK;AAAA,MAAA,CASb,EAAA,CACH;AAAA,IAAA,EAAA,GApBQ,QAAQ,KAqBlB,CACD,GACH;AAAA,IAEC,cAAc,oBAAC,OAAA,EAAI,WAAU,QAAQ,UAAA,YAAW;AAAA,IAGjD;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAW,KAAK;AAAA,QAChB,UAAU,KAAK;AAAA,QACf,WAAW,KAAK;AAAA,QAChB;AAAA,QACA;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACF;AAEJ;"}