@countermeasure-platform/web-components 0.2.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 (2076) hide show
  1. package/LICENSE +92 -0
  2. package/README.md +185 -0
  3. package/dist/_basePickBy-BNGzgD3S.js +168 -0
  4. package/dist/_basePickBy-BNGzgD3S.js.map +1 -0
  5. package/dist/_baseUniq-CSCAMor9.js +684 -0
  6. package/dist/_baseUniq-CSCAMor9.js.map +1 -0
  7. package/dist/a11y-B5pN4M_a.js +173 -0
  8. package/dist/a11y-B5pN4M_a.js.map +1 -0
  9. package/dist/alert-dialog-x70JmbHN.js +202 -0
  10. package/dist/alert-dialog-x70JmbHN.js.map +1 -0
  11. package/dist/app-switcher/index.d.ts +38 -0
  12. package/dist/app-switcher/index.d.ts.map +1 -0
  13. package/dist/app-switcher/index.js +90 -0
  14. package/dist/app-switcher/index.js.map +1 -0
  15. package/dist/appearance/index.d.ts +34 -0
  16. package/dist/appearance/index.d.ts.map +1 -0
  17. package/dist/appearance/index.js +110 -0
  18. package/dist/appearance/index.js.map +1 -0
  19. package/dist/arc-Dd7Q8ESg.js +82 -0
  20. package/dist/arc-Dd7Q8ESg.js.map +1 -0
  21. package/dist/architecture-PBZL5I3N-ZJhv7ma8.js +3 -0
  22. package/dist/architectureDiagram-2XIMDMQ5-Du7QH2cn.js +4048 -0
  23. package/dist/architectureDiagram-2XIMDMQ5-Du7QH2cn.js.map +1 -0
  24. package/dist/array-BjkKHsZp.js +8 -0
  25. package/dist/array-BjkKHsZp.js.map +1 -0
  26. package/dist/arrow-up-gNaqffAh.js +35 -0
  27. package/dist/arrow-up-gNaqffAh.js.map +1 -0
  28. package/dist/auth/index.d.ts +103 -0
  29. package/dist/auth/index.d.ts.map +1 -0
  30. package/dist/auth/index.js +113 -0
  31. package/dist/auth/index.js.map +1 -0
  32. package/dist/avatar-Chu9WlV5.js +102 -0
  33. package/dist/avatar-Chu9WlV5.js.map +1 -0
  34. package/dist/badge-DIbZWeHZ.js +69 -0
  35. package/dist/badge-DIbZWeHZ.js.map +1 -0
  36. package/dist/base-CBgB0j_Y.js +2096 -0
  37. package/dist/base-CBgB0j_Y.js.map +1 -0
  38. package/dist/blockDiagram-WCTKOSBZ-JlYA7IvY.js +3028 -0
  39. package/dist/blockDiagram-WCTKOSBZ-JlYA7IvY.js.map +1 -0
  40. package/dist/button-DKuKl4vs.js +69 -0
  41. package/dist/button-DKuKl4vs.js.map +1 -0
  42. package/dist/c4Diagram-IC4MRINW-BhRMN0uU.js +2967 -0
  43. package/dist/c4Diagram-IC4MRINW-BhRMN0uU.js.map +1 -0
  44. package/dist/carousel-Bh3y14sN.js +139 -0
  45. package/dist/carousel-Bh3y14sN.js.map +1 -0
  46. package/dist/channel-mQoH3HVA.js +7 -0
  47. package/dist/channel-mQoH3HVA.js.map +1 -0
  48. package/dist/charts/annotations.d.ts +15 -0
  49. package/dist/charts/annotations.d.ts.map +1 -0
  50. package/dist/charts/annotations.js +24 -0
  51. package/dist/charts/annotations.js.map +1 -0
  52. package/dist/charts/area/index.d.ts +14 -0
  53. package/dist/charts/area/index.d.ts.map +1 -0
  54. package/dist/charts/area/index.js +104 -0
  55. package/dist/charts/area/index.js.map +1 -0
  56. package/dist/charts/area/types.d.ts +8 -0
  57. package/dist/charts/area/types.d.ts.map +1 -0
  58. package/dist/charts/axis.d.ts +8 -0
  59. package/dist/charts/axis.d.ts.map +1 -0
  60. package/dist/charts/axis.js +36 -0
  61. package/dist/charts/axis.js.map +1 -0
  62. package/dist/charts/bar/index.d.ts +19 -0
  63. package/dist/charts/bar/index.d.ts.map +1 -0
  64. package/dist/charts/bar/index.js +145 -0
  65. package/dist/charts/bar/index.js.map +1 -0
  66. package/dist/charts/bar/types.d.ts +8 -0
  67. package/dist/charts/bar/types.d.ts.map +1 -0
  68. package/dist/charts/base.d.ts +90 -0
  69. package/dist/charts/base.d.ts.map +1 -0
  70. package/dist/charts/base.js +203 -0
  71. package/dist/charts/base.js.map +1 -0
  72. package/dist/charts/candlestick/index.d.ts +25 -0
  73. package/dist/charts/candlestick/index.d.ts.map +1 -0
  74. package/dist/charts/candlestick/index.js +141 -0
  75. package/dist/charts/candlestick/index.js.map +1 -0
  76. package/dist/charts/candlestick/types.d.ts +19 -0
  77. package/dist/charts/candlestick/types.d.ts.map +1 -0
  78. package/dist/charts/funnel/index.d.ts +29 -0
  79. package/dist/charts/funnel/index.d.ts.map +1 -0
  80. package/dist/charts/funnel/index.js +126 -0
  81. package/dist/charts/funnel/index.js.map +1 -0
  82. package/dist/charts/funnel/types.d.ts +16 -0
  83. package/dist/charts/funnel/types.d.ts.map +1 -0
  84. package/dist/charts/gauge/index.d.ts +26 -0
  85. package/dist/charts/gauge/index.d.ts.map +1 -0
  86. package/dist/charts/gauge/index.js +70 -0
  87. package/dist/charts/gauge/index.js.map +1 -0
  88. package/dist/charts/gauge/types.d.ts +18 -0
  89. package/dist/charts/gauge/types.d.ts.map +1 -0
  90. package/dist/charts/heatmap/index.d.ts +29 -0
  91. package/dist/charts/heatmap/index.d.ts.map +1 -0
  92. package/dist/charts/heatmap/index.js +113 -0
  93. package/dist/charts/heatmap/index.js.map +1 -0
  94. package/dist/charts/heatmap/types.d.ts +17 -0
  95. package/dist/charts/heatmap/types.d.ts.map +1 -0
  96. package/dist/charts/index.d.ts +46 -0
  97. package/dist/charts/index.d.ts.map +1 -0
  98. package/dist/charts/index.js +24 -0
  99. package/dist/charts/interactive.d.ts +15 -0
  100. package/dist/charts/interactive.d.ts.map +1 -0
  101. package/dist/charts/legend.d.ts +16 -0
  102. package/dist/charts/legend.d.ts.map +1 -0
  103. package/dist/charts/legend.js +43 -0
  104. package/dist/charts/legend.js.map +1 -0
  105. package/dist/charts/line/index.d.ts +14 -0
  106. package/dist/charts/line/index.d.ts.map +1 -0
  107. package/dist/charts/line/index.js +85 -0
  108. package/dist/charts/line/index.js.map +1 -0
  109. package/dist/charts/line/types.d.ts +8 -0
  110. package/dist/charts/line/types.d.ts.map +1 -0
  111. package/dist/charts/pie/index.d.ts +24 -0
  112. package/dist/charts/pie/index.d.ts.map +1 -0
  113. package/dist/charts/pie/index.js +123 -0
  114. package/dist/charts/pie/index.js.map +1 -0
  115. package/dist/charts/pie/types.d.ts +15 -0
  116. package/dist/charts/pie/types.d.ts.map +1 -0
  117. package/dist/charts/radar/index.d.ts +27 -0
  118. package/dist/charts/radar/index.d.ts.map +1 -0
  119. package/dist/charts/radar/index.js +151 -0
  120. package/dist/charts/radar/index.js.map +1 -0
  121. package/dist/charts/radar/types.d.ts +16 -0
  122. package/dist/charts/radar/types.d.ts.map +1 -0
  123. package/dist/charts/sankey/index.d.ts +29 -0
  124. package/dist/charts/sankey/index.d.ts.map +1 -0
  125. package/dist/charts/sankey/index.js +192 -0
  126. package/dist/charts/sankey/index.js.map +1 -0
  127. package/dist/charts/sankey/types.d.ts +21 -0
  128. package/dist/charts/sankey/types.d.ts.map +1 -0
  129. package/dist/charts/scatter/index.d.ts +19 -0
  130. package/dist/charts/scatter/index.d.ts.map +1 -0
  131. package/dist/charts/scatter/index.js +106 -0
  132. package/dist/charts/scatter/index.js.map +1 -0
  133. package/dist/charts/scatter/types.d.ts +6 -0
  134. package/dist/charts/scatter/types.d.ts.map +1 -0
  135. package/dist/charts/series.d.ts +11 -0
  136. package/dist/charts/series.d.ts.map +1 -0
  137. package/dist/charts/sparkline/index.d.ts +20 -0
  138. package/dist/charts/sparkline/index.d.ts.map +1 -0
  139. package/dist/charts/sparkline/index.js +99 -0
  140. package/dist/charts/sparkline/index.js.map +1 -0
  141. package/dist/charts/sparkline/types.d.ts +11 -0
  142. package/dist/charts/sparkline/types.d.ts.map +1 -0
  143. package/dist/charts/tooltip.d.ts +28 -0
  144. package/dist/charts/tooltip.d.ts.map +1 -0
  145. package/dist/charts/tooltip.js +41 -0
  146. package/dist/charts/tooltip.js.map +1 -0
  147. package/dist/charts/treemap/index.d.ts +26 -0
  148. package/dist/charts/treemap/index.d.ts.map +1 -0
  149. package/dist/charts/treemap/index.js +132 -0
  150. package/dist/charts/treemap/index.js.map +1 -0
  151. package/dist/charts/treemap/types.d.ts +15 -0
  152. package/dist/charts/treemap/types.d.ts.map +1 -0
  153. package/dist/charts/types.d.ts +71 -0
  154. package/dist/charts/types.d.ts.map +1 -0
  155. package/dist/charts/utils.d.ts +75 -0
  156. package/dist/charts/utils.d.ts.map +1 -0
  157. package/dist/charts/utils.js +113 -0
  158. package/dist/charts/utils.js.map +1 -0
  159. package/dist/charts/waterfall/index.d.ts +19 -0
  160. package/dist/charts/waterfall/index.d.ts.map +1 -0
  161. package/dist/charts/waterfall/index.js +138 -0
  162. package/dist/charts/waterfall/index.js.map +1 -0
  163. package/dist/charts/waterfall/types.d.ts +19 -0
  164. package/dist/charts/waterfall/types.d.ts.map +1 -0
  165. package/dist/charts/zoom.d.ts +32 -0
  166. package/dist/charts/zoom.d.ts.map +1 -0
  167. package/dist/charts/zoom.js +62 -0
  168. package/dist/charts/zoom.js.map +1 -0
  169. package/dist/check-D2xnnLBE.js +9 -0
  170. package/dist/check-D2xnnLBE.js.map +1 -0
  171. package/dist/chevron-down-CsLpP_71.js +9 -0
  172. package/dist/chevron-down-CsLpP_71.js.map +1 -0
  173. package/dist/chevron-right-Cz5qRdmA.js +9 -0
  174. package/dist/chevron-right-Cz5qRdmA.js.map +1 -0
  175. package/dist/chevron-up-BhaePjuF.js +9 -0
  176. package/dist/chevron-up-BhaePjuF.js.map +1 -0
  177. package/dist/chunk-4BX2VUAB-hGnoekTd.js +10 -0
  178. package/dist/chunk-4BX2VUAB-hGnoekTd.js.map +1 -0
  179. package/dist/chunk-55IACEB6-BJN5TXvX.js +11 -0
  180. package/dist/chunk-55IACEB6-BJN5TXvX.js.map +1 -0
  181. package/dist/chunk-7E7YKBS2-D5sZlDQ3.js +25 -0
  182. package/dist/chunk-7E7YKBS2-D5sZlDQ3.js.map +1 -0
  183. package/dist/chunk-7R4GIKGN-9QecSWiR.js +2054 -0
  184. package/dist/chunk-7R4GIKGN-9QecSWiR.js.map +1 -0
  185. package/dist/chunk-C72U2L5F--DXr9EKz.js +25 -0
  186. package/dist/chunk-C72U2L5F--DXr9EKz.js.map +1 -0
  187. package/dist/chunk-EGIJ26TM-B0D9vEQz.js +25 -0
  188. package/dist/chunk-EGIJ26TM-B0D9vEQz.js.map +1 -0
  189. package/dist/chunk-FMBD7UC4-Ccq-i6vu.js +7 -0
  190. package/dist/chunk-FMBD7UC4-Ccq-i6vu.js.map +1 -0
  191. package/dist/chunk-GEFDOKGD-DpHiMpV6.js +1124 -0
  192. package/dist/chunk-GEFDOKGD-DpHiMpV6.js.map +1 -0
  193. package/dist/chunk-GLR3WWYH-HerLgrS-.js +43 -0
  194. package/dist/chunk-GLR3WWYH-HerLgrS-.js.map +1 -0
  195. package/dist/chunk-HHEYEP7N-Cjt1V-hl.js +12 -0
  196. package/dist/chunk-HHEYEP7N-Cjt1V-hl.js.map +1 -0
  197. package/dist/chunk-JSJVCQXG-DTdWcs9o.js +63 -0
  198. package/dist/chunk-JSJVCQXG-DTdWcs9o.js.map +1 -0
  199. package/dist/chunk-KX2RTZJC-DUcdo_W8.js +27 -0
  200. package/dist/chunk-KX2RTZJC-DUcdo_W8.js.map +1 -0
  201. package/dist/chunk-KYZI473N-DyL0ymcr.js +3437 -0
  202. package/dist/chunk-KYZI473N-DyL0ymcr.js.map +1 -0
  203. package/dist/chunk-L3YUKLVL-Cwsx-xzL.js +25 -0
  204. package/dist/chunk-L3YUKLVL-Cwsx-xzL.js.map +1 -0
  205. package/dist/chunk-MX3YWQON-BrC3_psH.js +82 -0
  206. package/dist/chunk-MX3YWQON-BrC3_psH.js.map +1 -0
  207. package/dist/chunk-NBPlniwU.js +23 -0
  208. package/dist/chunk-NQ4KR5QH-kaL7nywj.js +2004 -0
  209. package/dist/chunk-NQ4KR5QH-kaL7nywj.js.map +1 -0
  210. package/dist/chunk-O4XLMI2P-DPXU-owT.js +514 -0
  211. package/dist/chunk-O4XLMI2P-DPXU-owT.js.map +1 -0
  212. package/dist/chunk-OZEHJAEY-Ds1P6-z-.js +66 -0
  213. package/dist/chunk-OZEHJAEY-Ds1P6-z-.js.map +1 -0
  214. package/dist/chunk-PQ6SQG4A-DEjy9Dhi.js +69 -0
  215. package/dist/chunk-PQ6SQG4A-DEjy9Dhi.js.map +1 -0
  216. package/dist/chunk-PU5JKC2W-CfzbN3Mu.js +1888 -0
  217. package/dist/chunk-PU5JKC2W-CfzbN3Mu.js.map +1 -0
  218. package/dist/chunk-QZHKN3VN-DYJHpXRp.js +17 -0
  219. package/dist/chunk-QZHKN3VN-DYJHpXRp.js.map +1 -0
  220. package/dist/chunk-R5LLSJPH-BQuurwR-.js +37 -0
  221. package/dist/chunk-R5LLSJPH-BQuurwR-.js.map +1 -0
  222. package/dist/chunk-WL4C6EOR-DCGop7dE.js +3198 -0
  223. package/dist/chunk-WL4C6EOR-DCGop7dE.js.map +1 -0
  224. package/dist/chunk-XIRO2GV7-CS2_2Fdn.js +32 -0
  225. package/dist/chunk-XIRO2GV7-CS2_2Fdn.js.map +1 -0
  226. package/dist/chunk-XPW4576I-CfQenFiw.js +1148 -0
  227. package/dist/chunk-XPW4576I-CfQenFiw.js.map +1 -0
  228. package/dist/chunk-XZSTWKYB-DxHspq6G.js +15799 -0
  229. package/dist/chunk-XZSTWKYB-DxHspq6G.js.map +1 -0
  230. package/dist/chunk-YBOYWFTD-Dkc3kKkT.js +34 -0
  231. package/dist/chunk-YBOYWFTD-Dkc3kKkT.js.map +1 -0
  232. package/dist/classDiagram-VBA2DB6C-Ba1kbLE7.js +31 -0
  233. package/dist/classDiagram-VBA2DB6C-Ba1kbLE7.js.map +1 -0
  234. package/dist/classDiagram-v2-RAHNMMFH-BdFCvKXE.js +31 -0
  235. package/dist/classDiagram-v2-RAHNMMFH-BdFCvKXE.js.map +1 -0
  236. package/dist/clone-CzASr4DI.js +10 -0
  237. package/dist/clone-CzASr4DI.js.map +1 -0
  238. package/dist/components/context-menu/index.d.ts +31 -0
  239. package/dist/components/context-menu/index.d.ts.map +1 -0
  240. package/dist/components/context-menu/index.js +66 -0
  241. package/dist/components/context-menu/index.js.map +1 -0
  242. package/dist/components/copy-button/index.d.ts +27 -0
  243. package/dist/components/copy-button/index.d.ts.map +1 -0
  244. package/dist/components/copy-button/index.js +43 -0
  245. package/dist/components/copy-button/index.js.map +1 -0
  246. package/dist/components/data-table/export.d.ts +8 -0
  247. package/dist/components/data-table/export.d.ts.map +1 -0
  248. package/dist/components/data-table/index.d.ts +55 -0
  249. package/dist/components/data-table/index.d.ts.map +1 -0
  250. package/dist/components/data-table/index.js +2 -0
  251. package/dist/components/data-table/renderers.d.ts +9 -0
  252. package/dist/components/data-table/renderers.d.ts.map +1 -0
  253. package/dist/components/data-table/types.d.ts +36 -0
  254. package/dist/components/data-table/types.d.ts.map +1 -0
  255. package/dist/components/detail-header/index.d.ts +45 -0
  256. package/dist/components/detail-header/index.d.ts.map +1 -0
  257. package/dist/components/detail-header/index.js +88 -0
  258. package/dist/components/detail-header/index.js.map +1 -0
  259. package/dist/components/index.d.ts +28 -0
  260. package/dist/components/index.d.ts.map +1 -0
  261. package/dist/components/index.js +15 -0
  262. package/dist/components/log-toolbar/index.d.ts +50 -0
  263. package/dist/components/log-toolbar/index.d.ts.map +1 -0
  264. package/dist/components/log-toolbar/index.js +74 -0
  265. package/dist/components/log-toolbar/index.js.map +1 -0
  266. package/dist/components/modal/index.d.ts +27 -0
  267. package/dist/components/modal/index.d.ts.map +1 -0
  268. package/dist/components/modal/index.js +103 -0
  269. package/dist/components/modal/index.js.map +1 -0
  270. package/dist/components/modal/types.d.ts +17 -0
  271. package/dist/components/modal/types.d.ts.map +1 -0
  272. package/dist/components/pagination/index.d.ts +29 -0
  273. package/dist/components/pagination/index.d.ts.map +1 -0
  274. package/dist/components/pagination/index.js +45 -0
  275. package/dist/components/pagination/index.js.map +1 -0
  276. package/dist/components/search/command-palette.d.ts +24 -0
  277. package/dist/components/search/command-palette.d.ts.map +1 -0
  278. package/dist/components/search/command-palette.js +96 -0
  279. package/dist/components/search/command-palette.js.map +1 -0
  280. package/dist/components/search/index.d.ts +37 -0
  281. package/dist/components/search/index.d.ts.map +1 -0
  282. package/dist/components/search/index.js +175 -0
  283. package/dist/components/search/index.js.map +1 -0
  284. package/dist/components/search/types.d.ts +34 -0
  285. package/dist/components/search/types.d.ts.map +1 -0
  286. package/dist/components/split-pane/index.d.ts +37 -0
  287. package/dist/components/split-pane/index.d.ts.map +1 -0
  288. package/dist/components/split-pane/index.js +129 -0
  289. package/dist/components/split-pane/index.js.map +1 -0
  290. package/dist/components/split-pane/types.d.ts +19 -0
  291. package/dist/components/split-pane/types.d.ts.map +1 -0
  292. package/dist/components/status-bar/index.d.ts +29 -0
  293. package/dist/components/status-bar/index.d.ts.map +1 -0
  294. package/dist/components/status-bar/index.js +41 -0
  295. package/dist/components/status-bar/index.js.map +1 -0
  296. package/dist/components/tabs/index.d.ts +39 -0
  297. package/dist/components/tabs/index.d.ts.map +1 -0
  298. package/dist/components/tabs/index.js +130 -0
  299. package/dist/components/tabs/index.js.map +1 -0
  300. package/dist/components/tabs/types.d.ts +19 -0
  301. package/dist/components/tabs/types.d.ts.map +1 -0
  302. package/dist/components/toast/index.d.ts +43 -0
  303. package/dist/components/toast/index.d.ts.map +1 -0
  304. package/dist/components/toast/index.js +161 -0
  305. package/dist/components/toast/index.js.map +1 -0
  306. package/dist/components/toast/types.d.ts +17 -0
  307. package/dist/components/toast/types.d.ts.map +1 -0
  308. package/dist/components/tree-view/index.d.ts +70 -0
  309. package/dist/components/tree-view/index.d.ts.map +1 -0
  310. package/dist/components/tree-view/index.js +2 -0
  311. package/dist/components/tree-view/lazy.d.ts +7 -0
  312. package/dist/components/tree-view/lazy.d.ts.map +1 -0
  313. package/dist/components/tree-view/types.d.ts +24 -0
  314. package/dist/components/tree-view/types.d.ts.map +1 -0
  315. package/dist/consent/index.d.ts +86 -0
  316. package/dist/consent/index.d.ts.map +1 -0
  317. package/dist/consent/index.js +116 -0
  318. package/dist/consent/index.js.map +1 -0
  319. package/dist/copy-DLbL2paJ.js +17 -0
  320. package/dist/copy-DLbL2paJ.js.map +1 -0
  321. package/dist/cose-bilkent-S5V4N54A-Brn9HMfH.js +2253 -0
  322. package/dist/cose-bilkent-S5V4N54A-Brn9HMfH.js.map +1 -0
  323. package/dist/createLucideIcon-BPb01goH.js +44 -0
  324. package/dist/createLucideIcon-BPb01goH.js.map +1 -0
  325. package/dist/crypto/encoding-helpers.d.ts +11 -0
  326. package/dist/crypto/encoding-helpers.d.ts.map +1 -0
  327. package/dist/crypto/encoding.d.ts +59 -0
  328. package/dist/crypto/encoding.d.ts.map +1 -0
  329. package/dist/crypto/hybrid.d.ts +65 -0
  330. package/dist/crypto/hybrid.d.ts.map +1 -0
  331. package/dist/crypto/index.d.ts +103 -0
  332. package/dist/crypto/index.d.ts.map +1 -0
  333. package/dist/crypto/index.js +438 -0
  334. package/dist/crypto/index.js.map +1 -0
  335. package/dist/crypto/keys.d.ts +50 -0
  336. package/dist/crypto/keys.d.ts.map +1 -0
  337. package/dist/crypto/symmetric.d.ts +68 -0
  338. package/dist/crypto/symmetric.d.ts.map +1 -0
  339. package/dist/crypto/types.d.ts +88 -0
  340. package/dist/crypto/types.d.ts.map +1 -0
  341. package/dist/cytoscape.esm-B-Qy-QZk.js +18102 -0
  342. package/dist/cytoscape.esm-B-Qy-QZk.js.map +1 -0
  343. package/dist/dagre-AUN8SXyC.js +1485 -0
  344. package/dist/dagre-AUN8SXyC.js.map +1 -0
  345. package/dist/dagre-KLK3FWXG-B5Anf0Pr.js +296 -0
  346. package/dist/dagre-KLK3FWXG-B5Anf0Pr.js.map +1 -0
  347. package/dist/data-table-TZ_fmzbD.js +325 -0
  348. package/dist/data-table-TZ_fmzbD.js.map +1 -0
  349. package/dist/date-Dup6T6tm.js +61 -0
  350. package/dist/date-Dup6T6tm.js.map +1 -0
  351. package/dist/defaultLocale-B55TNBEB.js +203 -0
  352. package/dist/defaultLocale-B55TNBEB.js.map +1 -0
  353. package/dist/diagram-E7M64L7V-CbV5nfqR.js +530 -0
  354. package/dist/diagram-E7M64L7V-CbV5nfqR.js.map +1 -0
  355. package/dist/diagram-IFDJBPK2-CcXyWvqm.js +215 -0
  356. package/dist/diagram-IFDJBPK2-CcXyWvqm.js.map +1 -0
  357. package/dist/diagram-P4PSJMXO-pxkEt2hf.js +135 -0
  358. package/dist/diagram-P4PSJMXO-pxkEt2hf.js.map +1 -0
  359. package/dist/display/alert/index.d.ts +20 -0
  360. package/dist/display/alert/index.d.ts.map +1 -0
  361. package/dist/display/alert/index.js +56 -0
  362. package/dist/display/alert/index.js.map +1 -0
  363. package/dist/display/alert/types.d.ts +16 -0
  364. package/dist/display/alert/types.d.ts.map +1 -0
  365. package/dist/display/aspect-ratio/index.d.ts +21 -0
  366. package/dist/display/aspect-ratio/index.d.ts.map +1 -0
  367. package/dist/display/aspect-ratio/index.js +23 -0
  368. package/dist/display/aspect-ratio/index.js.map +1 -0
  369. package/dist/display/avatar/avatar-group.d.ts +19 -0
  370. package/dist/display/avatar/avatar-group.d.ts.map +1 -0
  371. package/dist/display/avatar/index.d.ts +30 -0
  372. package/dist/display/avatar/index.d.ts.map +1 -0
  373. package/dist/display/avatar/index.js +2 -0
  374. package/dist/display/avatar/types.d.ts +26 -0
  375. package/dist/display/avatar/types.d.ts.map +1 -0
  376. package/dist/display/badge/index.d.ts +22 -0
  377. package/dist/display/badge/index.d.ts.map +1 -0
  378. package/dist/display/badge/index.js +2 -0
  379. package/dist/display/badge/presets.d.ts +7 -0
  380. package/dist/display/badge/presets.d.ts.map +1 -0
  381. package/dist/display/badge/types.d.ts +19 -0
  382. package/dist/display/badge/types.d.ts.map +1 -0
  383. package/dist/display/card/index.d.ts +24 -0
  384. package/dist/display/card/index.d.ts.map +1 -0
  385. package/dist/display/card/index.js +48 -0
  386. package/dist/display/card/index.js.map +1 -0
  387. package/dist/display/card/types.d.ts +16 -0
  388. package/dist/display/card/types.d.ts.map +1 -0
  389. package/dist/display/code-block/index.d.ts +23 -0
  390. package/dist/display/code-block/index.d.ts.map +1 -0
  391. package/dist/display/code-block/index.js +101 -0
  392. package/dist/display/code-block/index.js.map +1 -0
  393. package/dist/display/code-block/types.d.ts +14 -0
  394. package/dist/display/code-block/types.d.ts.map +1 -0
  395. package/dist/display/empty-state/index.d.ts +17 -0
  396. package/dist/display/empty-state/index.d.ts.map +1 -0
  397. package/dist/display/empty-state/index.js +42 -0
  398. package/dist/display/empty-state/index.js.map +1 -0
  399. package/dist/display/empty-state/types.d.ts +16 -0
  400. package/dist/display/empty-state/types.d.ts.map +1 -0
  401. package/dist/display/hover-card/index.d.ts +46 -0
  402. package/dist/display/hover-card/index.d.ts.map +1 -0
  403. package/dist/display/hover-card/index.js +112 -0
  404. package/dist/display/hover-card/index.js.map +1 -0
  405. package/dist/display/hover-card/types.d.ts +14 -0
  406. package/dist/display/hover-card/types.d.ts.map +1 -0
  407. package/dist/display/index.d.ts +41 -0
  408. package/dist/display/index.d.ts.map +1 -0
  409. package/dist/display/index.js +18 -0
  410. package/dist/display/markdown-viewer/index.d.ts +25 -0
  411. package/dist/display/markdown-viewer/index.d.ts.map +1 -0
  412. package/dist/display/markdown-viewer/index.js +2 -0
  413. package/dist/display/markdown-viewer/parser.d.ts +60 -0
  414. package/dist/display/markdown-viewer/parser.d.ts.map +1 -0
  415. package/dist/display/markdown-viewer/types.d.ts +12 -0
  416. package/dist/display/markdown-viewer/types.d.ts.map +1 -0
  417. package/dist/display/notification-center/index.d.ts +43 -0
  418. package/dist/display/notification-center/index.d.ts.map +1 -0
  419. package/dist/display/notification-center/index.js +145 -0
  420. package/dist/display/notification-center/index.js.map +1 -0
  421. package/dist/display/notification-center/types.d.ts +30 -0
  422. package/dist/display/notification-center/types.d.ts.map +1 -0
  423. package/dist/display/popover/index.d.ts +43 -0
  424. package/dist/display/popover/index.d.ts.map +1 -0
  425. package/dist/display/popover/index.js +113 -0
  426. package/dist/display/popover/index.js.map +1 -0
  427. package/dist/display/popover/types.d.ts +16 -0
  428. package/dist/display/popover/types.d.ts.map +1 -0
  429. package/dist/display/progress/index.d.ts +28 -0
  430. package/dist/display/progress/index.d.ts.map +1 -0
  431. package/dist/display/progress/index.js +81 -0
  432. package/dist/display/progress/index.js.map +1 -0
  433. package/dist/display/progress/types.d.ts +18 -0
  434. package/dist/display/progress/types.d.ts.map +1 -0
  435. package/dist/display/severity-indicator/index.d.ts +19 -0
  436. package/dist/display/severity-indicator/index.d.ts.map +1 -0
  437. package/dist/display/severity-indicator/index.js +36 -0
  438. package/dist/display/severity-indicator/index.js.map +1 -0
  439. package/dist/display/severity-indicator/types.d.ts +14 -0
  440. package/dist/display/severity-indicator/types.d.ts.map +1 -0
  441. package/dist/display/stat-card/index.d.ts +23 -0
  442. package/dist/display/stat-card/index.d.ts.map +1 -0
  443. package/dist/display/stat-card/index.js +54 -0
  444. package/dist/display/stat-card/index.js.map +1 -0
  445. package/dist/display/stat-card/types.d.ts +19 -0
  446. package/dist/display/stat-card/types.d.ts.map +1 -0
  447. package/dist/display/tooltip/index.d.ts +37 -0
  448. package/dist/display/tooltip/index.d.ts.map +1 -0
  449. package/dist/display/tooltip/index.js +98 -0
  450. package/dist/display/tooltip/index.js.map +1 -0
  451. package/dist/display/tooltip/types.d.ts +13 -0
  452. package/dist/display/tooltip/types.d.ts.map +1 -0
  453. package/dist/display/typography/index.d.ts +24 -0
  454. package/dist/display/typography/index.d.ts.map +1 -0
  455. package/dist/display/typography/index.js +53 -0
  456. package/dist/display/typography/index.js.map +1 -0
  457. package/dist/display/typography/types.d.ts +19 -0
  458. package/dist/display/typography/types.d.ts.map +1 -0
  459. package/dist/display/uptime-bar/index.d.ts +18 -0
  460. package/dist/display/uptime-bar/index.d.ts.map +1 -0
  461. package/dist/display/uptime-bar/index.js +44 -0
  462. package/dist/display/uptime-bar/index.js.map +1 -0
  463. package/dist/display/uptime-bar/types.d.ts +17 -0
  464. package/dist/display/uptime-bar/types.d.ts.map +1 -0
  465. package/dist/dist--GaXbmRw2.js +118 -0
  466. package/dist/dist--GaXbmRw2.js.map +1 -0
  467. package/dist/dist-Axk3-hcS.js +75 -0
  468. package/dist/dist-Axk3-hcS.js.map +1 -0
  469. package/dist/dist-B8N_HFUN.js +577 -0
  470. package/dist/dist-B8N_HFUN.js.map +1 -0
  471. package/dist/dist-BCCeHAQm.js +35 -0
  472. package/dist/dist-BCCeHAQm.js.map +1 -0
  473. package/dist/dist-BEs9dhua.js +1282 -0
  474. package/dist/dist-BEs9dhua.js.map +1 -0
  475. package/dist/dist-BHlnF6po.js +47 -0
  476. package/dist/dist-BHlnF6po.js.map +1 -0
  477. package/dist/dist-BOvRuqYp.js +27 -0
  478. package/dist/dist-BOvRuqYp.js.map +1 -0
  479. package/dist/dist-Bf2tA9xW.js +617 -0
  480. package/dist/dist-Bf2tA9xW.js.map +1 -0
  481. package/dist/dist-BmxbWOAj.js +8 -0
  482. package/dist/dist-BmxbWOAj.js.map +1 -0
  483. package/dist/dist-BqhkOSZ9.js +19 -0
  484. package/dist/dist-BqhkOSZ9.js.map +1 -0
  485. package/dist/dist-ByLgcn06.js +1236 -0
  486. package/dist/dist-ByLgcn06.js.map +1 -0
  487. package/dist/dist-CXvCjmkw.js +29 -0
  488. package/dist/dist-CXvCjmkw.js.map +1 -0
  489. package/dist/dist-CncQbcn0.js +52 -0
  490. package/dist/dist-CncQbcn0.js.map +1 -0
  491. package/dist/dist-CuA1lYwd.js +185 -0
  492. package/dist/dist-CuA1lYwd.js.map +1 -0
  493. package/dist/dist-CuEY-E_Y.js +12 -0
  494. package/dist/dist-CuEY-E_Y.js.map +1 -0
  495. package/dist/dist-D3GdPS_X.js +153 -0
  496. package/dist/dist-D3GdPS_X.js.map +1 -0
  497. package/dist/dist-D6Fo4Qkc.js +13 -0
  498. package/dist/dist-D6Fo4Qkc.js.map +1 -0
  499. package/dist/dist-DHddbHrS.js +14 -0
  500. package/dist/dist-DHddbHrS.js.map +1 -0
  501. package/dist/dist-DKK7ynDa.js +31 -0
  502. package/dist/dist-DKK7ynDa.js.map +1 -0
  503. package/dist/dist-DLCJ6BjJ.js +68 -0
  504. package/dist/dist-DLCJ6BjJ.js.map +1 -0
  505. package/dist/dist-Di-HnAlt.js +279 -0
  506. package/dist/dist-Di-HnAlt.js.map +1 -0
  507. package/dist/dist-DtNafQtQ2.js +122 -0
  508. package/dist/dist-DtNafQtQ2.js.map +1 -0
  509. package/dist/dist-Ltr12WCJ.js +11020 -0
  510. package/dist/dist-Ltr12WCJ.js.map +1 -0
  511. package/dist/dist-hG2PgpV-2.js +12 -0
  512. package/dist/dist-hG2PgpV-2.js.map +1 -0
  513. package/dist/dropdown-menu-gev7lxyE.js +248 -0
  514. package/dist/dropdown-menu-gev7lxyE.js.map +1 -0
  515. package/dist/editors/base.d.ts +45 -0
  516. package/dist/editors/base.d.ts.map +1 -0
  517. package/dist/editors/code-editor.d.ts +25 -0
  518. package/dist/editors/code-editor.d.ts.map +1 -0
  519. package/dist/editors/code-editor.js +173 -0
  520. package/dist/editors/code-editor.js.map +1 -0
  521. package/dist/editors/diff-viewer.d.ts +18 -0
  522. package/dist/editors/diff-viewer.d.ts.map +1 -0
  523. package/dist/editors/diff-viewer.js +105 -0
  524. package/dist/editors/diff-viewer.js.map +1 -0
  525. package/dist/editors/index.d.ts +23 -0
  526. package/dist/editors/index.d.ts.map +1 -0
  527. package/dist/editors/index.js +14 -0
  528. package/dist/editors/json-viewer.d.ts +19 -0
  529. package/dist/editors/json-viewer.d.ts.map +1 -0
  530. package/dist/editors/json-viewer.js +78 -0
  531. package/dist/editors/json-viewer.js.map +1 -0
  532. package/dist/editors/languages/fluxl.d.ts +9 -0
  533. package/dist/editors/languages/fluxl.d.ts.map +1 -0
  534. package/dist/editors/languages/fluxl.js +77 -0
  535. package/dist/editors/languages/fluxl.js.map +1 -0
  536. package/dist/editors/languages/javascript.d.ts +6 -0
  537. package/dist/editors/languages/javascript.d.ts.map +1 -0
  538. package/dist/editors/languages/json.d.ts +4 -0
  539. package/dist/editors/languages/json.d.ts.map +1 -0
  540. package/dist/editors/languages/markdown.d.ts +4 -0
  541. package/dist/editors/languages/markdown.d.ts.map +1 -0
  542. package/dist/editors/languages/python.d.ts +4 -0
  543. package/dist/editors/languages/python.d.ts.map +1 -0
  544. package/dist/editors/languages/rust.d.ts +4 -0
  545. package/dist/editors/languages/rust.d.ts.map +1 -0
  546. package/dist/editors/languages/shell.d.ts +4 -0
  547. package/dist/editors/languages/shell.d.ts.map +1 -0
  548. package/dist/editors/languages/sql.d.ts +8 -0
  549. package/dist/editors/languages/sql.d.ts.map +1 -0
  550. package/dist/editors/languages/yaml.d.ts +6 -0
  551. package/dist/editors/languages/yaml.d.ts.map +1 -0
  552. package/dist/editors/languages/yara.d.ts +9 -0
  553. package/dist/editors/languages/yara.d.ts.map +1 -0
  554. package/dist/editors/languages/yara.js +93 -0
  555. package/dist/editors/languages/yara.js.map +1 -0
  556. package/dist/editors/languages/yaral.d.ts +9 -0
  557. package/dist/editors/languages/yaral.d.ts.map +1 -0
  558. package/dist/editors/languages/yaral.js +52 -0
  559. package/dist/editors/languages/yaral.js.map +1 -0
  560. package/dist/editors/log-viewer.d.ts +23 -0
  561. package/dist/editors/log-viewer.d.ts.map +1 -0
  562. package/dist/editors/log-viewer.js +89 -0
  563. package/dist/editors/log-viewer.js.map +1 -0
  564. package/dist/editors/types.d.ts +123 -0
  565. package/dist/editors/types.d.ts.map +1 -0
  566. package/dist/editors/yaml-editor.d.ts +8 -0
  567. package/dist/editors/yaml-editor.d.ts.map +1 -0
  568. package/dist/editors/yaml-editor.js +22 -0
  569. package/dist/editors/yaml-editor.js.map +1 -0
  570. package/dist/ellipsis-g4z73tVE.js +25 -0
  571. package/dist/ellipsis-g4z73tVE.js.map +1 -0
  572. package/dist/erDiagram-INFDFZHY-DF8z82V9.js +1669 -0
  573. package/dist/erDiagram-INFDFZHY-DF8z82V9.js.map +1 -0
  574. package/dist/es2015-CoPv8Nx3.js +703 -0
  575. package/dist/es2015-CoPv8Nx3.js.map +1 -0
  576. package/dist/flowDiagram-PKNHOUZH--GnQiGTL.js +4165 -0
  577. package/dist/flowDiagram-PKNHOUZH--GnQiGTL.js.map +1 -0
  578. package/dist/form/calendar/index.d.ts +41 -0
  579. package/dist/form/calendar/index.d.ts.map +1 -0
  580. package/dist/form/calendar/index.js +172 -0
  581. package/dist/form/calendar/index.js.map +1 -0
  582. package/dist/form/calendar/types.d.ts +18 -0
  583. package/dist/form/calendar/types.d.ts.map +1 -0
  584. package/dist/form/color-picker/index.d.ts +78 -0
  585. package/dist/form/color-picker/index.d.ts.map +1 -0
  586. package/dist/form/color-picker/index.js +547 -0
  587. package/dist/form/color-picker/index.js.map +1 -0
  588. package/dist/form/color-picker/types.d.ts +14 -0
  589. package/dist/form/color-picker/types.d.ts.map +1 -0
  590. package/dist/form/cron-editor/index.d.ts +56 -0
  591. package/dist/form/cron-editor/index.d.ts.map +1 -0
  592. package/dist/form/cron-editor/index.js +312 -0
  593. package/dist/form/cron-editor/index.js.map +1 -0
  594. package/dist/form/cron-editor/parser.d.ts +12 -0
  595. package/dist/form/cron-editor/parser.d.ts.map +1 -0
  596. package/dist/form/cron-editor/parser.js +211 -0
  597. package/dist/form/cron-editor/parser.js.map +1 -0
  598. package/dist/form/cron-editor/types.d.ts +31 -0
  599. package/dist/form/cron-editor/types.d.ts.map +1 -0
  600. package/dist/form/date-picker/index.d.ts +28 -0
  601. package/dist/form/date-picker/index.d.ts.map +1 -0
  602. package/dist/form/date-picker/index.js +115 -0
  603. package/dist/form/date-picker/index.js.map +1 -0
  604. package/dist/form/date-picker/range.d.ts +34 -0
  605. package/dist/form/date-picker/range.d.ts.map +1 -0
  606. package/dist/form/date-picker/range.js +179 -0
  607. package/dist/form/date-picker/range.js.map +1 -0
  608. package/dist/form/date-picker/time.d.ts +41 -0
  609. package/dist/form/date-picker/time.d.ts.map +1 -0
  610. package/dist/form/date-picker/time.js +146 -0
  611. package/dist/form/date-picker/time.js.map +1 -0
  612. package/dist/form/date-picker/types.d.ts +52 -0
  613. package/dist/form/date-picker/types.d.ts.map +1 -0
  614. package/dist/form/direction/index.d.ts +25 -0
  615. package/dist/form/direction/index.d.ts.map +1 -0
  616. package/dist/form/direction/index.js +36 -0
  617. package/dist/form/direction/index.js.map +1 -0
  618. package/dist/form/index.d.ts +19 -0
  619. package/dist/form/index.d.ts.map +1 -0
  620. package/dist/form/index.js +10 -0
  621. package/dist/form/tag-input/index.d.ts +45 -0
  622. package/dist/form/tag-input/index.d.ts.map +1 -0
  623. package/dist/form/tag-input/index.js +208 -0
  624. package/dist/form/tag-input/index.js.map +1 -0
  625. package/dist/form/tag-input/types.d.ts +22 -0
  626. package/dist/form/tag-input/types.d.ts.map +1 -0
  627. package/dist/ganttDiagram-A5KZAMGK-C-ecgUuM.js +3075 -0
  628. package/dist/ganttDiagram-A5KZAMGK-C-ecgUuM.js.map +1 -0
  629. package/dist/gitGraph-HDMCJU4V-Bc1dZdnh.js +3 -0
  630. package/dist/gitGraphDiagram-K3NZZRJ6-B3SX2MOp.js +628 -0
  631. package/dist/gitGraphDiagram-K3NZZRJ6-B3SX2MOp.js.map +1 -0
  632. package/dist/graphlib-B9J5YQhs.js +227 -0
  633. package/dist/graphlib-B9J5YQhs.js.map +1 -0
  634. package/dist/icons/index.d.ts +16 -0
  635. package/dist/icons/index.d.ts.map +1 -0
  636. package/dist/icons/index.js +93 -0
  637. package/dist/icons/index.js.map +1 -0
  638. package/dist/index.d.ts +54 -0
  639. package/dist/index.d.ts.map +1 -0
  640. package/dist/index.js +138 -0
  641. package/dist/info-3K5VOQVL-Bbwt2VhK.js +3 -0
  642. package/dist/infoDiagram-LFFYTUFH-C8h9fMHW.js +21 -0
  643. package/dist/infoDiagram-LFFYTUFH-C8h9fMHW.js.map +1 -0
  644. package/dist/init-w1fYmhFN.js +17 -0
  645. package/dist/init-w1fYmhFN.js.map +1 -0
  646. package/dist/input-6tYy57mp.js +311 -0
  647. package/dist/input-6tYy57mp.js.map +1 -0
  648. package/dist/interactive-9Ky-mbcb.js +24 -0
  649. package/dist/interactive-9Ky-mbcb.js.map +1 -0
  650. package/dist/isArrayLikeObject-Bdc4g39x.js +580 -0
  651. package/dist/isArrayLikeObject-Bdc4g39x.js.map +1 -0
  652. package/dist/isEmpty-CrXtQ9Zv.js +37 -0
  653. package/dist/isEmpty-CrXtQ9Zv.js.map +1 -0
  654. package/dist/ishikawaDiagram-PHBUUO56-Dzja5vrM.js +719 -0
  655. package/dist/ishikawaDiagram-PHBUUO56-Dzja5vrM.js.map +1 -0
  656. package/dist/journeyDiagram-4ABVD52K-CUzkcpCV.js +886 -0
  657. package/dist/journeyDiagram-4ABVD52K-CUzkcpCV.js.map +1 -0
  658. package/dist/json-CeyVGbpw.js +907 -0
  659. package/dist/json-CeyVGbpw.js.map +1 -0
  660. package/dist/kanban-definition-K7BYSVSG-DvIRVHW0.js +973 -0
  661. package/dist/kanban-definition-K7BYSVSG-DvIRVHW0.js.map +1 -0
  662. package/dist/katex-DWv23pJW.js +21981 -0
  663. package/dist/katex-DWv23pJW.js.map +1 -0
  664. package/dist/keyboard-BzL08saM.js +245 -0
  665. package/dist/keyboard-BzL08saM.js.map +1 -0
  666. package/dist/label-BObzQvEY.js +55 -0
  667. package/dist/label-BObzQvEY.js.map +1 -0
  668. package/dist/layout/index.d.ts +69 -0
  669. package/dist/layout/index.d.ts.map +1 -0
  670. package/dist/layout/index.js +240 -0
  671. package/dist/layout/index.js.map +1 -0
  672. package/dist/line-CmjYdUkH.js +36 -0
  673. package/dist/line-CmjYdUkH.js.map +1 -0
  674. package/dist/linear-DTQb0J_9.js +244 -0
  675. package/dist/linear-DTQb0J_9.js.map +1 -0
  676. package/dist/markdown-viewer-BLoPrrpk.js +211 -0
  677. package/dist/markdown-viewer-BLoPrrpk.js.map +1 -0
  678. package/dist/math-8tgL_lKq.js +12 -0
  679. package/dist/math-8tgL_lKq.js.map +1 -0
  680. package/dist/menubar-DnARRQDT.js +438 -0
  681. package/dist/menubar-DnARRQDT.js.map +1 -0
  682. package/dist/mermaid-parser.core-CuiIDpxY.js +61 -0
  683. package/dist/mermaid-parser.core-CuiIDpxY.js.map +1 -0
  684. package/dist/mermaid.core-DwgIyYMX.js +923 -0
  685. package/dist/mermaid.core-DwgIyYMX.js.map +1 -0
  686. package/dist/mindmap-definition-YRQLILUH-BOCS5UWn.js +966 -0
  687. package/dist/mindmap-definition-YRQLILUH-BOCS5UWn.js.map +1 -0
  688. package/dist/navigation/breadcrumb/index.d.ts +22 -0
  689. package/dist/navigation/breadcrumb/index.d.ts.map +1 -0
  690. package/dist/navigation/breadcrumb/index.js +74 -0
  691. package/dist/navigation/breadcrumb/index.js.map +1 -0
  692. package/dist/navigation/breadcrumb/types.d.ts +19 -0
  693. package/dist/navigation/breadcrumb/types.d.ts.map +1 -0
  694. package/dist/navigation/drawer/index.d.ts +40 -0
  695. package/dist/navigation/drawer/index.d.ts.map +1 -0
  696. package/dist/navigation/drawer/index.js +120 -0
  697. package/dist/navigation/drawer/index.js.map +1 -0
  698. package/dist/navigation/drawer/types.d.ts +19 -0
  699. package/dist/navigation/drawer/types.d.ts.map +1 -0
  700. package/dist/navigation/dropdown-menu/index.d.ts +57 -0
  701. package/dist/navigation/dropdown-menu/index.d.ts.map +1 -0
  702. package/dist/navigation/dropdown-menu/index.js +231 -0
  703. package/dist/navigation/dropdown-menu/index.js.map +1 -0
  704. package/dist/navigation/dropdown-menu/types.d.ts +38 -0
  705. package/dist/navigation/dropdown-menu/types.d.ts.map +1 -0
  706. package/dist/navigation/index.d.ts +17 -0
  707. package/dist/navigation/index.d.ts.map +1 -0
  708. package/dist/navigation/index.js +7 -0
  709. package/dist/navigation/menubar/index.d.ts +38 -0
  710. package/dist/navigation/menubar/index.d.ts.map +1 -0
  711. package/dist/navigation/menubar/index.js +166 -0
  712. package/dist/navigation/menubar/index.js.map +1 -0
  713. package/dist/navigation/menubar/types.d.ts +24 -0
  714. package/dist/navigation/menubar/types.d.ts.map +1 -0
  715. package/dist/navigation/navigation-menu/index.d.ts +49 -0
  716. package/dist/navigation/navigation-menu/index.d.ts.map +1 -0
  717. package/dist/navigation/navigation-menu/index.js +173 -0
  718. package/dist/navigation/navigation-menu/index.js.map +1 -0
  719. package/dist/navigation/navigation-menu/types.d.ts +24 -0
  720. package/dist/navigation/navigation-menu/types.d.ts.map +1 -0
  721. package/dist/navigation/stepper/index.d.ts +34 -0
  722. package/dist/navigation/stepper/index.d.ts.map +1 -0
  723. package/dist/navigation/stepper/index.js +91 -0
  724. package/dist/navigation/stepper/index.js.map +1 -0
  725. package/dist/navigation/stepper/types.d.ts +22 -0
  726. package/dist/navigation/stepper/types.d.ts.map +1 -0
  727. package/dist/navigation-menu-CR-D1doi.js +622 -0
  728. package/dist/navigation-menu-CR-D1doi.js.map +1 -0
  729. package/dist/ordinal-CYknuT-U.js +67 -0
  730. package/dist/ordinal-CYknuT-U.js.map +1 -0
  731. package/dist/overlays/alert-dialog/index.d.ts +35 -0
  732. package/dist/overlays/alert-dialog/index.d.ts.map +1 -0
  733. package/dist/overlays/alert-dialog/index.js +137 -0
  734. package/dist/overlays/alert-dialog/index.js.map +1 -0
  735. package/dist/overlays/alert-dialog/types.d.ts +17 -0
  736. package/dist/overlays/alert-dialog/types.d.ts.map +1 -0
  737. package/dist/overlays/carousel/index.d.ts +69 -0
  738. package/dist/overlays/carousel/index.d.ts.map +1 -0
  739. package/dist/overlays/carousel/index.js +154 -0
  740. package/dist/overlays/carousel/index.js.map +1 -0
  741. package/dist/overlays/carousel/types.d.ts +21 -0
  742. package/dist/overlays/carousel/types.d.ts.map +1 -0
  743. package/dist/overlays/index.d.ts +11 -0
  744. package/dist/overlays/index.d.ts.map +1 -0
  745. package/dist/overlays/index.js +4 -0
  746. package/dist/overlays/sheet/index.d.ts +37 -0
  747. package/dist/overlays/sheet/index.d.ts.map +1 -0
  748. package/dist/overlays/sheet/index.js +120 -0
  749. package/dist/overlays/sheet/index.js.map +1 -0
  750. package/dist/overlays/sheet/types.d.ts +20 -0
  751. package/dist/overlays/sheet/types.d.ts.map +1 -0
  752. package/dist/packet-RMMSAZCW-BJSH0V2C.js +3 -0
  753. package/dist/pagination-Co5Y-NPF.js +80 -0
  754. package/dist/pagination-Co5Y-NPF.js.map +1 -0
  755. package/dist/passkey/index.d.ts +77 -0
  756. package/dist/passkey/index.d.ts.map +1 -0
  757. package/dist/passkey/index.js +90 -0
  758. package/dist/passkey/index.js.map +1 -0
  759. package/dist/path-CmOMDdHx.js +87 -0
  760. package/dist/path-CmOMDdHx.js.map +1 -0
  761. package/dist/pie-UPGHQEXC-Bdq_H4Og.js +3 -0
  762. package/dist/pieDiagram-SKSYHLDU-CHElRUS-.js +167 -0
  763. package/dist/pieDiagram-SKSYHLDU-CHElRUS-.js.map +1 -0
  764. package/dist/primitives/button/button-group.d.ts +13 -0
  765. package/dist/primitives/button/button-group.d.ts.map +1 -0
  766. package/dist/primitives/button/index.d.ts +31 -0
  767. package/dist/primitives/button/index.d.ts.map +1 -0
  768. package/dist/primitives/button/index.js +2 -0
  769. package/dist/primitives/button/types.d.ts +22 -0
  770. package/dist/primitives/button/types.d.ts.map +1 -0
  771. package/dist/primitives/button/variants.d.ts +12 -0
  772. package/dist/primitives/button/variants.d.ts.map +1 -0
  773. package/dist/primitives/checkbox/group.d.ts +17 -0
  774. package/dist/primitives/checkbox/group.d.ts.map +1 -0
  775. package/dist/primitives/checkbox/group.js +58 -0
  776. package/dist/primitives/checkbox/group.js.map +1 -0
  777. package/dist/primitives/checkbox/index.d.ts +19 -0
  778. package/dist/primitives/checkbox/index.d.ts.map +1 -0
  779. package/dist/primitives/checkbox/index.js +38 -0
  780. package/dist/primitives/checkbox/index.js.map +1 -0
  781. package/dist/primitives/checkbox/types.d.ts +32 -0
  782. package/dist/primitives/checkbox/types.d.ts.map +1 -0
  783. package/dist/primitives/field/index.d.ts +44 -0
  784. package/dist/primitives/field/index.d.ts.map +1 -0
  785. package/dist/primitives/field/index.js +60 -0
  786. package/dist/primitives/field/index.js.map +1 -0
  787. package/dist/primitives/field/types.d.ts +14 -0
  788. package/dist/primitives/field/types.d.ts.map +1 -0
  789. package/dist/primitives/index.d.ts +38 -0
  790. package/dist/primitives/index.d.ts.map +1 -0
  791. package/dist/primitives/index.js +19 -0
  792. package/dist/primitives/input/index.d.ts +29 -0
  793. package/dist/primitives/input/index.d.ts.map +1 -0
  794. package/dist/primitives/input/index.js +2 -0
  795. package/dist/primitives/input/input-group.d.ts +17 -0
  796. package/dist/primitives/input/input-group.d.ts.map +1 -0
  797. package/dist/primitives/input/input-otp.d.ts +27 -0
  798. package/dist/primitives/input/input-otp.d.ts.map +1 -0
  799. package/dist/primitives/input/ip-input.d.ts +25 -0
  800. package/dist/primitives/input/ip-input.d.ts.map +1 -0
  801. package/dist/primitives/input/textarea.d.ts +24 -0
  802. package/dist/primitives/input/textarea.d.ts.map +1 -0
  803. package/dist/primitives/input/types.d.ts +67 -0
  804. package/dist/primitives/input/types.d.ts.map +1 -0
  805. package/dist/primitives/kbd/index.d.ts +19 -0
  806. package/dist/primitives/kbd/index.d.ts.map +1 -0
  807. package/dist/primitives/kbd/index.js +28 -0
  808. package/dist/primitives/kbd/index.js.map +1 -0
  809. package/dist/primitives/label/index.d.ts +27 -0
  810. package/dist/primitives/label/index.d.ts.map +1 -0
  811. package/dist/primitives/label/index.js +29 -0
  812. package/dist/primitives/label/index.js.map +1 -0
  813. package/dist/primitives/radio/index.d.ts +21 -0
  814. package/dist/primitives/radio/index.d.ts.map +1 -0
  815. package/dist/primitives/radio/index.js +78 -0
  816. package/dist/primitives/radio/index.js.map +1 -0
  817. package/dist/primitives/radio/types.d.ts +21 -0
  818. package/dist/primitives/radio/types.d.ts.map +1 -0
  819. package/dist/primitives/scroll-area/index.d.ts +27 -0
  820. package/dist/primitives/scroll-area/index.d.ts.map +1 -0
  821. package/dist/primitives/scroll-area/index.js +29 -0
  822. package/dist/primitives/scroll-area/index.js.map +1 -0
  823. package/dist/primitives/select/combobox.d.ts +42 -0
  824. package/dist/primitives/select/combobox.d.ts.map +1 -0
  825. package/dist/primitives/select/combobox.js +162 -0
  826. package/dist/primitives/select/combobox.js.map +1 -0
  827. package/dist/primitives/select/index.d.ts +47 -0
  828. package/dist/primitives/select/index.d.ts.map +1 -0
  829. package/dist/primitives/select/index.js +193 -0
  830. package/dist/primitives/select/index.js.map +1 -0
  831. package/dist/primitives/select/native.d.ts +19 -0
  832. package/dist/primitives/select/native.d.ts.map +1 -0
  833. package/dist/primitives/select/native.js +57 -0
  834. package/dist/primitives/select/native.js.map +1 -0
  835. package/dist/primitives/select/types.d.ts +49 -0
  836. package/dist/primitives/select/types.d.ts.map +1 -0
  837. package/dist/primitives/separator/index.d.ts +16 -0
  838. package/dist/primitives/separator/index.d.ts.map +1 -0
  839. package/dist/primitives/separator/index.js +16 -0
  840. package/dist/primitives/separator/index.js.map +1 -0
  841. package/dist/primitives/skeleton/index.d.ts +21 -0
  842. package/dist/primitives/skeleton/index.d.ts.map +1 -0
  843. package/dist/primitives/skeleton/index.js +19 -0
  844. package/dist/primitives/skeleton/index.js.map +1 -0
  845. package/dist/primitives/slider/index.d.ts +48 -0
  846. package/dist/primitives/slider/index.d.ts.map +1 -0
  847. package/dist/primitives/slider/index.js +118 -0
  848. package/dist/primitives/slider/index.js.map +1 -0
  849. package/dist/primitives/slider/types.d.ts +19 -0
  850. package/dist/primitives/slider/types.d.ts.map +1 -0
  851. package/dist/primitives/spinner/index.d.ts +20 -0
  852. package/dist/primitives/spinner/index.d.ts.map +1 -0
  853. package/dist/primitives/spinner/index.js +23 -0
  854. package/dist/primitives/spinner/index.js.map +1 -0
  855. package/dist/primitives/switch/index.d.ts +28 -0
  856. package/dist/primitives/switch/index.d.ts.map +1 -0
  857. package/dist/primitives/switch/index.js +44 -0
  858. package/dist/primitives/switch/index.js.map +1 -0
  859. package/dist/primitives/switch/types.d.ts +16 -0
  860. package/dist/primitives/switch/types.d.ts.map +1 -0
  861. package/dist/primitives/toggle/index.d.ts +25 -0
  862. package/dist/primitives/toggle/index.d.ts.map +1 -0
  863. package/dist/primitives/toggle/index.js +2 -0
  864. package/dist/primitives/toggle/toggle-group.d.ts +29 -0
  865. package/dist/primitives/toggle/toggle-group.d.ts.map +1 -0
  866. package/dist/primitives/toggle/types.d.ts +35 -0
  867. package/dist/primitives/toggle/types.d.ts.map +1 -0
  868. package/dist/primitives/utils.d.ts +9 -0
  869. package/dist/primitives/utils.d.ts.map +1 -0
  870. package/dist/purify.es-oNgIHWpC.js +551 -0
  871. package/dist/purify.es-oNgIHWpC.js.map +1 -0
  872. package/dist/quadrantDiagram-337W2JSQ-CCp6NZKq.js +1977 -0
  873. package/dist/quadrantDiagram-337W2JSQ-CCp6NZKq.js.map +1 -0
  874. package/dist/radar-KQ55EAFF-9Ge_dfwM.js +3 -0
  875. package/dist/radio-group-70BFGDbL.js +199 -0
  876. package/dist/radio-group-70BFGDbL.js.map +1 -0
  877. package/dist/react/brand/index.d.ts +36 -0
  878. package/dist/react/brand/index.d.ts.map +1 -0
  879. package/dist/react/brand.js +81 -0
  880. package/dist/react/brand.js.map +1 -0
  881. package/dist/react/index.d.ts +6 -0
  882. package/dist/react/index.d.ts.map +1 -0
  883. package/dist/react/primitives/alert-dialog.d.ts +15 -0
  884. package/dist/react/primitives/alert-dialog.d.ts.map +1 -0
  885. package/dist/react/primitives/alert-dialog.js +2 -0
  886. package/dist/react/primitives/alert.d.ts +16 -0
  887. package/dist/react/primitives/alert.d.ts.map +1 -0
  888. package/dist/react/primitives/alert.js +61 -0
  889. package/dist/react/primitives/alert.js.map +1 -0
  890. package/dist/react/primitives/animated-counter.d.ts +37 -0
  891. package/dist/react/primitives/animated-counter.d.ts.map +1 -0
  892. package/dist/react/primitives/animated-counter.js +86 -0
  893. package/dist/react/primitives/animated-counter.js.map +1 -0
  894. package/dist/react/primitives/aspect-ratio.d.ts +8 -0
  895. package/dist/react/primitives/aspect-ratio.d.ts.map +1 -0
  896. package/dist/react/primitives/aspect-ratio.js +23 -0
  897. package/dist/react/primitives/aspect-ratio.js.map +1 -0
  898. package/dist/react/primitives/attack-path.d.ts +34 -0
  899. package/dist/react/primitives/attack-path.d.ts.map +1 -0
  900. package/dist/react/primitives/attack-path.js +125 -0
  901. package/dist/react/primitives/attack-path.js.map +1 -0
  902. package/dist/react/primitives/avatar.d.ts +25 -0
  903. package/dist/react/primitives/avatar.d.ts.map +1 -0
  904. package/dist/react/primitives/avatar.js +95 -0
  905. package/dist/react/primitives/avatar.js.map +1 -0
  906. package/dist/react/primitives/badge.d.ts +11 -0
  907. package/dist/react/primitives/badge.d.ts.map +1 -0
  908. package/dist/react/primitives/badge.js +32 -0
  909. package/dist/react/primitives/badge.js.map +1 -0
  910. package/dist/react/primitives/breadcrumb.d.ts +12 -0
  911. package/dist/react/primitives/breadcrumb.d.ts.map +1 -0
  912. package/dist/react/primitives/breadcrumb.js +72 -0
  913. package/dist/react/primitives/breadcrumb.js.map +1 -0
  914. package/dist/react/primitives/button.d.ts +18 -0
  915. package/dist/react/primitives/button.d.ts.map +1 -0
  916. package/dist/react/primitives/button.js +82 -0
  917. package/dist/react/primitives/button.js.map +1 -0
  918. package/dist/react/primitives/calendar.d.ts +31 -0
  919. package/dist/react/primitives/calendar.d.ts.map +1 -0
  920. package/dist/react/primitives/calendar.js +139 -0
  921. package/dist/react/primitives/calendar.js.map +1 -0
  922. package/dist/react/primitives/card.d.ts +11 -0
  923. package/dist/react/primitives/card.d.ts.map +1 -0
  924. package/dist/react/primitives/card.js +32 -0
  925. package/dist/react/primitives/card.js.map +1 -0
  926. package/dist/react/primitives/carousel.d.ts +25 -0
  927. package/dist/react/primitives/carousel.d.ts.map +1 -0
  928. package/dist/react/primitives/carousel.js +2 -0
  929. package/dist/react/primitives/chart-area.d.ts +9 -0
  930. package/dist/react/primitives/chart-area.d.ts.map +1 -0
  931. package/dist/react/primitives/chart-area.js +26 -0
  932. package/dist/react/primitives/chart-area.js.map +1 -0
  933. package/dist/react/primitives/chart-bar.d.ts +9 -0
  934. package/dist/react/primitives/chart-bar.d.ts.map +1 -0
  935. package/dist/react/primitives/chart-bar.js +26 -0
  936. package/dist/react/primitives/chart-bar.js.map +1 -0
  937. package/dist/react/primitives/chart-candlestick.d.ts +8 -0
  938. package/dist/react/primitives/chart-candlestick.d.ts.map +1 -0
  939. package/dist/react/primitives/chart-candlestick.js +26 -0
  940. package/dist/react/primitives/chart-candlestick.js.map +1 -0
  941. package/dist/react/primitives/chart-funnel.d.ts +8 -0
  942. package/dist/react/primitives/chart-funnel.d.ts.map +1 -0
  943. package/dist/react/primitives/chart-funnel.js +26 -0
  944. package/dist/react/primitives/chart-funnel.js.map +1 -0
  945. package/dist/react/primitives/chart-gauge.d.ts +8 -0
  946. package/dist/react/primitives/chart-gauge.d.ts.map +1 -0
  947. package/dist/react/primitives/chart-gauge.js +37 -0
  948. package/dist/react/primitives/chart-gauge.js.map +1 -0
  949. package/dist/react/primitives/chart-heatmap.d.ts +8 -0
  950. package/dist/react/primitives/chart-heatmap.d.ts.map +1 -0
  951. package/dist/react/primitives/chart-heatmap.js +26 -0
  952. package/dist/react/primitives/chart-heatmap.js.map +1 -0
  953. package/dist/react/primitives/chart-line.d.ts +9 -0
  954. package/dist/react/primitives/chart-line.d.ts.map +1 -0
  955. package/dist/react/primitives/chart-line.js +26 -0
  956. package/dist/react/primitives/chart-line.js.map +1 -0
  957. package/dist/react/primitives/chart-pie.d.ts +8 -0
  958. package/dist/react/primitives/chart-pie.d.ts.map +1 -0
  959. package/dist/react/primitives/chart-pie.js +26 -0
  960. package/dist/react/primitives/chart-pie.js.map +1 -0
  961. package/dist/react/primitives/chart-radar.d.ts +8 -0
  962. package/dist/react/primitives/chart-radar.d.ts.map +1 -0
  963. package/dist/react/primitives/chart-radar.js +26 -0
  964. package/dist/react/primitives/chart-radar.js.map +1 -0
  965. package/dist/react/primitives/chart-sankey.d.ts +8 -0
  966. package/dist/react/primitives/chart-sankey.d.ts.map +1 -0
  967. package/dist/react/primitives/chart-sankey.js +26 -0
  968. package/dist/react/primitives/chart-sankey.js.map +1 -0
  969. package/dist/react/primitives/chart-scatter.d.ts +9 -0
  970. package/dist/react/primitives/chart-scatter.d.ts.map +1 -0
  971. package/dist/react/primitives/chart-scatter.js +26 -0
  972. package/dist/react/primitives/chart-scatter.js.map +1 -0
  973. package/dist/react/primitives/chart-sparkline.d.ts +7 -0
  974. package/dist/react/primitives/chart-sparkline.d.ts.map +1 -0
  975. package/dist/react/primitives/chart-sparkline.js +26 -0
  976. package/dist/react/primitives/chart-sparkline.js.map +1 -0
  977. package/dist/react/primitives/chart-treemap.d.ts +8 -0
  978. package/dist/react/primitives/chart-treemap.d.ts.map +1 -0
  979. package/dist/react/primitives/chart-treemap.js +26 -0
  980. package/dist/react/primitives/chart-treemap.js.map +1 -0
  981. package/dist/react/primitives/chart-waterfall.d.ts +8 -0
  982. package/dist/react/primitives/chart-waterfall.d.ts.map +1 -0
  983. package/dist/react/primitives/chart-waterfall.js +26 -0
  984. package/dist/react/primitives/chart-waterfall.js.map +1 -0
  985. package/dist/react/primitives/checkbox.d.ts +9 -0
  986. package/dist/react/primitives/checkbox.d.ts.map +1 -0
  987. package/dist/react/primitives/checkbox.js +28 -0
  988. package/dist/react/primitives/checkbox.js.map +1 -0
  989. package/dist/react/primitives/code-block.d.ts +16 -0
  990. package/dist/react/primitives/code-block.d.ts.map +1 -0
  991. package/dist/react/primitives/code-block.js +67 -0
  992. package/dist/react/primitives/code-block.js.map +1 -0
  993. package/dist/react/primitives/code-viewer.d.ts +23 -0
  994. package/dist/react/primitives/code-viewer.d.ts.map +1 -0
  995. package/dist/react/primitives/code-viewer.js +229 -0
  996. package/dist/react/primitives/code-viewer.js.map +1 -0
  997. package/dist/react/primitives/collapsible.d.ts +32 -0
  998. package/dist/react/primitives/collapsible.d.ts.map +1 -0
  999. package/dist/react/primitives/collapsible.js +51 -0
  1000. package/dist/react/primitives/collapsible.js.map +1 -0
  1001. package/dist/react/primitives/color-picker.d.ts +18 -0
  1002. package/dist/react/primitives/color-picker.d.ts.map +1 -0
  1003. package/dist/react/primitives/color-picker.js +287 -0
  1004. package/dist/react/primitives/color-picker.js.map +1 -0
  1005. package/dist/react/primitives/context-menu.d.ts +24 -0
  1006. package/dist/react/primitives/context-menu.d.ts.map +1 -0
  1007. package/dist/react/primitives/context-menu.js +127 -0
  1008. package/dist/react/primitives/context-menu.js.map +1 -0
  1009. package/dist/react/primitives/copy-button.d.ts +23 -0
  1010. package/dist/react/primitives/copy-button.d.ts.map +1 -0
  1011. package/dist/react/primitives/copy-button.js +59 -0
  1012. package/dist/react/primitives/copy-button.js.map +1 -0
  1013. package/dist/react/primitives/cron-editor.d.ts +39 -0
  1014. package/dist/react/primitives/cron-editor.d.ts.map +1 -0
  1015. package/dist/react/primitives/cron-editor.js +456 -0
  1016. package/dist/react/primitives/cron-editor.js.map +1 -0
  1017. package/dist/react/primitives/cvss-badge.d.ts +21 -0
  1018. package/dist/react/primitives/cvss-badge.d.ts.map +1 -0
  1019. package/dist/react/primitives/cvss-badge.js +70 -0
  1020. package/dist/react/primitives/cvss-badge.js.map +1 -0
  1021. package/dist/react/primitives/data-grid.d.ts +73 -0
  1022. package/dist/react/primitives/data-grid.d.ts.map +1 -0
  1023. package/dist/react/primitives/data-grid.js +775 -0
  1024. package/dist/react/primitives/data-grid.js.map +1 -0
  1025. package/dist/react/primitives/data-table.d.ts +49 -0
  1026. package/dist/react/primitives/data-table.d.ts.map +1 -0
  1027. package/dist/react/primitives/data-table.js +144 -0
  1028. package/dist/react/primitives/data-table.js.map +1 -0
  1029. package/dist/react/primitives/date-picker.d.ts +57 -0
  1030. package/dist/react/primitives/date-picker.d.ts.map +1 -0
  1031. package/dist/react/primitives/date-picker.js +394 -0
  1032. package/dist/react/primitives/date-picker.js.map +1 -0
  1033. package/dist/react/primitives/detection-status.d.ts +47 -0
  1034. package/dist/react/primitives/detection-status.d.ts.map +1 -0
  1035. package/dist/react/primitives/detection-status.js +284 -0
  1036. package/dist/react/primitives/detection-status.js.map +1 -0
  1037. package/dist/react/primitives/dialog.d.ts +16 -0
  1038. package/dist/react/primitives/dialog.d.ts.map +1 -0
  1039. package/dist/react/primitives/dialog.js +87 -0
  1040. package/dist/react/primitives/dialog.js.map +1 -0
  1041. package/dist/react/primitives/direction.d.ts +21 -0
  1042. package/dist/react/primitives/direction.d.ts.map +1 -0
  1043. package/dist/react/primitives/direction.js +43 -0
  1044. package/dist/react/primitives/direction.js.map +1 -0
  1045. package/dist/react/primitives/drawer.d.ts +16 -0
  1046. package/dist/react/primitives/drawer.d.ts.map +1 -0
  1047. package/dist/react/primitives/drawer.js +88 -0
  1048. package/dist/react/primitives/drawer.js.map +1 -0
  1049. package/dist/react/primitives/dropdown-menu.d.ts +10 -0
  1050. package/dist/react/primitives/dropdown-menu.d.ts.map +1 -0
  1051. package/dist/react/primitives/dropdown-menu.js +2 -0
  1052. package/dist/react/primitives/empty-state.d.ts +17 -0
  1053. package/dist/react/primitives/empty-state.d.ts.map +1 -0
  1054. package/dist/react/primitives/empty-state.js +42 -0
  1055. package/dist/react/primitives/empty-state.js.map +1 -0
  1056. package/dist/react/primitives/error-boundary.d.ts +20 -0
  1057. package/dist/react/primitives/error-boundary.d.ts.map +1 -0
  1058. package/dist/react/primitives/error-boundary.js +30 -0
  1059. package/dist/react/primitives/error-boundary.js.map +1 -0
  1060. package/dist/react/primitives/field.d.ts +17 -0
  1061. package/dist/react/primitives/field.d.ts.map +1 -0
  1062. package/dist/react/primitives/field.js +41 -0
  1063. package/dist/react/primitives/field.js.map +1 -0
  1064. package/dist/react/primitives/file-tree.d.ts +28 -0
  1065. package/dist/react/primitives/file-tree.d.ts.map +1 -0
  1066. package/dist/react/primitives/file-tree.js +183 -0
  1067. package/dist/react/primitives/file-tree.js.map +1 -0
  1068. package/dist/react/primitives/flow-diagram.d.ts +18 -0
  1069. package/dist/react/primitives/flow-diagram.d.ts.map +1 -0
  1070. package/dist/react/primitives/flow-diagram.js +40 -0
  1071. package/dist/react/primitives/flow-diagram.js.map +1 -0
  1072. package/dist/react/primitives/heatmap-legend.d.ts +20 -0
  1073. package/dist/react/primitives/heatmap-legend.d.ts.map +1 -0
  1074. package/dist/react/primitives/heatmap-legend.js +29 -0
  1075. package/dist/react/primitives/heatmap-legend.js.map +1 -0
  1076. package/dist/react/primitives/heatmap-toolbar.d.ts +20 -0
  1077. package/dist/react/primitives/heatmap-toolbar.d.ts.map +1 -0
  1078. package/dist/react/primitives/heatmap-toolbar.js +34 -0
  1079. package/dist/react/primitives/heatmap-toolbar.js.map +1 -0
  1080. package/dist/react/primitives/hover-card.d.ts +23 -0
  1081. package/dist/react/primitives/hover-card.d.ts.map +1 -0
  1082. package/dist/react/primitives/hover-card.js +73 -0
  1083. package/dist/react/primitives/hover-card.js.map +1 -0
  1084. package/dist/react/primitives/index.d.ts +99 -0
  1085. package/dist/react/primitives/index.d.ts.map +1 -0
  1086. package/dist/react/primitives/index.js +99 -0
  1087. package/dist/react/primitives/input.d.ts +10 -0
  1088. package/dist/react/primitives/input.d.ts.map +1 -0
  1089. package/dist/react/primitives/input.js +18 -0
  1090. package/dist/react/primitives/input.js.map +1 -0
  1091. package/dist/react/primitives/json-path-browser.d.ts +15 -0
  1092. package/dist/react/primitives/json-path-browser.d.ts.map +1 -0
  1093. package/dist/react/primitives/json-path-browser.js +191 -0
  1094. package/dist/react/primitives/json-path-browser.js.map +1 -0
  1095. package/dist/react/primitives/kanban.d.ts +73 -0
  1096. package/dist/react/primitives/kanban.d.ts.map +1 -0
  1097. package/dist/react/primitives/kanban.js +210 -0
  1098. package/dist/react/primitives/kanban.js.map +1 -0
  1099. package/dist/react/primitives/kbd.d.ts +9 -0
  1100. package/dist/react/primitives/kbd.d.ts.map +1 -0
  1101. package/dist/react/primitives/kbd.js +22 -0
  1102. package/dist/react/primitives/kbd.js.map +1 -0
  1103. package/dist/react/primitives/label.d.ts +12 -0
  1104. package/dist/react/primitives/label.d.ts.map +1 -0
  1105. package/dist/react/primitives/label.js +2 -0
  1106. package/dist/react/primitives/map.d.ts +23 -0
  1107. package/dist/react/primitives/map.d.ts.map +1 -0
  1108. package/dist/react/primitives/map.js +39 -0
  1109. package/dist/react/primitives/map.js.map +1 -0
  1110. package/dist/react/primitives/markdown-viewer.d.ts +10 -0
  1111. package/dist/react/primitives/markdown-viewer.d.ts.map +1 -0
  1112. package/dist/react/primitives/markdown-viewer.js +0 -0
  1113. package/dist/react/primitives/markdown-viewer.js.map +1 -0
  1114. package/dist/react/primitives/menubar.d.ts +26 -0
  1115. package/dist/react/primitives/menubar.d.ts.map +1 -0
  1116. package/dist/react/primitives/menubar.js +2 -0
  1117. package/dist/react/primitives/mermaid-diagram.d.ts +16 -0
  1118. package/dist/react/primitives/mermaid-diagram.d.ts.map +1 -0
  1119. package/dist/react/primitives/mermaid-diagram.js +38 -0
  1120. package/dist/react/primitives/mermaid-diagram.js.map +1 -0
  1121. package/dist/react/primitives/mitre-matrix.d.ts +28 -0
  1122. package/dist/react/primitives/mitre-matrix.d.ts.map +1 -0
  1123. package/dist/react/primitives/mitre-matrix.js +125 -0
  1124. package/dist/react/primitives/mitre-matrix.js.map +1 -0
  1125. package/dist/react/primitives/modal.d.ts +22 -0
  1126. package/dist/react/primitives/modal.d.ts.map +1 -0
  1127. package/dist/react/primitives/modal.js +85 -0
  1128. package/dist/react/primitives/modal.js.map +1 -0
  1129. package/dist/react/primitives/navigation-menu.d.ts +13 -0
  1130. package/dist/react/primitives/navigation-menu.d.ts.map +1 -0
  1131. package/dist/react/primitives/navigation-menu.js +2 -0
  1132. package/dist/react/primitives/network-graph.d.ts +20 -0
  1133. package/dist/react/primitives/network-graph.d.ts.map +1 -0
  1134. package/dist/react/primitives/network-graph.js +46 -0
  1135. package/dist/react/primitives/network-graph.js.map +1 -0
  1136. package/dist/react/primitives/notification-center.d.ts +33 -0
  1137. package/dist/react/primitives/notification-center.d.ts.map +1 -0
  1138. package/dist/react/primitives/notification-center.js +132 -0
  1139. package/dist/react/primitives/notification-center.js.map +1 -0
  1140. package/dist/react/primitives/pagination.d.ts +13 -0
  1141. package/dist/react/primitives/pagination.d.ts.map +1 -0
  1142. package/dist/react/primitives/pagination.js +2 -0
  1143. package/dist/react/primitives/popover.d.ts +19 -0
  1144. package/dist/react/primitives/popover.d.ts.map +1 -0
  1145. package/dist/react/primitives/popover.js +142 -0
  1146. package/dist/react/primitives/popover.js.map +1 -0
  1147. package/dist/react/primitives/progress.d.ts +29 -0
  1148. package/dist/react/primitives/progress.d.ts.map +1 -0
  1149. package/dist/react/primitives/progress.js +98 -0
  1150. package/dist/react/primitives/progress.js.map +1 -0
  1151. package/dist/react/primitives/radio-group.d.ts +6 -0
  1152. package/dist/react/primitives/radio-group.d.ts.map +1 -0
  1153. package/dist/react/primitives/radio-group.js +2 -0
  1154. package/dist/react/primitives/ripple.d.ts +44 -0
  1155. package/dist/react/primitives/ripple.d.ts.map +1 -0
  1156. package/dist/react/primitives/ripple.js +63 -0
  1157. package/dist/react/primitives/ripple.js.map +1 -0
  1158. package/dist/react/primitives/rule-editor.d.ts +31 -0
  1159. package/dist/react/primitives/rule-editor.d.ts.map +1 -0
  1160. package/dist/react/primitives/rule-editor.js +261 -0
  1161. package/dist/react/primitives/rule-editor.js.map +1 -0
  1162. package/dist/react/primitives/scroll-area.d.ts +6 -0
  1163. package/dist/react/primitives/scroll-area.d.ts.map +1 -0
  1164. package/dist/react/primitives/scroll-area.js +2 -0
  1165. package/dist/react/primitives/search.d.ts +45 -0
  1166. package/dist/react/primitives/search.d.ts.map +1 -0
  1167. package/dist/react/primitives/search.js +318 -0
  1168. package/dist/react/primitives/search.js.map +1 -0
  1169. package/dist/react/primitives/select.d.ts +16 -0
  1170. package/dist/react/primitives/select.d.ts.map +1 -0
  1171. package/dist/react/primitives/select.js +2 -0
  1172. package/dist/react/primitives/separator.d.ts +5 -0
  1173. package/dist/react/primitives/separator.d.ts.map +1 -0
  1174. package/dist/react/primitives/separator.js +2 -0
  1175. package/dist/react/primitives/severity-indicator.d.ts +18 -0
  1176. package/dist/react/primitives/severity-indicator.d.ts.map +1 -0
  1177. package/dist/react/primitives/severity-indicator.js +74 -0
  1178. package/dist/react/primitives/severity-indicator.js.map +1 -0
  1179. package/dist/react/primitives/sheet.d.ts +16 -0
  1180. package/dist/react/primitives/sheet.d.ts.map +1 -0
  1181. package/dist/react/primitives/sheet.js +84 -0
  1182. package/dist/react/primitives/sheet.js.map +1 -0
  1183. package/dist/react/primitives/skeleton.d.ts +4 -0
  1184. package/dist/react/primitives/skeleton.d.ts.map +1 -0
  1185. package/dist/react/primitives/skeleton.js +15 -0
  1186. package/dist/react/primitives/skeleton.js.map +1 -0
  1187. package/dist/react/primitives/slide-panel.d.ts +28 -0
  1188. package/dist/react/primitives/slide-panel.d.ts.map +1 -0
  1189. package/dist/react/primitives/slide-panel.js +59 -0
  1190. package/dist/react/primitives/slide-panel.js.map +1 -0
  1191. package/dist/react/primitives/slider.d.ts +5 -0
  1192. package/dist/react/primitives/slider.d.ts.map +1 -0
  1193. package/dist/react/primitives/slider.js +2 -0
  1194. package/dist/react/primitives/spinner.d.ts +10 -0
  1195. package/dist/react/primitives/spinner.d.ts.map +1 -0
  1196. package/dist/react/primitives/spinner.js +28 -0
  1197. package/dist/react/primitives/spinner.js.map +1 -0
  1198. package/dist/react/primitives/split-pane.d.ts +19 -0
  1199. package/dist/react/primitives/split-pane.d.ts.map +1 -0
  1200. package/dist/react/primitives/split-pane.js +83 -0
  1201. package/dist/react/primitives/split-pane.js.map +1 -0
  1202. package/dist/react/primitives/stat-card.d.ts +19 -0
  1203. package/dist/react/primitives/stat-card.d.ts.map +1 -0
  1204. package/dist/react/primitives/stat-card.js +86 -0
  1205. package/dist/react/primitives/stat-card.js.map +1 -0
  1206. package/dist/react/primitives/status-bar.d.ts +11 -0
  1207. package/dist/react/primitives/status-bar.d.ts.map +1 -0
  1208. package/dist/react/primitives/status-bar.js +38 -0
  1209. package/dist/react/primitives/status-bar.js.map +1 -0
  1210. package/dist/react/primitives/stepper.d.ts +15 -0
  1211. package/dist/react/primitives/stepper.d.ts.map +1 -0
  1212. package/dist/react/primitives/stepper.js +68 -0
  1213. package/dist/react/primitives/stepper.js.map +1 -0
  1214. package/dist/react/primitives/switch.d.ts +16 -0
  1215. package/dist/react/primitives/switch.d.ts.map +1 -0
  1216. package/dist/react/primitives/switch.js +2 -0
  1217. package/dist/react/primitives/table.d.ts +11 -0
  1218. package/dist/react/primitives/table.d.ts.map +1 -0
  1219. package/dist/react/primitives/table.js +68 -0
  1220. package/dist/react/primitives/table.js.map +1 -0
  1221. package/dist/react/primitives/tabs.d.ts +8 -0
  1222. package/dist/react/primitives/tabs.d.ts.map +1 -0
  1223. package/dist/react/primitives/tabs.js +2 -0
  1224. package/dist/react/primitives/tag-input.d.ts +27 -0
  1225. package/dist/react/primitives/tag-input.d.ts.map +1 -0
  1226. package/dist/react/primitives/tag-input.js +206 -0
  1227. package/dist/react/primitives/tag-input.js.map +1 -0
  1228. package/dist/react/primitives/terminal.d.ts +16 -0
  1229. package/dist/react/primitives/terminal.d.ts.map +1 -0
  1230. package/dist/react/primitives/terminal.js +138 -0
  1231. package/dist/react/primitives/terminal.js.map +1 -0
  1232. package/dist/react/primitives/textarea.d.ts +4 -0
  1233. package/dist/react/primitives/textarea.d.ts.map +1 -0
  1234. package/dist/react/primitives/textarea.js +15 -0
  1235. package/dist/react/primitives/textarea.js.map +1 -0
  1236. package/dist/react/primitives/timeline.d.ts +31 -0
  1237. package/dist/react/primitives/timeline.d.ts.map +1 -0
  1238. package/dist/react/primitives/timeline.js +188 -0
  1239. package/dist/react/primitives/timeline.js.map +1 -0
  1240. package/dist/react/primitives/toast.d.ts +49 -0
  1241. package/dist/react/primitives/toast.d.ts.map +1 -0
  1242. package/dist/react/primitives/toast.js +2 -0
  1243. package/dist/react/primitives/toggle.d.ts +13 -0
  1244. package/dist/react/primitives/toggle.d.ts.map +1 -0
  1245. package/dist/react/primitives/toggle.js +2 -0
  1246. package/dist/react/primitives/tooltip.d.ts +15 -0
  1247. package/dist/react/primitives/tooltip.d.ts.map +1 -0
  1248. package/dist/react/primitives/tooltip.js +2 -0
  1249. package/dist/react/primitives/tree-view.d.ts +51 -0
  1250. package/dist/react/primitives/tree-view.d.ts.map +1 -0
  1251. package/dist/react/primitives/tree-view.js +121 -0
  1252. package/dist/react/primitives/tree-view.js.map +1 -0
  1253. package/dist/react/primitives/typography.d.ts +14 -0
  1254. package/dist/react/primitives/typography.d.ts.map +1 -0
  1255. package/dist/react/primitives/typography.js +85 -0
  1256. package/dist/react/primitives/typography.js.map +1 -0
  1257. package/dist/react/primitives/uptime-bar.d.ts +16 -0
  1258. package/dist/react/primitives/uptime-bar.d.ts.map +1 -0
  1259. package/dist/react/primitives/uptime-bar.js +44 -0
  1260. package/dist/react/primitives/uptime-bar.js.map +1 -0
  1261. package/dist/react/primitives/utils.d.ts +3 -0
  1262. package/dist/react/primitives/utils.d.ts.map +1 -0
  1263. package/dist/react/primitives/vulnerability-card.d.ts +40 -0
  1264. package/dist/react/primitives/vulnerability-card.d.ts.map +1 -0
  1265. package/dist/react/primitives/vulnerability-card.js +163 -0
  1266. package/dist/react/primitives/vulnerability-card.js.map +1 -0
  1267. package/dist/react/theme-toggle/index.d.ts +45 -0
  1268. package/dist/react/theme-toggle/index.d.ts.map +1 -0
  1269. package/dist/react/theme-toggle.js +2 -0
  1270. package/dist/react/threat-visuals/index.d.ts +45 -0
  1271. package/dist/react/threat-visuals/index.d.ts.map +1 -0
  1272. package/dist/react/threat-visuals.js +102 -0
  1273. package/dist/react/threat-visuals.js.map +1 -0
  1274. package/dist/react/topology/edges.d.ts +9 -0
  1275. package/dist/react/topology/edges.d.ts.map +1 -0
  1276. package/dist/react/topology/index.d.ts +9 -0
  1277. package/dist/react/topology/index.d.ts.map +1 -0
  1278. package/dist/react/topology/layouts.d.ts +41 -0
  1279. package/dist/react/topology/layouts.d.ts.map +1 -0
  1280. package/dist/react/topology/logos.d.ts +26 -0
  1281. package/dist/react/topology/logos.d.ts.map +1 -0
  1282. package/dist/react/topology/nodes.d.ts +49 -0
  1283. package/dist/react/topology/nodes.d.ts.map +1 -0
  1284. package/dist/react/topology/safe-handle.d.ts +7 -0
  1285. package/dist/react/topology/safe-handle.d.ts.map +1 -0
  1286. package/dist/react/topology/styles.d.ts +2 -0
  1287. package/dist/react/topology/styles.d.ts.map +1 -0
  1288. package/dist/react/topology.js +2 -0
  1289. package/dist/react.js +104 -0
  1290. package/dist/requirementDiagram-Z7DCOOCP-DKZkXWbf.js +2203 -0
  1291. package/dist/requirementDiagram-Z7DCOOCP-DKZkXWbf.js.map +1 -0
  1292. package/dist/rough.esm-CJL_eUW6.js +1354 -0
  1293. package/dist/rough.esm-CJL_eUW6.js.map +1 -0
  1294. package/dist/sanitize-tXExwlw-.js +16 -0
  1295. package/dist/sanitize-tXExwlw-.js.map +1 -0
  1296. package/dist/sankeyDiagram-WA2Y5GQK-DCrlTOfN.js +923 -0
  1297. package/dist/sankeyDiagram-WA2Y5GQK-DCrlTOfN.js.map +1 -0
  1298. package/dist/scroll-area-DSx2nCB7.js +528 -0
  1299. package/dist/scroll-area-DSx2nCB7.js.map +1 -0
  1300. package/dist/search-Ds_Rknvw.js +14 -0
  1301. package/dist/search-Ds_Rknvw.js.map +1 -0
  1302. package/dist/security/attack-path/index.d.ts +20 -0
  1303. package/dist/security/attack-path/index.d.ts.map +1 -0
  1304. package/dist/security/attack-path/index.js +101 -0
  1305. package/dist/security/attack-path/index.js.map +1 -0
  1306. package/dist/security/attack-path/types.d.ts +23 -0
  1307. package/dist/security/attack-path/types.d.ts.map +1 -0
  1308. package/dist/security/cvss-badge/index.d.ts +20 -0
  1309. package/dist/security/cvss-badge/index.d.ts.map +1 -0
  1310. package/dist/security/cvss-badge/index.js +50 -0
  1311. package/dist/security/cvss-badge/index.js.map +1 -0
  1312. package/dist/security/cvss-badge/types.d.ts +14 -0
  1313. package/dist/security/cvss-badge/types.d.ts.map +1 -0
  1314. package/dist/security/detection-status/index.d.ts +27 -0
  1315. package/dist/security/detection-status/index.d.ts.map +1 -0
  1316. package/dist/security/detection-status/index.js +230 -0
  1317. package/dist/security/detection-status/index.js.map +1 -0
  1318. package/dist/security/detection-status/types.d.ts +23 -0
  1319. package/dist/security/detection-status/types.d.ts.map +1 -0
  1320. package/dist/security/index.d.ts +15 -0
  1321. package/dist/security/index.d.ts.map +1 -0
  1322. package/dist/security/index.js +6 -0
  1323. package/dist/security/mitre-matrix/index.d.ts +22 -0
  1324. package/dist/security/mitre-matrix/index.d.ts.map +1 -0
  1325. package/dist/security/mitre-matrix/index.js +104 -0
  1326. package/dist/security/mitre-matrix/index.js.map +1 -0
  1327. package/dist/security/mitre-matrix/types.d.ts +22 -0
  1328. package/dist/security/mitre-matrix/types.d.ts.map +1 -0
  1329. package/dist/security/vulnerability-card/index.d.ts +21 -0
  1330. package/dist/security/vulnerability-card/index.d.ts.map +1 -0
  1331. package/dist/security/vulnerability-card/index.js +152 -0
  1332. package/dist/security/vulnerability-card/index.js.map +1 -0
  1333. package/dist/security/vulnerability-card/types.d.ts +32 -0
  1334. package/dist/security/vulnerability-card/types.d.ts.map +1 -0
  1335. package/dist/select-DcJdLR2A.js +836 -0
  1336. package/dist/select-DcJdLR2A.js.map +1 -0
  1337. package/dist/selection-BisAH2tT.js +12 -0
  1338. package/dist/selection-BisAH2tT.js.map +1 -0
  1339. package/dist/separator-CW4ZX8wr.js +68 -0
  1340. package/dist/separator-CW4ZX8wr.js.map +1 -0
  1341. package/dist/sequenceDiagram-2WXFIKYE-CgAE3dlZ.js +4112 -0
  1342. package/dist/sequenceDiagram-2WXFIKYE-CgAE3dlZ.js.map +1 -0
  1343. package/dist/series-Cm9HrwZ5.js +44 -0
  1344. package/dist/series-Cm9HrwZ5.js.map +1 -0
  1345. package/dist/services/api.d.ts +30 -0
  1346. package/dist/services/api.d.ts.map +1 -0
  1347. package/dist/services/api.js +108 -0
  1348. package/dist/services/api.js.map +1 -0
  1349. package/dist/services/index.d.ts +15 -0
  1350. package/dist/services/index.d.ts.map +1 -0
  1351. package/dist/services/index.js +6 -0
  1352. package/dist/services/keybindings.d.ts +28 -0
  1353. package/dist/services/keybindings.d.ts.map +1 -0
  1354. package/dist/services/keybindings.js +133 -0
  1355. package/dist/services/keybindings.js.map +1 -0
  1356. package/dist/services/router.d.ts +92 -0
  1357. package/dist/services/router.d.ts.map +1 -0
  1358. package/dist/services/router.js +221 -0
  1359. package/dist/services/router.js.map +1 -0
  1360. package/dist/services/sse.d.ts +29 -0
  1361. package/dist/services/sse.d.ts.map +1 -0
  1362. package/dist/services/sse.js +70 -0
  1363. package/dist/services/sse.js.map +1 -0
  1364. package/dist/services/storage.d.ts +22 -0
  1365. package/dist/services/storage.d.ts.map +1 -0
  1366. package/dist/services-BmIW7l7A.js +60 -0
  1367. package/dist/services-BmIW7l7A.js.map +1 -0
  1368. package/dist/shell-DgHAZOVJ.js +5095 -0
  1369. package/dist/shell-DgHAZOVJ.js.map +1 -0
  1370. package/dist/sidebar/badge.d.ts +19 -0
  1371. package/dist/sidebar/badge.d.ts.map +1 -0
  1372. package/dist/sidebar/component.d.ts +23 -0
  1373. package/dist/sidebar/component.d.ts.map +1 -0
  1374. package/dist/sidebar/enhance.d.ts +69 -0
  1375. package/dist/sidebar/enhance.d.ts.map +1 -0
  1376. package/dist/sidebar/index.d.ts +51 -0
  1377. package/dist/sidebar/index.d.ts.map +1 -0
  1378. package/dist/sidebar/index.js +199 -0
  1379. package/dist/sidebar/index.js.map +1 -0
  1380. package/dist/sidebar/types.d.ts +34 -0
  1381. package/dist/sidebar/types.d.ts.map +1 -0
  1382. package/dist/slider-Dwau2Ktq.js +383 -0
  1383. package/dist/slider-Dwau2Ktq.js.map +1 -0
  1384. package/dist/sorting-BZp0NpSF.js +28 -0
  1385. package/dist/sorting-BZp0NpSF.js.map +1 -0
  1386. package/dist/sql-BdONJBIG.js +636 -0
  1387. package/dist/sql-BdONJBIG.js.map +1 -0
  1388. package/dist/src-BUKqSJT6.js +2139 -0
  1389. package/dist/src-BUKqSJT6.js.map +1 -0
  1390. package/dist/src-iH-l56c_.js +340 -0
  1391. package/dist/src-iH-l56c_.js.map +1 -0
  1392. package/dist/stateDiagram-RAJIS63D-_La1YtlG.js +220 -0
  1393. package/dist/stateDiagram-RAJIS63D-_La1YtlG.js.map +1 -0
  1394. package/dist/stateDiagram-v2-FVOUBMTO-CA1nyIZB.js +29 -0
  1395. package/dist/stateDiagram-v2-FVOUBMTO-CA1nyIZB.js.map +1 -0
  1396. package/dist/styles/appearance.css +325 -0
  1397. package/dist/styles/auth.css +318 -0
  1398. package/dist/styles/breakpoints.css +346 -0
  1399. package/dist/styles/charts/charts.css +140 -0
  1400. package/dist/styles/components/context-menu.css +180 -0
  1401. package/dist/styles/components/data-grid.css +635 -0
  1402. package/dist/styles/components/data-table.css +276 -0
  1403. package/dist/styles/components/editors.css +265 -0
  1404. package/dist/styles/components/modal.css +246 -0
  1405. package/dist/styles/components/pagination.css +158 -0
  1406. package/dist/styles/components/search.css +369 -0
  1407. package/dist/styles/components/split-pane.css +174 -0
  1408. package/dist/styles/components/status-bar.css +198 -0
  1409. package/dist/styles/components/tabs.css +201 -0
  1410. package/dist/styles/components/toast.css +235 -0
  1411. package/dist/styles/components/tree-view.css +225 -0
  1412. package/dist/styles/consent.css +282 -0
  1413. package/dist/styles/display/alert.css +136 -0
  1414. package/dist/styles/display/aspect-ratio.css +15 -0
  1415. package/dist/styles/display/avatar.css +190 -0
  1416. package/dist/styles/display/badge.css +148 -0
  1417. package/dist/styles/display/card.css +66 -0
  1418. package/dist/styles/display/code-block.css +99 -0
  1419. package/dist/styles/display/empty-state.css +37 -0
  1420. package/dist/styles/display/hover-card.css +70 -0
  1421. package/dist/styles/display/markdown-viewer.css +145 -0
  1422. package/dist/styles/display/notification-center.css +272 -0
  1423. package/dist/styles/display/popover.css +29 -0
  1424. package/dist/styles/display/progress.css +129 -0
  1425. package/dist/styles/display/severity-indicator.css +96 -0
  1426. package/dist/styles/display/stat-card.css +90 -0
  1427. package/dist/styles/display/tooltip.css +58 -0
  1428. package/dist/styles/display/typography.css +129 -0
  1429. package/dist/styles/display/uptime-bar.css +64 -0
  1430. package/dist/styles/form/calendar.css +240 -0
  1431. package/dist/styles/form/color-picker.css +239 -0
  1432. package/dist/styles/form/cron-editor.css +333 -0
  1433. package/dist/styles/form/date-picker.css +378 -0
  1434. package/dist/styles/form/tag-input.css +219 -0
  1435. package/dist/styles/index.css +110 -0
  1436. package/dist/styles/layout.css +753 -0
  1437. package/dist/styles/navigation/breadcrumb.css +100 -0
  1438. package/dist/styles/navigation/drawer.css +143 -0
  1439. package/dist/styles/navigation/dropdown-menu.css +193 -0
  1440. package/dist/styles/navigation/menubar.css +208 -0
  1441. package/dist/styles/navigation/navigation-menu.css +260 -0
  1442. package/dist/styles/navigation/stepper.css +199 -0
  1443. package/dist/styles/overlays/alert-dialog.css +205 -0
  1444. package/dist/styles/overlays/carousel.css +147 -0
  1445. package/dist/styles/overlays/sheet.css +206 -0
  1446. package/dist/styles/primitives/button.css +277 -0
  1447. package/dist/styles/primitives/checkbox.css +126 -0
  1448. package/dist/styles/primitives/field.css +48 -0
  1449. package/dist/styles/primitives/input.css +331 -0
  1450. package/dist/styles/primitives/kbd.css +32 -0
  1451. package/dist/styles/primitives/label.css +18 -0
  1452. package/dist/styles/primitives/radio.css +109 -0
  1453. package/dist/styles/primitives/scroll-area.css +54 -0
  1454. package/dist/styles/primitives/select.css +354 -0
  1455. package/dist/styles/primitives/separator.css +20 -0
  1456. package/dist/styles/primitives/skeleton.css +35 -0
  1457. package/dist/styles/primitives/slider.css +121 -0
  1458. package/dist/styles/primitives/spinner.css +56 -0
  1459. package/dist/styles/primitives/switch.css +131 -0
  1460. package/dist/styles/primitives/toggle.css +157 -0
  1461. package/dist/styles/react-threat-visuals.css +568 -0
  1462. package/dist/styles/security/attack-path.css +192 -0
  1463. package/dist/styles/security/cvss-badge.css +136 -0
  1464. package/dist/styles/security/detection-status.css +217 -0
  1465. package/dist/styles/security/mitre-matrix.css +203 -0
  1466. package/dist/styles/security/vulnerability-card.css +294 -0
  1467. package/dist/styles/sidebar.css +1194 -0
  1468. package/dist/styles/tokens.css +392 -0
  1469. package/dist/styles/ui.css +442 -0
  1470. package/dist/styles/utilities.css +43 -0
  1471. package/dist/styles/visualization/file-tree.css +179 -0
  1472. package/dist/styles/visualization/flow-diagram.css +163 -0
  1473. package/dist/styles/visualization/json-path-browser.css +275 -0
  1474. package/dist/styles/visualization/kanban.css +614 -0
  1475. package/dist/styles/visualization/map.css +205 -0
  1476. package/dist/styles/visualization/mermaid-diagram.css +172 -0
  1477. package/dist/styles/visualization/network-graph.css +169 -0
  1478. package/dist/styles/visualization/rule-editor.css +280 -0
  1479. package/dist/styles/visualization/terminal.css +133 -0
  1480. package/dist/styles/visualization/timeline.css +246 -0
  1481. package/dist/switch-dChlavwa.js +104 -0
  1482. package/dist/switch-dChlavwa.js.map +1 -0
  1483. package/dist/tabs-Bpcitl6-.js +150 -0
  1484. package/dist/tabs-Bpcitl6-.js.map +1 -0
  1485. package/dist/theme-toggle-CaCz_B5t.js +130 -0
  1486. package/dist/theme-toggle-CaCz_B5t.js.map +1 -0
  1487. package/dist/timeline-definition-YZTLITO2-CvoqOZkr.js +833 -0
  1488. package/dist/timeline-definition-YZTLITO2-CvoqOZkr.js.map +1 -0
  1489. package/dist/toast-Li-x6JyI.js +209 -0
  1490. package/dist/toast-Li-x6JyI.js.map +1 -0
  1491. package/dist/toggle-Cg5AEgfp.js +204 -0
  1492. package/dist/toggle-Cg5AEgfp.js.map +1 -0
  1493. package/dist/toggle-RVd6oZCL.js +122 -0
  1494. package/dist/toggle-RVd6oZCL.js.map +1 -0
  1495. package/dist/tooltip-BvkBQJvL.js +385 -0
  1496. package/dist/tooltip-BvkBQJvL.js.map +1 -0
  1497. package/dist/topology-DlBapVMn.js +6707 -0
  1498. package/dist/topology-DlBapVMn.js.map +1 -0
  1499. package/dist/tree-view-CQwOGwy0.js +276 -0
  1500. package/dist/tree-view-CQwOGwy0.js.map +1 -0
  1501. package/dist/treemap-KZPCXAKY-DP2ZtuXF.js +3 -0
  1502. package/dist/triangle-alert-DWk6jJ_p.js +42 -0
  1503. package/dist/triangle-alert-DWk6jJ_p.js.map +1 -0
  1504. package/dist/ui/index.d.ts +111 -0
  1505. package/dist/ui/index.d.ts.map +1 -0
  1506. package/dist/ui/index.js +198 -0
  1507. package/dist/ui/index.js.map +1 -0
  1508. package/dist/utils/a11y.d.ts +113 -0
  1509. package/dist/utils/a11y.d.ts.map +1 -0
  1510. package/dist/utils/date.d.ts +26 -0
  1511. package/dist/utils/date.d.ts.map +1 -0
  1512. package/dist/utils/errors.d.ts +24 -0
  1513. package/dist/utils/errors.d.ts.map +1 -0
  1514. package/dist/utils/index.d.ts +15 -0
  1515. package/dist/utils/index.d.ts.map +1 -0
  1516. package/dist/utils/index.js +9 -0
  1517. package/dist/utils/keyboard.d.ts +135 -0
  1518. package/dist/utils/keyboard.d.ts.map +1 -0
  1519. package/dist/utils/registry.d.ts +14 -0
  1520. package/dist/utils/registry.d.ts.map +1 -0
  1521. package/dist/utils/registry.js +23 -0
  1522. package/dist/utils/registry.js.map +1 -0
  1523. package/dist/utils/sanitize.d.ts +11 -0
  1524. package/dist/utils/sanitize.d.ts.map +1 -0
  1525. package/dist/utils/selection.d.ts +15 -0
  1526. package/dist/utils/selection.d.ts.map +1 -0
  1527. package/dist/utils/sorting.d.ts +25 -0
  1528. package/dist/utils/sorting.d.ts.map +1 -0
  1529. package/dist/utils/touch.d.ts +137 -0
  1530. package/dist/utils/touch.d.ts.map +1 -0
  1531. package/dist/utils/validation.d.ts +30 -0
  1532. package/dist/utils/validation.d.ts.map +1 -0
  1533. package/dist/utils-B7XIe3qq.js +1694 -0
  1534. package/dist/utils-B7XIe3qq.js.map +1 -0
  1535. package/dist/utils-Cn_W3h3f.js +17 -0
  1536. package/dist/utils-Cn_W3h3f.js.map +1 -0
  1537. package/dist/utils-DAAwIwhm.js +250 -0
  1538. package/dist/utils-DAAwIwhm.js.map +1 -0
  1539. package/dist/value-B1V_kKf_.js +52 -0
  1540. package/dist/value-B1V_kKf_.js.map +1 -0
  1541. package/dist/vennDiagram-LZ73GAT5-Xu1ecpFt.js +1861 -0
  1542. package/dist/vennDiagram-LZ73GAT5-Xu1ecpFt.js.map +1 -0
  1543. package/dist/visualization/file-tree/index.d.ts +49 -0
  1544. package/dist/visualization/file-tree/index.d.ts.map +1 -0
  1545. package/dist/visualization/file-tree/index.js +154 -0
  1546. package/dist/visualization/file-tree/index.js.map +1 -0
  1547. package/dist/visualization/file-tree/types.d.ts +28 -0
  1548. package/dist/visualization/file-tree/types.d.ts.map +1 -0
  1549. package/dist/visualization/flow-diagram/index.d.ts +49 -0
  1550. package/dist/visualization/flow-diagram/index.d.ts.map +1 -0
  1551. package/dist/visualization/flow-diagram/index.js +314 -0
  1552. package/dist/visualization/flow-diagram/index.js.map +1 -0
  1553. package/dist/visualization/flow-diagram/types.d.ts +37 -0
  1554. package/dist/visualization/flow-diagram/types.d.ts.map +1 -0
  1555. package/dist/visualization/index.d.ts +25 -0
  1556. package/dist/visualization/index.d.ts.map +1 -0
  1557. package/dist/visualization/index.js +11 -0
  1558. package/dist/visualization/json-path-browser/index.d.ts +48 -0
  1559. package/dist/visualization/json-path-browser/index.d.ts.map +1 -0
  1560. package/dist/visualization/json-path-browser/index.js +189 -0
  1561. package/dist/visualization/json-path-browser/index.js.map +1 -0
  1562. package/dist/visualization/json-path-browser/types.d.ts +15 -0
  1563. package/dist/visualization/json-path-browser/types.d.ts.map +1 -0
  1564. package/dist/visualization/kanban/index.d.ts +71 -0
  1565. package/dist/visualization/kanban/index.d.ts.map +1 -0
  1566. package/dist/visualization/kanban/index.js +301 -0
  1567. package/dist/visualization/kanban/index.js.map +1 -0
  1568. package/dist/visualization/kanban/types.d.ts +85 -0
  1569. package/dist/visualization/kanban/types.d.ts.map +1 -0
  1570. package/dist/visualization/map/index.d.ts +85 -0
  1571. package/dist/visualization/map/index.d.ts.map +1 -0
  1572. package/dist/visualization/map/index.js +219 -0
  1573. package/dist/visualization/map/index.js.map +1 -0
  1574. package/dist/visualization/map/types.d.ts +38 -0
  1575. package/dist/visualization/map/types.d.ts.map +1 -0
  1576. package/dist/visualization/mermaid-diagram/index.d.ts +45 -0
  1577. package/dist/visualization/mermaid-diagram/index.d.ts.map +1 -0
  1578. package/dist/visualization/mermaid-diagram/index.js +236 -0
  1579. package/dist/visualization/mermaid-diagram/index.js.map +1 -0
  1580. package/dist/visualization/mermaid-diagram/types.d.ts +32 -0
  1581. package/dist/visualization/mermaid-diagram/types.d.ts.map +1 -0
  1582. package/dist/visualization/network-graph/index.d.ts +57 -0
  1583. package/dist/visualization/network-graph/index.d.ts.map +1 -0
  1584. package/dist/visualization/network-graph/index.js +296 -0
  1585. package/dist/visualization/network-graph/index.js.map +1 -0
  1586. package/dist/visualization/network-graph/types.d.ts +37 -0
  1587. package/dist/visualization/network-graph/types.d.ts.map +1 -0
  1588. package/dist/visualization/rule-editor/index.d.ts +46 -0
  1589. package/dist/visualization/rule-editor/index.d.ts.map +1 -0
  1590. package/dist/visualization/rule-editor/index.js +262 -0
  1591. package/dist/visualization/rule-editor/index.js.map +1 -0
  1592. package/dist/visualization/rule-editor/types.d.ts +31 -0
  1593. package/dist/visualization/rule-editor/types.d.ts.map +1 -0
  1594. package/dist/visualization/terminal/index.d.ts +54 -0
  1595. package/dist/visualization/terminal/index.d.ts.map +1 -0
  1596. package/dist/visualization/terminal/index.js +154 -0
  1597. package/dist/visualization/terminal/index.js.map +1 -0
  1598. package/dist/visualization/terminal/types.d.ts +16 -0
  1599. package/dist/visualization/terminal/types.d.ts.map +1 -0
  1600. package/dist/visualization/timeline/index.d.ts +31 -0
  1601. package/dist/visualization/timeline/index.d.ts.map +1 -0
  1602. package/dist/visualization/timeline/index.js +174 -0
  1603. package/dist/visualization/timeline/index.js.map +1 -0
  1604. package/dist/visualization/timeline/types.d.ts +24 -0
  1605. package/dist/visualization/timeline/types.d.ts.map +1 -0
  1606. package/dist/x-DCVjAtEF.js +12 -0
  1607. package/dist/x-DCVjAtEF.js.map +1 -0
  1608. package/dist/xychartDiagram-JWTSCODW-BX9xqezB.js +2043 -0
  1609. package/dist/xychartDiagram-JWTSCODW-BX9xqezB.js.map +1 -0
  1610. package/dist/yaml-BruA1FUA.js +34 -0
  1611. package/dist/yaml-BruA1FUA.js.map +1 -0
  1612. package/package.json +1409 -0
  1613. package/src/app-switcher/index.ts +322 -0
  1614. package/src/appearance/appearance.test.ts +511 -0
  1615. package/src/appearance/index.ts +193 -0
  1616. package/src/auth/index.ts +242 -0
  1617. package/src/charts/annotations.ts +116 -0
  1618. package/src/charts/area/index.ts +260 -0
  1619. package/src/charts/area/types.ts +13 -0
  1620. package/src/charts/axis.ts +192 -0
  1621. package/src/charts/bar/index.ts +354 -0
  1622. package/src/charts/bar/types.ts +13 -0
  1623. package/src/charts/base.ts +542 -0
  1624. package/src/charts/candlestick/index.ts +317 -0
  1625. package/src/charts/candlestick/types.ts +25 -0
  1626. package/src/charts/funnel/index.ts +335 -0
  1627. package/src/charts/funnel/types.ts +22 -0
  1628. package/src/charts/gauge/index.ts +289 -0
  1629. package/src/charts/gauge/types.ts +24 -0
  1630. package/src/charts/heatmap/index.ts +257 -0
  1631. package/src/charts/heatmap/types.ts +23 -0
  1632. package/src/charts/index.ts +89 -0
  1633. package/src/charts/interactive.ts +59 -0
  1634. package/src/charts/legend.ts +104 -0
  1635. package/src/charts/line/index.ts +223 -0
  1636. package/src/charts/line/types.ts +13 -0
  1637. package/src/charts/pie/index.ts +303 -0
  1638. package/src/charts/pie/types.ts +21 -0
  1639. package/src/charts/radar/index.ts +388 -0
  1640. package/src/charts/radar/types.ts +22 -0
  1641. package/src/charts/sankey/index.ts +497 -0
  1642. package/src/charts/sankey/types.ts +28 -0
  1643. package/src/charts/scatter/index.ts +284 -0
  1644. package/src/charts/scatter/types.ts +11 -0
  1645. package/src/charts/series.ts +63 -0
  1646. package/src/charts/sparkline/index.ts +224 -0
  1647. package/src/charts/sparkline/types.ts +16 -0
  1648. package/src/charts/tooltip.ts +136 -0
  1649. package/src/charts/treemap/index.ts +357 -0
  1650. package/src/charts/treemap/types.ts +21 -0
  1651. package/src/charts/types.ts +82 -0
  1652. package/src/charts/utils.ts +309 -0
  1653. package/src/charts/waterfall/index.ts +273 -0
  1654. package/src/charts/waterfall/types.ts +25 -0
  1655. package/src/charts/zoom.ts +115 -0
  1656. package/src/components/context-menu/index.ts +183 -0
  1657. package/src/components/copy-button/index.ts +97 -0
  1658. package/src/components/data-table/export.ts +61 -0
  1659. package/src/components/data-table/index.ts +647 -0
  1660. package/src/components/data-table/renderers.ts +145 -0
  1661. package/src/components/data-table/types.ts +41 -0
  1662. package/src/components/detail-header/index.ts +201 -0
  1663. package/src/components/index.ts +65 -0
  1664. package/src/components/log-toolbar/index.ts +186 -0
  1665. package/src/components/modal/index.ts +240 -0
  1666. package/src/components/modal/types.ts +18 -0
  1667. package/src/components/pagination/index.ts +130 -0
  1668. package/src/components/search/command-palette.ts +242 -0
  1669. package/src/components/search/index.ts +433 -0
  1670. package/src/components/search/types.ts +37 -0
  1671. package/src/components/split-pane/index.ts +370 -0
  1672. package/src/components/split-pane/types.ts +21 -0
  1673. package/src/components/status-bar/index.ts +112 -0
  1674. package/src/components/tabs/index.ts +329 -0
  1675. package/src/components/tabs/types.ts +20 -0
  1676. package/src/components/toast/index.ts +412 -0
  1677. package/src/components/toast/types.ts +20 -0
  1678. package/src/components/tree-view/index.ts +692 -0
  1679. package/src/components/tree-view/lazy.ts +24 -0
  1680. package/src/components/tree-view/types.ts +25 -0
  1681. package/src/consent/index.ts +218 -0
  1682. package/src/crypto/crypto.test.ts +458 -0
  1683. package/src/crypto/encoding-helpers.ts +44 -0
  1684. package/src/crypto/encoding.ts +191 -0
  1685. package/src/crypto/hybrid.ts +253 -0
  1686. package/src/crypto/index.ts +292 -0
  1687. package/src/crypto/keys.ts +299 -0
  1688. package/src/crypto/symmetric.ts +227 -0
  1689. package/src/crypto/types.ts +148 -0
  1690. package/src/display/alert/index.ts +134 -0
  1691. package/src/display/alert/types.ts +17 -0
  1692. package/src/display/aspect-ratio/index.ts +57 -0
  1693. package/src/display/avatar/avatar-group.ts +85 -0
  1694. package/src/display/avatar/index.ts +187 -0
  1695. package/src/display/avatar/types.ts +28 -0
  1696. package/src/display/badge/index.ts +109 -0
  1697. package/src/display/badge/presets.ts +46 -0
  1698. package/src/display/badge/types.ts +20 -0
  1699. package/src/display/card/index.ts +159 -0
  1700. package/src/display/card/types.ts +16 -0
  1701. package/src/display/code-block/index.ts +224 -0
  1702. package/src/display/code-block/types.ts +14 -0
  1703. package/src/display/empty-state/index.ts +111 -0
  1704. package/src/display/empty-state/types.ts +16 -0
  1705. package/src/display/hover-card/index.ts +317 -0
  1706. package/src/display/hover-card/types.ts +15 -0
  1707. package/src/display/index.ts +95 -0
  1708. package/src/display/markdown-viewer/index.ts +137 -0
  1709. package/src/display/markdown-viewer/parser.ts +423 -0
  1710. package/src/display/markdown-viewer/types.ts +18 -0
  1711. package/src/display/notification-center/index.ts +416 -0
  1712. package/src/display/notification-center/types.ts +32 -0
  1713. package/src/display/popover/index.ts +320 -0
  1714. package/src/display/popover/types.ts +25 -0
  1715. package/src/display/progress/index.ts +209 -0
  1716. package/src/display/progress/types.ts +19 -0
  1717. package/src/display/severity-indicator/index.ts +96 -0
  1718. package/src/display/severity-indicator/types.ts +15 -0
  1719. package/src/display/stat-card/index.ts +140 -0
  1720. package/src/display/stat-card/types.ts +21 -0
  1721. package/src/display/tooltip/index.ts +263 -0
  1722. package/src/display/tooltip/types.ts +14 -0
  1723. package/src/display/typography/index.ts +156 -0
  1724. package/src/display/typography/types.ts +30 -0
  1725. package/src/display/uptime-bar/index.ts +109 -0
  1726. package/src/display/uptime-bar/types.ts +19 -0
  1727. package/src/editors/base.ts +328 -0
  1728. package/src/editors/code-editor.ts +350 -0
  1729. package/src/editors/diff-viewer.ts +225 -0
  1730. package/src/editors/index.ts +47 -0
  1731. package/src/editors/json-viewer.ts +145 -0
  1732. package/src/editors/languages/fluxl.ts +114 -0
  1733. package/src/editors/languages/javascript.ts +17 -0
  1734. package/src/editors/languages/json.ts +12 -0
  1735. package/src/editors/languages/markdown.ts +12 -0
  1736. package/src/editors/languages/python.ts +12 -0
  1737. package/src/editors/languages/rust.ts +12 -0
  1738. package/src/editors/languages/shell.ts +13 -0
  1739. package/src/editors/languages/sql.ts +57 -0
  1740. package/src/editors/languages/yaml.ts +120 -0
  1741. package/src/editors/languages/yara.ts +154 -0
  1742. package/src/editors/languages/yaral.ts +91 -0
  1743. package/src/editors/log-viewer.ts +222 -0
  1744. package/src/editors/types.ts +138 -0
  1745. package/src/editors/yaml-editor.ts +36 -0
  1746. package/src/form/calendar/index.ts +455 -0
  1747. package/src/form/calendar/types.ts +24 -0
  1748. package/src/form/color-picker/index.ts +1016 -0
  1749. package/src/form/color-picker/types.ts +14 -0
  1750. package/src/form/cron-editor/index.ts +583 -0
  1751. package/src/form/cron-editor/parser.ts +411 -0
  1752. package/src/form/cron-editor/types.ts +34 -0
  1753. package/src/form/date-picker/index.ts +281 -0
  1754. package/src/form/date-picker/range.ts +379 -0
  1755. package/src/form/date-picker/time.ts +334 -0
  1756. package/src/form/date-picker/types.ts +47 -0
  1757. package/src/form/direction/index.ts +64 -0
  1758. package/src/form/index.ts +48 -0
  1759. package/src/form/tag-input/index.ts +458 -0
  1760. package/src/form/tag-input/types.ts +23 -0
  1761. package/src/icons/icons.test.ts +141 -0
  1762. package/src/icons/index.ts +205 -0
  1763. package/src/index.ts +211 -0
  1764. package/src/layout/index.ts +662 -0
  1765. package/src/navigation/breadcrumb/index.ts +175 -0
  1766. package/src/navigation/breadcrumb/types.ts +20 -0
  1767. package/src/navigation/drawer/index.ts +326 -0
  1768. package/src/navigation/drawer/types.ts +21 -0
  1769. package/src/navigation/dropdown-menu/index.ts +625 -0
  1770. package/src/navigation/dropdown-menu/types.ts +43 -0
  1771. package/src/navigation/index.ts +35 -0
  1772. package/src/navigation/menubar/index.ts +412 -0
  1773. package/src/navigation/menubar/types.ts +26 -0
  1774. package/src/navigation/navigation-menu/index.ts +508 -0
  1775. package/src/navigation/navigation-menu/types.ts +26 -0
  1776. package/src/navigation/stepper/index.ts +270 -0
  1777. package/src/navigation/stepper/types.ts +25 -0
  1778. package/src/overlays/alert-dialog/index.ts +313 -0
  1779. package/src/overlays/alert-dialog/types.ts +18 -0
  1780. package/src/overlays/carousel/index.ts +452 -0
  1781. package/src/overlays/carousel/types.ts +22 -0
  1782. package/src/overlays/index.ts +16 -0
  1783. package/src/overlays/sheet/index.ts +307 -0
  1784. package/src/overlays/sheet/types.ts +21 -0
  1785. package/src/passkey/index.ts +230 -0
  1786. package/src/primitives/button/button-group.ts +47 -0
  1787. package/src/primitives/button/index.ts +199 -0
  1788. package/src/primitives/button/types.ts +29 -0
  1789. package/src/primitives/button/variants.ts +24 -0
  1790. package/src/primitives/checkbox/group.ts +113 -0
  1791. package/src/primitives/checkbox/index.ts +127 -0
  1792. package/src/primitives/checkbox/types.ts +34 -0
  1793. package/src/primitives/field/index.ts +188 -0
  1794. package/src/primitives/field/types.ts +14 -0
  1795. package/src/primitives/index.ts +81 -0
  1796. package/src/primitives/input/index.ts +175 -0
  1797. package/src/primitives/input/input-group.ts +83 -0
  1798. package/src/primitives/input/input-otp.ts +242 -0
  1799. package/src/primitives/input/ip-input.ts +226 -0
  1800. package/src/primitives/input/textarea.ts +179 -0
  1801. package/src/primitives/input/types.ts +72 -0
  1802. package/src/primitives/kbd/index.ts +62 -0
  1803. package/src/primitives/label/index.ts +83 -0
  1804. package/src/primitives/radio/index.ts +199 -0
  1805. package/src/primitives/radio/types.ts +22 -0
  1806. package/src/primitives/scroll-area/index.ts +77 -0
  1807. package/src/primitives/select/combobox.ts +427 -0
  1808. package/src/primitives/select/index.ts +526 -0
  1809. package/src/primitives/select/native.ts +151 -0
  1810. package/src/primitives/select/types.ts +52 -0
  1811. package/src/primitives/separator/index.ts +41 -0
  1812. package/src/primitives/skeleton/index.ts +58 -0
  1813. package/src/primitives/slider/index.ts +333 -0
  1814. package/src/primitives/slider/types.ts +19 -0
  1815. package/src/primitives/spinner/index.ts +63 -0
  1816. package/src/primitives/switch/index.ts +133 -0
  1817. package/src/primitives/switch/types.ts +17 -0
  1818. package/src/primitives/toggle/index.ts +129 -0
  1819. package/src/primitives/toggle/toggle-group.ts +209 -0
  1820. package/src/primitives/toggle/types.ts +39 -0
  1821. package/src/primitives/utils.ts +24 -0
  1822. package/src/react/brand/index.tsx +115 -0
  1823. package/src/react/index.ts +5 -0
  1824. package/src/react/primitives/alert-dialog.tsx +133 -0
  1825. package/src/react/primitives/alert.tsx +96 -0
  1826. package/src/react/primitives/animated-counter.tsx +199 -0
  1827. package/src/react/primitives/aspect-ratio.tsx +23 -0
  1828. package/src/react/primitives/attack-path.tsx +238 -0
  1829. package/src/react/primitives/avatar.tsx +190 -0
  1830. package/src/react/primitives/badge.tsx +41 -0
  1831. package/src/react/primitives/breadcrumb.tsx +110 -0
  1832. package/src/react/primitives/button.tsx +115 -0
  1833. package/src/react/primitives/calendar.tsx +289 -0
  1834. package/src/react/primitives/card.tsx +67 -0
  1835. package/src/react/primitives/carousel.tsx +219 -0
  1836. package/src/react/primitives/chart-area.tsx +34 -0
  1837. package/src/react/primitives/chart-bar.tsx +34 -0
  1838. package/src/react/primitives/chart-candlestick.tsx +35 -0
  1839. package/src/react/primitives/chart-funnel.tsx +33 -0
  1840. package/src/react/primitives/chart-gauge.tsx +44 -0
  1841. package/src/react/primitives/chart-heatmap.tsx +33 -0
  1842. package/src/react/primitives/chart-line.tsx +34 -0
  1843. package/src/react/primitives/chart-pie.tsx +33 -0
  1844. package/src/react/primitives/chart-radar.tsx +33 -0
  1845. package/src/react/primitives/chart-sankey.tsx +33 -0
  1846. package/src/react/primitives/chart-scatter.tsx +34 -0
  1847. package/src/react/primitives/chart-sparkline.tsx +32 -0
  1848. package/src/react/primitives/chart-treemap.tsx +33 -0
  1849. package/src/react/primitives/chart-waterfall.tsx +33 -0
  1850. package/src/react/primitives/checkbox.tsx +50 -0
  1851. package/src/react/primitives/code-block.tsx +117 -0
  1852. package/src/react/primitives/code-viewer.tsx +307 -0
  1853. package/src/react/primitives/collapsible.tsx +118 -0
  1854. package/src/react/primitives/color-picker.tsx +461 -0
  1855. package/src/react/primitives/context-menu.tsx +261 -0
  1856. package/src/react/primitives/copy-button.tsx +116 -0
  1857. package/src/react/primitives/cron-editor.tsx +575 -0
  1858. package/src/react/primitives/cvss-badge.tsx +112 -0
  1859. package/src/react/primitives/data-grid.tsx +1269 -0
  1860. package/src/react/primitives/data-table.tsx +300 -0
  1861. package/src/react/primitives/date-picker.tsx +659 -0
  1862. package/src/react/primitives/detection-status.tsx +400 -0
  1863. package/src/react/primitives/dialog.tsx +127 -0
  1864. package/src/react/primitives/direction.tsx +74 -0
  1865. package/src/react/primitives/drawer.tsx +140 -0
  1866. package/src/react/primitives/dropdown-menu.tsx +87 -0
  1867. package/src/react/primitives/empty-state.tsx +64 -0
  1868. package/src/react/primitives/error-boundary.tsx +40 -0
  1869. package/src/react/primitives/field.tsx +59 -0
  1870. package/src/react/primitives/file-tree.tsx +368 -0
  1871. package/src/react/primitives/flow-diagram.tsx +78 -0
  1872. package/src/react/primitives/heatmap-legend.tsx +51 -0
  1873. package/src/react/primitives/heatmap-toolbar.tsx +78 -0
  1874. package/src/react/primitives/hover-card.tsx +174 -0
  1875. package/src/react/primitives/index.ts +294 -0
  1876. package/src/react/primitives/input.tsx +35 -0
  1877. package/src/react/primitives/json-path-browser.tsx +397 -0
  1878. package/src/react/primitives/kanban.tsx +421 -0
  1879. package/src/react/primitives/kbd.tsx +33 -0
  1880. package/src/react/primitives/label.tsx +25 -0
  1881. package/src/react/primitives/map.tsx +91 -0
  1882. package/src/react/primitives/markdown-viewer.tsx +256 -0
  1883. package/src/react/primitives/menubar.tsx +248 -0
  1884. package/src/react/primitives/mermaid-diagram.tsx +76 -0
  1885. package/src/react/primitives/mitre-matrix.tsx +203 -0
  1886. package/src/react/primitives/modal.tsx +191 -0
  1887. package/src/react/primitives/navigation-menu.tsx +144 -0
  1888. package/src/react/primitives/network-graph.tsx +95 -0
  1889. package/src/react/primitives/notification-center.tsx +229 -0
  1890. package/src/react/primitives/pagination.tsx +147 -0
  1891. package/src/react/primitives/popover.tsx +247 -0
  1892. package/src/react/primitives/progress.tsx +187 -0
  1893. package/src/react/primitives/radio-group.tsx +44 -0
  1894. package/src/react/primitives/ripple.tsx +145 -0
  1895. package/src/react/primitives/rule-editor.tsx +385 -0
  1896. package/src/react/primitives/scroll-area.tsx +54 -0
  1897. package/src/react/primitives/search.tsx +573 -0
  1898. package/src/react/primitives/select.tsx +218 -0
  1899. package/src/react/primitives/separator.tsx +27 -0
  1900. package/src/react/primitives/severity-indicator.tsx +110 -0
  1901. package/src/react/primitives/sheet.tsx +137 -0
  1902. package/src/react/primitives/skeleton.tsx +15 -0
  1903. package/src/react/primitives/slide-panel.tsx +137 -0
  1904. package/src/react/primitives/slider.tsx +51 -0
  1905. package/src/react/primitives/spinner.tsx +39 -0
  1906. package/src/react/primitives/split-pane.tsx +160 -0
  1907. package/src/react/primitives/stat-card.tsx +140 -0
  1908. package/src/react/primitives/status-bar.tsx +81 -0
  1909. package/src/react/primitives/stepper.tsx +162 -0
  1910. package/src/react/primitives/switch.tsx +47 -0
  1911. package/src/react/primitives/table.tsx +90 -0
  1912. package/src/react/primitives/tabs.tsx +52 -0
  1913. package/src/react/primitives/tag-input.tsx +371 -0
  1914. package/src/react/primitives/terminal.tsx +228 -0
  1915. package/src/react/primitives/textarea.tsx +18 -0
  1916. package/src/react/primitives/timeline.tsx +316 -0
  1917. package/src/react/primitives/toast.tsx +361 -0
  1918. package/src/react/primitives/toggle.tsx +107 -0
  1919. package/src/react/primitives/tooltip.tsx +64 -0
  1920. package/src/react/primitives/tree-view.tsx +306 -0
  1921. package/src/react/primitives/typography.tsx +171 -0
  1922. package/src/react/primitives/uptime-bar.tsx +93 -0
  1923. package/src/react/primitives/utils.ts +6 -0
  1924. package/src/react/primitives/vulnerability-card.tsx +297 -0
  1925. package/src/react/theme-toggle/index.tsx +123 -0
  1926. package/src/react/threat-visuals/index.tsx +200 -0
  1927. package/src/react/topology/__tests__/topology.test.tsx +716 -0
  1928. package/src/react/topology/edges.tsx +77 -0
  1929. package/src/react/topology/index.ts +34 -0
  1930. package/src/react/topology/layouts.ts +473 -0
  1931. package/src/react/topology/logos.tsx +328 -0
  1932. package/src/react/topology/nodes.tsx +404 -0
  1933. package/src/react/topology/safe-handle.tsx +35 -0
  1934. package/src/react/topology/styles.ts +47 -0
  1935. package/src/security/attack-path/index.ts +202 -0
  1936. package/src/security/attack-path/types.ts +37 -0
  1937. package/src/security/cvss-badge/index.ts +145 -0
  1938. package/src/security/cvss-badge/types.ts +14 -0
  1939. package/src/security/detection-status/index.ts +420 -0
  1940. package/src/security/detection-status/types.ts +24 -0
  1941. package/src/security/index.ts +24 -0
  1942. package/src/security/mitre-matrix/index.ts +209 -0
  1943. package/src/security/mitre-matrix/types.ts +23 -0
  1944. package/src/security/vulnerability-card/index.ts +320 -0
  1945. package/src/security/vulnerability-card/types.ts +34 -0
  1946. package/src/services/api.ts +181 -0
  1947. package/src/services/index.ts +23 -0
  1948. package/src/services/keybindings.ts +271 -0
  1949. package/src/services/router.ts +578 -0
  1950. package/src/services/sse.ts +148 -0
  1951. package/src/services/storage.ts +88 -0
  1952. package/src/sidebar/badge.ts +72 -0
  1953. package/src/sidebar/component.ts +223 -0
  1954. package/src/sidebar/enhance.ts +289 -0
  1955. package/src/sidebar/index.ts +253 -0
  1956. package/src/sidebar/types.ts +43 -0
  1957. package/src/styles/appearance.css +325 -0
  1958. package/src/styles/auth.css +318 -0
  1959. package/src/styles/breakpoints.css +346 -0
  1960. package/src/styles/charts/charts.css +140 -0
  1961. package/src/styles/components/context-menu.css +180 -0
  1962. package/src/styles/components/data-grid.css +635 -0
  1963. package/src/styles/components/data-table.css +276 -0
  1964. package/src/styles/components/editors.css +265 -0
  1965. package/src/styles/components/modal.css +246 -0
  1966. package/src/styles/components/pagination.css +158 -0
  1967. package/src/styles/components/search.css +369 -0
  1968. package/src/styles/components/split-pane.css +174 -0
  1969. package/src/styles/components/status-bar.css +198 -0
  1970. package/src/styles/components/tabs.css +201 -0
  1971. package/src/styles/components/toast.css +235 -0
  1972. package/src/styles/components/tree-view.css +225 -0
  1973. package/src/styles/consent.css +282 -0
  1974. package/src/styles/display/alert.css +136 -0
  1975. package/src/styles/display/aspect-ratio.css +15 -0
  1976. package/src/styles/display/avatar.css +190 -0
  1977. package/src/styles/display/badge.css +148 -0
  1978. package/src/styles/display/card.css +66 -0
  1979. package/src/styles/display/code-block.css +99 -0
  1980. package/src/styles/display/empty-state.css +37 -0
  1981. package/src/styles/display/hover-card.css +70 -0
  1982. package/src/styles/display/markdown-viewer.css +145 -0
  1983. package/src/styles/display/notification-center.css +272 -0
  1984. package/src/styles/display/popover.css +29 -0
  1985. package/src/styles/display/progress.css +129 -0
  1986. package/src/styles/display/severity-indicator.css +96 -0
  1987. package/src/styles/display/stat-card.css +90 -0
  1988. package/src/styles/display/tooltip.css +58 -0
  1989. package/src/styles/display/typography.css +129 -0
  1990. package/src/styles/display/uptime-bar.css +64 -0
  1991. package/src/styles/form/calendar.css +240 -0
  1992. package/src/styles/form/color-picker.css +239 -0
  1993. package/src/styles/form/cron-editor.css +333 -0
  1994. package/src/styles/form/date-picker.css +378 -0
  1995. package/src/styles/form/tag-input.css +219 -0
  1996. package/src/styles/index.css +110 -0
  1997. package/src/styles/layout.css +753 -0
  1998. package/src/styles/navigation/breadcrumb.css +100 -0
  1999. package/src/styles/navigation/drawer.css +143 -0
  2000. package/src/styles/navigation/dropdown-menu.css +193 -0
  2001. package/src/styles/navigation/menubar.css +208 -0
  2002. package/src/styles/navigation/navigation-menu.css +260 -0
  2003. package/src/styles/navigation/stepper.css +199 -0
  2004. package/src/styles/overlays/alert-dialog.css +205 -0
  2005. package/src/styles/overlays/carousel.css +147 -0
  2006. package/src/styles/overlays/sheet.css +206 -0
  2007. package/src/styles/primitives/button.css +277 -0
  2008. package/src/styles/primitives/checkbox.css +126 -0
  2009. package/src/styles/primitives/field.css +48 -0
  2010. package/src/styles/primitives/input.css +331 -0
  2011. package/src/styles/primitives/kbd.css +32 -0
  2012. package/src/styles/primitives/label.css +18 -0
  2013. package/src/styles/primitives/radio.css +109 -0
  2014. package/src/styles/primitives/scroll-area.css +54 -0
  2015. package/src/styles/primitives/select.css +354 -0
  2016. package/src/styles/primitives/separator.css +20 -0
  2017. package/src/styles/primitives/skeleton.css +35 -0
  2018. package/src/styles/primitives/slider.css +121 -0
  2019. package/src/styles/primitives/spinner.css +56 -0
  2020. package/src/styles/primitives/switch.css +131 -0
  2021. package/src/styles/primitives/toggle.css +157 -0
  2022. package/src/styles/react-threat-visuals.css +568 -0
  2023. package/src/styles/security/attack-path.css +192 -0
  2024. package/src/styles/security/cvss-badge.css +136 -0
  2025. package/src/styles/security/detection-status.css +217 -0
  2026. package/src/styles/security/mitre-matrix.css +203 -0
  2027. package/src/styles/security/vulnerability-card.css +294 -0
  2028. package/src/styles/sidebar.css +1194 -0
  2029. package/src/styles/tokens.css +392 -0
  2030. package/src/styles/ui.css +442 -0
  2031. package/src/styles/utilities.css +43 -0
  2032. package/src/styles/visualization/file-tree.css +179 -0
  2033. package/src/styles/visualization/flow-diagram.css +163 -0
  2034. package/src/styles/visualization/json-path-browser.css +275 -0
  2035. package/src/styles/visualization/kanban.css +614 -0
  2036. package/src/styles/visualization/map.css +205 -0
  2037. package/src/styles/visualization/mermaid-diagram.css +172 -0
  2038. package/src/styles/visualization/network-graph.css +169 -0
  2039. package/src/styles/visualization/rule-editor.css +280 -0
  2040. package/src/styles/visualization/terminal.css +133 -0
  2041. package/src/styles/visualization/timeline.css +246 -0
  2042. package/src/ui/index.ts +414 -0
  2043. package/src/ui/ui.test.ts +83 -0
  2044. package/src/utils/a11y.ts +566 -0
  2045. package/src/utils/date.ts +90 -0
  2046. package/src/utils/errors.ts +44 -0
  2047. package/src/utils/index.ts +154 -0
  2048. package/src/utils/keyboard.ts +551 -0
  2049. package/src/utils/registry.ts +41 -0
  2050. package/src/utils/sanitize.ts +23 -0
  2051. package/src/utils/selection.ts +29 -0
  2052. package/src/utils/sorting.ts +73 -0
  2053. package/src/utils/touch.ts +643 -0
  2054. package/src/utils/validation.ts +66 -0
  2055. package/src/visualization/file-tree/index.ts +500 -0
  2056. package/src/visualization/file-tree/types.ts +29 -0
  2057. package/src/visualization/flow-diagram/index.ts +693 -0
  2058. package/src/visualization/flow-diagram/types.ts +39 -0
  2059. package/src/visualization/index.ts +53 -0
  2060. package/src/visualization/json-path-browser/index.ts +502 -0
  2061. package/src/visualization/json-path-browser/types.ts +15 -0
  2062. package/src/visualization/kanban/__tests__/kanban.test.ts +1440 -0
  2063. package/src/visualization/kanban/index.ts +785 -0
  2064. package/src/visualization/kanban/types.ts +93 -0
  2065. package/src/visualization/map/index.ts +623 -0
  2066. package/src/visualization/map/types.ts +37 -0
  2067. package/src/visualization/mermaid-diagram/index.ts +404 -0
  2068. package/src/visualization/mermaid-diagram/types.ts +50 -0
  2069. package/src/visualization/network-graph/index.ts +690 -0
  2070. package/src/visualization/network-graph/types.ts +39 -0
  2071. package/src/visualization/rule-editor/index.ts +562 -0
  2072. package/src/visualization/rule-editor/types.ts +34 -0
  2073. package/src/visualization/terminal/index.ts +403 -0
  2074. package/src/visualization/terminal/types.ts +16 -0
  2075. package/src/visualization/timeline/index.ts +341 -0
  2076. package/src/visualization/timeline/types.ts +25 -0
