@oxyhq/bloom 0.1.14 → 0.1.16
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/lib/commonjs/accordion/Accordion.js +230 -0
- package/lib/commonjs/accordion/Accordion.js.map +1 -0
- package/lib/commonjs/accordion/index.js +31 -0
- package/lib/commonjs/accordion/index.js.map +1 -0
- package/lib/commonjs/accordion/types.js +6 -0
- package/lib/commonjs/accordion/types.js.map +1 -0
- package/lib/commonjs/avatar/Avatar.js +19 -7
- package/lib/commonjs/avatar/Avatar.js.map +1 -1
- package/lib/commonjs/badge/Badge.js +173 -0
- package/lib/commonjs/badge/Badge.js.map +1 -0
- package/lib/commonjs/badge/index.js +13 -0
- package/lib/commonjs/badge/index.js.map +1 -0
- package/lib/commonjs/badge/types.js +6 -0
- package/lib/commonjs/badge/types.js.map +1 -0
- package/lib/commonjs/bottom-sheet/index.js +32 -14
- package/lib/commonjs/bottom-sheet/index.js.map +1 -1
- package/lib/commonjs/card/Card.js +165 -0
- package/lib/commonjs/card/Card.js.map +1 -0
- package/lib/commonjs/card/index.js +43 -0
- package/lib/commonjs/card/index.js.map +1 -0
- package/lib/commonjs/card/types.js +6 -0
- package/lib/commonjs/card/types.js.map +1 -0
- package/lib/commonjs/checkbox/Checkbox.js +177 -0
- package/lib/commonjs/checkbox/Checkbox.js.map +1 -0
- package/lib/commonjs/checkbox/index.js +13 -0
- package/lib/commonjs/checkbox/index.js.map +1 -0
- package/lib/commonjs/checkbox/types.js +6 -0
- package/lib/commonjs/checkbox/types.js.map +1 -0
- package/lib/commonjs/chip/Chip.js +180 -0
- package/lib/commonjs/chip/Chip.js.map +1 -0
- package/lib/commonjs/chip/index.js +13 -0
- package/lib/commonjs/chip/index.js.map +1 -0
- package/lib/commonjs/chip/types.js +6 -0
- package/lib/commonjs/chip/types.js.map +1 -0
- package/lib/commonjs/index.js +56 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/tabs/Tabs.js +202 -0
- package/lib/commonjs/tabs/Tabs.js.map +1 -0
- package/lib/commonjs/tabs/index.js +25 -0
- package/lib/commonjs/tabs/index.js.map +1 -0
- package/lib/commonjs/tabs/types.js +6 -0
- package/lib/commonjs/tabs/types.js.map +1 -0
- package/lib/module/accordion/Accordion.js +225 -0
- package/lib/module/accordion/Accordion.js.map +1 -0
- package/lib/module/accordion/index.js +4 -0
- package/lib/module/accordion/index.js.map +1 -0
- package/lib/module/accordion/types.js +4 -0
- package/lib/module/accordion/types.js.map +1 -0
- package/lib/module/avatar/Avatar.js +19 -7
- package/lib/module/avatar/Avatar.js.map +1 -1
- package/lib/module/badge/Badge.js +168 -0
- package/lib/module/badge/Badge.js.map +1 -0
- package/lib/module/badge/index.js +4 -0
- package/lib/module/badge/index.js.map +1 -0
- package/lib/module/badge/types.js +4 -0
- package/lib/module/badge/types.js.map +1 -0
- package/lib/module/bottom-sheet/index.js +32 -14
- package/lib/module/bottom-sheet/index.js.map +1 -1
- package/lib/module/card/Card.js +160 -0
- package/lib/module/card/Card.js.map +1 -0
- package/lib/module/card/index.js +4 -0
- package/lib/module/card/index.js.map +1 -0
- package/lib/module/card/types.js +4 -0
- package/lib/module/card/types.js.map +1 -0
- package/lib/module/checkbox/Checkbox.js +172 -0
- package/lib/module/checkbox/Checkbox.js.map +1 -0
- package/lib/module/checkbox/index.js +4 -0
- package/lib/module/checkbox/index.js.map +1 -0
- package/lib/module/checkbox/types.js +4 -0
- package/lib/module/checkbox/types.js.map +1 -0
- package/lib/module/chip/Chip.js +175 -0
- package/lib/module/chip/Chip.js.map +1 -0
- package/lib/module/chip/index.js +4 -0
- package/lib/module/chip/index.js.map +1 -0
- package/lib/module/chip/types.js +4 -0
- package/lib/module/chip/types.js.map +1 -0
- package/lib/module/index.js +8 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/tabs/Tabs.js +197 -0
- package/lib/module/tabs/Tabs.js.map +1 -0
- package/lib/module/tabs/index.js +4 -0
- package/lib/module/tabs/index.js.map +1 -0
- package/lib/module/tabs/types.js +4 -0
- package/lib/module/tabs/types.js.map +1 -0
- package/lib/typescript/commonjs/__tests__/BloomThemeProvider.test.d.ts +2 -0
- package/lib/typescript/commonjs/__tests__/BloomThemeProvider.test.d.ts.map +1 -0
- package/lib/typescript/commonjs/__tests__/BottomSheet.test.d.ts +2 -0
- package/lib/typescript/commonjs/__tests__/BottomSheet.test.d.ts.map +1 -0
- package/lib/typescript/commonjs/__tests__/Button.test.d.ts +2 -0
- package/lib/typescript/commonjs/__tests__/Button.test.d.ts.map +1 -0
- package/lib/typescript/commonjs/__tests__/theme.test.d.ts +2 -0
- package/lib/typescript/commonjs/__tests__/theme.test.d.ts.map +1 -0
- package/lib/typescript/commonjs/accordion/Accordion.d.ts +7 -0
- package/lib/typescript/commonjs/accordion/Accordion.d.ts.map +1 -0
- package/lib/typescript/commonjs/accordion/index.d.ts +3 -0
- package/lib/typescript/commonjs/accordion/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/accordion/types.d.ts +38 -0
- package/lib/typescript/commonjs/accordion/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/avatar/Avatar.d.ts.map +1 -1
- package/lib/typescript/commonjs/avatar/types.d.ts +4 -0
- package/lib/typescript/commonjs/avatar/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/badge/Badge.d.ts +4 -0
- package/lib/typescript/commonjs/badge/Badge.d.ts.map +1 -0
- package/lib/typescript/commonjs/badge/index.d.ts +3 -0
- package/lib/typescript/commonjs/badge/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/badge/types.d.ts +29 -0
- package/lib/typescript/commonjs/badge/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/bottom-sheet/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/card/Card.d.ts +9 -0
- package/lib/typescript/commonjs/card/Card.d.ts.map +1 -0
- package/lib/typescript/commonjs/card/index.d.ts +3 -0
- package/lib/typescript/commonjs/card/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/card/types.d.ts +34 -0
- package/lib/typescript/commonjs/card/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/checkbox/Checkbox.d.ts +4 -0
- package/lib/typescript/commonjs/checkbox/Checkbox.d.ts.map +1 -0
- package/lib/typescript/commonjs/checkbox/index.d.ts +3 -0
- package/lib/typescript/commonjs/checkbox/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/checkbox/types.d.ts +25 -0
- package/lib/typescript/commonjs/checkbox/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/chip/Chip.d.ts +4 -0
- package/lib/typescript/commonjs/chip/Chip.d.ts.map +1 -0
- package/lib/typescript/commonjs/chip/index.d.ts +3 -0
- package/lib/typescript/commonjs/chip/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/chip/types.d.ts +31 -0
- package/lib/typescript/commonjs/chip/types.d.ts.map +1 -0
- package/lib/typescript/commonjs/index.d.ts +6 -0
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/tabs/Tabs.d.ts +6 -0
- package/lib/typescript/commonjs/tabs/Tabs.d.ts.map +1 -0
- package/lib/typescript/commonjs/tabs/index.d.ts +3 -0
- package/lib/typescript/commonjs/tabs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/tabs/types.d.ts +34 -0
- package/lib/typescript/commonjs/tabs/types.d.ts.map +1 -0
- package/lib/typescript/module/__tests__/BloomThemeProvider.test.d.ts +2 -0
- package/lib/typescript/module/__tests__/BloomThemeProvider.test.d.ts.map +1 -0
- package/lib/typescript/module/__tests__/BottomSheet.test.d.ts +2 -0
- package/lib/typescript/module/__tests__/BottomSheet.test.d.ts.map +1 -0
- package/lib/typescript/module/__tests__/Button.test.d.ts +2 -0
- package/lib/typescript/module/__tests__/Button.test.d.ts.map +1 -0
- package/lib/typescript/module/__tests__/theme.test.d.ts +2 -0
- package/lib/typescript/module/__tests__/theme.test.d.ts.map +1 -0
- package/lib/typescript/module/accordion/Accordion.d.ts +7 -0
- package/lib/typescript/module/accordion/Accordion.d.ts.map +1 -0
- package/lib/typescript/module/accordion/index.d.ts +3 -0
- package/lib/typescript/module/accordion/index.d.ts.map +1 -0
- package/lib/typescript/module/accordion/types.d.ts +38 -0
- package/lib/typescript/module/accordion/types.d.ts.map +1 -0
- package/lib/typescript/module/avatar/Avatar.d.ts.map +1 -1
- package/lib/typescript/module/avatar/types.d.ts +4 -0
- package/lib/typescript/module/avatar/types.d.ts.map +1 -1
- package/lib/typescript/module/badge/Badge.d.ts +4 -0
- package/lib/typescript/module/badge/Badge.d.ts.map +1 -0
- package/lib/typescript/module/badge/index.d.ts +3 -0
- package/lib/typescript/module/badge/index.d.ts.map +1 -0
- package/lib/typescript/module/badge/types.d.ts +29 -0
- package/lib/typescript/module/badge/types.d.ts.map +1 -0
- package/lib/typescript/module/bottom-sheet/index.d.ts.map +1 -1
- package/lib/typescript/module/card/Card.d.ts +9 -0
- package/lib/typescript/module/card/Card.d.ts.map +1 -0
- package/lib/typescript/module/card/index.d.ts +3 -0
- package/lib/typescript/module/card/index.d.ts.map +1 -0
- package/lib/typescript/module/card/types.d.ts +34 -0
- package/lib/typescript/module/card/types.d.ts.map +1 -0
- package/lib/typescript/module/checkbox/Checkbox.d.ts +4 -0
- package/lib/typescript/module/checkbox/Checkbox.d.ts.map +1 -0
- package/lib/typescript/module/checkbox/index.d.ts +3 -0
- package/lib/typescript/module/checkbox/index.d.ts.map +1 -0
- package/lib/typescript/module/checkbox/types.d.ts +25 -0
- package/lib/typescript/module/checkbox/types.d.ts.map +1 -0
- package/lib/typescript/module/chip/Chip.d.ts +4 -0
- package/lib/typescript/module/chip/Chip.d.ts.map +1 -0
- package/lib/typescript/module/chip/index.d.ts +3 -0
- package/lib/typescript/module/chip/index.d.ts.map +1 -0
- package/lib/typescript/module/chip/types.d.ts +31 -0
- package/lib/typescript/module/chip/types.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +6 -0
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/tabs/Tabs.d.ts +6 -0
- package/lib/typescript/module/tabs/Tabs.d.ts.map +1 -0
- package/lib/typescript/module/tabs/index.d.ts +3 -0
- package/lib/typescript/module/tabs/index.d.ts.map +1 -0
- package/lib/typescript/module/tabs/types.d.ts +34 -0
- package/lib/typescript/module/tabs/types.d.ts.map +1 -0
- package/package.json +79 -1
- package/src/__tests__/BloomThemeProvider.test.tsx +160 -0
- package/src/__tests__/BottomSheet.test.tsx +109 -0
- package/src/__tests__/Button.test.tsx +98 -0
- package/src/__tests__/theme.test.ts +148 -0
- package/src/accordion/Accordion.tsx +261 -0
- package/src/accordion/index.ts +8 -0
- package/src/accordion/types.ts +42 -0
- package/src/avatar/Avatar.tsx +16 -6
- package/src/avatar/types.ts +4 -0
- package/src/badge/Badge.tsx +151 -0
- package/src/badge/index.ts +8 -0
- package/src/badge/types.ts +30 -0
- package/src/bottom-sheet/index.tsx +30 -11
- package/src/card/Card.tsx +197 -0
- package/src/card/index.ts +10 -0
- package/src/card/types.ts +40 -0
- package/src/checkbox/Checkbox.tsx +166 -0
- package/src/checkbox/index.ts +2 -0
- package/src/checkbox/types.ts +26 -0
- package/src/chip/Chip.tsx +156 -0
- package/src/chip/index.ts +2 -0
- package/src/chip/types.ts +32 -0
- package/src/index.ts +8 -0
- package/src/tabs/Tabs.tsx +218 -0
- package/src/tabs/index.ts +2 -0
- package/src/tabs/types.ts +37 -0
|
@@ -19,10 +19,20 @@ if (Platform.OS !== 'web') {
|
|
|
19
19
|
// react-native-keyboard-controller not available
|
|
20
20
|
}
|
|
21
21
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
|
|
23
|
+
/** Hook that returns current screen dimensions and updates on rotation/resize. */
|
|
24
|
+
function useScreenDimensions() {
|
|
25
|
+
const [dimensions, setDimensions] = useState(() => Dimensions.get('window'));
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
const subscription = Dimensions.addEventListener('change', ({
|
|
28
|
+
window
|
|
29
|
+
}) => {
|
|
30
|
+
setDimensions(window);
|
|
31
|
+
});
|
|
32
|
+
return () => subscription.remove();
|
|
33
|
+
}, []);
|
|
34
|
+
return dimensions;
|
|
35
|
+
}
|
|
26
36
|
const SPRING_CONFIG = {
|
|
27
37
|
damping: 25,
|
|
28
38
|
stiffness: 300,
|
|
@@ -41,15 +51,24 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
41
51
|
detached = false
|
|
42
52
|
} = props;
|
|
43
53
|
const insets = useSafeAreaInsets();
|
|
54
|
+
const theme = useTheme();
|
|
44
55
|
const {
|
|
45
56
|
colors
|
|
46
|
-
} =
|
|
57
|
+
} = theme;
|
|
58
|
+
const {
|
|
59
|
+
height: screenHeight
|
|
60
|
+
} = useScreenDimensions();
|
|
47
61
|
const [visible, setVisible] = useState(false);
|
|
48
62
|
const [rendered, setRendered] = useState(false); // keep mounted for exit animation
|
|
49
63
|
const closeTimeoutRef = useRef(null);
|
|
50
64
|
const hasClosedRef = useRef(false);
|
|
51
65
|
const scrollViewRef = useRef(null);
|
|
52
|
-
const
|
|
66
|
+
const screenHeightSV = useSharedValue(screenHeight);
|
|
67
|
+
// Keep shared value in sync when screen dimensions change (rotation/resize)
|
|
68
|
+
useEffect(() => {
|
|
69
|
+
screenHeightSV.value = screenHeight;
|
|
70
|
+
}, [screenHeight, screenHeightSV]);
|
|
71
|
+
const translateY = useSharedValue(screenHeight);
|
|
53
72
|
const opacity = useSharedValue(0);
|
|
54
73
|
const scrollOffsetY = useSharedValue(0);
|
|
55
74
|
const isScrollAtTop = useSharedValue(true);
|
|
@@ -104,7 +123,7 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
104
123
|
runOnJS(finishClose)();
|
|
105
124
|
}
|
|
106
125
|
});
|
|
107
|
-
translateY.value = withSpring(
|
|
126
|
+
translateY.value = withSpring(screenHeight, {
|
|
108
127
|
...SPRING_CONFIG,
|
|
109
128
|
stiffness: 250
|
|
110
129
|
});
|
|
@@ -196,11 +215,11 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
196
215
|
const velocity = event.velocityY;
|
|
197
216
|
const distance = translateY.value;
|
|
198
217
|
// Require a deeper pull to close (more like native bottom sheets)
|
|
199
|
-
const closeThreshold = Math.max(140,
|
|
218
|
+
const closeThreshold = Math.max(140, screenHeightSV.value * 0.25);
|
|
200
219
|
const fastSwipeThreshold = 900;
|
|
201
220
|
const shouldClose = velocity > fastSwipeThreshold || distance > closeThreshold && velocity > -300;
|
|
202
221
|
if (shouldClose) {
|
|
203
|
-
translateY.value = withSpring(
|
|
222
|
+
translateY.value = withSpring(screenHeightSV.value, {
|
|
204
223
|
...SPRING_CONFIG,
|
|
205
224
|
velocity: velocity
|
|
206
225
|
});
|
|
@@ -227,7 +246,7 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
227
246
|
opacity: opacity.value
|
|
228
247
|
}));
|
|
229
248
|
const sheetStyle = useAnimatedStyle(() => {
|
|
230
|
-
const scale = interpolate(translateY.value, [0,
|
|
249
|
+
const scale = interpolate(translateY.value, [0, screenHeightSV.value], [1, 0.95]);
|
|
231
250
|
return {
|
|
232
251
|
transform: [{
|
|
233
252
|
translateY: translateY.value - keyboardHeight.value
|
|
@@ -237,7 +256,7 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
237
256
|
};
|
|
238
257
|
});
|
|
239
258
|
const sheetHeightStyle = useAnimatedStyle(() => ({
|
|
240
|
-
maxHeight:
|
|
259
|
+
maxHeight: screenHeightSV.value - keyboardHeight.value - insets.top - (detached ? insets.bottom + 16 : 0)
|
|
241
260
|
}), [insets.top, insets.bottom, detached]);
|
|
242
261
|
const sheetMarginStyle = useAnimatedStyle(() => {
|
|
243
262
|
// Only add margin when detached, otherwise extend behind safe area
|
|
@@ -264,11 +283,10 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
264
283
|
}
|
|
265
284
|
});
|
|
266
285
|
const dynamicStyles = useMemo(() => {
|
|
267
|
-
const isDark = colors.background === '#000000';
|
|
268
286
|
return StyleSheet.create({
|
|
269
287
|
handle: {
|
|
270
288
|
...styles.handle,
|
|
271
|
-
backgroundColor: isDark ? '#444' : '#C7C7CC'
|
|
289
|
+
backgroundColor: theme.isDark ? '#444' : '#C7C7CC'
|
|
272
290
|
},
|
|
273
291
|
sheet: {
|
|
274
292
|
...styles.sheet,
|
|
@@ -281,7 +299,7 @@ const BottomSheet = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
281
299
|
// The sheet extends behind safe area, and screens add padding as needed
|
|
282
300
|
}
|
|
283
301
|
});
|
|
284
|
-
}, [colors.background, detached]);
|
|
302
|
+
}, [colors.background, theme.isDark, detached]);
|
|
285
303
|
if (!rendered) return null;
|
|
286
304
|
return /*#__PURE__*/_jsx(Modal, {
|
|
287
305
|
visible: rendered,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useImperativeHandle","useRef","useEffect","useState","useCallback","useMemo","View","StyleSheet","Modal","Pressable","Dimensions","Platform","Gesture","GestureDetector","Animated","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useTheme","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","OS","require","width","SCREEN_WIDTH","height","SCREEN_HEIGHT","get","SPRING_CONFIG","damping","stiffness","mass","BottomSheet","props","ref","children","onDismiss","enablePanDownToClose","backgroundComponent","backdropComponent","style","enableHandlePanningGesture","onDismissAttempt","detached","insets","colors","visible","setVisible","rendered","setRendered","closeTimeoutRef","hasClosedRef","scrollViewRef","translateY","opacity","scrollOffsetY","isScrollAtTop","allowPanClose","keyboardHeight","context","y","onMove","e","value","onEnd","safeClose","finishClose","current","clearTimeout","duration","finished","setTimeout","createWebScrollbarStyle","border","present","dismiss","scrollTo","animated","close","expand","collapse","nativeGesture","Native","panGesture","Pan","enabled","simultaneousWithExternalGesture","onStart","onUpdate","event","newTranslateY","translationY","atTopOrNearTop","velocity","velocityY","distance","closeThreshold","Math","max","fastSwipeThreshold","shouldClose","backdropStyle","sheetStyle","scale","transform","sheetHeightStyle","maxHeight","top","bottom","sheetMarginStyle","marginBottom","handleBackdropPress","scrollHandler","onScroll","contentOffset","dynamicStyles","isDark","background","create","handle","styles","backgroundColor","sheet","sheetDetached","sheetNormal","scrollContent","transparent","animationType","statusBarTranslucent","onRequestClose","absoluteFill","backdrop","onPress","backdropTouchable","gesture","ScrollView","scrollView","scrollbarWidth","scrollbarColor","contentContainerStyle","showsVerticalScrollIndicator","keyboardShouldPersistTaps","scrollEventThrottle","className","undefined","onLayout","displayName","flex","position","overflow","maxWidth","alignSelf","marginHorizontal","left","right","borderRadius","borderTopLeftRadius","borderTopRightRadius","marginLeft","zIndex","absoluteFillObject","flexGrow","borderColor","document","styleId","styleElement","getElementById","createElement","id","head","appendChild","scrollbarHoverColor","textContent"],"sourceRoot":"../../../src","sources":["bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["forwardRef","useImperativeHandle","useRef","useEffect","useState","useCallback","useMemo","View","StyleSheet","Modal","Pressable","Dimensions","Platform","Gesture","GestureDetector","Animated","interpolate","runOnJS","useAnimatedScrollHandler","useAnimatedStyle","useSharedValue","withSpring","withTiming","useSafeAreaInsets","useTheme","jsx","_jsx","jsxs","_jsxs","noopKeyboardHandler","_handlers","_deps","useKeyboardHandler","OS","require","useScreenDimensions","dimensions","setDimensions","get","subscription","addEventListener","window","remove","SPRING_CONFIG","damping","stiffness","mass","BottomSheet","props","ref","children","onDismiss","enablePanDownToClose","backgroundComponent","backdropComponent","style","enableHandlePanningGesture","onDismissAttempt","detached","insets","theme","colors","height","screenHeight","visible","setVisible","rendered","setRendered","closeTimeoutRef","hasClosedRef","scrollViewRef","screenHeightSV","value","translateY","opacity","scrollOffsetY","isScrollAtTop","allowPanClose","keyboardHeight","context","y","onMove","e","onEnd","safeClose","finishClose","current","clearTimeout","duration","finished","setTimeout","createWebScrollbarStyle","border","present","dismiss","scrollTo","animated","close","expand","collapse","nativeGesture","Native","panGesture","Pan","enabled","simultaneousWithExternalGesture","onStart","onUpdate","event","newTranslateY","translationY","atTopOrNearTop","velocity","velocityY","distance","closeThreshold","Math","max","fastSwipeThreshold","shouldClose","backdropStyle","sheetStyle","scale","transform","sheetHeightStyle","maxHeight","top","bottom","sheetMarginStyle","marginBottom","handleBackdropPress","scrollHandler","onScroll","contentOffset","dynamicStyles","create","handle","styles","backgroundColor","isDark","sheet","background","sheetDetached","sheetNormal","scrollContent","transparent","animationType","statusBarTranslucent","onRequestClose","absoluteFill","backdrop","onPress","backdropTouchable","gesture","ScrollView","scrollView","scrollbarWidth","scrollbarColor","contentContainerStyle","showsVerticalScrollIndicator","keyboardShouldPersistTaps","scrollEventThrottle","className","undefined","onLayout","displayName","flex","position","overflow","maxWidth","alignSelf","marginHorizontal","left","right","borderRadius","borderTopLeftRadius","borderTopRightRadius","marginLeft","width","zIndex","absoluteFillObject","flexGrow","borderColor","document","styleId","styleElement","getElementById","createElement","id","head","appendChild","scrollbarHoverColor","textContent"],"sourceRoot":"../../../src","sources":["bottom-sheet/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { memo, useMemo } from 'react';
|
|
4
|
+
import { View, Text, Pressable, Platform } from 'react-native';
|
|
5
|
+
import { useTheme } from "../theme/use-theme.js";
|
|
6
|
+
import { borderRadius, space } from "../styles/tokens.js";
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
const CardRootComponent = ({
|
|
9
|
+
children,
|
|
10
|
+
variant = 'elevated',
|
|
11
|
+
style,
|
|
12
|
+
onPress,
|
|
13
|
+
disabled = false,
|
|
14
|
+
accessibilityLabel,
|
|
15
|
+
testID
|
|
16
|
+
}) => {
|
|
17
|
+
const theme = useTheme();
|
|
18
|
+
const containerStyle = useMemo(() => {
|
|
19
|
+
const base = {
|
|
20
|
+
borderRadius: borderRadius.md,
|
|
21
|
+
overflow: 'hidden'
|
|
22
|
+
};
|
|
23
|
+
switch (variant) {
|
|
24
|
+
case 'elevated':
|
|
25
|
+
base.backgroundColor = theme.colors.card;
|
|
26
|
+
if (Platform.OS === 'web') {
|
|
27
|
+
base.boxShadow = `0px 1px 3px ${theme.colors.shadow}`;
|
|
28
|
+
} else {
|
|
29
|
+
base.shadowColor = theme.colors.shadow;
|
|
30
|
+
base.shadowOffset = {
|
|
31
|
+
width: 0,
|
|
32
|
+
height: 1
|
|
33
|
+
};
|
|
34
|
+
base.shadowOpacity = 0.2;
|
|
35
|
+
base.shadowRadius = 3;
|
|
36
|
+
base.elevation = 2;
|
|
37
|
+
}
|
|
38
|
+
break;
|
|
39
|
+
case 'outlined':
|
|
40
|
+
base.backgroundColor = theme.colors.card;
|
|
41
|
+
base.borderWidth = 1;
|
|
42
|
+
base.borderColor = theme.colors.border;
|
|
43
|
+
break;
|
|
44
|
+
case 'filled':
|
|
45
|
+
base.backgroundColor = theme.colors.backgroundSecondary;
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
return base;
|
|
49
|
+
}, [variant, theme]);
|
|
50
|
+
if (onPress) {
|
|
51
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
52
|
+
style: ({
|
|
53
|
+
pressed
|
|
54
|
+
}) => [containerStyle, pressed && {
|
|
55
|
+
opacity: 0.85
|
|
56
|
+
}, disabled && {
|
|
57
|
+
opacity: 0.5
|
|
58
|
+
}, style],
|
|
59
|
+
onPress: onPress,
|
|
60
|
+
disabled: disabled,
|
|
61
|
+
accessibilityLabel: accessibilityLabel,
|
|
62
|
+
accessibilityRole: "button",
|
|
63
|
+
accessibilityState: {
|
|
64
|
+
disabled
|
|
65
|
+
},
|
|
66
|
+
testID: testID,
|
|
67
|
+
children: children
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
return /*#__PURE__*/_jsx(View, {
|
|
71
|
+
style: [containerStyle, disabled && {
|
|
72
|
+
opacity: 0.5
|
|
73
|
+
}, style],
|
|
74
|
+
accessibilityLabel: accessibilityLabel,
|
|
75
|
+
testID: testID,
|
|
76
|
+
children: children
|
|
77
|
+
});
|
|
78
|
+
};
|
|
79
|
+
const CardHeaderComponent = ({
|
|
80
|
+
children,
|
|
81
|
+
style
|
|
82
|
+
}) => /*#__PURE__*/_jsx(View, {
|
|
83
|
+
style: [{
|
|
84
|
+
paddingHorizontal: space.lg,
|
|
85
|
+
paddingTop: space.lg,
|
|
86
|
+
paddingBottom: space.sm
|
|
87
|
+
}, style],
|
|
88
|
+
children: children
|
|
89
|
+
});
|
|
90
|
+
const CardBodyComponent = ({
|
|
91
|
+
children,
|
|
92
|
+
style
|
|
93
|
+
}) => /*#__PURE__*/_jsx(View, {
|
|
94
|
+
style: [{
|
|
95
|
+
paddingHorizontal: space.lg,
|
|
96
|
+
paddingVertical: space.sm
|
|
97
|
+
}, style],
|
|
98
|
+
children: children
|
|
99
|
+
});
|
|
100
|
+
const CardFooterComponent = ({
|
|
101
|
+
children,
|
|
102
|
+
style
|
|
103
|
+
}) => /*#__PURE__*/_jsx(View, {
|
|
104
|
+
style: [{
|
|
105
|
+
paddingHorizontal: space.lg,
|
|
106
|
+
paddingTop: space.sm,
|
|
107
|
+
paddingBottom: space.lg,
|
|
108
|
+
flexDirection: 'row',
|
|
109
|
+
alignItems: 'center',
|
|
110
|
+
justifyContent: 'flex-end',
|
|
111
|
+
gap: space.sm
|
|
112
|
+
}, style],
|
|
113
|
+
children: children
|
|
114
|
+
});
|
|
115
|
+
const CardTitleComponent = ({
|
|
116
|
+
children,
|
|
117
|
+
style,
|
|
118
|
+
numberOfLines
|
|
119
|
+
}) => {
|
|
120
|
+
const theme = useTheme();
|
|
121
|
+
return /*#__PURE__*/_jsx(Text, {
|
|
122
|
+
style: [{
|
|
123
|
+
fontSize: 17,
|
|
124
|
+
fontWeight: '600',
|
|
125
|
+
color: theme.colors.text,
|
|
126
|
+
lineHeight: 22
|
|
127
|
+
}, style],
|
|
128
|
+
numberOfLines: numberOfLines,
|
|
129
|
+
children: children
|
|
130
|
+
});
|
|
131
|
+
};
|
|
132
|
+
const CardDescriptionComponent = ({
|
|
133
|
+
children,
|
|
134
|
+
style,
|
|
135
|
+
numberOfLines
|
|
136
|
+
}) => {
|
|
137
|
+
const theme = useTheme();
|
|
138
|
+
return /*#__PURE__*/_jsx(Text, {
|
|
139
|
+
style: [{
|
|
140
|
+
fontSize: 14,
|
|
141
|
+
color: theme.colors.textSecondary,
|
|
142
|
+
lineHeight: 20
|
|
143
|
+
}, style],
|
|
144
|
+
numberOfLines: numberOfLines,
|
|
145
|
+
children: children
|
|
146
|
+
});
|
|
147
|
+
};
|
|
148
|
+
export const Card = /*#__PURE__*/memo(CardRootComponent);
|
|
149
|
+
Card.displayName = 'Card';
|
|
150
|
+
export const CardHeader = /*#__PURE__*/memo(CardHeaderComponent);
|
|
151
|
+
CardHeader.displayName = 'CardHeader';
|
|
152
|
+
export const CardBody = /*#__PURE__*/memo(CardBodyComponent);
|
|
153
|
+
CardBody.displayName = 'CardBody';
|
|
154
|
+
export const CardFooter = /*#__PURE__*/memo(CardFooterComponent);
|
|
155
|
+
CardFooter.displayName = 'CardFooter';
|
|
156
|
+
export const CardTitle = /*#__PURE__*/memo(CardTitleComponent);
|
|
157
|
+
CardTitle.displayName = 'CardTitle';
|
|
158
|
+
export const CardDescription = /*#__PURE__*/memo(CardDescriptionComponent);
|
|
159
|
+
CardDescription.displayName = 'CardDescription';
|
|
160
|
+
//# sourceMappingURL=Card.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","memo","useMemo","View","Text","Pressable","Platform","useTheme","borderRadius","space","jsx","_jsx","CardRootComponent","children","variant","style","onPress","disabled","accessibilityLabel","testID","theme","containerStyle","base","md","overflow","backgroundColor","colors","card","OS","boxShadow","shadow","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","borderWidth","borderColor","border","backgroundSecondary","pressed","opacity","accessibilityRole","accessibilityState","CardHeaderComponent","paddingHorizontal","lg","paddingTop","paddingBottom","sm","CardBodyComponent","paddingVertical","CardFooterComponent","flexDirection","alignItems","justifyContent","gap","CardTitleComponent","numberOfLines","fontSize","fontWeight","color","text","lineHeight","CardDescriptionComponent","textSecondary","Card","displayName","CardHeader","CardBody","CardFooter","CardTitle","CardDescription"],"sourceRoot":"../../../src","sources":["card/Card.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Card","CardHeader","CardBody","CardFooter","CardTitle","CardDescription"],"sourceRoot":"../../../src","sources":["card/index.ts"],"mappings":";;AAAA,SAASA,IAAI,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,SAAS,EAAEC,eAAe,QAAQ,WAAQ","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["card/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { memo, useCallback, useEffect, useMemo, useRef } from 'react';
|
|
4
|
+
import { View, Text, Pressable, Animated } from 'react-native';
|
|
5
|
+
import { useTheme } from "../theme/use-theme.js";
|
|
6
|
+
import { animation, borderRadius, space } from "../styles/tokens.js";
|
|
7
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
const SIZE_CONFIG = {
|
|
9
|
+
small: {
|
|
10
|
+
box: 18,
|
|
11
|
+
checkmark: 10,
|
|
12
|
+
fontSize: 14,
|
|
13
|
+
lineHeight: 20,
|
|
14
|
+
descFontSize: 12
|
|
15
|
+
},
|
|
16
|
+
medium: {
|
|
17
|
+
box: 22,
|
|
18
|
+
checkmark: 12,
|
|
19
|
+
fontSize: 15,
|
|
20
|
+
lineHeight: 22,
|
|
21
|
+
descFontSize: 13
|
|
22
|
+
},
|
|
23
|
+
large: {
|
|
24
|
+
box: 26,
|
|
25
|
+
checkmark: 14,
|
|
26
|
+
fontSize: 16,
|
|
27
|
+
lineHeight: 24,
|
|
28
|
+
descFontSize: 14
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
const CheckboxComponent = ({
|
|
32
|
+
checked,
|
|
33
|
+
onCheckedChange,
|
|
34
|
+
label,
|
|
35
|
+
description,
|
|
36
|
+
size = 'medium',
|
|
37
|
+
disabled = false,
|
|
38
|
+
indeterminate = false,
|
|
39
|
+
color,
|
|
40
|
+
style,
|
|
41
|
+
labelStyle,
|
|
42
|
+
accessibilityLabel,
|
|
43
|
+
testID
|
|
44
|
+
}) => {
|
|
45
|
+
const theme = useTheme();
|
|
46
|
+
const scaleAnim = useRef(new Animated.Value(checked ? 1 : 0)).current;
|
|
47
|
+
const pressAnim = useRef(new Animated.Value(1)).current;
|
|
48
|
+
const sizeConfig = SIZE_CONFIG[size];
|
|
49
|
+
const checkColor = color ?? theme.colors.primary;
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
Animated.spring(scaleAnim, {
|
|
52
|
+
toValue: checked || indeterminate ? 1 : 0,
|
|
53
|
+
useNativeDriver: true,
|
|
54
|
+
...animation.spring.snappy
|
|
55
|
+
}).start();
|
|
56
|
+
}, [checked, indeterminate, scaleAnim]);
|
|
57
|
+
const handlePress = useCallback(() => {
|
|
58
|
+
if (!disabled) {
|
|
59
|
+
onCheckedChange(!checked);
|
|
60
|
+
}
|
|
61
|
+
}, [checked, disabled, onCheckedChange]);
|
|
62
|
+
const onPressIn = useCallback(() => {
|
|
63
|
+
Animated.spring(pressAnim, {
|
|
64
|
+
toValue: 0.9,
|
|
65
|
+
useNativeDriver: true,
|
|
66
|
+
...animation.spring.snappy
|
|
67
|
+
}).start();
|
|
68
|
+
}, [pressAnim]);
|
|
69
|
+
const onPressOut = useCallback(() => {
|
|
70
|
+
Animated.spring(pressAnim, {
|
|
71
|
+
toValue: 1,
|
|
72
|
+
useNativeDriver: true,
|
|
73
|
+
...animation.spring.gentle
|
|
74
|
+
}).start();
|
|
75
|
+
}, [pressAnim]);
|
|
76
|
+
const boxStyle = useMemo(() => {
|
|
77
|
+
const base = {
|
|
78
|
+
width: sizeConfig.box,
|
|
79
|
+
height: sizeConfig.box,
|
|
80
|
+
borderRadius: borderRadius._2xs + 2,
|
|
81
|
+
borderWidth: 2,
|
|
82
|
+
alignItems: 'center',
|
|
83
|
+
justifyContent: 'center'
|
|
84
|
+
};
|
|
85
|
+
if (checked || indeterminate) {
|
|
86
|
+
base.backgroundColor = checkColor;
|
|
87
|
+
base.borderColor = checkColor;
|
|
88
|
+
} else {
|
|
89
|
+
base.backgroundColor = 'transparent';
|
|
90
|
+
base.borderColor = theme.colors.border;
|
|
91
|
+
}
|
|
92
|
+
return base;
|
|
93
|
+
}, [sizeConfig, checked, indeterminate, checkColor, theme]);
|
|
94
|
+
|
|
95
|
+
// Checkmark using unicode characters for zero-dependency rendering
|
|
96
|
+
const checkmarkContent = indeterminate ? '\u2014' : '\u2713';
|
|
97
|
+
return /*#__PURE__*/_jsxs(Pressable, {
|
|
98
|
+
style: [{
|
|
99
|
+
flexDirection: 'row',
|
|
100
|
+
alignItems: 'flex-start',
|
|
101
|
+
gap: space.sm,
|
|
102
|
+
opacity: disabled ? 0.4 : 1
|
|
103
|
+
}, style],
|
|
104
|
+
onPress: handlePress,
|
|
105
|
+
onPressIn: onPressIn,
|
|
106
|
+
onPressOut: onPressOut,
|
|
107
|
+
disabled: disabled,
|
|
108
|
+
accessibilityRole: "checkbox",
|
|
109
|
+
accessibilityState: {
|
|
110
|
+
checked: indeterminate ? 'mixed' : checked,
|
|
111
|
+
disabled
|
|
112
|
+
},
|
|
113
|
+
accessibilityLabel: accessibilityLabel ?? label,
|
|
114
|
+
hitSlop: {
|
|
115
|
+
top: 8,
|
|
116
|
+
bottom: 8,
|
|
117
|
+
left: 8,
|
|
118
|
+
right: 8
|
|
119
|
+
},
|
|
120
|
+
testID: testID,
|
|
121
|
+
children: [/*#__PURE__*/_jsx(Animated.View, {
|
|
122
|
+
style: [boxStyle, {
|
|
123
|
+
transform: [{
|
|
124
|
+
scale: pressAnim
|
|
125
|
+
}]
|
|
126
|
+
}],
|
|
127
|
+
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
128
|
+
style: {
|
|
129
|
+
opacity: scaleAnim,
|
|
130
|
+
transform: [{
|
|
131
|
+
scale: scaleAnim
|
|
132
|
+
}]
|
|
133
|
+
},
|
|
134
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
135
|
+
style: {
|
|
136
|
+
fontSize: sizeConfig.checkmark,
|
|
137
|
+
color: '#fff',
|
|
138
|
+
fontWeight: '700',
|
|
139
|
+
lineHeight: sizeConfig.checkmark + 2,
|
|
140
|
+
textAlign: 'center'
|
|
141
|
+
},
|
|
142
|
+
children: checkmarkContent
|
|
143
|
+
})
|
|
144
|
+
})
|
|
145
|
+
}), (label || description) && /*#__PURE__*/_jsxs(View, {
|
|
146
|
+
style: {
|
|
147
|
+
flex: 1,
|
|
148
|
+
paddingTop: 1
|
|
149
|
+
},
|
|
150
|
+
children: [label && /*#__PURE__*/_jsx(Text, {
|
|
151
|
+
style: [{
|
|
152
|
+
fontSize: sizeConfig.fontSize,
|
|
153
|
+
lineHeight: sizeConfig.lineHeight,
|
|
154
|
+
color: theme.colors.text,
|
|
155
|
+
fontWeight: '500'
|
|
156
|
+
}, labelStyle],
|
|
157
|
+
children: label
|
|
158
|
+
}), description && /*#__PURE__*/_jsx(Text, {
|
|
159
|
+
style: {
|
|
160
|
+
fontSize: sizeConfig.descFontSize,
|
|
161
|
+
color: theme.colors.textSecondary,
|
|
162
|
+
lineHeight: sizeConfig.descFontSize + 6,
|
|
163
|
+
marginTop: 2
|
|
164
|
+
},
|
|
165
|
+
children: description
|
|
166
|
+
})]
|
|
167
|
+
})]
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
export const Checkbox = /*#__PURE__*/memo(CheckboxComponent);
|
|
171
|
+
Checkbox.displayName = 'Checkbox';
|
|
172
|
+
//# sourceMappingURL=Checkbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","memo","useCallback","useEffect","useMemo","useRef","View","Text","Pressable","Animated","useTheme","animation","borderRadius","space","jsx","_jsx","jsxs","_jsxs","SIZE_CONFIG","small","box","checkmark","fontSize","lineHeight","descFontSize","medium","large","CheckboxComponent","checked","onCheckedChange","label","description","size","disabled","indeterminate","color","style","labelStyle","accessibilityLabel","testID","theme","scaleAnim","Value","current","pressAnim","sizeConfig","checkColor","colors","primary","spring","toValue","useNativeDriver","snappy","start","handlePress","onPressIn","onPressOut","gentle","boxStyle","base","width","height","_2xs","borderWidth","alignItems","justifyContent","backgroundColor","borderColor","border","checkmarkContent","flexDirection","gap","sm","opacity","onPress","accessibilityRole","accessibilityState","hitSlop","top","bottom","left","right","children","transform","scale","fontWeight","textAlign","flex","paddingTop","text","textSecondary","marginTop","Checkbox","displayName"],"sourceRoot":"../../../src","sources":["checkbox/Checkbox.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Checkbox"],"sourceRoot":"../../../src","sources":["checkbox/index.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,eAAY","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["checkbox/types.ts"],"mappings":"","ignoreList":[]}
|