@refraction-ui/react 0.4.2 → 0.6.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.
- package/README.md +9 -1
- package/dist/chunk-O4453CBF.js +137 -0
- package/dist/chunk-O4453CBF.js.map +1 -0
- package/dist/chunk-XWP763SH.js +76 -0
- package/dist/chunk-XWP763SH.js.map +1 -0
- package/dist/faro-engine-47HGRAQH-JKINJPMH.js +3 -0
- package/dist/faro-engine-47HGRAQH-JKINJPMH.js.map +1 -0
- package/dist/form.cjs +340 -0
- package/dist/form.cjs.map +1 -0
- package/dist/form.d.cts +1 -0
- package/dist/form.d.ts +1 -0
- package/dist/form.js +204 -0
- package/dist/form.js.map +1 -0
- package/dist/index.cjs +1438 -237
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +76 -76
- package/dist/index.d.ts +76 -76
- package/dist/index.js +1317 -312
- package/dist/index.js.map +1 -1
- package/dist/internal/analytics/index.d.cts +448 -0
- package/dist/internal/analytics/index.d.ts +448 -0
- package/dist/internal/animated-text/index.d.cts +47 -0
- package/dist/internal/animated-text/index.d.ts +47 -0
- package/dist/internal/app-shell/index.d.cts +128 -0
- package/dist/internal/app-shell/index.d.ts +128 -0
- package/dist/internal/auth/index.d.cts +74 -0
- package/dist/internal/auth/index.d.ts +74 -0
- package/dist/internal/avatar/index.d.cts +53 -0
- package/dist/internal/avatar/index.d.ts +53 -0
- package/dist/internal/avatar-group/index.d.cts +70 -0
- package/dist/internal/avatar-group/index.d.ts +70 -0
- package/dist/internal/badge/index.d.cts +26 -0
- package/dist/internal/badge/index.d.ts +26 -0
- package/dist/internal/bottom-nav/index.d.cts +29 -0
- package/dist/internal/bottom-nav/index.d.ts +29 -0
- package/dist/internal/breadcrumbs/index.d.cts +38 -0
- package/dist/internal/breadcrumbs/index.d.ts +38 -0
- package/dist/internal/button/index.d.cts +34 -0
- package/dist/internal/button/index.d.ts +34 -0
- package/dist/internal/calendar/index.d.cts +73 -0
- package/dist/internal/calendar/index.d.ts +73 -0
- package/dist/internal/card/index.d.cts +62 -0
- package/dist/internal/card/index.d.ts +62 -0
- package/dist/internal/card-grid/index.d.cts +10 -0
- package/dist/internal/card-grid/index.d.ts +10 -0
- package/dist/internal/checkbox/index.d.cts +40 -0
- package/dist/internal/checkbox/index.d.ts +40 -0
- package/dist/internal/code-editor/index.d.cts +47 -0
- package/dist/internal/code-editor/index.d.ts +47 -0
- package/dist/internal/collapsible/index.d.cts +43 -0
- package/dist/internal/collapsible/index.d.ts +43 -0
- package/dist/internal/command/index.d.cts +80 -0
- package/dist/internal/command/index.d.ts +80 -0
- package/dist/internal/content-protection/index.d.cts +47 -0
- package/dist/internal/content-protection/index.d.ts +47 -0
- package/dist/internal/data-table/index.d.cts +73 -0
- package/dist/internal/data-table/index.d.ts +73 -0
- package/dist/internal/date-picker/index.d.cts +98 -0
- package/dist/internal/date-picker/index.d.ts +98 -0
- package/dist/internal/device-frame/index.d.cts +40 -0
- package/dist/internal/device-frame/index.d.ts +40 -0
- package/dist/internal/dialog/index.d.cts +54 -0
- package/dist/internal/dialog/index.d.ts +54 -0
- package/dist/internal/dropdown-menu/index.d.cts +55 -0
- package/dist/internal/dropdown-menu/index.d.ts +55 -0
- package/dist/internal/emoji-picker/index.d.cts +77 -0
- package/dist/internal/emoji-picker/index.d.ts +77 -0
- package/dist/internal/feedback-dialog/index.d.cts +55 -0
- package/dist/internal/feedback-dialog/index.d.ts +55 -0
- package/dist/internal/file-upload/index.d.cts +91 -0
- package/dist/internal/file-upload/index.d.ts +91 -0
- package/dist/internal/footer/index.d.cts +30 -0
- package/dist/internal/footer/index.d.ts +30 -0
- package/dist/internal/inline-editor/index.d.cts +52 -0
- package/dist/internal/inline-editor/index.d.ts +52 -0
- package/dist/internal/input/index.d.cts +38 -0
- package/dist/internal/input/index.d.ts +38 -0
- package/dist/internal/input-group/index.d.cts +35 -0
- package/dist/internal/input-group/index.d.ts +35 -0
- package/dist/internal/install-prompt/index.d.cts +36 -0
- package/dist/internal/install-prompt/index.d.ts +36 -0
- package/dist/internal/keyboard-shortcut/index.d.cts +49 -0
- package/dist/internal/keyboard-shortcut/index.d.ts +49 -0
- package/dist/internal/language-selector/index.d.cts +63 -0
- package/dist/internal/language-selector/index.d.ts +63 -0
- package/dist/internal/logger/index.d.cts +229 -0
- package/dist/internal/logger/index.d.ts +229 -0
- package/dist/internal/markdown-renderer/index.d.cts +40 -0
- package/dist/internal/markdown-renderer/index.d.ts +40 -0
- package/dist/internal/mobile-nav/index.d.cts +45 -0
- package/dist/internal/mobile-nav/index.d.ts +45 -0
- package/dist/internal/navbar/index.d.cts +30 -0
- package/dist/internal/navbar/index.d.ts +30 -0
- package/dist/internal/otp-input/index.d.cts +66 -0
- package/dist/internal/otp-input/index.d.ts +66 -0
- package/dist/internal/payment/index.d.cts +9 -0
- package/dist/internal/payment/index.d.ts +9 -0
- package/dist/internal/popover/index.d.cts +46 -0
- package/dist/internal/popover/index.d.ts +46 -0
- package/dist/internal/presence-indicator/index.d.cts +38 -0
- package/dist/internal/presence-indicator/index.d.ts +38 -0
- package/dist/internal/progress-display/index.d.cts +60 -0
- package/dist/internal/progress-display/index.d.ts +60 -0
- package/dist/internal/radio/index.d.ts +43 -0
- package/dist/internal/react-accordion/index.d.ts +22 -0
- package/dist/internal/react-analytics/index.d.cts +44 -0
- package/dist/internal/react-analytics/index.d.ts +44 -0
- package/dist/internal/react-animated-text/index.d.cts +12 -0
- package/dist/internal/react-animated-text/index.d.ts +12 -0
- package/dist/internal/react-app-shell/index.d.cts +169 -0
- package/dist/internal/react-app-shell/index.d.ts +169 -0
- package/dist/internal/react-auth/index.d.cts +59 -0
- package/dist/internal/react-auth/index.d.ts +59 -0
- package/dist/internal/react-avatar/index.d.cts +20 -0
- package/dist/internal/react-avatar/index.d.ts +20 -0
- package/dist/internal/react-avatar-group/index.d.cts +33 -0
- package/dist/internal/react-avatar-group/index.d.ts +33 -0
- package/dist/internal/react-badge/index.d.cts +17 -0
- package/dist/internal/react-badge/index.d.ts +17 -0
- package/dist/internal/react-bottom-nav/index.d.cts +19 -0
- package/dist/internal/react-bottom-nav/index.d.ts +19 -0
- package/dist/internal/react-breadcrumbs/index.d.cts +24 -0
- package/dist/internal/react-breadcrumbs/index.d.ts +24 -0
- package/dist/internal/react-button/index.d.cts +21 -0
- package/dist/internal/react-button/index.d.ts +21 -0
- package/dist/internal/react-calendar/index.d.cts +44 -0
- package/dist/internal/react-calendar/index.d.ts +44 -0
- package/dist/internal/react-callout/index.d.cts +12 -0
- package/dist/internal/react-callout/index.d.ts +12 -0
- package/dist/internal/react-card/index.d.cts +29 -0
- package/dist/internal/react-card/index.d.ts +29 -0
- package/dist/internal/react-card-grid/index.d.cts +8 -0
- package/dist/internal/react-card-grid/index.d.ts +8 -0
- package/dist/internal/react-carousel/index.d.ts +22 -0
- package/dist/internal/react-checkbox/index.d.cts +18 -0
- package/dist/internal/react-checkbox/index.d.ts +18 -0
- package/dist/internal/react-code-block/index.d.cts +7 -0
- package/dist/internal/react-code-block/index.d.ts +7 -0
- package/dist/internal/react-code-editor/index.d.cts +28 -0
- package/dist/internal/react-code-editor/index.d.ts +28 -0
- package/dist/internal/react-collapsible/index.d.cts +29 -0
- package/dist/internal/react-collapsible/index.d.ts +29 -0
- package/dist/internal/react-combobox/index.d.cts +94 -0
- package/dist/internal/react-combobox/index.d.ts +94 -0
- package/dist/internal/react-command/index.d.cts +51 -0
- package/dist/internal/react-command/index.d.ts +51 -0
- package/dist/internal/react-content-protection/index.d.cts +22 -0
- package/dist/internal/react-content-protection/index.d.ts +22 -0
- package/dist/internal/react-data-table/index.d.cts +22 -0
- package/dist/internal/react-data-table/index.d.ts +22 -0
- package/dist/internal/react-date-picker/index.d.cts +23 -0
- package/dist/internal/react-date-picker/index.d.ts +23 -0
- package/dist/internal/react-device-frame/index.d.cts +37 -0
- package/dist/internal/react-device-frame/index.d.ts +37 -0
- package/dist/internal/react-dialog/index.d.cts +49 -0
- package/dist/internal/react-dialog/index.d.ts +49 -0
- package/dist/internal/react-dropdown-menu/index.d.cts +37 -0
- package/dist/internal/react-dropdown-menu/index.d.ts +37 -0
- package/dist/internal/react-emoji-picker/index.d.cts +32 -0
- package/dist/internal/react-emoji-picker/index.d.ts +32 -0
- package/dist/internal/react-feedback-dialog/index.d.cts +40 -0
- package/dist/internal/react-feedback-dialog/index.d.ts +40 -0
- package/dist/internal/react-file-tree/index.d.cts +5 -0
- package/dist/internal/react-file-tree/index.d.ts +5 -0
- package/dist/internal/react-file-upload/index.d.cts +22 -0
- package/dist/internal/react-file-upload/index.d.ts +22 -0
- package/dist/internal/react-footer/index.d.cts +20 -0
- package/dist/internal/react-footer/index.d.ts +20 -0
- package/dist/internal/react-form/index.d.cts +85 -0
- package/dist/internal/react-form/index.d.ts +85 -0
- package/dist/internal/react-icon-system/index.d.cts +5 -0
- package/dist/internal/react-icon-system/index.d.ts +5 -0
- package/dist/internal/react-inline-editor/index.d.cts +17 -0
- package/dist/internal/react-inline-editor/index.d.ts +17 -0
- package/dist/internal/react-input/index.d.cts +31 -0
- package/dist/internal/react-input/index.d.ts +31 -0
- package/dist/internal/react-input-group/index.d.cts +34 -0
- package/dist/internal/react-input-group/index.d.ts +34 -0
- package/dist/internal/react-install-prompt/index.d.cts +24 -0
- package/dist/internal/react-install-prompt/index.d.ts +24 -0
- package/dist/internal/react-keyboard-shortcut/index.d.cts +57 -0
- package/dist/internal/react-keyboard-shortcut/index.d.ts +57 -0
- package/dist/internal/react-language-selector/index.d.cts +26 -0
- package/dist/internal/react-language-selector/index.d.ts +26 -0
- package/dist/internal/react-link-card/index.d.cts +5 -0
- package/dist/internal/react-link-card/index.d.ts +5 -0
- package/dist/internal/react-logger/index.d.cts +107 -0
- package/dist/internal/react-logger/index.d.ts +107 -0
- package/dist/internal/react-markdown-renderer/index.d.cts +20 -0
- package/dist/internal/react-markdown-renderer/index.d.ts +20 -0
- package/dist/internal/react-mobile-nav/index.d.cts +33 -0
- package/dist/internal/react-mobile-nav/index.d.ts +33 -0
- package/dist/internal/react-navbar/index.d.cts +25 -0
- package/dist/internal/react-navbar/index.d.ts +25 -0
- package/dist/internal/react-otp-input/index.d.cts +21 -0
- package/dist/internal/react-otp-input/index.d.ts +21 -0
- package/dist/internal/react-pagination/index.d.ts +7 -0
- package/dist/internal/react-payment/index.d.cts +9 -0
- package/dist/internal/react-payment/index.d.ts +9 -0
- package/dist/internal/react-popover/index.d.cts +33 -0
- package/dist/internal/react-popover/index.d.ts +33 -0
- package/dist/internal/react-presence-indicator/index.d.cts +34 -0
- package/dist/internal/react-presence-indicator/index.d.ts +34 -0
- package/dist/internal/react-progress-display/index.d.cts +21 -0
- package/dist/internal/react-progress-display/index.d.ts +21 -0
- package/dist/internal/react-radio/index.d.ts +33 -0
- package/dist/internal/react-reaction-bar/index.d.cts +34 -0
- package/dist/internal/react-reaction-bar/index.d.ts +34 -0
- package/dist/internal/react-resizable-layout/index.d.cts +36 -0
- package/dist/internal/react-resizable-layout/index.d.ts +36 -0
- package/dist/internal/react-rich-editor/index.d.cts +2 -0
- package/dist/internal/react-rich-editor/index.d.ts +2 -0
- package/dist/internal/react-search-bar/index.d.cts +32 -0
- package/dist/internal/react-search-bar/index.d.ts +32 -0
- package/dist/internal/react-select/index.d.cts +30 -0
- package/dist/internal/react-select/index.d.ts +30 -0
- package/dist/internal/react-sheet/index.d.cts +67 -0
- package/dist/internal/react-sheet/index.d.ts +67 -0
- package/dist/internal/react-sidebar/index.d.cts +23 -0
- package/dist/internal/react-sidebar/index.d.ts +23 -0
- package/dist/internal/react-skeleton/index.d.cts +31 -0
- package/dist/internal/react-skeleton/index.d.ts +31 -0
- package/dist/internal/react-skip-to-content/index.d.cts +9 -0
- package/dist/internal/react-skip-to-content/index.d.ts +9 -0
- package/dist/internal/react-slide-viewer/index.d.cts +23 -0
- package/dist/internal/react-slide-viewer/index.d.ts +23 -0
- package/dist/internal/react-slider/index.d.cts +1 -0
- package/dist/internal/react-slider/index.d.ts +1 -0
- package/dist/internal/react-status-indicator/index.d.cts +34 -0
- package/dist/internal/react-status-indicator/index.d.ts +34 -0
- package/dist/internal/react-steps/index.d.cts +19 -0
- package/dist/internal/react-steps/index.d.ts +19 -0
- package/dist/internal/react-switch/index.d.cts +17 -0
- package/dist/internal/react-switch/index.d.ts +17 -0
- package/dist/internal/react-table-of-contents/index.d.ts +10 -0
- package/dist/internal/react-tabs/index.d.cts +31 -0
- package/dist/internal/react-tabs/index.d.ts +31 -0
- package/dist/internal/react-textarea/index.d.cts +16 -0
- package/dist/internal/react-textarea/index.d.ts +16 -0
- package/dist/internal/react-theme/index.d.cts +44 -0
- package/dist/internal/react-theme/index.d.ts +44 -0
- package/dist/internal/react-thread-view/index.d.cts +34 -0
- package/dist/internal/react-thread-view/index.d.ts +34 -0
- package/dist/internal/react-toast/index.d.cts +36 -0
- package/dist/internal/react-toast/index.d.ts +36 -0
- package/dist/internal/react-tooltip/index.d.cts +33 -0
- package/dist/internal/react-tooltip/index.d.ts +33 -0
- package/dist/internal/react-version-selector/index.d.cts +24 -0
- package/dist/internal/react-version-selector/index.d.ts +24 -0
- package/dist/internal/react-video-player/index.d.cts +9 -0
- package/dist/internal/react-video-player/index.d.ts +9 -0
- package/dist/internal/react-voice-pill/index.d.cts +10 -0
- package/dist/internal/react-voice-pill/index.d.ts +10 -0
- package/dist/internal/react-waveform/index.d.cts +9 -0
- package/dist/internal/react-waveform/index.d.ts +9 -0
- package/dist/internal/reaction-bar/index.d.cts +50 -0
- package/dist/internal/reaction-bar/index.d.ts +50 -0
- package/dist/internal/resizable-layout/index.d.cts +47 -0
- package/dist/internal/resizable-layout/index.d.ts +47 -0
- package/dist/internal/search-bar/index.d.cts +51 -0
- package/dist/internal/search-bar/index.d.ts +51 -0
- package/dist/internal/select/index.d.cts +69 -0
- package/dist/internal/select/index.d.ts +69 -0
- package/dist/internal/shared/index.d.cts +419 -0
- package/dist/internal/shared/index.d.ts +419 -0
- package/dist/internal/sidebar/index.d.cts +40 -0
- package/dist/internal/sidebar/index.d.ts +40 -0
- package/dist/internal/skeleton/index.d.cts +27 -0
- package/dist/internal/skeleton/index.d.ts +27 -0
- package/dist/internal/slide-viewer/index.d.cts +72 -0
- package/dist/internal/slide-viewer/index.d.ts +72 -0
- package/dist/internal/slider/index.d.cts +4 -0
- package/dist/internal/slider/index.d.ts +4 -0
- package/dist/internal/status-indicator/index.d.cts +42 -0
- package/dist/internal/status-indicator/index.d.ts +42 -0
- package/dist/internal/switch/index.d.cts +41 -0
- package/dist/internal/switch/index.d.ts +41 -0
- package/dist/internal/tabs/index.d.cts +45 -0
- package/dist/internal/tabs/index.d.ts +45 -0
- package/dist/internal/textarea/index.d.cts +28 -0
- package/dist/internal/textarea/index.d.ts +28 -0
- package/dist/internal/theme/index.d.cts +60 -0
- package/dist/internal/theme/index.d.ts +60 -0
- package/dist/internal/thread-view/index.d.cts +95 -0
- package/dist/internal/thread-view/index.d.ts +95 -0
- package/dist/internal/toast/index.d.cts +64 -0
- package/dist/internal/toast/index.d.ts +64 -0
- package/dist/internal/tooltip/index.d.cts +45 -0
- package/dist/internal/tooltip/index.d.ts +45 -0
- package/dist/internal/version-selector/index.d.cts +68 -0
- package/dist/internal/version-selector/index.d.ts +68 -0
- package/dist/internal/video-player/index.d.cts +50 -0
- package/dist/internal/video-player/index.d.ts +50 -0
- package/dist/internal/voice-pill/index.d.cts +86 -0
- package/dist/internal/voice-pill/index.d.ts +86 -0
- package/dist/internal/waveform/index.d.cts +83 -0
- package/dist/internal/waveform/index.d.ts +83 -0
- package/dist/theme.cjs +23 -0
- package/dist/theme.cjs.map +1 -1
- package/dist/theme.d.cts +1 -1
- package/dist/theme.d.ts +1 -1
- package/dist/theme.js +5 -2
- package/dist/theme.js.map +1 -1
- package/package.json +10 -7
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
interface NavLink {
|
|
2
|
+
label: string;
|
|
3
|
+
href: string;
|
|
4
|
+
icon?: string;
|
|
5
|
+
}
|
|
6
|
+
type NavbarVariant = 'solid' | 'blur' | 'gradient' | 'transparent';
|
|
7
|
+
interface NavbarProps {
|
|
8
|
+
links?: NavLink[];
|
|
9
|
+
currentPath?: string;
|
|
10
|
+
variant?: NavbarVariant;
|
|
11
|
+
}
|
|
12
|
+
interface NavbarAPI {
|
|
13
|
+
ariaProps: Record<string, string>;
|
|
14
|
+
isActive: (href: string) => boolean;
|
|
15
|
+
linkAriaProps: (href: string) => Record<string, string>;
|
|
16
|
+
}
|
|
17
|
+
declare function createNavbar(props?: NavbarProps): NavbarAPI;
|
|
18
|
+
|
|
19
|
+
declare const navbarVariants: (props?: ({
|
|
20
|
+
variant?: "solid" | "blur" | "gradient" | "transparent" | undefined;
|
|
21
|
+
} & {
|
|
22
|
+
className?: string;
|
|
23
|
+
}) | undefined) => string;
|
|
24
|
+
declare const navLinkVariants: (props?: ({
|
|
25
|
+
active?: "true" | "false" | undefined;
|
|
26
|
+
} & {
|
|
27
|
+
className?: string;
|
|
28
|
+
}) | undefined) => string;
|
|
29
|
+
|
|
30
|
+
export { type NavLink, type NavbarAPI, type NavbarProps, type NavbarVariant, createNavbar, navLinkVariants, navbarVariants };
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { AccessibilityProps, KeyboardHandlerMap, TokenContract } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
type OtpInputType = 'number' | 'text';
|
|
4
|
+
interface OtpInputProps {
|
|
5
|
+
length?: number;
|
|
6
|
+
value?: string;
|
|
7
|
+
autoFocus?: boolean;
|
|
8
|
+
type?: OtpInputType;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
}
|
|
11
|
+
interface OtpSlotProps {
|
|
12
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
13
|
+
dataAttributes: Record<string, string>;
|
|
14
|
+
inputProps: {
|
|
15
|
+
maxLength: number;
|
|
16
|
+
inputMode: string;
|
|
17
|
+
pattern?: string;
|
|
18
|
+
autoComplete: string;
|
|
19
|
+
disabled: boolean;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
interface OtpInputAPI {
|
|
23
|
+
/** Current state */
|
|
24
|
+
state: {
|
|
25
|
+
values: string[];
|
|
26
|
+
focusedIndex: number;
|
|
27
|
+
length: number;
|
|
28
|
+
disabled: boolean;
|
|
29
|
+
};
|
|
30
|
+
/** Set the value at a specific index */
|
|
31
|
+
setValue: (index: number, char: string) => string[];
|
|
32
|
+
/** Get the combined OTP string */
|
|
33
|
+
getValue: () => string;
|
|
34
|
+
/** Move focus in a direction, returns new index */
|
|
35
|
+
moveFocus: (direction: 'left' | 'right') => number;
|
|
36
|
+
/** Get aria/input props for a specific slot */
|
|
37
|
+
getSlotProps: (index: number) => OtpSlotProps;
|
|
38
|
+
/** Keyboard handlers factory for a specific slot */
|
|
39
|
+
getKeyboardHandlers: (index: number, callbacks?: {
|
|
40
|
+
onMoveFocus?: (index: number) => void;
|
|
41
|
+
onSetValue?: (index: number, values: string[]) => void;
|
|
42
|
+
}) => KeyboardHandlerMap;
|
|
43
|
+
/** Parse a paste string into values array */
|
|
44
|
+
parsePaste: (text: string) => string[];
|
|
45
|
+
/** Root container ARIA props */
|
|
46
|
+
rootAriaProps: Partial<AccessibilityProps>;
|
|
47
|
+
/** Whether interaction should be blocked */
|
|
48
|
+
isInteractive: boolean;
|
|
49
|
+
}
|
|
50
|
+
declare function createOtpInput(props?: OtpInputProps): OtpInputAPI;
|
|
51
|
+
|
|
52
|
+
declare const otpInputTokens: TokenContract;
|
|
53
|
+
declare const otpInputContainerVariants: (props?: ({
|
|
54
|
+
size?: "sm" | "default" | "lg" | undefined;
|
|
55
|
+
} & {
|
|
56
|
+
className?: string;
|
|
57
|
+
}) | undefined) => string;
|
|
58
|
+
declare const otpInputSlotVariants: (props?: ({
|
|
59
|
+
size?: "sm" | "default" | "lg" | undefined;
|
|
60
|
+
focused?: "true" | "false" | undefined;
|
|
61
|
+
filled?: "true" | "false" | undefined;
|
|
62
|
+
} & {
|
|
63
|
+
className?: string;
|
|
64
|
+
}) | undefined) => string;
|
|
65
|
+
|
|
66
|
+
export { type OtpInputAPI, type OtpInputProps, type OtpInputType, type OtpSlotProps, createOtpInput, otpInputContainerVariants, otpInputSlotVariants, otpInputTokens };
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { AccessibilityProps, KeyboardHandlerMap, TokenContract } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
type OtpInputType = 'number' | 'text';
|
|
4
|
+
interface OtpInputProps {
|
|
5
|
+
length?: number;
|
|
6
|
+
value?: string;
|
|
7
|
+
autoFocus?: boolean;
|
|
8
|
+
type?: OtpInputType;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
}
|
|
11
|
+
interface OtpSlotProps {
|
|
12
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
13
|
+
dataAttributes: Record<string, string>;
|
|
14
|
+
inputProps: {
|
|
15
|
+
maxLength: number;
|
|
16
|
+
inputMode: string;
|
|
17
|
+
pattern?: string;
|
|
18
|
+
autoComplete: string;
|
|
19
|
+
disabled: boolean;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
interface OtpInputAPI {
|
|
23
|
+
/** Current state */
|
|
24
|
+
state: {
|
|
25
|
+
values: string[];
|
|
26
|
+
focusedIndex: number;
|
|
27
|
+
length: number;
|
|
28
|
+
disabled: boolean;
|
|
29
|
+
};
|
|
30
|
+
/** Set the value at a specific index */
|
|
31
|
+
setValue: (index: number, char: string) => string[];
|
|
32
|
+
/** Get the combined OTP string */
|
|
33
|
+
getValue: () => string;
|
|
34
|
+
/** Move focus in a direction, returns new index */
|
|
35
|
+
moveFocus: (direction: 'left' | 'right') => number;
|
|
36
|
+
/** Get aria/input props for a specific slot */
|
|
37
|
+
getSlotProps: (index: number) => OtpSlotProps;
|
|
38
|
+
/** Keyboard handlers factory for a specific slot */
|
|
39
|
+
getKeyboardHandlers: (index: number, callbacks?: {
|
|
40
|
+
onMoveFocus?: (index: number) => void;
|
|
41
|
+
onSetValue?: (index: number, values: string[]) => void;
|
|
42
|
+
}) => KeyboardHandlerMap;
|
|
43
|
+
/** Parse a paste string into values array */
|
|
44
|
+
parsePaste: (text: string) => string[];
|
|
45
|
+
/** Root container ARIA props */
|
|
46
|
+
rootAriaProps: Partial<AccessibilityProps>;
|
|
47
|
+
/** Whether interaction should be blocked */
|
|
48
|
+
isInteractive: boolean;
|
|
49
|
+
}
|
|
50
|
+
declare function createOtpInput(props?: OtpInputProps): OtpInputAPI;
|
|
51
|
+
|
|
52
|
+
declare const otpInputTokens: TokenContract;
|
|
53
|
+
declare const otpInputContainerVariants: (props?: ({
|
|
54
|
+
size?: "sm" | "default" | "lg" | undefined;
|
|
55
|
+
} & {
|
|
56
|
+
className?: string;
|
|
57
|
+
}) | undefined) => string;
|
|
58
|
+
declare const otpInputSlotVariants: (props?: ({
|
|
59
|
+
size?: "sm" | "default" | "lg" | undefined;
|
|
60
|
+
focused?: "true" | "false" | undefined;
|
|
61
|
+
filled?: "true" | "false" | undefined;
|
|
62
|
+
} & {
|
|
63
|
+
className?: string;
|
|
64
|
+
}) | undefined) => string;
|
|
65
|
+
|
|
66
|
+
export { type OtpInputAPI, type OtpInputProps, type OtpInputType, type OtpSlotProps, createOtpInput, otpInputContainerVariants, otpInputSlotVariants, otpInputTokens };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { AccessibilityProps, Side, KeyboardHandlerMap } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
interface PopoverProps {
|
|
4
|
+
open?: boolean;
|
|
5
|
+
defaultOpen?: boolean;
|
|
6
|
+
onOpenChange?: (open: boolean) => void;
|
|
7
|
+
placement?: Side;
|
|
8
|
+
}
|
|
9
|
+
interface PopoverAPI {
|
|
10
|
+
/** Current open state */
|
|
11
|
+
state: {
|
|
12
|
+
open: boolean;
|
|
13
|
+
};
|
|
14
|
+
/** Props to spread on the trigger element */
|
|
15
|
+
triggerProps: Partial<AccessibilityProps> & {
|
|
16
|
+
'aria-expanded': boolean;
|
|
17
|
+
'aria-controls': string;
|
|
18
|
+
'aria-haspopup': 'dialog';
|
|
19
|
+
};
|
|
20
|
+
/** Props to spread on the content element */
|
|
21
|
+
contentProps: {
|
|
22
|
+
role: 'dialog';
|
|
23
|
+
id: string;
|
|
24
|
+
};
|
|
25
|
+
/** Resolved placement */
|
|
26
|
+
placement: Side;
|
|
27
|
+
/** Open the popover */
|
|
28
|
+
open: () => void;
|
|
29
|
+
/** Close the popover */
|
|
30
|
+
close: () => void;
|
|
31
|
+
/** Toggle the popover */
|
|
32
|
+
toggle: () => void;
|
|
33
|
+
/** Keyboard handler map (Escape to close) */
|
|
34
|
+
keyboardHandlers: KeyboardHandlerMap;
|
|
35
|
+
/** Pre-built keyboard event handler */
|
|
36
|
+
handleKeyDown: (event: KeyboardEvent) => void;
|
|
37
|
+
}
|
|
38
|
+
declare function createPopover(props?: PopoverProps): PopoverAPI;
|
|
39
|
+
|
|
40
|
+
declare const popoverContentVariants: (props?: ({
|
|
41
|
+
side?: "top" | "right" | "bottom" | "left" | undefined;
|
|
42
|
+
} & {
|
|
43
|
+
className?: string;
|
|
44
|
+
}) | undefined) => string;
|
|
45
|
+
|
|
46
|
+
export { type PopoverAPI, type PopoverProps, createPopover, popoverContentVariants };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { AccessibilityProps, Side, KeyboardHandlerMap } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
interface PopoverProps {
|
|
4
|
+
open?: boolean;
|
|
5
|
+
defaultOpen?: boolean;
|
|
6
|
+
onOpenChange?: (open: boolean) => void;
|
|
7
|
+
placement?: Side;
|
|
8
|
+
}
|
|
9
|
+
interface PopoverAPI {
|
|
10
|
+
/** Current open state */
|
|
11
|
+
state: {
|
|
12
|
+
open: boolean;
|
|
13
|
+
};
|
|
14
|
+
/** Props to spread on the trigger element */
|
|
15
|
+
triggerProps: Partial<AccessibilityProps> & {
|
|
16
|
+
'aria-expanded': boolean;
|
|
17
|
+
'aria-controls': string;
|
|
18
|
+
'aria-haspopup': 'dialog';
|
|
19
|
+
};
|
|
20
|
+
/** Props to spread on the content element */
|
|
21
|
+
contentProps: {
|
|
22
|
+
role: 'dialog';
|
|
23
|
+
id: string;
|
|
24
|
+
};
|
|
25
|
+
/** Resolved placement */
|
|
26
|
+
placement: Side;
|
|
27
|
+
/** Open the popover */
|
|
28
|
+
open: () => void;
|
|
29
|
+
/** Close the popover */
|
|
30
|
+
close: () => void;
|
|
31
|
+
/** Toggle the popover */
|
|
32
|
+
toggle: () => void;
|
|
33
|
+
/** Keyboard handler map (Escape to close) */
|
|
34
|
+
keyboardHandlers: KeyboardHandlerMap;
|
|
35
|
+
/** Pre-built keyboard event handler */
|
|
36
|
+
handleKeyDown: (event: KeyboardEvent) => void;
|
|
37
|
+
}
|
|
38
|
+
declare function createPopover(props?: PopoverProps): PopoverAPI;
|
|
39
|
+
|
|
40
|
+
declare const popoverContentVariants: (props?: ({
|
|
41
|
+
side?: "top" | "right" | "bottom" | "left" | undefined;
|
|
42
|
+
} & {
|
|
43
|
+
className?: string;
|
|
44
|
+
}) | undefined) => string;
|
|
45
|
+
|
|
46
|
+
export { type PopoverAPI, type PopoverProps, createPopover, popoverContentVariants };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
type PresenceStatus = 'online' | 'offline' | 'away' | 'busy' | 'dnd';
|
|
4
|
+
interface PresenceProps {
|
|
5
|
+
/** The presence status to display */
|
|
6
|
+
status: PresenceStatus;
|
|
7
|
+
/** Show a text label alongside the indicator */
|
|
8
|
+
showLabel?: boolean;
|
|
9
|
+
/** Custom label override */
|
|
10
|
+
label?: string;
|
|
11
|
+
}
|
|
12
|
+
interface PresenceAPI {
|
|
13
|
+
/** ARIA attributes for the indicator */
|
|
14
|
+
ariaProps: Partial<AccessibilityProps> & Record<string, unknown>;
|
|
15
|
+
/** CSS color for the status dot */
|
|
16
|
+
color: string;
|
|
17
|
+
/** Human-readable label for the status */
|
|
18
|
+
label: string;
|
|
19
|
+
/** Whether to show the label text */
|
|
20
|
+
showLabel: boolean;
|
|
21
|
+
/** The current status */
|
|
22
|
+
status: PresenceStatus;
|
|
23
|
+
}
|
|
24
|
+
declare const STATUS_COLORS: Record<PresenceStatus, string>;
|
|
25
|
+
declare const STATUS_LABELS: Record<PresenceStatus, string>;
|
|
26
|
+
|
|
27
|
+
declare function createPresence(props: PresenceProps): PresenceAPI;
|
|
28
|
+
|
|
29
|
+
declare const presenceDotVariants: (props?: ({
|
|
30
|
+
status?: "online" | "offline" | "away" | "busy" | "dnd" | undefined;
|
|
31
|
+
size?: "sm" | "md" | "lg" | undefined;
|
|
32
|
+
} & {
|
|
33
|
+
className?: string;
|
|
34
|
+
}) | undefined) => string;
|
|
35
|
+
declare const presenceContainerStyles = "inline-flex items-center gap-1.5";
|
|
36
|
+
declare const presenceLabelStyles = "text-sm text-muted-foreground";
|
|
37
|
+
|
|
38
|
+
export { type PresenceAPI, type PresenceProps, type PresenceStatus, STATUS_COLORS, STATUS_LABELS, createPresence, presenceContainerStyles, presenceDotVariants, presenceLabelStyles };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
type PresenceStatus = 'online' | 'offline' | 'away' | 'busy' | 'dnd';
|
|
4
|
+
interface PresenceProps {
|
|
5
|
+
/** The presence status to display */
|
|
6
|
+
status: PresenceStatus;
|
|
7
|
+
/** Show a text label alongside the indicator */
|
|
8
|
+
showLabel?: boolean;
|
|
9
|
+
/** Custom label override */
|
|
10
|
+
label?: string;
|
|
11
|
+
}
|
|
12
|
+
interface PresenceAPI {
|
|
13
|
+
/** ARIA attributes for the indicator */
|
|
14
|
+
ariaProps: Partial<AccessibilityProps> & Record<string, unknown>;
|
|
15
|
+
/** CSS color for the status dot */
|
|
16
|
+
color: string;
|
|
17
|
+
/** Human-readable label for the status */
|
|
18
|
+
label: string;
|
|
19
|
+
/** Whether to show the label text */
|
|
20
|
+
showLabel: boolean;
|
|
21
|
+
/** The current status */
|
|
22
|
+
status: PresenceStatus;
|
|
23
|
+
}
|
|
24
|
+
declare const STATUS_COLORS: Record<PresenceStatus, string>;
|
|
25
|
+
declare const STATUS_LABELS: Record<PresenceStatus, string>;
|
|
26
|
+
|
|
27
|
+
declare function createPresence(props: PresenceProps): PresenceAPI;
|
|
28
|
+
|
|
29
|
+
declare const presenceDotVariants: (props?: ({
|
|
30
|
+
status?: "online" | "offline" | "away" | "busy" | "dnd" | undefined;
|
|
31
|
+
size?: "sm" | "md" | "lg" | undefined;
|
|
32
|
+
} & {
|
|
33
|
+
className?: string;
|
|
34
|
+
}) | undefined) => string;
|
|
35
|
+
declare const presenceContainerStyles = "inline-flex items-center gap-1.5";
|
|
36
|
+
declare const presenceLabelStyles = "text-sm text-muted-foreground";
|
|
37
|
+
|
|
38
|
+
export { type PresenceAPI, type PresenceProps, type PresenceStatus, STATUS_COLORS, STATUS_LABELS, createPresence, presenceContainerStyles, presenceDotVariants, presenceLabelStyles };
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.cjs';
|
|
2
|
+
|
|
3
|
+
interface StatCardData {
|
|
4
|
+
label: string;
|
|
5
|
+
value: number;
|
|
6
|
+
icon?: string;
|
|
7
|
+
color?: string;
|
|
8
|
+
}
|
|
9
|
+
interface BadgeData {
|
|
10
|
+
name: string;
|
|
11
|
+
description: string;
|
|
12
|
+
icon: string;
|
|
13
|
+
unlockedAt?: string;
|
|
14
|
+
isUnlocked: boolean;
|
|
15
|
+
}
|
|
16
|
+
interface ProgressDisplayProps {
|
|
17
|
+
stats: StatCardData[];
|
|
18
|
+
badges: BadgeData[];
|
|
19
|
+
level?: number;
|
|
20
|
+
accuracy?: number;
|
|
21
|
+
}
|
|
22
|
+
interface ProgressDisplayAPI {
|
|
23
|
+
/** The computed stats array */
|
|
24
|
+
stats: StatCardData[];
|
|
25
|
+
/** The badges array */
|
|
26
|
+
badges: BadgeData[];
|
|
27
|
+
/** ARIA props for the stats region */
|
|
28
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
29
|
+
/** Get ARIA props for a specific badge */
|
|
30
|
+
getBadgeAriaProps: (badge: BadgeData) => Partial<AccessibilityProps>;
|
|
31
|
+
}
|
|
32
|
+
declare function createProgressDisplay(props: ProgressDisplayProps): ProgressDisplayAPI;
|
|
33
|
+
|
|
34
|
+
declare const statsGridVariants: (props?: ({
|
|
35
|
+
columns?: "2" | "3" | "4" | undefined;
|
|
36
|
+
} & {
|
|
37
|
+
className?: string;
|
|
38
|
+
}) | undefined) => string;
|
|
39
|
+
declare const statCardVariants: (props?: ({
|
|
40
|
+
color?: "default" | "primary" | "success" | "warning" | "destructive" | undefined;
|
|
41
|
+
} & {
|
|
42
|
+
className?: string;
|
|
43
|
+
}) | undefined) => string;
|
|
44
|
+
declare const badgeGridVariants: (props?: ({
|
|
45
|
+
columns?: "3" | "4" | "5" | undefined;
|
|
46
|
+
} & {
|
|
47
|
+
className?: string;
|
|
48
|
+
}) | undefined) => string;
|
|
49
|
+
declare const badgeItemVariants: (props?: ({
|
|
50
|
+
state?: "unlocked" | "locked" | undefined;
|
|
51
|
+
} & {
|
|
52
|
+
className?: string;
|
|
53
|
+
}) | undefined) => string;
|
|
54
|
+
declare const progressBarVariants: (props?: ({
|
|
55
|
+
size?: "sm" | "md" | "lg" | undefined;
|
|
56
|
+
} & {
|
|
57
|
+
className?: string;
|
|
58
|
+
}) | undefined) => string;
|
|
59
|
+
|
|
60
|
+
export { type BadgeData, type ProgressDisplayAPI, type ProgressDisplayProps, type StatCardData, badgeGridVariants, badgeItemVariants, createProgressDisplay, progressBarVariants, statCardVariants, statsGridVariants };
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
interface StatCardData {
|
|
4
|
+
label: string;
|
|
5
|
+
value: number;
|
|
6
|
+
icon?: string;
|
|
7
|
+
color?: string;
|
|
8
|
+
}
|
|
9
|
+
interface BadgeData {
|
|
10
|
+
name: string;
|
|
11
|
+
description: string;
|
|
12
|
+
icon: string;
|
|
13
|
+
unlockedAt?: string;
|
|
14
|
+
isUnlocked: boolean;
|
|
15
|
+
}
|
|
16
|
+
interface ProgressDisplayProps {
|
|
17
|
+
stats: StatCardData[];
|
|
18
|
+
badges: BadgeData[];
|
|
19
|
+
level?: number;
|
|
20
|
+
accuracy?: number;
|
|
21
|
+
}
|
|
22
|
+
interface ProgressDisplayAPI {
|
|
23
|
+
/** The computed stats array */
|
|
24
|
+
stats: StatCardData[];
|
|
25
|
+
/** The badges array */
|
|
26
|
+
badges: BadgeData[];
|
|
27
|
+
/** ARIA props for the stats region */
|
|
28
|
+
ariaProps: Partial<AccessibilityProps>;
|
|
29
|
+
/** Get ARIA props for a specific badge */
|
|
30
|
+
getBadgeAriaProps: (badge: BadgeData) => Partial<AccessibilityProps>;
|
|
31
|
+
}
|
|
32
|
+
declare function createProgressDisplay(props: ProgressDisplayProps): ProgressDisplayAPI;
|
|
33
|
+
|
|
34
|
+
declare const statsGridVariants: (props?: ({
|
|
35
|
+
columns?: "2" | "3" | "4" | undefined;
|
|
36
|
+
} & {
|
|
37
|
+
className?: string;
|
|
38
|
+
}) | undefined) => string;
|
|
39
|
+
declare const statCardVariants: (props?: ({
|
|
40
|
+
color?: "default" | "primary" | "success" | "warning" | "destructive" | undefined;
|
|
41
|
+
} & {
|
|
42
|
+
className?: string;
|
|
43
|
+
}) | undefined) => string;
|
|
44
|
+
declare const badgeGridVariants: (props?: ({
|
|
45
|
+
columns?: "3" | "4" | "5" | undefined;
|
|
46
|
+
} & {
|
|
47
|
+
className?: string;
|
|
48
|
+
}) | undefined) => string;
|
|
49
|
+
declare const badgeItemVariants: (props?: ({
|
|
50
|
+
state?: "unlocked" | "locked" | undefined;
|
|
51
|
+
} & {
|
|
52
|
+
className?: string;
|
|
53
|
+
}) | undefined) => string;
|
|
54
|
+
declare const progressBarVariants: (props?: ({
|
|
55
|
+
size?: "sm" | "md" | "lg" | undefined;
|
|
56
|
+
} & {
|
|
57
|
+
className?: string;
|
|
58
|
+
}) | undefined) => string;
|
|
59
|
+
|
|
60
|
+
export { type BadgeData, type ProgressDisplayAPI, type ProgressDisplayProps, type StatCardData, badgeGridVariants, badgeItemVariants, createProgressDisplay, progressBarVariants, statCardVariants, statsGridVariants };
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { AccessibilityProps } from '../shared/index.js';
|
|
2
|
+
|
|
3
|
+
interface RadioOption {
|
|
4
|
+
value: string;
|
|
5
|
+
label: string;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
}
|
|
8
|
+
interface RadioGroupProps {
|
|
9
|
+
value?: string;
|
|
10
|
+
defaultValue?: string;
|
|
11
|
+
onValueChange?: (value: string) => void;
|
|
12
|
+
name?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
orientation?: 'horizontal' | 'vertical';
|
|
15
|
+
}
|
|
16
|
+
interface RadioGroupAPI {
|
|
17
|
+
state: {
|
|
18
|
+
selectedValue: string | undefined;
|
|
19
|
+
};
|
|
20
|
+
groupProps: Partial<AccessibilityProps> & Record<string, unknown>;
|
|
21
|
+
getItemProps(value: string, disabled?: boolean): Partial<AccessibilityProps> & Record<string, unknown>;
|
|
22
|
+
select(value: string): void;
|
|
23
|
+
keyboardHandlers: Record<string, (e: KeyboardEvent) => void>;
|
|
24
|
+
}
|
|
25
|
+
declare function createRadioGroup(props?: RadioGroupProps): RadioGroupAPI;
|
|
26
|
+
|
|
27
|
+
declare const radioGroupVariants: (props?: ({
|
|
28
|
+
orientation?: "horizontal" | "vertical" | undefined;
|
|
29
|
+
} & {
|
|
30
|
+
className?: string;
|
|
31
|
+
}) | undefined) => string;
|
|
32
|
+
declare const radioItemVariants: (props?: ({
|
|
33
|
+
disabled?: "true" | "false" | undefined;
|
|
34
|
+
} & {
|
|
35
|
+
className?: string;
|
|
36
|
+
}) | undefined) => string;
|
|
37
|
+
declare const radioCircleVariants: (props?: ({
|
|
38
|
+
checked?: "true" | "false" | undefined;
|
|
39
|
+
} & {
|
|
40
|
+
className?: string;
|
|
41
|
+
}) | undefined) => string;
|
|
42
|
+
|
|
43
|
+
export { type RadioGroupAPI, type RadioGroupProps, type RadioOption, createRadioGroup, radioCircleVariants, radioGroupVariants, radioItemVariants };
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
|
|
3
|
+
interface AccordionProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange'> {
|
|
4
|
+
type?: 'single' | 'multiple';
|
|
5
|
+
collapsible?: boolean;
|
|
6
|
+
defaultValue?: string | string[];
|
|
7
|
+
value?: string | string[];
|
|
8
|
+
onValueChange?: (value: string | string[]) => void;
|
|
9
|
+
}
|
|
10
|
+
declare const Accordion: React.ForwardRefExoticComponent<AccordionProps & React.RefAttributes<HTMLDivElement>>;
|
|
11
|
+
interface AccordionItemProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
12
|
+
value: string;
|
|
13
|
+
}
|
|
14
|
+
declare const AccordionItem: React.ForwardRefExoticComponent<AccordionItemProps & React.RefAttributes<HTMLDivElement>>;
|
|
15
|
+
interface AccordionTriggerProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
16
|
+
}
|
|
17
|
+
declare const AccordionTrigger: React.ForwardRefExoticComponent<AccordionTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
18
|
+
interface AccordionContentProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
19
|
+
}
|
|
20
|
+
declare const AccordionContent: React.ForwardRefExoticComponent<AccordionContentProps & React.RefAttributes<HTMLDivElement>>;
|
|
21
|
+
|
|
22
|
+
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Analytics, AnalyticsContext, AnalyticsProperties, CallOptions } from '../analytics/index.cjs';
|
|
3
|
+
export { Analytics, AnalyticsConfig, AnalyticsContext, AnalyticsEvent, AnalyticsEventType, AnalyticsProperties, AnalyticsSink, CallOptions, createAnalytics } from '../analytics/index.cjs';
|
|
4
|
+
|
|
5
|
+
interface AnalyticsProviderProps {
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
/**
|
|
8
|
+
* The `Analytics` instance to expose. Construct it once with
|
|
9
|
+
* `createAnalytics(...)` from `@refraction-ui/analytics`.
|
|
10
|
+
*/
|
|
11
|
+
value: Analytics;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* AnalyticsProvider — wraps your app with analytics context.
|
|
15
|
+
*
|
|
16
|
+
* ```tsx
|
|
17
|
+
* <AnalyticsProvider value={createAnalytics({ app: 'my-app', env: 'production' })}>
|
|
18
|
+
* <App />
|
|
19
|
+
* </AnalyticsProvider>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
declare function AnalyticsProvider({ children, value }: AnalyticsProviderProps): React.FunctionComponentElement<React.ProviderProps<Analytics | null>>;
|
|
23
|
+
interface UseAnalyticsOptions {
|
|
24
|
+
/** When set, returns a `with({ ...scope })` child bound to the context. */
|
|
25
|
+
scope?: Partial<AnalyticsContext>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* useAnalytics — access the `Analytics` instance from context.
|
|
29
|
+
*
|
|
30
|
+
* Pass `{ scope }` to receive a `with(...)` child whose context is merged
|
|
31
|
+
* into every event. Must be used within an `<AnalyticsProvider>`.
|
|
32
|
+
*/
|
|
33
|
+
declare function useAnalytics(options?: UseAnalyticsOptions): Analytics;
|
|
34
|
+
/**
|
|
35
|
+
* useTrackEvent — a stable, bound `track` for the current context.
|
|
36
|
+
*
|
|
37
|
+
* ```tsx
|
|
38
|
+
* const track = useTrackEvent()
|
|
39
|
+
* track('Signup Clicked', { plan: 'pro' })
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
declare function useTrackEvent(options?: UseAnalyticsOptions): (event: string, properties?: AnalyticsProperties, opts?: CallOptions) => void;
|
|
43
|
+
|
|
44
|
+
export { AnalyticsProvider, type AnalyticsProviderProps, type UseAnalyticsOptions, useAnalytics, useTrackEvent };
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { Analytics, AnalyticsContext, AnalyticsProperties, CallOptions } from '../analytics/index.js';
|
|
3
|
+
export { Analytics, AnalyticsConfig, AnalyticsContext, AnalyticsEvent, AnalyticsEventType, AnalyticsProperties, AnalyticsSink, CallOptions, createAnalytics } from '../analytics/index.js';
|
|
4
|
+
|
|
5
|
+
interface AnalyticsProviderProps {
|
|
6
|
+
children: React.ReactNode;
|
|
7
|
+
/**
|
|
8
|
+
* The `Analytics` instance to expose. Construct it once with
|
|
9
|
+
* `createAnalytics(...)` from `@refraction-ui/analytics`.
|
|
10
|
+
*/
|
|
11
|
+
value: Analytics;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* AnalyticsProvider — wraps your app with analytics context.
|
|
15
|
+
*
|
|
16
|
+
* ```tsx
|
|
17
|
+
* <AnalyticsProvider value={createAnalytics({ app: 'my-app', env: 'production' })}>
|
|
18
|
+
* <App />
|
|
19
|
+
* </AnalyticsProvider>
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
declare function AnalyticsProvider({ children, value }: AnalyticsProviderProps): React.FunctionComponentElement<React.ProviderProps<Analytics | null>>;
|
|
23
|
+
interface UseAnalyticsOptions {
|
|
24
|
+
/** When set, returns a `with({ ...scope })` child bound to the context. */
|
|
25
|
+
scope?: Partial<AnalyticsContext>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* useAnalytics — access the `Analytics` instance from context.
|
|
29
|
+
*
|
|
30
|
+
* Pass `{ scope }` to receive a `with(...)` child whose context is merged
|
|
31
|
+
* into every event. Must be used within an `<AnalyticsProvider>`.
|
|
32
|
+
*/
|
|
33
|
+
declare function useAnalytics(options?: UseAnalyticsOptions): Analytics;
|
|
34
|
+
/**
|
|
35
|
+
* useTrackEvent — a stable, bound `track` for the current context.
|
|
36
|
+
*
|
|
37
|
+
* ```tsx
|
|
38
|
+
* const track = useTrackEvent()
|
|
39
|
+
* track('Signup Clicked', { plan: 'pro' })
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
declare function useTrackEvent(options?: UseAnalyticsOptions): (event: string, properties?: AnalyticsProperties, opts?: CallOptions) => void;
|
|
43
|
+
|
|
44
|
+
export { AnalyticsProvider, type AnalyticsProviderProps, type UseAnalyticsOptions, useAnalytics, useTrackEvent };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { AnimatedTextProps as AnimatedTextProps$1, TypewriterProps } from '../animated-text/index.cjs';
|
|
3
|
+
export { AnimatedTextAPI, AnimatedTextState, TypewriterAPI, TypewriterState, animatedTextVariants, typewriterVariants } from '../animated-text/index.cjs';
|
|
4
|
+
|
|
5
|
+
interface AnimatedTextProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'>, AnimatedTextProps$1 {
|
|
6
|
+
}
|
|
7
|
+
declare const AnimatedText: React.ForwardRefExoticComponent<AnimatedTextProps & React.RefAttributes<HTMLSpanElement>>;
|
|
8
|
+
interface TypewriterTextProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'>, TypewriterProps {
|
|
9
|
+
}
|
|
10
|
+
declare const TypewriterText: React.ForwardRefExoticComponent<TypewriterTextProps & React.RefAttributes<HTMLSpanElement>>;
|
|
11
|
+
|
|
12
|
+
export { AnimatedText, type AnimatedTextProps, TypewriterText, type TypewriterTextProps };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { AnimatedTextProps as AnimatedTextProps$1, TypewriterProps } from '../animated-text/index.js';
|
|
3
|
+
export { AnimatedTextAPI, AnimatedTextState, TypewriterAPI, TypewriterState, animatedTextVariants, typewriterVariants } from '../animated-text/index.js';
|
|
4
|
+
|
|
5
|
+
interface AnimatedTextProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'>, AnimatedTextProps$1 {
|
|
6
|
+
}
|
|
7
|
+
declare const AnimatedText: React.ForwardRefExoticComponent<AnimatedTextProps & React.RefAttributes<HTMLSpanElement>>;
|
|
8
|
+
interface TypewriterTextProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, 'children'>, TypewriterProps {
|
|
9
|
+
}
|
|
10
|
+
declare const TypewriterText: React.ForwardRefExoticComponent<TypewriterTextProps & React.RefAttributes<HTMLSpanElement>>;
|
|
11
|
+
|
|
12
|
+
export { AnimatedText, type AnimatedTextProps, TypewriterText, type TypewriterTextProps };
|