@@ -0,0 +1,1269 @@
1
+ /**
2
+ * DataGrid - Enterprise-grade React data grid component
3
+ * @countermeasure/web-components/react/primitives/data-grid
4
+ *
5
+ * Features: virtual scrolling, multi-sort, column filtering, column resize,
6
+ * column pinning, column reorder, row selection, context menu, keyboard nav,
7
+ * localStorage persistence, URL state sync.
8
+ */
9
+
10
+ import * as React from 'react'
11
+ import {
12
+ ArrowDownIcon,
13
+ ArrowUpDownIcon,
14
+ ArrowUpIcon,
15
+ FilterIcon,
16
+ ColumnsIcon,
17
+ XIcon,
18
+ PinIcon,
19
+ Columns3Icon,
20
+ RotateCcwIcon,
21
+ } from 'lucide-react'
22
+ import { cn } from './utils'
23
+
24
+ export type SortDirection = 'asc' | 'desc'
25
+ export type PinDirection = 'left' | 'right' | null
26
+ export type FilterType = 'text' | 'select' | 'multi-select'
27
+ export type SelectionMode = 'single' | 'multi' | 'none'
28
+
29
+ export interface SortState {
30
+ key: string
31
+ direction: SortDirection
32
+ }
33
+
34
+ export interface FilterValue {
35
+ type: FilterType
36
+ value?: string
37
+ values?: string[]
38
+ }
39
+
40
+ export interface ColumnDef<TRow = Record<string, unknown>> {
41
+ key: string
42
+ label: string
43
+ sortable?: boolean
44
+ filterable?: boolean
45
+ filterType?: FilterType
46
+ filterOptions?: string[]
47
+ width?: number
48
+ minWidth?: number
49
+ maxWidth?: number
50
+ pinned?: PinDirection
51
+ resizable?: boolean
52
+ reorderable?: boolean
53
+ hideable?: boolean
54
+ cell?: (value: unknown, row: TRow, index: number) => React.ReactNode
55
+ headerClassName?: string
56
+ cellClassName?: string
57
+ }
58
+
59
+ export interface ColumnState {
60
+ key: string
61
+ width: number
62
+ visible: boolean
63
+ pinned: PinDirection
64
+ order: number
65
+ }
66
+
67
+ export interface DataGridProps<TRow = Record<string, unknown>>
68
+ extends Omit<React.ComponentProps<'div'>, 'children' | 'onSelect' | 'contextMenu'> {
69
+ columns: ColumnDef<TRow>[]
70
+ data: TRow[]
71
+ tableId?: string
72
+ rowHeight?: number
73
+ overscan?: number
74
+ selectionMode?: SelectionMode
75
+ selectedRows?: Set<number>
76
+ onSelectionChange?: (selected: Set<number>) => void
77
+ sort?: SortState[]
78
+ onSort?: (sort: SortState[]) => void
79
+ defaultSort?: SortState[]
80
+ filters?: Record<string, FilterValue>
81
+ onFilterChange?: (filters: Record<string, FilterValue>) => void
82
+ globalSearch?: string
83
+ onGlobalSearchChange?: (search: string) => void
84
+ emptyMessage?: string
85
+ loading?: boolean
86
+ enableContextMenu?: boolean
87
+ persistColumnState?: boolean
88
+ onRowClick?: (row: TRow, index: number) => void
89
+ rowClassName?: (row: TRow, index: number) => string | undefined
90
+ }
91
+
92
+ const STORAGE_PREFIX = 'cm-datagrid-react-'
93
+
94
+ function loadState(tableId: string): Record<string, ColumnState> | null {
95
+ try {
96
+ const raw = localStorage.getItem(STORAGE_PREFIX + tableId)
97
+ return raw ? (JSON.parse(raw) as Record<string, ColumnState>) : null
98
+ } catch {
99
+ return null
100
+ }
101
+ }
102
+
103
+ function saveState(tableId: string, state: Record<string, ColumnState>): void {
104
+ try {
105
+ localStorage.setItem(STORAGE_PREFIX + tableId, JSON.stringify(state))
106
+ } catch {
107
+ // ignore
108
+ }
109
+ }
110
+
111
+ function cycleSortState(current: SortState[], key: string, shiftKey: boolean): SortState[] {
112
+ const idx = current.findIndex(s => s.key === key)
113
+ const existing = idx >= 0 ? current[idx] : undefined
114
+
115
+ let nextDir: SortDirection | null
116
+ if (existing) {
117
+ nextDir = existing.direction === 'asc' ? 'desc' : null
118
+ } else {
119
+ nextDir = 'asc'
120
+ }
121
+
122
+ if (shiftKey) {
123
+ const next = [...current]
124
+ if (idx >= 0) {
125
+ if (nextDir === null) {
126
+ next.splice(idx, 1)
127
+ } else {
128
+ next[idx] = { key, direction: nextDir }
129
+ }
130
+ } else if (nextDir !== null) {
131
+ next.push({ key, direction: nextDir })
132
+ }
133
+ return next
134
+ }
135
+
136
+ return nextDir === null ? [] : [{ key, direction: nextDir }]
137
+ }
138
+
139
+ function isNullish(value: unknown): value is null | undefined {
140
+ return value === null || value === undefined
141
+ }
142
+
143
+ function multiSort<TRow>(rows: TRow[], sorts: SortState[]): TRow[] {
144
+ if (sorts.length === 0) return rows
145
+
146
+ return [...rows].sort((a, b) => {
147
+ for (const { key, direction } of sorts) {
148
+ const aVal = (a as Record<string, unknown>)[key]
149
+ const bVal = (b as Record<string, unknown>)[key]
150
+
151
+ const aStr = isNullish(aVal) ? '' : String(aVal)
152
+ const bStr = isNullish(bVal) ? '' : String(bVal)
153
+ const aNum = Number(aStr)
154
+ const bNum = Number(bStr)
155
+
156
+ let result: number
157
+ if (!Number.isNaN(aNum) && !Number.isNaN(bNum) && aStr !== '' && bStr !== '') {
158
+ result = aNum - bNum
159
+ } else {
160
+ result = aStr.localeCompare(bStr)
161
+ }
162
+
163
+ if (result !== 0) {
164
+ return direction === 'desc' ? -result : result
165
+ }
166
+ }
167
+ return 0
168
+ })
169
+ }
170
+
171
+ function matchesFilter(value: unknown, filter: FilterValue): boolean {
172
+ const str = isNullish(value) ? '' : String(value)
173
+
174
+ switch (filter.type) {
175
+ case 'text':
176
+ return !filter.value || str.toLowerCase().includes(filter.value.toLowerCase())
177
+ case 'select':
178
+ return !filter.value || str === filter.value
179
+ case 'multi-select':
180
+ return !filter.values?.length || (filter.values?.includes(str) ?? true)
181
+ }
182
+ }
183
+
184
+ function filterRows<TRow>(
185
+ rows: TRow[],
186
+ filters: Record<string, FilterValue>,
187
+ globalSearch: string,
188
+ keys: string[],
189
+ ): TRow[] {
190
+ const hasFilters = Object.keys(filters).length > 0
191
+ const hasSearch = globalSearch !== ''
192
+
193
+ if (!hasFilters && !hasSearch) return rows
194
+
195
+ return rows.filter(row => {
196
+ const rec = row as Record<string, unknown>
197
+
198
+ if (hasFilters) {
199
+ for (const [key, filter] of Object.entries(filters)) {
200
+ if (!matchesFilter(rec[key], filter)) return false
201
+ }
202
+ }
203
+
204
+ if (hasSearch) {
205
+ const lowerSearch = globalSearch.toLowerCase()
206
+ let found = false
207
+ for (const k of keys) {
208
+ const val = rec[k]
209
+ if (!isNullish(val) && String(val).toLowerCase().includes(lowerSearch)) {
210
+ found = true
211
+ break
212
+ }
213
+ }
214
+ if (!found) return false
215
+ }
216
+
217
+ return true
218
+ })
219
+ }
220
+
221
+ function useVirtualScroll(
222
+ totalRows: number,
223
+ rowHeight: number,
224
+ overscan: number,
225
+ containerRef: React.RefObject<HTMLDivElement | null>,
226
+ ) {
227
+ const [scrollTop, setScrollTop] = React.useState(0)
228
+ const [viewportHeight, setViewportHeight] = React.useState(600)
229
+
230
+ React.useEffect(() => {
231
+ const el = containerRef.current
232
+ if (!el) return
233
+
234
+ const onScroll = () => setScrollTop(el.scrollTop)
235
+ el.addEventListener('scroll', onScroll, { passive: true })
236
+
237
+ const syncViewportHeight = () => {
238
+ const height = el.clientHeight || Math.round(el.getBoundingClientRect().height)
239
+ if (height > 0) {
240
+ setViewportHeight(height)
241
+ }
242
+ }
243
+
244
+ syncViewportHeight()
245
+
246
+ let ro: ResizeObserver | null = null
247
+ if (typeof globalThis.ResizeObserver === 'function') {
248
+ ro = new globalThis.ResizeObserver(entries => {
249
+ for (const entry of entries) {
250
+ setViewportHeight(entry.contentRect.height)
251
+ }
252
+ })
253
+ ro.observe(el)
254
+ }
255
+
256
+ return () => {
257
+ el.removeEventListener('scroll', onScroll)
258
+ ro?.disconnect()
259
+ }
260
+ }, [containerRef])
261
+
262
+ const totalHeight = totalRows * rowHeight
263
+ const visibleCount = Math.ceil(viewportHeight / rowHeight)
264
+ const rawStart = Math.floor(scrollTop / rowHeight)
265
+ const startIndex = Math.max(0, rawStart - overscan)
266
+ const endIndex = Math.min(totalRows, rawStart + visibleCount + overscan)
267
+ const offsetY = startIndex * rowHeight
268
+
269
+ return { startIndex, endIndex, totalHeight, offsetY, visibleCount }
270
+ }
271
+
272
+ function DataGrid<TRow extends Record<string, unknown> = Record<string, unknown>>({
273
+ className,
274
+ columns,
275
+ data,
276
+ tableId,
277
+ rowHeight = 40,
278
+ overscan = 10,
279
+ selectionMode = 'none',
280
+ selectedRows: controlledSelected,
281
+ onSelectionChange,
282
+ sort: controlledSort,
283
+ onSort,
284
+ defaultSort,
285
+ filters: controlledFilters,
286
+ onFilterChange,
287
+ globalSearch = '',
288
+ onGlobalSearchChange,
289
+ emptyMessage = 'No data available',
290
+ loading = false,
291
+ enableContextMenu: _enableCtxMenu = true,
292
+ persistColumnState = true,
293
+ onRowClick,
294
+ rowClassName,
295
+ ...props
296
+ }: DataGridProps<TRow>) {
297
+ const [internalSort, setInternalSort] = React.useState<SortState[]>(defaultSort ?? [])
298
+ const sort = controlledSort ?? internalSort
299
+
300
+ const handleSort = React.useCallback(
301
+ (key: string, shiftKey: boolean) => {
302
+ const next = cycleSortState(sort, key, shiftKey)
303
+ if (controlledSort === undefined) setInternalSort(next)
304
+ onSort?.(next)
305
+ },
306
+ [sort, controlledSort, onSort],
307
+ )
308
+
309
+ const [internalFilters, setInternalFilters] = React.useState<Record<string, FilterValue>>({})
310
+ const filters = controlledFilters ?? internalFilters
311
+
312
+ const setFilter = React.useCallback(
313
+ (key: string, value: FilterValue) => {
314
+ const next = { ...filters, [key]: value }
315
+ if (controlledFilters === undefined) setInternalFilters(next)
316
+ onFilterChange?.(next)
317
+ },
318
+ [filters, controlledFilters, onFilterChange],
319
+ )
320
+
321
+ const clearFilters = React.useCallback(() => {
322
+ if (controlledFilters === undefined) setInternalFilters({})
323
+ onFilterChange?.({})
324
+ }, [controlledFilters, onFilterChange])
325
+
326
+ const [internalSelected, setInternalSelected] = React.useState<Set<number>>(new Set())
327
+ const selected = controlledSelected ?? internalSelected
328
+
329
+ const setSelected = React.useCallback(
330
+ (next: Set<number>) => {
331
+ if (controlledSelected === undefined) setInternalSelected(next)
332
+ onSelectionChange?.(next)
333
+ },
334
+ [controlledSelected, onSelectionChange],
335
+ )
336
+
337
+ const [colState, setColState] = React.useState<Record<string, ColumnState>>(() => {
338
+ if (persistColumnState && tableId) {
339
+ const saved = loadState(tableId)
340
+ if (saved) return saved
341
+ }
342
+ const state: Record<string, ColumnState> = {}
343
+ columns.forEach((col, i) => {
344
+ state[col.key] = {
345
+ key: col.key,
346
+ width: col.width ?? 150,
347
+ visible: true,
348
+ pinned: col.pinned ?? null,
349
+ order: i,
350
+ }
351
+ })
352
+ return state
353
+ })
354
+
355
+ React.useEffect(() => {
356
+ if (persistColumnState && tableId) {
357
+ saveState(tableId, colState)
358
+ }
359
+ }, [colState, persistColumnState, tableId])
360
+
361
+ const [activeFilterCol, setActiveFilterCol] = React.useState<string | null>(null)
362
+ const [showChooser, setShowChooser] = React.useState(false)
363
+
364
+ const columnKeys = React.useMemo(() => columns.map(c => c.key), [columns])
365
+
366
+ const filteredData = React.useMemo(
367
+ () => filterRows(data, filters, globalSearch, columnKeys),
368
+ [data, filters, globalSearch, columnKeys],
369
+ )
370
+
371
+ const sortedData = React.useMemo(() => multiSort(filteredData, sort), [filteredData, sort])
372
+
373
+ const bodyRef = React.useRef<HTMLDivElement>(null)
374
+ const useVirtual = sortedData.length > 100
375
+ const vScroll = useVirtualScroll(sortedData.length, rowHeight, overscan, bodyRef)
376
+
377
+ const orderedColumns = React.useMemo(() => {
378
+ const visible = columns.filter(c => colState[c.key]?.visible !== false)
379
+ return [...visible].sort((a, b) => (colState[a.key]?.order ?? 0) - (colState[b.key]?.order ?? 0))
380
+ }, [columns, colState])
381
+
382
+ const resizeRef = React.useRef<{
383
+ key: string
384
+ startX: number
385
+ startWidth: number
386
+ } | null>(null)
387
+
388
+ const handleResizeStart = React.useCallback(
389
+ (key: string, e: React.PointerEvent) => {
390
+ e.preventDefault()
391
+ e.stopPropagation()
392
+ const startWidth = colState[key]?.width ?? 150
393
+ resizeRef.current = { key, startX: e.clientX, startWidth }
394
+
395
+ const onMove = (moveE: PointerEvent) => {
396
+ if (!resizeRef.current) return
397
+ const delta = moveE.clientX - resizeRef.current.startX
398
+ const col = columns.find(c => c.key === resizeRef.current!.key)
399
+ let newWidth = Math.max(col?.minWidth ?? 40, resizeRef.current.startWidth + delta)
400
+ if (col?.maxWidth) newWidth = Math.min(col.maxWidth, newWidth)
401
+ setColState(prev => ({
402
+ ...prev,
403
+ [resizeRef.current!.key]: { ...prev[resizeRef.current!.key]!, width: newWidth },
404
+ }))
405
+ }
406
+
407
+ const onUp = () => {
408
+ resizeRef.current = null
409
+ document.removeEventListener('pointermove', onMove)
410
+ document.removeEventListener('pointerup', onUp)
411
+ }
412
+
413
+ document.addEventListener('pointermove', onMove)
414
+ document.addEventListener('pointerup', onUp)
415
+ },
416
+ [colState, columns],
417
+ )
418
+
419
+ const [dragKey, setDragKey] = React.useState<string | null>(null)
420
+
421
+ const handleDragStart = React.useCallback((key: string) => {
422
+ setDragKey(key)
423
+ }, [])
424
+
425
+ const handleDrop = React.useCallback(
426
+ (targetKey: string) => {
427
+ if (dragKey === null || dragKey === targetKey) return
428
+ setColState(prev => {
429
+ const entries = Object.values(prev).sort((a, b) => a.order - b.order)
430
+ const fromIdx = entries.findIndex(e => e.key === dragKey)
431
+ const toIdx = entries.findIndex(e => e.key === targetKey)
432
+ if (fromIdx < 0 || toIdx < 0) return prev
433
+ const [moved] = entries.splice(fromIdx, 1)
434
+ if (!moved) return prev
435
+ entries.splice(toIdx, 0, moved)
436
+ const next: Record<string, ColumnState> = {}
437
+ entries.forEach((e, i) => {
438
+ next[e.key] = { ...e, order: i }
439
+ })
440
+ return next
441
+ })
442
+ setDragKey(null)
443
+ },
444
+ [dragKey],
445
+ )
446
+
447
+ const handleRowClick = React.useCallback(
448
+ (row: TRow, index: number, e: React.MouseEvent) => {
449
+ if (selectionMode === 'multi') {
450
+ const next = new Set(selected)
451
+ if (e.shiftKey && selected.size > 0) {
452
+ const last = Math.max(...selected)
453
+ const start = Math.min(last, index)
454
+ const end = Math.max(last, index)
455
+ for (let i = start; i <= end; i++) next.add(i)
456
+ } else if (e.ctrlKey || e.metaKey) {
457
+ if (next.has(index)) next.delete(index)
458
+ else next.add(index)
459
+ } else {
460
+ next.clear()
461
+ next.add(index)
462
+ }
463
+ setSelected(next)
464
+ } else if (selectionMode === 'single') {
465
+ setSelected(new Set([index]))
466
+ }
467
+ onRowClick?.(row, index)
468
+ },
469
+ [selectionMode, selected, setSelected, onRowClick],
470
+ )
471
+
472
+ const allSelected = sortedData.length > 0 && selected.size === sortedData.length
473
+
474
+ const toggleAll = React.useCallback(() => {
475
+ if (allSelected) setSelected(new Set())
476
+ else setSelected(new Set(sortedData.map((_, i) => i)))
477
+ }, [allSelected, sortedData, setSelected])
478
+
479
+ const toggleVisibility = React.useCallback((key: string) => {
480
+ setColState(prev => ({
481
+ ...prev,
482
+ [key]: { ...prev[key]!, visible: !prev[key]?.visible },
483
+ }))
484
+ }, [])
485
+
486
+ const resetColumns = React.useCallback(() => {
487
+ const state: Record<string, ColumnState> = {}
488
+ columns.forEach((col, i) => {
489
+ state[col.key] = {
490
+ key: col.key,
491
+ width: col.width ?? 150,
492
+ visible: true,
493
+ pinned: col.pinned ?? null,
494
+ order: i,
495
+ }
496
+ })
497
+ setColState(state)
498
+ if (tableId) {
499
+ try {
500
+ localStorage.removeItem(STORAGE_PREFIX + tableId)
501
+ } catch {
502
+ // ignore
503
+ }
504
+ }
505
+ }, [columns, tableId])
506
+
507
+ const visibleRows = React.useMemo(() => {
508
+ if (!useVirtual) return sortedData.map((row, i) => ({ row, index: i }))
509
+ return sortedData.slice(vScroll.startIndex, vScroll.endIndex).map((row, i) => ({
510
+ row,
511
+ index: vScroll.startIndex + i,
512
+ }))
513
+ }, [sortedData, useVirtual, vScroll.startIndex, vScroll.endIndex])
514
+
515
+ const activeFilterCount = Object.values(filters).filter(f => {
516
+ if (f.type === 'text') return !!f.value
517
+ if (f.type === 'select') return !!f.value
518
+ if (f.type === 'multi-select') return (f.values?.length ?? 0) > 0
519
+ return false
520
+ }).length
521
+
522
+ const [focusedRow, setFocusedRow] = React.useState(-1)
523
+ const [focusedCol, setFocusedCol] = React.useState(0)
524
+
525
+ const handleKeyDown = React.useCallback(
526
+ (e: React.KeyboardEvent) => {
527
+ const totalRows = sortedData.length
528
+ const totalCols = orderedColumns.length
529
+ if (totalRows === 0) return
530
+
531
+ let nextRow = focusedRow
532
+ let nextCol = focusedCol
533
+ let handled = true
534
+
535
+ switch (e.key) {
536
+ case 'ArrowDown':
537
+ nextRow = Math.min(totalRows - 1, focusedRow + 1)
538
+ break
539
+ case 'ArrowUp':
540
+ nextRow = Math.max(0, focusedRow - 1)
541
+ break
542
+ case 'ArrowRight':
543
+ nextCol = Math.min(totalCols - 1, focusedCol + 1)
544
+ break
545
+ case 'ArrowLeft':
546
+ nextCol = Math.max(0, focusedCol - 1)
547
+ break
548
+ case 'Home':
549
+ if (e.ctrlKey || e.metaKey) {
550
+ nextRow = 0
551
+ nextCol = 0
552
+ } else {
553
+ nextCol = 0
554
+ }
555
+ break
556
+ case 'End':
557
+ if (e.ctrlKey || e.metaKey) {
558
+ nextRow = totalRows - 1
559
+ nextCol = totalCols - 1
560
+ } else {
561
+ nextCol = totalCols - 1
562
+ }
563
+ break
564
+ case 'PageDown':
565
+ nextRow = Math.min(totalRows - 1, focusedRow + 10)
566
+ break
567
+ case 'PageUp':
568
+ nextRow = Math.max(0, focusedRow - 10)
569
+ break
570
+ case 'Enter':
571
+ case ' ':
572
+ if (focusedRow >= 0 && focusedRow < totalRows) {
573
+ const row = sortedData[focusedRow]
574
+ if (row) onRowClick?.(row, focusedRow)
575
+ }
576
+ break
577
+ case 'Escape':
578
+ setActiveFilterCol(null)
579
+ setShowChooser(false)
580
+ setContextMenu(null)
581
+ break
582
+ default:
583
+ handled = false
584
+ }
585
+
586
+ if (handled) {
587
+ e.preventDefault()
588
+ if (nextRow !== focusedRow || nextCol !== focusedCol) {
589
+ setFocusedRow(nextRow)
590
+ setFocusedCol(nextCol)
591
+ if (useVirtual && bodyRef.current) {
592
+ const targetTop = nextRow * rowHeight
593
+ const { scrollTop } = bodyRef.current
594
+ const viewH = bodyRef.current.clientHeight
595
+ if (targetTop < scrollTop) {
596
+ bodyRef.current.scrollTop = targetTop
597
+ } else if (targetTop + rowHeight > scrollTop + viewH) {
598
+ bodyRef.current.scrollTop = targetTop + rowHeight - viewH
599
+ }
600
+ }
601
+ }
602
+ }
603
+ },
604
+ [focusedRow, focusedCol, sortedData, orderedColumns.length, onRowClick, useVirtual, rowHeight],
605
+ )
606
+
607
+ const [contextMenu, setContextMenu] = React.useState<{
608
+ x: number
609
+ y: number
610
+ colKey: string
611
+ } | null>(null)
612
+
613
+ const contextMenuRef = React.useRef<HTMLDivElement>(null)
614
+
615
+ React.useEffect(() => {
616
+ if (!contextMenu) return
617
+ const handler = (e: MouseEvent) => {
618
+ if (contextMenuRef.current && !contextMenuRef.current.contains(e.target as Node)) {
619
+ setContextMenu(null)
620
+ }
621
+ }
622
+ document.addEventListener('mousedown', handler)
623
+ return () => document.removeEventListener('mousedown', handler)
624
+ }, [contextMenu])
625
+
626
+ const handleHeaderContextMenu = React.useCallback((colKey: string, e: React.MouseEvent) => {
627
+ e.preventDefault()
628
+ e.stopPropagation()
629
+ setContextMenu({ x: e.clientX, y: e.clientY, colKey })
630
+ }, [])
631
+
632
+ const pinColumn = React.useCallback((key: string, direction: PinDirection) => {
633
+ setColState(prev => ({
634
+ ...prev,
635
+ [key]: { ...prev[key]!, pinned: direction },
636
+ }))
637
+ setContextMenu(null)
638
+ }, [])
639
+
640
+ const autosizeColumn = React.useCallback(
641
+ (key: string) => {
642
+ const col = columns.find(c => c.key === key)
643
+ if (!col) return
644
+ const span = document.createElement('span')
645
+ span.style.cssText =
646
+ 'position:absolute;visibility:hidden;white-space:nowrap;font:inherit;font-size:14px'
647
+ document.body.appendChild(span)
648
+
649
+ span.textContent = col.label
650
+ let maxW = span.offsetWidth + 48
651
+
652
+ for (let i = 0; i < Math.min(sortedData.length, 100); i++) {
653
+ const val = (sortedData[i] as Record<string, unknown>)[key]
654
+ span.textContent = isNullish(val) ? '' : String(val)
655
+ maxW = Math.max(maxW, span.offsetWidth + 24)
656
+ }
657
+ document.body.removeChild(span)
658
+
659
+ const minW = col.minWidth ?? 40
660
+ const maxCap = col.maxWidth ?? 800
661
+ const final = Math.max(minW, Math.min(maxCap, maxW))
662
+
663
+ setColState(prev => ({
664
+ ...prev,
665
+ [key]: { ...prev[key]!, width: final },
666
+ }))
667
+ setContextMenu(null)
668
+ },
669
+ [columns, sortedData],
670
+ )
671
+
672
+ const autosizeAllColumns = React.useCallback(() => {
673
+ for (const col of orderedColumns) {
674
+ autosizeColumn(col.key)
675
+ }
676
+ }, [orderedColumns, autosizeColumn])
677
+
678
+ return (
679
+ <div
680
+ data-slot="data-grid"
681
+ role="grid"
682
+ tabIndex={0}
683
+ className={cn('cmm-grid-react relative w-full outline-none', className)}
684
+ onKeyDown={handleKeyDown}
685
+ {...props}
686
+ >
687
+ {loading && (
688
+ <div className="absolute inset-0 z-20 flex items-center justify-center rounded-xl bg-surface-primary/60 backdrop-blur-sm">
689
+ <span className="text-foreground-muted animate-pulse text-sm">Loading...</span>
690
+ </div>
691
+ )}
692
+
693
+ <div className="flex items-center gap-3 border-b border-border-glass px-3 py-2 text-xs text-foreground-muted">
694
+ {activeFilterCount > 0 && (
695
+ <>
696
+ <span className="bg-primary/10 text-primary rounded px-1.5 py-0.5 text-[10px] font-semibold">
697
+ {activeFilterCount} filter{activeFilterCount > 1 ? 's' : ''}
698
+ </span>
699
+ <button
700
+ type="button"
701
+ onClick={clearFilters}
702
+ className="text-foreground-muted hover:text-foreground text-[10px] underline"
703
+ >
704
+ Clear
705
+ </button>
706
+ </>
707
+ )}
708
+ <div className="ml-auto flex items-center gap-2">
709
+ {onGlobalSearchChange && (
710
+ <input
711
+ type="text"
712
+ className="border-border-glass text-foreground placeholder:text-foreground-muted focus:ring-primary w-36 rounded border bg-transparent px-2 py-1 text-[11px] focus:outline-none focus:ring-1"
713
+ placeholder="Search..."
714
+ value={globalSearch}
715
+ onChange={e => onGlobalSearchChange(e.target.value)}
716
+ />
717
+ )}
718
+ <button
719
+ type="button"
720
+ onClick={() => setShowChooser(!showChooser)}
721
+ className="text-foreground-muted hover:text-foreground hover:bg-glass-hover rounded p-1"
722
+ aria-label="Choose columns"
723
+ >
724
+ <ColumnsIcon className="size-3.5" />
725
+ </button>
726
+ </div>
727
+ </div>
728
+
729
+ {showChooser && (
730
+ <div className="bg-surface-primary border-border-glass absolute right-0 top-10 z-30 w-56 rounded-lg border p-3 shadow-xl">
731
+ <div className="mb-2 flex items-center justify-between">
732
+ <span className="text-foreground text-xs font-semibold">Columns</span>
733
+ <button
734
+ type="button"
735
+ onClick={() => setShowChooser(false)}
736
+ className="text-foreground-muted hover:text-foreground"
737
+ >
738
+ <XIcon className="size-3.5" />
739
+ </button>
740
+ </div>
741
+ <div className="max-h-64 space-y-1.5 overflow-y-auto">
742
+ {columns
743
+ .filter(c => c.hideable !== false)
744
+ .map(col => (
745
+ <label
746
+ key={col.key}
747
+ className="text-foreground hover:bg-glass-hover flex cursor-pointer items-center gap-2 rounded px-1.5 py-1 text-xs"
748
+ >
749
+ <input
750
+ type="checkbox"
751
+ checked={colState[col.key]?.visible !== false}
752
+ onChange={() => toggleVisibility(col.key)}
753
+ className="accent-primary"
754
+ />
755
+ {col.label}
756
+ </label>
757
+ ))}
758
+ </div>
759
+ <button
760
+ type="button"
761
+ onClick={resetColumns}
762
+ className="text-foreground-muted hover:text-foreground mt-2 w-full text-[10px] underline"
763
+ >
764
+ Reset columns
765
+ </button>
766
+ </div>
767
+ )}
768
+
769
+ <div className="border-border-glass relative w-full overflow-x-auto rounded-b-xl border border-t-0">
770
+ <div className="bg-surface-secondary border-border-glass sticky top-0 z-10 flex border-b" role="row">
771
+ {selectionMode !== 'none' && (
772
+ <div className="flex w-10 min-w-[40px] items-center justify-center px-2">
773
+ {selectionMode === 'multi' && (
774
+ <input
775
+ type="checkbox"
776
+ checked={allSelected}
777
+ onChange={toggleAll}
778
+ aria-label="Select all"
779
+ className="accent-primary"
780
+ />
781
+ )}
782
+ </div>
783
+ )}
784
+ {orderedColumns.map(col => {
785
+ const state = colState[col.key]
786
+ const w = state?.width ?? col.width ?? 150
787
+ const sortIdx = sort.findIndex(s => s.key === col.key)
788
+ const sortEntry = sortIdx >= 0 ? sort[sortIdx] : undefined
789
+ const colFilter = filters[col.key]
790
+ const hasActiveFilter =
791
+ !isNullish(colFilter) &&
792
+ ((colFilter.type === 'text' && !!colFilter.value) ||
793
+ (colFilter.type === 'multi-select' && (colFilter.values?.length ?? 0) > 0) ||
794
+ (colFilter.type === 'select' && !!colFilter.value))
795
+
796
+ return (
797
+ <div
798
+ key={col.key}
799
+ role="columnheader"
800
+ className={cn(
801
+ 'group text-foreground-secondary relative flex h-10 items-center gap-1 whitespace-nowrap px-3 text-[11px] font-semibold uppercase tracking-wider select-none',
802
+ col.sortable !== false && 'hover:text-foreground cursor-pointer transition-colors',
803
+ col.headerClassName,
804
+ state?.pinned && 'bg-surface-secondary sticky z-[1]',
805
+ state?.pinned === 'left' && 'left-0',
806
+ state?.pinned === 'right' && 'right-0',
807
+ )}
808
+ style={{ width: w, minWidth: col.minWidth ?? 40 }}
809
+ draggable={col.reorderable !== false}
810
+ onDragStart={() => handleDragStart(col.key)}
811
+ onDragOver={e => {
812
+ e.preventDefault()
813
+ }}
814
+ onDrop={() => handleDrop(col.key)}
815
+ onClick={e => {
816
+ if (col.sortable !== false) handleSort(col.key, e.shiftKey)
817
+ }}
818
+ onContextMenu={e => handleHeaderContextMenu(col.key, e)}
819
+ aria-sort={
820
+ sortEntry ? (sortEntry.direction === 'asc' ? 'ascending' : 'descending') : undefined
821
+ }
822
+ >
823
+ <span className="truncate">{col.label}</span>
824
+
825
+ {col.sortable !== false && (
826
+ <span
827
+ className={cn(
828
+ 'text-foreground-muted inline-flex shrink-0 transition-opacity',
829
+ sortEntry ? 'opacity-100' : 'group-hover:opacity-40 opacity-0',
830
+ )}
831
+ >
832
+ {sortEntry ? (
833
+ sortEntry.direction === 'asc' ? (
834
+ <ArrowUpIcon className="size-3" />
835
+ ) : (
836
+ <ArrowDownIcon className="size-3" />
837
+ )
838
+ ) : (
839
+ <ArrowUpDownIcon className="size-3" />
840
+ )}
841
+ </span>
842
+ )}
843
+
844
+ {sortEntry && sort.length > 1 && (
845
+ <span className="bg-primary/20 text-primary flex size-3.5 items-center justify-center rounded-full text-[9px] font-bold">
846
+ {sortIdx + 1}
847
+ </span>
848
+ )}
849
+
850
+ {hasActiveFilter && <span className="bg-primary size-1.5 shrink-0 rounded-full" />}
851
+
852
+ {col.filterable !== false && (
853
+ <button
854
+ type="button"
855
+ onClick={e => {
856
+ e.stopPropagation()
857
+ setActiveFilterCol(activeFilterCol === col.key ? null : col.key)
858
+ }}
859
+ className={cn(
860
+ 'hover:bg-glass-hover rounded p-0.5 opacity-0 transition-opacity group-hover:opacity-100',
861
+ activeFilterCol === col.key && 'opacity-100',
862
+ )}
863
+ aria-label={`Filter ${col.label}`}
864
+ >
865
+ <FilterIcon className="size-2.5" />
866
+ </button>
867
+ )}
868
+
869
+ {col.resizable !== false && (
870
+ <div
871
+ className="hover:bg-primary/40 absolute bottom-0 right-0 top-0 w-1 cursor-col-resize transition-colors"
872
+ onPointerDown={e => handleResizeStart(col.key, e)}
873
+ onDoubleClick={e => {
874
+ e.stopPropagation()
875
+ autosizeColumn(col.key)
876
+ }}
877
+ onClick={e => e.stopPropagation()}
878
+ />
879
+ )}
880
+
881
+ {activeFilterCol === col.key && (
882
+ <FilterDropdown
883
+ column={col}
884
+ data={data}
885
+ {...(!isNullish(filters[col.key]) ? { currentFilter: filters[col.key] } : {})}
886
+ onFilter={value => setFilter(col.key, value)}
887
+ onClose={() => setActiveFilterCol(null)}
888
+ />
889
+ )}
890
+ </div>
891
+ )
892
+ })}
893
+ </div>
894
+
895
+ <div
896
+ ref={bodyRef}
897
+ className="relative overflow-y-auto"
898
+ style={useVirtual ? { height: Math.min(sortedData.length * rowHeight, 600) } : undefined}
899
+ >
900
+ {useVirtual && <div style={{ height: vScroll.totalHeight, position: 'relative' }} />}
901
+
902
+ {sortedData.length === 0 ? (
903
+ <div className="text-foreground-muted flex items-center justify-center py-10 text-sm">
904
+ {emptyMessage}
905
+ </div>
906
+ ) : (
907
+ visibleRows.map(({ row, index }) => (
908
+ <div
909
+ key={index}
910
+ role="row"
911
+ className={cn(
912
+ 'border-border-glass hover:bg-glass-hover flex border-b transition-colors',
913
+ onRowClick && 'cursor-pointer',
914
+ index % 2 === 1 && 'bg-foreground/[0.02]',
915
+ selected.has(index) && 'bg-primary/5',
916
+ focusedRow === index && 'ring-primary/40 ring-1 ring-inset',
917
+ rowClassName?.(row, index),
918
+ )}
919
+ style={
920
+ useVirtual
921
+ ? {
922
+ position: 'absolute',
923
+ top: index * rowHeight,
924
+ height: rowHeight,
925
+ width: '100%',
926
+ }
927
+ : { height: rowHeight }
928
+ }
929
+ data-state={selected.has(index) ? 'selected' : undefined}
930
+ onClick={e => handleRowClick(row, index, e)}
931
+ >
932
+ {selectionMode !== 'none' && (
933
+ <div className="flex w-10 min-w-[40px] items-center justify-center px-2">
934
+ <input
935
+ type="checkbox"
936
+ checked={selected.has(index)}
937
+ onChange={() => {
938
+ const next = new Set(selected)
939
+ if (next.has(index)) next.delete(index)
940
+ else next.add(index)
941
+ setSelected(next)
942
+ }}
943
+ onClick={e => e.stopPropagation()}
944
+ aria-label={`Select row ${index + 1}`}
945
+ className="accent-primary"
946
+ />
947
+ </div>
948
+ )}
949
+ {orderedColumns.map(col => {
950
+ const state = colState[col.key]
951
+ const w = state?.width ?? col.width ?? 150
952
+ const cellValue = (row as Record<string, unknown>)[col.key]
953
+
954
+ return (
955
+ <div
956
+ key={col.key}
957
+ role="gridcell"
958
+ className={cn(
959
+ 'text-foreground flex items-center truncate px-3 text-sm',
960
+ col.cellClassName,
961
+ state?.pinned && 'bg-surface-primary sticky z-[1]',
962
+ state?.pinned === 'left' && 'left-0',
963
+ state?.pinned === 'right' && 'right-0',
964
+ )}
965
+ style={{ width: w, minWidth: col.minWidth ?? 40 }}
966
+ >
967
+ {col.cell ? col.cell(cellValue, row, index) : isNullish(cellValue) ? '' : String(cellValue)}
968
+ </div>
969
+ )
970
+ })}
971
+ </div>
972
+ ))
973
+ )}
974
+ </div>
975
+ </div>
976
+
977
+ <div className="text-foreground-muted border-border-glass flex items-center justify-between border-t px-3 py-1.5 text-[11px] tabular-nums">
978
+ <span>
979
+ {data.length === sortedData.length ? `Rows: ${data.length}` : `Rows: ${sortedData.length} of ${data.length}`}
980
+ </span>
981
+ {selected.size > 0 && <span className="text-primary font-semibold">{selected.size} selected</span>}
982
+ </div>
983
+
984
+ {contextMenu && (
985
+ <ContextMenu
986
+ ref={contextMenuRef}
987
+ x={contextMenu.x}
988
+ y={contextMenu.y}
989
+ colKey={contextMenu.colKey}
990
+ columns={columns}
991
+ sort={sort}
992
+ colState={colState}
993
+ onSort={(key, dir) => {
994
+ const next = dir ? [{ key, direction: dir }] : []
995
+ if (controlledSort === undefined) setInternalSort(next)
996
+ onSort?.(next)
997
+ setContextMenu(null)
998
+ }}
999
+ onPin={pinColumn}
1000
+ onAutosize={autosizeColumn}
1001
+ onAutosizeAll={autosizeAllColumns}
1002
+ onChooseColumns={() => {
1003
+ setShowChooser(true)
1004
+ setContextMenu(null)
1005
+ }}
1006
+ onResetColumns={() => {
1007
+ resetColumns()
1008
+ setContextMenu(null)
1009
+ }}
1010
+ />
1011
+ )}
1012
+ </div>
1013
+ )
1014
+ }
1015
+
1016
+ interface ContextMenuProps {
1017
+ x: number
1018
+ y: number
1019
+ colKey: string
1020
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1021
+ columns: ColumnDef<any>[]
1022
+ sort: SortState[]
1023
+ colState: Record<string, ColumnState>
1024
+ onSort: (key: string, direction: SortDirection | null) => void
1025
+ onPin: (key: string, direction: PinDirection) => void
1026
+ onAutosize: (key: string) => void
1027
+ onAutosizeAll: () => void
1028
+ onChooseColumns: () => void
1029
+ onResetColumns: () => void
1030
+ }
1031
+
1032
+ const ContextMenu = React.forwardRef<HTMLDivElement, ContextMenuProps>(
1033
+ (
1034
+ {
1035
+ x,
1036
+ y,
1037
+ colKey,
1038
+ columns,
1039
+ sort,
1040
+ colState,
1041
+ onSort,
1042
+ onPin,
1043
+ onAutosize,
1044
+ onAutosizeAll,
1045
+ onChooseColumns,
1046
+ onResetColumns,
1047
+ },
1048
+ ref,
1049
+ ) => {
1050
+ const col = columns.find(c => c.key === colKey)
1051
+ const currentSort = sort.find(s => s.key === colKey)
1052
+ const currentPin = colState[colKey]?.pinned ?? null
1053
+
1054
+ const items: Array<{
1055
+ label: string
1056
+ icon?: React.ReactNode
1057
+ action: () => void
1058
+ separator?: boolean
1059
+ disabled?: boolean
1060
+ }> = []
1061
+
1062
+ if (col?.sortable !== false) {
1063
+ items.push({
1064
+ label: 'Sort Ascending',
1065
+ icon: <ArrowUpIcon className="size-3.5" />,
1066
+ action: () => onSort(colKey, 'asc'),
1067
+ disabled: currentSort?.direction === 'asc',
1068
+ })
1069
+ items.push({
1070
+ label: 'Sort Descending',
1071
+ icon: <ArrowDownIcon className="size-3.5" />,
1072
+ action: () => onSort(colKey, 'desc'),
1073
+ disabled: currentSort?.direction === 'desc',
1074
+ })
1075
+ if (currentSort) {
1076
+ items.push({
1077
+ label: 'Clear Sort',
1078
+ icon: <XIcon className="size-3.5" />,
1079
+ action: () => onSort(colKey, null),
1080
+ })
1081
+ }
1082
+ items.push({ label: '', action: () => {}, separator: true })
1083
+ }
1084
+
1085
+ items.push({
1086
+ label: 'Pin Left',
1087
+ icon: <PinIcon className="size-3.5" />,
1088
+ action: () => onPin(colKey, 'left'),
1089
+ disabled: currentPin === 'left',
1090
+ })
1091
+ items.push({
1092
+ label: 'Pin Right',
1093
+ icon: <PinIcon className="size-3.5 rotate-180" />,
1094
+ action: () => onPin(colKey, 'right'),
1095
+ disabled: currentPin === 'right',
1096
+ })
1097
+ if (currentPin) {
1098
+ items.push({
1099
+ label: 'Unpin',
1100
+ icon: <XIcon className="size-3.5" />,
1101
+ action: () => onPin(colKey, null),
1102
+ })
1103
+ }
1104
+
1105
+ items.push({ label: '', action: () => {}, separator: true })
1106
+
1107
+ items.push({
1108
+ label: 'Autosize This Column',
1109
+ action: () => onAutosize(colKey),
1110
+ })
1111
+ items.push({
1112
+ label: 'Autosize All Columns',
1113
+ action: () => onAutosizeAll(),
1114
+ })
1115
+
1116
+ items.push({ label: '', action: () => {}, separator: true })
1117
+
1118
+ items.push({
1119
+ label: 'Choose Columns',
1120
+ icon: <Columns3Icon className="size-3.5" />,
1121
+ action: () => onChooseColumns(),
1122
+ })
1123
+ items.push({
1124
+ label: 'Reset Columns',
1125
+ icon: <RotateCcwIcon className="size-3.5" />,
1126
+ action: () => onResetColumns(),
1127
+ })
1128
+
1129
+ return (
1130
+ <div
1131
+ ref={ref}
1132
+ className="bg-surface-primary border-border-glass fixed z-50 w-52 rounded-lg border py-1 text-xs text-foreground shadow-2xl"
1133
+ style={{ top: y, left: x }}
1134
+ >
1135
+ {items.map((item, i) =>
1136
+ item.separator ? (
1137
+ <div key={i} className="border-border-glass my-1 border-t" />
1138
+ ) : (
1139
+ <button
1140
+ key={i}
1141
+ type="button"
1142
+ disabled={item.disabled}
1143
+ onClick={item.action}
1144
+ className="hover:bg-glass-hover flex w-full items-center gap-2.5 px-3 py-1.5 text-left transition-colors disabled:cursor-default disabled:opacity-40"
1145
+ >
1146
+ {item.icon && <span className="text-foreground-muted shrink-0">{item.icon}</span>}
1147
+ {item.label}
1148
+ </button>
1149
+ ),
1150
+ )}
1151
+ </div>
1152
+ )
1153
+ },
1154
+ )
1155
+
1156
+ ContextMenu.displayName = 'ContextMenu'
1157
+
1158
+ function FilterDropdown<TRow>({
1159
+ column,
1160
+ data,
1161
+ currentFilter,
1162
+ onFilter,
1163
+ onClose,
1164
+ }: {
1165
+ column: ColumnDef<TRow>
1166
+ data: TRow[]
1167
+ currentFilter?: FilterValue
1168
+ onFilter: (value: FilterValue) => void
1169
+ onClose: () => void
1170
+ }) {
1171
+ const [search, setSearch] = React.useState('')
1172
+ const dropdownRef = React.useRef<HTMLDivElement>(null)
1173
+
1174
+ React.useEffect(() => {
1175
+ const handler = (e: MouseEvent) => {
1176
+ if (dropdownRef.current && !dropdownRef.current.contains(e.target as Node)) {
1177
+ onClose()
1178
+ }
1179
+ }
1180
+ document.addEventListener('mousedown', handler)
1181
+ return () => document.removeEventListener('mousedown', handler)
1182
+ }, [onClose])
1183
+
1184
+ const filterType = column.filterType ?? 'text'
1185
+
1186
+ if (filterType === 'text') {
1187
+ return (
1188
+ <div
1189
+ ref={dropdownRef}
1190
+ className="bg-surface-primary border-border-glass absolute left-0 top-full z-20 mt-1 w-48 rounded-lg border p-2 shadow-xl"
1191
+ onClick={e => e.stopPropagation()}
1192
+ >
1193
+ <input
1194
+ type="text"
1195
+ className="border-border-glass text-foreground placeholder:text-foreground-muted focus:ring-primary w-full rounded border bg-transparent px-2 py-1.5 text-xs focus:outline-none focus:ring-1"
1196
+ placeholder={`Filter ${column.label}...`}
1197
+ value={currentFilter?.value ?? ''}
1198
+ onChange={e => onFilter({ type: 'text', value: e.target.value })}
1199
+ autoFocus
1200
+ />
1201
+ </div>
1202
+ )
1203
+ }
1204
+
1205
+ const options =
1206
+ column.filterOptions ??
1207
+ Array.from(
1208
+ new Set(
1209
+ data
1210
+ .map(row => {
1211
+ const val = (row as Record<string, unknown>)[column.key]
1212
+ return isNullish(val) ? '' : String(val)
1213
+ })
1214
+ .filter(Boolean),
1215
+ ),
1216
+ ).sort()
1217
+
1218
+ const selectedValues = new Set(currentFilter?.values ?? [])
1219
+ const filteredOptions = search ? options.filter(o => o.toLowerCase().includes(search.toLowerCase())) : options
1220
+
1221
+ return (
1222
+ <div
1223
+ ref={dropdownRef}
1224
+ className="bg-surface-primary border-border-glass absolute left-0 top-full z-20 mt-1 w-52 rounded-lg border p-2 shadow-xl"
1225
+ onClick={e => e.stopPropagation()}
1226
+ >
1227
+ <input
1228
+ type="text"
1229
+ className="border-border-glass text-foreground placeholder:text-foreground-muted focus:ring-primary mb-1.5 w-full rounded border bg-transparent px-2 py-1.5 text-xs focus:outline-none focus:ring-1"
1230
+ placeholder="Search..."
1231
+ value={search}
1232
+ onChange={e => setSearch(e.target.value)}
1233
+ autoFocus
1234
+ />
1235
+ <div className="max-h-40 space-y-0.5 overflow-y-auto">
1236
+ {filteredOptions.map(opt => (
1237
+ <label
1238
+ key={opt}
1239
+ className="text-foreground hover:bg-glass-hover flex cursor-pointer items-center gap-2 rounded px-1.5 py-1 text-xs"
1240
+ >
1241
+ <input
1242
+ type="checkbox"
1243
+ checked={selectedValues.has(opt)}
1244
+ onChange={() => {
1245
+ const next = new Set(selectedValues)
1246
+ if (next.has(opt)) next.delete(opt)
1247
+ else next.add(opt)
1248
+ onFilter({ type: 'multi-select', values: Array.from(next) })
1249
+ }}
1250
+ className="accent-primary"
1251
+ />
1252
+ {opt}
1253
+ </label>
1254
+ ))}
1255
+ </div>
1256
+ {selectedValues.size > 0 && (
1257
+ <button
1258
+ type="button"
1259
+ onClick={() => onFilter({ type: 'multi-select', values: [] })}
1260
+ className="text-foreground-muted hover:text-foreground mt-1.5 w-full text-center text-[10px] underline"
1261
+ >
1262
+ Clear filter
1263
+ </button>
1264
+ )}
1265
+ </div>
1266
+ )
1267
+ }
1268
+
1269
+ export { DataGrid }