panelui-native 0.1.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (124) hide show
  1. package/README.md +251 -0
  2. package/lib/module/components/alert/index.js +107 -24
  3. package/lib/module/components/alert/index.js.map +1 -1
  4. package/lib/module/components/avatar/index.js +1 -1
  5. package/lib/module/components/avatar/index.js.map +1 -1
  6. package/lib/module/components/badge/index.js +3 -3
  7. package/lib/module/components/badge/index.js.map +1 -1
  8. package/lib/module/components/bottom-sheet/index.js +35 -31
  9. package/lib/module/components/bottom-sheet/index.js.map +1 -1
  10. package/lib/module/components/button/index.js +44 -15
  11. package/lib/module/components/button/index.js.map +1 -1
  12. package/lib/module/components/card/index.js +5 -5
  13. package/lib/module/components/card/index.js.map +1 -1
  14. package/lib/module/components/checkbox/index.js +21 -8
  15. package/lib/module/components/checkbox/index.js.map +1 -1
  16. package/lib/module/components/dialog/index.js +21 -17
  17. package/lib/module/components/dialog/index.js.map +1 -1
  18. package/lib/module/components/empty-state/index.js +178 -0
  19. package/lib/module/components/empty-state/index.js.map +1 -0
  20. package/lib/module/components/frame/index.js +100 -0
  21. package/lib/module/components/frame/index.js.map +1 -0
  22. package/lib/module/components/inline-select/index.js +159 -0
  23. package/lib/module/components/inline-select/index.js.map +1 -0
  24. package/lib/module/components/input/index.js +1 -1
  25. package/lib/module/components/input/index.js.map +1 -1
  26. package/lib/module/components/input-group/index.js +132 -0
  27. package/lib/module/components/input-group/index.js.map +1 -0
  28. package/lib/module/components/label/index.js +117 -0
  29. package/lib/module/components/label/index.js.map +1 -0
  30. package/lib/module/components/progress/index.js +138 -0
  31. package/lib/module/components/progress/index.js.map +1 -0
  32. package/lib/module/components/select/index.js +35 -28
  33. package/lib/module/components/select/index.js.map +1 -1
  34. package/lib/module/components/skeleton/index.js +1 -1
  35. package/lib/module/components/skeleton/index.js.map +1 -1
  36. package/lib/module/components/spinner/index.js +1 -1
  37. package/lib/module/components/spinner/index.js.map +1 -1
  38. package/lib/module/components/steps/index.js +354 -0
  39. package/lib/module/components/steps/index.js.map +1 -0
  40. package/lib/module/components/tabs/index.js +9 -3
  41. package/lib/module/components/tabs/index.js.map +1 -1
  42. package/lib/module/components/toast/index.js +479 -0
  43. package/lib/module/components/toast/index.js.map +1 -0
  44. package/lib/module/components/toast/toast-store.js +81 -0
  45. package/lib/module/components/toast/toast-store.js.map +1 -0
  46. package/lib/module/components/typography/index.js +126 -0
  47. package/lib/module/components/typography/index.js.map +1 -0
  48. package/lib/module/icons/index.js +223 -2
  49. package/lib/module/icons/index.js.map +1 -1
  50. package/lib/module/index.js +11 -2
  51. package/lib/module/index.js.map +1 -1
  52. package/lib/module/providers/panel-ui-provider.js +20 -8
  53. package/lib/module/providers/panel-ui-provider.js.map +1 -1
  54. package/lib/module/theme/use-theme.js +90 -3
  55. package/lib/module/theme/use-theme.js.map +1 -1
  56. package/lib/typescript/src/components/alert/index.d.ts +41 -19
  57. package/lib/typescript/src/components/alert/index.d.ts.map +1 -1
  58. package/lib/typescript/src/components/bottom-sheet/index.d.ts.map +1 -1
  59. package/lib/typescript/src/components/button/index.d.ts +39 -0
  60. package/lib/typescript/src/components/button/index.d.ts.map +1 -1
  61. package/lib/typescript/src/components/checkbox/index.d.ts +8 -0
  62. package/lib/typescript/src/components/checkbox/index.d.ts.map +1 -1
  63. package/lib/typescript/src/components/dialog/index.d.ts.map +1 -1
  64. package/lib/typescript/src/components/empty-state/index.d.ts +73 -0
  65. package/lib/typescript/src/components/empty-state/index.d.ts.map +1 -0
  66. package/lib/typescript/src/components/frame/index.d.ts +21 -0
  67. package/lib/typescript/src/components/frame/index.d.ts.map +1 -0
  68. package/lib/typescript/src/components/inline-select/index.d.ts +25 -0
  69. package/lib/typescript/src/components/inline-select/index.d.ts.map +1 -0
  70. package/lib/typescript/src/components/input-group/index.d.ts +34 -0
  71. package/lib/typescript/src/components/input-group/index.d.ts.map +1 -0
  72. package/lib/typescript/src/components/label/index.d.ts +28 -0
  73. package/lib/typescript/src/components/label/index.d.ts.map +1 -0
  74. package/lib/typescript/src/components/progress/index.d.ts +132 -0
  75. package/lib/typescript/src/components/progress/index.d.ts.map +1 -0
  76. package/lib/typescript/src/components/select/index.d.ts.map +1 -1
  77. package/lib/typescript/src/components/spinner/index.d.ts +2 -2
  78. package/lib/typescript/src/components/spinner/index.d.ts.map +1 -1
  79. package/lib/typescript/src/components/steps/index.d.ts +62 -0
  80. package/lib/typescript/src/components/steps/index.d.ts.map +1 -0
  81. package/lib/typescript/src/components/tabs/index.d.ts.map +1 -1
  82. package/lib/typescript/src/components/toast/index.d.ts +176 -0
  83. package/lib/typescript/src/components/toast/index.d.ts.map +1 -0
  84. package/lib/typescript/src/components/toast/toast-store.d.ts +65 -0
  85. package/lib/typescript/src/components/toast/toast-store.d.ts.map +1 -0
  86. package/lib/typescript/src/components/typography/index.d.ts +77 -0
  87. package/lib/typescript/src/components/typography/index.d.ts.map +1 -0
  88. package/lib/typescript/src/icons/index.d.ts +25 -0
  89. package/lib/typescript/src/icons/index.d.ts.map +1 -1
  90. package/lib/typescript/src/index.d.ts +12 -3
  91. package/lib/typescript/src/index.d.ts.map +1 -1
  92. package/lib/typescript/src/providers/panel-ui-provider.d.ts +20 -5
  93. package/lib/typescript/src/providers/panel-ui-provider.d.ts.map +1 -1
  94. package/lib/typescript/src/theme/use-theme.d.ts +64 -4
  95. package/lib/typescript/src/theme/use-theme.d.ts.map +1 -1
  96. package/package.json +28 -5
  97. package/src/components/alert/index.tsx +104 -28
  98. package/src/components/avatar/index.tsx +1 -1
  99. package/src/components/badge/index.tsx +3 -3
  100. package/src/components/bottom-sheet/index.tsx +8 -3
  101. package/src/components/button/index.tsx +47 -7
  102. package/src/components/card/index.tsx +5 -5
  103. package/src/components/checkbox/index.tsx +18 -4
  104. package/src/components/dialog/index.tsx +10 -5
  105. package/src/components/empty-state/index.tsx +136 -0
  106. package/src/components/frame/index.tsx +104 -0
  107. package/src/components/inline-select/index.tsx +185 -0
  108. package/src/components/input/index.tsx +1 -1
  109. package/src/components/input-group/index.tsx +164 -0
  110. package/src/components/label/index.tsx +128 -0
  111. package/src/components/progress/index.tsx +147 -0
  112. package/src/components/select/index.tsx +30 -23
  113. package/src/components/skeleton/index.tsx +1 -1
  114. package/src/components/spinner/index.tsx +1 -1
  115. package/src/components/steps/index.tsx +343 -0
  116. package/src/components/tabs/index.tsx +10 -2
  117. package/src/components/toast/index.tsx +447 -0
  118. package/src/components/toast/toast-store.ts +120 -0
  119. package/src/components/typography/index.tsx +121 -0
  120. package/src/icons/index.tsx +152 -1
  121. package/src/index.ts +82 -3
  122. package/src/providers/panel-ui-provider.tsx +35 -10
  123. package/src/theme/use-theme.ts +119 -4
  124. package/theme.css +446 -108
