@telia/teddy 0.0.23 → 0.0.25

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 (186) hide show
  1. package/dist/components/accordion/accordion-content.cjs +32 -0
  2. package/dist/components/accordion/accordion-header.cjs +33 -0
  3. package/dist/components/accordion/accordion-indicator.cjs +16 -0
  4. package/dist/components/accordion/accordion-item.cjs +32 -0
  5. package/dist/components/accordion/accordion-root.cjs +56 -0
  6. package/dist/components/accordion/accordion-root.js +11 -11
  7. package/dist/components/accordion/accordion-title.cjs +15 -0
  8. package/dist/components/accordion/accordion-trigger.cjs +37 -0
  9. package/dist/components/accordion/index.cjs +25 -0
  10. package/dist/components/accordion/index.js +7 -0
  11. package/dist/components/badge/badge.cjs +43 -0
  12. package/dist/components/badge/index.cjs +4 -0
  13. package/dist/components/box/box.cjs +17 -0
  14. package/dist/components/box/index.cjs +4 -0
  15. package/dist/components/button/button.cjs +130 -0
  16. package/dist/components/button/button.js +24 -24
  17. package/dist/components/button/index.cjs +4 -0
  18. package/dist/components/card/card.cjs +219 -0
  19. package/dist/components/card/index.cjs +4 -0
  20. package/dist/components/chip/chip-indicator.cjs +16 -0
  21. package/dist/components/chip/chip-item.cjs +45 -0
  22. package/dist/components/chip/chip.cjs +48 -0
  23. package/dist/components/chip/index.cjs +10 -0
  24. package/dist/components/drawer/drawer-close.cjs +39 -0
  25. package/dist/components/drawer/drawer-content.cjs +42 -0
  26. package/dist/components/drawer/drawer-description.cjs +36 -0
  27. package/dist/components/drawer/drawer-footer.cjs +16 -0
  28. package/dist/components/drawer/drawer-overlay.cjs +43 -0
  29. package/dist/components/drawer/drawer-root.cjs +28 -0
  30. package/dist/components/drawer/drawer-title.cjs +34 -0
  31. package/dist/components/drawer/drawer-trigger.cjs +27 -0
  32. package/dist/components/drawer/index.cjs +20 -0
  33. package/dist/components/field-error-text/field-error-text.cjs +30 -0
  34. package/dist/components/field-error-text/index.cjs +4 -0
  35. package/dist/components/flex/flex.cjs +19 -0
  36. package/dist/components/flex/index.cjs +4 -0
  37. package/dist/components/grid/grid.cjs +19 -0
  38. package/dist/components/grid/index.cjs +4 -0
  39. package/dist/components/heading/heading.cjs +55 -0
  40. package/dist/components/heading/index.cjs +4 -0
  41. package/dist/components/helper-text/helper-text.cjs +21 -0
  42. package/dist/components/helper-text/helper-text.d.ts +2 -4
  43. package/dist/components/helper-text/index.cjs +4 -0
  44. package/dist/components/icon/AllIcons.cjs +1091 -0
  45. package/dist/components/icon/AllIcons.d.ts +2 -0
  46. package/dist/components/icon/AllIcons.js +1092 -0
  47. package/dist/components/icon/icon.cjs +29 -0
  48. package/dist/components/icon/index.cjs +8 -0
  49. package/dist/components/icon/index.d.ts +1 -0
  50. package/dist/components/icon/index.js +2 -0
  51. package/dist/components/image/image.cjs +17 -0
  52. package/dist/components/image/index.cjs +4 -0
  53. package/dist/components/index.cjs +66 -0
  54. package/dist/components/index.js +6 -3
  55. package/dist/components/input/index.cjs +14 -0
  56. package/dist/components/input/index.d.ts +27 -2
  57. package/dist/components/input/index.js +10 -1
  58. package/dist/components/input/input-clear-button.cjs +43 -0
  59. package/dist/components/input/input-clear-button.d.ts +6 -0
  60. package/dist/components/input/input-clear-button.js +43 -0
  61. package/dist/components/input/input-group.cjs +132 -0
  62. package/dist/components/input/input-group.d.ts +16 -0
  63. package/dist/components/input/input-group.js +132 -0
  64. package/dist/components/input/input-indicator.cjs +10 -0
  65. package/dist/components/input/input-indicator.d.ts +23 -0
  66. package/dist/components/input/input-indicator.js +10 -0
  67. package/dist/components/input/input.cjs +9 -0
  68. package/dist/components/input/input.d.ts +4 -28
  69. package/dist/components/input/input.js +7 -114
  70. package/dist/components/label/index.cjs +4 -0
  71. package/dist/components/label/label.cjs +44 -0
  72. package/dist/components/link/index.cjs +4 -0
  73. package/dist/components/link/link.cjs +37 -0
  74. package/dist/components/link/link.js +10 -10
  75. package/dist/components/modal/index.cjs +4 -0
  76. package/dist/components/modal/modal.cjs +209 -0
  77. package/dist/components/modal/modal.js +2 -2
  78. package/dist/components/navigation-menu/index.cjs +4 -0
  79. package/dist/components/navigation-menu/navigation-menu.cjs +410 -0
  80. package/dist/components/notification/index.cjs +4 -0
  81. package/dist/components/notification/notification.cjs +116 -0
  82. package/dist/components/notification/notification.js +8 -8
  83. package/dist/components/radio-group/index.cjs +4 -0
  84. package/dist/components/radio-group/radio-group.cjs +110 -0
  85. package/dist/components/scroll-area/index.cjs +9 -0
  86. package/dist/components/scroll-area/scroll-area-bar.cjs +175 -0
  87. package/dist/components/scroll-area/scroll-area-bar.js +8 -8
  88. package/dist/components/scroll-area/scroll-area-button.cjs +11 -0
  89. package/dist/components/scroll-area/scroll-area-corner.cjs +8 -0
  90. package/dist/components/scroll-area/scroll-area-item.cjs +42 -0
  91. package/dist/components/scroll-area/scroll-area-item.js +2 -1
  92. package/dist/components/scroll-area/scroll-area-root.cjs +11 -0
  93. package/dist/components/scroll-area/scroll-area-root.d.ts +11 -1
  94. package/dist/components/scroll-area/scroll-area-thumb.cjs +8 -0
  95. package/dist/components/spinner/index.cjs +4 -0
  96. package/dist/components/spinner/spinner.cjs +57 -0
  97. package/dist/components/tabs/index.cjs +16 -0
  98. package/dist/components/tabs/tabs-content.cjs +32 -0
  99. package/dist/components/tabs/tabs-list.cjs +39 -0
  100. package/dist/components/tabs/tabs-list.js +6 -4
  101. package/dist/components/tabs/tabs-root.cjs +75 -0
  102. package/dist/components/tabs/tabs-root.d.ts +4 -7
  103. package/dist/components/tabs/tabs-root.js +25 -8
  104. package/dist/components/tabs/tabs-scroll-button.cjs +15 -0
  105. package/dist/components/tabs/tabs-scroll.cjs +22 -0
  106. package/dist/components/tabs/tabs-trigger.cjs +55 -0
  107. package/dist/components/tabs/tabs-trigger.js +19 -9
  108. package/dist/components/text/index.cjs +4 -0
  109. package/dist/components/text/text.cjs +49 -0
  110. package/dist/components/text-field/index.cjs +31 -0
  111. package/dist/components/text-field/index.d.ts +63 -2
  112. package/dist/components/text-field/index.js +28 -1
  113. package/dist/components/text-field/text-field-button.cjs +31 -0
  114. package/dist/components/text-field/text-field-button.d.ts +27 -0
  115. package/dist/components/text-field/text-field-button.js +31 -0
  116. package/dist/components/text-field/text-field-clear-button.cjs +12 -0
  117. package/dist/components/text-field/text-field-clear-button.d.ts +6 -0
  118. package/dist/components/text-field/text-field-clear-button.js +12 -0
  119. package/dist/components/text-field/text-field-error-list.cjs +28 -0
  120. package/dist/components/text-field/text-field-error-list.d.ts +9 -0
  121. package/dist/components/text-field/text-field-error-list.js +28 -0
  122. package/dist/components/text-field/text-field-helper-text.cjs +19 -0
  123. package/dist/components/text-field/text-field-helper-text.d.ts +5 -0
  124. package/dist/components/text-field/text-field-helper-text.js +19 -0
  125. package/dist/components/text-field/text-field-indicator.cjs +14 -0
  126. package/dist/components/text-field/text-field-indicator.d.ts +6 -0
  127. package/dist/components/text-field/text-field-indicator.js +14 -0
  128. package/dist/components/text-field/text-field-input-group.cjs +11 -0
  129. package/dist/components/text-field/text-field-input-group.d.ts +7 -0
  130. package/dist/components/text-field/text-field-input-group.js +11 -0
  131. package/dist/components/text-field/text-field-input.cjs +27 -0
  132. package/dist/components/text-field/text-field-input.d.ts +5 -0
  133. package/dist/components/text-field/text-field-input.js +27 -0
  134. package/dist/components/text-field/text-field-label.cjs +27 -0
  135. package/dist/components/text-field/text-field-label.d.ts +8 -0
  136. package/dist/components/text-field/text-field-label.js +27 -0
  137. package/dist/components/text-field/text-field.cjs +54 -0
  138. package/dist/components/text-field/text-field.d.ts +12 -58
  139. package/dist/components/text-field/text-field.js +17 -101
  140. package/dist/components/text-field/util.cjs +4 -0
  141. package/dist/components/text-field/util.d.ts +1 -0
  142. package/dist/components/text-field/util.js +4 -0
  143. package/dist/components/text-spacing/index.cjs +4 -0
  144. package/dist/components/text-spacing/text-spacing.cjs +19 -0
  145. package/dist/components/toggle/index.cjs +4 -0
  146. package/dist/components/toggle/toggle.cjs +104 -0
  147. package/dist/components/visually-hidden/index.cjs +4 -0
  148. package/dist/components/visually-hidden/visually-hidden.cjs +26 -0
  149. package/dist/drawer.module-w9nGK9pO.cjs +13 -0
  150. package/dist/icons/category.cjs +335 -0
  151. package/dist/icons/name.cjs +335 -0
  152. package/dist/icons/name.d.cjs +1 -0
  153. package/dist/main.cjs +374 -0
  154. package/dist/main.js +6 -3
  155. package/dist/style.css +385 -323
  156. package/dist/tokens/border/variables.cjs +20 -0
  157. package/dist/tokens/breakpoint/variables.cjs +10 -0
  158. package/dist/tokens/color/variables.cjs +454 -0
  159. package/dist/tokens/index.cjs +310 -0
  160. package/dist/tokens/motion/variables.cjs +24 -0
  161. package/dist/tokens/shadow/variables.cjs +10 -0
  162. package/dist/tokens/spacing/variables.cjs +48 -0
  163. package/dist/tokens/typography/variables.cjs +50 -0
  164. package/dist/utils/action.cjs +21 -0
  165. package/dist/utils/component-props-as.cjs +1 -0
  166. package/dist/utils/composeEventHandlers.cjs +11 -0
  167. package/dist/utils/composeRefs.cjs +18 -0
  168. package/dist/utils/generate-styling/align.cjs +32 -0
  169. package/dist/utils/generate-styling/color.cjs +12 -0
  170. package/dist/utils/generate-styling/flex.cjs +67 -0
  171. package/dist/utils/generate-styling/gap.cjs +22 -0
  172. package/dist/utils/generate-styling/grid.cjs +123 -0
  173. package/dist/utils/generate-styling/height.cjs +51 -0
  174. package/dist/utils/generate-styling/index.cjs +97 -0
  175. package/dist/utils/generate-styling/inset.cjs +33 -0
  176. package/dist/utils/generate-styling/justify.cjs +18 -0
  177. package/dist/utils/generate-styling/margin.cjs +33 -0
  178. package/dist/utils/generate-styling/object-fit.cjs +18 -0
  179. package/dist/utils/generate-styling/padding.cjs +33 -0
  180. package/dist/utils/generate-styling/position.cjs +21 -0
  181. package/dist/utils/generate-styling/util.cjs +33 -0
  182. package/dist/utils/generate-styling/width.cjs +26 -0
  183. package/dist/vite-env.d.cjs +1 -0
  184. package/package.json +6 -4
  185. package/dist/components/text-field/tex-field-label.d.ts +0 -0
  186. package/dist/components/text-field/tex-field-label.js +0 -1
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const clsx = require("clsx");
6
+ const ScrollAreaPrimitive = require("@radix-ui/react-scroll-area");
7
+ const components_button_button = require("../button/button.cjs");
8
+ const utils_composeEventHandlers = require("../../utils/composeEventHandlers.cjs");
9
+ require("../../assets/sprite.5636ec8e-teddy.svg");
10
+ const components_icon_icon = require("../icon/icon.cjs");
11
+ const reactSlot = require("@radix-ui/react-slot");
12
+ function _interopNamespaceDefault(e) {
13
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
14
+ if (e) {
15
+ for (const k in e) {
16
+ if (k !== "default") {
17
+ const d = Object.getOwnPropertyDescriptor(e, k);
18
+ Object.defineProperty(n, k, d.get ? d : {
19
+ enumerable: true,
20
+ get: () => e[k]
21
+ });
22
+ }
23
+ }
24
+ }
25
+ n.default = e;
26
+ return Object.freeze(n);
27
+ }
28
+ const ScrollAreaPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(ScrollAreaPrimitive);
29
+ const styles = {
30
+ "teddy-scroll-area": "_teddy-scroll-area_1o8ft_3",
31
+ "teddy-scroll-area__viewport": "_teddy-scroll-area__viewport_1o8ft_7",
32
+ "teddy-scroll-area__scrollbar": "_teddy-scroll-area__scrollbar_1o8ft_12",
33
+ "teddy-scroll-area__scrollbar--hidden": "_teddy-scroll-area__scrollbar--hidden_1o8ft_33",
34
+ "teddy-scroll-area__thumb": "_teddy-scroll-area__thumb_1o8ft_46",
35
+ "teddy-scroll-area__corner": "_teddy-scroll-area__corner_1o8ft_63",
36
+ "teddy-scroll-area__button": "_teddy-scroll-area__button_1o8ft_66",
37
+ "teddy-scroll-area__button--hidden": "_teddy-scroll-area__button--hidden_1o8ft_94"
38
+ };
39
+ const Scrollbar = React.forwardRef(
40
+ ({ className, ...props }, forwardRef) => {
41
+ const context = React.useContext(RootContext);
42
+ const classes = clsx(
43
+ [styles[`${rootClassName}__scrollbar`]],
44
+ {
45
+ [styles[`${rootClassName}__scrollbar--hidden`]]: (context == null ? void 0 : context.variant) !== "scrollbar"
46
+ },
47
+ className
48
+ );
49
+ return /* @__PURE__ */ jsxRuntime.jsx(ScrollAreaPrimitive__namespace.Scrollbar, { ...props, ref: forwardRef, className: classes });
50
+ }
51
+ );
52
+ Scrollbar.displayName = "Scrollbar";
53
+ const Thumb = React.forwardRef(
54
+ ({ className, ...props }, forwardRef) => {
55
+ const classes = clsx([styles[`${rootClassName}__thumb`]], className);
56
+ return /* @__PURE__ */ jsxRuntime.jsx(ScrollAreaPrimitive__namespace.Thumb, { ...props, ref: forwardRef, className: classes });
57
+ }
58
+ );
59
+ Thumb.displayName = "Thumb";
60
+ const Corner = React.forwardRef(
61
+ ({ className, ...props }, forwardRef) => {
62
+ const classes = clsx([styles[`${rootClassName}__corner`]], className);
63
+ return /* @__PURE__ */ jsxRuntime.jsx(ScrollAreaPrimitive__namespace.Corner, { ...props, ref: forwardRef, className: classes });
64
+ }
65
+ );
66
+ Corner.displayName = "Corner";
67
+ const Button = React.forwardRef(
68
+ ({ className, hidden, direction, children, ...props }, forwardRef) => {
69
+ const context = React.useContext(RootContext);
70
+ const internalHidden = hidden ?? (direction === "up" && !(context == null ? void 0 : context.hasScrollTop) || direction === "down" && !(context == null ? void 0 : context.hasScrollBottom) || direction === "left" && !(context == null ? void 0 : context.hasScrollLeft) || direction === "right" && !(context == null ? void 0 : context.hasScrollRight));
71
+ const classes = clsx(
72
+ [styles[`${rootClassName}__button`]],
73
+ {
74
+ [styles[`${rootClassName}__button--hidden`]]: internalHidden
75
+ },
76
+ className
77
+ );
78
+ return /* @__PURE__ */ jsxRuntime.jsx(
79
+ components_button_button.Button,
80
+ {
81
+ iconOnly: true,
82
+ variant: "primary",
83
+ "aria-label": direction === "down" ? "Scroll ned" : direction === "up" ? "Scroll opp" : direction === "left" ? "Scroll venstre" : "Scroll høyre",
84
+ "data-direction": direction,
85
+ tabIndex: internalHidden ? -1 : void 0,
86
+ ...props,
87
+ onClick: utils_composeEventHandlers.composeEventHandlers(props.onClick, (e) => {
88
+ var _a, _b;
89
+ if (e.defaultPrevented)
90
+ return;
91
+ const scroll = (_a = context == null ? void 0 : context.scrollRef) == null ? void 0 : _a.getBoundingClientRect();
92
+ const scrollDirection = direction === "up" || direction === "left" ? -1 : 1;
93
+ const scrollAxis = direction === "up" || direction === "down" ? "top" : "left";
94
+ const scrollAmount = ((direction === "up" || direction === "down" ? scroll == null ? void 0 : scroll.height : scroll == null ? void 0 : scroll.width) || 0) * 0.7;
95
+ (_b = context == null ? void 0 : context.scrollRef) == null ? void 0 : _b.scrollBy({
96
+ [scrollAxis]: scrollAmount * scrollDirection,
97
+ behavior: "smooth"
98
+ });
99
+ }),
100
+ ref: forwardRef,
101
+ className: classes,
102
+ children: children || /* @__PURE__ */ jsxRuntime.jsx(
103
+ components_icon_icon.Icon,
104
+ {
105
+ name: direction === "down" ? "chevron-down" : direction === "up" ? "chevron-up" : direction === "left" ? "chevron-left" : "chevron-right"
106
+ }
107
+ )
108
+ }
109
+ );
110
+ }
111
+ );
112
+ components_button_button.Button.displayName = "Button";
113
+ const rootClassName = "teddy-scroll-area";
114
+ const RootContext = React.createContext(void 0);
115
+ const Root = React.forwardRef(
116
+ ({ className, variant, children, ...props }, forwardRef) => {
117
+ const [scrollRef, setScrollRef] = React.useState(null);
118
+ const [hasScroll, setHasScroll] = React.useState(null);
119
+ const initialHasScrollLeft = scrollRef ? scrollRef.scrollLeft > 0 : null;
120
+ const initialHasScrollRight = scrollRef ? scrollRef.scrollLeft < scrollRef.scrollWidth - scrollRef.clientWidth : null;
121
+ const initialHasScrollTop = scrollRef ? scrollRef.scrollTop > 0 : null;
122
+ const initialHasScrollBottom = scrollRef ? scrollRef.scrollTop < scrollRef.scrollHeight - scrollRef.clientHeight : null;
123
+ const hasScrollLeft = hasScroll ? hasScroll.left : initialHasScrollLeft;
124
+ const hasScrollRight = hasScroll ? hasScroll.right : initialHasScrollRight;
125
+ const hasScrollTop = hasScroll ? hasScroll.top : initialHasScrollTop;
126
+ const hasScrollBottom = hasScroll ? hasScroll.bottom : initialHasScrollBottom;
127
+ const hasScrollHorizontal = hasScrollLeft || hasScrollRight;
128
+ const hasScrollVertical = hasScrollTop || hasScrollBottom;
129
+ const classes = clsx([styles[`${rootClassName}`]], className);
130
+ function handleScroll(e) {
131
+ const target = e.currentTarget;
132
+ setHasScroll({
133
+ left: target.scrollLeft > 0,
134
+ right: target.scrollLeft < target.scrollWidth - target.clientWidth,
135
+ top: target.scrollTop > 0,
136
+ bottom: target.scrollTop < target.scrollHeight - target.clientHeight
137
+ });
138
+ }
139
+ return /* @__PURE__ */ jsxRuntime.jsx(
140
+ RootContext.Provider,
141
+ {
142
+ value: { scrollRef, variant, hasScrollTop, hasScrollBottom, hasScrollLeft, hasScrollRight },
143
+ children: /* @__PURE__ */ jsxRuntime.jsxs(ScrollAreaPrimitive__namespace.Root, { ...props, ref: forwardRef, className: classes, children: [
144
+ /* @__PURE__ */ jsxRuntime.jsx(
145
+ ScrollAreaPrimitive__namespace.Viewport,
146
+ {
147
+ onScroll: handleScroll,
148
+ ref: setScrollRef,
149
+ className: clsx([styles[`${rootClassName}__viewport`]]),
150
+ children: /* @__PURE__ */ jsxRuntime.jsx(reactSlot.Slottable, { children })
151
+ }
152
+ ),
153
+ /* @__PURE__ */ jsxRuntime.jsx(Scrollbar, { orientation: "vertical", children: /* @__PURE__ */ jsxRuntime.jsx(Thumb, {}) }),
154
+ /* @__PURE__ */ jsxRuntime.jsx(Scrollbar, { orientation: "horizontal", children: /* @__PURE__ */ jsxRuntime.jsx(Thumb, {}) }),
155
+ /* @__PURE__ */ jsxRuntime.jsx(Corner, {}),
156
+ variant === "button" && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
157
+ hasScrollVertical && /* @__PURE__ */ jsxRuntime.jsx(Button, { direction: "up", hidden: !hasScrollTop }),
158
+ hasScrollVertical && /* @__PURE__ */ jsxRuntime.jsx(Button, { direction: "down", hidden: !hasScrollBottom }),
159
+ hasScrollHorizontal && /* @__PURE__ */ jsxRuntime.jsx(Button, { direction: "left", hidden: !hasScrollLeft }),
160
+ hasScrollHorizontal && /* @__PURE__ */ jsxRuntime.jsx(Button, { direction: "right", hidden: !hasScrollRight })
161
+ ] })
162
+ ] })
163
+ }
164
+ );
165
+ }
166
+ );
167
+ Root.displayName = "Root";
168
+ exports.Button = Button;
169
+ exports.Corner = Corner;
170
+ exports.Root = Root;
171
+ exports.RootContext = RootContext;
172
+ exports.Scrollbar = Scrollbar;
173
+ exports.Thumb = Thumb;
174
+ exports.rootClassName = rootClassName;
175
+ exports.styles = styles;
@@ -8,14 +8,14 @@ import "../../assets/sprite.5636ec8e-teddy.svg";
8
8
  import { Icon } from "../icon/icon.js";
