@refraction-ui/react 0.18.4 → 0.19.1

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 (94) hide show
  1. package/dist/index.cjs +7147 -5367
  2. package/dist/index.cjs.map +1 -1
  3. package/dist/index.js +3413 -2754
  4. package/dist/index.js.map +1 -1
  5. package/dist/internal/analytics/index.d.cts +6 -0
  6. package/dist/internal/analytics/index.d.ts +6 -0
  7. package/dist/internal/calendar/index.d.cts +5 -3
  8. package/dist/internal/calendar/index.d.ts +5 -3
  9. package/dist/internal/call-controls/index.d.ts +1 -3
  10. package/dist/internal/command-input/index.d.cts +10 -2
  11. package/dist/internal/command-input/index.d.ts +10 -2
  12. package/dist/internal/conversation/index.d.cts +2 -0
  13. package/dist/internal/conversation/index.d.ts +2 -0
  14. package/dist/internal/date-picker/index.d.cts +2 -0
  15. package/dist/internal/date-picker/index.d.ts +2 -0
  16. package/dist/internal/device-frame/index.d.cts +1 -3
  17. package/dist/internal/device-frame/index.d.ts +1 -3
  18. package/dist/internal/emoji-picker/index.d.cts +1 -3
  19. package/dist/internal/emoji-picker/index.d.ts +1 -3
  20. package/dist/internal/file-tree/index.d.cts +125 -0
  21. package/dist/internal/file-tree/index.d.ts +125 -0
  22. package/dist/internal/footer/index.d.cts +2 -0
  23. package/dist/internal/footer/index.d.ts +2 -0
  24. package/dist/internal/logger/index.d.cts +4 -0
  25. package/dist/internal/logger/index.d.ts +4 -0
  26. package/dist/internal/presence-indicator/index.d.cts +1 -3
  27. package/dist/internal/presence-indicator/index.d.ts +1 -3
  28. package/dist/internal/react-app-shell/index.d.cts +7 -51
  29. package/dist/internal/react-app-shell/index.d.ts +7 -51
  30. package/dist/internal/react-avatar-group/index.d.cts +1 -21
  31. package/dist/internal/react-avatar-group/index.d.ts +1 -21
  32. package/dist/internal/react-calendar/index.d.cts +2 -27
  33. package/dist/internal/react-calendar/index.d.ts +2 -27
  34. package/dist/internal/react-charts/index.d.cts +20 -10
  35. package/dist/internal/react-charts/index.d.ts +20 -10
  36. package/dist/internal/react-command/index.d.cts +1 -1
  37. package/dist/internal/react-command/index.d.ts +1 -1
  38. package/dist/internal/react-conversation/index.d.cts +2 -6
  39. package/dist/internal/react-conversation/index.d.ts +2 -6
  40. package/dist/internal/react-cookie-consent/index.d.cts +1 -6
  41. package/dist/internal/react-cookie-consent/index.d.ts +1 -6
  42. package/dist/internal/react-date-picker/index.d.cts +1 -0
  43. package/dist/internal/react-date-picker/index.d.ts +1 -0
  44. package/dist/internal/react-device-frame/index.d.cts +1 -25
  45. package/dist/internal/react-device-frame/index.d.ts +1 -25
  46. package/dist/internal/react-dropdown-menu/index.d.cts +1 -1
  47. package/dist/internal/react-dropdown-menu/index.d.ts +1 -1
  48. package/dist/internal/react-emoji-picker/index.d.cts +1 -5
  49. package/dist/internal/react-emoji-picker/index.d.ts +1 -5
  50. package/dist/internal/react-file-tree/index.d.cts +30 -3
  51. package/dist/internal/react-file-tree/index.d.ts +30 -3
  52. package/dist/internal/react-file-upload/index.d.cts +1 -6
  53. package/dist/internal/react-file-upload/index.d.ts +1 -6
  54. package/dist/internal/react-inline-editor/index.d.cts +1 -6
  55. package/dist/internal/react-inline-editor/index.d.ts +1 -6
  56. package/dist/internal/react-keyboard-shortcut/index.d.cts +1 -1
  57. package/dist/internal/react-keyboard-shortcut/index.d.ts +1 -1
  58. package/dist/internal/react-language-selector/index.d.cts +2 -13
  59. package/dist/internal/react-language-selector/index.d.ts +2 -13
  60. package/dist/internal/react-location-selector/index.d.cts +1 -3
  61. package/dist/internal/react-location-selector/index.d.ts +1 -3
  62. package/dist/internal/react-pagination/index.d.ts +22 -1
  63. package/dist/internal/react-presence-indicator/index.d.cts +1 -21
  64. package/dist/internal/react-presence-indicator/index.d.ts +1 -21
  65. package/dist/internal/react-radio/index.d.ts +2 -17
  66. package/dist/internal/react-reaction-bar/index.d.cts +1 -21
  67. package/dist/internal/react-reaction-bar/index.d.ts +1 -21
  68. package/dist/internal/react-search-bar/index.d.cts +1 -12
  69. package/dist/internal/react-search-bar/index.d.ts +1 -12
  70. package/dist/internal/react-slider/index.d.cts +22 -1
  71. package/dist/internal/react-slider/index.d.ts +22 -1
  72. package/dist/internal/react-status-indicator/index.d.cts +1 -5
  73. package/dist/internal/react-status-indicator/index.d.ts +1 -5
  74. package/dist/internal/react-tabs/index.d.cts +2 -8
  75. package/dist/internal/react-tabs/index.d.ts +2 -8
  76. package/dist/internal/react-thread-view/index.d.cts +1 -21
  77. package/dist/internal/react-thread-view/index.d.ts +1 -21
  78. package/dist/internal/react-version-selector/index.d.cts +2 -12
  79. package/dist/internal/react-version-selector/index.d.ts +2 -12
  80. package/dist/internal/reaction-bar/index.d.cts +1 -3
  81. package/dist/internal/reaction-bar/index.d.ts +1 -3
  82. package/dist/internal/status-indicator/index.d.cts +1 -3
  83. package/dist/internal/status-indicator/index.d.ts +1 -3
  84. package/dist/internal/thread-view/index.d.cts +3 -5
  85. package/dist/internal/thread-view/index.d.ts +3 -5
  86. package/dist/internal/toast/index.d.cts +7 -1
  87. package/dist/internal/toast/index.d.ts +7 -1
  88. package/dist/internal/voice-pill/index.d.cts +2 -2
  89. package/dist/internal/voice-pill/index.d.ts +2 -2
  90. package/dist/module-X3HTTRQK.js +6438 -0
  91. package/dist/module-X3HTTRQK.js.map +1 -0
  92. package/package.json +1 -1
  93. package/dist/module-XHEQRMQB.js +0 -5320
  94. package/dist/module-XHEQRMQB.js.map +0 -1
