@mks2508/mks-ui 0.3.1 → 0.4.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 (325) hide show
  1. package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts +146 -0
  2. package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts.map +1 -0
  3. package/dist/react-ui/blocks/Terminal/ResttyAdapter.js +213 -0
  4. package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts +55 -0
  5. package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts.map +1 -0
  6. package/dist/react-ui/blocks/Terminal/Terminal.adapter.js +68 -0
  7. package/dist/react-ui/blocks/Terminal/Terminal.theme.d.ts +43 -0
  8. package/dist/react-ui/blocks/Terminal/Terminal.theme.d.ts.map +1 -0
  9. package/dist/react-ui/blocks/Terminal/Terminal.theme.js +59 -0
  10. package/dist/react-ui/blocks/Terminal/Terminal.theme.restty.d.ts +63 -0
  11. package/dist/react-ui/blocks/Terminal/Terminal.theme.restty.d.ts.map +1 -0
  12. package/dist/react-ui/blocks/Terminal/Terminal.theme.restty.js +109 -0
  13. package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts +351 -0
  14. package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts.map +1 -0
  15. package/dist/react-ui/blocks/Terminal/TerminalPanel.d.ts +60 -0
  16. package/dist/react-ui/blocks/Terminal/TerminalPanel.d.ts.map +1 -0
  17. package/dist/react-ui/blocks/Terminal/TerminalPanel.js +183 -0
  18. package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts +111 -0
  19. package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts.map +1 -0
  20. package/dist/react-ui/blocks/Terminal/TerminalRestty.js +185 -0
  21. package/dist/react-ui/blocks/Terminal/TerminalXterm.d.ts +58 -0
  22. package/dist/react-ui/blocks/Terminal/TerminalXterm.d.ts.map +1 -0
  23. package/dist/react-ui/blocks/Terminal/TerminalXterm.js +143 -0
  24. package/dist/react-ui/blocks/Terminal/XTermAdapter.d.ts +87 -0
  25. package/dist/react-ui/blocks/Terminal/XTermAdapter.d.ts.map +1 -0
  26. package/dist/react-ui/blocks/Terminal/XTermAdapter.js +135 -0
  27. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts +160 -0
  28. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts.map +1 -0
  29. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.js +185 -0
  30. package/dist/react-ui/blocks/Terminal/components/SpecializedSyntaxHighlighter.d.ts +48 -0
  31. package/dist/react-ui/blocks/Terminal/components/SpecializedSyntaxHighlighter.d.ts.map +1 -0
  32. package/dist/react-ui/blocks/Terminal/components/SpecializedSyntaxHighlighter.js +139 -0
  33. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts +60 -0
  34. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts.map +1 -0
  35. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.js +352 -0
  36. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts +36 -0
  37. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts.map +1 -0
  38. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.js +52 -0
  39. package/dist/react-ui/blocks/Terminal/components/index.d.ts +10 -0
  40. package/dist/react-ui/blocks/Terminal/components/index.d.ts.map +1 -0
  41. package/dist/react-ui/blocks/Terminal/components/index.js +4 -0
  42. package/dist/react-ui/blocks/Terminal/hooks/index.d.ts +11 -0
  43. package/dist/react-ui/blocks/Terminal/hooks/index.d.ts.map +1 -0
  44. package/dist/react-ui/blocks/Terminal/hooks/index.js +2 -0
  45. package/dist/react-ui/blocks/Terminal/hooks/useTerminalSettings.d.ts +69 -0
  46. package/dist/react-ui/blocks/Terminal/hooks/useTerminalSettings.d.ts.map +1 -0
  47. package/dist/react-ui/blocks/Terminal/hooks/useTerminalSettings.js +162 -0
  48. package/dist/react-ui/blocks/Terminal/hooks/useTerminalWebSocket.d.ts +104 -0
  49. package/dist/react-ui/blocks/Terminal/hooks/useTerminalWebSocket.d.ts.map +1 -0
  50. package/dist/react-ui/blocks/Terminal/hooks/useTerminalWebSocket.js +180 -0
  51. package/dist/react-ui/blocks/Terminal/index.d.ts +39 -0
  52. package/dist/react-ui/blocks/Terminal/index.d.ts.map +1 -0
  53. package/dist/react-ui/blocks/Terminal/index.js +38 -0
  54. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.d.ts +58 -0
  55. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.d.ts.map +1 -0
  56. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.js +222 -0
  57. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel.d.ts +74 -0
  58. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel.d.ts.map +1 -0
  59. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel.js +168 -0
  60. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts +42 -0
  61. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts.map +1 -0
  62. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.js +175 -0
  63. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts +43 -0
  64. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts.map +1 -0
  65. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.d.ts +38 -0
  66. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.d.ts.map +1 -0
  67. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.js +62 -0
  68. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts +67 -0
  69. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts.map +1 -0
  70. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts +32 -0
  71. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts.map +1 -0
  72. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.js +326 -0
  73. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts +36 -0
  74. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts.map +1 -0
  75. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.js +371 -0
  76. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.d.ts +67 -0
  77. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.d.ts.map +1 -0
  78. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.js +417 -0
  79. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts +197 -0
  80. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts.map +1 -0
  81. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts +54 -0
  82. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts.map +1 -0
  83. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.js +193 -0
  84. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.types.d.ts +57 -0
  85. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.types.d.ts.map +1 -0
  86. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts +30 -0
  87. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts.map +1 -0
  88. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.js +126 -0
  89. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts +31 -0
  90. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts.map +1 -0
  91. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.js +149 -0
  92. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.d.ts +35 -0
  93. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.d.ts.map +1 -0
  94. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl.d.ts +58 -0
  95. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl.d.ts.map +1 -0
  96. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts +63 -0
  97. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts.map +1 -0
  98. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.js +245 -0
  99. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts +24 -0
  100. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts.map +1 -0
  101. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.js +225 -0
  102. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts +35 -0
  103. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts.map +1 -0
  104. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.js +187 -0
  105. package/dist/react-ui/blocks/Terminal/panel/index.d.ts +30 -0
  106. package/dist/react-ui/blocks/Terminal/panel/index.d.ts.map +1 -0
  107. package/dist/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module-Bovc57nm.css +60 -0
  108. package/dist/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module.js +5 -0
  109. package/dist/react-ui/blocks/Terminal/panel/terminal-session-tabs.module-QyxHO7cN.css +60 -0
  110. package/dist/react-ui/blocks/Terminal/panel/terminal-session-tabs.module.js +5 -0
  111. package/dist/react-ui/blocks/Terminal/parsing/BadgeFormatter.d.ts +73 -0
  112. package/dist/react-ui/blocks/Terminal/parsing/BadgeFormatter.d.ts.map +1 -0
  113. package/dist/react-ui/blocks/Terminal/parsing/BadgeFormatter.js +136 -0
  114. package/dist/react-ui/blocks/Terminal/parsing/HttpLogParser.d.ts +117 -0
  115. package/dist/react-ui/blocks/Terminal/parsing/HttpLogParser.d.ts.map +1 -0
  116. package/dist/react-ui/blocks/Terminal/parsing/HttpLogParser.js +174 -0
  117. package/dist/react-ui/blocks/Terminal/parsing/LogParser.types.d.ts +221 -0
  118. package/dist/react-ui/blocks/Terminal/parsing/LogParser.types.d.ts.map +1 -0
  119. package/dist/react-ui/blocks/Terminal/parsing/LogParserService.d.ts +184 -0
  120. package/dist/react-ui/blocks/Terminal/parsing/LogParserService.d.ts.map +1 -0
  121. package/dist/react-ui/blocks/Terminal/parsing/LogParserService.js +478 -0
  122. package/dist/react-ui/blocks/Terminal/parsing/MultilineAggregator.d.ts +173 -0
  123. package/dist/react-ui/blocks/Terminal/parsing/MultilineAggregator.d.ts.map +1 -0
  124. package/dist/react-ui/blocks/Terminal/parsing/MultilineAggregator.js +313 -0
  125. package/dist/react-ui/blocks/Terminal/parsing/PersistentLogBuffer.d.ts +181 -0
  126. package/dist/react-ui/blocks/Terminal/parsing/PersistentLogBuffer.d.ts.map +1 -0
  127. package/dist/react-ui/blocks/Terminal/parsing/PersistentLogBuffer.js +221 -0
  128. package/dist/react-ui/blocks/Terminal/parsing/SyntaxHighlighter.d.ts +69 -0
  129. package/dist/react-ui/blocks/Terminal/parsing/SyntaxHighlighter.d.ts.map +1 -0
  130. package/dist/react-ui/blocks/Terminal/parsing/SyntaxHighlighter.js +142 -0
  131. package/dist/react-ui/blocks/Terminal/parsing/TableParser.d.ts +125 -0
  132. package/dist/react-ui/blocks/Terminal/parsing/TableParser.d.ts.map +1 -0
  133. package/dist/react-ui/blocks/Terminal/parsing/TableParser.js +245 -0
  134. package/dist/react-ui/blocks/Terminal/parsing/ansi/AnsiColorMapper.d.ts +165 -0
  135. package/dist/react-ui/blocks/Terminal/parsing/ansi/AnsiColorMapper.d.ts.map +1 -0
  136. package/dist/react-ui/blocks/Terminal/parsing/ansi/AnsiColorMapper.js +225 -0
  137. package/dist/react-ui/blocks/Terminal/parsing/ansi/AnsiParser.d.ts +164 -0
  138. package/dist/react-ui/blocks/Terminal/parsing/ansi/AnsiParser.d.ts.map +1 -0
  139. package/dist/react-ui/blocks/Terminal/parsing/ansi/AnsiParser.js +285 -0
  140. package/dist/react-ui/blocks/Terminal/parsing/ansi/ansi.constants.d.ts +188 -0
  141. package/dist/react-ui/blocks/Terminal/parsing/ansi/ansi.constants.d.ts.map +1 -0
  142. package/dist/react-ui/blocks/Terminal/parsing/ansi/ansi.constants.js +178 -0
  143. package/dist/react-ui/blocks/Terminal/parsing/ansi/index.d.ts +12 -0
  144. package/dist/react-ui/blocks/Terminal/parsing/ansi/index.d.ts.map +1 -0
  145. package/dist/react-ui/blocks/Terminal/parsing/index.d.ts +24 -0
  146. package/dist/react-ui/blocks/Terminal/parsing/index.d.ts.map +1 -0
  147. package/dist/react-ui/blocks/Terminal/parsing/levels/LogLevel.types.d.ts +56 -0
  148. package/dist/react-ui/blocks/Terminal/parsing/levels/LogLevel.types.d.ts.map +1 -0
  149. package/dist/react-ui/blocks/Terminal/parsing/levels/LogLevelDetector.d.ts +140 -0
  150. package/dist/react-ui/blocks/Terminal/parsing/levels/LogLevelDetector.d.ts.map +1 -0
  151. package/dist/react-ui/blocks/Terminal/parsing/levels/LogLevelDetector.js +325 -0
  152. package/dist/react-ui/blocks/Terminal/parsing/levels/index.d.ts +10 -0
  153. package/dist/react-ui/blocks/Terminal/parsing/levels/index.d.ts.map +1 -0
  154. package/dist/react-ui/blocks/index.d.ts +11 -0
  155. package/dist/react-ui/blocks/index.d.ts.map +1 -0
  156. package/dist/react-ui/icons/lucide-animated/activity.js +1 -1
  157. package/dist/react-ui/icons/lucide-animated/bell-electric.js +1 -1
  158. package/dist/react-ui/icons/lucide-animated/bell.js +1 -1
  159. package/dist/react-ui/icons/lucide-animated/bot.js +1 -1
  160. package/dist/react-ui/icons/lucide-animated/box.js +1 -1
  161. package/dist/react-ui/icons/lucide-animated/circle-check.js +1 -1
  162. package/dist/react-ui/icons/lucide-animated/delete.js +1 -1
  163. package/dist/react-ui/icons/lucide-animated/download.js +1 -1
  164. package/dist/react-ui/icons/lucide-animated/home.js +1 -1
  165. package/dist/react-ui/icons/lucide-animated/layout-panel-top.js +1 -1
  166. package/dist/react-ui/icons/lucide-animated/plus.js +1 -1
  167. package/dist/react-ui/icons/lucide-animated/search.js +1 -1
  168. package/dist/react-ui/icons/lucide-animated/settings.js +1 -1
  169. package/dist/react-ui/icons/lucide-animated/trending-down.js +1 -1
  170. package/dist/react-ui/icons/lucide-animated/trending-up.js +1 -1
  171. package/dist/react-ui/icons/lucide-animated/x.js +1 -1
  172. package/dist/react-ui/index.js +4 -1
  173. package/dist/react-ui/lib/icon-wrapper.d.ts +37 -0
  174. package/dist/react-ui/lib/icon-wrapper.d.ts.map +1 -0
  175. package/dist/react-ui/lib/icon-wrapper.js +55 -0
  176. package/dist/react-ui/lib/index.d.ts +1 -0
  177. package/dist/react-ui/lib/index.d.ts.map +1 -1
  178. package/dist/react-ui/lib/index.js +1 -0
  179. package/dist/react-ui/primitives/AutoHeight/index.d.ts +1 -1
  180. package/dist/react-ui/primitives/CountingNumber/index.d.ts +1 -1
  181. package/dist/react-ui/primitives/waapi/SlidingNumber/SlidingNumber.styles.d.ts +1 -1
  182. package/dist/react-ui/primitives/waapi/SlidingText/SlidingText.styles.d.ts +1 -1
  183. package/dist/react-ui/ui/Accordion/Accordion.styles.d.ts +1 -1
  184. package/dist/react-ui/ui/Accordion/Accordion.types.d.ts +1 -1
  185. package/dist/react-ui/ui/AlertDialog/AlertDialog.styles.d.ts +1 -1
  186. package/dist/react-ui/ui/AlertDialog/AlertDialog.types.d.ts +1 -1
  187. package/dist/react-ui/ui/Badge/Badge.styles.d.ts +1 -1
  188. package/dist/react-ui/ui/Badge/Badge.types.d.ts +1 -1
  189. package/dist/react-ui/ui/Button/Button.styles.d.ts +2 -2
  190. package/dist/react-ui/ui/Button/Button.types.d.ts +1 -1
  191. package/dist/react-ui/ui/Card/Card.styles.d.ts +1 -1
  192. package/dist/react-ui/ui/Card/Card.types.d.ts +1 -1
  193. package/dist/react-ui/ui/Checkbox/Checkbox.styles.d.ts +1 -1
  194. package/dist/react-ui/ui/Checkbox/Checkbox.types.d.ts +1 -1
  195. package/dist/react-ui/ui/Combobox/Combobox.styles.d.ts +1 -1
  196. package/dist/react-ui/ui/Combobox/Combobox.types.d.ts +1 -1
  197. package/dist/react-ui/ui/CornerBracket/CornerBracket.styles.d.ts +2 -2
  198. package/dist/react-ui/ui/CornerBracket/CornerBracket.styles.js +1 -1
  199. package/dist/react-ui/ui/CornerBracket/CornerBracket.types.d.ts +1 -1
  200. package/dist/react-ui/ui/DataCard/DataCard.styles.d.ts +1 -1
  201. package/dist/react-ui/ui/DataCard/DataCard.types.d.ts +1 -1
  202. package/dist/react-ui/ui/DataCard/index.d.ts +1 -1
  203. package/dist/react-ui/ui/Dialog/Dialog.styles.d.ts +1 -1
  204. package/dist/react-ui/ui/Dialog/Dialog.types.d.ts +1 -1
  205. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.styles.d.ts +1 -1
  206. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.types.d.ts +1 -1
  207. package/dist/react-ui/ui/Field/Field.styles.d.ts +1 -1
  208. package/dist/react-ui/ui/Field/Field.types.d.ts +1 -1
  209. package/dist/react-ui/ui/Input/Input.styles.d.ts +1 -1
  210. package/dist/react-ui/ui/Input/Input.types.d.ts +1 -1
  211. package/dist/react-ui/ui/InputGroup/InputGroup.styles.d.ts +1 -1
  212. package/dist/react-ui/ui/InputGroup/InputGroup.types.d.ts +1 -1
  213. package/dist/react-ui/ui/Label/Label.styles.d.ts +1 -1
  214. package/dist/react-ui/ui/Label/Label.types.d.ts +1 -1
  215. package/dist/react-ui/ui/Menu/Menu.styles.d.ts +1 -1
  216. package/dist/react-ui/ui/Menu/Menu.types.d.ts +2 -2
  217. package/dist/react-ui/ui/Popover/Popover.styles.d.ts +1 -1
  218. package/dist/react-ui/ui/Popover/Popover.types.d.ts +1 -1
  219. package/dist/react-ui/ui/Progress/Progress.styles.d.ts +1 -1
  220. package/dist/react-ui/ui/Progress/Progress.types.d.ts +2 -2
  221. package/dist/react-ui/ui/Select/Select.styles.d.ts +1 -1
  222. package/dist/react-ui/ui/Select/Select.types.d.ts +1 -1
  223. package/dist/react-ui/ui/Separator/Separator.styles.d.ts +1 -1
  224. package/dist/react-ui/ui/Separator/Separator.types.d.ts +1 -1
  225. package/dist/react-ui/ui/Switch/Switch.styles.d.ts +1 -1
  226. package/dist/react-ui/ui/Switch/Switch.types.d.ts +1 -1
  227. package/dist/react-ui/ui/Tabs/Tabs.styles.d.ts +43 -25
  228. package/dist/react-ui/ui/Tabs/Tabs.styles.d.ts.map +1 -1
  229. package/dist/react-ui/ui/Tabs/Tabs.styles.js +105 -13
  230. package/dist/react-ui/ui/Tabs/Tabs.types.d.ts +9 -6
  231. package/dist/react-ui/ui/Tabs/Tabs.types.d.ts.map +1 -1
  232. package/dist/react-ui/ui/Tabs/index.d.ts +18 -9
  233. package/dist/react-ui/ui/Tabs/index.d.ts.map +1 -1
  234. package/dist/react-ui/ui/Tabs/index.js +99 -27
  235. package/dist/react-ui/ui/TextFlow/TextFlow.styles.d.ts +1 -1
  236. package/dist/react-ui/ui/Textarea/Textarea.styles.d.ts +1 -1
  237. package/dist/react-ui/ui/Textarea/Textarea.types.d.ts +1 -1
  238. package/dist/react-ui/ui/Tooltip/Tooltip.styles.d.ts +1 -1
  239. package/dist/react-ui/ui/Tooltip/Tooltip.types.d.ts +1 -1
  240. package/dist/react-ui/ui/index.d.ts +1 -0
  241. package/dist/react-ui/ui/index.d.ts.map +1 -1
  242. package/dist/react-ui/ui/index.js +2 -0
  243. package/package.json +54 -6
  244. package/src/react-ui/blocks/Terminal/ResttyAdapter.ts +278 -0
  245. package/src/react-ui/blocks/Terminal/Terminal.adapter.ts +97 -0
  246. package/src/react-ui/blocks/Terminal/Terminal.theme.restty.ts +155 -0
  247. package/src/react-ui/blocks/Terminal/Terminal.theme.ts +80 -0
  248. package/src/react-ui/blocks/Terminal/Terminal.types.ts +438 -0
  249. package/src/react-ui/blocks/Terminal/TerminalPanel.tsx +269 -0
  250. package/src/react-ui/blocks/Terminal/TerminalRestty.tsx +326 -0
  251. package/src/react-ui/blocks/Terminal/TerminalXterm.tsx +230 -0
  252. package/src/react-ui/blocks/Terminal/XTermAdapter.ts +163 -0
  253. package/src/react-ui/blocks/Terminal/components/LogLineBadges.tsx +316 -0
  254. package/src/react-ui/blocks/Terminal/components/SpecializedSyntaxHighlighter.tsx +218 -0
  255. package/src/react-ui/blocks/Terminal/components/SyntaxHighlight.tsx +386 -0
  256. package/src/react-ui/blocks/Terminal/components/TerminalLogBadge.tsx +67 -0
  257. package/src/react-ui/blocks/Terminal/components/index.ts +10 -0
  258. package/src/react-ui/blocks/Terminal/hooks/index.ts +22 -0
  259. package/src/react-ui/blocks/Terminal/hooks/useTerminalSettings.ts +229 -0
  260. package/src/react-ui/blocks/Terminal/hooks/useTerminalWebSocket.ts +292 -0
  261. package/src/react-ui/blocks/Terminal/index.ts +103 -0
  262. package/src/react-ui/blocks/Terminal/panel/LogLinesViewer.tsx +330 -0
  263. package/src/react-ui/blocks/Terminal/panel/TerminalDebugPanel.tsx +242 -0
  264. package/src/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.tsx +202 -0
  265. package/src/react-ui/blocks/Terminal/panel/TerminalFilterTabs.tsx +140 -0
  266. package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.tsx +68 -0
  267. package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.ts +85 -0
  268. package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.tsx +383 -0
  269. package/src/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.tsx +439 -0
  270. package/src/react-ui/blocks/Terminal/panel/TerminalLogsPanel.tsx +550 -0
  271. package/src/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.ts +259 -0
  272. package/src/react-ui/blocks/Terminal/panel/TerminalPanelChrome.tsx +237 -0
  273. package/src/react-ui/blocks/Terminal/panel/TerminalPanelChrome.types.ts +76 -0
  274. package/src/react-ui/blocks/Terminal/panel/TerminalPanelFooter.tsx +112 -0
  275. package/src/react-ui/blocks/Terminal/panel/TerminalPanelHeader.tsx +178 -0
  276. package/src/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.tsx +203 -0
  277. package/src/react-ui/blocks/Terminal/panel/TerminalSessionControl.tsx +252 -0
  278. package/src/react-ui/blocks/Terminal/panel/TerminalSessionTabs.tsx +334 -0
  279. package/src/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.tsx +261 -0
  280. package/src/react-ui/blocks/Terminal/panel/TerminalThemeSelector.tsx +248 -0
  281. package/src/react-ui/blocks/Terminal/panel/index.ts +72 -0
  282. package/src/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module.css +59 -0
  283. package/src/react-ui/blocks/Terminal/panel/terminal-session-tabs.module.css +59 -0
  284. package/src/react-ui/blocks/Terminal/parsing/BadgeFormatter.ts +180 -0
  285. package/src/react-ui/blocks/Terminal/parsing/HttpLogParser.ts +248 -0
  286. package/src/react-ui/blocks/Terminal/parsing/LogParser.types.ts +283 -0
  287. package/src/react-ui/blocks/Terminal/parsing/LogParserService.ts +686 -0
  288. package/src/react-ui/blocks/Terminal/parsing/MultilineAggregator.ts +466 -0
  289. package/src/react-ui/blocks/Terminal/parsing/PersistentLogBuffer.ts +343 -0
  290. package/src/react-ui/blocks/Terminal/parsing/SyntaxHighlighter.ts +167 -0
  291. package/src/react-ui/blocks/Terminal/parsing/TableParser.ts +348 -0
  292. package/src/react-ui/blocks/Terminal/parsing/ansi/AnsiColorMapper.ts +251 -0
  293. package/src/react-ui/blocks/Terminal/parsing/ansi/AnsiParser.ts +390 -0
  294. package/src/react-ui/blocks/Terminal/parsing/ansi/ansi.constants.ts +320 -0
  295. package/src/react-ui/blocks/Terminal/parsing/ansi/index.ts +20 -0
  296. package/src/react-ui/blocks/Terminal/parsing/index.ts +69 -0
  297. package/src/react-ui/blocks/Terminal/parsing/levels/LogLevel.types.ts +68 -0
  298. package/src/react-ui/blocks/Terminal/parsing/levels/LogLevelDetector.ts +436 -0
  299. package/src/react-ui/blocks/Terminal/parsing/levels/index.ts +14 -0
  300. package/src/react-ui/blocks/index.ts +11 -0
  301. package/src/react-ui/icons/lucide-animated/activity.tsx +2 -2
  302. package/src/react-ui/icons/lucide-animated/bell-electric.tsx +1 -1
  303. package/src/react-ui/icons/lucide-animated/bell.tsx +2 -2
  304. package/src/react-ui/icons/lucide-animated/bot.tsx +1 -1
  305. package/src/react-ui/icons/lucide-animated/box.tsx +2 -2
  306. package/src/react-ui/icons/lucide-animated/circle-check.tsx +2 -2
  307. package/src/react-ui/icons/lucide-animated/delete.tsx +2 -2
  308. package/src/react-ui/icons/lucide-animated/download.tsx +2 -2
  309. package/src/react-ui/icons/lucide-animated/home.tsx +2 -2
  310. package/src/react-ui/icons/lucide-animated/layout-panel-top.tsx +1 -1
  311. package/src/react-ui/icons/lucide-animated/plus.tsx +1 -1
  312. package/src/react-ui/icons/lucide-animated/search.tsx +1 -1
  313. package/src/react-ui/icons/lucide-animated/settings.tsx +1 -1
  314. package/src/react-ui/icons/lucide-animated/trending-down.tsx +2 -2
  315. package/src/react-ui/icons/lucide-animated/trending-up.tsx +2 -2
  316. package/src/react-ui/icons/lucide-animated/x.tsx +2 -2
  317. package/src/react-ui/lib/icon-wrapper.tsx +70 -0
  318. package/src/react-ui/lib/index.ts +1 -0
  319. package/src/react-ui/ui/CornerBracket/CornerBracket.styles.ts +1 -1
  320. package/src/react-ui/ui/Tabs/Tabs.css +39 -0
  321. package/src/react-ui/ui/Tabs/Tabs.styles.ts +119 -31
  322. package/src/react-ui/ui/Tabs/Tabs.types.ts +8 -3
  323. package/src/react-ui/ui/Tabs/index.tsx +135 -27
  324. package/src/react-ui/ui/index.ts +1 -0
  325. package/dist/index.css +0 -129
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
 