9
9
  import { Slottable } from "@radix-ui/react-slot";
10
10
  const styles = {
11
- "teddy-scroll-area": "_teddy-scroll-area_1swny_3",
12
- "teddy-scroll-area__viewport": "_teddy-scroll-area__viewport_1swny_7",
13
- "teddy-scroll-area__scrollbar": "_teddy-scroll-area__scrollbar_1swny_12",
14
- "teddy-scroll-area__scrollbar--hidden": "_teddy-scroll-area__scrollbar--hidden_1swny_33",
15
- "teddy-scroll-area__thumb": "_teddy-scroll-area__thumb_1swny_46",
16
- "teddy-scroll-area__corner": "_teddy-scroll-area__corner_1swny_63",
17
- "teddy-scroll-area__button": "_teddy-scroll-area__button_1swny_66",
18
- "teddy-scroll-area__button--hidden": "_teddy-scroll-area__button--hidden_1swny_90"
11
+ "teddy-scroll-area": "_teddy-scroll-area_1o8ft_3",
12
+ "teddy-scroll-area__viewport": "_teddy-scroll-area__viewport_1o8ft_7",
13
+ "teddy-scroll-area__scrollbar": "_teddy-scroll-area__scrollbar_1o8ft_12",
14
+ "teddy-scroll-area__scrollbar--hidden": "_teddy-scroll-area__scrollbar--hidden_1o8ft_33",
15
+ "teddy-scroll-area__thumb": "_teddy-scroll-area__thumb_1o8ft_46",
16
+ "teddy-scroll-area__corner": "_teddy-scroll-area__corner_1o8ft_63",
17
+ "teddy-scroll-area__button": "_teddy-scroll-area__button_1o8ft_66",
18
+ "teddy-scroll-area__button--hidden": "_teddy-scroll-area__button--hidden_1o8ft_94"
19
19
  };
