@qeetrix/react 0.0.1 → 0.0.4

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 (263) hide show
  1. package/CHANGELOG.md +288 -0
  2. package/README.md +240 -4
  3. package/dist/accordion/accordion.d.ts +42 -0
  4. package/dist/accordion/accordion.js +72 -0
  5. package/dist/accordion/index.d.ts +2 -0
  6. package/dist/accordion/index.js +1 -0
  7. package/dist/avatar/avatar.d.ts +21 -0
  8. package/dist/avatar/avatar.js +43 -0
  9. package/dist/avatar/index.d.ts +2 -0
  10. package/dist/avatar/index.js +1 -0
  11. package/dist/badge/badge.d.ts +14 -0
  12. package/dist/badge/badge.js +25 -0
  13. package/dist/badge/index.d.ts +2 -0
  14. package/dist/badge/index.js +1 -0
  15. package/dist/box/box.d.ts +27 -0
  16. package/dist/box/box.js +21 -0
  17. package/dist/box/index.d.ts +2 -0
  18. package/dist/box/index.js +1 -0
  19. package/dist/button/button.d.ts +50 -0
  20. package/dist/button/button.js +78 -0
  21. package/dist/button/index.d.ts +2 -0
  22. package/dist/button/index.js +1 -0
  23. package/dist/card/card.d.ts +30 -0
  24. package/dist/card/card.js +56 -0
  25. package/dist/card/index.d.ts +2 -0
  26. package/dist/card/index.js +1 -0
  27. package/dist/checkbox/checkbox.d.ts +33 -0
  28. package/dist/checkbox/checkbox.js +61 -0
  29. package/dist/checkbox/index.d.ts +2 -0
  30. package/dist/checkbox/index.js +1 -0
  31. package/dist/css/accordion.css +73 -0
  32. package/dist/css/avatar.css +50 -0
  33. package/dist/css/badge.css +59 -0
  34. package/dist/css/box.css +163 -0
  35. package/dist/css/button.css +243 -0
  36. package/dist/css/card.css +75 -0
  37. package/dist/css/checkbox.css +67 -0
  38. package/dist/css/dialog.css +128 -0
  39. package/dist/css/drawer.css +129 -0
  40. package/dist/css/experimental/alert.css +89 -0
  41. package/dist/css/experimental/app-shell.css +258 -0
  42. package/dist/css/experimental/breadcrumb.css +67 -0
  43. package/dist/css/experimental/copy-button.css +13 -0
  44. package/dist/css/experimental/empty-state.css +63 -0
  45. package/dist/css/experimental/otp-input.css +84 -0
  46. package/dist/css/experimental/page-header.css +110 -0
  47. package/dist/css/experimental/password-input.css +21 -0
  48. package/dist/css/experimental/sidebar.css +234 -0
  49. package/dist/css/experimental/stat.css +115 -0
  50. package/dist/css/experimental/top-bar.css +299 -0
  51. package/dist/css/field.css +121 -0
  52. package/dist/css/fieldset.css +37 -0
  53. package/dist/css/grid.css +86 -0
  54. package/dist/css/heading.css +93 -0
  55. package/dist/css/inline.css +85 -0
  56. package/dist/css/input.css +108 -0
  57. package/dist/css/link.css +45 -0
  58. package/dist/css/menu.css +166 -0
  59. package/dist/css/popover.css +72 -0
  60. package/dist/css/progress.css +102 -0
  61. package/dist/css/radio.css +54 -0
  62. package/dist/css/scroll-area.css +70 -0
  63. package/dist/css/select.css +189 -0
  64. package/dist/css/separator.css +35 -0
  65. package/dist/css/skeleton.css +39 -0
  66. package/dist/css/skip-link.css +33 -0
  67. package/dist/css/slider.css +108 -0
  68. package/dist/css/spinner.css +55 -0
  69. package/dist/css/stack.css +76 -0
  70. package/dist/css/switch.css +112 -0
  71. package/dist/css/table.css +68 -0
  72. package/dist/css/tabs.css +123 -0
  73. package/dist/css/text-field.css +4 -0
  74. package/dist/css/text.css +106 -0
  75. package/dist/css/toast.css +115 -0
  76. package/dist/css/toggle.css +125 -0
  77. package/dist/css/tooltip.css +47 -0
  78. package/dist/css/visually-hidden.css +15 -0
  79. package/dist/dialog/dialog.d.ts +54 -0
  80. package/dist/dialog/dialog.js +121 -0
  81. package/dist/dialog/index.d.ts +2 -0
  82. package/dist/dialog/index.js +1 -0
  83. package/dist/drawer/drawer.d.ts +49 -0
  84. package/dist/drawer/drawer.js +102 -0
  85. package/dist/drawer/index.d.ts +2 -0
  86. package/dist/drawer/index.js +1 -0
  87. package/dist/experimental/alert/alert.d.ts +29 -0
  88. package/dist/experimental/alert/alert.js +72 -0
  89. package/dist/experimental/alert/index.d.ts +2 -0
  90. package/dist/experimental/app-shell/app-shell.d.ts +60 -0
  91. package/dist/experimental/app-shell/app-shell.js +224 -0
  92. package/dist/experimental/app-shell/index.d.ts +2 -0
  93. package/dist/experimental/breadcrumb/breadcrumb.d.ts +27 -0
  94. package/dist/experimental/breadcrumb/breadcrumb.js +48 -0
  95. package/dist/experimental/breadcrumb/index.d.ts +2 -0
  96. package/dist/experimental/copy-button/copy-button.d.ts +27 -0
  97. package/dist/experimental/copy-button/copy-button.js +61 -0
  98. package/dist/experimental/copy-button/index.d.ts +2 -0
  99. package/dist/experimental/empty-state/data-state.d.ts +23 -0
  100. package/dist/experimental/empty-state/data-state.js +40 -0
  101. package/dist/experimental/empty-state/empty-state.d.ts +26 -0
  102. package/dist/experimental/empty-state/empty-state.js +46 -0
  103. package/dist/experimental/empty-state/index.d.ts +3 -0
  104. package/dist/experimental/index.d.ts +24 -0
  105. package/dist/experimental/index.js +13 -0
  106. package/dist/experimental/otp-input/index.d.ts +2 -0
  107. package/dist/experimental/otp-input/otp-input.d.ts +27 -0
  108. package/dist/experimental/otp-input/otp-input.js +39 -0
  109. package/dist/experimental/page-header/index.d.ts +2 -0
  110. package/dist/experimental/page-header/page-header.d.ts +32 -0
  111. package/dist/experimental/page-header/page-header.js +73 -0
  112. package/dist/experimental/password-input/index.d.ts +2 -0
  113. package/dist/experimental/password-input/password-input.d.ts +26 -0
  114. package/dist/experimental/password-input/password-input.js +103 -0
  115. package/dist/experimental/sidebar/index.d.ts +2 -0
  116. package/dist/experimental/sidebar/sidebar.d.ts +64 -0
  117. package/dist/experimental/sidebar/sidebar.js +200 -0
  118. package/dist/experimental/stat/index.d.ts +2 -0
  119. package/dist/experimental/stat/stat.d.ts +31 -0
  120. package/dist/experimental/stat/stat.js +90 -0
  121. package/dist/experimental/top-bar/index.d.ts +2 -0
  122. package/dist/experimental/top-bar/top-bar.d.ts +60 -0
  123. package/dist/experimental/top-bar/top-bar.js +162 -0
  124. package/dist/field/choice.d.ts +21 -0
  125. package/dist/field/choice.js +67 -0
  126. package/dist/field/field.d.ts +31 -0
  127. package/dist/field/field.js +78 -0
  128. package/dist/field/index.d.ts +3 -0
  129. package/dist/field/index.js +1 -0
  130. package/dist/fieldset/fieldset.d.ts +19 -0
  131. package/dist/fieldset/fieldset.js +29 -0
  132. package/dist/fieldset/index.d.ts +2 -0
  133. package/dist/fieldset/index.js +1 -0
  134. package/dist/format/format.d.ts +12 -0
  135. package/dist/format/format.js +50 -0
  136. package/dist/format/index.d.ts +2 -0
  137. package/dist/format/index.js +1 -0
  138. package/dist/grid/grid.d.ts +30 -0
  139. package/dist/grid/grid.js +36 -0
  140. package/dist/grid/index.d.ts +2 -0
  141. package/dist/grid/index.js +1 -0
  142. package/dist/heading/heading.d.ts +23 -0
  143. package/dist/heading/heading.js +30 -0
  144. package/dist/heading/index.d.ts +2 -0
  145. package/dist/heading/index.js +1 -0
  146. package/dist/index.d.ts +84 -1
  147. package/dist/index.js +40 -0
  148. package/dist/inline/index.d.ts +2 -0
  149. package/dist/inline/index.js +1 -0
  150. package/dist/inline/inline.d.ts +19 -0
  151. package/dist/inline/inline.js +16 -0
  152. package/dist/input/index.d.ts +2 -0
  153. package/dist/input/index.js +1 -0
  154. package/dist/input/input.d.ts +37 -0
  155. package/dist/input/input.js +63 -0
  156. package/dist/internal/control.d.ts +9 -0
  157. package/dist/internal/control.js +4 -0
  158. package/dist/internal/cx.js +7 -0
  159. package/dist/internal/media.js +15 -0
  160. package/dist/internal/messages.d.ts +75 -0
  161. package/dist/internal/messages.js +61 -0
  162. package/dist/internal/refs.js +23 -0
  163. package/dist/internal/render.d.ts +6 -0
  164. package/dist/internal/render.js +22 -0
  165. package/dist/internal/space.d.ts +9 -0
  166. package/dist/internal/text.d.ts +5 -0
  167. package/dist/internal/text.js +18 -0
  168. package/dist/link/index.d.ts +2 -0
  169. package/dist/link/index.js +1 -0
  170. package/dist/link/link.d.ts +19 -0
  171. package/dist/link/link.js +32 -0
  172. package/dist/locales/hi.d.ts +8 -0
  173. package/dist/locales/hi.js +60 -0
  174. package/dist/menu/index.d.ts +2 -0
  175. package/dist/menu/index.js +1 -0
  176. package/dist/menu/menu.d.ts +76 -0
  177. package/dist/menu/menu.js +172 -0
  178. package/dist/popover/index.d.ts +2 -0
  179. package/dist/popover/index.js +1 -0
  180. package/dist/popover/popover.d.ts +33 -0
  181. package/dist/popover/popover.js +48 -0
  182. package/dist/progress/index.d.ts +2 -0
  183. package/dist/progress/index.js +1 -0
  184. package/dist/progress/progress.d.ts +26 -0
  185. package/dist/progress/progress.js +62 -0
  186. package/dist/provider/index.d.ts +3 -0
  187. package/dist/provider/index.js +1 -0
  188. package/dist/provider/provider.d.ts +46 -0
  189. package/dist/provider/provider.js +90 -0
  190. package/dist/radio/index.d.ts +2 -0
  191. package/dist/radio/index.js +1 -0
  192. package/dist/radio/radio.d.ts +31 -0
  193. package/dist/radio/radio.js +47 -0
  194. package/dist/scroll-area/index.d.ts +2 -0
  195. package/dist/scroll-area/index.js +1 -0
  196. package/dist/scroll-area/scroll-area.d.ts +18 -0
  197. package/dist/scroll-area/scroll-area.js +39 -0
  198. package/dist/select/index.d.ts +2 -0
  199. package/dist/select/index.js +1 -0
  200. package/dist/select/select.d.ts +36 -0
  201. package/dist/select/select.js +82 -0
  202. package/dist/separator/index.d.ts +2 -0
  203. package/dist/separator/index.js +1 -0
  204. package/dist/separator/separator.d.ts +16 -0
  205. package/dist/separator/separator.js +16 -0
  206. package/dist/skeleton/index.d.ts +2 -0
  207. package/dist/skeleton/index.js +1 -0
  208. package/dist/skeleton/skeleton.d.ts +12 -0
  209. package/dist/skeleton/skeleton.js +18 -0
  210. package/dist/skip-link/index.d.ts +2 -0
  211. package/dist/skip-link/index.js +1 -0
  212. package/dist/skip-link/skip-link.d.ts +13 -0
  213. package/dist/skip-link/skip-link.js +18 -0
  214. package/dist/slider/index.d.ts +2 -0
  215. package/dist/slider/index.js +1 -0
  216. package/dist/slider/slider.d.ts +20 -0
  217. package/dist/slider/slider.js +58 -0
  218. package/dist/spinner/index.d.ts +2 -0
  219. package/dist/spinner/index.js +1 -0
  220. package/dist/spinner/spinner.d.ts +15 -0
  221. package/dist/spinner/spinner.js +19 -0
  222. package/dist/stack/index.d.ts +2 -0
  223. package/dist/stack/index.js +1 -0
  224. package/dist/stack/stack.d.ts +17 -0
  225. package/dist/stack/stack.js +15 -0
  226. package/dist/styles.css +4548 -0
  227. package/dist/switch/index.d.ts +2 -0
  228. package/dist/switch/index.js +1 -0
  229. package/dist/switch/switch.d.ts +18 -0
  230. package/dist/switch/switch.js +31 -0
  231. package/dist/table/index.d.ts +2 -0
  232. package/dist/table/index.js +1 -0
  233. package/dist/table/table.d.ts +36 -0
  234. package/dist/table/table.js +69 -0
  235. package/dist/tabs/index.d.ts +2 -0
  236. package/dist/tabs/index.js +1 -0
  237. package/dist/tabs/tabs.d.ts +43 -0
  238. package/dist/tabs/tabs.js +66 -0
  239. package/dist/text/index.d.ts +3 -0
  240. package/dist/text/index.js +1 -0
  241. package/dist/text/text.d.ts +24 -0
  242. package/dist/text/text.js +24 -0
  243. package/dist/text-field/index.d.ts +2 -0
  244. package/dist/text-field/index.js +1 -0
  245. package/dist/text-field/text-field.d.ts +15 -0
  246. package/dist/text-field/text-field.js +43 -0
  247. package/dist/toast/index.d.ts +2 -0
  248. package/dist/toast/index.js +1 -0
  249. package/dist/toast/toast.d.ts +57 -0
  250. package/dist/toast/toast.js +124 -0
  251. package/dist/toggle/index.d.ts +2 -0
  252. package/dist/toggle/index.js +1 -0
  253. package/dist/toggle/toggle.d.ts +48 -0
  254. package/dist/toggle/toggle.js +54 -0
  255. package/dist/tooltip/index.d.ts +2 -0
  256. package/dist/tooltip/index.js +1 -0
  257. package/dist/tooltip/tooltip.d.ts +26 -0
  258. package/dist/tooltip/tooltip.js +39 -0
  259. package/dist/visually-hidden/index.d.ts +2 -0
  260. package/dist/visually-hidden/index.js +1 -0
  261. package/dist/visually-hidden/visually-hidden.d.ts +8 -0
  262. package/dist/visually-hidden/visually-hidden.js +12 -0
  263. package/package.json +170 -2