3
- import type { Variants } from "framer-motion";
4
- import { motion, useAnimation } from "framer-motion";
3
+ import type { Variants } from "motion/react";
4
+ import { motion, useAnimation } from "motion/react";
5
5
  import type { HTMLAttributes } from "react";
6
6
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
7
7
 
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
 
3
- import type { Transition, Variants } from "framer-motion";
4
- import { motion, useAnimation } from "framer-motion";
3
+ import type { Transition, Variants } from "motion/react";
4
+ import { motion, useAnimation } from "motion/react";
5
5
  import type { HTMLAttributes } from "react";
6
6
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
7
7
 
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { motion, useAnimation } from "framer-motion";
3
+ import { motion, useAnimation } from "motion/react";
4
4
  import type { HTMLAttributes } from "react";
5
5
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
6
6
 
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { motion, useAnimation } from "framer-motion";
3
+ import { motion, useAnimation } from "motion/react";
4
4
  import type { HTMLAttributes } from "react";
5
5
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
6
6
 
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { motion, useAnimation } from "framer-motion";
3
+ import { motion, useAnimation } from "motion/react";
4
4
  import type { HTMLAttributes } from "react";
5
5
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
6
6
 
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
 
3
- import { motion, useAnimation } from "framer-motion";
3
+ import { motion, useAnimation } from "motion/react";
4
4
  import type { HTMLAttributes } from "react";