20
20
  const Scrollbar = React__default.forwardRef(
21
21
  ({ className, ...props }, forwardRef) => {
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("react/jsx-runtime");
4
+ require("react");
5
+ require("clsx");
6
+ const components_scrollArea_scrollAreaBar = require("./scroll-area-bar.cjs");
7
+ require("../button/button.cjs");
8
+ require("../../utils/composeEventHandlers.cjs");
9
+ require("../../assets/sprite.5636ec8e-teddy.svg");
10
+ require("../icon/icon.cjs");
11
+ exports.Button = components_scrollArea_scrollAreaBar.Button;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("react/jsx-runtime");
4
+ require("react");
5
+ require("clsx");
6
+ require("@radix-ui/react-scroll-area");
7
+ const components_scrollArea_scrollAreaBar = require("./scroll-area-bar.cjs");
8
+ exports.Corner = components_scrollArea_scrollAreaBar.Corner;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const clsx = require("clsx");
6
+ const components_scrollArea_scrollAreaBar = require("./scroll-area-bar.cjs");
7
+ const reactSlot = require("@radix-ui/react-slot");
8
+ const utils_composeEventHandlers = require("../../utils/composeEventHandlers.cjs");
9
+ const Item = React.forwardRef(
10
+ ({ className, asChild, ...props }, forwardRef) => {
11
+ const classes = clsx([components_scrollArea_scrollAreaBar.styles[`${components_scrollArea_scrollAreaBar.rootClassName}__item`]], className);
12
+ const Comp = asChild ? reactSlot.Slot : "div";
13
+ const context = React.useContext(components_scrollArea_scrollAreaBar.RootContext);
14
+ return /* @__PURE__ */ jsxRuntime.jsx(
15
+ Comp,
16
+ {
17
+ ...props,
18
+ onClick: utils_composeEventHandlers.composeEventHandlers(props.onClick, (e) => {
19
+ var _a, _b;
20
+ if (e.defaultPrevented)
21
+ return;
22
+ const scroll = (_a = context == null ? void 0 : context.scrollRef) == null ? void 0 : _a.getBoundingClientRect();
23
+ const item = e.currentTarget.getBoundingClientRect();
24
+ const scrollViewVerticalCenter = ((scroll == null ? void 0 : scroll.top) || 0) + ((scroll == null ? void 0 : scroll.height) || 0) / 2;
25
+ const itemVerticalCenter = ((item == null ? void 0 : item.top) || 0) + ((item == null ? void 0 : item.height) || 0) / 2;
26
+ const scrollViewHorizontalCenter = ((scroll == null ? void 0 : scroll.left) || 0) + ((scroll == null ? void 0 : scroll.width) || 0) / 2;
27
+ const itemHorizontalCenter = ((item == null ? void 0 : item.left) || 0) + ((item == null ? void 0 : item.width) || 0) / 2;
28
+ const hasReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
29
+ (_b = context == null ? void 0 : context.scrollRef) == null ? void 0 : _b.scrollBy({
30
+ top: itemVerticalCenter - scrollViewVerticalCenter,
31
+ left: itemHorizontalCenter - scrollViewHorizontalCenter,
32
+ behavior: hasReducedMotion ? "auto" : "smooth"
33
+ });
34
+ }),
35
+ ref: forwardRef,
36
+ className: classes
37
+ }
38
+ );
39
+ }
40
+ );
41
+ Item.displayName = "Item";
42
+ exports.Item = Item;
@@ -23,10 +23,11 @@ const Item = React__default.forwardRef(
23
23
  const itemVerticalCenter = ((item == null ? void 0 : item.top) || 0) + ((item == null ? void 0 : item.height) || 0) / 2;
24
24
  const scrollViewHorizontalCenter = ((scroll == null ? void 0 : scroll.left) || 0) + ((scroll == null ? void 0 : scroll.width) || 0) / 2;
25
25
  const itemHorizontalCenter = ((item == null ? void 0 : item.left) || 0) + ((item == null ? void 0 : item.width) || 0) / 2;
26
+ const hasReducedMotion = window.matchMedia("(prefers-reduced-motion: reduce)").matches;
26
27
  (_b = context == null ? void 0 : context.scrollRef) == null ? void 0 : _b.scrollBy({
27
28
  top: itemVerticalCenter - scrollViewVerticalCenter,
28
29
  left: itemHorizontalCenter - scrollViewHorizontalCenter,
29
- behavior: "smooth"
30
+ behavior: hasReducedMotion ? "auto" : "smooth"
30
31
  });
31
32
  }),
32
33
  ref: forwardRef,
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("react/jsx-runtime");
4
+ require("react");
5
+ require("clsx");
6
+ require("@radix-ui/react-scroll-area");
7
+ const components_scrollArea_scrollAreaBar = require("./scroll-area-bar.cjs");
8
+ require("@radix-ui/react-slot");
9
+ exports.Root = components_scrollArea_scrollAreaBar.Root;
10
+ exports.RootContext = components_scrollArea_scrollAreaBar.RootContext;
11
+ exports.rootClassName = components_scrollArea_scrollAreaBar.rootClassName;
@@ -4,7 +4,12 @@ import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
4
4
  export declare const rootClassName = "teddy-scroll-area";
5
5
  type Variant = 'scrollbar' | 'button';
6
6
  export type RootProps = React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root> & {
7
- variant?: Variant;
7
+ /** There are three different variants
8
+ * - `scrollbar`: The scrollbar will be visible on hover and scroll
9
+ * - `button`: There will be buttons to scroll
10
+ * - `undefined`: The scrollbar will not be visible
11
+ */
12
+ variant?: Variant | undefined;
8
13
  };
9
14
  type RootContextType = {
10
15
  scrollRef: HTMLDivElement | null;
@@ -16,6 +21,11 @@ type RootContextType = {
16
21
  };
17
22
  export declare const RootContext: React.Context<RootContextType | undefined>;
18
23
  export declare const Root: React.ForwardRefExoticComponent<Omit<ScrollAreaPrimitive.ScrollAreaProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
24
+ /** There are three different variants
25
+ * - `scrollbar`: The scrollbar will be visible on hover and scroll
26
+ * - `button`: There will be buttons to scroll
27
+ * - `undefined`: The scrollbar will not be visible
28
+ */
19
29
  variant?: Variant | undefined;
20
30
  } & React.RefAttributes<HTMLDivElement>>;
21
31
  export {};
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ require("react/jsx-runtime");
4
+ require("react");
5
+ require("clsx");
6
+ require("@radix-ui/react-scroll-area");
7
+ const components_scrollArea_scrollAreaBar = require("./scroll-area-bar.cjs");
8
+ exports.Thumb = components_scrollArea_scrollAreaBar.Thumb;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const components_spinner_spinner = require("./spinner.cjs");
4
+ exports.Spinner = components_spinner_spinner.Spinner;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const clsx = require("clsx");
5
+ const React = require("react");
6
+ const dash = "_dash_ywden_1";
7
+ const rotate = "_rotate_ywden_1";
8
+ const styles = {
9
+ "teddy-spinner--xxs": "_teddy-spinner--xxs_ywden_1",
10
+ "teddy-spinner--xs": "_teddy-spinner--xs_ywden_5",
11
+ "teddy-spinner--sm": "_teddy-spinner--sm_ywden_9",
12
+ "teddy-spinner--md": "_teddy-spinner--md_ywden_13",
13
+ "teddy-spinner--lg": "_teddy-spinner--lg_ywden_18",
14
+ "teddy-spinner__circle": "_teddy-spinner__circle_ywden_23",
15
+ dash,
16
+ rotate,
17
+ "teddy-spinner__circle--disabled": "_teddy-spinner__circle--disabled_ywden_33",
18
+ "teddy-spinner__circle--negative": "_teddy-spinner__circle--negative_ywden_36",
19
+ "teddy-spinner__circle--negative-disabled": "_teddy-spinner__circle--negative-disabled_ywden_39"
20
+ };
21
+ const rootClassName = "teddy-spinner";
22
+ const SPINNER_VARIANT = {
23
+ PRIMARY: "primary",
24
+ DISABLED: "disabled",
25
+ NEGATIVE: "negative",
26
+ NEGATIVE_DISABLED: "negative-disabled"
27
+ };
28
+ const SPINNER_SIZE = {
29
+ XXS: "xxs",
30
+ XS: "xs",
31
+ SM: "sm",
32
+ MD: "md",
33
+ LG: "lg"
34
+ };
35
+ const Spinner = React.forwardRef(
36
+ ({ size = SPINNER_SIZE.SM, variant = SPINNER_VARIANT.PRIMARY, className, ...props }, forwardRef) => {
37
+ return /* @__PURE__ */ jsxRuntime.jsx(
38
+ "svg",
39
+ {
40
+ ...props,
41
+ viewBox: "0 0 50 50",
42
+ className: clsx([styles[rootClassName], styles[`${rootClassName}--${size}`], className]),
43
+ ref: forwardRef,
44
+ children: /* @__PURE__ */ jsxRuntime.jsx(
45
+ "circle",
46
+ {
47
+ className: clsx(styles[`${rootClassName}__circle`], styles[`${rootClassName}__circle--${variant}`]),
48
+ cx: "25",
49
+ cy: "25",
50
+ r: "20"
51
+ }
52
+ )
53
+ }
54
+ );
55
+ }
56
+ );
57
+ exports.Spinner = Spinner;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const components_tabs_tabsRoot = require("./tabs-root.cjs");
4
+ const components_tabs_tabsList = require("./tabs-list.cjs");
5
+ const components_tabs_tabsTrigger = require("./tabs-trigger.cjs");
6
+ const components_tabs_tabsContent = require("./tabs-content.cjs");
7
+ const components_tabs_tabsScroll = require("./tabs-scroll.cjs");
8
+ const components_tabs_tabsScrollButton = require("./tabs-scroll-button.cjs");
9
+ const Tabs = Object.assign(components_tabs_tabsRoot.Root, {
10
+ List: components_tabs_tabsList.List,
11
+ Trigger: components_tabs_tabsTrigger.Trigger,
12
+ Content: components_tabs_tabsContent.Content,
13
+ Scroll: components_tabs_tabsScroll.Scroll,
14
+ ScrollButton: components_tabs_tabsScrollButton.ScrollButton
15
+ });
16
+ exports.Tabs = Tabs;
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const TabsPrimitive = require("@radix-ui/react-tabs");
6
+ const clsx = require("clsx");
7
+ const components_tabs_tabsRoot = require("./tabs-root.cjs");
8
+ function _interopNamespaceDefault(e) {
9
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
10
+ if (e) {
11
+ for (const k in e) {
12
+ if (k !== "default") {
13
+ const d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: () => e[k]
17
+ });
18
+ }
19
+ }
20
+ }
21
+ n.default = e;
22
+ return Object.freeze(n);
23
+ }
24
+ const TabsPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(TabsPrimitive);
25
+ const Content = React.forwardRef(
26
+ ({ className, ...props }, forwardRef) => {
27
+ const classes = clsx([components_tabs_tabsRoot.styles[`${components_tabs_tabsRoot.rootClassName}__content`]], className);
28
+ return /* @__PURE__ */ jsxRuntime.jsx(TabsPrimitive__namespace.Content, { ...props, ref: forwardRef, className: classes });
29
+ }
30
+ );
31
+ Content.displayName = "Content";
32
+ exports.Content = Content;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const TabsPrimitive = require("@radix-ui/react-tabs");
6
+ const clsx = require("clsx");
7
+ const components_tabs_tabsRoot = require("./tabs-root.cjs");
8
+ const components_tabs_tabsScroll = require("./tabs-scroll.cjs");
9
+ const utils_composeRefs = require("../../utils/composeRefs.cjs");
10
+ function _interopNamespaceDefault(e) {
11
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
12
+ if (e) {
13
+ for (const k in e) {
14
+ if (k !== "default") {
15
+ const d = Object.getOwnPropertyDescriptor(e, k);
16
+ Object.defineProperty(n, k, d.get ? d : {
17
+ enumerable: true,
18
+ get: () => e[k]
19
+ });
20
+ }
21
+ }
22
+ }
23
+ n.default = e;
24
+ return Object.freeze(n);
25
+ }
26
+ const TabsPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(TabsPrimitive);
27
+ const List = React.forwardRef(
28
+ ({ className, children, ...props }, forwardRef) => {
29
+ const classes = clsx([components_tabs_tabsRoot.styles[`${components_tabs_tabsRoot.rootClassName}__list`]], className);
30
+ const scrollContext = React.useContext(components_tabs_tabsScroll.ScrollContext);
31
+ const rootContext = React.useContext(components_tabs_tabsRoot.RootContext);
32
+ if (!scrollContext) {
33
+ return /* @__PURE__ */ jsxRuntime.jsx(components_tabs_tabsScroll.Scroll, { children: /* @__PURE__ */ jsxRuntime.jsx(TabsPrimitive__namespace.List, { ...props, ref: utils_composeRefs.composeRefs(forwardRef, rootContext == null ? void 0 : rootContext.listElement), className: classes, children }) });
34
+ }
35
+ return /* @__PURE__ */ jsxRuntime.jsx(TabsPrimitive__namespace.List, { ...props, ref: utils_composeRefs.composeRefs(forwardRef, rootContext == null ? void 0 : rootContext.listElement), className: classes, children });
36
+ }
37
+ );
38
+ List.displayName = "List";
39
+ exports.List = List;
@@ -2,16 +2,18 @@ import { jsx } from "react/jsx-runtime";
2
2
  import React__default from "react";
