@mks2508/mks-ui 0.6.8 → 0.8.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 (494) hide show
  1. package/dist/css/blocks-Sidebar-animations-tooltip.css +330 -0
  2. package/dist/css/primitives-DotMatrix-dot.css +364 -0
  3. package/dist/css/primitives-GooeyMorphingSurface-gooey.css +112 -0
  4. package/dist/css/ui-GooeyButton-gooey.css +43 -0
  5. package/dist/index.css +1113 -352
  6. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.d.ts +64 -0
  7. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.d.ts.map +1 -0
  8. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.js +301 -0
  9. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.d.ts +94 -0
  10. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.d.ts.map +1 -0
  11. package/dist/react-ui/blocks/BottomNavBar/MobileBottomNav.styles.js +216 -0
  12. package/dist/react-ui/blocks/BottomNavBar/index.d.ts +10 -0
  13. package/dist/react-ui/blocks/BottomNavBar/index.d.ts.map +1 -0
  14. package/dist/react-ui/blocks/BottomNavBar/index.js +4 -0
  15. package/dist/react-ui/blocks/BottomNavBar/types.d.ts +362 -0
  16. package/dist/react-ui/blocks/BottomNavBar/types.d.ts.map +1 -0
  17. package/dist/react-ui/blocks/BottomNavBar/types.js +175 -0
  18. package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.d.ts +73 -0
  19. package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.d.ts.map +1 -0
  20. package/dist/react-ui/blocks/BottomNavBar/useIOSSafariFix.js +178 -0
  21. package/dist/react-ui/blocks/Sidebar/Sidebar.constants.d.ts +285 -0
  22. package/dist/react-ui/blocks/Sidebar/Sidebar.constants.d.ts.map +1 -0
  23. package/dist/react-ui/blocks/Sidebar/Sidebar.constants.js +208 -0
  24. package/dist/react-ui/blocks/Sidebar/Sidebar.d.ts +80 -0
  25. package/dist/react-ui/blocks/Sidebar/Sidebar.d.ts.map +1 -0
  26. package/dist/react-ui/blocks/Sidebar/Sidebar.js +114 -0
  27. package/dist/react-ui/blocks/Sidebar/Sidebar.styles.d.ts +77 -0
  28. package/dist/react-ui/blocks/Sidebar/Sidebar.styles.d.ts.map +1 -0
  29. package/dist/react-ui/blocks/Sidebar/Sidebar.styles.js +274 -0
  30. package/dist/react-ui/blocks/Sidebar/Sidebar.types.d.ts +546 -0
  31. package/dist/react-ui/blocks/Sidebar/Sidebar.types.d.ts.map +1 -0
  32. package/dist/react-ui/blocks/Sidebar/Sidebar.types.js +149 -0
  33. package/dist/react-ui/blocks/Sidebar/SidebarContent.d.ts +46 -0
  34. package/dist/react-ui/blocks/Sidebar/SidebarContent.d.ts.map +1 -0
  35. package/dist/react-ui/blocks/Sidebar/SidebarContent.js +86 -0
  36. package/dist/react-ui/blocks/Sidebar/SidebarContext.d.ts +85 -0
  37. package/dist/react-ui/blocks/Sidebar/SidebarContext.d.ts.map +1 -0
  38. package/dist/react-ui/blocks/Sidebar/SidebarContext.js +178 -0
  39. package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.d.ts +31 -0
  40. package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.d.ts.map +1 -0
  41. package/dist/react-ui/blocks/Sidebar/SidebarFluidIndicator.js +37 -0
  42. package/dist/react-ui/blocks/Sidebar/SidebarIndicator.d.ts +59 -0
  43. package/dist/react-ui/blocks/Sidebar/SidebarIndicator.d.ts.map +1 -0
  44. package/dist/react-ui/blocks/Sidebar/SidebarIndicator.js +106 -0
  45. package/dist/react-ui/blocks/Sidebar/SidebarItem.d.ts +82 -0
  46. package/dist/react-ui/blocks/Sidebar/SidebarItem.d.ts.map +1 -0
  47. package/dist/react-ui/blocks/Sidebar/SidebarItem.js +209 -0
  48. package/dist/react-ui/blocks/Sidebar/SidebarNav.d.ts +48 -0
  49. package/dist/react-ui/blocks/Sidebar/SidebarNav.d.ts.map +1 -0
  50. package/dist/react-ui/blocks/Sidebar/SidebarNav.js +317 -0
  51. package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.d.ts +56 -0
  52. package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.d.ts.map +1 -0
  53. package/dist/react-ui/blocks/Sidebar/SidebarSafeArea.js +105 -0
  54. package/dist/react-ui/blocks/Sidebar/SidebarSubContent.d.ts +27 -0
  55. package/dist/react-ui/blocks/Sidebar/SidebarSubContent.d.ts.map +1 -0
  56. package/dist/react-ui/blocks/Sidebar/SidebarSubContent.js +31 -0
  57. package/dist/react-ui/blocks/Sidebar/SidebarSubLink.d.ts +20 -0
  58. package/dist/react-ui/blocks/Sidebar/SidebarSubLink.d.ts.map +1 -0
  59. package/dist/react-ui/blocks/Sidebar/SidebarSubLink.js +44 -0
  60. package/dist/react-ui/blocks/Sidebar/SidebarToggle.d.ts +52 -0
  61. package/dist/react-ui/blocks/Sidebar/SidebarToggle.d.ts.map +1 -0
  62. package/dist/react-ui/blocks/Sidebar/SidebarToggle.js +119 -0
  63. package/dist/react-ui/blocks/Sidebar/SidebarTooltip.d.ts +15 -0
  64. package/dist/react-ui/blocks/Sidebar/SidebarTooltip.d.ts.map +1 -0
  65. package/dist/react-ui/blocks/Sidebar/SidebarTooltip.js +177 -0
  66. package/dist/react-ui/blocks/Sidebar/animations/tooltip-keyframes.js +0 -0
  67. package/dist/react-ui/blocks/Sidebar/animations/tooltip.css +330 -0
  68. package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.d.ts +28 -0
  69. package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.d.ts.map +1 -0
  70. package/dist/react-ui/blocks/Sidebar/components/FluidHoverIndicator.js +74 -0
  71. package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.d.ts +18 -0
  72. package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.d.ts.map +1 -0
  73. package/dist/react-ui/blocks/Sidebar/hooks/use-fluid-animation.js +166 -0
  74. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.d.ts +48 -0
  75. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.d.ts.map +1 -0
  76. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarContext.js +59 -0
  77. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.d.ts +72 -0
  78. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.d.ts.map +1 -0
  79. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarIndicator.js +159 -0
  80. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.d.ts +51 -0
  81. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.d.ts.map +1 -0
  82. package/dist/react-ui/blocks/Sidebar/hooks/useSidebarKeyboard.js +150 -0
  83. package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.d.ts +42 -0
  84. package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.d.ts.map +1 -0
  85. package/dist/react-ui/blocks/Sidebar/hooks/useSubContent.js +49 -0
  86. package/dist/react-ui/blocks/Sidebar/index.d.ts +163 -0
  87. package/dist/react-ui/blocks/Sidebar/index.d.ts.map +1 -0
  88. package/dist/react-ui/blocks/Sidebar/index.js +19 -0
  89. package/dist/react-ui/blocks/Terminal/Terminal.tokens.d.ts +219 -0
  90. package/dist/react-ui/blocks/Terminal/Terminal.tokens.d.ts.map +1 -0
  91. package/dist/react-ui/blocks/Terminal/Terminal.tokens.js +253 -0
  92. package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts +2 -1
  93. package/dist/react-ui/blocks/Terminal/Terminal.types.d.ts.map +1 -1
  94. package/dist/react-ui/blocks/Terminal/TerminalDisplay.js +1 -1
  95. package/dist/react-ui/blocks/Terminal/TerminalDisplay.types.d.ts +1 -1
  96. package/dist/react-ui/blocks/Terminal/TerminalDisplay.types.d.ts.map +1 -1
  97. package/dist/react-ui/blocks/Terminal/chrome.js +2 -2
  98. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.d.ts +15 -0
  99. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.d.ts.map +1 -0
  100. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.styles.js +14 -0
  101. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.types.d.ts +106 -0
  102. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/LogLineBadges.types.d.ts.map +1 -0
  103. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.d.ts +89 -0
  104. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.d.ts.map +1 -0
  105. package/dist/react-ui/blocks/Terminal/components/LogLineBadges/index.js +136 -0
  106. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts +21 -7
  107. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.d.ts.map +1 -1
  108. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.js +81 -71
  109. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.d.ts +33 -0
  110. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.d.ts.map +1 -0
  111. package/dist/react-ui/blocks/Terminal/components/SyntaxHighlight.styles.js +51 -0
  112. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.d.ts +13 -0
  113. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.d.ts.map +1 -0
  114. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.styles.js +8 -0
  115. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.types.d.ts +29 -0
  116. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/TerminalLogBadge.types.d.ts.map +1 -0
  117. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.d.ts +26 -0
  118. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.d.ts.map +1 -0
  119. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge/index.js +40 -0
  120. package/dist/react-ui/blocks/Terminal/components/index.js +5 -2
  121. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.d.ts +12 -0
  122. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.d.ts.map +1 -0
  123. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.styles.js +13 -0
  124. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.types.d.ts +35 -0
  125. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/TerminalActionBar.types.d.ts.map +1 -0
  126. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.d.ts +75 -0
  127. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.d.ts.map +1 -0
  128. package/dist/react-ui/blocks/Terminal/controls/TerminalActionBar/index.js +115 -0
  129. package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.d.ts +122 -0
  130. package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.d.ts.map +1 -0
  131. package/dist/react-ui/blocks/Terminal/controls/TerminalAtoms.js +128 -0
  132. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.d.ts +12 -0
  133. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.d.ts.map +1 -0
  134. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.styles.js +12 -0
  135. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.types.d.ts +29 -0
  136. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/TerminalConnectionStatus.types.d.ts.map +1 -0
  137. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.d.ts +37 -0
  138. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.d.ts.map +1 -0
  139. package/dist/react-ui/blocks/Terminal/controls/TerminalConnectionStatus/index.js +74 -0
  140. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.d.ts +12 -0
  141. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.d.ts.map +1 -0
  142. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.styles.js +16 -0
  143. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.types.d.ts +32 -0
  144. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/TerminalFontControls.types.d.ts.map +1 -0
  145. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.d.ts +40 -0
  146. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.d.ts.map +1 -0
  147. package/dist/react-ui/blocks/Terminal/controls/TerminalFontControls/index.js +81 -0
  148. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.d.ts +12 -0
  149. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.d.ts.map +1 -0
  150. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.styles.js +13 -0
  151. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.types.d.ts +28 -0
  152. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/TerminalSplitButton.types.d.ts.map +1 -0
  153. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.d.ts +40 -0
  154. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.d.ts.map +1 -0
  155. package/dist/react-ui/blocks/Terminal/controls/TerminalSplitButton/index.js +108 -0
  156. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.d.ts +12 -0
  157. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.d.ts.map +1 -0
  158. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.styles.js +12 -0
  159. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.types.d.ts +31 -0
  160. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/TerminalStatusBar.types.d.ts.map +1 -0
  161. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.d.ts +73 -0
  162. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.d.ts.map +1 -0
  163. package/dist/react-ui/blocks/Terminal/controls/TerminalStatusBar/index.js +99 -0
  164. package/dist/react-ui/blocks/Terminal/controls/index.d.ts +16 -0
  165. package/dist/react-ui/blocks/Terminal/controls/index.d.ts.map +1 -0
  166. package/dist/react-ui/blocks/Terminal/controls/index.js +11 -0
  167. package/dist/react-ui/blocks/Terminal/display.d.ts +2 -2
  168. package/dist/react-ui/blocks/Terminal/display.d.ts.map +1 -1
  169. package/dist/react-ui/blocks/Terminal/display.js +4 -2
  170. package/dist/react-ui/blocks/Terminal/hooks/index.d.ts +9 -2
  171. package/dist/react-ui/blocks/Terminal/hooks/index.d.ts.map +1 -1
  172. package/dist/react-ui/blocks/Terminal/hooks/index.js +6 -0
  173. package/dist/react-ui/blocks/Terminal/hooks/useTerminal.d.ts +198 -0
  174. package/dist/react-ui/blocks/Terminal/hooks/useTerminal.d.ts.map +1 -0
  175. package/dist/react-ui/blocks/Terminal/hooks/useTerminal.js +198 -0
  176. package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.d.ts +81 -0
  177. package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.d.ts.map +1 -0
  178. package/dist/react-ui/blocks/Terminal/hooks/useTerminalConnection.js +115 -0
  179. package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.d.ts +54 -0
  180. package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.d.ts.map +1 -0
  181. package/dist/react-ui/blocks/Terminal/hooks/useTerminalDimensions.js +57 -0
  182. package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.d.ts +81 -0
  183. package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.d.ts.map +1 -0
  184. package/dist/react-ui/blocks/Terminal/hooks/useTerminalFontSize.js +102 -0
  185. package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.d.ts +78 -0
  186. package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.d.ts.map +1 -0
  187. package/dist/react-ui/blocks/Terminal/hooks/useTerminalKeyboardShortcuts.js +136 -0
  188. package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.d.ts +88 -0
  189. package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.d.ts.map +1 -0
  190. package/dist/react-ui/blocks/Terminal/hooks/useTerminalPaneManager.js +101 -0
  191. package/dist/react-ui/blocks/Terminal/index.d.ts +10 -6
  192. package/dist/react-ui/blocks/Terminal/index.d.ts.map +1 -1
  193. package/dist/react-ui/blocks/Terminal/index.js +43 -11
  194. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.d.ts.map +1 -1
  195. package/dist/react-ui/blocks/Terminal/panel/LogLinesViewer.js +8 -13
  196. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.d.ts +13 -0
  197. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.d.ts.map +1 -0
  198. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.styles.js +18 -0
  199. package/dist/react-ui/blocks/Terminal/panel/{TerminalDebugPanel.d.ts → TerminalDebugPanel/TerminalDebugPanel.types.d.ts} +19 -27
  200. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/TerminalDebugPanel.types.d.ts.map +1 -0
  201. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/index.d.ts +32 -0
  202. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel/index.d.ts.map +1 -0
  203. package/dist/react-ui/blocks/Terminal/panel/{TerminalDebugPanel.js → TerminalDebugPanel/index.js} +59 -38
  204. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.d.ts +13 -0
  205. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.d.ts.map +1 -0
  206. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.styles.js +17 -0
  207. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.types.d.ts +34 -0
  208. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/TerminalFilterDropdown.types.d.ts.map +1 -0
  209. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/index.d.ts +34 -0
  210. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/index.d.ts.map +1 -0
  211. package/dist/react-ui/blocks/Terminal/panel/{TerminalFilterDropdown.js → TerminalFilterDropdown/index.js} +29 -31
  212. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.css +60 -0
  213. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown/terminal-filter-dropdown.module.js +5 -0
  214. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.styles.d.ts +13 -0
  215. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.styles.d.ts.map +1 -0
  216. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.types.d.ts +34 -0
  217. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/TerminalFilterTabs.types.d.ts.map +1 -0
  218. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/index.d.ts +34 -0
  219. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs/index.d.ts.map +1 -0
  220. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.d.ts.map +1 -1
  221. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.js +5 -1
  222. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts +2 -1
  223. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanel.types.d.ts.map +1 -1
  224. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts +6 -3
  225. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.d.ts.map +1 -1
  226. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelRestty.js +43 -264
  227. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.d.ts +43 -0
  228. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.d.ts.map +1 -0
  229. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelWterm.js +248 -0
  230. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts +4 -2
  231. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.d.ts.map +1 -1
  232. package/dist/react-ui/blocks/Terminal/panel/TerminalInteractivePanelXterm.js +40 -150
  233. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.d.ts +26 -0
  234. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.d.ts.map +1 -0
  235. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.styles.js +30 -0
  236. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.types.d.ts +123 -0
  237. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/TerminalLogsPanel.types.d.ts.map +1 -0
  238. package/dist/react-ui/blocks/Terminal/panel/{TerminalLogsPanel.d.ts → TerminalLogsPanel/index.d.ts} +10 -21
  239. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel/index.d.ts.map +1 -0
  240. package/dist/react-ui/blocks/Terminal/panel/{TerminalLogsPanel.js → TerminalLogsPanel/index.js} +48 -81
  241. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts +6 -142
  242. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.types.d.ts.map +1 -1
  243. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts +1 -1
  244. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.d.ts.map +1 -1
  245. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.js +16 -16
  246. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.d.ts +1 -1
  247. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelChrome.styles.js +1 -1
  248. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.d.ts +21 -0
  249. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.d.ts.map +1 -0
  250. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.styles.js +21 -0
  251. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.types.d.ts +40 -0
  252. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/TerminalPanelFooter.types.d.ts.map +1 -0
  253. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.d.ts +37 -0
  254. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.d.ts.map +1 -0
  255. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter/index.js +127 -0
  256. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.d.ts +22 -0
  257. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.d.ts.map +1 -0
  258. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.styles.js +24 -0
  259. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.types.d.ts +43 -0
  260. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/TerminalPanelHeader.types.d.ts.map +1 -0
  261. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.d.ts +35 -0
  262. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.d.ts.map +1 -0
  263. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader/index.js +129 -0
  264. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.styles.d.ts +20 -0
  265. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.styles.d.ts.map +1 -0
  266. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.types.d.ts +72 -0
  267. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/TerminalPanelToolbar.types.d.ts.map +1 -0
  268. package/dist/react-ui/blocks/Terminal/panel/{TerminalPanelToolbar.d.ts → TerminalPanelToolbar/index.d.ts} +10 -4
  269. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar/index.d.ts.map +1 -0
  270. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.styles.d.ts +13 -0
  271. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.styles.d.ts.map +1 -0
  272. package/dist/react-ui/blocks/Terminal/panel/{TerminalSessionControl.d.ts → TerminalSessionControl/TerminalSessionControl.types.d.ts} +24 -30
  273. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/TerminalSessionControl.types.d.ts.map +1 -0
  274. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/index.d.ts +38 -0
  275. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl/index.d.ts.map +1 -0
  276. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.d.ts +23 -0
  277. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.d.ts.map +1 -0
  278. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.styles.js +27 -0
  279. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.types.d.ts +56 -0
  280. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/TerminalSessionTabs.types.d.ts.map +1 -0
  281. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/index.d.ts +40 -0
  282. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/index.d.ts.map +1 -0
  283. package/dist/react-ui/blocks/Terminal/panel/{TerminalSessionTabs.js → TerminalSessionTabs/index.js} +26 -31
  284. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.css +60 -0
  285. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs/terminal-session-tabs.module.js +5 -0
  286. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.d.ts +13 -0
  287. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.d.ts.map +1 -0
  288. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.styles.js +19 -0
  289. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.types.d.ts +20 -0
  290. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/TerminalSettingsPopover.types.d.ts.map +1 -0
  291. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.d.ts +25 -0
  292. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.d.ts.map +1 -0
  293. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover/index.js +217 -0
  294. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.d.ts +13 -0
  295. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.d.ts.map +1 -0
  296. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.styles.js +15 -0
  297. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.types.d.ts +28 -0
  298. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/TerminalThemeSelector.types.d.ts.map +1 -0
  299. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/index.d.ts +30 -0
  300. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector/index.d.ts.map +1 -0
  301. package/dist/react-ui/blocks/Terminal/panel/{TerminalThemeSelector.js → TerminalThemeSelector/index.js} +31 -46
  302. package/dist/react-ui/blocks/Terminal/restty/ResttyContext.d.ts +38 -0
  303. package/dist/react-ui/blocks/Terminal/restty/ResttyContext.d.ts.map +1 -0
  304. package/dist/react-ui/blocks/Terminal/restty/ResttyContext.js +47 -0
  305. package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.d.ts +50 -0
  306. package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.d.ts.map +1 -0
  307. package/dist/react-ui/blocks/Terminal/restty/ResttySessionProvider.js +60 -0
  308. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.d.ts +32 -0
  309. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.d.ts.map +1 -0
  310. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.js +278 -0
  311. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.types.d.ts +166 -0
  312. package/dist/react-ui/blocks/Terminal/restty/ResttyTerminal.types.d.ts.map +1 -0
  313. package/dist/react-ui/blocks/Terminal/restty/index.d.ts +20 -0
  314. package/dist/react-ui/blocks/Terminal/restty/index.d.ts.map +1 -0
  315. package/dist/react-ui/blocks/Terminal/restty/index.js +7 -0
  316. package/dist/react-ui/blocks/Terminal/restty/useResttyPane.d.ts +51 -0
  317. package/dist/react-ui/blocks/Terminal/restty/useResttyPane.d.ts.map +1 -0
  318. package/dist/react-ui/blocks/Terminal/restty/useResttyPane.js +61 -0
  319. package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.d.ts +39 -0
  320. package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.d.ts.map +1 -0
  321. package/dist/react-ui/blocks/Terminal/restty/useResttyPanes.js +48 -0
  322. package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.d.ts +29 -0
  323. package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.d.ts.map +1 -0
  324. package/dist/react-ui/blocks/Terminal/restty/useResttyPlugins.js +33 -0
  325. package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.d.ts +32 -0
  326. package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.d.ts.map +1 -0
  327. package/dist/react-ui/blocks/Terminal/restty/useResttyVisibility.js +67 -0
  328. package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.d.ts +83 -0
  329. package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.d.ts.map +1 -0
  330. package/dist/react-ui/blocks/Terminal/wterm/WtermJsonTransport.js +191 -0
  331. package/dist/react-ui/blocks/index.d.ts +2 -0
  332. package/dist/react-ui/blocks/index.d.ts.map +1 -1
  333. package/dist/react-ui/components/MorphingPopover/MorphingPopover.types.d.ts +8 -3
  334. package/dist/react-ui/components/MorphingPopover/MorphingPopover.types.d.ts.map +1 -1
  335. package/dist/react-ui/components/MorphingPopover/morphing-popover.module.css +154 -0
  336. package/dist/react-ui/icons/lucide-animated/terminal.d.ts +45 -13
  337. package/dist/react-ui/icons/lucide-animated/terminal.d.ts.map +1 -1
  338. package/dist/react-ui/icons/lucide-animated/terminal.js +118 -28
  339. package/dist/react-ui/index.d.ts +4 -0
  340. package/dist/react-ui/index.d.ts.map +1 -1
  341. package/dist/react-ui/index.js +63 -1
  342. package/dist/react-ui/primitives/DotMatrix/DotMatrix.types.d.ts +109 -0
  343. package/dist/react-ui/primitives/DotMatrix/DotMatrix.types.d.ts.map +1 -0
  344. package/dist/react-ui/primitives/DotMatrix/dot-matrix.js +0 -0
  345. package/dist/react-ui/primitives/DotMatrix/dot.css +364 -0
  346. package/dist/react-ui/primitives/DotMatrix/index.d.ts +7 -0
  347. package/dist/react-ui/primitives/DotMatrix/index.d.ts.map +1 -0
  348. package/dist/react-ui/primitives/DotMatrix/index.js +185 -0
  349. package/dist/react-ui/primitives/DotMatrix/patterns.d.ts +32 -0
  350. package/dist/react-ui/primitives/DotMatrix/patterns.d.ts.map +1 -0
  351. package/dist/react-ui/primitives/DotMatrix/patterns.js +175 -0
  352. package/dist/react-ui/primitives/GooeyMorphingSurface/GooeyMorphingSurface.types.d.ts +100 -0
  353. package/dist/react-ui/primitives/GooeyMorphingSurface/GooeyMorphingSurface.types.d.ts.map +1 -0
  354. package/dist/react-ui/primitives/GooeyMorphingSurface/GooeyMorphingSurface.types.js +20 -0
  355. package/dist/react-ui/primitives/GooeyMorphingSurface/gooey-morphing-surface.js +0 -0
  356. package/dist/react-ui/primitives/GooeyMorphingSurface/gooey-morphing.css +112 -0
  357. package/dist/react-ui/primitives/GooeyMorphingSurface/index.d.ts +36 -0
  358. package/dist/react-ui/primitives/GooeyMorphingSurface/index.d.ts.map +1 -0
  359. package/dist/react-ui/primitives/GooeyMorphingSurface/index.js +141 -0
  360. package/dist/react-ui/primitives/index.d.ts +2 -0
  361. package/dist/react-ui/primitives/index.d.ts.map +1 -1
  362. package/dist/react-ui/primitives/index.js +4 -0
  363. package/dist/react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module.css +20 -0
  364. package/dist/react-ui/ui/Badge/Badge.styles.d.ts +1 -1
  365. package/dist/react-ui/ui/Button/Button.styles.d.ts +2 -2
  366. package/dist/react-ui/ui/Button/Button.styles.d.ts.map +1 -1
  367. package/dist/react-ui/ui/Button/Button.styles.js +4 -2
  368. package/dist/react-ui/ui/Button/Button.types.d.ts +2 -2
  369. package/dist/react-ui/ui/Button/Button.types.d.ts.map +1 -1
  370. package/dist/react-ui/ui/DataCard/DataCard.styles.d.ts +1 -1
  371. package/dist/react-ui/ui/DynamicToggle/DynamicToggle.css +369 -0
  372. package/dist/react-ui/ui/FileIcon/FileIcon.styles.d.ts +25 -0
  373. package/dist/react-ui/ui/FileIcon/FileIcon.styles.d.ts.map +1 -0
  374. package/dist/react-ui/ui/FileIcon/FileIcon.styles.js +31 -0
  375. package/dist/react-ui/ui/FileIcon/FileIcon.types.d.ts +89 -0
  376. package/dist/react-ui/ui/FileIcon/FileIcon.types.d.ts.map +1 -0
  377. package/dist/react-ui/ui/FileIcon/index.d.ts +46 -0
  378. package/dist/react-ui/ui/FileIcon/index.d.ts.map +1 -0
  379. package/dist/react-ui/ui/FileIcon/index.js +138 -0
  380. package/dist/react-ui/ui/FileItem/FileItem.styles.d.ts +47 -0
  381. package/dist/react-ui/ui/FileItem/FileItem.styles.d.ts.map +1 -0
  382. package/dist/react-ui/ui/FileItem/FileItem.styles.js +60 -0
  383. package/dist/react-ui/ui/FileItem/FileItem.types.d.ts +84 -0
  384. package/dist/react-ui/ui/FileItem/FileItem.types.d.ts.map +1 -0
  385. package/dist/react-ui/ui/FileItem/index.d.ts +48 -0
  386. package/dist/react-ui/ui/FileItem/index.d.ts.map +1 -0
  387. package/dist/react-ui/ui/FileItem/index.js +124 -0
  388. package/dist/react-ui/ui/FilePanel/FilePanel.styles.d.ts +34 -0
  389. package/dist/react-ui/ui/FilePanel/FilePanel.styles.d.ts.map +1 -0
  390. package/dist/react-ui/ui/FilePanel/FilePanel.styles.js +57 -0
  391. package/dist/react-ui/ui/FilePanel/FilePanel.types.d.ts +55 -0
  392. package/dist/react-ui/ui/FilePanel/FilePanel.types.d.ts.map +1 -0
  393. package/dist/react-ui/ui/FilePanel/index.d.ts +55 -0
  394. package/dist/react-ui/ui/FilePanel/index.d.ts.map +1 -0
  395. package/dist/react-ui/ui/FilePanel/index.js +107 -0
  396. package/dist/react-ui/ui/FileTree/FileTree.styles.d.ts +31 -0
  397. package/dist/react-ui/ui/FileTree/FileTree.styles.d.ts.map +1 -0
  398. package/dist/react-ui/ui/FileTree/FileTree.styles.js +45 -0
  399. package/dist/react-ui/ui/FileTree/FileTree.types.d.ts +95 -0
  400. package/dist/react-ui/ui/FileTree/FileTree.types.d.ts.map +1 -0
  401. package/dist/react-ui/ui/FileTree/index.d.ts +60 -0
  402. package/dist/react-ui/ui/FileTree/index.d.ts.map +1 -0
  403. package/dist/react-ui/ui/FileTree/index.js +226 -0
  404. package/dist/react-ui/ui/GooeyButton/GooeyButton.types.d.ts +35 -0
  405. package/dist/react-ui/ui/GooeyButton/GooeyButton.types.d.ts.map +1 -0
  406. package/dist/react-ui/ui/GooeyButton/gooey-button.js +0 -0
  407. package/dist/react-ui/ui/GooeyButton/gooey.css +43 -0
  408. package/dist/react-ui/ui/GooeyButton/index.d.ts +26 -0
  409. package/dist/react-ui/ui/GooeyButton/index.d.ts.map +1 -0
  410. package/dist/react-ui/ui/GooeyButton/index.js +109 -0
  411. package/dist/react-ui/ui/MiddleTruncatePath/MiddleTruncatePath.styles.d.ts +23 -0
  412. package/dist/react-ui/ui/MiddleTruncatePath/MiddleTruncatePath.styles.d.ts.map +1 -0
  413. package/dist/react-ui/ui/MiddleTruncatePath/MiddleTruncatePath.styles.js +32 -0
  414. package/dist/react-ui/ui/MiddleTruncatePath/MiddleTruncatePath.types.d.ts +43 -0
  415. package/dist/react-ui/ui/MiddleTruncatePath/MiddleTruncatePath.types.d.ts.map +1 -0
  416. package/dist/react-ui/ui/MiddleTruncatePath/index.d.ts +33 -0
  417. package/dist/react-ui/ui/MiddleTruncatePath/index.d.ts.map +1 -0
  418. package/dist/react-ui/ui/MiddleTruncatePath/index.js +60 -0
  419. package/dist/react-ui/ui/OperationCard/OperationCard.context.d.ts +17 -0
  420. package/dist/react-ui/ui/OperationCard/OperationCard.context.d.ts.map +1 -0
  421. package/dist/react-ui/ui/OperationCard/OperationCard.context.js +27 -0
  422. package/dist/react-ui/ui/OperationCard/OperationCard.styles.d.ts +19 -0
  423. package/dist/react-ui/ui/OperationCard/OperationCard.styles.d.ts.map +1 -0
  424. package/dist/react-ui/ui/OperationCard/OperationCard.styles.js +39 -0
  425. package/dist/react-ui/ui/OperationCard/OperationCard.types.d.ts +188 -0
  426. package/dist/react-ui/ui/OperationCard/OperationCard.types.d.ts.map +1 -0
  427. package/dist/react-ui/ui/OperationCard/index.d.ts +45 -0
  428. package/dist/react-ui/ui/OperationCard/index.d.ts.map +1 -0
  429. package/dist/react-ui/ui/OperationCard/index.js +118 -0
  430. package/dist/react-ui/ui/OperationCard/parts/OperationCardActions.d.ts +3 -0
  431. package/dist/react-ui/ui/OperationCard/parts/OperationCardActions.d.ts.map +1 -0
  432. package/dist/react-ui/ui/OperationCard/parts/OperationCardActions.js +86 -0
  433. package/dist/react-ui/ui/OperationCard/parts/OperationCardHeader.d.ts +14 -0
  434. package/dist/react-ui/ui/OperationCard/parts/OperationCardHeader.d.ts.map +1 -0
  435. package/dist/react-ui/ui/OperationCard/parts/OperationCardHeader.js +62 -0
  436. package/dist/react-ui/ui/OperationCard/parts/OperationCardProgress.d.ts +3 -0
  437. package/dist/react-ui/ui/OperationCard/parts/OperationCardProgress.d.ts.map +1 -0
  438. package/dist/react-ui/ui/OperationCard/parts/OperationCardProgress.js +37 -0
  439. package/dist/react-ui/ui/OperationCard/parts/OperationCardStats.d.ts +3 -0
  440. package/dist/react-ui/ui/OperationCard/parts/OperationCardStats.d.ts.map +1 -0
  441. package/dist/react-ui/ui/OperationCard/parts/OperationCardStats.js +42 -0
  442. package/dist/react-ui/ui/OperationCard/parts/OperationCardVisualizer.d.ts +3 -0
  443. package/dist/react-ui/ui/OperationCard/parts/OperationCardVisualizer.d.ts.map +1 -0
  444. package/dist/react-ui/ui/OperationCard/parts/OperationCardVisualizer.js +53 -0
  445. package/dist/react-ui/ui/Tabs/Tabs.css +38 -0
  446. package/dist/react-ui/ui/Tabs/Tabs.styles.d.ts +3 -3
  447. package/dist/react-ui/ui/index.d.ts +7 -0
  448. package/dist/react-ui/ui/index.d.ts.map +1 -1
  449. package/dist/react-ui/ui/index.js +19 -0
  450. package/package.json +20 -7
  451. package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts +0 -146
  452. package/dist/react-ui/blocks/Terminal/ResttyAdapter.d.ts.map +0 -1
  453. package/dist/react-ui/blocks/Terminal/ResttyAdapter.js +0 -213
  454. package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts +0 -55
  455. package/dist/react-ui/blocks/Terminal/Terminal.adapter.d.ts.map +0 -1
  456. package/dist/react-ui/blocks/Terminal/Terminal.adapter.js +0 -68
  457. package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts +0 -111
  458. package/dist/react-ui/blocks/Terminal/TerminalRestty.d.ts.map +0 -1
  459. package/dist/react-ui/blocks/Terminal/TerminalRestty.js +0 -185
  460. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts +0 -160
  461. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.d.ts.map +0 -1
  462. package/dist/react-ui/blocks/Terminal/components/LogLineBadges.js +0 -185
  463. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts +0 -36
  464. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.d.ts.map +0 -1
  465. package/dist/react-ui/blocks/Terminal/components/TerminalLogBadge.js +0 -52
  466. package/dist/react-ui/blocks/Terminal/panel/TerminalDebugPanel.d.ts.map +0 -1
  467. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts +0 -42
  468. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterDropdown.d.ts.map +0 -1
  469. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts +0 -43
  470. package/dist/react-ui/blocks/Terminal/panel/TerminalFilterTabs.d.ts.map +0 -1
  471. package/dist/react-ui/blocks/Terminal/panel/TerminalLogsPanel.d.ts.map +0 -1
  472. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts +0 -30
  473. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.d.ts.map +0 -1
  474. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelFooter.js +0 -126
  475. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts +0 -31
  476. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.d.ts.map +0 -1
  477. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelHeader.js +0 -149
  478. package/dist/react-ui/blocks/Terminal/panel/TerminalPanelToolbar.d.ts.map +0 -1
  479. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionControl.d.ts.map +0 -1
  480. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts +0 -63
  481. package/dist/react-ui/blocks/Terminal/panel/TerminalSessionTabs.d.ts.map +0 -1
  482. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts +0 -24
  483. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.d.ts.map +0 -1
  484. package/dist/react-ui/blocks/Terminal/panel/TerminalSettingsPopover.js +0 -225
  485. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts +0 -35
  486. package/dist/react-ui/blocks/Terminal/panel/TerminalThemeSelector.d.ts.map +0 -1
  487. package/dist/react-ui/blocks/Terminal/panel/terminal-filter-dropdown.module.js +0 -5
  488. package/dist/react-ui/blocks/Terminal/panel/terminal-session-tabs.module.js +0 -5
  489. /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
  490. /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
  491. /package/dist/{react-ui/components/MorphingPopover/morphing-popover.module-s63snw7C.css → css/components-MorphingPopover-morphing-popover.module.css} +0 -0
  492. /package/dist/{react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module-7y-To7On.css → css/primitives-waapi-Morph-techniques-useViewTransitions.module.css} +0 -0
  493. /package/dist/{react-ui/ui/DynamicToggle/DynamicToggle-C3rJw_PQ.css → css/ui-DynamicToggle-DynamicToggle.css} +0 -0
  494. /package/dist/{react-ui/ui/Tabs/Tabs-DKe-TP8j.css → css/ui-Tabs-Tabs.css} +0 -0
