@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
@@ -0,0 +1,325 @@
1
+ //#region src/react-ui/blocks/Terminal/parsing/levels/LogLevelDetector.ts
2
+ /**
3
+ * Default log level patterns.
4
+ *
5
+ * Predefined patterns for common log formats and frameworks.
6
+ * Includes support for:
7
+ * - better-logger format (ℹ️ INFO)
8
+ * - Supervisord format (INFO, CRIT)
9
+ * - Next.js symbols (▲ ✓)
10
+ * - ContainerLogs prefix
11
+ */
12
+ const DEFAULT_PATTERNS = {
13
+ info: [
14
+ /ℹ️\s+INFO/i,
15
+ /ℹ️|🔵|💙|📖|📝/i,
16
+ /▲|✓|ℹ/,
17
+ /\[INFO\]|\(INFO\)|<INFO>|{INFO}/i,
18
+ /\bINFO(?:RMATION)?\b/i,
19
+ /\binfo\b/i,
20
+ /^\s*(?:INFO|Information):\s*/i,
21
+ /\[ContainerLogs\]/i,
22
+ /Ready in|Starting|Local:/i
23
+ ],
24
+ warn: [
25
+ /⚠️\s+WARN/i,
26
+ /⚠️|🟡|⚡|🔶/i,
27
+ /⚡|⚠/,
28
+ /\[WARN(?:ING)?\]|\(WARN(?:ING)?\)|<WARN(?:ING)?>|{WARN(?:ING)?}/i,
29
+ /\bWARN(?:ING)?\b/i,
30
+ /\bwarn\b/i,
31
+ /^\s*(?:WARN|WARNING):\s*/i,
32
+ /deprecated|warning/i
33
+ ],
34
+ error: [
35
+ /❌\s+ERROR/i,
36
+ /❌|🔴|❗|🚨|⛔|💀/i,
37
+ /✗|✖/,
38
+ /\[ERROR\]|\(ERROR\)|<ERROR>|{ERROR}/i,
39
+ /\bERROR\b/i,
40
+ /\berr(?:or)?\b/i,
41
+ /^\s*ERROR:\s*/i,
42
+ /failed|failure|exception|panic/i
43
+ ],
44
+ debug: [
45
+ /🐛\s+DEBUG/i,
46
+ /🐛|🔍|🔬|⚙️/i,
47
+ /\[DEBUG\]|\(DEBUG\)|<DEBUG>|{DEBUG}/i,
48
+ /\bDEBUG\b/i,
49
+ /\bdebug\b/i,
50
+ /^\s*DEBUG:\s*/i
51
+ ],
52
+ trace: [
53
+ /\[TRACE\]|\(TRACE\)|<TRACE>|{TRACE}/i,
54
+ /\bTRACE\b/i,
55
+ /\btrace\b/i,
56
+ /^\s*TRACE:\s*/i
57
+ ],
58
+ fatal: [
59
+ /🚨\s+CRITICAL/i,
60
+ /💀|🔥|☠️|⚰️|🚨/i,
61
+ /\[FATAL\]|\(FATAL\)|<FATAL>|{FATAL}/i,
62
+ /\[CRITICAL\]|\(CRITICAL\)|<CRITICAL>|{CRITICAL}/i,
63
+ /\bFATAL\b/i,
64
+ /\bCRITICAL\b/i,
65
+ /\bCRIT\b/i,
66
+ /^\s*(?:FATAL|CRITICAL):\s*/i,
67
+ /fatal|critical|emergency/i
68
+ ],
69
+ unknown: []
70
+ };
71
+ /**
72
+ * Log level detector class.
73
+ *
74
+ * Detects log levels from text using pattern matching with
75
+ * confidence scoring. Supports custom patterns and configurable
76
+ * detection strategies.
77
+ *
78
+ * @example
79
+ * ```ts
80
+ * const detector = new LogLevelDetector();
81
+ * const result = detector.detect('21:35:28.944 ℹ️ INFO ⦗COMPONENT⦘ Message');
82
+ * // { level: 'info', confidence: 0.9, matched: 'INFO', position: 12 }
83
+ * ```
84
+ */
85
+ var LogLevelDetector = class LogLevelDetector {
86
+ /** Combined patterns from defaults and custom additions */
87
+ patterns;
88
+ /** Detection options */
89
+ options;
90
+ /**
91
+ * Create a new log level detector.
92
+ *
93
+ * @param options - Detection options
94
+ */
95
+ constructor(options = {}) {
96
+ this.options = {
97
+ custom_patterns: [],
98
+ enable_emoji: true,
99
+ enable_brackets: true,
100
+ enable_words: true,
101
+ min_confidence: .5,
102
+ ...options
103
+ };
104
+ this.patterns = /* @__PURE__ */ new Map();
105
+ for (const [level, regexes] of Object.entries(DEFAULT_PATTERNS)) {
106
+ const patterns = regexes.map((regex) => ({
107
+ regex,
108
+ level,
109
+ confidence: .8
110
+ }));
111
+ this.patterns.set(level, patterns);
112
+ }
113
+ for (const pattern of this.options.custom_patterns ?? []) this.addPattern(pattern);
114
+ }
115
+ /**
116
+ * Detect log level from text string.
117
+ *
118
+ * Scans text for log level patterns and returns the detection
119
+ * with highest confidence score.
120
+ *
121
+ * @param text - Text to analyze
122
+ * @returns Detection result or level 'unknown' with low confidence
123
+ *
124
+ * @example
125
+ * ```ts
126
+ * const result = detector.detect('[INFO] Server started');
127
+ * // { level: 'info', confidence: 0.9, matched: '[INFO]', position: 0 }
128
+ * ```
129
+ */
130
+ detect(text) {
131
+ let bestMatch = {
132
+ level: "unknown",
133
+ confidence: 0,
134
+ matched: "",
135
+ position: 0
136
+ };
137
+ for (const [level, patterns] of this.patterns.entries()) for (const pattern of patterns) {
138
+ const match = text.match(pattern.regex);
139
+ if (match) {
140
+ const position = match.index ?? 0;
141
+ const matched = match[0] ?? match[1] ?? "";
142
+ let confidence = pattern.confidence ?? .8;
143
+ if (matched.length <= 5 && matched === matched.toUpperCase()) confidence = Math.min(1, confidence + .1);
144
+ const positionBoost = Math.max(0, 1 - position / 100);
145
+ confidence *= positionBoost;
146
+ if (confidence > bestMatch.confidence) bestMatch = {
147
+ level,
148
+ confidence,
149
+ matched,
150
+ position
151
+ };
152
+ }
153
+ }
154
+ return bestMatch;
155
+ }
156
+ /**
157
+ * Detect log level with default fallback.
158
+ *
159
+ * Returns 'info' as default level instead of 'unknown' for
160
+ * logs without a clear level indicator.
161
+ *
162
+ * @param text - Text to analyze
163
+ * @returns Detected level (defaults to 'info' if unknown)
164
+ */
165
+ detectOrDefault(text) {
166
+ const result = this.detect(text);
167
+ return result.confidence >= this.options.min_confidence ? result.level : "info";
168
+ }
169
+ /**
170
+ * Add a custom pattern for a log level.
171
+ *
172
+ * @param pattern - Pattern to add
173
+ *
174
+ * @example
175
+ * ```ts
176
+ * detector.addPattern({
177
+ * regex: /\[CUSTOM\]/i,
178
+ * level: 'info',
179
+ * confidence: 0.9
180
+ * });
181
+ * ```
182
+ */
183
+ addPattern(pattern) {
184
+ const existing = this.patterns.get(pattern.level) ?? [];
185
+ existing.push(pattern);
186
+ this.patterns.set(pattern.level, existing);
187
+ }
188
+ /**
189
+ * Remove pattern for a level.
190
+ *
191
+ * Removes all patterns matching the given regex for the specified
192
+ * log level.
193
+ *
194
+ * @param level - Log level
195
+ * @param regex - Regex pattern to remove
196
+ * @returns true if pattern was found and removed
197
+ */
198
+ removePattern(level, regex) {
199
+ const existing = this.patterns.get(level);
200
+ if (!existing) return false;
201
+ const filtered = existing.filter((p) => p.regex !== regex);
202
+ if (filtered.length < existing.length) {
203
+ this.patterns.set(level, filtered);
204
+ return true;
205
+ }
206
+ return false;
207
+ }
208
+ /**
209
+ * Get all patterns for a log level.
210
+ *
211
+ * @param level - Log level
212
+ * @returns Array of patterns for the level
213
+ */
214
+ getPatterns(level) {
215
+ return this.patterns.get(level) ?? [];
216
+ }
217
+ /**
218
+ * Clear all custom patterns.
219
+ *
220
+ * Removes all custom patterns and resets to defaults.
221
+ */
222
+ clearCustomPatterns() {
223
+ this.patterns.clear();
224
+ for (const [level, regexes] of Object.entries(DEFAULT_PATTERNS)) {
225
+ const patterns = regexes.map((regex) => ({
226
+ regex,
227
+ level,
228
+ confidence: .8
229
+ }));
230
+ this.patterns.set(level, patterns);
231
+ }
232
+ }
233
+ /**
234
+ * Detect log level from multiple lines and return consensus.
235
+ *
236
+ * Useful for determining the overall level of a multiline
237
+ * log entry or buffer.
238
+ *
239
+ * @param lines - Array of text lines
240
+ * @returns Consensus level with aggregated confidence
241
+ */
242
+ detectFromLines(lines) {
243
+ if (lines.length === 0) return {
244
+ level: "unknown",
245
+ confidence: 0,
246
+ matched: "",
247
+ position: 0
248
+ };
249
+ const votes = /* @__PURE__ */ new Map();
250
+ let bestMatch = {
251
+ level: "unknown",
252
+ confidence: 0,
253
+ matched: "",
254
+ position: 0
255
+ };
256
+ for (const line of lines) {
257
+ const result = this.detect(line);
258
+ if (result.confidence >= this.options.min_confidence) {
259
+ votes.set(result.level, (votes.get(result.level) ?? 0) + 1);
260
+ if (result.confidence > bestMatch.confidence) bestMatch = result;
261
+ }
262
+ }
263
+ if (votes.size === 0) return {
264
+ level: "info",
265
+ confidence: .3,
266
+ matched: "",
267
+ position: 0
268
+ };
269
+ let maxVotes = 0;
270
+ let consensusLevel = "info";
271
+ for (const [level, count] of votes.entries()) if (count > maxVotes) {
272
+ maxVotes = count;
273
+ consensusLevel = level;
274
+ }
275
+ return {
276
+ level: consensusLevel,
277
+ confidence: Math.min(1, bestMatch.confidence + .1),
278
+ matched: bestMatch.matched,
279
+ position: bestMatch.position
280
+ };
281
+ }
282
+ /**
283
+ * Check if text contains a specific log level.
284
+ *
285
+ * @param text - Text to check
286
+ * @param level - Log level to look for
287
+ * @returns true if level is detected with minimum confidence
288
+ */
289
+ hasLevel(text, level) {
290
+ const result = this.detect(text);
291
+ return result.level === level && result.confidence >= this.options.min_confidence;
292
+ }
293
+ /**
294
+ * Get severity score for a log level.
295
+ *
296
+ * Returns numeric severity (0-6) for comparison and filtering.
297
+ *
298
+ * @param level - Log level
299
+ * @returns Severity score (0=trace, 6=fatal)
300
+ */
301
+ static getSeverity(level) {
302
+ return {
303
+ trace: 0,
304
+ debug: 1,
305
+ info: 2,
306
+ warn: 3,
307
+ error: 4,
308
+ fatal: 5,
309
+ unknown: 2
310
+ }[level] ?? 2;
311
+ }
312
+ /**
313
+ * Compare two log levels by severity.
314
+ *
315
+ * @param level1 - First log level
316
+ * @param level2 - Second log level
317
+ * @returns Negative if level1 < level2, positive if level1 > level2, 0 if equal
318
+ */
319
+ static compareSeverity(level1, level2) {
320
+ return LogLevelDetector.getSeverity(level1) - LogLevelDetector.getSeverity(level2);
321
+ }
322
+ };
323
+
324
+ //#endregion
325
+ export { LogLevelDetector };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Log level detection module barrel export.
3
+ *
4
+ * Exports log level pattern matching utilities.
5
+ *
6
+ * @module components/devenv/terminal/parsing/levels
7
+ */
8
+ export { LogLevelDetector } from './LogLevelDetector';
9
+ export type { ILogLevelDetection, ILogLevelPattern, ILogLevelDetectorOptions, } from './LogLevel.types';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/react-ui/blocks/Terminal/parsing/levels/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Blocks barrel export.
3
+ *
4
+ * Blocks are high-level, ready-to-use components with full functionality,
5
+ * similar to Shadcn blocks. They compose primitives, UI components, and hooks
6
+ * into complete features.
7
+ *
8
+ * @module @mks2508/mks-ui/react/blocks
9
+ */
10
+ export * from './Terminal';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react-ui/blocks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,YAAY,CAAC"}
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/activity.tsx
9
9
  const VARIANTS = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/bell-electric.tsx
