@platform-blocks/ui 0.3.0 → 0.4.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 (122) hide show
  1. package/lib/cjs/index.js +5378 -2406
  2. package/lib/cjs/index.js.map +1 -1
  3. package/lib/components/Accordion/hooks/useAccordionItemAnimation.d.ts +8 -10
  4. package/lib/components/Avatar/types.d.ts +9 -0
  5. package/lib/components/Calendar/types.d.ts +2 -1
  6. package/lib/components/Can/types.d.ts +6 -4
  7. package/lib/components/CodeBlock/CodeBlock.d.ts +0 -12
  8. package/lib/components/CodeBlock/types.d.ts +19 -0
  9. package/lib/components/CodeBlock/utils.d.ts +4 -13
  10. package/lib/components/Collapse/Collapse.d.ts +4 -0
  11. package/lib/components/Collapse/index.d.ts +2 -0
  12. package/lib/components/{Reveal → Collapse}/types.d.ts +9 -5
  13. package/lib/components/ColorPicker/styles.d.ts +1 -0
  14. package/lib/components/GradientText/GradientText.d.ts +1 -10
  15. package/lib/components/GradientText/types.d.ts +1 -9
  16. package/lib/components/Input/styles.d.ts +2 -2
  17. package/lib/components/Input/types.d.ts +4 -3
  18. package/lib/components/Knob/Knob.d.ts +22 -3
  19. package/lib/components/Knob/appearance.d.ts +56 -0
  20. package/lib/components/Knob/arc.d.ts +21 -0
  21. package/lib/components/Knob/components/KnobSurface.d.ts +30 -0
  22. package/lib/components/Knob/components/PointerLayer.d.ts +13 -0
  23. package/lib/components/Knob/components/SurfaceLayers.d.ts +38 -0
  24. package/lib/components/Knob/components/ThumbLayer.d.ts +14 -0
  25. package/lib/components/Knob/components/TickLayers.d.ts +27 -0
  26. package/lib/components/Knob/components/ValueLabelLayout.d.ts +18 -0
  27. package/lib/components/Knob/hooks/useKnobGeometry.d.ts +16 -0
  28. package/lib/components/Knob/hooks/useKnobGestures.d.ts +28 -0
  29. package/lib/components/Knob/hooks/useKnobInteraction.d.ts +29 -0
  30. package/lib/components/Knob/hooks/useKnobValue.d.ts +31 -0
  31. package/lib/components/Knob/hooks/useKnobValueLabels.d.ts +20 -0
  32. package/lib/components/Knob/index.d.ts +1 -1
  33. package/lib/components/Knob/interactionConfig.d.ts +22 -0
  34. package/lib/components/Knob/styles.d.ts +93 -0
  35. package/lib/components/Knob/types.d.ts +247 -1
  36. package/lib/components/Knob/utils/geometry.d.ts +6 -0
  37. package/lib/components/Knob/utils/marks.d.ts +4 -0
  38. package/lib/components/Knob/utils/math.d.ts +1 -0
  39. package/lib/components/ListGroup/types.d.ts +2 -2
  40. package/lib/components/Markdown/Markdown.d.ts +5 -0
  41. package/lib/components/Menu/styles.d.ts +2 -2
  42. package/lib/components/Menu/types.d.ts +2 -2
  43. package/lib/components/MenuItemButton/MenuItemButton.d.ts +4 -3
  44. package/lib/components/Notice/Notice.d.ts +2 -0
  45. package/lib/components/Notice/index.d.ts +2 -0
  46. package/lib/components/{Alert → Notice}/types.d.ts +9 -9
  47. package/lib/components/QRCode/types.d.ts +0 -6
  48. package/lib/components/Radio/types.d.ts +2 -0
  49. package/lib/components/Rating/types.d.ts +2 -1
  50. package/lib/components/Search/types.d.ts +3 -3
  51. package/lib/components/ShimmerText/ShimmerText.d.ts +2 -32
  52. package/lib/components/ShimmerText/types.d.ts +18 -10
  53. package/lib/components/Spotlight/Spotlight.d.ts +2 -2
  54. package/lib/components/Spotlight/types.d.ts +3 -3
  55. package/lib/components/Switch/types.d.ts +2 -1
  56. package/lib/components/Text/Text.d.ts +3 -4
  57. package/lib/components/Text/index.d.ts +1 -1
  58. package/lib/components/Toast/ToastProvider.d.ts +1 -8
  59. package/lib/components/Toast/index.d.ts +1 -1
  60. package/lib/components/Toggle/types.d.ts +2 -1
  61. package/lib/components/Tree/types.d.ts +2 -0
  62. package/lib/components/{Disclaimer → _internal/Disclaimer}/Disclaimer.d.ts +2 -2
  63. package/lib/components/_internal/Reveal/Reveal.d.ts +0 -0
  64. package/lib/components/_internal/Reveal/index.d.ts +0 -0
  65. package/lib/components/_internal/Reveal/types.d.ts +0 -0
  66. package/lib/components/index.d.ts +8 -11
  67. package/lib/components/optimized.d.ts +10 -1
  68. package/lib/components/types.d.ts +1 -2
  69. package/lib/core/components/InputContainer.d.ts +3 -3
  70. package/lib/core/factory/factory.d.ts +3 -1
  71. package/lib/core/factory/polymorphicFactory.d.ts +4 -3
  72. package/lib/core/utils/index.d.ts +1 -1
  73. package/lib/core/utils/positioning-enhanced.d.ts +0 -18
  74. package/lib/core/utils/spacing.d.ts +3 -4
  75. package/lib/core/utils/universal.d.ts +1 -2
  76. package/lib/core/utils/universalSimple.d.ts +1 -2
  77. package/lib/core/utils/withUniversalProps.d.ts +1 -1
  78. package/lib/esm/index.js +5379 -2405
  79. package/lib/esm/index.js.map +1 -1
  80. package/lib/hooks/index.d.ts +2 -0
  81. package/lib/hooks/useDeviceInfo/index.d.ts +108 -0
  82. package/lib/hooks/useEscapeKey/index.d.ts +1 -0
  83. package/lib/hooks/useGlobalHotkeys/index.d.ts +1 -0
  84. package/lib/hooks/{useMaskedInput.d.ts → useMaskedInput/index.d.ts} +1 -1
  85. package/lib/hooks/useMaskedInput/utils/mask.d.ts +138 -0
  86. package/lib/hooks/useOverlayMode/index.d.ts +29 -0
  87. package/lib/hooks/useSpotlightToggle/index.d.ts +1 -0
  88. package/lib/hooks/useToggleColorScheme/index.d.ts +1 -0
  89. package/lib/index.d.ts +12 -11
  90. package/lib/utils/mask.d.ts +1 -138
  91. package/package.json +10 -10
  92. package/lib/components/Alert/Alert.d.ts +0 -2
  93. package/lib/components/Alert/index.d.ts +0 -2
  94. package/lib/components/CodeBlock/type.d.ts +0 -40
  95. package/lib/components/Container/Container.d.ts +0 -3
  96. package/lib/components/Container/index.d.ts +0 -2
  97. package/lib/components/Container/types.d.ts +0 -31
  98. package/lib/components/Forms/ContactForm.d.ts +0 -3
  99. package/lib/components/Forms/ForgotPasswordForm.d.ts +0 -3
  100. package/lib/components/Forms/LoginForm.d.ts +0 -3
  101. package/lib/components/Forms/SignupForm.d.ts +0 -3
  102. package/lib/components/Forms/index.d.ts +0 -5
  103. package/lib/components/Forms/types.d.ts +0 -89
  104. package/lib/components/Reveal/Reveal.d.ts +0 -4
  105. package/lib/components/Reveal/index.d.ts +0 -2
  106. /package/lib/components/{Accessibility → _internal/Accessibility}/AccessibilityDemo.d.ts +0 -0
  107. /package/lib/components/{Accessibility → _internal/Accessibility}/AccessibilityHelpers.d.ts +0 -0
  108. /package/lib/components/{Accessibility → _internal/Accessibility}/AccessibilityTesting.d.ts +0 -0
  109. /package/lib/components/{Accessibility → _internal/Accessibility}/AccessibleComponents.d.ts +0 -0
  110. /package/lib/components/{Accessibility → _internal/Accessibility}/index.d.ts +0 -0
  111. /package/lib/components/{Disclaimer → _internal/Disclaimer}/disclaimerUtils.d.ts +0 -0
  112. /package/lib/components/{Disclaimer → _internal/Disclaimer}/index.d.ts +0 -0
  113. /package/lib/components/{Disclaimer → _internal/Disclaimer}/withDisclaimer.d.ts +0 -0
  114. /package/lib/components/{PressAnimation → _internal/PressAnimation}/PressAnimation.d.ts +0 -0
  115. /package/lib/components/{PressAnimation → _internal/PressAnimation}/index.d.ts +0 -0
  116. /package/lib/hooks/{useClipboard.d.ts → useClipboard/index.d.ts} +0 -0
  117. /package/lib/hooks/{useHaptics.d.ts → useHaptics/index.d.ts} +0 -0
  118. /package/lib/hooks/{useHotkeys.d.ts → useHotkeys/index.d.ts} +0 -0
  119. /package/lib/hooks/{useScrollSpy.d.ts → useScrollSpy/index.d.ts} +0 -0
  120. /package/lib/{contexts → hooks/useTitleRegistration/contexts}/TitleRegistryContext.d.ts +0 -0
  121. /package/lib/{contexts → hooks/useTitleRegistration/contexts}/index.d.ts +0 -0
  122. /package/lib/hooks/{useTitleRegistration.d.ts → useTitleRegistration/index.d.ts} +0 -0
