@refraction-ui/react 0.18.3 → 0.19.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 (108) hide show
  1. package/dist/dist-IBD7CHHX.js +649 -0
  2. package/dist/dist-IBD7CHHX.js.map +1 -0
  3. package/dist/index.cjs +6830 -3824
  4. package/dist/index.cjs.map +1 -1
  5. package/dist/index.d.cts +5 -0
  6. package/dist/index.d.ts +5 -0
  7. package/dist/index.js +4866 -2612
  8. package/dist/index.js.map +1 -1
  9. package/dist/internal/ai/index.d.cts +111 -0
  10. package/dist/internal/ai/index.d.ts +111 -0
  11. package/dist/internal/analytics/index.d.cts +6 -0
  12. package/dist/internal/analytics/index.d.ts +6 -0
  13. package/dist/internal/calendar/index.d.cts +5 -3
  14. package/dist/internal/calendar/index.d.ts +5 -3
  15. package/dist/internal/call-controls/index.d.ts +1 -3
  16. package/dist/internal/charts/index.d.cts +95 -0
  17. package/dist/internal/charts/index.d.ts +95 -0
  18. package/dist/internal/command-input/index.d.cts +41 -0
  19. package/dist/internal/command-input/index.d.ts +41 -0
  20. package/dist/internal/conversation/index.d.cts +2 -0
  21. package/dist/internal/conversation/index.d.ts +2 -0
  22. package/dist/internal/date-picker/index.d.cts +2 -0
  23. package/dist/internal/date-picker/index.d.ts +2 -0
  24. package/dist/internal/device-frame/index.d.cts +1 -3
  25. package/dist/internal/device-frame/index.d.ts +1 -3
  26. package/dist/internal/diff-viewer/index.d.cts +118 -0
  27. package/dist/internal/diff-viewer/index.d.ts +118 -0
  28. package/dist/internal/emoji-picker/index.d.cts +1 -3
  29. package/dist/internal/emoji-picker/index.d.ts +1 -3
  30. package/dist/internal/file-tree/index.d.cts +125 -0
  31. package/dist/internal/file-tree/index.d.ts +125 -0
  32. package/dist/internal/footer/index.d.cts +2 -0
  33. package/dist/internal/footer/index.d.ts +2 -0
  34. package/dist/internal/logger/index.d.cts +4 -0
  35. package/dist/internal/logger/index.d.ts +4 -0
  36. package/dist/internal/presence-indicator/index.d.cts +1 -3
  37. package/dist/internal/presence-indicator/index.d.ts +1 -3
  38. package/dist/internal/react-ai/index.d.cts +59 -0
  39. package/dist/internal/react-ai/index.d.ts +59 -0
  40. package/dist/internal/react-app-shell/index.d.cts +7 -51
  41. package/dist/internal/react-app-shell/index.d.ts +7 -51
  42. package/dist/internal/react-avatar-group/index.d.cts +1 -21
  43. package/dist/internal/react-avatar-group/index.d.ts +1 -21
  44. package/dist/internal/react-calendar/index.d.cts +2 -27
  45. package/dist/internal/react-calendar/index.d.ts +2 -27
  46. package/dist/internal/react-charts/index.d.cts +118 -0
  47. package/dist/internal/react-charts/index.d.ts +118 -0
  48. package/dist/internal/react-command/index.d.cts +1 -1
  49. package/dist/internal/react-command/index.d.ts +1 -1
  50. package/dist/internal/react-command-input/index.d.cts +21 -0
  51. package/dist/internal/react-command-input/index.d.ts +21 -0
  52. package/dist/internal/react-conversation/index.d.cts +2 -6
  53. package/dist/internal/react-conversation/index.d.ts +2 -6
  54. package/dist/internal/react-cookie-consent/index.d.cts +1 -6
  55. package/dist/internal/react-cookie-consent/index.d.ts +1 -6
  56. package/dist/internal/react-device-frame/index.d.cts +1 -25
  57. package/dist/internal/react-device-frame/index.d.ts +1 -25
  58. package/dist/internal/react-diff-viewer/index.d.cts +45 -0
  59. package/dist/internal/react-diff-viewer/index.d.ts +45 -0
  60. package/dist/internal/react-dropdown-menu/index.d.cts +1 -1
  61. package/dist/internal/react-dropdown-menu/index.d.ts +1 -1
  62. package/dist/internal/react-emoji-picker/index.d.cts +1 -5
  63. package/dist/internal/react-emoji-picker/index.d.ts +1 -5
  64. package/dist/internal/react-file-tree/index.d.cts +30 -3
  65. package/dist/internal/react-file-tree/index.d.ts +30 -3
  66. package/dist/internal/react-file-upload/index.d.cts +1 -6
  67. package/dist/internal/react-file-upload/index.d.ts +1 -6
  68. package/dist/internal/react-inline-editor/index.d.cts +1 -6
  69. package/dist/internal/react-inline-editor/index.d.ts +1 -6
  70. package/dist/internal/react-keyboard-shortcut/index.d.cts +1 -1
  71. package/dist/internal/react-keyboard-shortcut/index.d.ts +1 -1
  72. package/dist/internal/react-language-selector/index.d.cts +2 -13
  73. package/dist/internal/react-language-selector/index.d.ts +2 -13
  74. package/dist/internal/react-location-selector/index.d.cts +12 -0
  75. package/dist/internal/react-location-selector/index.d.ts +12 -0
  76. package/dist/internal/react-pagination/index.d.ts +22 -1
  77. package/dist/internal/react-presence-indicator/index.d.cts +1 -21
  78. package/dist/internal/react-presence-indicator/index.d.ts +1 -21
  79. package/dist/internal/react-radio/index.d.ts +2 -17
  80. package/dist/internal/react-reaction-bar/index.d.cts +1 -21
  81. package/dist/internal/react-reaction-bar/index.d.ts +1 -21
  82. package/dist/internal/react-search-bar/index.d.cts +1 -12
  83. package/dist/internal/react-search-bar/index.d.ts +1 -12
  84. package/dist/internal/react-slider/index.d.cts +22 -1
  85. package/dist/internal/react-slider/index.d.ts +22 -1
  86. package/dist/internal/react-status-indicator/index.d.cts +1 -5
  87. package/dist/internal/react-status-indicator/index.d.ts +1 -5
  88. package/dist/internal/react-tabs/index.d.cts +2 -8
  89. package/dist/internal/react-tabs/index.d.ts +2 -8
  90. package/dist/internal/react-thread-view/index.d.cts +1 -21
  91. package/dist/internal/react-thread-view/index.d.ts +1 -21
  92. package/dist/internal/react-version-selector/index.d.cts +2 -12
  93. package/dist/internal/react-version-selector/index.d.ts +2 -12
  94. package/dist/internal/reaction-bar/index.d.cts +1 -3
  95. package/dist/internal/reaction-bar/index.d.ts +1 -3
  96. package/dist/internal/status-indicator/index.d.cts +1 -3
  97. package/dist/internal/status-indicator/index.d.ts +1 -3
  98. package/dist/internal/thread-view/index.d.cts +3 -5
  99. package/dist/internal/thread-view/index.d.ts +3 -5
  100. package/dist/internal/toast/index.d.cts +7 -1
  101. package/dist/internal/toast/index.d.ts +7 -1
  102. package/dist/internal/voice-pill/index.d.cts +2 -2
  103. package/dist/internal/voice-pill/index.d.ts +2 -2
  104. package/dist/theme.cjs +10 -10
  105. package/dist/theme.cjs.map +1 -1
  106. package/dist/theme.js +10 -10
  107. package/dist/theme.js.map +1 -1
  108. package/package.json +2 -1
