entangle-ui 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (500) hide show
  1. package/CHANGELOG.md +117 -8
  2. package/README.md +98 -52
  3. package/dist/esm/_virtual/cjs.js +4 -0
  4. package/dist/esm/_virtual/cjs.js.map +1 -0
  5. package/dist/esm/_virtual/cssesc.js +4 -0
  6. package/dist/esm/_virtual/cssesc.js.map +1 -0
  7. package/dist/esm/assets/src/components/controls/CartesianPicker/CartesianPicker.css.ts.vanilla-Ccao9ycw.css +23 -0
  8. package/dist/esm/assets/src/components/controls/ColorPicker/ColorPicker.css.ts.vanilla-Do5nbdgO.css +341 -0
  9. package/dist/esm/assets/src/components/controls/CurveEditor/CurveEditor.css.ts.vanilla-Vn9SOx70.css +76 -0
  10. package/dist/esm/assets/src/components/controls/NumberInput/NumberInput.css.ts.vanilla-uGNr81xQ.css +158 -0
  11. package/dist/esm/assets/src/components/controls/Select/Select.css.ts.vanilla-D4C059Ua.css +225 -0
  12. package/dist/esm/assets/src/components/controls/Slider/Slider.css.ts.vanilla-C5SJ_7A1.css +173 -0
  13. package/dist/esm/assets/src/components/controls/TreeView/TreeNode.css.ts.vanilla-D3ylUhuW.css +150 -0
  14. package/dist/esm/assets/src/components/controls/TreeView/TreeView.css.ts.vanilla-CsG5-rWt.css +14 -0
  15. package/dist/esm/assets/src/components/controls/VectorInput/VectorInput.css.ts.vanilla-BJma3iQ4.css +102 -0
  16. package/dist/esm/assets/src/components/editor/ChatPanel/ChatPanel.css.ts.vanilla-DPIGnZ4A.css +701 -0
  17. package/dist/esm/assets/src/components/editor/PropertyInspector/PropertyGroup.css.ts.vanilla-Co4n5a98.css +25 -0
  18. package/dist/esm/assets/src/components/editor/PropertyInspector/PropertyPanel.css.ts.vanilla-RYv_XgOu.css +46 -0
  19. package/dist/esm/assets/src/components/editor/PropertyInspector/PropertyRow.css.ts.vanilla-C3YZnnHb.css +75 -0
  20. package/dist/esm/assets/src/components/editor/PropertyInspector/PropertySection.css.ts.vanilla-DJBtY_xk.css +105 -0
  21. package/dist/esm/assets/src/components/editor/ViewportGizmo/ViewportGizmo.css.ts.vanilla-CEs2H-Iv.css +43 -0
  22. package/dist/esm/assets/src/components/feedback/Dialog/Dialog.css.ts.vanilla-BrXTOHwS.css +169 -0
  23. package/dist/esm/assets/src/components/feedback/Toast/ToastContainer.css.ts.vanilla-tBLsZ_70.css +13 -0
  24. package/dist/esm/assets/src/components/feedback/Toast/ToastItem.css.ts.vanilla-D6UuPKAj.css +152 -0
  25. package/dist/esm/assets/src/components/form/FormHelperText.css.ts.vanilla-CXKd9jtx.css +11 -0
  26. package/dist/esm/assets/src/components/form/FormLabel.css.ts.vanilla-DHn6CB2v.css +17 -0
  27. package/dist/esm/assets/src/components/form/InputWrapper.css.ts.vanilla-Bl7u62PI.css +44 -0
  28. package/dist/esm/assets/src/components/layout/Accordion/Accordion.css.ts.vanilla-Ck5Yew0e.css +118 -0
  29. package/dist/esm/assets/src/components/layout/Flex/Flex.css.ts.vanilla-D7wY2gY6.css +142 -0
  30. package/dist/esm/assets/src/components/layout/Grid/Grid.css.ts.vanilla-gqfqUi29.css +213 -0
  31. package/dist/esm/assets/src/components/layout/PanelSurface/PanelSurface.css.ts.vanilla-HZvObe0l.css +86 -0
  32. package/dist/esm/assets/src/components/layout/ScrollArea/ScrollArea.css.ts.vanilla-UsyrfXTC.css +126 -0
  33. package/dist/esm/assets/src/components/layout/Spacer/Spacer.css.ts.vanilla-A-7aOV46.css +14 -0
  34. package/dist/esm/assets/src/components/layout/SplitPane/SplitPane.css.ts.vanilla-BFxdvwyI.css +44 -0
  35. package/dist/esm/assets/src/components/layout/Stack/Stack.css.ts.vanilla-DNZOFYiD.css +123 -0
  36. package/dist/esm/assets/src/components/navigation/Menu/Menu.css.ts.vanilla-DD0c5D10.css +67 -0
  37. package/dist/esm/assets/src/components/navigation/Tabs/Tabs.css.ts.vanilla-D7RGpDPC.css +247 -0
  38. package/dist/esm/assets/src/components/primitives/Button/Button.css.ts.vanilla-CT592JL7.css +98 -0
  39. package/dist/esm/assets/src/components/primitives/Checkbox/Checkbox.css.ts.vanilla-dvrGPiPs.css +124 -0
  40. package/dist/esm/assets/src/components/primitives/Collapsible/Collapsible.css.ts.vanilla-C1rYV-JT.css +73 -0
  41. package/dist/esm/assets/src/components/primitives/Icon/Icon.css.ts.vanilla-DIZ6dped.css +45 -0
  42. package/dist/esm/assets/src/components/primitives/IconButton/IconButton.css.ts.vanilla-C-xAQoR3.css +123 -0
  43. package/dist/esm/assets/src/components/primitives/Input/Input.css.ts.vanilla-De5ditYa.css +74 -0
  44. package/dist/esm/assets/src/components/primitives/Paper/Paper.css.ts.vanilla-B_tPWU80.css +67 -0
  45. package/dist/esm/assets/src/components/primitives/Popover/Popover.css.ts.vanilla-DW6aAr57.css +60 -0
  46. package/dist/esm/assets/src/components/primitives/Switch/Switch.css.ts.vanilla-CxqwUToB.css +100 -0
  47. package/dist/esm/assets/src/components/primitives/Text/Text.css.ts.vanilla-qTMvgKKC.css +126 -0
  48. package/dist/esm/assets/src/components/primitives/Tooltip/Tooltip.css.ts.vanilla-CrEFoLBX.css +71 -0
  49. package/dist/esm/assets/src/components/primitives/canvas/CanvasContainer.css.ts.vanilla-DR3zkEYQ.css +32 -0
  50. package/dist/esm/assets/src/components/shell/AppShell/AppShell.css.ts.vanilla-BYmtU0O_.css +97 -0
  51. package/dist/esm/assets/src/components/shell/FloatingPanel/FloatingPanel.css.ts.vanilla-1rIAXEFp.css +88 -0
  52. package/dist/esm/assets/src/components/shell/MenuBar/MenuBar.css.ts.vanilla-TgPcl4yA.css +120 -0
  53. package/dist/esm/assets/src/components/shell/StatusBar/StatusBar.css.ts.vanilla-BwO7oAZi.css +113 -0
  54. package/dist/esm/assets/src/components/shell/Toolbar/Toolbar.css.ts.vanilla-DPqftT18.css +97 -0
  55. package/dist/esm/assets/src/theme/darkTheme.css.ts.vanilla-V8lWHaQH.css +95 -0
  56. package/dist/esm/components/Icons/CheckIcon.js.map +1 -1
  57. package/dist/esm/components/Icons/ChevronDownIcon.js.map +1 -1
  58. package/dist/esm/components/Icons/ChevronUpIcon.js.map +1 -1
  59. package/dist/esm/components/Icons/CircleIcon.js.map +1 -1
  60. package/dist/esm/components/Icons/CloseIcon.js.map +1 -1
  61. package/dist/esm/components/Icons/EyeDropperIcon.js.map +1 -1
  62. package/dist/esm/components/Icons/TangentAlignedIcon.js.map +1 -1
  63. package/dist/esm/components/Icons/TangentAutoIcon.js.map +1 -1
  64. package/dist/esm/components/Icons/TangentFreeIcon.js.map +1 -1
  65. package/dist/esm/components/Icons/TangentLinearIcon.js.map +1 -1
  66. package/dist/esm/components/Icons/TangentMirroredIcon.js.map +1 -1
  67. package/dist/esm/components/Icons/TangentStepIcon.js.map +1 -1
  68. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.css.js +9 -0
  69. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.css.js.map +1 -0
  70. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js +99 -0
  71. package/dist/esm/components/controls/CartesianPicker/CartesianPicker.js.map +1 -0
  72. package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js +230 -0
  73. package/dist/esm/components/controls/CartesianPicker/useCartesianInteraction.js.map +1 -0
  74. package/dist/esm/components/controls/CartesianPicker/useCartesianRenderer.js +122 -0
  75. package/dist/esm/components/controls/CartesianPicker/useCartesianRenderer.js.map +1 -0
  76. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js +4 -41
  77. package/dist/esm/components/controls/ColorPicker/AlphaSlider.js.map +1 -1
  78. package/dist/esm/components/controls/ColorPicker/ColorArea.js +3 -32
  79. package/dist/esm/components/controls/ColorPicker/ColorArea.js.map +1 -1
  80. package/dist/esm/components/controls/ColorPicker/ColorInputs.js +3 -68
  81. package/dist/esm/components/controls/ColorPicker/ColorInputs.js.map +1 -1
  82. package/dist/esm/components/controls/ColorPicker/ColorPalette.js +5 -75
  83. package/dist/esm/components/controls/ColorPicker/ColorPalette.js.map +1 -1
  84. package/dist/esm/components/controls/ColorPicker/ColorPicker.css.js +34 -0
  85. package/dist/esm/components/controls/ColorPicker/ColorPicker.css.js.map +1 -0
  86. package/dist/esm/components/controls/ColorPicker/ColorPicker.js +4 -18
  87. package/dist/esm/components/controls/ColorPicker/ColorPicker.js.map +1 -1
  88. package/dist/esm/components/controls/ColorPicker/ColorPresets.js +5 -44
  89. package/dist/esm/components/controls/ColorPicker/ColorPresets.js.map +1 -1
  90. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js +4 -58
  91. package/dist/esm/components/controls/ColorPicker/ColorSwatch.js.map +1 -1
  92. package/dist/esm/components/controls/ColorPicker/EyeDropper.js +4 -50
  93. package/dist/esm/components/controls/ColorPicker/EyeDropper.js.map +1 -1
  94. package/dist/esm/components/controls/ColorPicker/HueSlider.js +3 -32
  95. package/dist/esm/components/controls/ColorPicker/HueSlider.js.map +1 -1
  96. package/dist/esm/components/controls/ColorPicker/colorUtils.js.map +1 -1
  97. package/dist/esm/components/controls/ColorPicker/palettes/material.js.map +1 -1
  98. package/dist/esm/components/controls/ColorPicker/palettes/professional.js.map +1 -1
  99. package/dist/esm/components/controls/ColorPicker/palettes/tailwind.js.map +1 -1
  100. package/dist/esm/components/controls/ColorPicker/useColor.js +1 -0
  101. package/dist/esm/components/controls/ColorPicker/useColor.js.map +1 -1
  102. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js +8 -30
  103. package/dist/esm/components/controls/CurveEditor/CurveCanvas.js.map +1 -1
  104. package/dist/esm/components/controls/CurveEditor/CurveEditor.css.js +17 -0
  105. package/dist/esm/components/controls/CurveEditor/CurveEditor.css.js.map +1 -0
  106. package/dist/esm/components/controls/CurveEditor/CurveEditor.js +17 -23
  107. package/dist/esm/components/controls/CurveEditor/CurveEditor.js.map +1 -1
  108. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js +6 -23
  109. package/dist/esm/components/controls/CurveEditor/CurveToolbar.js.map +1 -1
  110. package/dist/esm/components/controls/CurveEditor/curvePresets.js.map +1 -1
  111. package/dist/esm/components/controls/CurveEditor/curveUtils.js +7 -16
  112. package/dist/esm/components/controls/CurveEditor/curveUtils.js.map +1 -1
  113. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js +1 -0
  114. package/dist/esm/components/controls/CurveEditor/useCurveInteraction.js.map +1 -1
  115. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js +39 -193
  116. package/dist/esm/components/controls/CurveEditor/useCurveRenderer.js.map +1 -1
  117. package/dist/esm/components/controls/NumberInput/NumberInput.css.js +17 -0
  118. package/dist/esm/components/controls/NumberInput/NumberInput.css.js.map +1 -0
  119. package/dist/esm/components/controls/NumberInput/NumberInput.js +22 -166
  120. package/dist/esm/components/controls/NumberInput/NumberInput.js.map +1 -1
  121. package/dist/esm/components/controls/NumberInput/useNumberInput.js +1 -1
  122. package/dist/esm/components/controls/NumberInput/useNumberInput.js.map +1 -1
  123. package/dist/esm/components/controls/Select/Select.css.js +18 -0
  124. package/dist/esm/components/controls/Select/Select.css.js.map +1 -0
  125. package/dist/esm/components/controls/Select/Select.js +29 -235
  126. package/dist/esm/components/controls/Select/Select.js.map +1 -1
  127. package/dist/esm/components/controls/Slider/Slider.css.js +17 -0
  128. package/dist/esm/components/controls/Slider/Slider.css.js.map +1 -0
  129. package/dist/esm/components/controls/Slider/Slider.js +12 -159
  130. package/dist/esm/components/controls/Slider/Slider.js.map +1 -1
  131. package/dist/esm/components/controls/TreeView/TreeNode.css.js +15 -0
  132. package/dist/esm/components/controls/TreeView/TreeNode.css.js.map +1 -0
  133. package/dist/esm/components/controls/TreeView/TreeNode.js +18 -90
  134. package/dist/esm/components/controls/TreeView/TreeNode.js.map +1 -1
  135. package/dist/esm/components/controls/TreeView/TreeView.css.js +8 -0
  136. package/dist/esm/components/controls/TreeView/TreeView.css.js.map +1 -0
  137. package/dist/esm/components/controls/TreeView/TreeView.js +11 -18
  138. package/dist/esm/components/controls/TreeView/TreeView.js.map +1 -1
  139. package/dist/esm/components/controls/TreeView/useTreeState.js +1 -0
  140. package/dist/esm/components/controls/TreeView/useTreeState.js.map +1 -1
  141. package/dist/esm/components/controls/VectorInput/VectorInput.css.js +13 -0
  142. package/dist/esm/components/controls/VectorInput/VectorInput.css.js.map +1 -0
  143. package/dist/esm/components/controls/VectorInput/VectorInput.js +11 -83
  144. package/dist/esm/components/controls/VectorInput/VectorInput.js.map +1 -1
  145. package/dist/esm/components/editor/ChatPanel/ChatActionBar.js +13 -0
  146. package/dist/esm/components/editor/ChatPanel/ChatActionBar.js.map +1 -0
  147. package/dist/esm/components/editor/ChatPanel/ChatAttachment.js +36 -0
  148. package/dist/esm/components/editor/ChatPanel/ChatAttachment.js.map +1 -0
  149. package/dist/esm/components/editor/ChatPanel/ChatBubble.js +13 -0
  150. package/dist/esm/components/editor/ChatPanel/ChatBubble.js.map +1 -0
  151. package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js +34 -0
  152. package/dist/esm/components/editor/ChatPanel/ChatCodeBlock.js.map +1 -0
  153. package/dist/esm/components/editor/ChatPanel/ChatContextChip.js +17 -0
  154. package/dist/esm/components/editor/ChatPanel/ChatContextChip.js.map +1 -0
  155. package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js +16 -0
  156. package/dist/esm/components/editor/ChatPanel/ChatEmptyState.js.map +1 -0
  157. package/dist/esm/components/editor/ChatPanel/ChatInput.js +67 -0
  158. package/dist/esm/components/editor/ChatPanel/ChatInput.js.map +1 -0
  159. package/dist/esm/components/editor/ChatPanel/ChatInputToolbar.js +13 -0
  160. package/dist/esm/components/editor/ChatPanel/ChatInputToolbar.js.map +1 -0
  161. package/dist/esm/components/editor/ChatPanel/ChatMessage.js +37 -0
  162. package/dist/esm/components/editor/ChatPanel/ChatMessage.js.map +1 -0
  163. package/dist/esm/components/editor/ChatPanel/ChatMessageList.js +32 -0
  164. package/dist/esm/components/editor/ChatPanel/ChatMessageList.js.map +1 -0
  165. package/dist/esm/components/editor/ChatPanel/ChatPanel.css.js +72 -0
  166. package/dist/esm/components/editor/ChatPanel/ChatPanel.css.js.map +1 -0
  167. package/dist/esm/components/editor/ChatPanel/ChatPanel.js +13 -0
  168. package/dist/esm/components/editor/ChatPanel/ChatPanel.js.map +1 -0
  169. package/dist/esm/components/editor/ChatPanel/ChatToolCall.js +35 -0
  170. package/dist/esm/components/editor/ChatPanel/ChatToolCall.js.map +1 -0
  171. package/dist/esm/components/editor/ChatPanel/ChatTypingIndicator.js +16 -0
  172. package/dist/esm/components/editor/ChatPanel/ChatTypingIndicator.js.map +1 -0
  173. package/dist/esm/components/editor/ChatPanel/useChatInput.js +60 -0
  174. package/dist/esm/components/editor/ChatPanel/useChatInput.js.map +1 -0
  175. package/dist/esm/components/editor/ChatPanel/useChatMessages.js +47 -0
  176. package/dist/esm/components/editor/ChatPanel/useChatMessages.js.map +1 -0
  177. package/dist/esm/components/editor/ChatPanel/useChatScroll.js +71 -0
  178. package/dist/esm/components/editor/ChatPanel/useChatScroll.js.map +1 -0
  179. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.css.js +10 -0
  180. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.css.js.map +1 -0
  181. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js +14 -34
  182. package/dist/esm/components/editor/PropertyInspector/PropertyGroup.js.map +1 -1
  183. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.css.js +13 -0
  184. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.css.js.map +1 -0
  185. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js +35 -64
  186. package/dist/esm/components/editor/PropertyInspector/PropertyPanel.js.map +1 -1
  187. package/dist/esm/components/editor/PropertyInspector/PropertyRow.css.js +15 -0
  188. package/dist/esm/components/editor/PropertyInspector/PropertyRow.css.js.map +1 -0
  189. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js +34 -114
  190. package/dist/esm/components/editor/PropertyInspector/PropertyRow.js.map +1 -1
  191. package/dist/esm/components/editor/PropertyInspector/PropertySection.css.js +15 -0
  192. package/dist/esm/components/editor/PropertyInspector/PropertySection.css.js.map +1 -0
  193. package/dist/esm/components/editor/PropertyInspector/PropertySection.js +15 -100
  194. package/dist/esm/components/editor/PropertyInspector/PropertySection.js.map +1 -1
  195. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js +1 -0
  196. package/dist/esm/components/editor/PropertyInspector/usePropertyUndo.js.map +1 -1
  197. package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.css.js +10 -0
  198. package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.css.js.map +1 -0
  199. package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.js +90 -0
  200. package/dist/esm/components/editor/ViewportGizmo/ViewportGizmo.js.map +1 -0
  201. package/dist/esm/components/editor/ViewportGizmo/gizmoMath.js +259 -0
  202. package/dist/esm/components/editor/ViewportGizmo/gizmoMath.js.map +1 -0
  203. package/dist/esm/components/editor/ViewportGizmo/useGizmoInteraction.js +250 -0
  204. package/dist/esm/components/editor/ViewportGizmo/useGizmoInteraction.js.map +1 -0
  205. package/dist/esm/components/editor/ViewportGizmo/useGizmoRenderer.js +191 -0
  206. package/dist/esm/components/editor/ViewportGizmo/useGizmoRenderer.js.map +1 -0
  207. package/dist/esm/components/feedback/Dialog/Dialog.css.js +16 -0
  208. package/dist/esm/components/feedback/Dialog/Dialog.css.js.map +1 -0
  209. package/dist/esm/components/feedback/Dialog/Dialog.js +6 -4
  210. package/dist/esm/components/feedback/Dialog/Dialog.js.map +1 -1
  211. package/dist/esm/components/feedback/Dialog/DialogBody.js +5 -15
  212. package/dist/esm/components/feedback/Dialog/DialogBody.js.map +1 -1
  213. package/dist/esm/components/feedback/Dialog/DialogClose.js +1 -0
  214. package/dist/esm/components/feedback/Dialog/DialogClose.js.map +1 -1
  215. package/dist/esm/components/feedback/Dialog/DialogFooter.js +5 -24
  216. package/dist/esm/components/feedback/Dialog/DialogFooter.js.map +1 -1
  217. package/dist/esm/components/feedback/Dialog/DialogHeader.js +5 -63
  218. package/dist/esm/components/feedback/Dialog/DialogHeader.js.map +1 -1
  219. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js +2 -1
  220. package/dist/esm/components/feedback/Dialog/useDialogAnimation.js.map +1 -1
  221. package/dist/esm/components/feedback/Dialog/useFocusTrap.js +1 -0
  222. package/dist/esm/components/feedback/Dialog/useFocusTrap.js.map +1 -1
  223. package/dist/esm/components/feedback/Toast/ToastContainer.css.js +10 -0
  224. package/dist/esm/components/feedback/Toast/ToastContainer.css.js.map +1 -0
  225. package/dist/esm/components/feedback/Toast/ToastContainer.js +12 -10
  226. package/dist/esm/components/feedback/Toast/ToastContainer.js.map +1 -1
  227. package/dist/esm/components/feedback/Toast/ToastItem.css.js +16 -0
  228. package/dist/esm/components/feedback/Toast/ToastItem.css.js.map +1 -0
  229. package/dist/esm/components/feedback/Toast/ToastItem.js +8 -138
  230. package/dist/esm/components/feedback/Toast/ToastItem.js.map +1 -1
  231. package/dist/esm/components/feedback/Toast/ToastProvider.js +1 -0
  232. package/dist/esm/components/feedback/Toast/ToastProvider.js.map +1 -1
  233. package/dist/esm/components/feedback/Toast/useToast.js +1 -0
  234. package/dist/esm/components/feedback/Toast/useToast.js.map +1 -1
  235. package/dist/esm/components/form/FormHelperText.css.js +7 -0
  236. package/dist/esm/components/form/FormHelperText.css.js.map +1 -0
  237. package/dist/esm/components/form/FormHelperText.js +5 -15
  238. package/dist/esm/components/form/FormHelperText.js.map +1 -1
  239. package/dist/esm/components/form/FormLabel.css.js +8 -0
  240. package/dist/esm/components/form/FormLabel.css.js.map +1 -0
  241. package/dist/esm/components/form/FormLabel.js +5 -21
  242. package/dist/esm/components/form/FormLabel.js.map +1 -1
  243. package/dist/esm/components/form/InputWrapper.css.js +7 -0
  244. package/dist/esm/components/form/InputWrapper.css.js.map +1 -0
  245. package/dist/esm/components/form/InputWrapper.js +6 -74
  246. package/dist/esm/components/form/InputWrapper.js.map +1 -1
  247. package/dist/esm/components/layout/Accordion/Accordion.css.js +20 -0
  248. package/dist/esm/components/layout/Accordion/Accordion.css.js.map +1 -0
  249. package/dist/esm/components/layout/Accordion/Accordion.js +12 -11
  250. package/dist/esm/components/layout/Accordion/Accordion.js.map +1 -1
  251. package/dist/esm/components/layout/Accordion/AccordionContent.js +4 -20
  252. package/dist/esm/components/layout/Accordion/AccordionContent.js.map +1 -1
  253. package/dist/esm/components/layout/Accordion/AccordionItem.js +4 -7
  254. package/dist/esm/components/layout/Accordion/AccordionItem.js.map +1 -1
  255. package/dist/esm/components/layout/Accordion/AccordionTrigger.js +12 -96
  256. package/dist/esm/components/layout/Accordion/AccordionTrigger.js.map +1 -1
  257. package/dist/esm/components/layout/Flex/Flex.css.js +11 -0
  258. package/dist/esm/components/layout/Flex/Flex.css.js.map +1 -0
  259. package/dist/esm/components/layout/Flex/Flex.js +47 -73
  260. package/dist/esm/components/layout/Flex/Flex.js.map +1 -1
  261. package/dist/esm/components/layout/Grid/Grid.css.js +9 -0
  262. package/dist/esm/components/layout/Grid/Grid.css.js.map +1 -0
  263. package/dist/esm/components/layout/Grid/Grid.js +39 -64
  264. package/dist/esm/components/layout/Grid/Grid.js.map +1 -1
  265. package/dist/esm/components/layout/PanelSurface/PanelSurface.css.js +16 -0
  266. package/dist/esm/components/layout/PanelSurface/PanelSurface.css.js.map +1 -0
  267. package/dist/esm/components/layout/PanelSurface/PanelSurface.js +23 -78
  268. package/dist/esm/components/layout/PanelSurface/PanelSurface.js.map +1 -1
  269. package/dist/esm/components/layout/ScrollArea/ScrollArea.css.js +27 -0
  270. package/dist/esm/components/layout/ScrollArea/ScrollArea.css.js.map +1 -0
  271. package/dist/esm/components/layout/ScrollArea/ScrollArea.js +35 -134
  272. package/dist/esm/components/layout/ScrollArea/ScrollArea.js.map +1 -1
  273. package/dist/esm/components/layout/Spacer/Spacer.css.js +8 -0
  274. package/dist/esm/components/layout/Spacer/Spacer.css.js.map +1 -0
  275. package/dist/esm/components/layout/Spacer/Spacer.js +13 -31
  276. package/dist/esm/components/layout/Spacer/Spacer.js.map +1 -1
  277. package/dist/esm/components/layout/SplitPane/SplitPane.css.js +10 -0
  278. package/dist/esm/components/layout/SplitPane/SplitPane.css.js.map +1 -0
  279. package/dist/esm/components/layout/SplitPane/SplitPane.js +12 -36
  280. package/dist/esm/components/layout/SplitPane/SplitPane.js.map +1 -1
  281. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js +5 -8
  282. package/dist/esm/components/layout/SplitPane/SplitPanePanel.js.map +1 -1
  283. package/dist/esm/components/layout/Stack/Stack.css.js +8 -0
  284. package/dist/esm/components/layout/Stack/Stack.css.js.map +1 -0
  285. package/dist/esm/components/layout/Stack/Stack.js +36 -65
  286. package/dist/esm/components/layout/Stack/Stack.js.map +1 -1
  287. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js +6 -4
  288. package/dist/esm/components/navigation/ContextMenu/ContextMenu.js.map +1 -1
  289. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js +1 -0
  290. package/dist/esm/components/navigation/ContextMenu/useContextMenuTarget.js.map +1 -1
  291. package/dist/esm/components/navigation/Menu/Menu.css.js +16 -0
  292. package/dist/esm/components/navigation/Menu/Menu.css.js.map +1 -0
  293. package/dist/esm/components/navigation/Menu/Menu.helpers.js +9 -7
  294. package/dist/esm/components/navigation/Menu/Menu.helpers.js.map +1 -1
  295. package/dist/esm/components/navigation/Menu/Menu.js +6 -4
  296. package/dist/esm/components/navigation/Menu/Menu.js.map +1 -1
  297. package/dist/esm/components/navigation/Menu/useMenu.js +1 -0
  298. package/dist/esm/components/navigation/Menu/useMenu.js.map +1 -1
  299. package/dist/esm/components/navigation/Tabs/Tab.js +31 -174
  300. package/dist/esm/components/navigation/Tabs/Tab.js.map +1 -1
  301. package/dist/esm/components/navigation/Tabs/TabList.js +5 -56
  302. package/dist/esm/components/navigation/Tabs/TabList.js.map +1 -1
  303. package/dist/esm/components/navigation/Tabs/TabPanel.js +4 -12
  304. package/dist/esm/components/navigation/Tabs/TabPanel.js.map +1 -1
  305. package/dist/esm/components/navigation/Tabs/Tabs.css.js +26 -0
  306. package/dist/esm/components/navigation/Tabs/Tabs.css.js.map +1 -0
  307. package/dist/esm/components/navigation/Tabs/Tabs.js +6 -13
  308. package/dist/esm/components/navigation/Tabs/Tabs.js.map +1 -1
  309. package/dist/esm/components/primitives/BaseButton/BaseButton.js +1 -0
  310. package/dist/esm/components/primitives/BaseButton/BaseButton.js.map +1 -1
  311. package/dist/esm/components/primitives/Button/Button.css.js +9 -0
  312. package/dist/esm/components/primitives/Button/Button.css.js.map +1 -0
  313. package/dist/esm/components/primitives/Button/Button.js +5 -149
  314. package/dist/esm/components/primitives/Button/Button.js.map +1 -1
  315. package/dist/esm/components/primitives/Checkbox/Checkbox.css.js +14 -0
  316. package/dist/esm/components/primitives/Checkbox/Checkbox.css.js.map +1 -0
  317. package/dist/esm/components/primitives/Checkbox/Checkbox.js +20 -112
  318. package/dist/esm/components/primitives/Checkbox/Checkbox.js.map +1 -1
  319. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js +10 -17
  320. package/dist/esm/components/primitives/Checkbox/CheckboxGroup.js.map +1 -1
  321. package/dist/esm/components/primitives/Collapsible/Collapsible.css.js +18 -0
  322. package/dist/esm/components/primitives/Collapsible/Collapsible.css.js.map +1 -0
  323. package/dist/esm/components/primitives/Collapsible/Collapsible.js +45 -83
  324. package/dist/esm/components/primitives/Collapsible/Collapsible.js.map +1 -1
  325. package/dist/esm/components/primitives/Icon/Icon.css.js +7 -0
  326. package/dist/esm/components/primitives/Icon/Icon.css.js.map +1 -0
  327. package/dist/esm/components/primitives/Icon/Icon.js +23 -55
  328. package/dist/esm/components/primitives/Icon/Icon.js.map +1 -1
  329. package/dist/esm/components/primitives/IconButton/IconButton.css.js +8 -0
  330. package/dist/esm/components/primitives/IconButton/IconButton.css.js.map +1 -0
  331. package/dist/esm/components/primitives/IconButton/IconButton.js +10 -170
  332. package/dist/esm/components/primitives/IconButton/IconButton.js.map +1 -1
  333. package/dist/esm/components/primitives/Input/Input.css.js +12 -0
  334. package/dist/esm/components/primitives/Input/Input.css.js.map +1 -0
  335. package/dist/esm/components/primitives/Input/Input.js +11 -79
  336. package/dist/esm/components/primitives/Input/Input.js.map +1 -1
  337. package/dist/esm/components/primitives/Paper/Paper.css.js +7 -0
  338. package/dist/esm/components/primitives/Paper/Paper.css.js.map +1 -0
  339. package/dist/esm/components/primitives/Paper/Paper.js +18 -90
  340. package/dist/esm/components/primitives/Paper/Paper.js.map +1 -1
  341. package/dist/esm/components/primitives/Popover/Popover.css.js +8 -0
  342. package/dist/esm/components/primitives/Popover/Popover.css.js.map +1 -0
  343. package/dist/esm/components/primitives/Popover/Popover.js +1 -0
  344. package/dist/esm/components/primitives/Popover/Popover.js.map +1 -1
  345. package/dist/esm/components/primitives/Popover/PopoverClose.js +4 -32
  346. package/dist/esm/components/primitives/Popover/PopoverClose.js.map +1 -1
  347. package/dist/esm/components/primitives/Popover/PopoverContent.js +19 -45
  348. package/dist/esm/components/primitives/Popover/PopoverContent.js.map +1 -1
  349. package/dist/esm/components/primitives/Popover/PopoverTrigger.js +1 -0
  350. package/dist/esm/components/primitives/Popover/PopoverTrigger.js.map +1 -1
  351. package/dist/esm/components/primitives/Switch/Switch.css.js +15 -0
  352. package/dist/esm/components/primitives/Switch/Switch.css.js.map +1 -0
  353. package/dist/esm/components/primitives/Switch/Switch.js +29 -122
  354. package/dist/esm/components/primitives/Switch/Switch.js.map +1 -1
  355. package/dist/esm/components/primitives/Text/Text.css.js +9 -0
  356. package/dist/esm/components/primitives/Text/Text.css.js.map +1 -0
  357. package/dist/esm/components/primitives/Text/Text.js +20 -126
  358. package/dist/esm/components/primitives/Text/Text.js.map +1 -1
  359. package/dist/esm/components/primitives/Tooltip/Arrow.js +8 -41
  360. package/dist/esm/components/primitives/Tooltip/Arrow.js.map +1 -1
  361. package/dist/esm/components/primitives/Tooltip/Tooltip.css.js +9 -0
  362. package/dist/esm/components/primitives/Tooltip/Tooltip.css.js.map +1 -0
  363. package/dist/esm/components/primitives/Tooltip/Tooltip.js +20 -79
  364. package/dist/esm/components/primitives/Tooltip/Tooltip.js.map +1 -1
  365. package/dist/esm/components/primitives/Tooltip/utils.js.map +1 -1
  366. package/dist/esm/components/primitives/canvas/CanvasContainer.css.js +10 -0
  367. package/dist/esm/components/primitives/canvas/CanvasContainer.css.js.map +1 -0
  368. package/dist/esm/components/primitives/canvas/CanvasContainer.js +32 -0
  369. package/dist/esm/components/primitives/canvas/CanvasContainer.js.map +1 -0
  370. package/dist/esm/components/primitives/canvas/canvasCoords.js +51 -0
  371. package/dist/esm/components/primitives/canvas/canvasCoords.js.map +1 -0
  372. package/dist/esm/components/primitives/canvas/canvasDrawing.js +251 -0
  373. package/dist/esm/components/primitives/canvas/canvasDrawing.js.map +1 -0
  374. package/dist/esm/components/primitives/canvas/canvasTheme.js +43 -0
  375. package/dist/esm/components/primitives/canvas/canvasTheme.js.map +1 -0
  376. package/dist/esm/components/primitives/canvas/useCanvasRenderer.js +26 -0
  377. package/dist/esm/components/primitives/canvas/useCanvasRenderer.js.map +1 -0
  378. package/dist/esm/components/shell/AppShell/AppShell.css.js +13 -0
  379. package/dist/esm/components/shell/AppShell/AppShell.css.js.map +1 -0
  380. package/dist/esm/components/shell/AppShell/AppShell.js +16 -101
  381. package/dist/esm/components/shell/AppShell/AppShell.js.map +1 -1
  382. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js +18 -0
  383. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.css.js.map +1 -0
  384. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js +20 -97
  385. package/dist/esm/components/shell/FloatingPanel/FloatingPanel.js.map +1 -1
  386. package/dist/esm/components/shell/MenuBar/MenuBar.css.js +16 -0
  387. package/dist/esm/components/shell/MenuBar/MenuBar.css.js.map +1 -0
  388. package/dist/esm/components/shell/MenuBar/MenuBar.js +14 -139
  389. package/dist/esm/components/shell/MenuBar/MenuBar.js.map +1 -1
  390. package/dist/esm/components/shell/StatusBar/StatusBar.css.js +11 -0
  391. package/dist/esm/components/shell/StatusBar/StatusBar.css.js.map +1 -0
  392. package/dist/esm/components/shell/StatusBar/StatusBar.js +11 -107
  393. package/dist/esm/components/shell/StatusBar/StatusBar.js.map +1 -1
  394. package/dist/esm/components/shell/Toolbar/Toolbar.css.js +11 -0
  395. package/dist/esm/components/shell/Toolbar/Toolbar.css.js.map +1 -0
  396. package/dist/esm/components/shell/Toolbar/Toolbar.js +21 -97
  397. package/dist/esm/components/shell/Toolbar/Toolbar.js.map +1 -1
  398. package/dist/esm/context/KeyboardContext.js +1 -0
  399. package/dist/esm/context/KeyboardContext.js.map +1 -1
  400. package/dist/esm/index.js +26 -3
  401. package/dist/esm/index.js.map +1 -1
  402. package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js +15 -0
  403. package/dist/esm/node_modules/@vanilla-extract/css/adapter/dist/vanilla-extract-css-adapter.esm.js.map +1 -0
  404. package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js +128 -0
  405. package/dist/esm/node_modules/@vanilla-extract/css/dist/transformCss-fd0786e1.esm.js.map +1 -0
  406. package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js +70 -0
  407. package/dist/esm/node_modules/@vanilla-extract/css/dist/vanilla-extract-css.esm.js.map +1 -0
  408. package/dist/esm/node_modules/@vanilla-extract/css/node_modules/lru-cache/dist/esm/index.js +1543 -0
  409. package/dist/esm/node_modules/@vanilla-extract/css/node_modules/lru-cache/dist/esm/index.js.map +1 -0
  410. package/dist/esm/node_modules/@vanilla-extract/dynamic/dist/vanilla-extract-dynamic.esm.js +25 -0
  411. package/dist/esm/node_modules/@vanilla-extract/dynamic/dist/vanilla-extract-dynamic.esm.js.map +1 -0
  412. package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js +10 -0
  413. package/dist/esm/node_modules/@vanilla-extract/private/dist/vanilla-extract-private.esm.js.map +1 -0
  414. package/dist/esm/node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js +112 -0
  415. package/dist/esm/node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js.map +1 -0
  416. package/dist/esm/node_modules/cssesc/cssesc.js +120 -0
  417. package/dist/esm/node_modules/cssesc/cssesc.js.map +1 -0
  418. package/dist/esm/node_modules/dedent/dist/dedent.js +98 -0
  419. package/dist/esm/node_modules/dedent/dist/dedent.js.map +1 -0
  420. package/dist/esm/node_modules/deepmerge/dist/cjs.js +143 -0
  421. package/dist/esm/node_modules/deepmerge/dist/cjs.js.map +1 -0
  422. package/dist/esm/theme/ThemeProvider.js +13 -7
  423. package/dist/esm/theme/ThemeProvider.js.map +1 -1
  424. package/dist/esm/theme/VanillaThemeProvider.js +26 -0
  425. package/dist/esm/theme/VanillaThemeProvider.js.map +1 -0
  426. package/dist/esm/theme/contract.css.js +4 -0
  427. package/dist/esm/theme/contract.css.js.map +1 -0
  428. package/dist/esm/theme/darkTheme.css.js +6 -0
  429. package/dist/esm/theme/darkTheme.css.js.map +1 -0
  430. package/dist/esm/utils/cx.js +14 -0
  431. package/dist/esm/utils/cx.js.map +1 -0
  432. package/dist/esm/utils/mathExpression.js.map +1 -1
  433. package/dist/esm/utils/mathUtils.js.map +1 -1
  434. package/dist/types/components/controls/CartesianPicker/CartesianPicker.d.ts +6 -0
  435. package/dist/types/components/controls/CartesianPicker/CartesianPicker.types.d.ts +163 -0
  436. package/dist/types/components/controls/CurveEditor/CurveEditor.types.d.ts +5 -13
  437. package/dist/types/components/controls/CurveEditor/curveUtils.d.ts +3 -1
  438. package/dist/types/components/controls/Select/Select.d.ts +1 -1
  439. package/dist/types/components/editor/ChatPanel/ChatActionBar.d.ts +288 -0
  440. package/dist/types/components/editor/ChatPanel/ChatAttachment.d.ts +292 -0
  441. package/dist/types/components/editor/ChatPanel/ChatBubble.d.ts +289 -0
  442. package/dist/types/components/editor/ChatPanel/ChatCodeBlock.d.ts +294 -0
  443. package/dist/types/components/editor/ChatPanel/ChatContextChip.d.ts +292 -0
  444. package/dist/types/components/editor/ChatPanel/ChatEmptyState.d.ts +292 -0
  445. package/dist/types/components/editor/ChatPanel/ChatInput.d.ts +300 -0
  446. package/dist/types/components/editor/ChatPanel/ChatInputToolbar.d.ts +288 -0
  447. package/dist/types/components/editor/ChatPanel/ChatMessage.d.ts +294 -0
  448. package/dist/types/components/editor/ChatPanel/ChatMessageList.d.ts +293 -0
  449. package/dist/types/components/editor/ChatPanel/ChatPanel.d.ts +290 -0
  450. package/dist/types/components/editor/ChatPanel/ChatPanel.types.d.ts +409 -0
  451. package/dist/types/components/editor/ChatPanel/ChatToolCall.d.ts +294 -0
  452. package/dist/types/components/editor/ChatPanel/ChatTypingIndicator.d.ts +291 -0
  453. package/dist/types/components/editor/ChatPanel/useChatInput.d.ts +5 -0
  454. package/dist/types/components/editor/ChatPanel/useChatMessages.d.ts +5 -0
  455. package/dist/types/components/editor/ChatPanel/useChatScroll.d.ts +5 -0
  456. package/dist/types/components/editor/ViewportGizmo/ViewportGizmo.d.ts +6 -0
  457. package/dist/types/components/editor/ViewportGizmo/ViewportGizmo.types.d.ts +146 -0
  458. package/dist/types/components/editor/ViewportGizmo/gizmoMath.d.ts +73 -0
  459. package/dist/types/components/form/FormHelperText.d.ts +13 -15
  460. package/dist/types/components/form/FormLabel.d.ts +13 -15
  461. package/dist/types/components/form/InputWrapper.d.ts +13 -15
  462. package/dist/types/components/layout/PanelSurface/PanelSurface.d.ts +54 -59
  463. package/dist/types/components/layout/Spacer/Spacer.d.ts +17 -19
  464. package/dist/types/components/navigation/Menu/Menu.types.d.ts +1 -1
  465. package/dist/types/components/primitives/Button/Button.d.ts +30 -18
  466. package/dist/types/components/primitives/Icon/Icon.d.ts +0 -7
  467. package/dist/types/components/primitives/IconButton/IconButton.d.ts +26 -19
  468. package/dist/types/components/primitives/Input/Input.d.ts +7 -2
  469. package/dist/types/components/primitives/Paper/Paper.d.ts +23 -21
  470. package/dist/types/components/primitives/Switch/Switch.d.ts +7 -2
  471. package/dist/types/components/primitives/Text/Text.d.ts +20 -18
  472. package/dist/types/components/primitives/Tooltip/Tooltip.d.ts +7 -3
  473. package/dist/types/components/primitives/Tooltip/types.d.ts +1 -1
  474. package/dist/types/components/primitives/canvas/canvas.types.d.ts +27 -0
  475. package/dist/types/components/shell/AppShell/AppShell.d.ts +86 -92
  476. package/dist/types/components/shell/MenuBar/MenuBar.d.ts +66 -72
  477. package/dist/types/components/shell/StatusBar/StatusBar.d.ts +42 -46
  478. package/dist/types/components/shell/Toolbar/Toolbar.d.ts +77 -84
  479. package/dist/types/index.d.ts +29 -6
  480. package/dist/types/theme/ThemeProvider.d.ts +9 -2
  481. package/dist/types/theme/VanillaThemeProvider.d.ts +34 -0
  482. package/dist/types/theme/contract.css.d.ts +164 -0
  483. package/dist/types/theme/{tokens.d.ts → darkTheme.css.d.ts} +43 -39
  484. package/dist/types/types/common.d.ts +1 -8
  485. package/dist/types/utils/cx.d.ts +11 -0
  486. package/package.json +34 -30
  487. package/dist/esm/components/feedback/Dialog/Dialog.styled.js +0 -80
  488. package/dist/esm/components/feedback/Dialog/Dialog.styled.js.map +0 -1
  489. package/dist/esm/components/navigation/Menu/Menu.styled.js +0 -83
  490. package/dist/esm/components/navigation/Menu/Menu.styled.js.map +0 -1
  491. package/dist/esm/theme/createTheme.js +0 -10
  492. package/dist/esm/theme/createTheme.js.map +0 -1
  493. package/dist/esm/theme/tokens.js +0 -144
  494. package/dist/esm/theme/tokens.js.map +0 -1
  495. package/dist/esm/utils/objects.js +0 -22
  496. package/dist/esm/utils/objects.js.map +0 -1
  497. package/dist/esm/utils/styledUtils.js +0 -81
  498. package/dist/esm/utils/styledUtils.js.map +0 -1
  499. package/dist/types/theme/createTheme.d.ts +0 -6
  500. package/dist/types/theme/types.d.ts +0 -7