@@ -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 };
@@ -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 };
@@ -7,8 +7,6 @@ interface LocationSelectorProps {
7
7
  onLanguageChange?: (language: string) => void;
8
8
  className?: string;
9
9
  }
10
- declare function LocationSelector({ defaultCountry, defaultLanguage, onCountryChange, onLanguageChange, className, }: LocationSelectorProps): React.DetailedReactHTMLElement<{
11
- className: string;
12
- }, HTMLElement>;
10
+ declare const LocationSelector: React.ForwardRefExoticComponent<LocationSelectorProps & React.RefAttributes<HTMLDivElement>>;
13
11
 
14
12
  export { LocationSelector, type LocationSelectorProps };
@@ -7,8 +7,6 @@ interface LocationSelectorProps {
7
7
  onLanguageChange?: (language: string) => void;
8
8
  className?: string;
9
9
  }
10
- declare function LocationSelector({ defaultCountry, defaultLanguage, onCountryChange, onLanguageChange, className, }: LocationSelectorProps): React.DetailedReactHTMLElement<{
11
- className: string;
12
- }, HTMLElement>;
10
+ declare const LocationSelector: React.ForwardRefExoticComponent<LocationSelectorProps & React.RefAttributes<HTMLDivElement>>;
13
11
 
14
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 };
@@ -2,32 +2,17 @@ import * as React from 'react';
2
2
  import { RadioGroupProps as RadioGroupProps$1 } from '../radio/index.js';
