impact-nova 0.1.0

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 (502) hide show
  1. package/README.md +237 -0
  2. package/dist/App.d.ts +2 -0
  3. package/dist/assets/flatten.worker-C7x-Wj6s.js +1 -0
  4. package/dist/components/layout/dashboard-layout.d.ts +25 -0
  5. package/dist/components/ui/accordion-nested-list/accordion-nested-list.d.ts +3 -0
  6. package/dist/components/ui/accordion-nested-list/accordion-nested-list.js +105 -0
  7. package/dist/components/ui/accordion-nested-list/hooks/useAccordionNestedListState.d.ts +19 -0
  8. package/dist/components/ui/accordion-nested-list/hooks/useAccordionNestedListState.js +41 -0
  9. package/dist/components/ui/accordion-nested-list/index.d.ts +2 -0
  10. package/dist/components/ui/accordion-nested-list/index.js +4 -0
  11. package/dist/components/ui/accordion.d.ts +10 -0
  12. package/dist/components/ui/accordion.js +52 -0
  13. package/dist/components/ui/ag-grid-react/cell-renderers/actions-cell-renderer.d.ts +30 -0
  14. package/dist/components/ui/ag-grid-react/cell-renderers/actions-cell-renderer.js +27 -0
  15. package/dist/components/ui/ag-grid-react/cell-renderers/badge-cell-renderer.d.ts +44 -0
  16. package/dist/components/ui/ag-grid-react/cell-renderers/badge-cell-renderer.js +22 -0
  17. package/dist/components/ui/ag-grid-react/cell-renderers/checkbox-display-renderer.d.ts +29 -0
  18. package/dist/components/ui/ag-grid-react/cell-renderers/checkbox-display-renderer.js +36 -0
  19. package/dist/components/ui/ag-grid-react/cell-renderers/date-display-renderer.d.ts +37 -0
  20. package/dist/components/ui/ag-grid-react/cell-renderers/date-display-renderer.js +50 -0
  21. package/dist/components/ui/ag-grid-react/cell-renderers/editors/date-cell-editor.d.ts +33 -0
  22. package/dist/components/ui/ag-grid-react/cell-renderers/editors/date-cell-editor.js +73 -0
  23. package/dist/components/ui/ag-grid-react/cell-renderers/editors/input-cell-editor.d.ts +21 -0
  24. package/dist/components/ui/ag-grid-react/cell-renderers/editors/input-cell-editor.js +91 -0
  25. package/dist/components/ui/ag-grid-react/cell-renderers/editors/select-cell-editor.d.ts +45 -0
  26. package/dist/components/ui/ag-grid-react/cell-renderers/editors/select-cell-editor.js +64 -0
  27. package/dist/components/ui/ag-grid-react/cell-renderers/editors/split-cell-editor.d.ts +9 -0
  28. package/dist/components/ui/ag-grid-react/cell-renderers/editors/split-cell-editor.js +85 -0
  29. package/dist/components/ui/ag-grid-react/cell-renderers/editors/textarea-cell-editor.d.ts +31 -0
  30. package/dist/components/ui/ag-grid-react/cell-renderers/editors/textarea-cell-editor.js +61 -0
  31. package/dist/components/ui/ag-grid-react/cell-renderers/empty-cell-renderer.d.ts +10 -0
  32. package/dist/components/ui/ag-grid-react/cell-renderers/empty-cell-renderer.js +5 -0
  33. package/dist/components/ui/ag-grid-react/cell-renderers/index.d.ts +90 -0
  34. package/dist/components/ui/ag-grid-react/cell-renderers/index.js +65 -0
  35. package/dist/components/ui/ag-grid-react/cell-renderers/input-display-renderer.d.ts +35 -0
  36. package/dist/components/ui/ag-grid-react/cell-renderers/input-display-renderer.js +27 -0
  37. package/dist/components/ui/ag-grid-react/cell-renderers/link-with-batch-cell-renderer.d.ts +63 -0
  38. package/dist/components/ui/ag-grid-react/cell-renderers/link-with-batch-cell-renderer.js +148 -0
  39. package/dist/components/ui/ag-grid-react/cell-renderers/select-display-renderer.d.ts +45 -0
  40. package/dist/components/ui/ag-grid-react/cell-renderers/select-display-renderer.js +25 -0
  41. package/dist/components/ui/ag-grid-react/cell-renderers/split-cell-renderer.d.ts +13 -0
  42. package/dist/components/ui/ag-grid-react/cell-renderers/split-cell-renderer.js +67 -0
  43. package/dist/components/ui/ag-grid-react/cell-renderers/status-badge-renderer.d.ts +35 -0
  44. package/dist/components/ui/ag-grid-react/cell-renderers/status-badge-renderer.js +26 -0
  45. package/dist/components/ui/ag-grid-react/cell-renderers/switch-display-renderer.d.ts +35 -0
  46. package/dist/components/ui/ag-grid-react/cell-renderers/switch-display-renderer.js +38 -0
  47. package/dist/components/ui/ag-grid-react/cell-renderers/textarea-display-renderer.d.ts +34 -0
  48. package/dist/components/ui/ag-grid-react/cell-renderers/textarea-display-renderer.js +32 -0
  49. package/dist/components/ui/ag-grid-react/cell-renderers/types.d.ts +129 -0
  50. package/dist/components/ui/ag-grid-react/cell-renderers/types.js +74 -0
  51. package/dist/components/ui/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.d.ts +24 -0
  52. package/dist/components/ui/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.js +223 -0
  53. package/dist/components/ui/ag-grid-react/headers/advanced-filter/column-filter-section.d.ts +24 -0
  54. package/dist/components/ui/ag-grid-react/headers/advanced-filter/column-filter-section.js +230 -0
  55. package/dist/components/ui/ag-grid-react/headers/column-menu/column-settings-menu.d.ts +11 -0
  56. package/dist/components/ui/ag-grid-react/headers/column-menu/column-settings-menu.js +113 -0
  57. package/dist/components/ui/ag-grid-react/headers/components/header-info.d.ts +37 -0
  58. package/dist/components/ui/ag-grid-react/headers/components/header-info.js +93 -0
  59. package/dist/components/ui/ag-grid-react/headers/components/info-modal.d.ts +12 -0
  60. package/dist/components/ui/ag-grid-react/headers/components/info-modal.js +18 -0
  61. package/dist/components/ui/ag-grid-react/headers/components/lazy-tooltip.d.ts +16 -0
  62. package/dist/components/ui/ag-grid-react/headers/components/lazy-tooltip.js +13 -0
  63. package/dist/components/ui/ag-grid-react/headers/components/section-renderers.d.ts +32 -0
  64. package/dist/components/ui/ag-grid-react/headers/components/section-renderers.js +78 -0
  65. package/dist/components/ui/ag-grid-react/headers/context/grid-header-context.d.ts +34 -0
  66. package/dist/components/ui/ag-grid-react/headers/context/grid-header-context.js +6 -0
  67. package/dist/components/ui/ag-grid-react/headers/custom-header-group.d.ts +12 -0
  68. package/dist/components/ui/ag-grid-react/headers/custom-header-group.js +33 -0
  69. package/dist/components/ui/ag-grid-react/headers/custom-header.d.ts +4 -0
  70. package/dist/components/ui/ag-grid-react/headers/custom-header.js +230 -0
  71. package/dist/components/ui/ag-grid-react/headers/header-search-input.d.ts +29 -0
  72. package/dist/components/ui/ag-grid-react/headers/header-search-input.js +352 -0
  73. package/dist/components/ui/ag-grid-react/headers/utils/date-utils.d.ts +46 -0
  74. package/dist/components/ui/ag-grid-react/headers/utils/date-utils.js +38 -0
  75. package/dist/components/ui/ag-grid-react/headers/utils/filter-utils.d.ts +117 -0
  76. package/dist/components/ui/ag-grid-react/headers/utils/filter-utils.js +434 -0
  77. package/dist/components/ui/ag-grid-react/index.d.ts +5 -0
  78. package/dist/components/ui/ag-grid-react/index.js +183 -0
  79. package/dist/components/ui/ag-grid-react/process-backend-columndefs.d.ts +31 -0
  80. package/dist/components/ui/ag-grid-react/process-backend-columndefs.js +61 -0
  81. package/dist/components/ui/ag-grid-react/theme.d.ts +2 -0
  82. package/dist/components/ui/ag-grid-react/theme.js +46 -0
  83. package/dist/components/ui/ag-grid-react/value-formatters.d.ts +22 -0
  84. package/dist/components/ui/ag-grid-react/value-formatters.js +95 -0
  85. package/dist/components/ui/alert-dialog.d.ts +20 -0
  86. package/dist/components/ui/alert-dialog.js +114 -0
  87. package/dist/components/ui/alert.d.ts +11 -0
  88. package/dist/components/ui/alert.js +54 -0
  89. package/dist/components/ui/avatar.d.ts +14 -0
  90. package/dist/components/ui/avatar.js +60 -0
  91. package/dist/components/ui/badge.d.ts +10 -0
  92. package/dist/components/ui/badge.js +54 -0
  93. package/dist/components/ui/breadcrumb.d.ts +24 -0
  94. package/dist/components/ui/breadcrumb.js +150 -0
  95. package/dist/components/ui/button-group.d.ts +17 -0
  96. package/dist/components/ui/button-group.js +110 -0
  97. package/dist/components/ui/button-variants.d.ts +4 -0
  98. package/dist/components/ui/button-variants.js +31 -0
  99. package/dist/components/ui/button.d.ts +10 -0
  100. package/dist/components/ui/button.js +27 -0
  101. package/dist/components/ui/calendar.d.ts +46 -0
  102. package/dist/components/ui/calendar.js +660 -0
  103. package/dist/components/ui/card.d.ts +8 -0
  104. package/dist/components/ui/card.js +61 -0
  105. package/dist/components/ui/chart/chart.d.ts +29 -0
  106. package/dist/components/ui/chart/chart.js +203 -0
  107. package/dist/components/ui/chart/chart.utils.d.ts +3 -0
  108. package/dist/components/ui/chart/chart.utils.js +192 -0
  109. package/dist/components/ui/chart/index.d.ts +3 -0
  110. package/dist/components/ui/chart/index.js +12 -0
  111. package/dist/components/ui/checkbox.d.ts +8 -0
  112. package/dist/components/ui/checkbox.js +54 -0
  113. package/dist/components/ui/chips.d.ts +13 -0
  114. package/dist/components/ui/chips.js +60 -0
  115. package/dist/components/ui/data-table/data-table-column-list.d.ts +6 -0
  116. package/dist/components/ui/data-table/data-table-column-list.js +153 -0
  117. package/dist/components/ui/data-table/data-table-context.d.ts +18 -0
  118. package/dist/components/ui/data-table/data-table-context.js +11 -0
  119. package/dist/components/ui/data-table/data-table-format-options.d.ts +1 -0
  120. package/dist/components/ui/data-table/data-table-format-options.js +74 -0
  121. package/dist/components/ui/data-table/data-table-sheet.d.ts +20 -0
  122. package/dist/components/ui/data-table/data-table-sheet.js +81 -0
  123. package/dist/components/ui/data-table/data-table-view-options.d.ts +8 -0
  124. package/dist/components/ui/data-table/data-table-view-options.js +75 -0
  125. package/dist/components/ui/data-table/data-table.d.ts +26 -0
  126. package/dist/components/ui/data-table/data-table.js +67 -0
  127. package/dist/components/ui/data-table/index.d.ts +6 -0
  128. package/dist/components/ui/data-table/index.js +20 -0
  129. package/dist/components/ui/data-table/stories/fakeServer.d.ts +14 -0
  130. package/dist/components/ui/data-table/stories/interfaces.d.ts +15 -0
  131. package/dist/components/ui/date-picker/date-picker.d.ts +3 -0
  132. package/dist/components/ui/date-picker/date-picker.js +116 -0
  133. package/dist/components/ui/date-picker/date-range-picker.d.ts +3 -0
  134. package/dist/components/ui/date-picker/date-range-picker.js +195 -0
  135. package/dist/components/ui/date-picker/index.d.ts +18 -0
  136. package/dist/components/ui/date-picker/index.js +20 -0
  137. package/dist/components/ui/date-picker/month-picker.d.ts +3 -0
  138. package/dist/components/ui/date-picker/month-picker.js +117 -0
  139. package/dist/components/ui/date-picker/month-range-picker.d.ts +3 -0
  140. package/dist/components/ui/date-picker/month-range-picker.js +193 -0
  141. package/dist/components/ui/date-picker/multi-date-picker.d.ts +3 -0
  142. package/dist/components/ui/date-picker/multi-date-picker.js +94 -0
  143. package/dist/components/ui/date-picker/multi-month-picker.d.ts +3 -0
  144. package/dist/components/ui/date-picker/multi-month-picker.js +93 -0
  145. package/dist/components/ui/date-picker/multi-week-picker.d.ts +3 -0
  146. package/dist/components/ui/date-picker/multi-week-picker.js +98 -0
  147. package/dist/components/ui/date-picker/week-picker.d.ts +3 -0
  148. package/dist/components/ui/date-picker/week-picker.js +135 -0
  149. package/dist/components/ui/date-picker/week-range-picker.d.ts +3 -0
  150. package/dist/components/ui/date-picker/week-range-picker.js +207 -0
  151. package/dist/components/ui/dialog.d.ts +25 -0
  152. package/dist/components/ui/dialog.js +116 -0
  153. package/dist/components/ui/drawer.d.ts +22 -0
  154. package/dist/components/ui/drawer.js +98 -0
  155. package/dist/components/ui/dropdown-menu.d.ts +42 -0
  156. package/dist/components/ui/dropdown-menu.js +193 -0
  157. package/dist/components/ui/dynamic-layout.d.ts +12 -0
  158. package/dist/components/ui/dynamic-layout.js +50 -0
  159. package/dist/components/ui/empty-container.d.ts +8 -0
  160. package/dist/components/ui/empty-container.js +108 -0
  161. package/dist/components/ui/file-upload.d.ts +12 -0
  162. package/dist/components/ui/file-upload.js +241 -0
  163. package/dist/components/ui/filter-panel/filter-panel.d.ts +7 -0
  164. package/dist/components/ui/filter-panel/filter-panel.js +101 -0
  165. package/dist/components/ui/filter-panel/index.d.ts +2 -0
  166. package/dist/components/ui/filter-panel/index.js +8 -0
  167. package/dist/components/ui/filter-strip/filter-strip.d.ts +3 -0
  168. package/dist/components/ui/filter-strip/filter-strip.js +95 -0
  169. package/dist/components/ui/filter-strip/filter-summary.d.ts +15 -0
  170. package/dist/components/ui/filter-strip/filter-summary.js +204 -0
  171. package/dist/components/ui/filter-strip/filter-tag-list.d.ts +9 -0
  172. package/dist/components/ui/filter-strip/filter-tag-list.js +136 -0
  173. package/dist/components/ui/filter-strip/index.d.ts +2 -0
  174. package/dist/components/ui/filter-strip/index.js +4 -0
  175. package/dist/components/ui/header.d.ts +15 -0
  176. package/dist/components/ui/header.js +125 -0
  177. package/dist/components/ui/horizontal-scroller/horizontal-scroller.d.ts +4 -0
  178. package/dist/components/ui/horizontal-scroller/horizontal-scroller.js +165 -0
  179. package/dist/components/ui/horizontal-scroller/index.d.ts +2 -0
  180. package/dist/components/ui/horizontal-scroller/index.js +1 -0
  181. package/dist/components/ui/hover-card.d.ts +6 -0
  182. package/dist/components/ui/hover-card.js +23 -0
  183. package/dist/components/ui/input.d.ts +17 -0
  184. package/dist/components/ui/input.js +107 -0
  185. package/dist/components/ui/label.d.ts +3 -0
  186. package/dist/components/ui/label.js +18 -0
  187. package/dist/components/ui/loader.d.ts +11 -0
  188. package/dist/components/ui/loader.js +72 -0
  189. package/dist/components/ui/nested-list/components/NestedListApplyDiscardButtons.d.ts +11 -0
  190. package/dist/components/ui/nested-list/components/NestedListApplyDiscardButtons.js +37 -0
  191. package/dist/components/ui/nested-list/components/NestedListCategoryFilters.d.ts +10 -0
  192. package/dist/components/ui/nested-list/components/NestedListCategoryFilters.js +33 -0
  193. package/dist/components/ui/nested-list/components/NestedListContent.d.ts +21 -0
  194. package/dist/components/ui/nested-list/components/NestedListContent.js +73 -0
  195. package/dist/components/ui/nested-list/components/NestedListDragOverlay.d.ts +7 -0
  196. package/dist/components/ui/nested-list/components/NestedListHeader.d.ts +18 -0
  197. package/dist/components/ui/nested-list/components/NestedListHeader.js +86 -0
  198. package/dist/components/ui/nested-list/components/SortableItem.d.ts +17 -0
  199. package/dist/components/ui/nested-list/components/SortableItem.js +139 -0
  200. package/dist/components/ui/nested-list/hooks/useNestedListDragDrop.d.ts +14 -0
  201. package/dist/components/ui/nested-list/hooks/useNestedListDragDrop.js +168 -0
  202. package/dist/components/ui/nested-list/hooks/useNestedListHandlers.d.ts +42 -0
  203. package/dist/components/ui/nested-list/hooks/useNestedListHandlers.js +185 -0
  204. package/dist/components/ui/nested-list/hooks/useNestedListSelectAll.d.ts +16 -0
  205. package/dist/components/ui/nested-list/hooks/useNestedListSelectAll.js +62 -0
  206. package/dist/components/ui/nested-list/hooks/useNestedListState.d.ts +73 -0
  207. package/dist/components/ui/nested-list/hooks/useNestedListState.js +165 -0
  208. package/dist/components/ui/nested-list/index.d.ts +2 -0
  209. package/dist/components/ui/nested-list/index.js +6 -0
  210. package/dist/components/ui/nested-list/nested-list.d.ts +3 -0
  211. package/dist/components/ui/nested-list/nested-list.js +363 -0
  212. package/dist/components/ui/notification-panel/index.d.ts +3 -0
  213. package/dist/components/ui/notification-panel/index.js +20 -0
  214. package/dist/components/ui/notification-panel/notification-item.d.ts +14 -0
  215. package/dist/components/ui/notification-panel/notification-item.js +86 -0
  216. package/dist/components/ui/notification-panel/notification-list.d.ts +5 -0
  217. package/dist/components/ui/notification-panel/notification-list.js +45 -0
  218. package/dist/components/ui/notification-panel/notification-panel.d.ts +9 -0
  219. package/dist/components/ui/notification-panel/notification-panel.js +58 -0
  220. package/dist/components/ui/popover.d.ts +24 -0
  221. package/dist/components/ui/popover.js +84 -0
  222. package/dist/components/ui/portal.d.ts +7 -0
  223. package/dist/components/ui/portal.js +18 -0
  224. package/dist/components/ui/progress-bar.d.ts +1 -0
  225. package/dist/components/ui/progress.d.ts +9 -0
  226. package/dist/components/ui/progress.js +61 -0
  227. package/dist/components/ui/prompt.d.ts +26 -0
  228. package/dist/components/ui/prompt.js +141 -0
  229. package/dist/components/ui/radio-group.d.ts +11 -0
  230. package/dist/components/ui/radio-group.js +68 -0
  231. package/dist/components/ui/select/components/LabelWithSequence.d.ts +13 -0
  232. package/dist/components/ui/select/components/LabelWithSequence.js +18 -0
  233. package/dist/components/ui/select/components/Submenu.d.ts +15 -0
  234. package/dist/components/ui/select/components/Submenu.js +85 -0
  235. package/dist/components/ui/select/hooks/useClickOutside.d.ts +15 -0
  236. package/dist/components/ui/select/hooks/useClickOutside.js +43 -0
  237. package/dist/components/ui/select/hooks/useFlattenOptions.d.ts +24 -0
  238. package/dist/components/ui/select/hooks/useFlattenOptions.js +233 -0
  239. package/dist/components/ui/select/hooks/useMenuPosition.d.ts +2 -0
  240. package/dist/components/ui/select/hooks/useMenuPosition.js +89 -0
  241. package/dist/components/ui/select/hooks/useSelectionModel.d.ts +6 -0
  242. package/dist/components/ui/select/hooks/useSelectionModel.js +25 -0
  243. package/dist/components/ui/select/hooks/useVisibleStats.d.ts +16 -0
  244. package/dist/components/ui/select/hooks/useVisibleStats.js +54 -0
  245. package/dist/components/ui/select/index.d.ts +3 -0
  246. package/dist/components/ui/select/index.js +13 -0
  247. package/dist/components/ui/select/select.d.ts +6 -0
  248. package/dist/components/ui/select/select.js +814 -0
  249. package/dist/components/ui/select/utils/select.d.ts +12 -0
  250. package/dist/components/ui/select/utils/select.js +72 -0
  251. package/dist/components/ui/select/workers/flatten.worker.d.ts +9 -0
  252. package/dist/components/ui/select/workers/flatten.worker.js +11 -0
  253. package/dist/components/ui/separator.d.ts +4 -0
  254. package/dist/components/ui/separator.js +24 -0
  255. package/dist/components/ui/sheet.d.ts +30 -0
  256. package/dist/components/ui/sheet.js +157 -0
  257. package/dist/components/ui/sidebar.d.ts +98 -0
  258. package/dist/components/ui/sidebar.js +681 -0
  259. package/dist/components/ui/skeleton.d.ts +2 -0
  260. package/dist/components/ui/skeleton.js +17 -0
  261. package/dist/components/ui/slider.d.ts +4 -0
  262. package/dist/components/ui/slider.js +23 -0
  263. package/dist/components/ui/smart-input.d.ts +25 -0
  264. package/dist/components/ui/smart-input.js +177 -0
  265. package/dist/components/ui/stepper.d.ts +22 -0
  266. package/dist/components/ui/stepper.js +137 -0
  267. package/dist/components/ui/switch.d.ts +4 -0
  268. package/dist/components/ui/switch.js +27 -0
  269. package/dist/components/ui/tabs.d.ts +14 -0
  270. package/dist/components/ui/tabs.js +102 -0
  271. package/dist/components/ui/tag-group.d.ts +22 -0
  272. package/dist/components/ui/tag-group.js +56 -0
  273. package/dist/components/ui/tag.d.ts +16 -0
  274. package/dist/components/ui/tag.js +72 -0
  275. package/dist/components/ui/textarea.d.ts +13 -0
  276. package/dist/components/ui/textarea.js +85 -0
  277. package/dist/components/ui/toast.d.ts +17 -0
  278. package/dist/components/ui/toast.js +102 -0
  279. package/dist/components/ui/toaster.d.ts +6 -0
  280. package/dist/components/ui/toaster.js +100 -0
  281. package/dist/components/ui/tooltip.d.ts +14 -0
  282. package/dist/components/ui/tooltip.js +49 -0
  283. package/dist/components/ui/types/accordion-nested-list.types.d.ts +112 -0
  284. package/dist/components/ui/types/accordion.types.d.ts +1 -0
  285. package/dist/components/ui/types/ag-grid.types.d.ts +164 -0
  286. package/dist/components/ui/types/alert.types.d.ts +5 -0
  287. package/dist/components/ui/types/avatar.types.d.ts +1 -0
  288. package/dist/components/ui/types/badge.types.d.ts +1 -0
  289. package/dist/components/ui/types/breadcrumb.types.d.ts +1 -0
  290. package/dist/components/ui/types/button-group.types.d.ts +1 -0
  291. package/dist/components/ui/types/button.types.d.ts +1 -0
  292. package/dist/components/ui/types/card.types.d.ts +1 -0
  293. package/dist/components/ui/types/chart.types.d.ts +23 -0
  294. package/dist/components/ui/types/checkbox.types.d.ts +1 -0
  295. package/dist/components/ui/types/chips.types.d.ts +1 -0
  296. package/dist/components/ui/types/date-picker.types.d.ts +100 -0
  297. package/dist/components/ui/types/dialog.types.d.ts +8 -0
  298. package/dist/components/ui/types/dynamic-layout.types.d.ts +1 -0
  299. package/dist/components/ui/types/empty-container.types.d.ts +18 -0
  300. package/dist/components/ui/types/file-upload.types.d.ts +23 -0
  301. package/dist/components/ui/types/filter-panel.types.d.ts +42 -0
  302. package/dist/components/ui/types/filter-strip.types.d.ts +86 -0
  303. package/dist/components/ui/types/horizontal-scroller.types.d.ts +49 -0
  304. package/dist/components/ui/types/hover-card.types.d.ts +1 -0
  305. package/dist/components/ui/types/input.types.d.ts +1 -0
  306. package/dist/components/ui/types/loader.types.d.ts +1 -0
  307. package/dist/components/ui/types/nested-list.types.d.ts +63 -0
  308. package/dist/components/ui/types/nested-list.types.js +24 -0
  309. package/dist/components/ui/types/notification-panel.types.d.ts +63 -0
  310. package/dist/components/ui/types/popover.types.d.ts +1 -0
  311. package/dist/components/ui/types/progress-bar.types.d.ts +2 -0
  312. package/dist/components/ui/types/prompt.types.d.ts +1 -0
  313. package/dist/components/ui/types/radio-button-group.types.d.ts +1 -0
  314. package/dist/components/ui/types/select.types.d.ts +329 -0
  315. package/dist/components/ui/types/sidebar.types.d.ts +1 -0
  316. package/dist/components/ui/types/slider.types.d.ts +1 -0
  317. package/dist/components/ui/types/stepper.types.d.ts +1 -0
  318. package/dist/components/ui/types/switch.types.d.ts +1 -0
  319. package/dist/components/ui/types/tabs.types.d.ts +1 -0
  320. package/dist/components/ui/types/tag-group.types.d.ts +1 -0
  321. package/dist/components/ui/types/tag.types.d.ts +1 -0
  322. package/dist/components/ui/types/text-area.types.d.ts +1 -0
  323. package/dist/hooks/use-mobile.d.ts +1 -0
  324. package/dist/hooks/use-toast.d.ts +45 -0
  325. package/dist/hooks/use-toast.js +97 -0
  326. package/dist/ia-logo.svg +18 -0
  327. package/dist/icons/assets/PivotMode.svg.js +4 -0
  328. package/dist/icons/assets/PivotMode.svg2.js +5 -0
  329. package/dist/icons/assets/alan.svg.js +4 -0
  330. package/dist/icons/assets/alan.svg2.js +5 -0
  331. package/dist/icons/assets/alerts.svg.js +4 -0
  332. package/dist/icons/assets/alerts.svg2.js +5 -0
  333. package/dist/icons/assets/analyticalSearch.svg.js +4 -0
  334. package/dist/icons/assets/analyticalSearch.svg2.js +5 -0
  335. package/dist/icons/assets/back.svg.js +4 -0
  336. package/dist/icons/assets/back.svg2.js +5 -0
  337. package/dist/icons/assets/backdrop.svg.js +4 -0
  338. package/dist/icons/assets/backdrop.svg2.js +15 -0
  339. package/dist/icons/assets/bell.svg.js +4 -0
  340. package/dist/icons/assets/bell.svg2.js +5 -0
  341. package/dist/icons/assets/bin.svg.js +4 -0
  342. package/dist/icons/assets/bin.svg2.js +5 -0
  343. package/dist/icons/assets/blocks.svg.js +4 -0
  344. package/dist/icons/assets/blocks.svg2.js +5 -0
  345. package/dist/icons/assets/box.svg.js +4 -0
  346. package/dist/icons/assets/box.svg2.js +5 -0
  347. package/dist/icons/assets/calender-month.svg.js +4 -0
  348. package/dist/icons/assets/calender-month.svg2.js +5 -0
  349. package/dist/icons/assets/calender.svg.js +4 -0
  350. package/dist/icons/assets/calender.svg2.js +5 -0
  351. package/dist/icons/assets/chart.svg.js +4 -0
  352. package/dist/icons/assets/chart.svg2.js +5 -0
  353. package/dist/icons/assets/checkmark.svg.js +4 -0
  354. package/dist/icons/assets/checkmark.svg2.js +5 -0
  355. package/dist/icons/assets/chevronRight.svg.js +4 -0
  356. package/dist/icons/assets/chevronRight.svg2.js +5 -0
  357. package/dist/icons/assets/collapse.svg.js +4 -0
  358. package/dist/icons/assets/collapse.svg2.js +5 -0
  359. package/dist/icons/assets/column.svg.js +4 -0
  360. package/dist/icons/assets/column.svg2.js +5 -0
  361. package/dist/icons/assets/copy.svg.js +4 -0
  362. package/dist/icons/assets/copy.svg2.js +5 -0
  363. package/dist/icons/assets/createNewDocument.svg.js +4 -0
  364. package/dist/icons/assets/createNewDocument.svg2.js +5 -0
  365. package/dist/icons/assets/cross.svg.js +4 -0
  366. package/dist/icons/assets/cross.svg2.js +5 -0
  367. package/dist/icons/assets/delete.svg.js +4 -0
  368. package/dist/icons/assets/delete.svg2.js +5 -0
  369. package/dist/icons/assets/density.svg.js +4 -0
  370. package/dist/icons/assets/density.svg2.js +5 -0
  371. package/dist/icons/assets/document.svg.js +4 -0
  372. package/dist/icons/assets/document.svg2.js +5 -0
  373. package/dist/icons/assets/drag.svg.js +4 -0
  374. package/dist/icons/assets/drag.svg2.js +5 -0
  375. package/dist/icons/assets/draw.svg.js +4 -0
  376. package/dist/icons/assets/draw.svg2.js +5 -0
  377. package/dist/icons/assets/email.svg.js +4 -0
  378. package/dist/icons/assets/email.svg2.js +5 -0
  379. package/dist/icons/assets/errorCircle.svg.js +4 -0
  380. package/dist/icons/assets/errorCircle.svg2.js +5 -0
  381. package/dist/icons/assets/expand.svg.js +4 -0
  382. package/dist/icons/assets/expand.svg2.js +5 -0
  383. package/dist/icons/assets/filter.svg.js +4 -0
  384. package/dist/icons/assets/filter.svg2.js +5 -0
  385. package/dist/icons/assets/fiveSideStar.svg.js +4 -0
  386. package/dist/icons/assets/fiveSideStar.svg2.js +5 -0
  387. package/dist/icons/assets/floppy.svg.js +4 -0
  388. package/dist/icons/assets/floppy.svg2.js +5 -0
  389. package/dist/icons/assets/font.svg.js +4 -0
  390. package/dist/icons/assets/font.svg2.js +5 -0
  391. package/dist/icons/assets/funnel-hide.svg.js +4 -0
  392. package/dist/icons/assets/funnel-hide.svg2.js +5 -0
  393. package/dist/icons/assets/funnel-show.svg.js +4 -0
  394. package/dist/icons/assets/funnel-show.svg2.js +5 -0
  395. package/dist/icons/assets/globe.svg.js +4 -0
  396. package/dist/icons/assets/globe.svg2.js +5 -0
  397. package/dist/icons/assets/hamburger-closed.svg.js +4 -0
  398. package/dist/icons/assets/hamburger-closed.svg2.js +5 -0
  399. package/dist/icons/assets/hamburger-open.svg.js +4 -0
  400. package/dist/icons/assets/hamburger-open.svg2.js +5 -0
  401. package/dist/icons/assets/help-icon.svg.js +4 -0
  402. package/dist/icons/assets/help-icon.svg2.js +5 -0
  403. package/dist/icons/assets/ia-logo.svg.js +4 -0
  404. package/dist/icons/assets/ia-logo.svg2.js +5 -0
  405. package/dist/icons/assets/illustration_1.svg.js +4 -0
  406. package/dist/icons/assets/illustration_1.svg2.js +5 -0
  407. package/dist/icons/assets/info-icon.svg.js +4 -0
  408. package/dist/icons/assets/info-icon.svg2.js +5 -0
  409. package/dist/icons/assets/loadingSpinner.svg.js +4 -0
  410. package/dist/icons/assets/loadingSpinner.svg2.js +5 -0
  411. package/dist/icons/assets/locked.svg.js +4 -0
  412. package/dist/icons/assets/locked.svg2.js +5 -0
  413. package/dist/icons/assets/loginArrow.svg.js +4 -0
  414. package/dist/icons/assets/loginArrow.svg2.js +5 -0
  415. package/dist/icons/assets/matchWith.svg.js +4 -0
  416. package/dist/icons/assets/matchWith.svg2.js +5 -0
  417. package/dist/icons/assets/message-icon.svg.js +4 -0
  418. package/dist/icons/assets/message-icon.svg2.js +5 -0
  419. package/dist/icons/assets/more.svg.js +4 -0
  420. package/dist/icons/assets/more.svg2.js +5 -0
  421. package/dist/icons/assets/multi-color-filter.svg.js +4 -0
  422. package/dist/icons/assets/multi-color-filter.svg2.js +5 -0
  423. package/dist/icons/assets/paperrocket.svg.js +4 -0
  424. package/dist/icons/assets/paperrocket.svg2.js +5 -0
  425. package/dist/icons/assets/pencil.svg.js +4 -0
  426. package/dist/icons/assets/pencil.svg2.js +5 -0
  427. package/dist/icons/assets/person.svg.js +4 -0
  428. package/dist/icons/assets/person.svg2.js +5 -0
  429. package/dist/icons/assets/pin.svg.js +4 -0
  430. package/dist/icons/assets/pin.svg2.js +5 -0
  431. package/dist/icons/assets/plus.svg.js +4 -0
  432. package/dist/icons/assets/plus.svg2.js +5 -0
  433. package/dist/icons/assets/reset.svg.js +4 -0
  434. package/dist/icons/assets/reset.svg2.js +5 -0
  435. package/dist/icons/assets/rocket.svg.js +4 -0
  436. package/dist/icons/assets/rocket.svg2.js +5 -0
  437. package/dist/icons/assets/search.svg.js +4 -0
  438. package/dist/icons/assets/search.svg2.js +5 -0
  439. package/dist/icons/assets/settings.svg.js +4 -0
  440. package/dist/icons/assets/settings.svg2.js +5 -0
  441. package/dist/icons/assets/shapes.svg.js +4 -0
  442. package/dist/icons/assets/shapes.svg2.js +5 -0
  443. package/dist/icons/assets/stack-comfort.svg.js +4 -0
  444. package/dist/icons/assets/stack-comfort.svg2.js +5 -0
  445. package/dist/icons/assets/stack-compact.svg.js +4 -0
  446. package/dist/icons/assets/stack-compact.svg2.js +5 -0
  447. package/dist/icons/assets/stack.svg.js +4 -0
  448. package/dist/icons/assets/stack.svg2.js +5 -0
  449. package/dist/icons/assets/store.svg.js +4 -0
  450. package/dist/icons/assets/store.svg2.js +5 -0
  451. package/dist/icons/assets/table.svg.js +4 -0
  452. package/dist/icons/assets/table.svg2.js +5 -0
  453. package/dist/icons/assets/three-dots.svg.js +4 -0
  454. package/dist/icons/assets/three-dots.svg2.js +5 -0
  455. package/dist/icons/assets/trendingDown.svg.js +4 -0
  456. package/dist/icons/assets/trendingDown.svg2.js +5 -0
  457. package/dist/icons/assets/trendingFlat.svg.js +4 -0
  458. package/dist/icons/assets/trendingFlat.svg2.js +5 -0
  459. package/dist/icons/assets/trendingNeutral.svg.js +4 -0
  460. package/dist/icons/assets/trendingNeutral.svg2.js +5 -0
  461. package/dist/icons/assets/trendingUp.svg.js +4 -0
  462. package/dist/icons/assets/trendingUp.svg2.js +5 -0
  463. package/dist/icons/assets/unpin.svg.js +4 -0
  464. package/dist/icons/assets/unpin.svg2.js +5 -0
  465. package/dist/icons/assets/upload.svg.js +4 -0
  466. package/dist/icons/assets/upload.svg2.js +5 -0
  467. package/dist/icons/assets/webp/bill-or-receipt.webp.js +4 -0
  468. package/dist/icons/assets/webp/checklist-with-pen.webp.js +4 -0
  469. package/dist/icons/assets/webp/click-me-arrow.webp.js +4 -0
  470. package/dist/icons/assets/webp/csv-logo.webp.js +4 -0
  471. package/dist/icons/assets/webp/dollar.webp.js +4 -0
  472. package/dist/icons/assets/webp/empty-state-1.webp.js +4 -0
  473. package/dist/icons/assets/webp/empty-state-2.webp.js +4 -0
  474. package/dist/icons/assets/webp/empty-state-3.webp.js +4 -0
  475. package/dist/icons/assets/webp/empty-state-4.webp.js +4 -0
  476. package/dist/icons/assets/webp/empty-state-5.webp.js +4 -0
  477. package/dist/icons/assets/webp/empty-state-6.webp.js +4 -0
  478. package/dist/icons/assets/webp/excel-logo.webp.js +4 -0
  479. package/dist/icons/assets/webp/file-upload.webp.js +4 -0
  480. package/dist/icons/assets/webp/inventory-adjustment.webp.js +4 -0
  481. package/dist/icons/assets/webp/multicolor-bell.webp.js +4 -0
  482. package/dist/icons/assets/webp/price-tag.webp.js +4 -0
  483. package/dist/icons/assets/webp/receipts-stack.webp.js +4 -0
  484. package/dist/icons/assets/webp/recommended-receipt.webp.js +4 -0
  485. package/dist/icons/assets/webp/return-carton.webp.js +4 -0
  486. package/dist/icons/assets/webp/shipping-container.webp.js +4 -0
  487. package/dist/icons/assets/webp/stack-of-packaged-boxes.webp.js +4 -0
  488. package/dist/icons/assets/webp/text-logo.webp.js +4 -0
  489. package/dist/icons/assets/webp/two-stacked-packaged-boxes.webp.js +4 -0
  490. package/dist/icons/assets/webp/warranty.webp.js +4 -0
  491. package/dist/icons/index.d.ts +119 -0
  492. package/dist/icons/index.js +382 -0
  493. package/dist/impact-nova.css +1 -0
  494. package/dist/index.d.ts +57 -0
  495. package/dist/index.js +340 -0
  496. package/dist/lib/utils.d.ts +3 -0
  497. package/dist/lib/utils.js +18 -0
  498. package/dist/main.d.ts +0 -0
  499. package/dist/vite.svg +1 -0
  500. package/package.json +515 -0
  501. package/tailwind.config.d.ts +6 -0
  502. package/tailwind.config.js +182 -0