5
5
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
6
6
 
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
 
3
- import type { Variants } from "framer-motion";
4
- import { motion, useAnimation } from "framer-motion";
3
+ import type { Variants } from "motion/react";
4
+ import { motion, useAnimation } from "motion/react";
5
5
  import type { HTMLAttributes } from "react";
6
6
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
7
7
 
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
 
3
- import type { Variants } from "framer-motion";
4
- import { motion, useAnimation } from "framer-motion";
3
+ import type { Variants } from "motion/react";
4
+ import { motion, useAnimation } from "motion/react";
5
5
  import type { HTMLAttributes } from "react";
6
6
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
7
7
 
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
 
3
- import type { Variants } from "framer-motion";
4
- import { motion, useAnimation } from "framer-motion";
3
+ import type { Variants } from "motion/react";
4
+ import { motion, useAnimation } from "motion/react";
5
5
  import type { HTMLAttributes } from "react";
6
6
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
7
7
 
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Icon Wrapper Component.
3
+ *
4
+ * Ensures consistent sizing across different icon types.
5
+ * Some icons use explicit size props, others use CSS classes.
6
+ *
7
+ * @module @mks2508/mks-ui/react/lib/icon-wrapper
8
+ */
9
+
10
+ 'use client';
11
+
12
+ import type { HTMLAttributes } from 'react';
13
+
14
+ /**
15
+ * Icons that use explicit size prop instead of CSS classes.
16
+ * These icons have SVG elements with width/height attributes.
17
+ */
18
+ const SIZEABLE_ICONS = new Set([
19
+ 'DownloadIcon',
20
+ 'EyeIcon',
21
+ 'EyeOffIcon',
22
+ 'SearchIcon',
23
+ 'XIcon',
24
+ 'DeleteIcon',
25
+ 'TerminalIcon',
26
+ 'PlusIcon',
27
+ ]);
28
+
29
+ /**
30
+ * Icon wrapper props interface.
31
+ */
32
+ export interface IIconWrapperProps extends HTMLAttributes<HTMLDivElement> {
33
+ /**
34
+ * The icon component to render.
35
+ * Accepts ComponentType, ForwardRefExoticComponent, or any renderable component.
36
+ * Broad type needed for React 19 compatibility across duplicate @types/react copies.
37
+ */
38
+ icon: React.ComponentType<any> | React.ExoticComponent<any>;
39
+ /** Size in pixels for icons that use size prop (default: 16) */
40
+ size?: number;
41
+ }
42
+
43
+ /**
44
+ * Icon wrapper that ensures consistent sizing across different icon types.
45
+ *
46
+ * Some icons from the UI package use explicit size props (width/height on SVG),
47
+ * while others use CSS classes (w-4 h-4). This wrapper detects the icon type
48
+ * and applies the appropriate sizing method.
49
+ *
50
+ * @example
51
+ * ```tsx
52
+ * <IconWrapper icon={DownloadIcon} size={16} className="text-primary" />
53
+ * <IconWrapper icon={KeyIcon} className="text-muted-foreground" />
54
+ * ```
55
+ */
56
+ export function IconWrapper({
57
+ icon: Icon,
58
+ className,
59
+ size = 16,
60
+ ...props
61
+ }: IIconWrapperProps) {
62
+ const iconName = (Icon as any).displayName || Icon.name || '';
63
+ const useSizeProp = SIZEABLE_ICONS.has(iconName);
64
+
65
+ if (useSizeProp) {
66
+ return <Icon size={size} className={className} {...props} />;
67
+ }
68
+
69
+ return <Icon className={className} {...props} />;
70
+ }
@@ -6,3 +6,4 @@
6
6
 
