impact-nova 1.8.2 → 1.9.0-alpha.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 (1852) hide show
  1. package/dist/assets/flatten.worker-C7x-Wj6s.js +1 -0
  2. package/dist/assets/flatten.worker-C7x-Wj6s.js.map +1 -0
  3. package/dist/components/ui/accordion-nested-list/accordion-nested-list.js +1 -0
  4. package/dist/components/ui/accordion-nested-list/accordion-nested-list.js.map +1 -0
  5. package/dist/components/ui/accordion-nested-list/hooks/useAccordionNestedListState.js +1 -0
  6. package/dist/components/ui/accordion-nested-list/hooks/useAccordionNestedListState.js.map +1 -0
  7. package/dist/components/ui/accordion-nested-list/index.js +1 -0
  8. package/dist/components/ui/accordion-nested-list/index.js.map +1 -0
  9. package/dist/components/ui/accordion.js +70 -57
  10. package/dist/components/ui/accordion.js.map +1 -0
  11. package/dist/components/ui/ag-grid-react/cell-renderers/actions-cell-renderer.js +1 -0
  12. package/dist/components/ui/ag-grid-react/cell-renderers/actions-cell-renderer.js.map +1 -0
  13. package/dist/components/ui/ag-grid-react/cell-renderers/badge-cell-renderer.js +1 -0
  14. package/dist/components/ui/ag-grid-react/cell-renderers/badge-cell-renderer.js.map +1 -0
  15. package/dist/components/ui/ag-grid-react/cell-renderers/cell-renderer-utils.js +1 -0
  16. package/dist/components/ui/ag-grid-react/cell-renderers/cell-renderer-utils.js.map +1 -0
  17. package/dist/components/ui/ag-grid-react/cell-renderers/checkbox-display-renderer.js +1 -0
  18. package/dist/components/ui/ag-grid-react/cell-renderers/checkbox-display-renderer.js.map +1 -0
  19. package/dist/components/ui/ag-grid-react/cell-renderers/date-display-renderer.js +1 -0
  20. package/dist/components/ui/ag-grid-react/cell-renderers/date-display-renderer.js.map +1 -0
  21. package/dist/components/ui/ag-grid-react/cell-renderers/default-text-cell-renderer.js +1 -0
  22. package/dist/components/ui/ag-grid-react/cell-renderers/default-text-cell-renderer.js.map +1 -0
  23. package/dist/components/ui/ag-grid-react/cell-renderers/editors/date-cell-editor.js +1 -0
  24. package/dist/components/ui/ag-grid-react/cell-renderers/editors/date-cell-editor.js.map +1 -0
  25. package/dist/components/ui/ag-grid-react/cell-renderers/editors/input-cell-editor.js +1 -0
  26. package/dist/components/ui/ag-grid-react/cell-renderers/editors/input-cell-editor.js.map +1 -0
  27. package/dist/components/ui/ag-grid-react/cell-renderers/editors/percent-progress-cell-editor.js +1 -0
  28. package/dist/components/ui/ag-grid-react/cell-renderers/editors/percent-progress-cell-editor.js.map +1 -0
  29. package/dist/components/ui/ag-grid-react/cell-renderers/editors/select-cell-editor.js +1 -0
  30. package/dist/components/ui/ag-grid-react/cell-renderers/editors/select-cell-editor.js.map +1 -0
  31. package/dist/components/ui/ag-grid-react/cell-renderers/editors/split-cell-editor.js +75 -63
  32. package/dist/components/ui/ag-grid-react/cell-renderers/editors/split-cell-editor.js.map +1 -0
  33. package/dist/components/ui/ag-grid-react/cell-renderers/editors/textarea-cell-editor.js +1 -0
  34. package/dist/components/ui/ag-grid-react/cell-renderers/editors/textarea-cell-editor.js.map +1 -0
  35. package/dist/components/ui/ag-grid-react/cell-renderers/empty-cell-renderer.js +1 -0
  36. package/dist/components/ui/ag-grid-react/cell-renderers/empty-cell-renderer.js.map +1 -0
  37. package/dist/components/ui/ag-grid-react/cell-renderers/index.d.ts +19 -85
  38. package/dist/components/ui/ag-grid-react/cell-renderers/index.js +49 -71
  39. package/dist/components/ui/ag-grid-react/cell-renderers/index.js.map +1 -0
  40. package/dist/components/ui/ag-grid-react/cell-renderers/input-display-renderer.js +1 -0
  41. package/dist/components/ui/ag-grid-react/cell-renderers/input-display-renderer.js.map +1 -0
  42. package/dist/components/ui/ag-grid-react/cell-renderers/link-with-batch-cell-renderer.js +2 -1
  43. package/dist/components/ui/ag-grid-react/cell-renderers/link-with-batch-cell-renderer.js.map +1 -0
  44. package/dist/components/ui/ag-grid-react/cell-renderers/percent-progress-display-renderer.js +1 -0
  45. package/dist/components/ui/ag-grid-react/cell-renderers/percent-progress-display-renderer.js.map +1 -0
  46. package/dist/components/ui/ag-grid-react/cell-renderers/select-display-renderer.js +1 -0
  47. package/dist/components/ui/ag-grid-react/cell-renderers/select-display-renderer.js.map +1 -0
  48. package/dist/components/ui/ag-grid-react/cell-renderers/split-cell-renderer.js +1 -0
  49. package/dist/components/ui/ag-grid-react/cell-renderers/split-cell-renderer.js.map +1 -0
  50. package/dist/components/ui/ag-grid-react/cell-renderers/status-badge-renderer.js +1 -0
  51. package/dist/components/ui/ag-grid-react/cell-renderers/status-badge-renderer.js.map +1 -0
  52. package/dist/components/ui/ag-grid-react/cell-renderers/switch-display-renderer.js +1 -0
  53. package/dist/components/ui/ag-grid-react/cell-renderers/switch-display-renderer.js.map +1 -0
  54. package/dist/components/ui/ag-grid-react/cell-renderers/textarea-display-renderer.js +1 -0
  55. package/dist/components/ui/ag-grid-react/cell-renderers/textarea-display-renderer.js.map +1 -0
  56. package/dist/components/ui/ag-grid-react/editable-utils.js +1 -0
  57. package/dist/components/ui/ag-grid-react/editable-utils.js.map +1 -0
  58. package/dist/components/ui/ag-grid-react/grid-api-event-subscription.d.ts +12 -0
  59. package/dist/components/ui/ag-grid-react/grid-api-event-subscription.js +23 -0
  60. package/dist/components/ui/ag-grid-react/grid-api-event-subscription.js.map +1 -0
  61. package/dist/components/ui/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.js +5 -4
  62. package/dist/components/ui/ag-grid-react/headers/advanced-filter/advanced-filter-dialog.js.map +1 -0
  63. package/dist/components/ui/ag-grid-react/headers/advanced-filter/column-filter-section.js +7 -6
  64. package/dist/components/ui/ag-grid-react/headers/advanced-filter/column-filter-section.js.map +1 -0
  65. package/dist/components/ui/ag-grid-react/headers/column-menu/column-settings-menu.js +44 -41
  66. package/dist/components/ui/ag-grid-react/headers/column-menu/column-settings-menu.js.map +1 -0
  67. package/dist/components/ui/ag-grid-react/headers/components/header-info.js +7 -6
  68. package/dist/components/ui/ag-grid-react/headers/components/header-info.js.map +1 -0
  69. package/dist/components/ui/ag-grid-react/headers/components/info-modal.js +1 -0
  70. package/dist/components/ui/ag-grid-react/headers/components/info-modal.js.map +1 -0
  71. package/dist/components/ui/ag-grid-react/headers/components/lazy-tooltip.js +1 -0
  72. package/dist/components/ui/ag-grid-react/headers/components/lazy-tooltip.js.map +1 -0
  73. package/dist/components/ui/ag-grid-react/headers/components/section-renderers.js +1 -0
  74. package/dist/components/ui/ag-grid-react/headers/components/section-renderers.js.map +1 -0
  75. package/dist/components/ui/ag-grid-react/headers/components/truncated-text.js +1 -0
  76. package/dist/components/ui/ag-grid-react/headers/components/truncated-text.js.map +1 -0
  77. package/dist/components/ui/ag-grid-react/headers/context/grid-header-context.js +1 -0
  78. package/dist/components/ui/ag-grid-react/headers/context/grid-header-context.js.map +1 -0
  79. package/dist/components/ui/ag-grid-react/headers/custom-header-group.js +16 -14
  80. package/dist/components/ui/ag-grid-react/headers/custom-header-group.js.map +1 -0
  81. package/dist/components/ui/ag-grid-react/headers/custom-header.js +126 -137
  82. package/dist/components/ui/ag-grid-react/headers/custom-header.js.map +1 -0
  83. package/dist/components/ui/ag-grid-react/headers/derive-header-search-state.d.ts +24 -0
  84. package/dist/components/ui/ag-grid-react/headers/derive-header-search-state.js +91 -0
  85. package/dist/components/ui/ag-grid-react/headers/derive-header-search-state.js.map +1 -0
  86. package/dist/components/ui/ag-grid-react/headers/header-search-input.d.ts +3 -2
  87. package/dist/components/ui/ag-grid-react/headers/header-search-input.js +392 -437
  88. package/dist/components/ui/ag-grid-react/headers/header-search-input.js.map +1 -0
  89. package/dist/components/ui/ag-grid-react/headers/utils/date-utils.js +1 -0
  90. package/dist/components/ui/ag-grid-react/headers/utils/date-utils.js.map +1 -0
  91. package/dist/components/ui/ag-grid-react/headers/utils/filter-utils.js +1 -0
  92. package/dist/components/ui/ag-grid-react/headers/utils/filter-utils.js.map +1 -0
  93. package/dist/components/ui/ag-grid-react/index.d.ts +2 -1
  94. package/dist/components/ui/ag-grid-react/index.js +207 -171
  95. package/dist/components/ui/ag-grid-react/index.js.map +1 -0
  96. package/dist/components/ui/ag-grid-react/theme.js +1 -0
  97. package/dist/components/ui/ag-grid-react/theme.js.map +1 -0
  98. package/dist/components/ui/ag-grid-react/value-formatters.js +1 -0
  99. package/dist/components/ui/ag-grid-react/value-formatters.js.map +1 -0
  100. package/dist/components/ui/alert-dialog.js +1 -0
  101. package/dist/components/ui/alert-dialog.js.map +1 -0
  102. package/dist/components/ui/alert.d.ts +1 -1
  103. package/dist/components/ui/alert.js +1 -0
  104. package/dist/components/ui/alert.js.map +1 -0
  105. package/dist/components/ui/avatar.d.ts +2 -2
  106. package/dist/components/ui/avatar.js +1 -0
  107. package/dist/components/ui/avatar.js.map +1 -0
  108. package/dist/components/ui/badge.d.ts +1 -1
  109. package/dist/components/ui/badge.js +1 -0
  110. package/dist/components/ui/badge.js.map +1 -0
  111. package/dist/components/ui/breadcrumb.js +2 -1
  112. package/dist/components/ui/breadcrumb.js.map +1 -0
  113. package/dist/components/ui/button-group.js +2 -1
  114. package/dist/components/ui/button-group.js.map +1 -0
  115. package/dist/components/ui/button-variants.js +1 -0
  116. package/dist/components/ui/button-variants.js.map +1 -0
  117. package/dist/components/ui/button.js +1 -0
  118. package/dist/components/ui/button.js.map +1 -0
  119. package/dist/components/ui/calendar.js +1 -0
  120. package/dist/components/ui/calendar.js.map +1 -0
  121. package/dist/components/ui/card.js +1 -0
  122. package/dist/components/ui/card.js.map +1 -0
  123. package/dist/components/ui/chart/chart.js +1 -0
  124. package/dist/components/ui/chart/chart.js.map +1 -0
  125. package/dist/components/ui/chart/chart.utils.js +1 -0
  126. package/dist/components/ui/chart/chart.utils.js.map +1 -0
  127. package/dist/components/ui/chart/index.js +1 -0
  128. package/dist/components/ui/chart/index.js.map +1 -0
  129. package/dist/components/ui/checkbox.js +1 -0
  130. package/dist/components/ui/checkbox.js.map +1 -0
  131. package/dist/components/ui/chips.js +5 -4
  132. package/dist/components/ui/chips.js.map +1 -0
  133. package/dist/components/ui/choice-card/choice-card.js +2 -1
  134. package/dist/components/ui/choice-card/choice-card.js.map +1 -0
  135. package/dist/components/ui/choice-card/index.js +1 -0
  136. package/dist/components/ui/choice-card/index.js.map +1 -0
  137. package/dist/components/ui/combobox.d.ts +1 -0
  138. package/dist/components/ui/combobox.js +118 -103
  139. package/dist/components/ui/combobox.js.map +1 -0
  140. package/dist/components/ui/command-palette/command-palette-context.js +1 -0
  141. package/dist/components/ui/command-palette/command-palette-context.js.map +1 -0
  142. package/dist/components/ui/command-palette/command-palette-layout.js +1 -0
  143. package/dist/components/ui/command-palette/command-palette-layout.js.map +1 -0
  144. package/dist/components/ui/command-palette/command-palette.js +1 -0
  145. package/dist/components/ui/command-palette/command-palette.js.map +1 -0
  146. package/dist/components/ui/command-palette/index.js +1 -0
  147. package/dist/components/ui/command-palette/index.js.map +1 -0
  148. package/dist/components/ui/command-palette/kbd.js +1 -0
  149. package/dist/components/ui/command-palette/kbd.js.map +1 -0
  150. package/dist/components/ui/command-palette/shortcut-overlay-context.js +1 -0
  151. package/dist/components/ui/command-palette/shortcut-overlay-context.js.map +1 -0
  152. package/dist/components/ui/command-palette/shortcut-overlay.js +1 -0
  153. package/dist/components/ui/command-palette/shortcut-overlay.js.map +1 -0
  154. package/dist/components/ui/command-palette/shortcut-registry.js +12 -10
  155. package/dist/components/ui/command-palette/shortcut-registry.js.map +1 -0
  156. package/dist/components/ui/command-palette/shortcut-scope-provider.js +1 -0
  157. package/dist/components/ui/command-palette/shortcut-scope-provider.js.map +1 -0
  158. package/dist/components/ui/command-palette/shortcut-settings.js +1 -0
  159. package/dist/components/ui/command-palette/shortcut-settings.js.map +1 -0
  160. package/dist/components/ui/command-palette/use-browser-shortcuts.js +1 -0
  161. package/dist/components/ui/command-palette/use-browser-shortcuts.js.map +1 -0
  162. package/dist/components/ui/command-palette/use-global-shortcut.js +1 -0
  163. package/dist/components/ui/command-palette/use-global-shortcut.js.map +1 -0
  164. package/dist/components/ui/command-palette/use-shortcut.js +1 -0
  165. package/dist/components/ui/command-palette/use-shortcut.js.map +1 -0
  166. package/dist/components/ui/command-palette/utils.d.ts +2 -0
  167. package/dist/components/ui/command-palette/utils.js +62 -53
  168. package/dist/components/ui/command-palette/utils.js.map +1 -0
  169. package/dist/components/ui/data-table/column-indicator.js +1 -0
  170. package/dist/components/ui/data-table/column-indicator.js.map +1 -0
  171. package/dist/components/ui/data-table/data-table-column-list.js +141 -134
  172. package/dist/components/ui/data-table/data-table-column-list.js.map +1 -0
  173. package/dist/components/ui/data-table/data-table-column-state.js +1 -0
  174. package/dist/components/ui/data-table/data-table-column-state.js.map +1 -0
  175. package/dist/components/ui/data-table/data-table-constants.js +1 -0
  176. package/dist/components/ui/data-table/data-table-constants.js.map +1 -0
  177. package/dist/components/ui/data-table/data-table-context.d.ts +3 -3
  178. package/dist/components/ui/data-table/data-table-context.js +4 -1
  179. package/dist/components/ui/data-table/data-table-context.js.map +1 -0
  180. package/dist/components/ui/data-table/data-table-format-options.js +1 -0
  181. package/dist/components/ui/data-table/data-table-format-options.js.map +1 -0
  182. package/dist/components/ui/data-table/data-table-saved-views.js +1 -0
  183. package/dist/components/ui/data-table/data-table-saved-views.js.map +1 -0
  184. package/dist/components/ui/data-table/data-table-sheet.js +1 -0
  185. package/dist/components/ui/data-table/data-table-sheet.js.map +1 -0
  186. package/dist/components/ui/data-table/data-table-view-menu.d.ts +1 -1
  187. package/dist/components/ui/data-table/data-table-view-menu.js +68 -61
  188. package/dist/components/ui/data-table/data-table-view-menu.js.map +1 -0
  189. package/dist/components/ui/data-table/data-table.d.ts +2 -2
  190. package/dist/components/ui/data-table/data-table.js +124 -110
  191. package/dist/components/ui/data-table/data-table.js.map +1 -0
  192. package/dist/components/ui/data-table/index.js +1 -0
  193. package/dist/components/ui/data-table/index.js.map +1 -0
  194. package/dist/components/ui/data-table/indicator-legend.js +1 -0
  195. package/dist/components/ui/data-table/indicator-legend.js.map +1 -0
  196. package/dist/components/ui/data-table/pin-switch.js +5 -4
  197. package/dist/components/ui/data-table/pin-switch.js.map +1 -0
  198. package/dist/components/ui/date-picker/date-picker.js +65 -62
  199. package/dist/components/ui/date-picker/date-picker.js.map +1 -0
  200. package/dist/components/ui/date-picker/date-range-picker.js +107 -103
  201. package/dist/components/ui/date-picker/date-range-picker.js.map +1 -0
  202. package/dist/components/ui/date-picker/index.js +1 -0
  203. package/dist/components/ui/date-picker/index.js.map +1 -0
  204. package/dist/components/ui/date-picker/month-picker.js +59 -56
  205. package/dist/components/ui/date-picker/month-picker.js.map +1 -0
  206. package/dist/components/ui/date-picker/month-range-picker.js +96 -92
  207. package/dist/components/ui/date-picker/month-range-picker.js.map +1 -0
  208. package/dist/components/ui/date-picker/multi-date-picker.js +37 -34
  209. package/dist/components/ui/date-picker/multi-date-picker.js.map +1 -0
  210. package/dist/components/ui/date-picker/multi-month-picker.js +15 -14
  211. package/dist/components/ui/date-picker/multi-month-picker.js.map +1 -0
  212. package/dist/components/ui/date-picker/multi-week-picker.js +16 -15
  213. package/dist/components/ui/date-picker/multi-week-picker.js.map +1 -0
  214. package/dist/components/ui/date-picker/week-picker.js +20 -19
  215. package/dist/components/ui/date-picker/week-picker.js.map +1 -0
  216. package/dist/components/ui/date-picker/week-range-picker.js +97 -93
  217. package/dist/components/ui/date-picker/week-range-picker.js.map +1 -0
  218. package/dist/components/ui/dialog.js +1 -0
  219. package/dist/components/ui/dialog.js.map +1 -0
  220. package/dist/components/ui/drawer.js +1 -0
  221. package/dist/components/ui/drawer.js.map +1 -0
  222. package/dist/components/ui/dropdown-menu.js +1 -0
  223. package/dist/components/ui/dropdown-menu.js.map +1 -0
  224. package/dist/components/ui/dynamic-layout.d.ts +1 -1
  225. package/dist/components/ui/dynamic-layout.js +1 -0
  226. package/dist/components/ui/dynamic-layout.js.map +1 -0
  227. package/dist/components/ui/empty-container.js +18 -12
  228. package/dist/components/ui/empty-container.js.map +1 -0
  229. package/dist/components/ui/expandable-sku/expandable-sku.js +11 -10
  230. package/dist/components/ui/expandable-sku/expandable-sku.js.map +1 -0
  231. package/dist/components/ui/expandable-sku/index.js +1 -0
  232. package/dist/components/ui/expandable-sku/index.js.map +1 -0
  233. package/dist/components/ui/file-upload.js +165 -138
  234. package/dist/components/ui/file-upload.js.map +1 -0
  235. package/dist/components/ui/filter-panel/filter-panel.js +77 -71
  236. package/dist/components/ui/filter-panel/filter-panel.js.map +1 -0
  237. package/dist/components/ui/filter-panel/index.js +1 -0
  238. package/dist/components/ui/filter-panel/index.js.map +1 -0
  239. package/dist/components/ui/filter-strip/filter-strip.js +1 -0
  240. package/dist/components/ui/filter-strip/filter-strip.js.map +1 -0
  241. package/dist/components/ui/filter-strip/filter-summary.js +1 -0
  242. package/dist/components/ui/filter-strip/filter-summary.js.map +1 -0
  243. package/dist/components/ui/filter-strip/filter-tag-list.d.ts +8 -1
  244. package/dist/components/ui/filter-strip/filter-tag-list.js +100 -85
  245. package/dist/components/ui/filter-strip/filter-tag-list.js.map +1 -0
  246. package/dist/components/ui/filter-strip/index.js +1 -0
  247. package/dist/components/ui/filter-strip/index.js.map +1 -0
  248. package/dist/components/ui/header.d.ts +1 -0
  249. package/dist/components/ui/header.js +31 -29
  250. package/dist/components/ui/header.js.map +1 -0
  251. package/dist/components/ui/horizontal-scroller/horizontal-scroller.js +13 -2
  252. package/dist/components/ui/horizontal-scroller/horizontal-scroller.js.map +1 -0
  253. package/dist/components/ui/horizontal-scroller/index.js +1 -0
  254. package/dist/components/ui/horizontal-scroller/index.js.map +1 -0
  255. package/dist/components/ui/hover-card.js +1 -0
  256. package/dist/components/ui/hover-card.js.map +1 -0
  257. package/dist/components/ui/input.js +2 -1
  258. package/dist/components/ui/input.js.map +1 -0
  259. package/dist/components/ui/label.js +1 -0
  260. package/dist/components/ui/label.js.map +1 -0
  261. package/dist/components/ui/loader.js +1 -0
  262. package/dist/components/ui/loader.js.map +1 -0
  263. package/dist/components/ui/nested-list/components/NestedListApplyDiscardButtons.js +1 -0
  264. package/dist/components/ui/nested-list/components/NestedListApplyDiscardButtons.js.map +1 -0
  265. package/dist/components/ui/nested-list/components/NestedListCategoryFilters.js +1 -0
  266. package/dist/components/ui/nested-list/components/NestedListCategoryFilters.js.map +1 -0
  267. package/dist/components/ui/nested-list/components/NestedListContent.js +2 -1
  268. package/dist/components/ui/nested-list/components/NestedListContent.js.map +1 -0
  269. package/dist/components/ui/nested-list/components/NestedListHeader.js +10 -8
  270. package/dist/components/ui/nested-list/components/NestedListHeader.js.map +1 -0
  271. package/dist/components/ui/nested-list/components/SortableItem.js +10 -8
  272. package/dist/components/ui/nested-list/components/SortableItem.js.map +1 -0
  273. package/dist/components/ui/nested-list/hooks/useNestedListDragDrop.js +1 -0
  274. package/dist/components/ui/nested-list/hooks/useNestedListDragDrop.js.map +1 -0
  275. package/dist/components/ui/nested-list/hooks/useNestedListHandlers.js +1 -0
  276. package/dist/components/ui/nested-list/hooks/useNestedListHandlers.js.map +1 -0
  277. package/dist/components/ui/nested-list/hooks/useNestedListSelectAll.js +1 -0
  278. package/dist/components/ui/nested-list/hooks/useNestedListSelectAll.js.map +1 -0
  279. package/dist/components/ui/nested-list/hooks/useNestedListState.js +1 -0
  280. package/dist/components/ui/nested-list/hooks/useNestedListState.js.map +1 -0
  281. package/dist/components/ui/nested-list/index.js +1 -0
  282. package/dist/components/ui/nested-list/index.js.map +1 -0
  283. package/dist/components/ui/nested-list/nested-list.js +1 -0
  284. package/dist/components/ui/nested-list/nested-list.js.map +1 -0
  285. package/dist/components/ui/notification-panel/index.js +1 -0
  286. package/dist/components/ui/notification-panel/index.js.map +1 -0
  287. package/dist/components/ui/notification-panel/notification-item.js +1 -0
  288. package/dist/components/ui/notification-panel/notification-item.js.map +1 -0
  289. package/dist/components/ui/notification-panel/notification-list.js +5 -4
  290. package/dist/components/ui/notification-panel/notification-list.js.map +1 -0
  291. package/dist/components/ui/notification-panel/notification-panel.js +1 -0
  292. package/dist/components/ui/notification-panel/notification-panel.js.map +1 -0
  293. package/dist/components/ui/popover.js +1 -0
  294. package/dist/components/ui/popover.js.map +1 -0
  295. package/dist/components/ui/portal.js +1 -0
  296. package/dist/components/ui/portal.js.map +1 -0
  297. package/dist/components/ui/progress.js +1 -0
  298. package/dist/components/ui/progress.js.map +1 -0
  299. package/dist/components/ui/prompt.d.ts +1 -1
  300. package/dist/components/ui/prompt.js +31 -27
  301. package/dist/components/ui/prompt.js.map +1 -0
  302. package/dist/components/ui/radio-group.js +2 -1
  303. package/dist/components/ui/radio-group.js.map +1 -0
  304. package/dist/components/ui/select/components/LabelWithSequence.js +1 -0
  305. package/dist/components/ui/select/components/LabelWithSequence.js.map +1 -0
  306. package/dist/components/ui/select/components/Submenu.js +21 -18
  307. package/dist/components/ui/select/components/Submenu.js.map +1 -0
  308. package/dist/components/ui/select/hooks/useFlattenOptions.js +1 -0
  309. package/dist/components/ui/select/hooks/useFlattenOptions.js.map +1 -0
  310. package/dist/components/ui/select/hooks/useSelectionModel.js +1 -0
  311. package/dist/components/ui/select/hooks/useSelectionModel.js.map +1 -0
  312. package/dist/components/ui/select/hooks/useVisibleStats.js +1 -0
  313. package/dist/components/ui/select/hooks/useVisibleStats.js.map +1 -0
  314. package/dist/components/ui/select/index.js +1 -0
  315. package/dist/components/ui/select/index.js.map +1 -0
  316. package/dist/components/ui/select/select.js +80 -75
  317. package/dist/components/ui/select/select.js.map +1 -0
  318. package/dist/components/ui/select/utils/select.js +1 -0
  319. package/dist/components/ui/select/utils/select.js.map +1 -0
  320. package/dist/components/ui/select/workers/flatten.worker.js +1 -0
  321. package/dist/components/ui/select/workers/flatten.worker.js.map +1 -0
  322. package/dist/components/ui/separator.js +1 -0
  323. package/dist/components/ui/separator.js.map +1 -0
  324. package/dist/components/ui/sheet.js +1 -0
  325. package/dist/components/ui/sheet.js.map +1 -0
  326. package/dist/components/ui/sidebar.js +16 -13
  327. package/dist/components/ui/sidebar.js.map +1 -0
  328. package/dist/components/ui/skeleton.js +1 -0
  329. package/dist/components/ui/skeleton.js.map +1 -0
  330. package/dist/components/ui/slider.js +1 -0
  331. package/dist/components/ui/slider.js.map +1 -0
  332. package/dist/components/ui/smart-input.js +1 -0
  333. package/dist/components/ui/smart-input.js.map +1 -0
  334. package/dist/components/ui/statistics-card.hooks.js +1 -0
  335. package/dist/components/ui/statistics-card.hooks.js.map +1 -0
  336. package/dist/components/ui/statistics-card.js +7 -6
  337. package/dist/components/ui/statistics-card.js.map +1 -0
  338. package/dist/components/ui/stepper.js +1 -0
  339. package/dist/components/ui/stepper.js.map +1 -0
  340. package/dist/components/ui/stories/ag-grid-cell-components.d.ts +65 -0
  341. package/dist/components/ui/switch.js +1 -0
  342. package/dist/components/ui/switch.js.map +1 -0
  343. package/dist/components/ui/tabs.js +1 -0
  344. package/dist/components/ui/tabs.js.map +1 -0
  345. package/dist/components/ui/tag-group.js +1 -0
  346. package/dist/components/ui/tag-group.js.map +1 -0
  347. package/dist/components/ui/tag.d.ts +1 -1
  348. package/dist/components/ui/tag.js +1 -0
  349. package/dist/components/ui/tag.js.map +1 -0
  350. package/dist/components/ui/textarea.js +2 -1
  351. package/dist/components/ui/textarea.js.map +1 -0
  352. package/dist/components/ui/toast.js +1 -0
  353. package/dist/components/ui/toast.js.map +1 -0
  354. package/dist/components/ui/toaster.js +1 -0
  355. package/dist/components/ui/toaster.js.map +1 -0
  356. package/dist/components/ui/tooltip.js +1 -0
  357. package/dist/components/ui/tooltip.js.map +1 -0
  358. package/dist/components/ui/types/file-upload.types.d.ts +2 -0
  359. package/dist/components/ui/types/horizontal-scroller.types.d.ts +1 -5
  360. package/dist/components/ui/types/nested-list.types.js +1 -0
  361. package/dist/components/ui/types/nested-list.types.js.map +1 -0
  362. package/dist/components/ui/wizard/index.js +1 -0
  363. package/dist/components/ui/wizard/index.js.map +1 -0
  364. package/dist/components/ui/wizard/wizard.js +1 -0
  365. package/dist/components/ui/wizard/wizard.js.map +1 -0
  366. package/dist/hooks/use-toast.js +1 -0
  367. package/dist/hooks/use-toast.js.map +1 -0
  368. package/dist/i18n/ImpactNovaI18nContext.js +1 -0
  369. package/dist/i18n/ImpactNovaI18nContext.js.map +1 -0
  370. package/dist/i18n/defaultMessages.js +1 -0
  371. package/dist/i18n/defaultMessages.js.map +1 -0
  372. package/dist/i18n/getDateFnsLocale.js +1 -0
  373. package/dist/i18n/getDateFnsLocale.js.map +1 -0
  374. package/dist/i18n/locales/de.js +1 -0
  375. package/dist/i18n/locales/de.js.map +1 -0
  376. package/dist/i18n/locales/es.js +1 -0
  377. package/dist/i18n/locales/es.js.map +1 -0
  378. package/dist/i18n/locales/hi.js +1 -0
  379. package/dist/i18n/locales/hi.js.map +1 -0
  380. package/dist/i18n/locales/kn.js +1 -0
  381. package/dist/i18n/locales/kn.js.map +1 -0
  382. package/dist/icons/assets/DraftNote-D0fQ_guB.svg +17 -0
  383. package/dist/icons/assets/DraftNote.svg.js +1 -0
  384. package/dist/icons/assets/DraftNote.svg.js.map +1 -0
  385. package/dist/icons/assets/DraftNote.svg2.js +5 -0
  386. package/dist/icons/assets/DraftNote.svg2.js.map +1 -0
  387. package/dist/icons/assets/IA-C72mQSGn.svg +18 -0
  388. package/dist/icons/assets/{ia-logo.svg.js → IA.svg.js} +1 -0
  389. package/dist/icons/assets/IA.svg.js.map +1 -0
  390. package/dist/icons/assets/IA.svg2.js +5 -0
  391. package/dist/icons/assets/IA.svg2.js.map +1 -0
  392. package/dist/icons/assets/alan-W0j0LBjP.svg +10 -0
  393. package/dist/icons/assets/alan.svg.js +1 -0
  394. package/dist/icons/assets/alan.svg.js.map +1 -0
  395. package/dist/icons/assets/alan.svg2.js +5 -0
  396. package/dist/icons/assets/alan.svg2.js.map +1 -0
  397. package/dist/icons/assets/alerts-B-bvKI59.svg +4 -0
  398. package/dist/icons/assets/alerts.svg.js +1 -0
  399. package/dist/icons/assets/alerts.svg.js.map +1 -0
  400. package/dist/icons/assets/alerts.svg2.js +5 -0
  401. package/dist/icons/assets/alerts.svg2.js.map +1 -0
  402. package/dist/icons/assets/analyticalSearch-C2kmqQyE.svg +4 -0
  403. package/dist/icons/assets/analyticalSearch.svg.js +1 -0
  404. package/dist/icons/assets/analyticalSearch.svg.js.map +1 -0
  405. package/dist/icons/assets/analyticalSearch.svg2.js +5 -0
  406. package/dist/icons/assets/analyticalSearch.svg2.js.map +1 -0
  407. package/dist/icons/assets/archive-himpw0Vy.svg +8 -0
  408. package/dist/icons/assets/archive.svg.js +1 -0
  409. package/dist/icons/assets/archive.svg.js.map +1 -0
  410. package/dist/icons/assets/archive.svg2.js +5 -0
  411. package/dist/icons/assets/archive.svg2.js.map +1 -0
  412. package/dist/icons/assets/back-Dfp8uDmu.svg +3 -0
  413. package/dist/icons/assets/back.svg.js +1 -0
  414. package/dist/icons/assets/back.svg.js.map +1 -0
  415. package/dist/icons/assets/back.svg2.js +5 -0
  416. package/dist/icons/assets/back.svg2.js.map +1 -0
  417. package/dist/icons/assets/backdrop-BBjF7xuS.svg +24 -0
  418. package/dist/icons/assets/backdrop.svg.js +1 -0
  419. package/dist/icons/assets/backdrop.svg.js.map +1 -0
  420. package/dist/icons/assets/backdrop.svg2.js +3 -2
  421. package/dist/icons/assets/backdrop.svg2.js.map +1 -0
  422. package/dist/icons/assets/bell-B-nNN_ST.svg +4 -0
  423. package/dist/icons/assets/bell.svg.js +1 -0
  424. package/dist/icons/assets/bell.svg.js.map +1 -0
  425. package/dist/icons/assets/bell.svg2.js +5 -0
  426. package/dist/icons/assets/bell.svg2.js.map +1 -0
  427. package/dist/icons/assets/bill-or-receipt-ChCWs7Uq.webp +0 -0
  428. package/dist/icons/assets/bin-CfaKosjT.svg +3 -0
  429. package/dist/icons/assets/bin.svg.js +1 -0
  430. package/dist/icons/assets/bin.svg.js.map +1 -0
  431. package/dist/icons/assets/bin.svg2.js +5 -0
  432. package/dist/icons/assets/bin.svg2.js.map +1 -0
  433. package/dist/icons/assets/blocks--rVdsdMm.svg +3 -0
  434. package/dist/icons/assets/blocks.svg.js +1 -0
  435. package/dist/icons/assets/blocks.svg.js.map +1 -0
  436. package/dist/icons/assets/blocks.svg2.js +5 -0
  437. package/dist/icons/assets/blocks.svg2.js.map +1 -0
  438. package/dist/icons/assets/bookmark-CHoqy4S6.svg +3 -0
  439. package/dist/icons/assets/bookmark.svg.js +1 -0
  440. package/dist/icons/assets/bookmark.svg.js.map +1 -0
  441. package/dist/icons/assets/bookmark.svg2.js +5 -0
  442. package/dist/icons/assets/bookmark.svg2.js.map +1 -0
  443. package/dist/icons/assets/bookmarkFilled-CWjbipv2.svg +3 -0
  444. package/dist/icons/assets/bookmarkFilled.svg.js +1 -0
  445. package/dist/icons/assets/bookmarkFilled.svg.js.map +1 -0
  446. package/dist/icons/assets/bookmarkFilled.svg2.js +5 -0
  447. package/dist/icons/assets/bookmarkFilled.svg2.js.map +1 -0
  448. package/dist/icons/assets/box-uGwhOHZZ.svg +3 -0
  449. package/dist/icons/assets/box.svg.js +1 -0
  450. package/dist/icons/assets/box.svg.js.map +1 -0
  451. package/dist/icons/assets/box.svg2.js +5 -0
  452. package/dist/icons/assets/box.svg2.js.map +1 -0
  453. package/dist/icons/assets/boxAdd-rXsNn6zR.svg +3 -0
  454. package/dist/icons/assets/boxAdd.svg.js +1 -0
  455. package/dist/icons/assets/boxAdd.svg.js.map +1 -0
  456. package/dist/icons/assets/boxAdd.svg2.js +5 -0
  457. package/dist/icons/assets/boxAdd.svg2.js.map +1 -0
  458. package/dist/icons/assets/boxed-C-R9NKKx.svg +3 -0
  459. package/dist/icons/assets/boxed.svg.js +1 -0
  460. package/dist/icons/assets/boxed.svg.js.map +1 -0
  461. package/dist/icons/assets/boxed.svg2.js +5 -0
  462. package/dist/icons/assets/boxed.svg2.js.map +1 -0
  463. package/dist/icons/assets/bulk-edit-Bb2oxy8y.svg +3 -0
  464. package/dist/icons/assets/bulk-edit.svg.js +1 -0
  465. package/dist/icons/assets/bulk-edit.svg.js.map +1 -0
  466. package/dist/icons/assets/bulk-edit.svg2.js +5 -0
  467. package/dist/icons/assets/bulk-edit.svg2.js.map +1 -0
  468. package/dist/icons/assets/calendar-D4f5dimS.svg +3 -0
  469. package/dist/icons/assets/calendar-month-BzXZjgz9.svg +3 -0
  470. package/dist/icons/assets/{calender-month.svg.js → calendar-month.svg.js} +3 -2
  471. package/dist/icons/assets/calendar-month.svg.js.map +1 -0
  472. package/dist/icons/assets/calendar-month.svg2.js +5 -0
  473. package/dist/icons/assets/calendar-month.svg2.js.map +1 -0
  474. package/dist/icons/assets/{calender.svg.js → calendar.svg.js} +1 -0
  475. package/dist/icons/assets/calendar.svg.js.map +1 -0
  476. package/dist/icons/assets/calendar.svg2.js +5 -0
  477. package/dist/icons/assets/calendar.svg2.js.map +1 -0
  478. package/dist/icons/assets/cash-bundle-BC7VtNKx.webp +0 -0
  479. package/dist/icons/assets/chart-B0-D8Z1k.svg +3 -0
  480. package/dist/icons/assets/chart.svg.js +1 -0
  481. package/dist/icons/assets/chart.svg.js.map +1 -0
  482. package/dist/icons/assets/chart.svg2.js +5 -0
  483. package/dist/icons/assets/chart.svg2.js.map +1 -0
  484. package/dist/icons/assets/checklist-with-pen-wi6deSlS.webp +0 -0
  485. package/dist/icons/assets/checkmark-C1DSsumY.svg +4 -0
  486. package/dist/icons/assets/checkmark-success-BsMrYlTu.webp +0 -0
  487. package/dist/icons/assets/checkmark.svg.js +1 -0
  488. package/dist/icons/assets/checkmark.svg.js.map +1 -0
  489. package/dist/icons/assets/checkmark.svg2.js +5 -0
  490. package/dist/icons/assets/checkmark.svg2.js.map +1 -0
  491. package/dist/icons/assets/chevronRight-B6P8AK2d.svg +4 -0
  492. package/dist/icons/assets/chevronRight.svg.js +1 -0
  493. package/dist/icons/assets/chevronRight.svg.js.map +1 -0
  494. package/dist/icons/assets/chevronRight.svg2.js +5 -0
  495. package/dist/icons/assets/chevronRight.svg2.js.map +1 -0
  496. package/dist/icons/assets/circleCross-BdIYyHn4.svg +3 -0
  497. package/dist/icons/assets/circleCross.svg.js +1 -0
  498. package/dist/icons/assets/circleCross.svg.js.map +1 -0
  499. package/dist/icons/assets/circleCross.svg2.js +5 -0
  500. package/dist/icons/assets/circleCross.svg2.js.map +1 -0
  501. package/dist/icons/assets/circleDoubleTick-ZBBQYZXx.svg +6 -0
  502. package/dist/icons/assets/circleDoubleTick.svg.js +1 -0
  503. package/dist/icons/assets/circleDoubleTick.svg.js.map +1 -0
  504. package/dist/icons/assets/circleDoubleTick.svg2.js +5 -0
  505. package/dist/icons/assets/circleDoubleTick.svg2.js.map +1 -0
  506. package/dist/icons/assets/circleTick-Ta0T3o7I.svg +3 -0
  507. package/dist/icons/assets/circleTick.svg.js +1 -0
  508. package/dist/icons/assets/circleTick.svg.js.map +1 -0
  509. package/dist/icons/assets/circleTick.svg2.js +5 -0
  510. package/dist/icons/assets/circleTick.svg2.js.map +1 -0
  511. package/dist/icons/assets/click-me-arrow-BiPelmSN.webp +0 -0
  512. package/dist/icons/assets/clock-BTkSaVIV.svg +3 -0
  513. package/dist/icons/assets/clock.svg.js +1 -0
  514. package/dist/icons/assets/clock.svg.js.map +1 -0
  515. package/dist/icons/assets/clock.svg2.js +5 -0
  516. package/dist/icons/assets/clock.svg2.js.map +1 -0
  517. package/dist/icons/assets/collapse-DMIIunRb.svg +3 -0
  518. package/dist/icons/assets/collapse.svg.js +1 -0
  519. package/dist/icons/assets/collapse.svg.js.map +1 -0
  520. package/dist/icons/assets/collapse.svg2.js +5 -0
  521. package/dist/icons/assets/collapse.svg2.js.map +1 -0
  522. package/dist/icons/assets/column-C0cVvCYF.svg +8 -0
  523. package/dist/icons/assets/column.svg.js +1 -0
  524. package/dist/icons/assets/column.svg.js.map +1 -0
  525. package/dist/icons/assets/column.svg2.js +5 -0
  526. package/dist/icons/assets/column.svg2.js.map +1 -0
  527. package/dist/icons/assets/command-pallet-CPkUetfE.svg +1 -0
  528. package/dist/icons/assets/command-pallet.svg.js +1 -0
  529. package/dist/icons/assets/command-pallet.svg.js.map +1 -0
  530. package/dist/icons/assets/command-pallet.svg2.js +5 -0
  531. package/dist/icons/assets/command-pallet.svg2.js.map +1 -0
  532. package/dist/icons/assets/copy-B1kRlEKC.svg +3 -0
  533. package/dist/icons/assets/copy.svg.js +1 -0
  534. package/dist/icons/assets/copy.svg.js.map +1 -0
  535. package/dist/icons/assets/copy.svg2.js +5 -0
  536. package/dist/icons/assets/copy.svg2.js.map +1 -0
  537. package/dist/icons/assets/createFlowImage-DQ7di4lG.svg +20 -0
  538. package/dist/icons/assets/createFlowImage.svg.js +1 -0
  539. package/dist/icons/assets/createFlowImage.svg.js.map +1 -0
  540. package/dist/icons/assets/createFlowImage.svg2.js +5 -0
  541. package/dist/icons/assets/createFlowImage.svg2.js.map +1 -0
  542. package/dist/icons/assets/createNewDocument-Bsj8kpyp.svg +3 -0
  543. package/dist/icons/assets/createNewDocument.svg.js +1 -0
  544. package/dist/icons/assets/createNewDocument.svg.js.map +1 -0
  545. package/dist/icons/assets/createNewDocument.svg2.js +5 -0
  546. package/dist/icons/assets/createNewDocument.svg2.js.map +1 -0
  547. package/dist/icons/assets/cross-DUSHDDuW.svg +1 -0
  548. package/dist/icons/assets/cross.svg.js +1 -0
  549. package/dist/icons/assets/cross.svg.js.map +1 -0
  550. package/dist/icons/assets/cross.svg2.js +5 -0
  551. package/dist/icons/assets/cross.svg2.js.map +1 -0
  552. package/dist/icons/assets/csv-X71vigBW.webp +0 -0
  553. package/dist/icons/assets/delete-3d-B33CgwPj.webp +0 -0
  554. package/dist/icons/assets/delete-BVT-zS1u.svg +4 -0
  555. package/dist/icons/assets/delete.svg.js +1 -0
  556. package/dist/icons/assets/delete.svg.js.map +1 -0
  557. package/dist/icons/assets/delete.svg2.js +5 -0
  558. package/dist/icons/assets/delete.svg2.js.map +1 -0
  559. package/dist/icons/assets/density-Cj8xhR9e.svg +10 -0
  560. package/dist/icons/assets/density.svg.js +1 -0
  561. package/dist/icons/assets/density.svg.js.map +1 -0
  562. package/dist/icons/assets/density.svg2.js +5 -0
  563. package/dist/icons/assets/density.svg2.js.map +1 -0
  564. package/dist/icons/assets/document-CpkvKmhs.svg +4 -0
  565. package/dist/icons/assets/document.svg.js +1 -0
  566. package/dist/icons/assets/document.svg.js.map +1 -0
  567. package/dist/icons/assets/document.svg2.js +5 -0
  568. package/dist/icons/assets/document.svg2.js.map +1 -0
  569. package/dist/icons/assets/dollar-QKP3frNZ.webp +0 -0
  570. package/dist/icons/assets/download-JZ_5rm5_.svg +5 -0
  571. package/dist/icons/assets/download.svg.js +1 -0
  572. package/dist/icons/assets/download.svg.js.map +1 -0
  573. package/dist/icons/assets/download.svg2.js +5 -0
  574. package/dist/icons/assets/download.svg2.js.map +1 -0
  575. package/dist/icons/assets/drag-CHc75fEc.svg +3 -0
  576. package/dist/icons/assets/drag.svg.js +1 -0
  577. package/dist/icons/assets/drag.svg.js.map +1 -0
  578. package/dist/icons/assets/drag.svg2.js +5 -0
  579. package/dist/icons/assets/drag.svg2.js.map +1 -0
  580. package/dist/icons/assets/draw-DR7ks-zO.svg +4 -0
  581. package/dist/icons/assets/draw.svg.js +1 -0
  582. package/dist/icons/assets/draw.svg.js.map +1 -0
  583. package/dist/icons/assets/draw.svg2.js +5 -0
  584. package/dist/icons/assets/draw.svg2.js.map +1 -0
  585. package/dist/icons/assets/drawBrush-DVJeRiev.svg +3 -0
  586. package/dist/icons/assets/drawBrush.svg.js +1 -0
  587. package/dist/icons/assets/drawBrush.svg.js.map +1 -0
  588. package/dist/icons/assets/drawBrush.svg2.js +5 -0
  589. package/dist/icons/assets/drawBrush.svg2.js.map +1 -0
  590. package/dist/icons/assets/email-C6n9Wbmv.svg +3 -0
  591. package/dist/icons/assets/email.svg.js +1 -0
  592. package/dist/icons/assets/email.svg.js.map +1 -0
  593. package/dist/icons/assets/email.svg2.js +5 -0
  594. package/dist/icons/assets/email.svg2.js.map +1 -0
  595. package/dist/icons/assets/empty-state-1-Bqh-20pq.webp +0 -0
  596. package/dist/icons/assets/empty-state-2-DPMRkOBw.webp +0 -0
  597. package/dist/icons/assets/empty-state-3-BqSOh0-t.webp +0 -0
  598. package/dist/icons/assets/empty-state-4-CjN-c01q.webp +0 -0
  599. package/dist/icons/assets/empty-state-5-D4RMA1H1.webp +0 -0
  600. package/dist/icons/assets/empty-state-6-Dlnf1-2W.webp +0 -0
  601. package/dist/icons/assets/errorCircle-Bh07GXjX.svg +4 -0
  602. package/dist/icons/assets/errorCircle.svg.js +1 -0
  603. package/dist/icons/assets/errorCircle.svg.js.map +1 -0
  604. package/dist/icons/assets/errorCircle.svg2.js +5 -0
  605. package/dist/icons/assets/errorCircle.svg2.js.map +1 -0
  606. package/dist/icons/assets/euro-M8pmOKFY.webp +0 -0
  607. package/dist/icons/assets/excel-C277Cjjx.webp +0 -0
  608. package/dist/icons/assets/expand-CyaRrP0x.svg +3 -0
  609. package/dist/icons/assets/expand.svg.js +1 -0
  610. package/dist/icons/assets/expand.svg.js.map +1 -0
  611. package/dist/icons/assets/expand.svg2.js +5 -0
  612. package/dist/icons/assets/expand.svg2.js.map +1 -0
  613. package/dist/icons/assets/eye-DBWp0MY_.svg +3 -0
  614. package/dist/icons/assets/eye.svg.js +1 -0
  615. package/dist/icons/assets/eye.svg.js.map +1 -0
  616. package/dist/icons/assets/eye.svg2.js +5 -0
  617. package/dist/icons/assets/eye.svg2.js.map +1 -0
  618. package/dist/icons/assets/eyeOff-CZd5UEtT.svg +3 -0
  619. package/dist/icons/assets/eyeOff.svg.js +1 -0
  620. package/dist/icons/assets/eyeOff.svg.js.map +1 -0
  621. package/dist/icons/assets/eyeOff.svg2.js +5 -0
  622. package/dist/icons/assets/eyeOff.svg2.js.map +1 -0
  623. package/dist/icons/assets/file-upload-CPUhBsql.webp +0 -0
  624. package/dist/icons/assets/filter-Cwuo0mLs.svg +3 -0
  625. package/dist/icons/assets/filter.svg.js +1 -0
  626. package/dist/icons/assets/filter.svg.js.map +1 -0
  627. package/dist/icons/assets/filter.svg2.js +5 -0
  628. package/dist/icons/assets/filter.svg2.js.map +1 -0
  629. package/dist/icons/assets/fiveSideStar-BqfJ9-HN.svg +3 -0
  630. package/dist/icons/assets/fiveSideStar.svg.js +1 -0
  631. package/dist/icons/assets/fiveSideStar.svg.js.map +1 -0
  632. package/dist/icons/assets/fiveSideStar.svg2.js +5 -0
  633. package/dist/icons/assets/fiveSideStar.svg2.js.map +1 -0
  634. package/dist/icons/assets/flag-DYNXfckH.svg +3 -0
  635. package/dist/icons/assets/flag.svg.js +1 -0
  636. package/dist/icons/assets/flag.svg.js.map +1 -0
  637. package/dist/icons/assets/flag.svg2.js +5 -0
  638. package/dist/icons/assets/flag.svg2.js.map +1 -0
  639. package/dist/icons/assets/floppy-DZj38mTi.svg +3 -0
  640. package/dist/icons/assets/floppy.svg.js +1 -0
  641. package/dist/icons/assets/floppy.svg.js.map +1 -0
  642. package/dist/icons/assets/floppy.svg2.js +5 -0
  643. package/dist/icons/assets/floppy.svg2.js.map +1 -0
  644. package/dist/icons/assets/font-tm1MCLzx.svg +8 -0
  645. package/dist/icons/assets/font.svg.js +1 -0
  646. package/dist/icons/assets/font.svg.js.map +1 -0
  647. package/dist/icons/assets/font.svg2.js +5 -0
  648. package/dist/icons/assets/font.svg2.js.map +1 -0
  649. package/dist/icons/assets/funnel-hide-hpXljvyc.svg +3 -0
  650. package/dist/icons/assets/funnel-hide.svg.js +1 -0
  651. package/dist/icons/assets/funnel-hide.svg.js.map +1 -0
  652. package/dist/icons/assets/funnel-hide.svg2.js +5 -0
  653. package/dist/icons/assets/funnel-hide.svg2.js.map +1 -0
  654. package/dist/icons/assets/funnel-show-CuvPsCop.svg +3 -0
  655. package/dist/icons/assets/funnel-show.svg.js +1 -0
  656. package/dist/icons/assets/funnel-show.svg.js.map +1 -0
  657. package/dist/icons/assets/funnel-show.svg2.js +5 -0
  658. package/dist/icons/assets/funnel-show.svg2.js.map +1 -0
  659. package/dist/icons/assets/globe-Bbg_Mwct.svg +3 -0
  660. package/dist/icons/assets/globe.svg.js +1 -0
  661. package/dist/icons/assets/globe.svg.js.map +1 -0
  662. package/dist/icons/assets/globe.svg2.js +5 -0
  663. package/dist/icons/assets/globe.svg2.js.map +1 -0
  664. package/dist/icons/assets/hamburger-closed-9t8FA-dX.svg +15 -0
  665. package/dist/icons/assets/hamburger-closed.svg.js +1 -0
  666. package/dist/icons/assets/hamburger-closed.svg.js.map +1 -0
  667. package/dist/icons/assets/hamburger-closed.svg2.js +5 -0
  668. package/dist/icons/assets/hamburger-closed.svg2.js.map +1 -0
  669. package/dist/icons/assets/hamburger-open-DUGCMkEW.svg +14 -0
  670. package/dist/icons/assets/hamburger-open.svg.js +1 -0
  671. package/dist/icons/assets/hamburger-open.svg.js.map +1 -0
  672. package/dist/icons/assets/hamburger-open.svg2.js +5 -0
  673. package/dist/icons/assets/hamburger-open.svg2.js.map +1 -0
  674. package/dist/icons/assets/help-DJ4fhYR7.svg +5 -0
  675. package/dist/icons/assets/{help-icon.svg.js → help.svg.js} +3 -2
  676. package/dist/icons/assets/help.svg.js.map +1 -0
  677. package/dist/icons/assets/help.svg2.js +5 -0
  678. package/dist/icons/assets/help.svg2.js.map +1 -0
  679. package/dist/icons/assets/illustrationIcon1-CNDvIT_f.svg +13 -0
  680. package/dist/icons/assets/{illustration_1.svg.js → illustrationIcon1.svg.js} +1 -0
  681. package/dist/icons/assets/illustrationIcon1.svg.js.map +1 -0
  682. package/dist/icons/assets/illustrationIcon1.svg2.js +5 -0
  683. package/dist/icons/assets/illustrationIcon1.svg2.js.map +1 -0
  684. package/dist/icons/assets/info-3d-BDJlQM5i.webp +0 -0
  685. package/dist/icons/assets/info-DCClRutu.svg +13 -0
  686. package/dist/icons/assets/info-badge-kEvZ9Dxc.svg +5 -0
  687. package/dist/icons/assets/info-badge.svg.js +1 -0
  688. package/dist/icons/assets/info-badge.svg.js.map +1 -0
  689. package/dist/icons/assets/info-badge.svg2.js +5 -0
  690. package/dist/icons/assets/info-badge.svg2.js.map +1 -0
  691. package/dist/icons/assets/{info-icon.svg.js → info.svg.js} +1 -0
  692. package/dist/icons/assets/info.svg.js.map +1 -0
  693. package/dist/icons/assets/info.svg2.js +5 -0
  694. package/dist/icons/assets/info.svg2.js.map +1 -0
  695. package/dist/icons/assets/infoCircleFilled-BH5r234z.svg +4 -0
  696. package/dist/icons/assets/infoCircleFilled.svg.js +1 -0
  697. package/dist/icons/assets/infoCircleFilled.svg.js.map +1 -0
  698. package/dist/icons/assets/infoCircleFilled.svg2.js +5 -0
  699. package/dist/icons/assets/infoCircleFilled.svg2.js.map +1 -0
  700. package/dist/icons/assets/inventory-adjustment-8l5_Kf3I.webp +0 -0
  701. package/dist/icons/assets/layer-BM6KzrSw.svg +8 -0
  702. package/dist/icons/assets/{layers.svg.js → layer.svg.js} +1 -0
  703. package/dist/icons/assets/layer.svg.js.map +1 -0
  704. package/dist/icons/assets/layer.svg2.js +5 -0
  705. package/dist/icons/assets/layer.svg2.js.map +1 -0
  706. package/dist/icons/assets/loadingSimulationVideo-Dhg8X9Ae.mp4 +0 -0
  707. package/dist/icons/assets/loadingSpinner-Bnst4mYc.svg +5 -0
  708. package/dist/icons/assets/loadingSpinner.svg.js +1 -0
  709. package/dist/icons/assets/loadingSpinner.svg.js.map +1 -0
  710. package/dist/icons/assets/loadingSpinner.svg2.js +5 -0
  711. package/dist/icons/assets/loadingSpinner.svg2.js.map +1 -0
  712. package/dist/icons/assets/locked-C_W5JyZ6.svg +3 -0
  713. package/dist/icons/assets/locked.svg.js +1 -0
  714. package/dist/icons/assets/locked.svg.js.map +1 -0
  715. package/dist/icons/assets/locked.svg2.js +5 -0
  716. package/dist/icons/assets/locked.svg2.js.map +1 -0
  717. package/dist/icons/assets/loginArrow-ByrSqlta.svg +4 -0
  718. package/dist/icons/assets/loginArrow.svg.js +1 -0
  719. package/dist/icons/assets/loginArrow.svg.js.map +1 -0
  720. package/dist/icons/assets/loginArrow.svg2.js +5 -0
  721. package/dist/icons/assets/loginArrow.svg2.js.map +1 -0
  722. package/dist/icons/assets/matchWith-DHRvZ3Lf.svg +3 -0
  723. package/dist/icons/assets/matchWith.svg.js +1 -0
  724. package/dist/icons/assets/matchWith.svg.js.map +1 -0
  725. package/dist/icons/assets/matchWith.svg2.js +5 -0
  726. package/dist/icons/assets/matchWith.svg2.js.map +1 -0
  727. package/dist/icons/assets/message-DW1NPI2J.svg +3 -0
  728. package/dist/icons/assets/{message-icon.svg.js → message.svg.js} +1 -0
  729. package/dist/icons/assets/message.svg.js.map +1 -0
  730. package/dist/icons/assets/message.svg2.js +5 -0
  731. package/dist/icons/assets/message.svg2.js.map +1 -0
  732. package/dist/icons/assets/more-Die2g3ci.svg +3 -0
  733. package/dist/icons/assets/more.svg.js +1 -0
  734. package/dist/icons/assets/more.svg.js.map +1 -0
  735. package/dist/icons/assets/more.svg2.js +5 -0
  736. package/dist/icons/assets/more.svg2.js.map +1 -0
  737. package/dist/icons/assets/multi-color-filter-BlW9O5hy.svg +6 -0
  738. package/dist/icons/assets/multi-color-filter.svg.js +1 -0
  739. package/dist/icons/assets/multi-color-filter.svg.js.map +1 -0
  740. package/dist/icons/assets/multi-color-filter.svg2.js +5 -0
  741. package/dist/icons/assets/multi-color-filter.svg2.js.map +1 -0
  742. package/dist/icons/assets/multicolor-bell-Dz9E_Ff-.webp +0 -0
  743. package/dist/icons/assets/paperRocket-y1QCvSdO.svg +28 -0
  744. package/dist/icons/assets/{paperrocket.svg.js → paperRocket.svg.js} +1 -0
  745. package/dist/icons/assets/paperRocket.svg.js.map +1 -0
  746. package/dist/icons/assets/paperRocket.svg2.js +5 -0
  747. package/dist/icons/assets/paperRocket.svg2.js.map +1 -0
  748. package/dist/icons/assets/pencil-DyMDlc-H.svg +3 -0
  749. package/dist/icons/assets/pencil.svg.js +1 -0
  750. package/dist/icons/assets/pencil.svg.js.map +1 -0
  751. package/dist/icons/assets/pencil.svg2.js +5 -0
  752. package/dist/icons/assets/pencil.svg2.js.map +1 -0
  753. package/dist/icons/assets/person-CwMEBa6k.svg +3 -0
  754. package/dist/icons/assets/person.svg.js +1 -0
  755. package/dist/icons/assets/person.svg.js.map +1 -0
  756. package/dist/icons/assets/person.svg2.js +5 -0
  757. package/dist/icons/assets/person.svg2.js.map +1 -0
  758. package/dist/icons/assets/pin-Ccl_j-VA.svg +3 -0
  759. package/dist/icons/assets/pin.svg.js +1 -0
  760. package/dist/icons/assets/pin.svg.js.map +1 -0
  761. package/dist/icons/assets/pin.svg2.js +5 -0
  762. package/dist/icons/assets/pin.svg2.js.map +1 -0
  763. package/dist/icons/assets/pivotMode-DrVyUy8j.svg +6 -0
  764. package/dist/icons/assets/pivotMode.svg.js +1 -0
  765. package/dist/icons/assets/pivotMode.svg.js.map +1 -0
  766. package/dist/icons/assets/pivotMode.svg2.js +5 -0
  767. package/dist/icons/assets/pivotMode.svg2.js.map +1 -0
  768. package/dist/icons/assets/plus-DgKyUNbV.svg +3 -0
  769. package/dist/icons/assets/plus.svg.js +1 -0
  770. package/dist/icons/assets/plus.svg.js.map +1 -0
  771. package/dist/icons/assets/plus.svg2.js +5 -0
  772. package/dist/icons/assets/plus.svg2.js.map +1 -0
  773. package/dist/icons/assets/price-tag-CvSiuob8.webp +0 -0
  774. package/dist/icons/assets/priority-alert-BNU5rn94.svg +3 -0
  775. package/dist/icons/assets/priority-alert.svg.js +1 -0
  776. package/dist/icons/assets/priority-alert.svg.js.map +1 -0
  777. package/dist/icons/assets/priority-alert.svg2.js +5 -0
  778. package/dist/icons/assets/priority-alert.svg2.js.map +1 -0
  779. package/dist/icons/assets/productBox-BN8XB6yB.svg +3 -0
  780. package/dist/icons/assets/{Product.svg.js → productBox.svg.js} +1 -0
  781. package/dist/icons/assets/productBox.svg.js.map +1 -0
  782. package/dist/icons/assets/productBox.svg2.js +5 -0
  783. package/dist/icons/assets/productBox.svg2.js.map +1 -0
  784. package/dist/icons/assets/receipts-stack-DEBgXviX.webp +0 -0
  785. package/dist/icons/assets/recommended-receipt-DxtAF__V.webp +0 -0
  786. package/dist/icons/assets/report1-DuHySVqp.webp +0 -0
  787. package/dist/icons/assets/report2-DQgraj6L.webp +0 -0
  788. package/dist/icons/assets/reportExtract-DZfYUIrk.svg +3 -0
  789. package/dist/icons/assets/{report_1.svg.js → reportExtract.svg.js} +1 -0
  790. package/dist/icons/assets/reportExtract.svg.js.map +1 -0
  791. package/dist/icons/assets/reportExtract.svg2.js +5 -0
  792. package/dist/icons/assets/reportExtract.svg2.js.map +1 -0
  793. package/dist/icons/assets/reset-C78P8Tav.svg +3 -0
  794. package/dist/icons/assets/reset.svg.js +1 -0
  795. package/dist/icons/assets/reset.svg.js.map +1 -0
  796. package/dist/icons/assets/reset.svg2.js +5 -0
  797. package/dist/icons/assets/reset.svg2.js.map +1 -0
  798. package/dist/icons/assets/return-carton-94iAC8jq.webp +0 -0
  799. package/dist/icons/assets/rewind-DT_XVnrl.svg +3 -0
  800. package/dist/icons/assets/rewind.svg.js +1 -0
  801. package/dist/icons/assets/rewind.svg.js.map +1 -0
  802. package/dist/icons/assets/rewind.svg2.js +5 -0
  803. package/dist/icons/assets/rewind.svg2.js.map +1 -0
  804. package/dist/icons/assets/rocket-DX-1_DKn.svg +3 -0
  805. package/dist/icons/assets/rocket.svg.js +1 -0
  806. package/dist/icons/assets/rocket.svg.js.map +1 -0
  807. package/dist/icons/assets/rocket.svg2.js +5 -0
  808. package/dist/icons/assets/rocket.svg2.js.map +1 -0
  809. package/dist/icons/assets/sales-CWuWTq68.webp +0 -0
  810. package/dist/icons/assets/scenario-0QpPFMfT.webp +0 -0
  811. package/dist/icons/assets/search-B97uNuMu.svg +4 -0
  812. package/dist/icons/assets/search.svg.js +1 -0
  813. package/dist/icons/assets/search.svg.js.map +1 -0
  814. package/dist/icons/assets/search.svg2.js +5 -0
  815. package/dist/icons/assets/search.svg2.js.map +1 -0
  816. package/dist/icons/assets/settings-C9NjMCT4.svg +3 -0
  817. package/dist/icons/assets/settings.svg.js +1 -0
  818. package/dist/icons/assets/settings.svg.js.map +1 -0
  819. package/dist/icons/assets/settings.svg2.js +5 -0
  820. package/dist/icons/assets/settings.svg2.js.map +1 -0
  821. package/dist/icons/assets/shapes-CIGa8hEO.svg +3 -0
  822. package/dist/icons/assets/shapes.svg.js +1 -0
  823. package/dist/icons/assets/shapes.svg.js.map +1 -0
  824. package/dist/icons/assets/shapes.svg2.js +5 -0
  825. package/dist/icons/assets/shapes.svg2.js.map +1 -0
  826. package/dist/icons/assets/shipping-container-Dz0FYw5q.webp +0 -0
  827. package/dist/icons/assets/stack-DHR0tf2u.svg +5 -0
  828. package/dist/icons/assets/stack-comfort-CaXckvKm.svg +4 -0
  829. package/dist/icons/assets/stack-comfort.svg.js +1 -0
  830. package/dist/icons/assets/stack-comfort.svg.js.map +1 -0
  831. package/dist/icons/assets/stack-comfort.svg2.js +5 -0
  832. package/dist/icons/assets/stack-comfort.svg2.js.map +1 -0
  833. package/dist/icons/assets/stack-compact-DtDPK13N.svg +6 -0
  834. package/dist/icons/assets/stack-compact.svg.js +1 -0
  835. package/dist/icons/assets/stack-compact.svg.js.map +1 -0
  836. package/dist/icons/assets/stack-compact.svg2.js +5 -0
  837. package/dist/icons/assets/stack-compact.svg2.js.map +1 -0
  838. package/dist/icons/assets/stack-of-packaged-boxes-CuJH_KsO.webp +0 -0
  839. package/dist/icons/assets/stack.svg.js +1 -0
  840. package/dist/icons/assets/stack.svg.js.map +1 -0
  841. package/dist/icons/assets/stack.svg2.js +5 -0
  842. package/dist/icons/assets/stack.svg2.js.map +1 -0
  843. package/dist/icons/assets/statistics-DVn7xdD5.svg +3 -0
  844. package/dist/icons/assets/statistics.svg.js +1 -0
  845. package/dist/icons/assets/statistics.svg.js.map +1 -0
  846. package/dist/icons/assets/statistics.svg2.js +5 -0
  847. package/dist/icons/assets/statistics.svg2.js.map +1 -0
  848. package/dist/icons/assets/store-B41ov0u9.svg +3 -0
  849. package/dist/icons/assets/store.svg.js +1 -0
  850. package/dist/icons/assets/store.svg.js.map +1 -0
  851. package/dist/icons/assets/store.svg2.js +5 -0
  852. package/dist/icons/assets/store.svg2.js.map +1 -0
  853. package/dist/icons/assets/success-3d-BvSzlXMU.webp +0 -0
  854. package/dist/icons/assets/table-B3RK1WAD.svg +3 -0
  855. package/dist/icons/assets/table.svg.js +1 -0
  856. package/dist/icons/assets/table.svg.js.map +1 -0
  857. package/dist/icons/assets/table.svg2.js +5 -0
  858. package/dist/icons/assets/table.svg2.js.map +1 -0
  859. package/dist/icons/assets/text-Da5mCp9b.webp +0 -0
  860. package/dist/icons/assets/three-dots-C_xMxxeU.svg +3 -0
  861. package/dist/icons/assets/three-dots.svg.js +1 -0
  862. package/dist/icons/assets/three-dots.svg.js.map +1 -0
  863. package/dist/icons/assets/three-dots.svg2.js +5 -0
  864. package/dist/icons/assets/three-dots.svg2.js.map +1 -0
  865. package/dist/icons/assets/trendingDown-73978TS9.svg +3 -0
  866. package/dist/icons/assets/trendingDown.svg.js +1 -0
  867. package/dist/icons/assets/trendingDown.svg.js.map +1 -0
  868. package/dist/icons/assets/trendingDown.svg2.js +5 -0
  869. package/dist/icons/assets/trendingDown.svg2.js.map +1 -0
  870. package/dist/icons/assets/trendingFlat-Ch3SSrTx.svg +3 -0
  871. package/dist/icons/assets/trendingFlat.svg.js +1 -0
  872. package/dist/icons/assets/trendingFlat.svg.js.map +1 -0
  873. package/dist/icons/assets/trendingFlat.svg2.js +5 -0
  874. package/dist/icons/assets/trendingFlat.svg2.js.map +1 -0
  875. package/dist/icons/assets/trendingNeutral-Le2QTmc8.svg +3 -0
  876. package/dist/icons/assets/trendingNeutral.svg.js +1 -0
  877. package/dist/icons/assets/trendingNeutral.svg.js.map +1 -0
  878. package/dist/icons/assets/trendingNeutral.svg2.js +5 -0
  879. package/dist/icons/assets/trendingNeutral.svg2.js.map +1 -0
  880. package/dist/icons/assets/trendingUp-DZZFExfW.svg +3 -0
  881. package/dist/icons/assets/trendingUp.svg.js +1 -0
  882. package/dist/icons/assets/trendingUp.svg.js.map +1 -0
  883. package/dist/icons/assets/trendingUp.svg2.js +5 -0
  884. package/dist/icons/assets/trendingUp.svg2.js.map +1 -0
  885. package/dist/icons/assets/trolley-DFDhRynd.svg +3 -0
  886. package/dist/icons/assets/trolley.svg.js +1 -0
  887. package/dist/icons/assets/trolley.svg.js.map +1 -0
  888. package/dist/icons/assets/trolley.svg2.js +5 -0
  889. package/dist/icons/assets/trolley.svg2.js.map +1 -0
  890. package/dist/icons/assets/two-stacked-packaged-boxes-BvgC6eSm.webp +0 -0
  891. package/dist/icons/assets/unarchive-DrjTAiz7.svg +8 -0
  892. package/dist/icons/assets/unarchive.svg.js +1 -0
  893. package/dist/icons/assets/unarchive.svg.js.map +1 -0
  894. package/dist/icons/assets/unarchive.svg2.js +5 -0
  895. package/dist/icons/assets/unarchive.svg2.js.map +1 -0
  896. package/dist/icons/assets/unlocked-BbOkGBkU.svg +3 -0
  897. package/dist/icons/assets/unlocked.svg.js +1 -0
  898. package/dist/icons/assets/unlocked.svg.js.map +1 -0
  899. package/dist/icons/assets/unlocked.svg2.js +5 -0
  900. package/dist/icons/assets/unlocked.svg2.js.map +1 -0
  901. package/dist/icons/assets/unpin-DieIyL5m.svg +3 -0
  902. package/dist/icons/assets/unpin.svg.js +1 -0
  903. package/dist/icons/assets/unpin.svg.js.map +1 -0
  904. package/dist/icons/assets/unpin.svg2.js +5 -0
  905. package/dist/icons/assets/unpin.svg2.js.map +1 -0
  906. package/dist/icons/assets/upload-Bv8aeonJ.svg +3 -0
  907. package/dist/icons/assets/upload.svg.js +1 -0
  908. package/dist/icons/assets/upload.svg.js.map +1 -0
  909. package/dist/icons/assets/upload.svg2.js +5 -0
  910. package/dist/icons/assets/upload.svg2.js.map +1 -0
  911. package/dist/icons/assets/warning-3d-BKUe1T2c.webp +0 -0
  912. package/dist/icons/assets/warranty-DrVnkCii.webp +0 -0
  913. package/dist/icons/assets/webp/bill-or-receipt.webp.js +3 -2
  914. package/dist/icons/assets/webp/bill-or-receipt.webp.js.map +1 -0
  915. package/dist/icons/assets/webp/cash-bundle.webp.js +3 -2
  916. package/dist/icons/assets/webp/cash-bundle.webp.js.map +1 -0
  917. package/dist/icons/assets/webp/checklist-with-pen.webp.js +3 -2
  918. package/dist/icons/assets/webp/checklist-with-pen.webp.js.map +1 -0
  919. package/dist/icons/assets/webp/checkmark-success.webp.js +5 -0
  920. package/dist/icons/assets/webp/checkmark-success.webp.js.map +1 -0
  921. package/dist/icons/assets/webp/click-me-arrow.webp.js +3 -2
  922. package/dist/icons/assets/webp/click-me-arrow.webp.js.map +1 -0
  923. package/dist/icons/assets/webp/csv.webp.js +5 -0
  924. package/dist/icons/assets/webp/csv.webp.js.map +1 -0
  925. package/dist/icons/assets/webp/delete-3d.webp.js +3 -2
  926. package/dist/icons/assets/webp/delete-3d.webp.js.map +1 -0
  927. package/dist/icons/assets/webp/dollar.webp.js +3 -2
  928. package/dist/icons/assets/webp/dollar.webp.js.map +1 -0
  929. package/dist/icons/assets/webp/empty-state-1.webp.js +3 -2
  930. package/dist/icons/assets/webp/empty-state-1.webp.js.map +1 -0
  931. package/dist/icons/assets/webp/empty-state-2.webp.js +3 -2
  932. package/dist/icons/assets/webp/empty-state-2.webp.js.map +1 -0
  933. package/dist/icons/assets/webp/empty-state-3.webp.js +3 -2
  934. package/dist/icons/assets/webp/empty-state-3.webp.js.map +1 -0
  935. package/dist/icons/assets/webp/empty-state-4.webp.js +3 -2
  936. package/dist/icons/assets/webp/empty-state-4.webp.js.map +1 -0
  937. package/dist/icons/assets/webp/empty-state-5.webp.js +3 -2
  938. package/dist/icons/assets/webp/empty-state-5.webp.js.map +1 -0
  939. package/dist/icons/assets/webp/empty-state-6.webp.js +3 -2
  940. package/dist/icons/assets/webp/empty-state-6.webp.js.map +1 -0
  941. package/dist/icons/assets/webp/euro.webp.js +3 -2
  942. package/dist/icons/assets/webp/euro.webp.js.map +1 -0
  943. package/dist/icons/assets/webp/excel.webp.js +5 -0
  944. package/dist/icons/assets/webp/excel.webp.js.map +1 -0
  945. package/dist/icons/assets/webp/file-upload.webp.js +3 -2
  946. package/dist/icons/assets/webp/file-upload.webp.js.map +1 -0
  947. package/dist/icons/assets/webp/info-3d.webp.js +3 -2
  948. package/dist/icons/assets/webp/info-3d.webp.js.map +1 -0
  949. package/dist/icons/assets/webp/inventory-adjustment.webp.js +3 -2
  950. package/dist/icons/assets/webp/inventory-adjustment.webp.js.map +1 -0
  951. package/dist/icons/assets/webp/loadingSimulationVideo.mp4.js +5 -0
  952. package/dist/icons/assets/webp/loadingSimulationVideo.mp4.js.map +1 -0
  953. package/dist/icons/assets/webp/multicolor-bell.webp.js +3 -2
  954. package/dist/icons/assets/webp/multicolor-bell.webp.js.map +1 -0
  955. package/dist/icons/assets/webp/price-tag.webp.js +3 -2
  956. package/dist/icons/assets/webp/price-tag.webp.js.map +1 -0
  957. package/dist/icons/assets/webp/receipts-stack.webp.js +3 -2
  958. package/dist/icons/assets/webp/receipts-stack.webp.js.map +1 -0
  959. package/dist/icons/assets/webp/recommended-receipt.webp.js +3 -2
  960. package/dist/icons/assets/webp/recommended-receipt.webp.js.map +1 -0
  961. package/dist/icons/assets/webp/report1.webp.js +3 -2
  962. package/dist/icons/assets/webp/report1.webp.js.map +1 -0
  963. package/dist/icons/assets/webp/report2.webp.js +3 -2
  964. package/dist/icons/assets/webp/report2.webp.js.map +1 -0
  965. package/dist/icons/assets/webp/return-carton.webp.js +3 -2
  966. package/dist/icons/assets/webp/return-carton.webp.js.map +1 -0
  967. package/dist/icons/assets/webp/sales.webp.js +3 -2
  968. package/dist/icons/assets/webp/sales.webp.js.map +1 -0
  969. package/dist/icons/assets/webp/scenario.webp.js +3 -2
  970. package/dist/icons/assets/webp/scenario.webp.js.map +1 -0
  971. package/dist/icons/assets/webp/shipping-container.webp.js +3 -2
  972. package/dist/icons/assets/webp/shipping-container.webp.js.map +1 -0
  973. package/dist/icons/assets/webp/stack-of-packaged-boxes.webp.js +3 -2
  974. package/dist/icons/assets/webp/stack-of-packaged-boxes.webp.js.map +1 -0
  975. package/dist/icons/assets/webp/success-3d.webp.js +3 -2
  976. package/dist/icons/assets/webp/success-3d.webp.js.map +1 -0
  977. package/dist/icons/assets/webp/text.webp.js +5 -0
  978. package/dist/icons/assets/webp/text.webp.js.map +1 -0
  979. package/dist/icons/assets/webp/two-stacked-packaged-boxes.webp.js +3 -2
  980. package/dist/icons/assets/webp/two-stacked-packaged-boxes.webp.js.map +1 -0
  981. package/dist/icons/assets/webp/warning-3d.webp.js +3 -2
  982. package/dist/icons/assets/webp/warning-3d.webp.js.map +1 -0
  983. package/dist/icons/assets/webp/warranty.webp.js +3 -2
  984. package/dist/icons/assets/webp/warranty.webp.js.map +1 -0
  985. package/dist/icons/core/createIcon.d.ts +3 -0
  986. package/dist/icons/core/createIcon.js +26 -0
  987. package/dist/icons/core/createIcon.js.map +1 -0
  988. package/dist/icons/core/createImage.d.ts +2 -0
  989. package/dist/icons/core/createImage.js +31 -0
  990. package/dist/icons/core/createImage.js.map +1 -0
  991. package/dist/icons/core/createVideo.d.ts +2 -0
  992. package/dist/icons/core/createVideo.js +30 -0
  993. package/dist/icons/core/createVideo.js.map +1 -0
  994. package/dist/icons/core/types.d.ts +55 -0
  995. package/dist/icons/core/types.js +14 -0
  996. package/dist/icons/core/types.js.map +1 -0
  997. package/dist/icons/generated/alan.d.ts +1 -0
  998. package/dist/icons/generated/alan.js +7 -0
  999. package/dist/icons/generated/alan.js.map +1 -0
  1000. package/dist/icons/generated/alan.url.d.ts +1 -0
  1001. package/dist/icons/generated/alan.url.js +6 -0
  1002. package/dist/icons/generated/alan.url.js.map +1 -0
  1003. package/dist/icons/generated/alerts.d.ts +1 -0
  1004. package/dist/icons/generated/alerts.js +7 -0
  1005. package/dist/icons/generated/alerts.js.map +1 -0
  1006. package/dist/icons/generated/alerts.url.d.ts +1 -0
  1007. package/dist/icons/generated/alerts.url.js +6 -0
  1008. package/dist/icons/generated/alerts.url.js.map +1 -0
  1009. package/dist/icons/generated/analytical-search.d.ts +1 -0
  1010. package/dist/icons/generated/analytical-search.js +7 -0
  1011. package/dist/icons/generated/analytical-search.js.map +1 -0
  1012. package/dist/icons/generated/analytical-search.url.d.ts +1 -0
  1013. package/dist/icons/generated/analytical-search.url.js +6 -0
  1014. package/dist/icons/generated/analytical-search.url.js.map +1 -0
  1015. package/dist/icons/generated/archive.d.ts +1 -0
  1016. package/dist/icons/generated/archive.js +7 -0
  1017. package/dist/icons/generated/archive.js.map +1 -0
  1018. package/dist/icons/generated/archive.url.d.ts +1 -0
  1019. package/dist/icons/generated/archive.url.js +6 -0
  1020. package/dist/icons/generated/archive.url.js.map +1 -0
  1021. package/dist/icons/generated/back.d.ts +1 -0
  1022. package/dist/icons/generated/back.js +7 -0
  1023. package/dist/icons/generated/back.js.map +1 -0
  1024. package/dist/icons/generated/back.url.d.ts +1 -0
  1025. package/dist/icons/generated/back.url.js +6 -0
  1026. package/dist/icons/generated/back.url.js.map +1 -0
  1027. package/dist/icons/generated/backdrop.d.ts +1 -0
  1028. package/dist/icons/generated/backdrop.js +7 -0
  1029. package/dist/icons/generated/backdrop.js.map +1 -0
  1030. package/dist/icons/generated/backdrop.url.d.ts +1 -0
  1031. package/dist/icons/generated/backdrop.url.js +6 -0
  1032. package/dist/icons/generated/backdrop.url.js.map +1 -0
  1033. package/dist/icons/generated/bell.d.ts +1 -0
  1034. package/dist/icons/generated/bell.js +7 -0
  1035. package/dist/icons/generated/bell.js.map +1 -0
  1036. package/dist/icons/generated/bell.url.d.ts +1 -0
  1037. package/dist/icons/generated/bell.url.js +6 -0
  1038. package/dist/icons/generated/bell.url.js.map +1 -0
  1039. package/dist/icons/generated/bin.d.ts +1 -0
  1040. package/dist/icons/generated/bin.js +7 -0
  1041. package/dist/icons/generated/bin.js.map +1 -0
  1042. package/dist/icons/generated/bin.url.d.ts +1 -0
  1043. package/dist/icons/generated/bin.url.js +6 -0
  1044. package/dist/icons/generated/bin.url.js.map +1 -0
  1045. package/dist/icons/generated/blocks.d.ts +1 -0
  1046. package/dist/icons/generated/blocks.js +7 -0
  1047. package/dist/icons/generated/blocks.js.map +1 -0
  1048. package/dist/icons/generated/blocks.url.d.ts +1 -0
  1049. package/dist/icons/generated/blocks.url.js +6 -0
  1050. package/dist/icons/generated/blocks.url.js.map +1 -0
  1051. package/dist/icons/generated/bookmark-filled.d.ts +1 -0
  1052. package/dist/icons/generated/bookmark-filled.js +7 -0
  1053. package/dist/icons/generated/bookmark-filled.js.map +1 -0
  1054. package/dist/icons/generated/bookmark-filled.url.d.ts +1 -0
  1055. package/dist/icons/generated/bookmark-filled.url.js +6 -0
  1056. package/dist/icons/generated/bookmark-filled.url.js.map +1 -0
  1057. package/dist/icons/generated/bookmark.d.ts +1 -0
  1058. package/dist/icons/generated/bookmark.js +7 -0
  1059. package/dist/icons/generated/bookmark.js.map +1 -0
  1060. package/dist/icons/generated/bookmark.url.d.ts +1 -0
  1061. package/dist/icons/generated/bookmark.url.js +6 -0
  1062. package/dist/icons/generated/bookmark.url.js.map +1 -0
  1063. package/dist/icons/generated/box-add.d.ts +1 -0
  1064. package/dist/icons/generated/box-add.js +7 -0
  1065. package/dist/icons/generated/box-add.js.map +1 -0
  1066. package/dist/icons/generated/box-add.url.d.ts +1 -0
  1067. package/dist/icons/generated/box-add.url.js +6 -0
  1068. package/dist/icons/generated/box-add.url.js.map +1 -0
  1069. package/dist/icons/generated/box.d.ts +1 -0
  1070. package/dist/icons/generated/box.js +7 -0
  1071. package/dist/icons/generated/box.js.map +1 -0
  1072. package/dist/icons/generated/box.url.d.ts +1 -0
  1073. package/dist/icons/generated/box.url.js +6 -0
  1074. package/dist/icons/generated/box.url.js.map +1 -0
  1075. package/dist/icons/generated/boxed.d.ts +1 -0
  1076. package/dist/icons/generated/boxed.js +7 -0
  1077. package/dist/icons/generated/boxed.js.map +1 -0
  1078. package/dist/icons/generated/boxed.url.d.ts +1 -0
  1079. package/dist/icons/generated/boxed.url.js +6 -0
  1080. package/dist/icons/generated/boxed.url.js.map +1 -0
  1081. package/dist/icons/generated/bulk-edit.d.ts +1 -0
  1082. package/dist/icons/generated/bulk-edit.js +7 -0
  1083. package/dist/icons/generated/bulk-edit.js.map +1 -0
  1084. package/dist/icons/generated/bulk-edit.url.d.ts +1 -0
  1085. package/dist/icons/generated/bulk-edit.url.js +6 -0
  1086. package/dist/icons/generated/bulk-edit.url.js.map +1 -0
  1087. package/dist/icons/generated/calendar-month.d.ts +1 -0
  1088. package/dist/icons/generated/calendar-month.js +7 -0
  1089. package/dist/icons/generated/calendar-month.js.map +1 -0
  1090. package/dist/icons/generated/calendar-month.url.d.ts +1 -0
  1091. package/dist/icons/generated/calendar-month.url.js +6 -0
  1092. package/dist/icons/generated/calendar-month.url.js.map +1 -0
  1093. package/dist/icons/generated/calendar.d.ts +1 -0
  1094. package/dist/icons/generated/calendar.js +7 -0
  1095. package/dist/icons/generated/calendar.js.map +1 -0
  1096. package/dist/icons/generated/calendar.url.d.ts +1 -0
  1097. package/dist/icons/generated/calendar.url.js +6 -0
  1098. package/dist/icons/generated/calendar.url.js.map +1 -0
  1099. package/dist/icons/generated/chart.d.ts +1 -0
  1100. package/dist/icons/generated/chart.js +7 -0
  1101. package/dist/icons/generated/chart.js.map +1 -0
  1102. package/dist/icons/generated/chart.url.d.ts +1 -0
  1103. package/dist/icons/generated/chart.url.js +6 -0
  1104. package/dist/icons/generated/chart.url.js.map +1 -0
  1105. package/dist/icons/generated/checkmark.d.ts +1 -0
  1106. package/dist/icons/generated/checkmark.js +7 -0
  1107. package/dist/icons/generated/checkmark.js.map +1 -0
  1108. package/dist/icons/generated/checkmark.url.d.ts +1 -0
  1109. package/dist/icons/generated/checkmark.url.js +6 -0
  1110. package/dist/icons/generated/checkmark.url.js.map +1 -0
  1111. package/dist/icons/generated/chevron-right.d.ts +1 -0
  1112. package/dist/icons/generated/chevron-right.js +7 -0
  1113. package/dist/icons/generated/chevron-right.js.map +1 -0
  1114. package/dist/icons/generated/chevron-right.url.d.ts +1 -0
  1115. package/dist/icons/generated/chevron-right.url.js +6 -0
  1116. package/dist/icons/generated/chevron-right.url.js.map +1 -0
  1117. package/dist/icons/generated/circle-cross.d.ts +1 -0
  1118. package/dist/icons/generated/circle-cross.js +7 -0
  1119. package/dist/icons/generated/circle-cross.js.map +1 -0
  1120. package/dist/icons/generated/circle-cross.url.d.ts +1 -0
  1121. package/dist/icons/generated/circle-cross.url.js +6 -0
  1122. package/dist/icons/generated/circle-cross.url.js.map +1 -0
  1123. package/dist/icons/generated/circle-double-tick.d.ts +1 -0
  1124. package/dist/icons/generated/circle-double-tick.js +7 -0
  1125. package/dist/icons/generated/circle-double-tick.js.map +1 -0
  1126. package/dist/icons/generated/circle-double-tick.url.d.ts +1 -0
  1127. package/dist/icons/generated/circle-double-tick.url.js +6 -0
  1128. package/dist/icons/generated/circle-double-tick.url.js.map +1 -0
  1129. package/dist/icons/generated/circle-tick.d.ts +1 -0
  1130. package/dist/icons/generated/circle-tick.js +7 -0
  1131. package/dist/icons/generated/circle-tick.js.map +1 -0
  1132. package/dist/icons/generated/circle-tick.url.d.ts +1 -0
  1133. package/dist/icons/generated/circle-tick.url.js +6 -0
  1134. package/dist/icons/generated/circle-tick.url.js.map +1 -0
  1135. package/dist/icons/generated/clock.d.ts +1 -0
  1136. package/dist/icons/generated/clock.js +7 -0
  1137. package/dist/icons/generated/clock.js.map +1 -0
  1138. package/dist/icons/generated/clock.url.d.ts +1 -0
  1139. package/dist/icons/generated/clock.url.js +6 -0
  1140. package/dist/icons/generated/clock.url.js.map +1 -0
  1141. package/dist/icons/generated/collapse.d.ts +1 -0
  1142. package/dist/icons/generated/collapse.js +7 -0
  1143. package/dist/icons/generated/collapse.js.map +1 -0
  1144. package/dist/icons/generated/collapse.url.d.ts +1 -0
  1145. package/dist/icons/generated/collapse.url.js +6 -0
  1146. package/dist/icons/generated/collapse.url.js.map +1 -0
  1147. package/dist/icons/generated/column.d.ts +1 -0
  1148. package/dist/icons/generated/column.js +7 -0
  1149. package/dist/icons/generated/column.js.map +1 -0
  1150. package/dist/icons/generated/column.url.d.ts +1 -0
  1151. package/dist/icons/generated/column.url.js +6 -0
  1152. package/dist/icons/generated/column.url.js.map +1 -0
  1153. package/dist/icons/generated/command-pallet.d.ts +1 -0
  1154. package/dist/icons/generated/command-pallet.js +7 -0
  1155. package/dist/icons/generated/command-pallet.js.map +1 -0
  1156. package/dist/icons/generated/command-pallet.url.d.ts +1 -0
  1157. package/dist/icons/generated/command-pallet.url.js +6 -0
  1158. package/dist/icons/generated/command-pallet.url.js.map +1 -0
  1159. package/dist/icons/generated/copy.d.ts +1 -0
  1160. package/dist/icons/generated/copy.js +7 -0
  1161. package/dist/icons/generated/copy.js.map +1 -0
  1162. package/dist/icons/generated/copy.url.d.ts +1 -0
  1163. package/dist/icons/generated/copy.url.js +6 -0
  1164. package/dist/icons/generated/copy.url.js.map +1 -0
  1165. package/dist/icons/generated/create-flow-image.d.ts +1 -0
  1166. package/dist/icons/generated/create-flow-image.js +7 -0
  1167. package/dist/icons/generated/create-flow-image.js.map +1 -0
  1168. package/dist/icons/generated/create-flow-image.url.d.ts +1 -0
  1169. package/dist/icons/generated/create-flow-image.url.js +6 -0
  1170. package/dist/icons/generated/create-flow-image.url.js.map +1 -0
  1171. package/dist/icons/generated/create-new-document.d.ts +1 -0
  1172. package/dist/icons/generated/create-new-document.js +7 -0
  1173. package/dist/icons/generated/create-new-document.js.map +1 -0
  1174. package/dist/icons/generated/create-new-document.url.d.ts +1 -0
  1175. package/dist/icons/generated/create-new-document.url.js +6 -0
  1176. package/dist/icons/generated/create-new-document.url.js.map +1 -0
  1177. package/dist/icons/generated/cross.d.ts +1 -0
  1178. package/dist/icons/generated/cross.js +7 -0
  1179. package/dist/icons/generated/cross.js.map +1 -0
  1180. package/dist/icons/generated/cross.url.d.ts +1 -0
  1181. package/dist/icons/generated/cross.url.js +6 -0
  1182. package/dist/icons/generated/cross.url.js.map +1 -0
  1183. package/dist/icons/generated/delete.d.ts +1 -0
  1184. package/dist/icons/generated/delete.js +7 -0
  1185. package/dist/icons/generated/delete.js.map +1 -0
  1186. package/dist/icons/generated/delete.url.d.ts +1 -0
  1187. package/dist/icons/generated/delete.url.js +6 -0
  1188. package/dist/icons/generated/delete.url.js.map +1 -0
  1189. package/dist/icons/generated/density.d.ts +1 -0
  1190. package/dist/icons/generated/density.js +7 -0
  1191. package/dist/icons/generated/density.js.map +1 -0
  1192. package/dist/icons/generated/density.url.d.ts +1 -0
  1193. package/dist/icons/generated/density.url.js +6 -0
  1194. package/dist/icons/generated/density.url.js.map +1 -0
  1195. package/dist/icons/generated/document.d.ts +1 -0
  1196. package/dist/icons/generated/document.js +7 -0
  1197. package/dist/icons/generated/document.js.map +1 -0
  1198. package/dist/icons/generated/document.url.d.ts +1 -0
  1199. package/dist/icons/generated/document.url.js +6 -0
  1200. package/dist/icons/generated/document.url.js.map +1 -0
  1201. package/dist/icons/generated/download.d.ts +1 -0
  1202. package/dist/icons/generated/download.js +7 -0
  1203. package/dist/icons/generated/download.js.map +1 -0
  1204. package/dist/icons/generated/download.url.d.ts +1 -0
  1205. package/dist/icons/generated/download.url.js +6 -0
  1206. package/dist/icons/generated/download.url.js.map +1 -0
  1207. package/dist/icons/generated/draft-note.d.ts +1 -0
  1208. package/dist/icons/generated/draft-note.js +7 -0
  1209. package/dist/icons/generated/draft-note.js.map +1 -0
  1210. package/dist/icons/generated/draft-note.url.d.ts +1 -0
  1211. package/dist/icons/generated/draft-note.url.js +6 -0
  1212. package/dist/icons/generated/draft-note.url.js.map +1 -0
  1213. package/dist/icons/generated/drag.d.ts +1 -0
  1214. package/dist/icons/generated/drag.js +7 -0
  1215. package/dist/icons/generated/drag.js.map +1 -0
  1216. package/dist/icons/generated/drag.url.d.ts +1 -0
  1217. package/dist/icons/generated/drag.url.js +6 -0
  1218. package/dist/icons/generated/drag.url.js.map +1 -0
  1219. package/dist/icons/generated/draw-brush.d.ts +1 -0
  1220. package/dist/icons/generated/draw-brush.js +7 -0
  1221. package/dist/icons/generated/draw-brush.js.map +1 -0
  1222. package/dist/icons/generated/draw-brush.url.d.ts +1 -0
  1223. package/dist/icons/generated/draw-brush.url.js +6 -0
  1224. package/dist/icons/generated/draw-brush.url.js.map +1 -0
  1225. package/dist/icons/generated/draw.d.ts +1 -0
  1226. package/dist/icons/generated/draw.js +7 -0
  1227. package/dist/icons/generated/draw.js.map +1 -0
  1228. package/dist/icons/generated/draw.url.d.ts +1 -0
  1229. package/dist/icons/generated/draw.url.js +6 -0
  1230. package/dist/icons/generated/draw.url.js.map +1 -0
  1231. package/dist/icons/generated/email.d.ts +1 -0
  1232. package/dist/icons/generated/email.js +7 -0
  1233. package/dist/icons/generated/email.js.map +1 -0
  1234. package/dist/icons/generated/email.url.d.ts +1 -0
  1235. package/dist/icons/generated/email.url.js +6 -0
  1236. package/dist/icons/generated/email.url.js.map +1 -0
  1237. package/dist/icons/generated/error-circle.d.ts +1 -0
  1238. package/dist/icons/generated/error-circle.js +7 -0
  1239. package/dist/icons/generated/error-circle.js.map +1 -0
  1240. package/dist/icons/generated/error-circle.url.d.ts +1 -0
  1241. package/dist/icons/generated/error-circle.url.js +6 -0
  1242. package/dist/icons/generated/error-circle.url.js.map +1 -0
  1243. package/dist/icons/generated/expand.d.ts +1 -0
  1244. package/dist/icons/generated/expand.js +7 -0
  1245. package/dist/icons/generated/expand.js.map +1 -0
  1246. package/dist/icons/generated/expand.url.d.ts +1 -0
  1247. package/dist/icons/generated/expand.url.js +6 -0
  1248. package/dist/icons/generated/expand.url.js.map +1 -0
  1249. package/dist/icons/generated/eye-off.d.ts +1 -0
  1250. package/dist/icons/generated/eye-off.js +7 -0
  1251. package/dist/icons/generated/eye-off.js.map +1 -0
  1252. package/dist/icons/generated/eye-off.url.d.ts +1 -0
  1253. package/dist/icons/generated/eye-off.url.js +6 -0
  1254. package/dist/icons/generated/eye-off.url.js.map +1 -0
  1255. package/dist/icons/generated/eye.d.ts +1 -0
  1256. package/dist/icons/generated/eye.js +7 -0
  1257. package/dist/icons/generated/eye.js.map +1 -0
  1258. package/dist/icons/generated/eye.url.d.ts +1 -0
  1259. package/dist/icons/generated/eye.url.js +6 -0
  1260. package/dist/icons/generated/eye.url.js.map +1 -0
  1261. package/dist/icons/generated/filter.d.ts +1 -0
  1262. package/dist/icons/generated/filter.js +7 -0
  1263. package/dist/icons/generated/filter.js.map +1 -0
  1264. package/dist/icons/generated/filter.url.d.ts +1 -0
  1265. package/dist/icons/generated/filter.url.js +6 -0
  1266. package/dist/icons/generated/filter.url.js.map +1 -0
  1267. package/dist/icons/generated/five-side-star.d.ts +1 -0
  1268. package/dist/icons/generated/five-side-star.js +7 -0
  1269. package/dist/icons/generated/five-side-star.js.map +1 -0
  1270. package/dist/icons/generated/five-side-star.url.d.ts +1 -0
  1271. package/dist/icons/generated/five-side-star.url.js +6 -0
  1272. package/dist/icons/generated/five-side-star.url.js.map +1 -0
  1273. package/dist/icons/generated/flag.d.ts +1 -0
  1274. package/dist/icons/generated/flag.js +7 -0
  1275. package/dist/icons/generated/flag.js.map +1 -0
  1276. package/dist/icons/generated/flag.url.d.ts +1 -0
  1277. package/dist/icons/generated/flag.url.js +6 -0
  1278. package/dist/icons/generated/flag.url.js.map +1 -0
  1279. package/dist/icons/generated/floppy.d.ts +1 -0
  1280. package/dist/icons/generated/floppy.js +7 -0
  1281. package/dist/icons/generated/floppy.js.map +1 -0
  1282. package/dist/icons/generated/floppy.url.d.ts +1 -0
  1283. package/dist/icons/generated/floppy.url.js +6 -0
  1284. package/dist/icons/generated/floppy.url.js.map +1 -0
  1285. package/dist/icons/generated/font.d.ts +1 -0
  1286. package/dist/icons/generated/font.js +7 -0
  1287. package/dist/icons/generated/font.js.map +1 -0
  1288. package/dist/icons/generated/font.url.d.ts +1 -0
  1289. package/dist/icons/generated/font.url.js +6 -0
  1290. package/dist/icons/generated/font.url.js.map +1 -0
  1291. package/dist/icons/generated/funnel-hide.d.ts +1 -0
  1292. package/dist/icons/generated/funnel-hide.js +7 -0
  1293. package/dist/icons/generated/funnel-hide.js.map +1 -0
  1294. package/dist/icons/generated/funnel-hide.url.d.ts +1 -0
  1295. package/dist/icons/generated/funnel-hide.url.js +6 -0
  1296. package/dist/icons/generated/funnel-hide.url.js.map +1 -0
  1297. package/dist/icons/generated/funnel-show.d.ts +1 -0
  1298. package/dist/icons/generated/funnel-show.js +7 -0
  1299. package/dist/icons/generated/funnel-show.js.map +1 -0
  1300. package/dist/icons/generated/funnel-show.url.d.ts +1 -0
  1301. package/dist/icons/generated/funnel-show.url.js +6 -0
  1302. package/dist/icons/generated/funnel-show.url.js.map +1 -0
  1303. package/dist/icons/generated/globe.d.ts +1 -0
  1304. package/dist/icons/generated/globe.js +7 -0
  1305. package/dist/icons/generated/globe.js.map +1 -0
  1306. package/dist/icons/generated/globe.url.d.ts +1 -0
  1307. package/dist/icons/generated/globe.url.js +6 -0
  1308. package/dist/icons/generated/globe.url.js.map +1 -0
  1309. package/dist/icons/generated/hamburger-closed.d.ts +1 -0
  1310. package/dist/icons/generated/hamburger-closed.js +7 -0
  1311. package/dist/icons/generated/hamburger-closed.js.map +1 -0
  1312. package/dist/icons/generated/hamburger-closed.url.d.ts +1 -0
  1313. package/dist/icons/generated/hamburger-closed.url.js +6 -0
  1314. package/dist/icons/generated/hamburger-closed.url.js.map +1 -0
  1315. package/dist/icons/generated/hamburger-open.d.ts +1 -0
  1316. package/dist/icons/generated/hamburger-open.js +7 -0
  1317. package/dist/icons/generated/hamburger-open.js.map +1 -0
  1318. package/dist/icons/generated/hamburger-open.url.d.ts +1 -0
  1319. package/dist/icons/generated/hamburger-open.url.js +6 -0
  1320. package/dist/icons/generated/hamburger-open.url.js.map +1 -0
  1321. package/dist/icons/generated/help.d.ts +1 -0
  1322. package/dist/icons/generated/help.js +7 -0
  1323. package/dist/icons/generated/help.js.map +1 -0
  1324. package/dist/icons/generated/help.url.d.ts +1 -0
  1325. package/dist/icons/generated/help.url.js +6 -0
  1326. package/dist/icons/generated/help.url.js.map +1 -0
  1327. package/dist/icons/generated/ia.d.ts +1 -0
  1328. package/dist/icons/generated/ia.js +7 -0
  1329. package/dist/icons/generated/ia.js.map +1 -0
  1330. package/dist/icons/generated/ia.url.d.ts +1 -0
  1331. package/dist/icons/generated/ia.url.js +6 -0
  1332. package/dist/icons/generated/ia.url.js.map +1 -0
  1333. package/dist/icons/generated/illustration-icon1.d.ts +1 -0
  1334. package/dist/icons/generated/illustration-icon1.js +7 -0
  1335. package/dist/icons/generated/illustration-icon1.js.map +1 -0
  1336. package/dist/icons/generated/illustration-icon1.url.d.ts +1 -0
  1337. package/dist/icons/generated/illustration-icon1.url.js +6 -0
  1338. package/dist/icons/generated/illustration-icon1.url.js.map +1 -0
  1339. package/dist/icons/generated/index.d.ts +273 -0
  1340. package/dist/icons/generated/index.js +546 -0
  1341. package/dist/icons/generated/index.js.map +1 -0
  1342. package/dist/icons/generated/info-badge.d.ts +1 -0
  1343. package/dist/icons/generated/info-badge.js +7 -0
  1344. package/dist/icons/generated/info-badge.js.map +1 -0
  1345. package/dist/icons/generated/info-badge.url.d.ts +1 -0
  1346. package/dist/icons/generated/info-badge.url.js +6 -0
  1347. package/dist/icons/generated/info-badge.url.js.map +1 -0
  1348. package/dist/icons/generated/info-circle-filled.d.ts +1 -0
  1349. package/dist/icons/generated/info-circle-filled.js +7 -0
  1350. package/dist/icons/generated/info-circle-filled.js.map +1 -0
  1351. package/dist/icons/generated/info-circle-filled.url.d.ts +1 -0
  1352. package/dist/icons/generated/info-circle-filled.url.js +6 -0
  1353. package/dist/icons/generated/info-circle-filled.url.js.map +1 -0
  1354. package/dist/icons/generated/info.d.ts +1 -0
  1355. package/dist/icons/generated/info.js +7 -0
  1356. package/dist/icons/generated/info.js.map +1 -0
  1357. package/dist/icons/generated/info.url.d.ts +1 -0
  1358. package/dist/icons/generated/info.url.js +6 -0
  1359. package/dist/icons/generated/info.url.js.map +1 -0
  1360. package/dist/icons/generated/layer.d.ts +1 -0
  1361. package/dist/icons/generated/layer.js +7 -0
  1362. package/dist/icons/generated/layer.js.map +1 -0
  1363. package/dist/icons/generated/layer.url.d.ts +1 -0
  1364. package/dist/icons/generated/layer.url.js +6 -0
  1365. package/dist/icons/generated/layer.url.js.map +1 -0
  1366. package/dist/icons/generated/loading-spinner.d.ts +1 -0
  1367. package/dist/icons/generated/loading-spinner.js +7 -0
  1368. package/dist/icons/generated/loading-spinner.js.map +1 -0
  1369. package/dist/icons/generated/loading-spinner.url.d.ts +1 -0
  1370. package/dist/icons/generated/loading-spinner.url.js +6 -0
  1371. package/dist/icons/generated/loading-spinner.url.js.map +1 -0
  1372. package/dist/icons/generated/locked.d.ts +1 -0
  1373. package/dist/icons/generated/locked.js +7 -0
  1374. package/dist/icons/generated/locked.js.map +1 -0
  1375. package/dist/icons/generated/locked.url.d.ts +1 -0
  1376. package/dist/icons/generated/locked.url.js +6 -0
  1377. package/dist/icons/generated/locked.url.js.map +1 -0
  1378. package/dist/icons/generated/login-arrow.d.ts +1 -0
  1379. package/dist/icons/generated/login-arrow.js +7 -0
  1380. package/dist/icons/generated/login-arrow.js.map +1 -0
  1381. package/dist/icons/generated/login-arrow.url.d.ts +1 -0
  1382. package/dist/icons/generated/login-arrow.url.js +6 -0
  1383. package/dist/icons/generated/login-arrow.url.js.map +1 -0
  1384. package/dist/icons/generated/manifest.d.ts +3 -0
  1385. package/dist/icons/generated/manifest.js +1089 -0
  1386. package/dist/icons/generated/manifest.js.map +1 -0
  1387. package/dist/icons/generated/match-with.d.ts +1 -0
  1388. package/dist/icons/generated/match-with.js +7 -0
  1389. package/dist/icons/generated/match-with.js.map +1 -0
  1390. package/dist/icons/generated/match-with.url.d.ts +1 -0
  1391. package/dist/icons/generated/match-with.url.js +6 -0
  1392. package/dist/icons/generated/match-with.url.js.map +1 -0
  1393. package/dist/icons/generated/message.d.ts +1 -0
  1394. package/dist/icons/generated/message.js +7 -0
  1395. package/dist/icons/generated/message.js.map +1 -0
  1396. package/dist/icons/generated/message.url.d.ts +1 -0
  1397. package/dist/icons/generated/message.url.js +6 -0
  1398. package/dist/icons/generated/message.url.js.map +1 -0
  1399. package/dist/icons/generated/more.d.ts +1 -0
  1400. package/dist/icons/generated/more.js +7 -0
  1401. package/dist/icons/generated/more.js.map +1 -0
  1402. package/dist/icons/generated/more.url.d.ts +1 -0
  1403. package/dist/icons/generated/more.url.js +6 -0
  1404. package/dist/icons/generated/more.url.js.map +1 -0
  1405. package/dist/icons/generated/multi-color-filter.d.ts +1 -0
  1406. package/dist/icons/generated/multi-color-filter.js +7 -0
  1407. package/dist/icons/generated/multi-color-filter.js.map +1 -0
  1408. package/dist/icons/generated/multi-color-filter.url.d.ts +1 -0
  1409. package/dist/icons/generated/multi-color-filter.url.js +6 -0
  1410. package/dist/icons/generated/multi-color-filter.url.js.map +1 -0
  1411. package/dist/icons/generated/paper-rocket.d.ts +1 -0
  1412. package/dist/icons/generated/paper-rocket.js +7 -0
  1413. package/dist/icons/generated/paper-rocket.js.map +1 -0
  1414. package/dist/icons/generated/paper-rocket.url.d.ts +1 -0
  1415. package/dist/icons/generated/paper-rocket.url.js +6 -0
  1416. package/dist/icons/generated/paper-rocket.url.js.map +1 -0
  1417. package/dist/icons/generated/pencil.d.ts +1 -0
  1418. package/dist/icons/generated/pencil.js +7 -0
  1419. package/dist/icons/generated/pencil.js.map +1 -0
  1420. package/dist/icons/generated/pencil.url.d.ts +1 -0
  1421. package/dist/icons/generated/pencil.url.js +6 -0
  1422. package/dist/icons/generated/pencil.url.js.map +1 -0
  1423. package/dist/icons/generated/person.d.ts +1 -0
  1424. package/dist/icons/generated/person.js +7 -0
  1425. package/dist/icons/generated/person.js.map +1 -0
  1426. package/dist/icons/generated/person.url.d.ts +1 -0
  1427. package/dist/icons/generated/person.url.js +6 -0
  1428. package/dist/icons/generated/person.url.js.map +1 -0
  1429. package/dist/icons/generated/pin.d.ts +1 -0
  1430. package/dist/icons/generated/pin.js +7 -0
  1431. package/dist/icons/generated/pin.js.map +1 -0
  1432. package/dist/icons/generated/pin.url.d.ts +1 -0
  1433. package/dist/icons/generated/pin.url.js +6 -0
  1434. package/dist/icons/generated/pin.url.js.map +1 -0
  1435. package/dist/icons/generated/pivot-mode.d.ts +1 -0
  1436. package/dist/icons/generated/pivot-mode.js +7 -0
  1437. package/dist/icons/generated/pivot-mode.js.map +1 -0
  1438. package/dist/icons/generated/pivot-mode.url.d.ts +1 -0
  1439. package/dist/icons/generated/pivot-mode.url.js +6 -0
  1440. package/dist/icons/generated/pivot-mode.url.js.map +1 -0
  1441. package/dist/icons/generated/plus.d.ts +1 -0
  1442. package/dist/icons/generated/plus.js +7 -0
  1443. package/dist/icons/generated/plus.js.map +1 -0
  1444. package/dist/icons/generated/plus.url.d.ts +1 -0
  1445. package/dist/icons/generated/plus.url.js +6 -0
  1446. package/dist/icons/generated/plus.url.js.map +1 -0
  1447. package/dist/icons/generated/priority-alert.d.ts +1 -0
  1448. package/dist/icons/generated/priority-alert.js +7 -0
  1449. package/dist/icons/generated/priority-alert.js.map +1 -0
  1450. package/dist/icons/generated/priority-alert.url.d.ts +1 -0
  1451. package/dist/icons/generated/priority-alert.url.js +6 -0
  1452. package/dist/icons/generated/priority-alert.url.js.map +1 -0
  1453. package/dist/icons/generated/product-box.d.ts +1 -0
  1454. package/dist/icons/generated/product-box.js +7 -0
  1455. package/dist/icons/generated/product-box.js.map +1 -0
  1456. package/dist/icons/generated/product-box.url.d.ts +1 -0
  1457. package/dist/icons/generated/product-box.url.js +6 -0
  1458. package/dist/icons/generated/product-box.url.js.map +1 -0
  1459. package/dist/icons/generated/report-extract.d.ts +1 -0
  1460. package/dist/icons/generated/report-extract.js +7 -0
  1461. package/dist/icons/generated/report-extract.js.map +1 -0
  1462. package/dist/icons/generated/report-extract.url.d.ts +1 -0
  1463. package/dist/icons/generated/report-extract.url.js +6 -0
  1464. package/dist/icons/generated/report-extract.url.js.map +1 -0
  1465. package/dist/icons/generated/reset.d.ts +1 -0
  1466. package/dist/icons/generated/reset.js +7 -0
  1467. package/dist/icons/generated/reset.js.map +1 -0
  1468. package/dist/icons/generated/reset.url.d.ts +1 -0
  1469. package/dist/icons/generated/reset.url.js +6 -0
  1470. package/dist/icons/generated/reset.url.js.map +1 -0
  1471. package/dist/icons/generated/rewind.d.ts +1 -0
  1472. package/dist/icons/generated/rewind.js +7 -0
  1473. package/dist/icons/generated/rewind.js.map +1 -0
  1474. package/dist/icons/generated/rewind.url.d.ts +1 -0
  1475. package/dist/icons/generated/rewind.url.js +6 -0
  1476. package/dist/icons/generated/rewind.url.js.map +1 -0
  1477. package/dist/icons/generated/rocket.d.ts +1 -0
  1478. package/dist/icons/generated/rocket.js +7 -0
  1479. package/dist/icons/generated/rocket.js.map +1 -0
  1480. package/dist/icons/generated/rocket.url.d.ts +1 -0
  1481. package/dist/icons/generated/rocket.url.js +6 -0
  1482. package/dist/icons/generated/rocket.url.js.map +1 -0
  1483. package/dist/icons/generated/search.d.ts +1 -0
  1484. package/dist/icons/generated/search.js +7 -0
  1485. package/dist/icons/generated/search.js.map +1 -0
  1486. package/dist/icons/generated/search.url.d.ts +1 -0
  1487. package/dist/icons/generated/search.url.js +6 -0
  1488. package/dist/icons/generated/search.url.js.map +1 -0
  1489. package/dist/icons/generated/settings.d.ts +1 -0
  1490. package/dist/icons/generated/settings.js +7 -0
  1491. package/dist/icons/generated/settings.js.map +1 -0
  1492. package/dist/icons/generated/settings.url.d.ts +1 -0
  1493. package/dist/icons/generated/settings.url.js +6 -0
  1494. package/dist/icons/generated/settings.url.js.map +1 -0
  1495. package/dist/icons/generated/shapes.d.ts +1 -0
  1496. package/dist/icons/generated/shapes.js +7 -0
  1497. package/dist/icons/generated/shapes.js.map +1 -0
  1498. package/dist/icons/generated/shapes.url.d.ts +1 -0
  1499. package/dist/icons/generated/shapes.url.js +6 -0
  1500. package/dist/icons/generated/shapes.url.js.map +1 -0
  1501. package/dist/icons/generated/stack-comfort.d.ts +1 -0
  1502. package/dist/icons/generated/stack-comfort.js +7 -0
  1503. package/dist/icons/generated/stack-comfort.js.map +1 -0
  1504. package/dist/icons/generated/stack-comfort.url.d.ts +1 -0
  1505. package/dist/icons/generated/stack-comfort.url.js +6 -0
  1506. package/dist/icons/generated/stack-comfort.url.js.map +1 -0
  1507. package/dist/icons/generated/stack-compact.d.ts +1 -0
  1508. package/dist/icons/generated/stack-compact.js +7 -0
  1509. package/dist/icons/generated/stack-compact.js.map +1 -0
  1510. package/dist/icons/generated/stack-compact.url.d.ts +1 -0
  1511. package/dist/icons/generated/stack-compact.url.js +6 -0
  1512. package/dist/icons/generated/stack-compact.url.js.map +1 -0
  1513. package/dist/icons/generated/stack.d.ts +1 -0
  1514. package/dist/icons/generated/stack.js +7 -0
  1515. package/dist/icons/generated/stack.js.map +1 -0
  1516. package/dist/icons/generated/stack.url.d.ts +1 -0
  1517. package/dist/icons/generated/stack.url.js +6 -0
  1518. package/dist/icons/generated/stack.url.js.map +1 -0
  1519. package/dist/icons/generated/statistics.d.ts +1 -0
  1520. package/dist/icons/generated/statistics.js +7 -0
  1521. package/dist/icons/generated/statistics.js.map +1 -0
  1522. package/dist/icons/generated/statistics.url.d.ts +1 -0
  1523. package/dist/icons/generated/statistics.url.js +6 -0
  1524. package/dist/icons/generated/statistics.url.js.map +1 -0
  1525. package/dist/icons/generated/store.d.ts +1 -0
  1526. package/dist/icons/generated/store.js +7 -0
  1527. package/dist/icons/generated/store.js.map +1 -0
  1528. package/dist/icons/generated/store.url.d.ts +1 -0
  1529. package/dist/icons/generated/store.url.js +6 -0
  1530. package/dist/icons/generated/store.url.js.map +1 -0
  1531. package/dist/icons/generated/table.d.ts +1 -0
  1532. package/dist/icons/generated/table.js +7 -0
  1533. package/dist/icons/generated/table.js.map +1 -0
  1534. package/dist/icons/generated/table.url.d.ts +1 -0
  1535. package/dist/icons/generated/table.url.js +6 -0
  1536. package/dist/icons/generated/table.url.js.map +1 -0
  1537. package/dist/icons/generated/three-dots.d.ts +1 -0
  1538. package/dist/icons/generated/three-dots.js +7 -0
  1539. package/dist/icons/generated/three-dots.js.map +1 -0
  1540. package/dist/icons/generated/three-dots.url.d.ts +1 -0
  1541. package/dist/icons/generated/three-dots.url.js +6 -0
  1542. package/dist/icons/generated/three-dots.url.js.map +1 -0
  1543. package/dist/icons/generated/trending-down.d.ts +1 -0
  1544. package/dist/icons/generated/trending-down.js +7 -0
  1545. package/dist/icons/generated/trending-down.js.map +1 -0
  1546. package/dist/icons/generated/trending-down.url.d.ts +1 -0
  1547. package/dist/icons/generated/trending-down.url.js +6 -0
  1548. package/dist/icons/generated/trending-down.url.js.map +1 -0
  1549. package/dist/icons/generated/trending-flat.d.ts +1 -0
  1550. package/dist/icons/generated/trending-flat.js +7 -0
  1551. package/dist/icons/generated/trending-flat.js.map +1 -0
  1552. package/dist/icons/generated/trending-flat.url.d.ts +1 -0
  1553. package/dist/icons/generated/trending-flat.url.js +6 -0
  1554. package/dist/icons/generated/trending-flat.url.js.map +1 -0
  1555. package/dist/icons/generated/trending-neutral.d.ts +1 -0
  1556. package/dist/icons/generated/trending-neutral.js +7 -0
  1557. package/dist/icons/generated/trending-neutral.js.map +1 -0
  1558. package/dist/icons/generated/trending-neutral.url.d.ts +1 -0
  1559. package/dist/icons/generated/trending-neutral.url.js +6 -0
  1560. package/dist/icons/generated/trending-neutral.url.js.map +1 -0
  1561. package/dist/icons/generated/trending-up.d.ts +1 -0
  1562. package/dist/icons/generated/trending-up.js +7 -0
  1563. package/dist/icons/generated/trending-up.js.map +1 -0
  1564. package/dist/icons/generated/trending-up.url.d.ts +1 -0
  1565. package/dist/icons/generated/trending-up.url.js +6 -0
  1566. package/dist/icons/generated/trending-up.url.js.map +1 -0
  1567. package/dist/icons/generated/trolley.d.ts +1 -0
  1568. package/dist/icons/generated/trolley.js +7 -0
  1569. package/dist/icons/generated/trolley.js.map +1 -0
  1570. package/dist/icons/generated/trolley.url.d.ts +1 -0
  1571. package/dist/icons/generated/trolley.url.js +6 -0
  1572. package/dist/icons/generated/trolley.url.js.map +1 -0
  1573. package/dist/icons/generated/unarchive.d.ts +1 -0
  1574. package/dist/icons/generated/unarchive.js +7 -0
  1575. package/dist/icons/generated/unarchive.js.map +1 -0
  1576. package/dist/icons/generated/unarchive.url.d.ts +1 -0
  1577. package/dist/icons/generated/unarchive.url.js +6 -0
  1578. package/dist/icons/generated/unarchive.url.js.map +1 -0
  1579. package/dist/icons/generated/unlocked.d.ts +1 -0
  1580. package/dist/icons/generated/unlocked.js +7 -0
  1581. package/dist/icons/generated/unlocked.js.map +1 -0
  1582. package/dist/icons/generated/unlocked.url.d.ts +1 -0
  1583. package/dist/icons/generated/unlocked.url.js +6 -0
  1584. package/dist/icons/generated/unlocked.url.js.map +1 -0
  1585. package/dist/icons/generated/unpin.d.ts +1 -0
  1586. package/dist/icons/generated/unpin.js +7 -0
  1587. package/dist/icons/generated/unpin.js.map +1 -0
  1588. package/dist/icons/generated/unpin.url.d.ts +1 -0
  1589. package/dist/icons/generated/unpin.url.js +6 -0
  1590. package/dist/icons/generated/unpin.url.js.map +1 -0
  1591. package/dist/icons/generated/upload.d.ts +1 -0
  1592. package/dist/icons/generated/upload.js +7 -0
  1593. package/dist/icons/generated/upload.js.map +1 -0
  1594. package/dist/icons/generated/upload.url.d.ts +1 -0
  1595. package/dist/icons/generated/upload.url.js +6 -0
  1596. package/dist/icons/generated/upload.url.js.map +1 -0
  1597. package/dist/icons/generated/webp-bill-or-receipt.d.ts +1 -0
  1598. package/dist/icons/generated/webp-bill-or-receipt.js +7 -0
  1599. package/dist/icons/generated/webp-bill-or-receipt.js.map +1 -0
  1600. package/dist/icons/generated/webp-bill-or-receipt.url.d.ts +1 -0
  1601. package/dist/icons/generated/webp-bill-or-receipt.url.js +6 -0
  1602. package/dist/icons/generated/webp-bill-or-receipt.url.js.map +1 -0
  1603. package/dist/icons/generated/webp-cash-bundle.d.ts +1 -0
  1604. package/dist/icons/generated/webp-cash-bundle.js +7 -0
  1605. package/dist/icons/generated/webp-cash-bundle.js.map +1 -0
  1606. package/dist/icons/generated/webp-cash-bundle.url.d.ts +1 -0
  1607. package/dist/icons/generated/webp-cash-bundle.url.js +6 -0
  1608. package/dist/icons/generated/webp-cash-bundle.url.js.map +1 -0
  1609. package/dist/icons/generated/webp-checklist-with-pen.d.ts +1 -0
  1610. package/dist/icons/generated/webp-checklist-with-pen.js +7 -0
  1611. package/dist/icons/generated/webp-checklist-with-pen.js.map +1 -0
  1612. package/dist/icons/generated/webp-checklist-with-pen.url.d.ts +1 -0
  1613. package/dist/icons/generated/webp-checklist-with-pen.url.js +6 -0
  1614. package/dist/icons/generated/webp-checklist-with-pen.url.js.map +1 -0
  1615. package/dist/icons/generated/webp-checkmark-success.d.ts +1 -0
  1616. package/dist/icons/generated/webp-checkmark-success.js +7 -0
  1617. package/dist/icons/generated/webp-checkmark-success.js.map +1 -0
  1618. package/dist/icons/generated/webp-checkmark-success.url.d.ts +1 -0
  1619. package/dist/icons/generated/webp-checkmark-success.url.js +6 -0
  1620. package/dist/icons/generated/webp-checkmark-success.url.js.map +1 -0
  1621. package/dist/icons/generated/webp-click-me-arrow.d.ts +1 -0
  1622. package/dist/icons/generated/webp-click-me-arrow.js +7 -0
  1623. package/dist/icons/generated/webp-click-me-arrow.js.map +1 -0
  1624. package/dist/icons/generated/webp-click-me-arrow.url.d.ts +1 -0
  1625. package/dist/icons/generated/webp-click-me-arrow.url.js +6 -0
  1626. package/dist/icons/generated/webp-click-me-arrow.url.js.map +1 -0
  1627. package/dist/icons/generated/webp-csv.d.ts +1 -0
  1628. package/dist/icons/generated/webp-csv.js +7 -0
  1629. package/dist/icons/generated/webp-csv.js.map +1 -0
  1630. package/dist/icons/generated/webp-csv.url.d.ts +1 -0
  1631. package/dist/icons/generated/webp-csv.url.js +6 -0
  1632. package/dist/icons/generated/webp-csv.url.js.map +1 -0
  1633. package/dist/icons/generated/webp-delete-3d.d.ts +1 -0
  1634. package/dist/icons/generated/webp-delete-3d.js +7 -0
  1635. package/dist/icons/generated/webp-delete-3d.js.map +1 -0
  1636. package/dist/icons/generated/webp-delete-3d.url.d.ts +1 -0
  1637. package/dist/icons/generated/webp-delete-3d.url.js +6 -0
  1638. package/dist/icons/generated/webp-delete-3d.url.js.map +1 -0
  1639. package/dist/icons/generated/webp-dollar.d.ts +1 -0
  1640. package/dist/icons/generated/webp-dollar.js +7 -0
  1641. package/dist/icons/generated/webp-dollar.js.map +1 -0
  1642. package/dist/icons/generated/webp-dollar.url.d.ts +1 -0
  1643. package/dist/icons/generated/webp-dollar.url.js +6 -0
  1644. package/dist/icons/generated/webp-dollar.url.js.map +1 -0
  1645. package/dist/icons/generated/webp-empty-state-1.d.ts +1 -0
  1646. package/dist/icons/generated/webp-empty-state-1.js +7 -0
  1647. package/dist/icons/generated/webp-empty-state-1.js.map +1 -0
  1648. package/dist/icons/generated/webp-empty-state-1.url.d.ts +1 -0
  1649. package/dist/icons/generated/webp-empty-state-1.url.js +6 -0
  1650. package/dist/icons/generated/webp-empty-state-1.url.js.map +1 -0
  1651. package/dist/icons/generated/webp-empty-state-2.d.ts +1 -0
  1652. package/dist/icons/generated/webp-empty-state-2.js +7 -0
  1653. package/dist/icons/generated/webp-empty-state-2.js.map +1 -0
  1654. package/dist/icons/generated/webp-empty-state-2.url.d.ts +1 -0
  1655. package/dist/icons/generated/webp-empty-state-2.url.js +6 -0
  1656. package/dist/icons/generated/webp-empty-state-2.url.js.map +1 -0
  1657. package/dist/icons/generated/webp-empty-state-3.d.ts +1 -0
  1658. package/dist/icons/generated/webp-empty-state-3.js +7 -0
  1659. package/dist/icons/generated/webp-empty-state-3.js.map +1 -0
  1660. package/dist/icons/generated/webp-empty-state-3.url.d.ts +1 -0
  1661. package/dist/icons/generated/webp-empty-state-3.url.js +6 -0
  1662. package/dist/icons/generated/webp-empty-state-3.url.js.map +1 -0
  1663. package/dist/icons/generated/webp-empty-state-4.d.ts +1 -0
  1664. package/dist/icons/generated/webp-empty-state-4.js +7 -0
  1665. package/dist/icons/generated/webp-empty-state-4.js.map +1 -0
  1666. package/dist/icons/generated/webp-empty-state-4.url.d.ts +1 -0
  1667. package/dist/icons/generated/webp-empty-state-4.url.js +6 -0
  1668. package/dist/icons/generated/webp-empty-state-4.url.js.map +1 -0
  1669. package/dist/icons/generated/webp-empty-state-5.d.ts +1 -0
  1670. package/dist/icons/generated/webp-empty-state-5.js +7 -0
  1671. package/dist/icons/generated/webp-empty-state-5.js.map +1 -0
  1672. package/dist/icons/generated/webp-empty-state-5.url.d.ts +1 -0
  1673. package/dist/icons/generated/webp-empty-state-5.url.js +6 -0
  1674. package/dist/icons/generated/webp-empty-state-5.url.js.map +1 -0
  1675. package/dist/icons/generated/webp-empty-state-6.d.ts +1 -0
  1676. package/dist/icons/generated/webp-empty-state-6.js +7 -0
  1677. package/dist/icons/generated/webp-empty-state-6.js.map +1 -0
  1678. package/dist/icons/generated/webp-empty-state-6.url.d.ts +1 -0
  1679. package/dist/icons/generated/webp-empty-state-6.url.js +6 -0
  1680. package/dist/icons/generated/webp-empty-state-6.url.js.map +1 -0
  1681. package/dist/icons/generated/webp-euro.d.ts +1 -0
  1682. package/dist/icons/generated/webp-euro.js +7 -0
  1683. package/dist/icons/generated/webp-euro.js.map +1 -0
  1684. package/dist/icons/generated/webp-euro.url.d.ts +1 -0
  1685. package/dist/icons/generated/webp-euro.url.js +6 -0
  1686. package/dist/icons/generated/webp-euro.url.js.map +1 -0
  1687. package/dist/icons/generated/webp-excel.d.ts +1 -0
  1688. package/dist/icons/generated/webp-excel.js +7 -0
  1689. package/dist/icons/generated/webp-excel.js.map +1 -0
  1690. package/dist/icons/generated/webp-excel.url.d.ts +1 -0
  1691. package/dist/icons/generated/webp-excel.url.js +6 -0
  1692. package/dist/icons/generated/webp-excel.url.js.map +1 -0
  1693. package/dist/icons/generated/webp-file-upload.d.ts +1 -0
  1694. package/dist/icons/generated/webp-file-upload.js +7 -0
  1695. package/dist/icons/generated/webp-file-upload.js.map +1 -0
  1696. package/dist/icons/generated/webp-file-upload.url.d.ts +1 -0
  1697. package/dist/icons/generated/webp-file-upload.url.js +6 -0
  1698. package/dist/icons/generated/webp-file-upload.url.js.map +1 -0
  1699. package/dist/icons/generated/webp-info-3d.d.ts +1 -0
  1700. package/dist/icons/generated/webp-info-3d.js +7 -0
  1701. package/dist/icons/generated/webp-info-3d.js.map +1 -0
  1702. package/dist/icons/generated/webp-info-3d.url.d.ts +1 -0
  1703. package/dist/icons/generated/webp-info-3d.url.js +6 -0
  1704. package/dist/icons/generated/webp-info-3d.url.js.map +1 -0
  1705. package/dist/icons/generated/webp-inventory-adjustment.d.ts +1 -0
  1706. package/dist/icons/generated/webp-inventory-adjustment.js +7 -0
  1707. package/dist/icons/generated/webp-inventory-adjustment.js.map +1 -0
  1708. package/dist/icons/generated/webp-inventory-adjustment.url.d.ts +1 -0
  1709. package/dist/icons/generated/webp-inventory-adjustment.url.js +6 -0
  1710. package/dist/icons/generated/webp-inventory-adjustment.url.js.map +1 -0
  1711. package/dist/icons/generated/webp-loading-simulation-video.d.ts +1 -0
  1712. package/dist/icons/generated/webp-loading-simulation-video.js +7 -0
  1713. package/dist/icons/generated/webp-loading-simulation-video.js.map +1 -0
  1714. package/dist/icons/generated/webp-loading-simulation-video.url.d.ts +1 -0
  1715. package/dist/icons/generated/webp-loading-simulation-video.url.js +6 -0
  1716. package/dist/icons/generated/webp-loading-simulation-video.url.js.map +1 -0
  1717. package/dist/icons/generated/webp-multicolor-bell.d.ts +1 -0
  1718. package/dist/icons/generated/webp-multicolor-bell.js +7 -0
  1719. package/dist/icons/generated/webp-multicolor-bell.js.map +1 -0
  1720. package/dist/icons/generated/webp-multicolor-bell.url.d.ts +1 -0
  1721. package/dist/icons/generated/webp-multicolor-bell.url.js +6 -0
  1722. package/dist/icons/generated/webp-multicolor-bell.url.js.map +1 -0
  1723. package/dist/icons/generated/webp-price-tag.d.ts +1 -0
  1724. package/dist/icons/generated/webp-price-tag.js +7 -0
  1725. package/dist/icons/generated/webp-price-tag.js.map +1 -0
  1726. package/dist/icons/generated/webp-price-tag.url.d.ts +1 -0
  1727. package/dist/icons/generated/webp-price-tag.url.js +6 -0
  1728. package/dist/icons/generated/webp-price-tag.url.js.map +1 -0
  1729. package/dist/icons/generated/webp-receipts-stack.d.ts +1 -0
  1730. package/dist/icons/generated/webp-receipts-stack.js +7 -0
  1731. package/dist/icons/generated/webp-receipts-stack.js.map +1 -0
  1732. package/dist/icons/generated/webp-receipts-stack.url.d.ts +1 -0
  1733. package/dist/icons/generated/webp-receipts-stack.url.js +6 -0
  1734. package/dist/icons/generated/webp-receipts-stack.url.js.map +1 -0
  1735. package/dist/icons/generated/webp-recommended-receipt.d.ts +1 -0
  1736. package/dist/icons/generated/webp-recommended-receipt.js +7 -0
  1737. package/dist/icons/generated/webp-recommended-receipt.js.map +1 -0
  1738. package/dist/icons/generated/webp-recommended-receipt.url.d.ts +1 -0
  1739. package/dist/icons/generated/webp-recommended-receipt.url.js +6 -0
  1740. package/dist/icons/generated/webp-recommended-receipt.url.js.map +1 -0
  1741. package/dist/icons/generated/webp-report1.d.ts +1 -0
  1742. package/dist/icons/generated/webp-report1.js +7 -0
  1743. package/dist/icons/generated/webp-report1.js.map +1 -0
  1744. package/dist/icons/generated/webp-report1.url.d.ts +1 -0
  1745. package/dist/icons/generated/webp-report1.url.js +6 -0
  1746. package/dist/icons/generated/webp-report1.url.js.map +1 -0
  1747. package/dist/icons/generated/webp-report2.d.ts +1 -0
  1748. package/dist/icons/generated/webp-report2.js +7 -0
  1749. package/dist/icons/generated/webp-report2.js.map +1 -0
  1750. package/dist/icons/generated/webp-report2.url.d.ts +1 -0
  1751. package/dist/icons/generated/webp-report2.url.js +6 -0
  1752. package/dist/icons/generated/webp-report2.url.js.map +1 -0
  1753. package/dist/icons/generated/webp-return-carton.d.ts +1 -0
  1754. package/dist/icons/generated/webp-return-carton.js +7 -0
  1755. package/dist/icons/generated/webp-return-carton.js.map +1 -0
  1756. package/dist/icons/generated/webp-return-carton.url.d.ts +1 -0
  1757. package/dist/icons/generated/webp-return-carton.url.js +6 -0
  1758. package/dist/icons/generated/webp-return-carton.url.js.map +1 -0
  1759. package/dist/icons/generated/webp-sales.d.ts +1 -0
  1760. package/dist/icons/generated/webp-sales.js +7 -0
  1761. package/dist/icons/generated/webp-sales.js.map +1 -0
  1762. package/dist/icons/generated/webp-sales.url.d.ts +1 -0
  1763. package/dist/icons/generated/webp-sales.url.js +6 -0
  1764. package/dist/icons/generated/webp-sales.url.js.map +1 -0
  1765. package/dist/icons/generated/webp-scenario.d.ts +1 -0
  1766. package/dist/icons/generated/webp-scenario.js +7 -0
  1767. package/dist/icons/generated/webp-scenario.js.map +1 -0
  1768. package/dist/icons/generated/webp-scenario.url.d.ts +1 -0
  1769. package/dist/icons/generated/webp-scenario.url.js +6 -0
  1770. package/dist/icons/generated/webp-scenario.url.js.map +1 -0
  1771. package/dist/icons/generated/webp-shipping-container.d.ts +1 -0
  1772. package/dist/icons/generated/webp-shipping-container.js +7 -0
  1773. package/dist/icons/generated/webp-shipping-container.js.map +1 -0
  1774. package/dist/icons/generated/webp-shipping-container.url.d.ts +1 -0
  1775. package/dist/icons/generated/webp-shipping-container.url.js +6 -0
  1776. package/dist/icons/generated/webp-shipping-container.url.js.map +1 -0
  1777. package/dist/icons/generated/webp-stack-of-packaged-boxes.d.ts +1 -0
  1778. package/dist/icons/generated/webp-stack-of-packaged-boxes.js +7 -0
  1779. package/dist/icons/generated/webp-stack-of-packaged-boxes.js.map +1 -0
  1780. package/dist/icons/generated/webp-stack-of-packaged-boxes.url.d.ts +1 -0
  1781. package/dist/icons/generated/webp-stack-of-packaged-boxes.url.js +6 -0
  1782. package/dist/icons/generated/webp-stack-of-packaged-boxes.url.js.map +1 -0
  1783. package/dist/icons/generated/webp-success-3d.d.ts +1 -0
  1784. package/dist/icons/generated/webp-success-3d.js +7 -0
  1785. package/dist/icons/generated/webp-success-3d.js.map +1 -0
  1786. package/dist/icons/generated/webp-success-3d.url.d.ts +1 -0
  1787. package/dist/icons/generated/webp-success-3d.url.js +6 -0
  1788. package/dist/icons/generated/webp-success-3d.url.js.map +1 -0
  1789. package/dist/icons/generated/webp-text.d.ts +1 -0
  1790. package/dist/icons/generated/webp-text.js +7 -0
  1791. package/dist/icons/generated/webp-text.js.map +1 -0
  1792. package/dist/icons/generated/webp-text.url.d.ts +1 -0
  1793. package/dist/icons/generated/webp-text.url.js +6 -0
  1794. package/dist/icons/generated/webp-text.url.js.map +1 -0
  1795. package/dist/icons/generated/webp-two-stacked-packaged-boxes.d.ts +1 -0
  1796. package/dist/icons/generated/webp-two-stacked-packaged-boxes.js +7 -0
  1797. package/dist/icons/generated/webp-two-stacked-packaged-boxes.js.map +1 -0
  1798. package/dist/icons/generated/webp-two-stacked-packaged-boxes.url.d.ts +1 -0
  1799. package/dist/icons/generated/webp-two-stacked-packaged-boxes.url.js +6 -0
  1800. package/dist/icons/generated/webp-two-stacked-packaged-boxes.url.js.map +1 -0
  1801. package/dist/icons/generated/webp-warning-3d.d.ts +1 -0
  1802. package/dist/icons/generated/webp-warning-3d.js +7 -0
  1803. package/dist/icons/generated/webp-warning-3d.js.map +1 -0
  1804. package/dist/icons/generated/webp-warning-3d.url.d.ts +1 -0
  1805. package/dist/icons/generated/webp-warning-3d.url.js +6 -0
  1806. package/dist/icons/generated/webp-warning-3d.url.js.map +1 -0
  1807. package/dist/icons/generated/webp-warranty.d.ts +1 -0
  1808. package/dist/icons/generated/webp-warranty.js +7 -0
  1809. package/dist/icons/generated/webp-warranty.js.map +1 -0
  1810. package/dist/icons/generated/webp-warranty.url.d.ts +1 -0
  1811. package/dist/icons/generated/webp-warranty.url.js +6 -0
  1812. package/dist/icons/generated/webp-warranty.url.js.map +1 -0
  1813. package/dist/icons/index.d.ts +7 -173
  1814. package/dist/icons/index.js +557 -381
  1815. package/dist/icons/index.js.map +1 -0
  1816. package/dist/icons/registry.d.ts +8 -0
  1817. package/dist/icons/registry.js +20 -0
  1818. package/dist/icons/registry.js.map +1 -0
  1819. package/dist/icons/resolver.d.ts +6 -0
  1820. package/dist/icons/resolver.js +20 -0
  1821. package/dist/icons/resolver.js.map +1 -0
  1822. package/dist/index.d.ts +0 -3
  1823. package/dist/index.js +96 -101
  1824. package/dist/index.js.map +1 -0
  1825. package/dist/lib/fiscal-calendar.js +1 -0
  1826. package/dist/lib/fiscal-calendar.js.map +1 -0
  1827. package/dist/lib/utils.js +1 -0
  1828. package/dist/lib/utils.js.map +1 -0
  1829. package/dist/lib/virtualized/sectioned.js +1 -0
  1830. package/dist/lib/virtualized/sectioned.js.map +1 -0
  1831. package/dist/lib/virtualized/selection-counts.js +1 -0
  1832. package/dist/lib/virtualized/selection-counts.js.map +1 -0
  1833. package/dist/lib/virtualized/useDataGrid.js +1 -0
  1834. package/dist/lib/virtualized/useDataGrid.js.map +1 -0
  1835. package/dist/lib/virtualized/useDataSource.js +1 -0
  1836. package/dist/lib/virtualized/useDataSource.js.map +1 -0
  1837. package/dist/lib/virtualized/useDebouncedValue.js +1 -0
  1838. package/dist/lib/virtualized/useDebouncedValue.js.map +1 -0
  1839. package/dist/lib/virtualized/useRowState.js +1 -0
  1840. package/dist/lib/virtualized/useRowState.js.map +1 -0
  1841. package/dist/lib/virtualized/useVirtualizedList.js +1 -0
  1842. package/dist/lib/virtualized/useVirtualizedList.js.map +1 -0
  1843. package/dist/lib/virtualized/useVirtualizedRows.js +1 -0
  1844. package/dist/lib/virtualized/useVirtualizedRows.js.map +1 -0
  1845. package/package.json +25 -3
  1846. package/dist/components/ui/ag-grid-react/process-backend-columndefs.js +0 -76
  1847. package/dist/icons/assets/webp/Checkmark_success.webp.js +0 -4
  1848. package/dist/icons/assets/webp/csv-logo.webp.js +0 -4
  1849. package/dist/icons/assets/webp/excel-logo.webp.js +0 -4
  1850. package/dist/icons/assets/webp/loadingSimulation.mp4.js +0 -4
  1851. package/dist/icons/assets/webp/text-logo.webp.js +0 -4
  1852. /package/dist/{ia-logo.svg → IA.svg} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-palette.js","sources":["impact-nova/src/components/ui/command-palette/command-palette.tsx"],"sourcesContent":["/**\n * CommandPalette — The ⌘K overlay with search, grouped results, and keyboard navigation.\n *\n * Built from scratch using existing impact-nova Dialog, Input, and Separator components.\n * Implements fuzzy search, keyboard navigation (↑↓ Enter Esc), recently-used sorting,\n * and displays shortcut badges via the Kbd component.\n *\n * Sub-components exported:\n * CommandPalette, CommandPaletteInput, CommandPaletteList,\n * CommandPaletteGroup, CommandPaletteItem, CommandPaletteShortcut,\n * CommandPaletteEmpty, CommandPaletteSeparator, CommandPaletteFooter\n */\n\nimport * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\nimport { Search } from \"lucide-react\";\nimport { cn } from \"@/lib/utils\";\nimport { useCommandPalette } from \"./command-palette-context\";\nimport { Kbd } from \"./kbd\";\nimport type { CommandDefinition, KeyBinding } from \"./utils\";\nimport { buildCommandPaletteLayout } from \"./command-palette-layout\";\nimport {\n COMMAND_SOURCE_LABELS,\n fuzzyFilter,\n keybindingToSymbols,\n} from \"./utils\";\n\n// ─── Internal Context (for compound component pattern) ──────────────────────\n\ninterface CommandPaletteLabels {\n /** Placeholder text for the search input */\n placeholder?: string;\n /** Title shown when no results are found */\n emptyTitle?: string;\n /** Description shown when no results are found */\n emptyDescription?: string;\n /** Group heading for recently used commands */\n recentGroupLabel?: string;\n /** Group heading for searched commands when no category is present */\n defaultGroupLabel?: string;\n /** Label for the navigation hint in the footer */\n navigateLabel?: string;\n /** Label for the execution hint in the footer */\n runLabel?: string;\n /** Label for the close hint in the footer */\n closeLabel?: string;\n /** Label for the configure shortcuts hint in the footer */\n configureShortcutsLabel?: string;\n}\n\ninterface CommandPaletteInternalContext extends CommandPaletteLabels {\n query: string;\n setQuery: (query: string) => void;\n selectedIndex: number;\n setSelectedIndex: (index: number) => void;\n /** Top-to-bottom row order (matches groups); use for custom list UIs */\n orderedCommands: CommandDefinition[];\n onExecute: (command: CommandDefinition) => void;\n}\n\n/** Sources that are external / not from the application itself */\nconst EXTERNAL_SOURCES = new Set([\"browser\", \"system\", \"ag-grid\"]);\n\nfunction isExternalSource(source?: string): boolean {\n return !!source && EXTERNAL_SOURCES.has(source);\n}\n\nconst InternalContext = React.createContext<CommandPaletteInternalContext>({\n query: \"\",\n setQuery: () => {},\n selectedIndex: 0,\n setSelectedIndex: () => {},\n orderedCommands: [],\n onExecute: () => {},\n});\n\n// ─── CommandPalette (Root) ──────────────────────────────────────────────────\n\nexport interface CommandPaletteProps extends CommandPaletteLabels {\n className?: string;\n children?: React.ReactNode;\n /** Custom list of commands (overrides automatic registry commands) */\n commands?: CommandDefinition[];\n /** Called when a command is executed */\n onCommandExecute?: (command: CommandDefinition) => void;\n /** Called when the palette opens/closes */\n onOpenChange?: (open: boolean) => void;\n}\n\nfunction CommandPalette({\n className,\n children,\n commands: externalCommands,\n placeholder = \"Type a command or search...\",\n emptyTitle = \"No results found\",\n emptyDescription = \"Try a different search term\",\n recentGroupLabel = \"Recently Used\",\n defaultGroupLabel = \"Commands\",\n navigateLabel = \"Navigate\",\n runLabel = \"Run\",\n closeLabel = \"Close\",\n configureShortcutsLabel = \"Configure Shortcuts\",\n onCommandExecute,\n onOpenChange,\n}: CommandPaletteProps) {\n const {\n open,\n setOpen,\n getPaletteCommands,\n getEffectiveKeybinding,\n registry,\n } = useCommandPalette();\n const [query, setQuery] = React.useState(\"\");\n const [selectedIndex, setSelectedIndex] = React.useState(0);\n const inputRef = React.useRef<HTMLInputElement>(null);\n const listRef = React.useRef<HTMLDivElement>(null);\n\n // Get commands (external or from registry), filtering out browser and system shortcuts\n const allCommands = React.useMemo(() => {\n const commands = externalCommands ?? getPaletteCommands();\n // Only show user and ag-grid (table) shortcuts\n return commands.filter((cmd) => {\n const source = cmd.source ?? \"user\";\n return source === \"user\" || source === \"ag-grid\";\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [externalCommands, open]);\n\n // Fuzzy filter\n const filteredItems = React.useMemo(() => {\n const results = fuzzyFilter(\n allCommands,\n query,\n (cmd) =>\n `${cmd.category ? cmd.category + \": \" : \"\"}${cmd.label}${cmd.description ? \" \" + cmd.description : \"\"}`,\n );\n\n // Sort: recently used first (when no query)\n if (!query.trim()) {\n const recentIds = registry.getRecentCommandIds();\n const recentSet = new Set(recentIds);\n const recent: typeof results = [];\n const rest: typeof results = [];\n\n for (const r of results) {\n if (recentSet.has(r.item.id)) {\n recent.push(r);\n } else {\n rest.push(r);\n }\n }\n\n // Sort recents by their recency order\n recent.sort(\n (a, b) => recentIds.indexOf(a.item.id) - recentIds.indexOf(b.item.id),\n );\n return [...recent, ...rest];\n }\n\n return results;\n }, [allCommands, query, registry]);\n\n const filteredCommands = React.useMemo(\n () => filteredItems.map((r) => r.item),\n [filteredItems],\n );\n\n const layout = React.useMemo(\n () =>\n buildCommandPaletteLayout({\n filteredCommands,\n emptyQuery: !query.trim(),\n recentCommandIds: registry.getRecentCommandIds(),\n recentGroupLabel,\n defaultGroupLabel,\n }),\n [filteredCommands, query, registry, recentGroupLabel, defaultGroupLabel],\n );\n\n const { groups: layoutGroups, orderedCommands } = layout;\n\n /** Latest row list + selection for key handlers (avoids stale Enter vs. arrows). */\n const navigationRef = React.useRef({\n ordered: orderedCommands,\n index: selectedIndex,\n });\n navigationRef.current = { ordered: orderedCommands, index: selectedIndex };\n\n // Reset state when opening\n React.useEffect(() => {\n if (open) {\n setQuery(\"\");\n setSelectedIndex(0);\n // Focus input after dialog animation\n requestAnimationFrame(() => {\n inputRef.current?.focus();\n });\n }\n }, [open]);\n\n // Handle open change\n const handleOpenChange = (newOpen: boolean) => {\n setOpen(newOpen);\n onOpenChange?.(newOpen);\n };\n\n // Execute a command\n const handleExecute = React.useCallback(\n (command: CommandDefinition) => {\n command.handler();\n registry.addRecentCommand(command.id);\n onCommandExecute?.(command);\n handleOpenChange(false);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n },\n [registry, onCommandExecute],\n );\n\n // Keyboard navigation: indices always match `orderedCommands` / on-screen rows\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n const { ordered } = navigationRef.current;\n const last = Math.max(ordered.length - 1, 0);\n switch (event.key) {\n case \"ArrowDown\": {\n event.preventDefault();\n setSelectedIndex((prev) => Math.min(prev + 1, last));\n break;\n }\n case \"ArrowUp\": {\n event.preventDefault();\n setSelectedIndex((prev) => Math.max(prev - 1, 0));\n break;\n }\n case \"Enter\": {\n event.preventDefault();\n const { ordered: o, index: i } = navigationRef.current;\n const cmd = o[i];\n if (cmd) handleExecute(cmd);\n break;\n }\n case \"Home\": {\n event.preventDefault();\n setSelectedIndex(0);\n break;\n }\n case \"End\": {\n event.preventDefault();\n setSelectedIndex(last);\n break;\n }\n }\n },\n [handleExecute],\n );\n\n // Reset selected index when filter changes\n React.useEffect(() => {\n setSelectedIndex(0);\n }, [query]);\n\n // Keep index in range if row count drops without a query change\n React.useEffect(() => {\n const n = orderedCommands.length;\n setSelectedIndex((prev) => (n === 0 ? 0 : Math.min(prev, n - 1)));\n }, [orderedCommands.length]);\n\n // Keep the active row in view before paint (useEffect runs after paint and feels like a hang/jump)\n React.useLayoutEffect(() => {\n const listEl = listRef.current;\n if (!listEl) return;\n const selectedEl = listEl.querySelector<HTMLElement>(\n '[data-selected=\"true\"]',\n );\n if (!selectedEl) return;\n selectedEl.scrollIntoView({\n block: \"nearest\",\n inline: \"nearest\",\n behavior: \"auto\",\n });\n }, [selectedIndex]);\n\n const internalContext = React.useMemo<CommandPaletteInternalContext>(\n () => ({\n query,\n setQuery,\n selectedIndex,\n setSelectedIndex,\n orderedCommands,\n onExecute: handleExecute,\n placeholder,\n emptyTitle,\n emptyDescription,\n recentGroupLabel,\n defaultGroupLabel,\n navigateLabel,\n runLabel,\n closeLabel,\n configureShortcutsLabel,\n }),\n [\n query,\n selectedIndex,\n orderedCommands,\n handleExecute,\n placeholder,\n emptyTitle,\n emptyDescription,\n recentGroupLabel,\n defaultGroupLabel,\n navigateLabel,\n runLabel,\n closeLabel,\n configureShortcutsLabel,\n ],\n );\n\n // If using compound children, render them; otherwise render default UI\n const hasChildren = React.Children.count(children) > 0;\n\n return (\n <DialogPrimitive.Root open={open} onOpenChange={handleOpenChange}>\n <DialogPrimitive.Portal>\n <DialogPrimitive.Overlay className=\"fixed inset-0 z-50 bg-scrim data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\" />\n <DialogPrimitive.Content\n aria-describedby={undefined}\n data-command-palette\n data-component=\"command-palette\"\n onKeyDown={handleKeyDown}\n className={cn(\n \"fixed left-[50%] top-[20%] z-50 w-full max-w-[640px] -translate-x-1/2\",\n \"rounded-xl border border-stroke-hairline bg-canvas-elevated shadow-2xl overflow-hidden\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out\",\n \"data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n \"data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95\",\n // Pin translate-x at -50% during animation so it stays centered (no horizontal slide)\n \"data-[state=open]:slide-in-from-left-1/2 data-[state=closed]:slide-out-to-left-1/2\",\n \"duration-150\",\n className,\n )}\n style={{ transformOrigin: \"top center\" }}\n >\n <DialogPrimitive.Title className=\"sr-only\">\n Command Palette\n </DialogPrimitive.Title>\n <InternalContext.Provider value={internalContext}>\n {hasChildren ? (\n children\n ) : (\n <>\n <CommandPaletteInput ref={inputRef} placeholder={placeholder} />\n <CommandPaletteList ref={listRef}>\n {orderedCommands.length === 0 ? (\n <CommandPaletteEmpty />\n ) : (\n layoutGroups.map((group, groupIndex) => (\n <React.Fragment\n key={`${group.heading}-${group.rowStart}`}\n >\n {groupIndex > 0 && <CommandPaletteSeparator />}\n <CommandPaletteGroup heading={group.heading}>\n {group.items.map((cmd, i) => {\n const rowIndex = group.rowStart + i;\n const kb = getEffectiveKeybinding(cmd.id);\n return (\n <CommandPaletteItem\n key={cmd.id}\n command={cmd}\n isSelected={rowIndex === selectedIndex}\n onSelect={() => handleExecute(cmd)}\n onMouseEnter={() => setSelectedIndex(rowIndex)}\n keybinding={kb}\n />\n );\n })}\n </CommandPaletteGroup>\n </React.Fragment>\n ))\n )}\n </CommandPaletteList>\n <CommandPaletteFooter />\n </>\n )}\n </InternalContext.Provider>\n </DialogPrimitive.Content>\n </DialogPrimitive.Portal>\n </DialogPrimitive.Root>\n );\n}\nCommandPalette.displayName = \"CommandPalette\";\n\n// ─── CommandPaletteInput ────────────────────────────────────────────────────\n\nexport interface CommandPaletteInputProps extends Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"onChange\"\n> {\n onValueChange?: (value: string) => void;\n}\n\nconst CommandPaletteInput = React.forwardRef<\n HTMLInputElement,\n CommandPaletteInputProps\n>(({ className, placeholder, onValueChange, ...props }, ref) => {\n const { query, setQuery } = React.useContext(InternalContext);\n\n return (\n <div\n className={cn(\n \"flex items-center gap-3 border-b border-stroke-hairline px-4\",\n className,\n )}\n data-command-palette-input\n >\n <Search className=\"h-4 w-4 shrink-0 text-content-muted\" />\n <input\n ref={ref}\n value={query}\n onChange={(e) => {\n setQuery(e.target.value);\n onValueChange?.(e.target.value);\n }}\n placeholder={placeholder}\n autoComplete=\"off\"\n autoCorrect=\"off\"\n spellCheck={false}\n className={cn(\n \"flex h-12 w-full bg-transparent py-3 text-sm font-medium outline-none\",\n \"placeholder:text-content-muted\",\n )}\n {...props}\n />\n <Kbd\n keybinding={{ key: \"Escape\" }}\n size=\"sm\"\n variant=\"muted\"\n className=\"shrink-0\"\n />\n </div>\n );\n});\nCommandPaletteInput.displayName = \"CommandPaletteInput\";\n\n// ─── CommandPaletteList ─────────────────────────────────────────────────────\n\nconst CommandPaletteList = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n role=\"listbox\"\n data-command-palette-list\n className={cn(\n \"max-h-[360px] overflow-y-auto overscroll-contain py-1\",\n className,\n )}\n {...props}\n >\n {children}\n </div>\n));\nCommandPaletteList.displayName = \"CommandPaletteList\";\n\n// ─── CommandPaletteGroup ────────────────────────────────────────────────────\n\nexport interface CommandPaletteGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n heading?: string;\n}\n\nconst CommandPaletteGroup = React.forwardRef<\n HTMLDivElement,\n CommandPaletteGroupProps\n>(({ className, heading, children, ...props }, ref) => (\n <div\n ref={ref}\n role=\"group\"\n aria-label={heading}\n data-command-palette-group\n className={cn(\"py-1\", className)}\n {...props}\n >\n {heading && (\n <div className=\"px-4 py-1.5 text-[10px] font-semibold uppercase tracking-wider text-content-muted\">\n {heading}\n </div>\n )}\n {children}\n </div>\n));\nCommandPaletteGroup.displayName = \"CommandPaletteGroup\";\n\n// ─── Source Badge (subtle origin indicator) ─────────────────────────────────\n\nfunction SourceBadge({\n source,\n isSelected,\n}: {\n source?: string;\n isSelected?: boolean;\n}) {\n if (!source || source === \"user\") return null;\n const label =\n COMMAND_SOURCE_LABELS[source as keyof typeof COMMAND_SOURCE_LABELS];\n if (!label) return null;\n\n return (\n <span\n className={cn(\n \"shrink-0 rounded px-1.5 py-px text-[9px] font-medium leading-tight tracking-wide\",\n isSelected\n ? \"text-brand-foreground/50\"\n : \"text-content-muted border border-stroke-hairline\",\n )}\n >\n {label}\n </span>\n );\n}\n\n// ─── CommandPaletteItem ─────────────────────────────────────────────────────\n\nexport interface CommandPaletteItemProps extends Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"onSelect\"\n> {\n command: CommandDefinition;\n isSelected?: boolean;\n onSelect?: () => void;\n keybinding?: KeyBinding;\n}\n\nconst CommandPaletteItem = React.forwardRef<\n HTMLDivElement,\n CommandPaletteItemProps\n>(({ className, command, isSelected, onSelect, keybinding, ...props }, ref) => {\n const external = isExternalSource(command.source);\n\n return (\n <div\n ref={ref}\n role=\"option\"\n aria-selected={isSelected}\n data-selected={isSelected}\n data-command-palette-item\n data-command-id={command.id}\n onClick={onSelect}\n className={cn(\n \"flex items-center gap-3 cursor-pointer px-4 py-2 text-sm\",\n // Smooth selection shift; scroll-margin keeps row clear of list edges when scrolling into view\n \"transition-[color,background-color] duration-150 ease-out [scroll-margin-block:6px]\",\n isSelected\n ? \"bg-brand text-brand-foreground\"\n : external\n ? \"text-content-muted hover:bg-canvas-muted\"\n : \"text-content-charcoal hover:bg-canvas-muted\",\n className,\n )}\n {...props}\n >\n {/* Icon */}\n {command.icon && (\n <span\n className={cn(\n \"flex h-4 w-4 shrink-0 items-center justify-center\",\n isSelected\n ? \"text-brand-foreground\"\n : external\n ? \"text-stroke-hairline\"\n : \"text-content-muted\",\n )}\n >\n {command.icon}\n </span>\n )}\n\n {/* Label + Description */}\n <div className=\"flex flex-1 flex-col min-w-0\">\n <span\n className={cn(\n \"truncate\",\n external && !isSelected ? \"font-normal\" : \"font-medium\",\n )}\n >\n {command.label}\n </span>\n {command.description && (\n <span\n className={cn(\n \"truncate text-xs\",\n isSelected\n ? \"text-brand-foreground/70\"\n : external\n ? \"text-stroke-hairline\"\n : \"text-content-muted\",\n )}\n >\n {command.description}\n </span>\n )}\n </div>\n\n {/* Source badge */}\n <SourceBadge source={command.source} isSelected={isSelected} />\n\n {/* Shortcut badge */}\n {keybinding && (\n <CommandPaletteShortcut\n keybinding={keybinding}\n isSelected={isSelected}\n external={external}\n />\n )}\n </div>\n );\n});\nCommandPaletteItem.displayName = \"CommandPaletteItem\";\n\n// ─── CommandPaletteShortcut ─────────────────────────────────────────────────\n\nexport interface CommandPaletteShortcutProps extends React.HTMLAttributes<HTMLSpanElement> {\n keybinding: KeyBinding;\n isSelected?: boolean;\n external?: boolean;\n}\n\nfunction CommandPaletteShortcut({\n keybinding,\n isSelected,\n external,\n className,\n ...props\n}: CommandPaletteShortcutProps) {\n const symbols = keybindingToSymbols(keybinding);\n\n return (\n <span\n className={cn(\"ml-auto flex items-center gap-0.5 shrink-0\", className)}\n data-command-palette-shortcut\n {...props}\n >\n {symbols.map((symbol, index) => (\n <kbd\n key={`${symbol}-${index}`}\n className={cn(\n \"inline-flex min-w-[20px] items-center justify-center rounded px-1 h-[20px] text-[10px] font-mono leading-none\",\n \"transition-[color,background-color,border-color] duration-150 ease-out\",\n isSelected\n ? \"bg-canvas-elevated/20 text-brand-foreground border border-brand-foreground/30\"\n : external\n ? \"bg-canvas-muted text-stroke-hairline border border-stroke-hairline\"\n : \"bg-canvas-muted text-content-muted border border-stroke-hairline\",\n )}\n >\n {symbol}\n </kbd>\n ))}\n </span>\n );\n}\nCommandPaletteShortcut.displayName = \"CommandPaletteShortcut\";\n\n// ─── CommandPaletteEmpty ────────────────────────────────────────────────────\n\nfunction CommandPaletteEmpty({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) {\n const { emptyTitle, emptyDescription } = React.useContext(InternalContext);\n return (\n <div\n data-command-palette-empty\n className={cn(\n \"flex flex-col items-center justify-center py-12 text-center text-sm text-content-muted\",\n className,\n )}\n {...props}\n >\n <Search className=\"h-8 w-8 mb-3 text-stroke-hairline\" />\n <p className=\"font-medium\">{emptyTitle}</p>\n <p className=\"text-xs mt-1\">{emptyDescription}</p>\n </div>\n );\n}\nCommandPaletteEmpty.displayName = \"CommandPaletteEmpty\";\n\n// ─── CommandPaletteSeparator ────────────────────────────────────────────────\n\nfunction CommandPaletteSeparator({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) {\n return (\n <div\n data-command-palette-separator\n className={cn(\"h-px bg-stroke-hairline mx-2\", className)}\n {...props}\n />\n );\n}\nCommandPaletteSeparator.displayName = \"CommandPaletteSeparator\";\n\n// ─── CommandPaletteFooter ───────────────────────────────────────────────────\n\nfunction CommandPaletteFooter({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) {\n const { navigateLabel, runLabel, closeLabel, configureShortcutsLabel } =\n React.useContext(InternalContext);\n return (\n <div\n data-command-palette-footer\n className={cn(\n \"flex items-center gap-4 border-t border-stroke-hairline px-4 py-2 text-[11px] text-content-muted\",\n className,\n )}\n {...props}\n >\n <span className=\"inline-flex items-center gap-1\">\n <Kbd keys={[\"↑\"]} size=\"sm\" variant=\"muted\" />\n <Kbd keys={[\"↓\"]} size=\"sm\" variant=\"muted\" />\n <span>{navigateLabel}</span>\n </span>\n <span className=\"inline-flex items-center gap-1\">\n <Kbd keys={[\"↵\"]} size=\"sm\" variant=\"muted\" />\n <span>{runLabel}</span>\n </span>\n <span className=\"inline-flex items-center gap-1\">\n <Kbd keys={[\"Escape\"]} size=\"sm\" variant=\"muted\" />\n <span>{closeLabel}</span>\n </span>\n {configureShortcutsLabel && (\n <span className=\"ml-auto inline-flex items-center gap-1\">\n <Kbd keybinding={{ key: \"k\", alt: true }} size=\"sm\" variant=\"muted\" />\n <span>{configureShortcutsLabel}</span>\n </span>\n )}\n </div>\n );\n}\nCommandPaletteFooter.displayName = \"CommandPaletteFooter\";\n\n// ─── Exports ────────────────────────────────────────────────────────────────\n\nexport {\n CommandPalette,\n CommandPaletteInput,\n CommandPaletteList,\n CommandPaletteGroup,\n CommandPaletteItem,\n CommandPaletteShortcut,\n CommandPaletteEmpty,\n CommandPaletteSeparator,\n CommandPaletteFooter,\n};\n"],"names":["EXTERNAL_SOURCES","isExternalSource","source","InternalContext","React","CommandPalette","className","children","externalCommands","placeholder","emptyTitle","emptyDescription","recentGroupLabel","defaultGroupLabel","navigateLabel","runLabel","closeLabel","configureShortcutsLabel","onCommandExecute","onOpenChange","open","setOpen","getPaletteCommands","getEffectiveKeybinding","registry","useCommandPalette","query","setQuery","selectedIndex","setSelectedIndex","inputRef","listRef","allCommands","cmd","filteredItems","results","fuzzyFilter","recentIds","recentSet","recent","rest","r","a","b","filteredCommands","layout","buildCommandPaletteLayout","layoutGroups","orderedCommands","navigationRef","handleOpenChange","newOpen","handleExecute","command","handleKeyDown","event","ordered","last","prev","o","i","n","listEl","selectedEl","internalContext","hasChildren","jsx","DialogPrimitive","jsxs","cn","Fragment","CommandPaletteInput","CommandPaletteList","CommandPaletteEmpty","group","groupIndex","CommandPaletteSeparator","CommandPaletteGroup","rowIndex","kb","CommandPaletteItem","CommandPaletteFooter","onValueChange","props","ref","Search","e","Kbd","heading","SourceBadge","isSelected","label","COMMAND_SOURCE_LABELS","onSelect","keybinding","external","CommandPaletteShortcut","symbols","keybindingToSymbols","symbol","index"],"mappings":"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"}