3
3
  import * as TabsPrimitive from "@radix-ui/react-tabs";
4
4
  import clsx from "clsx";
5
- import { s as styles, rootClassName } from "./tabs-root.js";
5
+ import { s as styles, rootClassName, RootContext } from "./tabs-root.js";
6
6
  import { ScrollContext, Scroll } from "./tabs-scroll.js";
7
+ import { composeRefs } from "../../utils/composeRefs.js";
7
8
  const List = React__default.forwardRef(
8
- ({ className, ...props }, forwardRef) => {
9
+ ({ className, children, ...props }, forwardRef) => {
9
10
  const classes = clsx([styles[`${rootClassName}__list`]], className);
10
11
  const scrollContext = React__default.useContext(ScrollContext);
12
+ const rootContext = React__default.useContext(RootContext);
11
13
  if (!scrollContext) {
12
- return /* @__PURE__ */ jsx(Scroll, { children: /* @__PURE__ */ jsx(TabsPrimitive.List, { ...props, ref: forwardRef, className: classes }) });
14
+ return /* @__PURE__ */ jsx(Scroll, { children: /* @__PURE__ */ jsx(TabsPrimitive.List, { ...props, ref: composeRefs(forwardRef, rootContext == null ? void 0 : rootContext.listElement), className: classes, children }) });
13
15
  }
14
- return /* @__PURE__ */ jsx(TabsPrimitive.List, { ...props, ref: forwardRef, className: classes });
16
+ return /* @__PURE__ */ jsx(TabsPrimitive.List, { ...props, ref: composeRefs(forwardRef, rootContext == null ? void 0 : rootContext.listElement), className: classes, children });
15
17
  }
16
18
  );
17
19
  List.displayName = "List";
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const jsxRuntime = require("react/jsx-runtime");
4
+ const React = require("react");
5
+ const clsx = require("clsx");
6
+ const TabsPrimitive = require("@radix-ui/react-tabs");
7
+ const reactUseControllableState = require("@radix-ui/react-use-controllable-state");
8
+ const utils_composeEventHandlers = require("../../utils/composeEventHandlers.cjs");
9
+ function _interopNamespaceDefault(e) {
10
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
11
+ if (e) {
12
+ for (const k in e) {
13
+ if (k !== "default") {
14
+ const d = Object.getOwnPropertyDescriptor(e, k);
15
+ Object.defineProperty(n, k, d.get ? d : {
16
+ enumerable: true,
17
+ get: () => e[k]
18
+ });
19
+ }
20
+ }
21
+ }
22
+ n.default = e;
23
+ return Object.freeze(n);
24
+ }
25
+ const TabsPrimitive__namespace = /* @__PURE__ */ _interopNamespaceDefault(TabsPrimitive);
26
+ const styles = {
27
+ "teddy-tabs__list": "_teddy-tabs__list_1finq_3",
28
+ "teddy-tabs--full-width": "_teddy-tabs--full-width_1finq_30",
29
+ "teddy-tabs__trigger": "_teddy-tabs__trigger_1finq_33",
30
+ "teddy-tabs__scroll-button": "_teddy-tabs__scroll-button_1finq_48"
31
+ };
32
+ const rootClassName = "teddy-tabs";
33
+ const RootContext = React.createContext(void 0);
34
+ const Root = React.forwardRef(
35
+ ({ className, onValueChange, fullWidth, snapCenter = true, ...props }, forwardRef) => {
36
+ const [activeElement, setActiveElement] = React.useState(null);
37
+ const listElement = React.useRef(null);
38
+ const [value, setValue] = reactUseControllableState.useControllableState({
39
+ prop: props.value,
40
+ onChange: onValueChange,
41
+ defaultProp: props.defaultValue
42
+ });
43
+ const classes = clsx(
44
+ [styles[`${rootClassName}`]],
45
+ { [styles[`${rootClassName}--full-width`]]: fullWidth },
46
+ className
47
+ );
48
+ return /* @__PURE__ */ jsxRuntime.jsx(
49
+ RootContext.Provider,
50
+ {
51
+ value: {
52
+ activeElement,
53
+ setActiveElement,
54
+ snapCenter,
55
+ value,
56
+ listElement
57
+ },
58
+ children: /* @__PURE__ */ jsxRuntime.jsx(
59
+ TabsPrimitive__namespace.Root,
60
+ {
61
+ ...props,
62
+ onValueChange: utils_composeEventHandlers.composeEventHandlers(setValue, onValueChange),
63
+ ref: forwardRef,
64
+ className: classes
65
+ }
66
+ )
67
+ }
68
+ );
69
+ }
70
+ );
71
+ Root.displayName = "Root";
72
+ exports.Root = Root;
73
+ exports.RootContext = RootContext;
74
+ exports.rootClassName = rootClassName;
75
+ exports.styles = styles;
@@ -17,15 +17,12 @@ export type RootProps = Omit<React.ComponentPropsWithoutRef<typeof TabsPrimitive
17
17
  */
18
18
  snapCenter?: boolean;
19
19
  };