@@ -1,64 +1,13 @@
1
+ "use client";
1
2
  import { jsx } from 'react/jsx-runtime';
2
3
  import { useRef, useCallback } from 'react';
3
- import styled from '@emotion/styled';
4
4
  import { useTabsContext } from './Tabs.js';
5
+ import { cx } from '../../../utils/cx.js';
6
+ import { tabListRecipe } from './Tabs.css.js';
5
7
 
6
- const StyledTabList = styled.div `
7
- display: flex;
8
- flex-direction: ${props => props.$orientation === 'vertical' ? 'column' : 'row'};
9
- align-items: stretch;
10
- overflow-x: ${props => props.$orientation === 'horizontal' ? 'auto' : 'visible'};
11
- overflow-y: ${props => props.$orientation === 'vertical' ? 'auto' : 'visible'};
12
- flex-shrink: 0;
13
- min-width: 0;
14
- gap: ${props => props.theme.spacing.xs}px;
15
-
16
- /* Hide scrollbar */
17
- scrollbar-width: none;
18
- &::-webkit-scrollbar {
19
- display: none;
20
- }
21
-
22
- /* Variant-specific styles */
23
- ${props => {
24
- const { colors } = props.theme;
25
- switch (props.$variant) {
26
- case 'underline':
27
- return props.$orientation === 'vertical'
28
- ? `border-right: 1px solid ${colors.border.default};`
29
- : `border-bottom: 1px solid ${colors.border.default};`;
30
- case 'enclosed':
31
- return props.$orientation === 'vertical'
32
- ? `
33
- border-right: 1px solid ${colors.border.default};
34
- padding: ${props.theme.spacing.xs}px 0;
35
- `
36
- : `
37
- border-bottom: 1px solid ${colors.border.default};
38
- padding: 0 ${props.theme.spacing.xs}px;
39
- `;
40
- case 'pills':
41
- return props.$pillsFrame
42
- ? `
43
- padding: ${props.theme.spacing.xs}px;
44
- border: 1px solid ${colors.border.default};
45
- border-radius: ${props.theme.borderRadius.md}px;
46
- background: ${colors.background.secondary};
47
- `
48
- : `
49
- padding: 0;
50
- border: none;
51
- border-radius: 0;
52
- background: transparent;
53
- `;
54
- default:
55
- return '';
56
- }
57
- }}
58
- `;
59
8
  // --- Component ---