7
7
  export { cn } from './utils';
8
8
  export { getStrictContext } from './get-strict-context';
9
+ export { IconWrapper, type IIconWrapperProps } from './icon-wrapper';
@@ -31,7 +31,7 @@ const BRACKET_PATHS = {
31
31
  tl: 'M 0 20 L 0 5 A 5 5 0 0 1 5 0 L 20 0',
32
32
  tr: 'M 0 0 L 15 0 A 5 5 0 0 1 20 5 L 20 20',
33
33
  bl: 'M 0 0 L 0 15 A 5 5 0 0 0 5 20 L 20 20',
34
- br: 'M 20 0 L 5 0 A 5 5 0 0 0 0 5 L 0 20',
34
+ br: 'M 20 0 L 20 15 A 5 5 0 0 1 15 20 L 0 20',
35
35
  } as const;
36
36
 
37
37
  export { cornerBracketStyles, bracketVariants, BRACKET_PATHS };
@@ -0,0 +1,39 @@
1
+ /**
2
+ * CSS Anchor Positioning for the Tabs sliding indicator.
3
+ *
4
+ * The selected tab declares itself as anchor via `anchor-name: --tabs-active`.
5
+ * The indicator element positions itself against that anchor, and CSS
6
+ * transitions handle the smooth sliding animation (WAAPI-compatible).
7
+ *
8
+ * Uses `anchor-scope` on the list to support multiple Tabs instances
9
+ * on the same page without anchor name collisions.
10
+ */
11
+
12
+ /* Scope anchors to each TabsList instance */
13
+ [data-slot="tabs-list"] {
14
+ anchor-scope: --tabs-active;
15
+ }
16
+
17
+ /* Selected tab becomes the anchor */
18
+ [data-slot="tabs-tab"][data-selected] {
19
+ anchor-name: --tabs-active;
20
+ }
21
+
22
+ /* Indicator follows the selected tab via CSS Anchor */
23
+ [data-slot="tabs-indicator"] {
24
+ position-anchor: --tabs-active;
25
+ left: anchor(left);
26
+ right: anchor(right);
27
+
28
+ /* Smooth sliding via CSS transitions (WAAPI-compatible) */
29
+ transition-property: top, left, right, bottom, width, height, inset;
30
+ transition-duration: 200ms;
31
+ transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
32
+ }
33
+
34
+ /* Reduce motion for accessibility */
35
+ @media (prefers-reduced-motion: reduce) {
36
+ [data-slot="tabs-indicator"] {
37
+ transition-duration: 0ms;
38
+ }
39
+ }
@@ -1,31 +1,21 @@
1
1
  /**
2
- * Style slots and defaults for the Tabs component.
2
+ * Style slots, CVA variants, and defaults for the Tabs component.
3
3
  *
4
- * Each slot maps to a visual region of the Tabs. Consumers override
5
- * individual slots via the `slots` prop without touching internals.
4
+ * Provides sensible out-of-the-box styling using semantic theme tokens
5
+ * (bg-muted, text-foreground, etc.) while remaining fully overridable
6
+ * via the `slots` prop and CVA variant/size system.
6
7
  *
7
- * @module @mks2508/mks-ui/react/ui/Tabs/Tabs.styles
8
+ * The sliding indicator uses CSS Anchor Positioning API for
9
+ * zero-JS position tracking with WAAPI-driven transitions.
8
10
  *
9
- * @example
10
- * ```tsx
11
- * import { tabsStyles } from './Tabs.styles';
12
- * // tabsStyles.root => default root classes
13
- * ```
11
+ * @module @mks2508/mks-ui/react/ui/Tabs/Tabs.styles
14
12
  */
