@campxdev/react-native-blueprint 0.1.3 → 0.1.4

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 (109) hide show
  1. package/README.md +98 -69
  2. package/lib/module/app/_layout.js +7 -1
  3. package/lib/module/app/_layout.js.map +1 -1
  4. package/package.json +10 -6
  5. package/src/app/_layout.tsx +7 -1
  6. package/lib/typescript/src/app/_layout.d.ts +0 -8
  7. package/lib/typescript/src/app/_layout.d.ts.map +0 -1
  8. package/lib/typescript/src/components/theme-config.d.ts +0 -174
  9. package/lib/typescript/src/components/theme-config.d.ts.map +0 -1
  10. package/lib/typescript/src/components/ui/Accordion.d.ts +0 -103
  11. package/lib/typescript/src/components/ui/Accordion.d.ts.map +0 -1
  12. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts +0 -168
  13. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts.map +0 -1
  14. package/lib/typescript/src/components/ui/Alert.d.ts +0 -60
  15. package/lib/typescript/src/components/ui/Alert.d.ts.map +0 -1
  16. package/lib/typescript/src/components/ui/AppBar.d.ts +0 -227
  17. package/lib/typescript/src/components/ui/AppBar.d.ts.map +0 -1
  18. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts +0 -30
  19. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts.map +0 -1
  20. package/lib/typescript/src/components/ui/Avatar.d.ts +0 -1351
  21. package/lib/typescript/src/components/ui/Avatar.d.ts.map +0 -1
  22. package/lib/typescript/src/components/ui/Badge.d.ts +0 -204
  23. package/lib/typescript/src/components/ui/Badge.d.ts.map +0 -1
  24. package/lib/typescript/src/components/ui/Bottom-Sheet.d.ts +0 -43
  25. package/lib/typescript/src/components/ui/Bottom-Sheet.d.ts.map +0 -1
  26. package/lib/typescript/src/components/ui/Button.d.ts +0 -176
  27. package/lib/typescript/src/components/ui/Button.d.ts.map +0 -1
  28. package/lib/typescript/src/components/ui/Card.d.ts +0 -854
  29. package/lib/typescript/src/components/ui/Card.d.ts.map +0 -1
  30. package/lib/typescript/src/components/ui/Checkbox.d.ts +0 -36
  31. package/lib/typescript/src/components/ui/Checkbox.d.ts.map +0 -1
  32. package/lib/typescript/src/components/ui/Collapsible.d.ts +0 -66
  33. package/lib/typescript/src/components/ui/Collapsible.d.ts.map +0 -1
  34. package/lib/typescript/src/components/ui/Context-Menu.d.ts +0 -150
  35. package/lib/typescript/src/components/ui/Context-Menu.d.ts.map +0 -1
  36. package/lib/typescript/src/components/ui/Custom-Card.d.ts +0 -864
  37. package/lib/typescript/src/components/ui/Custom-Card.d.ts.map +0 -1
  38. package/lib/typescript/src/components/ui/Dialog.d.ts +0 -126
  39. package/lib/typescript/src/components/ui/Dialog.d.ts.map +0 -1
  40. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts +0 -284
  41. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts.map +0 -1
  42. package/lib/typescript/src/components/ui/Floating-Action.d.ts +0 -44
  43. package/lib/typescript/src/components/ui/Floating-Action.d.ts.map +0 -1
  44. package/lib/typescript/src/components/ui/Greeting-Card.d.ts +0 -153
  45. package/lib/typescript/src/components/ui/Greeting-Card.d.ts.map +0 -1
  46. package/lib/typescript/src/components/ui/Hover-Card.d.ts +0 -68
  47. package/lib/typescript/src/components/ui/Hover-Card.d.ts.map +0 -1
  48. package/lib/typescript/src/components/ui/Icon.d.ts +0 -43
  49. package/lib/typescript/src/components/ui/Icon.d.ts.map +0 -1
  50. package/lib/typescript/src/components/ui/Input.d.ts +0 -52
  51. package/lib/typescript/src/components/ui/Input.d.ts.map +0 -1
  52. package/lib/typescript/src/components/ui/Label.d.ts +0 -105
  53. package/lib/typescript/src/components/ui/Label.d.ts.map +0 -1
  54. package/lib/typescript/src/components/ui/Menubar.d.ts +0 -175
  55. package/lib/typescript/src/components/ui/Menubar.d.ts.map +0 -1
  56. package/lib/typescript/src/components/ui/Native-Only-Animated-View.d.ts +0 -26
  57. package/lib/typescript/src/components/ui/Native-Only-Animated-View.d.ts.map +0 -1
  58. package/lib/typescript/src/components/ui/NavBar.d.ts +0 -273
  59. package/lib/typescript/src/components/ui/NavBar.d.ts.map +0 -1
  60. package/lib/typescript/src/components/ui/Popover.d.ts +0 -71
  61. package/lib/typescript/src/components/ui/Popover.d.ts.map +0 -1
  62. package/lib/typescript/src/components/ui/Progress.d.ts +0 -27
  63. package/lib/typescript/src/components/ui/Progress.d.ts.map +0 -1
  64. package/lib/typescript/src/components/ui/Radio-Group.d.ts +0 -47
  65. package/lib/typescript/src/components/ui/Radio-Group.d.ts.map +0 -1
  66. package/lib/typescript/src/components/ui/Select.d.ts +0 -107
  67. package/lib/typescript/src/components/ui/Select.d.ts.map +0 -1
  68. package/lib/typescript/src/components/ui/Separator.d.ts +0 -166
  69. package/lib/typescript/src/components/ui/Separator.d.ts.map +0 -1
  70. package/lib/typescript/src/components/ui/SizedBox.d.ts +0 -79
  71. package/lib/typescript/src/components/ui/SizedBox.d.ts.map +0 -1
  72. package/lib/typescript/src/components/ui/Skeleton.d.ts +0 -40
  73. package/lib/typescript/src/components/ui/Skeleton.d.ts.map +0 -1
  74. package/lib/typescript/src/components/ui/Slider.d.ts +0 -55
  75. package/lib/typescript/src/components/ui/Slider.d.ts.map +0 -1
  76. package/lib/typescript/src/components/ui/Switch.d.ts +0 -34
  77. package/lib/typescript/src/components/ui/Switch.d.ts.map +0 -1
  78. package/lib/typescript/src/components/ui/Table.d.ts +0 -70
  79. package/lib/typescript/src/components/ui/Table.d.ts.map +0 -1
  80. package/lib/typescript/src/components/ui/Tabs.d.ts +0 -51
  81. package/lib/typescript/src/components/ui/Tabs.d.ts.map +0 -1
  82. package/lib/typescript/src/components/ui/Text.d.ts +0 -116
  83. package/lib/typescript/src/components/ui/Text.d.ts.map +0 -1
  84. package/lib/typescript/src/components/ui/Textarea.d.ts +0 -61
  85. package/lib/typescript/src/components/ui/Textarea.d.ts.map +0 -1
  86. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts +0 -194
  87. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts.map +0 -1
  88. package/lib/typescript/src/components/ui/Toast.d.ts +0 -55
  89. package/lib/typescript/src/components/ui/Toast.d.ts.map +0 -1
  90. package/lib/typescript/src/components/ui/Toggle-Group.d.ts +0 -49
  91. package/lib/typescript/src/components/ui/Toggle-Group.d.ts.map +0 -1
  92. package/lib/typescript/src/components/ui/Toggle.d.ts +0 -53
  93. package/lib/typescript/src/components/ui/Toggle.d.ts.map +0 -1
  94. package/lib/typescript/src/components/ui/Tooltip.d.ts +0 -71
  95. package/lib/typescript/src/components/ui/Tooltip.d.ts.map +0 -1
  96. package/lib/typescript/src/components/ui/index.d.ts +0 -44
  97. package/lib/typescript/src/components/ui/index.d.ts.map +0 -1
  98. package/lib/typescript/src/index.d.ts +0 -9
  99. package/lib/typescript/src/index.d.ts.map +0 -1
  100. package/lib/typescript/src/lib/ThemeProvider.d.ts +0 -137
  101. package/lib/typescript/src/lib/ThemeProvider.d.ts.map +0 -1
  102. package/lib/typescript/src/lib/cornerRadius.d.ts +0 -112
  103. package/lib/typescript/src/lib/cornerRadius.d.ts.map +0 -1
  104. package/lib/typescript/src/lib/fonts.d.ts +0 -21
  105. package/lib/typescript/src/lib/fonts.d.ts.map +0 -1
  106. package/lib/typescript/src/lib/theme.d.ts +0 -87
  107. package/lib/typescript/src/lib/theme.d.ts.map +0 -1
  108. package/lib/typescript/src/lib/utils.d.ts +0 -111
  109. package/lib/typescript/src/lib/utils.d.ts.map +0 -1
