@medalsocial/meda 2.8.0 → 3.0.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 (174) hide show
  1. package/README.md +105 -2
  2. package/dist/auth/auth-message.d.ts +3 -3
  3. package/dist/auth/auth-provider-button.d.ts +1 -1
  4. package/dist/auth/auth-provider-list.d.ts +1 -1
  5. package/dist/auth/better-auth.d.ts +3 -3
  6. package/dist/brand/medal-social-mark.d.ts +1 -1
  7. package/dist/calendar/calendar-toolbar.d.ts +1 -1
  8. package/dist/calendar/calendar.d.ts +1 -1
  9. package/dist/calendar/day-view.d.ts +1 -1
  10. package/dist/calendar/internal/day-cell.d.ts +1 -1
  11. package/dist/calendar/internal/event-pill.d.ts +1 -1
  12. package/dist/calendar/internal/time-slot.d.ts +1 -1
  13. package/dist/calendar/month-view.d.ts +1 -1
  14. package/dist/calendar/week-view.d.ts +1 -1
  15. package/dist/chat/latency-badge.d.ts +1 -1
  16. package/dist/chat/latency-breakdown.d.ts +1 -1
  17. package/dist/chat/tool-call-block.d.ts +1 -1
  18. package/dist/chat/transcript-stream.d.ts +1 -1
  19. package/dist/chat/turn-card.d.ts +1 -1
  20. package/dist/components/ui/checkbox.d.ts +1 -1
  21. package/dist/components/ui/collapsible.d.ts +3 -3
  22. package/dist/components/ui/command.d.ts +9 -9
  23. package/dist/components/ui/dialog.d.ts +10 -10
  24. package/dist/components/ui/drawer.d.ts +10 -10
  25. package/dist/components/ui/dropdown-menu.d.ts +15 -15
  26. package/dist/components/ui/tooltip.d.ts +4 -4
  27. package/dist/email-builder/block-palette.d.ts +1 -1
  28. package/dist/email-builder/block-renderer.d.ts +1 -1
  29. package/dist/email-builder/block-renderers/button.d.ts +1 -1
  30. package/dist/email-builder/block-renderers/columns.d.ts +1 -1
  31. package/dist/email-builder/block-renderers/divider.d.ts +1 -1
  32. package/dist/email-builder/block-renderers/footer.d.ts +1 -1
  33. package/dist/email-builder/block-renderers/heading.d.ts +1 -1
  34. package/dist/email-builder/block-renderers/image.d.ts +1 -1
  35. package/dist/email-builder/block-renderers/social.d.ts +1 -1
  36. package/dist/email-builder/block-renderers/spacer.d.ts +1 -1
  37. package/dist/email-builder/block-renderers/text.d.ts +1 -1
  38. package/dist/email-builder/builder-canvas.d.ts +1 -1
  39. package/dist/email-builder/builder-header.d.ts +1 -1
  40. package/dist/email-builder/builder-left-tabs.d.ts +1 -1
  41. package/dist/email-builder/email-builder.d.ts +1 -1
  42. package/dist/email-builder/envelope-card.d.ts +1 -1
  43. package/dist/email-builder/floating-bar.d.ts +1 -1
  44. package/dist/email-builder/internal/dnd-wrapper.d.ts +1 -1
  45. package/dist/email-builder/mobile-drawers.d.ts +1 -1
  46. package/dist/email-builder/mobile-tab-bar.d.ts +1 -1
  47. package/dist/email-builder/property-editors/_shared.d.ts +8 -8
  48. package/dist/email-builder/property-editors/button-editor.d.ts +1 -1
  49. package/dist/email-builder/property-editors/columns-editor.d.ts +1 -1
  50. package/dist/email-builder/property-editors/divider-editor.d.ts +1 -1
  51. package/dist/email-builder/property-editors/footer-editor.d.ts +1 -1
  52. package/dist/email-builder/property-editors/heading-editor.d.ts +1 -1
  53. package/dist/email-builder/property-editors/image-editor.d.ts +1 -1
  54. package/dist/email-builder/property-editors/social-editor.d.ts +1 -1
  55. package/dist/email-builder/property-editors/spacer-editor.d.ts +1 -1
  56. package/dist/email-builder/property-editors/text-editor.d.ts +1 -1
  57. package/dist/email-builder/property-inspector.d.ts +1 -1
  58. package/dist/email-builder/view-controls.d.ts +1 -1
  59. package/dist/kanban/kanban-board.d.ts +1 -1
  60. package/dist/kanban/kanban-card-wrapper.d.ts +1 -1
  61. package/dist/kanban/kanban-column.d.ts +1 -1
  62. package/dist/list/list-row.d.ts +2 -2
  63. package/dist/marketing/marketing-announcement-bar.d.ts +1 -1
  64. package/dist/marketing/marketing-bento-card.d.ts +1 -1
  65. package/dist/marketing/marketing-bento-grid.d.ts +1 -1
  66. package/dist/marketing/marketing-callout.d.ts +1 -1
  67. package/dist/marketing/marketing-contact.d.ts +1 -1
  68. package/dist/marketing/marketing-cta-list.d.ts +1 -1
  69. package/dist/marketing/marketing-cta.d.ts +1 -1
  70. package/dist/marketing/marketing-faq.d.ts +1 -1
  71. package/dist/marketing/marketing-footer.d.ts +1 -1
  72. package/dist/marketing/marketing-header-logo.d.ts +1 -1
  73. package/dist/marketing/marketing-header.d.ts +1 -1
  74. package/dist/marketing/marketing-hero.d.ts +1 -1
  75. package/dist/marketing/marketing-lead-magnet.d.ts +1 -1
  76. package/dist/marketing/marketing-mega-menu.d.ts +1 -1
  77. package/dist/marketing/marketing-nav-item.d.ts +1 -1
  78. package/dist/marketing/marketing-numbered-features.d.ts +1 -1
  79. package/dist/marketing/marketing-shell.d.ts +1 -1
  80. package/dist/marketing/marketing-trust-bar.d.ts +1 -1
  81. package/dist/panel/inspector-field.d.ts +1 -1
  82. package/dist/panel/inspector-json.d.ts +1 -1
  83. package/dist/panel/inspector.d.ts +1 -1
  84. package/dist/post-preview/internal/avatar.d.ts +1 -1
  85. package/dist/post-preview/platforms/bluesky.d.ts +1 -1
  86. package/dist/post-preview/platforms/discord.d.ts +1 -1
  87. package/dist/post-preview/platforms/facebook.d.ts +1 -1
  88. package/dist/post-preview/platforms/generic.d.ts +1 -1
  89. package/dist/post-preview/platforms/google-business.d.ts +1 -1
  90. package/dist/post-preview/platforms/instagram.d.ts +1 -1
  91. package/dist/post-preview/platforms/linkedin.d.ts +1 -1
  92. package/dist/post-preview/platforms/telegram.d.ts +1 -1
  93. package/dist/post-preview/platforms/threads.d.ts +1 -1
  94. package/dist/post-preview/platforms/tiktok.d.ts +1 -1
  95. package/dist/post-preview/platforms/twitter.d.ts +1 -1
  96. package/dist/post-preview/platforms/youtube.d.ts +1 -1
  97. package/dist/primitives/avatar.d.ts +24 -0
  98. package/dist/primitives/avatar.js +44 -0
  99. package/dist/primitives/button.d.ts +21 -0
  100. package/dist/primitives/button.js +51 -0
  101. package/dist/primitives/card.d.ts +4 -4
  102. package/dist/primitives/empty-state.d.ts +1 -1
  103. package/dist/primitives/filter-rail.d.ts +2 -2
  104. package/dist/primitives/index.d.ts +8 -0
  105. package/dist/primitives/index.js +4 -0
  106. package/dist/primitives/input.d.ts +10 -0
  107. package/dist/primitives/input.js +9 -0
  108. package/dist/primitives/markdown-view.d.ts +1 -1
  109. package/dist/primitives/skeleton.d.ts +1 -1
  110. package/dist/primitives/status-pill.d.ts +1 -1
  111. package/dist/primitives/toggle-group.d.ts +46 -0
  112. package/dist/primitives/toggle-group.js +148 -0
  113. package/dist/shell/app-shell-auth.d.ts +1 -1
  114. package/dist/shell/app-shell-chat.d.ts +1 -1
  115. package/dist/shell/app-shell-workspace.d.ts +1 -1
  116. package/dist/shell/app-shell.d.ts +2 -2
  117. package/dist/shell/command-palette.d.ts +1 -1
  118. package/dist/shell/context-rail.d.ts +1 -1
  119. package/dist/shell/drag-mode-banner.d.ts +1 -1
  120. package/dist/shell/extras/shell-desktop-panel-dock.d.ts +1 -1
  121. package/dist/shell/extras/shell-scrollable-content.d.ts +1 -1
  122. package/dist/shell/extras/shell-tab-bar.d.ts +1 -1
  123. package/dist/shell/extras/workbench-layout.d.ts +1 -1
  124. package/dist/shell/icon-rail.d.ts +2 -2
  125. package/dist/shell/internal/mobile-bottom-nav.d.ts +1 -1
  126. package/dist/shell/internal/mobile-dock.d.ts +1 -1
  127. package/dist/shell/internal/mobile-dock.js +2 -2
  128. package/dist/shell/internal/mobile-drawers.d.ts +1 -1
  129. package/dist/shell/internal/mobile-header.d.ts +1 -1
  130. package/dist/shell/internal/mobile-workspace-sheet.d.ts +1 -1
  131. package/dist/shell/panel-views-provider.d.ts +1 -1
  132. package/dist/shell/rail-drop-slot.d.ts +1 -1
  133. package/dist/shell/rail-drop-zones.d.ts +1 -1
  134. package/dist/shell/resizable-shell.d.ts +3 -3
  135. package/dist/shell/right-panel.d.ts +1 -1
  136. package/dist/shell/shell-header.d.ts +4 -4
  137. package/dist/shell/shell-main.d.ts +1 -1
  138. package/dist/shell/shell-provider.d.ts +1 -1
  139. package/dist/shell/theme-next-themes.d.ts +1 -1
  140. package/dist/shell/theme.d.ts +2 -2
  141. package/dist/shell/use-shell-viewport.js +3 -1
  142. package/dist/styles/base.css +40 -0
  143. package/dist/styles/bridge.css +159 -0
  144. package/dist/styles/calendar.css +8 -0
  145. package/dist/styles/primitives.css +10 -0
  146. package/dist/styles/theme.css +12 -162
  147. package/dist/styles/vendor/xyflow.css +626 -0
  148. package/dist/styles/workflow-builder.css +17 -0
  149. package/dist/timeline/date-switcher.d.ts +1 -1
  150. package/dist/timeline/event-card.d.ts +1 -1
  151. package/dist/timeline/lane-timeline.d.ts +1 -1
  152. package/dist/timeline/lane.d.ts +1 -1
  153. package/dist/timeline/live-indicator.d.ts +1 -1
  154. package/dist/timeline/scrub-bar.d.ts +1 -1
  155. package/dist/timeline/time-axis.d.ts +1 -1
  156. package/dist/timeline/timeline-rail.d.ts +1 -1
  157. package/dist/timeline/timeline-tape.d.ts +1 -1
  158. package/dist/voice/voice-level.d.ts +2 -1
  159. package/dist/voice/voice-orb-scene.d.ts +2 -1
  160. package/dist/voice/voice-status-pill.d.ts +1 -1
  161. package/dist/workflow-builder/edges/default-edge.d.ts +1 -1
  162. package/dist/workflow-builder/nodes/action-node.d.ts +1 -1
  163. package/dist/workflow-builder/nodes/base-node.d.ts +1 -1
  164. package/dist/workflow-builder/nodes/condition-node.d.ts +1 -1
  165. package/dist/workflow-builder/nodes/delay-node.d.ts +1 -1
  166. package/dist/workflow-builder/nodes/end-node.d.ts +1 -1
  167. package/dist/workflow-builder/nodes/trigger-node.d.ts +1 -1
  168. package/dist/workflow-builder/workflow-builder.d.ts +1 -1
  169. package/dist/workflow-builder/workflow-canvas.d.ts +1 -1
  170. package/dist/workflow-builder/workflow-card-compact.d.ts +1 -1
  171. package/dist/workflow-builder/workflow-card.d.ts +1 -1
  172. package/dist/workflow-builder/workflow-header.d.ts +1 -1
  173. package/dist/workflow-builder/workflow-toolbox.d.ts +1 -1
  174. package/package.json +76 -46