@@ -1,34 +1,4 @@
1
1
  import React from 'react';
2
- import { type TextProps } from '../Text';
3
- type ShimmerDirection = 'ltr' | 'rtl';
4
- export interface ShimmerTextProps extends Omit<TextProps, 'children' | 'color' | 'onLayout'> {
5
- children?: React.ReactNode;
6
- /** Text to render with shimmer effect */
7
- text?: string;
8
- /** Base text color rendered underneath the shimmer */
9
- color?: string;
10
- /** Optional gradient stops override */
11
- colors?: string[];
12
- /** Primary shimmering color used to derive stops when `colors` not provided */
13
- shimmerColor?: string;
14
- /** Duration in seconds for a single sweep */
15
- duration?: number;
16
- /** Delay in seconds before the first sweep starts */
17
- delay?: number;
18
- /** Additional pause in seconds between repeated sweeps */
19
- repeatDelay?: number;
20
- /** Whether the shimmer should loop */
21
- repeat?: boolean;
22
- /** Run the shimmer exactly once */
23
- once?: boolean;
24
- /** Direction the shimmer should travel */
25
- direction?: ShimmerDirection;
26
- /** Multiplier that controls how wide the gradient band is relative to the text width */
27
- spread?: number;
28
- /** Enable verbose logging for debugging */
29
- debug?: boolean;
30
- /** Called with the layout of the text */
31
- onLayout?: TextProps['onLayout'];
32
- }
2
+ import type { ShimmerTextProps } from './types';
33
3
  export declare function ShimmerText(props: ShimmerTextProps): React.JSX.Element;