@@ -0,0 +1,29 @@
1
+ import { ICellRendererParams } from 'ag-grid-community';
2
+ export interface CheckboxDisplayRendererProps extends ICellRendererParams {
3
+ /** Whether the checkbox is disabled */
4
+ disabled?: boolean;
5
+ }
6
+ /**
7
+ * CheckboxDisplayRenderer - Lightweight styled div that looks like a checkbox.
8
+ *
9
+ * Unlike Input/Select, checkboxes don't need a separate editor component.
10
+ * A single click toggles the boolean value directly via `node.setDataValue()`.
11
+ * This avoids the overhead of mounting/unmounting an editor for a simple toggle.
12
+ *
13
+ * Zero React state: the checked state is derived from `props.value`.
14
+ * AG Grid will re-render this component when the value changes.
15
+ *
16
+ * Usage in colDef:
17
+ * ```ts
18
+ * {
19
+ * field: 'inStock',
20
+ * cellRenderer: CheckboxDisplayRenderer,
21
+ * editable: false, // No AG Grid editor needed — toggle is handled in the renderer
22
+ * cellRendererParams: { disabled: false },
23
+ * }
24
+ * ```
25
+ */
26
+ export declare const CheckboxDisplayRenderer: {
27
+ (props: CheckboxDisplayRendererProps): import("react/jsx-runtime").JSX.Element;
28
+ displayName: string;
29
+ };
@@ -0,0 +1,36 @@
1
+ import { jsx as a } from "react/jsx-runtime";
2
+ import { useCallback as n } from "react";
3
+ import { Check as h } from "lucide-react";
4
+ const b = (c) => {
5
+ const { value: s, node: l, column: t, disabled: e } = c, r = !!s, o = n(() => {
6
+ e || !t || l.setDataValue(t.getColId(), !r);
7
+ }, [e, t, l, r]), d = n(
8
+ (i) => {
9
+ e || (i.key === " " || i.key === "Enter") && (i.preventDefault(), o());
10
+ },
11
+ [e, o]
12
+ );
13
+ return /* @__PURE__ */ a(
14
+ "div",
15
+ {
16
+ className: `flex items-center justify-center h-full w-full ag-cell-inner-padding ${e ? "opacity-60 cursor-not-allowed" : !e ? "ag-editable-cell-highlight" : ""}`,
17
+ onClick: o,
18
+ onKeyDown: d,
19
+ role: "checkbox",
20
+ "aria-checked": r,
21
+ "aria-disabled": e,
22
+ tabIndex: e ? -1 : 0,
23
+ children: /* @__PURE__ */ a(
24
+ "div",
25
+ {
26
+ className: `h-4 w-4 shrink-0 rounded-[4px] border flex items-center justify-center transition-colors ${r ? "border-primary bg-accent text-primary" : "border-tertiary-border bg-white"} ${e ? "cursor-not-allowed opacity-50" : "cursor-pointer"}`,
27
+ children: r && /* @__PURE__ */ a(h, { className: "h-3 w-3", strokeWidth: 3 })
28
+ }
29
+ )
30
+ }
31
+ );
32
+ };
33
+ b.displayName = "CheckboxDisplayRenderer";
34
+ export {
35
+ b as CheckboxDisplayRenderer
36
+ };
@@ -0,0 +1,37 @@
1
+ import { ICellRendererParams } from 'ag-grid-community';
2
+ export interface DateDisplayRendererProps extends ICellRendererParams {
3
+ /** Date format type: 'date' | 'datetime-local' | 'time' */
4
+ dateType?: 'date' | 'datetime-local' | 'time';
5
+ /** Placeholder text when no date is selected */
6
+ placeholder?: string;
7
+ /** Whether the field is disabled */
8
+ disabled?: boolean;
9
+ }
10
+ /**
11
+ * DateDisplayRenderer - Lightweight styled div showing a formatted date with a calendar icon.
12
+ *
13
+ * This is the DISPLAY component. It renders no `<input type="date">` element
14
+ * and holds zero React state. When clicked, AG Grid activates the paired
15
+ * `DateCellEditor` as a popup.
16
+ *
17
+ * Uses AG Grid's `valueFormatted` if a `valueFormatter` is configured on the
18
+ * colDef; otherwise falls back to locale-based date formatting.
19
+ *
20
+ * Usage in colDef:
21
+ * ```ts
22
+ * {
23
+ * field: 'startDate',
24
+ * cellRenderer: DateDisplayRenderer,
25
+ * cellEditor: DateCellEditor,
26
+ * cellEditorPopup: true,
27
+ * editable: true,
28
+ * singleClickEdit: true,
29
+ * cellRendererParams: { dateType: 'date', placeholder: 'Select date...' },
30
+ * cellEditorParams: { dateType: 'date' },
31
+ * }
32
+ * ```
33
+ */
34
+ export declare const DateDisplayRenderer: {
35
+ (props: DateDisplayRendererProps): import("react/jsx-runtime").JSX.Element;
36
+ displayName: string;
37
+ };
@@ -0,0 +1,50 @@
1
+ import { jsx as r, jsxs as u } from "react/jsx-runtime";
2
+ import { CalendarDays as m } from "lucide-react";
3
+ const f = (e, i) => {
4
+ if (e == null || e === "") return "";
5
+ try {
6
+ const t = e instanceof Date ? e : new Date(String(e));
7
+ return isNaN(t.getTime()) ? String(e) : i === "time" ? t.toLocaleTimeString(void 0, { hour: "2-digit", minute: "2-digit" }) : i === "datetime-local" ? t.toLocaleString(void 0, {
8
+ year: "numeric",
9
+ month: "short",
10
+ day: "numeric",
11
+ hour: "2-digit",
12
+ minute: "2-digit"
13
+ }) : t.toLocaleDateString(void 0, {
14
+ year: "numeric",
15
+ month: "short",
16
+ day: "numeric"
17
+ });
18
+ } catch {
19
+ return String(e);
20
+ }
21
+ }, h = (e) => {
22
+ const {
23
+ valueFormatted: i,
24
+ value: t,
25
+ dateType: d = "date",
26
+ placeholder: l = "Select date...",
27
+ disabled: n,
28
+ colDef: s
29
+ } = e, c = !n && s?.editable === !0, a = i ?? f(t, d), o = !a;
30
+ return /* @__PURE__ */ r(
31
+ "div",
32
+ {
33
+ className: `w-full h-full flex items-center ag-cell-inner-padding ${n ? "opacity-60 cursor-not-allowed" : c ? "ag-editable-cell-highlight" : ""}`,
34
+ children: /* @__PURE__ */ u(
35
+ "div",
36
+ {
37
+ className: "flex w-full items-center justify-between rounded-[8px] bg-white px-1.5 h-7 cursor-pointer",
38
+ children: [
39
+ /* @__PURE__ */ r("span", { className: `truncate text-sm font-medium text-[#1f2b4d] ${o ? "text-[#dfe2e7]" : ""}`, children: o ? l : a }),
40
+ /* @__PURE__ */ r(m, { className: "h-3.5 w-3.5 shrink-0 text-muted-foreground" })
41
+ ]
42
+ }
43
+ )
44
+ }
45
+ );
46
+ };
47
+ h.displayName = "DateDisplayRenderer";
48
+ export {
49
+ h as DateDisplayRenderer
50
+ };
@@ -0,0 +1,33 @@
1
+ import { ICellEditorParams } from 'ag-grid-community';
2
+ export interface DateCellEditorProps extends ICellEditorParams {
3
+ /** Date input type */
4
+ dateType?: 'date' | 'datetime-local' | 'time';
5
+ /** Minimum date (ISO string) */
6
+ min?: string;
7
+ /** Maximum date (ISO string) */
8
+ max?: string;
9
+ }
10
+ /**
11
+ * DateCellEditor - AG Grid popup cell editor with a native date input.
12
+ *
13
+ * Uses the browser's native date picker for reliable cross-browser support.
14
+ * Mounted by AG Grid as a popup editor (requires `cellEditorPopup: true`).
15
+ *
16
+ * Returns an ISO string on commit, which AG Grid stores as the cell value.
17
+ *
18
+ * Only holds a single piece of state: the current date string.
19
+ *
20
+ * Usage in colDef:
21
+ * ```ts
22
+ * {
23
+ * field: 'startDate',
24
+ * cellRenderer: DateDisplayRenderer,
25
+ * cellEditor: DateCellEditor,
26
+ * cellEditorPopup: true,
27
+ * editable: true,
28
+ * singleClickEdit: true,
29
+ * cellEditorParams: { dateType: 'date', min: '2020-01-01', max: '2030-12-31' },
30
+ * }
31
+ * ```
32
+ */
33
+ export declare const DateCellEditor: import('react').ForwardRefExoticComponent<DateCellEditorProps & import('react').RefAttributes<unknown>>;
@@ -0,0 +1,73 @@
1
+ import { jsx as c } from "react/jsx-runtime";
2
+ import { forwardRef as h, useRef as y, useState as S, useImperativeHandle as b, useCallback as u } from "react";
3
+ const w = (e, n) => {
4
+ if (e == null || e === "") return "";
5
+ try {
6
+ const t = e instanceof Date ? e : new Date(String(e));
7
+ return isNaN(t.getTime()) ? "" : n === "date" ? t.toISOString().split("T")[0] : n === "datetime-local" ? t.toISOString().slice(0, 16) : n === "time" ? t.toISOString().slice(11, 16) : "";
8
+ } catch {
9
+ return "";
10
+ }
11
+ }, C = h((e, n) => {
12
+ const {
13
+ value: t,
14
+ dateType: a = "date",
15
+ min: l,
16
+ max: d,
17
+ stopEditing: s
18
+ } = e, i = y(null), [o, f] = S(w(t, a));
19
+ b(n, () => ({
20
+ getValue() {
21
+ if (!o) return null;
22
+ if (a === "time") return o;
23
+ try {
24
+ return new Date(o).toISOString();
25
+ } catch {
26
+ return o;
27
+ }
28
+ },
29
+ isCancelBeforeStart() {
30
+ return !1;
31
+ },
32
+ isCancelAfterEnd() {
33
+ return !1;
34
+ },
35
+ isPopup() {
36
+ return !0;
37
+ },
38
+ afterGuiAttached() {
39
+ if (i.current) {
40
+ i.current.focus();
41
+ try {
42
+ i.current.showPicker?.();
43
+ } catch {
44
+ }
45
+ }
46
+ }
47
+ }));
48
+ const p = u((r) => {
49
+ f(r.target.value);
50
+ }, []), m = u((r) => {
51
+ r.key === "Enter" || r.key === "Escape" || r.key === "Tab" || r.stopPropagation();
52
+ }, []), g = u(() => {
53
+ s();
54
+ }, [s]);
55
+ return /* @__PURE__ */ c("div", { className: "p-1 bg-white border border-primary rounded-md shadow-lg", children: /* @__PURE__ */ c(
56
+ "input",
57
+ {
58
+ ref: i,
59
+ type: a,
60
+ value: o,
61
+ onChange: p,
62
+ onKeyDown: m,
63
+ onBlur: g,
64
+ min: l,
65
+ max: d,
66
+ className: "px-2 py-1.5 text-sm font-medium bg-white border border-input rounded focus:outline-none focus:border-primary cursor-pointer"
67
+ }
68
+ ) });
69
+ });
70
+ C.displayName = "DateCellEditor";
71
+ export {
72
+ C as DateCellEditor
73
+ };
@@ -0,0 +1,21 @@
1
+ import { default as React } from 'react';
2
+ import { ICellEditorParams } from 'ag-grid-community';
3
+ export interface InputCellEditorProps extends ICellEditorParams {
4
+ /** Placeholder text */
5
+ placeholder?: string;
6
+ /** Minimum value (number inputs) */
7
+ min?: number;
8
+ /** Maximum value (number inputs) */
9
+ max?: number;
10
+ /** Step increment (number inputs) */
11
+ step?: number;
12
+ /** Maximum character length */
13
+ maxLength?: number;
14
+ /** Whether to right-align (for numeric values) */
15
+ isNumeric?: boolean;
16
+ /** Optional callback when the value changes */
17
+ onValueChange?: (value: string | undefined) => void;
18
+ /** Whether to suppress auto-focus on mount */
19
+ suppressAutoFocus?: boolean;
20
+ }
21
+ export declare const InputCellEditor: React.NamedExoticComponent<InputCellEditorProps & React.RefAttributes<any>>;
@@ -0,0 +1,91 @@
1
+ import { jsx as o } from "react/jsx-runtime";
2
+ import C, { forwardRef as A, useRef as E, useImperativeHandle as V, useEffect as D, useCallback as s } from "react";
3
+ const p = A((u, m) => {
4
+ const {
5
+ value: i,
6
+ placeholder: h,
7
+ min: g,
8
+ max: b,
9
+ step: w,
10
+ maxLength: a,
11
+ onValueChange: c,
12
+ colDef: x
13
+ } = u, f = x?.cellDataType === "number" ? "number" : "text", l = f === "number", t = E(null);
14
+ V(m, () => ({
15
+ getValue() {
16
+ const e = t.current?.value;
17
+ if (l) {
18
+ if (!e || e === "" || e === "-")
19
+ return null;
20
+ const d = Number(e);
21
+ return isNaN(d) ? null : d;
22
+ }
23
+ return e === "" ? null : e;
24
+ },
25
+ isCancelBeforeStart() {
26
+ return !1;
27
+ },
28
+ isCancelAfterEnd() {
29
+ return !1;
30
+ }
31
+ }), []), D(() => {
32
+ if (t.current && !u.suppressAutoFocus) {
33
+ if (t.current.value = i != null ? String(i) : "", l) {
34
+ const n = t.current, e = Object.getOwnPropertyDescriptor(HTMLInputElement.prototype, "value");
35
+ Object.defineProperty(n, "value", {
36
+ get() {
37
+ const r = this.valueAsNumber;
38
+ return isNaN(r) ? e.get.call(this) : r;
39
+ },
40
+ set(r) {
41
+ e.set.call(this, r);
42
+ },
43
+ configurable: !0
44
+ });
45
+ }
46
+ t.current.focus(), t.current.select();
47
+ }
48
+ return () => {
49
+ };
50
+ }, []);
51
+ const y = s((n) => {
52
+ const e = t.current?.value;
53
+ if (!(a && e && e.length > a)) {
54
+ if (l && t.current) {
55
+ const r = t.current.valueAsNumber;
56
+ isNaN(r) || t.current.setAttribute("data-value", String(r));
57
+ }
58
+ c?.(e);
59
+ }
60
+ }, [a, c, l]), N = s((n) => {
61
+ n.key === "Enter" || n.key === "Escape" || n.key === "Tab" || ["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight"].includes(n.key) && n.stopPropagation();
62
+ }, []), v = s(() => {
63
+ u.stopEditing?.();
64
+ }, [u, l]);
65
+ return /* @__PURE__ */ o("div", { className: "w-full h-full flex items-center ag-cell-inner-padding ag-editable-cell-highlight", children: /* @__PURE__ */ o(
66
+ "div",
67
+ {
68
+ className: `flex w-full items-center rounded-[8px] bg-white px-1.5 h-7 ${l ? "justify-end text-right" : ""}`,
69
+ children: /* @__PURE__ */ o(
70
+ "input",
71
+ {
72
+ ref: t,
73
+ type: f,
74
+ onChange: y,
75
+ onKeyDown: N,
76
+ onBlur: v,
77
+ placeholder: h,
78
+ className: `flex h-full w-full bg-transparent p-0 text-sm font-medium text-[#1f2b4d] outline-none placeholder:font-medium placeholder:text-[#dfe2e7] ${l ? "text-right" : ""}`,
79
+ min: g,
80
+ max: b,
81
+ step: w
82
+ }
83
+ )
84
+ }
85
+ ) });
86
+ });
87
+ p.displayName = "InputCellEditor";
88
+ const R = C.memo(p, () => !0);
89
+ export {
90
+ R as InputCellEditor
91
+ };
@@ -0,0 +1,45 @@
1
+ import { ICellEditorParams } from 'ag-grid-community';
2
+ import { SelectOption } from '../types';
3
+ export interface SelectCellEditorProps extends ICellEditorParams {
4
+ /** Available options */
5
+ options?: SelectOption[];
6
+ /** Placeholder text */
7
+ placeholder?: string;
8
+ /** Whether the dropdown is searchable */
9
+ isSearchable?: boolean;
10
+ /** Whether the value can be cleared */
11
+ isClearable?: boolean;
12
+ /** Optional callback when value changes */
13
+ onValueChange?: (value: string | null) => void;
14
+ }
15
+ /**
16
+ * SelectCellEditor - AG Grid cell editor using impact-nova's Select component.
17
+ *
18
+ * Mounted by AG Grid when a cell enters edit mode. The Select dropdown opens
19
+ * automatically on mount so the user doesn't need a second click.
20
+ *
21
+ * The editor visually matches the SelectDisplayRenderer — same outer wrapper
22
+ * with `ag-editable-cell-highlight`, same inner white rounded div with chevron.
23
+ * The Select trigger is styled to blend in seamlessly.
24
+ *
25
+ * Only holds a single piece of state: the currently selected value.
26
+ *
27
+ * Usage in colDef:
28
+ * ```ts
29
+ * {
30
+ * field: 'status',
31
+ * cellRenderer: SelectDisplayRenderer,
32
+ * cellEditor: SelectCellEditor,
33
+ * cellEditorPopup: true,
34
+ * editable: true,
35
+ * singleClickEdit: true,
36
+ * cellEditorParams: {
37
+ * options: [
38
+ * { label: 'Active', value: 'active' },
39
+ * { label: 'Inactive', value: 'inactive' },
40
+ * ],
41
+ * },
42
+ * }
43
+ * ```
44
+ */
45
+ export declare const SelectCellEditor: import('react').ForwardRefExoticComponent<SelectCellEditorProps & import('react').RefAttributes<unknown>>;
@@ -0,0 +1,64 @@
1
+ import { jsx as d } from "react/jsx-runtime";
2
+ import { forwardRef as v, useState as x, useRef as E, useImperativeHandle as V, useCallback as n } from "react";
3
+ import M from "../../../select/select.js";
4
+ const N = v((t, f) => {
5
+ const {
6
+ value: a,
7
+ options: p = [],
8
+ placeholder: g = "Select...",
9
+ isSearchable: h = !0,
10
+ isClearable: m = !0,
11
+ stopEditing: s
12
+ } = t, r = p.map((e) => ({
13
+ value: e.value,
14
+ label: e.label,
15
+ isDisabled: e.isDisabled
16
+ })), [u, o] = x(
17
+ a != null ? String(a) : null
18
+ ), i = E(!1);
19
+ V(f, () => ({
20
+ getValue() {
21
+ return u;
22
+ },
23
+ isCancelBeforeStart() {
24
+ return !1;
25
+ },
26
+ isCancelAfterEnd() {
27
+ return !1;
28
+ },
29
+ isPopup() {
30
+ return !0;
31
+ }
32
+ }));
33
+ const C = r.find((e) => e.value === u) ?? null, l = n(() => {
34
+ i.current || (i.current = !0, s());
35
+ }, [s]), S = n(
36
+ (e) => {
37
+ const c = e ? e.value : null;
38
+ o(c), t.onValueChange?.(c), l();
39
+ },
40
+ [l, o, t.onValueChange]
41
+ ), b = n(() => {
42
+ l();
43
+ }, [l]);
44
+ return /* @__PURE__ */ d("div", { className: "w-full h-full flex items-center ag-cell-inner-padding ag-editable-cell-highlight", children: /* @__PURE__ */ d(
45
+ M,
46
+ {
47
+ options: r,
48
+ value: C,
49
+ onChange: S,
50
+ onMenuClose: b,
51
+ placeholder: g,
52
+ isSearchable: h,
53
+ isClearable: m,
54
+ isMulti: !1,
55
+ defaultMenuIsOpen: !0,
56
+ className: "!border-none !shadow-none !ring-0 !h-7 !rounded-[8px] !px-1.5",
57
+ parentClassName: "!w-full !gap-0"
58
+ }
59
+ ) });
60
+ });
61
+ N.displayName = "SelectCellEditor";
62
+ export {
63
+ N as SelectCellEditor
64
+ };
@@ -0,0 +1,9 @@
1
+ import { ICellEditorParams } from 'ag-grid-community';
2
+ import { SplitConfig, SubCellComponentProps } from '../types';
3
+ export interface SplitCellEditorProps extends Omit<ICellEditorParams, 'context'> {
4
+ splits: SplitConfig[];
5
+ context?: {
6
+ frameworkComponents?: Record<string, React.ComponentType<SubCellComponentProps>>;
7
+ };
8
+ }
9
+ export declare const SplitCellEditor: import('react').ForwardRefExoticComponent<SplitCellEditorProps & import('react').RefAttributes<unknown>>;
@@ -0,0 +1,85 @@
1
+ import { jsx as s } from "react/jsx-runtime";
2
+ import { forwardRef as b, useRef as R, useImperativeHandle as v } from "react";
3
+ import { AG_GRID_VALUE_FORMATTERS as x } from "../../value-formatters.js";
4
+ const N = b((m, g) => {
5
+ const { splits: a, data: f, node: h, api: u, column: d, context: p, stopEditing: y } = m, i = R({});
6
+ Object.keys(i.current).length === 0 && a && f && a.forEach((e) => {
7
+ const o = e.field.split(".");
8
+ let r = f;
9
+ for (const t of o) r = r?.[t];
10
+ i.current[e.field] = r && typeof r == "object" && "value" in r ? r.value : r;
11
+ }), v(g, () => ({
12
+ getValue() {
13
+ const e = JSON.parse(JSON.stringify(f));
14
+ return Object.entries(i.current).forEach(([o, r]) => {
15
+ const t = o.split(".");
16
+ let l = e;
17
+ for (let n = 0; n < t.length - 1; n++)
18
+ l[t[n]] || (l[t[n]] = {}), l = l[t[n]];
19
+ l[t[t.length - 1]] = r;
20
+ }), e;
21
+ },
22
+ isCancelBeforeStart: () => !1,
23
+ isCancelAfterEnd: () => !1,
24
+ isPopup: () => !1
25
+ }));
26
+ const C = d?.getColDef().type === "number", E = (e, o, r) => {
27
+ const t = e.valueFormatter;
28
+ if (!t) return o;
29
+ if (typeof t == "function")
30
+ return t({ value: o, data: r });
31
+ const l = typeof t == "string" ? t : t.type, n = x[l];
32
+ if (n) {
33
+ const c = {
34
+ value: o,
35
+ data: r,
36
+ node: h,
37
+ api: u,
38
+ context: p,
39
+ column: d,
40
+ colDef: {
41
+ ...d?.getColDef(),
42
+ ...typeof t == "object" ? t : {},
43
+ ...e
44
+ }
45
+ };
46
+ return n(c);
47
+ }
48
+ return o;
49
+ };
50
+ return /* @__PURE__ */ s("div", { style: { display: "grid", gridTemplateRows: `repeat(${a.length}, 1fr)`, height: "100%", width: "100%" }, children: a.map((e, o) => {
51
+ let r = e.cellEditor || e.cellRenderer;
52
+ if (typeof r == "string") {
53
+ const c = u?.getGridOption("components");
54
+ r = p?.frameworkComponents?.[r] || c?.[r];
55
+ }
56
+ const t = e.type === "number" || e.type !== "text" && C, l = i.current[e.field], n = r;
57
+ return /* @__PURE__ */ s(
58
+ "div",
59
+ {
60
+ className: `flex items-center min-h-0 max-h-full overflow-hidden ${t ? "justify-end" : ""}`,
61
+ style: { borderBottom: o === a.length - 1 ? "none" : "1px solid #d9dde7" },
62
+ children: e.editable && n ? /* @__PURE__ */ s(
63
+ n,
64
+ {
65
+ ...m,
66
+ ...e.cellEditorParams,
67
+ ...e.cellRendererParams,
68
+ value: l,
69
+ onValueChange: (c) => {
70
+ i.current[e.field] = c;
71
+ },
72
+ suppressAutoFocus: o !== 0,
73
+ colDef: { ...e, field: e.field },
74
+ stopEditing: y
75
+ }
76
+ ) : /* @__PURE__ */ s("div", { className: `w-full px-2 text-gray-500 ${t ? "text-right" : ""}`, children: E(e, l, f) })
77
+ },
78
+ o
79
+ );
80
+ }) });
81
+ });
82
+ N.displayName = "SplitCellEditor";
83
+ export {
84
+ N as SplitCellEditor
85
+ };
@@ -0,0 +1,31 @@
1
+ import { ICellEditorParams } from 'ag-grid-community';
2
+ export interface TextAreaCellEditorProps extends ICellEditorParams {
3
+ /** Number of visible rows */
4
+ rows?: number;
5
+ /** Maximum character length */
6
+ maxLength?: number;
7
+ /** Placeholder text */
8
+ placeholder?: string;
9
+ }
10
+ /**
11
+ * TextAreaCellEditor - AG Grid popup cell editor with a native textarea.
12
+ *
13
+ * Mounted by AG Grid as a popup editor (requires `cellEditorPopup: true` in colDef).
14
+ * This allows the textarea to expand beyond the cell boundaries.
15
+ *
16
+ * Only holds a single piece of state: the current text value.
17
+ *
18
+ * Usage in colDef:
19
+ * ```ts
20
+ * {
21
+ * field: 'description',
22
+ * cellRenderer: TextAreaDisplayRenderer,
23
+ * cellEditor: TextAreaCellEditor,
24
+ * cellEditorPopup: true,
25
+ * editable: true,
26
+ * singleClickEdit: true,
27
+ * cellEditorParams: { rows: 4, maxLength: 500, placeholder: 'Enter description...' },
28
+ * }
29
+ * ```
30
+ */
31
+ export declare const TextAreaCellEditor: import('react').ForwardRefExoticComponent<TextAreaCellEditorProps & import('react').RefAttributes<unknown>>;
@@ -0,0 +1,61 @@
1
+ import { jsxs as l, jsx as h } from "react/jsx-runtime";
2
+ import { forwardRef as g, useRef as x, useState as y, useImperativeHandle as w, useCallback as u } from "react";
3
+ const b = g((s, i) => {
4
+ const {
5
+ value: a,
6
+ rows: d = 4,
7
+ maxLength: t,
8
+ placeholder: c
9
+ } = s, r = x(null), [n, f] = y(a != null ? String(a) : "");
10
+ w(i, () => ({
11
+ getValue() {
12
+ return n;
13
+ },
14
+ isCancelBeforeStart() {
15
+ return !1;
16
+ },
17
+ isCancelAfterEnd() {
18
+ return !1;
19
+ },
20
+ isPopup() {
21
+ return !0;
22
+ },
23
+ afterGuiAttached() {
24
+ if (r.current) {
25
+ r.current.focus();
26
+ const e = r.current.value.length;
27
+ r.current.setSelectionRange(e, e);
28
+ }
29
+ }
30
+ }));
31
+ const m = u((e) => {
32
+ const o = e.target.value;
33
+ t && o.length > t || f(o);
34
+ }, [t]), p = u((e) => {
35
+ e.key !== "Escape" && e.key !== "Tab" && (e.key === "Enter" && !e.shiftKey || e.stopPropagation());
36
+ }, []);
37
+ return /* @__PURE__ */ l("div", { className: "p-1 bg-white border border-primary rounded-md shadow-lg min-w-[250px]", children: [
38
+ /* @__PURE__ */ h(
39
+ "textarea",
40
+ {
41
+ ref: r,
42
+ value: n,
43
+ onChange: m,
44
+ onKeyDown: p,
45
+ placeholder: c,
46
+ rows: d,
47
+ maxLength: t,
48
+ className: "w-full px-2 py-1.5 text-sm font-medium bg-white border border-input rounded focus:outline-none focus:border-primary resize-y"
49
+ }
50
+ ),
51
+ t && /* @__PURE__ */ l("div", { className: "text-right text-xs text-muted-foreground px-1 mt-0.5", children: [
52
+ n.length,
53
+ "/",
54
+ t
55
+ ] })
56
+ ] });
57
+ });
58
+ b.displayName = "TextAreaCellEditor";
59
+ export {
60
+ b as TextAreaCellEditor
61
+ };