@rinzai/zen 0.2.2 → 0.3.2

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 (109) hide show
  1. package/dist/actions-menu/index.d.ts +18 -0
  2. package/dist/actions-menu/index.d.ts.map +1 -0
  3. package/dist/backdrop/index.d.ts +14 -0
  4. package/dist/backdrop/index.d.ts.map +1 -0
  5. package/dist/{packages/badge → badge}/index.d.ts +1 -1
  6. package/dist/badge/index.d.ts.map +1 -0
  7. package/dist/{packages/button → button}/index.d.ts +5 -4
  8. package/dist/button/index.d.ts.map +1 -0
  9. package/dist/card/index.d.ts +23 -0
  10. package/dist/card/index.d.ts.map +1 -0
  11. package/dist/code-block/index.d.ts +19 -0
  12. package/dist/code-block/index.d.ts.map +1 -0
  13. package/dist/{packages/collapse → collapse}/index.d.ts +1 -1
  14. package/dist/collapse/index.d.ts.map +1 -0
  15. package/dist/confirm-dialog/index.d.ts +14 -0
  16. package/dist/confirm-dialog/index.d.ts.map +1 -0
  17. package/dist/dialog/index.d.ts +22 -0
  18. package/dist/dialog/index.d.ts.map +1 -0
  19. package/dist/{packages/dropdown → dropdown}/index.d.ts +1 -1
  20. package/dist/dropdown/index.d.ts.map +1 -0
  21. package/dist/header/index.d.ts +8 -0
  22. package/dist/header/index.d.ts.map +1 -0
  23. package/dist/icons/chevron-down.d.ts +3 -0
  24. package/dist/icons/chevron-down.d.ts.map +1 -0
  25. package/dist/icons/chevron-up.d.ts +3 -0
  26. package/dist/icons/chevron-up.d.ts.map +1 -0
  27. package/dist/icons/icon.types.d.ts.map +1 -0
  28. package/dist/icons/index.d.ts.map +1 -0
  29. package/dist/icons/search.d.ts +3 -0
  30. package/dist/icons/search.d.ts.map +1 -0
  31. package/dist/icons/x-mark.d.ts +3 -0
  32. package/dist/icons/x-mark.d.ts.map +1 -0
  33. package/dist/index.d.ts +36 -2
  34. package/dist/index.d.ts.map +1 -0
  35. package/dist/input/index.d.ts +4 -0
  36. package/dist/input/index.d.ts.map +1 -0
  37. package/dist/nav-pills/index.d.ts +31 -0
  38. package/dist/nav-pills/index.d.ts.map +1 -0
  39. package/dist/page-header/index.d.ts +12 -0
  40. package/dist/page-header/index.d.ts.map +1 -0
  41. package/dist/{packages/popover → popover}/index.d.ts +3 -1
  42. package/dist/popover/index.d.ts.map +1 -0
  43. package/dist/progress-ring/index.d.ts +14 -0
  44. package/dist/progress-ring/index.d.ts.map +1 -0
  45. package/dist/segmented/index.d.ts +18 -0
  46. package/dist/segmented/index.d.ts.map +1 -0
  47. package/dist/side-nav/index.d.ts +22 -0
  48. package/dist/side-nav/index.d.ts.map +1 -0
  49. package/dist/skeleton/index.d.ts +6 -0
  50. package/dist/skeleton/index.d.ts.map +1 -0
  51. package/dist/spinner/index.d.ts +6 -0
  52. package/dist/spinner/index.d.ts.map +1 -0
  53. package/dist/table/index.d.ts +11 -0
  54. package/dist/table/index.d.ts.map +1 -0
  55. package/dist/table-of-contents/index.d.ts +18 -0
  56. package/dist/table-of-contents/index.d.ts.map +1 -0
  57. package/dist/tabs/index.d.ts +26 -0
  58. package/dist/tabs/index.d.ts.map +1 -0
  59. package/dist/textarea/index.d.ts +4 -0
  60. package/dist/textarea/index.d.ts.map +1 -0
  61. package/dist/theme-toggle/index.d.ts +20 -0
  62. package/dist/theme-toggle/index.d.ts.map +1 -0
  63. package/dist/toast/index.d.ts +20 -0
  64. package/dist/toast/index.d.ts.map +1 -0
  65. package/dist/toggle/index.d.ts +10 -0
  66. package/dist/toggle/index.d.ts.map +1 -0
  67. package/dist/utils/cva.d.ts.map +1 -0
  68. package/dist/utils/cx.d.ts.map +1 -0
  69. package/dist/utils/slot.d.ts +10 -0
  70. package/dist/utils/slot.d.ts.map +1 -0
  71. package/dist/utils/styles.d.ts +15 -0
  72. package/dist/utils/styles.d.ts.map +1 -0
  73. package/dist/utils/useClickOutside.d.ts.map +1 -0
  74. package/dist/utils/useVirtualList.d.ts +26 -0
  75. package/dist/utils/useVirtualList.d.ts.map +1 -0
  76. package/dist/zen.css +2 -2
  77. package/dist/zen.js +1145 -722
  78. package/package.json +42 -39
  79. package/dist/packages/badge/index.d.ts.map +0 -1
  80. package/dist/packages/button/index.d.ts.map +0 -1
  81. package/dist/packages/collapse/index.d.ts.map +0 -1
  82. package/dist/packages/dropdown/index.d.ts.map +0 -1
  83. package/dist/packages/icons/chevron-down.d.ts +0 -3
  84. package/dist/packages/icons/chevron-down.d.ts.map +0 -1
  85. package/dist/packages/icons/chevron-up.d.ts +0 -3
  86. package/dist/packages/icons/chevron-up.d.ts.map +0 -1
  87. package/dist/packages/icons/icon.types.d.ts.map +0 -1
  88. package/dist/packages/icons/index.d.ts.map +0 -1
  89. package/dist/packages/icons/search.d.ts +0 -3
  90. package/dist/packages/icons/search.d.ts.map +0 -1
  91. package/dist/packages/icons/x-mark.d.ts +0 -3
  92. package/dist/packages/icons/x-mark.d.ts.map +0 -1
  93. package/dist/packages/index.d.ts +0 -17
  94. package/dist/packages/index.d.ts.map +0 -1
  95. package/dist/packages/input/index.d.ts +0 -4
  96. package/dist/packages/input/index.d.ts.map +0 -1
  97. package/dist/packages/popover/index.d.ts.map +0 -1
  98. package/dist/packages/textarea/index.d.ts +0 -4
  99. package/dist/packages/textarea/index.d.ts.map +0 -1
  100. package/dist/packages/toggle/index.d.ts +0 -6
  101. package/dist/packages/toggle/index.d.ts.map +0 -1
  102. package/dist/packages/utils/cva.d.ts.map +0 -1
  103. package/dist/packages/utils/cx.d.ts.map +0 -1
  104. package/dist/packages/utils/useClickOutside.d.ts.map +0 -1
  105. /package/dist/{packages/icons → icons}/icon.types.d.ts +0 -0
  106. /package/dist/{packages/icons → icons}/index.d.ts +0 -0
  107. /package/dist/{packages/utils → utils}/cva.d.ts +0 -0
  108. /package/dist/{packages/utils → utils}/cx.d.ts +0 -0
  109. /package/dist/{packages/utils → utils}/useClickOutside.d.ts +0 -0