9
9
  const BellElectricIcon = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/bell.tsx
9
9
  const SVG_VARIANTS = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/bot.tsx
9
9
  const BotIcon = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/box.tsx
9
9
  const PATH_VARIANTS = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/circle-check.tsx
9
9
  const PATH_VARIANTS = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/delete.tsx
9
9
  const LID_VARIANTS = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/download.tsx
9
9
  const ARROW_VARIANTS = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/home.tsx
9
9
  const DEFAULT_TRANSITION = {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/layout-panel-top.tsx
9
9
  const LayoutPanelTopIcon = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/plus.tsx
9
9
  const PlusIcon = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/search.tsx
9
9
  const SearchIcon = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/settings.tsx
9
9
  const SettingsIcon = forwardRef(({ onMouseEnter, onMouseLeave, className, size = 28, ...props }, ref) => {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/trending-down.tsx
9
9
  const SVG_VARIANTS = { animate: {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/trending-up.tsx
9
9
  const SVG_VARIANTS = { animate: {
@@ -2,8 +2,8 @@
2
2
 
3
3
  import { cn } from "../../lib/utils.js";
4
4
  import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
5
+ import { motion, useAnimation } from "motion/react";
5
6
  import { jsx, jsxs } from "react/jsx-runtime";
6
- import { motion, useAnimation } from "framer-motion";
7
7
 
8
8
  //#region src/react-ui/icons/lucide-animated/x.tsx
9
9
  const PATH_VARIANTS = {
@@ -41,6 +41,7 @@ import { progressStyles } from "./ui/Progress/Progress.styles.js";
41
41
  import { Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, useProgress } from "./ui/Progress/index.js";
42
42
  import { switchStyles } from "./ui/Switch/Switch.styles.js";
43
43
  import { Switch, SwitchIcon, SwitchThumb, useSwitch } from "./ui/Switch/index.js";
44
+ import { tabsIndicatorVariants, tabsListVariants, tabsTabVariants } from "./ui/Tabs/Tabs.styles.js";
44
45
  import { Tabs, TabsHighlight, TabsHighlightItem, TabsList, TabsPanel, TabsPanels, TabsTab } from "./ui/Tabs/index.js";
45
46
  import { tooltipStyles } from "./ui/Tooltip/Tooltip.styles.js";
46
47
  import { Tooltip, TooltipArrow, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipProvider, TooltipTrigger, useTooltip } from "./ui/Tooltip/index.js";
@@ -51,6 +52,7 @@ import { Button } from "./ui/Button/index.js";
51
52
  import { cardVariants } from "./ui/Card/Card.styles.js";
52
53
  import { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "./ui/Card/index.js";
53
54
  import { Input } from "./ui/Input/index.js";
55
+ import { Textarea } from "./ui/Textarea/index.js";
54
56
  import { inputGroupAddonVariants, inputGroupButtonVariants } from "./ui/InputGroup/InputGroup.styles.js";
55
57
  import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea } from "./ui/InputGroup/index.js";
56
58
  import { Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, useComboboxAnchor } from "./ui/Combobox/index.js";
@@ -103,6 +105,7 @@ import { Type } from "./icons/lucide-animated/type.js";
103
105
  import { Upload } from "./icons/lucide-animated/upload.js";
104
106
  import { XIcon } from "./icons/lucide-animated/x.js";
105
107
  import { HugeIcons } from "./icons/index.js";
108
+ import { IconWrapper } from "./lib/icon-wrapper.js";
106
109
  import "./lib/index.js";
107
110
 
108
- export { ANIMATION_CONFIGS, ANIMATION_DEFAULTS, Accordion, AccordionHeader, AccordionItem, AccordionPanel, AccordionStyles, AccordionTrigger, ActivityIcon, AlertDialog, AlertDialogBackdrop, AlertDialogClose, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPopup, AlertDialogPortal, AlertDialogStyles, AlertDialogTitle, AlertDialogTrigger, ArrowDownToLineIcon, ArrowUpIcon, AutoHeight, Badge, BellElectricIcon, BellIcon, BotIcon, BoxIcon, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Check, Checkbox, CheckboxIndicator, CircleCheckIcon, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, CornerBracket, CountingNumber, DataCard, DataCardActions, DataCardBracket, DataCardLabel, DataCardToggle, DataCardValue, DeleteIcon, Dialog, DialogBackdrop, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EASINGS, EFFECTS, Edit2, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, Globe, Highlight, HighlightItem, HomeIcon, HugeIcons, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Label, Layers, LayoutPanelTopIcon, ListIcon, Menu, MenuArrow, MenuCheckboxItem, MenuCheckboxItemIndicator, MenuGroup, MenuGroupLabel, MenuHighlight, MenuHighlightItem, MenuItem, MenuPopup, MenuPortal, MenuPositioner, MenuRadioGroup, MenuRadioItem, MenuRadioItemIndicator, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, Morph, MorphingPopover, MorphingPopoverWithTarget, PRESETS, Package, Palette, PlusIcon, Popover, PopoverArrow, PopoverBackdrop, PopoverClose, PopoverDescription, PopoverPopup, PopoverPortal, PopoverPositioner, PopoverTitle, PopoverTrigger, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, RESPONSIVE_CONFIGS, RefreshCw, ReorderRoot as Reorder, Rocket, Save, SearchIcon, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SettingsIcon, SlidingNumber, SlidingText, Slot, Switch, SwitchIcon, SwitchThumb, TIMING, TRANSFORMS, Tabs, TabsHighlight, TabsHighlightItem, TabsList, TabsPanel, TabsPanels, TabsTab, TerminalIcon, TextFlow, Tooltip, TooltipArrow, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipProvider, TooltipTrigger, Trash2, TrendingDownIcon, TrendingUpIcon, Type, Upload, XIcon, accordionVariants, badgeVariants, bracketVariants, buttonStateStyles, buttonVariants, calculateSeparatorCoordination, cardVariants, checkboxStyles, cn, dataCardStyles, dataCardVariants, dialogStyles, fieldVariants, getResponsiveDuration, getResponsiveStagger, getStrictContext, inputGroupAddonVariants, inputGroupButtonVariants, popoverStyles, progressStyles, shouldShowSeparator, switchStyles, tooltipStyles, useAccordionItem, useAlertDialog, useAnimationOrchestrator, useAutoHeight, useCSSGridMorph, useCheckbox, useComboboxAnchor, useControlledState, useDataCard, useDataState, useDialog, useElementRegistry, useFLIPAnimation, useFLIPClipPath, useHighlight, useIsInView, useListFormat, useMenu, useMenuActiveValue, useMorph, useMorphContext, usePopover, usePositionCapture, useProgress, useReorder, useReorderPresence, useSwitch, useTooltip, useViewTransitions };
111
+ export { ANIMATION_CONFIGS, ANIMATION_DEFAULTS, Accordion, AccordionHeader, AccordionItem, AccordionPanel, AccordionStyles, AccordionTrigger, ActivityIcon, AlertDialog, AlertDialogBackdrop, AlertDialogClose, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPopup, AlertDialogPortal, AlertDialogStyles, AlertDialogTitle, AlertDialogTrigger, ArrowDownToLineIcon, ArrowUpIcon, AutoHeight, Badge, BellElectricIcon, BellIcon, BotIcon, BoxIcon, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Check, Checkbox, CheckboxIndicator, CircleCheckIcon, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, CornerBracket, CountingNumber, DataCard, DataCardActions, DataCardBracket, DataCardLabel, DataCardToggle, DataCardValue, DeleteIcon, Dialog, DialogBackdrop, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, EASINGS, EFFECTS, Edit2, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, Globe, Highlight, HighlightItem, HomeIcon, HugeIcons, IconWrapper, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Label, Layers, LayoutPanelTopIcon, ListIcon, Menu, MenuArrow, MenuCheckboxItem, MenuCheckboxItemIndicator, MenuGroup, MenuGroupLabel, MenuHighlight, MenuHighlightItem, MenuItem, MenuPopup, MenuPortal, MenuPositioner, MenuRadioGroup, MenuRadioItem, MenuRadioItemIndicator, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, Morph, MorphingPopover, MorphingPopoverWithTarget, PRESETS, Package, Palette, PlusIcon, Popover, PopoverArrow, PopoverBackdrop, PopoverClose, PopoverDescription, PopoverPopup, PopoverPortal, PopoverPositioner, PopoverTitle, PopoverTrigger, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, RESPONSIVE_CONFIGS, RefreshCw, ReorderRoot as Reorder, Rocket, Save, SearchIcon, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SettingsIcon, SlidingNumber, SlidingText, Slot, Switch, SwitchIcon, SwitchThumb, TIMING, TRANSFORMS, Tabs, TabsHighlight, TabsHighlightItem, TabsList, TabsPanel, TabsPanels, TabsTab, TerminalIcon, TextFlow, Textarea, Tooltip, TooltipArrow, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipProvider, TooltipTrigger, Trash2, TrendingDownIcon, TrendingUpIcon, Type, Upload, XIcon, accordionVariants, badgeVariants, bracketVariants, buttonStateStyles, buttonVariants, calculateSeparatorCoordination, cardVariants, checkboxStyles, cn, dataCardStyles, dataCardVariants, dialogStyles, fieldVariants, getResponsiveDuration, getResponsiveStagger, getStrictContext, inputGroupAddonVariants, inputGroupButtonVariants, popoverStyles, progressStyles, shouldShowSeparator, switchStyles, tabsIndicatorVariants, tabsListVariants, tabsTabVariants, tooltipStyles, useAccordionItem, useAlertDialog, useAnimationOrchestrator, useAutoHeight, useCSSGridMorph, useCheckbox, useComboboxAnchor, useControlledState, useDataCard, useDataState, useDialog, useElementRegistry, useFLIPAnimation, useFLIPClipPath, useHighlight, useIsInView, useListFormat, useMenu, useMenuActiveValue, useMorph, useMorphContext, usePopover, usePositionCapture, useProgress, useReorder, useReorderPresence, useSwitch, useTooltip, useViewTransitions };
@@ -0,0 +1,37 @@
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
+ import type { HTMLAttributes } from 'react';
10
+ /**
11
+ * Icon wrapper props interface.
12
+ */
13
+ export interface IIconWrapperProps extends HTMLAttributes<HTMLDivElement> {
14
+ /**
15
+ * The icon component to render.
16
+ * Accepts ComponentType, ForwardRefExoticComponent, or any renderable component.
17
+ * Broad type needed for React 19 compatibility across duplicate @types/react copies.
18
+ */
19
+ icon: React.ComponentType<any> | React.ExoticComponent<any>;
20
+ /** Size in pixels for icons that use size prop (default: 16) */
21
+ size?: number;
22
+ }
23
+ /**
24
+ * Icon wrapper that ensures consistent sizing across different icon types.
25
+ *
26
+ * Some icons from the UI package use explicit size props (width/height on SVG),
27
+ * while others use CSS classes (w-4 h-4). This wrapper detects the icon type
28
+ * and applies the appropriate sizing method.
29
+ *
30
+ * @example
31
+ * ```tsx
32
+ * <IconWrapper icon={DownloadIcon} size={16} className="text-primary" />
33
+ * <IconWrapper icon={KeyIcon} className="text-muted-foreground" />
34
+ * ```
35
+ */
36
+ export declare function IconWrapper({ icon: Icon, className, size, ...props }: IIconWrapperProps): import("react/jsx-runtime").JSX.Element;
37
+ //# sourceMappingURL=icon-wrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon-wrapper.d.ts","sourceRoot":"","sources":["../../../src/react-ui/lib/icon-wrapper.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAiB5C;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACvE;;;;OAIG;IACH,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IAC5D,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EAAE,IAAI,EACV,SAAS,EACT,IAAS,EACT,GAAG,KAAK,EACT,EAAE,iBAAiB,2CASnB"}
@@ -0,0 +1,55 @@
1
+ 'use client';
2
+
3
+ import { jsx } from "react/jsx-runtime";
4
+
5
+ //#region src/react-ui/lib/icon-wrapper.tsx
6
+ /**
7
+ * Icon Wrapper Component.
8
+ *
9
+ * Ensures consistent sizing across different icon types.
10
+ * Some icons use explicit size props, others use CSS classes.
11
+ *
12
+ * @module @mks2508/mks-ui/react/lib/icon-wrapper
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
+ * Icon wrapper that ensures consistent sizing across different icon types.
30
+ *
31
+ * Some icons from the UI package use explicit size props (width/height on SVG),
32
+ * while others use CSS classes (w-4 h-4). This wrapper detects the icon type
33
+ * and applies the appropriate sizing method.
34
+ *
35
+ * @example
36
+ * ```tsx
37
+ * <IconWrapper icon={DownloadIcon} size={16} className="text-primary" />
38
+ * <IconWrapper icon={KeyIcon} className="text-muted-foreground" />
39
+ * ```
40
+ */
41
+ function IconWrapper({ icon: Icon, className, size = 16, ...props }) {
42
+ const iconName = Icon.displayName || Icon.name || "";
43
+ if (SIZEABLE_ICONS.has(iconName)) return /* @__PURE__ */ jsx(Icon, {
44
+ size,
45
+ className,
46
+ ...props
47
+ });
48
+ return /* @__PURE__ */ jsx(Icon, {
49
+ className,
50
+ ...props
51
+ });
52
+ }
53
+
54
+ //#endregion
55
+ export { IconWrapper };