@mks2508/mks-ui 0.6.7 → 0.7.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 (397) hide show
  1. package/dist/css/blocks-Sidebar-animations-tooltip.css +330 -0
  2. package/dist/index.css +1058 -128
  3. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.d.ts +64 -0
  4. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.d.ts.map +1 -0
  5. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.js +301 -0
  6. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.d.ts +94 -0
  7. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.d.ts.map +1 -0
  8. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.js +216 -0
  9. package/dist/react-ui/blocks/BottomNavBar/index.d.ts +10 -0
  10. package/dist/react-ui/blocks/BottomNavBar/index.d.ts.map +1 -0
  11. package/dist/react-ui/blocks/BottomNavBar/index.js +4 -0
  12. package/dist/react-ui/blocks/BottomNavBar/types.d.ts +362 -0
  13. package/dist/react-ui/blocks/BottomNavBar/types.d.ts.map +1 -0
  14. package/dist/react-ui/blocks/BottomNavBar/types.js +175 -0
  15. package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.d.ts +73 -0
  16. package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.d.ts.map +1 -0
  17. package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.js +178 -0
  18. package/dist/react-ui/blocks/Sidebar/Sidebar.constants.d.ts +285 -0
  19. package/dist/react-ui/blocks/Sidebar/Sidebar.constants.d.ts.map +1 -0
  20. package/dist/react-ui/blocks/Sidebar/Sidebar.constants.js +208 -0
  21. package/dist/react-ui/blocks/Sidebar/Sidebar.d.ts +80 -0
  22. package/dist/react-ui/blocks/Sidebar/Sidebar.d.ts.map +1 -0
  23. package/dist/react-ui/blocks/Sidebar/Sidebar.js +114 -0
  24. package/dist/react-ui/blocks/Sidebar/Sidebar.styles.d.ts +77 -0
  25. package/dist/react-ui/blocks/Sidebar/Sidebar.styles.d.ts.map +1 -0
  26. package/dist/react-ui/blocks/Sidebar/Sidebar.styles.js +274 -0
  27. package/dist/react-ui/blocks/Sidebar/Sidebar.types.d.ts +546 -0
  28. package/dist/react-ui/blocks/Sidebar/Sidebar.types.d.ts.map +1 -0
  29. package/dist/react-ui/blocks/Sidebar/Sidebar.types.js +149 -0
  30. package/dist/react-ui/blocks/Sidebar/SidebarContent.d.ts +46 -0
  31. package/dist/react-ui/blocks/Sidebar/SidebarContent.d.ts.map +1 -0
  32. package/dist/react-ui/blocks/Sidebar/SidebarContent.js +86 -0
  33. package/dist/react-ui/blocks/Sidebar/SidebarContext.d.ts +85 -0
  34. package/dist/react-ui/blocks/Sidebar/SidebarContext.d.ts.map +1 -0
  35. package/dist/react-ui/blocks/Sidebar/SidebarContext.js +178 -0
  36. package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.d.ts +31 -0
  37. package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.d.ts.map +1 -0
  38. package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.js +37 -0
  39. package/dist/react-ui/blocks/Sidebar/SidebarIndicator.d.ts +59 -0
  40. package/dist/react-ui/blocks/Sidebar/SidebarIndicator.d.ts.map +1 -0
  41. package/dist/react-ui/blocks/Sidebar/SidebarIndicator.js +106 -0
  42. package/dist/react-ui/blocks/Sidebar/SidebarItem.d.ts +82 -0
  43. package/dist/react-ui/blocks/Sidebar/SidebarItem.d.ts.map +1 -0
  44. package/dist/react-ui/blocks/Sidebar/SidebarItem.js +209 -0
  45. package/dist/react-ui/blocks/Sidebar/SidebarNav.d.ts +48 -0
  46. package/dist/react-ui/blocks/Sidebar/SidebarNav.d.ts.map +1 -0
  47. package/dist/react-ui/blocks/Sidebar/SidebarNav.js +317 -0
  48. package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.d.ts +56 -0
  49. package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.d.ts.map +1 -0
  50. package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.js +105 -0
  51. package/dist/react-ui/blocks/Sidebar/SidebarSubContent.d.ts +27 -0
  52. package/dist/react-ui/blocks/Sidebar/SidebarSubContent.d.ts.map +1 -0
  53. package/dist/react-ui/blocks/Sidebar/SidebarSubContent.js +31 -0
  54. package/dist/react-ui/blocks/Sidebar/SidebarSubLink.d.ts +20 -0
  55. package/dist/react-ui/blocks/Sidebar/SidebarSubLink.d.ts.map +1 -0
  56. package/dist/react-ui/blocks/Sidebar/SidebarSubLink.js +44 -0
  57. package/dist/react-ui/blocks/Sidebar/SidebarToggle.d.ts +52 -0
  58. package/dist/react-ui/blocks/Sidebar/SidebarToggle.d.ts.map +1 -0
  59. package/dist/react-ui/blocks/Sidebar/SidebarToggle.js +119 -0
  60. package/dist/react-ui/blocks/Sidebar/SidebarTooltip.d.ts +15 -0
  61. package/dist/react-ui/blocks/Sidebar/SidebarTooltip.d.ts.map +1 -0
  62. package/dist/react-ui/blocks/Sidebar/SidebarTooltip.js +177 -0
  63. package/dist/react-ui/blocks/Sidebar/animations/tooltip.css +330 -0
  64. package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.d.ts +28 -0
  65. package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.d.ts.map +1 -0
  66. package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.js +74 -0
  67. package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.d.ts +18 -0
  68. package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.d.ts.map +1 -0
  69. package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.js +166 -0
  70. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.d.ts +48 -0
  71. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.d.ts.map +1 -0
  72. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.js +59 -0
  73. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.d.ts +72 -0
  74. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.d.ts.map +1 -0
  75. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.js +159 -0
  76. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.d.ts +51 -0
  77. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.d.ts.map +1 -0
  78. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.js +150 -0
  79. package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.d.ts +42 -0
  80. package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.d.ts.map +1 -0
  81. package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.js +49 -0
  82. package/dist/react-ui/blocks/Sidebar/index.d.ts +163 -0
  83. package/dist/react-ui/blocks/Sidebar/index.d.ts.map +1 -0
  84. package/dist/react-ui/blocks/Sidebar/index.js +19 -0
  85. package/dist/react-ui/blocks/Terminal/Terminal.tokens.d.ts +219 -0
  86. package/dist/react-ui/blocks/Terminal/Terminal.tokens.d.ts.map +1 -0
  87. package/dist/react-ui/blocks/Terminal/Terminal.tokens.js +253 -0
  88. package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts +2 -1
  89. package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts.map +1 -1
  90. package/dist/react-ui/blocks/Terminal/TerminalDisplay.js +1 -1
  91. package/dist/react-ui/blocks/Terminal/TerminalDisplay.types.d.ts +1 -1
  92. package/dist/react-ui/blocks/Terminal/TerminalDisplay.types.d.ts.map +1 -1
  93. package/dist/react-ui/blocks/Terminal/chrome.js +2 -2
  94. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.d.ts +15 -0
  95. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.d.ts.map +1 -0
  96. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.js +14 -0
  97. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.types.d.ts +106 -0
  98. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.types.d.ts.map +1 -0
  99. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.d.ts +89 -0
  100. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.d.ts.map +1 -0
  101. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.js +136 -0
  102. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts +21 -7
  103. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts.map +1 -1
  104. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.js +81 -71
  105. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.d.ts +33 -0
  106. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.d.ts.map +1 -0
  107. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.js +51 -0
  108. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.d.ts +13 -0
  109. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.d.ts.map +1 -0
  110. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.js +8 -0
  111. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.types.d.ts +29 -0
  112. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.types.d.ts.map +1 -0
  113. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.d.ts +26 -0
  114. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.d.ts.map +1 -0
  115. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.js +40 -0
  116. package/dist/react-ui/blocks/Terminal/components/index.js +5 -2
  117. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.d.ts +12 -0
  118. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.d.ts.map +1 -0
  119. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.js +13 -0
  120. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.types.d.ts +35 -0
  121. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.types.d.ts.map +1 -0
  122. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.d.ts +75 -0
  123. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.d.ts.map +1 -0
  124. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.js +115 -0
  125. package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.d.ts +122 -0
  126. package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.d.ts.map +1 -0
  127. package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.js +128 -0
  128. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.d.ts +12 -0
  129. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.d.ts.map +1 -0
  130. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.js +12 -0
  131. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.types.d.ts +29 -0
  132. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.types.d.ts.map +1 -0
  133. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.d.ts +37 -0
  134. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.d.ts.map +1 -0
  135. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.js +74 -0
  136. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.d.ts +12 -0
  137. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.d.ts.map +1 -0
  138. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.js +16 -0
  139. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.types.d.ts +32 -0
  140. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.types.d.ts.map +1 -0
  141. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.d.ts +40 -0
  142. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.d.ts.map +1 -0
  143. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.js +81 -0
  144. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.d.ts +12 -0
  145. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.d.ts.map +1 -0
  146. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.js +13 -0
  147. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.types.d.ts +28 -0
  148. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.types.d.ts.map +1 -0
  149. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.d.ts +40 -0
  150. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.d.ts.map +1 -0
  151. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.js +108 -0
  152. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.d.ts +12 -0
  153. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.d.ts.map +1 -0
  154. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.js +12 -0
  155. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.types.d.ts +31 -0
  156. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.types.d.ts.map +1 -0
  157. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.d.ts +73 -0
  158. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.d.ts.map +1 -0
  159. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.js +99 -0
  160. package/dist/react-ui/blocks/Terminal/controls/index.d.ts +16 -0
  161. package/dist/react-ui/blocks/Terminal/controls/index.d.ts.map +1 -0
  162. package/dist/react-ui/blocks/Terminal/controls/index.js +11 -0
  163. package/dist/react-ui/blocks/Terminal/display.d.ts +2 -2
  164. package/dist/react-ui/blocks/Terminal/display.d.ts.map +1 -1
  165. package/dist/react-ui/blocks/Terminal/display.js +4 -2
  166. package/dist/react-ui/blocks/Terminal/hooks/index.d.ts +9 -2
  167. package/dist/react-ui/blocks/Terminal/hooks/index.d.ts.map +1 -1
  168. package/dist/react-ui/blocks/Terminal/hooks/index.js +6 -0
  169. package/dist/react-ui/blocks/Terminal/hooks/useTerminal.d.ts +198 -0
  170. package/dist/react-ui/blocks/Terminal/hooks/useTerminal.d.ts.map +1 -0
  171. package/dist/react-ui/blocks/Terminal/hooks/useTerminal.js +198 -0
  172. package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.d.ts +81 -0
  173. package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.d.ts.map +1 -0
  174. package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.js +115 -0
  175. package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.d.ts +54 -0
  176. package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.d.ts.map +1 -0
  177. package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.js +57 -0
  178. package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.d.ts +81 -0
  179. package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.d.ts.map +1 -0
  180. package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.js +102 -0
  181. package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.d.ts +78 -0
  182. package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.d.ts.map +1 -0
  183. package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.js +136 -0
  184. package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.d.ts +88 -0
  185. package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.d.ts.map +1 -0
  186. package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.js +101 -0
  187. package/dist/react-ui/blocks/Terminal/index.d.ts +10 -6
  188. package/dist/react-ui/blocks/Terminal/index.d.ts.map +1 -1
  189. package/dist/react-ui/blocks/Terminal/index.js +43 -11
  190. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.d.ts.map +1 -1
  191. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.js +8 -13
  192. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.d.ts +13 -0
  193. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.d.ts.map +1 -0
  194. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.js +18 -0
  195. package/dist/react-ui/blocks/Terminal/panel/{TerminalDebugPanel.d.ts → TerminalDebugPanel/TerminalDebugPanel.types.d.ts} +19 -27
  196. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.types.d.ts.map +1 -0
  197. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/index.d.ts +32 -0
  198. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/index.d.ts.map +1 -0
  199. package/dist/react-ui/blocks/Terminal/panel/{TerminalDebugPanel.js → TerminalDebugPanel/index.js} +59 -38
  200. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.d.ts +13 -0
  201. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.d.ts.map +1 -0
  202. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.js +17 -0
  203. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.types.d.ts +34 -0
  204. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.types.d.ts.map +1 -0
  205. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/index.d.ts +34 -0
  206. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/index.d.ts.map +1 -0
  207. package/dist/react-ui/blocks/Terminal/panel/{TerminalFilterDropdown.js → TerminalFilterDropdown/index.js} +29 -31
  208. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.css +60 -0
  209. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.js +5 -0
  210. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.styles.d.ts +13 -0
  211. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.styles.d.ts.map +1 -0
  212. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.types.d.ts +34 -0
  213. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.types.d.ts.map +1 -0
  214. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/index.d.ts +34 -0
  215. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/index.d.ts.map +1 -0
  216. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.d.ts.map +1 -1
  217. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.js +5 -1
  218. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts +2 -1
  219. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts.map +1 -1
  220. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts +6 -3
  221. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts.map +1 -1
  222. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.js +43 -264
  223. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.d.ts +43 -0
  224. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.d.ts.map +1 -0
  225. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.js +248 -0
  226. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts +4 -2
  227. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts.map +1 -1
  228. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.js +40 -150
  229. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.d.ts +26 -0
  230. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.d.ts.map +1 -0
  231. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.js +30 -0
  232. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.types.d.ts +123 -0
  233. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.types.d.ts.map +1 -0
  234. package/dist/react-ui/blocks/Terminal/panel/{TerminalLogsPanel.d.ts → TerminalLogsPanel/index.d.ts} +10 -21
  235. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/index.d.ts.map +1 -0
  236. package/dist/react-ui/blocks/Terminal/panel/{TerminalLogsPanel.js → TerminalLogsPanel/index.js} +48 -81
  237. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts +6 -142
  238. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts.map +1 -1
  239. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts +1 -1
  240. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts.map +1 -1
  241. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.js +16 -16
  242. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.d.ts +1 -1
  243. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.js +1 -1
  244. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.d.ts +21 -0
  245. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.d.ts.map +1 -0
  246. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.js +21 -0
  247. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.types.d.ts +40 -0
  248. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.types.d.ts.map +1 -0
  249. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.d.ts +37 -0
  250. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.d.ts.map +1 -0
  251. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.js +127 -0
  252. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.d.ts +22 -0
  253. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.d.ts.map +1 -0
  254. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.js +24 -0
  255. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.types.d.ts +43 -0
  256. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.types.d.ts.map +1 -0
  257. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.d.ts +35 -0
  258. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.d.ts.map +1 -0
  259. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.js +129 -0
  260. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.styles.d.ts +20 -0
  261. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.styles.d.ts.map +1 -0
  262. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.types.d.ts +72 -0
  263. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.types.d.ts.map +1 -0
  264. package/dist/react-ui/blocks/Terminal/panel/{TerminalPanelToolbar.d.ts → TerminalPanelToolbar/index.d.ts} +10 -4
  265. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/index.d.ts.map +1 -0
  266. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.styles.d.ts +13 -0
  267. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.styles.d.ts.map +1 -0
  268. package/dist/react-ui/blocks/Terminal/panel/{TerminalSessionControl.d.ts → TerminalSessionControl/TerminalSessionControl.types.d.ts} +24 -30
  269. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.types.d.ts.map +1 -0
  270. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/index.d.ts +38 -0
  271. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/index.d.ts.map +1 -0
  272. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.d.ts +23 -0
  273. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.d.ts.map +1 -0
  274. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.js +27 -0
  275. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.types.d.ts +56 -0
  276. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.types.d.ts.map +1 -0
  277. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/index.d.ts +40 -0
  278. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/index.d.ts.map +1 -0
  279. package/dist/react-ui/blocks/Terminal/panel/{TerminalSessionTabs.js → TerminalSessionTabs/index.js} +26 -31
  280. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.css +60 -0
  281. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.js +5 -0
  282. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.d.ts +13 -0
  283. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.d.ts.map +1 -0
  284. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.js +19 -0
  285. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.types.d.ts +20 -0
  286. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.types.d.ts.map +1 -0
  287. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.d.ts +25 -0
  288. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.d.ts.map +1 -0
  289. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.js +217 -0
  290. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.d.ts +13 -0
  291. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.d.ts.map +1 -0
  292. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.js +15 -0
  293. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.types.d.ts +28 -0
  294. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.types.d.ts.map +1 -0
  295. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/index.d.ts +30 -0
  296. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/index.d.ts.map +1 -0
  297. package/dist/react-ui/blocks/Terminal/panel/{TerminalThemeSelector.js → TerminalThemeSelector/index.js} +31 -46
  298. package/dist/react-ui/blocks/Terminal/restty/ResttyContext.d.ts +38 -0
  299. package/dist/react-ui/blocks/Terminal/restty/ResttyContext.d.ts.map +1 -0
  300. package/dist/react-ui/blocks/Terminal/restty/ResttyContext.js +47 -0
  301. package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.d.ts +50 -0
  302. package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.d.ts.map +1 -0
  303. package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.js +60 -0
  304. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.d.ts +32 -0
  305. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.d.ts.map +1 -0
  306. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.js +278 -0
  307. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.types.d.ts +166 -0
  308. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.types.d.ts.map +1 -0
  309. package/dist/react-ui/blocks/Terminal/restty/index.d.ts +20 -0
  310. package/dist/react-ui/blocks/Terminal/restty/index.d.ts.map +1 -0
  311. package/dist/react-ui/blocks/Terminal/restty/index.js +7 -0
  312. package/dist/react-ui/blocks/Terminal/restty/useResttyPane.d.ts +51 -0
  313. package/dist/react-ui/blocks/Terminal/restty/useResttyPane.d.ts.map +1 -0
  314. package/dist/react-ui/blocks/Terminal/restty/useResttyPane.js +61 -0
  315. package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.d.ts +39 -0
  316. package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.d.ts.map +1 -0
  317. package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.js +48 -0
  318. package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.d.ts +29 -0
  319. package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.d.ts.map +1 -0
  320. package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.js +33 -0
  321. package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.d.ts +32 -0
  322. package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.d.ts.map +1 -0
  323. package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.js +67 -0
  324. package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.d.ts +83 -0
  325. package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.d.ts.map +1 -0
  326. package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.js +191 -0
  327. package/dist/react-ui/blocks/index.d.ts +2 -0
  328. package/dist/react-ui/blocks/index.d.ts.map +1 -1
  329. package/dist/react-ui/components/MorphingPopover/morphing-popover.module.css +154 -0
  330. package/dist/react-ui/icons/lucide-animated/terminal.d.ts +45 -13
  331. package/dist/react-ui/icons/lucide-animated/terminal.d.ts.map +1 -1
  332. package/dist/react-ui/icons/lucide-animated/terminal.js +118 -28
  333. package/dist/react-ui/index.d.ts +4 -0
  334. package/dist/react-ui/index.d.ts.map +1 -1
  335. package/dist/react-ui/index.js +40 -1
  336. package/dist/react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module.css +20 -0
  337. package/dist/react-ui/ui/Button/Button.styles.d.ts +2 -2
  338. package/dist/react-ui/ui/Button/Button.styles.d.ts.map +1 -1
  339. package/dist/react-ui/ui/Button/Button.styles.js +4 -2
  340. package/dist/react-ui/ui/Button/Button.types.d.ts +2 -2
  341. package/dist/react-ui/ui/Button/Button.types.d.ts.map +1 -1
  342. package/dist/react-ui/ui/DynamicToggle/DynamicToggle.css +369 -0
  343. package/dist/react-ui/ui/DynamicToggle/index.d.ts +1 -1
  344. package/dist/react-ui/ui/DynamicToggle/index.d.ts.map +1 -1
  345. package/dist/react-ui/ui/DynamicToggle/index.js +1 -1
  346. package/dist/react-ui/ui/Tabs/Tabs.css +38 -0
  347. package/dist/react-ui/ui/Tabs/Tabs.js +0 -0
  348. package/dist/react-ui/ui/Tabs/index.d.ts +1 -1
  349. package/dist/react-ui/ui/Tabs/index.d.ts.map +1 -1
  350. package/dist/react-ui/ui/Tabs/index.js +2 -1
  351. package/package.json +21 -7
  352. package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts +0 -146
  353. package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts.map +0 -1
  354. package/dist/react-ui/blocks/Terminal/ResttyAdapter.js +0 -213
  355. package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts +0 -55
  356. package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts.map +0 -1
  357. package/dist/react-ui/blocks/Terminal/Terminal.adapter.js +0 -68
  358. package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts +0 -111
  359. package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts.map +0 -1
  360. package/dist/react-ui/blocks/Terminal/TerminalRestty.js +0 -185
  361. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts +0 -160
  362. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts.map +0 -1
  363. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.js +0 -185
  364. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts +0 -36
  365. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts.map +0 -1
  366. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.js +0 -52
  367. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel.d.ts.map +0 -1
  368. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts +0 -42
  369. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts.map +0 -1
  370. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts +0 -43
  371. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts.map +0 -1
  372. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.d.ts.map +0 -1
  373. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts +0 -30
  374. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts.map +0 -1
  375. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.js +0 -126
  376. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts +0 -31
  377. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts.map +0 -1
  378. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.js +0 -149
  379. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.d.ts.map +0 -1
  380. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl.d.ts.map +0 -1
  381. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts +0 -63
  382. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts.map +0 -1
  383. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts +0 -24
  384. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts.map +0 -1
  385. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.js +0 -225
  386. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts +0 -35
  387. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts.map +0 -1
  388. package/dist/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module.js +0 -5
  389. package/dist/react-ui/blocks/Terminal/panel/terminal-session-tabs.module.js +0 -5
  390. /package/dist/{react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module-p4Aks9qK.css → css/blocks-Terminal-panel-TerminalFilterDropdown-terminal-filter-dropdown.module.css} +0 -0
  391. /package/dist/{react-ui/blocks/Terminal/panel/terminal-session-tabs.module-D7g8zk0W.css → css/blocks-Terminal-panel-TerminalSessionTabs-terminal-session-tabs.module.css} +0 -0
  392. /package/dist/{react-ui/components/MorphingPopover/morphing-popover.module-s63snw7C.css → css/components-MorphingPopover-morphing-popover.module.css} +0 -0
  393. /package/dist/{react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module-7y-To7On.css → css/primitives-waapi-Morph-techniques-useViewTransitions.module.css} +0 -0
  394. /package/dist/{react-ui/ui/DynamicToggle/DynamicToggle.module-BE6uirOX.css → css/ui-DynamicToggle-DynamicToggle.css} +0 -0
  395. /package/dist/{react-ui/ui/Tabs/Tabs.module-CFzRKHsx.css → css/ui-Tabs-Tabs.css} +0 -0
  396. /package/dist/react-ui/{ui/DynamicToggle/DynamicToggle.module.js → blocks/Sidebar/animations/tooltip-keyframes.js} +0 -0
  397. /package/dist/react-ui/ui/{Tabs/Tabs.module.js → DynamicToggle/DynamicToggle.js} +0 -0