@@ -51,3 +51,4 @@ export {
51
51
  R as useShortcut,
52
52
  V as useShortcutOverlay
53
53
  };
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
@@ -50,3 +50,4 @@ export {
50
50
  h as Kbd,
51
51
  b as kbdVariants
52
52
  };
53
+ //# sourceMappingURL=kbd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kbd.js","sources":["impact-nova/src/components/ui/command-palette/kbd.tsx"],"sourcesContent":["/**\n * Kbd — Keyboard key badge component.\n *\n * Renders individual key caps (e.g. ⌘, ⇧, K) as styled <kbd> elements.\n * Automatically maps modifier names to platform-appropriate symbols.\n *\n * Usage:\n * <Kbd keys={['meta', 'shift', 'P']} />\n * // Renders: [⌘] [⇧] [P] on Mac, [Ctrl] [Shift] [P] on Windows\n *\n * <Kbd keybinding={{ key: 'k', meta: true }} />\n * // Renders: [⌘] [K] on Mac, [Ctrl] [K] on Windows\n */\n\nimport * as React from 'react';\nimport { cva, type VariantProps } from 'class-variance-authority';\nimport { cn } from '@/lib/utils';\nimport { keybindingToSymbols, getKeySymbol, type KeyBinding } from './utils';\n\nconst kbdVariants = cva(\n 'inline-flex items-center justify-center rounded border font-mono leading-none select-none',\n {\n variants: {\n size: {\n sm: 'min-w-[18px] h-[18px] px-1 text-[10px]',\n default: 'min-w-[22px] h-[22px] px-1.5 text-[11px]',\n lg: 'min-w-[26px] h-[26px] px-2 text-xs',\n },\n variant: {\n default: 'bg-canvas-muted border-stroke-hairline text-content-charcoal shadow-[0_1px_0_0_var(--color-border-hairline)]',\n muted: 'bg-stroke-hairline border-stroke-hairline text-content-muted',\n dark: 'bg-content text-canvas border-stroke shadow-[0_1px_0_0_hsl(0_0%_0%_/_0.25)]',\n },\n },\n defaultVariants: {\n size: 'default',\n variant: 'default',\n },\n }\n);\n\n// ─── Types ──────────────────────────────────────────────────────────────────\n\nexport interface KbdProps\n extends Omit<React.HTMLAttributes<HTMLElement>, 'children'>,\n VariantProps<typeof kbdVariants> {\n /** Array of key names/symbols to render. e.g. ['meta', 'shift', 'P'] */\n keys?: string[];\n /** Or provide a KeyBinding object directly */\n keybinding?: KeyBinding;\n}\n\n// ─── Component ──────────────────────────────────────────────────────────────\n\nconst Kbd = React.forwardRef<HTMLElement, KbdProps>(\n ({ className, keys, keybinding, size, variant, ...props }, ref) => {\n const symbols = React.useMemo(() => {\n if (keybinding) {\n return keybindingToSymbols(keybinding);\n }\n if (keys) {\n return keys.map(k => getKeySymbol(k));\n }\n return [];\n }, [keys, keybinding]);\n\n if (symbols.length === 0) return null;\n\n return (\n <span\n ref={ref as React.Ref<HTMLSpanElement>}\n className={cn('inline-flex items-center gap-0.5', className)}\n data-component=\"kbd\"\n {...props}\n >\n {symbols.map((symbol, index) => (\n <kbd\n key={`${symbol}-${index}`}\n className={cn(kbdVariants({ size, variant }))}\n >\n {symbol}\n </kbd>\n ))}\n </span>\n );\n }\n);\nKbd.displayName = 'Kbd';\n\nexport { Kbd, kbdVariants };\n"],"names":["kbdVariants","cva","Kbd","React","className","keys","keybinding","size","variant","props","ref","symbols","keybindingToSymbols","k","getKeySymbol","jsx","cn","symbol","index"],"mappings":";;;;;AAmBA,MAAMA,IAAcC;AAAA,EAClB;AAAA,EACA;AAAA,IACE,UAAU;AAAA,MACR,MAAM;AAAA,QACJ,IAAI;AAAA,QACJ,SAAS;AAAA,QACT,IAAI;AAAA,MAAA;AAAA,MAEN,SAAS;AAAA,QACP,SAAS;AAAA,QACT,OAAO;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,IAEF,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,SAAS;AAAA,IAAA;AAAA,EACX;AAEJ,GAeMC,IAAMC,EAAM;AAAA,EAChB,CAAC,EAAE,WAAAC,GAAW,MAAAC,GAAM,YAAAC,GAAY,MAAAC,GAAM,SAAAC,GAAS,GAAGC,EAAA,GAASC,MAAQ;AACjE,UAAMC,IAAUR,EAAM,QAAQ,MACxBG,IACKM,EAAoBN,CAAU,IAEnCD,IACKA,EAAK,IAAI,CAAAQ,MAAKC,EAAaD,CAAC,CAAC,IAE/B,CAAA,GACN,CAACR,GAAMC,CAAU,CAAC;AAErB,WAAIK,EAAQ,WAAW,IAAU,OAG/B,gBAAAI;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,KAAAL;AAAA,QACA,WAAWM,EAAG,oCAAoCZ,CAAS;AAAA,QAC3D,kBAAe;AAAA,QACd,GAAGK;AAAA,QAEH,UAAAE,EAAQ,IAAI,CAACM,GAAQC,MACpB,gBAAAH;AAAA,UAAC;AAAA,UAAA;AAAA,YAEC,WAAWC,EAAGhB,EAAY,EAAE,MAAAO,GAAM,SAAAC,EAAA,CAAS,CAAC;AAAA,YAE3C,UAAAS;AAAA,UAAA;AAAA,UAHI,GAAGA,CAAM,IAAIC,CAAK;AAAA,QAAA,CAK1B;AAAA,MAAA;AAAA,IAAA;AAAA,EAGP;AACF;AACAhB,EAAI,cAAc;"}
@@ -26,3 +26,4 @@ export {
26
26
  n as ShortcutOverlayProvider,
27
27
  y as useShortcutOverlay
28
28
  };