@@ -0,0 +1,21 @@
1
+ import React, { HTMLAttributes } from 'react';
2
+ import { Trigger } from '../command-input/index.js';
3
+
4
+ interface CommandInputProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onChange'> {
5
+ value?: string;
6
+ onChange?: (value: string) => void;
7
+ triggers?: Trigger[];
8
+ renderPopover?: (props: {
9
+ isOpen: boolean;
10
+ trigger: string;
11
+ search: string;
12
+ close: () => void;
13
+ position: {
14
+ top: number;
15
+ left: number;
16
+ };
17
+ }) => React.ReactNode;
18
+ }
19
+ declare const CommandInput: React.ForwardRefExoticComponent<CommandInputProps & React.RefAttributes<HTMLDivElement>>;
20
+
21
+ export { CommandInput, type CommandInputProps };
@@ -70,9 +70,7 @@ interface ComposerProps {
70
70
  * Composer — rich message input: markdown formatting toolbar + Cmd/Ctrl shortcuts,
71
71
  * and `/` command, `@` mention, and `:` emoji autocomplete menus.
72
72
  */
73
- declare function Composer({ placeholder, busy, slashCommands, mentions, toolbar, emoji, attachments, error, onRetry, onSubmit, onStop, onSlashCommand, autoFocus, }: ComposerProps): React.DetailedReactHTMLElement<{
74
- className: string;
75
- }, HTMLElement>;
73
+ declare const Composer: React.ForwardRefExoticComponent<ComposerProps & React.RefAttributes<HTMLDivElement>>;
76
74
 
77
75
  interface ChatProps {
78
76
  conversation: UseConversationResult;
@@ -94,8 +92,6 @@ interface ChatProps {
94
92
  * bubble. Markdown/code/gifs, reactions, edit/delete, streaming, and a composer
95
93
  * with `/` commands, `@` mentions, `:` emoji, and a formatting toolbar.
96
94
  */
97
- declare function Chat({ conversation, showConversationList, showModeToggle, placeholder, currentUserId, emptyState, className, slashCommands, mentions, onSlashCommand, composerToolbar, }: ChatProps): React.DetailedReactHTMLElement<{
98
- className: string;
99
- }, HTMLElement>;
95
+ declare const Chat: React.ForwardRefExoticComponent<ChatProps & React.RefAttributes<HTMLDivElement>>;
100
96
 
101
97
  export { Chat, type ChatProps, Composer, type ComposerProps, type Mention, type SlashCommand, type UseConversationResult, useConversation };
@@ -70,9 +70,7 @@ interface ComposerProps {
70
70
  * Composer — rich message input: markdown formatting toolbar + Cmd/Ctrl shortcuts,
71
71
  * and `/` command, `@` mention, and `:` emoji autocomplete menus.
72
72
  */
73
- declare function Composer({ placeholder, busy, slashCommands, mentions, toolbar, emoji, attachments, error, onRetry, onSubmit, onStop, onSlashCommand, autoFocus, }: ComposerProps): React.DetailedReactHTMLElement<{
74
- className: string;
75
- }, HTMLElement>;
73
+ declare const Composer: React.ForwardRefExoticComponent<ComposerProps & React.RefAttributes<HTMLDivElement>>;
76
74
 
77
75
  interface ChatProps {
78
76
  conversation: UseConversationResult;
@@ -94,8 +92,6 @@ interface ChatProps {
94
92
  * bubble. Markdown/code/gifs, reactions, edit/delete, streaming, and a composer
95
93
  * with `/` commands, `@` mentions, `:` emoji, and a formatting toolbar.
96
94
  */
97
- declare function Chat({ conversation, showConversationList, showModeToggle, placeholder, currentUserId, emptyState, className, slashCommands, mentions, onSlashCommand, composerToolbar, }: ChatProps): React.DetailedReactHTMLElement<{
98
- className: string;
99
- }, HTMLElement>;
95
+ declare const Chat: React.ForwardRefExoticComponent<ChatProps & React.RefAttributes<HTMLDivElement>>;
100
96
 
101
97
  export { Chat, type ChatProps, Composer, type ComposerProps, type Mention, type SlashCommand, type UseConversationResult, useConversation };
@@ -35,11 +35,6 @@ interface CookieConsentProps {
35
35
  * CookieConsent — batteries-included consent banner over `useCookieConsent()`.
36
36
  * Renders nothing once the user has consented.
37
37
  */
38
- declare function CookieConsent({ consent, position, title, description, policyUrl, policyLabel, className, }: CookieConsentProps): React.DetailedReactHTMLElement<{
39
- className: string;
40
- role: "dialog";
41
- 'aria-label': string;
42
- 'aria-modal': false;
43
- }, HTMLElement> | null;
38
+ declare const CookieConsent: React.ForwardRefExoticComponent<CookieConsentProps & React.RefAttributes<HTMLDivElement>>;
44
39
 
45
40
  export { CookieConsent, type CookieConsentProps, type UseCookieConsentResult, useCookieConsent };
@@ -35,11 +35,6 @@ interface CookieConsentProps {
35
35
  * CookieConsent — batteries-included consent banner over `useCookieConsent()`.
36
36
  * Renders nothing once the user has consented.
37
37
  */
38
- declare function CookieConsent({ consent, position, title, description, policyUrl, policyLabel, className, }: CookieConsentProps): React.DetailedReactHTMLElement<{
39
- className: string;
40
- role: "dialog";
41
- 'aria-label': string;
42
- 'aria-modal': false;
43
- }, HTMLElement> | null;
38
+ declare const CookieConsent: React.ForwardRefExoticComponent<CookieConsentProps & React.RefAttributes<HTMLDivElement>>;
44
39
 
45
40
  export { CookieConsent, type CookieConsentProps, type UseCookieConsentResult, useCookieConsent };
@@ -8,30 +8,6 @@ interface DeviceFrameProps {
8
8
  className?: string;
9
9
  children?: React.ReactNode;
10
10
  }
11
- declare function DeviceFrame({ device, orientation, className, children, }: DeviceFrameProps): React.DetailedReactHTMLElement<{
12
- role?: string | undefined;
13
- tabIndex?: number | undefined;
14
- 'aria-label'?: string | undefined;
15
- 'aria-labelledby'?: string | undefined;
16
- 'aria-describedby'?: string | undefined;
17
- 'aria-controls'?: string | undefined;
18
- 'aria-expanded'?: boolean | undefined;
19
- 'aria-selected'?: boolean | undefined;
20
- 'aria-hidden'?: boolean | undefined;
21
- 'aria-disabled'?: boolean | undefined;
22
- 'aria-pressed'?: boolean | "mixed" | undefined;
23
- 'aria-checked'?: boolean | "mixed" | undefined;
24
- 'aria-current'?: boolean | "page" | "step" | "location" | "date" | "time" | undefined;
25
- 'aria-live'?: "off" | "assertive" | "polite" | undefined;
26
- 'aria-atomic'?: boolean | undefined;
27
- className: string;
28
- style: {
29
- width: string;
30
- height: string;
31
- };
32
- }, HTMLElement>;
33
- declare namespace DeviceFrame {
34
- var displayName: string;
35
- }
11
+ declare const DeviceFrame: React.ForwardRefExoticComponent<DeviceFrameProps & React.RefAttributes<HTMLDivElement>>;
36
12
 
37
13
  export { DeviceFrame, type DeviceFrameProps };
@@ -8,30 +8,6 @@ interface DeviceFrameProps {
8
8
  className?: string;
9
9
  children?: React.ReactNode;
10
10
  }
11
- declare function DeviceFrame({ device, orientation, className, children, }: DeviceFrameProps): React.DetailedReactHTMLElement<{
12
- role?: string | undefined;
13
- tabIndex?: number | undefined;
14
- 'aria-label'?: string | undefined;
15
- 'aria-labelledby'?: string | undefined;
16
- 'aria-describedby'?: string | undefined;
17
- 'aria-controls'?: string | undefined;
18
- 'aria-expanded'?: boolean | undefined;
19
- 'aria-selected'?: boolean | undefined;
20
- 'aria-hidden'?: boolean | undefined;
21
- 'aria-disabled'?: boolean | undefined;
22
- 'aria-pressed'?: boolean | "mixed" | undefined;
23
- 'aria-checked'?: boolean | "mixed" | undefined;
24
- 'aria-current'?: boolean | "page" | "step" | "location" | "date" | "time" | undefined;
25
- 'aria-live'?: "off" | "assertive" | "polite" | undefined;
26
- 'aria-atomic'?: boolean | undefined;
27
- className: string;
28
- style: {
29
- width: string;
30
- height: string;
31
- };
32
- }, HTMLElement>;
33
- declare namespace DeviceFrame {
34
- var displayName: string;
35
- }
11
+ declare const DeviceFrame: React.ForwardRefExoticComponent<DeviceFrameProps & React.RefAttributes<HTMLDivElement>>;
36
12
 
37
13
  export { DeviceFrame, type DeviceFrameProps };
@@ -0,0 +1,45 @@
1
+ import * as React from 'react';
2
+ import { DiffFile, DiffViewerTheme, DiffViewMode } from '../diff-viewer/index.cjs';
3
+ export { DiffFile, DiffFileStatus, DiffViewMode, DiffViewerAPI, DiffViewerState, DiffViewerTheme, createDiffViewer, diffViewerTokens, diffViewerVariants, sidebarItemVariants, sidebarVariants, statusBarVariants, tabBarVariants, tabVariants } from '../diff-viewer/index.cjs';
4
+
5
+ interface DiffViewerProps {
6
+ /** Files in this diff */
7
+ files: DiffFile[];
8
+ /** Original file content (left side) */
9
+ original?: string;
10
+ /** Modified file content (right side) */
11
+ modified?: string;
12
+ /** Language for syntax highlighting (auto-detected from file if omitted) */
13
+ language?: string;
14
+ /** Monaco theme name */
15
+ monacoTheme?: string;
16
+ /** Color theme */
17
+ theme?: DiffViewerTheme;
18
+ /** View mode */
19
+ viewMode?: DiffViewMode;
20
+ /** Whether to show the file sidebar */
21
+ showSidebar?: boolean;
22
+ /** Whether to show the tab bar */
23
+ showTabs?: boolean;
24
+ /** Whether to show the status bar */
25
+ showStatusBar?: boolean;
26
+ /** Sidebar width in pixels */
27
+ sidebarWidth?: number;
28
+ /** Active file index */
29
+ activeFileIndex?: number;
30
+ /** Called when the active file changes */
31
+ onFileSelect?: (index: number) => void;
32
+ /** Called when view mode changes */
33
+ onViewModeChange?: (mode: DiffViewMode) => void;
34
+ /** Title shown in the status bar */
35
+ statusBarTitle?: string;
36
+ /** Status text shown in the status bar */
37
+ statusBarStatus?: string;
38
+ /** Additional class name */
39
+ className?: string;
40
+ /** Monaco DiffEditor options override */
41
+ editorOptions?: Record<string, unknown>;
42
+ }
43
+ declare const DiffViewer: React.ForwardRefExoticComponent<DiffViewerProps & React.RefAttributes<HTMLDivElement>>;
44
+
45
+ export { DiffViewer, type DiffViewerProps };
@@ -0,0 +1,45 @@
1
+ import * as React from 'react';
2
+ import { DiffFile, DiffViewerTheme, DiffViewMode } from '../diff-viewer/index.js';
3
+ export { DiffFile, DiffFileStatus, DiffViewMode, DiffViewerAPI, DiffViewerState, DiffViewerTheme, createDiffViewer, diffViewerTokens, diffViewerVariants, sidebarItemVariants, sidebarVariants, statusBarVariants, tabBarVariants, tabVariants } from '../diff-viewer/index.js';
4
+
5
+ interface DiffViewerProps {
6
+ /** Files in this diff */
7
+ files: DiffFile[];
8
+ /** Original file content (left side) */
9
+ original?: string;
10
+ /** Modified file content (right side) */
11
+ modified?: string;
12
+ /** Language for syntax highlighting (auto-detected from file if omitted) */
13
+ language?: string;
14
+ /** Monaco theme name */
15
+ monacoTheme?: string;
16
+ /** Color theme */
17
+ theme?: DiffViewerTheme;
18
+ /** View mode */
19
+ viewMode?: DiffViewMode;
20
+ /** Whether to show the file sidebar */
21
+ showSidebar?: boolean;
22
+ /** Whether to show the tab bar */
23
+ showTabs?: boolean;
24
+ /** Whether to show the status bar */
25
+ showStatusBar?: boolean;
26
+ /** Sidebar width in pixels */
27
+ sidebarWidth?: number;
28
+ /** Active file index */
29
+ activeFileIndex?: number;
30
+ /** Called when the active file changes */
31
+ onFileSelect?: (index: number) => void;
32
+ /** Called when view mode changes */
33
+ onViewModeChange?: (mode: DiffViewMode) => void;
34
+ /** Title shown in the status bar */
35
+ statusBarTitle?: string;
36
+ /** Status text shown in the status bar */
37
+ statusBarStatus?: string;
38
+ /** Additional class name */
39
+ className?: string;
40
+ /** Monaco DiffEditor options override */
41
+ editorOptions?: Record<string, unknown>;
42
+ }
43
+ declare const DiffViewer: React.ForwardRefExoticComponent<DiffViewerProps & React.RefAttributes<HTMLDivElement>>;
44
+
45
+ export { DiffViewer, type DiffViewerProps };
@@ -27,7 +27,7 @@ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuT
27
27
  interface DropdownMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {
28
28
  }
29
29
  declare const DropdownMenuContent: React.ForwardRefExoticComponent<DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>>;
30
- interface DropdownMenuItemProps extends React.HTMLAttributes<HTMLDivElement> {
30
+ interface DropdownMenuItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
31
31
  disabled?: boolean;
32
32
  onSelect?: () => void;
33
33
  }
@@ -27,7 +27,7 @@ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuT
27
27
  interface DropdownMenuContentProps extends React.HTMLAttributes<HTMLDivElement> {
28
28
  }
29
29
  declare const DropdownMenuContent: React.ForwardRefExoticComponent<DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>>;
30
- interface DropdownMenuItemProps extends React.HTMLAttributes<HTMLDivElement> {
30
+ interface DropdownMenuItemProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
31
31
  disabled?: boolean;
32
32
  onSelect?: () => void;
33
33
  }
@@ -1,4 +1,3 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
1
  import * as React from 'react';
3
2
  import { EmojiEntry, StickerItem, StickerSet } from '../emoji-picker/index.cjs';
4
3
  export { CATEGORY_LABELS, EmojiPickerProps as CoreEmojiPickerProps, DEFAULT_TWEMOJI_BASE_URL, EMOJI_CATEGORIES, EMOJI_COUNT_TOTAL, EMOJI_DATA, EmojiCategory, EmojiEntry, EmojiPickerAPI, EmojiPickerState, SHORTCODE_ALIASES, STARTER_STICKER_SET, StickerItem, StickerKind, StickerSet, buildShortcodeMap, emojiPickerContainerStyles, emojiPickerEmojiButtonStyles, emojiPickerGridStyles, getAllEmojis, resolveShortcode, searchEmojis, twemojiAssetUrl, twemojiFilename } from '../emoji-picker/index.cjs';
@@ -49,9 +48,6 @@ interface EmojiPickerProps {
49
48
  /** Sticker render seam. Default: `defaultStickerRenderer`. */
50
49
  stickerRenderer?: StickerRenderer;
51
50
  }
52
- declare function EmojiPicker({ onSelect, onStickerSelect, recentEmojis: initialRecent, className, emojiRenderer, twemojiBaseUrl, stickerSets, stickerRenderer, }: EmojiPickerProps): react_jsx_runtime.JSX.Element;
53
- declare namespace EmojiPicker {
54
- var displayName: string;
55
- }
51
+ declare const EmojiPicker: React.ForwardRefExoticComponent<EmojiPickerProps & React.RefAttributes<HTMLDivElement>>;
56
52
 
57
53
  export { EmojiPicker, type EmojiPickerProps, type EmojiRenderer, type StickerRenderer, createTwemojiRenderer, defaultStickerRenderer, nativeEmojiRenderer, twemojiRenderer };
@@ -1,4 +1,3 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
1
  import * as React from 'react';
3
2
  import { EmojiEntry, StickerItem, StickerSet } from '../emoji-picker/index.js';
4
3
  export { CATEGORY_LABELS, EmojiPickerProps as CoreEmojiPickerProps, DEFAULT_TWEMOJI_BASE_URL, EMOJI_CATEGORIES, EMOJI_COUNT_TOTAL, EMOJI_DATA, EmojiCategory, EmojiEntry, EmojiPickerAPI, EmojiPickerState, SHORTCODE_ALIASES, STARTER_STICKER_SET, StickerItem, StickerKind, StickerSet, buildShortcodeMap, emojiPickerContainerStyles, emojiPickerEmojiButtonStyles, emojiPickerGridStyles, getAllEmojis, resolveShortcode, searchEmojis, twemojiAssetUrl, twemojiFilename } from '../emoji-picker/index.js';
@@ -49,9 +48,6 @@ interface EmojiPickerProps {
49
48
  /** Sticker render seam. Default: `defaultStickerRenderer`. */
50
49
  stickerRenderer?: StickerRenderer;
51
50
  }
52
- declare function EmojiPicker({ onSelect, onStickerSelect, recentEmojis: initialRecent, className, emojiRenderer, twemojiBaseUrl, stickerSets, stickerRenderer, }: EmojiPickerProps): react_jsx_runtime.JSX.Element;
53
- declare namespace EmojiPicker {
54
- var displayName: string;
55
- }
51
+ declare const EmojiPicker: React.ForwardRefExoticComponent<EmojiPickerProps & React.RefAttributes<HTMLDivElement>>;
56
52
 
57
53
  export { EmojiPicker, type EmojiPickerProps, type EmojiRenderer, type StickerRenderer, createTwemojiRenderer, defaultStickerRenderer, nativeEmojiRenderer, twemojiRenderer };
@@ -1,5 +1,32 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
+ import { FileTreeNode } from '../file-tree/index.cjs';
3
+ export { FileTreeNode } from '../file-tree/index.cjs';
2
4
 
3
- declare const FileTree: () => react_jsx_runtime.JSX.Element;
5
+ interface FileTreeProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
6
+ /** Root-level nodes of the tree. */
7
+ nodes?: FileTreeNode[];
8
+ /** Controlled expanded node ids. Pair with `onExpandedChange`. */
9
+ expandedIds?: string[];
10
+ /** Uncontrolled initial expanded node ids. */
11
+ defaultExpandedIds?: string[];
12
+ /** Controlled selected node id (`null` = none). Pair with `onSelectionChange`. */
13
+ selectedId?: string | null;
14
+ /** Uncontrolled initial selected node id. */
15
+ defaultSelectedId?: string | null;
16
+ /** Called whenever the expanded set changes. */
17
+ onExpandedChange?: (ids: string[]) => void;
18
+ /** Called whenever the selection changes. */
19
+ onSelectionChange?: (id: string | null) => void;
20
+ }
21
+ /**
22
+ * FileTree — a hierarchical file/folder tree view.
23
+ *
24
+ * Renders `role="tree"` with nested `role="group"`/`role="treeitem"` rows,
25
+ * expand/collapse, single selection, roving tabindex, and WAI-ARIA treeview
26
+ * keyboard navigation. All behavior comes from the headless
27
+ * `@refraction-ui/file-tree` core; supports controlled (`expandedIds` /
28
+ * `selectedId`) and uncontrolled usage.
29
+ */
30
+ declare const FileTree: React.ForwardRefExoticComponent<FileTreeProps & React.RefAttributes<HTMLDivElement>>;
4
31
 
5
- export { FileTree };
32
+ export { FileTree, type FileTreeProps };
@@ -1,5 +1,32 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
1
+ import * as React from 'react';
2
+ import { FileTreeNode } from '../file-tree/index.js';
3
+ export { FileTreeNode } from '../file-tree/index.js';
2
4
 
3
- declare const FileTree: () => react_jsx_runtime.JSX.Element;
5
+ interface FileTreeProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onSelect'> {
6
+ /** Root-level nodes of the tree. */
7
+ nodes?: FileTreeNode[];
8
+ /** Controlled expanded node ids. Pair with `onExpandedChange`. */
9
+ expandedIds?: string[];
10
+ /** Uncontrolled initial expanded node ids. */
11
+ defaultExpandedIds?: string[];
12
+ /** Controlled selected node id (`null` = none). Pair with `onSelectionChange`. */
13
+ selectedId?: string | null;
14
+ /** Uncontrolled initial selected node id. */
15
+ defaultSelectedId?: string | null;
16
+ /** Called whenever the expanded set changes. */
17
+ onExpandedChange?: (ids: string[]) => void;
18
+ /** Called whenever the selection changes. */
19
+ onSelectionChange?: (id: string | null) => void;
20
+ }
21
+ /**
22
+ * FileTree — a hierarchical file/folder tree view.
23
+ *
24
+ * Renders `role="tree"` with nested `role="group"`/`role="treeitem"` rows,
25
+ * expand/collapse, single selection, roving tabindex, and WAI-ARIA treeview
26
+ * keyboard navigation. All behavior comes from the headless
27
+ * `@refraction-ui/file-tree` core; supports controlled (`expandedIds` /
28
+ * `selectedId`) and uncontrolled usage.
29
+ */
30
+ declare const FileTree: React.ForwardRefExoticComponent<FileTreeProps & React.RefAttributes<HTMLDivElement>>;
4
31
 
5
- export { FileTree };
32
+ export { FileTree, type FileTreeProps };
@@ -12,11 +12,6 @@ interface FileUploadProps {
12
12
  className?: string;
13
13
  children?: React.ReactNode;
14
14
  }
15
- declare function FileUpload({ accept, maxSize, maxFiles, multiple, onFilesSelected, onError, className, children, }: FileUploadProps): React.DetailedReactHTMLElement<{
16
- className: string | undefined;
17
- }, HTMLElement>;
18
- declare namespace FileUpload {
19
- var displayName: string;
20
- }
15
+ declare const FileUpload: React.ForwardRefExoticComponent<FileUploadProps & React.RefAttributes<HTMLDivElement>>;
21
16
 
22
17
  export { FileUpload, type FileUploadProps };
@@ -12,11 +12,6 @@ interface FileUploadProps {
12
12
  className?: string;
13
13
  children?: React.ReactNode;
14
14
  }
15
- declare function FileUpload({ accept, maxSize, maxFiles, multiple, onFilesSelected, onError, className, children, }: FileUploadProps): React.DetailedReactHTMLElement<{
16
- className: string | undefined;
17
- }, HTMLElement>;
18
- declare namespace FileUpload {
19
- var displayName: string;
20
- }
15
+ declare const FileUpload: React.ForwardRefExoticComponent<FileUploadProps & React.RefAttributes<HTMLDivElement>>;
21
16
 
22
17
  export { FileUpload, type FileUploadProps };
@@ -7,11 +7,6 @@ interface InlineEditorProps {
7
7
  onCancel?: () => void;
8
8
  className?: string;
9
9
  }
10
- declare function InlineEditor({ value: initialValue, onSave, onCancel, className, }: InlineEditorProps): React.DetailedReactHTMLElement<{
11
- className: string;
12
- }, HTMLElement>;
13
- declare namespace InlineEditor {
14
- var displayName: string;
15
- }
10
+ declare const InlineEditor: React.ForwardRefExoticComponent<InlineEditorProps & React.RefAttributes<HTMLDivElement>>;
16
11
 
17
12
  export { InlineEditor, type InlineEditorProps };
@@ -7,11 +7,6 @@ interface InlineEditorProps {
7
7
  onCancel?: () => void;
8
8
  className?: string;
9
9
  }
10
- declare function InlineEditor({ value: initialValue, onSave, onCancel, className, }: InlineEditorProps): React.DetailedReactHTMLElement<{
11
- className: string;
12
- }, HTMLElement>;
13
- declare namespace InlineEditor {
14
- var displayName: string;
15
- }
10
+ declare const InlineEditor: React.ForwardRefExoticComponent<InlineEditorProps & React.RefAttributes<HTMLDivElement>>;
16
11
 
17
12
  export { InlineEditor, type InlineEditorProps };
@@ -21,7 +21,7 @@ interface ShortcutHintProps extends Omit<ShortcutBadgeProps, 'keys'> {
21
21
  shortcut?: string;
22
22
  action?: string;
23
23
  }
24
- declare function ShortcutHint({ shortcut, action, className, platform, ...props }: ShortcutHintProps): react_jsx_runtime.JSX.Element | null;
24
+ declare const ShortcutHint: React.ForwardRefExoticComponent<ShortcutHintProps & React.RefAttributes<HTMLDivElement>>;
25
25
  interface KeyboardShortcutProps {
26
26
  /** Key combination */
27
27
  keys: string[];
@@ -21,7 +21,7 @@ interface ShortcutHintProps extends Omit<ShortcutBadgeProps, 'keys'> {
21
21
  shortcut?: string;
22
22
  action?: string;
23
23
  }
24
- declare function ShortcutHint({ shortcut, action, className, platform, ...props }: ShortcutHintProps): react_jsx_runtime.JSX.Element | null;
24
+ declare const ShortcutHint: React.ForwardRefExoticComponent<ShortcutHintProps & React.RefAttributes<HTMLDivElement>>;
25
25
  interface KeyboardShortcutProps {
26
26
  /** Key combination */
27
27
  keys: string[];
@@ -1,15 +1,7 @@
1
1
  import * as React from 'react';
2
- import { LanguageOption, LanguageSelectorAPI } from '../language-selector/index.cjs';
2
+ import { LanguageOption } from '../language-selector/index.cjs';
3
3
  export { LanguageOption, optionVariants, selectorVariants } from '../language-selector/index.cjs';
4
4
 
5
- interface LanguageSelectorContextValue {
6
- api: LanguageSelectorAPI;
7
- isOpen: boolean;
8
- setOpen: (value: boolean) => void;
9
- toggle: (value: string) => void;
10
- options: LanguageOption[];
11
- multiple: boolean;
12
- }
13
5
  interface LanguageSelectorProps {
14
6
  value?: string | string[];
15
7
  onValueChange?: (value: string | string[]) => void;
@@ -18,9 +10,6 @@ interface LanguageSelectorProps {
18
10
  placeholder?: string;
19
11
  className?: string;
20
12
  }
21
- declare function LanguageSelector({ value: controlledValue, onValueChange, options, multiple, placeholder, className, }: LanguageSelectorProps): React.FunctionComponentElement<React.ProviderProps<LanguageSelectorContextValue | null>>;
22
- declare namespace LanguageSelector {
23
- var displayName: string;
24
- }
13
+ declare const LanguageSelector: React.ForwardRefExoticComponent<LanguageSelectorProps & React.RefAttributes<HTMLDivElement>>;
25
14
 
26
15
  export { LanguageSelector, type LanguageSelectorProps };
@@ -1,15 +1,7 @@
1
1
  import * as React from 'react';
2
- import { LanguageOption, LanguageSelectorAPI } from '../language-selector/index.js';
2
+ import { LanguageOption } from '../language-selector/index.js';
3
3
  export { LanguageOption, optionVariants, selectorVariants } from '../language-selector/index.js';
4
4
 
5
- interface LanguageSelectorContextValue {
6
- api: LanguageSelectorAPI;
7
- isOpen: boolean;
8
- setOpen: (value: boolean) => void;
9
- toggle: (value: string) => void;
10
- options: LanguageOption[];
11
- multiple: boolean;
12
- }
13
5
  interface LanguageSelectorProps {
14
6
  value?: string | string[];
15
7
  onValueChange?: (value: string | string[]) => void;
@@ -18,9 +10,6 @@ interface LanguageSelectorProps {
18
10
  placeholder?: string;
19
11
  className?: string;
20
12
  }
21
- declare function LanguageSelector({ value: controlledValue, onValueChange, options, multiple, placeholder, className, }: LanguageSelectorProps): React.FunctionComponentElement<React.ProviderProps<LanguageSelectorContextValue | null>>;
22
- declare namespace LanguageSelector {
23
- var displayName: string;
24
- }
13
+ declare const LanguageSelector: React.ForwardRefExoticComponent<LanguageSelectorProps & React.RefAttributes<HTMLDivElement>>;
25
14
 
26
15
  export { LanguageSelector, type LanguageSelectorProps };
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+
3
+ interface LocationSelectorProps {
4
+ defaultCountry?: string;
5
+ defaultLanguage?: string;
6
+ onCountryChange?: (country: string) => void;
7
+ onLanguageChange?: (language: string) => void;
8
+ className?: string;
9
+ }
10
+ declare const LocationSelector: React.ForwardRefExoticComponent<LocationSelectorProps & React.RefAttributes<HTMLDivElement>>;
11
+
12
+ export { LocationSelector, type LocationSelectorProps };
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+
3
+ interface LocationSelectorProps {
4
+ defaultCountry?: string;
5
+ defaultLanguage?: string;
6
+ onCountryChange?: (country: string) => void;
7
+ onLanguageChange?: (language: string) => void;
8
+ className?: string;
9
+ }
10
+ declare const LocationSelector: React.ForwardRefExoticComponent<LocationSelectorProps & React.RefAttributes<HTMLDivElement>>;
11
+
12
+ export { LocationSelector, type LocationSelectorProps };
@@ -1,7 +1,28 @@
1
1
  import * as React from 'react';
2
2
 
3
- interface PaginationProps extends React.HTMLAttributes<HTMLDivElement> {
3
+ interface PaginationProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {
4
+ /** Current page, 1-based (controlled). Pair with `onPageChange`. */
5
+ page?: number;
6
+ /** Initial page for uncontrolled usage (default 1). */
7
+ defaultPage?: number;
8
+ /** Total number of pages (default 1). */
9
+ totalPages?: number;
10
+ /** Pages shown on each side of the current page (default 1). */
11
+ siblingCount?: number;
12
+ /** Called with the target page when a control is activated. */
13
+ onPageChange?: (page: number) => void;
14
+ /** Disables every control. */
15
+ disabled?: boolean;
4
16
  }
17
+ /**
18
+ * Pagination — page navigation with a windowed page range and ellipses.
19
+ *
20
+ * Renders `role="navigation"` with previous/next controls and numbered page
21
+ * buttons (`aria-current="page"` on the current page). Range computation,
22
+ * clamping, edge semantics, and ARIA come from the headless
23
+ * `@refraction-ui/pagination` core. Pass `children` to render fully custom
24
+ * controls instead of the generated ones.
25
+ */
5
26
  declare const Pagination: React.ForwardRefExoticComponent<PaginationProps & React.RefAttributes<HTMLDivElement>>;
6
27
 
7
28
  export { Pagination, type PaginationProps };
@@ -9,26 +9,6 @@ interface PresenceIndicatorProps {
9
9
  size?: 'sm' | 'md' | 'lg';
10
10
  className?: string;
11
11
  }
12
- declare function PresenceIndicator({ status, showLabel, label, size, className, }: PresenceIndicatorProps): React.DetailedReactHTMLElement<{
13
- className: string;
14
- role?: string | undefined;
15
- tabIndex?: number | undefined;
16
- 'aria-label'?: string | undefined;
17
- 'aria-labelledby'?: string | undefined;
18
- 'aria-describedby'?: string | undefined;
19
- 'aria-controls'?: string | undefined;
20
- 'aria-expanded'?: boolean | undefined;
21
- 'aria-selected'?: boolean | undefined;
22
- 'aria-hidden'?: boolean | undefined;
23
- 'aria-disabled'?: boolean | undefined;
24
- 'aria-pressed'?: boolean | "mixed" | undefined;
25
- 'aria-checked'?: boolean | "mixed" | undefined;
26
- 'aria-current'?: boolean | "page" | "step" | "location" | "date" | "time" | undefined;
27
- 'aria-live'?: "off" | "assertive" | "polite" | undefined;
28
- 'aria-atomic'?: boolean | undefined;
29
- }, HTMLElement>;
30
- declare namespace PresenceIndicator {
31
- var displayName: string;
32
- }
12
+ declare const PresenceIndicator: React.ForwardRefExoticComponent<PresenceIndicatorProps & React.RefAttributes<HTMLSpanElement>>;
33
13
 
34
14
  export { PresenceIndicator, type PresenceIndicatorProps };
@@ -9,26 +9,6 @@ interface PresenceIndicatorProps {
9
9
  size?: 'sm' | 'md' | 'lg';
10
10
  className?: string;
11
11
  }
12
- declare function PresenceIndicator({ status, showLabel, label, size, className, }: PresenceIndicatorProps): React.DetailedReactHTMLElement<{
13
- className: string;
14
- role?: string | undefined;
15
- tabIndex?: number | undefined;
16
- 'aria-label'?: string | undefined;
17
- 'aria-labelledby'?: string | undefined;
18
- 'aria-describedby'?: string | undefined;
19
- 'aria-controls'?: string | undefined;
20
- 'aria-expanded'?: boolean | undefined;
21
- 'aria-selected'?: boolean | undefined;
22
- 'aria-hidden'?: boolean | undefined;
23
- 'aria-disabled'?: boolean | undefined;
24
- 'aria-pressed'?: boolean | "mixed" | undefined;
25
- 'aria-checked'?: boolean | "mixed" | undefined;
26
- 'aria-current'?: boolean | "page" | "step" | "location" | "date" | "time" | undefined;
27
- 'aria-live'?: "off" | "assertive" | "polite" | undefined;
28
- 'aria-atomic'?: boolean | undefined;
29
- }, HTMLElement>;
30
- declare namespace PresenceIndicator {
31
- var displayName: string;
32
- }
12
+ declare const PresenceIndicator: React.ForwardRefExoticComponent<PresenceIndicatorProps & React.RefAttributes<HTMLSpanElement>>;
33
13
 
34
14
  export { PresenceIndicator, type PresenceIndicatorProps };