@campxdev/react-native-blueprint 0.1.3 → 0.1.6

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 (157) hide show
  1. package/README.md +153 -69
  2. package/lib/module/app/_layout.js +7 -1
  3. package/lib/module/app/_layout.js.map +1 -1
  4. package/lib/module/components/ui/Accordion.js.map +1 -1
  5. package/lib/module/components/ui/Alert-Dialog.js +2 -2
  6. package/lib/module/components/ui/Alert-Dialog.js.map +1 -1
  7. package/lib/module/components/ui/Alert.js +2 -2
  8. package/lib/module/components/ui/Alert.js.map +1 -1
  9. package/lib/module/components/ui/AppBar.js.map +1 -1
  10. package/lib/module/components/ui/Avatar.js +3 -3
  11. package/lib/module/components/ui/Avatar.js.map +1 -1
  12. package/lib/module/components/ui/Bottom-Sheet.js +9 -2
  13. package/lib/module/components/ui/Bottom-Sheet.js.map +1 -1
  14. package/lib/module/components/ui/Context-Menu.js +24 -24
  15. package/lib/module/components/ui/Context-Menu.js.map +1 -1
  16. package/lib/module/components/ui/Custom-Card.js +6 -2
  17. package/lib/module/components/ui/Custom-Card.js.map +1 -1
  18. package/lib/module/components/ui/Dialog.js +3 -3
  19. package/lib/module/components/ui/Dialog.js.map +1 -1
  20. package/lib/module/components/ui/Dropdown-Menu.js +3 -3
  21. package/lib/module/components/ui/Dropdown-Menu.js.map +1 -1
  22. package/lib/module/components/ui/Input.js +3 -2
  23. package/lib/module/components/ui/Input.js.map +1 -1
  24. package/lib/module/components/ui/Menubar.js +4 -4
  25. package/lib/module/components/ui/Menubar.js.map +1 -1
  26. package/lib/module/components/ui/Native-Only-Animated-View.js.map +1 -1
  27. package/lib/module/components/ui/NavBar.js.map +1 -1
  28. package/lib/module/components/ui/Progress.js +2 -2
  29. package/lib/module/components/ui/Progress.js.map +1 -1
  30. package/lib/module/components/ui/Select.js +3 -3
  31. package/lib/module/components/ui/Select.js.map +1 -1
  32. package/lib/module/components/ui/Separator.js +2 -2
  33. package/lib/module/components/ui/Separator.js.map +1 -1
  34. package/lib/module/components/ui/Skeleton.js +2 -2
  35. package/lib/module/components/ui/Skeleton.js.map +1 -1
  36. package/lib/module/components/ui/Slider.js +7 -2
  37. package/lib/module/components/ui/Slider.js.map +1 -1
  38. package/lib/module/components/ui/Table.js +2 -2
  39. package/lib/module/components/ui/Table.js.map +1 -1
  40. package/lib/module/components/ui/Text.js.map +1 -1
  41. package/lib/module/components/ui/Textarea.js +3 -2
  42. package/lib/module/components/ui/Textarea.js.map +1 -1
  43. package/lib/module/components/ui/Theme-Toggle.js +3 -3
  44. package/lib/module/components/ui/Theme-Toggle.js.map +1 -1
  45. package/lib/module/components/ui/Toast.js +2 -2
  46. package/lib/module/components/ui/Toast.js.map +1 -1
  47. package/lib/module/index.js +4 -0
  48. package/lib/module/index.js.map +1 -1
  49. package/lib/module/lib/slot-helpers.js +19 -0
  50. package/lib/module/lib/slot-helpers.js.map +1 -0
  51. package/lib/module/types/components.d.js +4 -0
  52. package/lib/module/types/components.d.js.map +1 -0
  53. package/lib/module/types/global.d.js +5 -0
  54. package/lib/module/types/global.d.js.map +1 -1
  55. package/lib/module/types/rn-primitives.d.js +56 -1
  56. package/lib/module/types/rn-primitives.d.js.map +1 -1
  57. package/lib/typescript/package.json +1 -0
  58. package/lib/typescript/src/app/_layout.d.ts +0 -1
  59. package/lib/typescript/src/app/_layout.d.ts.map +1 -1
  60. package/lib/typescript/src/components/ui/Accordion.d.ts.map +1 -1
  61. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts +3 -26
  62. package/lib/typescript/src/components/ui/Alert-Dialog.d.ts.map +1 -1
  63. package/lib/typescript/src/components/ui/Alert.d.ts +3 -2
  64. package/lib/typescript/src/components/ui/Alert.d.ts.map +1 -1
  65. package/lib/typescript/src/components/ui/AppBar.d.ts +3 -3
  66. package/lib/typescript/src/components/ui/AppBar.d.ts.map +1 -1
  67. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts +2 -8
  68. package/lib/typescript/src/components/ui/Aspect-Ratio.d.ts.map +1 -1
  69. package/lib/typescript/src/components/ui/Avatar.d.ts +472 -337
  70. package/lib/typescript/src/components/ui/Avatar.d.ts.map +1 -1
  71. package/lib/typescript/src/components/ui/Badge.d.ts +9 -136
  72. package/lib/typescript/src/components/ui/Badge.d.ts.map +1 -1
  73. package/lib/typescript/src/components/ui/Bottom-Sheet.d.ts.map +1 -1
  74. package/lib/typescript/src/components/ui/Button.d.ts +12 -165
  75. package/lib/typescript/src/components/ui/Button.d.ts.map +1 -1
  76. package/lib/typescript/src/components/ui/Card.d.ts +7 -768
  77. package/lib/typescript/src/components/ui/Card.d.ts.map +1 -1
  78. package/lib/typescript/src/components/ui/Collapsible.d.ts +4 -33
  79. package/lib/typescript/src/components/ui/Collapsible.d.ts.map +1 -1
  80. package/lib/typescript/src/components/ui/Context-Menu.d.ts +6 -49
  81. package/lib/typescript/src/components/ui/Context-Menu.d.ts.map +1 -1
  82. package/lib/typescript/src/components/ui/Custom-Card.d.ts +7 -768
  83. package/lib/typescript/src/components/ui/Custom-Card.d.ts.map +1 -1
  84. package/lib/typescript/src/components/ui/Dialog.d.ts +4 -40
  85. package/lib/typescript/src/components/ui/Dialog.d.ts.map +1 -1
  86. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts +7 -49
  87. package/lib/typescript/src/components/ui/Dropdown-Menu.d.ts.map +1 -1
  88. package/lib/typescript/src/components/ui/Hover-Card.d.ts +2 -21
  89. package/lib/typescript/src/components/ui/Hover-Card.d.ts.map +1 -1
  90. package/lib/typescript/src/components/ui/Input.d.ts +5 -3
  91. package/lib/typescript/src/components/ui/Input.d.ts.map +1 -1
  92. package/lib/typescript/src/components/ui/Label.d.ts +2 -73
  93. package/lib/typescript/src/components/ui/Label.d.ts.map +1 -1
  94. package/lib/typescript/src/components/ui/Menubar.d.ts +6 -39
  95. package/lib/typescript/src/components/ui/Menubar.d.ts.map +1 -1
  96. package/lib/typescript/src/components/ui/NavBar.d.ts.map +1 -1
  97. package/lib/typescript/src/components/ui/Popover.d.ts +2 -19
  98. package/lib/typescript/src/components/ui/Popover.d.ts.map +1 -1
  99. package/lib/typescript/src/components/ui/Progress.d.ts.map +1 -1
  100. package/lib/typescript/src/components/ui/Select.d.ts +5 -26
  101. package/lib/typescript/src/components/ui/Select.d.ts.map +1 -1
  102. package/lib/typescript/src/components/ui/Separator.d.ts +2 -128
  103. package/lib/typescript/src/components/ui/Separator.d.ts.map +1 -1
  104. package/lib/typescript/src/components/ui/Skeleton.d.ts +4 -2
  105. package/lib/typescript/src/components/ui/Skeleton.d.ts.map +1 -1
  106. package/lib/typescript/src/components/ui/Slider.d.ts +2 -1
  107. package/lib/typescript/src/components/ui/Slider.d.ts.map +1 -1
  108. package/lib/typescript/src/components/ui/Table.d.ts +16 -6
  109. package/lib/typescript/src/components/ui/Table.d.ts.map +1 -1
  110. package/lib/typescript/src/components/ui/Text.d.ts +3 -74
  111. package/lib/typescript/src/components/ui/Text.d.ts.map +1 -1
  112. package/lib/typescript/src/components/ui/Textarea.d.ts +7 -3
  113. package/lib/typescript/src/components/ui/Textarea.d.ts.map +1 -1
  114. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts +1 -128
  115. package/lib/typescript/src/components/ui/Theme-Toggle.d.ts.map +1 -1
  116. package/lib/typescript/src/components/ui/Toast.d.ts +3 -2
  117. package/lib/typescript/src/components/ui/Toast.d.ts.map +1 -1
  118. package/lib/typescript/src/components/ui/Toggle.d.ts +4 -4
  119. package/lib/typescript/src/components/ui/Toggle.d.ts.map +1 -1
  120. package/lib/typescript/src/components/ui/Tooltip.d.ts +2 -22
  121. package/lib/typescript/src/components/ui/Tooltip.d.ts.map +1 -1
  122. package/lib/typescript/src/index.d.ts +2 -0
  123. package/lib/typescript/src/index.d.ts.map +1 -1
  124. package/lib/typescript/src/lib/slot-helpers.d.ts +32 -0
  125. package/lib/typescript/src/lib/slot-helpers.d.ts.map +1 -0
  126. package/nativewind-env.d.ts +7 -0
  127. package/package.json +24 -7
  128. package/src/app/_layout.tsx +7 -1
  129. package/src/components/ui/Accordion.tsx +3 -1
  130. package/src/components/ui/Alert-Dialog.tsx +5 -3
  131. package/src/components/ui/Alert.tsx +7 -4
  132. package/src/components/ui/AppBar.tsx +6 -2
  133. package/src/components/ui/Avatar.tsx +10 -6
  134. package/src/components/ui/Bottom-Sheet.tsx +10 -2
  135. package/src/components/ui/Context-Menu.tsx +15 -4
  136. package/src/components/ui/Custom-Card.tsx +6 -1
  137. package/src/components/ui/Dialog.tsx +13 -3
  138. package/src/components/ui/Dropdown-Menu.tsx +8 -4
  139. package/src/components/ui/Input.tsx +12 -4
  140. package/src/components/ui/Menubar.tsx +13 -6
  141. package/src/components/ui/Native-Only-Animated-View.tsx +1 -1
  142. package/src/components/ui/NavBar.tsx +9 -3
  143. package/src/components/ui/Progress.tsx +4 -2
  144. package/src/components/ui/Select.tsx +18 -6
  145. package/src/components/ui/Separator.tsx +4 -2
  146. package/src/components/ui/Skeleton.tsx +5 -3
  147. package/src/components/ui/Slider.tsx +8 -2
  148. package/src/components/ui/Table.tsx +9 -7
  149. package/src/components/ui/Text.tsx +1 -6
  150. package/src/components/ui/Textarea.tsx +15 -4
  151. package/src/components/ui/Theme-Toggle.tsx +7 -3
  152. package/src/components/ui/Toast.tsx +6 -3
  153. package/src/index.tsx +4 -0
  154. package/src/lib/slot-helpers.ts +57 -0
  155. package/src/types/components.d.ts +38 -0
  156. package/src/types/global.d.ts +178 -4
  157. package/src/types/rn-primitives.d.ts +1403 -46