@@ -0,0 +1,48 @@
1
+ import { ControlSize, QeetrixIcon } from "../internal/control.js";
2
+ import { ComponentProps, ReactElement, ReactNode } from "react";
3
+ import { Toggle } from "@base-ui/react/toggle";
4
+ import { ToggleGroup } from "@base-ui/react/toggle-group";
5
+ export interface ToggleProps extends Omit<ComponentProps<"button">, "value" | "defaultValue" | "onChange" | "children"> {
6
+ /** Controlled pressed state. */
7
+ pressed?: boolean;
8
+ /** Initial pressed state when uncontrolled. */
9
+ defaultPressed?: boolean;
10
+ /** Called with the new pressed state and Base UI's event details. */
11
+ onPressedChange?: Toggle.Props["onPressedChange"];
12
+ /** The toggle's value inside a ToggleGroup. */
13
+ value?: string;
14
+ /** Height from the density tokens. Default `md`; a ToggleGroup's size wins inside the group. */
15
+ size?: ControlSize;
16
+ /** An icon from `@qeetrix/icons`, in the sharp shape. Icon-only toggles need `aria-label`. */
17
+ icon?: QeetrixIcon;
18
+ /** Show the icon's filled drawing while pressed. Only for icons that have one. */
19
+ filledWhenPressed?: boolean;
20
+ /** The label. */
21
+ children?: ReactNode;
22
+ /** Render a different element through Base UI. */
23
+ render?: Toggle.Props["render"];
24
+ }
25
+ /** A pressed / not-pressed control: a tool, or one view among a few (inside a ToggleGroup). */
26
+ declare function Toggle$1({ size, icon, filledWhenPressed, className, children, type, ...props }: ToggleProps): ReactElement;
27
+ export type ToggleGroupVariant = "segmented" | "separate";
28
+ export interface ToggleGroupProps extends Omit<ComponentProps<"div">, "defaultValue" | "onChange" | "dir"> {
29
+ /** Controlled pressed values. */
30
+ value?: readonly string[];
31
+ /** Initial pressed values when uncontrolled. */
32
+ defaultValue?: readonly string[];
33
+ /** Called with the pressed values and Base UI's event details. */
34
+ onValueChange?: ToggleGroup.Props["onValueChange"];
35
+ /** Allow several toggles pressed at once. Default: one at a time. */
36
+ multiple?: boolean;
37
+ /** Disable every toggle. */
38
+ disabled?: boolean;
39
+ /** Default `horizontal`. */
40
+ orientation?: "horizontal" | "vertical";
41
+ /** `segmented` (default): one joined control. `separate`: individual toggles with a gap. */
42
+ variant?: ToggleGroupVariant;
43
+ /** Height for every toggle in the group. Default `md`. */
44
+ size?: ControlSize;
45
+ }
46
+ /** A row of toggles: a segmented control for one view among a few, or a set of tools. */
47
+ declare function ToggleGroup$1({ variant, size, orientation, className, ...props }: ToggleGroupProps): ReactElement;
48
+ export { Toggle$1 as Toggle, ToggleGroup$1 as ToggleGroup };
@@ -0,0 +1,54 @@
1
+ "use client";
2
+ import { cx } from "../internal/cx.js";
3
+ import { iconSize } from "../internal/control.js";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
+ import { Toggle } from "@base-ui/react/toggle";
6
+ import { ToggleGroup } from "@base-ui/react/toggle-group";
7
+ // src/toggle/toggle.tsx
8
+ function FilledIcon({ icon: Icon, size }) {
9
+ return /* @__PURE__ */ jsx(Icon, {
10
+ shape: "sharp",
11
+ variant: "filled",
12
+ size,
13
+ "aria-hidden": true,
14
+ className: "qx-toggle-icon-filled"
15
+ });
16
+ }
17
+ /** A pressed / not-pressed control: a tool, or one view among a few (inside a ToggleGroup). */
18
+ function Toggle$1({ size = "md", icon, filledWhenPressed, className, children, type = "button", ...props }) {
19
+ const Icon = icon;
20
+ return /* @__PURE__ */ jsxs(Toggle, {
21
+ ...props,
22
+ type,
23
+ className: cx("qx-toggle", className),
24
+ "data-slot": "toggle",
25
+ "data-size": size,
26
+ "data-icon-only": Icon && children === void 0 ? "" : void 0,
27
+ children: [
28
+ Icon ? /* @__PURE__ */ jsx(Icon, {
29
+ shape: "sharp",
30
+ size: iconSize(size),
31
+ "aria-hidden": true,
32
+ className: "qx-toggle-icon-outline"
33
+ }) : null,
34
+ Icon && filledWhenPressed ? /* @__PURE__ */ jsx(FilledIcon, {
35
+ icon: Icon,
36
+ size: iconSize(size)
37
+ }) : null,
38
+ children
39
+ ]
40
+ });
41
+ }
42
+ /** A row of toggles: a segmented control for one view among a few, or a set of tools. */
43
+ function ToggleGroup$1({ variant = "segmented", size = "md", orientation = "horizontal", className, ...props }) {
44
+ return /* @__PURE__ */ jsx(ToggleGroup, {
45
+ ...props,
46
+ orientation,
47
+ className: cx("qx-toggle-group", className),
48
+ "data-slot": "toggle-group",
49
+ "data-variant": variant,
50
+ "data-size": size,
51
+ "data-orientation": orientation
52
+ });
53
+ }
54
+ export { Toggle$1 as Toggle, ToggleGroup$1 as ToggleGroup };
@@ -0,0 +1,2 @@
1
+ import { Tooltip, TooltipProps, TooltipProvider, TooltipProviderProps } from "./tooltip.js";
2
+ export { Tooltip, type TooltipProps, TooltipProvider, type TooltipProviderProps };
@@ -0,0 +1 @@
1
+ export { Tooltip, TooltipProvider } from "./tooltip.js";
@@ -0,0 +1,26 @@
1
+ import { ReactElement, ReactNode } from "react";
2
+ import { Tooltip } from "@base-ui/react/tooltip";
3
+ export interface TooltipProps extends Omit<Tooltip.Root.Props, "children"> {
4
+ /** The text. Short, never interactive and never essential. */
5
+ content: ReactNode;
6
+ /** The trigger: one element that takes a ref and props, such as an IconButton. */
7
+ children: ReactElement;
8
+ /** Default `top`; it flips when there is no room. */
9
+ side?: Tooltip.Positioner.Props["side"];
10
+ align?: Tooltip.Positioner.Props["align"];
11
+ /** Hover time before it opens, in milliseconds. Default 500; keyboard focus opens it at once. */
12
+ delay?: number;
13
+ /** Time before it closes after the pointer leaves, in milliseconds. */
14
+ closeDelay?: number;
15
+ }
16
+ export interface TooltipProviderProps extends Tooltip.Provider.Props {}
17
+ /**
18
+ * Groups tooltips (an app, a toolbar): once one is open, moving to a neighbour opens it at once.
19
+ */
20
+ export declare function TooltipProvider({ delay, closeDelay, ...props }: TooltipProviderProps): ReactElement;
21
+ /**
22
+ * A short label for a control, most often an icon-only button (06-component-specs.md §7):
23
+ * `<Tooltip content="Download invoice"><IconButton … /></Tooltip>`. It doesn't appear on touch.
24
+ */
25
+ declare function Tooltip$1({ content, children, side, align, delay, closeDelay, ...props }: TooltipProps): ReactElement;
26
+ export { Tooltip$1 as Tooltip };
@@ -0,0 +1,39 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { Tooltip } from "@base-ui/react/tooltip";
4
+ // src/tooltip/tooltip.tsx
5
+ /**
6
+ * Groups tooltips (an app, a toolbar): once one is open, moving to a neighbour opens it at once.
7
+ */
8
+ function TooltipProvider({ delay = 500, closeDelay = 0, ...props }) {
9
+ return /* @__PURE__ */ jsx(Tooltip.Provider, {
10
+ ...props,
11
+ delay,
12
+ closeDelay
13
+ });
14
+ }
15
+ /**
16
+ * A short label for a control, most often an icon-only button (06-component-specs.md §7):
17
+ * `<Tooltip content="Download invoice"><IconButton … /></Tooltip>`. It doesn't appear on touch.
18
+ */
19
+ function Tooltip$1({ content, children, side = "top", align, delay = 500, closeDelay, ...props }) {
20
+ return /* @__PURE__ */ jsxs(Tooltip.Root, {
21
+ ...props,
22
+ children: [/* @__PURE__ */ jsx(Tooltip.Trigger, {
23
+ render: children,
24
+ delay,
25
+ closeDelay
26
+ }), /* @__PURE__ */ jsx(Tooltip.Portal, { children: /* @__PURE__ */ jsx(Tooltip.Positioner, {
27
+ side,
28
+ align,
29
+ sideOffset: 6,
30
+ className: "qx-tooltip-positioner",
31
+ children: /* @__PURE__ */ jsx(Tooltip.Popup, {
32
+ className: "qx-tooltip",
33
+ "data-slot": "tooltip-popup",
34
+ children: content
35
+ })
36
+ }) })]
37
+ });
38
+ }
39
+ export { Tooltip$1 as Tooltip, TooltipProvider };
@@ -0,0 +1,2 @@
1
+ import { VisuallyHidden, VisuallyHiddenProps } from "./visually-hidden.js";
2
+ export { VisuallyHidden, type VisuallyHiddenProps };
@@ -0,0 +1 @@
1
+ export { VisuallyHidden } from "./visually-hidden.js";
@@ -0,0 +1,8 @@
1
+ import { RenderProp } from "../internal/render.js";
2
+ import { ComponentProps, ReactElement } from "react";
3
+ export interface VisuallyHiddenProps extends ComponentProps<"span"> {
4
+ /** Render a different element. */
5
+ render?: RenderProp;
6
+ }
7
+ /** Content for screen readers only, e.g. the label of an icon-only control. Never `display: none`. */
8
+ export declare function VisuallyHidden({ render, className, ...props }: VisuallyHiddenProps): ReactElement;
@@ -0,0 +1,12 @@
1
+ import { cx } from "../internal/cx.js";
2
+ import { renderElement } from "../internal/render.js";
3
+ // src/visually-hidden/visually-hidden.tsx
4
+ /** Content for screen readers only, e.g. the label of an icon-only control. Never `display: none`. */
5
+ function VisuallyHidden({ render, className, ...props }) {
6
+ return renderElement("span", render, {
7
+ ...props,
8
+ className: cx("qx-visually-hidden", className),
9
+ "data-slot": "visually-hidden"
10
+ });
11
+ }
12
+ export { VisuallyHidden };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qeetrix/react",
3
- "version": "0.0.1",
3
+ "version": "0.0.4",
4
4
  "description": "Qeetrix React components: accessible, token-driven primitives on Base UI for every Qeet product.",