package/README.md ADDED
@@ -0,0 +1,251 @@
1
+ # PanelUI — React Native UI components for Expo, styled with Tailwind CSS
2
+
3
+ **PanelUI** (`panelui-native`) is an accessible, high-performance React Native component
4
+ library for Expo apps. 24 typed components — buttons, bottom sheets, dialogs, selects,
5
+ toasts, forms — styled with Tailwind CSS v4 and animated on the UI thread with Reanimated.
6
+ Zero native code, so it runs in Expo Go.
7
+
8
+ [![npm version](https://img.shields.io/npm/v/panelui-native?style=flat-square)](https://www.npmjs.com/package/panelui-native)
9
+ [![npm downloads](https://img.shields.io/npm/dm/panelui-native?style=flat-square)](https://www.npmjs.com/package/panelui-native)
10
+ [![bundle size](https://img.shields.io/bundlephobia/minzip/panelui-native?style=flat-square)](https://bundlephobia.com/package/panelui-native)
11
+ [![MIT license](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](https://github.com/panel-ui/PanelUI/blob/main/LICENSE)
12
+ ![platforms iOS and Android](https://img.shields.io/badge/platforms-iOS%20%7C%20Android-black?style=flat-square)
13
+ ![Expo SDK 57+](https://img.shields.io/badge/Expo-SDK%2057%2B-000?style=flat-square&logo=expo)
14
+
15
+ - ⚡ **Tailwind CSS for React Native** via [Uniwind](https://uniwind.dev) — no Babel transform,
16
+ roughly 2.4–3× faster styling than NativeWind.
17
+ - 🧵 **60fps animations on the UI thread** with Reanimated 4. Press feedback, switches, sheets,
18
+ dialogs and tabs never touch the JS thread.
19
+ - 🎨 **Six built-in themes** — Panel, Moon and Grass, each in light and dark. A theme sets radius
20
+ as well as colour, so switching one restyles the shape of the UI too.
21
+ - 🌗 **Native dark mode.** Theme switching is applied natively by Uniwind, without re-rendering
22
+ your component tree.
23
+ - ♿ **Accessible by default** — every interactive component wires up `accessibilityRole`,
24
+ state and labels.
25
+ - 📦 **TypeScript, tree-shakeable, zero native modules** — works in Expo Go, no prebuild needed.
26
+
27
+ ## Install
28
+
29
+ ```sh
30
+ npx expo install panelui-native uniwind tailwindcss react-native-reanimated react-native-gesture-handler react-native-safe-area-context react-native-svg react-native-worklets
31
+ ```
32
+
33
+ ## Quick start
34
+
35
+ **1. Configure Metro**
36
+
37
+ ```js
38
+ // metro.config.js
39
+ const { getDefaultConfig } = require('expo/metro-config');
40
+ const { withUniwindConfig } = require('uniwind/metro');
41
+
42
+ const config = getDefaultConfig(__dirname);
43
+
44
+ module.exports = withUniwindConfig(config, {
45
+ cssEntryFile: './global.css',
46
+ dtsFile: './uniwind-types.d.ts',
47
+ // Only needed if you use the Moon or Grass themes.
48
+ extraThemes: ['moon', 'moon-dark', 'grass', 'grass-dark'],
49
+ });
50
+ ```
51
+
52
+ **2. Create `global.css`**
53
+
54
+ ```css
55
+ @import 'tailwindcss';
56
+ @import 'uniwind';
57
+ @import 'panelui-native/theme.css';
58
+
59
+ @source './node_modules/panelui-native/src';
60
+ ```
61
+
62
+ **3. Wrap your app**
63
+
64
+ ```tsx
65
+ // App.tsx
66
+ import './global.css';
67
+ import { PanelUIProvider, Button, Card } from 'panelui-native';
68
+
69
+ export default function App() {
70
+ return (
71
+ <PanelUIProvider>
72
+ <Card>
73
+ <Card.Header>
74
+ <Card.Title>Create project</Card.Title>
75
+ <Card.Description>Deploy your new project in one click.</Card.Description>
76
+ </Card.Header>
77
+ <Card.Footer>
78
+ <Button>Deploy</Button>
79
+ </Card.Footer>
80
+ </Card>
81
+ </PanelUIProvider>
82
+ );
83
+ }
84
+ ```
85
+
86
+ `PanelUIProvider` sets up the gesture root, the themed page background, the portal host used by
87
+ overlays, and the toast viewport.
88
+
89
+ ## Components
90
+
91
+ | Component | What it does |
92
+ | --- | --- |
93
+ | `Alert` | Status message with a built-in icon — info, success, warning, destructive |
94
+ | `Avatar` | User image with initials fallback, four sizes |
95
+ | `Badge` | Compact status label with semantic colour variants |
96
+ | `BottomSheet` | Draggable bottom sheet with swipe-to-dismiss |
97
+ | `Button` | Pressable action with variants, sizes, loading state and icon slots |
98
+ | `Card` | Content surface with `Header`, `Content` and `Footer` |
99
+ | `Checkbox` | Animated checkbox with label and description |
100
+ | `Dialog` | Modal dialog with backdrop, title, description and footer actions |
101
+ | `EmptyState` | Placeholder for an empty list or screen, with a stacked-icon media slot |
102
+ | `Frame` | Grouped list section with `Header`, `Panel`, `Row` and `Footer` |
103
+ | `InlineSelect` | Picker that expands its options in place |
104
+ | `Input` | Text field with label, description and error message |
105
+ | `InputGroup` | Input with leading and trailing decorators, auto-measured |
106
+ | `Label` | Form field label with required, invalid and disabled states |
107
+ | `Progress` | Determinate and indeterminate progress bar |
108
+ | `RadioGroup` | Single-select list of options |
109
+ | `Select` | Picker that opens in a bottom sheet |
110
+ | `Skeleton` | Shimmer placeholder for loading content |
111
+ | `Spinner` | Indeterminate loading indicator |
112
+ | `Steps` | Stepper for multi-step flows, horizontal or vertical |
113
+ | `Switch` | Animated on/off toggle |
114
+ | `Tabs` | Segmented navigation with animated indicator |
115
+ | `Toast` | Transient notification queue with swipe-to-dismiss |
116
+ | `Typography` | Semantic text presets — `h1`–`h6`, body sizes, inline code |
117
+
118
+ Plus `PanelUIProvider`, `Portal`, `AnimatedPressable`, `Text`, `useTheme`, `useThemeMode`,
119
+ `useToast`, a set of SVG icons, and the `cn` class-merging helper.
120
+
121
+ Every component takes a `className`, so anything can be restyled with Tailwind utilities:
122
+
123
+ ```tsx
124
+ <Button className="w-full rounded-full" labelClassName="uppercase">
125
+ Continue
126
+ </Button>
127
+ ```
128
+
129
+ ## Toasts
130
+
131
+ ```tsx
132
+ import { useToast } from 'panelui-native';
133
+
134
+ const { toast } = useToast();
135
+
136
+ toast.show('Link copied');
137
+ toast.show({
138
+ variant: 'success',
139
+ label: 'Deployment complete',
140
+ description: 'panelui.dev is live on production.',
141
+ actionLabel: 'View',
142
+ onActionPress: ({ hide }) => hide(),
143
+ });
144
+ ```
145
+
146
+ The queue lives outside React, so `toast.show()` also works from API clients and other
147
+ non-component code.
148
+
149
+ ## Theming and dark mode
150
+
151
+ PanelUI ships three theme families, each in light and dark: **Panel** (`light` / `dark`),
152
+ **Moon** (`moon` / `moon-dark`) and **Grass** (`grass` / `grass-dark`). A family sets its own
153
+ radius scale as well as its own palette — Panel is the Coss default, Moon is sharp and
154
+ monochrome, Grass is soft and green.
155
+
156
+ ```tsx
157
+ import { useTheme, useThemeMode, PANEL_THEMES } from 'panelui-native';
158
+
159
+ // Switch to a specific theme
160
+ const { theme, setTheme } = useTheme();
161
+ setTheme('moon-dark');
162
+ setTheme('system'); // follow the device
163
+
164
+ // Or treat brand and light/dark as separate axes
165
+ const { family, mode, setFamily, toggleMode } = useThemeMode();
166
+ toggleMode(); // dark ↔ light, staying in the current brand
167
+ setFamily('grass'); // switch family, staying in the current mode
168
+ ```
169
+
170
+ Tokens are plain CSS variables, so you can override any of them in your own `global.css`:
171
+
172
+ ```css
173
+ @import 'panelui-native/theme.css';
174
+
175
+ @layer theme {
176
+ :root {
177
+ @variant dark {
178
+ --color-primary: #818cf8;
179
+ }
180
+ }
181
+ }
182
+ ```
183
+
184
+ ### Using Expo Router? Read this
185
+
186
+ React Navigation paints its own theme background over every screen, and it defaults to an opaque
187
+ light grey — which sits on top of `PanelUIProvider`'s background and makes theme switching look
188
+ like it does nothing. Feed it the live PanelUI tokens:
189
+
190
+ ```tsx
191
+ import { DarkTheme, DefaultTheme, Stack, ThemeProvider } from 'expo-router';
192
+ import { useCSSVariable } from 'uniwind';
193
+ import { useThemeMode } from 'panelui-native';
194
+
195
+ function ThemedNavigation() {
196
+ const { mode } = useThemeMode();
197
+ const [background, card, text, border] = useCSSVariable([
198
+ '--color-background', '--color-card', '--color-foreground', '--color-border',
199
+ ]) as (string | undefined)[];
200
+
201
+ const base = mode === 'dark' ? DarkTheme : DefaultTheme;
202
+
203
+ return (
204
+ <ThemeProvider value={{ ...base, dark: mode === 'dark',
205
+ colors: { ...base.colors, background, card, text, border } }}>
206
+ <Stack />
207
+ </ThemeProvider>
208
+ );
209
+ }
210
+ ```
211
+
212
+ `useCSSVariable` subscribes to Uniwind's theme changes, so this re-runs on every switch — including
213
+ the named themes, which the OS `Appearance` API knows nothing about. For the same reason, drive
214
+ `<StatusBar>` from `mode` rather than `style="auto"`.
215
+
216
+ ## FAQ
217
+
218
+ ### How is PanelUI different from NativeWind?
219
+
220
+ NativeWind is a styling engine; PanelUI is a component library. PanelUI is built on **Uniwind**,
221
+ a faster Tailwind v4 engine for React Native that skips the Babel transform and applies theme
222
+ changes natively.
223
+
224
+ ### Does it work with Expo Go?
225
+
226
+ Yes. PanelUI is pure TypeScript with no native modules, so no development build or prebuild is
227
+ required.
228
+
229
+ ### Is it accessible?
230
+
231
+ Every interactive component sets an `accessibilityRole`, mirrors its state through
232
+ `accessibilityState`, and exposes labels. Decorative icons are hidden from screen readers.
233
+
234
+ ### Can I use it in a bare React Native app?
235
+
236
+ Yes, as long as Uniwind, Reanimated and Gesture Handler are configured. Expo is the tested
237
+ path.
238
+
239
+ ### Why do my Moon or Grass themes throw "it was not registered"?
240
+
241
+ Named themes must be listed in `extraThemes` in your Metro config — see [Quick start](#quick-start).
242
+
243
+ ## Links
244
+
245
+ - **Documentation and source:** [github.com/panel-ui/PanelUI](https://github.com/panel-ui/PanelUI)
246
+ - **Report an issue:** [github.com/panel-ui/PanelUI/issues](https://github.com/panel-ui/PanelUI/issues)
247
+ - **Changelog:** [releases](https://github.com/panel-ui/PanelUI/releases)
248
+
249
+ ## License
250
+
251
+ MIT © Khalid Abdi
@@ -1,43 +1,52 @@
1
1
  "use strict";
2
2
 
3
+ /**
4
+ * Alert — a status message with an optional leading status icon.
5
+ *
6
+ * Adapted from: heroui-inc/heroui-native src/components/alert/alert.tsx
7
+ * (Indicator / Content / Title / Description anatomy, status-driven icon and
8
+ * title colour), restyled with Coss UI tokens.
9
+ *
10
+ * The `variant` prop name is kept from PanelUI v0.2 rather than renamed to
11
+ * HeroUI's `status`, so existing code keeps working.
12
+ */
3
13
  import { createContext, forwardRef, useContext } from 'react';
4
14
  import { View } from 'react-native';
5
15
  import { tv } from 'tailwind-variants';
16
+ import { useCSSVariable } from 'uniwind';
6
17
  import { cn } from "../../utils/cn.js";
7
18
  import { Text } from "../../primitives/text.js";
8
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
19
+ import { AlertTriangleIcon, CheckCircleIcon, InfoIcon } from "../../icons/index.js";
20
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
9
21
  const alertVariants = tv({
10
22
  slots: {
11
- root: 'w-full gap-1 rounded-xl border p-4',
12
- title: 'font-semibold',
13
- description: 'text-sm'
23
+ root: 'w-full flex-row gap-3 rounded-xl border px-3.5 py-3',
24
+ indicator: 'pt-px',
25
+ content: 'flex-1 gap-0.5',
26
+ title: 'text-sm font-medium',
27
+ description: 'text-sm text-muted-foreground'
14
28
  },
15
29
  variants: {
16
30
  variant: {
17
31
  default: {
18
- root: 'border-border bg-card',
19
- title: 'text-foreground',
20
- description: 'text-muted-foreground'
32
+ root: 'border-border bg-surface',
33
+ title: 'text-card-foreground'
21
34
  },
22
35
  info: {
23
- root: 'border-info/32 bg-info/4',
24
- title: 'text-foreground',
25
- description: 'text-muted-foreground'
36
+ root: 'border-info/32 bg-info-soft',
37
+ title: 'text-info-foreground'
26
38
  },
27
39
  success: {
28
- root: 'border-success/32 bg-success/4',
29
- title: 'text-foreground',
30
- description: 'text-muted-foreground'
40
+ root: 'border-success/32 bg-success-soft',
41
+ title: 'text-success-foreground'
31
42
  },
32
43
  warning: {
33
- root: 'border-warning/32 bg-warning/4',
34
- title: 'text-foreground',
35
- description: 'text-muted-foreground'
44
+ root: 'border-warning/32 bg-warning-soft',
45
+ title: 'text-warning-foreground'
36
46
  },
37
47
  destructive: {
38
- root: 'border-destructive/32 bg-destructive/4',
39
- title: 'text-foreground',
40
- description: 'text-muted-foreground'
48
+ root: 'border-destructive/32 bg-destructive-soft',
49
+ title: 'text-destructive-foreground'
41
50
  }
42
51
  }
43
52
  },
@@ -46,6 +55,22 @@ const alertVariants = tv({
46
55
  }
47
56
  });
48
57
  const AlertContext = /*#__PURE__*/createContext('default');
58
+
59
+ /** CSS variable each variant's indicator icon takes its colour from. */
60
+ const INDICATOR_COLOR_VAR = {
61
+ default: '--color-muted-foreground',
62
+ info: '--color-info-foreground',
63
+ success: '--color-success-foreground',
64
+ warning: '--color-warning-foreground',
65
+ destructive: '--color-destructive-foreground'
66
+ };
67
+ const INDICATOR_ICON = {
68
+ default: InfoIcon,
69
+ info: InfoIcon,
70
+ success: CheckCircleIcon,
71
+ warning: AlertTriangleIcon,
72
+ destructive: AlertTriangleIcon
73
+ };
49
74
  const AlertRoot = /*#__PURE__*/forwardRef(({
50
75
  className,
51
76
  variant = 'default',
@@ -54,7 +79,9 @@ const AlertRoot = /*#__PURE__*/forwardRef(({
54
79
  ...props
55
80
  }, ref) => {
56
81
  const {
57
- root
82
+ root,
83
+ indicator,
84
+ content
58
85
  } = alertVariants({
59
86
  variant
60
87
  });
@@ -67,13 +94,12 @@ const AlertRoot = /*#__PURE__*/forwardRef(({
67
94
  className
68
95
  }),
69
96
  ...props,
70
- children: icon ? /*#__PURE__*/_jsxs(View, {
71
- className: "flex-row items-start gap-3",
97
+ children: icon ? /*#__PURE__*/_jsxs(_Fragment, {
72
98
  children: [/*#__PURE__*/_jsx(View, {
73
- className: "mt-0.5",
99
+ className: indicator(),
74
100
  children: icon
75
101
  }), /*#__PURE__*/_jsx(View, {
76
- className: "flex-1 gap-1",
102
+ className: content(),
77
103
  children: children
78
104
  })]
79
105
  }) : children
@@ -81,6 +107,59 @@ const AlertRoot = /*#__PURE__*/forwardRef(({
81
107
  });
82
108
  });
83
109
  AlertRoot.displayName = 'Alert';
110
+ /**
111
+ * Leading status icon. Resolves both the icon and its colour from the parent
112
+ * Alert's variant, so it follows the active theme.
113
+ */
114
+ const AlertIndicator = /*#__PURE__*/forwardRef(({
115
+ className,
116
+ iconProps,
117
+ children,
118
+ ...props
119
+ }, ref) => {
120
+ const variant = useContext(AlertContext);
121
+ const {
122
+ indicator
123
+ } = alertVariants({
124
+ variant
125
+ });
126
+ const themeColor = useCSSVariable(INDICATOR_COLOR_VAR[variant]);
127
+ const Icon = INDICATOR_ICON[variant];
128
+ const color = iconProps?.color ?? (typeof themeColor === 'string' ? themeColor : undefined);
129
+ return /*#__PURE__*/_jsx(View, {
130
+ ref: ref,
131
+ className: indicator({
132
+ className
133
+ }),
134
+ ...props,
135
+ children: children ?? /*#__PURE__*/_jsx(Icon, {
136
+ size: iconProps?.size ?? 18,
137
+ color: color
138
+ })
139
+ });
140
+ });
141
+ AlertIndicator.displayName = 'Alert.Indicator';
142
+
143
+ /** Flex-1 wrapper for Alert.Title and Alert.Description. */
144
+ const AlertContent = /*#__PURE__*/forwardRef(({
145
+ className,
146
+ ...props
147
+ }, ref) => {
148
+ const variant = useContext(AlertContext);
149
+ const {
150
+ content
151
+ } = alertVariants({
152
+ variant
153
+ });
154
+ return /*#__PURE__*/_jsx(View, {
155
+ ref: ref,
156
+ className: content({
157
+ className
158
+ }),
159
+ ...props
160
+ });
161
+ });
162
+ AlertContent.displayName = 'Alert.Content';
84
163
  const AlertTitle = /*#__PURE__*/forwardRef(({
85
164
  className,
86
165
  ...props
@@ -116,6 +195,10 @@ const AlertDescription = /*#__PURE__*/forwardRef(({
116
195
  });
117
196
  AlertDescription.displayName = 'Alert.Description';
118
197
  export const Alert = Object.assign(AlertRoot, {
198
+ /** @optional Status icon rendered as the leading visual element. */
199
+ Indicator: AlertIndicator,
200
+ /** @optional Wrapper for title and description. */
201
+ Content: AlertContent,
119
202
  Title: AlertTitle,
120
203
  Description: AlertDescription
121
204
  });
@@ -1 +1 @@
1
- {"version":3,"names":["createContext","forwardRef","useContext","View","tv","cn","Text","jsx","_jsx","jsxs","_jsxs","alertVariants","slots","root","title","description","variants","variant","default","info","success","warning","destructive","defaultVariants","AlertContext","AlertRoot","className","icon","children","props","ref","Provider","value","accessibilityRole","displayName","AlertTitle","AlertDescription","Alert","Object","assign","Title","Description"],"sourceRoot":"../../../../src","sources":["components/alert/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createContext","forwardRef","useContext","View","tv","useCSSVariable","cn","Text","AlertTriangleIcon","CheckCircleIcon","InfoIcon","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","alertVariants","slots","root","indicator","content","title","description","variants","variant","default","info","success","warning","destructive","defaultVariants","AlertContext","INDICATOR_COLOR_VAR","INDICATOR_ICON","AlertRoot","className","icon","children","props","ref","Provider","value","accessibilityRole","displayName","AlertIndicator","iconProps","themeColor","Icon","color","undefined","size","AlertContent","AlertTitle","AlertDescription","Alert","Object","assign","Indicator","Content","Title","Description"],"sourceRoot":"../../../../src","sources":["components/alert/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,7 +8,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
8
8
  const avatarVariants = tv({
9
9
  slots: {
10
10
  root: 'items-center justify-center overflow-hidden rounded-full border border-border bg-muted',
11
- image: 'h-full w-full',
11
+ image: 'absolute inset-0 h-full w-full',
12
12
  fallback: 'font-medium text-muted-foreground'
13
13
  },
14
14
  variants: {
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useState","Image","View","tv","Text","jsx","_jsx","avatarVariants","slots","root","image","fallback","variants","size","sm","md","lg","xl","defaultVariants","Avatar","className","source","imageProps","props","ref","errored","setErrored","fallbackSlot","showImage","accessibilityRole","children","onError","displayName"],"sourceRoot":"../../../../src","sources":["components/avatar/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,OAAO;AAC5C,SACEC,KAAK,EACLC,IAAI,QAIC,cAAc;AACrB,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,IAAI,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7C,MAAMC,cAAc,GAAGJ,EAAE,CAAC;EACxBK,KAAK,EAAE;IACLC,IAAI,EAAE,wFAAwF;IAC9FC,KAAK,EAAE,eAAe;IACtBC,QAAQ,EAAE;EACZ,CAAC;EACDC,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,EAAE,EAAE;QAAEL,IAAI,EAAE,SAAS;QAAEE,QAAQ,EAAE;MAAU,CAAC;MAC5CI,EAAE,EAAE;QAAEN,IAAI,EAAE,WAAW;QAAEE,QAAQ,EAAE;MAAU,CAAC;MAC9CK,EAAE,EAAE;QAAEP,IAAI,EAAE,WAAW;QAAEE,QAAQ,EAAE;MAAU,CAAC;MAC9CM,EAAE,EAAE;QAAER,IAAI,EAAE,WAAW;QAAEE,QAAQ,EAAE;MAAW;IAChD;EACF,CAAC;EACDO,eAAe,EAAE;IACfL,IAAI,EAAE;EACR;AACF,CAAC,CAAC;AAWF,OAAO,MAAMM,MAAM,gBAAGpB,UAAU,CAC9B,CAAC;EAAEqB,SAAS;EAAEP,IAAI;EAAEQ,MAAM;EAAEV,QAAQ;EAAEW,UAAU;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EACpE,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EAC7C,MAAM;IAAES,IAAI;IAAEC,KAAK;IAAEC,QAAQ,EAAEgB;EAAa,CAAC,GAAGpB,cAAc,CAAC;IAAEM;EAAK,CAAC,CAAC;EACxE,MAAMe,SAAS,GAAG,CAAC,CAACP,MAAM,IAAI,CAACI,OAAO;EAEtC,oBACEnB,IAAA,CAACJ,IAAI;IACHsB,GAAG,EAAEA,GAAI;IACTK,iBAAiB,EAAC,OAAO;IACzBT,SAAS,EAAEX,IAAI,CAAC;MAAEW;IAAU,CAAC,CAAE;IAAA,GAC3BG,KAAK;IAAAO,QAAA,EAERF,SAAS,gBACRtB,IAAA,CAACL,KAAK;MACJoB,MAAM,EAAEA,MAAO;MACfU,OAAO,EAAEA,CAAA,KAAML,UAAU,CAAC,IAAI,CAAE;MAChCN,SAAS,EAAEV,KAAK,CAAC,CAAE;MAAA,GACfY;IAAU,CACf,CAAC,gBAEFhB,IAAA,CAACF,IAAI;MAACgB,SAAS,EAAEO,YAAY,CAAC,CAAE;MAAAG,QAAA,EAAEnB,QAAQ,IAAI;IAAG,CAAO;EACzD,CACG,CAAC;AAEX,CACF,CAAC;AAEDQ,MAAM,CAACa,WAAW,GAAG,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useState","Image","View","tv","Text","jsx","_jsx","avatarVariants","slots","root","image","fallback","variants","size","sm","md","lg","xl","defaultVariants","Avatar","className","source","imageProps","props","ref","errored","setErrored","fallbackSlot","showImage","accessibilityRole","children","onError","displayName"],"sourceRoot":"../../../../src","sources":["components/avatar/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,OAAO;AAC5C,SACEC,KAAK,EACLC,IAAI,QAIC,cAAc;AACrB,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,IAAI,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7C,MAAMC,cAAc,GAAGJ,EAAE,CAAC;EACxBK,KAAK,EAAE;IACLC,IAAI,EAAE,wFAAwF;IAC9FC,KAAK,EAAE,gCAAgC;IACvCC,QAAQ,EAAE;EACZ,CAAC;EACDC,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJC,EAAE,EAAE;QAAEL,IAAI,EAAE,SAAS;QAAEE,QAAQ,EAAE;MAAU,CAAC;MAC5CI,EAAE,EAAE;QAAEN,IAAI,EAAE,WAAW;QAAEE,QAAQ,EAAE;MAAU,CAAC;MAC9CK,EAAE,EAAE;QAAEP,IAAI,EAAE,WAAW;QAAEE,QAAQ,EAAE;MAAU,CAAC;MAC9CM,EAAE,EAAE;QAAER,IAAI,EAAE,WAAW;QAAEE,QAAQ,EAAE;MAAW;IAChD;EACF,CAAC;EACDO,eAAe,EAAE;IACfL,IAAI,EAAE;EACR;AACF,CAAC,CAAC;AAWF,OAAO,MAAMM,MAAM,gBAAGpB,UAAU,CAC9B,CAAC;EAAEqB,SAAS;EAAEP,IAAI;EAAEQ,MAAM;EAAEV,QAAQ;EAAEW,UAAU;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EACpE,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG1B,QAAQ,CAAC,KAAK,CAAC;EAC7C,MAAM;IAAES,IAAI;IAAEC,KAAK;IAAEC,QAAQ,EAAEgB;EAAa,CAAC,GAAGpB,cAAc,CAAC;IAAEM;EAAK,CAAC,CAAC;EACxE,MAAMe,SAAS,GAAG,CAAC,CAACP,MAAM,IAAI,CAACI,OAAO;EAEtC,oBACEnB,IAAA,CAACJ,IAAI;IACHsB,GAAG,EAAEA,GAAI;IACTK,iBAAiB,EAAC,OAAO;IACzBT,SAAS,EAAEX,IAAI,CAAC;MAAEW;IAAU,CAAC,CAAE;IAAA,GAC3BG,KAAK;IAAAO,QAAA,EAERF,SAAS,gBACRtB,IAAA,CAACL,KAAK;MACJoB,MAAM,EAAEA,MAAO;MACfU,OAAO,EAAEA,CAAA,KAAML,UAAU,CAAC,IAAI,CAAE;MAChCN,SAAS,EAAEV,KAAK,CAAC,CAAE;MAAA,GACfY;IAAU,CACf,CAAC,gBAEFhB,IAAA,CAACF,IAAI;MAACgB,SAAS,EAAEO,YAAY,CAAC,CAAE;MAAAG,QAAA,EAAEnB,QAAQ,IAAI;IAAG,CAAO;EACzD,CACG,CAAC;AAEX,CACF,CAAC;AAEDQ,MAAM,CAACa,WAAW,GAAG,QAAQ","ignoreList":[]}
@@ -29,15 +29,15 @@ const badgeVariants = tv({
29
29
  label: 'text-white'
30
30
  },
31
31
  success: {
32
- root: 'bg-success/8 dark:bg-success/16',
32
+ root: 'bg-success-subtle',
33
33
  label: 'text-success-foreground'
34
34
  },
35
35
  warning: {
36
- root: 'bg-warning/8 dark:bg-warning/16',
36
+ root: 'bg-warning-subtle',
37
37
  label: 'text-warning-foreground'
38
38
  },
39
39
  info: {
40
- root: 'bg-info/8 dark:bg-info/16',
40
+ root: 'bg-info-subtle',
41
41
  label: 'text-info-foreground'
42
42
  }
43
43
  }
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","View","tv","Text","jsx","_jsx","badgeVariants","slots","root","label","variants","variant","default","secondary","outline","destructive","success","warning","info","defaultVariants","Badge","children","className","labelClassName","props","ref","displayName"],"sourceRoot":"../../../../src","sources":["components/badge/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAwB,OAAO;AAClD,SAASC,IAAI,QAAwB,cAAc;AACnD,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,IAAI,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7C,MAAMC,aAAa,GAAGJ,EAAE,CAAC;EACvBK,KAAK,EAAE;IACLC,IAAI,EAAE,wGAAwG;IAC9GC,KAAK,EAAE;EACT,CAAC;EACDC,QAAQ,EAAE;IACRC,OAAO,EAAE;MACPC,OAAO,EAAE;QAAEJ,IAAI,EAAE,YAAY;QAAEC,KAAK,EAAE;MAA0B,CAAC;MACjEI,SAAS,EAAE;QAAEL,IAAI,EAAE,cAAc;QAAEC,KAAK,EAAE;MAA4B,CAAC;MACvEK,OAAO,EAAE;QAAEN,IAAI,EAAE,8BAA8B;QAAEC,KAAK,EAAE;MAAkB,CAAC;MAC3EM,WAAW,EAAE;QAAEP,IAAI,EAAE,gBAAgB;QAAEC,KAAK,EAAE;MAAa,CAAC;MAC5DO,OAAO,EAAE;QAAER,IAAI,EAAE,iCAAiC;QAAEC,KAAK,EAAE;MAA0B,CAAC;MACtFQ,OAAO,EAAE;QAAET,IAAI,EAAE,iCAAiC;QAAEC,KAAK,EAAE;MAA0B,CAAC;MACtFS,IAAI,EAAE;QAAEV,IAAI,EAAE,2BAA2B;QAAEC,KAAK,EAAE;MAAuB;IAC3E;EACF,CAAC;EACDU,eAAe,EAAE;IACfR,OAAO,EAAE;EACX;AACF,CAAC,CAAC;AAUF,OAAO,MAAMS,KAAK,gBAAGpB,UAAU,CAC7B,CAAC;EAAEqB,QAAQ;EAAEC,SAAS;EAAEC,cAAc;EAAEZ,OAAO;EAAE,GAAGa;AAAM,CAAC,EAAEC,GAAG,KAAK;EACnE,MAAM;IAAEjB,IAAI;IAAEC;EAAM,CAAC,GAAGH,aAAa,CAAC;IAAEK;EAAQ,CAAC,CAAC;EAElD,oBACEN,IAAA,CAACJ,IAAI;IAACwB,GAAG,EAAEA,GAAI;IAACH,SAAS,EAAEd,IAAI,CAAC;MAAEc;IAAU,CAAC,CAAE;IAAA,GAAKE,KAAK;IAAAH,QAAA,EACtD,OAAOA,QAAQ,KAAK,QAAQ,gBAC3BhB,IAAA,CAACF,IAAI;MAACmB,SAAS,EAAEb,KAAK,CAAC;QAAEa,SAAS,EAAEC;MAAe,CAAC,CAAE;MAAAF,QAAA,EAAEA;IAAQ,CAAO,CAAC,GAExEA;EACD,CACG,CAAC;AAEX,CACF,CAAC;AAEDD,KAAK,CAACM,WAAW,GAAG,OAAO","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","View","tv","Text","jsx","_jsx","badgeVariants","slots","root","label","variants","variant","default","secondary","outline","destructive","success","warning","info","defaultVariants","Badge","children","className","labelClassName","props","ref","displayName"],"sourceRoot":"../../../../src","sources":["components/badge/index.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAwB,OAAO;AAClD,SAASC,IAAI,QAAwB,cAAc;AACnD,SAASC,EAAE,QAA2B,mBAAmB;AACzD,SAASC,IAAI,QAAQ,0BAAuB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7C,MAAMC,aAAa,GAAGJ,EAAE,CAAC;EACvBK,KAAK,EAAE;IACLC,IAAI,EAAE,wGAAwG;IAC9GC,KAAK,EAAE;EACT,CAAC;EACDC,QAAQ,EAAE;IACRC,OAAO,EAAE;MACPC,OAAO,EAAE;QAAEJ,IAAI,EAAE,YAAY;QAAEC,KAAK,EAAE;MAA0B,CAAC;MACjEI,SAAS,EAAE;QAAEL,IAAI,EAAE,cAAc;QAAEC,KAAK,EAAE;MAA4B,CAAC;MACvEK,OAAO,EAAE;QAAEN,IAAI,EAAE,8BAA8B;QAAEC,KAAK,EAAE;MAAkB,CAAC;MAC3EM,WAAW,EAAE;QAAEP,IAAI,EAAE,gBAAgB;QAAEC,KAAK,EAAE;MAAa,CAAC;MAC5DO,OAAO,EAAE;QAAER,IAAI,EAAE,mBAAmB;QAAEC,KAAK,EAAE;MAA0B,CAAC;MACxEQ,OAAO,EAAE;QAAET,IAAI,EAAE,mBAAmB;QAAEC,KAAK,EAAE;MAA0B,CAAC;MACxES,IAAI,EAAE;QAAEV,IAAI,EAAE,gBAAgB;QAAEC,KAAK,EAAE;MAAuB;IAChE;EACF,CAAC;EACDU,eAAe,EAAE;IACfR,OAAO,EAAE;EACX;AACF,CAAC,CAAC;AAUF,OAAO,MAAMS,KAAK,gBAAGpB,UAAU,CAC7B,CAAC;EAAEqB,QAAQ;EAAEC,SAAS;EAAEC,cAAc;EAAEZ,OAAO;EAAE,GAAGa;AAAM,CAAC,EAAEC,GAAG,KAAK;EACnE,MAAM;IAAEjB,IAAI;IAAEC;EAAM,CAAC,GAAGH,aAAa,CAAC;IAAEK;EAAQ,CAAC,CAAC;EAElD,oBACEN,IAAA,CAACJ,IAAI;IAACwB,GAAG,EAAEA,GAAI;IAACH,SAAS,EAAEd,IAAI,CAAC;MAAEc;IAAU,CAAC,CAAE;IAAA,GAAKE,KAAK;IAAAH,QAAA,EACtD,OAAOA,QAAQ,KAAK,QAAQ,gBAC3BhB,IAAA,CAACF,IAAI;MAACmB,SAAS,EAAEb,KAAK,CAAC;QAAEa,SAAS,EAAEC;MAAe,CAAC,CAAE;MAAAF,QAAA,EAAEA;IAAQ,CAAO,CAAC,GAExEA;EACD,CACG,CAAC;AAEX,CACF,CAAC;AAEDD,KAAK,CAACM,WAAW,GAAG,OAAO","ignoreList":[]}
@@ -65,10 +65,11 @@ function BottomSheetContent({
65
65
  children,
66
66
  ...props
67
67
  }) {
68
+ const context = useBottomSheet('BottomSheet.Content');
68
69
  const {
69
70
  open,
70
71
  setOpen
71
- } = useBottomSheet('BottomSheet.Content');
72
+ } = context;
72
73
  const {
73
74
  height: screenHeight
74
75
  } = useWindowDimensions();
@@ -97,36 +98,39 @@ function BottomSheetContent({
97
98
  }));
98
99
  if (!open) return null;
99
100
  return /*#__PURE__*/_jsx(Portal, {
100
- children: /*#__PURE__*/_jsxs(View, {
101
- className: "absolute inset-0 justify-end",
102
- children: [/*#__PURE__*/_jsx(Animated.View, {
103
- entering: FadeIn.duration(180),
104
- exiting: FadeOut.duration(180),
105
- className: "absolute inset-0",
106
- children: /*#__PURE__*/_jsx(Pressable, {
107
- accessibilityLabel: "Close sheet",
108
- className: "flex-1 bg-black/50",
109
- onPress: dismissible ? close : undefined
110
- })
111
- }), /*#__PURE__*/_jsx(GestureDetector, {
112
- gesture: pan,
113
- children: /*#__PURE__*/_jsxs(Animated.View, {
114
- entering: SlideInDown.springify().damping(22).stiffness(240).mass(0.8),
115
- exiting: SlideOutDown.duration(200),
116
- style: [sheetStyle, {
117
- paddingBottom: Math.max(insets.bottom, 16)
118
- }],
119
- accessibilityViewIsModal: true,
120
- className: cn('rounded-t-3xl border border-b-0 border-border bg-popover px-5 pt-2 shadow-lg', className),
121
- ...props,
122
- children: [/*#__PURE__*/_jsx(View, {
123
- className: "mb-3 self-center",
124
- children: /*#__PURE__*/_jsx(View, {
125
- className: "h-1 w-10 rounded-full bg-muted-foreground/30"
126
- })
127
- }), children]
128
- })
129
- })]
101
+ children: /*#__PURE__*/_jsx(BottomSheetContext.Provider, {
102
+ value: context,
103
+ children: /*#__PURE__*/_jsxs(View, {
104
+ className: "absolute inset-0 justify-end",
105
+ children: [/*#__PURE__*/_jsx(Animated.View, {
106
+ entering: FadeIn.duration(180),
107
+ exiting: FadeOut.duration(180),
108
+ className: "absolute inset-0",
109
+ children: /*#__PURE__*/_jsx(Pressable, {
110
+ accessibilityLabel: "Close sheet",
111
+ className: "flex-1 bg-black/50",
112
+ onPress: dismissible ? close : undefined
113
+ })
114
+ }), /*#__PURE__*/_jsx(GestureDetector, {
115
+ gesture: pan,
116
+ children: /*#__PURE__*/_jsxs(Animated.View, {
117
+ entering: SlideInDown.springify().damping(22).stiffness(240).mass(0.8),
118
+ exiting: SlideOutDown.duration(200),
119
+ style: [sheetStyle, {
120
+ paddingBottom: Math.max(insets.bottom, 16)
121
+ }],
122
+ accessibilityViewIsModal: true,
123
+ className: cn('rounded-t-3xl border border-b-0 border-border bg-popover px-5 pt-2 shadow-lg', className),
124
+ ...props,
125
+ children: [/*#__PURE__*/_jsx(View, {
126
+ className: "mb-3 self-center",
127
+ children: /*#__PURE__*/_jsx(View, {
128
+ className: "h-1 w-10 rounded-full bg-muted-foreground/30"
129
+ })
130
+ }), children]
131
+ })
132
+ })]
133
+ })
130
134
  })
131
135
  });
132
136
  }
@@ -1 +1 @@
1
- {"version":3,"names":["cloneElement","createContext","isValidElement","useCallback","useContext","useMemo","useState","Pressable","useWindowDimensions","View","Gesture","GestureDetector","Animated","FadeIn","FadeOut","SlideInDown","SlideOutDown","runOnJS","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","Portal","cn","jsx","_jsx","jsxs","_jsxs","SPRING","damping","stiffness","mass","DISMISS_DISTANCE","DISMISS_VELOCITY","BottomSheetContext","useBottomSheet","component","context","Error","BottomSheetRoot","children","open","onOpenChange","defaultOpen","internalOpen","setInternalOpen","isControlled","undefined","resolvedOpen","setOpen","next","Provider","value","BottomSheetTrigger","onPress","args","props","BottomSheetContent","className","dismissible","height","screenHeight","insets","translateY","close","pan","Pan","onChange","event","changeY","onEnd","velocityY","duration","sheetStyle","transform","entering","exiting","accessibilityLabel","gesture","springify","style","paddingBottom","Math","max","bottom","accessibilityViewIsModal","BottomSheet","Object","assign","Trigger","Content"],"sourceRoot":"../../../../src","sources":["components/bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["cloneElement","createContext","isValidElement","useCallback","useContext","useMemo","useState","Pressable","useWindowDimensions","View","Gesture","GestureDetector","Animated","FadeIn","FadeOut","SlideInDown","SlideOutDown","runOnJS","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","Portal","cn","jsx","_jsx","jsxs","_jsxs","SPRING","damping","stiffness","mass","DISMISS_DISTANCE","DISMISS_VELOCITY","BottomSheetContext","useBottomSheet","component","context","Error","BottomSheetRoot","children","open","onOpenChange","defaultOpen","internalOpen","setInternalOpen","isControlled","undefined","resolvedOpen","setOpen","next","Provider","value","BottomSheetTrigger","onPress","args","props","BottomSheetContent","className","dismissible","height","screenHeight","insets","translateY","close","pan","Pan","onChange","event","changeY","onEnd","velocityY","duration","sheetStyle","transform","entering","exiting","accessibilityLabel","gesture","springify","style","paddingBottom","Math","max","bottom","accessibilityViewIsModal","BottomSheet","Object","assign","Trigger","Content"],"sourceRoot":"../../../../src","sources":["components/bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}