20
- type ActiveElement = {
21
- left: number;
22
- width: number;
23
- bottom: number;
24
- };
25
20
  type RootContextType = {
26
- activeElement: ActiveElement | null;
27
- setActiveElement: React.Dispatch<React.SetStateAction<ActiveElement | null>>;
21
+ activeElement: HTMLButtonElement | null;
22
+ setActiveElement: React.Dispatch<React.SetStateAction<HTMLButtonElement | null>>;
23
+ listElement: React.RefObject<HTMLDivElement>;
28
24
  snapCenter: boolean;
25
+ value: string | undefined;
29
26
  };
30
27
  export declare const RootContext: React.Context<RootContextType | undefined>;
31
28
  export declare const Root: React.ForwardRefExoticComponent<Omit<Omit<TabsPrimitive.TabsProps & React.RefAttributes<HTMLDivElement>, "ref">, "defaultValue" | "value" | "onValueChange" | "activationMode"> & {
@@ -2,18 +2,25 @@ import { jsx } from "react/jsx-runtime";
2
2
  import React__default from "react";
3
3
  import clsx from "clsx";
4
4
  import * as TabsPrimitive from "@radix-ui/react-tabs";
5
+ import { useControllableState } from "@radix-ui/react-use-controllable-state";
6
+ import { composeEventHandlers } from "../../utils/composeEventHandlers.js";
5
7
  const styles = {
6
- "teddy-tabs__list": "_teddy-tabs__list_1sgsx_3",
7
- "teddy-tabs--full-width": "_teddy-tabs--full-width_1sgsx_10",
8
- "teddy-tabs__trigger": "_teddy-tabs__trigger_1sgsx_13",
9
- "teddy-tabs__indicator": "_teddy-tabs__indicator_1sgsx_28",
10
- "teddy-tabs__scroll-button": "_teddy-tabs__scroll-button_1sgsx_34"
8
+ "teddy-tabs__list": "_teddy-tabs__list_1finq_3",
9
+ "teddy-tabs--full-width": "_teddy-tabs--full-width_1finq_30",
10
+ "teddy-tabs__trigger": "_teddy-tabs__trigger_1finq_33",
11
+ "teddy-tabs__scroll-button": "_teddy-tabs__scroll-button_1finq_48"
11
12
  };
12
13
  const rootClassName = "teddy-tabs";
13
14
  const RootContext = React__default.createContext(void 0);
14
15
  const Root = React__default.forwardRef(
15
- ({ className, fullWidth, snapCenter = true, ...props }, forwardRef) => {
16
+ ({ className, onValueChange, fullWidth, snapCenter = true, ...props }, forwardRef) => {
16
17
  const [activeElement, setActiveElement] = React__default.useState(null);
18
+ const listElement = React__default.useRef(null);
19
+ const [value, setValue] = useControllableState({
20
+ prop: props.value,
21
+ onChange: onValueChange,
22
+ defaultProp: props.defaultValue
23
+ });
17
24
  const classes = clsx(
18
25
  [styles[`${rootClassName}`]],
19
26
  { [styles[`${rootClassName}--full-width`]]: fullWidth },
@@ -25,9 +32,19 @@ const Root = React__default.forwardRef(
25
32
  value: {
26
33
  activeElement,
27
34
  setActiveElement,
28
- snapCenter
35
+ snapCenter,
36
+ value,
37
+ listElement
29
38
  },
30
- children: /* @__PURE__ */ jsx(TabsPrimitive.Root, { ...props, ref: forwardRef, className: classes })
39
+ children: /* @__PURE__ */ jsx(
40
+ TabsPrimitive.Root,
41
+ {
42
+ ...props,
43
+ onValueChange: composeEventHandlers(setValue, onValueChange),
44
+ ref: forwardRef,
45
+ className: classes
46
+ }
47
+ )
31
48
  }
32
49
  );
33
50
  }