15
13
 
14
+ import { cva } from 'class-variance-authority';
16
15
  import type { StyleSlots } from '@/core/types';
17
16
 
18
17
  /**
19
18
  * Union of all visual regions (slots) in the Tabs component tree.
20
- *
21
- * @example
22
- * ```typescript
23
- * const overrides: SlotOverrides<TabsSlot> = {
24
- * root: 'w-full',
25
- * list: 'flex gap-1 border-b border-white/10',
26
- * tab: 'px-3 py-1.5 text-sm',
27
- * };
28
- * ```
29
19
  */
30
20
  export type TabsSlot =
31
21
  | 'root'
@@ -34,27 +24,125 @@ export type TabsSlot =
34
24
  | 'panel'
35
25
  | 'panels'
36
26
  | 'highlight'
37
- | 'highlightItem';
27
+ | 'highlightItem'
28
+ | 'indicator';
38
29
 
39
30
  /**
40
31
  * Default style map for every Tabs slot.
41
- *
42
- * Base classes are intentionally minimal so consumers can fully
43
- * control the visual appearance through `slots` overrides.
44
- * No colors are hardcoded -- all visuals come from consumer styles.
45
- *
46
- * @example
47
- * ```typescript
48
- * import { tabsStyles } from './Tabs.styles';
49
- * cn(tabsStyles.list, slots?.list, className);
50
- * ```
32
+ * Provides complete styling that works without any overrides.
51
33
  */