@@ -1,116 +0,0 @@
1
- import * as React from 'react';
2
- /**
3
- * Context for sharing text class styles with child Text components
4
- * Used by components like Button, Card, Badge to automatically style nested Text
5
- */
6
- declare const TextClassContext: React.Context<string>;
7
- /**
8
- * Enhanced Text component with NativeWind styling support
9
- *
10
- * Extends React Native's Text with:
11
- * - Automatic style inheritance from TextClassContext
12
- * - NativeWind className support
13
- * - Slot pattern support for composition
14
- * - Web-specific selection styling
15
- *
16
- * @component
17
- * @example
18
- * ```tsx
19
- * // Basic text
20
- * <Text>Hello World</Text>
21
- *
22
- * // With custom styling
23
- * <Text className="text-lg font-bold">Title</Text>
24
- *
25
- * // Inside a styled context (e.g., Button)
26
- * <Button variant="default">
27
- * <Text>Button Text</Text> // Automatically inherits button text styling
28
- * </Button>
29
- *
30
- * // Using asChild for composition
31
- * <Text asChild>
32
- * <Link href="/home">Home</Link>
33
- * </Text>
34
- * ```
35
- *
36
- * @property {string} [className] - Additional Tailwind classes
37
- * @property {boolean} [asChild] - When true, merges props into immediate child
38
- */
39
- declare const Text: React.ForwardRefExoticComponent<Omit<Omit<Readonly<Omit<Readonly<{
40
- onPointerEnter?: (event: import("react-native").PointerEvent) => void;
41
- onPointerLeave?: (event: import("react-native").PointerEvent) => void;
42
- onPointerMove?: (event: import("react-native").PointerEvent) => void;
43
- }>, "onMoveShouldSetResponder" | "onResponderGrant" | "onResponderMove" | "onResponderRelease" | "onResponderTerminate" | "onResponderTerminationRequest" | "onStartShouldSetResponder" | "children" | "disabled" | "onPress" | "onPressIn" | "onPressOut" | "onLongPress" | "id" | "onLayout" | "accessibilityLabel" | "accessible" | "testID" | "style" | "adjustsFontSizeToFit" | "dynamicTypeRamp" | "suppressHighlighting" | "lineBreakStrategyIOS" | "selectionColor" | "dataDetectorType" | "textBreakStrategy" | "minimumFontScale" | "onAccessibilityAction" | "allowFontScaling" | "android_hyphenationFrequency" | "ellipsizeMode" | "maxFontSizeMultiplier" | "nativeID" | "numberOfLines" | "onTextLayout" | "pressRetentionOffset" | "role" | "selectable" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable"> & Omit<import("react-native/types_generated/Libraries/Text/TextProps").TextPropsIOS, "onMoveShouldSetResponder" | "onResponderGrant" | "onResponderMove" | "onResponderRelease" | "onResponderTerminate" | "onResponderTerminationRequest" | "onStartShouldSetResponder" | "children" | "onPress" | "onPressIn" | "onPressOut" | "onLongPress" | "id" | "onLayout" | "accessibilityLabel" | "accessible" | "testID" | "style" | keyof import("react-native/types_generated/Libraries/Text/TextProps").TextPropsAndroid | "onAccessibilityAction" | "allowFontScaling" | "android_hyphenationFrequency" | "ellipsizeMode" | "maxFontSizeMultiplier" | "nativeID" | "numberOfLines" | "onTextLayout" | "pressRetentionOffset" | "role" | "selectable" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable"> & Omit<import("react-native/types_generated/Libraries/Text/TextProps").TextPropsAndroid, "onMoveShouldSetResponder" | "onResponderGrant" | "onResponderMove" | "onResponderRelease" | "onResponderTerminate" | "onResponderTerminationRequest" | "onStartShouldSetResponder" | "children" | "onPress" | "onPressIn" | "onPressOut" | "onLongPress" | "id" | "onLayout" | "accessibilityLabel" | "accessible" | "testID" | "style" | "onAccessibilityAction" | "allowFontScaling" | "android_hyphenationFrequency" | "ellipsizeMode" | "maxFontSizeMultiplier" | "nativeID" | "numberOfLines" | "onTextLayout" | "pressRetentionOffset" | "role" | "selectable" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable"> & Omit<Readonly<{
44
- onAccessibilityAction?: ((event: import("react-native").AccessibilityActionEvent) => unknown) | undefined;
45
- allowFontScaling?: boolean | undefined;
46
- android_hyphenationFrequency?: ("normal" | "none" | "full") | undefined;
47
- children?: React.ReactNode | undefined;
48
- ellipsizeMode?: ("clip" | "head" | "middle" | "tail") | undefined;
49
- id?: string;
50
- maxFontSizeMultiplier?: number | undefined;
51
- nativeID?: string | undefined;
52
- numberOfLines?: number | undefined;
53
- onLayout?: ((event: import("react-native").LayoutChangeEvent) => unknown) | undefined;
54
- onLongPress?: ((event: import("react-native").GestureResponderEvent) => unknown) | undefined;
55
- onPress?: ((event: import("react-native").GestureResponderEvent) => unknown) | undefined;
56
- onPressIn?: ((event: import("react-native").GestureResponderEvent) => unknown) | undefined;
57
- onPressOut?: ((event: import("react-native").GestureResponderEvent) => unknown) | undefined;
58
- onResponderGrant?: ((event: import("react-native").GestureResponderEvent) => void) | undefined;
59
- onResponderMove?: ((event: import("react-native").GestureResponderEvent) => void) | undefined;
60
- onResponderRelease?: ((event: import("react-native").GestureResponderEvent) => void) | undefined;
61
- onResponderTerminate?: ((event: import("react-native").GestureResponderEvent) => void) | undefined;
62
- onResponderTerminationRequest?: (() => boolean) | undefined;
63
- onStartShouldSetResponder?: (() => boolean) | undefined;
64
- onMoveShouldSetResponder?: (() => boolean) | undefined;
65
- onTextLayout?: ((event: import("react-native").TextLayoutEvent) => unknown) | undefined;
66
- pressRetentionOffset?: import("react-native/types_generated/Libraries/Text/TextProps").PressRetentionOffset | undefined;
67
- role?: import("react-native").Role | undefined;
68
- selectable?: boolean | undefined;
69
- style?: import("react-native/types_generated/Libraries/StyleSheet/StyleSheet").TextStyleProp | undefined;
70
- testID?: string | undefined;
71
- }>, "accessibilityLabel" | "accessible" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable"> & Omit<Readonly<Omit<Readonly<{
72
- accessibilityLabelledBy?: (string | undefined) | (Array<string> | undefined);
73
- "aria-labelledby"?: string | undefined;
74
- accessibilityLiveRegion?: ("none" | "polite" | "assertive") | undefined;
75
- "aria-live"?: ("polite" | "assertive" | "off") | undefined;
76
- importantForAccessibility?: ("auto" | "yes" | "no" | "no-hide-descendants") | undefined;
77
- screenReaderFocusable?: boolean;
78
- }>, "accessibilityLabel" | "accessible" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden"> & Omit<Readonly<{
79
- accessibilityIgnoresInvertColors?: boolean | undefined;
80
- accessibilityViewIsModal?: boolean | undefined;
81
- accessibilityShowsLargeContentViewer?: boolean | undefined;
82
- accessibilityLargeContentTitle?: string | undefined;
83
- "aria-modal"?: boolean | undefined;
84
- accessibilityElementsHidden?: boolean | undefined;
85
- accessibilityLanguage?: string | undefined;
86
- accessibilityRespondsToUserInteraction?: boolean | undefined;
87
- }>, "accessibilityLabel" | "accessible" | "role" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden"> & {
88
- accessible?: boolean | undefined;
89
- accessibilityLabel?: string | undefined;
90
- accessibilityHint?: string | undefined;
91
- "aria-label"?: string | undefined;
92
- accessibilityRole?: import("react-native").AccessibilityRole | undefined;
93
- role?: import("react-native").Role | undefined;
94
- accessibilityState?: import("react-native").AccessibilityState | undefined;
95
- accessibilityValue?: import("react-native").AccessibilityValue | undefined;
96
- "aria-valuemax"?: import("react-native").AccessibilityValue["max"] | undefined;
97
- "aria-valuemin"?: import("react-native").AccessibilityValue["min"] | undefined;
98
- "aria-valuenow"?: import("react-native").AccessibilityValue["now"] | undefined;
99
- "aria-valuetext"?: import("react-native").AccessibilityValue["text"] | undefined;
100
- accessibilityActions?: ReadonlyArray<import("react-native/types_generated/Libraries/Components/View/ViewAccessibility").AccessibilityActionInfo> | undefined;
101
- "aria-busy"?: boolean | undefined;
102
- "aria-checked"?: (boolean | undefined) | "mixed";
103
- "aria-disabled"?: boolean | undefined;
104
- "aria-expanded"?: boolean | undefined;
105
- "aria-selected"?: boolean | undefined;
106
- "aria-hidden"?: boolean | undefined;
107
- }>, never>>, "ref"> & {
108
- ref?: React.Ref<import("react-native/types_generated/src/private/types/HostInstance").LegacyHostInstanceMethods>;
109
- }, "ref"> & {
110
- asChild?: boolean;
111
- } & {
112
- className?: string;
113
- children?: React.ReactNode;
114
- } & React.RefAttributes<import("react-native/types_generated/src/private/types/HostInstance").LegacyHostInstanceMethods>>;
115
- export { Text, TextClassContext };
116
- //# sourceMappingURL=Text.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Text.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B;;;GAGG;AACH,QAAA,MAAM,gBAAgB,uBAAqD,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBAGM,MAAM;eACP,KAAK,CAAC,SAAS;yHAkB5B,CAAC;AAGH,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,61 +0,0 @@
1
- import { TextInput, type TextInputProps } from 'react-native';
2
- /**
3
- * Props for Textarea component
4
- *
5
- * @extends TextInputProps - All React Native TextInput properties
6
- * @property {string} [className] - Additional Tailwind classes for styling
7
- * @property {string} [placeholderClassName] - Tailwind classes for placeholder text styling
8
- *
9
- * @example
10
- * ```tsx
11
- * <Textarea
12
- * placeholder="Enter your message"
13
- * value={message}
14
- * onChangeText={setMessage}
15
- * numberOfLines={4}
16
- * />
17
- * ```
18
- */
19
- interface TextareaProps extends TextInputProps {
20
- className?: string;
21
- placeholderClassName?: string;
22
- }
23
- /**
24
- * Multi-line text input component
25
- *
26
- * A textarea component for longer text input with configurable height and styling.
27
- * Automatically configured for multi-line input with appropriate platform-specific defaults.
28
- *
29
- * @component
30
- * @example
31
- * ```tsx
32
- * // Basic textarea
33
- * <Textarea
34
- * placeholder="Enter description"
35
- * value={description}
36
- * onChangeText={setDescription}
37
- * />
38
- *
39
- * // Controlled textarea with validation
40
- * <Textarea
41
- * value={bio}
42
- * onChangeText={setBio}
43
- * placeholder="Tell us about yourself"
44
- * numberOfLines={6}
45
- * maxLength={500}
46
- * />
47
- *
48
- * // Disabled textarea
49
- * <Textarea value={content} editable={false} />
50
- * ```
51
- *
52
- * @accessibility
53
- * - Supports standard TextInput accessibility props
54
- * - Placeholder text with appropriate color contrast
55
- * - Focus states on web for keyboard navigation
56
- * - Disabled state with reduced opacity
57
- */
58
- declare function Textarea({ className, multiline, numberOfLines, placeholderClassName, editable, ...props }: TextareaProps & React.RefAttributes<TextInput>): import("react/jsx-runtime").JSX.Element;
59
- export { Textarea };
60
- export type { TextareaProps };
61
- //# sourceMappingURL=Textarea.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Textarea.tsx"],"names":[],"mappings":"AACA,OAAO,EAAY,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAKxE;;;;;;;;;;;;;;;;GAgBG;AACH,UAAU,aAAc,SAAQ,cAAc;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,SAAgB,EAChB,aAAsD,EACtD,oBAAoB,EACpB,QAAe,EACf,GAAG,KAAK,EACT,EAAE,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,2CAmBhD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,aAAa,EAAE,CAAC"}
@@ -1,194 +0,0 @@
1
- import * as React from 'react';
2
- import type { SlottableViewProps } from '@rn-primitives/types';
3
- /**
4
- * Theme toggle button variants
5
- */
6
- type ThemeToggleVariant = 'icon' | 'button' | 'segmented';
7
- /**
8
- * Props for ThemeToggle component
9
- *
10
- * @property {'icon' | 'button' | 'segmented'} [variant='icon'] - Visual style variant
11
- * @property {boolean} [showLabel=false] - Show text label next to icon (for button variant)
12
- * @property {string} [className] - Additional Tailwind classes
13
- *
14
- * @example
15
- * ```tsx
16
- * // Icon only (default)
17
- * <ThemeToggle />
18
- *
19
- * // Button with label
20
- * <ThemeToggle variant="button" showLabel />
21
- *
22
- * // Segmented control
23
- * <ThemeToggle variant="segmented" />
24
- * ```
25
- */
26
- type ThemeToggleProps = SlottableViewProps & {
27
- variant?: ThemeToggleVariant;
28
- showLabel?: boolean;
29
- className?: string;
30
- };
31
- /**
32
- * Theme toggle component for switching between light, dark, and system themes
33
- *
34
- * Provides three variants:
35
- * - **icon**: Simple icon button that cycles through themes (light → dark → system)
36
- * - **button**: Button with icon and optional label
37
- * - **segmented**: Segmented control showing all three options
38
- *
39
- * @component
40
- * @example
41
- * ```tsx
42
- * // Icon toggle (minimal)
43
- * <ThemeToggle />
44
- *
45
- * // Button with label
46
- * <ThemeToggle variant="button" showLabel />
47
- *
48
- * // Segmented control (shows all options)
49
- * <ThemeToggle variant="segmented" />
50
- *
51
- * // Custom styling
52
- * <ThemeToggle className="my-4" />
53
- * ```
54
- *
55
- * @accessibility
56
- * - Proper button role for screen readers
57
- * - Announces current theme state
58
- * - Keyboard navigable on web
59
- */
60
- declare const ThemeToggle: React.ForwardRefExoticComponent<Omit<Omit<Readonly<Omit<Readonly<{
61
- onAccessibilityAction?: ((event: import("react-native").AccessibilityActionEvent) => unknown) | undefined;
62
- onAccessibilityTap?: (() => unknown) | undefined;
63
- onLayout?: ((event: import("react-native").LayoutChangeEvent) => unknown) | undefined;
64
- onMagicTap?: (() => unknown) | undefined;
65
- onAccessibilityEscape?: (() => unknown) | undefined;
66
- }>, "onMoveShouldSetResponder" | "onMoveShouldSetResponderCapture" | "onResponderGrant" | "onResponderMove" | "onResponderReject" | "onResponderRelease" | "onResponderStart" | "onResponderEnd" | "onResponderTerminate" | "onResponderTerminationRequest" | "onStartShouldSetResponder" | "onStartShouldSetResponderCapture" | "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "onPointerEnter" | "onPointerLeave" | "onPointerMove" | "onClick" | "onMouseEnter" | "onMouseLeave" | "onClickCapture" | "onPointerEnterCapture" | "onPointerLeaveCapture" | "onPointerMoveCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onBlur" | "onBlurCapture" | "onFocus" | "onFocusCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "nativeBackgroundAndroid" | "nativeForegroundAndroid" | "renderToHardwareTextureAndroid" | "hasTVPreferredFocus" | "nextFocusDown" | "nextFocusForward" | "nextFocusLeft" | "nextFocusRight" | "nextFocusUp" | "focusable" | "tabIndex" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
67
- onMoveShouldSetResponder?: ((e: import("react-native").GestureResponderEvent) => boolean) | undefined;
68
- onMoveShouldSetResponderCapture?: ((e: import("react-native").GestureResponderEvent) => boolean) | undefined;
69
- onResponderGrant?: ((e: import("react-native").GestureResponderEvent) => void | boolean) | undefined;
70
- onResponderMove?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
71
- onResponderReject?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
72
- onResponderRelease?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
73
- onResponderStart?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
74
- onResponderEnd?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
75
- onResponderTerminate?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
76
- onResponderTerminationRequest?: ((e: import("react-native").GestureResponderEvent) => boolean) | undefined;
77
- onStartShouldSetResponder?: ((e: import("react-native").GestureResponderEvent) => boolean) | undefined;
78
- onStartShouldSetResponderCapture?: ((e: import("react-native").GestureResponderEvent) => boolean) | undefined;
79
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "onPointerEnter" | "onPointerLeave" | "onPointerMove" | "onClick" | "onMouseEnter" | "onMouseLeave" | "onClickCapture" | "onPointerEnterCapture" | "onPointerLeaveCapture" | "onPointerMoveCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onBlur" | "onBlurCapture" | "onFocus" | "onFocusCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "nativeBackgroundAndroid" | "nativeForegroundAndroid" | "renderToHardwareTextureAndroid" | "hasTVPreferredFocus" | "nextFocusDown" | "nextFocusForward" | "nextFocusLeft" | "nextFocusRight" | "nextFocusUp" | "focusable" | "tabIndex" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
80
- onMouseEnter?: ((event: import("react-native").MouseEvent) => void) | undefined;
81
- onMouseLeave?: ((event: import("react-native").MouseEvent) => void) | undefined;
82
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "onPointerEnter" | "onPointerLeave" | "onPointerMove" | "onClick" | "onClickCapture" | "onPointerEnterCapture" | "onPointerLeaveCapture" | "onPointerMoveCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onBlur" | "onBlurCapture" | "onFocus" | "onFocusCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "nativeBackgroundAndroid" | "nativeForegroundAndroid" | "renderToHardwareTextureAndroid" | "hasTVPreferredFocus" | "nextFocusDown" | "nextFocusForward" | "nextFocusLeft" | "nextFocusRight" | "nextFocusUp" | "focusable" | "tabIndex" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
83
- onClick?: ((event: import("react-native").PointerEvent) => void) | undefined;
84
- onClickCapture?: ((event: import("react-native").PointerEvent) => void) | undefined;
85
- onPointerEnter?: ((event: import("react-native").PointerEvent) => void) | undefined;
86
- onPointerEnterCapture?: ((event: import("react-native").PointerEvent) => void) | undefined;
87
- onPointerLeave?: ((event: import("react-native").PointerEvent) => void) | undefined;
88
- onPointerLeaveCapture?: ((event: import("react-native").PointerEvent) => void) | undefined;
89
- onPointerMove?: ((event: import("react-native").PointerEvent) => void) | undefined;
90
- onPointerMoveCapture?: ((event: import("react-native").PointerEvent) => void) | undefined;
91
- onPointerCancel?: ((e: import("react-native").PointerEvent) => void) | undefined;
92
- onPointerCancelCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
93
- onPointerDown?: ((e: import("react-native").PointerEvent) => void) | undefined;
94
- onPointerDownCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
95
- onPointerUp?: ((e: import("react-native").PointerEvent) => void) | undefined;
96
- onPointerUpCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
97
- onPointerOver?: ((e: import("react-native").PointerEvent) => void) | undefined;
98
- onPointerOverCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
99
- onPointerOut?: ((e: import("react-native").PointerEvent) => void) | undefined;
100
- onPointerOutCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
101
- onGotPointerCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
102
- onGotPointerCaptureCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
103
- onLostPointerCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
104
- onLostPointerCaptureCapture?: ((e: import("react-native").PointerEvent) => void) | undefined;
105
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "onClick" | "onBlur" | "onBlurCapture" | "onFocus" | "onFocusCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "nativeBackgroundAndroid" | "nativeForegroundAndroid" | "renderToHardwareTextureAndroid" | "hasTVPreferredFocus" | "nextFocusDown" | "nextFocusForward" | "nextFocusLeft" | "nextFocusRight" | "nextFocusUp" | "focusable" | "tabIndex" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
106
- onBlur?: ((event: import("react-native").BlurEvent) => void) | undefined;
107
- onBlurCapture?: ((event: import("react-native").BlurEvent) => void) | undefined;
108
- onFocus?: ((event: import("react-native").FocusEvent) => void) | undefined;
109
- onFocusCapture?: ((event: import("react-native").FocusEvent) => void) | undefined;
110
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "onClick" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "nativeBackgroundAndroid" | "nativeForegroundAndroid" | "renderToHardwareTextureAndroid" | "hasTVPreferredFocus" | "nextFocusDown" | "nextFocusForward" | "nextFocusLeft" | "nextFocusRight" | "nextFocusUp" | "focusable" | "tabIndex" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
111
- onTouchCancel?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
112
- onTouchCancelCapture?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
113
- onTouchEnd?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
114
- onTouchEndCapture?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
115
- onTouchMove?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
116
- onTouchMoveCapture?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
117
- onTouchStart?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
118
- onTouchStartCapture?: ((e: import("react-native").GestureResponderEvent) => void) | undefined;
119
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "onClick" | "nativeBackgroundAndroid" | "nativeForegroundAndroid" | "renderToHardwareTextureAndroid" | "hasTVPreferredFocus" | "nextFocusDown" | "nextFocusForward" | "nextFocusLeft" | "nextFocusRight" | "nextFocusUp" | "focusable" | "tabIndex" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
120
- nativeBackgroundAndroid?: import("react-native/types_generated/Libraries/Components/View/ViewPropTypes").AndroidDrawable | undefined;
121
- nativeForegroundAndroid?: import("react-native/types_generated/Libraries/Components/View/ViewPropTypes").AndroidDrawable | undefined;
122
- renderToHardwareTextureAndroid?: boolean | undefined;
123
- hasTVPreferredFocus?: boolean | undefined;
124
- nextFocusDown?: number | undefined;
125
- nextFocusForward?: number | undefined;
126
- nextFocusLeft?: number | undefined;
127
- nextFocusRight?: number | undefined;
128
- nextFocusUp?: number | undefined;
129
- focusable?: boolean | undefined;
130
- tabIndex?: 0 | -1;
131
- onClick?: ((event: import("react-native").GestureResponderEvent) => unknown) | undefined;
132
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "shouldRasterizeIOS" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
133
- shouldRasterizeIOS?: boolean | undefined;
134
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "accessibilityLabel" | "accessible" | "testID" | "style" | "nativeID" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden" | "accessibilityLabelledBy" | "aria-labelledby" | "accessibilityLiveRegion" | "aria-live" | "importantForAccessibility" | "screenReaderFocusable" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<Omit<Readonly<{
135
- accessibilityLabelledBy?: (string | undefined) | (Array<string> | undefined);
136
- "aria-labelledby"?: string | undefined;
137
- accessibilityLiveRegion?: ("none" | "polite" | "assertive") | undefined;
138
- "aria-live"?: ("polite" | "assertive" | "off") | undefined;
139
- importantForAccessibility?: ("auto" | "yes" | "no" | "no-hide-descendants") | undefined;
140
- screenReaderFocusable?: boolean;
141
- }>, "accessibilityLabel" | "accessible" | "role" | "accessibilityIgnoresInvertColors" | "accessibilityViewIsModal" | "accessibilityShowsLargeContentViewer" | "accessibilityLargeContentTitle" | "aria-modal" | "accessibilityElementsHidden" | "accessibilityLanguage" | "accessibilityRespondsToUserInteraction" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden"> & Omit<Readonly<{
142
- accessibilityIgnoresInvertColors?: boolean | undefined;
143
- accessibilityViewIsModal?: boolean | undefined;
144
- accessibilityShowsLargeContentViewer?: boolean | undefined;
145
- accessibilityLargeContentTitle?: string | undefined;
146
- "aria-modal"?: boolean | undefined;
147
- accessibilityElementsHidden?: boolean | undefined;
148
- accessibilityLanguage?: string | undefined;
149
- accessibilityRespondsToUserInteraction?: boolean | undefined;
150
- }>, "accessibilityLabel" | "accessible" | "role" | "accessibilityHint" | "aria-label" | "accessibilityRole" | "accessibilityState" | "accessibilityValue" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "accessibilityActions" | "aria-busy" | "aria-checked" | "aria-disabled" | "aria-expanded" | "aria-selected" | "aria-hidden"> & {
151
- accessible?: boolean | undefined;
152
- accessibilityLabel?: string | undefined;
153
- accessibilityHint?: string | undefined;
154
- "aria-label"?: string | undefined;
155
- accessibilityRole?: import("react-native").AccessibilityRole | undefined;
156
- role?: import("react-native").Role | undefined;
157
- accessibilityState?: import("react-native").AccessibilityState | undefined;
158
- accessibilityValue?: import("react-native").AccessibilityValue | undefined;
159
- "aria-valuemax"?: import("react-native").AccessibilityValue["max"] | undefined;
160
- "aria-valuemin"?: import("react-native").AccessibilityValue["min"] | undefined;
161
- "aria-valuenow"?: import("react-native").AccessibilityValue["now"] | undefined;
162
- "aria-valuetext"?: import("react-native").AccessibilityValue["text"] | undefined;
163
- accessibilityActions?: ReadonlyArray<import("react-native/types_generated/Libraries/Components/View/ViewAccessibility").AccessibilityActionInfo> | undefined;
164
- "aria-busy"?: boolean | undefined;
165
- "aria-checked"?: (boolean | undefined) | "mixed";
166
- "aria-disabled"?: boolean | undefined;
167
- "aria-expanded"?: boolean | undefined;
168
- "aria-selected"?: boolean | undefined;
169
- "aria-hidden"?: boolean | undefined;
170
- }>, "pointerEvents" | "hitSlop" | "children" | "id" | "testID" | "style" | "nativeID" | "collapsable" | "collapsableChildren" | "needsOffscreenAlphaCompositing" | "removeClippedSubviews" | "experimental_accessibilityOrder"> & Omit<Readonly<{
171
- children?: React.ReactNode;
172
- style?: import("react-native/types_generated/Libraries/StyleSheet/StyleSheet").ViewStyleProp | undefined;
173
- collapsable?: boolean | undefined;
174
- collapsableChildren?: boolean | undefined;
175
- id?: string;
176
- testID?: string | undefined;
177
- nativeID?: string | undefined;
178
- needsOffscreenAlphaCompositing?: boolean | undefined;
179
- hitSlop?: import("react-native/types_generated/Libraries/StyleSheet/EdgeInsetsPropType").EdgeInsetsOrSizeProp | undefined;
180
- pointerEvents?: ("auto" | "box-none" | "box-only" | "none") | undefined;
181
- removeClippedSubviews?: boolean | undefined;
182
- experimental_accessibilityOrder?: Array<string> | undefined;
183
- }>, never>>, "ref"> & {
184
- ref?: React.Ref<React.ComponentRef<typeof import("react-native/types_generated/Libraries/Components/View/ViewNativeComponent").default>>;
185
- }, "ref"> & {
186
- asChild?: boolean;
187
- } & {
188
- variant?: ThemeToggleVariant;
189
- showLabel?: boolean;
190
- className?: string;
191
- } & React.RefAttributes<import("react-native/types_generated/src/private/types/HostInstance").LegacyHostInstanceMethods>>;
192
- export { ThemeToggle };
193
- export type { ThemeToggleProps, ThemeToggleVariant };
194
- //# sourceMappingURL=Theme-Toggle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Theme-Toggle.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Theme-Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAE,kBAAkB,EAAW,MAAM,sBAAsB,CAAC;AAKxE;;GAEG;AACH,KAAK,kBAAkB,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE1D;;;;;;;;;;;;;;;;;;GAkBG;AACH,KAAK,gBAAgB,GAAG,kBAAkB,GAAG;IAC3C,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAlCL,kBAAkB;gBAChB,OAAO;gBACP,MAAM;yHA+JnB,CAAC;AAGF,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,55 +0,0 @@
1
- import { Text } from './Text';
2
- import type { LucideIcon } from 'lucide-react-native';
3
- import * as React from 'react';
4
- import { View, type ViewProps } from 'react-native';
5
- /**
6
- * Toast notification component
7
- *
8
- * Displays temporary messages or notifications with optional icons.
9
- * Supports default and destructive variants for different message types.
10
- *
11
- * @component
12
- * @example
13
- * ```tsx
14
- * <Toast icon={CheckCircle}>
15
- * <ToastTitle>
16
- * <Text>Success</Text>
17
- * </ToastTitle>
18
- * <ToastDescription>
19
- * <Text>Your changes have been saved</Text>
20
- * </ToastDescription>
21
- * </Toast>
22
- *
23
- * <Toast variant="destructive" icon={AlertCircle}>
24
- * <ToastTitle>
25
- * <Text>Error</Text>
26
- * </ToastTitle>
27
- * <ToastDescription>
28
- * <Text>Failed to save changes</Text>
29
- * </ToastDescription>
30
- * </Toast>
31
- * ```
32
- *
33
- * @accessibility
34
- * - Announces messages to screen readers
35
- * - Proper role for notifications
36
- */
37
- declare function Toast({ className, variant, children, icon, iconClassName, ...props }: ViewProps & React.RefAttributes<View> & {
38
- icon?: LucideIcon;
39
- variant?: 'default' | 'destructive';
40
- iconClassName?: string;
41
- }): import("react/jsx-runtime").JSX.Element;
42
- /**
43
- * Toast title component
44
- *
45
- * @component
46
- */
47
- declare function ToastTitle({ className, ...props }: React.ComponentProps<typeof Text> & React.RefAttributes<Text>): import("react/jsx-runtime").JSX.Element;
48
- /**
49
- * Toast description component
50
- *
51
- * @component
52
- */
53
- declare function ToastDescription({ className, ...props }: React.ComponentProps<typeof Text> & React.RefAttributes<Text>): import("react/jsx-runtime").JSX.Element;
54
- export { Toast, ToastDescription, ToastTitle };
55
- //# sourceMappingURL=Toast.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Toast.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAoB,MAAM,QAAQ,CAAC;AAEhD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,IAAI,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,aAAa,EACb,GAAG,KAAK,EACT,EAAE,SAAS,GACV,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG;IAC1B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,2CA+BF;AAED;;;;GAIG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,2CAO/D;AAED;;;;GAIG;AACH,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,2CAY/D;AAED,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,CAAC"}
@@ -1,49 +0,0 @@
1
- import { Icon } from './Icon';
2
- import { toggleVariants } from './Toggle';
3
- import * as ToggleGroupPrimitive from '@rn-primitives/toggle-group';
4
- import type { VariantProps } from 'class-variance-authority';
5
- import * as React from 'react';
6
- /**
7
- * Toggle group component for grouping related toggle buttons
8
- *
9
- * Allows single or multiple selection among a set of toggle buttons.
10
- * Supports both outline and default variants.
11
- *
12
- * @component
13
- * @example
14
- * ```tsx
15
- * <ToggleGroup type="single" value={alignment} onValueChange={setAlignment}>
16
- * <ToggleGroupItem value="left" isFirst>
17
- * <ToggleGroupIcon as={AlignLeft} />
18
- * </ToggleGroupItem>
19
- * <ToggleGroupItem value="center">
20
- * <ToggleGroupIcon as={AlignCenter} />
21
- * </ToggleGroupItem>
22
- * <ToggleGroupItem value="right" isLast>
23
- * <ToggleGroupIcon as={AlignRight} />
24
- * </ToggleGroupItem>
25
- * </ToggleGroup>
26
- * ```
27
- *
28
- * @accessibility
29
- * - Uses proper ARIA attributes for grouped toggles
30
- * - Keyboard navigation support
31
- */
32
- declare function ToggleGroup({ className, variant, size, children, ...props }: ToggleGroupPrimitive.RootProps & VariantProps<typeof toggleVariants> & React.RefAttributes<ToggleGroupPrimitive.RootRef>): import("react/jsx-runtime").JSX.Element;
33
- /**
34
- * Individual toggle item within a toggle group
35
- *
36
- * @component
37
- */
38
- declare function ToggleGroupItem({ className, children, variant, size, isFirst, isLast, ...props }: ToggleGroupPrimitive.ItemProps & VariantProps<typeof toggleVariants> & React.RefAttributes<ToggleGroupPrimitive.ItemRef> & {
39
- isFirst?: boolean;
40
- isLast?: boolean;
41
- }): import("react/jsx-runtime").JSX.Element;
42
- /**
43
- * Icon component for use within toggle group items
44
- *
45
- * @component
46
- */
47
- declare function ToggleGroupIcon({ className, ...props }: React.ComponentProps<typeof Icon>): import("react/jsx-runtime").JSX.Element;
48
- export { ToggleGroup, ToggleGroupIcon, ToggleGroupItem };
49
- //# sourceMappingURL=Toggle-Group.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toggle-Group.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Toggle-Group.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,KAAK,oBAAoB,MAAM,6BAA6B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,oBAAoB,CAAC,SAAS,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GACnC,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC,OAAO,CAAC,2CAgBlD;AAiBD;;;;GAIG;AACH,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,OAAO,EACP,MAAM,EACN,GAAG,KAAK,EACT,EAAE,oBAAoB,CAAC,SAAS,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GACnC,KAAK,CAAC,aAAa,CAAC,oBAAoB,CAAC,OAAO,CAAC,GAAG;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,2CAyCF;AAED;;;;GAIG;AACH,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,2CAKnC;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC"}
@@ -1,53 +0,0 @@
1
- import { Icon } from './Icon';
2
- import * as TogglePrimitive from '@rn-primitives/toggle';
3
- import { type VariantProps } from 'class-variance-authority';
4
- import * as React from 'react';
5
- /**
6
- * Toggle button style variants using class-variance-authority
7
- *
8
- * @variant default - Standard toggle with transparent background
9
- * @variant outline - Toggle with border and background
10
- *
11
- * @size default - Standard size (40px/36px)
12
- * @size sm - Small size (36px/32px)
13
- * @size lg - Large size (44px/40px)
14
- */
15
- declare const toggleVariants: (props?: {
16
- variant?: "default" | "outline";
17
- size?: "default" | "sm" | "lg";
18
- } & import("class-variance-authority/types").ClassProp) => string;
19
- /**
20
- * Toggle button component for on/off states
21
- *
22
- * A two-state button that can be toggled between pressed and unpressed states.
23
- * Supports multiple variants and sizes.
24
- *
25
- * @component
26
- * @example
27
- * ```tsx
28
- * <Toggle pressed={isBold} onPressedChange={setIsBold}>
29
- * <ToggleIcon as={Bold} />
30
- * <Text>Bold</Text>
31
- * </Toggle>
32
- *
33
- * <Toggle variant="outline" size="sm">
34
- * <ToggleIcon as={Italic} />
35
- * </Toggle>
36
- * ```
37
- *
38
- * @accessibility
39
- * - Uses proper ARIA pressed state
40
- * - Disabled state prevents interaction
41
- * - Focus visible states on web
42
- */
43
- declare function Toggle({ className, variant, size, ...props }: TogglePrimitive.RootProps & VariantProps<typeof toggleVariants> & React.RefAttributes<TogglePrimitive.RootRef>): import("react/jsx-runtime").JSX.Element;
44
- /**
45
- * Icon component for use within Toggle buttons
46
- *
47
- * Automatically inherits text styling from the toggle context.
48
- *
49
- * @component
50
- */
51
- declare function ToggleIcon({ className, ...props }: React.ComponentProps<typeof Icon>): import("react/jsx-runtime").JSX.Element;
52
- export { Toggle, ToggleIcon, toggleVariants };
53
- //# sourceMappingURL=Toggle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,OAAO,KAAK,eAAe,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B;;;;;;;;;GASG;AACH,QAAA,MAAM,cAAc;;;iEA6BnB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,eAAe,CAAC,SAAS,GAC1B,YAAY,CAAC,OAAO,cAAc,CAAC,GACnC,KAAK,CAAC,aAAa,CAAC,eAAe,CAAC,OAAO,CAAC,2CAsB7C;AAED;;;;;;GAMG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,2CAKnC;AAED,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC"}