34
- export {};
4
+ export type { ShimmerTextProps } from './types';
@@ -1,11 +1,15 @@
1
- import type { TextProps } from '../Text/Text';
2
- export interface ShimmerTextProps extends Omit<TextProps, 'children' | 'value' | 'color'> {
1
+ import type { ReactNode } from 'react';
2
+ import type { TextProps } from '../Text';
3
+ export type ShimmerDirection = 'ltr' | 'rtl';
4
+ export interface ShimmerTextProps extends Omit<TextProps, 'children' | 'color' | 'onLayout' | 'value'> {
3
5
  /** Text node children. Overrides `text` when provided */
4
- children?: React.ReactNode;
6
+ children?: ReactNode;
5
7
  /** Text content to render when not using children */
6
8
  text?: string;
7
- /** Base text color. Falls back to the current theme text color */
9
+ /** Base text color rendered underneath the shimmer */
8
10
  color?: string;
11
+ /** Optional gradient stops override */
12
+ colors?: string[];
9
13
  /** Highlight color used for the shimmer pass */
10
14
  shimmerColor?: string;
11
15
  /** Length multiplier for the shimmer sweep (higher = wider highlight) */
@@ -14,18 +18,22 @@ export interface ShimmerTextProps extends Omit<TextProps, 'children' | 'value' |
14
18
  duration?: number;
15
19
  /** Delay before the shimmer starts (seconds) */
16
20
  delay?: number;
17
- /** Whether the shimmer should repeat indefinitely */
18
- repeat?: boolean;
19
21
  /** Delay between shimmer repetitions (seconds) */
20
22
  repeatDelay?: number;
21
- /** Start shimmering once the component enters the viewport (web only) */
22
- startOnView?: boolean;
23
+ /** Whether the shimmer should repeat indefinitely */
24
+ repeat?: boolean;
23
25
  /** Animate only once after becoming visible */
24
26
  once?: boolean;
27
+ /** Direction of shimmer movement */
28
+ direction?: ShimmerDirection;
29
+ /** Enable verbose logging for debugging */
30
+ debug?: boolean;
31
+ /** Custom layout callback propagated to the underlying text */
32
+ onLayout?: TextProps['onLayout'];
33
+ /** Start shimmering once the component enters the viewport (web only) */
34
+ startOnView?: boolean;
25
35
  /** Custom IntersectionObserver margin (web only) */
26
36
  inViewMargin?: string;
27
- /** Direction of shimmer movement */
28
- direction?: 'ltr' | 'rtl';
29
37
  /** Optional container style */
30
38
  containerStyle?: any;
31
39
  /** Optional test identifier */
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import type { SpotlightProps, SpotlightRootProps, SpotlightSearchProps, SpotlightActionsListProps, SpotlightActionProps, SpotlightActionsGroupProps, SpotlightEmptyProps } from './types';
3
3
  declare function SpotlightRoot({ query, onQueryChange, children, opened, onClose, shortcut, style, }: SpotlightRootProps): React.JSX.Element;
4
- declare function SpotlightSearch({ value, onChangeText, leftSection, placeholder, onNavigateUp, onNavigateDown, onSelectAction, onClose, autoFocus, inputRef: forwardedRef, ...props }: SpotlightSearchProps): React.JSX.Element;
4
+ declare function SpotlightSearch({ value, onChangeText, startSection, placeholder, onNavigateUp, onNavigateDown, onSelectAction, onClose, autoFocus, inputRef: forwardedRef, ...props }: SpotlightSearchProps): React.JSX.Element;
5
5
  declare function SpotlightActionsList({ children, scrollable, maxHeight, style, scrollRef, onScrollChange, }: SpotlightActionsListProps): React.JSX.Element;
6
- declare function SpotlightAction({ label, description, leftSection, rightSection, onPress, disabled, selected, children, style, innerRef, highlightQuery, }: SpotlightActionProps): React.JSX.Element;
6
+ declare function SpotlightAction({ label, description, startSection, endSection, onPress, disabled, selected, children, style, innerRef, highlightQuery, }: SpotlightActionProps): React.JSX.Element;
7
7
  declare function SpotlightActionsGroup({ label, children, style, }: SpotlightActionsGroupProps): React.JSX.Element;
8
8
  declare function SpotlightEmpty({ children, style }: SpotlightEmptyProps): React.JSX.Element;
9
9
  export declare function Spotlight({ actions, nothingFound, highlightQuery, limit, scrollable, maxHeight, // Remove default - let it be calculated dynamically
@@ -29,7 +29,7 @@ export interface SpotlightSearchProps {
29
29
  value?: string;
30
30
  onChangeText?: (text: string) => void;
31
31
  placeholder?: string;
32
- leftSection?: React.ReactNode;
32
+ startSection?: React.ReactNode;
33
33
  onNavigateUp?: () => void;
34
34
  onNavigateDown?: () => void;
35
35
  onSelectAction?: () => void;
@@ -48,8 +48,8 @@ export interface SpotlightActionsListProps {
48
48
  export interface SpotlightActionProps {
49
49
  label?: string;
50
50
  description?: string;
51
- leftSection?: React.ReactNode;
52
- rightSection?: React.ReactNode;
51
+ startSection?: React.ReactNode;
52
+ endSection?: React.ReactNode;
53
53
  onPress?: () => void;
54
54
  disabled?: boolean;
55
55
  selected?: boolean;
@@ -1,12 +1,13 @@
1
1
  import React from 'react';
2
2
  import { SizeValue, ColorValue, SpacingProps } from '../../core/theme/types';
3
+ import type { DisclaimerSupport } from '../_internal/Disclaimer';
3
4
  export interface BaseComponentProps extends SpacingProps {
4
5
  /** Component test ID for testing */
5
6
  testID?: string;
6
7
  /** Additional CSS styles */
7
8
  style?: any;
8
9
  }
9
- export interface SwitchProps extends BaseComponentProps {
10
+ export interface SwitchProps extends BaseComponentProps, DisclaimerSupport {
10
11
  /** Whether switch is on */
11
12
  checked?: boolean;
12
13
  /** Initial checked state for uncontrolled usage */
@@ -2,8 +2,7 @@ import React from 'react';
2
2
  import { TextProps as RNTextProps } from 'react-native';
3
3
  import { SizeValue } from '../../core/theme/sizes';
4
4
  import { SpacingProps } from '../../core/utils';
5
- export type HTMLTextVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'div' | 'small' | 'strong' | 'b' | 'i' | 'em' | 'u' | 'sub' | 'sup' | 'mark' | 'code' | 'kbd' | 'blockquote' | 'cite';
6
- export type LegacyTextVariant = 'body' | 'caption' | 'heading1' | 'heading2' | 'heading3' | 'subtitle';
5
+ export type HTMLTextVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'div' | 'small' | 'caption' | 'strong' | 'b' | 'i' | 'em' | 'u' | 'sub' | 'sup' | 'mark' | 'code' | 'kbd' | 'blockquote' | 'cite';
7
6
  export interface TextProps extends SpacingProps {
8
7
  /** Text node children. Optional if using translation via `tx`. */
9
8
  children?: React.ReactNode;
@@ -11,8 +10,8 @@ export interface TextProps extends SpacingProps {
11
10
  tx?: string;
12
11
  /** Params for translation interpolation */
13
12
  txParams?: Record<string, any>;
14
- /** Text variant (HTML tags or legacy variants) */
15
- variant?: HTMLTextVariant | LegacyTextVariant;
13
+ /** Text variant (mirrors semantic HTML tags) */
14
+ variant?: HTMLTextVariant;
16
15
  /** Size can be a size token or number (overrides variant fontSize) */
17
16
  size?: SizeValue;
18
17
  /** Text color (overrides theme text color) */
@@ -1,2 +1,2 @@
1
- export { Text, type TextProps, type HTMLTextVariant, type LegacyTextVariant } from './Text';
1
+ export { Text, type TextProps, type HTMLTextVariant } from './Text';
2
2
  export { H1, H2, H3, H4, H5, H6, P, Small, Strong, Bold, Italic, Emphasis, Underline, Code, Kbd, Mark, Blockquote, Cite, Sub, Sup } from './aliases';
@@ -38,8 +38,7 @@ interface ToastItem extends ToastOptions {
38
38
  timestamp: number;
39
39
  priority: number;
40
40
  }
41
- export interface SeverityToastOptions extends Omit<ToastOptions, 'sev'> {
42
- }
41
+ export type SeverityToastOptions = Omit<ToastOptions, 'sev'>;
43
42
  export type ToastMessage = string;
44
43
  export type ToastShortcut = ToastMessage | SeverityToastOptions;
45
44
  interface ToastContextValue {
@@ -77,12 +76,6 @@ interface ToastProviderProps {
77
76
  export declare const ToastProvider: React.FC<ToastProviderProps>;
78
77
  export declare const toasts: ToastContextValue;
79
78
  export declare const useToastApi: () => ToastContextValue;
80
- export declare const toast: ToastContextValue;
81
- export declare const notifications: ToastContextValue;
82
79
  export declare const useActiveToasts: () => ToastItem[];
83
80
  export declare const onToastsRequested: typeof onToastRequested;
84
- export declare const onNotificationsRequested: typeof onToastRequested;
85
- export declare const useNotifications: () => ToastContextValue;
86
- export declare const useNotificationsApi: () => ToastContextValue;
87
- export declare const NotificationsProvider: React.FC<ToastProviderProps>;
88
81
  export {};
@@ -1,3 +1,3 @@
1
1
  export { Toast } from './Toast';
2
2
  export type { ToastProps, ToastVariant, ToastColor, ToastSeverity } from './types';
3
- export { ToastProvider, useToast, useToastApi, useActiveToasts, ToastOptions, ToastPosition, SeverityToastOptions, ToastMessage, ToastShortcut, toast, onToastsRequested } from './ToastProvider';
3
+ export { ToastProvider, useToast, useToastApi, useActiveToasts, ToastOptions, ToastPosition, SeverityToastOptions, ToastMessage, ToastShortcut, onToastsRequested } from './ToastProvider';
@@ -1,6 +1,7 @@
1
1
  import { SpacingProps, LayoutProps } from '../../core/utils';
2
2
  import { BorderRadiusProps } from '../../core/theme/radius';
3
3
  import { SizeValue } from '../../core/theme/sizes';
4
+ import type { DisclaimerSupport } from '../_internal/Disclaimer';
4
5
  export interface ToggleButtonProps extends SpacingProps, LayoutProps, BorderRadiusProps {
5
6
  /** Value for this toggle button */
6
7
  value: string | number;
@@ -25,7 +26,7 @@ export interface ToggleButtonProps extends SpacingProps, LayoutProps, BorderRadi
25
26
  /** Test ID for testing */
26
27
  testID?: string;
27
28
  }
28
- export interface ToggleGroupProps extends SpacingProps, LayoutProps, BorderRadiusProps {
29
+ export interface ToggleGroupProps extends SpacingProps, LayoutProps, BorderRadiusProps, DisclaimerSupport {
29
30
  /** Current selected value(s) */
30
31
  value?: string | number | (string | number)[];
31
32
  /** Initial value(s) for uncontrolled usage */
@@ -69,4 +69,6 @@ export interface TreeProps {
69
69
  highlight?: (label: string, query: string) => React.ReactNode;
70
70
  /** Apply alternating background stripes to rows */
71
71
  striped?: boolean;
72
+ /** Animate branch expansion/collapse using the Collapse component */
73
+ useAnimations?: boolean;
72
74
  }
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { type TextProps } from '../Text';
3
- import type { SpacingValue } from '../../core/theme/types';
2
+ import { type TextProps } from '../../Text';
3
+ import type { SpacingValue } from '../../../core/theme/types';
4
4
  export interface DisclaimerProps extends Omit<TextProps, 'children'> {
5
5
  children: React.ReactNode;
6
6
  mt?: SpacingValue;
File without changes
File without changes
File without changes
@@ -1,4 +1,4 @@
1
- export { Alert } from './Alert';
1
+ export { Notice } from './Notice';
2
2
  export { AppShell } from './AppShell';
3
3
  export { AppStoreBadge, AppStoreDownloadBadge, GalaxyStoreDownloadBadge, GooglePlayDownloadBadge, HuaweiAppGalleryBadge, AmazonAppstoreBadge, MicrosoftStoreDownloadBadge, SpotifyListenBadge, ApplePodcastsListenBadge, YouTubeWatchBadge, YouTubeMusicListenBadge, AppleMusicListenBadge, AmazonMusicListenBadge, SoundCloudListenBadge, AmazonStoreBadge, AmazonPrimeVideoBadge, TwitchWatchBadge, GitHubViewBadge, DiscordJoinBadge, RedditJoinBadge, TikTokWatchBadge, ChromeWebStoreBadge, } from './AppStoreBadge';
4
4
  export { AudioPlayer } from './AudioPlayer';
@@ -14,10 +14,9 @@ export { Chip } from './Chip';
14
14
  export { CodeBlock } from './CodeBlock';
15
15
  export { CopyButton } from './CopyButton/CopyButton';
16
16
  export { ColorPicker } from './ColorPicker';
17
- export { Container } from './Container';
18
17
  export { KeyboardAwareLayout } from './KeyboardAwareLayout';
19
18
  export { DataTable } from './DataTable';
20
- export { Disclaimer, ComponentWithDisclaimer, useDisclaimer, withDisclaimer, extractDisclaimerProps } from './Disclaimer';
19
+ export { Disclaimer, ComponentWithDisclaimer, useDisclaimer, withDisclaimer, extractDisclaimerProps } from './_internal/Disclaimer';
21
20
  export { Dialog, DialogProvider, DialogRenderer, useDialog, useSimpleDialog } from './Dialog';
22
21
  export { Divider } from './Divider';
23
22
  export { Space } from './Space';
@@ -55,13 +54,13 @@ export { RichTextEditor } from './RichTextEditor';
55
54
  export { Form } from './Form';
56
55
  export { FormLayout, FormSection, FormGroup, FormField } from './FormLayout';
57
56
  export { Row, Column } from './Layout';
58
- export { ToastProvider, useToast, useToastApi, toast } from './Toast';
57
+ export { ToastProvider, useToast, useToastApi } from './Toast';
59
58
  export { Progress } from './Progress';
60
59
  export { QRCode } from './QRCode';
61
60
  export { NavigationProgress, navigationProgress } from './NavigationProgress';
62
61
  export { Radio, RadioGroup } from './Radio';
63
62
  export { Rating } from './Rating';
64
- export { Reveal } from './Reveal';
63
+ export { Collapse } from './Collapse';
65
64
  export { Ring } from './Ring';
66
65
  export { Skeleton } from './Skeleton';
67
66
  export { Loader } from './Loader';
@@ -87,7 +86,7 @@ export { HoverCard } from './HoverCard/HoverCard';
87
86
  export { ContextMenu } from './ContextMenu';
88
87
  export { Popover } from './Popover';
89
88
  export { Gallery } from './Gallery';
90
- export type { AlertProps } from './Alert';
89
+ export type { NoticeProps } from './Notice';
91
90
  export type { AppShellProps } from './AppShell';
92
91
  export type { AppStoreBadgeProps, AppStoreBadgeSize, SupportedLocale, BadgeConfig } from './AppStoreBadge';
93
92
  export type { AvatarProps, AvatarGroupProps } from './Avatar';
@@ -103,7 +102,6 @@ export type { ChipProps } from './Chip';
103
102
  export type { CodeBlockProps } from './CodeBlock/types';
104
103
  export type { CopyButtonProps } from './CopyButton/types';
105
104
  export type { ColorPickerProps } from './ColorPicker';
106
- export type { ContainerProps } from './Container';
107
105
  export type { KeyboardAwareLayoutProps } from './KeyboardAwareLayout';
108
106
  export type { DialogProps, DialogConfig, UseSimpleDialogOptions } from './Dialog';
109
107
  export type { DividerProps } from './Divider';
@@ -153,7 +151,6 @@ export type { SpotlightProps, SpotlightActionData, SpotlightActionGroupData, Spo
153
151
  export type { SwitchProps } from './Switch';
154
152
  export type { TableProps } from './Table';
155
153
  export type { DataTableProps, DataTableColumn, DataTableFilter, DataTableSort, DataTablePagination } from './DataTable';
156
- export type { DisclaimerProps, WithDisclaimerProps, ComponentWithDisclaimerProps, DisclaimerSupport } from './Disclaimer';
157
154
  export type { TextProps } from './Text';
158
155
  export type { ToastProps } from './Toast';
159
156
  export type { TooltipProps, TooltipPositionType } from './Tooltip';
@@ -168,7 +165,7 @@ export type { ContextMenuProps, ContextMenuItem } from './ContextMenu/ContextMen
168
165
  export type { PopoverProps, PopoverTargetProps, PopoverDropdownProps } from './Popover';
169
166
  export type { SegmentedControlProps, SegmentedControlItem, SegmentedControlData } from './SegmentedControl';
170
167
  export type { GalleryProps, GalleryModalProps, GalleryItem } from './Gallery';
171
- export * from './Accessibility/AccessibilityHelpers';
172
- export * from './Accessibility/AccessibilityTesting';
173
- export * from './Accessibility/AccessibilityDemo';
168
+ export * from './_internal/Accessibility/AccessibilityHelpers';
169
+ export * from './_internal/Accessibility/AccessibilityTesting';
170
+ export * from './_internal/Accessibility/AccessibilityDemo';
174
171
  export * from './Button/SoundButton';
@@ -33,7 +33,16 @@ export declare const LazyRangeSlider: React.LazyExoticComponent<import("../core"
33
33
  export declare const LazyKnob: React.LazyExoticComponent<import("../core").PlatformBlocksComponent<{
34
34
  props: import("./Knob/types").KnobProps;
35
35
  ref: import("react-native").View;
36
- }>>;
36
+ }> & {
37
+ Root: React.FC<import("./Knob/types").KnobRootProps>;
38
+ Fill: React.FC<import("./Knob/types").KnobFillPartProps>;
39
+ Ring: React.FC<import("./Knob/types").KnobRingPartProps>;
40
+ Progress: React.FC<import("./Knob/types").KnobProgressPartProps>;
41
+ TickLayer: React.FC<import("./Knob/types").KnobTickLayerPartProps>;
42
+ Pointer: React.FC<import("./Knob/types").KnobPointerPartProps>;
43
+ Thumb: React.FC<import("./Knob/types").KnobThumbPartProps>;
44
+ ValueLabel: React.FC<import("./Knob/types").KnobValueLabelPartProps>;
45
+ }>;
37
46
  export declare const LazyCheckbox: React.LazyExoticComponent<React.ForwardRefExoticComponent<import("./Checkbox/types").CheckboxProps & React.RefAttributes<import("react-native").View>>>;
38
47
  export declare const LazyRadio: React.LazyExoticComponent<import("../core").PlatformBlocksComponent<{
39
48
  props: import("./Radio/types").RadioProps;
@@ -1,4 +1,4 @@
1
- export type { AlertProps } from './Alert';
1
+ export type { NoticeProps } from './Notice';
2
2
  export type { AppShellProps } from './AppShell';
3
3
  export type { AvatarProps, AvatarGroupProps } from './Avatar';
4
4
  export type { BreadcrumbsProps, BreadcrumbItem } from './Breadcrumbs';
@@ -10,7 +10,6 @@ export type { ChipProps } from './Chip';
10
10
  export type { CodeBlockProps } from './CodeBlock/types';
11
11
  export type { CopyButtonProps } from './CopyButton/types';
12
12
  export type { ColorPickerProps } from './ColorPicker';
13
- export type { ContainerProps } from './Container';
14
13
  export type { KeyboardAwareLayoutProps } from './KeyboardAwareLayout';
15
14
  export type { DialogProps } from './Dialog';
16
15
  export type { DividerProps } from './Divider';
@@ -8,12 +8,12 @@ export interface InputContainerProps {
8
8
  error?: boolean;
9
9
  focused?: boolean;
10
10
  radius?: any;
11
- leftSection?: React.ReactNode;
12
- rightSection?: React.ReactNode;
11
+ startSection?: React.ReactNode;
12
+ endSection?: React.ReactNode;
13
13
  style?: ViewStyle;
14
14
  }
15
15
  /**
16
16
  * Unified input container that provides consistent styling
17
17
  * for all input-like components (Input, Select, AutoComplete, etc.)
18
18
  */
19
- export declare function InputContainer({ children, size, disabled, error, focused, radius, leftSection, rightSection, style, }: InputContainerProps): React.JSX.Element;
19
+ export declare function InputContainer({ children, size, disabled, error, focused, radius, startSection, endSection, style, }: InputContainerProps): React.JSX.Element;
@@ -1,11 +1,12 @@
1
1
  import React from 'react';
2
2
  import { UniversalSystemProps } from '../utils/universal';
3
+ type UnknownProps = Record<string, unknown>;
3
4
  export interface FactoryPayload {
4
5
  props: any & UniversalSystemProps;
5
6
  ref: any;
6
7
  staticComponents?: Record<string, any>;
7
8
  }
8
- export interface ComponentWithProps<Props = {}, RefType = any> {
9
+ export interface ComponentWithProps<Props = UnknownProps, RefType = any> {
9
10
  withProps: <T extends Partial<Props>>(fixedProps: T) => any;
10
11
  }
11
12
  export interface PlatformBlocksComponent<Payload extends FactoryPayload> extends React.ForwardRefExoticComponent<React.PropsWithoutRef<Payload['props']> & React.RefAttributes<Payload['ref']>>, ComponentWithProps<Payload['props'], Payload['ref']> {
@@ -31,3 +32,4 @@ export interface FactoryOptions<Payload extends FactoryPayload> {
31
32
  }
32
33
  export declare function factory<Payload extends FactoryPayload>(ui: React.ForwardRefRenderFunction<Payload['ref'], Payload['props']>, options?: FactoryOptions<Payload>): PlatformBlocksComponent<Payload>;
33
34
  export type Factory<Payload extends FactoryPayload> = Payload;
35
+ export {};
@@ -1,14 +1,15 @@
1
1
  import React from 'react';
2
2
  import { ComponentWithProps, FactoryPayload } from './factory';
3
+ type DefaultProps = Record<string, unknown>;
3
4
  type ElementType = keyof React.JSX.IntrinsicElements | React.JSXElementConstructor<any>;
4
5
  type PropsOf<C extends ElementType> = React.JSX.LibraryManagedAttributes<C, React.ComponentPropsWithoutRef<C>>;
5
6
  type ComponentProp<C> = {
6
7
  component?: C;
7
8
  };
8
- type ExtendedProps<Props = {}, OverrideProps = {}> = OverrideProps & Omit<Props, keyof OverrideProps>;
9
- type InheritedProps<C extends ElementType, Props = {}> = ExtendedProps<PropsOf<C>, Props>;
9
+ type ExtendedProps<Props = DefaultProps, OverrideProps = DefaultProps> = OverrideProps & Omit<Props, keyof OverrideProps>;
10
+ type InheritedProps<C extends ElementType, Props = DefaultProps> = ExtendedProps<PropsOf<C>, Props>;
10
11
  export type PolymorphicRef<C> = C extends React.ElementType ? React.ComponentPropsWithRef<C>['ref'] : never;
11
- export type PolymorphicComponentProps<C, Props = {}> = C extends React.ElementType ? InheritedProps<C, Props & ComponentProp<C>> & {
12
+ export type PolymorphicComponentProps<C, Props = DefaultProps> = C extends React.ElementType ? InheritedProps<C, Props & ComponentProp<C>> & {
12
13
  ref?: PolymorphicRef<C>;
13
14
  } : Props & {
14
15
  component: React.ElementType;
@@ -10,7 +10,7 @@ export { extractShadowProps, getShadowStyles } from './shadow';
10
10
  export { flipDirection, flipHorizontal, getLogicalProperty, transformRTLStyle, flipAlignment, shouldMirrorIcon, getIconMirrorTransform, swapStartEnd, getWritingDirection, getDefaultTextAlign, mirrorPlacement, reverseArray, DEFAULT_MIRRORABLE_ICONS, } from './rtl';
11
11
  export { debounce, throttle, measurePerformance, measureAsyncPerformance } from './debounce';
12
12
  export { INPUT_PERFORMANCE_CONFIG, PERFORMANCE_THRESHOLDS, buildInputComponents } from './performance';
13
- export { calculateOverlayPosition, calculateOverlayPositionEnhanced, getViewport, measureElement, pointInRect, getScrollPosition, clearOverlayPositionCache } from './positioning-enhanced';
13
+ export { calculateOverlayPositionEnhanced, getViewport, measureElement, pointInRect, getScrollPosition, clearOverlayPositionCache } from './positioning-enhanced';
14
14
  export type { Rect, Viewport, PositionResult, PlacementType, PositioningOptions } from './positioning-enhanced';
15
15
  /**
16
16
  * Converts values to px
@@ -54,24 +54,6 @@ export declare function getViewport(): Viewport;
54
54
  * Measure element dimensions and position
55
55
  */
56
56
  export declare function measureElement(ref: any): Promise<Rect>;
57
- /**
58
- * Legacy overlay positioning function (simplified interface)
59
- *
60
- * @deprecated Use calculateOverlayPositionEnhanced for better positioning with flip/shift support
61
- */
62
- export declare function calculateOverlayPosition(anchor: Rect, overlay: {
63
- width: number;
64
- height: number;
65
- }, options?: {
66
- placement?: 'top' | 'bottom' | 'left' | 'right' | 'auto' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-start' | 'left-end' | 'right-start' | 'right-end';
67
- offset?: number;
68
- viewport?: Viewport;
69
- strategy?: 'absolute' | 'fixed';
70
- }): Omit<PositionResult, 'flipped' | 'shifted' | 'finalWidth' | 'finalHeight'>;
71
- /**
72
- * Alias for backward compatibility
73
- */
74
- export { calculateOverlayPosition as calculateOverlayPositionLegacy };
75
57
  /**
76
58
  * Check if a point is inside a rectangle
77
59
  */
@@ -3,10 +3,9 @@ import { UniversalSystemProps } from './universal';
3
3
  /** Re-export SpacingValue from theme types */
4
4
  export type { SpacingValue } from '../theme/types';
5
5
  /** Base system props that include universal props */
6
- export interface BaseSystemProps extends UniversalSystemProps {
7
- }
6
+ export type BaseSystemProps = UniversalSystemProps;
8
7
  /** Enhanced spacing prop types with CSS value support */
9
- export interface SpacingProps extends BaseSystemProps {
8
+ export type SpacingProps = BaseSystemProps & {
10
9
  /** All margins */
11
10
  m?: SpacingValue;
12
11
  /** Horizontal margins (left + right) */
@@ -35,7 +34,7 @@ export interface SpacingProps extends BaseSystemProps {
35
34
  pb?: SpacingValue;
36
35
  /** Padding left */
37
36
  pl?: SpacingValue;
38
- }
37
+ };
39
38
  /**
40
39
  * Enhanced utility function to generate spacing styles from props
41
40
  * Now supports RTL-aware spacing using logical properties on web and swapped values on native
@@ -16,8 +16,7 @@ export interface ResponsiveProps {
16
16
  /** Show component only above this breakpoint */
17
17
  visibleFrom?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
18
18
  }
19
- export interface UniversalSystemProps extends UniversalProps, ResponsiveProps {
20
- }
19
+ export type UniversalSystemProps = UniversalProps & ResponsiveProps;
21
20
  /**
22
21
  * Generates CSS class names based on universal props
23
22
  */
@@ -15,8 +15,7 @@ export interface ResponsiveProps {
15
15
  /** Show component only above this screen width (pixels) */
16
16
  visibleFrom?: number;
17
17
  }
18
- export interface UniversalSystemProps extends UniversalProps, ResponsiveProps {
19
- }
18
+ export type UniversalSystemProps = UniversalProps & ResponsiveProps;
20
19
  /**
21
20
  * Determines if component should be hidden based on universal props
22
21
  * Primary function for React Native - returns true if component should not render
@@ -12,7 +12,7 @@ interface WithUniversalPropsOptions {
12
12
  /**
13
13
  * Higher-order component that adds universal props support to any component
14
14
  */
15
- export declare function withUniversalProps<P extends object>(Component: React.ComponentType<P>, options?: WithUniversalPropsOptions): React.ForwardRefExoticComponent<React.PropsWithoutRef<P & UniversalSystemProps> & React.RefAttributes<any>>;
15
+ export declare function withUniversalProps<P extends object>(Component: React.ComponentType<P>, options?: WithUniversalPropsOptions): React.ForwardRefExoticComponent<React.PropsWithoutRef<P & import("./universal").UniversalProps & import("./universal").ResponsiveProps> & React.RefAttributes<any>>;
16
16
  /**
17
17
  * Hook to apply universal styles to component props
18
18
  * Use this in component implementations for manual integration