52
34
  export const tabsStyles: StyleSlots<TabsSlot> = {
53
35
  root: '',
54
- list: '',
55
- tab: '',
36
+ list: 'inline-flex items-center relative',
37
+ tab: [
38
+ 'inline-flex items-center justify-center gap-2 whitespace-nowrap',
39
+ 'font-medium cursor-pointer select-none relative z-[1]',
40
+ 'text-muted-foreground transition-colors duration-150',
41
+ 'hover:text-foreground',
42
+ 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
43
+ 'disabled:pointer-events-none disabled:opacity-50',
44
+ 'data-[active]:text-foreground',
45
+ '[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:size-4',
46
+ ].join(' '),
56
47
  panel: '',
57
48
  panels: '',
58
49
  highlight: '',
59
50
  highlightItem: '',
51
+ indicator: 'absolute pointer-events-none z-0',
60
52
  };
53
+
54
+ // ---------------------------------------------------------------------------
55
+ // TabsList CVA
56
+ // ---------------------------------------------------------------------------
57
+
58
+ /**
59
+ * CVA variants for the TabsList container.
60
+ *
61
+ * @example
62
+ * ```tsx
63
+ * <TabsList variant="underline" size="lg">
64
+ * <TabsTab value="a">Tab A</TabsTab>
65
+ * </TabsList>
66
+ * ```
67
+ */
68
+ export const tabsListVariants = cva(tabsStyles.list, {
69
+ variants: {
70
+ variant: {
71
+ default: 'gap-1 rounded-lg bg-muted p-1',
72
+ outline: 'gap-1 rounded-lg border border-border p-1',
73
+ ghost: 'gap-2 p-0',
74
+ underline: 'gap-0 rounded-none border-b border-border p-0',
75
+ pill: 'gap-1 rounded-full bg-muted p-1',
76
+ },
77
+ size: {
78
+ default: 'h-10',
79
+ sm: 'h-8',
80
+ lg: 'h-12',
81
+ },
82
+ },
83
+ defaultVariants: {
84
+ variant: 'default',
85
+ size: 'default',
86
+ },
87
+ });
88
+
89
+ // ---------------------------------------------------------------------------
90
+ // TabsTab CVA
91
+ // ---------------------------------------------------------------------------
92
+
93
+ /**
94
+ * CVA variants for individual tab triggers.
95
+ *
96
+ * @example
97
+ * ```tsx
98
+ * <TabsTab value="general" variant="underline" size="sm">
99
+ * General
100
+ * </TabsTab>
101
+ * ```
102
+ */
103
+ export const tabsTabVariants = cva(tabsStyles.tab, {
104
+ variants: {
105
+ variant: {
106
+ default: 'rounded-md',
107
+ outline: 'rounded-md',
108
+ ghost: 'rounded-md hover:bg-accent data-[active]:text-accent-foreground',
109
+ underline: 'rounded-none border-b-2 border-transparent data-[active]:border-primary',
110
+ pill: 'rounded-full',
111
+ },
112
+ size: {
113
+ default: 'px-3 py-1.5 text-sm',
114
+ sm: 'px-2.5 py-1 text-xs',
115
+ lg: 'px-4 py-2 text-base',
116
+ },
117
+ },
118
+ defaultVariants: {
119
+ variant: 'default',
120
+ size: 'default',
121
+ },
122
+ });
123
+
124
+ // ---------------------------------------------------------------------------
125
+ // Indicator CVA
126
+ // ---------------------------------------------------------------------------
127
+
128
+ /**
129
+ * CVA variants for the sliding indicator.
130
+ *
131
+ * The indicator is positioned via CSS Anchor Positioning API
132
+ * (anchor-name on the selected tab, position-anchor on the indicator)
133
+ * and animated via WAAPI transitions in CSS.
134
+ */
135
+ export const tabsIndicatorVariants = cva(tabsStyles.indicator, {
136
+ variants: {
137
+ variant: {
138
+ default: 'bg-background shadow-sm rounded-md inset-y-1',
139
+ outline: 'bg-background shadow-sm border border-border/50 rounded-md inset-y-1',
140
+ ghost: 'bg-accent rounded-md inset-y-0',
141
+ underline: 'bg-primary h-0.5 rounded-full !inset-y-auto bottom-0',
142
+ pill: 'bg-background shadow-sm rounded-full inset-y-1',
143
+ },
144
+ },
145
+ defaultVariants: {
146
+ variant: 'default',
147
+ },
148
+ });
@@ -11,10 +11,11 @@ import type * as React from 'react';
11
11
  import type { Tabs as TabsPrimitive } from '@base-ui/react/tabs';