package/dist/index.css CHANGED
@@ -1,132 +1,406 @@
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;
128
- }
129
- }/**
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
+ /**
130
404
  * TerminalSessionTabs Dropdown Styles.
131
405
  *
132
406
  * Uses CSS Anchor Positioning API for the "add container" dropdown.
@@ -186,103 +460,675 @@
186
460
  }
187
461
  }
188
462
 
189
- /**
190
- * TerminalFilterDropdown Styles.
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;
566
+ }
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/DotMatrix/dot.css */
624
+
625
+ /* =============================================================================
626
+ * DotMatrix — progressive fill model.
191
627
  *
192
- * Uses CSS Anchor Positioning API for dropdown placement.
193
- * Button acts as anchor, dropdown is positioned relative to it
194
- * with automatic flip behavior at viewport edges.
628
+ * Cells light up one at a time in `pattern` order, stay lit until the
629
+ * cycle resets, then repeat. Implementation uses ONE CSS animation per
630
+ * matrix that drives a registered custom property `--dm-phase` from
631
+ * 0 → 1 (fill), holds it at 1 (hold), then snaps back to 0 (reset)
632
+ * for a rest period.
195
633
  *
196
- * @module components/devenv/terminal/panel/terminal-filter-dropdown/styles
197
- */
634
+ * Each cell carries a `--dm-threshold` (its position in the fill
635
+ * sequence, 0..1) and computes its own `::before` opacity as a step
636
+ * across `phase - threshold`, multiplied by `--dm-edge-sharpness` so
637
+ * the edge can range from "instant snap" to "warm fade".
638
+ *
639
+ * Perf shape: N matrices = N animations total (not N × cells). Cell
640
+ * opacity is computed at paint time by calc(); the compositor batches
641
+ * updates via the shared phase var. With `contain: layout style paint`
642
+ * each cell is isolated so work doesn't cascade.
643
+ * ============================================================================= */
644
+
645
+ @property --dm-phase {
646
+ syntax: '<number>';
647
+ initial-value: 0;
648
+ inherits: true;
649
+ }
650
+
651
+ .dm-root {
652
+ display: grid;
653
+ width: 100%;
654
+ gap: var(--dm-gap, 5px);
655
+ padding: var(--dm-pad, 0.25rem);
656
+ border-radius: 0.5rem;
657
+ background-color: transparent;
658
+
659
+ /* Skip render work when the matrix is offscreen. */
660
+ content-visibility: auto;
661
+ contain-intrinsic-size: auto 200px;
662
+ transform: translateZ(0);
663
+
664
+ --dm-on: var(--foreground);
665
+ --dm-off: color-mix(in oklch, var(--foreground) 12%, transparent);
666
+ --dm-glow: color-mix(in oklch, var(--foreground) 50%, transparent);
667
+ }
668
+
669
+ /* ─── Cell: base OFF layer — neutral dim ──────────────────────────────── */
670
+
671
+ .dm-cell {
672
+ position: relative;
673
+ aspect-ratio: 1 / 1;
674
+ min-width: 4px;
675
+ min-height: 4px;
676
+ border-radius: var(--dm-radius, 32%);
677
+ background-color: color-mix(in oklch, var(--foreground) 10%, transparent);
678
+ opacity: var(--dm-off-opacity, 0.45);
679
+ transform: scale(var(--dm-off-scale, 0.9));
680
+ contain: layout style paint;
681
+
682
+ --dm-threshold: 0;
683
+ --dm-stagger-delay: 0ms;
684
+ }
685
+
686
+ /* ─── Pseudo: ON layer — LED look, fades in as phase crosses threshold ─ */
687
+
688
+ .dm-cell::before {
689
+ content: '';
690
+ position: absolute;
691
+ inset: 0;
692
+ border-radius: inherit;
693
+ background-color: var(--dm-on);
694
+ background-image:
695
+ radial-gradient(
696
+ circle at 32% 26%,
697
+ rgb(255 255 255 / 0.35) 0%,
698
+ rgb(255 255 255 / 0.12) 18%,
699
+ transparent 48%
700
+ ),
701
+ radial-gradient(
702
+ circle at 70% 78%,
703
+ rgb(0 0 0 / 0.22) 0%,
704
+ transparent 60%
705
+ );
706
+ box-shadow:
707
+ inset 0 0 1px rgb(255 255 255 / 0.55),
708
+ inset 0 0 0 1px color-mix(in oklch, var(--dm-on) 65%, transparent),
709
+ inset 0 -1px 2px color-mix(in oklch, var(--dm-on) 40%, black 20%);
710
+ opacity: 0;
711
+ pointer-events: none;
712
+ }
713
+
714
+ .dm-root[data-variant='glow'] .dm-cell::before {
715
+ box-shadow:
716
+ inset 0 0 1px rgb(255 255 255 / 0.55),
717
+ inset 0 0 0 1px color-mix(in oklch, var(--dm-on) 65%, transparent),
718
+ inset 0 -1px 2px color-mix(in oklch, var(--dm-on) 40%, black 20%),
719
+ 0 0 2px var(--dm-glow),
720
+ 0 0 6px var(--dm-glow),
721
+ 0 0 12px color-mix(in oklch, var(--dm-glow) 55%, transparent);
722
+ }
723
+
724
+ /* ─── Running: phase animates on root, cells derive state from it ────── */
725
+
726
+ .dm-root[data-status='running'] {
727
+ animation-name: var(--dm-anim-phase);
728
+ animation-duration: var(--dm-cycle-total, 2600ms);
729
+ animation-iteration-count: infinite;
730
+ animation-timing-function: linear;
731
+ animation-fill-mode: both;
732
+ }
733
+
734
+ /* Lit fraction for THIS cell — 0 when off, 1 when fully filled, ramped
735
+ * near the threshold by `--dm-edge-sharpness`. Reused by both the pseudo
736
+ * opacity (the LED glow) and the cell's scale (grows when lit). */
737
+ .dm-root[data-status='running'] .dm-cell {
738
+ opacity: 1;
739
+ transform: scale(
740
+ calc(
741
+ var(--dm-off-scale, 0.88) +
742
+ (var(--dm-on-scale, 1) - var(--dm-off-scale, 0.88)) *
743
+ clamp(
744
+ 0,
745
+ (var(--dm-phase) - var(--dm-threshold)) *
746
+ var(--dm-edge-sharpness, 50),
747
+ 1
748
+ )
749
+ )
750
+ );
751
+ }
752
+
753
+ .dm-root[data-status='running'] .dm-cell::before {
754
+ opacity: clamp(
755
+ 0,
756
+ calc(
757
+ (var(--dm-phase) - var(--dm-threshold)) *
758
+ var(--dm-edge-sharpness, 50)
759
+ ),
760
+ 1
761
+ );
762
+ }
763
+
764
+ /* ─── Accent cells ────────────────────────────────────────────────────── */
765
+
766
+ .dm-cell[data-accent='true'] {
767
+ opacity: 1;
768
+ transform: scale(1);
769
+ }
770
+
771
+ .dm-cell[data-accent='true']::before {
772
+ background-color: var(--primary);
773
+ background-image: none;
774
+ box-shadow:
775
+ inset 0 0 1px rgb(255 255 255 / 0.5),
776
+ 0 0 3px color-mix(in oklch, var(--primary) 70%, transparent),
777
+ 0 0 7px color-mix(in oklch, var(--primary) 50%, transparent);
778
+ opacity: 1 !important;
779
+ }
780
+
781
+ /* ─── Lifecycle FINAL animations ──────────────────────────────────────── */
782
+
783
+ @keyframes dm-success-pop {
784
+ 0% {
785
+ transform: scale(0.94);
786
+ filter: brightness(0.7);
787
+ }
788
+ 45% {
789
+ transform: scale(1.18);
790
+ filter: brightness(1.4);
791
+ }
792
+ 100% {
793
+ transform: scale(1);
794
+ filter: brightness(1);
795
+ }
796
+ }
797
+
798
+ @keyframes dm-fail-strobe {
799
+ 0% {
800
+ transform: scale(1);
801
+ filter: brightness(1);
802
+ }
803
+ 22% {
804
+ transform: scale(1.22);
805
+ filter: brightness(1.55) saturate(1.4);
806
+ }
807
+ 55% {
808
+ transform: scale(0.92);
809
+ filter: brightness(0.75);
810
+ }
811
+ 100% {
812
+ transform: scale(0.97);
813
+ filter: brightness(1);
814
+ }
815
+ }
816
+
817
+ @keyframes dm-cancelled-dim {
818
+ 0% {
819
+ transform: scale(1);
820
+ opacity: 1;
821
+ }
822
+ 100% {
823
+ transform: scale(0.9);
824
+ opacity: 0.55;
825
+ }
826
+ }
827
+
828
+ .dm-root[data-status='success'] {
829
+ animation: none;
830
+ }
831
+ .dm-root[data-status='success'] .dm-cell {
832
+ opacity: 1;
833
+ transform: scale(1);
834
+ animation: dm-success-pop 520ms cubic-bezier(0.2, 0, 0.2, 1) both;
835
+ animation-delay: var(--dm-stagger-delay, 0ms);
836
+ }
837
+ .dm-root[data-status='success'] .dm-cell::before {
838
+ opacity: 1;
839
+ }
840
+
841
+ .dm-root[data-status='failed'] {
842
+ animation: none;
843
+ }
844
+ .dm-root[data-status='failed'] .dm-cell {
845
+ opacity: 1;
846
+ animation: dm-fail-strobe 560ms cubic-bezier(0.2, 0, 0.2, 1) both;
847
+ animation-delay: var(--dm-stagger-delay, 0ms);
848
+ }
849
+ .dm-root[data-status='failed'] .dm-cell::before {
850
+ background-color: var(--destructive);
851
+ box-shadow:
852
+ inset 0 0 1px rgb(255 255 255 / 0.5),
853
+ inset 0 0 0 1px color-mix(in oklch, var(--destructive) 55%, transparent),
854
+ inset 0 -1px 2px color-mix(in oklch, var(--destructive) 40%, black 20%);
855
+ opacity: 1;
856
+ }
857
+ .dm-root[data-status='failed'][data-variant='glow'] .dm-cell::before {
858
+ box-shadow:
859
+ inset 0 0 1px rgb(255 255 255 / 0.55),
860
+ inset 0 0 0 1px color-mix(in oklch, var(--destructive) 55%, transparent),
861
+ inset 0 -1px 2px color-mix(in oklch, var(--destructive) 40%, black 20%),
862
+ 0 0 3px color-mix(in oklch, var(--destructive) 70%, transparent),
863
+ 0 0 9px color-mix(in oklch, var(--destructive) 55%, transparent);
864
+ }
865
+
866
+ .dm-root[data-status='cancelled'] {
867
+ animation: none;
868
+ }
869
+ .dm-root[data-status='cancelled'] .dm-cell {
870
+ background-color: color-mix(in oklch, var(--foreground) 22%, transparent);
871
+ opacity: 0.65;
872
+ animation: dm-cancelled-dim 380ms cubic-bezier(0.4, 0, 0.8, 0.6) both;
873
+ animation-delay: var(--dm-stagger-delay, 0ms);
874
+ }
875
+ .dm-root[data-status='cancelled'] .dm-cell::before {
876
+ opacity: 0;
877
+ }
198
878
 