29
+ //# sourceMappingURL=shortcut-overlay-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcut-overlay-context.js","sources":["impact-nova/src/components/ui/command-palette/shortcut-overlay-context.tsx"],"sourcesContent":["/* eslint-disable react-refresh/only-export-components */\n/**\n * ShortcutOverlayProvider — React context for the Excel-like \"Key Tips\" overlay.\n *\n * Manages visibility state for the shortcut overlay, which displays\n * keyboard shortcut badges next to their associated UI elements.\n */\n\nimport * as React from 'react';\n\n// ─── Context Value ──────────────────────────────────────────────────────────\n\nexport interface ShortcutOverlayContextValue {\n /** Whether the shortcut overlay is currently visible */\n isOverlayVisible: boolean;\n /** Set overlay visibility explicitly */\n setOverlayVisible: (visible: boolean) => void;\n /** Toggle overlay visibility */\n toggleOverlay: () => void;\n}\n\nconst ShortcutOverlayContext = React.createContext<ShortcutOverlayContextValue | null>(null);\n\n// ─── Provider ───────────────────────────────────────────────────────────────\n\nexport interface ShortcutOverlayProviderProps {\n children: React.ReactNode;\n}\n\nexport function ShortcutOverlayProvider({ children }: ShortcutOverlayProviderProps) {\n const [isOverlayVisible, setIsOverlayVisible] = React.useState(false);\n\n const setOverlayVisible = React.useCallback((visible: boolean) => {\n setIsOverlayVisible(visible);\n }, []);\n\n const toggleOverlay = React.useCallback(() => {\n setIsOverlayVisible(prev => !prev);\n }, []);\n\n const contextValue = React.useMemo<ShortcutOverlayContextValue>(() => ({\n isOverlayVisible,\n setOverlayVisible,\n toggleOverlay,\n }), [isOverlayVisible, setOverlayVisible, toggleOverlay]);\n\n return (\n <ShortcutOverlayContext.Provider value={contextValue}>\n {children}\n </ShortcutOverlayContext.Provider>\n );\n}\nShortcutOverlayProvider.displayName = 'ShortcutOverlayProvider';\n\n// ─── Hook ───────────────────────────────────────────────────────────────────\n\nexport function useShortcutOverlay(): ShortcutOverlayContextValue {\n const context = React.useContext(ShortcutOverlayContext);\n if (!context) {\n throw new Error(\n 'useShortcutOverlay must be used within a <ShortcutOverlayProvider>. ' +\n 'Wrap your application root with <ShortcutOverlayProvider>.'\n );\n }\n return context;\n}\n"],"names":["ShortcutOverlayContext","React","ShortcutOverlayProvider","children","isOverlayVisible","setIsOverlayVisible","setOverlayVisible","visible","toggleOverlay","prev","contextValue","useShortcutOverlay","context"],"mappings":";;AAqBA,MAAMA,IAAyBC,EAAM,cAAkD,IAAI;AAQpF,SAASC,EAAwB,EAAE,UAAAC,KAA0C;AAClF,QAAM,CAACC,GAAkBC,CAAmB,IAAIJ,EAAM,SAAS,EAAK,GAE9DK,IAAoBL,EAAM,YAAY,CAACM,MAAqB;AAChE,IAAAF,EAAoBE,CAAO;AAAA,EAC7B,GAAG,CAAA,CAAE,GAECC,IAAgBP,EAAM,YAAY,MAAM;AAC5C,IAAAI,EAAoB,CAAAI,MAAQ,CAACA,CAAI;AAAA,EACnC,GAAG,CAAA,CAAE,GAECC,IAAeT,EAAM,QAAqC,OAAO;AAAA,IACrE,kBAAAG;AAAA,IACA,mBAAAE;AAAA,IACA,eAAAE;AAAA,EAAA,IACE,CAACJ,GAAkBE,GAAmBE,CAAa,CAAC;AAExD,2BACGR,EAAuB,UAAvB,EAAgC,OAAOU,GACrC,UAAAP,GACH;AAEJ;AACAD,EAAwB,cAAc;AAI/B,SAASS,IAAkD;AAChE,QAAMC,IAAUX,EAAM,WAAWD,CAAsB;AACvD,MAAI,CAACY;AACH,UAAM,IAAI;AAAA,MACR;AAAA,IAAA;AAIJ,SAAOA;AACT;"}
@@ -170,3 +170,4 @@ D.displayName = "ShortcutOverlay";
170
170
  export {
171
171
  D as ShortcutOverlay
172
172
  };