package/dist/index.css CHANGED
@@ -1,129 +1,1059 @@
1
- @import "tailwindcss";
2
- @import "tw-animate-css";
3
- @import "shadcn/tailwind.css";
4
- @import "@fontsource-variable/geist-mono";
5
-
6
- @custom-variant dark (&:is(.dark *));
7
-
8
- :root {
9
- --background: oklch(1 0 0);
10
- --foreground: oklch(0.145 0 0);
11
- --card: oklch(1 0 0);
12
- --card-foreground: oklch(0.145 0 0);
13
- --popover: oklch(1 0 0);
14
- --popover-foreground: oklch(0.145 0 0);
15
- --primary: oklch(0.577 0.245 27.325);
16
- --primary-foreground: oklch(0.971 0.013 17.38);
17
- --secondary: oklch(0.967 0.001 286.375);
18
- --secondary-foreground: oklch(0.21 0.006 285.885);
19
- --muted: oklch(0.97 0 0);
20
- --muted-foreground: oklch(0.556 0 0);
21
- --accent: oklch(0.97 0 0);
22
- --accent-foreground: oklch(0.205 0 0);
23
- --destructive: oklch(0.58 0.22 27);
24
- --border: oklch(0.922 0 0);
25
- --input: oklch(0.922 0 0);
26
- --ring: oklch(0.708 0 0);
27
- --chart-1: oklch(0.808 0.114 19.571);
28
- --chart-2: oklch(0.637 0.237 25.331);
29
- --chart-3: oklch(0.577 0.245 27.325);
30
- --chart-4: oklch(0.505 0.213 27.518);
31
- --chart-5: oklch(0.444 0.177 26.899);
32
- --radius: 0.625rem;
33
- --sidebar: oklch(0.985 0 0);
34
- --sidebar-foreground: oklch(0.145 0 0);
35
- --sidebar-primary: oklch(0.577 0.245 27.325);
36
- --sidebar-primary-foreground: oklch(0.971 0.013 17.38);
37
- --sidebar-accent: oklch(0.97 0 0);
38
- --sidebar-accent-foreground: oklch(0.205 0 0);
39
- --sidebar-border: oklch(0.922 0 0);
40
- --sidebar-ring: oklch(0.708 0 0);
41
- }
42
-
43
- .dark {
44
- --background: oklch(0.145 0 0);
45
- --foreground: oklch(0.985 0 0);
46
- --card: oklch(0.205 0 0);
47
- --card-foreground: oklch(0.985 0 0);
48
- --popover: oklch(0.205 0 0);
49
- --popover-foreground: oklch(0.985 0 0);
50
- --primary: oklch(0.637 0.237 25.331);
51
- --primary-foreground: oklch(0.971 0.013 17.38);
52
- --secondary: oklch(0.274 0.006 286.033);
53
- --secondary-foreground: oklch(0.985 0 0);
54
- --muted: oklch(0.269 0 0);
55
- --muted-foreground: oklch(0.708 0 0);
56
- --accent: oklch(0.371 0 0);
57
- --accent-foreground: oklch(0.985 0 0);
58
- --destructive: oklch(0.704 0.191 22.216);
59
- --border: oklch(1 0 0 / 10%);
60
- --input: oklch(1 0 0 / 15%);
61
- --ring: oklch(0.556 0 0);
62
- --chart-1: oklch(0.808 0.114 19.571);
63
- --chart-2: oklch(0.637 0.237 25.331);
64
- --chart-3: oklch(0.577 0.245 27.325);
65
- --chart-4: oklch(0.505 0.213 27.518);
66
- --chart-5: oklch(0.444 0.177 26.899);
67
- --sidebar: oklch(0.205 0 0);
68
- --sidebar-foreground: oklch(0.985 0 0);
69
- --sidebar-primary: oklch(0.637 0.237 25.331);
70
- --sidebar-primary-foreground: oklch(0.971 0.013 17.38);
71
- --sidebar-accent: oklch(0.269 0 0);
72
- --sidebar-accent-foreground: oklch(0.985 0 0);
73
- --sidebar-border: oklch(1 0 0 / 10%);
74
- --sidebar-ring: oklch(0.556 0 0);
75
- }
76
-
77
- @theme inline {
78
- --font-mono: 'Geist Mono Variable', monospace;
79
- --color-sidebar-ring: var(--sidebar-ring);
80
- --color-sidebar-border: var(--sidebar-border);
81
- --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
82
- --color-sidebar-accent: var(--sidebar-accent);
83
- --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
84
- --color-sidebar-primary: var(--sidebar-primary);
85
- --color-sidebar-foreground: var(--sidebar-foreground);
86
- --color-sidebar: var(--sidebar);
87
- --color-chart-5: var(--chart-5);
88
- --color-chart-4: var(--chart-4);
89
- --color-chart-3: var(--chart-3);
90
- --color-chart-2: var(--chart-2);
91
- --color-chart-1: var(--chart-1);
92
- --color-ring: var(--ring);
93
- --color-input: var(--input);
94
- --color-border: var(--border);
95
- --color-destructive: var(--destructive);
96
- --color-accent-foreground: var(--accent-foreground);
97
- --color-accent: var(--accent);
98
- --color-muted-foreground: var(--muted-foreground);
99
- --color-muted: var(--muted);
100
- --color-secondary-foreground: var(--secondary-foreground);
101
- --color-secondary: var(--secondary);
102
- --color-primary-foreground: var(--primary-foreground);
103
- --color-primary: var(--primary);
104
- --color-popover-foreground: var(--popover-foreground);
105
- --color-popover: var(--popover);
106
- --color-card-foreground: var(--card-foreground);
107
- --color-card: var(--card);
108
- --color-foreground: var(--foreground);
109
- --color-background: var(--background);
110
- --radius-sm: calc(var(--radius) - 4px);
111
- --radius-md: calc(var(--radius) - 2px);
112
- --radius-lg: var(--radius);
113
- --radius-xl: calc(var(--radius) + 4px);
114
- --radius-2xl: calc(var(--radius) + 8px);
115
- --radius-3xl: calc(var(--radius) + 12px);
116
- --radius-4xl: calc(var(--radius) + 16px);
117
- }
118
-
119
- @layer base {
120
- * {
121
- @apply border-border outline-ring/50;
122
- }
123
- body {
124
- @apply font-sans bg-background text-foreground;
125
- }
126
- html {
127
- @apply font-sans;
1
+
2
+
3
+ /* react-ui/blocks/Sidebar/animations/tooltip.css */
4
+
5
+ /**
6
+ * Tooltip Transition Keyframes
7
+ *
8
+ * Sistema de animaciones CSS para transiciones de tooltip con:
9
+ * - Items staggered enter/exit
10
+ * - Grid-based height transitions
11
+ * - 3D title rotations
12
+ *
13
+ * Performance: GPU-accelerated (transform + opacity only)
14
+ */
15
+
16
+ /* ============================================================================
17
+ ITEMS ANIMATIONS - Staggered Enter/Exit
18
+ ============================================================================ */
19
+
20
+ @keyframes tooltip-item-enter {
21
+ from {
22
+ opacity: 0;
23
+ transform: translateX(-8px);
24
+ }
25
+ to {
26
+ opacity: 1;
27
+ transform: translateX(0);
28
+ }
29
+ }
30
+
31
+ @keyframes tooltip-item-exit {
32
+ from {
33
+ opacity: 1;
34
+ transform: translateX(0);
35
+ }
36
+ to {
37
+ opacity: 0;
38
+ transform: translateX(-4px);
39
+ }
40
+ }
41
+
42
+ /**
43
+ * Item States con CSS Custom Properties
44
+ *
45
+ * Uso: <div style="--animation-order: 0" data-state="entering">
46
+ */
47
+ .sidebar-sublink[data-state="entering"] {
48
+ animation: tooltip-item-enter 150ms cubic-bezier(0.4, 0, 0.2, 1);
49
+ animation-delay: calc(var(--animation-order, 0) * 30ms + 150ms);
50
+ animation-fill-mode: both;
51
+ }
52
+
53
+ .sidebar-sublink[data-state="leaving"] {
54
+ animation: tooltip-item-exit 100ms cubic-bezier(0.4, 0, 0.6, 1);
55
+ animation-delay: calc(var(--animation-order, 0) * 20ms);
56
+ animation-fill-mode: both;
57
+ }
58
+
59
+ /* ============================================================================
60
+ TITLE 3D ROTATIONS
61
+ ============================================================================ */
62
+
63
+ /**
64
+ * Title Rotate Up (direction-aware)
65
+ * Usado cuando navegamos hacia arriba en el sidebar
66
+ */
67
+ @keyframes tooltip-title-rotate-up {
68
+ from {
69
+ transform: rotateX(0deg);
70
+ opacity: 1;
71
+ }
72
+ to {
73
+ transform: rotateX(-90deg);
74
+ opacity: 0;
75
+ }
76
+ }
77
+
78
+ @keyframes tooltip-title-enter-from-below {
79
+ from {
80
+ transform: rotateX(90deg);
81
+ opacity: 0;
82
+ }
83
+ to {
84
+ transform: rotateX(0deg);
85
+ opacity: 1;
86
+ }
87
+ }
88
+
89
+ /**
90
+ * Title Rotate Down (direction-aware)
91
+ * Usado cuando navegamos hacia abajo en el sidebar
92
+ */
93
+ @keyframes tooltip-title-rotate-down {
94
+ from {
95
+ transform: rotateX(0deg);
96
+ opacity: 1;
97
+ }
98
+ to {
99
+ transform: rotateX(90deg);
100
+ opacity: 0;
101
+ }
102
+ }
103
+
104
+ @keyframes tooltip-title-enter-from-above {
105
+ from {
106
+ transform: rotateX(-90deg);
107
+ opacity: 0;
108
+ }
109
+ to {
110
+ transform: rotateX(0deg);
111
+ opacity: 1;
112
+ }
113
+ }
114
+
115
+ /**
116
+ * Title States
117
+ */
118
+ .tooltip-title[data-direction="up"][data-state="leaving"] {
119
+ animation: tooltip-title-rotate-up 250ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
120
+ }
121
+
122
+ .tooltip-title[data-direction="up"][data-state="entering"] {
123
+ animation: tooltip-title-enter-from-below 250ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
124
+ }
125
+
126
+ .tooltip-title[data-direction="down"][data-state="leaving"] {
127
+ animation: tooltip-title-rotate-down 250ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
128
+ }
129
+
130
+ .tooltip-title[data-direction="down"][data-state="entering"] {
131
+ animation: tooltip-title-enter-from-above 250ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
132
+ }
133
+
134
+ /* ============================================================================
135
+ 3D CUBE FACES (Enfoque A: Multi-cara)
136
+ ============================================================================ */
137
+
138
+ /**
139
+ * Cubo 3D con 6 caras para títulos
140
+ *
141
+ * Estructura:
142
+ * .title-scene (perspective)
143
+ * └─ .title-cube (preserve-3d)
144
+ * ├─ .title-face--front
145
+ * ├─ .title-face--back
146
+ * ├─ .title-face--top
147
+ * ├─ .title-face--bottom
148
+ * ├─ .title-face--left
149
+ * └─ .title-face--right
150
+ */
151
+
152
+ .title-scene {
153
+ perspective: 600px;
154
+ position: relative;
155
+ width: 100%;
156
+ height: 2rem;
157
+ }
158
+
159
+ .title-cube {
160
+ width: 100%;
161
+ height: 100%;
162
+ position: relative;
163
+ transform-style: preserve-3d;
164
+ transition: transform 250ms cubic-bezier(0.4, 0, 0.2, 1);
165
+ /* Empujar hacia atrás para evitar blur en texto */
166
+ transform: translateZ(-1rem);
167
+ }
168
+
169
+ .title-face {
170
+ position: absolute;
171
+ width: 100%;
172
+ height: 100%;
173
+ backface-visibility: hidden;
174
+ display: flex;
175
+ align-items: center;
176
+ justify-content: flex-start;
177
+ padding: 0 1rem;
178
+ font-weight: 500;
179
+ }
180
+
181
+ /* Posicionamiento de caras - Vertical rotation (rotateX) */
182
+ .title-face--front {
183
+ transform: rotateX(0deg) translateZ(1rem);
184
+ }
185
+
186
+ .title-face--top {
187
+ transform: rotateX(90deg) translateZ(1rem);
188
+ }
189
+
190
+ .title-face--bottom {
191
+ transform: rotateX(-90deg) translateZ(1rem);
192
+ }
193
+
194
+ .title-face--back {
195
+ transform: rotateX(180deg) translateZ(1rem);
196
+ }
197
+
198
+ /* Estados del cubo - Direction-aware */
199
+ .title-cube[data-face="front"] {
200
+ transform: translateZ(-1rem) rotateX(0deg);
201
+ }
202
+
203
+ .title-cube[data-face="top"] {
204
+ transform: translateZ(-1rem) rotateX(-90deg);
205
+ }
206
+
207
+ .title-cube[data-face="bottom"] {
208
+ transform: translateZ(-1rem) rotateX(90deg);
209
+ }
210
+
211
+ .title-cube[data-face="back"] {
212
+ transform: translateZ(-1rem) rotateX(180deg);
213
+ }
214
+
215
+ /* ============================================================================
216
+ GRID HEIGHT TRANSITION (Grid Trick)
217
+ ============================================================================ */
218
+
219
+ /**
220
+ * Grid trick para height: auto transitions
221
+ *
222
+ * Técnica: grid-template-rows: 0fr → 1fr
223
+ * Browser support: Chrome 107+, Firefox 117+, Safari 16.4+
224
+ */
225
+
226
+ .tooltip-content-grid {
227
+ display: grid;
228
+ grid-template-rows: 0fr;
229
+ transition: grid-template-rows 200ms cubic-bezier(0.4, 0, 0.2, 1);
230
+ transition-delay: 50ms; /* Empieza después del fade-out de items */
231
+ }
232
+
233
+ .tooltip-content-grid[data-state="open"] {
234
+ grid-template-rows: 1fr;
235
+ }
236
+
237
+ .tooltip-content-inner {
238
+ overflow: hidden;
239
+ min-height: 0; /* Crítico para que grid trick funcione */
240
+ }
241
+
242
+ /* ============================================================================
243
+ UTILITY CLASSES
244
+ ============================================================================ */
245
+
246
+ /**
247
+ * Contenedor con perspective para títulos crossfade
248
+ */
249
+ .tooltip-title-perspective {
250
+ perspective: 600px;
251
+ position: relative;
252
+ width: 100%;
253
+ height: 2rem;
254
+ overflow: hidden;
255
+ }
256
+
257
+ /**
258
+ * Disable animations durante hover rápido (opcional)
259
+ * Usar con cuidado: puede causar flickering
260
+ */
261
+ .tooltip-no-animations * {
262
+ animation: none !important;
263
+ transition: none !important;
264
+ }
265
+
266
+ /* ============================================================================
267
+ DEBUG HELPERS
268
+ ============================================================================ */
269
+
270
+ /**
271
+ * Visualización de estados en debug mode
272
+ */
273
+ [data-tooltip-debug="true"] .sidebar-sublink[data-state]::before {
274
+ content: attr(data-state);
275
+ position: absolute;
276
+ top: 0;
277
+ right: 0;
278
+ font-size: 8px;
279
+ background: rgba(255, 0, 0, 0.8);
280
+ color: white;
281
+ padding: 2px 4px;
282
+ border-radius: 2px;
283
+ pointer-events: none;
284
+ z-index: 1000;
285
+ }
286
+
287
+ [data-tooltip-debug="true"] .tooltip-title[data-direction]::after {
288
+ content: "dir:" attr(data-direction);
289
+ position: absolute;
290
+ bottom: 0;
291
+ left: 0;
292
+ font-size: 8px;
293
+ background: rgba(0, 0, 255, 0.8);
294
+ color: white;
295
+ padding: 2px 4px;
296
+ border-radius: 2px;
297
+ pointer-events: none;
298
+ z-index: 1000;
299
+ }
300
+
301
+ /* ============================================================================
302
+ PERFORMANCE OPTIMIZATIONS
303
+ ============================================================================ */
304
+
305
+ /**
306
+ * GPU acceleration hints
307
+ */
308
+ .sidebar-sublink[data-state],
309
+ .tooltip-title[data-state],
310
+ .title-cube {
311
+ will-change: transform, opacity;
312
+ }
313
+
314
+ /**
315
+ * Contain layout/paint/style para mejor performance
316
+ */
317
+ .tooltip-content-grid {
318
+ contain: layout style paint;
319
+ }
320
+
321
+ /**
322
+ * Reduce motion para accesibilidad
323
+ */
324
+ @media (prefers-reduced-motion: reduce) {
325
+ .sidebar-sublink[data-state],
326
+ .tooltip-title[data-state],
327
+ .title-cube,
328
+ .tooltip-content-grid {
329
+ animation-duration: 0.01ms !important;
330
+ animation-iteration-count: 1 !important;
331
+ transition-duration: 0.01ms !important;
332
+ }
333
+ }
334
+
335
+
336
+
337
+ /* react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.css */
338
+
339
+ /**
340
+ * TerminalFilterDropdown Styles.
341
+ *
342
+ * Uses CSS Anchor Positioning API for dropdown placement.
343
+ * Button acts as anchor, dropdown is positioned relative to it
344
+ * with automatic flip behavior at viewport edges.
345
+ *
346
+ * @module components/devenv/terminal/panel/terminal-filter-dropdown/styles
347
+ */
348
+
349
+ /* Trigger button - acts as CSS anchor */
350
+ .triggerButton {
351
+ anchor-name: --filter-dropdown-anchor;
352
+ }
353
+
354
+ /* Dropdown menu - anchored to trigger button */
355
+ .dropdownMenu {
356
+ position-anchor: --filter-dropdown-anchor;
357
+ position: fixed;
358
+
359
+ /* Position below and left-aligned */
360
+ left: anchor(left);
361
+ top: anchor(bottom);
362
+ margin-top: 4px;
363
+
364
+ /* Flip to above if no room below */
365
+ position-try-fallbacks: flip-block, flip-inline;
366
+
367
+ min-width: 180px;
368
+ z-index: 50;
369
+
370
+ /* Hidden by default */
371
+ display: none;
372
+ opacity: 0;
373
+ transform: translateY(-4px);
374
+ transition: opacity 0.15s ease-out, transform 0.15s ease-out;
375
+ pointer-events: none;
376
+ }
377
+
378
+ .dropdownMenu[data-open="true"] {
379
+ display: block;
380
+ opacity: 1;
381
+ transform: translateY(0);
382
+ pointer-events: auto;
383
+ }
384
+
385
+ /* Fallback for browsers without CSS Anchor Positioning */
386
+ @supports not (anchor-name: none) {
387
+ .dropdownMenu {
388
+ position: absolute;
389
+ left: 0;
390
+ top: calc(100% + 4px);
391
+ z-index: 50;
392
+ }
393
+
394
+ .dropdownMenu[data-open="true"] {
395
+ display: block;
396
+ }
397
+ }
398
+
399
+
400
+
401
+ /* react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.css */
402
+
403
+ /**
404
+ * TerminalSessionTabs Dropdown Styles.
405
+ *
406
+ * Uses CSS Anchor Positioning API for the "add container" dropdown.
407
+ * The + button acts as anchor, dropdown is positioned below it
408
+ * with automatic flip behavior at viewport edges.
409
+ *
410
+ * @module components/devenv/terminal/panel/terminal-session-tabs/styles
411
+ */
412
+
413
+ /* + button - acts as CSS anchor */
414
+ .addButton {
415
+ anchor-name: --session-tabs-add-anchor;
416
+ }
417
+
418
+ /* Container dropdown - anchored to + button */
419
+ .containerDropdown {
420
+ position-anchor: --session-tabs-add-anchor;
421
+ position: fixed;
422
+
423
+ /* Position below and left-aligned */
424
+ left: anchor(left);
425
+ top: anchor(bottom);
426
+ margin-top: 4px;
427
+
428
+ /* Flip to above if no room below */
429
+ position-try-fallbacks: flip-block, flip-inline;
430
+
431
+ min-width: 200px;
432
+ z-index: 50;
433
+
434
+ /* Hidden by default */
435
+ display: none;
436
+ opacity: 0;
437
+ transform: translateY(-4px);
438
+ transition: opacity 0.15s ease-out, transform 0.15s ease-out;
439
+ pointer-events: none;
440
+ }
441
+
442
+ .containerDropdown[data-open="true"] {
443
+ display: block;
444
+ opacity: 1;
445
+ transform: translateY(0);
446
+ pointer-events: auto;
447
+ }
448
+
449
+ /* Fallback for browsers without CSS Anchor Positioning */
450
+ @supports not (anchor-name: none) {
451
+ .containerDropdown {
452
+ position: absolute;
453
+ left: 0;
454
+ top: calc(100% + 4px);
455
+ z-index: 50;
456
+ }
457
+
458
+ .containerDropdown[data-open="true"] {
459
+ display: block;
460
+ }
461
+ }
462
+
463
+
464
+
465
+ /* react-ui/components/MorphingPopover/morphing-popover.module.css */
466
+
467
+ /* CSS Variables for anchor positioning */
468
+ .morphingPopoverContainer {
469
+ position: relative;
470
+ display: inline-block;
471
+ --anchor-name: morphing-trigger;
472
+ --target-width: 220px;
473
+ --target-height: 120px;
474
+ --transition-duration: 0.2s;
475
+ }
476
+
477
+ /* Trigger button styles */
478
+ .morphingTrigger {
479
+ anchor-name: var(--anchor-name);
480
+ width: 44px;
481
+ aspect-ratio: 1;
482
+ border-radius: 50%;
483
+ display: grid;
484
+ place-items: center;
485
+ font-size: 24px;
486
+ cursor: pointer;
487
+ border: none;
488
+ background: transparent;
489
+ transition: background-color 0.2s;
490
+ }
491
+
492
+ .morphingTrigger:hover {
493
+ background-color: hsl(var(--muted) / 0.5);
494
+ }
495
+
496
+ /* Popover styles - anchored to trigger by default */
497
+ .morphingPopover {
498
+ position-anchor: var(--anchor-name);
499
+ left: anchor(left);
500
+ top: anchor(top);
501
+ width: anchor-size(width);
502
+ min-height: 0;
503
+ border-radius: 50%;
504
+ overflow: hidden;
505
+ padding: 0;
506
+ height: anchor-size(height);
507
+ transition-behavior: allow-discrete;
508
+ transition-property: display, overlay, width, height, top,
509
+ border-radius, left, position-anchor, transform, opacity;
510
+ transition-duration: var(--transition-duration);
511
+ transition-timing-function: ease-out;
512
+ transform-origin: center center;
513
+ opacity: 0;
514
+ }
515
+
516
+ /* When popover is open - expand to target size */
517
+ .morphingPopover:popover-open {
518
+ position-anchor: fixed;
519
+ left: 50%;
520
+ top: 50%;
521
+ transform: translate(-50%, -50%);
522
+ width: var(--target-width);
523
+ height: var(--target-height);
524
+ border-radius: 12px;
525
+ opacity: 1;
526
+ border: 1px solid hsl(var(--border));
527
+ background: hsl(var(--background));
528
+ box-shadow: 0 10px 40px -10px hsl(var(--foreground) / 0.3);
529
+ }
530
+
531
+ /* Starting style for animation - browser support required */
532
+ @starting-style {
533
+ .morphingPopover:popover-open {
534
+ position-anchor: var(--anchor-name);
535
+ left: anchor(left);
536
+ top: anchor(top);
537
+ transform: none;
538
+ border-radius: 50%;
539
+ width: anchor-size(width);
540
+ height: anchor-size(height);
541
+ opacity: 0;
542
+ }
543
+ }
544
+
545
+ /* Fallback for browsers without anchor positioning */
546
+ @supports not (anchor-name: none) {
547
+ .morphingPopover {
548
+ position: fixed;
549
+ left: 50%;
550
+ top: 50%;
551
+ transform: translate(-50%, -50%) scale(0.8);
552
+ opacity: 0;
553
+ pointer-events: none;
554
+ }
555
+
556
+ .morphingPopover:popover-open {
557
+ transform: translate(-50%, -50%) scale(1);
558
+ opacity: 1;
559
+ pointer-events: auto;
560
+ }
561
+
562
+ @starting-style {
563
+ .morphingPopover:popover-open {
564
+ transform: translate(-50%, -50%) scale(0.8);
565
+ opacity: 0;
128
566
  }
129
- }
567
+ }
568
+ }
569
+
570
+ /* Variant: Morphing to a specific target element */
571
+ .morphingPopoverTargetContainer {
572
+ position: relative;
573
+ display: inline-block;
574
+ --anchor-name: morphing-trigger;
575
+ --target-anchor-name: morphing-target;
576
+ --transition-duration: 0.2s;
577
+ }
578
+
579
+ .morphingPopoverTarget {
580
+ position-anchor: var(--anchor-name);
581
+ left: anchor(left);
582
+ top: anchor(top);
583
+ width: anchor-size(width);
584
+ min-height: 0;
585
+ border-radius: 50%;
586
+ overflow: hidden;
587
+ padding: 0;
588
+ height: anchor-size(height);
589
+ transition-behavior: allow-discrete;
590
+ transition-property: display, overlay, width, height, top,
591
+ border-radius, left, position-anchor, transform, opacity;
592
+ transition-duration: var(--transition-duration);
593
+ transition-timing-function: ease-out;
594
+ }
595
+
596
+ .morphingPopoverTarget:popover-open {
597
+ position-anchor: var(--target-anchor-name);
598
+ left: anchor(left);
599
+ top: anchor(top);
600
+ border-radius: 12px;
601
+ min-width: 200px;
602
+ min-height: 120px;
603
+ border: 1px solid hsl(var(--border));
604
+ background: hsl(var(--background));
605
+ box-shadow: 0 10px 40px -10px hsl(var(--foreground) / 0.3);
606
+ opacity: 1;
607
+ }
608
+
609
+ @starting-style {
610
+ .morphingPopoverTarget:popover-open {
611
+ position-anchor: var(--anchor-name);
612
+ left: anchor(left);
613
+ top: anchor(top);
614
+ border-radius: 50%;
615
+ width: anchor-size(width);
616
+ height: anchor-size(height);
617
+ opacity: 0;
618
+ }
619
+ }
620
+
621
+
622
+
623
+ /* react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module.css */
624
+
625
+ /**
626
+ * View Transitions API - Default transition styles.
627
+ *
628
+ * These styles apply to all view-transition pseudo-elements by default,
629
+ * eliminating the need for dynamic style injection based on transition names.
630
+ *
631
+ * Usage: Apply `view-transition-name` via inline style or CSS variable:
632
+ * <div style={{ viewTransitionName: 'hero' }}>...</div>
633
+ *
634
+ * Or via CSS:
635
+ * .my-element { view-transition-name: hero; }
636
+ */
637
+
638
+ /* Default animation for all view transitions */
639
+ ::view-transition-old(*),
640
+ ::view-transition-new(*) {
641
+ animation-duration: 300ms;
642
+ animation-timing-function: ease-out;
643
+ }
644
+
645
+
646
+
647
+ /* react-ui/ui/DynamicToggle/DynamicToggle.css */
648
+
649
+ /**
650
+ * DynamicToggle v2 — CSS state transitions.
651
+ *
652
+ * Rules requiring :has(), container queries, clip-path, or pseudo-elements.
653
+ * Layout, colors, sizing in Tailwind (DynamicToggle.styles.ts).
654
+ *
655
+ * @import '@mks2508/mks-ui/react/ui/DynamicToggle/DynamicToggle.module.css';
656
+ */
657
+
658
+ /* ── Variables ── */
659
+ [data-slot="dt-root"] {
660
+ --dt-dur: 0.22s;
661
+ --dt-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
662
+ --dt-fade: 0.45;
663
+ --dt-indicator-dur: 0.3s;
664
+ --dt-indicator-ease: cubic-bezier(0.4, 0, 0.2, 1);
665
+ }
666
+
667
+ /* ── Track: explicit row prevents h-full items from overflowing container ── */
668
+ [data-slot="dt-root"] [data-slot="dt-track"] {
669
+ grid-template-rows: minmax(0, 1fr);
670
+ }
671
+
672
+ /* ── Top-level option spans 2 grid cols ── */
673
+ [data-slot="dt-root"] [data-slot="dt-track"] > label {
674
+ grid-column: span 2;
675
+ }
676
+
677
+ /* ── Primary option text ── */
678
+ [data-slot="dt-root"] [data-slot="dt-track"]:has(> input:checked) > label {
679
+ color: var(--accent-foreground);
680
+ z-index: 2;
681
+ }
682
+ [data-slot="dt-root"] [data-slot="dt-track"]:not(:has(> input:checked)) > label {
683
+ color: var(--foreground);
684
+ opacity: var(--dt-fade);
685
+ }
686
+
687
+ /* ── Group: container queries ── */
688
+ [data-slot="dt-root"] [data-slot="dt-group"] {
689
+ container-type: size;
690
+ overflow: hidden;
691
+ }
692
+
693
+ /* ══════════════════════════════════════════════════════════
694
+ * INDICATOR POSITIONING
695
+ *
696
+ * Modern: CSS Anchor Positioning — indicator follows active option
697
+ * Fallback: translate-based positioning for older browsers
698
+ * ══════════════════════════════════════════════════════════ */
699
+
700
+ /* ── Anchor-based indicator (requires full anchor API) ── */
701
+ @supports (anchor-scope: all) {
702
+ /* Scope anchors per toggle instance */
703
+ [data-slot="dt-root"]:not([data-indicator="translate"]) {
704
+ anchor-scope: --dt-active;
705
+ }
706
+
707
+ /* Active option becomes the anchor via native :checked */
708
+ [data-slot="dt-root"]:not([data-indicator="translate"]) [data-slot="dt-track"] > label:has(+ input:checked) {
709
+ anchor-name: --dt-active;
710
+ }
711
+ [data-slot="dt-root"]:not([data-indicator="translate"]) [data-slot="dt-group"] > label:has(+ input:checked) {
712
+ anchor-name: --dt-active;
713
+ }
714
+
715
+ /* Single unified indicator: morphs from full-width to half-width */
716
+ [data-slot="dt-root"]:not([data-indicator="translate"]) [data-slot="dt-indicator"] {
717
+ position-anchor: --dt-active;
718
+ top: anchor(top);
719
+ right: anchor(right);
720
+ bottom: anchor(bottom);
721
+ left: anchor(left);
722
+ translate: none;
723
+ width: auto;
724
+ transition:
725
+ top var(--dt-indicator-dur) var(--dt-indicator-ease),
726
+ right var(--dt-indicator-dur) var(--dt-indicator-ease),
727
+ bottom var(--dt-indicator-dur) var(--dt-indicator-ease),
728
+ left var(--dt-indicator-dur) var(--dt-indicator-ease);
729
+ }
730
+
731
+ /* Hide the group indicator — unified indicator handles everything */
732
+ [data-slot="dt-root"]:not([data-indicator="translate"]) [data-slot="dt-group-indicator"] {
733
+ display: none;
734
+ }
735
+ }
736
+
737
+ /* ── Inset-based fallback (older browsers) — same morph as anchor but hardcoded ── */
738
+ @supports not (anchor-scope: all) {
739
+ /* Unified indicator: left/right transition morphs width + position */
740
+ [data-slot="dt-root"] [data-slot="dt-indicator"] {
741
+ left: 50%;
742
+ right: 0;
743
+ width: auto;
744
+ translate: none;
745
+ transition:
746
+ left var(--dt-indicator-dur) var(--dt-indicator-ease),
747
+ right var(--dt-indicator-dur) var(--dt-indicator-ease);
748
+ }
749
+ /* Top-level checked: indicator covers left half */
750
+ [data-slot="dt-root"] [data-slot="dt-track"]:has(> input:checked) [data-slot="dt-indicator"] {
751
+ left: 0;
752
+ right: 50%;
753
+ }
754
+ /* Group option 1 checked: indicator at 3rd quarter */
755
+ [data-slot="dt-root"] [data-slot="dt-group"]:has(input:nth-of-type(1):checked) ~ [data-slot="dt-indicator"],
756
+ [data-slot="dt-root"] [data-slot="dt-track"]:has([data-slot="dt-group"] input:nth-of-type(1):checked) [data-slot="dt-indicator"] {
757
+ left: 50%;
758
+ right: 25%;
759
+ }
760
+ /* Group option 2 checked: indicator at 4th quarter */
761
+ [data-slot="dt-root"] [data-slot="dt-group"]:has(input:nth-of-type(2):checked) ~ [data-slot="dt-indicator"],
762
+ [data-slot="dt-root"] [data-slot="dt-track"]:has([data-slot="dt-group"] input:nth-of-type(2):checked) [data-slot="dt-indicator"] {
763
+ left: 75%;
764
+ right: 0;
765
+ }
766
+ /* Hide group indicator — unified indicator handles everything */
767
+ [data-slot="dt-root"] [data-slot="dt-group-indicator"] {
768
+ display: none;
769
+ }
770
+ }
771
+
772
+ /* ── Force inset mode via data-indicator="translate" (works regardless of @supports) ── */
773
+ [data-slot="dt-root"][data-indicator="translate"] [data-slot="dt-indicator"] {
774
+ left: 50%;
775
+ right: 0;
776
+ width: auto;
777
+ translate: none;
778
+ transition:
779
+ left var(--dt-indicator-dur) var(--dt-indicator-ease),
780
+ right var(--dt-indicator-dur) var(--dt-indicator-ease);
781
+ }
782
+ [data-slot="dt-root"][data-indicator="translate"] [data-slot="dt-track"]:has(> input:checked) [data-slot="dt-indicator"] {
783
+ left: 0;
784
+ right: 50%;
785
+ }
786
+ [data-slot="dt-root"][data-indicator="translate"] [data-slot="dt-track"]:has([data-slot="dt-group"] input:nth-of-type(1):checked) [data-slot="dt-indicator"] {
787
+ left: 50%;
788
+ right: 25%;
789
+ }
790
+ [data-slot="dt-root"][data-indicator="translate"] [data-slot="dt-track"]:has([data-slot="dt-group"] input:nth-of-type(2):checked) [data-slot="dt-indicator"] {
791
+ left: 75%;
792
+ right: 0;
793
+ }
794
+ [data-slot="dt-root"][data-indicator="translate"] [data-slot="dt-group-indicator"] {
795
+ display: none;
796
+ }
797
+
798
+ /* ══════════════════════════════════════════════════════════
799
+ * GROUP COLLAPSED STATE
800
+ *
801
+ * ::before = title text (via data-label attr)
802
+ * ::after = combined opts text (via data-opts attr)
803
+ * <label>s = controlled by data-collapsed mode
804
+ *
805
+ * 3 modes: title | opts | title-opts (default)
806
+ * ══════════════════════════════════════════════════════════ */
807
+
808
+ /* ── ::before — group title ── */
809
+ [data-slot="dt-group"]::before {
810
+ content: attr(data-label);
811
+ position: absolute;
812
+ left: 50%;
813
+ top: 50%;
814
+ translate: -50% -80%;
815
+ color: var(--foreground);
816
+ font-size: inherit;
817
+ font-weight: 500;
818
+ z-index: 2;
819
+ white-space: nowrap;
820
+ pointer-events: none;
821
+ transition:
822
+ scale var(--dt-dur) var(--dt-ease),
823
+ translate var(--dt-dur) var(--dt-ease),
824
+ opacity var(--dt-dur) var(--dt-ease);
825
+ }
826
+
827
+ /* ── ::after — combined opts text ── */
828
+ [data-slot="dt-group"]::after {
829
+ content: attr(data-opts);
830
+ position: absolute;
831
+ left: 50%;
832
+ top: 50%;
833
+ translate: -50% 20%;
834
+ color: var(--muted-foreground);
835
+ font-size: 0.85em;
836
+ opacity: 0.6;
837
+ z-index: 2;
838
+ white-space: nowrap;
839
+ pointer-events: none;
840
+ transition: opacity var(--dt-dur) var(--dt-ease);
841
+ }
842
+ [data-slot="dt-group"]:not([data-opts])::after {
843
+ content: none;
844
+ }
845
+
846
+ /* ── Group labels — transition props ── */
847
+ [data-slot="dt-root"] [data-slot="dt-group"] label {
848
+ color: var(--muted-foreground);
849
+ cursor: pointer;
850
+ z-index: 2;
851
+ transition:
852
+ color var(--dt-dur) var(--dt-ease),
853
+ opacity var(--dt-dur) var(--dt-ease),
854
+ translate var(--dt-dur) var(--dt-ease);
855
+ }
856
+ [data-slot="dt-root"] [data-slot="dt-group"] label span {
857
+ display: grid;
858
+ place-items: center;
859
+ height: 100%;
860
+ width: 100%;
861
+ border-radius: var(--dt-radius, 9999px);
862
+ transition: scale var(--dt-dur) var(--dt-ease);
863
+ }
864
+
865
+ /* ── Collapsed mode: "title" — only ::before, labels slide+scale out ── */
866
+ [data-slot="dt-group"][data-collapsed="title"]::before {
867
+ translate: -50% -50%;
868
+ }
869
+ [data-slot="dt-group"][data-collapsed="title"]::after {
870
+ display: none;
871
+ }
872
+ [data-slot="dt-group"][data-collapsed="title"]:not(:has(input:checked)) label {
873
+ opacity: 0;
874
+ translate: 0 30%;
875
+ }
876
+ [data-slot="dt-group"][data-collapsed="title"]:not(:has(input:checked)) label span {
877
+ scale: 0.5;
878
+ }
879
+
880
+ /* ── Collapsed mode: "opts" — only ::after, labels slide+scale out ── */
881
+ [data-slot="dt-group"][data-collapsed="opts"]::before {
882
+ display: none;
883
+ }
884
+ [data-slot="dt-group"][data-collapsed="opts"]::after {
885
+ translate: -50% -50%;
886
+ font-size: inherit;
887
+ opacity: 0.7;
888
+ }
889
+ [data-slot="dt-group"][data-collapsed="opts"]:not(:has(input:checked)) label {
890
+ opacity: 0;
891
+ translate: 0 30%;
892
+ }
893
+ [data-slot="dt-group"][data-collapsed="opts"]:not(:has(input:checked)) label span {
894
+ scale: 0.5;
895
+ }
896
+
897
+ /* ── Collapsed mode: "title-opts" — WIP: disabled, falls back to "title" behavior ── */
898
+ /* TODO: title-opts needs a redesign — title (::before) and scaled labels overlap
899
+ at all container sizes. The codepen original morph relied on specific dimensions
900
+ that don't translate to the component's size variants. Needs a different approach
901
+ (e.g., crossfade, flex layout, or JS-measured positions). */
902
+ [data-slot="dt-group"][data-collapsed="title-opts"]::after {
903
+ content: none;
904
+ }
905
+ [data-slot="dt-group"][data-collapsed="title-opts"]::before {
906
+ translate: -50% -50%;
907
+ }
908
+ [data-slot="dt-group"][data-collapsed="title-opts"]:not(:has(input:checked)) label {
909
+ opacity: 0;
910
+ translate: 0 30%;
911
+ }
912
+
913
+ /* ── When group expanded ── */
914
+ [data-slot="dt-group"]:has(input:checked)::before {
915
+ translate: -50% -250%;
916
+ scale: 0.85;
917
+ }
918
+ [data-slot="dt-group"]:has(input:checked)::after {
919
+ opacity: 0;
920
+ }
921
+ [data-slot="dt-group"]:has(input:checked) label {
922
+ opacity: 0.75;
923
+ color: var(--muted-foreground);
924
+ translate: 0 0;
925
+ }
926
+ [data-slot="dt-group"]:has(input:checked) label span {
927
+ scale: 1;
928
+ }
929
+ [data-slot="dt-group"]:has(input:nth-of-type(1):checked) label:nth-of-type(1),
930
+ [data-slot="dt-group"]:has(input:nth-of-type(2):checked) label:nth-of-type(2) {
931
+ color: var(--foreground);
932
+ opacity: 1;
933
+ }
934
+
935
+ /* ══════════════════════════════════════════════════════════
936
+ * GROUP LABEL / BUBBLE (above or below the pill)
937
+ *
938
+ * Positioned via CSS. In filter/path morph modes, rendered with GooeyCanvas.
939
+ * In none mode, simple CSS-driven show/hide.
940
+ * bubblePosition: top | bottom (no left/right in v2)
941
+ * ══════════════════════════════════════════════════════════ */
942
+
943
+ [data-slot="dt-group-label"] {
944
+ display: grid;
945
+ grid-template-rows: 0fr;
946
+ left: 20%;
947
+ right: 20%;
948
+ transition:
949
+ grid-template-rows calc(var(--dt-dur) * 1.5) var(--dt-ease),
950
+ opacity var(--dt-dur) var(--dt-ease);
951
+ opacity: 0;
952
+ background: var(--card);
953
+ border: 1px solid var(--border);
954
+ z-index: 3;
955
+ transform: translateZ(0);
956
+ -webkit-transform: translateZ(0);
957
+ }
958
+ [data-slot="dt-group-label"] > span {
959
+ overflow: hidden;
960
+ min-height: 0;
961
+ display: flex;
962
+ align-items: center;
963
+ justify-content: center;
964
+ padding: 0 0.75em;
965
+ height: calc(var(--dt-h, 38px) * 0.4);
966
+ box-sizing: border-box;
967
+ }
968
+
969
+ /* Top position */
970
+ [data-slot="dt-group-label"][data-bubble-position="top"] {
971
+ bottom: 100%;
972
+ border-radius: calc(var(--dt-h, 38px) * 0.2) calc(var(--dt-h, 38px) * 0.2) 0 0;
973
+ border-bottom: none;
974
+ margin-bottom: -1px;
975
+ }
976
+
977
+ /* Bottom position */
978
+ [data-slot="dt-group-label"][data-bubble-position="bottom"] {
979
+ top: 100%;
980
+ border-radius: 0 0 calc(var(--dt-h, 38px) * 0.2) calc(var(--dt-h, 38px) * 0.2);
981
+ border-top: none;
982
+ margin-top: -1px;
983
+ }
984
+
985
+ /* When group active → group label grows (vertical: top/bottom) */
986
+ [data-slot="dt-root"]:not(:has([data-slot="dt-track"] > input:checked)) [data-slot="dt-group-label"][data-bubble-position="top"],
987
+ [data-slot="dt-root"]:not(:has([data-slot="dt-track"] > input:checked)) [data-slot="dt-group-label"][data-bubble-position="bottom"] {
988
+ grid-template-rows: 1fr;
989
+ opacity: 1;
990
+ }
991
+ [data-slot="dt-root"]:not(:has([data-slot="dt-track"] > input:checked)) [data-slot="dt-group-label"][data-bubble-position="top"] > span,
992
+ [data-slot="dt-root"]:not(:has([data-slot="dt-track"] > input:checked)) [data-slot="dt-group-label"][data-bubble-position="bottom"] > span {
993
+ padding: 0.35em 0.75em;
994
+ }
995
+
996
+ /* ── Filter morph mode ── */
997
+ [data-slot="dt-root"][data-morph="filter"] [data-slot="dt-group-label"] {
998
+ border: none;
999
+ }
1000
+ [data-slot="dt-root"][data-morph="filter"] [data-slot="dt-track"] {
1001
+ position: relative;
1002
+ z-index: 1;
1003
+ }
1004
+
1005
+ /* ── Filter morph: ::before hides on expand, gooey canvas handles junction ── */
1006
+ [data-slot="dt-root"][data-morph="filter"] [data-slot="dt-group"]:has(input:checked)::before {
1007
+ opacity: 0;
1008
+ translate: -50% -80%;
1009
+ scale: 1;
1010
+ }
1011
+
1012
+ /* ── Path morph mode ── */
1013
+ [data-slot="dt-root"][data-morph="path"] [data-slot="dt-track"] {
1014
+ position: relative;
1015
+ z-index: 1;
1016
+ }
1017
+
1018
+
1019
+
1020
+ /* react-ui/ui/Tabs/Tabs.css */
1021
+
1022
+ /**
1023
+ * Tabs CSS Anchor Positioning.
1024
+ *
1025
+ * Zero-JS position tracking for the sliding indicator using CSS Anchor API.
1026
+ * The indicator automatically follows the active tab via anchor positioning.
1027
+ */
1028
+
1029
+ /* Scope anchors per Tabs instance */
1030
+ [data-slot="tabs-list"] {
1031
+ anchor-scope: --tabs-active;
1032
+ }
1033
+
1034
+ /* Active tab becomes the anchor */
1035
+ [data-slot="tabs-tab"][data-active] {
1036
+ anchor-name: --tabs-active;
1037
+ }
1038
+
1039
+ /* Indicator follows the active anchor */
1040
+ [data-slot="tabs-indicator"] {
1041
+ position-anchor: --tabs-active;
1042
+ left: anchor(left);
1043
+ right: anchor(right);
1044
+ transition:
1045
+ top 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1046
+ left 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1047
+ right 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1048
+ bottom 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1049
+ width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1050
+ height 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
1051
+ }
1052
+
1053
+ /* Respect reduced motion preference */
1054
+ @media (prefers-reduced-motion: reduce) {
1055
+ [data-slot="tabs-indicator"] {
1056
+ transition-duration: 0ms;
1057
+ }
1058
+ }
1059
+