199
- /* Trigger button - acts as CSS anchor */
200
- .triggerButton {
201
- anchor-name: --filter-dropdown-anchor;
879
+ .dm-root[data-status='idle'] {
880
+ animation: none;
881
+ }
882
+ .dm-root[data-status='idle'] .dm-cell::before {
883
+ opacity: 0;
884
+ }
885
+
886
+ /* ─── Theme-token palettes ────────────────────────────────────────────── */
887
+
888
+ .dm--foreground {
889
+ --dm-on: var(--foreground);
890
+ --dm-off: color-mix(in oklch, var(--foreground) 12%, transparent);
891
+ --dm-glow: color-mix(in oklch, var(--foreground) 55%, transparent);
202
892
  }
203
893
 
204
- /* Dropdown menu - anchored to trigger button */
205
- .dropdownMenu {
206
- position-anchor: --filter-dropdown-anchor;
207
- position: fixed;
894
+ .dm--primary {
895
+ --dm-on: var(--primary);
896
+ --dm-off: color-mix(in oklch, var(--primary) 14%, transparent);
897
+ --dm-glow: color-mix(in oklch, var(--primary) 65%, transparent);
898
+ }
208
899
 
209
- /* Position below and left-aligned */
210
- left: anchor(left);
211
- top: anchor(bottom);
212
- margin-top: 4px;
900
+ .dm--destructive {
901
+ --dm-on: var(--destructive);
902
+ --dm-off: color-mix(in oklch, var(--destructive) 14%, transparent);
903
+ --dm-glow: color-mix(in oklch, var(--destructive) 65%, transparent);
904
+ }
905
+
906
+ .dm--warning {
907
+ --dm-on: var(--warning);
908
+ --dm-off: color-mix(in oklch, var(--warning) 14%, transparent);
909
+ --dm-glow: color-mix(in oklch, var(--warning) 65%, transparent);
910
+ }
911
+
912
+ /* ─── Named palettes (OKLCH for stability) ────────────────────────────── */
913
+
914
+ .dm--cyan {
915
+ --dm-on: oklch(90% 0.2 195);
916
+ --dm-off: oklch(40% 0.08 195 / 0.4);
917
+ --dm-glow: oklch(80% 0.25 195 / 0.95);
918
+ }
919
+ .dm--magenta {
920
+ --dm-on: oklch(85% 0.25 330);
921
+ --dm-off: oklch(40% 0.08 330 / 0.4);
922
+ --dm-glow: oklch(75% 0.3 330 / 0.95);
923
+ }
924
+ .dm--yellow {
925
+ --dm-on: oklch(95% 0.2 90);
926
+ --dm-off: oklch(50% 0.08 90 / 0.4);
927
+ --dm-glow: oklch(90% 0.25 90 / 0.95);
928
+ }
929
+ .dm--green {
930
+ --dm-on: oklch(90% 0.25 145);
931
+ --dm-off: oklch(40% 0.08 145 / 0.4);
932
+ --dm-glow: oklch(80% 0.3 145 / 0.95);
933
+ }
934
+ .dm--orange {
935
+ --dm-on: oklch(85% 0.22 50);
936
+ --dm-off: oklch(45% 0.08 50 / 0.4);
937
+ --dm-glow: oklch(75% 0.28 50 / 0.95);
938
+ }
939
+ .dm--blue {
940
+ --dm-on: oklch(80% 0.22 260);
941
+ --dm-off: oklch(40% 0.08 260 / 0.4);
942
+ --dm-glow: oklch(70% 0.28 260 / 0.95);
943
+ }
944
+ .dm--red {
945
+ --dm-on: oklch(70% 0.25 25);
946
+ --dm-off: oklch(40% 0.08 25 / 0.4);
947
+ --dm-glow: oklch(60% 0.3 25 / 0.95);
948
+ }
949
+ .dm--purple {
950
+ --dm-on: oklch(75% 0.22 300);
951
+ --dm-off: oklch(40% 0.08 300 / 0.4);
952
+ --dm-glow: oklch(65% 0.28 300 / 0.95);
953
+ }
954
+ .dm--teal {
955
+ --dm-on: oklch(82% 0.18 175);
956
+ --dm-off: oklch(40% 0.08 175 / 0.4);
957
+ --dm-glow: oklch(72% 0.24 175 / 0.95);
958
+ }
959
+ .dm--pink {
960
+ --dm-on: oklch(80% 0.2 350);
961
+ --dm-off: oklch(45% 0.08 350 / 0.4);
962
+ --dm-glow: oklch(70% 0.26 350 / 0.95);
963
+ }
964
+ .dm--lime {
965
+ --dm-on: oklch(88% 0.22 120);
966
+ --dm-off: oklch(45% 0.08 120 / 0.4);
967
+ --dm-glow: oklch(80% 0.28 120 / 0.95);
968
+ }
969
+ .dm--white {
970
+ --dm-on: oklch(98% 0 0);
971
+ --dm-off: oklch(50% 0 0 / 0.3);
972
+ --dm-glow: oklch(95% 0 0 / 0.85);
973
+ }
974
+
975
+ /* ─── Reduced motion — freeze animations ─────────────────────────────── */
976
+
977
+ @media (prefers-reduced-motion: reduce) {
978
+ .dm-root[data-status='running'],
979
+ .dm-root[data-status='success'] .dm-cell,
980
+ .dm-root[data-status='failed'] .dm-cell,
981
+ .dm-root[data-status='cancelled'] .dm-cell {
982
+ animation: none !important;
983
+ }
984
+ .dm-cell {
985
+ transform: none;
986
+ }
987
+ }
213
988
 
214
- /* Flip to above if no room below */
215
- position-try-fallbacks: flip-block, flip-inline;
216
989
 
217
- min-width: 180px;
218
- z-index: 50;
219
990
 
220
- /* Hidden by default */
221
- display: none;
222
- opacity: 0;
223
- transform: translateY(-4px);
224
- transition: opacity 0.15s ease-out, transform 0.15s ease-out;
225
- pointer-events: none;
991
+ /* react-ui/primitives/GooeyMorphingSurface/gooey-morphing.css */
992
+
993
+ /* =============================================================================
994
+ * GooeyMorphingSurface — CSS layer for the SVG rect morph + HTML overlays.
995
+ *
996
+ * Classes are prefixed `.gms-*` so they act as a manual scope (mks-ui's
997
+ * rolldown build produces empty default-exports for CSS modules, so we use
998
+ * plain CSS with explicit classnames referenced as string literals from
999
+ * the component).
1000
+ *
1001
+ * Every tunable value comes from inline CSS custom props set by the React
1002
+ * component at the root element. No hard-coded dimensions or timings here.
1003
+ *
1004
+ * Technique recap: two <rect>s inside a <g filter="url(#gooey)">. Body rect
1005
+ * is a geometric CLONE of the pill when closed, and morphs into the card
1006
+ * geometry (x, y, width, height, rx, ry all interpolate) when open. The
1007
+ * gaussian-blur + alpha-threshold filter bends the overlapping silhouettes
1008
+ * into a single shape with a soft metaball throat.
1009
+ * ============================================================================= */
1010
+
1011
+ .gms-root {
1012
+ position: relative;
1013
+ display: inline-block;
1014
+ }
1015
+
1016
+ .gms-shell {
1017
+ position: relative;
1018
+ width: var(--gms-card-w);
1019
+ height: var(--gms-pill-h);
1020
+ color: var(--gms-fill);
1021
+ transition: height var(--gms-duration) var(--gms-ease);
1022
+ /* Drop-shadow follows the fused silhouette. Chained filters = additive
1023
+ * shadow layers for depth without a hard box-shadow. */
1024
+ filter: drop-shadow(0 16px 38px rgb(0 0 0 / 0.35))
1025
+ drop-shadow(0 4px 10px rgb(0 0 0 / 0.18));
1026
+ }
1027
+
1028
+ .gms-shell[data-open='true'] {
1029
+ height: calc(var(--gms-pill-h) + var(--gms-card-h));
1030
+ }
1031
+
1032
+ .gms-svg {
1033
+ position: absolute;
1034
+ top: 0;
1035
+ left: 50%;
1036
+ transform: translateX(-50%);
1037
+ display: block;
1038
+ overflow: visible;
1039
+ pointer-events: none;
1040
+ }
1041
+
1042
+ .gms-body-rect {
1043
+ will-change: x, y, width, height;
1044
+ transition:
1045
+ x var(--gms-duration) var(--gms-ease),
1046
+ y var(--gms-duration) var(--gms-ease),
1047
+ width var(--gms-duration) var(--gms-ease),
1048
+ height var(--gms-duration) var(--gms-ease),
1049
+ rx var(--gms-duration) var(--gms-ease),
1050
+ ry var(--gms-duration) var(--gms-ease);
1051
+ }
1052
+
1053
+ .gms-pill {
1054
+ position: absolute;
1055
+ top: 0;
1056
+ left: var(--gms-pill-x);
1057
+ width: var(--gms-pill-w);
1058
+ height: var(--gms-pill-h);
1059
+ display: inline-flex;
1060
+ align-items: center;
1061
+ justify-content: center;
1062
+ gap: 0.5rem;
1063
+ color: var(--card-foreground);
1064
+ pointer-events: none;
1065
+ z-index: 2;
1066
+ }
1067
+
1068
+ .gms-card {
1069
+ position: absolute;
1070
+ top: calc(var(--gms-pill-h) - var(--gms-overlap));
1071
+ left: 0;
1072
+ width: var(--gms-card-w);
1073
+ height: var(--gms-card-h);
1074
+ color: var(--card-foreground);
1075
+ opacity: 0;
1076
+ transform: translateY(4px);
1077
+ pointer-events: none;
1078
+ z-index: 2;
1079
+ overflow: hidden;
1080
+ border-radius: var(--gms-card-r);
1081
+ transition:
1082
+ opacity calc(var(--gms-duration) * 0.35) var(--gms-ease),
1083
+ transform calc(var(--gms-duration) * 0.35) var(--gms-ease);
1084
+ }
1085
+
1086
+ .gms-shell[data-open='true'] .gms-card {
1087
+ opacity: 1;
1088
+ transform: translateY(0);
1089
+ pointer-events: auto;
1090
+ transition:
1091
+ opacity calc(var(--gms-duration) * 0.55) var(--gms-ease)
1092
+ calc(var(--gms-duration) * 0.45),
1093
+ transform calc(var(--gms-duration) * 0.55) var(--gms-ease)
1094
+ calc(var(--gms-duration) * 0.45);
226
1095
  }
227
1096
 
228
- .dropdownMenu[data-open="true"] {
229
- display: block;
230
- opacity: 1;
231
- transform: translateY(0);
232
- pointer-events: auto;
1097
+ @media (prefers-reduced-motion: reduce) {
1098
+ .gms-shell,
1099
+ .gms-body-rect,
1100
+ .gms-card {
1101
+ transition-duration: 0.01ms !important;
1102
+ }
233
1103
  }
234
1104
 
235
- /* Fallback for browsers without CSS Anchor Positioning */
236
- @supports not (anchor-name: none) {
237
- .dropdownMenu {
238
- position: absolute;
239
- left: 0;
240
- top: calc(100% + 4px);
241
- z-index: 50;
242
- }
243
1105
 
244
- .dropdownMenu[data-open="true"] {
245
- display: block;
246
- }
247
- }
1106
+
1107
+ /* react-ui/primitives/waapi/Morph/techniques/useViewTransitions.module.css */
248
1108
 
249
1109
  /**
250
- * Tabs CSS Anchor Positioning.
1110
+ * View Transitions API - Default transition styles.
251
1111
  *
252
- * Zero-JS position tracking for the sliding indicator using CSS Anchor API.
253
- * The indicator automatically follows the active tab via anchor positioning.
1112
+ * These styles apply to all view-transition pseudo-elements by default,
1113
+ * eliminating the need for dynamic style injection based on transition names.
1114
+ *
1115
+ * Usage: Apply `view-transition-name` via inline style or CSS variable:
1116
+ * <div style={{ viewTransitionName: 'hero' }}>...</div>
1117
+ *
1118
+ * Or via CSS:
1119
+ * .my-element { view-transition-name: hero; }
254
1120
  */
255
1121
 
256
- /* Scope anchors per Tabs instance */
257
- [data-slot="tabs-list"] {
258
- anchor-scope: --tabs-active;
1122
+ /* Default animation for all view transitions */
1123
+ ::view-transition-old(*),
1124
+ ::view-transition-new(*) {
1125
+ animation-duration: 300ms;
1126
+ animation-timing-function: ease-out;
259
1127
  }
260
1128
 
261
- /* Active tab becomes the anchor */
262
- [data-slot="tabs-tab"][data-active] {
263
- anchor-name: --tabs-active;
264
- }
265
1129
 
266
- /* Indicator follows the active anchor */
267
- [data-slot="tabs-indicator"] {
268
- position-anchor: --tabs-active;
269
- left: anchor(left);
270
- right: anchor(right);
271
- transition:
272
- top 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
273
- left 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
274
- right 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
275
- bottom 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
276
- width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
277
- height 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
278
- }
279
1130
 
280
- /* Respect reduced motion preference */
281
- @media (prefers-reduced-motion: reduce) {
282
- [data-slot="tabs-indicator"] {
283
- transition-duration: 0ms;
284
- }
285
- }
1131
+ /* react-ui/ui/DynamicToggle/DynamicToggle.css */
286
1132
 
287
1133
  /**
288
1134
  * DynamicToggle v2 — CSS state transitions.
@@ -653,177 +1499,92 @@
653
1499
  z-index: 1;
654
1500
  }
655
1501
 
656
- /**
657
- * View Transitions API - Default transition styles.
658
- *
659
- * These styles apply to all view-transition pseudo-elements by default,
660
- * eliminating the need for dynamic style injection based on transition names.
661
- *
662
- * Usage: Apply `view-transition-name` via inline style or CSS variable:
663
- * <div style={{ viewTransitionName: 'hero' }}>...</div>
664
- *
665
- * Or via CSS:
666
- * .my-element { view-transition-name: hero; }
667
- */
668
1502
 
669
- /* Default animation for all view transitions */
670
- ::view-transition-old(*),
671
- ::view-transition-new(*) {
672
- animation-duration: 300ms;
673
- animation-timing-function: ease-out;
674
- }
675
1503
 
676
- /* CSS Variables for anchor positioning */
677
- .morphingPopoverContainer {
678
- position: relative;
679
- display: inline-block;
680
- --anchor-name: morphing-trigger;
681
- --target-width: 220px;
682
- --target-height: 120px;
683
- --transition-duration: 0.2s;
684
- }
1504
+ /* react-ui/ui/GooeyButton/gooey.css */
685
1505
 
686
- /* Trigger button styles */
687
- .morphingTrigger {
688
- anchor-name: var(--anchor-name);
689
- width: 44px;
690
- aspect-ratio: 1;
691
- border-radius: 50%;
692
- display: grid;
693
- place-items: center;
694
- font-size: 24px;
695
- cursor: pointer;
696
- border: none;
697
- background: transparent;
698
- transition: background-color 0.2s;
699
- }
1506
+ /* =============================================================================
1507
+ * GooeyButton — transparent hit area over the pill region.
1508
+ *
1509
+ * The visual pill is drawn by the <GooeyMorphingSurface> primitive; this
1510
+ * layer is a single button that captures clicks in both open and closed
1511
+ * states without painting anything. All layout math comes from the
1512
+ * primitive's CSS custom props (--gms-pill-w, --gms-pill-h).
1513
+ * ============================================================================= */
700
1514
 
701
- .morphingTrigger:hover {
702
- background-color: hsl(var(--muted) / 0.5);
1515
+ .gbtn-host {
1516
+ position: relative;
1517
+ display: inline-block;
703
1518
  }
704
1519
 
705
- /* Popover styles - anchored to trigger by default */
706
- .morphingPopover {
707
- position-anchor: var(--anchor-name);
708
- left: anchor(left);
709
- top: anchor(top);
710
- width: anchor-size(width);
711
- min-height: 0;
712
- border-radius: 50%;
713
- overflow: hidden;
714
- padding: 0;
715
- height: anchor-size(height);
716
- transition-behavior: allow-discrete;
717
- transition-property: display, overlay, width, height, top,
718
- border-radius, left, position-anchor, transform, opacity;
719
- transition-duration: var(--transition-duration);
720
- transition-timing-function: ease-out;
721
- transform-origin: center center;
722
- opacity: 0;
1520
+ .gbtn-trigger {
1521
+ position: absolute;
1522
+ top: 0;
1523
+ left: 50%;
1524
+ transform: translateX(-50%);
1525
+ z-index: 3;
1526
+ width: var(--gms-pill-w);
1527
+ height: var(--gms-pill-h);
1528
+ padding: 0;
1529
+ margin: 0;
1530
+ border: 0;
1531
+ background: transparent;
1532
+ cursor: pointer;
1533
+ font: inherit;
1534
+ color: inherit;
1535
+ /* Pill-shaped focus ring. */
1536
+ border-radius: 9999px;
723
1537
  }
724
1538
 
725
- /* When popover is open - expand to target size */
726
- .morphingPopover:popover-open {
727
- position-anchor: fixed;
728
- left: 50%;
729
- top: 50%;
730
- transform: translate(-50%, -50%);
731
- width: var(--target-width);
732
- height: var(--target-height);
733
- border-radius: 12px;
734
- opacity: 1;
735
- border: 1px solid hsl(var(--border));
736
- background: hsl(var(--background));
737
- box-shadow: 0 10px 40px -10px hsl(var(--foreground) / 0.3);
1539
+ .gbtn-trigger:focus-visible {
1540
+ outline: 2px solid var(--ring, currentColor);
1541
+ outline-offset: 2px;
738
1542
  }
739
1543
 
740
- /* Starting style for animation - browser support required */
741
- @starting-style {
742
- .morphingPopover:popover-open {
743
- position-anchor: var(--anchor-name);
744
- left: anchor(left);
745
- top: anchor(top);
746
- transform: none;
747
- border-radius: 50%;
748
- width: anchor-size(width);
749
- height: anchor-size(height);
750
- opacity: 0;
751
- }
1544
+ .gbtn-trigger:disabled {
1545
+ cursor: not-allowed;
1546
+ pointer-events: none;
752
1547
  }
753
1548
 
754
- /* Fallback for browsers without anchor positioning */
755
- @supports not (anchor-name: none) {
756
- .morphingPopover {
757
- position: fixed;
758
- left: 50%;
759
- top: 50%;
760
- transform: translate(-50%, -50%) scale(0.8);
761
- opacity: 0;
762
- pointer-events: none;
763
- }
764
1549
 
765
- .morphingPopover:popover-open {
766
- transform: translate(-50%, -50%) scale(1);
767
- opacity: 1;
768
- pointer-events: auto;
769
- }
770
1550
 
771
- @starting-style {
772
- .morphingPopover:popover-open {
773
- transform: translate(-50%, -50%) scale(0.8);
774
- opacity: 0;
775
- }
776
- }
777
- }
1551
+ /* react-ui/ui/Tabs/Tabs.css */
778
1552
 
779
- /* Variant: Morphing to a specific target element */
780
- .morphingPopoverTargetContainer {
781
- position: relative;
782
- display: inline-block;
783
- --anchor-name: morphing-trigger;
784
- --target-anchor-name: morphing-target;
785
- --transition-duration: 0.2s;
1553
+ /**
1554
+ * Tabs CSS Anchor Positioning.
1555
+ *
1556
+ * Zero-JS position tracking for the sliding indicator using CSS Anchor API.
1557
+ * The indicator automatically follows the active tab via anchor positioning.
1558
+ */
1559
+
1560
+ /* Scope anchors per Tabs instance */
1561
+ [data-slot="tabs-list"] {
1562
+ anchor-scope: --tabs-active;
786
1563
  }
787
1564
 
788
- .morphingPopoverTarget {
789
- position-anchor: var(--anchor-name);
790
- left: anchor(left);
791
- top: anchor(top);
792
- width: anchor-size(width);
793
- min-height: 0;
794
- border-radius: 50%;
795
- overflow: hidden;
796
- padding: 0;
797
- height: anchor-size(height);
798
- transition-behavior: allow-discrete;
799
- transition-property: display, overlay, width, height, top,
800
- border-radius, left, position-anchor, transform, opacity;
801
- transition-duration: var(--transition-duration);
802
- transition-timing-function: ease-out;
1565
+ /* Active tab becomes the anchor */
1566
+ [data-slot="tabs-tab"][data-active] {
1567
+ anchor-name: --tabs-active;
803
1568
  }
804
1569
 
805
- .morphingPopoverTarget:popover-open {
806
- position-anchor: var(--target-anchor-name);
1570
+ /* Indicator follows the active anchor */
1571
+ [data-slot="tabs-indicator"] {
1572
+ position-anchor: --tabs-active;
807
1573
  left: anchor(left);
808
- top: anchor(top);
809
- border-radius: 12px;
810
- min-width: 200px;
811
- min-height: 120px;
812
- border: 1px solid hsl(var(--border));
813
- background: hsl(var(--background));
814
- box-shadow: 0 10px 40px -10px hsl(var(--foreground) / 0.3);
815
- opacity: 1;
1574
+ right: anchor(right);
1575
+ transition:
1576
+ top 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1577
+ left 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1578
+ right 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1579
+ bottom 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1580
+ width 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
1581
+ height 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
816
1582
  }
817
1583
 
818
- @starting-style {
819
- .morphingPopoverTarget:popover-open {
820
- position-anchor: var(--anchor-name);
821
- left: anchor(left);
822
- top: anchor(top);
823
- border-radius: 50%;
824
- width: anchor-size(width);
825
- height: anchor-size(height);
826
- opacity: 0;
1584
+ /* Respect reduced motion preference */
1585
+ @media (prefers-reduced-motion: reduce) {
1586
+ [data-slot="tabs-indicator"] {
1587
+ transition-duration: 0ms;
827
1588
  }
828
1589
  }
829
1590