3
3
  export { RadioOption, radioCircleVariants, radioGroupVariants, radioItemVariants } from '../radio/index.js';
4
4
 
5
- interface RadioContextValue {
6
- value: string | undefined;
7
- onValueChange: (value: string) => void;
8
- name?: string;
9
- disabled: boolean;
10
- }
11
5
  interface RadioGroupProps extends RadioGroupProps$1 {
12
6
  children: React.ReactNode;
13
7
  className?: string;
14
8
  }
15
- declare function RadioGroup({ children, className, value: controlledValue, defaultValue, onValueChange, name, disabled, orientation, }: RadioGroupProps): React.FunctionComponentElement<React.ProviderProps<RadioContextValue | null>>;
16
- declare namespace RadioGroup {
17
- var displayName: string;
18
- }
9
+ declare const RadioGroup: React.ForwardRefExoticComponent<RadioGroupProps & React.RefAttributes<HTMLDivElement>>;
19
10
  interface RadioItemProps {
20
11
  value: string;
21
12
  children?: React.ReactNode;
22
13
  disabled?: boolean;
23
14
  className?: string;
24
15
  }
25
- declare function RadioItem({ value, children, disabled, className }: RadioItemProps): React.DetailedReactHTMLElement<{
26
- className: string;
27
- 'data-state': string;
28
- }, HTMLElement>;
29
- declare namespace RadioItem {
30
- var displayName: string;
31
- }
16
+ declare const RadioItem: React.ForwardRefExoticComponent<RadioItemProps & React.RefAttributes<HTMLLabelElement>>;
32
17
 
33
18
  export { RadioGroup, type RadioGroupProps, RadioItem, type RadioItemProps };
@@ -9,26 +9,6 @@ interface ReactionBarProps {
9
9
  showAddButton?: boolean;
10
10
  className?: string;
11
11
  }
12
- declare function ReactionBar({ reactions, onToggle, onAdd, showAddButton, className, }: ReactionBarProps): 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 ReactionBar {
31
- var displayName: string;
32
- }
12
+ declare const ReactionBar: React.ForwardRefExoticComponent<ReactionBarProps & React.RefAttributes<HTMLDivElement>>;
33
13
 
34
14
  export { ReactionBar, type ReactionBarProps };
@@ -9,26 +9,6 @@ interface ReactionBarProps {
9
9
  showAddButton?: boolean;
10
10
  className?: string;
11
11
  }
12
- declare function ReactionBar({ reactions, onToggle, onAdd, showAddButton, className, }: ReactionBarProps): 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 ReactionBar {
31
- var displayName: string;
32
- }
12
+ declare const ReactionBar: React.ForwardRefExoticComponent<ReactionBarProps & React.RefAttributes<HTMLDivElement>>;
33
13
 
34
14
  export { ReactionBar, type ReactionBarProps };
@@ -1,14 +1,6 @@
1
1
  import * as React from 'react';
2
- import { SearchBarAPI } from '../search-bar/index.cjs';
3
2
  export { searchBarVariants, searchResultVariants } from '../search-bar/index.cjs';
4
3
 
5
- interface SearchBarContextValue {
6
- api: SearchBarAPI;
7
- value: string;
8
- isSearching: boolean;
9
- setValue: (value: string) => void;
10
- clear: () => void;
11
- }
12
4
  interface SearchBarProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange'> {
13
5
  value?: string;
14
6
  defaultValue?: string;
@@ -18,10 +10,7 @@ interface SearchBarProps extends Omit<React.InputHTMLAttributes<HTMLInputElement
18
10
  loading?: boolean;
19
11
  children?: React.ReactNode;
20
12
  }