@@ -0,0 +1,18 @@
1
+ export interface Action {
2
+ label: string;
3
+ onClick: () => void;
4
+ destructive?: boolean;
5
+ }
6
+ /**
7
+ * "⋯" button opening a short menu of actions for one thing. A native popover:
8
+ * outside clicks and Escape close it, and focus returns to the button.
9
+ */
10
+ export default function ActionsMenu({ label, actions, className }: ActionsMenuProps): import('react').JSX.Element;
11
+ export interface ActionsMenuProps {
12
+ /** Accessible name for the button and menu, e.g. "Goal actions". */
13
+ label: string;
14
+ /** Falsy entries are skipped, so actions can be added conditionally. */
15
+ actions: (Action | false | null | undefined)[];
16
+ className?: string;
17
+ }
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/actions-menu/index.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,MAAM;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAKD;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,gBAAgB,+BA4ElF;AAED,MAAM,WAAW,gBAAgB;IAC7B,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,OAAO,EAAE,CAAC,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Fixed page background: slow aurora glows over a faint pattern (topographic
3
+ * contours or a dot grid), with a light that follows the pointer. It also
4
+ * lights `.glow-edge` borders (cards, outline buttons, dialogs) near the
5
+ * pointer. Render once, behind everything.
6
+ */
7
+ export default function Backdrop({ pattern, topoSrc }: BackdropProps): import('react').JSX.Element;
8
+ export interface BackdropProps {
9
+ /** Background pattern. Defaults to contours when `topoSrc` is given, dots otherwise. */
10
+ pattern?: 'contours' | 'dots';
11
+ /** URL of a contour-line image (strokes on transparent), used as a mask. */
12
+ topoSrc?: string;
13
+ }
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/backdrop/index.tsx"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,aAAa,+BAkGnE;AAED,MAAM,WAAW,aAAa;IAC1B,wFAAwF;IACxF,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;IAC9B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB"}
@@ -1,6 +1,6 @@
1
1
  import { VariantProps } from '../utils/cva';
2
2
  import { ComponentProps } from 'react';
