@blinkdotnew/mobile-ui 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,10 +1,34 @@
1
- import { ClassValue } from 'clsx';
2
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
2
  import React, { ReactNode } from 'react';
4
- import { TextInputProps, EasingFunction, ScrollViewProps, Animated, ImageSourcePropType, ViewStyle } from 'react-native';
3
+ import { vars } from 'nativewind';
4
+ import { ClassValue } from 'clsx';
5
+ import { PressableProps, ViewStyle, TextProps, ImageSourcePropType, TextInputProps, EasingFunction, ScrollViewProps, Animated } from 'react-native';
5
6
  import { ActionSheetRef } from 'react-native-actions-sheet';
6
7
  import { Ionicons } from '@expo/vector-icons';
7
8
 
9
+ type PaletteName = 'ocean' | 'coral' | 'violet' | 'midnight' | 'rose' | 'neon';
10
+ type ColorScheme = 'light' | 'dark' | 'system';
11
+ interface PaletteSet {
12
+ light: ReturnType<typeof vars>;
13
+ dark: ReturnType<typeof vars>;
14
+ }
15
+ declare const palettes: Record<PaletteName, PaletteSet>;
16
+
17
+ interface BlinkMobileUIContextValue {
18
+ palette: PaletteName;
19
+ colorScheme: ColorScheme;
20
+ isDark: boolean;
21
+ setPalette: (p: PaletteName) => void;
22
+ setColorScheme: (s: ColorScheme) => void;
23
+ }
24
+ declare function useBlinkMobileUI(): BlinkMobileUIContextValue;
25
+ interface BlinkMobileUIProviderProps {
26
+ children: React.ReactNode;
27
+ palette?: PaletteName;
28
+ colorScheme?: ColorScheme;
29
+ }
30
+ declare function BlinkMobileUIProvider({ children, palette: initPalette, colorScheme: initScheme, }: BlinkMobileUIProviderProps): react_jsx_runtime.JSX.Element;
31
+
8
32
  declare function cn(...inputs: ClassValue[]): string;
9
33
 
