@justanarthur/modo-ui 0.0.0-stage → 0.2.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 (171) hide show
  1. package/LICENSE +21 -0
  2. package/LICENSE.beui +21 -0
  3. package/LICENSE.fluid-functionalism +21 -0
  4. package/LICENSE.motion-primitives +21 -0
  5. package/LICENSE.sileo +21 -0
  6. package/README.md +608 -2
  7. package/dist/base.css +994 -0
  8. package/dist/blocks/sidebar-app/index.d.ts +34 -0
  9. package/dist/blocks/sidebar-app/index.js +31 -0
  10. package/dist/components/badge/index.d.ts +59 -0
  11. package/dist/components/badge/index.js +16 -0
  12. package/dist/components/button/index.d.ts +59 -0
  13. package/dist/components/button/index.js +14 -0
  14. package/dist/components/card/index.d.ts +141 -0
  15. package/dist/components/card/index.js +42 -0
  16. package/dist/components/inputs/checkbox-group/index.d.ts +50 -0
  17. package/dist/components/inputs/checkbox-group/index.js +21 -0
  18. package/dist/components/inputs/color-picker/index.d.ts +137 -0
  19. package/dist/components/inputs/color-picker/index.js +35 -0
  20. package/dist/components/inputs/combobox/index.d.ts +161 -0
  21. package/dist/components/inputs/combobox/index.js +38 -0
  22. package/dist/components/inputs/date-time/calendar/index.d.ts +45 -0
  23. package/dist/components/inputs/date-time/calendar/index.js +18 -0
  24. package/dist/components/inputs/date-time/date-picker/index.d.ts +82 -0
  25. package/dist/components/inputs/date-time/date-picker/index.js +32 -0
  26. package/dist/components/inputs/date-time/date-range-picker/index.d.ts +64 -0
  27. package/dist/components/inputs/date-time/date-range-picker/index.js +31 -0
  28. package/dist/components/inputs/date-time/duration-picker/index.d.ts +57 -0
  29. package/dist/components/inputs/date-time/duration-picker/index.js +31 -0
  30. package/dist/components/inputs/date-time/month-picker/index.d.ts +57 -0
  31. package/dist/components/inputs/date-time/month-picker/index.js +30 -0
  32. package/dist/components/inputs/date-time/time-picker/index.d.ts +59 -0
  33. package/dist/components/inputs/date-time/time-picker/index.js +31 -0
  34. package/dist/components/inputs/input/index.d.ts +84 -0
  35. package/dist/components/inputs/input/index.js +19 -0
  36. package/dist/components/inputs/input-copy/index.d.ts +44 -0
  37. package/dist/components/inputs/input-copy/index.js +16 -0
  38. package/dist/components/inputs/input-message/index.d.ts +125 -0
  39. package/dist/components/inputs/input-message/index.js +25 -0
  40. package/dist/components/inputs/radio-group/index.d.ts +58 -0
  41. package/dist/components/inputs/radio-group/index.js +20 -0
  42. package/dist/components/inputs/search/index.d.ts +83 -0
  43. package/dist/components/inputs/search/index.js +25 -0
  44. package/dist/components/inputs/select/index.d.ts +105 -0
  45. package/dist/components/inputs/select/index.js +34 -0
  46. package/dist/components/inputs/slider/index.d.ts +108 -0
  47. package/dist/components/inputs/slider/index.js +14 -0
  48. package/dist/components/inputs/switch/index.d.ts +43 -0
  49. package/dist/components/inputs/switch/index.js +14 -0
  50. package/dist/components/navigation/accordion/index.d.ts +117 -0
  51. package/dist/components/navigation/accordion/index.js +28 -0
  52. package/dist/components/navigation/sidebar/index.d.ts +388 -0
  53. package/dist/components/navigation/sidebar/index.js +99 -0
  54. package/dist/components/navigation/tabs/index.d.ts +70 -0
  55. package/dist/components/navigation/tabs/index.js +23 -0
  56. package/dist/components/navigation/tabs-subtle/index.d.ts +73 -0
  57. package/dist/components/navigation/tabs-subtle/index.js +21 -0
  58. package/dist/components/overlays/alert-dialog/index.d.ts +67 -0
  59. package/dist/components/overlays/alert-dialog/index.js +22 -0
  60. package/dist/components/overlays/command/index.d.ts +121 -0
  61. package/dist/components/overlays/command/index.js +36 -0
  62. package/dist/components/overlays/context-menu/index.d.ts +97 -0
  63. package/dist/components/overlays/context-menu/index.js +29 -0
  64. package/dist/components/overlays/dialog/index.d.ts +130 -0
  65. package/dist/components/overlays/dialog/index.js +37 -0
  66. package/dist/components/overlays/dropdown/index.d.ts +222 -0
  67. package/dist/components/overlays/dropdown/index.js +44 -0
  68. package/dist/components/overlays/popover/index.d.ts +87 -0
  69. package/dist/components/overlays/popover/index.js +26 -0
  70. package/dist/components/overlays/preview-card/index.d.ts +75 -0
  71. package/dist/components/overlays/preview-card/index.js +19 -0
  72. package/dist/components/overlays/sheet/index.d.ts +67 -0
  73. package/dist/components/overlays/sheet/index.js +24 -0
  74. package/dist/components/overlays/toast/index.d.ts +107 -0
  75. package/dist/components/overlays/toast/index.js +21 -0
  76. package/dist/components/overlays/tooltip/index.d.ts +75 -0
  77. package/dist/components/overlays/tooltip/index.js +17 -0
  78. package/dist/components/table/index.d.ts +44 -0
  79. package/dist/components/table/index.js +26 -0
  80. package/dist/components/thinking-indicator/index.d.ts +32 -0
  81. package/dist/components/thinking-indicator/index.js +13 -0
  82. package/dist/index.d.ts +3926 -0
  83. package/dist/index.js +511 -0
  84. package/dist/preset.d.ts +104 -0
  85. package/dist/preset.js +124 -0
  86. package/dist/primitives/code/index.d.ts +23 -0
  87. package/dist/primitives/code/index.js +11 -0
  88. package/dist/primitives/craft/index.d.ts +31 -0
  89. package/dist/primitives/craft/index.js +11 -0
  90. package/dist/primitives/fluid-hover/index.d.ts +233 -0
  91. package/dist/primitives/fluid-hover/index.js +25 -0
  92. package/dist/primitives/morph/index.d.ts +127 -0
  93. package/dist/primitives/morph/index.js +19 -0
  94. package/dist/primitives/motion/index.d.ts +115 -0
  95. package/dist/primitives/motion/index.js +19 -0
  96. package/dist/primitives/scroll-area/index.d.ts +41 -0
  97. package/dist/primitives/scroll-area/index.js +12 -0
  98. package/dist/primitives/sizes/index.d.ts +128 -0
  99. package/dist/primitives/sizes/index.js +21 -0
  100. package/dist/primitives/surface/index.d.ts +69 -0
  101. package/dist/primitives/surface/index.js +17 -0
  102. package/dist/shared/components-0ke6xada.js +123 -0
  103. package/dist/shared/components-0q0sqfh4.js +146 -0
  104. package/dist/shared/components-0sn7ypjw.js +61 -0
  105. package/dist/shared/components-1j9791sn.js +345 -0
  106. package/dist/shared/components-1rfwbyyc.js +361 -0
  107. package/dist/shared/components-1v7rxytx.js +30 -0
  108. package/dist/shared/components-1xekx2hx.js +215 -0
  109. package/dist/shared/components-39jq9va1.js +86 -0
  110. package/dist/shared/components-3gae8nta.js +719 -0
  111. package/dist/shared/components-3k8xpnpq.js +1759 -0
  112. package/dist/shared/components-3ky44908.js +9 -0
  113. package/dist/shared/components-3mkepka5.js +111 -0
  114. package/dist/shared/components-3wk0w46f.js +667 -0
  115. package/dist/shared/components-4cnjmgex.js +124 -0
  116. package/dist/shared/components-59efxjd9.js +298 -0
  117. package/dist/shared/components-5xc2j8jz.js +159 -0
  118. package/dist/shared/components-62ybc7t2.js +496 -0
  119. package/dist/shared/components-66mv71kx.js +262 -0
  120. package/dist/shared/components-7ans7ce5.js +120 -0
  121. package/dist/shared/components-7btqt08d.js +270 -0
  122. package/dist/shared/components-7r3etddy.js +171 -0
  123. package/dist/shared/components-7x9kawxv.js +152 -0
  124. package/dist/shared/components-8fpr3s4p.js +292 -0
  125. package/dist/shared/components-9jvzzvt1.js +198 -0
  126. package/dist/shared/components-apdwtweq.js +484 -0
  127. package/dist/shared/components-asr5pg50.js +191 -0
  128. package/dist/shared/components-b2wyq2cq.js +232 -0
  129. package/dist/shared/components-c6s6b43g.js +15 -0
  130. package/dist/shared/components-ca2c898n.js +1828 -0
  131. package/dist/shared/components-cbxjn9p8.js +141 -0
  132. package/dist/shared/components-chacnk61.js +216 -0
  133. package/dist/shared/components-cv16mryv.js +62 -0
  134. package/dist/shared/components-ez65vtbq.js +110 -0
  135. package/dist/shared/components-ezxhrmer.js +17 -0
  136. package/dist/shared/components-gc5vtq2f.js +149 -0
  137. package/dist/shared/components-gf5s6ap9.js +42 -0
  138. package/dist/shared/components-gvr9w41t.js +193 -0
  139. package/dist/shared/components-h2dpcwgc.js +137 -0
  140. package/dist/shared/components-hawvy2qz.js +105 -0
  141. package/dist/shared/components-hqeq3w9q.js +375 -0
  142. package/dist/shared/components-jjw69c4c.js +28 -0
  143. package/dist/shared/components-jwst3vtj.js +346 -0
  144. package/dist/shared/components-kvr7f9hy.js +45 -0
  145. package/dist/shared/components-men63rwj.js +9 -0
  146. package/dist/shared/components-mhd39z7x.js +22 -0
  147. package/dist/shared/components-n7mjr357.js +26 -0
  148. package/dist/shared/components-ng72k97e.js +128 -0
  149. package/dist/shared/components-nh8tma1n.js +986 -0
  150. package/dist/shared/components-njzgqdwy.js +445 -0
  151. package/dist/shared/components-ny774h8p.js +293 -0
  152. package/dist/shared/components-q4daerx0.js +58 -0
  153. package/dist/shared/components-q5xj5c16.js +79 -0
  154. package/dist/shared/components-rr7a6ja9.js +160 -0
  155. package/dist/shared/components-s2bz1xpk.js +63 -0
  156. package/dist/shared/components-tqvarbfv.js +288 -0
  157. package/dist/shared/components-v6xp325t.js +304 -0
  158. package/dist/shared/components-v7wtz8hk.js +144 -0
  159. package/dist/shared/components-vc7vq5nz.js +32 -0
  160. package/dist/shared/components-vfbhxf5r.js +58 -0
  161. package/dist/shared/components-vynjtrk6.js +19 -0
  162. package/dist/shared/components-wvp1m52g.js +1200 -0
  163. package/dist/shared/components-yh3kwdhr.js +981 -0
  164. package/dist/shared/components-ytb2tefr.js +291 -0
  165. package/dist/shared/components-zfnmn5d4.js +220 -0
  166. package/dist/shared/components-zrkzcayz.js +141 -0
  167. package/dist/shared/components-zx6b6yby.js +42 -0
  168. package/dist/styles.css +1949 -0
  169. package/dist/tailwind.css +219 -0
  170. package/dist/tokens.css +345 -0
  171. package/package.json +103 -4