package/README.md CHANGED
@@ -12,6 +12,56 @@ pnpm add @medalsocial/meda lucide-react
12
12
 
13
13
  Peer deps: `react >= 19`, `react-dom >= 19`, and `lucide-react`.
14
14
 
15
+ Feature peers are **optional** — install them only for the entry points that use
16
+ them (package managers no longer auto-install them):
17
+
18
+ | Peer | Needed by |
19
+ | --- | --- |
20
+ | `@dnd-kit/core`, `@dnd-kit/sortable`, `@dnd-kit/utilities` | `@medalsocial/meda` (root barrel), `/shell`, `/kanban`, `/email-builder` |
21
+ | `@xyflow/react` | `@medalsocial/meda` (root barrel), `/workflow-builder`. (Its stylesheet is vendored into `styles.css` / `workflow-builder/styles.css`, so the CSS compiles without the package.) |
22
+ | `three`, `@react-three/fiber` | `/voice` (`VoiceOrb`) |
23
+ | `react-markdown`, `remark-gfm`, `rehype-highlight` | `/markdown-view` |
24
+ | `next-themes` | `NextThemesAdapter` / `themeAdapter="next-themes"` in `/shell` |
25
+
26
+ ```bash
27
+ # Full Medal app (root barrel / shell):
28
+ pnpm add @dnd-kit/core @dnd-kit/sortable @dnd-kit/utilities @xyflow/react
29
+ ```
30
+
31
+ Lean surfaces such as `@medalsocial/meda/calendar` and
32
+ `@medalsocial/meda/primitives` need none of them. Fonts are not bundled either:
33
+ the tokens name `Geist` / `Geist Mono`, so load them yourself (for example
34
+ `@fontsource-variable/geist` + `@fontsource-variable/geist-mono`, or
35
+ `next/font`).
36
+
37
+ ## Upgrading to 3.0
38
+
39
+ 3.0 makes the feature peers **optional**, so npm and pnpm no longer install them
40
+ for you. Nothing else in the API changed.
41
+
42
+ **If you import any of** the root `@medalsocial/meda`, `@medalsocial/meda/shell`,
43
+ `/email-builder`, `/kanban`, `/workflow-builder`, or `@medalsocial/meda/styles.css`,
44
+ add the peers to your own `package.json`:
45
+
46
+ ```bash
47
+ pnpm add @dnd-kit/core @dnd-kit/sortable @dnd-kit/utilities @xyflow/react
48
+ ```
49
+
50
+ **If you render the 3D `VoiceOrb`** (`@medalsocial/meda/voice`), also add:
51
+
52
+ ```bash
53
+ pnpm add three @react-three/fiber
54
+ ```
55
+
56
+ `three` used to be a regular dependency of meda; it is now an optional peer.
57
+ The `@fontsource-variable/geist*` packages are no longer installed by meda
58
+ either — if you `@import` them, list them yourself.
59
+
60
+ **Lean consumers need nothing:** `@medalsocial/meda/calendar`,
61
+ `@medalsocial/meda/primitives`, `styles/bridge.css`, `styles/base.css` and the
62
+ per-feature stylesheets never reach an optional peer (see
63
+ [Lean consumer setup](#lean-consumer-setup)).
64
+
15
65
  ## Tailwind CSS v4 setup
16
66
 
17
67
  Meda ships a `styles.css` with its design tokens. Import it once in your entry stylesheet or entry script:
@@ -42,6 +92,49 @@ Avoid placing token overrides before the Meda import; `tokens.css` defines the p
42
92
  @import '@medalsocial/meda/styles.css';
43
93
  ```
44
94
 
95
+ ### Lean consumer setup
96
+
97
+ `styles.css` is batteries-included: it scans **every** meda component so
98
+ Tailwind generates all of their utilities (~22 KB gzip of CSS), and it pulls in
99
+ the `@xyflow/react` stylesheet. That is right for full Medal apps; it is
100
+ overkill for a marketing or customer site that renders a calendar and a few
101
+ primitives. Use the lean entries instead — each feature stylesheet generates
102
+ only the utilities its own compiled output uses:
103
+
104
+ ```css
105
+ @import 'tailwindcss';
106
+
107
+ /* 1. Foundation — pick ONE */
108
+ @import '@medalsocial/meda/styles/base.css'; /* meda tokens + theme bridge + base layer */
109
+ /* @import '@medalsocial/meda/styles/bridge.css'; */ /* theme bridge only: bring your own tokens */
110
+
111
+ /* 2. Only the surfaces you render */
112
+ @import '@medalsocial/meda/primitives/styles.css';
113
+ @import '@medalsocial/meda/calendar/styles.css';
114
+ ```
115
+
116
+ | Entry | Contains |
117
+ | --- | --- |
118
+ | `styles.css` | `styles/base.css` + every feature (full component scan + xyflow CSS). Unchanged for existing consumers. |
119
+ | `styles/base.css` | `tokens.css` + `bridge.css` + the `color-scheme` base layer + Geist font mapping. No component scan, no xyflow. |
120
+ | `styles/bridge.css` | `@custom-variant dark` + the `@theme inline` mappings (`bg-primary`, `text-muted-foreground`, `bg-brand-500`, ...). No token values, no fonts. |
121
+ | `styles/tokens.css` | Raw CSS custom properties only. |
122
+ | `primitives/styles.css` | Utilities for `@medalsocial/meda/primitives` (Button, Input, ToggleGroup, Avatar, Card, Skeleton, StatusPill, EmptyState, FilterRail; not MarkdownView). |
123
+ | `calendar/styles.css` | Utilities for `@medalsocial/meda/calendar`. |
124
+ | `workflow-builder/styles.css` | `@xyflow/react`'s stylesheet + utilities for `@medalsocial/meda/workflow-builder`. The only lean entry that ships xyflow CSS. |
125
+
126
+ Feature stylesheets never include the foundation, so importing several of them
127
+ does not duplicate tokens — import exactly one foundation first. Never combine
128
+ the lean entries with `styles.css` (it already contains all of them).
129
+
130
+ **Bring your own tokens.** meda components use shadcn-style semantic tokens
131
+ (`--background`, `--foreground`, `--primary`, `--primary-foreground`, `--card`,
132
+ `--muted`, `--muted-foreground`, `--accent`, `--border`, `--input`, `--ring`,
133
+ `--destructive`, ...). A site that already defines those names can import
134
+ `styles/bridge.css` instead of `styles/base.css`, and meda parts re-theme to the
135
+ site's palette automatically. `bridge.css` does not map `--font-sans`, so the
136
+ site's own font stack is kept.
137
+
45
138
  ## Usage
46
139
 
47
140
  Use `AppShell` for the styled shell surface:
@@ -219,7 +312,9 @@ See the [demo app](./demo) for a live playground.
219
312
  - `@medalsocial/meda/recipes/next` — copyable Next.js adoption recipe metadata
220
313
  - `@medalsocial/meda/theme` — app-scoped token bridge helpers
221
314
  - `@medalsocial/meda/marketing` — marketing sections and campaign blocks
222
- - `@medalsocial/meda/styles.css` — design tokens + base styles
315
+ - `@medalsocial/meda/primitives` — foundation primitives (`Button`, `Input`, `ToggleGroup`, `Avatar` + `getInitials`, `Card`, `Skeleton`, `StatusPill`, `EmptyState`, `FilterRail`); also re-exported from the root
316
+ - `@medalsocial/meda/styles.css` — design tokens + base styles + every component's utilities
317
+ - `@medalsocial/meda/styles/base.css`, `@medalsocial/meda/styles/bridge.css`, `@medalsocial/meda/<feature>/styles.css` — lean stylesheet entries (see [Lean consumer setup](#lean-consumer-setup))
223
318
 
224
319
  ## Alternative: shadcn registry
225
320
 
@@ -272,7 +367,15 @@ not committed to this repository.
272
367
 
273
368
  ## Release
274
369
 
275
- Changesets + GitHub Actions (OIDC trusted publishing). Add a changeset with `pnpm changeset`, merge to the release branch, and the `Release` workflow handles npm publish with provenance.
370
+ Changesets + GitHub Actions (OIDC trusted publishing). Add a changeset with
371
+ `pnpm changeset` and merge into `dev`; the version bump lands on `dev` by itself, and a
372
+ standing `release: promote dev → prod` pull request is kept open for you. **Approving
373
+ that PR is the release** — it merges itself and publishes to npm with provenance.
374
+
375
+ Need a build before then? Run the `Release` workflow with `mode: snapshot` for a
376
+ throwaway prerelease under its own dist-tag.
377
+
378
+ Full flow, hotfixes and failure handling: [CONTRIBUTING.md → Releasing](./CONTRIBUTING.md#releasing).
276
379
 
277
380
  ## License
278
381
 
@@ -2,9 +2,9 @@ import type { HTMLAttributes, ReactNode } from 'react';
2
2
  export interface AuthMessageProps extends HTMLAttributes<HTMLDivElement> {
3
3
  children?: ReactNode;
4
4
  }
5
- export declare function AuthError({ children, className, ...props }: AuthMessageProps): import("react/jsx-runtime").JSX.Element | null;
6
- export declare function AuthNotice({ children, className, ...props }: AuthMessageProps): import("react/jsx-runtime").JSX.Element | null;
5
+ export declare function AuthError({ children, className, ...props }: AuthMessageProps): import("react").JSX.Element | null;
6
+ export declare function AuthNotice({ children, className, ...props }: AuthMessageProps): import("react").JSX.Element | null;
7
7
  export interface AuthOneTapSlotProps extends HTMLAttributes<HTMLDivElement> {
8
8
  children?: ReactNode;
9
9
  }
10
- export declare function AuthOneTapSlot({ children, className, ...props }: AuthOneTapSlotProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function AuthOneTapSlot({ children, className, ...props }: AuthOneTapSlotProps): import("react").JSX.Element;
@@ -11,4 +11,4 @@ export interface AuthProviderButtonProps extends Omit<ButtonHTMLAttributes<HTMLB
11
11
  lastUsedLabel?: ReactNode;
12
12
  render?: RenderElement<ButtonHTMLAttributes<HTMLButtonElement>>;
13
13
  }
14
- export declare function AuthProviderButton({ provider, label, icon, loading, loadingLabel, lastUsed, lastUsedLabel, render, disabled, className, type, ...props }: AuthProviderButtonProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
14
+ export declare function AuthProviderButton({ provider, label, icon, loading, loadingLabel, lastUsed, lastUsedLabel, render, disabled, className, type, ...props }: AuthProviderButtonProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react").JSX.Element | null | undefined;
@@ -3,4 +3,4 @@ export interface AuthProviderListProps extends HTMLAttributes<HTMLUListElement>
3
3
  children: ReactNode;
4
4
  label?: string;
5
5
  }
6
- export declare function AuthProviderList({ children, className, label, ...props }: AuthProviderListProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function AuthProviderList({ children, className, label, ...props }: AuthProviderListProps): import("react").JSX.Element;
@@ -23,7 +23,7 @@ export interface BetterAuthProviderButtonProps extends Omit<AuthProviderButtonPr
23
23
  onError?: (error: unknown) => void;
24
24
  onSuccess?: (result: unknown) => void;
25
25
  }
26
- export declare function BetterAuthProviderButton({ authClient, provider, callbackURL, errorCallbackURL, onPendingChange, onError, onSuccess, loading, ...props }: BetterAuthProviderButtonProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare function BetterAuthProviderButton({ authClient, provider, callbackURL, errorCallbackURL, onPendingChange, onError, onSuccess, loading, ...props }: BetterAuthProviderButtonProps): import("react").JSX.Element;
27
27
  export declare function useBetterAuthLastLoginMethod(authClient: BetterAuthClientLike): string | null;
28
28
  export interface BetterAuthOneTapProps {
29
29
  authClient: BetterAuthClientLike;
@@ -34,7 +34,7 @@ export interface BetterAuthOneTapProps {
34
34
  }
35
35
  export declare function BetterAuthOneTap({ authClient, enabled, callbackURL, onError, onSuccess, }: BetterAuthOneTapProps): null;
36
36
  export declare function createBetterAuthAdapter(authClient: BetterAuthClientLike): {
37
- BetterAuthProviderButton: (props: Omit<BetterAuthProviderButtonProps, "authClient">) => import("react/jsx-runtime").JSX.Element;
38
- BetterAuthOneTap: (props: Omit<BetterAuthOneTapProps, "authClient">) => import("react/jsx-runtime").JSX.Element;
37
+ BetterAuthProviderButton: (props: Omit<BetterAuthProviderButtonProps, "authClient">) => import("react").JSX.Element;
38
+ BetterAuthOneTap: (props: Omit<BetterAuthOneTapProps, "authClient">) => import("react").JSX.Element;
39
39
  useBetterAuthLastLoginMethod: () => string | null;
40
40
  };
@@ -4,4 +4,4 @@ export interface MedalSocialMarkProps extends SVGProps<SVGSVGElement> {
4
4
  backgroundColor?: string;
5
5
  markColor?: string;
6
6
  }
7
- export declare function MedalSocialMark({ title, backgroundColor, markColor, role, focusable, 'aria-hidden': ariaHidden, ...props }: MedalSocialMarkProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function MedalSocialMark({ title, backgroundColor, markColor, role, focusable, 'aria-hidden': ariaHidden, ...props }: MedalSocialMarkProps): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { type CalendarToolbarProps } from './types.js';
2
- export declare function CalendarToolbar({ date, view, onPrev, onNext, onToday, onViewChange, periodLabel, showViewSwitcher, locale, labels: labelOverrides, className, }: CalendarToolbarProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function CalendarToolbar({ date, view, onPrev, onNext, onToday, onViewChange, periodLabel, showViewSwitcher, locale, labels: labelOverrides, className, }: CalendarToolbarProps): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { type CalendarProps } from './types.js';
2
- export declare function Calendar({ view, date, events, onDateChange, onViewChange, onEventClick, onSlotClick, weekStartsOn, locale, labels: labelOverrides, className, renderEvent, }: CalendarProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function Calendar({ view, date, events, onDateChange, onViewChange, onEventClick, onSlotClick, weekStartsOn, locale, labels: labelOverrides, className, renderEvent, }: CalendarProps): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { type DayViewProps } from './types.js';
2
- export declare function DayView({ date, events, onEventClick, onSlotClick, locale, labels: labelOverrides, className, renderEvent, }: DayViewProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function DayView({ date, events, onEventClick, onSlotClick, locale, labels: labelOverrides, className, renderEvent, }: DayViewProps): import("react").JSX.Element;
@@ -10,6 +10,6 @@ interface DayCellProps {
10
10
  labels: CalendarLabels;
11
11
  renderEvent?: (event: CalendarEvent) => ReactNode;
12
12
  }
13
- declare function DayCellBase({ date, currentMonth, events, onCellClick, onEventClick, onMoreClick, labels, renderEvent, }: DayCellProps): import("react/jsx-runtime").JSX.Element;
13
+ declare function DayCellBase({ date, currentMonth, events, onCellClick, onEventClick, onMoreClick, labels, renderEvent, }: DayCellProps): import("react").JSX.Element;
14
14
  export declare const DayCell: import("react").MemoExoticComponent<typeof DayCellBase>;
15
15
  export {};
@@ -9,5 +9,5 @@ interface EventPillProps {
9
9
  * Default compact event pill used inside calendar cells/slots when the
10
10
  * consumer does not pass a custom `renderEvent` callback.
11
11
  */
12
- export declare function EventPill({ event, onClick, variant, className }: EventPillProps): import("react/jsx-runtime").JSX.Element;
12
+ export declare function EventPill({ event, onClick, variant, className }: EventPillProps): import("react").JSX.Element;
13
13
  export {};
@@ -12,6 +12,6 @@ interface TimeSlotProps {
12
12
  renderEvent?: (event: CalendarEvent) => ReactNode;
13
13
  variant?: 'week' | 'day';
14
14
  }
15
- declare function TimeSlotBase({ date, hour, events, onSlotClick, onEventClick, renderEvent, variant, }: TimeSlotProps): import("react/jsx-runtime").JSX.Element;
15
+ declare function TimeSlotBase({ date, hour, events, onSlotClick, onEventClick, renderEvent, variant, }: TimeSlotProps): import("react").JSX.Element;
16
16
  export declare const TimeSlot: import("react").MemoExoticComponent<typeof TimeSlotBase>;
17
17
  export {};
@@ -1,2 +1,2 @@
1
1
  import { type MonthViewProps } from './types.js';
2
- export declare function MonthView({ date, events, onEventClick, onDateClick, onSlotClick, weekStartsOn, locale, labels: labelOverrides, className, renderEvent, }: MonthViewProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function MonthView({ date, events, onEventClick, onDateClick, onSlotClick, weekStartsOn, locale, labels: labelOverrides, className, renderEvent, }: MonthViewProps): import("react").JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { type WeekViewProps } from './types.js';
2
- export declare function WeekView({ date, events, onEventClick, onSlotClick, onDateClick, weekStartsOn, locale, labels: labelOverrides, className, renderEvent, }: WeekViewProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function WeekView({ date, events, onEventClick, onSlotClick, onDateClick, weekStartsOn, locale, labels: labelOverrides, className, renderEvent, }: WeekViewProps): import("react").JSX.Element;
@@ -4,4 +4,4 @@ export interface LatencyBadgeProps {
4
4
  ms: number;
5
5
  className?: string;
6
6
  }
7
- export declare function LatencyBadge({ kind, ms, className }: LatencyBadgeProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function LatencyBadge({ kind, ms, className }: LatencyBadgeProps): import("react").JSX.Element;
@@ -5,4 +5,4 @@ export interface LatencyBreakdownProps {
5
5
  showLegend?: boolean;
6
6
  className?: string;
7
7
  }
8
- export declare function LatencyBreakdown({ sttMs, claudeMs, ttsMs, showLegend, className, }: LatencyBreakdownProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function LatencyBreakdown({ sttMs, claudeMs, ttsMs, showLegend, className, }: LatencyBreakdownProps): import("react").JSX.Element;
@@ -3,4 +3,4 @@ export interface ToolCallBlockProps {
3
3
  call: ToolCall;
4
4
  className?: string;
5
5
  }
6
- export declare function ToolCallBlock({ call, className }: ToolCallBlockProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function ToolCallBlock({ call, className }: ToolCallBlockProps): import("react").JSX.Element;
@@ -7,4 +7,4 @@ export interface TranscriptStreamProps {
7
7
  onTurnPlay?: (turnId: string) => void;
8
8
  className?: string;
9
9
  }
10
- export declare function TranscriptStream({ turns, autoScroll, tz, onTurnPlay, className, }: TranscriptStreamProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function TranscriptStream({ turns, autoScroll, tz, onTurnPlay, className, }: TranscriptStreamProps): import("react").JSX.Element;
@@ -7,4 +7,4 @@ export interface TurnCardProps {
7
7
  onPlay?: (turnId: string) => void;
8
8
  className?: string;
9
9
  }
10
- export declare function TurnCard({ turn, startedAtRef, tz, onPlay, className }: TurnCardProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function TurnCard({ turn, startedAtRef, tz, onPlay, className }: TurnCardProps): import("react").JSX.Element;
@@ -3,6 +3,6 @@ interface CheckboxProps extends CheckboxPrimitive.Root.Props {
3
3
  /** Show indeterminate (mixed) state - a dash instead of checkmark */
4
4
  indeterminate?: boolean;
5
5
  }
6
- declare function Checkbox({ className, indeterminate, ...props }: CheckboxProps): import("react/jsx-runtime").JSX.Element;
6
+ declare function Checkbox({ className, indeterminate, ...props }: CheckboxProps): import("react").JSX.Element;
7
7
  export type { CheckboxProps };
8
8
  export { Checkbox };
@@ -1,5 +1,5 @@
1
1
  import { Collapsible as CollapsiblePrimitive } from '@base-ui/react/collapsible';
2
- declare function Collapsible({ ...props }: CollapsiblePrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
3
- declare function CollapsibleTrigger({ ...props }: CollapsiblePrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
4
- declare function CollapsibleContent({ ...props }: CollapsiblePrimitive.Panel.Props): import("react/jsx-runtime").JSX.Element;
2
+ declare function Collapsible({ ...props }: CollapsiblePrimitive.Root.Props): import("react").JSX.Element;
3
+ declare function CollapsibleTrigger({ ...props }: CollapsiblePrimitive.Trigger.Props): import("react").JSX.Element;
4
+ declare function CollapsibleContent({ ...props }: CollapsiblePrimitive.Panel.Props): import("react").JSX.Element;
5
5
  export { Collapsible, CollapsibleContent, CollapsibleTrigger };
@@ -1,19 +1,19 @@
1
1
  import { Command as CommandPrimitive } from 'cmdk';
2
2
  import type * as React from 'react';
3
3
  import { Dialog } from './dialog.js';
4
- declare function Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>): import("react/jsx-runtime").JSX.Element;
4
+ declare function Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>): React.JSX.Element;
5
5
  declare function CommandDialog({ title, description, children, className, showCloseButton, ...props }: Omit<React.ComponentProps<typeof Dialog>, 'children'> & {
6
6
  title?: string;
7
7
  description?: string;
8
8
  className?: string;
9
9
  showCloseButton?: boolean;
10
10
  children: React.ReactNode;
11
- }): import("react/jsx-runtime").JSX.Element;
12
- declare function CommandInput({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Input>): import("react/jsx-runtime").JSX.Element;
13
- declare function CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>): import("react/jsx-runtime").JSX.Element;
14
- declare function CommandEmpty({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Empty>): import("react/jsx-runtime").JSX.Element;
15
- declare function CommandGroup({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
16
- declare function CommandSeparator({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
17
- declare function CommandItem({ className, children, ...props }: React.ComponentProps<typeof CommandPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
18
- declare function CommandShortcut({ className, ...props }: React.ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
11
+ }): React.JSX.Element;
12
+ declare function CommandInput({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Input>): React.JSX.Element;
13
+ declare function CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>): React.JSX.Element;
14
+ declare function CommandEmpty({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Empty>): React.JSX.Element;
15
+ declare function CommandGroup({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Group>): React.JSX.Element;
16
+ declare function CommandSeparator({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Separator>): React.JSX.Element;
17
+ declare function CommandItem({ className, children, ...props }: React.ComponentProps<typeof CommandPrimitive.Item>): React.JSX.Element;
18
+ declare function CommandShortcut({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
19
19
  export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, };
@@ -8,19 +8,19 @@ interface DialogProps extends DialogPrimitive.Root.Props {
8
8
  */
9
9
  dismissible?: boolean;
10
10
  }
11
- declare function Dialog({ dismissible, ...props }: DialogProps): import("react/jsx-runtime").JSX.Element;
11
+ declare function Dialog({ dismissible, ...props }: DialogProps): React.JSX.Element;
12
12
  interface DialogTriggerProps extends Omit<React.ComponentPropsWithoutRef<typeof DialogPrimitive.Trigger>, 'render'> {
13
13
  render?: React.ReactElement;
14
14
  }
15
- declare function DialogTrigger({ render, children, ...props }: DialogTriggerProps): import("react/jsx-runtime").JSX.Element;
16
- declare function DialogPortal({ ...props }: DialogPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
17
- declare function DialogClose({ ...props }: DialogPrimitive.Close.Props): import("react/jsx-runtime").JSX.Element;
18
- declare function DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props): import("react/jsx-runtime").JSX.Element;
15
+ declare function DialogTrigger({ render, children, ...props }: DialogTriggerProps): React.JSX.Element;
16
+ declare function DialogPortal({ ...props }: DialogPrimitive.Portal.Props): React.JSX.Element;
17
+ declare function DialogClose({ ...props }: DialogPrimitive.Close.Props): React.JSX.Element;
18
+ declare function DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props): React.JSX.Element;
19
19
  declare function DialogContent({ className, children, showCloseButton, ...props }: DialogPrimitive.Popup.Props & {
20
20
  showCloseButton?: boolean;
21
- }): import("react/jsx-runtime").JSX.Element;
22
- declare function DialogHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
23
- declare function DialogFooter({ className, children, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
24
- declare function DialogTitle({ className, ...props }: DialogPrimitive.Title.Props): import("react/jsx-runtime").JSX.Element;
25
- declare function DialogDescription({ className, ...props }: DialogPrimitive.Description.Props): import("react/jsx-runtime").JSX.Element;
21
+ }): React.JSX.Element;
22
+ declare function DialogHeader({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
23
+ declare function DialogFooter({ className, children, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
24
+ declare function DialogTitle({ className, ...props }: DialogPrimitive.Title.Props): React.JSX.Element;
25
+ declare function DialogDescription({ className, ...props }: DialogPrimitive.Description.Props): React.JSX.Element;
26
26
  export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, };
@@ -1,16 +1,16 @@
1
1
  import type * as React from 'react';
2
2
  import { Drawer as DrawerPrimitive } from 'vaul';
3
- declare function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
- declare function DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
- declare function DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>): import("react/jsx-runtime").JSX.Element;
6
- declare function DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
7
- declare function DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>): import("react/jsx-runtime").JSX.Element;
3
+ declare function Drawer({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Root>): React.JSX.Element;
4
+ declare function DrawerTrigger({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Trigger>): React.JSX.Element;
5
+ declare function DrawerPortal({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Portal>): React.JSX.Element;
6
+ declare function DrawerClose({ ...props }: React.ComponentProps<typeof DrawerPrimitive.Close>): React.JSX.Element;
7
+ declare function DrawerOverlay({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Overlay>): React.JSX.Element;
8
8
  declare function DrawerContent({ className, children, showOverlay, overlayClassName, ...props }: React.ComponentProps<typeof DrawerPrimitive.Content> & {
9
9
  showOverlay?: boolean;
10
10
  overlayClassName?: string;
11
- }): import("react/jsx-runtime").JSX.Element;
12
- declare function DrawerHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
13
- declare function DrawerFooter({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
14
- declare function DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
15
- declare function DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
11
+ }): React.JSX.Element;
12
+ declare function DrawerHeader({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
13
+ declare function DrawerFooter({ className, ...props }: React.ComponentProps<'div'>): React.JSX.Element;
14
+ declare function DrawerTitle({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Title>): React.JSX.Element;
15
+ declare function DrawerDescription({ className, ...props }: React.ComponentProps<typeof DrawerPrimitive.Description>): React.JSX.Element;
16
16
  export { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, };
@@ -1,16 +1,16 @@
1
1
  import { Menu as MenuPrimitive } from '@base-ui/react/menu';
2
2
  import type * as React from 'react';
3
- declare function DropdownMenu({ ...props }: MenuPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
4
- declare function DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props): import("react/jsx-runtime").JSX.Element;
3
+ declare function DropdownMenu({ ...props }: MenuPrimitive.Root.Props): React.JSX.Element;
4
+ declare function DropdownMenuPortal({ ...props }: MenuPrimitive.Portal.Props): React.JSX.Element;
5
5
  interface DropdownMenuTriggerProps extends Omit<MenuPrimitive.Trigger.Props, 'render'> {
6
6
  render?: React.ReactElement | MenuPrimitive.Trigger.Props['render'];
7
7
  }
8
- declare function DropdownMenuTrigger({ render, children, ...props }: DropdownMenuTriggerProps): import("react/jsx-runtime").JSX.Element;
9
- declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, ...props }: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): import("react/jsx-runtime").JSX.Element;
10
- declare function DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props): import("react/jsx-runtime").JSX.Element;
8
+ declare function DropdownMenuTrigger({ render, children, ...props }: DropdownMenuTriggerProps): React.JSX.Element;
9
+ declare function DropdownMenuContent({ align, alignOffset, side, sideOffset, className, ...props }: MenuPrimitive.Popup.Props & Pick<MenuPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): React.JSX.Element;
10
+ declare function DropdownMenuGroup({ ...props }: MenuPrimitive.Group.Props): React.JSX.Element;
11
11
  declare function DropdownMenuLabel({ className, inset, ...props }: MenuPrimitive.GroupLabel.Props & {
12
12
  inset?: boolean;
13
- }): import("react/jsx-runtime").JSX.Element;
13
+ }): React.JSX.Element;
14
14
  interface MenuItemProps extends Omit<MenuPrimitive.Item.Props, 'render' | 'onClick' | 'onSelect'> {
15
15
  inset?: boolean;
16
16
  variant?: 'default' | 'destructive';
@@ -18,15 +18,15 @@ interface MenuItemProps extends Omit<MenuPrimitive.Item.Props, 'render' | 'onCli
18
18
  onClick?: MenuPrimitive.Item.Props['onClick'];
19
19
  onSelect?: MenuPrimitive.Item.Props['onClick'];
20
20
  }
21
- declare function DropdownMenuItem({ className, inset, variant, render, onClick, onSelect, children, ...props }: MenuItemProps): import("react/jsx-runtime").JSX.Element;
22
- declare function DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props): import("react/jsx-runtime").JSX.Element;
21
+ declare function DropdownMenuItem({ className, inset, variant, render, onClick, onSelect, children, ...props }: MenuItemProps): React.JSX.Element;
22
+ declare function DropdownMenuSub({ ...props }: MenuPrimitive.SubmenuRoot.Props): React.JSX.Element;
23
23
  declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: MenuPrimitive.SubmenuTrigger.Props & {
24
24
  inset?: boolean;
25
- }): import("react/jsx-runtime").JSX.Element;
26
- declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: React.ComponentProps<typeof DropdownMenuContent>): import("react/jsx-runtime").JSX.Element;
27
- declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: MenuPrimitive.CheckboxItem.Props): import("react/jsx-runtime").JSX.Element;
28
- declare function DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props): import("react/jsx-runtime").JSX.Element;
29
- declare function DropdownMenuRadioItem({ className, children, ...props }: MenuPrimitive.RadioItem.Props): import("react/jsx-runtime").JSX.Element;
30
- declare function DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props): import("react/jsx-runtime").JSX.Element;
31
- declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>): import("react/jsx-runtime").JSX.Element;
25
+ }): React.JSX.Element;
26
+ declare function DropdownMenuSubContent({ align, alignOffset, side, sideOffset, className, ...props }: React.ComponentProps<typeof DropdownMenuContent>): React.JSX.Element;
27
+ declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: MenuPrimitive.CheckboxItem.Props): React.JSX.Element;
28
+ declare function DropdownMenuRadioGroup({ ...props }: MenuPrimitive.RadioGroup.Props): React.JSX.Element;
29
+ declare function DropdownMenuRadioItem({ className, children, ...props }: MenuPrimitive.RadioItem.Props): React.JSX.Element;
30
+ declare function DropdownMenuSeparator({ className, ...props }: MenuPrimitive.Separator.Props): React.JSX.Element;
31
+ declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>): React.JSX.Element;
32
32
  export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type MenuItemProps, };
@@ -1,6 +1,6 @@
1
1
  import { Tooltip as TooltipPrimitive } from '@base-ui/react/tooltip';
2
- declare function TooltipProvider({ delay, ...props }: TooltipPrimitive.Provider.Props): import("react/jsx-runtime").JSX.Element;
3
- declare function Tooltip({ ...props }: TooltipPrimitive.Root.Props): import("react/jsx-runtime").JSX.Element;
4
- declare function TooltipTrigger({ ...props }: TooltipPrimitive.Trigger.Props): import("react/jsx-runtime").JSX.Element;
5
- declare function TooltipContent({ className, side, sideOffset, align, alignOffset, children, ...props }: TooltipPrimitive.Popup.Props & Pick<TooltipPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): import("react/jsx-runtime").JSX.Element;
2
+ declare function TooltipProvider({ delay, ...props }: TooltipPrimitive.Provider.Props): import("react").JSX.Element;
3
+ declare function Tooltip({ ...props }: TooltipPrimitive.Root.Props): import("react").JSX.Element;
4
+ declare function TooltipTrigger({ ...props }: TooltipPrimitive.Trigger.Props): import("react").JSX.Element;
5
+ declare function TooltipContent({ className, side, sideOffset, align, alignOffset, children, ...props }: TooltipPrimitive.Popup.Props & Pick<TooltipPrimitive.Positioner.Props, 'align' | 'alignOffset' | 'side' | 'sideOffset'>): import("react").JSX.Element;
6
6
  export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
@@ -3,5 +3,5 @@ interface BlockPaletteProps {
3
3
  onPick: (kind: BlockKind) => void;
4
4
  }
5
5
  /** Vertical button list of all available block kinds. */
6
- export declare function BlockPalette({ onPick }: BlockPaletteProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function BlockPalette({ onPick }: BlockPaletteProps): import("react").JSX.Element;
7
7
  export {};
@@ -2,4 +2,4 @@ import type { EmailBlock } from './types.js';
2
2
  /** Pure renderer — turns an EmailBlock into preview React. No selection chrome. */
3
3
  export declare function BlockRenderer({ block }: {
4
4
  block: EmailBlock;
5
- }): import("react/jsx-runtime").JSX.Element;
5
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { ButtonBlockProps } from '../types.js';
2
2
  export declare function ButtonBlock({ props }: {
3
3
  props: ButtonBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -2,4 +2,4 @@ import type { ColumnsBlockProps, EmailBlock } from '../types.js';
2
2
  export declare function ColumnsBlock({ props, columnChildren, }: {
3
3
  props: ColumnsBlockProps;
4
4
  columnChildren?: EmailBlock[][];
5
- }): import("react/jsx-runtime").JSX.Element;
5
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { DividerBlockProps } from '../types.js';
2
2
  export declare function DividerBlock({ props }: {
3
3
  props: DividerBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { FooterBlockProps } from '../types.js';
2
2
  export declare function FooterBlock({ props }: {
3
3
  props: FooterBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { HeadingBlockProps } from '../types.js';
2
2
  export declare function HeadingBlock({ props }: {
3
3
  props: HeadingBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { ImageBlockProps } from '../types.js';
2
2
  export declare function ImageBlock({ props }: {
3
3
  props: ImageBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { SocialBlockProps } from '../types.js';
2
2
  export declare function SocialBlock({ props }: {
3
3
  props: SocialBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { SpacerBlockProps } from '../types.js';
2
2
  export declare function SpacerBlock({ props }: {
3
3
  props: SpacerBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import type { TextBlockProps } from '../types.js';
2
2
  export declare function TextBlock({ props }: {
3
3
  props: TextBlockProps;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): import("react").JSX.Element;
@@ -11,5 +11,5 @@ interface BuilderCanvasProps {
11
11
  /** Per-block floating bar; rendered near the selected block. */
12
12
  renderFloatingBar?: (block: EmailBlock) => ReactNode;
13
13
  }
14
- export declare function BuilderCanvas({ blocks, selectedBlockId, onSelectBlock, device, labels, emptyStateAction, renderFloatingBar, }: BuilderCanvasProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function BuilderCanvas({ blocks, selectedBlockId, onSelectBlock, device, labels, emptyStateAction, renderFloatingBar, }: BuilderCanvasProps): import("react").JSX.Element;
15
15
  export {};
@@ -5,5 +5,5 @@ interface BuilderHeaderProps {
5
5
  onExport: () => void;
6
6
  labels: EmailBuilderLabels;
7
7
  }
8
- export declare function BuilderHeader({ device, onDeviceChange, onExport, labels }: BuilderHeaderProps): import("react/jsx-runtime").JSX.Element;
8
+ export declare function BuilderHeader({ device, onDeviceChange, onExport, labels }: BuilderHeaderProps): import("react").JSX.Element;
9
9
  export {};
@@ -7,5 +7,5 @@ interface BuilderLeftTabsProps {
7
7
  envelopeContent: ReactNode;
8
8
  }
9
9
  /** Vertical tab strip + content panel for the left sidebar. */
10
- export declare function BuilderLeftTabs({ labels, blocksContent, designContent, envelopeContent, }: BuilderLeftTabsProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function BuilderLeftTabs({ labels, blocksContent, designContent, envelopeContent, }: BuilderLeftTabsProps): import("react").JSX.Element;
11
11
  export {};
@@ -1,3 +1,3 @@
1
1
  import { type EmailBuilderProps } from './types.js';
2
- export declare function EmailBuilder({ document, onDocumentChange, brand, renderMediaPicker, renderSavedBlocks, renderTextEditor, onExportHtml, labels: labelsProp, className, initialDevice, }: EmailBuilderProps): import("react/jsx-runtime").JSX.Element;
2
+ export declare function EmailBuilder({ document, onDocumentChange, brand, renderMediaPicker, renderSavedBlocks, renderTextEditor, onExportHtml, labels: labelsProp, className, initialDevice, }: EmailBuilderProps): import("react").JSX.Element;
3
3
  export { renderToEmailHtml } from './render-to-email-html.js';
@@ -3,5 +3,5 @@ interface EnvelopeCardProps {
3
3
  envelope: EmailEnvelope | undefined;
4
4
  onChange: (next: EmailEnvelope) => void;
5
5
  }
6
- export declare function EnvelopeCard({ envelope, onChange }: EnvelopeCardProps): import("react/jsx-runtime").JSX.Element;
6
+ export declare function EnvelopeCard({ envelope, onChange }: EnvelopeCardProps): import("react").JSX.Element;
7
7
  export {};
@@ -9,5 +9,5 @@ interface FloatingBarProps {
9
9
  onDelete: () => void;
10
10
  }
11
11
  /** Per-block floating action bar. Rendered next to the selected block. */
12
- export declare function FloatingBar({ labels, canMoveUp, canMoveDown, onMoveUp, onMoveDown, onDuplicate, onDelete, }: FloatingBarProps): import("react/jsx-runtime").JSX.Element;
12
+ export declare function FloatingBar({ labels, canMoveUp, canMoveDown, onMoveUp, onMoveDown, onDuplicate, onDelete, }: FloatingBarProps): import("react").JSX.Element;
13
13
  export {};
@@ -6,5 +6,5 @@ interface BuilderDndWrapperProps {
6
6
  children: ReactNode;
7
7
  }
8
8
  /** Wraps the canvas in a vertical-list sortable DndContext. */
9
- export declare function BuilderDndWrapper({ blockIds, onDragEnd, children }: BuilderDndWrapperProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function BuilderDndWrapper({ blockIds, onDragEnd, children }: BuilderDndWrapperProps): import("react").JSX.Element;
10
10
  export {};