10
34
  declare function useAnimColors(): {
@@ -19,6 +43,290 @@ declare function useAnimColors(): {
19
43
  icon: string;
20
44
  };
21
45
 
46
+ interface BlinkPressableProps extends Omit<PressableProps, 'style'> {
47
+ className?: string;
48
+ activeClassName?: string;
49
+ style?: ViewStyle;
50
+ }
51
+ declare function BlinkPressable({ className, activeClassName, style, children, ...props }: BlinkPressableProps): react_jsx_runtime.JSX.Element;
52
+
53
+ type TextVariant = 'body' | 'heading' | 'subheading' | 'caption' | 'label' | 'title';
54
+ type TextWeight = 'normal' | 'medium' | 'semibold' | 'bold';
55
+ interface BlinkTextProps extends TextProps {
56
+ variant?: TextVariant;
57
+ weight?: TextWeight;
58
+ className?: string;
59
+ children: React.ReactNode;
60
+ }
61
+ declare function BlinkText({ variant, weight, className, children, ...props }: BlinkTextProps): react_jsx_runtime.JSX.Element;
62
+
63
+ type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive';
64
+ type ButtonSize = 'sm' | 'md' | 'lg';
65
+ type ButtonRounded = 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
66
+ interface ButtonProps {
67
+ title?: string;
68
+ onPress?: () => void;
69
+ loading?: boolean;
70
+ variant?: ButtonVariant;
71
+ size?: ButtonSize;
72
+ rounded?: ButtonRounded;
73
+ className?: string;
74
+ textClassName?: string;
75
+ disabled?: boolean;
76
+ iconStart?: React.ReactNode;
77
+ iconEnd?: React.ReactNode;
78
+ children?: React.ReactNode;
79
+ }
80
+ declare function Button({ title, onPress, loading, variant, size, rounded, className, textClassName, disabled, iconStart, iconEnd, children, }: ButtonProps): react_jsx_runtime.JSX.Element;
81
+
82
+ type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
83
+ interface AvatarProps {
84
+ src?: string;
85
+ name?: string;
86
+ size?: AvatarSize;
87
+ className?: string;
88
+ }
89
+ declare function Avatar({ src, name, size, className }: AvatarProps): react_jsx_runtime.JSX.Element;
90
+
91
+ type CardVariant = 'elevated' | 'outlined' | 'filled' | 'ghost';
92
+ interface CardProps {
93
+ variant?: CardVariant;
94
+ className?: string;
95
+ style?: ViewStyle;
96
+ onPress?: () => void;
97
+ children?: React.ReactNode;
98
+ }
99
+ declare function Card({ variant, className, style, onPress, children }: CardProps): react_jsx_runtime.JSX.Element;
100
+ declare namespace Card {
101
+ var Header: typeof CardHeader;
102
+ var Body: typeof CardBody;
103
+ var Footer: typeof CardFooter;
104
+ var Image: typeof CardImage;
105
+ var Title: typeof CardTitle;
106
+ var Description: typeof CardDescription;
107
+ }
108
+ interface CardHeaderProps {
109
+ className?: string;
110
+ children: React.ReactNode;
111
+ }
112
+ declare function CardHeader({ className, children }: CardHeaderProps): react_jsx_runtime.JSX.Element;
113
+ interface CardBodyProps {
114
+ className?: string;
115
+ children: React.ReactNode;
116
+ }
117
+ declare function CardBody({ className, children }: CardBodyProps): react_jsx_runtime.JSX.Element;
118
+ interface CardFooterProps {
119
+ className?: string;
120
+ children: React.ReactNode;
121
+ }
122
+ declare function CardFooter({ className, children }: CardFooterProps): react_jsx_runtime.JSX.Element;
123
+ interface CardImageProps {
124
+ source: string | ImageSourcePropType;
125
+ height?: number;
126
+ className?: string;
127
+ }
128
+ declare function CardImage({ source, height, className }: CardImageProps): react_jsx_runtime.JSX.Element;
129
+ interface CardTitleProps {
130
+ className?: string;
131
+ children: React.ReactNode;
132
+ }
133
+ declare function CardTitle({ className, children }: CardTitleProps): react_jsx_runtime.JSX.Element;
134
+ interface CardDescriptionProps {
135
+ className?: string;
136
+ numberOfLines?: number;
137
+ children: React.ReactNode;
138
+ }
139
+ declare function CardDescription({ className, numberOfLines, children }: CardDescriptionProps): react_jsx_runtime.JSX.Element;
140
+
141
+ type ChipVariant = 'filled' | 'outlined' | 'tinted';
142
+ type ChipSize = 'sm' | 'md';
143
+ interface ChipProps {
144
+ label: string;
145
+ variant?: ChipVariant;
146
+ size?: ChipSize;
147
+ selected?: boolean;
148
+ onPress?: () => void;
149
+ iconStart?: React.ReactNode;
150
+ iconEnd?: React.ReactNode;
151
+ className?: string;
152
+ }
153
+ declare function Chip({ label, variant, size, selected, onPress, iconStart, iconEnd, className, }: ChipProps): react_jsx_runtime.JSX.Element;
154
+
155
+ type BadgeVariant = 'default' | 'primary' | 'success' | 'error' | 'warning';
156
+ type BadgeSize = 'sm' | 'md';
157
+ interface BadgeProps {
158
+ label: string;
159
+ variant?: BadgeVariant;
160
+ size?: BadgeSize;
161
+ className?: string;
162
+ }
163
+ declare function Badge({ label, variant, size, className }: BadgeProps): react_jsx_runtime.JSX.Element;
164
+
165
+ type IconContainerVariant = 'plain' | 'bordered' | 'contained';
166
+ type IconContainerSize = 'sm' | 'md' | 'lg';
167
+ interface IconContainerProps {
168
+ variant?: IconContainerVariant;
169
+ size?: IconContainerSize;
170
+ className?: string;
171
+ children: React.ReactNode;
172
+ }
173
+ declare function IconContainer({ variant, size, className, children, }: IconContainerProps): react_jsx_runtime.JSX.Element;
174
+
175
+ type DividerOrientation = 'horizontal' | 'vertical';
176
+ interface DividerProps {
177
+ orientation?: DividerOrientation;
178
+ label?: string;
179
+ className?: string;
180
+ }
181
+ declare function Divider({ orientation, label, className }: DividerProps): react_jsx_runtime.JSX.Element;
182
+
183
+ type SkeletonVariant = 'rect' | 'circle' | 'text';
184
+ interface SkeletonProps {
185
+ variant?: SkeletonVariant;
186
+ width?: number | string;
187
+ height?: number | string;
188
+ className?: string;
189
+ }
190
+ declare function Skeleton({ variant, width, height, className }: SkeletonProps): react_jsx_runtime.JSX.Element;
191
+
192
+ type ProgressBarSize = 'sm' | 'md' | 'lg';
193
+ type ProgressBarVariant = 'primary' | 'success' | 'warning' | 'error';
194
+ interface ProgressBarProps {
195
+ progress: number;
196
+ variant?: ProgressBarVariant;
197
+ size?: ProgressBarSize;
198
+ className?: string;
199
+ }
200
+ declare function ProgressBar({ progress, variant, size, className, }: ProgressBarProps): react_jsx_runtime.JSX.Element;
201
+
202
+ type ToggleSize = 'sm' | 'md';
203
+ interface ToggleProps {
204
+ value: boolean;
205
+ onValueChange: (value: boolean) => void;
206
+ size?: ToggleSize;
207
+ disabled?: boolean;
208
+ className?: string;
209
+ }
210
+ declare function Toggle({ value, onValueChange, size, disabled, className, }: ToggleProps): react_jsx_runtime.JSX.Element;
211
+
212
+ type TagVariant = 'filled' | 'outlined' | 'tinted';
213
+ interface TagProps {
214
+ label: string;
215
+ variant?: TagVariant;
216
+ onRemove?: () => void;
217
+ className?: string;
218
+ }
219
+ declare function Tag({ label, variant, onRemove, className }: TagProps): react_jsx_runtime.JSX.Element;
220
+
221
+ type IconButtonVariant = 'primary' | 'secondary' | 'ghost' | 'outline';
222
+ type IconButtonSize = 'sm' | 'md' | 'lg';
223
+ interface IconButtonProps {
224
+ onPress?: () => void;
225
+ variant?: IconButtonVariant;
226
+ size?: IconButtonSize;
227
+ rounded?: 'md' | 'lg' | 'full';
228
+ disabled?: boolean;
229
+ className?: string;
230
+ children: React.ReactNode;
231
+ }
232
+ declare function IconButton({ onPress, variant, size, rounded, disabled, className, children, }: IconButtonProps): react_jsx_runtime.JSX.Element;
233
+
234
+ interface SafeWrapperProps {
235
+ children: React.ReactNode;
236
+ className?: string;
237
+ style?: ViewStyle;
238
+ edges?: ('top' | 'bottom' | 'left' | 'right')[];
239
+ }
240
+ declare function SafeWrapper({ children, className, style, edges }: SafeWrapperProps): react_jsx_runtime.JSX.Element;
241
+
242
+ interface ContainerProps {
243
+ children: React.ReactNode;
244
+ scrollable?: boolean;
245
+ padded?: boolean;
246
+ className?: string;
247
+ style?: ViewStyle;
248
+ }
249
+ declare function Container({ children, scrollable, padded, className, style, }: ContainerProps): react_jsx_runtime.JSX.Element;
250
+
251
+ interface ThemeScrollerProps$1 {
252
+ selected: PaletteName;
253
+ onSelect: (palette: PaletteName) => void;
254
+ className?: string;
255
+ }
256
+
257
+ type SectionPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';
258
+ type TitleSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
259
+ interface SectionProps {
260
+ children?: React.ReactNode;
261
+ title?: string;
262
+ subtitle?: string;
263
+ header?: React.ReactNode;
264
+ footer?: React.ReactNode;
265
+ padding?: SectionPadding;
266
+ titleSize?: TitleSize;
267
+ link?: string;
268
+ linkText?: string;
269
+ onLinkPress?: () => void;
270
+ className?: string;
271
+ }
272
+ declare function Section({ children, title, subtitle, header, footer, padding, titleSize, link, linkText, onLinkPress, className, }: SectionProps): react_jsx_runtime.JSX.Element;
273
+
274
+ type StackAlign = 'start' | 'center' | 'end' | 'stretch';
275
+ type StackJustify = 'start' | 'center' | 'end' | 'between' | 'around';
276
+ interface StackProps {
277
+ children: React.ReactNode;
278
+ gap?: number;
279
+ align?: StackAlign;
280
+ justify?: StackJustify;
281
+ className?: string;
282
+ style?: ViewStyle;
283
+ }
284
+ declare function VStack({ children, gap, align, justify, className, style }: StackProps): react_jsx_runtime.JSX.Element;
285
+ declare function HStack({ children, gap, align, justify, className, style }: StackProps): react_jsx_runtime.JSX.Element;
286
+ interface FlexStackProps extends StackProps {
287
+ direction?: 'vertical' | 'horizontal';
288
+ }
289
+ declare function Stack({ children, direction, ...props }: FlexStackProps): react_jsx_runtime.JSX.Element;
290
+
291
+ interface GridProps {
292
+ children: React.ReactNode;
293
+ columns?: 2 | 3 | 4;
294
+ gap?: number;
295
+ className?: string;
296
+ style?: ViewStyle;
297
+ }
298
+ declare function Grid({ children, columns, gap, className, style }: GridProps): react_jsx_runtime.JSX.Element;
299
+
300
+ interface ListProps<T> {
301
+ data: T[];
302
+ renderItem: (item: T, index: number) => React.ReactNode;
303
+ keyExtractor?: (item: T, index: number) => string;
304
+ separator?: boolean;
305
+ className?: string;
306
+ style?: ViewStyle;
307
+ }
308
+ declare function List<T>({ data, renderItem, keyExtractor, separator, className, style, }: ListProps<T>): react_jsx_runtime.JSX.Element;
309
+
310
+ interface ListItemProps {
311
+ title: React.ReactNode;
312
+ subtitle?: React.ReactNode;
313
+ leading?: React.ReactNode;
314
+ trailing?: React.ReactNode;
315
+ onPress?: () => void;
316
+ disabled?: boolean;
317
+ className?: string;
318
+ style?: ViewStyle;
319
+ }
320
+ declare function ListItem({ title, subtitle, leading, trailing, onPress, disabled, className, style, }: ListItemProps): react_jsx_runtime.JSX.Element;
321
+
322
+ type SpacerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
323
+ interface SpacerProps {
324
+ size?: SpacerSize;
325
+ flex?: boolean;
326
+ className?: string;
327
+ }
328
+ declare function Spacer({ size, flex, className }: SpacerProps): react_jsx_runtime.JSX.Element;
329
+
22
330
  type InputVariant = 'animated' | 'classic' | 'underlined';
23
331
  interface InputProps extends Omit<TextInputProps, 'className'> {
24
332
  label?: string;
@@ -978,4 +1286,4 @@ interface DateRangePickerProps {
978
1286
  }
979
1287
  declare function DateRangePicker({ startDate: initialStart, endDate: initialEnd, onSelect, className, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
980
1288
 
981
- export { type ActionItem, AnimatedFab, AnimatedView, type AnimationType, AuthButtons, type AuthButtonsProps, type AuthProvider, BalanceDisplay, type BalanceDisplayProps, BlinkActionSheet, type BlinkActionSheetProps, BlinkModal, BlinkSwitch, type BlinkSwitchProps, BottomSheet, CardPreview, type CardPreviewProps, CardScroller, CartItem, type CartItemProps, CategoryTile, type CategoryTileProps, ChatBubble, type ChatBubbleProps, ChatInput, type ChatInputProps, ChatList, type ChatListProps, type ChatMessage, Checkbox, type CheckboxProps, CheckoutFlow, type CheckoutFlowProps, type CheckoutStep, ConfirmationSheet, type ConfirmationSheetProps, Counter, type CounterProps, DateRangePicker, type DateRangePickerProps, EmptyState, FadeIn, FeatureRow, type FeatureRowProps, FeedCard, type FeedCardProps, type FilterChip, FilterChipRow, type FilterChipRowProps, GlassCard, type GlassCardProps, GlassHeader, type GlassHeaderProps, GlassSheet, type GlassSheetProps, type GlassTab, GlassTabBar, type GlassTabBarProps, type GlassTint, GlassView, type GlassViewProps, Header, HeaderIcon, type HeaderIconProps, type HeaderProps, type HeaderVariant, ImageCarousel, Input, type InputProps, type InputVariant, ListingCard, type ListingCardProps, MultiStep, OnboardingCarousel, type OnboardingCarouselProps, OnboardingFlow, type OnboardingFlowProps, type OnboardingFlowStep, OnboardingHero, type OnboardingHeroProps, OnboardingParallax, type OnboardingParallaxProps, type OnboardingSlide, PageLoader, type ParallaxLayer, type ParallaxSlide, type PaywallFeature, PaywallHard, type PaywallHardProps, PaywallScreen, type PaywallScreenProps, PaywallSoft, type PaywallSoftProps, PermissionStep, type PermissionStepProps, Placeholder, PlanCard, type PlanCardProps, PlanComparison, type PlanComparisonProps, type PlanOption, PriceTag, type PriceTagProps, ProductCard, type ProductCardProps, ProviderCard, type ProviderCardProps, type QuizOption, QuizStep, type QuizStepProps, RadioGroup, type RadioGroupProps, type RadioOption, RatingStars, type RatingStarsProps, type Reaction, ReactionBar, type ReactionBarProps, type ReelAction, ReelItem, type ReelItemProps, ReelOverlay, type ReelOverlayProps, ScaleIn, SearchBar, type SearchBarProps, SearchInput, type SearchInputProps, SearchPill, type SearchPillProps, SectionHeader, type SectionHeaderProps, type SectionTitleSize, type Segment, SegmentedControl, type SegmentedControlProps, Select, type SelectOption, type SelectProps, SkeletonLoader, SlideIn, SlideUp, Slider, type SliderProps, SocialProofBar, type SocialProofBarProps, StoryCircle, type StoryCircleProps, SwipeActions, type SwipeActionsProps, SwipeCard, type SwipeCardProps, SwipeDeck, type SwipeDeckProps, type SwipeDirection, SwipeOverlay, type SwipeOverlayProps, TabBar, type TabBarProps, TabButton, type TabButtonProps, type TabItem, TextArea, type TextAreaProps, ThemeScroller, Toast, TransactionItem, type TransactionItemProps, TrialBanner, type TrialBannerProps, TypingIndicator, type TypingIndicatorProps, VerticalReel, type VerticalReelProps, cn, toast, useActionSheet, useAnimColors, useConfirmationSheet };
1289
+ export { type ActionItem, AnimatedFab, AnimatedView, type AnimationType, AuthButtons, type AuthButtonsProps, type AuthProvider, Avatar, type AvatarProps, Badge, type BadgeProps, BalanceDisplay, type BalanceDisplayProps, BlinkActionSheet, type BlinkActionSheetProps, BlinkMobileUIProvider, BlinkModal, BlinkPressable, type BlinkPressableProps, BlinkSwitch, type BlinkSwitchProps, BlinkText, type BlinkTextProps, BottomSheet, Button, type ButtonProps, Card, type CardBodyProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardImageProps, CardPreview, type CardPreviewProps, type CardProps, CardScroller, type CardTitleProps, CartItem, type CartItemProps, CategoryTile, type CategoryTileProps, ChatBubble, type ChatBubbleProps, ChatInput, type ChatInputProps, ChatList, type ChatListProps, type ChatMessage, Checkbox, type CheckboxProps, CheckoutFlow, type CheckoutFlowProps, type CheckoutStep, Chip, type ChipProps, type ColorScheme, ConfirmationSheet, type ConfirmationSheetProps, Container, type ContainerProps, Counter, type CounterProps, DateRangePicker, type DateRangePickerProps, Divider, type DividerProps, EmptyState, FadeIn, FeatureRow, type FeatureRowProps, FeedCard, type FeedCardProps, type FilterChip, FilterChipRow, type FilterChipRowProps, type FlexStackProps, GlassCard, type GlassCardProps, GlassHeader, type GlassHeaderProps, GlassSheet, type GlassSheetProps, type GlassTab, GlassTabBar, type GlassTabBarProps, type GlassTint, GlassView, type GlassViewProps, Grid, type GridProps, HStack, Header, HeaderIcon, type HeaderIconProps, type HeaderProps, type HeaderVariant, IconButton, type IconButtonProps, IconContainer, type IconContainerProps, ImageCarousel, Input, type InputProps, type InputVariant, List, ListItem, type ListItemProps, type ListProps, ListingCard, type ListingCardProps, MultiStep, OnboardingCarousel, type OnboardingCarouselProps, OnboardingFlow, type OnboardingFlowProps, type OnboardingFlowStep, OnboardingHero, type OnboardingHeroProps, OnboardingParallax, type OnboardingParallaxProps, type OnboardingSlide, PageLoader, type PaletteName, type ParallaxLayer, type ParallaxSlide, type PaywallFeature, PaywallHard, type PaywallHardProps, PaywallScreen, type PaywallScreenProps, PaywallSoft, type PaywallSoftProps, PermissionStep, type PermissionStepProps, Placeholder, PlanCard, type PlanCardProps, PlanComparison, type PlanComparisonProps, type PlanOption, PriceTag, type PriceTagProps, ProductCard, type ProductCardProps, ProgressBar, type ProgressBarProps, ProviderCard, type ProviderCardProps, type QuizOption, QuizStep, type QuizStepProps, RadioGroup, type RadioGroupProps, type RadioOption, RatingStars, type RatingStarsProps, type Reaction, ReactionBar, type ReactionBarProps, type ReelAction, ReelItem, type ReelItemProps, ReelOverlay, type ReelOverlayProps, SafeWrapper, type SafeWrapperProps, ScaleIn, SearchBar, type SearchBarProps, SearchInput, type SearchInputProps, SearchPill, type SearchPillProps, Section, SectionHeader, type SectionHeaderProps, type SectionProps, type SectionTitleSize, type Segment, SegmentedControl, type SegmentedControlProps, Select, type SelectOption, type SelectProps, Skeleton, SkeletonLoader, type SkeletonProps, SlideIn, SlideUp, Slider, type SliderProps, SocialProofBar, type SocialProofBarProps, Spacer, type SpacerProps, Stack, type StackProps, StoryCircle, type StoryCircleProps, SwipeActions, type SwipeActionsProps, SwipeCard, type SwipeCardProps, SwipeDeck, type SwipeDeckProps, type SwipeDirection, SwipeOverlay, type SwipeOverlayProps, TabBar, type TabBarProps, TabButton, type TabButtonProps, type TabItem, Tag, type TagProps, TextArea, type TextAreaProps, ThemeScroller, type ThemeScrollerProps$1 as ThemeScrollerProps, Toast, Toggle, type ToggleProps, TransactionItem, type TransactionItemProps, TrialBanner, type TrialBannerProps, TypingIndicator, type TypingIndicatorProps, VStack, VerticalReel, type VerticalReelProps, cn, palettes, toast, useActionSheet, useAnimColors, useBlinkMobileUI, useConfirmationSheet };
package/dist/index.d.ts CHANGED
@@ -1,10 +1,34 @@
1
- import { ClassValue } from 'clsx';
2
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
3
2
  import React, { ReactNode } from 'react';
4
- import { TextInputProps, EasingFunction, ScrollViewProps, Animated, ImageSourcePropType, ViewStyle } from 'react-native';
3
+ import { vars } from 'nativewind';
4
+ import { ClassValue } from 'clsx';
5
+ import { PressableProps, ViewStyle, TextProps, ImageSourcePropType, TextInputProps, EasingFunction, ScrollViewProps, Animated } from 'react-native';
5
6
  import { ActionSheetRef } from 'react-native-actions-sheet';
6
7
  import { Ionicons } from '@expo/vector-icons';
7
8
 
9
+ type PaletteName = 'ocean' | 'coral' | 'violet' | 'midnight' | 'rose' | 'neon';
10
+ type ColorScheme = 'light' | 'dark' | 'system';
11
+ interface PaletteSet {
12
+ light: ReturnType<typeof vars>;
13
+ dark: ReturnType<typeof vars>;
14
+ }
15
+ declare const palettes: Record<PaletteName, PaletteSet>;
16
+
17
+ interface BlinkMobileUIContextValue {
18
+ palette: PaletteName;
19
+ colorScheme: ColorScheme;
20
+ isDark: boolean;
21
+ setPalette: (p: PaletteName) => void;
22
+ setColorScheme: (s: ColorScheme) => void;
23
+ }
24
+ declare function useBlinkMobileUI(): BlinkMobileUIContextValue;
25
+ interface BlinkMobileUIProviderProps {
26
+ children: React.ReactNode;
27
+ palette?: PaletteName;
28
+ colorScheme?: ColorScheme;
29
+ }
30
+ declare function BlinkMobileUIProvider({ children, palette: initPalette, colorScheme: initScheme, }: BlinkMobileUIProviderProps): react_jsx_runtime.JSX.Element;
31
+
8
32
  declare function cn(...inputs: ClassValue[]): string;
9
33
 
10
34
  declare function useAnimColors(): {
@@ -19,6 +43,290 @@ declare function useAnimColors(): {
19
43
  icon: string;
20
44
  };
21
45
 
46
+ interface BlinkPressableProps extends Omit<PressableProps, 'style'> {
47
+ className?: string;
48
+ activeClassName?: string;
49
+ style?: ViewStyle;
50
+ }
51
+ declare function BlinkPressable({ className, activeClassName, style, children, ...props }: BlinkPressableProps): react_jsx_runtime.JSX.Element;
52
+
53
+ type TextVariant = 'body' | 'heading' | 'subheading' | 'caption' | 'label' | 'title';
54
+ type TextWeight = 'normal' | 'medium' | 'semibold' | 'bold';
55
+ interface BlinkTextProps extends TextProps {
56
+ variant?: TextVariant;
57
+ weight?: TextWeight;
58
+ className?: string;
59
+ children: React.ReactNode;
60
+ }
61
+ declare function BlinkText({ variant, weight, className, children, ...props }: BlinkTextProps): react_jsx_runtime.JSX.Element;
62
+
63
+ type ButtonVariant = 'primary' | 'secondary' | 'outline' | 'ghost' | 'destructive';
64
+ type ButtonSize = 'sm' | 'md' | 'lg';
65
+ type ButtonRounded = 'none' | 'sm' | 'md' | 'lg' | 'xl' | 'full';
66
+ interface ButtonProps {
67
+ title?: string;
68
+ onPress?: () => void;
69
+ loading?: boolean;
70
+ variant?: ButtonVariant;
71
+ size?: ButtonSize;
72
+ rounded?: ButtonRounded;
73
+ className?: string;
74
+ textClassName?: string;
75
+ disabled?: boolean;
76
+ iconStart?: React.ReactNode;
77
+ iconEnd?: React.ReactNode;
78
+ children?: React.ReactNode;
79
+ }
80
+ declare function Button({ title, onPress, loading, variant, size, rounded, className, textClassName, disabled, iconStart, iconEnd, children, }: ButtonProps): react_jsx_runtime.JSX.Element;
81
+
82
+ type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
83
+ interface AvatarProps {
84
+ src?: string;
85
+ name?: string;
86
+ size?: AvatarSize;
87
+ className?: string;
88
+ }
89
+ declare function Avatar({ src, name, size, className }: AvatarProps): react_jsx_runtime.JSX.Element;
90
+
91
+ type CardVariant = 'elevated' | 'outlined' | 'filled' | 'ghost';
92
+ interface CardProps {
93
+ variant?: CardVariant;
94
+ className?: string;
95
+ style?: ViewStyle;
96
+ onPress?: () => void;
97
+ children?: React.ReactNode;
98
+ }
99
+ declare function Card({ variant, className, style, onPress, children }: CardProps): react_jsx_runtime.JSX.Element;
100
+ declare namespace Card {
101
+ var Header: typeof CardHeader;
102
+ var Body: typeof CardBody;
103
+ var Footer: typeof CardFooter;
104
+ var Image: typeof CardImage;
105
+ var Title: typeof CardTitle;
106
+ var Description: typeof CardDescription;
107
+ }
108
+ interface CardHeaderProps {
109
+ className?: string;
110
+ children: React.ReactNode;
111
+ }
112
+ declare function CardHeader({ className, children }: CardHeaderProps): react_jsx_runtime.JSX.Element;
113
+ interface CardBodyProps {
114
+ className?: string;
115
+ children: React.ReactNode;
116
+ }
117
+ declare function CardBody({ className, children }: CardBodyProps): react_jsx_runtime.JSX.Element;
118
+ interface CardFooterProps {
119
+ className?: string;
120
+ children: React.ReactNode;
121
+ }
122
+ declare function CardFooter({ className, children }: CardFooterProps): react_jsx_runtime.JSX.Element;
123
+ interface CardImageProps {
124
+ source: string | ImageSourcePropType;
125
+ height?: number;
126
+ className?: string;
127
+ }
128
+ declare function CardImage({ source, height, className }: CardImageProps): react_jsx_runtime.JSX.Element;
129
+ interface CardTitleProps {
130
+ className?: string;
131
+ children: React.ReactNode;
132
+ }
133
+ declare function CardTitle({ className, children }: CardTitleProps): react_jsx_runtime.JSX.Element;
134
+ interface CardDescriptionProps {
135
+ className?: string;
136
+ numberOfLines?: number;
137
+ children: React.ReactNode;
138
+ }
139
+ declare function CardDescription({ className, numberOfLines, children }: CardDescriptionProps): react_jsx_runtime.JSX.Element;
140
+
141
+ type ChipVariant = 'filled' | 'outlined' | 'tinted';
142
+ type ChipSize = 'sm' | 'md';
143
+ interface ChipProps {
144
+ label: string;
145
+ variant?: ChipVariant;
146
+ size?: ChipSize;
147
+ selected?: boolean;
148
+ onPress?: () => void;
149
+ iconStart?: React.ReactNode;
150
+ iconEnd?: React.ReactNode;
151
+ className?: string;
152
+ }
153
+ declare function Chip({ label, variant, size, selected, onPress, iconStart, iconEnd, className, }: ChipProps): react_jsx_runtime.JSX.Element;
154
+
155
+ type BadgeVariant = 'default' | 'primary' | 'success' | 'error' | 'warning';
156
+ type BadgeSize = 'sm' | 'md';
157
+ interface BadgeProps {
158
+ label: string;
159
+ variant?: BadgeVariant;
160
+ size?: BadgeSize;
161
+ className?: string;
162
+ }
163
+ declare function Badge({ label, variant, size, className }: BadgeProps): react_jsx_runtime.JSX.Element;
164
+
165
+ type IconContainerVariant = 'plain' | 'bordered' | 'contained';
166
+ type IconContainerSize = 'sm' | 'md' | 'lg';
167
+ interface IconContainerProps {
168
+ variant?: IconContainerVariant;
169
+ size?: IconContainerSize;
170
+ className?: string;
171
+ children: React.ReactNode;
172
+ }
173
+ declare function IconContainer({ variant, size, className, children, }: IconContainerProps): react_jsx_runtime.JSX.Element;
174
+
175
+ type DividerOrientation = 'horizontal' | 'vertical';
176
+ interface DividerProps {
177
+ orientation?: DividerOrientation;
178
+ label?: string;
179
+ className?: string;
180
+ }
181
+ declare function Divider({ orientation, label, className }: DividerProps): react_jsx_runtime.JSX.Element;
182
+
183
+ type SkeletonVariant = 'rect' | 'circle' | 'text';
184
+ interface SkeletonProps {
185
+ variant?: SkeletonVariant;
186
+ width?: number | string;
187
+ height?: number | string;
188
+ className?: string;
189
+ }
190
+ declare function Skeleton({ variant, width, height, className }: SkeletonProps): react_jsx_runtime.JSX.Element;
191
+
192
+ type ProgressBarSize = 'sm' | 'md' | 'lg';
193
+ type ProgressBarVariant = 'primary' | 'success' | 'warning' | 'error';
194
+ interface ProgressBarProps {
195
+ progress: number;
196
+ variant?: ProgressBarVariant;
197
+ size?: ProgressBarSize;
198
+ className?: string;
199
+ }
200
+ declare function ProgressBar({ progress, variant, size, className, }: ProgressBarProps): react_jsx_runtime.JSX.Element;
201
+
202
+ type ToggleSize = 'sm' | 'md';
203
+ interface ToggleProps {
204
+ value: boolean;
205
+ onValueChange: (value: boolean) => void;
206
+ size?: ToggleSize;
207
+ disabled?: boolean;
208
+ className?: string;
209
+ }
210
+ declare function Toggle({ value, onValueChange, size, disabled, className, }: ToggleProps): react_jsx_runtime.JSX.Element;
211
+
212
+ type TagVariant = 'filled' | 'outlined' | 'tinted';
213
+ interface TagProps {
214
+ label: string;
215
+ variant?: TagVariant;
216
+ onRemove?: () => void;
217
+ className?: string;
218
+ }
219
+ declare function Tag({ label, variant, onRemove, className }: TagProps): react_jsx_runtime.JSX.Element;
220
+
221
+ type IconButtonVariant = 'primary' | 'secondary' | 'ghost' | 'outline';
222
+ type IconButtonSize = 'sm' | 'md' | 'lg';
223
+ interface IconButtonProps {
224
+ onPress?: () => void;
225
+ variant?: IconButtonVariant;
226
+ size?: IconButtonSize;
227
+ rounded?: 'md' | 'lg' | 'full';
228
+ disabled?: boolean;
229
+ className?: string;
230
+ children: React.ReactNode;
231
+ }
232
+ declare function IconButton({ onPress, variant, size, rounded, disabled, className, children, }: IconButtonProps): react_jsx_runtime.JSX.Element;
233
+
234
+ interface SafeWrapperProps {
235
+ children: React.ReactNode;
236
+ className?: string;
237
+ style?: ViewStyle;
238
+ edges?: ('top' | 'bottom' | 'left' | 'right')[];
239
+ }
240
+ declare function SafeWrapper({ children, className, style, edges }: SafeWrapperProps): react_jsx_runtime.JSX.Element;
241
+
242
+ interface ContainerProps {
243
+ children: React.ReactNode;
244
+ scrollable?: boolean;
245
+ padded?: boolean;
246
+ className?: string;
247
+ style?: ViewStyle;
248
+ }
249
+ declare function Container({ children, scrollable, padded, className, style, }: ContainerProps): react_jsx_runtime.JSX.Element;
250
+
251
+ interface ThemeScrollerProps$1 {
252
+ selected: PaletteName;
253
+ onSelect: (palette: PaletteName) => void;
254
+ className?: string;
255
+ }
256
+
257
+ type SectionPadding = 'none' | 'sm' | 'md' | 'lg' | 'xl';
258
+ type TitleSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
259
+ interface SectionProps {
260
+ children?: React.ReactNode;
261
+ title?: string;
262
+ subtitle?: string;
263
+ header?: React.ReactNode;
264
+ footer?: React.ReactNode;
265
+ padding?: SectionPadding;
266
+ titleSize?: TitleSize;
267
+ link?: string;
268
+ linkText?: string;
269
+ onLinkPress?: () => void;
270
+ className?: string;
271
+ }
272
+ declare function Section({ children, title, subtitle, header, footer, padding, titleSize, link, linkText, onLinkPress, className, }: SectionProps): react_jsx_runtime.JSX.Element;
273
+
274
+ type StackAlign = 'start' | 'center' | 'end' | 'stretch';
275
+ type StackJustify = 'start' | 'center' | 'end' | 'between' | 'around';
276
+ interface StackProps {
277
+ children: React.ReactNode;
278
+ gap?: number;
279
+ align?: StackAlign;
280
+ justify?: StackJustify;
281
+ className?: string;
282
+ style?: ViewStyle;
283
+ }
284
+ declare function VStack({ children, gap, align, justify, className, style }: StackProps): react_jsx_runtime.JSX.Element;
285
+ declare function HStack({ children, gap, align, justify, className, style }: StackProps): react_jsx_runtime.JSX.Element;
286
+ interface FlexStackProps extends StackProps {
287
+ direction?: 'vertical' | 'horizontal';
288
+ }
289
+ declare function Stack({ children, direction, ...props }: FlexStackProps): react_jsx_runtime.JSX.Element;
290
+
291
+ interface GridProps {
292
+ children: React.ReactNode;
293
+ columns?: 2 | 3 | 4;
294
+ gap?: number;
295
+ className?: string;
296
+ style?: ViewStyle;
297
+ }
298
+ declare function Grid({ children, columns, gap, className, style }: GridProps): react_jsx_runtime.JSX.Element;
299
+
300
+ interface ListProps<T> {
301
+ data: T[];
302
+ renderItem: (item: T, index: number) => React.ReactNode;
303
+ keyExtractor?: (item: T, index: number) => string;
304
+ separator?: boolean;
305
+ className?: string;
306
+ style?: ViewStyle;
307
+ }
308
+ declare function List<T>({ data, renderItem, keyExtractor, separator, className, style, }: ListProps<T>): react_jsx_runtime.JSX.Element;
309
+
310
+ interface ListItemProps {
311
+ title: React.ReactNode;
312
+ subtitle?: React.ReactNode;
313
+ leading?: React.ReactNode;
314
+ trailing?: React.ReactNode;
315
+ onPress?: () => void;
316
+ disabled?: boolean;
317
+ className?: string;
318
+ style?: ViewStyle;
319
+ }
320
+ declare function ListItem({ title, subtitle, leading, trailing, onPress, disabled, className, style, }: ListItemProps): react_jsx_runtime.JSX.Element;
321
+
322
+ type SpacerSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl';
323
+ interface SpacerProps {
324
+ size?: SpacerSize;
325
+ flex?: boolean;
326
+ className?: string;
327
+ }
328
+ declare function Spacer({ size, flex, className }: SpacerProps): react_jsx_runtime.JSX.Element;
329
+
22
330
  type InputVariant = 'animated' | 'classic' | 'underlined';
23
331
  interface InputProps extends Omit<TextInputProps, 'className'> {
24
332
  label?: string;
@@ -978,4 +1286,4 @@ interface DateRangePickerProps {
978
1286
  }
979
1287
  declare function DateRangePicker({ startDate: initialStart, endDate: initialEnd, onSelect, className, }: DateRangePickerProps): react_jsx_runtime.JSX.Element;
980
1288
 
981
- export { type ActionItem, AnimatedFab, AnimatedView, type AnimationType, AuthButtons, type AuthButtonsProps, type AuthProvider, BalanceDisplay, type BalanceDisplayProps, BlinkActionSheet, type BlinkActionSheetProps, BlinkModal, BlinkSwitch, type BlinkSwitchProps, BottomSheet, CardPreview, type CardPreviewProps, CardScroller, CartItem, type CartItemProps, CategoryTile, type CategoryTileProps, ChatBubble, type ChatBubbleProps, ChatInput, type ChatInputProps, ChatList, type ChatListProps, type ChatMessage, Checkbox, type CheckboxProps, CheckoutFlow, type CheckoutFlowProps, type CheckoutStep, ConfirmationSheet, type ConfirmationSheetProps, Counter, type CounterProps, DateRangePicker, type DateRangePickerProps, EmptyState, FadeIn, FeatureRow, type FeatureRowProps, FeedCard, type FeedCardProps, type FilterChip, FilterChipRow, type FilterChipRowProps, GlassCard, type GlassCardProps, GlassHeader, type GlassHeaderProps, GlassSheet, type GlassSheetProps, type GlassTab, GlassTabBar, type GlassTabBarProps, type GlassTint, GlassView, type GlassViewProps, Header, HeaderIcon, type HeaderIconProps, type HeaderProps, type HeaderVariant, ImageCarousel, Input, type InputProps, type InputVariant, ListingCard, type ListingCardProps, MultiStep, OnboardingCarousel, type OnboardingCarouselProps, OnboardingFlow, type OnboardingFlowProps, type OnboardingFlowStep, OnboardingHero, type OnboardingHeroProps, OnboardingParallax, type OnboardingParallaxProps, type OnboardingSlide, PageLoader, type ParallaxLayer, type ParallaxSlide, type PaywallFeature, PaywallHard, type PaywallHardProps, PaywallScreen, type PaywallScreenProps, PaywallSoft, type PaywallSoftProps, PermissionStep, type PermissionStepProps, Placeholder, PlanCard, type PlanCardProps, PlanComparison, type PlanComparisonProps, type PlanOption, PriceTag, type PriceTagProps, ProductCard, type ProductCardProps, ProviderCard, type ProviderCardProps, type QuizOption, QuizStep, type QuizStepProps, RadioGroup, type RadioGroupProps, type RadioOption, RatingStars, type RatingStarsProps, type Reaction, ReactionBar, type ReactionBarProps, type ReelAction, ReelItem, type ReelItemProps, ReelOverlay, type ReelOverlayProps, ScaleIn, SearchBar, type SearchBarProps, SearchInput, type SearchInputProps, SearchPill, type SearchPillProps, SectionHeader, type SectionHeaderProps, type SectionTitleSize, type Segment, SegmentedControl, type SegmentedControlProps, Select, type SelectOption, type SelectProps, SkeletonLoader, SlideIn, SlideUp, Slider, type SliderProps, SocialProofBar, type SocialProofBarProps, StoryCircle, type StoryCircleProps, SwipeActions, type SwipeActionsProps, SwipeCard, type SwipeCardProps, SwipeDeck, type SwipeDeckProps, type SwipeDirection, SwipeOverlay, type SwipeOverlayProps, TabBar, type TabBarProps, TabButton, type TabButtonProps, type TabItem, TextArea, type TextAreaProps, ThemeScroller, Toast, TransactionItem, type TransactionItemProps, TrialBanner, type TrialBannerProps, TypingIndicator, type TypingIndicatorProps, VerticalReel, type VerticalReelProps, cn, toast, useActionSheet, useAnimColors, useConfirmationSheet };
1289
+ export { type ActionItem, AnimatedFab, AnimatedView, type AnimationType, AuthButtons, type AuthButtonsProps, type AuthProvider, Avatar, type AvatarProps, Badge, type BadgeProps, BalanceDisplay, type BalanceDisplayProps, BlinkActionSheet, type BlinkActionSheetProps, BlinkMobileUIProvider, BlinkModal, BlinkPressable, type BlinkPressableProps, BlinkSwitch, type BlinkSwitchProps, BlinkText, type BlinkTextProps, BottomSheet, Button, type ButtonProps, Card, type CardBodyProps, type CardDescriptionProps, type CardFooterProps, type CardHeaderProps, type CardImageProps, CardPreview, type CardPreviewProps, type CardProps, CardScroller, type CardTitleProps, CartItem, type CartItemProps, CategoryTile, type CategoryTileProps, ChatBubble, type ChatBubbleProps, ChatInput, type ChatInputProps, ChatList, type ChatListProps, type ChatMessage, Checkbox, type CheckboxProps, CheckoutFlow, type CheckoutFlowProps, type CheckoutStep, Chip, type ChipProps, type ColorScheme, ConfirmationSheet, type ConfirmationSheetProps, Container, type ContainerProps, Counter, type CounterProps, DateRangePicker, type DateRangePickerProps, Divider, type DividerProps, EmptyState, FadeIn, FeatureRow, type FeatureRowProps, FeedCard, type FeedCardProps, type FilterChip, FilterChipRow, type FilterChipRowProps, type FlexStackProps, GlassCard, type GlassCardProps, GlassHeader, type GlassHeaderProps, GlassSheet, type GlassSheetProps, type GlassTab, GlassTabBar, type GlassTabBarProps, type GlassTint, GlassView, type GlassViewProps, Grid, type GridProps, HStack, Header, HeaderIcon, type HeaderIconProps, type HeaderProps, type HeaderVariant, IconButton, type IconButtonProps, IconContainer, type IconContainerProps, ImageCarousel, Input, type InputProps, type InputVariant, List, ListItem, type ListItemProps, type ListProps, ListingCard, type ListingCardProps, MultiStep, OnboardingCarousel, type OnboardingCarouselProps, OnboardingFlow, type OnboardingFlowProps, type OnboardingFlowStep, OnboardingHero, type OnboardingHeroProps, OnboardingParallax, type OnboardingParallaxProps, type OnboardingSlide, PageLoader, type PaletteName, type ParallaxLayer, type ParallaxSlide, type PaywallFeature, PaywallHard, type PaywallHardProps, PaywallScreen, type PaywallScreenProps, PaywallSoft, type PaywallSoftProps, PermissionStep, type PermissionStepProps, Placeholder, PlanCard, type PlanCardProps, PlanComparison, type PlanComparisonProps, type PlanOption, PriceTag, type PriceTagProps, ProductCard, type ProductCardProps, ProgressBar, type ProgressBarProps, ProviderCard, type ProviderCardProps, type QuizOption, QuizStep, type QuizStepProps, RadioGroup, type RadioGroupProps, type RadioOption, RatingStars, type RatingStarsProps, type Reaction, ReactionBar, type ReactionBarProps, type ReelAction, ReelItem, type ReelItemProps, ReelOverlay, type ReelOverlayProps, SafeWrapper, type SafeWrapperProps, ScaleIn, SearchBar, type SearchBarProps, SearchInput, type SearchInputProps, SearchPill, type SearchPillProps, Section, SectionHeader, type SectionHeaderProps, type SectionProps, type SectionTitleSize, type Segment, SegmentedControl, type SegmentedControlProps, Select, type SelectOption, type SelectProps, Skeleton, SkeletonLoader, type SkeletonProps, SlideIn, SlideUp, Slider, type SliderProps, SocialProofBar, type SocialProofBarProps, Spacer, type SpacerProps, Stack, type StackProps, StoryCircle, type StoryCircleProps, SwipeActions, type SwipeActionsProps, SwipeCard, type SwipeCardProps, SwipeDeck, type SwipeDeckProps, type SwipeDirection, SwipeOverlay, type SwipeOverlayProps, TabBar, type TabBarProps, TabButton, type TabButtonProps, type TabItem, Tag, type TagProps, TextArea, type TextAreaProps, ThemeScroller, type ThemeScrollerProps$1 as ThemeScrollerProps, Toast, Toggle, type ToggleProps, TransactionItem, type TransactionItemProps, TrialBanner, type TrialBannerProps, TypingIndicator, type TypingIndicatorProps, VStack, VerticalReel, type VerticalReelProps, cn, palettes, toast, useActionSheet, useAnimColors, useBlinkMobileUI, useConfirmationSheet };