@oxyhq/bloom 0.1.31 → 0.1.33
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/admonition/index.js +7 -0
- package/lib/commonjs/admonition/index.js.map +1 -1
- package/lib/commonjs/avatar/Avatar.js +2 -18
- package/lib/commonjs/avatar/Avatar.js.map +1 -1
- package/lib/commonjs/bottom-sheet/index.js +16 -6
- package/lib/commonjs/bottom-sheet/index.js.map +1 -1
- package/lib/commonjs/button/Button.js +6 -18
- package/lib/commonjs/button/Button.js.map +1 -1
- package/lib/commonjs/chip/Chip.js +6 -16
- package/lib/commonjs/chip/Chip.js.map +1 -1
- package/lib/commonjs/collapsible/Collapsible.js +28 -20
- package/lib/commonjs/collapsible/Collapsible.js.map +1 -1
- package/lib/commonjs/fill/index.js +7 -5
- package/lib/commonjs/fill/index.js.map +1 -1
- package/lib/commonjs/grid/index.js +9 -6
- package/lib/commonjs/grid/index.js.map +1 -1
- package/lib/commonjs/grouped-buttons/GroupedButtons.js +76 -48
- package/lib/commonjs/grouped-buttons/GroupedButtons.js.map +1 -1
- package/lib/commonjs/hooks/index.js +13 -0
- package/lib/commonjs/hooks/index.js.map +1 -1
- package/lib/commonjs/hooks/useInteractionState.js +42 -0
- package/lib/commonjs/hooks/useInteractionState.js.map +1 -1
- package/lib/commonjs/hooks/usePressAnimation.js +44 -0
- package/lib/commonjs/hooks/usePressAnimation.js.map +1 -0
- package/lib/commonjs/icon-circle/index.js +7 -5
- package/lib/commonjs/icon-circle/index.js.map +1 -1
- package/lib/commonjs/icons/{EnveopeOpen.js → EnvelopeOpen.js} +1 -1
- package/lib/commonjs/icons/EnvelopeOpen.js.map +1 -0
- package/lib/commonjs/icons/TEMPLATE.js +3 -2
- package/lib/commonjs/icons/TEMPLATE.js.map +1 -1
- package/lib/commonjs/icons/VerifiedCheck.js +3 -2
- package/lib/commonjs/icons/VerifiedCheck.js.map +1 -1
- package/lib/commonjs/icons/VerifierCheck.js +3 -2
- package/lib/commonjs/icons/VerifierCheck.js.map +1 -1
- package/lib/commonjs/icons/index.js +4 -4
- package/lib/commonjs/icons/index.js.map +1 -1
- package/lib/commonjs/loading/Loading.js +2 -17
- package/lib/commonjs/loading/Loading.js.map +1 -1
- package/lib/commonjs/loading/SpinnerIcon.js +3 -34
- package/lib/commonjs/loading/SpinnerIcon.js.map +1 -1
- package/lib/commonjs/prompt-input/Actions.js +1 -0
- package/lib/commonjs/prompt-input/Actions.js.map +1 -1
- package/lib/commonjs/prompt-input/Attachments.js +1 -0
- package/lib/commonjs/prompt-input/Attachments.js.map +1 -1
- package/lib/commonjs/prompt-input/PromptInput.js +1 -0
- package/lib/commonjs/prompt-input/PromptInput.js.map +1 -1
- package/lib/commonjs/prompt-input/SubmitButton.js +1 -0
- package/lib/commonjs/prompt-input/SubmitButton.js.map +1 -1
- package/lib/commonjs/prompt-input/Textarea.js +1 -0
- package/lib/commonjs/prompt-input/Textarea.js.map +1 -1
- package/lib/commonjs/prompt-input/Textarea.web.js +1 -0
- package/lib/commonjs/prompt-input/Textarea.web.js.map +1 -1
- package/lib/commonjs/search-input/index.js +1 -0
- package/lib/commonjs/search-input/index.js.map +1 -1
- package/lib/commonjs/settings-list/SettingsList.js +10 -11
- package/lib/commonjs/settings-list/SettingsList.js.map +1 -1
- package/lib/commonjs/skeleton/index.js +5 -0
- package/lib/commonjs/skeleton/index.js.map +1 -1
- package/lib/commonjs/switch/Switch.js +43 -28
- package/lib/commonjs/switch/Switch.js.map +1 -1
- package/lib/commonjs/tabs/Tabs.js +6 -15
- package/lib/commonjs/tabs/Tabs.js.map +1 -1
- package/lib/commonjs/theme/BloomThemeProvider.js +5 -4
- package/lib/commonjs/theme/BloomThemeProvider.js.map +1 -1
- package/lib/commonjs/theme/color-presets.js +11 -11
- package/lib/commonjs/theme/color-presets.js.map +1 -1
- package/lib/commonjs/typography/index.js +14 -5
- package/lib/commonjs/typography/index.js.map +1 -1
- package/lib/commonjs/utils/lazy-require.js +37 -0
- package/lib/commonjs/utils/lazy-require.js.map +1 -0
- package/lib/module/admonition/index.js +7 -0
- package/lib/module/admonition/index.js.map +1 -1
- package/lib/module/avatar/Avatar.js +2 -18
- package/lib/module/avatar/Avatar.js.map +1 -1
- package/lib/module/bottom-sheet/index.js +16 -6
- package/lib/module/bottom-sheet/index.js.map +1 -1
- package/lib/module/button/Button.js +7 -19
- package/lib/module/button/Button.js.map +1 -1
- package/lib/module/chip/Chip.js +7 -17
- package/lib/module/chip/Chip.js.map +1 -1
- package/lib/module/collapsible/Collapsible.js +30 -22
- package/lib/module/collapsible/Collapsible.js.map +1 -1
- package/lib/module/fill/index.js +5 -3
- package/lib/module/fill/index.js.map +1 -1
- package/lib/module/grid/index.js +9 -5
- package/lib/module/grid/index.js.map +1 -1
- package/lib/module/grouped-buttons/GroupedButtons.js +77 -48
- package/lib/module/grouped-buttons/GroupedButtons.js.map +1 -1
- package/lib/module/hooks/index.js +2 -1
- package/lib/module/hooks/index.js.map +1 -1
- package/lib/module/hooks/useInteractionState.js +41 -0
- package/lib/module/hooks/useInteractionState.js.map +1 -1
- package/lib/module/hooks/usePressAnimation.js +41 -0
- package/lib/module/hooks/usePressAnimation.js.map +1 -0
- package/lib/module/icon-circle/index.js +5 -3
- package/lib/module/icon-circle/index.js.map +1 -1
- package/lib/module/icons/{EnveopeOpen.js → EnvelopeOpen.js} +1 -1
- package/lib/module/icons/EnvelopeOpen.js.map +1 -0
- package/lib/module/icons/TEMPLATE.js +3 -2
- package/lib/module/icons/TEMPLATE.js.map +1 -1
- package/lib/module/icons/VerifiedCheck.js +3 -2
- package/lib/module/icons/VerifiedCheck.js.map +1 -1
- package/lib/module/icons/VerifierCheck.js +3 -2
- package/lib/module/icons/VerifierCheck.js.map +1 -1
- package/lib/module/icons/index.js +1 -1
- package/lib/module/icons/index.js.map +1 -1
- package/lib/module/loading/Loading.js +2 -17
- package/lib/module/loading/Loading.js.map +1 -1
- package/lib/module/loading/SpinnerIcon.js +3 -34
- package/lib/module/loading/SpinnerIcon.js.map +1 -1
- package/lib/module/prompt-input/Actions.js +1 -0
- package/lib/module/prompt-input/Actions.js.map +1 -1
- package/lib/module/prompt-input/Attachments.js +1 -0
- package/lib/module/prompt-input/Attachments.js.map +1 -1
- package/lib/module/prompt-input/PromptInput.js +1 -0
- package/lib/module/prompt-input/PromptInput.js.map +1 -1
- package/lib/module/prompt-input/SubmitButton.js +1 -0
- package/lib/module/prompt-input/SubmitButton.js.map +1 -1
- package/lib/module/prompt-input/Textarea.js +1 -0
- package/lib/module/prompt-input/Textarea.js.map +1 -1
- package/lib/module/prompt-input/Textarea.web.js +1 -0
- package/lib/module/prompt-input/Textarea.web.js.map +1 -1
- package/lib/module/search-input/index.js +1 -0
- package/lib/module/search-input/index.js.map +1 -1
- package/lib/module/settings-list/SettingsList.js +10 -11
- package/lib/module/settings-list/SettingsList.js.map +1 -1
- package/lib/module/skeleton/index.js +5 -0
- package/lib/module/skeleton/index.js.map +1 -1
- package/lib/module/switch/Switch.js +45 -30
- package/lib/module/switch/Switch.js.map +1 -1
- package/lib/module/tabs/Tabs.js +8 -17
- package/lib/module/tabs/Tabs.js.map +1 -1
- package/lib/module/theme/BloomThemeProvider.js +5 -4
- package/lib/module/theme/BloomThemeProvider.js.map +1 -1
- package/lib/module/theme/color-presets.js +11 -11
- package/lib/module/theme/color-presets.js.map +1 -1
- package/lib/module/typography/index.js +12 -3
- package/lib/module/typography/index.js.map +1 -1
- package/lib/module/utils/lazy-require.js +33 -0
- package/lib/module/utils/lazy-require.js.map +1 -0
- package/lib/typescript/commonjs/admonition/index.d.ts +21 -0
- package/lib/typescript/commonjs/admonition/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/avatar/Avatar.d.ts.map +1 -1
- package/lib/typescript/commonjs/bottom-sheet/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/button/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/commonjs/collapsible/Collapsible.d.ts.map +1 -1
- package/lib/typescript/commonjs/fill/index.d.ts +2 -2
- package/lib/typescript/commonjs/fill/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/grid/index.d.ts +4 -4
- package/lib/typescript/commonjs/grid/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/grouped-buttons/GroupedButtons.d.ts +9 -5
- package/lib/typescript/commonjs/grouped-buttons/GroupedButtons.d.ts.map +1 -1
- package/lib/typescript/commonjs/hooks/index.d.ts +2 -1
- package/lib/typescript/commonjs/hooks/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/hooks/useInteractionState.d.ts +23 -0
- package/lib/typescript/commonjs/hooks/useInteractionState.d.ts.map +1 -1
- package/lib/typescript/commonjs/hooks/usePressAnimation.d.ts +16 -0
- package/lib/typescript/commonjs/hooks/usePressAnimation.d.ts.map +1 -0
- package/lib/typescript/commonjs/icon-circle/index.d.ts +4 -4
- package/lib/typescript/commonjs/icon-circle/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/icons/{EnveopeOpen.d.ts → EnvelopeOpen.d.ts} +1 -1
- package/lib/typescript/commonjs/icons/EnvelopeOpen.d.ts.map +1 -0
- package/lib/typescript/commonjs/icons/TEMPLATE.d.ts +2 -1
- package/lib/typescript/commonjs/icons/TEMPLATE.d.ts.map +1 -1
- package/lib/typescript/commonjs/icons/VerifiedCheck.d.ts.map +1 -1
- package/lib/typescript/commonjs/icons/VerifierCheck.d.ts.map +1 -1
- package/lib/typescript/commonjs/icons/index.d.ts +1 -1
- package/lib/typescript/commonjs/icons/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/loading/Loading.d.ts.map +1 -1
- package/lib/typescript/commonjs/loading/SpinnerIcon.d.ts.map +1 -1
- package/lib/typescript/commonjs/prompt-input/Actions.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Actions.d.ts.map +1 -1
- package/lib/typescript/commonjs/prompt-input/Attachments.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Attachments.d.ts.map +1 -1
- package/lib/typescript/commonjs/prompt-input/PromptInput.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/PromptInput.d.ts.map +1 -1
- package/lib/typescript/commonjs/prompt-input/SubmitButton.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/SubmitButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/prompt-input/Textarea.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Textarea.d.ts.map +1 -1
- package/lib/typescript/commonjs/prompt-input/Textarea.web.d.ts +3 -0
- package/lib/typescript/commonjs/prompt-input/Textarea.web.d.ts.map +1 -1
- package/lib/typescript/commonjs/settings-list/SettingsList.d.ts.map +1 -1
- package/lib/typescript/commonjs/skeleton/index.d.ts +15 -0
- package/lib/typescript/commonjs/skeleton/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/switch/Switch.d.ts.map +1 -1
- package/lib/typescript/commonjs/tabs/Tabs.d.ts.map +1 -1
- package/lib/typescript/commonjs/theme/BloomThemeProvider.d.ts.map +1 -1
- package/lib/typescript/commonjs/typography/index.d.ts +11 -10
- package/lib/typescript/commonjs/typography/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/lazy-require.d.ts +15 -0
- package/lib/typescript/commonjs/utils/lazy-require.d.ts.map +1 -0
- package/lib/typescript/module/admonition/index.d.ts +21 -0
- package/lib/typescript/module/admonition/index.d.ts.map +1 -1
- package/lib/typescript/module/avatar/Avatar.d.ts.map +1 -1
- package/lib/typescript/module/bottom-sheet/index.d.ts.map +1 -1
- package/lib/typescript/module/button/Button.d.ts.map +1 -1
- package/lib/typescript/module/chip/Chip.d.ts.map +1 -1
- package/lib/typescript/module/collapsible/Collapsible.d.ts.map +1 -1
- package/lib/typescript/module/fill/index.d.ts +2 -2
- package/lib/typescript/module/fill/index.d.ts.map +1 -1
- package/lib/typescript/module/grid/index.d.ts +4 -4
- package/lib/typescript/module/grid/index.d.ts.map +1 -1
- package/lib/typescript/module/grouped-buttons/GroupedButtons.d.ts +9 -5
- package/lib/typescript/module/grouped-buttons/GroupedButtons.d.ts.map +1 -1
- package/lib/typescript/module/hooks/index.d.ts +2 -1
- package/lib/typescript/module/hooks/index.d.ts.map +1 -1
- package/lib/typescript/module/hooks/useInteractionState.d.ts +23 -0
- package/lib/typescript/module/hooks/useInteractionState.d.ts.map +1 -1
- package/lib/typescript/module/hooks/usePressAnimation.d.ts +16 -0
- package/lib/typescript/module/hooks/usePressAnimation.d.ts.map +1 -0
- package/lib/typescript/module/icon-circle/index.d.ts +4 -4
- package/lib/typescript/module/icon-circle/index.d.ts.map +1 -1
- package/lib/typescript/module/icons/{EnveopeOpen.d.ts → EnvelopeOpen.d.ts} +1 -1
- package/lib/typescript/module/icons/EnvelopeOpen.d.ts.map +1 -0
- package/lib/typescript/module/icons/TEMPLATE.d.ts +2 -1
- package/lib/typescript/module/icons/TEMPLATE.d.ts.map +1 -1
- package/lib/typescript/module/icons/VerifiedCheck.d.ts.map +1 -1
- package/lib/typescript/module/icons/VerifierCheck.d.ts.map +1 -1
- package/lib/typescript/module/icons/index.d.ts +1 -1
- package/lib/typescript/module/icons/index.d.ts.map +1 -1
- package/lib/typescript/module/loading/Loading.d.ts.map +1 -1
- package/lib/typescript/module/loading/SpinnerIcon.d.ts.map +1 -1
- package/lib/typescript/module/prompt-input/Actions.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Actions.d.ts.map +1 -1
- package/lib/typescript/module/prompt-input/Attachments.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Attachments.d.ts.map +1 -1
- package/lib/typescript/module/prompt-input/PromptInput.d.ts +3 -0
- package/lib/typescript/module/prompt-input/PromptInput.d.ts.map +1 -1
- package/lib/typescript/module/prompt-input/SubmitButton.d.ts +3 -0
- package/lib/typescript/module/prompt-input/SubmitButton.d.ts.map +1 -1
- package/lib/typescript/module/prompt-input/Textarea.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Textarea.d.ts.map +1 -1
- package/lib/typescript/module/prompt-input/Textarea.web.d.ts +3 -0
- package/lib/typescript/module/prompt-input/Textarea.web.d.ts.map +1 -1
- package/lib/typescript/module/settings-list/SettingsList.d.ts.map +1 -1
- package/lib/typescript/module/skeleton/index.d.ts +15 -0
- package/lib/typescript/module/skeleton/index.d.ts.map +1 -1
- package/lib/typescript/module/switch/Switch.d.ts.map +1 -1
- package/lib/typescript/module/tabs/Tabs.d.ts.map +1 -1
- package/lib/typescript/module/theme/BloomThemeProvider.d.ts.map +1 -1
- package/lib/typescript/module/typography/index.d.ts +11 -10
- package/lib/typescript/module/typography/index.d.ts.map +1 -1
- package/lib/typescript/module/utils/lazy-require.d.ts +15 -0
- package/lib/typescript/module/utils/lazy-require.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/__tests__/BloomThemeProvider.test.tsx +3 -3
- package/src/admonition/index.tsx +7 -0
- package/src/avatar/Avatar.tsx +2 -19
- package/src/bottom-sheet/index.tsx +18 -6
- package/src/button/Button.tsx +6 -22
- package/src/chip/Chip.tsx +3 -19
- package/src/collapsible/Collapsible.tsx +34 -25
- package/src/fill/index.tsx +6 -3
- package/src/grid/index.tsx +11 -5
- package/src/grouped-buttons/GroupedButtons.tsx +79 -60
- package/src/hooks/index.ts +2 -1
- package/src/hooks/useInteractionState.ts +21 -0
- package/src/hooks/usePressAnimation.ts +37 -0
- package/src/icon-circle/index.tsx +6 -3
- package/src/icons/TEMPLATE.tsx +2 -2
- package/src/icons/VerifiedCheck.tsx +3 -2
- package/src/icons/VerifierCheck.tsx +3 -2
- package/src/icons/index.ts +1 -1
- package/src/loading/Loading.tsx +2 -18
- package/src/loading/SpinnerIcon.tsx +4 -36
- package/src/prompt-input/Actions.tsx +1 -0
- package/src/prompt-input/Attachments.tsx +1 -0
- package/src/prompt-input/PromptInput.tsx +1 -0
- package/src/prompt-input/SubmitButton.tsx +1 -0
- package/src/prompt-input/Textarea.tsx +1 -0
- package/src/prompt-input/Textarea.web.tsx +1 -0
- package/src/search-input/index.tsx +1 -0
- package/src/settings-list/SettingsList.tsx +12 -8
- package/src/skeleton/index.tsx +5 -0
- package/src/switch/Switch.tsx +45 -23
- package/src/tabs/Tabs.tsx +3 -21
- package/src/theme/BloomThemeProvider.tsx +6 -4
- package/src/theme/color-presets.ts +11 -11
- package/src/typography/index.tsx +14 -4
- package/src/utils/lazy-require.ts +31 -0
- package/lib/commonjs/icons/EnveopeOpen.js.map +0 -1
- package/lib/module/icons/EnveopeOpen.js.map +0 -1
- package/lib/typescript/commonjs/icons/EnveopeOpen.d.ts.map +0 -1
- package/lib/typescript/module/icons/EnveopeOpen.d.ts.map +0 -1
- /package/src/icons/{EnveopeOpen.tsx → EnvelopeOpen.tsx} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, {
|
|
3
|
+
import React, { useMemo, memo } from 'react';
|
|
4
4
|
import { Pressable, Text, Platform, Animated } from 'react-native';
|
|
5
5
|
import { useTheme } from "../theme/use-theme.js";
|
|
6
|
-
import {
|
|
6
|
+
import { usePressAnimation } from "../hooks/usePressAnimation.js";
|
|
7
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
8
|
const SIZE_CONFIG = {
|
|
9
9
|
small: {
|
|
@@ -51,24 +51,12 @@ const ButtonComponent = ({
|
|
|
51
51
|
className
|
|
52
52
|
}) => {
|
|
53
53
|
const theme = useTheme();
|
|
54
|
-
const scaleAnim = useRef(new Animated.Value(1)).current;
|
|
55
54
|
const hasScaleFeedback = SCALE_VARIANTS.has(variant);
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
...animation.spring.snappy
|
|
62
|
-
}).start();
|
|
63
|
-
}, [scaleAnim, hasScaleFeedback]);
|
|
64
|
-
const onPressOut = useCallback(() => {
|
|
65
|
-
if (!hasScaleFeedback) return;
|
|
66
|
-
Animated.spring(scaleAnim, {
|
|
67
|
-
toValue: 1,
|
|
68
|
-
useNativeDriver: true,
|
|
69
|
-
...animation.spring.gentle
|
|
70
|
-
}).start();
|
|
71
|
-
}, [scaleAnim, hasScaleFeedback]);
|
|
55
|
+
const {
|
|
56
|
+
scaleAnim,
|
|
57
|
+
onPressIn,
|
|
58
|
+
onPressOut
|
|
59
|
+
} = usePressAnimation(hasScaleFeedback ? PRESS_SCALE : undefined);
|
|
72
60
|
const baseStyles = useMemo(() => {
|
|
73
61
|
const sizeConfig = SIZE_CONFIG[size];
|
|
74
62
|
const styles = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","
|
|
1
|
+
{"version":3,"names":["React","useMemo","memo","Pressable","Text","Platform","Animated","useTheme","usePressAnimation","jsx","_jsx","jsxs","_jsxs","SIZE_CONFIG","small","paddingVertical","paddingHorizontal","fontSize","minHeight","medium","large","ICON_HIT_SLOP","top","bottom","left","right","PRESS_SCALE","SCALE_VARIANTS","Set","ButtonComponent","onPress","children","disabled","variant","size","style","textStyle","icon","iconPosition","accessibilityLabel","accessibilityHint","hitSlop","activeOpacity","testID","className","theme","hasScaleFeedback","has","scaleAnim","onPressIn","onPressOut","undefined","baseStyles","sizeConfig","styles","alignItems","justifyContent","flexDirection","overflow","backgroundColor","colors","primary","borderRadius","borderWidth","borderColor","border","padding","width","height","computedTextStyle","fontWeight","OS","color","card","text","defaultHitSlop","resolvedActiveOpacity","resolvedClassName","View","transform","scale","pressed","opacity","accessibilityRole","accessibilityState","Button","displayName","PrimaryButton","props","SecondaryButton","IconButton","GhostButton","InverseButton","TextButton"],"sourceRoot":"../../../src","sources":["button/Button.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/chip/Chip.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, { memo, useMemo
|
|
3
|
+
import React, { memo, useMemo } from 'react';
|
|
4
4
|
import { View, Text, Pressable, Animated } from 'react-native';
|
|
5
5
|
import { useTheme } from "../theme/use-theme.js";
|
|
6
|
-
import {
|
|
6
|
+
import { usePressAnimation } from "../hooks/usePressAnimation.js";
|
|
7
7
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
8
|
const SIZE_CONFIG = {
|
|
9
9
|
small: {
|
|
@@ -76,23 +76,13 @@ const ChipComponent = ({
|
|
|
76
76
|
testID
|
|
77
77
|
}) => {
|
|
78
78
|
const theme = useTheme();
|
|
79
|
-
const
|
|
79
|
+
const {
|
|
80
|
+
scaleAnim,
|
|
81
|
+
onPressIn,
|
|
82
|
+
onPressOut
|
|
83
|
+
} = usePressAnimation(PRESS_SCALE);
|
|
80
84
|
const colors = useChipColors(color, variant, selected, theme);
|
|
81
85
|
const sizeConfig = SIZE_CONFIG[size];
|
|
82
|
-
const onPressIn = useCallback(() => {
|
|
83
|
-
Animated.spring(scaleAnim, {
|
|
84
|
-
toValue: PRESS_SCALE,
|
|
85
|
-
useNativeDriver: true,
|
|
86
|
-
...animation.spring.snappy
|
|
87
|
-
}).start();
|
|
88
|
-
}, [scaleAnim]);
|
|
89
|
-
const onPressOut = useCallback(() => {
|
|
90
|
-
Animated.spring(scaleAnim, {
|
|
91
|
-
toValue: 1,
|
|
92
|
-
useNativeDriver: true,
|
|
93
|
-
...animation.spring.gentle
|
|
94
|
-
}).start();
|
|
95
|
-
}, [scaleAnim]);
|
|
96
86
|
const containerStyle = useMemo(() => ({
|
|
97
87
|
height: sizeConfig.height,
|
|
98
88
|
borderRadius: sizeConfig.height / 2,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","memo","useMemo","
|
|
1
|
+
{"version":3,"names":["React","memo","useMemo","View","Text","Pressable","Animated","useTheme","usePressAnimation","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","SIZE_CONFIG","small","height","fontSize","paddingHorizontal","iconGap","iconSize","medium","large","PRESS_SCALE","useChipColors","color","variant","selected","theme","colorMap","default","colors","textSecondary","primary","success","warning","error","base","bg","fg","border","ChipComponent","children","size","startIcon","endIcon","onPress","onClose","disabled","style","textStyle","accessibilityLabel","testID","scaleAnim","onPressIn","onPressOut","sizeConfig","containerStyle","borderRadius","backgroundColor","borderWidth","borderColor","flexDirection","alignItems","gap","alignSelf","labelStyle","fontWeight","closeButton","hitSlop","top","bottom","left","right","accessibilityRole","lineHeight","content","transform","scale","opacity","accessibilityState","Chip","displayName"],"sourceRoot":"../../../src","sources":["chip/Chip.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, { memo, useCallback,
|
|
4
|
-
import { View, Text, TouchableOpacity, Animated, LayoutAnimation, Platform, UIManager } from 'react-native';
|
|
3
|
+
import React, { memo, useCallback, useRef, useState } from 'react';
|
|
4
|
+
import { View, Text, TouchableOpacity, Animated, LayoutAnimation, Platform, UIManager, StyleSheet } from 'react-native';
|
|
5
5
|
import { useTheme } from "../theme/use-theme.js";
|
|
6
6
|
import { animation } from "../styles/tokens.js";
|
|
7
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
@@ -22,14 +22,15 @@ const CollapsibleComponent = ({
|
|
|
22
22
|
const [isOpen, setIsOpen] = useState(defaultOpen);
|
|
23
23
|
const theme = useTheme();
|
|
24
24
|
const chevronAnim = useRef(new Animated.Value(defaultOpen ? 1 : 0)).current;
|
|
25
|
-
|
|
25
|
+
const handleToggle = useCallback(() => {
|
|
26
|
+
const nextOpen = !isOpen;
|
|
27
|
+
|
|
28
|
+
// Animate chevron rotation in the event handler, not via useEffect
|
|
26
29
|
Animated.spring(chevronAnim, {
|
|
27
|
-
toValue:
|
|
30
|
+
toValue: nextOpen ? 1 : 0,
|
|
28
31
|
useNativeDriver: true,
|
|
29
32
|
...animation.spring.gentle
|
|
30
33
|
}).start();
|
|
31
|
-
}, [isOpen, chevronAnim]);
|
|
32
|
-
const handleToggle = useCallback(() => {
|
|
33
34
|
LayoutAnimation.configureNext({
|
|
34
35
|
duration: animation.duration.normal,
|
|
35
36
|
update: {
|
|
@@ -44,8 +45,8 @@ const CollapsibleComponent = ({
|
|
|
44
45
|
property: LayoutAnimation.Properties.opacity
|
|
45
46
|
}
|
|
46
47
|
});
|
|
47
|
-
setIsOpen(
|
|
48
|
-
}, []);
|
|
48
|
+
setIsOpen(nextOpen);
|
|
49
|
+
}, [isOpen, chevronAnim]);
|
|
49
50
|
const chevronRotation = chevronAnim.interpolate({
|
|
50
51
|
inputRange: [0, 1],
|
|
51
52
|
outputRange: [CHEVRON_CLOSED, CHEVRON_OPEN]
|
|
@@ -60,27 +61,18 @@ const CollapsibleComponent = ({
|
|
|
60
61
|
accessibilityState: {
|
|
61
62
|
expanded: isOpen
|
|
62
63
|
},
|
|
63
|
-
style:
|
|
64
|
-
flexDirection: 'row',
|
|
65
|
-
alignItems: 'center',
|
|
66
|
-
paddingVertical: 12,
|
|
67
|
-
gap: 8
|
|
68
|
-
},
|
|
64
|
+
style: styles.trigger,
|
|
69
65
|
children: [chevronIcon ?? /*#__PURE__*/_jsx(Animated.Text, {
|
|
70
|
-
style: {
|
|
71
|
-
fontSize: 16,
|
|
66
|
+
style: [styles.chevron, {
|
|
72
67
|
color: theme.colors.textSecondary,
|
|
73
68
|
transform: [{
|
|
74
69
|
rotate: chevronRotation
|
|
75
70
|
}]
|
|
76
|
-
},
|
|
71
|
+
}],
|
|
77
72
|
children: "\u203A"
|
|
78
73
|
}), /*#__PURE__*/_jsx(Text, {
|
|
79
|
-
style: [{
|
|
80
|
-
|
|
81
|
-
fontWeight: '600',
|
|
82
|
-
color: theme.colors.text,
|
|
83
|
-
flex: 1
|
|
74
|
+
style: [styles.title, {
|
|
75
|
+
color: theme.colors.text
|
|
84
76
|
}, titleStyle],
|
|
85
77
|
children: title
|
|
86
78
|
})]
|
|
@@ -89,4 +81,20 @@ const CollapsibleComponent = ({
|
|
|
89
81
|
};
|
|
90
82
|
export const Collapsible = /*#__PURE__*/memo(CollapsibleComponent);
|
|
91
83
|
Collapsible.displayName = 'Collapsible';
|
|
84
|
+
const styles = StyleSheet.create({
|
|
85
|
+
trigger: {
|
|
86
|
+
flexDirection: 'row',
|
|
87
|
+
alignItems: 'center',
|
|
88
|
+
paddingVertical: 12,
|
|
89
|
+
gap: 8
|
|
90
|
+
},
|
|
91
|
+
chevron: {
|
|
92
|
+
fontSize: 16
|
|
93
|
+
},
|
|
94
|
+
title: {
|
|
95
|
+
fontSize: 16,
|
|
96
|
+
fontWeight: '600',
|
|
97
|
+
flex: 1
|
|
98
|
+
}
|
|
99
|
+
});
|
|
92
100
|
//# sourceMappingURL=Collapsible.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","memo","useCallback","
|
|
1
|
+
{"version":3,"names":["React","memo","useCallback","useRef","useState","View","Text","TouchableOpacity","Animated","LayoutAnimation","Platform","UIManager","StyleSheet","useTheme","animation","jsx","_jsx","jsxs","_jsxs","OS","setLayoutAnimationEnabledExperimental","CHEVRON_CLOSED","CHEVRON_OPEN","CollapsibleComponent","title","children","defaultOpen","chevronIcon","style","titleStyle","testID","isOpen","setIsOpen","theme","chevronAnim","Value","current","handleToggle","nextOpen","spring","toValue","useNativeDriver","gentle","start","configureNext","duration","normal","update","type","Types","easeInEaseOut","create","property","Properties","opacity","delete","chevronRotation","interpolate","inputRange","outputRange","onPress","activeOpacity","accessibilityRole","accessibilityState","expanded","styles","trigger","chevron","color","colors","textSecondary","transform","rotate","text","Collapsible","displayName","flexDirection","alignItems","paddingVertical","gap","fontSize","fontWeight","flex"],"sourceRoot":"../../../src","sources":["collapsible/Collapsible.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/fill/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React from 'react';
|
|
3
|
+
import React, { memo } from 'react';
|
|
4
4
|
import { StyleSheet, View } from 'react-native';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
-
|
|
6
|
+
const FillComponent = function Fill({
|
|
7
7
|
children,
|
|
8
8
|
style
|
|
9
9
|
}) {
|
|
@@ -11,7 +11,9 @@ export function Fill({
|
|
|
11
11
|
style: [fillStyles.base, style],
|
|
12
12
|
children: children
|
|
13
13
|
});
|
|
14
|
-
}
|
|
14
|
+
};
|
|
15
|
+
export const Fill = /*#__PURE__*/memo(FillComponent);
|
|
16
|
+
Fill.displayName = 'Fill';
|
|
15
17
|
const fillStyles = StyleSheet.create({
|
|
16
18
|
base: {
|
|
17
19
|
position: 'absolute',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","jsx","_jsx","Fill","children","style","fillStyles","base","create","position","top","right","bottom","left"],"sourceRoot":"../../../src","sources":["fill/index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,
|
|
1
|
+
{"version":3,"names":["React","memo","StyleSheet","View","jsx","_jsx","FillComponent","Fill","children","style","fillStyles","base","displayName","create","position","top","right","bottom","left"],"sourceRoot":"../../../src","sources":["fill/index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,IAAI,QAAQ,OAAO;AACnC,SAASC,UAAU,EAAEC,IAAI,QAAwB,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEhE,MAAMC,aAAa,GAAG,SAASC,IAAIA,CAAC;EAClCC,QAAQ;EACRC;AAIF,CAAC,EAAE;EACD,oBACEJ,IAAA,CAACF,IAAI;IAACM,KAAK,EAAE,CAACC,UAAU,CAACC,IAAI,EAAEF,KAAK,CAAE;IAAAD,QAAA,EACnCA;EAAQ,CACL,CAAC;AAEX,CAAC;AAED,OAAO,MAAMD,IAAI,gBAAGN,IAAI,CAACK,aAAa,CAAC;AACvCC,IAAI,CAACK,WAAW,GAAG,MAAM;AAEzB,MAAMF,UAAU,GAAGR,UAAU,CAACW,MAAM,CAAC;EACnCF,IAAI,EAAE;IACJG,QAAQ,EAAE,UAAU;IACpBC,GAAG,EAAE,CAAC;IACNC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE,CAAC;IACTC,IAAI,EAAE;EACR;AACF,CAAC,CAAC","ignoreList":[]}
|
package/lib/module/grid/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, { createContext, useContext, useMemo } from 'react';
|
|
3
|
+
import React, { createContext, memo, useContext, useMemo } from 'react';
|
|
4
4
|
import { View } from 'react-native';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
const GridContext = /*#__PURE__*/createContext({
|
|
7
7
|
gap: 0
|
|
8
8
|
});
|
|
9
9
|
GridContext.displayName = 'GridContext';
|
|
10
|
-
|
|
10
|
+
const RowComponent = function Row({
|
|
11
11
|
children,
|
|
12
12
|
gap = 0,
|
|
13
13
|
style
|
|
@@ -26,8 +26,10 @@ export function Row({
|
|
|
26
26
|
children: children
|
|
27
27
|
})
|
|
28
28
|
});
|
|
29
|
-
}
|
|
30
|
-
export
|
|
29
|
+
};
|
|
30
|
+
export const Row = /*#__PURE__*/memo(RowComponent);
|
|
31
|
+
Row.displayName = 'Row';
|
|
32
|
+
const ColComponent = function Col({
|
|
31
33
|
children,
|
|
32
34
|
width = 1,
|
|
33
35
|
style
|
|
@@ -44,5 +46,7 @@ export function Col({
|
|
|
44
46
|
}, style],
|
|
45
47
|
children: children
|
|
46
48
|
});
|
|
47
|
-
}
|
|
49
|
+
};
|
|
50
|
+
export const Col = /*#__PURE__*/memo(ColComponent);
|
|
51
|
+
Col.displayName = 'Col';
|
|
48
52
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useContext","useMemo","View","jsx","_jsx","GridContext","gap","displayName","Row","children","style","Provider","value","flexDirection","flex","marginLeft","marginRight","Col","width","paddingLeft","paddingRight"],"sourceRoot":"../../../src","sources":["grid/index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;
|
|
1
|
+
{"version":3,"names":["React","createContext","memo","useContext","useMemo","View","jsx","_jsx","GridContext","gap","displayName","RowComponent","Row","children","style","Provider","value","flexDirection","flex","marginLeft","marginRight","ColComponent","Col","width","paddingLeft","paddingRight"],"sourceRoot":"../../../src","sources":["grid/index.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,aAAa,EAAEC,IAAI,EAAEC,UAAU,EAAEC,OAAO,QAAQ,OAAO;AACvE,SAASC,IAAI,QAAwB,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAEpD,MAAMC,WAAW,gBAAGP,aAAa,CAAC;EAAEQ,GAAG,EAAE;AAAE,CAAC,CAAC;AAC7CD,WAAW,CAACE,WAAW,GAAG,aAAa;AAEvC,MAAMC,YAAY,GAAG,SAASC,GAAGA,CAAC;EAChCC,QAAQ;EACRJ,GAAG,GAAG,CAAC;EACPK;AAKF,CAAC,EAAE;EACD,oBACEP,IAAA,CAACC,WAAW,CAACO,QAAQ;IAACC,KAAK,EAAEZ,OAAO,CAAC,OAAO;MAAEK;IAAI,CAAC,CAAC,EAAE,CAACA,GAAG,CAAC,CAAE;IAAAI,QAAA,eAC3DN,IAAA,CAACF,IAAI;MACHS,KAAK,EAAE,CACL;QACEG,aAAa,EAAE,KAAK;QACpBC,IAAI,EAAE,CAAC;QACPC,UAAU,EAAE,CAACV,GAAG,GAAG,CAAC;QACpBW,WAAW,EAAE,CAACX,GAAG,GAAG;MACtB,CAAC,EACDK,KAAK,CACL;MAAAD,QAAA,EACDA;IAAQ,CACL;EAAC,CACa,CAAC;AAE3B,CAAC;AAED,OAAO,MAAMD,GAAG,gBAAGV,IAAI,CAACS,YAAY,CAAC;AACrCC,GAAG,CAACF,WAAW,GAAG,KAAK;AAEvB,MAAMW,YAAY,GAAG,SAASC,GAAGA,CAAC;EAChCT,QAAQ;EACRU,KAAK,GAAG,CAAC;EACTT;AAKF,CAAC,EAAE;EACD,MAAM;IAAEL;EAAI,CAAC,GAAGN,UAAU,CAACK,WAAW,CAAC;EACvC,oBACED,IAAA,CAACF,IAAI;IACHS,KAAK,EAAE,CACL;MACEG,aAAa,EAAE,QAAQ;MACvBO,WAAW,EAAEf,GAAG,GAAG,CAAC;MACpBgB,YAAY,EAAEhB,GAAG,GAAG,CAAC;MACrBc,KAAK,EAAE,GAAGA,KAAK,GAAG,GAAG;IACvB,CAAC,EACDT,KAAK,CACL;IAAAD,QAAA,EACDA;EAAQ,CACL,CAAC;AAEX,CAAC;AAED,OAAO,MAAMS,GAAG,gBAAGpB,IAAI,CAACmB,YAAY,CAAC;AACrCC,GAAG,CAACZ,WAAW,GAAG,KAAK","ignoreList":[]}
|
|
@@ -1,33 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React, { Children } from 'react';
|
|
4
|
-
import { View, Text, TouchableOpacity } from 'react-native';
|
|
3
|
+
import React, { Children, memo } from 'react';
|
|
4
|
+
import { View, Text, TouchableOpacity, StyleSheet } from 'react-native';
|
|
5
5
|
import { useTheme } from "../theme/use-theme.js";
|
|
6
6
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}) {
|
|
11
|
-
const theme = useTheme();
|
|
12
|
-
const childArray = Children.toArray(children);
|
|
13
|
-
return /*#__PURE__*/_jsx(View, {
|
|
14
|
-
style: [{
|
|
15
|
-
borderRadius: 12,
|
|
16
|
-
backgroundColor: theme.colors.card,
|
|
17
|
-
overflow: 'hidden'
|
|
18
|
-
}, style],
|
|
19
|
-
children: childArray.map((child, index) => /*#__PURE__*/_jsxs(React.Fragment, {
|
|
20
|
-
children: [child, index < childArray.length - 1 && /*#__PURE__*/_jsx(View, {
|
|
21
|
-
style: {
|
|
22
|
-
height: 1,
|
|
23
|
-
backgroundColor: theme.colors.borderLight,
|
|
24
|
-
marginLeft: 16
|
|
25
|
-
}
|
|
26
|
-
})]
|
|
27
|
-
}, index))
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
export function Item({
|
|
7
|
+
// ── Item (defined first so it can be attached to GroupedButtons) ─
|
|
8
|
+
|
|
9
|
+
function ItemComponent({
|
|
31
10
|
label,
|
|
32
11
|
description,
|
|
33
12
|
icon,
|
|
@@ -43,38 +22,88 @@ export function Item({
|
|
|
43
22
|
disabled: disabled,
|
|
44
23
|
activeOpacity: 0.6,
|
|
45
24
|
testID: testID,
|
|
46
|
-
style:
|
|
47
|
-
flexDirection: 'row',
|
|
48
|
-
alignItems: 'center',
|
|
49
|
-
paddingVertical: 12,
|
|
50
|
-
paddingHorizontal: 16,
|
|
51
|
-
opacity: disabled ? 0.5 : 1
|
|
52
|
-
},
|
|
25
|
+
style: [styles.item, disabled && styles.disabled],
|
|
53
26
|
children: [icon && /*#__PURE__*/_jsx(View, {
|
|
54
|
-
style:
|
|
55
|
-
marginRight: 12
|
|
56
|
-
},
|
|
27
|
+
style: styles.iconWrapper,
|
|
57
28
|
children: icon
|
|
58
29
|
}), /*#__PURE__*/_jsxs(View, {
|
|
59
|
-
style:
|
|
60
|
-
flex: 1
|
|
61
|
-
},
|
|
30
|
+
style: styles.textWrapper,
|
|
62
31
|
children: [/*#__PURE__*/_jsx(Text, {
|
|
63
|
-
style: {
|
|
64
|
-
fontSize: 16,
|
|
32
|
+
style: [styles.label, {
|
|
65
33
|
color: labelColor
|
|
66
|
-
},
|
|
34
|
+
}],
|
|
67
35
|
children: label
|
|
68
36
|
}), description && /*#__PURE__*/_jsx(Text, {
|
|
69
|
-
style: {
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
marginTop: 2
|
|
73
|
-
},
|
|
37
|
+
style: [styles.description, {
|
|
38
|
+
color: theme.colors.textSecondary
|
|
39
|
+
}],
|
|
74
40
|
children: description
|
|
75
41
|
})]
|
|
76
42
|
})]
|
|
77
43
|
});
|
|
78
44
|
}
|
|
79
|
-
|
|
45
|
+
export const Item = /*#__PURE__*/memo(ItemComponent);
|
|
46
|
+
Item.displayName = 'GroupedButtons.Item';
|
|
47
|
+
|
|
48
|
+
// ── GroupedButtons ───────────────────────────────────────────────
|
|
49
|
+
|
|
50
|
+
function GroupedButtonsComponent({
|
|
51
|
+
children,
|
|
52
|
+
style
|
|
53
|
+
}) {
|
|
54
|
+
const theme = useTheme();
|
|
55
|
+
const childArray = Children.toArray(children);
|
|
56
|
+
return /*#__PURE__*/_jsx(View, {
|
|
57
|
+
style: [styles.container, {
|
|
58
|
+
backgroundColor: theme.colors.card
|
|
59
|
+
}, style],
|
|
60
|
+
children: childArray.map((child, index) => /*#__PURE__*/_jsxs(React.Fragment, {
|
|
61
|
+
children: [child, index < childArray.length - 1 && /*#__PURE__*/_jsx(View, {
|
|
62
|
+
style: [styles.divider, {
|
|
63
|
+
backgroundColor: theme.colors.borderLight
|
|
64
|
+
}]
|
|
65
|
+
})]
|
|
66
|
+
}, index))
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
const GroupedButtonsMemo = /*#__PURE__*/memo(GroupedButtonsComponent);
|
|
70
|
+
GroupedButtonsMemo.displayName = 'GroupedButtons';
|
|
71
|
+
export const GroupedButtons = Object.assign(GroupedButtonsMemo, {
|
|
72
|
+
Item
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
// ── Styles ──────────────────────────────────────────────────────
|
|
76
|
+
|
|
77
|
+
const styles = StyleSheet.create({
|
|
78
|
+
container: {
|
|
79
|
+
borderRadius: 12,
|
|
80
|
+
overflow: 'hidden'
|
|
81
|
+
},
|
|
82
|
+
divider: {
|
|
83
|
+
height: 1,
|
|
84
|
+
marginLeft: 16
|
|
85
|
+
},
|
|
86
|
+
item: {
|
|
87
|
+
flexDirection: 'row',
|
|
88
|
+
alignItems: 'center',
|
|
89
|
+
paddingVertical: 12,
|
|
90
|
+
paddingHorizontal: 16
|
|
91
|
+
},
|
|
92
|
+
disabled: {
|
|
93
|
+
opacity: 0.5
|
|
94
|
+
},
|
|
95
|
+
iconWrapper: {
|
|
96
|
+
marginRight: 12
|
|
97
|
+
},
|
|
98
|
+
textWrapper: {
|
|
99
|
+
flex: 1
|
|
100
|
+
},
|
|
101
|
+
label: {
|
|
102
|
+
fontSize: 16
|
|
103
|
+
},
|
|
104
|
+
description: {
|
|
105
|
+
fontSize: 13,
|
|
106
|
+
marginTop: 2
|
|
107
|
+
}
|
|
108
|
+
});
|
|
80
109
|
//# sourceMappingURL=GroupedButtons.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Children","View","Text","TouchableOpacity","useTheme","jsx","_jsx","jsxs","_jsxs","
|
|
1
|
+
{"version":3,"names":["React","Children","memo","View","Text","TouchableOpacity","StyleSheet","useTheme","jsx","_jsx","jsxs","_jsxs","ItemComponent","label","description","icon","onPress","destructive","disabled","testID","theme","labelColor","colors","negative","text","activeOpacity","style","styles","item","children","iconWrapper","textWrapper","color","textSecondary","Item","displayName","GroupedButtonsComponent","childArray","toArray","container","backgroundColor","card","map","child","index","Fragment","length","divider","borderLight","GroupedButtonsMemo","GroupedButtons","Object","assign","create","borderRadius","overflow","height","marginLeft","flexDirection","alignItems","paddingVertical","paddingHorizontal","opacity","marginRight","flex","fontSize","marginTop"],"sourceRoot":"../../../src","sources":["grouped-buttons/GroupedButtons.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
export { useInteractionState } from "./useInteractionState.js";
|
|
3
|
+
export { useInteractionState, useInteractionStates } from "./useInteractionState.js";
|
|
4
4
|
export { useDelayedLoading } from "./useDelayedLoading.js";
|
|
5
5
|
export { useThrottledValue } from "./useThrottledValue.js";
|
|
6
|
+
export { usePressAnimation } from "./usePressAnimation.js";
|
|
6
7
|
export { mergeRefs } from "./mergeRefs.js";
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useInteractionState","useDelayedLoading","useThrottledValue","mergeRefs"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;AAAA,SAASA,mBAAmB,QAAQ,0BAAuB;
|
|
1
|
+
{"version":3,"names":["useInteractionState","useInteractionStates","useDelayedLoading","useThrottledValue","usePressAnimation","mergeRefs"],"sourceRoot":"../../../src","sources":["hooks/index.ts"],"mappings":";;AAAA,SAASA,mBAAmB,EAAEC,oBAAoB,QAAQ,0BAAuB;AACjF,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,iBAAiB,QAAQ,wBAAqB;AACvD,SAASC,SAAS,QAAQ,gBAAa","ignoreList":[]}
|
|
@@ -15,4 +15,45 @@ export function useInteractionState() {
|
|
|
15
15
|
onOut
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Tracks multiple interaction states (hovered, focused, pressed) in one hook.
|
|
21
|
+
*
|
|
22
|
+
* Returns stable handler objects suitable for spreading onto Pressable-like components.
|
|
23
|
+
* On web, `hoverHandlers` can be spread as `onMouseEnter`/`onMouseLeave`.
|
|
24
|
+
*/
|
|
25
|
+
export function useInteractionStates() {
|
|
26
|
+
const {
|
|
27
|
+
state: hovered,
|
|
28
|
+
onIn: onHoverIn,
|
|
29
|
+
onOut: onHoverOut
|
|
30
|
+
} = useInteractionState();
|
|
31
|
+
const {
|
|
32
|
+
state: focused,
|
|
33
|
+
onIn: onFocus,
|
|
34
|
+
onOut: onBlur
|
|
35
|
+
} = useInteractionState();
|
|
36
|
+
const {
|
|
37
|
+
state: pressed,
|
|
38
|
+
onIn: onPressIn,
|
|
39
|
+
onOut: onPressOut
|
|
40
|
+
} = useInteractionState();
|
|
41
|
+
return {
|
|
42
|
+
hovered,
|
|
43
|
+
focused,
|
|
44
|
+
pressed,
|
|
45
|
+
hoverHandlers: {
|
|
46
|
+
onHoverIn,
|
|
47
|
+
onHoverOut
|
|
48
|
+
},
|
|
49
|
+
focusHandlers: {
|
|
50
|
+
onFocus,
|
|
51
|
+
onBlur
|
|
52
|
+
},
|
|
53
|
+
pressHandlers: {
|
|
54
|
+
onPressIn,
|
|
55
|
+
onPressOut
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
}
|
|
18
59
|
//# sourceMappingURL=useInteractionState.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useState","useInteractionState","state","setState","onIn","onOut"],"sourceRoot":"../../../src","sources":["hooks/useInteractionState.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,QAAQ,QAAQ,OAAO;AAE7C,OAAO,SAASC,mBAAmBA,CAAA,EAAG;EACpC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGH,QAAQ,CAAC,KAAK,CAAC;EAEzC,MAAMI,IAAI,GAAGL,WAAW,CAAC,MAAM;IAC7BI,QAAQ,CAAC,IAAI,CAAC;EAChB,CAAC,EAAE,EAAE,CAAC;EACN,MAAME,KAAK,GAAGN,WAAW,CAAC,MAAM;IAC9BI,QAAQ,CAAC,KAAK,CAAC;EACjB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IAAED,KAAK;IAAEE,IAAI;IAAEC;EAAM,CAAC;AAC/B","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useCallback","useState","useInteractionState","state","setState","onIn","onOut","useInteractionStates","hovered","onHoverIn","onHoverOut","focused","onFocus","onBlur","pressed","onPressIn","onPressOut","hoverHandlers","focusHandlers","pressHandlers"],"sourceRoot":"../../../src","sources":["hooks/useInteractionState.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,QAAQ,QAAQ,OAAO;AAE7C,OAAO,SAASC,mBAAmBA,CAAA,EAAG;EACpC,MAAM,CAACC,KAAK,EAAEC,QAAQ,CAAC,GAAGH,QAAQ,CAAC,KAAK,CAAC;EAEzC,MAAMI,IAAI,GAAGL,WAAW,CAAC,MAAM;IAC7BI,QAAQ,CAAC,IAAI,CAAC;EAChB,CAAC,EAAE,EAAE,CAAC;EACN,MAAME,KAAK,GAAGN,WAAW,CAAC,MAAM;IAC9BI,QAAQ,CAAC,KAAK,CAAC;EACjB,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IAAED,KAAK;IAAEE,IAAI;IAAEC;EAAM,CAAC;AAC/B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAAA,EAAG;EACrC,MAAM;IAAEJ,KAAK,EAAEK,OAAO;IAAEH,IAAI,EAAEI,SAAS;IAAEH,KAAK,EAAEI;EAAW,CAAC,GAAGR,mBAAmB,CAAC,CAAC;EACpF,MAAM;IAAEC,KAAK,EAAEQ,OAAO;IAAEN,IAAI,EAAEO,OAAO;IAAEN,KAAK,EAAEO;EAAO,CAAC,GAAGX,mBAAmB,CAAC,CAAC;EAC9E,MAAM;IAAEC,KAAK,EAAEW,OAAO;IAAET,IAAI,EAAEU,SAAS;IAAET,KAAK,EAAEU;EAAW,CAAC,GAAGd,mBAAmB,CAAC,CAAC;EAEpF,OAAO;IACLM,OAAO;IACPG,OAAO;IACPG,OAAO;IACPG,aAAa,EAAE;MAAER,SAAS;MAAEC;IAAW,CAAU;IACjDQ,aAAa,EAAE;MAAEN,OAAO;MAAEC;IAAO,CAAU;IAC3CM,aAAa,EAAE;MAAEJ,SAAS;MAAEC;IAAW;EACzC,CAAC;AACH","ignoreList":[]}
|