21
- declare function SearchBar({ value: controlledValue, defaultValue, onValueChange, onSearch, debounceMs, loading, placeholder, className, children, ...inputProps }: SearchBarProps): React.FunctionComponentElement<React.ProviderProps<SearchBarContextValue | null>>;
22
- declare namespace SearchBar {
23
- var displayName: string;
24
- }
13
+ declare const SearchBar: React.ForwardRefExoticComponent<SearchBarProps & React.RefAttributes<HTMLInputElement>>;
25
14
  interface SearchResultsProps extends React.HTMLAttributes<HTMLUListElement> {
26
15
  }
27
16
  declare const SearchResults: React.ForwardRefExoticComponent<SearchResultsProps & React.RefAttributes<HTMLUListElement>>;
@@ -1,14 +1,6 @@
1
1
  import * as React from 'react';
2
- import { SearchBarAPI } from '../search-bar/index.js';
3
2
  export { searchBarVariants, searchResultVariants } from '../search-bar/index.js';
4
3
 
5
- interface SearchBarContextValue {
6
- api: SearchBarAPI;
7
- value: string;
8
- isSearching: boolean;
9
- setValue: (value: string) => void;
10
- clear: () => void;
11
- }
12
4
  interface SearchBarProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange'> {
13
5
  value?: string;
14
6
  defaultValue?: string;
@@ -18,10 +10,7 @@ interface SearchBarProps extends Omit<React.InputHTMLAttributes<HTMLInputElement
18
10
  loading?: boolean;
19
11
  children?: React.ReactNode;
20
12
  }
21
- declare function SearchBar({ value: controlledValue, defaultValue, onValueChange, onSearch, debounceMs, loading, placeholder, className, children, ...inputProps }: SearchBarProps): React.FunctionComponentElement<React.ProviderProps<SearchBarContextValue | null>>;
22
- declare namespace SearchBar {
23
- var displayName: string;
24
- }
13
+ declare const SearchBar: React.ForwardRefExoticComponent<SearchBarProps & React.RefAttributes<HTMLInputElement>>;
25
14
  interface SearchResultsProps extends React.HTMLAttributes<HTMLUListElement> {
26
15
  }
27
16
  declare const SearchResults: React.ForwardRefExoticComponent<SearchResultsProps & React.RefAttributes<HTMLUListElement>>;
@@ -1,8 +1,29 @@
1
1
  import * as React from 'react';
2
2
 
3
- interface SliderProps extends React.InputHTMLAttributes<HTMLInputElement> {
3
+ interface SliderProps extends Omit<React.InputHTMLAttributes<HTMLInputElement>, 'value' | 'defaultValue' | 'onChange' | 'min' | 'max' | 'step'> {
4
+ /** Current value (controlled). Pair with `onChange`/`onValueChange`. */
5
+ value?: number;
6
+ /** Initial value for uncontrolled usage (defaults to `min`). */
7
+ defaultValue?: number;
8
+ /** Minimum selectable value (default 0). */
9
+ min?: number;
10
+ /** Maximum selectable value (default 100). */
11
+ max?: number;
12
+ /** Granularity between selectable values (default 1). */
13
+ step?: number;
14
+ /** Called with the new numeric value as the user moves the thumb. */
15
+ onChange?: (value: number) => void;
16
+ /** Alias of `onChange`, matching the library-wide naming convention. */
17
+ onValueChange?: (value: number) => void;
4
18
  variant?: 'default';
5
19
  }
20
+ /**
21
+ * Slider — a single-value range control over a native
22
+ * `<input type="range">`. Value clamping, step rounding, and ARIA come from
23
+ * the headless `@refraction-ui/slider` core; keyboard interaction is native
24
+ * to the input (the core's `getSliderValueFromKey` pins the same rules for
25
+ * non-native adapters).
26
+ */
6
27
  declare const Slider: React.ForwardRefExoticComponent<SliderProps & React.RefAttributes<HTMLInputElement>>;
7
28
 
8
29
  export { Slider, type SliderProps };