173
+ //# sourceMappingURL=shortcut-overlay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcut-overlay.js","sources":["impact-nova/src/components/ui/command-palette/shortcut-overlay.tsx"],"sourcesContent":["/**\n * ShortcutOverlay — Excel-like \"Key Tips\" overlay.\n *\n * When visible, scans the DOM for elements with `[data-shortcut-id]`,\n * resolves their effective keybindings from the command palette registry,\n * and renders floating Kbd badges positioned next to each element.\n *\n * Performance notes:\n * - No `elementFromPoint` / forced reflows — uses containment checks only.\n * - MutationObserver (childList on body) detects panel open/close cheaply.\n * - All rescans are debounced via a single `requestAnimationFrame`.\n *\n * Dismiss: click backdrop, press Escape, or re-trigger the shortcut.\n */\n\nimport * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport { useShortcutOverlay } from './shortcut-overlay-context';\nimport { useCommandPalette } from './command-palette-context';\nimport { Kbd } from './kbd';\nimport type { KeyBinding } from './utils';\n\n// ─── Types ──────────────────────────────────────────────────────────────────\n\ninterface BadgePosition {\n id: string;\n keybinding: KeyBinding;\n /** Viewport-relative top (used with position: fixed) */\n top: number;\n /** Viewport-relative left */\n left: number;\n placement: 'above' | 'below';\n}\n\n/** Estimated badge height for overlap calculations */\nconst BADGE_H = 26;\n/** Estimated maximum badge width for horizontal clamping */\nconst BADGE_MAX_W = 80;\n/** Minimum gap between a badge and its anchor or viewport edge */\nconst GAP = 4;\n\n// ─── Helpers ─────────────────────────────────────────────────────────────────\n\n/**\n * Find the topmost open Radix dialog / sheet overlay, if any.\n * Checks both `role=\"dialog\"` (standard Radix) and\n * `data-component=\"sheet-content\"` (impact-nova Sheet) to be safe.\n * Returns the element or `null` when no overlay is active.\n */\nfunction findTopmostOpenOverlay(): HTMLElement | null {\n // Radix Dialog/AlertDialog and Sheet all render with role=\"dialog\" data-state=\"open\".\n // Also check data-component=\"sheet-content\" as a fallback.\n const candidates = document.querySelectorAll<HTMLElement>(\n '[role=\"dialog\"][data-state=\"open\"], [role=\"alertdialog\"][data-state=\"open\"], [data-component=\"sheet-content\"][data-state=\"open\"]',\n );\n if (candidates.length === 0) return null;\n // Pick the last one in DOM order — Radix appends newer portals after older ones\n return candidates[candidates.length - 1];\n}\n\n/**\n * Resolve overlapping badges.\n *\n * Strategy (applied per-badge, top-to-bottom):\n * 1. If a badge collides with a previously-placed badge, flip it above↔below.\n * 2. If still colliding, nudge horizontally in increments until clear.\n * 3. Cap attempts to avoid infinite loops with dense layouts.\n */\nfunction resolveOverlaps(badges: BadgePosition[]): BadgePosition[] {\n if (badges.length <= 1) return badges;\n\n const sorted = [...badges].sort((a, b) => a.top - b.top || a.left - b.left);\n\n const collides = (a: BadgePosition, b: BadgePosition) =>\n Math.abs(a.left - b.left) < BADGE_MAX_W &&\n Math.abs(a.top - b.top) < BADGE_H + GAP;\n\n // Check against ALL previously placed badges (not just a sliding window)\n const collidesWithAny = (idx: number) =>\n sorted.slice(0, idx).some((prev) => collides(prev, sorted[idx]));\n\n for (let i = 1; i < sorted.length; i++) {\n if (!collidesWithAny(i)) continue;\n\n const curr = sorted[i];\n const origTop = curr.top;\n const origLeft = curr.left;\n const origPlacement = curr.placement;\n\n // Attempt 1: flip above ↔ below\n if (curr.placement === 'above') {\n curr.placement = 'below';\n curr.top = origTop + BADGE_H + 32 + GAP;\n } else {\n curr.placement = 'above';\n curr.top = origTop - BADGE_H - 32 - GAP;\n }\n if (!collidesWithAny(i)) continue;\n\n // Attempt 2: nudge down from original position in small increments\n // (most useful for sidebar vertical columns where badges stack)\n curr.placement = origPlacement;\n curr.left = origLeft;\n let resolved = false;\n for (let vNudge = 1; vNudge <= 6; vNudge++) {\n curr.top = origTop + (BADGE_H + GAP) * vNudge;\n if (!collidesWithAny(i)) { resolved = true; break; }\n }\n if (resolved) continue;\n\n // Attempt 3: nudge right in increments\n curr.top = origTop;\n for (let nudge = 1; nudge <= 4; nudge++) {\n curr.left = origLeft + (BADGE_MAX_W + GAP) * nudge;\n if (!collidesWithAny(i)) { resolved = true; break; }\n }\n if (resolved) continue;\n\n // Attempt 4: nudge up from original position\n curr.left = origLeft;\n for (let vNudge = 1; vNudge <= 4; vNudge++) {\n curr.top = origTop - (BADGE_H + GAP) * vNudge;\n if (!collidesWithAny(i)) break;\n }\n }\n\n return sorted;\n}\n\n/**\n * Clamp a badge position so it stays within the visible viewport.\n */\nfunction clampToViewport(badge: BadgePosition): BadgePosition {\n const vw = window.innerWidth;\n const vh = window.innerHeight;\n return {\n ...badge,\n top: Math.max(GAP, Math.min(badge.top, vh - BADGE_H - GAP)),\n left: Math.max(BADGE_MAX_W / 2, Math.min(badge.left, vw - BADGE_MAX_W / 2)),\n };\n}\n\n// ─── Component ──────────────────────────────────────────────────────────────\n\nexport function ShortcutOverlay() {\n const { isOverlayVisible, setOverlayVisible } = useShortcutOverlay();\n const { getEffectiveKeybinding, version } = useCommandPalette();\n const [badges, setBadges] = React.useState<BadgePosition[]>([]);\n // Counter bumped to force a re-scan (scroll, resize, DOM mutation)\n const [scanTick, setScanTick] = React.useState(0);\n\n // ── Scan DOM and compute badge positions ──\n React.useLayoutEffect(() => {\n if (!isOverlayVisible) {\n setBadges([]);\n return;\n }\n\n // When a dialog / sheet is open, only show badges for elements\n // INSIDE the topmost dialog — otherwise background badges bleed\n // through the backdrop (e.g. sidebar navigation shortcuts showing\n // on top of the filter panel).\n const topmostDialog = findTopmostOpenOverlay();\n const elements = document.querySelectorAll<HTMLElement>('[data-shortcut-id]');\n const positions: BadgePosition[] = [];\n\n elements.forEach((el) => {\n const shortcutId = el.getAttribute('data-shortcut-id');\n if (!shortcutId) return;\n\n // If a dialog is open, skip elements that are NOT inside it\n if (topmostDialog && !topmostDialog.contains(el)) return;\n\n // Skip hidden/invisible elements\n const style = window.getComputedStyle(el);\n if (\n style.display === 'none' ||\n style.visibility === 'hidden' ||\n style.opacity === '0'\n ) {\n return;\n }\n\n const rect = el.getBoundingClientRect();\n if (rect.width === 0 || rect.height === 0) return;\n\n // Skip elements completely outside the viewport\n if (\n rect.bottom < 0 ||\n rect.top > window.innerHeight ||\n rect.right < 0 ||\n rect.left > window.innerWidth\n ) {\n return;\n }\n\n const keybinding = getEffectiveKeybinding(shortcutId);\n if (!keybinding) return;\n\n // Viewport-relative centre X of the anchor\n const badgeLeft = rect.left + rect.width / 2;\n\n // Default: position above the element\n let placement: 'above' | 'below' = 'above';\n let badgeTop = rect.top - BADGE_H - GAP;\n\n // If above goes off-screen, place below instead\n if (badgeTop < GAP) {\n placement = 'below';\n badgeTop = rect.bottom + GAP;\n }\n\n positions.push({\n id: shortcutId,\n keybinding,\n top: badgeTop,\n left: badgeLeft,\n placement,\n });\n });\n\n setBadges(resolveOverlaps(positions).map(clampToViewport));\n }, [isOverlayVisible, getEffectiveKeybinding, version, scanTick]);\n\n // ── Escape key to dismiss ──\n React.useEffect(() => {\n if (!isOverlayVisible) return;\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.preventDefault();\n e.stopPropagation();\n setOverlayVisible(false);\n }\n };\n\n window.addEventListener('keydown', handleKeyDown, true);\n return () => window.removeEventListener('keydown', handleKeyDown, true);\n }, [isOverlayVisible, setOverlayVisible]);\n\n // ── Rescan on scroll, resize, and DOM mutations (panel open/close) ──\n React.useEffect(() => {\n if (!isOverlayVisible) return;\n\n let raf: number;\n const scheduleRescan = () => {\n cancelAnimationFrame(raf);\n raf = requestAnimationFrame(() => setScanTick((t) => t + 1));\n };\n\n window.addEventListener('scroll', scheduleRescan, true);\n window.addEventListener('resize', scheduleRescan);\n\n // MutationObserver detects when dialogs/sheets open or close.\n // - childList on body: Radix portals are added/removed as direct children.\n // - attributes (data-state): Radix toggles data-state=\"open\"/\"closed\" on\n // dialog elements inside portals. We watch subtree but filter to only\n // this one attribute to keep the cost minimal.\n const mo = new MutationObserver(scheduleRescan);\n mo.observe(document.body, {\n childList: true,\n subtree: true,\n attributes: true,\n attributeFilter: ['data-state'],\n });\n\n return () => {\n cancelAnimationFrame(raf);\n window.removeEventListener('scroll', scheduleRescan, true);\n window.removeEventListener('resize', scheduleRescan);\n mo.disconnect();\n };\n }, [isOverlayVisible]);\n\n if (!isOverlayVisible || badges.length === 0) return null;\n\n return createPortal(\n <>\n {/* Backdrop */}\n <div\n data-shortcut-overlay-backdrop=\"\"\n onClick={() => setOverlayVisible(false)}\n style={{\n position: 'fixed',\n inset: 0,\n backgroundColor: 'rgba(0, 0, 0, 0.06)',\n zIndex: 99998,\n cursor: 'default',\n }}\n />\n\n {/* Badges — styled to match the tooltip tertiary variant (dark bg, light text) */}\n {badges.map((badge) => (\n <div\n key={badge.id}\n data-shortcut-overlay-badge=\"\"\n style={{\n position: 'fixed',\n top: badge.top,\n left: badge.left,\n transform: 'translateX(-50%)',\n zIndex: 99999,\n pointerEvents: 'none',\n animation: badge.placement === 'below'\n ? 'shortcut-overlay-badge-in-below 0.15s ease-out'\n : 'shortcut-overlay-badge-in 0.15s ease-out',\n }}\n >\n <Kbd\n keybinding={badge.keybinding}\n size=\"sm\"\n variant=\"dark\"\n />\n </div>\n ))}\n\n {/* Animation keyframes */}\n <style>{`\n @keyframes shortcut-overlay-badge-in {\n from {\n opacity: 0;\n transform: translateX(-50%) translateY(4px);\n }\n to {\n opacity: 1;\n transform: translateX(-50%) translateY(0);\n }\n }\n @keyframes shortcut-overlay-badge-in-below {\n from {\n opacity: 0;\n transform: translateX(-50%) translateY(-4px);\n }\n to {\n opacity: 1;\n transform: translateX(-50%) translateY(0);\n }\n }\n `}</style>\n </>,\n document.body,\n );\n}\nShortcutOverlay.displayName = 'ShortcutOverlay';\n"],"names":["BADGE_H","BADGE_MAX_W","GAP","findTopmostOpenOverlay","candidates","resolveOverlaps","badges","sorted","a","b","collides","collidesWithAny","idx","prev","i","curr","origTop","origLeft","origPlacement","resolved","vNudge","nudge","clampToViewport","badge","vw","vh","ShortcutOverlay","isOverlayVisible","setOverlayVisible","useShortcutOverlay","getEffectiveKeybinding","version","useCommandPalette","setBadges","React","scanTick","setScanTick","topmostDialog","elements","positions","el","shortcutId","style","rect","keybinding","badgeLeft","placement","badgeTop","handleKeyDown","e","raf","scheduleRescan","t","mo","createPortal","jsxs","Fragment","jsx","Kbd"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { deserialiseOverrides as h, serialiseOverrides as u, isReservedShortcut as f, keybindingsEqual as m, scopePriority as a, matchesKeybinding as g } from "./utils.js";
2
- const v = 10;
1
+ import { deserialiseOverrides as h, serialiseOverrides as u, hasUsableShortcutKey as f, isReservedShortcut as m, keybindingsEqual as g, scopePriority as a, matchesKeybinding as v } from "./utils.js";
2
+ const p = 10;
3
3
  class c {
4
4
  static STORAGE_KEY = "impact-nova-shortcuts";
5
5
  static RECENT_COMMANDS_KEY = "impact-nova-recent-commands";
@@ -40,7 +40,7 @@ class c {
40
40
  }
41
41
  }