12
12
  import type { HTMLMotionProps, Transition } from 'motion/react';
13
13
 
14
+ import type { VariantProps } from 'class-variance-authority';
14
15
  import type { IBaseConfig, SlotOverrides } from '@/core/types';
15
16
  import type { IHighlightProps, IHighlightItemProps } from '@/react-ui/primitives/Highlight';
16
17
  import type { IAutoHeightProps } from '@/react-ui/primitives/AutoHeight';
17
- import type { TabsSlot } from './Tabs.styles';
18
+ import type { TabsSlot, tabsListVariants, tabsTabVariants } from './Tabs.styles';
18
19
 
19
20
  // ---------------------------------------------------------------------------
20
21
  // Config
@@ -137,9 +138,12 @@ export interface ITabsHighlightItemProps extends IHighlightItemProps {
137
138
  * ```
138
139
  */
139
140
  export interface ITabsListProps
140
- extends React.ComponentProps<typeof TabsPrimitive.List> {
141
+ extends React.ComponentProps<typeof TabsPrimitive.List>,
142
+ VariantProps<typeof tabsListVariants> {
141
143
  /** Partial class overrides per slot. */
142
144
  slots?: SlotOverrides<TabsSlot>;
145
+ /** Show the CSS Anchor-based sliding indicator. Defaults to true for default/outline/pill variants. */
146
+ indicator?: boolean;
143
147
  }
144
148
 
145
149
  // ---------------------------------------------------------------------------
@@ -157,7 +161,8 @@ export interface ITabsListProps
157
161
  * ```
158
162
  */
159
163
  export interface ITabsTabProps
160
- extends React.ComponentProps<typeof TabsPrimitive.Tab> {
164
+ extends React.ComponentProps<typeof TabsPrimitive.Tab>,
165
+ VariantProps<typeof tabsTabVariants> {
161
166
  /** Partial class overrides per slot. */
162
167
  slots?: SlotOverrides<TabsSlot>;
163
168
  }