3
- export default function Badge({ variant, className, ...rest }: BadgeProps): import("react/jsx-runtime").JSX.Element;
3
+ export default function Badge({ variant, className, ...rest }: BadgeProps): import('react').JSX.Element;
4
4
  declare const badgeVariants: (props?: ({
5
5
  variant?: "default" | "secondary" | "destructive" | "outline" | null | undefined;
6
6
  } & ({
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/badge/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAO,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,UAAU,+BAExE;AACD,QAAA,MAAM,aAAa;;;;;;;;;;;0BAgBlB,CAAC;AACF,MAAM,WAAW,UAAW,SAAQ,cAAc,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC,OAAO,aAAa,CAAC;CAAG"}
@@ -1,8 +1,8 @@
1
1
  import { VariantProps } from '../utils/cva';
2
2
  import { ComponentProps } from 'react';
3
- export default function Button({ className, variant, size, ...rest }: ButtonProps): import("react/jsx-runtime").JSX.Element;
4
- declare const buttonVariants: (props?: ({
5
- variant?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | "icon" | null | undefined;
3
+ export default function Button({ className, variant, size, loading, disabled, children, ...rest }: ButtonProps): import('react').JSX.Element;
4
+ export declare const buttonVariants: (props?: ({
5
+ variant?: "link" | "default" | "icon" | "secondary" | "destructive" | "outline" | "ghost" | null | undefined;
6
6
  size?: "default" | "icon" | "sm" | "lg" | null | undefined;
7
7
  } & ({
8
8
  class: import('../utils/cx').ClassValue;
@@ -15,6 +15,7 @@ declare const buttonVariants: (props?: ({
15
15
  className?: never;
16
16
  })) | undefined) => string;
17
17
  export interface ButtonProps extends ComponentProps<'button'>, VariantProps<typeof buttonVariants> {
18
+ /** Shows a spinner and disables the button while an action runs. */
19
+ loading?: boolean;
18
20
  }
19
- export {};
20
21
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/button/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC3B,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAe,EACf,QAAQ,EACR,QAAQ,EACR,GAAG,IAAI,EACV,EAAE,WAAW,+BAYb;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;0BAoC1B,CAAC;AAEF,MAAM,WAAW,WAAY,SAAQ,cAAc,CAAC,QAAQ,CAAC,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC;IAC9F,oEAAoE;IACpE,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,23 @@
1
+ import { ComponentProps, ReactNode } from 'react';
2
+ /** Glass panel whose border catches the pointer light. */
3
+ export default function Card({ title, action, children, className, ...rest }: CardProps): import('react').JSX.Element;
4
+ /** A single figure with a label, e.g. "Revenue $12,400". */
5
+ export declare function Stat({ label, value, hint, tone, className }: StatProps): import('react').JSX.Element;
6
+ /** Row of stats: two columns on phones (an odd last one spans both), three from `sm` up. */
7
+ export declare function StatRow({ children, className }: {
8
+ children: ReactNode;
9
+ className?: string;
10
+ }): import('react').JSX.Element;
11
+ export interface CardProps extends Omit<ComponentProps<'section'>, 'title'> {
12
+ title?: ReactNode;
13
+ /** Shown at the end of the header, e.g. a button or menu. */
14
+ action?: ReactNode;
15
+ }
16
+ export interface StatProps {
17
+ label: string;
18
+ value: ReactNode;
19
+ hint?: ReactNode;
20
+ tone?: 'default' | 'positive' | 'negative';
21
+ className?: string;
22
+ }
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/card/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD,0DAA0D;AAC1D,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,+BAetF;AAED,6DAA6D;AAC7D,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAgB,EAAE,SAAS,EAAE,EAAE,SAAS,+BAkBlF;AAED,4FAA4F;AAC5F,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAY3F;AAED,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IACvE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,19 @@
1
+ import { ComponentProps } from 'react';
2
+ /**
3
+ * Code on a glass panel whose edge catches the pointer light, with a copy
4
+ * button. Zen ships no highlighter: pass `highlight` (code → HTML string, e.g.
5
+ * sugar-high's `highlight`) for colours.
6
+ */
7
+ export default function CodeBlock({ code, language, highlight, copyable, variant, className, ...rest }: CodeBlockProps): import('react').JSX.Element;
8
+ export interface CodeBlockProps extends Omit<ComponentProps<'div'>, 'children'> {
9
+ code: string;
10
+ /** Passed to `highlight`, and set as data-language. */
11
+ language?: string;
12
+ /** Turns the code into HTML with coloured tokens. Without it, plain text. */
13
+ highlight?: (code: string, language?: string) => string;
14
+ /** Show the copy button (on hover and focus). */
15
+ copyable?: boolean;
16
+ /** `glass` (default): its own lit glass panel. `plain`: no surface, for code inside a card or panel. */
17
+ variant?: 'glass' | 'plain';
18
+ }
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/code-block/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAuB,MAAM,OAAO,CAAC;AAE5D;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAC9B,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,QAAe,EACf,OAAiB,EACjB,SAAS,EACT,GAAG,IAAI,EACV,EAAE,cAAc,+BA+ChB;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wGAAwG;IACxG,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CAC/B"}
@@ -1,5 +1,5 @@
1
1
  import { BadgeProps } from '../badge';
2
- export default function Collapse<TData>(props: CollapseProps<TData>): import("react/jsx-runtime").JSX.Element;
2
+ export default function Collapse<TData>(props: CollapseProps<TData>): import('react').JSX.Element;
3
3
  export interface CollapseProps<TData> {
4
4
  items: string[];
5
5
  data?: TData[];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/collapse/index.tsx"],"names":[],"mappings":"AAEA,OAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAI/C,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,+BA6GlE;AACD,MAAM,WAAW,aAAa,CAAC,KAAK;IAChC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC;IACf,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,KAAK,KAAK,CAAC,SAAS,CAAC;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAChD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACxD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB"}
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+ /** Confirmation for destructive or irreversible actions. Cancel has focus, so Enter is the safe choice. */
3
+ export default function ConfirmDialog({ open, onOpenChange, title, description, confirmLabel, cancelLabel, destructive, onConfirm, }: ConfirmDialogProps): import('react').JSX.Element;
4
+ export interface ConfirmDialogProps {
5
+ open: boolean;
6
+ onOpenChange: (open: boolean) => void;
7
+ title: ReactNode;
8
+ description?: ReactNode;
9
+ confirmLabel: string;
10
+ cancelLabel?: string;
11
+ destructive?: boolean;
12
+ onConfirm: () => void;
13
+ }
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/confirm-dialog/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,2GAA2G;AAC3G,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAClC,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,WAAW,EACX,YAAY,EACZ,WAAsB,EACtB,WAAmB,EACnB,SAAS,GACZ,EAAE,kBAAkB,+BA0BpB;AAED,MAAM,WAAW,kBAAkB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,MAAM,IAAI,CAAC;CACzB"}
@@ -0,0 +1,22 @@
1
+ import { ComponentProps, ReactNode, RefObject } from 'react';
2
+ /**
3
+ * Modal dialog on the native <dialog> element: focus is trapped and restored,
4
+ * the page behind is inert, and Escape closes it. `dismissible={false}` is for
5
+ * flows the user must finish (no Escape or outside-click close).
6
+ */
7
+ export default function Dialog({ open, onOpenChange, title, description, children, dismissible, initialFocus, size, className, role, }: DialogProps): import('react').JSX.Element;
8
+ export interface DialogProps {
9
+ open: boolean;
10
+ onOpenChange?: (open: boolean) => void;
11
+ title: ReactNode;
12
+ description?: ReactNode;
13
+ children?: ReactNode;
14
+ dismissible?: boolean;
15
+ /** Element to focus when the dialog opens (default: the first focusable one). */
16
+ initialFocus?: RefObject<HTMLElement | null>;
17
+ /** "lg" for dialogs holding a whole tool rather than a short form. */
18
+ size?: 'md' | 'lg';
19
+ className?: string;
20
+ role?: ComponentProps<'dialog'>['role'];
21
+ }
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/dialog/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAA4B,MAAM,OAAO,CAAC;AAEvF;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC3B,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,WAAkB,EAClB,YAAY,EACZ,IAAW,EACX,SAAS,EACT,IAAI,GACP,EAAE,WAAW,+BAsDb;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iFAAiF;IACjF,YAAY,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC7C,sEAAsE;IACtE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;CAC3C"}
@@ -1,5 +1,5 @@
1
1
  import { ComponentProps } from 'react';
2
- export default function Dropdown(props: (MultiSelectProps | SingleSelectProps) & (MutableDropdownProps | ImmutableDropdownProps) & DropdownProps & Omit<ComponentProps<'input'>, 'onChange'>): import("react/jsx-runtime").JSX.Element;
2
+ export default function Dropdown(props: (MultiSelectProps | SingleSelectProps) & (MutableDropdownProps | ImmutableDropdownProps) & DropdownProps & Omit<ComponentProps<'input'>, 'onChange'>): import('react').JSX.Element;
3
3
  export interface SingleSelectProps {
4
4
  selected: DropdownItem;
5
5
  onChange: (item: DropdownItem) => void;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/dropdown/index.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAe,cAAc,EAAwC,MAAM,OAAO,CAAC;AAE1F,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC5B,KAAK,EAAE,CAAC,gBAAgB,GAAG,iBAAiB,CAAC,GACzC,CAAC,oBAAoB,GAAG,sBAAsB,CAAC,GAC/C,aAAa,GACb,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,+BAwGhD;AAgHD,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,KAAK,CAAC;CACpB;AACD,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,IAAI,CAAC;IAC1C,QAAQ,EAAE,IAAI,CAAC;CAClB;AACD,MAAM,WAAW,aAAa;IAC1B,KAAK,EAAE,YAAY,EAAE,CAAC;CACzB;AACD,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,IAAI,CAAC;IACd,KAAK,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;CACvC;AACD,MAAM,WAAW,sBAAsB;IACnC,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;CACjB;AACD,MAAM,MAAM,YAAY,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACf,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { ComponentProps } from 'react';
2
+ /**
3
+ * A sticky bar across the top of the page: the page colour, translucent and
4
+ * heavily blurred, over a hairline. Clears the notch on phones, where it's
5
+ * solid instead (a live blur over scrolling content stutters there).
6
+ */
7
+ export default function Header({ className, children, ...rest }: ComponentProps<'header'>): import('react').JSX.Element;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/header/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,QAAQ,CAAC,+BAexF"}
@@ -0,0 +1,3 @@
1
+ import { default as IconProps } from './icon.types';
2
+ export default function ChevronDown(props: IconProps): import('react').JSX.Element;
3
+ //# sourceMappingURL=chevron-down.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chevron-down.d.ts","sourceRoot":"","sources":["../../packages/icons/chevron-down.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,SAAS,+BAcnD"}
@@ -0,0 +1,3 @@
1
+ import { default as IconProps } from './icon.types';
2
+ export default function ChevronUp(props: IconProps): import('react').JSX.Element;
3
+ //# sourceMappingURL=chevron-up.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chevron-up.d.ts","sourceRoot":"","sources":["../../packages/icons/chevron-up.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,KAAK,EAAE,SAAS,+BAcjD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icon.types.d.ts","sourceRoot":"","sources":["../../packages/icons/icon.types.ts"],"names":[],"mappings":"AAAA,KAAK,SAAS,GAAG,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC/C,eAAe,SAAS,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { default as IconProps } from './icon.types';
2
+ export default function Search(props: IconProps): import('react').JSX.Element;
3
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../packages/icons/search.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,KAAK,EAAE,SAAS,+BAkB9C"}
@@ -0,0 +1,3 @@
1
+ import { default as IconProps } from './icon.types';
2
+ export default function XMark(props: IconProps): import('react').JSX.Element;
3
+ //# sourceMappingURL=x-mark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x-mark.d.ts","sourceRoot":"","sources":["../../packages/icons/x-mark.tsx"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAK,EAAE,SAAS,+BAc7C"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,36 @@
1
- export * from './packages/index'
2
- export {}
1
+ export { default as ActionsMenu, type Action } from './actions-menu';
2
+ export { default as Backdrop } from './backdrop';
3
+ export { default as Badge } from './badge';
4
+ export { default as Button, buttonVariants } from './button';
5
+ export { default as Card, Stat, StatRow } from './card';
6
+ export { default as CodeBlock } from './code-block';
7
+ export { default as Collapse } from './collapse';
8
+ export { default as ConfirmDialog } from './confirm-dialog';
9
+ export { default as Dialog } from './dialog';
10
+ export { default as Dropdown, type DropdownItem } from './dropdown';
11
+ export { default as Header } from './header';
12
+ export * from './icons';
13
+ export { default as Input } from './input';
14
+ export { default as NavPills, NavPill, NavPillIndicator } from './nav-pills';
15
+ export { default as PageHeader } from './page-header';
16
+ export { default as Popover } from './popover';
17
+ export { default as ProgressRing } from './progress-ring';
18
+ export { default as Segmented } from './segmented';
19
+ export { default as SideNav, SideNavGroup, SideNavLink } from './side-nav';
20
+ export { default as Skeleton } from './skeleton';
21
+ export { default as Spinner } from './spinner';
22
+ export { default as Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from './table';
23
+ export { default as TableOfContents, type TableOfContentsItem } from './table-of-contents';
24
+ export { default as Tabs, Tab, TabList, TabPanel } from './tabs';
25
+ export { default as TextArea } from './textarea';
26
+ export { default as ToastProvider, useToast, type ToastOptions, type ToastTone } from './toast';
27
+ export { default as Toggle } from './toggle';
28
+ export { default as ThemeToggle, ThemeScript, themeScript } from './theme-toggle';
29
+ export { cva, type VariantProps } from './utils/cva';
30
+ export { cx } from './utils/cx';
31
+ declare module 'react' {
32
+ interface CSSProperties {
33
+ [key: `--${string}`]: string | number;
34
+ }
35
+ }
36
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../packages/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,CAAC;AACf,OAAO,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,KAAK,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,SAAS,CAAC;AAChG,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,GAAG,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,EAAE,EAAE,MAAM,YAAY,CAAC;AAEhC,OAAO,QAAQ,OAAO,CAAC;IACnB,UAAU,aAAa;QACnB,CAAC,GAAG,EAAE,KAAK,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;KACzC;CACJ"}
@@ -0,0 +1,4 @@
1
+ import { ComponentProps } from 'react';
2
+ export default function Input(props: InputProps): import('react').JSX.Element;
3
+ export type InputProps = ComponentProps<'input'>;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/input/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAK,EAAE,UAAU,+BAgB9C;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { ComponentProps } from 'react';
2
+ /**
3
+ * Top navigation on a glass track. Compose what you need: links, and
4
+ * optionally the glowing pill that slides to the current page. It follows
5
+ * whichever link has aria-current="page", so router links that set it
6
+ * themselves (React Router's NavLink) work as-is:
7
+ *
8
+ * <NavPills aria-label="Main">
9
+ * <NavPillIndicator />
10
+ * <NavPill href="/month" active>Month</NavPill>
11
+ * <NavPill asChild><NavLink to="/goals">Goals</NavLink></NavPill>
12
+ * </NavPills>
13
+ */
14
+ export default function NavPills({ className, children, ...rest }: NavPillsProps): import('react').JSX.Element;
15
+ /** The glowing pill under the current link. Place it inside NavPills; hidden while no link is current. */
16
+ export declare function NavPillIndicator({ className }: {
17
+ className?: string;
18
+ }): import('react').JSX.Element | null;
19
+ /**
20
+ * One link in NavPills. `active` marks the current page. With `asChild`, the
21
+ * styles go onto your own link element instead (a router's Link or NavLink).
22
+ */
23
+ export declare function NavPill({ active, asChild, className, children, ...rest }: NavPillProps): import('react').JSX.Element;
24
+ export type NavPillsProps = ComponentProps<'nav'>;
25
+ export interface NavPillProps extends ComponentProps<'a'> {
26
+ /** This link is the current page. */
27
+ active?: boolean;
28
+ /** Style the single child element (e.g. a router link) instead of rendering an <a>. */
29
+ asChild?: boolean;
30
+ }
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/nav-pills/index.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAgE,MAAM,OAAO,CAAC;AAIrG;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,+BAoC/E;AAED,0GAA0G;AAC1G,wBAAgB,gBAAgB,CAAC,EAAE,SAAS,EAAE,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,sCAUrE;AAOD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,YAAY,+BAQtF;AAED,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;AAElD,MAAM,WAAW,YAAa,SAAQ,cAAc,CAAC,GAAG,CAAC;IACrD,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,12 @@
1
+ import { ReactNode } from 'react';
2
+ /** Top of a page: a small eyebrow label, the title in the aurora gradient, and a lead paragraph. */
3
+ export default function PageHeader({ eyebrow, title, lead, children, className }: PageHeaderProps): import('react').JSX.Element;
4
+ export interface PageHeaderProps {
5
+ eyebrow?: ReactNode;
6
+ title: ReactNode;
7
+ lead?: ReactNode;
8
+ /** Anything after the lead, e.g. a row of buttons. */
9
+ children?: ReactNode;
10
+ className?: string;
11
+ }
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/page-header/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,oGAAoG;AACpG,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,+BAShG;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -1,5 +1,5 @@
1
1
  import { ComponentProps } from 'react';
2
- export default function Popover(props: PopoverProps): import("react/jsx-runtime").JSX.Element;
2
+ export default function Popover(props: PopoverProps): import('react').JSX.Element;
3
3
  export interface PopoverProps extends Omit<ComponentProps<'div'>, 'content'> {
4
4
  placement?: Placement;
5
5
  className?: string;
@@ -14,6 +14,8 @@ export interface PopoverProps extends Omit<ComponentProps<'div'>, 'content'> {
14
14
  setShow?: (show: boolean) => void;
15
15
  role?: AriaRole | ComponentRole;
16
16
  gap?: string;
17
+ /** Classes for the element wrapping `children` (it fits its content by default). */
18
+ triggerClassName?: string;
17
19
  }
18
20
  type AriaRole = 'tooltip' | 'dialog' | 'alertdialog' | 'menu' | 'listbox' | 'grid' | 'tree';
19
21
  type ComponentRole = 'select' | 'label' | 'combobox';
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/popover/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAkD,MAAM,OAAO,CAAC;AAEvF,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAAK,EAAE,YAAY,+BAgIlD;AAED,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IACxE,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAChC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,QAAQ,GAAG,aAAa,CAAC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B;AACD,KAAK,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAC5F,KAAK,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AACrD,KAAK,SAAS,GACR,KAAK,GACL,WAAW,GACX,SAAS,GACT,QAAQ,GACR,cAAc,GACd,YAAY,GACZ,OAAO,GACP,aAAa,GACb,WAAW,GACX,MAAM,GACN,YAAY,GACZ,UAAU,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { ReactNode } from 'react';
2
+ /** Circular progress, 0–1, with optional content in the middle. */
3
+ export default function ProgressRing({ value, size, stroke, label, children, className }: ProgressRingProps): import('react').JSX.Element;
4
+ export interface ProgressRingProps {
5
+ /** Progress from 0 to 1; values outside are clamped. */
6
+ value: number;
7
+ size?: number;
8
+ stroke?: number;
9
+ /** Accessible name, e.g. "Savings goal". */
10
+ label: string;
11
+ children?: ReactNode;
12
+ className?: string;
13
+ }
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/progress-ring/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,mEAAmE;AACnE,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EAAE,KAAK,EAAE,IAAS,EAAE,MAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,+BAsCnH;AAED,MAAM,WAAW,iBAAiB;IAC9B,wDAAwD;IACxD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * A small set of mutually exclusive options, shown as a pill row. Native radio
3
+ * inputs underneath, so arrow keys and forms work as for any radio group.
4
+ */
5
+ export default function Segmented<V extends string>({ label, value, options, onChange, name, className, }: SegmentedProps<V>): import('react').JSX.Element;
6
+ export interface SegmentedProps<V extends string> {
7
+ label: string;
8
+ value: V;
9
+ options: readonly {
10
+ value: V;
11
+ label: string;
12
+ }[];
13
+ onChange: (value: V) => void;
14
+ /** Form field name; defaults to a generated one. */
15
+ name?: string;
16
+ className?: string;
17
+ }
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/segmented/index.tsx"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,EAChD,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,SAAS,GACZ,EAAE,cAAc,CAAC,CAAC,CAAC,+BAmCnB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,MAAM;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,OAAO,EAAE,SAAS;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAChD,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,oDAAoD;IACpD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,22 @@
1
+ import { ComponentProps, ReactNode } from 'react';
2
+ /** Vertical navigation, e.g. a docs or settings sidebar. Give it an aria-label. */
3
+ export default function SideNav({ className, ...rest }: ComponentProps<'nav'>): import('react').JSX.Element;
4
+ /** A titled group of links. */
5
+ export declare function SideNavGroup({ title, children, className, }: {
6
+ title?: ReactNode;
7
+ children: ReactNode;
8
+ className?: string;
9
+ }): import('react').JSX.Element;
10
+ /**
11
+ * One link. `active` marks the current page. With `asChild`, the styles go onto
12
+ * your own link element instead (a router's Link or NavLink, which may set
13
+ * aria-current itself).
14
+ */
15
+ export declare function SideNavLink({ active, asChild, className, children, ...rest }: SideNavLinkProps): import('react').JSX.Element;
16
+ export interface SideNavLinkProps extends ComponentProps<'a'> {
17
+ /** This link is the current page. */
18
+ active?: boolean;
19
+ /** Style the single child element (e.g. a router link) instead of rendering an <a>. */
20
+ asChild?: boolean;
21
+ }
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/side-nav/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD,mFAAmF;AACnF,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BAE5E;AAED,+BAA+B;AAC/B,wBAAgB,YAAY,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,SAAS,GACZ,EAAE;IACC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,+BAWA;AAQD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,gBAAgB,+BAO9F;AAED,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAC,GAAG,CAAC;IACzD,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,uFAAuF;IACvF,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB"}
@@ -0,0 +1,6 @@
1
+ /** Shimmering placeholder in the shape of content that's on its way. Size it with className. */
2
+ export default function Skeleton({ className }: SkeletonProps): import('react').JSX.Element;
3
+ export interface SkeletonProps {
4
+ className?: string;
5
+ }
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/skeleton/index.tsx"],"names":[],"mappings":"AAEA,gGAAgG;AAChG,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,SAAS,EAAE,EAAE,aAAa,+BAE5D;AAED,MAAM,WAAW,aAAa;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,6 @@
1
+ /** Small circular spinner in the current text colour. */
2
+ export default function Spinner({ className }: SpinnerProps): import('react').JSX.Element;
3
+ export interface SpinnerProps {
4
+ className?: string;
5
+ }
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/spinner/index.tsx"],"names":[],"mappings":"AAEA,yDAAyD;AACzD,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,YAAY,+BAU1D;AAED,MAAM,WAAW,YAAY;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,11 @@
1
+ import { ComponentProps } from 'react';
2
+ /** A plain HTML table on a glass panel whose edge catches the pointer light, scrolling sideways when it doesn't fit. Compose with the Table* parts. */
3
+ export default function Table({ className, ...rest }: ComponentProps<'table'>): import('react').JSX.Element;
4
+ /** Column headings: small, muted, spaced caps. */
5
+ export declare function TableHeader({ className, ...rest }: ComponentProps<'thead'>): import('react').JSX.Element;
6
+ /** Rows, split by hairlines. */
7
+ export declare function TableBody({ className, ...rest }: ComponentProps<'tbody'>): import('react').JSX.Element;
8
+ export declare function TableRow({ className, ...rest }: ComponentProps<'tr'>): import('react').JSX.Element;
9
+ export declare function TableHead({ className, ...rest }: ComponentProps<'th'>): import('react').JSX.Element;
10
+ export declare function TableCell({ className, ...rest }: ComponentProps<'td'>): import('react').JSX.Element;
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/table/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,uJAAuJ;AACvJ,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,+BAM5E;AAED,kDAAkD;AAClD,wBAAgB,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,+BAU1E;AAED,gCAAgC;AAChC,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,+BAExE;AAED,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,+BAEpE;AAED,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,+BAErE;AAED,wBAAgB,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,+BAErE"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * "On this page": links to the page's headings, highlighting the section being
3
+ * read. Items point at element ids; nested items (depth 2) are indented.
4
+ */
5
+ export default function TableOfContents({ items, title, className }: TableOfContentsProps): import('react').JSX.Element | null;
6
+ export interface TableOfContentsItem {
7
+ /** Id of the heading (or section) to link to. */
8
+ id: string;
9
+ label: string;
10
+ /** 1 (default) or 2 for a nested entry. */
11
+ depth?: 1 | 2;
12
+ }
13
+ export interface TableOfContentsProps {
14
+ items: TableOfContentsItem[];
15
+ title?: string;
16
+ className?: string;
17
+ }
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/table-of-contents/index.tsx"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EAAE,KAAK,EAAE,KAAsB,EAAE,SAAS,EAAE,EAAE,oBAAoB,sCA6CzG;AAED,MAAM,WAAW,mBAAmB;IAChC,iDAAiD;IACjD,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACjC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,26 @@
1
+ import { ComponentProps } from 'react';
2
+ /** Tab set with an underline that slides to the active tab. Controlled (`value`) or not (`defaultValue`). */
3
+ export default function Tabs({ value, defaultValue, onValueChange, className, ...rest }: TabsProps): import('react').JSX.Element;
4
+ /**
5
+ * `underline` (default): Sora's in-page tabs, a bar under the active tab.
6
+ * `pills`: Sora's top-nav look, a glowing pill sliding along a glass track.
7
+ */
8
+ export declare function TabList({ variant, className, children, ...rest }: TabListProps): import('react').JSX.Element;
9
+ export declare function Tab({ value, className, onClick, ...rest }: TabProps): import('react').JSX.Element;
10
+ export declare function TabPanel({ value, className, ...rest }: TabPanelProps): import('react').JSX.Element | null;
11
+ export interface TabsProps extends Omit<ComponentProps<'div'>, 'defaultValue'> {
12
+ value?: string;
13
+ defaultValue?: string;
14
+ onValueChange?: (value: string) => void;
15
+ }
16
+ export type TabListVariant = 'underline' | 'pills';
17
+ export interface TabListProps extends ComponentProps<'div'> {
18
+ variant?: TabListVariant;
19
+ }
20
+ export interface TabProps extends Omit<ComponentProps<'button'>, 'value'> {
21
+ value: string;
22
+ }
23
+ export interface TabPanelProps extends ComponentProps<'div'> {
24
+ value: string;
25
+ }
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/tabs/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EACH,cAAc,EAQjB,MAAM,OAAO,CAAC;AAgBf,6GAA6G;AAC7G,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,EAAE,KAAK,EAAE,YAAiB,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,SAAS,+BAetG;AAID;;;GAGG;AACH,wBAAgB,OAAO,CAAC,EAAE,OAAqB,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,YAAY,+BA8D5F;AAED,wBAAgB,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,QAAQ,+BA2BnE;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,sCAapE;AAED,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC;IAC1E,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3C;AAED,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,OAAO,CAAC;AAEnD,MAAM,WAAW,YAAa,SAAQ,cAAc,CAAC,KAAK,CAAC;IACvD,OAAO,CAAC,EAAE,cAAc,CAAC;CAC5B;AAED,MAAM,WAAW,QAAS,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACrE,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,KAAK,CAAC;IACxD,KAAK,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1,4 @@
1
+ import { ComponentProps } from 'react';
2
+ export default function Textarea(props: TextAreaProps): import('react').JSX.Element;
3
+ export type TextAreaProps = ComponentProps<'textarea'>;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/textarea/index.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,aAAa,+BAcpD;AAED,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC"}
@@ -0,0 +1,20 @@
1
+ /** The inline script ThemeScript renders (for frameworks that take a raw string). */
2
+ export declare const themeScript: (storageKey?: string) => string;
3
+ /**
4
+ * Put in <head>: applies the remembered theme before the first paint, so a
5
+ * light-theme visitor never sees a dark flash on page load.
6
+ */
7
+ export declare function ThemeScript({ storageKey }: {
8
+ storageKey?: string;
9
+ }): import('react').JSX.Element;
10
+ /**
11
+ * Switches <html> between the dark and light themes and remembers the choice
12
+ * (localStorage). Add ThemeScript to <head> to apply it on the next visit.
13
+ */
14
+ export default function ThemeToggle({ storageKey, className }: ThemeToggleProps): import('react').JSX.Element;
15
+ export interface ThemeToggleProps {
16
+ /** localStorage key for the choice. Use the same one in ThemeScript. */
17
+ storageKey?: string;
18
+ className?: string;
19
+ }
20
+ //# sourceMappingURL=index.d.ts.map