5
5
  "keywords": [
6
6
  "qeetrix",
@@ -35,6 +35,170 @@
35
35
  "style": "./dist/styles.css",
36
36
  "default": "./dist/index.js"
37
37
  },
38
+ "./accordion": {
39
+ "types": "./dist/accordion/index.d.ts",
40
+ "default": "./dist/accordion/index.js"
41
+ },
42
+ "./avatar": {
43
+ "types": "./dist/avatar/index.d.ts",
44
+ "default": "./dist/avatar/index.js"
45
+ },
46
+ "./badge": {
47
+ "types": "./dist/badge/index.d.ts",
48
+ "default": "./dist/badge/index.js"
49
+ },
50
+ "./box": {
51
+ "types": "./dist/box/index.d.ts",
52
+ "default": "./dist/box/index.js"
53
+ },
54
+ "./button": {
55
+ "types": "./dist/button/index.d.ts",
56
+ "default": "./dist/button/index.js"
57
+ },
58
+ "./card": {
59
+ "types": "./dist/card/index.d.ts",
60
+ "default": "./dist/card/index.js"
61
+ },
62
+ "./checkbox": {
63
+ "types": "./dist/checkbox/index.d.ts",
64
+ "default": "./dist/checkbox/index.js"
65
+ },
66
+ "./dialog": {
67
+ "types": "./dist/dialog/index.d.ts",
68
+ "default": "./dist/dialog/index.js"
69
+ },
70
+ "./drawer": {
71
+ "types": "./dist/drawer/index.d.ts",
72
+ "default": "./dist/drawer/index.js"
73
+ },
74
+ "./experimental": {
75
+ "types": "./dist/experimental/index.d.ts",
76
+ "default": "./dist/experimental/index.js"
77
+ },
78
+ "./field": {
79
+ "types": "./dist/field/index.d.ts",
80
+ "default": "./dist/field/index.js"
81
+ },
82
+ "./fieldset": {
83
+ "types": "./dist/fieldset/index.d.ts",
84
+ "default": "./dist/fieldset/index.js"
85
+ },
86
+ "./format": {
87
+ "types": "./dist/format/index.d.ts",
88
+ "default": "./dist/format/index.js"
89
+ },
90
+ "./grid": {
91
+ "types": "./dist/grid/index.d.ts",
92
+ "default": "./dist/grid/index.js"
93
+ },
94
+ "./heading": {
95
+ "types": "./dist/heading/index.d.ts",
96
+ "default": "./dist/heading/index.js"
97
+ },
98
+ "./inline": {
99
+ "types": "./dist/inline/index.d.ts",
100
+ "default": "./dist/inline/index.js"
101
+ },
102
+ "./input": {
103
+ "types": "./dist/input/index.d.ts",
104
+ "default": "./dist/input/index.js"
105
+ },
106
+ "./link": {
107
+ "types": "./dist/link/index.d.ts",
108
+ "default": "./dist/link/index.js"
109
+ },
110
+ "./menu": {
111
+ "types": "./dist/menu/index.d.ts",
112
+ "default": "./dist/menu/index.js"
113
+ },
114
+ "./popover": {
115
+ "types": "./dist/popover/index.d.ts",
116
+ "default": "./dist/popover/index.js"
117
+ },
118
+ "./progress": {
119
+ "types": "./dist/progress/index.d.ts",
120
+ "default": "./dist/progress/index.js"
121
+ },
122
+ "./provider": {
123
+ "types": "./dist/provider/index.d.ts",
124
+ "default": "./dist/provider/index.js"
125
+ },
126
+ "./radio": {
127
+ "types": "./dist/radio/index.d.ts",
128
+ "default": "./dist/radio/index.js"
129
+ },
130
+ "./scroll-area": {
131
+ "types": "./dist/scroll-area/index.d.ts",
132
+ "default": "./dist/scroll-area/index.js"
133
+ },
134
+ "./select": {
135
+ "types": "./dist/select/index.d.ts",
136
+ "default": "./dist/select/index.js"
137
+ },
138
+ "./separator": {
139
+ "types": "./dist/separator/index.d.ts",
140
+ "default": "./dist/separator/index.js"
141
+ },
142
+ "./skeleton": {
143
+ "types": "./dist/skeleton/index.d.ts",
144
+ "default": "./dist/skeleton/index.js"
145
+ },
146
+ "./skip-link": {
147
+ "types": "./dist/skip-link/index.d.ts",
148
+ "default": "./dist/skip-link/index.js"
149
+ },
150
+ "./slider": {
151
+ "types": "./dist/slider/index.d.ts",
152
+ "default": "./dist/slider/index.js"
153
+ },
154
+ "./spinner": {
155
+ "types": "./dist/spinner/index.d.ts",
156
+ "default": "./dist/spinner/index.js"
157
+ },
158
+ "./stack": {
159
+ "types": "./dist/stack/index.d.ts",
160
+ "default": "./dist/stack/index.js"
161
+ },
162
+ "./switch": {
163
+ "types": "./dist/switch/index.d.ts",
164
+ "default": "./dist/switch/index.js"
165
+ },
166
+ "./table": {
167
+ "types": "./dist/table/index.d.ts",
168
+ "default": "./dist/table/index.js"
169
+ },
170
+ "./tabs": {
171
+ "types": "./dist/tabs/index.d.ts",
172
+ "default": "./dist/tabs/index.js"
173
+ },
174
+ "./text": {
175
+ "types": "./dist/text/index.d.ts",
176
+ "default": "./dist/text/index.js"
177
+ },
178
+ "./text-field": {
179
+ "types": "./dist/text-field/index.d.ts",
180
+ "default": "./dist/text-field/index.js"
181
+ },
182
+ "./toast": {
183
+ "types": "./dist/toast/index.d.ts",
184
+ "default": "./dist/toast/index.js"
185
+ },
186
+ "./toggle": {
187
+ "types": "./dist/toggle/index.d.ts",
188
+ "default": "./dist/toggle/index.js"
189
+ },
190
+ "./tooltip": {
191
+ "types": "./dist/tooltip/index.d.ts",
192
+ "default": "./dist/tooltip/index.js"
193
+ },
194
+ "./visually-hidden": {
195
+ "types": "./dist/visually-hidden/index.d.ts",
196
+ "default": "./dist/visually-hidden/index.js"
197
+ },
198
+ "./locales/hi": {
199
+ "types": "./dist/locales/hi.d.ts",
200
+ "default": "./dist/locales/hi.js"
201
+ },
38
202
  "./styles.css": "./dist/styles.css",
39
203
  "./css/*": "./dist/css/*",
40
204
  "./package.json": "./package.json"
@@ -53,8 +217,12 @@
53
217
  "check:package": "publint --strict && attw --pack . --profile esm-only --exclude-entrypoints ./styles.css ./css/*",
54
218
  "prepack": "bun run build"
55
219
  },
220
+ "dependencies": {
221
+ "@qeetrix/icons": "^1.0.12"
222
+ },
56
223
  "peerDependencies": {
57
- "@qeetrix/tokens": "^0.0.5",
224
+ "@base-ui/react": "^1.9.0",
225
+ "@qeetrix/tokens": "^0.0.7",
58
226
  "react": "^19.2.0",
59
227
  "react-dom": "^19.2.0"
60
228
  },