@@ -0,0 +1,107 @@
1
+ import { ReactNode as ReactNode2 } from "react";
2
+ import { ButtonHTMLAttributes, ReactElement, ReactNode } from "react";
3
+ interface SlotProps extends ButtonHTMLAttributes<HTMLButtonElement> {
4
+ /** The element that becomes the control, e.g. a Button. */
5
+ render?: ReactElement;
6
+ /** Compose onto the single child instead. Both spellings work in both flavors. Defaults to `false`. */
7
+ asChild?: boolean;
8
+ /** Control content when there is no render element. */
9
+ children?: ReactNode;
10
+ }
11
+ import { ForwardRefExoticComponent as ForwardRefExoticComponent_tcubfn } from "react";
12
+ import { RefAttributes as RefAttributes_miuf56 } from "react";
13
+ import { JSX as JSX_1kxb } from "react";
14
+ type ToastType = "success" | "loading" | "error" | "warning" | "info" | "action";
15
+ type ToastPosition = "top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right";
16
+ interface ToastOptions {
17
+ title?: string;
18
+ description?: string;
19
+ type?: ToastType;
20
+ /** Ms before it leaves; 0 keeps it until dismissed. */
21
+ timeout?: number;
22
+ action?: {
23
+ label: string;
24
+ onClick?: () => void;
25
+ };
26
+ }
27
+ /** Shows toasts from inside a `Toast`: `show`, the per-state shortcuts, `promise` and `close`. */
28
+ declare function useToast(): {
29
+ show: (o: ToastOptions) => string;
30
+ success: (o: ToastOptions) => string;
31
+ error: (o: ToastOptions) => string;
32
+ warning: (o: ToastOptions) => string;
33
+ info: (o: ToastOptions) => string;
34
+ promise: <T>(promise: Promise<T>, o: {
35
+ loading: ToastOptions;
36
+ success: ToastOptions;
37
+ error: ToastOptions;
38
+ }) => Promise<T>;
39
+ close: (toastId?: string) => void;
40
+ };
41
+ interface ToastTriggerProps extends Omit<SlotProps, "type"> {
42
+ /** The toast's title, in the pill. */
43
+ title?: string;
44
+ /** Text for the body the pill melts into. */
45
+ description?: string;
46
+ /** State: sets the icon and its color. Defaults to `'info'`. */
47
+ type?: "success" | "loading" | "error" | "warning" | "info" | "action";
48
+ /** Ms before it leaves; 0 keeps it until dismissed. Defaults to the `Toast`'s `timeout`. */
49
+ timeout?: number;
50
+ /** A button in the body. */
51
+ action?: {
52
+ label: string;
53
+ onClick?: () => void;
54
+ };
55
+ /** Runs a task: the toast shows `title` while it is pending, then `success` or `error`. */
56
+ promise?: () => Promise<unknown>;
57
+ /** The toast once `promise` resolves. */
58
+ success?: {
59
+ title?: string;
60
+ description?: string;
61
+ };
62
+ /** The toast if `promise` rejects. */
63
+ error?: {
64
+ title?: string;
65
+ description?: string;
66
+ };
67
+ }
68
+ declare const ToastTrigger: ForwardRefExoticComponent_tcubfn<ToastTriggerProps & RefAttributes_miuf56<HTMLButtonElement>>;
69
+ interface ToastProps {
70
+ /** Where toasts stack; the pill sits on that side and the body opens away from the edge. Defaults to `'top-right'`. */
71
+ position?: "top-left" | "top-center" | "top-right" | "bottom-left" | "bottom-center" | "bottom-right";
72
+ /** How many toasts show at once; older ones wait. Defaults to `3`. */
73
+ limit?: number;
74
+ /** Ms a toast stays; hovering pauses it. Defaults to `6000`. */
75
+ timeout?: number;
76
+ /** The part of the app that can show toasts, with `Toast.Trigger`s or `useToast()`. */
77
+ children?: ReactNode2;
78
+ }
79
+ type Element_12xgc = JSX_1kxb["Element"];
80
+ /**
81
+ * Gooey toasts: a pill with the state's icon and title that melts into a body
82
+ * with the details.
83
+ *
84
+ * Each toast lands as a pill one control tall; when it has a description or
85
+ * an action, the pill melts into a body a beat later through the shared goo
86
+ * filter (see Morph), and folds back before it leaves, or stays open while
87
+ * hovered. Six states (`success`, `loading`, `error`, `warning`, `info`,
88
+ * `action`) set the icon and its status color; a promise toast spins as
89
+ * `loading` and crossfades into its result. Built on Base UI's Toast:
90
+ * timers pause on hover, a swipe toward the edge dismisses, and screen
91
+ * readers hear every toast.
92
+ *
93
+ * `Toast` wraps the part of the app that shows toasts and renders them at
94
+ * its `position`. Show one with `Toast.Trigger`, or call `useToast()`
95
+ * inside it: `show`, `success`, `error`, `warning`, `info`, `promise` and
96
+ * `close`.
97
+ *
98
+ * Statics:
99
+ * - `Toast.Trigger` — a control that shows a toast when pressed:
100
+ * `render={<Button/>}` or `asChild`, with the toast's `title`,
101
+ * `description`, `type`, `timeout`, `action`, or a `promise` with its
102
+ * `success` / `error` toasts.
103
+ *
104
+ * @example {@include ./examples.mdx}
105
+ */
106
+ declare function Toast({ position, limit, timeout, children }: ToastProps): Element_12xgc;
107
+ export { Toast, ToastOptions, ToastPosition, ToastProps, ToastTrigger, ToastTriggerProps, ToastType, Toast as default, useToast };
@@ -0,0 +1,21 @@
1
+ import {
2
+ useToast2,
3
+ ToastTrigger2,
4
+ Toast2,
5
+ toast_default
6
+ } from "../../../shared/components-jwst3vtj.js";
7
+ import"../../../shared/components-3ky44908.js";
8
+ import"../../../shared/components-0q0sqfh4.js";
9
+ import"../../../shared/components-hqeq3w9q.js";
10
+ import"../../../shared/components-b2wyq2cq.js";
11
+ import"../../../shared/components-men63rwj.js";
12
+ import"../../../shared/components-0sn7ypjw.js";
13
+ import"../../../shared/components-cv16mryv.js";
14
+ import"../../../shared/components-zx6b6yby.js";
15
+ import"../../../shared/components-ezxhrmer.js";
16
+ export {
17
+ Toast2 as Toast,
18
+ ToastTrigger2 as ToastTrigger,
19
+ toast_default as default,
20
+ useToast2 as useToast
21
+ };
@@ -0,0 +1,75 @@
1
+ import { ReactNode, RefObject } from "react";
2
+ import { JSX as JSX_1kxb } from "react";
3
+ type Element_12xgc = JSX_1kxb["Element"];
4
+ declare function TooltipPortalContainer({ value, children }: {
5
+ value: HTMLElement | null;
6
+ children: ReactNode;
7
+ }): Element_12xgc;
8
+ interface TooltipProviderProps {
9
+ children: ReactNode;
10
+ /** Hover delay before tooltips open, in ms. Defaults to 200. */
11
+ delayDuration?: number;
12
+ /** After a tooltip closes, adjacent tooltips opened within this window
13
+ * skip the hover delay, in ms. Defaults to 300. */
14
+ skipDelayDuration?: number;
15
+ }
16
+ /** Groups descendant Tooltips so that once one opens, moving to an adjacent
17
+ * trigger shows its tooltip instantly instead of re-waiting the full delay.
18
+ * Wrap once at the app (or section) level; bare Tooltips still work without
19
+ * it via a per-instance fallback. */
20
+ declare function TooltipProvider({ children, delayDuration, skipDelayDuration }: TooltipProviderProps): Element_12xgc;
21
+ type TooltipSide = "top" | "right" | "bottom" | "left";
22
+ interface TooltipProps {
23
+ /** The content displayed inside the tooltip. */
24
+ content: ReactNode;
25
+ /** The trigger element. Must accept a ref. */
26
+ children: React.ReactElement;
27
+ /** Preferred side of the trigger to render the tooltip on. Defaults to `"top"`. */
28
+ side?: TooltipSide;
29
+ /** Distance in pixels between the tooltip and the trigger. Defaults to 8. */
30
+ sideOffset?: number;
31
+ /** Hover delay before this tooltip opens, in ms. Defaults to 200, or to the
32
+ * ambient TooltipProvider's delayDuration when one is present. */
33
+ delayDuration?: number;
34
+ /** Additional classes applied to the tooltip content container. */
35
+ className?: string;
36
+ /** Extra classes for the portalled positioner element — pass a z utility
37
+ * here to lift the whole tooltip above other fixed layers (default z-50). */
38
+ contentClassName?: string;
39
+ /** When true, forces the tooltip open. When false, forces it closed. When undefined, uses default hover/focus behavior. */
40
+ forceOpen?: boolean;
41
+ /** Follow the cursor along one axis while hovering the trigger — for tall
42
+ * or wide triggers (the Sidebar rail) where a centered tooltip sits far
43
+ * from the pointer. The other axis stays anchored by `side`. */
44
+ followCursor?: "x" | "y";
45
+ /** Called when the tooltip's internal open state changes (before forceOpen is applied). */
46
+ onOpenChange?: (open: boolean) => void;
47
+ /** Where the label grows from (see Morph): the trigger, the pointer, its own center, a viewport edge, or a ref to any element. Defaults to `'trigger'`. */
48
+ from?: "trigger" | "pointer" | "center" | "top" | "right" | "bottom" | "left" | RefObject<HTMLElement | null>;
49
+ /** How it grows (see Morph): with the liquid goo neck, a plain morph, a slide or a fade. `followCursor` tooltips always fade. Defaults to `'goo'`. */
50
+ effect?: "goo" | "morph" | "slide" | "fade";
51
+ /** Spring tier of a plain morph, slide or fade; goo runs on its own `spring.goo`. Defaults to `'moderate'`. */
52
+ tier?: "moderate" | "slow";
53
+ }
54
+ /**
55
+ * Floating tooltip with spring-based animations, configurable placement, and
56
+ * rich content support.
57
+ *
58
+ * The trigger is whatever element you pass as the single child — it only has
59
+ * to accept a ref. The label is portalled and grows out of its trigger
60
+ * through the shared morph (see Morph), with the goo neck by default on
61
+ * `spring.goo`, and flips when it would collide with the viewport edge.
62
+ * `followCursor` tracks the pointer along one axis for tall or wide triggers,
63
+ * while the other stays anchored by `side`. Built on Base UI's Tooltip.
64
+ *
65
+ * Statics:
66
+ * - `Tooltip.Provider` — `TooltipProvider`: groups tooltips so moving from
67
+ * one trigger to an adjacent one skips the hover delay, and the morph: the
68
+ * next label shows in place.
69
+ * - `Tooltip.PortalContainer` — `TooltipPortalContainer`: portal every
70
+ * descendant tooltip into a given element instead of the body.
71
+ *
72
+ * @example {@include ./examples.mdx}
73
+ */
74
+ declare function Tooltip({ content, children, side, sideOffset, delayDuration, className, contentClassName, forceOpen, onOpenChange: onOpenChangeProp, followCursor, from, effect, tier }: TooltipProps): Element_12xgc;
75
+ export { Tooltip, TooltipPortalContainer, TooltipProps, TooltipProvider, TooltipProviderProps, TooltipSide, Tooltip as default };
@@ -0,0 +1,17 @@
1
+ import {
2
+ TooltipPortalContainer2,
3
+ TooltipProvider2,
4
+ Tooltip2,
5
+ tooltip_default
6
+ } from "../../../shared/components-ng72k97e.js";
7
+ import"../../../shared/components-0q0sqfh4.js";
8
+ import"../../../shared/components-hqeq3w9q.js";
9
+ import"../../../shared/components-men63rwj.js";
10
+ import"../../../shared/components-cv16mryv.js";
11
+ import"../../../shared/components-ezxhrmer.js";
12
+ export {
13
+ Tooltip2 as Tooltip,
14
+ TooltipPortalContainer2 as TooltipPortalContainer,
15
+ TooltipProvider2 as TooltipProvider,
16
+ tooltip_default as default
17
+ };
@@ -0,0 +1,44 @@
1
+ import { ForwardRefExoticComponent, HTMLAttributes, ReactNode, RefAttributes, TdHTMLAttributes, ThHTMLAttributes } from "react";
2
+ type SizeVariant = "default" | "compact";
3
+ interface TableProps extends HTMLAttributes<HTMLTableElement> {
4
+ /** `Table.Header` and `Table.Body` children. */
5
+ children: ReactNode;
6
+ /** Pins the table's rows to one step of the size ladder (default 36px, compact 28px — see Sizes). Defaults to the surrounding SizeProvider, else `"default"`. */
7
+ size?: SizeVariant;
8
+ }
9
+ /** The root plus its compound parts, typed so `<Table.Row>` type-checks. */
10
+ type TableComponent = ForwardRefExoticComponent<TableProps & RefAttributes<HTMLTableElement>> & {
11
+ Header: typeof TableHeader;
12
+ Body: typeof TableBody;
13
+ Row: typeof TableRow;
14
+ Head: typeof TableHead;
15
+ Cell: typeof TableCell;
16
+ };
17
+ /**
18
+ * Data table with row hover effects and semantic markup.
19
+ *
20
+ * A plain `<table>` whose body rows share one fluid hover highlight: the
21
+ * background glides from row to row under the pointer, the row borders next
22
+ * to the lit row fade out so it reads as one pill, and the lit row's cells
23
+ * brighten from muted to foreground. Header cells render semibold, body
24
+ * cells regular, with the weight change width-compensated. `size` pins every
25
+ * row to one step of the size ladder; otherwise the table follows the
26
+ * surrounding SizeProvider.
27
+ *
28
+ * Parts: `Table.Header` (`<thead>`), `Table.Body` (`<tbody>`), `Table.Row`
29
+ * (`<tr>` — give body rows an `index`, starting at 0, so they join the hover
30
+ * highlight; omit it on header rows), `Table.Head` (`<th>`) and `Table.Cell`
31
+ * (`<td>`). Each forwards its ref and native attributes.
32
+ *
33
+ * @example {@include ./examples.mdx}
34
+ */
35
+ declare const Table: TableComponent;
36
+ declare const TableHeader: ForwardRefExoticComponent<HTMLAttributes<HTMLTableSectionElement> & RefAttributes<HTMLTableSectionElement>>;
37
+ declare const TableBody: ForwardRefExoticComponent<HTMLAttributes<HTMLTableSectionElement> & RefAttributes<HTMLTableSectionElement>>;
38
+ interface TableRowProps extends HTMLAttributes<HTMLTableRowElement> {
39
+ index?: number;
40
+ }
41
+ declare const TableRow: ForwardRefExoticComponent<TableRowProps & RefAttributes<HTMLTableRowElement>>;
42
+ declare const TableHead: ForwardRefExoticComponent<ThHTMLAttributes<HTMLTableCellElement> & RefAttributes<HTMLTableCellElement>>;
43
+ declare const TableCell: ForwardRefExoticComponent<TdHTMLAttributes<HTMLTableCellElement> & RefAttributes<HTMLTableCellElement>>;
44
+ export { Table, TableBody, TableCell, TableHead, TableHeader, TableProps, TableRow, TableRowProps, Table as default };
@@ -0,0 +1,26 @@
1
+ import {
2
+ Table2,
3
+ TableHeader2,
4
+ TableBody2,
5
+ TableRow2,
6
+ TableHead2,
7
+ TableCell2,
8
+ table_default
9
+ } from "../../shared/components-0ke6xada.js";
10
+ import"../../shared/components-kvr7f9hy.js";
11
+ import"../../shared/components-59efxjd9.js";
12
+ import"../../shared/components-chacnk61.js";
13
+ import"../../shared/components-hqeq3w9q.js";
14
+ import"../../shared/components-jjw69c4c.js";
15
+ import"../../shared/components-men63rwj.js";
16
+ import"../../shared/components-0sn7ypjw.js";
17
+ import"../../shared/components-ezxhrmer.js";
18
+ export {
19
+ Table2 as Table,
20
+ TableBody2 as TableBody,
21
+ TableCell2 as TableCell,
22
+ TableHead2 as TableHead,
23
+ TableHeader2 as TableHeader,
24
+ TableRow2 as TableRow,
25
+ table_default as default
26
+ };
@@ -0,0 +1,32 @@
1
+ import { HTMLAttributes } from "react";
2
+ type SizeVariant = "default" | "compact";
3
+ import { ForwardRefExoticComponent as ForwardRefExoticComponent_tcubfn } from "react";
4
+ import { RefAttributes as RefAttributes_miuf56 } from "react";
5
+ interface ThinkingIndicatorProps extends HTMLAttributes<HTMLDivElement> {
6
+ /** The look: `shimmer` morphs a circle⇄infinity glyph beside a shimmering label (Fluid Functionalism's), `goo` melts three dots into one blob and splits them again beside a plain label. Defaults to `"shimmer"`. */
7
+ variant?: "shimmer" | "goo";
8
+ /** Show the glyph (or, for `goo`, the dots) before the label. Set to `false` for a text-only indicator (e.g. inline before a streamed reply). Defaults to `true`. */
9
+ showIcon?: boolean;
10
+ /** Step on the size ladder. Wins over the surrounding SizeProvider. Defaults to the provider's step, else `"default"`. */
11
+ size?: SizeVariant;
12
+ }
13
+ /**
14
+ * Animated status indicator with morphing SVG and cycling text — the
15
+ * assistant's working state.
16
+ *
17
+ * A glyph that morphs circle to infinity and back sits next to a shimmering
18
+ * label that cycles Thinking, Moonwalking, Planning, Refining, each word
19
+ * swapped on a spring. The row reserves the width of the longest word, so
20
+ * nothing around it shifts while the words change. One static "Thinking…" is
21
+ * announced to screen readers instead of a re-announcement every four
22
+ * seconds, and reduced motion drops both the morph and the cycling for a
23
+ * still glyph and label.
24
+ *
25
+ * `variant="goo"` swaps the glyph for three dots that melt into one blob and
26
+ * split again through the goo filter (see Morph), beside a plain label;
27
+ * reduced motion holds them split.
28
+ *
29
+ * @example {@include ./examples.mdx}
30
+ */
31
+ declare const ThinkingIndicator: ForwardRefExoticComponent_tcubfn<ThinkingIndicatorProps & RefAttributes_miuf56<HTMLDivElement>>;
32
+ export { ThinkingIndicator, ThinkingIndicatorProps, ThinkingIndicator as default };
@@ -0,0 +1,13 @@
1
+ import {
2
+ ThinkingIndicator2,
3
+ thinking_indicator_default
4
+ } from "../../shared/components-7x9kawxv.js";
5
+ import"../../shared/components-0q0sqfh4.js";
6
+ import"../../shared/components-hqeq3w9q.js";
7
+ import"../../shared/components-men63rwj.js";
8
+ import"../../shared/components-0sn7ypjw.js";
9
+ import"../../shared/components-ezxhrmer.js";
10
+ export {
11
+ ThinkingIndicator2 as ThinkingIndicator,
12
+ thinking_indicator_default as default
13
+ };