@@ -57,134 +57,7 @@ type ThemeToggleProps = SlottableViewProps & {
57
57
  * - Announces current theme state
58
58
  * - Keyboard navigable on web
59
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
- } & {
60
+ declare const ThemeToggle: React.ForwardRefExoticComponent<SlottableViewProps & {
188
61
  variant?: ThemeToggleVariant;
189
62
  showLabel?: boolean;
190
63
  className?: string;
@@ -1 +1 @@
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
+ {"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;AASxE;;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,7 +1,7 @@
1
1
  import { Text } from './Text';
2
2
  import type { LucideIcon } from 'lucide-react-native';
3
3
  import * as React from 'react';
4
- import { View, type ViewProps } from 'react-native';
4
+ import { View as RNView, type ViewProps } from 'react-native';
5
5
  /**
6
6
  * Toast notification component
7
7
  *
@@ -34,7 +34,8 @@ import { View, type ViewProps } from 'react-native';
34
34
  * - Announces messages to screen readers
35
35
  * - Proper role for notifications
36
36
  */
37
- declare function Toast({ className, variant, children, icon, iconClassName, ...props }: ViewProps & React.RefAttributes<View> & {
37
+ declare function Toast({ className, variant, children, icon, iconClassName, ...props }: ViewProps & React.RefAttributes<RNView> & {
38
+ children?: React.ReactNode;
38
39
  icon?: LucideIcon;
39
40
  variant?: 'default' | 'destructive';
40
41
  iconClassName?: string;
@@ -1 +1 @@
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
+ {"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,IAAI,MAAM,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAO9D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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,MAAM,CAAC,GAAG;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,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"}
@@ -12,10 +12,10 @@ import * as React from 'react';
12
12
  * @size sm - Small size (36px/32px)
13
13
  * @size lg - Large size (44px/40px)
14
14
  */
15
- declare const toggleVariants: (props?: {
16
- variant?: "default" | "outline";
17
- size?: "default" | "sm" | "lg";
18
- } & import("class-variance-authority/types").ClassProp) => string;
15
+ declare const toggleVariants: (props?: ({
16
+ variant?: "default" | "outline" | null | undefined;
17
+ size?: "default" | "sm" | "lg" | null | undefined;
18
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
19
19
  /**
20
20
  * Toggle button component for on/off states
21
21
  *
@@ -1 +1 @@
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"}
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;;;8EA6BnB,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"}
@@ -18,33 +18,13 @@ import * as React from 'react';
18
18
  * </Tooltip>
19
19
  * ```
20
20
  */
21
- declare const Tooltip: React.ForwardRefExoticComponent<import("react-native").ViewProps & {
22
- asChild?: boolean;
23
- } & {
24
- onOpenChange?: (open: boolean) => void;
25
- delayDuration?: number;
26
- skipDelayDuration?: number;
27
- disableHoverableContent?: boolean;
28
- } & React.RefAttributes<(props: Omit<import("react-native/types_generated/Libraries/Components/View/ViewPropTypes").ViewProps, keyof {
29
- ref?: React.Ref<React.ComponentRef<typeof import("react-native/types_generated/Libraries/Components/View/ViewNativeComponent").default>>;
30
- }> & {
31
- ref?: React.Ref<React.ComponentRef<typeof import("react-native/types_generated/Libraries/Components/View/ViewNativeComponent").default>>;
32
- }) => React.ReactNode>>;
21
+ declare const Tooltip: React.ForwardRefExoticComponent<TooltipPrimitive.RootProps>;
33
22
  /**
34
23
  * Trigger component that shows tooltip on hover/press
35
24
  *
36
25
  * @component
37
26
  */
38
- declare const TooltipTrigger: React.ForwardRefExoticComponent<Omit<import("react-native").PressableProps & React.RefAttributes<(props: Omit<import("react-native/types_generated/Libraries/Components/View/ViewPropTypes").ViewProps, keyof {
39
- ref?: React.Ref<React.ComponentRef<typeof import("react-native/types_generated/Libraries/Components/View/ViewNativeComponent").default>>;
40
- }> & {
41
- ref?: React.Ref<React.ComponentRef<typeof import("react-native/types_generated/Libraries/Components/View/ViewNativeComponent").default>>;
42
- }) => React.ReactNode>, "ref"> & {
43
- asChild?: boolean;
44
- } & {
45
- onKeyDown?: (ev: React.KeyboardEvent) => void;
46
- onKeyUp?: (ev: React.KeyboardEvent) => void;
47
- } & React.RefAttributes<import("@rn-primitives/tooltip").TriggerRef>>;
27
+ declare const TooltipTrigger: React.ForwardRefExoticComponent<TooltipPrimitive.TriggerProps>;
48
28
  /**
49
29
  * Tooltip content component
50
30
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,OAAO;;;;;;;;OAAD,CAAC;;OAG8B,CAAA;uBAHN,CAAC;AAEtC;;;;GAIG;AACH,QAAA,MAAM,cAAc;OAPR,CAAC;;OAG8B,CAAA;;;;;;qEAII,CAAC;AAQhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,UAAc,EACd,UAAU,EACV,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,gBAAgB,CAAC,YAAY,GAC9B,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,GAAG;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,2CA4CF;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/Tooltip.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,gBAAgB,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,OAAO,6DAAwB,CAAC;AAEtC;;;;GAIG;AACH,QAAA,MAAM,cAAc,gEAA2B,CAAC;AAQhD;;;;;;;;;;;;;;;;;;GAkBG;AACH,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,UAAc,EACd,UAAU,EACV,IAAY,EACZ,GAAG,KAAK,EACT,EAAE,gBAAgB,CAAC,YAAY,GAC9B,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,GAAG;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,2CA4CF;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
@@ -1,3 +1,5 @@
1
+ import './types/global';
2
+ import './types/rn-primitives';
1
3
  export * from './components/ui';
2
4
  export { default as RootLayout } from './app/_layout';
3
5
  export { cn } from './lib/utils';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AAGtD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,MAAM,EACN,aAAa,EACb,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,gBAAgB,CAAC;AACxB,OAAO,uBAAuB,CAAC;AAG/B,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,eAAe,CAAC;AAGtD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAG9D,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,MAAM,EACN,aAAa,EACb,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Properly typed Slot component wrappers
3
+ *
4
+ * The @rn-primitives/slot package has complex type inference that doesn't
5
+ * properly expose className props. These wrappers provide correct typing.
6
+ */
7
+ import type { PressableProps, ViewProps, TextProps, TextInputProps } from 'react-native';
8
+ export declare const SlotView: React.ForwardRefExoticComponent<ViewProps & {
9
+ className?: string;
10
+ children?: React.ReactNode;
11
+ cssInterop?: boolean;
12
+ }>;
13
+ export declare const SlotPressable: React.ForwardRefExoticComponent<PressableProps & {
14
+ className?: string;
15
+ children?: React.ReactNode;
16
+ cssInterop?: boolean;
17
+ }>;
18
+ export declare const SlotText: React.ForwardRefExoticComponent<TextProps & {
19
+ className?: string;
20
+ children?: React.ReactNode;
21
+ cssInterop?: boolean;
22
+ }>;
23
+ export declare const SlotTextInput: React.ForwardRefExoticComponent<TextInputProps & {
24
+ className?: string;
25
+ children?: React.ReactNode;
26
+ cssInterop?: boolean;
27
+ }>;
28
+ export declare const Slot: React.ForwardRefExoticComponent<ViewProps & {
29
+ className?: string;
30
+ children?: React.ReactNode;
31
+ }>;
32
+ //# sourceMappingURL=slot-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slot-helpers.d.ts","sourceRoot":"","sources":["../../../../src/lib/slot-helpers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,SAAS,EACT,cAAc,EACf,MAAM,cAAc,CAAC;AAGtB,eAAO,MAAM,QAAQ,EAAyB,KAAK,CAAC,yBAAyB,CAC3E,SAAS,GAAG;IACV,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CACF,CAAC;AAEF,eAAO,MAAM,aAAa,EACG,KAAK,CAAC,yBAAyB,CACxD,cAAc,GAAG;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CACF,CAAC;AAEJ,eAAO,MAAM,QAAQ,EAAyB,KAAK,CAAC,yBAAyB,CAC3E,SAAS,GAAG;IACV,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CACF,CAAC;AAEF,eAAO,MAAM,aAAa,EACG,KAAK,CAAC,yBAAyB,CACxD,cAAc,GAAG;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CACF,CAAC;AAGJ,eAAO,MAAM,IAAI,EAAyB,KAAK,CAAC,yBAAyB,CACvE,SAAS,GAAG;IACV,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CACF,CAAC"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="nativewind/types" />
2
+
3
+ /**
4
+ * NativeWind type augmentations
5
+ * This file ensures className prop is available on all React Native components
6
+ * when using NativeWind with TypeScript
7
+ */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@campxdev/react-native-blueprint",
3
- "version": "0.1.3",
3
+ "version": "0.1.6",
4
4
  "description": "This is a react-native package for mobile apps",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -10,6 +10,7 @@
10
10
  "types": "./lib/typescript/src/index.d.ts",
11
11
  "default": "./lib/module/index.js"
12
12
  },
13
+ "./global.css": "./src/global.css",
13
14
  "./package.json": "./package.json"
14
15
  },
15
16
  "files": [
@@ -19,6 +20,7 @@
19
20
  "ios",
20
21
  "cpp",
21
22
  "*.podspec",
23
+ "nativewind-env.d.ts",
22
24
  "react-native.config.js",
23
25
  "!ios/build",
24
26
  "!android/build",
@@ -38,7 +40,10 @@
38
40
  "lint": "eslint \"**/*.{js,ts,tsx}\"",
39
41
  "clean": "del-cli lib",
40
42
  "prepare": "bob build",
41
- "release": "release-it --only-version"
43
+ "release": "release-it --only-version",
44
+ "publish-package": "./scripts/publish.sh",
45
+ "android": "expo run:android",
46
+ "ios": "expo run:ios"
42
47
  },
43
48
  "keywords": [
44
49
  "react-native",
@@ -77,17 +82,22 @@
77
82
  "eslint-config-prettier": "^10.1.8",
78
83
  "eslint-plugin-prettier": "^5.5.4",
79
84
  "jest": "^29.7.0",
85
+ "nativewind": "^4.2.1",
80
86
  "prettier": "^3.6.2",
81
87
  "react": "19.1.0",
82
88
  "react-native": "0.81.4",
83
89
  "react-native-builder-bob": "^0.40.13",
84
90
  "release-it": "^19.0.4",
85
91
  "tailwindcss": "^3.4.17",
92
+ "tailwindcss-animate": "^1.0.7",
86
93
  "typescript": "^5.9.2"
87
94
  },
88
95
  "peerDependencies": {
96
+ "nativewind": "^4.0.0",
89
97
  "react": "*",
90
- "react-native": "*"
98
+ "react-native": "*",
99
+ "tailwindcss": "^3.4.0",
100
+ "tailwindcss-animate": "^1.0.0"
91
101
  },
92
102
  "workspaces": [
93
103
  "example"
@@ -140,6 +150,12 @@
140
150
  {
141
151
  "esm": true
142
152
  }
153
+ ],
154
+ [
155
+ "typescript",
156
+ {
157
+ "project": "tsconfig.json"
158
+ }
143
159
  ]
144
160
  ]
145
161
  },
@@ -182,10 +198,12 @@
182
198
  "class-variance-authority": "^0.7.1",
183
199
  "clsx": "^2.1.1",
184
200
  "expo": "^54.0.12",
201
+ "expo-dev-client": "~6.0.15",
185
202
  "expo-font": "^14.0.9",
186
203
  "figma-squircle": "^1.1.0",
187
- "lucide-react-native": "^0.486.0",
188
- "nativewind": "^4.2.1",
204
+ "lucide-react-native": "^0.546.0",
205
+ "react": "19.1.0",
206
+ "react-native": "0.81.4",
189
207
  "react-native-figma-squircle": "^0.4.0",
190
208
  "react-native-floating-action": "^1.22.0",
191
209
  "react-native-gesture-handler": "^2.28.0",
@@ -194,7 +212,6 @@
194
212
  "react-native-screens": "^4.7.1",
195
213
  "react-native-svg": "^15.14.0",
196
214
  "react-native-worklets": "0.5.1",
197
- "tailwind-merge": "^3.3.1",
198
- "tailwindcss-animate": "^1.0.7"
215
+ "tailwind-merge": "^3.3.1"
199
216
  }
200
217
  }
@@ -1,4 +1,10 @@
1
- import '../global.css';
1
+ /**
2
+ * RootLayout component - provides theme and navigation setup
3
+ *
4
+ * NOTE: CSS import intentionally removed for library export.
5
+ * Consumers must import '@campxdev/react-native-blueprint/global.css'
6
+ * in their app entry point.
7
+ */
2
8
  import { PortalHost } from '@rn-primitives/portal';
3
9
  import { StatusBar } from 'react-native';
4
10
  import { NAV_THEME } from '../lib/theme';
@@ -122,7 +122,9 @@ function AccordionItem({
122
122
  );
123
123
  }
124
124
 
125
- const Trigger = Platform.OS === 'web' ? View : Pressable;
125
+ const Trigger = (
126
+ Platform.OS === 'web' ? View : Pressable
127
+ ) as React.ComponentType<any>;
126
128
 
127
129
  /**
128
130
  * Clickable trigger button that toggles accordion item expansion
@@ -4,12 +4,14 @@ import { TextClassContext } from './Text';
4
4
  import { cn } from '../../lib/utils';
5
5
  import * as AlertDialogPrimitive from '@rn-primitives/alert-dialog';
6
6
  import * as React from 'react';
7
- import { Platform, View, type ViewProps } from 'react-native';
7
+ import { Platform, View as RNView, type ViewProps } from 'react-native';
8
8
  import { cssInterop } from 'nativewind';
9
9
  import { FadeIn, FadeOut } from 'react-native-reanimated';
10
10
  import { FullWindowOverlay as RNFullWindowOverlay } from 'react-native-screens';
11
11
 
12
- cssInterop(View, { className: 'style' });
12
+ const View = cssInterop(RNView, { className: 'style' }) as React.ComponentType<
13
+ ViewProps & { className?: string; children?: React.ReactNode }
14
+ >;
13
15
 
14
16
  /**
15
17
  * Root alert dialog container
@@ -153,7 +155,7 @@ function AlertDialogContent({
153
155
  }),
154
156
  className
155
157
  )}
156
- {...props}
158
+ {...(props as any)}
157
159
  />
158
160
  </AlertDialogOverlay>
159
161
  </AlertDialogPortal>
@@ -3,10 +3,12 @@ import { Text, TextClassContext } from './Text';
3
3
  import { cn } from '../../lib/utils';
4
4
  import type { LucideIcon } from 'lucide-react-native';
5
5
  import * as React from 'react';
6
- import { View, type ViewProps } from 'react-native';
6
+ import { View as RNView, type ViewProps } from 'react-native';
7
7
  import { cssInterop } from 'nativewind';
8
8
 
9
- cssInterop(View, { className: 'style' });
9
+ const View = cssInterop(RNView, { className: 'style' }) as React.ComponentType<
10
+ ViewProps & { className?: string; children?: React.ReactNode }
11
+ >;
10
12
 
11
13
  /**
12
14
  * Alert component for displaying important messages or notifications
@@ -48,7 +50,8 @@ function Alert({
48
50
  iconClassName,
49
51
  ...props
50
52
  }: ViewProps &
51
- React.RefAttributes<View> & {
53
+ React.RefAttributes<RNView> & {
54
+ children?: React.ReactNode;
52
55
  icon: LucideIcon;
53
56
  variant?: 'default' | 'destructive';
54
57
  iconClassName?: string;
@@ -67,7 +70,7 @@ function Alert({
67
70
  'bg-card dark:bg-card border-border dark:border-border relative w-full rounded-lg border px-4 pb-2 pt-3.5',
68
71
  className
69
72
  )}
70
- {...props}
73
+ {...(props as any)}
71
74
  >
72
75
  <View className="absolute left-3.5 top-3">
73
76
  <Icon
@@ -13,8 +13,12 @@ import { cn } from '../../lib/utils';
13
13
  import { Icon } from './Icon';
14
14
  import { Text } from './Text';
15
15
 
16
- const View = cssInterop(RNView, { className: 'style' });
17
- const Pressable = cssInterop(RNPressable, { className: 'style' });
16
+ const View = cssInterop(RNView, {
17
+ className: 'style',
18
+ }) as React.ComponentType<any>;
19
+ const Pressable = cssInterop(RNPressable, {
20
+ className: 'style',
21
+ }) as React.ComponentType<any>;
18
22
 
19
23
  /**
20
24
  * Configuration for an action item in the AppBar
@@ -1,13 +1,17 @@
1
1
  import * as React from 'react';
2
- import { Image, View } from 'react-native';
2
+ import { Image as RNImage, View as RNView } from 'react-native';
3
3
  import { cssInterop } from 'nativewind';
4
4
  import { cn } from '../../lib/utils';
5
5
  import type { ViewRef, SlottableViewProps } from '@rn-primitives/types';
6
6
  import * as Slot from '@rn-primitives/slot';
7
7
 
8
- cssInterop(View, { className: 'style' });
8
+ const View = cssInterop(RNView, {
9
+ className: 'style',
10
+ }) as React.ComponentType<any>;
9
11
  cssInterop(Slot.View, { className: 'style' });
10
- cssInterop(Image, { className: 'style' });
12
+ const Image = cssInterop(RNImage, {
13
+ className: 'style',
14
+ }) as React.ComponentType<any>;
11
15
 
12
16
  /**
13
17
  * Avatar container component
@@ -57,8 +61,8 @@ Avatar.displayName = 'Avatar';
57
61
  * @property {string} [className] - Additional Tailwind classes
58
62
  */
59
63
  const AvatarImage = React.forwardRef<
60
- React.ElementRef<typeof Image>,
61
- React.ComponentPropsWithoutRef<typeof Image> & {
64
+ React.ElementRef<typeof RNImage>,
65
+ React.ComponentPropsWithoutRef<typeof RNImage> & {
62
66
  className?: string;
63
67
  alt?: string;
64
68
  }
@@ -66,7 +70,7 @@ const AvatarImage = React.forwardRef<
66
70
  return (
67
71
  <Image
68
72
  className={cn('aspect-square h-full w-full', className)}
69
- ref={ref}
73
+ ref={ref as any}
70
74
  {...props}
71
75
  />
72
76
  );
@@ -5,16 +5,24 @@ import React, {
5
5
  useMemo,
6
6
  useRef,
7
7
  } from 'react';
8
- import { StyleSheet, View, ViewStyle } from 'react-native';
8
+ import { StyleSheet, View as RNView, ViewStyle } from 'react-native';
9
9
  import BottomSheetPrimitive, {
10
10
  BottomSheetBackdrop,
11
11
  BottomSheetBackdropProps,
12
- BottomSheetView,
12
+ BottomSheetView as BSView,
13
13
  } from '@gorhom/bottom-sheet';
14
+ import { cssInterop } from 'nativewind';
14
15
  import { cn } from '../../lib/utils';
15
16
  import { useTheme } from '../../lib/ThemeProvider';
16
17
  import { hslToRgb } from '../theme-config';
17
18
 
19
+ const View = cssInterop(RNView, {
20
+ className: 'style',
21
+ }) as React.ComponentType<any>;
22
+ const BottomSheetView = cssInterop(BSView, {
23
+ className: 'style',
24
+ }) as React.ComponentType<any>;
25
+
18
26
  type BottomSheetRef = {
19
27
  open: () => void;
20
28
  close: () => void;