60
9
  const TabList = ({ children, className, style, testId, ref, ...rest }) => {
61
- const { orientation, variant, fullWidth, pillsFrame } = useTabsContext();
10
+ const { orientation, variant, pillsFrame } = useTabsContext();
62
11
  const listRef = useRef(null);
63
12
  const setListRef = useCallback((node) => {
64
13
  listRef.current = node;
@@ -107,7 +56,7 @@ const TabList = ({ children, className, style, testId, ref, ...rest }) => {
107
56
  tabs[nextIndex]?.focus();
108
57
  }
109
58
  }, [orientation]);
110
- return (jsx(StyledTabList, { ref: setListRef, role: "tablist", "aria-orientation": orientation, "$orientation": orientation, "$variant": variant, "$fullWidth": fullWidth, "$pillsFrame": pillsFrame, className: className, style: style, "data-testid": testId, onKeyDown: handleKeyDown, ...rest, children: children }));
59
+ return (jsx("div", { ref: setListRef, role: "tablist", "aria-orientation": orientation, className: cx(tabListRecipe({ orientation, variant, pillsFrame }), className), style: style, "data-testid": testId, onKeyDown: handleKeyDown, ...rest, children: children }));
111
60
  };
112
61
  TabList.displayName = 'TabList';
113
62
 