42
42
  }
43
- class C {
43
+ class S {
44
44
  commands = /* @__PURE__ */ new Map();
45
45
  overrides = /* @__PURE__ */ new Map();
46
46
  recentCommandIds = [];
@@ -79,14 +79,15 @@ class C {
79
79
  // ─── Keybinding Management ─────────────────────────────────────────────
80
80
  getEffectiveKeybinding(e) {
81
81
  const t = this.commands.get(e);
82
- if (t)
83
- return t.keybinding ?? t.defaultKeybinding;
82
+ if (!t) return;
83
+ const s = t.keybinding ?? t.defaultKeybinding;
84
+ return f(s) ? s : void 0;
84
85
  }
85
86
  updateKeybinding(e, t) {
86
87
  const s = this.commands.get(e);
87
88
  if (!s) return { success: !1 };
88
89
  if (!s.customisable) return { success: !1 };
89
- if (f(t))
90
+ if (m(t))
90
91
  return { success: !1, reserved: !0 };
91
92
  const i = this.findConflict(e, t, s.scope);
92
93
  return i ? { success: !1, conflict: i } : (s.keybinding = t, this.overrides.set(e, t), this.saveOverrides(), this.emit({ type: "update-keybinding", commandId: e }), { success: !0 });
@@ -100,7 +101,7 @@ class C {
100
101
  for (const [i, r] of this.commands) {
101
102
  if (i === e || r.scope !== s) continue;
102
103
  const o = this.getEffectiveKeybinding(i);
103
- if (o && m(o, t))
104
+ if (o && g(o, t))
104
105
  return {
105
106
  conflictingCommandId: i,
106
107
  conflictingLabel: r.label,
@@ -171,7 +172,7 @@ class C {
171
172
  for (const n of this.commands.values()) {
172
173
  if (n.passive) continue;
173
174
  const d = this.getEffectiveKeybinding(n.id);
174
- if (d && !(t && n.scope !== "modal") && !(n.instance && i && n.instance !== this.activeInstance) && !(n.when && !n.when()) && g(e, d)) {
175
+ if (d && !(t && n.scope !== "modal") && !(n.instance && i && n.instance !== this.activeInstance) && !(n.when && !n.when()) && v(e, d)) {
175
176
  const l = a(n.scope);
176
177
  l > o && (r = n, o = l);
177
178
  }
@@ -186,7 +187,7 @@ class C {
186
187
  this.recentCommandIds = [
187
188
  e,
188
189
  ...this.recentCommandIds.filter((t) => t !== e)
189
- ].slice(0, v), this.saveRecentCommands();
190
+ ].slice(0, p), this.saveRecentCommands();
190
191
  }
191
192
  // ─── Event System ─────────────────────────────────────────────────────
192
193
  subscribe(e) {
@@ -215,5 +216,6 @@ class C {
215
216
  }
216
217
  export {
217
218
  c as LocalStorageAdapter,
218
- C as ShortcutRegistry
219
+ S as ShortcutRegistry
219
220
  };
221
+ //# sourceMappingURL=shortcut-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcut-registry.js","sources":["impact-nova/src/components/ui/command-palette/shortcut-registry.ts"],"sourcesContent":["/**\n * ShortcutRegistry — Singleton command store with scope resolution,\n * conflict detection, user override persistence, and event emission.\n */\n\nimport type { CommandDefinition, KeyBinding, ShortcutScope, ShortcutStorageAdapter } from './utils';\nimport {\n matchesKeybinding,\n scopePriority,\n keybindingsEqual,\n isReservedShortcut,\n serialiseOverrides,\n deserialiseOverrides,\n hasUsableShortcutKey,\n} from './utils';\n\n// ─── Constants ──────────────────────────────────────────────────────────────\n\nconst MAX_RECENT = 10;\n\n// ─── Event Types ────────────────────────────────────────────────────────────\n\nexport type RegistryChangeEvent = {\n type: 'register' | 'unregister' | 'update-keybinding' | 'reset-keybinding' | 'scope-change';\n commandId?: string;\n};\n\nexport type RegistryListener = (event: RegistryChangeEvent) => void;\n\n// ─── Conflict Info ──────────────────────────────────────────────────────────\n\nexport interface ConflictInfo {\n conflictingCommandId: string;\n conflictingLabel: string;\n scope: ShortcutScope;\n}\n\n// ─── LocalStorageAdapter ─────────────────────────────────────────────────────\n\n/**\n * Default localStorage-based storage adapter.\n * Maintains backward compatibility with existing localStorage implementation.\n */\nexport class LocalStorageAdapter implements ShortcutStorageAdapter {\n private static readonly STORAGE_KEY = 'impact-nova-shortcuts';\n private static readonly RECENT_COMMANDS_KEY = 'impact-nova-recent-commands';\n\n getOverrides(): Map<string, KeyBinding> | null {\n if (typeof localStorage === 'undefined') return null;\n try {\n const json = localStorage.getItem(LocalStorageAdapter.STORAGE_KEY);\n if (json) {\n return deserialiseOverrides(json);\n }\n return null;\n } catch {\n // localStorage not available or corrupted\n return null;\n }\n }\n\n saveOverrides(overrides: Map<string, KeyBinding>): void {\n if (typeof localStorage === 'undefined') return;\n try {\n localStorage.setItem(LocalStorageAdapter.STORAGE_KEY, serialiseOverrides(overrides));\n } catch {\n // Storage full or unavailable\n }\n }\n\n getRecentCommands(): string[] | null {\n if (typeof localStorage === 'undefined') return null;\n try {\n const json = localStorage.getItem(LocalStorageAdapter.RECENT_COMMANDS_KEY);\n if (json) {\n const parsed = JSON.parse(json);\n return Array.isArray(parsed) ? parsed : null;\n }\n return null;\n } catch {\n return null;\n }\n }\n\n saveRecentCommands(ids: string[]): void {\n if (typeof localStorage === 'undefined') return;\n try {\n localStorage.setItem(LocalStorageAdapter.RECENT_COMMANDS_KEY, JSON.stringify(ids));\n } catch {\n // Ignore\n }\n }\n}\n\n// ─── ShortcutRegistry ───────────────────────────────────────────────────────\n\nexport class ShortcutRegistry {\n private commands = new Map<string, CommandDefinition>();\n private overrides = new Map<string, KeyBinding>();\n private recentCommandIds: string[] = [];\n private listeners = new Set<RegistryListener>();\n private activeScopes = new Set<ShortcutScope>();\n private activeInstance: string | null = null;\n private storage: ShortcutStorageAdapter;\n\n constructor(storage?: ShortcutStorageAdapter) {\n this.storage = storage ?? new LocalStorageAdapter();\n this.activeScopes.add('global');\n this.loadOverrides();\n this.loadRecentCommands();\n }\n\n // ─── Instance Management ────────────────────────────────────────────────\n\n setActiveInstance(instance: string | null): void {\n if (this.activeInstance !== instance) {\n this.activeInstance = instance;\n this.emit({ type: 'scope-change' });\n }\n }\n\n getActiveInstance(): string | null {\n return this.activeInstance;\n }\n\n /**\n * Get all unique instance identifiers currently registered.\n */\n getRegisteredInstances(): string[] {\n const instances = new Set<string>();\n for (const cmd of this.commands.values()) {\n if (cmd.instance) instances.add(cmd.instance);\n }\n return Array.from(instances);\n }\n\n // ─── Registration ───────────────────────────────────────────────────────\n\n register(command: CommandDefinition): void {\n this.commands.set(command.id, command);\n\n // Apply saved override if one exists\n const override = this.overrides.get(command.id);\n if (override) {\n command.keybinding = override;\n }\n\n this.emit({ type: 'register', commandId: command.id });\n }\n\n unregister(commandId: string): void {\n this.commands.delete(commandId);\n this.emit({ type: 'unregister', commandId });\n }\n\n // ─── Keybinding Management ─────────────────────────────────────────────\n\n getEffectiveKeybinding(commandId: string): KeyBinding | undefined {\n const cmd = this.commands.get(commandId);\n if (!cmd) return undefined;\n const keybinding = cmd.keybinding ?? cmd.defaultKeybinding;\n return hasUsableShortcutKey(keybinding) ? keybinding : undefined;\n }\n\n updateKeybinding(commandId: string, keybinding: KeyBinding): { success: boolean; conflict?: ConflictInfo; reserved?: boolean } {\n const cmd = this.commands.get(commandId);\n if (!cmd) return { success: false };\n\n if (!cmd.customisable) return { success: false };\n\n // Check if reserved\n if (isReservedShortcut(keybinding)) {\n return { success: false, reserved: true };\n }\n\n // Check for conflicts in the same scope\n const conflict = this.findConflict(commandId, keybinding, cmd.scope);\n if (conflict) {\n return { success: false, conflict };\n }\n\n cmd.keybinding = keybinding;\n this.overrides.set(commandId, keybinding);\n this.saveOverrides();\n this.emit({ type: 'update-keybinding', commandId });\n return { success: true };\n }\n\n resetKeybinding(commandId: string): void {\n const cmd = this.commands.get(commandId);\n if (!cmd) return;\n \n cmd.keybinding = undefined;\n this.overrides.delete(commandId);\n this.saveOverrides();\n this.emit({ type: 'reset-keybinding', commandId });\n }\n\n // ─── Conflict Detection ────────────────────────────────────────────────\n\n findConflict(commandId: string, keybinding: KeyBinding, scope: ShortcutScope): ConflictInfo | null {\n for (const [id, cmd] of this.commands) {\n if (id === commandId) continue;\n if (cmd.scope !== scope) continue;\n\n const effective = this.getEffectiveKeybinding(id);\n if (effective && keybindingsEqual(effective, keybinding)) {\n return {\n conflictingCommandId: id,\n conflictingLabel: cmd.label,\n scope: cmd.scope,\n };\n }\n }\n return null;\n }\n\n // ─── Scope Management ──────────────────────────────────────────────────\n\n pushScope(scope: ShortcutScope): void {\n this.activeScopes.add(scope);\n this.emit({ type: 'scope-change' });\n }\n\n popScope(scope: ShortcutScope): void {\n if (scope !== 'global') {\n this.activeScopes.delete(scope);\n this.emit({ type: 'scope-change' });\n }\n }\n\n getActiveScopes(): ShortcutScope[] {\n return Array.from(this.activeScopes);\n }\n\n getHighestActiveScope(): ShortcutScope {\n let highest: ShortcutScope = 'global';\n for (const scope of this.activeScopes) {\n if (scopePriority(scope) > scopePriority(highest)) {\n highest = scope;\n }\n }\n return highest;\n }\n\n private getHighestActiveScopePriority(): number {\n let highest = 0;\n for (const scope of this.activeScopes) {\n highest = Math.max(highest, scopePriority(scope));\n }\n return highest;\n }\n\n // ─── Command Queries ───────────────────────────────────────────────────\n\n getCommand(id: string): CommandDefinition | undefined {\n return this.commands.get(id);\n }\n\n getAllCommands(): CommandDefinition[] {\n return Array.from(this.commands.values());\n }\n\n /**\n * Get commands visible in the command palette.\n * Instance-scoped commands are filtered (only active instance shows unless\n * there's only one instance, in which case it always shows).\n * When multiple instances exist, labels are auto-prefixed with the instance name.\n */\n getPaletteCommands(): CommandDefinition[] {\n const instances = this.getRegisteredInstances();\n const multipleInstances = instances.length > 1;\n\n return this.getAllCommands().filter(cmd => {\n if (cmd.hidden) return false;\n // NOTE: We intentionally do NOT filter on `cmd.when()` here.\n // The `when` guard controls whether a keyboard shortcut fires,\n // not whether it appears in the palette. Filtering here would\n // hide commands whose guard returns false while the palette\n // dialog is open (e.g. `isModalOverlayOpen()`).\n\n // Scope filtering: show commands whose scope is at or below the highest active scope.\n // e.g. if 'page' is active, 'module' and 'global' commands are also visible.\n const highestActive = this.getHighestActiveScopePriority();\n if (scopePriority(cmd.scope) > highestActive) return false;\n\n // Instance filtering: if multiple instances exist, only show\n // commands for the active instance (or commands without an instance)\n if (cmd.instance && multipleInstances && this.activeInstance && cmd.instance !== this.activeInstance) {\n return false;\n }\n\n return true;\n });\n }\n\n /**\n * Get commands for the settings panel (all registered, including hidden).\n */\n getSettingsCommands(): CommandDefinition[] {\n return this.getAllCommands();\n }\n\n // ─── Keyboard Event Handling ───────────────────────────────────────────\n\n /**\n * Handle a keyboard event. Finds the highest-priority matching command\n * and executes its handler.\n *\n * @returns true if a command was executed, false otherwise\n */\n handleKeyEvent(event: KeyboardEvent): boolean {\n // When a modal scope is active, only modal-scope shortcuts fire\n const modalActive = this.activeScopes.has('modal');\n const instances = this.getRegisteredInstances();\n const multipleInstances = instances.length > 1;\n\n let bestMatch: CommandDefinition | null = null;\n let bestPriority = -1;\n\n for (const cmd of this.commands.values()) {\n // Passive commands are display-only — don't intercept keyboard events\n if (cmd.passive) continue;\n\n const kb = this.getEffectiveKeybinding(cmd.id);\n if (!kb) continue;\n\n // If modal is active, only modal-scoped commands can fire\n if (modalActive && cmd.scope !== 'modal') continue;\n\n // Instance filtering: when multiple instances are registered,\n // only the active (focused) instance's commands can fire\n if (cmd.instance && multipleInstances) {\n if (cmd.instance !== this.activeInstance) continue;\n }\n\n if (cmd.when && !cmd.when()) continue;\n\n if (matchesKeybinding(event, kb)) {\n const priority = scopePriority(cmd.scope);\n if (priority > bestPriority) {\n bestMatch = cmd;\n bestPriority = priority;\n }\n }\n }\n\n if (bestMatch) {\n event.preventDefault();\n event.stopPropagation();\n bestMatch.handler();\n this.addRecentCommand(bestMatch.id);\n return true;\n }\n\n return false;\n }\n\n // ─── Recent Commands ───────────────────────────────────────────────────\n\n getRecentCommandIds(): string[] {\n return [...this.recentCommandIds];\n }\n\n addRecentCommand(commandId: string): void {\n this.recentCommandIds = [\n commandId,\n ...this.recentCommandIds.filter(id => id !== commandId),\n ].slice(0, MAX_RECENT);\n this.saveRecentCommands();\n }\n\n // ─── Event System ─────────────────────────────────────────────────────\n\n subscribe(listener: RegistryListener): () => void {\n this.listeners.add(listener);\n return () => { this.listeners.delete(listener); };\n }\n\n private emit(event: RegistryChangeEvent): void {\n this.listeners.forEach(listener => listener(event));\n }\n\n // ─── Persistence ──────────────────────────────────────────────────────\n\n private loadOverrides(): void {\n const overrides = this.storage.getOverrides();\n if (overrides) {\n this.overrides = overrides;\n }\n }\n\n private saveOverrides(): void {\n this.storage.saveOverrides(this.overrides);\n }\n\n private loadRecentCommands(): void {\n const recentCommands = this.storage.getRecentCommands();\n if (recentCommands) {\n this.recentCommandIds = recentCommands;\n }\n }\n\n private saveRecentCommands(): void {\n this.storage.saveRecentCommands(this.recentCommandIds);\n }\n}\n"],"names":["MAX_RECENT","LocalStorageAdapter","json","deserialiseOverrides","overrides","serialiseOverrides","parsed","ids","ShortcutRegistry","storage","instance","instances","cmd","command","override","commandId","keybinding","hasUsableShortcutKey","isReservedShortcut","conflict","scope","id","effective","keybindingsEqual","highest","scopePriority","multipleInstances","highestActive","event","modalActive","bestMatch","bestPriority","kb","matchesKeybinding","priority","listener","recentCommands"],"mappings":"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"}
@@ -53,3 +53,4 @@ export {
53
53
  d as ShortcutInstanceContext,
54
54
  v as ShortcutScopeProvider
55
55
  };
56
+ //# sourceMappingURL=shortcut-scope-provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcut-scope-provider.js","sources":["impact-nova/src/components/ui/command-palette/shortcut-scope-provider.tsx"],"sourcesContent":["/**\n * ShortcutScopeProvider — Scope boundary component with instance awareness.\n *\n * When mounted, it pushes a scope onto the registry. When unmounted,\n * it pops the scope. This allows sections of the UI to own their shortcuts.\n *\n * When `instance` is provided, the provider wraps its children in a\n * container div that detects focus events. When anything inside the\n * container receives focus (click or tab), the instance becomes \"active\"\n * in the registry, and only that instance's commands are dispatched.\n *\n * Usage:\n * // Basic scope (no instance — all commands fire)\n * <ShortcutScopeProvider scope=\"module\" name=\"planning\">\n * <PlanningModule />\n * </ShortcutScopeProvider>\n *\n * // Instance-aware (for multi-table pages)\n * <ShortcutScopeProvider scope=\"page\" instance=\"sales-table\" label=\"Sales Table\">\n * <DataTable ... />\n * </ShortcutScopeProvider>\n *\n * <ShortcutScopeProvider scope=\"page\" instance=\"inventory-table\" label=\"Inventory Table\">\n * <DataTable ... />\n * </ShortcutScopeProvider>\n */\n\nimport * as React from 'react';\nimport { useCommandPalette } from './command-palette-context';\nimport type { ShortcutScope } from './utils';\nimport { cn } from '@/lib/utils';\n\nexport interface ShortcutScopeProviderProps {\n /** The scope level to activate */\n scope: ShortcutScope;\n /** Human-readable name for debugging */\n name?: string;\n /**\n * Unique instance identifier. When provided, enables focus-based\n * dispatch so that only the focused instance's commands fire.\n */\n instance?: string;\n /**\n * Human-readable label for the instance (shown in command palette\n * when multiple instances are present, e.g. \"Sales Table\").\n */\n label?: string;\n /** Optional className for the wrapper div (only used when instance is set) */\n className?: string;\n children: React.ReactNode;\n}\n\n// Context to pass instance info down to useShortcut hooks\nexport const ShortcutInstanceContext = React.createContext<{\n instance?: string;\n label?: string;\n} | null>(null);\n\nexport function ShortcutScopeProvider({\n scope,\n instance,\n label,\n className,\n children,\n}: ShortcutScopeProviderProps) {\n const { pushScope, popScope, setActiveInstance, getActiveInstance } = useCommandPalette();\n\n React.useEffect(() => {\n pushScope(scope);\n return () => {\n popScope(scope);\n };\n }, [scope, pushScope, popScope]);\n\n // If no instance, just render children directly (backward-compatible)\n if (!instance) {\n return <>{children}</>;\n }\n\n // Instance-aware: wrap in a div with focus detection\n return (\n <ShortcutInstanceContext.Provider value={{ instance, label }}>\n <InstanceWrapper\n instance={instance}\n className={className}\n setActiveInstance={setActiveInstance}\n getActiveInstance={getActiveInstance}\n >\n {children}\n </InstanceWrapper>\n </ShortcutInstanceContext.Provider>\n );\n}\nShortcutScopeProvider.displayName = 'ShortcutScopeProvider';\n\n// ─── Internal wrapper component for focus tracking ──────────────────────────\n\nfunction InstanceWrapper({\n instance,\n className,\n setActiveInstance,\n getActiveInstance,\n children,\n}: {\n instance: string;\n className?: string;\n setActiveInstance: (instance: string | null) => void;\n getActiveInstance: () => string | null;\n children: React.ReactNode;\n}) {\n\n const handleFocusCapture = React.useCallback(() => {\n setActiveInstance(instance);\n }, [instance, setActiveInstance]);\n\n // Clean up: if this instance is active and unmounts, clear it\n React.useEffect(() => {\n return () => {\n // Use a micro-task to check — another instance might set itself active first\n queueMicrotask(() => {\n // Only clear if this instance was the active one\n // We can't read getActiveInstance() in cleanup since ref might be stale,\n // so we just call set(null) and let the next focus event set the right one\n });\n };\n }, [instance]);\n\n return (\n <div\n onFocusCapture={handleFocusCapture}\n onClickCapture={handleFocusCapture}\n className={cn('relative', className)}\n data-shortcut-instance={instance}\n >\n {children}\n </div>\n );\n}\n"],"names":["ShortcutInstanceContext","React","ShortcutScopeProvider","scope","instance","label","className","children","pushScope","popScope","setActiveInstance","getActiveInstance","useCommandPalette","jsx","InstanceWrapper","handleFocusCapture","cn"],"mappings":";;;;AAqDO,MAAMA,IAA0BC,EAAM,cAGnC,IAAI;AAEP,SAASC,EAAsB;AAAA,EACpC,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AACF,GAA+B;AAC7B,QAAM,EAAE,WAAAC,GAAW,UAAAC,GAAU,mBAAAC,GAAmB,mBAAAC,EAAA,IAAsBC,EAAA;AAUtE,SARAX,EAAM,UAAU,OACdO,EAAUL,CAAK,GACR,MAAM;AACX,IAAAM,EAASN,CAAK;AAAA,EAChB,IACC,CAACA,GAAOK,GAAWC,CAAQ,CAAC,GAG1BL,IAMH,gBAAAS,EAACb,EAAwB,UAAxB,EAAiC,OAAO,EAAE,UAAAI,GAAU,OAAAC,KACnD,UAAA,gBAAAQ;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,UAAAV;AAAA,MACA,WAAAE;AAAA,MACA,mBAAAI;AAAA,MACA,mBAAAC;AAAA,MAEC,UAAAJ;AAAA,IAAA;AAAA,EAAA,GAEL,2BAdU,UAAAA,GAAS;AAgBvB;AACAL,EAAsB,cAAc;AAIpC,SAASY,EAAgB;AAAA,EACvB,UAAAV;AAAA,EACA,WAAAE;AAAA,EACA,mBAAAI;AAAA,EACA,mBAAAC;AAAA,EACA,UAAAJ;AACF,GAMG;AAED,QAAMQ,IAAqBd,EAAM,YAAY,MAAM;AACjD,IAAAS,EAAkBN,CAAQ;AAAA,EAC5B,GAAG,CAACA,GAAUM,CAAiB,CAAC;AAGhC,SAAAT,EAAM,UAAU,MACP,MAAM;AAEX,mBAAe,MAAM;AAAA,IAIrB,CAAC;AAAA,EACH,GACC,CAACG,CAAQ,CAAC,GAGX,gBAAAS;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,gBAAgBE;AAAA,MAChB,gBAAgBA;AAAA,MAChB,WAAWC,EAAG,YAAYV,CAAS;AAAA,MACnC,0BAAwBF;AAAA,MAEvB,UAAAG;AAAA,IAAA;AAAA,EAAA;AAGP;"}
@@ -283,3 +283,4 @@ le.displayName = "ShortcutSettings";
283
283
  export {
284
284
  le as ShortcutSettings
285
285
  };
286
+ //# sourceMappingURL=shortcut-settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortcut-settings.js","sources":["impact-nova/src/components/ui/command-palette/shortcut-settings.tsx"],"sourcesContent":["/**\n * ShortcutSettings — Keyboard shortcut customisation panel (data table UI).\n *\n * Features:\n * - Search, sort, and filter on every column\n * - Source column with set filter (All / User / Browser / Table / System)\n * - Click keybinding cell → \"recording mode\" (press new keys)\n * - Non-customisable rows are read-only\n * - Conflict detection with inline warning\n * - Reset individual overrides to defaults\n * - Persists changes to localStorage immediately\n */\n\nimport * as React from 'react';\nimport { RotateCcw, AlertTriangle, Lock, User, Monitor } from 'lucide-react';\nimport { cn } from '@/lib/utils';\nimport { AllCommunityModule, ModuleRegistry } from 'ag-grid-community';\nimport { AllEnterpriseModule } from 'ag-grid-enterprise';\nimport type { ColDef, ICellRendererParams } from 'ag-grid-community';\nimport { \n DataTable, \n DataTableContent, \n} from '../data-table';\nimport { AG_CELL_NO_PADDING, BadgeCellRenderer } from '@/components/ui/ag-grid-react/cell-renderers';\n\nimport { Kbd } from './kbd';\nimport { useCommandPalette } from './command-palette-context';\nimport type { CommandDefinition, KeyBinding, ShortcutScope } from './utils';\nimport {\n COMMAND_SOURCE_LABELS,\n keybindingFromEvent,\n isReservedShortcut,\n keybindingToString,\n} from './utils';\n\n// Register grid modules (ag-grid-community / ag-grid-enterprise)\nModuleRegistry.registerModules([AllCommunityModule, AllEnterpriseModule]);\n\n// ─── Types ──────────────────────────────────────────────────────────────────\n\nexport interface ShortcutSettingsProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {\n /** Filter to specific scopes */\n scopes?: ShortcutScope[];\n /** Filter to specific sources */\n sources?: Array<'system' | 'user' | 'ag-grid' | 'browser'>;\n /** Optional render prop to hoist the recording indicator/conflict message up to a parent toolbar */\n renderStatus?: (node: React.ReactNode | null) => React.ReactNode;\n /** Label shown during recording mode */\n recordingLabel?: string;\n /** Instruction for recording a shortcut */\n pressShortcutLabel?: string;\n /** Label for adding a new shortcut */\n addShortcutLabel?: string;\n /** Warning message for shortcut conflicts */\n conflictWarnLabel?: string;\n /** Warning message for browser-reserved shortcuts */\n reservedWarnLabel?: string;\n /** Detailed instruction for recording state */\n recordingInstruction?: string;\n}\n\n/** Row data shape for the grid */\ninterface ShortcutRow {\n id: string;\n command: string;\n description: string;\n category: string;\n keybinding: KeyBinding | undefined;\n keybindingDisplay: string;\n scope: string;\n source: string;\n customisable: boolean;\n passive: boolean;\n hasOverride: boolean;\n sourceColor: string;\n sourceIcon: React.ReactNode;\n /** Original CommandDefinition reference */\n _def: CommandDefinition;\n}\n\n// ─── Cell Renderers ─────────────────────────────────────────────────────────\n\n/** Renders the command name with a lock icon for non-customisable rows */\nfunction CommandCellRenderer(props: ICellRendererParams<ShortcutRow>) {\n const data = props.data;\n if (!data) return null;\n\n return (\n <div className=\"flex items-center gap-2 min-w-0 h-full\">\n {!data.customisable && (\n <Lock className=\"h-3 w-3 text-content-muted shrink-0\" />\n )}\n <div className=\"flex flex-col min-w-0 gap-0\">\n <span className=\"truncate font-medium text-content-charcoal text-xs leading-tight\">{data.command}</span>\n {data.description && (\n <span className=\"truncate text-[10px] text-content-muted leading-tight\">{data.description}</span>\n )}\n </div>\n </div>\n );\n}\n\n/** Renders the keybinding as clickable Kbd badges or a recording prompt */\nfunction KeybindingCellRenderer(props: ICellRendererParams<ShortcutRow> & {\n recordingCommandId: string | null;\n onStartRecording: (id: string) => void;\n onReset: (id: string) => void;\n recordingLabel?: string;\n addShortcutLabel?: string;\n}) {\n const data = props.data;\n if (!data) return null;\n\n const isRecording = props.recordingCommandId === data.id;\n\n return (\n <div className={cn(\n \"w-full h-full flex items-center ag-cell-inner-padding\",\n data.customisable ? \"in-ag-editable-cell-highlight\" : \"\"\n )}>\n <div\n className={cn(\n \"flex items-center justify-between w-full h-7 rounded-[8px] px-1.5 group/row relative\",\n data.customisable ? \"bg-canvas-elevated\" : \"bg-transparent\",\n isRecording && \"ring-1 ring-brand border border-brand\"\n )}\n >\n {isRecording ? (\n <span className=\"text-xs text-brand font-medium animate-pulse\">\n {props.recordingLabel ?? 'Press desired shortcut...'}\n </span>\n ) : (\n <>\n {data.keybinding ? (\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n if (data.customisable) props.onStartRecording(data.id);\n }}\n disabled={!data.customisable}\n className={cn(\n 'flex items-center justify-end h-full w-full text-right',\n data.customisable ? 'cursor-pointer' : 'cursor-default opacity-70'\n )}\n >\n <Kbd keybinding={data.keybinding} size=\"sm\" />\n </button>\n ) : data.customisable ? (\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n props.onStartRecording(data.id);\n }}\n className=\"flex items-center justify-end h-full w-full text-xs text-content-muted hover:text-brand transition-colors cursor-pointer text-right\"\n >\n {props.addShortcutLabel ?? 'Add shortcut'}\n </button>\n ) : <span className=\"text-xs text-transparent\">--</span>}\n\n {/* Reset button */}\n {data.hasOverride && data.customisable && !isRecording && (\n <button\n type=\"button\"\n onClick={(e) => {\n e.stopPropagation();\n props.onReset(data.id);\n }}\n className=\"absolute right-1 p-0.5 rounded bg-canvas-elevated hover:bg-canvas-muted hover:text-destructive cursor-pointer opacity-0 group-hover/row:opacity-100 transition-opacity z-10\"\n title=\"Reset to default\"\n >\n <RotateCcw className=\"h-3 w-3\" />\n </button>\n )}\n </>\n )}\n </div>\n </div>\n );\n}\n\n/** Scope column with capitalized text */\nfunction ScopeCellRenderer(props: ICellRendererParams<ShortcutRow>) {\n const data = props.data;\n if (!data) return null;\n\n return (\n <div className=\"flex items-center h-full\">\n <span className=\"text-xs text-content-muted capitalize\">{data.scope}</span>\n </div>\n );\n}\n\n// ─── Main Component ─────────────────────────────────────────────────────────\n\nexport function ShortcutSettings({\n className,\n scopes,\n sources,\n renderStatus,\n recordingLabel,\n pressShortcutLabel,\n addShortcutLabel,\n conflictWarnLabel = 'Conflicts with other shortcuts',\n reservedWarnLabel = 'This shortcut is reserved by the browser',\n recordingInstruction = 'Recording: Press shortcut or Esc',\n ...props\n}: ShortcutSettingsProps) {\n const {\n getSettingsCommands,\n getEffectiveKeybinding,\n updateKeybinding,\n resetKeybinding,\n version,\n } = useCommandPalette();\n\n const [recordingCommandId, setRecordingCommandId] = React.useState<string | null>(null);\n const [statusMessage, setStatusMessage] = React.useState<{ type: 'conflict' | 'reserved'; text: string } | null>(null);\n\n // Build row data from commands\n const rowData = React.useMemo<ShortcutRow[]>(() => {\n let commands = getSettingsCommands();\n \n // Filter out browser and system shortcuts - only show user and ag-grid shortcuts\n commands = commands.filter(cmd => {\n const source = cmd.source ?? 'user';\n return source === 'user' || source === 'ag-grid';\n });\n \n if (scopes) {\n commands = commands.filter(cmd => scopes.includes(cmd.scope));\n }\n if (sources) {\n commands = commands.filter(cmd => cmd.source && sources.includes(cmd.source));\n }\n\n return commands.map(cmd => {\n const kb = getEffectiveKeybinding(cmd.id);\n const rawSource = cmd.source ?? 'user';\n const sourceLabel =\n COMMAND_SOURCE_LABELS[rawSource as keyof typeof COMMAND_SOURCE_LABELS] ??\n rawSource ??\n 'User';\n const isUser = sourceLabel.toLowerCase() === 'user';\n\n return {\n id: cmd.id,\n command: cmd.label,\n description: cmd.description || '',\n category: cmd.category || 'General',\n keybinding: kb,\n keybindingDisplay: kb ? keybindingToString(kb) : '',\n scope: cmd.scope,\n source: sourceLabel,\n sourceColor: isUser ? 'primary' : 'neutral',\n sourceIcon: isUser ? <User className=\"h-3 w-3\" /> : <Monitor className=\"h-3 w-3\" />,\n customisable: cmd.customisable !== false,\n passive: cmd.passive === true,\n hasOverride: cmd.keybinding !== undefined,\n _def: cmd,\n };\n });\n }, [version, scopes, sources, getSettingsCommands, getEffectiveKeybinding]);\n\n // Recording mode handler\n const handleStartRecording = React.useCallback((commandId: string) => {\n setRecordingCommandId(commandId);\n setStatusMessage(null);\n }, []);\n\n const handleReset = React.useCallback((commandId: string) => {\n resetKeybinding(commandId);\n setStatusMessage(null);\n }, [resetKeybinding]);\n\n // Keydown handler for recording\n React.useEffect(() => {\n if (!recordingCommandId) return;\n\n const handleKeyDown = (event: KeyboardEvent) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (event.key === 'Escape') {\n setRecordingCommandId(null);\n setStatusMessage(null);\n return;\n }\n\n const kb = keybindingFromEvent(event);\n if (!kb) return;\n\n if (isReservedShortcut(kb)) {\n setStatusMessage({ type: 'reserved', text: reservedWarnLabel });\n setRecordingCommandId(null);\n setTimeout(() => setStatusMessage(null), 3000);\n return;\n }\n\n const result = updateKeybinding(recordingCommandId, kb);\n if (result.success) {\n setRecordingCommandId(null);\n setStatusMessage(null);\n } else if (result.conflict) {\n setStatusMessage({\n type: 'conflict',\n text: conflictWarnLabel,\n });\n setRecordingCommandId(null);\n setTimeout(() => setStatusMessage(null), 3000);\n } else if (result.reserved) {\n setStatusMessage({ type: 'reserved', text: reservedWarnLabel });\n setRecordingCommandId(null);\n setTimeout(() => setStatusMessage(null), 3000);\n }\n };\n\n window.addEventListener('keydown', handleKeyDown, true);\n return () => window.removeEventListener('keydown', handleKeyDown, true);\n }, [recordingCommandId, updateKeybinding, reservedWarnLabel, conflictWarnLabel]);\n\n const categoryOptions = React.useMemo(() => {\n const unique = Array.from(new Set(rowData.map(r => r.category))).sort();\n return unique.map(c => ({ label: c, value: c }));\n }, [rowData]);\n\n const columnDefs = React.useMemo<ColDef<ShortcutRow>[]>(() => [\n {\n field: 'command',\n headerName: 'Command',\n flex: 1,\n minWidth: 200,\n filter: 'agTextColumnFilter',\n cellRenderer: CommandCellRenderer,\n filterValueGetter: (params) => {\n const data = params.data;\n return data ? `${data.command} ${data.description}` : '';\n },\n },\n {\n field: 'category',\n headerName: 'Category',\n width: 140,\n filter: 'agSetColumnFilter',\n headerComponentParams: {\n isSearchable: true,\n advanceSearchEnabled: true,\n selectOptions: categoryOptions,\n isMultiSelect: true,\n },\n },\n {\n field: 'keybindingDisplay',\n headerName: 'Shortcut',\n width: 180,\n type: 'rightAligned',\n filter: 'agTextColumnFilter',\n cellRenderer: KeybindingCellRenderer,\n cellClass: AG_CELL_NO_PADDING,\n cellRendererParams: {\n recordingCommandId,\n onStartRecording: handleStartRecording,\n onReset: handleReset,\n recordingLabel: pressShortcutLabel,\n addShortcutLabel,\n },\n sortable: true,\n },\n {\n field: 'scope',\n headerName: 'Scope',\n width: 100,\n filter: 'agSetColumnFilter',\n cellRenderer: ScopeCellRenderer,\n headerComponentParams: {\n isSearchable: true,\n advanceSearchEnabled: true,\n selectOptions: [\n { label: 'Global', value: 'global' },\n { label: 'Module', value: 'module' },\n { label: 'Page', value: 'page' },\n { label: 'Modal', value: 'modal' },\n ],\n isMultiSelect: true,\n },\n },\n {\n field: 'source',\n headerName: 'Source',\n width: 130,\n filter: 'agSetColumnFilter',\n cellClass: AG_CELL_NO_PADDING,\n cellRenderer: BadgeCellRenderer,\n cellRendererParams: {\n variant: 'subtle',\n colorField: 'sourceColor',\n isIcon: true,\n iconField: 'sourceIcon',\n size: 'small'\n },\n headerComponentParams: {\n isSearchable: true,\n advanceSearchEnabled: true,\n selectOptions: [\n { label: COMMAND_SOURCE_LABELS.user, value: COMMAND_SOURCE_LABELS.user },\n { label: COMMAND_SOURCE_LABELS['ag-grid'], value: COMMAND_SOURCE_LABELS['ag-grid'] },\n ],\n isMultiSelect: true,\n }\n },\n ], [recordingCommandId, handleStartRecording, handleReset, pressShortcutLabel, addShortcutLabel, categoryOptions]);\n\n const initialState = React.useMemo(() => ({\n filter: {\n filterModel: {\n source: {\n filterType: 'set',\n values: [COMMAND_SOURCE_LABELS.user, COMMAND_SOURCE_LABELS['ag-grid']],\n },\n },\n },\n }), []);\n\n const defaultColDef = React.useMemo<ColDef<ShortcutRow>>(() => ({\n sortable: true,\n resizable: true,\n filter: true,\n headerComponentParams: {\n isSearchable: true,\n advanceSearchEnabled: true,\n },\n }), []);\n\n const statusNode = (statusMessage || recordingCommandId) ? (\n <div className={cn(\n \"px-3 py-1.5 text-[10px] md:text-sm font-medium rounded-md whitespace-nowrap flex items-center gap-2\",\n statusMessage?.type === 'conflict' ? 'bg-feedback-warning-surface text-content' :\n statusMessage?.type === 'reserved' ? 'bg-feedback-error-surface text-destructive' :\n recordingCommandId ? 'bg-feedback-info-surface text-brand animate-[pulse_1.5s_ease-in-out_infinite]' : ''\n )}>\n {statusMessage?.type === 'conflict' ? (\n <AlertTriangle className=\"h-3.5 w-3.5 shrink-0\" />\n ) : statusMessage?.type === 'reserved' ? (\n <Lock className=\"h-3.5 w-3.5 shrink-0\" />\n ) : recordingCommandId ? (\n <span className=\"shrink-0 text-base\">⌨️</span>\n ) : null}\n <span>\n {statusMessage \n ? statusMessage.text \n : recordingInstruction\n }\n </span>\n </div>\n ) : null;\n\n return (\n <DataTable className={cn('flex flex-col w-full h-full border-t-0', className)}>\n {renderStatus ? renderStatus(statusNode) : statusNode}\n\n <DataTableContent<ShortcutRow>\n rowData={rowData}\n columnDefs={columnDefs}\n defaultColDef={defaultColDef}\n initialState={initialState}\n rowHeight={44}\n animateRows={false}\n rowSelection=\"single\"\n suppressCellFocus={true}\n getRowId={(params) => params.data.id}\n suppressRowClickSelection={true}\n domLayout=\"normal\"\n />\n </DataTable>\n );\n}\n\nShortcutSettings.displayName = 'ShortcutSettings';\n"],"names":["ModuleRegistry","AllCommunityModule","AllEnterpriseModule","CommandCellRenderer","props","data","jsxs","jsx","Lock","KeybindingCellRenderer","isRecording","cn","Fragment","e","Kbd","RotateCcw","ScopeCellRenderer","ShortcutSettings","className","scopes","sources","renderStatus","recordingLabel","pressShortcutLabel","addShortcutLabel","conflictWarnLabel","reservedWarnLabel","recordingInstruction","getSettingsCommands","getEffectiveKeybinding","updateKeybinding","resetKeybinding","version","useCommandPalette","recordingCommandId","setRecordingCommandId","React","statusMessage","setStatusMessage","rowData","commands","cmd","source","kb","rawSource","sourceLabel","COMMAND_SOURCE_LABELS","isUser","keybindingToString","User","Monitor","handleStartRecording","commandId","handleReset","handleKeyDown","event","keybindingFromEvent","isReservedShortcut","result","categoryOptions","r","c","columnDefs","params","AG_CELL_NO_PADDING","BadgeCellRenderer","initialState","defaultColDef","statusNode","AlertTriangle","DataTable","DataTableContent"],"mappings":"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"}
@@ -46,3 +46,4 @@ function b(r) {
46
46
  export {
47
47
  b as useBrowserShortcuts
48
48
  };
49
+ //# sourceMappingURL=use-browser-shortcuts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-browser-shortcuts.js","sources":["impact-nova/src/components/ui/command-palette/use-browser-shortcuts.ts"],"sourcesContent":["/**\n * useBrowserShortcuts — Registers all browser-reserved shortcuts as passive,\n * non-customisable commands so they appear in the command palette and settings\n * panel. This lets users discover what shortcuts are browser-reserved and why\n * they can't be overridden.\n *\n * Usage:\n * // Show all browser shortcuts\n * useBrowserShortcuts();\n *\n * // Hide DevTools shortcuts from the palette\n * useBrowserShortcuts({ exclude: ['devtools'] });\n *\n * // Hide entire categories\n * useBrowserShortcuts({ exclude: ['System', 'Address Bar'] });\n *\n * // Hide specific shortcuts by their label (partial match, case-insensitive)\n * useBrowserShortcuts({ exclude: ['devtools', 'caret browsing'] });\n */\n\nimport * as React from 'react';\nimport { useCommandPalette } from './command-palette-context';\nimport { BROWSER_SHORTCUTS } from './utils';\nimport type { CommandDefinition, KeyBinding } from './utils';\n\n/**\n * Convert the normalised shortcut string (e.g. 'meta+shift+t') back into\n * a KeyBinding object.\n */\nfunction shortcutStringToKeybinding(str: string): KeyBinding {\n const parts = str.split('+');\n const kb: KeyBinding = { key: '' };\n\n for (const part of parts) {\n if (part === 'meta') kb.meta = true;\n else if (part === 'ctrl') kb.ctrl = true;\n else if (part === 'alt') kb.alt = true;\n else if (part === 'shift') kb.shift = true;\n else kb.key = part;\n }\n\n return kb;\n}\n\nexport interface UseBrowserShortcutsOptions {\n /**\n * Patterns to exclude from the palette. Each pattern is matched against\n * the shortcut's label AND category (case-insensitive, partial match).\n *\n * Examples:\n * - `['devtools']` hides all DevTools-related shortcuts\n * - `['System']` hides entire System category\n * - `['devtools', 'caret browsing', 'page source']` hides specific items\n */\n exclude?: string[];\n}\n\nexport function useBrowserShortcuts(options?: UseBrowserShortcutsOptions): void {\n const { registerCommand, unregisterCommand } = useCommandPalette();\n const excludePatterns = options?.exclude;\n\n React.useEffect(() => {\n const ids: string[] = [];\n\n for (const bs of BROWSER_SHORTCUTS) {\n // Check exclusion patterns against label and category\n if (excludePatterns?.length) {\n const searchText = `${bs.label} ${bs.category}`.toLowerCase();\n const isExcluded = excludePatterns.some(pattern =>\n searchText.includes(pattern.toLowerCase())\n );\n if (isExcluded) continue;\n }\n\n const id = `browser.${bs.shortcut.replace(/\\+/g, '-')}`;\n ids.push(id);\n\n const command: CommandDefinition = {\n id,\n label: bs.label,\n description: `Browser shortcut (${bs.category})`,\n category: bs.category,\n scope: 'global',\n defaultKeybinding: shortcutStringToKeybinding(bs.shortcut),\n customisable: false,\n hidden: false,\n handler: () => {}, // no-op — browser handles these\n source: 'browser',\n passive: true,\n };\n\n registerCommand(command);\n }\n\n return () => {\n for (const id of ids) {\n unregisterCommand(id);\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [registerCommand, unregisterCommand, JSON.stringify(excludePatterns)]);\n}\n"],"names":["shortcutStringToKeybinding","str","parts","kb","part","useBrowserShortcuts","options","registerCommand","unregisterCommand","useCommandPalette","excludePatterns","React","ids","bs","BROWSER_SHORTCUTS","searchText","pattern","id","command"],"mappings":";;;AA6BA,SAASA,EAA2BC,GAAyB;AAC3D,QAAMC,IAAQD,EAAI,MAAM,GAAG,GACrBE,IAAiB,EAAE,KAAK,GAAA;AAE9B,aAAWC,KAAQF;AACjB,IAAIE,MAAS,SAAQD,EAAG,OAAO,KACtBC,MAAS,SAAQD,EAAG,OAAO,KAC3BC,MAAS,QAAOD,EAAG,MAAM,KACzBC,MAAS,UAASD,EAAG,QAAQ,OAC9B,MAAMC;AAGhB,SAAOD;AACT;AAeO,SAASE,EAAoBC,GAA4C;AAC9E,QAAM,EAAE,iBAAAC,GAAiB,mBAAAC,EAAA,IAAsBC,EAAA,GACzCC,IAAkBJ,GAAS;AAEjC,EAAAK,EAAM,UAAU,MAAM;AACpB,UAAMC,IAAgB,CAAA;AAEtB,eAAWC,KAAMC,GAAmB;AAElC,UAAIJ,GAAiB,QAAQ;AAC3B,cAAMK,IAAa,GAAGF,EAAG,KAAK,IAAIA,EAAG,QAAQ,GAAG,YAAA;AAIhD,YAHmBH,EAAgB;AAAA,UAAK,CAAAM,MACtCD,EAAW,SAASC,EAAQ,aAAa;AAAA,QAAA,EAE3B;AAAA,MAClB;AAEA,YAAMC,IAAK,WAAWJ,EAAG,SAAS,QAAQ,OAAO,GAAG,CAAC;AACrD,MAAAD,EAAI,KAAKK,CAAE;AAEX,YAAMC,IAA6B;AAAA,QACjC,IAAAD;AAAA,QACA,OAAOJ,EAAG;AAAA,QACV,aAAa,qBAAqBA,EAAG,QAAQ;AAAA,QAC7C,UAAUA,EAAG;AAAA,QACb,OAAO;AAAA,QACP,mBAAmBb,EAA2Ba,EAAG,QAAQ;AAAA,QACzD,cAAc;AAAA,QACd,QAAQ;AAAA,QACR,SAAS,MAAM;AAAA,QAAC;AAAA;AAAA,QAChB,QAAQ;AAAA,QACR,SAAS;AAAA,MAAA;AAGX,MAAAN,EAAgBW,CAAO;AAAA,IACzB;AAEA,WAAO,MAAM;AACX,iBAAWD,KAAML;AACf,QAAAJ,EAAkBS,CAAE;AAAA,IAExB;AAAA,EAEF,GAAG,CAACV,GAAiBC,GAAmB,KAAK,UAAUE,CAAe,CAAC,CAAC;AAC1E;"}
@@ -5,3 +5,4 @@ function u(o) {
5
5
  export {
6
6
  u as useGlobalShortcut
7
7
  };
8
+ //# sourceMappingURL=use-global-shortcut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-global-shortcut.js","sources":["impact-nova/src/components/ui/command-palette/use-global-shortcut.ts"],"sourcesContent":["/**\n * useGlobalShortcut — Convenience hook that registers a global-scope shortcut.\n *\n * Identical to useShortcut({ scope: 'global', ... }) but with a simpler API.\n */\n\nimport { useShortcut, type UseShortcutOptions } from './use-shortcut';\n\nexport type UseGlobalShortcutOptions = Omit<UseShortcutOptions, 'scope'>;\n\nexport function useGlobalShortcut(options: UseGlobalShortcutOptions): void {\n useShortcut({ ...options, scope: 'global' });\n}\n"],"names":["useGlobalShortcut","options","useShortcut"],"mappings":";AAUO,SAASA,EAAkBC,GAAyC;AACzE,EAAAC,EAAY,EAAE,GAAGD,GAAS,OAAO,UAAU;AAC7C;"}
@@ -47,3 +47,4 @@ function P(l) {
47
47
  export {
48
48
  P as useShortcut
49
49
  };
50
+ //# sourceMappingURL=use-shortcut.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-shortcut.js","sources":["impact-nova/src/components/ui/command-palette/use-shortcut.ts"],"sourcesContent":["/**\n * useShortcut — Hook to register a scoped keyboard shortcut.\n *\n * Registers the command on mount, unregisters on unmount.\n * Any saved user override is automatically applied by the registry.\n */\n\nimport * as React from 'react';\nimport { useCommandPalette } from './command-palette-context';\nimport { ShortcutInstanceContext } from './shortcut-scope-provider';\nimport type { CommandDefinition, ShortcutScope, KeyBinding } from './utils';\n\nexport interface UseShortcutOptions {\n /** Unique command ID, e.g. 'planning.save-draft' */\n id: string;\n /** Human-readable label shown in the command palette */\n label: string;\n /** Optional description */\n description?: string;\n /** Optional icon (React node) */\n icon?: React.ReactNode;\n /** Category for grouping in the palette (e.g. 'Navigation') */\n category?: string;\n /** Scope: 'global' | 'module' | 'page' | 'modal' */\n scope: ShortcutScope;\n /** Default keybinding (can be overridden by user) */\n defaultKeybinding?: KeyBinding;\n /** Whether the user can customise this shortcut (default: true) */\n customisable?: boolean;\n /** Hide from the command palette list (default: false) */\n hidden?: boolean;\n /** Condition guard — shortcut only fires when this returns true */\n when?: () => boolean;\n /** The action to perform */\n handler: () => void;\n /** Source label for the settings panel */\n source?: 'system' | 'user' | 'ag-grid';\n /** Whether the shortcut is currently enabled (default: true) */\n enabled?: boolean;\n /**\n * When true, the shortcut is display-only — shown in the palette/settings\n * but the registry will NOT intercept the keyboard event.\n */\n passive?: boolean;\n /**\n * Instance ID — usually auto-inherited from the parent ShortcutScopeProvider.\n * Only provide explicitly if needed.\n */\n instance?: string;\n}\n\nexport function useShortcut(options: UseShortcutOptions): void {\n const { registerCommand, unregisterCommand } = useCommandPalette();\n const instanceCtx = React.useContext(ShortcutInstanceContext);\n const {\n id,\n label,\n description,\n icon,\n category,\n scope,\n defaultKeybinding,\n customisable = true,\n hidden = false,\n when,\n handler,\n source = 'user',\n enabled = true,\n passive = false,\n instance: explicitInstance,\n } = options;\n\n // Auto-inherit instance from parent ShortcutScopeProvider if not explicitly provided\n const instance = explicitInstance ?? instanceCtx?.instance;\n\n // Use a ref for the handler to avoid re-registration on every render\n const handlerRef = React.useRef(handler);\n handlerRef.current = handler;\n\n const whenRef = React.useRef(when);\n whenRef.current = when;\n\n React.useEffect(() => {\n if (!enabled) return;\n\n const command: CommandDefinition = {\n id,\n label,\n description,\n icon,\n category,\n scope,\n defaultKeybinding,\n customisable,\n hidden,\n when: whenRef.current ? () => whenRef.current!() : undefined,\n handler: () => handlerRef.current(),\n source,\n passive,\n instance,\n };\n\n registerCommand(command);\n\n return () => {\n unregisterCommand(id);\n };\n // Only re-register when identity-level props change (not handler/when)\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [id, label, scope, enabled, passive, instance, registerCommand, unregisterCommand]);\n}\n"],"names":["useShortcut","options","registerCommand","unregisterCommand","useCommandPalette","instanceCtx","React","ShortcutInstanceContext","id","label","description","icon","category","scope","defaultKeybinding","customisable","hidden","when","handler","source","enabled","passive","explicitInstance","instance","handlerRef","whenRef","command"],"mappings":";;;AAmDO,SAASA,EAAYC,GAAmC;AAC7D,QAAM,EAAE,iBAAAC,GAAiB,mBAAAC,EAAA,IAAsBC,EAAA,GACzCC,IAAcC,EAAM,WAAWC,CAAuB,GACtD;AAAA,IACJ,IAAAC;AAAA,IACA,OAAAC;AAAA,IACA,aAAAC;AAAA,IACA,MAAAC;AAAA,IACA,UAAAC;AAAA,IACA,OAAAC;AAAA,IACA,mBAAAC;AAAA,IACA,cAAAC,IAAe;AAAA,IACf,QAAAC,IAAS;AAAA,IACT,MAAAC;AAAA,IACA,SAAAC;AAAA,IACA,QAAAC,IAAS;AAAA,IACT,SAAAC,IAAU;AAAA,IACV,SAAAC,IAAU;AAAA,IACV,UAAUC;AAAA,EAAA,IACRrB,GAGEsB,IAAWD,KAAoBjB,GAAa,UAG5CmB,IAAalB,EAAM,OAAOY,CAAO;AACvC,EAAAM,EAAW,UAAUN;AAErB,QAAMO,IAAUnB,EAAM,OAAOW,CAAI;AACjC,EAAAQ,EAAQ,UAAUR,GAElBX,EAAM,UAAU,MAAM;AACpB,QAAI,CAACc,EAAS;AAEd,UAAMM,IAA6B;AAAA,MACjC,IAAAlB;AAAA,MACA,OAAAC;AAAA,MACA,aAAAC;AAAA,MACA,MAAAC;AAAA,MACA,UAAAC;AAAA,MACA,OAAAC;AAAA,MACA,mBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,QAAAC;AAAA,MACA,MAAMS,EAAQ,UAAU,MAAMA,EAAQ,YAAa;AAAA,MACnD,SAAS,MAAMD,EAAW,QAAA;AAAA,MAC1B,QAAAL;AAAA,MACA,SAAAE;AAAA,MACA,UAAAE;AAAA,IAAA;AAGF,WAAArB,EAAgBwB,CAAO,GAEhB,MAAM;AACX,MAAAvB,EAAkBK,CAAE;AAAA,IACtB;AAAA,EAGF,GAAG,CAACA,GAAIC,GAAOI,GAAOO,GAASC,GAASE,GAAUrB,GAAiBC,CAAiB,CAAC;AACvF;"}
@@ -74,6 +74,8 @@ export declare function keybindingToSymbols(kb: KeyBinding): string[];
74
74
  * e.g. "⌘⇧P" on Mac, "Ctrl+Shift+P" on Windows
75
75
  */
76
76
  export declare function keybindingToString(kb: KeyBinding): string;
77
+ /** True when a KeyBinding has a non-empty key string (safe for matching/display). */
78
+ export declare function hasUsableShortcutKey(kb: KeyBinding | undefined): kb is KeyBinding;
77
79
  /**
78
80
  * Check if a keyboard event matches a KeyBinding definition.
79
81
  */