@@ -1 +1 @@
1
- {"version":3,"file":"TabList.js","sources":["../../../../../../src/components/navigation/Tabs/TabList.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;;AAcA,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAoB;;AAEhC,kBAAA,EAAA,KAAK,IACrB,KAAK,CAAC,YAAY,KAAK,UAAU,GAAG,QAAQ,GAAG,KAAK,CAAA;;AAExC,cAAA,EAAA,KAAK,IACjB,KAAK,CAAC,YAAY,KAAK,YAAY,GAAG,MAAM,GAAG,SAAS,CAAA;AAC5C,cAAA,EAAA,KAAK,IACjB,KAAK,CAAC,YAAY,KAAK,UAAU,GAAG,MAAM,GAAG,SAAS,CAAA;;;SAGjD,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;;;;;;;;;AASpC,EAAA,EAAA,KAAK,IAAG;AACR,IAAA,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK;AAE9B,IAAA,QAAQ,KAAK,CAAC,QAAQ;AACpB,QAAA,KAAK,WAAW;AACd,YAAA,OAAO,KAAK,CAAC,YAAY,KAAK;AAC5B,kBAAE,CAA2B,wBAAA,EAAA,MAAM,CAAC,MAAM,CAAC,OAAO,CAAG,CAAA;kBACnD,4BAA4B,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG;AAC1D,QAAA,KAAK,UAAU;AACb,YAAA,OAAO,KAAK,CAAC,YAAY,KAAK;AAC5B,kBAAE;wCAC4B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAA;AACpC,uBAAA,EAAA,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;AAClC,YAAA;AACH,kBAAE;yCAC6B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAA;AACnC,yBAAA,EAAA,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;aACpC;AACP,QAAA,KAAK,OAAO;YACV,OAAO,KAAK,CAAC;AACX,kBAAE;AACa,uBAAA,EAAA,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAA;kCACb,MAAM,CAAC,MAAM,CAAC,OAAO,CAAA;AACxB,6BAAA,EAAA,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAA;4BAC9B,MAAM,CAAC,UAAU,CAAC,SAAS,CAAA;AAC1C,YAAA;AACH,kBAAE;;;;;aAKC;AACP,QAAA;AACE,YAAA,OAAO,EAAE;;AAEf,CAAC;CACF;AAED;MAEa,OAAO,GAA2B,CAAC,EAC9C,QAAQ,EACR,SAAS,EACT,KAAK,EACL,MAAM,EACN,GAAG,EACH,GAAG,IAAI,EACR,KAAI;AACH,IAAA,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,cAAc,EAAE;AACxE,IAAA,MAAM,OAAO,GAAG,MAAM,CAAwB,IAAI,CAAC;AAEnD,IAAA,MAAM,UAAU,GAAG,WAAW,CAC5B,CAAC,IAA2B,KAAI;AAC9B,QAAA,OAAO,CAAC,OAAO,GAAG,IAAI;AACtB,QAAA,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,GAAG,CAAC,IAAI,CAAC;;aACJ,IAAI,GAAG,EAAE;AACb,YAAA,GAAqD,CAAC,OAAO,GAAG,IAAI;;AAEzE,KAAC,EACD,CAAC,GAAG,CAAC,CACN;AAED,IAAA,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,CAAsB,KAAI;AACzB,QAAA,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO;AAC5B,QAAA,IAAI,CAAC,IAAI;YAAE;AAEX,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CACrB,IAAI,CAAC,gBAAgB,CAAoB,cAAc,CAAC,CACzD;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAA2B,CAAC;QAChE,IAAI,YAAY,KAAK,EAAE;YAAE;AAEzB,QAAA,MAAM,YAAY,GAAG,WAAW,KAAK,YAAY;QACjD,MAAM,OAAO,GAAG,YAAY,GAAG,YAAY,GAAG,WAAW;QACzD,MAAM,OAAO,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS;QAEtD,IAAI,SAAS,GAAkB,IAAI;AAEnC,QAAA,QAAQ,CAAC,CAAC,GAAG;AACX,YAAA,KAAK,OAAO;gBACV,CAAC,CAAC,cAAc,EAAE;AAClB,gBAAA,SAAS,GAAG,YAAY,GAAG,CAAC;AAC5B,gBAAA,IAAI,SAAS,IAAI,IAAI,CAAC,MAAM;oBAAE,SAAS,GAAG,CAAC;gBAC3C;AACF,YAAA,KAAK,OAAO;gBACV,CAAC,CAAC,cAAc,EAAE;AAClB,gBAAA,SAAS,GAAG,YAAY,GAAG,CAAC;gBAC5B,IAAI,SAAS,GAAG,CAAC;AAAE,oBAAA,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;gBAC9C;AACF,YAAA,KAAK,MAAM;gBACT,CAAC,CAAC,cAAc,EAAE;gBAClB,SAAS,GAAG,CAAC;gBACb;AACF,YAAA,KAAK,KAAK;gBACR,CAAC,CAAC,cAAc,EAAE;AAClB,gBAAA,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;gBAC3B;;AAGJ,QAAA,IAAI,SAAS,KAAK,IAAI,EAAE;AACtB,YAAA,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE;;AAE5B,KAAC,EACD,CAAC,WAAW,CAAC,CACd;AAED,IAAA,QACEA,GAAC,CAAA,aAAa,IACZ,GAAG,EAAE,UAAU,EACf,IAAI,EAAC,SAAS,sBACI,WAAW,EAAA,cAAA,EACf,WAAW,EACf,UAAA,EAAA,OAAO,gBACL,SAAS,EAAA,aAAA,EACR,UAAU,EACvB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACC,aAAA,EAAA,MAAM,EACnB,SAAS,EAAE,aAAa,EACpB,GAAA,IAAI,YAEP,QAAQ,EAAA,CACK;AAEpB;AAEA,OAAO,CAAC,WAAW,GAAG,SAAS;;;;"}
1
+ {"version":3,"file":"TabList.js","sources":["../../../../../../src/components/navigation/Tabs/TabList.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAQA;;;AAWE;AAEA;AAEI;AACA;;;;AAGG;;AAEL;AAIF;AAEI;AACA;;AAEA;;;;AAMA;;;;AAMA;AACE;;AAEE;AACA;;;AAEF;;AAEE;;AACmB;;AAErB;;;;AAIA;;AAEE;;;AAIJ;AACE;;AAEJ;;AAqBJ;AAEA;;"}
@@ -1,17 +1,9 @@
1
+ "use client";
1
2
  import { jsx } from 'react/jsx-runtime';
2
- import styled from '@emotion/styled';
3
3
  import { useTabsContext } from './Tabs.js';
4
+ import { cx } from '../../../utils/cx.js';
5
+ import { tabPanelStyle } from './Tabs.css.js';
4
6
 
5
- // --- Styled ---
6
- const StyledTabPanel = styled.div `
7
- display: flex;
8
- flex: 1 1 auto;
9
- flex-direction: column;
10
- min-width: 0;
11
- min-height: 0;
12
- overflow: hidden;
13
- outline: none;
14
- `;
15
7
  // --- Component ---
16
8
  const TabPanel = ({ value, children, keepMounted = false, className, style, testId, ref, ...rest }) => {
17
9
  const { activeValue, tabsId } = useTabsContext();
@@ -21,7 +13,7 @@ const TabPanel = ({ value, children, keepMounted = false, className, style, test
21
13
  if (!isActive && !keepMounted) {
22
14
  return null;
23
15
  }
24
- return (jsx(StyledTabPanel, { ref: ref, role: "tabpanel", id: panelId, "aria-labelledby": tabId, tabIndex: isActive ? 0 : -1, hidden: !isActive || undefined, className: className, style: {
16
+ return (jsx("div", { ref: ref, role: "tabpanel", id: panelId, "aria-labelledby": tabId, tabIndex: isActive ? 0 : -1, hidden: !isActive || undefined, className: cx(tabPanelStyle, className), style: {
25
17
  ...style,
26
18
  ...(isActive ? undefined : { display: 'none' }),
27
19
  }, "data-testid": testId, ...rest, children: children }));
@@ -1 +1 @@
1
- {"version":3,"file":"TabPanel.js","sources":["../../../../../../src/components/navigation/Tabs/TabPanel.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;AAKA;AAEA,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;CAQhC;AAED;AAEa,MAAA,QAAQ,GAA4B,CAAC,EAChD,KAAK,EACL,QAAQ,EACR,WAAW,GAAG,KAAK,EACnB,SAAS,EACT,KAAK,EACL,MAAM,EACN,GAAG,EACH,GAAG,IAAI,EACR,KAAI;IACH,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE;AAChD,IAAA,MAAM,QAAQ,GAAG,WAAW,KAAK,KAAK;AAEtC,IAAA,MAAM,KAAK,GAAG,CAAA,KAAA,EAAQ,MAAM,CAAQ,KAAA,EAAA,KAAK,EAAE;AAC3C,IAAA,MAAM,OAAO,GAAG,CAAA,KAAA,EAAQ,MAAM,CAAU,OAAA,EAAA,KAAK,EAAE;AAE/C,IAAA,IAAI,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE;AAC7B,QAAA,OAAO,IAAI;;AAGb,IAAA,QACEA,GAAC,CAAA,cAAc,IACb,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,OAAO,qBACM,KAAK,EACtB,QAAQ,EAAE,QAAQ,GAAG,CAAC,GAAG,EAAE,EAC3B,MAAM,EAAE,CAAC,QAAQ,IAAI,SAAS,EAC9B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE;AACL,YAAA,GAAG,KAAK;AACR,YAAA,IAAI,QAAQ,GAAG,SAAS,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAChD,SAAA,EAAA,aAAA,EACY,MAAM,EACf,GAAA,IAAI,YAEP,QAAQ,EAAA,CACM;AAErB;AAEA,QAAQ,CAAC,WAAW,GAAG,UAAU;;;;"}
1
+ {"version":3,"file":"TabPanel.js","sources":["../../../../../../src/components/navigation/Tabs/TabPanel.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAQA;AAEO;;AAWL;AAEA;AACA;AAEA;AACE;;;AAaI;AACA;AACD;AAOP;AAEA;;"}
@@ -0,0 +1,26 @@
1
+ import './../../../assets/src/components/navigation/Tabs/Tabs.css.ts.vanilla-D7RGpDPC.css';
2
+ import { c as createRuntimeFn } from '../../../node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js';
3
+
4
+ var tabBaseStyle = 'Tabs_tabBaseStyle__v404x7i';
5
+ var tabCloseButtonStyle = 'Tabs_tabCloseButtonStyle__v404x715';
6
+ var tabEnclosedActiveHorizontalStyle = 'Tabs_tabEnclosedActiveHorizontalStyle__v404x711';
7
+ var tabEnclosedActiveVerticalStyle = 'Tabs_tabEnclosedActiveVerticalStyle__v404x712';
8
+ var tabEnclosedInactiveStyle = 'Tabs_tabEnclosedInactiveStyle__v404x713';
9
+ var tabEnclosedStyle = 'Tabs_tabEnclosedStyle__v404x710';
10
+ var tabIconStyle = 'Tabs_tabIconStyle__v404x714';
11
+ var tabListRecipe = createRuntimeFn({defaultClassName:'Tabs_tabListBase__v404x73',variantClassNames:{orientation:{horizontal:'Tabs_tabListRecipe_orientation_horizontal__v404x75',vertical:'Tabs_tabListRecipe_orientation_vertical__v404x76'},variant:{underline:'Tabs_tabListRecipe_variant_underline__v404x77',pills:'Tabs_tabListRecipe_variant_pills__v404x78',enclosed:'Tabs_tabListRecipe_variant_enclosed__v404x79'},pillsFrame:{true:'Tabs_tabListRecipe_pillsFrame_true__v404x7a',false:'Tabs_tabListRecipe_pillsFrame_false__v404x7b'}},defaultVariants:{orientation:'horizontal',variant:'underline',pillsFrame:true},compoundVariants:[[{variant:'underline',orientation:'horizontal'},'Tabs_tabListRecipe_compound_0__v404x7c'],[{variant:'underline',orientation:'vertical'},'Tabs_tabListRecipe_compound_1__v404x7d'],[{variant:'enclosed',orientation:'horizontal'},'Tabs_tabListRecipe_compound_2__v404x7e'],[{variant:'enclosed',orientation:'vertical'},'Tabs_tabListRecipe_compound_3__v404x7f'],[{variant:'pills',pillsFrame:true},'Tabs_tabListRecipe_compound_4__v404x7g'],[{variant:'pills',pillsFrame:false},'Tabs_tabListRecipe_compound_5__v404x7h']]});
12
+ var tabPanelStyle = 'Tabs_tabPanelStyle__v404x716';
13
+ var tabPillsActiveStyle = 'Tabs_tabPillsActiveStyle__v404x7y';
14
+ var tabPillsInactiveStyle = 'Tabs_tabPillsInactiveStyle__v404x7z';
15
+ var tabPillsStyle = 'Tabs_tabPillsStyle__v404x7x';
16
+ var tabRecipe = createRuntimeFn({defaultClassName:'Tabs_tabRecipe__v404x7j',variantClassNames:{size:{sm:'Tabs_tabRecipe_size_sm__v404x7k',md:'Tabs_tabRecipe_size_md__v404x7l',lg:'Tabs_tabRecipe_size_lg__v404x7m'},disabled:{true:'Tabs_tabRecipe_disabled_true__v404x7n',false:'Tabs_tabRecipe_disabled_false__v404x7o'},fullWidth:{true:'Tabs_tabRecipe_fullWidth_true__v404x7p',false:'Tabs_tabRecipe_fullWidth_false__v404x7q'}},defaultVariants:{size:'md',disabled:false,fullWidth:false},compoundVariants:[]});
17
+ var tabUnderlineActiveHorizontalStyle = 'Tabs_tabUnderlineActiveHorizontalStyle__v404x7u';
18
+ var tabUnderlineActiveStyle = 'Tabs_tabUnderlineActiveStyle__v404x7s';
19
+ var tabUnderlineActiveVerticalStyle = 'Tabs_tabUnderlineActiveVerticalStyle__v404x7v';
20
+ var tabUnderlineInactiveIndicatorStyle = 'Tabs_tabUnderlineInactiveIndicatorStyle__v404x7w';
21
+ var tabUnderlineInactiveStyle = 'Tabs_tabUnderlineInactiveStyle__v404x7t';
22
+ var tabUnderlineStyle = 'Tabs_tabUnderlineStyle__v404x7r';
23
+ var tabsRootRecipe = createRuntimeFn({defaultClassName:'Tabs_tabsRootRecipe__v404x70',variantClassNames:{orientation:{horizontal:'Tabs_tabsRootRecipe_orientation_horizontal__v404x71',vertical:'Tabs_tabsRootRecipe_orientation_vertical__v404x72'}},defaultVariants:{orientation:'horizontal'},compoundVariants:[]});
24
+
25
+ export { tabBaseStyle, tabCloseButtonStyle, tabEnclosedActiveHorizontalStyle, tabEnclosedActiveVerticalStyle, tabEnclosedInactiveStyle, tabEnclosedStyle, tabIconStyle, tabListRecipe, tabPanelStyle, tabPillsActiveStyle, tabPillsInactiveStyle, tabPillsStyle, tabRecipe, tabUnderlineActiveHorizontalStyle, tabUnderlineActiveStyle, tabUnderlineActiveVerticalStyle, tabUnderlineInactiveIndicatorStyle, tabUnderlineInactiveStyle, tabUnderlineStyle, tabsRootRecipe };
26
+ //# sourceMappingURL=Tabs.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,7 +1,8 @@
1
+ "use client";
1
2
  import { jsx } from 'react/jsx-runtime';
2
- import { useId, useState, useCallback, useMemo, createContext, useContext } from 'react';
3
- import styled from '@emotion/styled';
4
- import { processCss } from '../../../utils/styledUtils.js';
3
+ import { useId, useState, useCallback, useMemo, useContext, createContext } from 'react';
4
+ import { cx } from '../../../utils/cx.js';
5
+ import { tabsRootRecipe } from './Tabs.css.js';
5
6
 
6
7
  // --- Context ---
7
8
  const TabsContext = /*#__PURE__*/ createContext(null);
@@ -12,14 +13,6 @@ function useTabsContext() {
12
13
  }
13
14
  return ctx;
14
15
  }
15
- const StyledTabsRoot = styled.div `
16
- display: flex;
17
- flex-direction: ${props => props.$orientation === 'vertical' ? 'row' : 'column'};
18
- min-width: 0;
19
- min-height: 0;
20
-
21
- ${props => processCss(props.$css, props.theme)}
22
- `;
23
16
  // --- Component ---
24
17
  /**
25
18
  * Tabs component for switching between views within a panel.
@@ -38,7 +31,7 @@ const StyledTabsRoot = styled.div `
38
31
  * </Tabs>
39
32
  * ```
40
33
  */
41
- const Tabs = ({ value: valueProp, defaultValue, variant = 'underline', size = 'md', orientation = 'horizontal', fullWidth = false, pillsFrame = true, children, onChange, className, style, css, testId, ref, ...rest }) => {
34
+ const Tabs = ({ value: valueProp, defaultValue, variant = 'underline', size = 'md', orientation = 'horizontal', fullWidth = false, pillsFrame = true, children, onChange, className, style, testId, ref, ...rest }) => {
42
35
  const autoId = useId();
43
36
  const tabsId = autoId;
44
37
  const [internalValue, setInternalValue] = useState(defaultValue ?? '');
@@ -69,7 +62,7 @@ const Tabs = ({ value: valueProp, defaultValue, variant = 'underline', size = 'm
69
62
  pillsFrame,
70
63
  tabsId,
71
64
  ]);
72
- return (jsx(TabsContext.Provider, { value: contextValue, children: jsx(StyledTabsRoot, { ref: ref, "$orientation": orientation, "$css": css, className: className, style: style, "data-testid": testId, ...rest, children: children }) }));
65
+ return (jsx(TabsContext.Provider, { value: contextValue, children: jsx("div", { ref: ref, className: cx(tabsRootRecipe({ orientation }), className), style: style, "data-testid": testId, ...rest, children: children }) }));
73
66
  };
74
67
  Tabs.displayName = 'Tabs';
75
68
 
@@ -1 +1 @@
1
- {"version":3,"file":"Tabs.js","sources":["../../../../../../src/components/navigation/Tabs/Tabs.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;;AAYA;AAEA,MAAM,WAAW,iBAAiB,aAAa,CAA0B,IAAI,CAAC;SAE9D,cAAc,GAAA;AAC5B,IAAA,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC;IACnC,IAAI,CAAC,GAAG,EAAE;AACR,QAAA,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC;;AAExE,IAAA,OAAO,GAAG;AACZ;AASA,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAqB;;AAElC,kBAAA,EAAA,KAAK,IACrB,KAAK,CAAC,YAAY,KAAK,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAA;;;;AAIpD,EAAA,EAAA,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC;CAC/C;AAED;AAEA;;;;;;;;;;;;;;;;AAgBG;MACU,IAAI,GAAwB,CAAC,EACxC,KAAK,EAAE,SAAS,EAChB,YAAY,EACZ,OAAO,GAAG,WAAW,EACrB,IAAI,GAAG,IAAI,EACX,WAAW,GAAG,YAAY,EAC1B,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,IAAI,EACjB,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,EACL,GAAG,EACH,MAAM,EACN,GAAG,EACH,GAAG,IAAI,EACR,KAAI;AACH,IAAA,MAAM,MAAM,GAAG,KAAK,EAAE;IACtB,MAAM,MAAM,GAAG,MAAM;AAErB,IAAA,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAC;AACtE,IAAA,MAAM,YAAY,GAAG,SAAS,KAAK,SAAS;IAC5C,MAAM,WAAW,GAAG,YAAY,GAAG,SAAS,GAAG,aAAa;AAE5D,IAAA,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,GAAW,KAAI;QACd,IAAI,CAAC,YAAY,EAAE;YACjB,gBAAgB,CAAC,GAAG,CAAC;;AAEvB,QAAA,QAAQ,GAAG,GAAG,CAAC;AACjB,KAAC,EACD,CAAC,YAAY,EAAE,QAAQ,CAAC,CACzB;AAED,IAAA,MAAM,YAAY,GAAG,OAAO,CAC1B,OAAO;QACL,WAAW;QACX,cAAc;QACd,OAAO;QACP,IAAI;QACJ,WAAW;QACX,SAAS;QACT,UAAU;QACV,MAAM;AACP,KAAA,CAAC,EACF;QACE,WAAW;QACX,cAAc;QACd,OAAO;QACP,IAAI;QACJ,WAAW;QACX,SAAS;QACT,UAAU;QACV,MAAM;AACP,KAAA,CACF;AAED,IAAA,QACEA,GAAC,CAAA,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,YAAY,EAAA,QAAA,EACvCA,IAAC,cAAc,EAAA,EACb,GAAG,EAAE,GAAG,EACM,cAAA,EAAA,WAAW,EACnB,MAAA,EAAA,GAAG,EACT,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACC,aAAA,EAAA,MAAM,KACf,IAAI,EAAA,QAAA,EAEP,QAAQ,EACM,CAAA,EAAA,CACI;AAE3B;AAEA,IAAI,CAAC,WAAW,GAAG,MAAM;;;;"}
1
+ {"version":3,"file":"Tabs.js","sources":["../../../../../../src/components/navigation/Tabs/Tabs.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAcA;AAEA;;AAGE;;AAEE;;AAEF;AACF;AAEA;AAEA;;;;;;;;;;;;;;;;AAgBG;;AAiBD;;AAGA;AACA;;AAGA;;;;AAKI;AACF;AAIF;;;;;;;;;AAUG;;;;;;;;;AAUA;AAGH;AAaF;AAEA;;"}
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  import { jsx } from 'react/jsx-runtime';
2
3
  import { forwardRef } from 'react';
3
4
  import { cn } from '../../../utils/cn.js';
@@ -1 +1 @@
1
- {"version":3,"file":"BaseButton.js","sources":["../../../../../../src/components/primitives/BaseButton/BaseButton.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;AAgBa,MAAA,UAAU,iBAAiB,UAAU,CAGhD,CAAC,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAI;IAC7D,QACEA,gBACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE;;QAEX,wBAAwB;;AAExB,QAAA,4BAA4B,EAC5B,oBAAoB;;AAEpB,QAAA,QAAQ,IAAI,oBAAoB,EAChC,SAAS,CACV,EACD,QAAQ,EAAE,QAAQ,KACd,KAAK,EAAA,QAAA,EAER,QAAQ,EAAA,CACF;AAEb,CAAC;AAED,UAAU,CAAC,WAAW,GAAG,YAAY;;;;"}
1
+ {"version":3,"file":"BaseButton.js","sources":["../../../../../../src/components/primitives/BaseButton/BaseButton.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAiBO;;;;;AAWC;;AAGA;AASR;AAEA;;"}
@@ -0,0 +1,9 @@
1
+ import './../../../assets/src/components/primitives/Button/Button.css.ts.vanilla-CT592JL7.css';
2
+ import { c as createRuntimeFn } from '../../../node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js';
3
+
4
+ var buttonRecipe = createRuntimeFn({defaultClassName:'Button_buttonRecipe__btu0m70',variantClassNames:{variant:{'default':'Button_buttonRecipe_variant_default__btu0m71',ghost:'Button_buttonRecipe_variant_ghost__btu0m72',filled:'Button_buttonRecipe_variant_filled__btu0m73'},size:{sm:'Button_buttonRecipe_size_sm__btu0m74',md:'Button_buttonRecipe_size_md__btu0m75',lg:'Button_buttonRecipe_size_lg__btu0m76'},fullWidth:{true:'Button_buttonRecipe_fullWidth_true__btu0m77'}},defaultVariants:{variant:'default',size:'md'},compoundVariants:[]});
5
+ var iconWrapperStyle = 'Button_iconWrapperStyle__btu0m7a';
6
+ var loadingSpinnerStyle = 'Button_loadingSpinnerStyle__btu0m79';
7
+
8
+ export { buttonRecipe, iconWrapperStyle, loadingSpinnerStyle };
9
+ //# sourceMappingURL=Button.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
@@ -1,153 +1,9 @@
1
+ "use client";
1
2
  import { jsxs, jsx } from 'react/jsx-runtime';
2
3
  import React from 'react';
3
- import styled from '@emotion/styled';
4
- import { processCss } from '../../../utils/styledUtils.js';
4
+ import { cx } from '../../../utils/cx.js';
5
+ import { loadingSpinnerStyle, iconWrapperStyle, buttonRecipe } from './Button.css.js';
5
6
 
6
- const StyledButton = styled.button `
7
- /* Reset */
8
- margin: 0;
9
- font-family: inherit;
10
- cursor: ${props => (props.disabled ? 'not-allowed' : 'pointer')};
11
- user-select: none;
12
-
13
- /* Layout */
14
- display: inline-flex;
15
- align-items: center;
16
- justify-content: center;
17
- font-weight: ${props => props.theme.typography.fontWeight.medium};
18
- border-radius: ${props => props.theme.borderRadius.md}px;
19
- transition: all ${props => props.theme.transitions.normal};
20
- outline: none;
21
-
22
- /* Size variants */
23
- ${props => {
24
- const sizes = {
25
- sm: {
26
- height: '20px',
27
- padding: `0 ${props.theme.spacing.sm}px`,
28
- fontSize: `${props.theme.typography.fontSize.md}px`,
29
- gap: `${props.theme.spacing.xs}px`,
30
- },
31
- md: {
32
- height: '24px',
33
- padding: `0 ${props.theme.spacing.md}px`,
34
- fontSize: `${props.theme.typography.fontSize.md}px`,
35
- gap: `${props.theme.spacing.sm}px`,
36
- },
37
- lg: {
38
- height: '32px',
39
- padding: `0 ${props.theme.spacing.xl}px`,
40
- fontSize: `${props.theme.typography.fontSize.lg}px`,
41
- gap: `${props.theme.spacing.md}px`,
42
- },
43
- };
44
- const size = sizes[props.$size];
45
- return `
46
- height: ${size.height};
47
- padding: ${size.padding};
48
- font-size: ${size.fontSize};
49
- gap: ${size.gap};
50
- `;
51
- }}
52
-
53
- /* Variant styles */
54
- ${props => {
55
- const { colors } = props.theme;
56
- switch (props.$variant) {
57
- case 'default':
58
- return `
59
- background: transparent;
60
- border: 1px solid ${colors.border.default};
61
- color: ${colors.text.primary};
62
-
63
- &:hover:not(:disabled) {
64
- background: ${colors.surface.hover};
65
- border-color: transparent;
66
- }
67
-
68
- &:active:not(:disabled) {
69
- background: ${colors.surface.active};
70
- }
71
- `;
72
- case 'ghost':
73
- return `
74
- background: transparent;
75
- border: 1px solid transparent;
76
- color: ${colors.text.secondary};
77
-
78
- &:hover:not(:disabled) {
79
- background: ${colors.surface.hover};
80
- color: ${colors.text.primary};
81
- }
82
-
83
- &:active:not(:disabled) {
84
- background: ${colors.surface.active};
85
- }
86
- `;
87
- case 'filled':
88
- return `
89
- background: ${colors.accent.primary};
90
- border: 1px solid ${colors.accent.primary};
91
- color: white;
92
-
93
- &:hover:not(:disabled) {
94
- background: ${colors.accent.secondary};
95
- border-color: ${colors.accent.secondary};
96
- }
97
-
98
- &:active:not(:disabled) {
99
- background: ${colors.accent.secondary};
100
- }
101
- `;
102
- default:
103
- return '';
104
- }
105
- }}
106
-
107
- /* Full width */
108
- ${props => props.$fullWidth && 'width: 100%;'}
109
-
110
- /* Disabled state */
111
- &:disabled {
112
- opacity: 0.5;
113
- cursor: not-allowed;
114
- }
115
-
116
- /* Focus visible */
117
- &:focus-visible {
118
- box-shadow: ${props => props.theme.shadows.focus};
119
- }
120
-
121
- /* Custom CSS */
122
- ${props => processCss(props.$css, props.theme)}
123
- `;
124
- /**
125
- * Loading spinner component
126
- */
127
- const LoadingSpinner = styled.div `
128
- width: 16px;
129
- height: 16px;
130
- border: 2px solid currentColor;
131
- border-top-color: transparent;
132
- border-radius: 50%;
133
- animation: spin 1s linear infinite;
134
-
135
- @keyframes spin {
136
- to {
137
- transform: rotate(360deg);
138
- }
139
- }
140
- `;
141
- /**
142
- * Icon wrapper
143
- */
144
- const IconWrapper = styled.span `
145
- width: 16px;
146
- height: 16px;
147
- display: flex;
148
- align-items: center;
149
- justify-content: center;
150
- `;
151
7
  /**
152
8
  * Versatile button component for editor interfaces.
153
9
  *
@@ -174,8 +30,8 @@ const IconWrapper = styled.span `
174
30
  * </Button>
175
31
  * ```
176
32
  */
177
- const Button = /*#__PURE__*/ React.memo(({ children, className, size = 'md', variant = 'default', disabled = false, loading = false, icon, fullWidth = false, onClick, testId, style, css, ref, ...props }) => {
178
- return (jsxs(StyledButton, { ref: ref, className: className, "$size": size, "$variant": variant, "$loading": loading, "$fullWidth": fullWidth, "$css": css, disabled: disabled || loading, onClick: onClick, "data-testid": testId, style: style, ...props, children: [loading ? (jsx(LoadingSpinner, {})) : icon ? (jsx(IconWrapper, { children: icon })) : null, children && jsx("span", { children: children })] }));
33
+ const Button = /*#__PURE__*/ React.memo(({ children, className, size = 'md', variant = 'default', disabled = false, loading = false, icon, fullWidth = false, onClick, testId, style, ref, ...props }) => {
34
+ return (jsxs("button", { ref: ref, className: cx(buttonRecipe({ variant, size, fullWidth: fullWidth || undefined }), className), disabled: disabled || loading, onClick: onClick, "data-testid": testId, style: style, ...props, children: [loading ? (jsx("div", { className: loadingSpinnerStyle })) : icon ? (jsx("span", { className: iconWrapperStyle, children: icon })) : null, children && jsx("span", { children: children })] }));
179
35
  });
180
36
  Button.displayName = 'Button';
181
37
 
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../../../../src/components/primitives/Button/Button.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"Button.js","sources":["../../../../../../src/components/primitives/Button/Button.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAqGA;;;;;;;;;;;;;;;;;;;;;;;;;AAyBG;;AAiBC;AAsBF;AAGF;;"}
@@ -0,0 +1,14 @@
1
+ import './../../../assets/src/components/primitives/Checkbox/Checkbox.css.ts.vanilla-dvrGPiPs.css';
2
+ import { c as createRuntimeFn } from '../../../node_modules/@vanilla-extract/recipes/dist/createRuntimeFn-62c9670f.esm.js';
3
+
4
+ var boxSizeVar = 'var(--boxSizeVar__2ajd0p9)';
5
+ var checkboxBoxRecipe = createRuntimeFn({defaultClassName:'Checkbox_checkboxBoxRecipe__2ajd0pa',variantClassNames:{active:{true:'Checkbox_checkboxBoxRecipe_active_true__2ajd0pb',false:'Checkbox_checkboxBoxRecipe_active_false__2ajd0pc'},variant:{'default':'Checkbox_checkboxBoxRecipe_variant_default__2ajd0pd',filled:'Checkbox_checkboxBoxRecipe_variant_filled__2ajd0pe'},disabled:{true:'Checkbox_checkboxBoxRecipe_disabled_true__2ajd0pf',false:'Checkbox_checkboxBoxRecipe_disabled_false__2ajd0pg'},error:{true:'Checkbox_checkboxBoxRecipe_error_true__2ajd0ph',false:'Checkbox_checkboxBoxRecipe_error_false__2ajd0pi'}},defaultVariants:{active:false,variant:'default',disabled:false,error:false},compoundVariants:[[{error:true,active:false},'Checkbox_checkboxBoxRecipe_compound_0__2ajd0pj'],[{error:true,active:true},'Checkbox_checkboxBoxRecipe_compound_1__2ajd0pk'],[{variant:'filled',active:false},'Checkbox_checkboxBoxRecipe_compound_2__2ajd0pl'],[{disabled:true,active:true},'Checkbox_checkboxBoxRecipe_compound_3__2ajd0pm'],[{disabled:true,active:false,variant:'filled'},'Checkbox_checkboxBoxRecipe_compound_4__2ajd0pn'],[{disabled:true,active:false,variant:'default'},'Checkbox_checkboxBoxRecipe_compound_5__2ajd0po']]});
6
+ var checkboxContainerStyle = 'Checkbox_checkboxContainerStyle__2ajd0p0';
7
+ var checkboxLabelRecipe = createRuntimeFn({defaultClassName:'Checkbox_checkboxLabelRecipe__2ajd0p1',variantClassNames:{labelPosition:{left:'Checkbox_checkboxLabelRecipe_labelPosition_left__2ajd0p2',right:'Checkbox_checkboxLabelRecipe_labelPosition_right__2ajd0p3'},size:{sm:'Checkbox_checkboxLabelRecipe_size_sm__2ajd0p4',md:'Checkbox_checkboxLabelRecipe_size_md__2ajd0p5',lg:'Checkbox_checkboxLabelRecipe_size_lg__2ajd0p6'},disabled:{true:'Checkbox_checkboxLabelRecipe_disabled_true__2ajd0p7',false:'Checkbox_checkboxLabelRecipe_disabled_false__2ajd0p8'}},defaultVariants:{labelPosition:'right',size:'md',disabled:false},compoundVariants:[]});
8
+ var groupContainerStyle = 'Checkbox_groupContainerStyle__2ajd0pp';
9
+ var groupDirectionVar = 'var(--groupDirectionVar__2ajd0pq)';
10
+ var groupGapVar = 'var(--groupGapVar__2ajd0pr)';
11
+ var groupItemsStyle = 'Checkbox_groupItemsStyle__2ajd0ps';
12
+
13
+ export { boxSizeVar, checkboxBoxRecipe, checkboxContainerStyle, checkboxLabelRecipe, groupContainerStyle, groupDirectionVar, groupGapVar, groupItemsStyle };
14
+ //# sourceMappingURL=Checkbox.css.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Checkbox.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -1,11 +1,13 @@
1
+ "use client";
1
2
  import { jsxs, jsx } from 'react/jsx-runtime';
2
3
  import { useContext, useId, useState, useCallback } from 'react';
3
- import styled from '@emotion/styled';
4
- import { processCss } from '../../../utils/styledUtils.js';
4
+ import { assignInlineVars } from '../../../node_modules/@vanilla-extract/dynamic/dist/vanilla-extract-dynamic.esm.js';
5
5
  import '../../form/FormLabel.js';
6
6
  import { FormHelperText } from '../../form/FormHelperText.js';
7
7
  import '../../form/InputWrapper.js';
8
8
  import { CheckboxGroupContext } from './CheckboxGroup.js';
9
+ import { cx } from '../../../utils/cx.js';
10
+ import { boxSizeVar, checkboxBoxRecipe, checkboxLabelRecipe, checkboxContainerStyle } from './Checkbox.css.js';
9
11
 
10
12
  // --- Size maps ---
11
13
  const BOX_SIZES = {
@@ -18,113 +20,6 @@ const ICON_SIZES = {
18
20
  md: 12,
19
21
  lg: 14,
20
22
  };
21
- const FONT_SIZE_MAP = {
22
- sm: 'xs',
23
- md: 'sm',
24
- lg: 'md',
25
- };
26
- // --- Styled components ---
27
- const StyledCheckboxContainer = styled.div `
28
- display: flex;
29
- flex-direction: column;
30
- `;
31
- const StyledCheckboxLabel = styled.label `
32
- display: inline-flex;
33
- align-items: center;
34
- gap: ${props => props.theme.spacing.sm}px;
35
- cursor: ${props => (props.$disabled ? 'not-allowed' : 'pointer')};
36
- flex-direction: ${props => props.$labelPosition === 'left' ? 'row-reverse' : 'row'};
37
- font-size: ${props => props.theme.typography.fontSize[FONT_SIZE_MAP[props.$size]]}px;
38
- color: ${props => props.$disabled
39
- ? props.theme.colors.text.disabled
40
- : props.theme.colors.text.secondary};
41
- line-height: ${props => props.theme.typography.lineHeight.normal};
42
- user-select: none;
43
- `;
44
- const StyledCheckboxBox = styled.button `
45
- /* Reset */
46
- padding: 0;
47
- margin: 0;
48
- border: none;
49
- font: inherit;
50
- outline: none;
51
- cursor: ${props => (props.$disabled ? 'not-allowed' : 'pointer')};
52
-
53
- /* Layout */
54
- display: inline-flex;
55
- align-items: center;
56
- justify-content: center;
57
- flex-shrink: 0;
58
-
59
- /* Sizing */
60
- width: ${props => BOX_SIZES[props.$size]}px;
61
- height: ${props => BOX_SIZES[props.$size]}px;
62
- border-radius: ${props => props.theme.borderRadius.sm}px;
63
- transition: all ${props => props.theme.transitions.fast};
64
-
65
- /* Variant + State styles */
66
- ${props => {
67
- const { colors } = props.theme;
68
- const isActive = props.$checked || props.$indeterminate;
69
- if (props.$disabled) {
70
- return `
71
- opacity: 0.5;
72
- background: ${isActive ? colors.accent.primary : props.$variant === 'filled' ? colors.surface.default : 'transparent'};
73
- border: 1px solid ${isActive ? colors.accent.primary : colors.border.default};
74
- `;
75
- }
76
- if (props.$error) {
77
- return `
78
- background: ${isActive ? colors.accent.error : 'transparent'};
79
- border: 1px solid ${colors.accent.error};
80
- &:hover {
81
- border-color: ${colors.accent.error};
82
- background: ${isActive ? colors.accent.error : 'transparent'};
83
- }
84
- `;
85
- }
86
- if (isActive) {
87
- return `
88
- background: ${colors.accent.primary};
89
- border: 1px solid ${colors.accent.primary};
90
- &:hover {
91
- background: ${colors.accent.secondary};
92
- border-color: ${colors.accent.secondary};
93
- }
94
- `;
95
- }
96
- if (props.$variant === 'filled') {
97
- return `
98
- background: ${colors.surface.default};
99
- border: 1px solid ${colors.border.default};
100
- &:hover {
101
- border-color: ${colors.border.focus};
102
- }
103
- `;
104
- }
105
- return `
106
- background: transparent;
107
- border: 1px solid ${colors.border.default};
108
- &:hover {
109
- border-color: ${colors.border.focus};
110
- }
111
- `;
112
- }}
113
-
114
- /* Focus visible */
115
- &:focus-visible {
116
- box-shadow: ${props => props.theme.shadows.focus};
117
- }
118
-
119
- /* Disabled state */
120
- &:disabled {
121
- opacity: 0.5;
122
- cursor: not-allowed;
123
- }
124
-
125
- /* Custom CSS */
126
- ${props => processCss(props.$css, props.theme)}
127
- `;
128
23
  /**
129
24
  * Checkbox component for boolean selection in settings panels,
130
25
  * property inspectors, and form interfaces.
@@ -139,7 +34,7 @@ const StyledCheckboxBox = styled.button `
139
34
  * <Checkbox indeterminate label="Select all" />
140
35
  * ```
141
36
  */
142
- const Checkbox = ({ checked: checkedProp, defaultChecked = false, indeterminate = false, label, labelPosition = 'right', size: sizeProp = 'md', variant = 'default', disabled: disabledProp = false, required = false, error = false, helperText, errorMessage, value, name, onChange, className, style, css, testId, ref, id: idProp, ...rest }) => {
37
+ const Checkbox = ({ checked: checkedProp, defaultChecked = false, indeterminate = false, label, labelPosition = 'right', size: sizeProp = 'md', variant = 'default', disabled: disabledProp = false, required = false, error = false, helperText, errorMessage, value, name, onChange, className, style, testId, ref, id: idProp, ...rest }) => {
143
38
  const groupContext = useContext(CheckboxGroupContext);
144
39
  const autoId = useId();
145
40
  const checkboxId = idProp ?? autoId;
@@ -189,7 +84,16 @@ const Checkbox = ({ checked: checkedProp, defaultChecked = false, indeterminate
189
84
  : resolvedChecked
190
85
  ? 'true'
191
86
  : 'false';
192
- const checkboxBox = (jsxs(StyledCheckboxBox, { ref: ref, type: "button", role: "checkbox", "aria-checked": ariaChecked, "aria-disabled": disabled || undefined, "aria-required": required || undefined, "aria-invalid": error || undefined, "aria-describedby": showHelperText ? helperId : undefined, disabled: disabled, onClick: handleClick, "$size": size, "$variant": variant, "$checked": resolvedChecked, "$indeterminate": indeterminate, "$disabled": disabled, "$error": error, "$css": css, "data-testid": testId, ...rest, children: [indeterminate ? (jsx("svg", { width: iconSize, height: iconSize, viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", children: jsx("line", { x1: "2", y1: "6", x2: "10", y2: "6", stroke: "white", strokeWidth: "2", strokeLinecap: "round" }) })) : (jsx("svg", { width: iconSize, height: iconSize, viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", style: {
87
+ const isActive = resolvedChecked || indeterminate;
88
+ const boxInlineVars = assignInlineVars({
89
+ [boxSizeVar]: `${BOX_SIZES[size]}px`,
90
+ });
91
+ const checkboxBox = (jsxs("button", { ref: ref, type: "button", role: "checkbox", "aria-checked": ariaChecked, "aria-disabled": disabled || undefined, "aria-required": required || undefined, "aria-invalid": error || undefined, "aria-describedby": showHelperText ? helperId : undefined, disabled: disabled, onClick: handleClick, className: checkboxBoxRecipe({
92
+ active: isActive || undefined,
93
+ variant,
94
+ disabled: disabled || undefined,
95
+ error: error || undefined,
96
+ }), style: boxInlineVars, "data-testid": testId, ...rest, children: [indeterminate ? (jsx("svg", { width: iconSize, height: iconSize, viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", children: jsx("line", { x1: "2", y1: "6", x2: "10", y2: "6", stroke: "white", strokeWidth: "2", strokeLinecap: "round" }) })) : (jsx("svg", { width: iconSize, height: iconSize, viewBox: "0 0 12 12", fill: "none", "aria-hidden": "true", style: {
193
97
  opacity: resolvedChecked ? 1 : 0,
194
98
  transform: resolvedChecked ? 'scale(1)' : 'scale(0)',
195
99
  transition: 'opacity 150ms ease-out, transform 150ms ease-out',
@@ -197,7 +101,11 @@ const Checkbox = ({ checked: checkedProp, defaultChecked = false, indeterminate
197
101
  if (!label && !showHelperText) {
198
102
  return checkboxBox;
199
103
  }
200
- return (jsxs(StyledCheckboxContainer, { className: className, style: style, children: [jsxs(StyledCheckboxLabel, { "$labelPosition": labelPosition, "$disabled": disabled, "$size": size, children: [checkboxBox, label && jsx("span", { children: label })] }), showHelperText && (jsx(FormHelperText, { id: helperId, error: error, children: showHelperText }))] }));
104
+ return (jsxs("div", { className: cx(checkboxContainerStyle, className), style: style, children: [jsxs("label", { className: checkboxLabelRecipe({
105
+ labelPosition,
106
+ disabled: disabled || undefined,
107
+ size,
108
+ }), children: [checkboxBox, label && jsx("span", { children: label })] }), showHelperText && (jsx(FormHelperText, { id: helperId, error: error, children: showHelperText }))] }));
201
109
  };
202
110
  Checkbox.displayName = 'Checkbox';
203
111
 
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","sources":["../../../../../../src/components/primitives/Checkbox/Checkbox.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"Checkbox.js","sources":["../../../../../../src/components/primitives/Checkbox/Checkbox.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;AAeA;AAEA;AACE;AACA;AACA;;AAGF;AACE;AACA;AACA;;AAGF;;;;;;;;;;;;;AAaG;AACI;AAuBL;AACA;AACA;AACA;;;;;;;;AAWA;AAEA;;;;;;;;;;AASA;AACE;;AAEA;AAEA;AACE;;AAGF;;;AAIA;AACF;;;;;;;;AAQC;AAED;AACA;;AAGE;AACA;AACE;;AAGJ;;;AAIC;;;;;;AAmBI;;;AAiCK;;AAsBV;AACE;;AAGF;;;;AAOO;AAYT;AAEA;;"}