@masumdev/rn-ui 0.1.7 → 0.2.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.
- package/lib/commonjs/components/Accordion.js +28 -13
- package/lib/commonjs/components/Accordion.js.map +1 -1
- package/lib/commonjs/components/Alert.js +229 -73
- package/lib/commonjs/components/Alert.js.map +1 -1
- package/lib/commonjs/components/AlertDialog.js +143 -87
- package/lib/commonjs/components/AlertDialog.js.map +1 -1
- package/lib/commonjs/components/Avatar.js +31 -28
- package/lib/commonjs/components/Avatar.js.map +1 -1
- package/lib/commonjs/components/Badge.js +18 -7
- package/lib/commonjs/components/Badge.js.map +1 -1
- package/lib/commonjs/components/BottomSheet.js +63 -8
- package/lib/commonjs/components/BottomSheet.js.map +1 -1
- package/lib/commonjs/components/Breadcrumb.js +31 -9
- package/lib/commonjs/components/Breadcrumb.js.map +1 -1
- package/lib/commonjs/components/Button.js +22 -6
- package/lib/commonjs/components/Button.js.map +1 -1
- package/lib/commonjs/components/Calendar.js +113 -31
- package/lib/commonjs/components/Calendar.js.map +1 -1
- package/lib/commonjs/components/Card.js +8 -3
- package/lib/commonjs/components/Card.js.map +1 -1
- package/lib/commonjs/components/Carousel.js +67 -21
- package/lib/commonjs/components/Carousel.js.map +1 -1
- package/lib/commonjs/components/Checkbox.js +12 -7
- package/lib/commonjs/components/Checkbox.js.map +1 -1
- package/lib/commonjs/components/Collapsible.js +47 -36
- package/lib/commonjs/components/Collapsible.js.map +1 -1
- package/lib/commonjs/components/Combobox.js +110 -48
- package/lib/commonjs/components/Combobox.js.map +1 -1
- package/lib/commonjs/components/Command.js +121 -77
- package/lib/commonjs/components/Command.js.map +1 -1
- package/lib/commonjs/components/DropdownMenu.js +78 -25
- package/lib/commonjs/components/DropdownMenu.js.map +1 -1
- package/lib/commonjs/components/Empty.js +24 -10
- package/lib/commonjs/components/Empty.js.map +1 -1
- package/lib/commonjs/components/FormField.js +63 -13
- package/lib/commonjs/components/FormField.js.map +1 -1
- package/lib/commonjs/components/IconButton.js +22 -6
- package/lib/commonjs/components/IconButton.js.map +1 -1
- package/lib/commonjs/components/Input.js +11 -13
- package/lib/commonjs/components/Input.js.map +1 -1
- package/lib/commonjs/components/InputGroup.js +19 -10
- package/lib/commonjs/components/InputGroup.js.map +1 -1
- package/lib/commonjs/components/InputOTP.js +46 -15
- package/lib/commonjs/components/InputOTP.js.map +1 -1
- package/lib/commonjs/components/Popover.js +90 -23
- package/lib/commonjs/components/Popover.js.map +1 -1
- package/lib/commonjs/components/Progress.js +105 -6
- package/lib/commonjs/components/Progress.js.map +1 -1
- package/lib/commonjs/components/RadioGroup.js +109 -51
- package/lib/commonjs/components/RadioGroup.js.map +1 -1
- package/lib/commonjs/components/Rating.js +109 -95
- package/lib/commonjs/components/Rating.js.map +1 -1
- package/lib/commonjs/components/Select.js +109 -43
- package/lib/commonjs/components/Select.js.map +1 -1
- package/lib/commonjs/components/Sheet.js +217 -29
- package/lib/commonjs/components/Sheet.js.map +1 -1
- package/lib/commonjs/components/Stepper.js +119 -24
- package/lib/commonjs/components/Stepper.js.map +1 -1
- package/lib/commonjs/components/Switch.js +21 -11
- package/lib/commonjs/components/Switch.js.map +1 -1
- package/lib/commonjs/components/Tabs.js +159 -28
- package/lib/commonjs/components/Tabs.js.map +1 -1
- package/lib/commonjs/components/Timeline.js +35 -12
- package/lib/commonjs/components/Timeline.js.map +1 -1
- package/lib/commonjs/components/Toast.js +163 -38
- package/lib/commonjs/components/Toast.js.map +1 -1
- package/lib/commonjs/components/index.js +12 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/types.js +16 -0
- package/lib/commonjs/components/types.js.map +1 -1
- package/lib/commonjs/theme/tokens.js +7 -7
- package/lib/commonjs/theme/tokens.js.map +1 -1
- package/lib/commonjs/utils/haptics.js +42 -0
- package/lib/commonjs/utils/haptics.js.map +1 -0
- package/lib/commonjs/utils/index.js +7 -0
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/module/components/Accordion.js +28 -13
- package/lib/module/components/Accordion.js.map +1 -1
- package/lib/module/components/Alert.js +229 -73
- package/lib/module/components/Alert.js.map +1 -1
- package/lib/module/components/AlertDialog.js +144 -88
- package/lib/module/components/AlertDialog.js.map +1 -1
- package/lib/module/components/Avatar.js +31 -28
- package/lib/module/components/Avatar.js.map +1 -1
- package/lib/module/components/Badge.js +18 -7
- package/lib/module/components/Badge.js.map +1 -1
- package/lib/module/components/BottomSheet.js +64 -4
- package/lib/module/components/BottomSheet.js.map +1 -1
- package/lib/module/components/Breadcrumb.js +31 -9
- package/lib/module/components/Breadcrumb.js.map +1 -1
- package/lib/module/components/Button.js +22 -6
- package/lib/module/components/Button.js.map +1 -1
- package/lib/module/components/Calendar.js +114 -32
- package/lib/module/components/Calendar.js.map +1 -1
- package/lib/module/components/Card.js +8 -3
- package/lib/module/components/Card.js.map +1 -1
- package/lib/module/components/Carousel.js +67 -21
- package/lib/module/components/Carousel.js.map +1 -1
- package/lib/module/components/Checkbox.js +12 -7
- package/lib/module/components/Checkbox.js.map +1 -1
- package/lib/module/components/Collapsible.js +49 -38
- package/lib/module/components/Collapsible.js.map +1 -1
- package/lib/module/components/Combobox.js +110 -48
- package/lib/module/components/Combobox.js.map +1 -1
- package/lib/module/components/Command.js +121 -77
- package/lib/module/components/Command.js.map +1 -1
- package/lib/module/components/DropdownMenu.js +79 -26
- package/lib/module/components/DropdownMenu.js.map +1 -1
- package/lib/module/components/Empty.js +24 -10
- package/lib/module/components/Empty.js.map +1 -1
- package/lib/module/components/FormField.js +63 -14
- package/lib/module/components/FormField.js.map +1 -1
- package/lib/module/components/IconButton.js +22 -6
- package/lib/module/components/IconButton.js.map +1 -1
- package/lib/module/components/Input.js +12 -14
- package/lib/module/components/Input.js.map +1 -1
- package/lib/module/components/InputGroup.js +19 -10
- package/lib/module/components/InputGroup.js.map +1 -1
- package/lib/module/components/InputOTP.js +46 -15
- package/lib/module/components/InputOTP.js.map +1 -1
- package/lib/module/components/Popover.js +90 -24
- package/lib/module/components/Popover.js.map +1 -1
- package/lib/module/components/Progress.js +106 -8
- package/lib/module/components/Progress.js.map +1 -1
- package/lib/module/components/RadioGroup.js +108 -51
- package/lib/module/components/RadioGroup.js.map +1 -1
- package/lib/module/components/Rating.js +109 -95
- package/lib/module/components/Rating.js.map +1 -1
- package/lib/module/components/Select.js +111 -45
- package/lib/module/components/Select.js.map +1 -1
- package/lib/module/components/Sheet.js +216 -24
- package/lib/module/components/Sheet.js.map +1 -1
- package/lib/module/components/Stepper.js +120 -25
- package/lib/module/components/Stepper.js.map +1 -1
- package/lib/module/components/Switch.js +21 -11
- package/lib/module/components/Switch.js.map +1 -1
- package/lib/module/components/Tabs.js +158 -29
- package/lib/module/components/Tabs.js.map +1 -1
- package/lib/module/components/Timeline.js +35 -12
- package/lib/module/components/Timeline.js.map +1 -1
- package/lib/module/components/Toast.js +164 -38
- package/lib/module/components/Toast.js.map +1 -1
- package/lib/module/components/index.js +2 -2
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/types.js +16 -0
- package/lib/module/components/types.js.map +1 -1
- package/lib/module/theme/tokens.js +7 -7
- package/lib/module/theme/tokens.js.map +1 -1
- package/lib/module/utils/haptics.js +38 -0
- package/lib/module/utils/haptics.js.map +1 -0
- package/lib/module/utils/index.js +1 -0
- package/lib/module/utils/index.js.map +1 -1
- package/lib/typescript/commonjs/components/Accordion.d.ts +6 -3
- package/lib/typescript/commonjs/components/Accordion.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Alert.d.ts +4 -4
- package/lib/typescript/commonjs/components/Alert.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/AlertDialog.d.ts +5 -3
- package/lib/typescript/commonjs/components/AlertDialog.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Avatar.d.ts +9 -4
- package/lib/typescript/commonjs/components/Avatar.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Badge.d.ts +4 -4
- package/lib/typescript/commonjs/components/Badge.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/BottomSheet.d.ts +13 -4
- package/lib/typescript/commonjs/components/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Breadcrumb.d.ts +6 -5
- package/lib/typescript/commonjs/components/Breadcrumb.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Button.d.ts +3 -3
- package/lib/typescript/commonjs/components/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Calendar.d.ts +9 -1
- package/lib/typescript/commonjs/components/Calendar.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Card.d.ts +3 -2
- package/lib/typescript/commonjs/components/Card.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Carousel.d.ts +4 -1
- package/lib/typescript/commonjs/components/Carousel.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Checkbox.d.ts +3 -3
- package/lib/typescript/commonjs/components/Checkbox.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Collapsible.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Combobox.d.ts +11 -6
- package/lib/typescript/commonjs/components/Combobox.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Command.d.ts +3 -0
- package/lib/typescript/commonjs/components/Command.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/DropdownMenu.d.ts +4 -2
- package/lib/typescript/commonjs/components/DropdownMenu.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Empty.d.ts +7 -4
- package/lib/typescript/commonjs/components/Empty.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/FormField.d.ts +12 -4
- package/lib/typescript/commonjs/components/FormField.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/IconButton.d.ts +3 -3
- package/lib/typescript/commonjs/components/IconButton.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Input.d.ts +2 -1
- package/lib/typescript/commonjs/components/Input.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/InputGroup.d.ts +3 -2
- package/lib/typescript/commonjs/components/InputGroup.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/InputOTP.d.ts +9 -4
- package/lib/typescript/commonjs/components/InputOTP.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Popover.d.ts +1 -1
- package/lib/typescript/commonjs/components/Popover.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Progress.d.ts +13 -1
- package/lib/typescript/commonjs/components/Progress.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/RadioGroup.d.ts +3 -2
- package/lib/typescript/commonjs/components/RadioGroup.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Rating.d.ts +3 -23
- package/lib/typescript/commonjs/components/Rating.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Select.d.ts +5 -4
- package/lib/typescript/commonjs/components/Select.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Sheet.d.ts +25 -6
- package/lib/typescript/commonjs/components/Sheet.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Stepper.d.ts +5 -3
- package/lib/typescript/commonjs/components/Stepper.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Switch.d.ts +3 -3
- package/lib/typescript/commonjs/components/Switch.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Tabs.d.ts +21 -4
- package/lib/typescript/commonjs/components/Tabs.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Timeline.d.ts +9 -3
- package/lib/typescript/commonjs/components/Timeline.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/Toast.d.ts +3 -0
- package/lib/typescript/commonjs/components/Toast.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/index.d.ts +5 -5
- package/lib/typescript/commonjs/components/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/types.d.ts +35 -0
- package/lib/typescript/commonjs/components/types.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/haptics.d.ts +6 -0
- package/lib/typescript/commonjs/utils/haptics.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts +1 -0
- package/lib/typescript/commonjs/utils/index.d.ts.map +1 -1
- package/lib/typescript/module/components/Accordion.d.ts +6 -3
- package/lib/typescript/module/components/Accordion.d.ts.map +1 -1
- package/lib/typescript/module/components/Alert.d.ts +4 -4
- package/lib/typescript/module/components/Alert.d.ts.map +1 -1
- package/lib/typescript/module/components/AlertDialog.d.ts +5 -3
- package/lib/typescript/module/components/AlertDialog.d.ts.map +1 -1
- package/lib/typescript/module/components/Avatar.d.ts +9 -4
- package/lib/typescript/module/components/Avatar.d.ts.map +1 -1
- package/lib/typescript/module/components/Badge.d.ts +4 -4
- package/lib/typescript/module/components/Badge.d.ts.map +1 -1
- package/lib/typescript/module/components/BottomSheet.d.ts +13 -4
- package/lib/typescript/module/components/BottomSheet.d.ts.map +1 -1
- package/lib/typescript/module/components/Breadcrumb.d.ts +6 -5
- package/lib/typescript/module/components/Breadcrumb.d.ts.map +1 -1
- package/lib/typescript/module/components/Button.d.ts +3 -3
- package/lib/typescript/module/components/Button.d.ts.map +1 -1
- package/lib/typescript/module/components/Calendar.d.ts +9 -1
- package/lib/typescript/module/components/Calendar.d.ts.map +1 -1
- package/lib/typescript/module/components/Card.d.ts +3 -2
- package/lib/typescript/module/components/Card.d.ts.map +1 -1
- package/lib/typescript/module/components/Carousel.d.ts +4 -1
- package/lib/typescript/module/components/Carousel.d.ts.map +1 -1
- package/lib/typescript/module/components/Checkbox.d.ts +3 -3
- package/lib/typescript/module/components/Checkbox.d.ts.map +1 -1
- package/lib/typescript/module/components/Collapsible.d.ts.map +1 -1
- package/lib/typescript/module/components/Combobox.d.ts +11 -6
- package/lib/typescript/module/components/Combobox.d.ts.map +1 -1
- package/lib/typescript/module/components/Command.d.ts +3 -0
- package/lib/typescript/module/components/Command.d.ts.map +1 -1
- package/lib/typescript/module/components/DropdownMenu.d.ts +4 -2
- package/lib/typescript/module/components/DropdownMenu.d.ts.map +1 -1
- package/lib/typescript/module/components/Empty.d.ts +7 -4
- package/lib/typescript/module/components/Empty.d.ts.map +1 -1
- package/lib/typescript/module/components/FormField.d.ts +12 -4
- package/lib/typescript/module/components/FormField.d.ts.map +1 -1
- package/lib/typescript/module/components/IconButton.d.ts +3 -3
- package/lib/typescript/module/components/IconButton.d.ts.map +1 -1
- package/lib/typescript/module/components/Input.d.ts +2 -1
- package/lib/typescript/module/components/Input.d.ts.map +1 -1
- package/lib/typescript/module/components/InputGroup.d.ts +3 -2
- package/lib/typescript/module/components/InputGroup.d.ts.map +1 -1
- package/lib/typescript/module/components/InputOTP.d.ts +9 -4
- package/lib/typescript/module/components/InputOTP.d.ts.map +1 -1
- package/lib/typescript/module/components/Popover.d.ts +1 -1
- package/lib/typescript/module/components/Popover.d.ts.map +1 -1
- package/lib/typescript/module/components/Progress.d.ts +13 -1
- package/lib/typescript/module/components/Progress.d.ts.map +1 -1
- package/lib/typescript/module/components/RadioGroup.d.ts +3 -2
- package/lib/typescript/module/components/RadioGroup.d.ts.map +1 -1
- package/lib/typescript/module/components/Rating.d.ts +3 -23
- package/lib/typescript/module/components/Rating.d.ts.map +1 -1
- package/lib/typescript/module/components/Select.d.ts +5 -4
- package/lib/typescript/module/components/Select.d.ts.map +1 -1
- package/lib/typescript/module/components/Sheet.d.ts +25 -6
- package/lib/typescript/module/components/Sheet.d.ts.map +1 -1
- package/lib/typescript/module/components/Stepper.d.ts +5 -3
- package/lib/typescript/module/components/Stepper.d.ts.map +1 -1
- package/lib/typescript/module/components/Switch.d.ts +3 -3
- package/lib/typescript/module/components/Switch.d.ts.map +1 -1
- package/lib/typescript/module/components/Tabs.d.ts +21 -4
- package/lib/typescript/module/components/Tabs.d.ts.map +1 -1
- package/lib/typescript/module/components/Timeline.d.ts +9 -3
- package/lib/typescript/module/components/Timeline.d.ts.map +1 -1
- package/lib/typescript/module/components/Toast.d.ts +3 -0
- package/lib/typescript/module/components/Toast.d.ts.map +1 -1
- package/lib/typescript/module/components/index.d.ts +5 -5
- package/lib/typescript/module/components/index.d.ts.map +1 -1
- package/lib/typescript/module/components/types.d.ts +35 -0
- package/lib/typescript/module/components/types.d.ts.map +1 -1
- package/lib/typescript/module/utils/haptics.d.ts +6 -0
- package/lib/typescript/module/utils/haptics.d.ts.map +1 -0
- package/lib/typescript/module/utils/index.d.ts +1 -0
- package/lib/typescript/module/utils/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Pressable","View","Animated","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useTheme","
|
|
1
|
+
{"version":3,"names":["React","Pressable","View","Animated","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useTheme","withAlpha","Text","renderIcon","jsx","_jsx","jsxs","_jsxs","DefaultInfoIcon","color","style","width","height","borderRadius","borderWidth","borderColor","alignItems","justifyContent","children","fontSize","fontWeight","lineHeight","DefaultSuccessIcon","backgroundColor","borderLeftWidth","borderBottomWidth","transform","rotate","marginTop","DefaultWarningIcon","DefaultDangerIcon","renderDefaultIcon","tone","Alert","title","variant","glass","icon","action","dismissible","animated","animationDuration","onClose","closeIcon","contentStyle","titleStyle","textStyle","colors","components","radii","spacing","isDark","visible","setVisible","useState","progress","solidColors","primary","bg","text","success","warning","danger","info","secondary","toneBaseColor","currentToneColor","effectiveVariant","glassBg","surface","border","titleTextColor","bodyTextColor","textMuted","iconColor","transparent","animatedStyle","opacity","value","scale","handleClose","duration","finished","content","accessibilityRole","strong","xl","padding","lg","flexDirection","gap","md","position","overflow","borderLeftColor","flex","weight","onPress","pressed","alignSelf","xs","label","accessibilityLabel","hitSlop"],"sourceRoot":"../../../src","sources":["components/Alert.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
import React, { useEffect, useState } from "react";
|
|
4
4
|
import { Modal, Pressable, View } from "react-native";
|
|
5
|
-
import Animated, { runOnJS, useAnimatedStyle, useSharedValue, withTiming } from "react-native-reanimated";
|
|
5
|
+
import Animated, { Easing, runOnJS, useAnimatedStyle, useSharedValue, withTiming } from "react-native-reanimated";
|
|
6
6
|
import { useTheme } from "../theme/index.js";
|
|
7
|
-
import {
|
|
7
|
+
import { withAlpha } from "../utils/index.js";
|
|
8
|
+
import { triggerHaptic } from "../utils/haptics.js";
|
|
8
9
|
import { Button } from "./Button.js";
|
|
9
10
|
import { Text } from "./Text.js";
|
|
11
|
+
import { renderIcon } from "./types.js";
|
|
10
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
13
|
function getToneColor(tone, colors) {
|
|
12
14
|
if (tone === "primary") return colors.primary;
|
|
@@ -16,23 +18,15 @@ function getToneColor(tone, colors) {
|
|
|
16
18
|
if (tone === "info") return colors.info;
|
|
17
19
|
return colors.secondary;
|
|
18
20
|
}
|
|
19
|
-
function renderDialogText(content, variant, color, style) {
|
|
20
|
-
if (typeof content === "string") {
|
|
21
|
-
return /*#__PURE__*/_jsx(Text, {
|
|
22
|
-
variant: variant,
|
|
23
|
-
color: color,
|
|
24
|
-
style: style,
|
|
25
|
-
children: content
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
return content;
|
|
29
|
-
}
|
|
30
21
|
export function AlertDialog({
|
|
31
22
|
visible,
|
|
23
|
+
align = "center",
|
|
32
24
|
title,
|
|
33
25
|
description,
|
|
34
26
|
children,
|
|
35
27
|
tone = "primary",
|
|
28
|
+
glass = false,
|
|
29
|
+
haptic = true,
|
|
36
30
|
icon,
|
|
37
31
|
closeIcon,
|
|
38
32
|
confirmText = "Confirm",
|
|
@@ -45,7 +39,7 @@ export function AlertDialog({
|
|
|
45
39
|
cancelDisabled = false,
|
|
46
40
|
dismissOnBackdropPress = true,
|
|
47
41
|
animated = true,
|
|
48
|
-
animationDuration =
|
|
42
|
+
animationDuration = 220,
|
|
49
43
|
modalProps,
|
|
50
44
|
overlayStyle,
|
|
51
45
|
style,
|
|
@@ -57,41 +51,54 @@ export function AlertDialog({
|
|
|
57
51
|
colors,
|
|
58
52
|
components,
|
|
59
53
|
radii,
|
|
60
|
-
spacing
|
|
54
|
+
spacing,
|
|
55
|
+
isDark
|
|
61
56
|
} = useTheme();
|
|
62
57
|
const [mounted, setMounted] = useState(visible);
|
|
63
58
|
const progress = useSharedValue(visible ? 1 : 0);
|
|
64
59
|
const toneColor = getToneColor(tone, colors);
|
|
65
60
|
useEffect(() => {
|
|
66
61
|
if (visible) {
|
|
62
|
+
if (haptic) triggerHaptic("medium");
|
|
67
63
|
setMounted(true);
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
64
|
+
if (animated) {
|
|
65
|
+
progress.value = withTiming(1, {
|
|
66
|
+
duration: animationDuration,
|
|
67
|
+
easing: Easing.out(Easing.cubic)
|
|
68
|
+
});
|
|
69
|
+
} else {
|
|
70
|
+
progress.value = 1;
|
|
71
|
+
}
|
|
72
|
+
} else {
|
|
73
|
+
if (animated) {
|
|
74
|
+
progress.value = withTiming(0, {
|
|
75
|
+
duration: Math.max(120, animationDuration - 40),
|
|
76
|
+
easing: Easing.in(Easing.quad)
|
|
77
|
+
}, finished => {
|
|
78
|
+
if (finished) {
|
|
79
|
+
runOnJS(setMounted)(false);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
} else {
|
|
83
|
+
progress.value = 0;
|
|
71
84
|
setMounted(false);
|
|
72
85
|
}
|
|
73
|
-
return;
|
|
74
86
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
}, [animated, animationDuration, progress, visible]);
|
|
83
|
-
const animatedStyle = useAnimatedStyle(() => ({
|
|
87
|
+
}, [animated, animationDuration, haptic, progress, visible]);
|
|
88
|
+
const backdropAnimatedStyle = useAnimatedStyle(() => ({
|
|
89
|
+
opacity: progress.value
|
|
90
|
+
}));
|
|
91
|
+
const cardAnimatedStyle = useAnimatedStyle(() => ({
|
|
84
92
|
opacity: progress.value,
|
|
85
93
|
transform: [{
|
|
86
|
-
scale: 0.
|
|
94
|
+
scale: 0.94 + progress.value * 0.06
|
|
87
95
|
}, {
|
|
88
|
-
translateY:
|
|
96
|
+
translateY: 10 * (1 - progress.value)
|
|
89
97
|
}]
|
|
90
98
|
}));
|
|
91
|
-
if (!mounted)
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
99
|
+
if (!mounted) return null;
|
|
94
100
|
const requestClose = () => {
|
|
101
|
+
if (haptic) triggerHaptic("selection");
|
|
95
102
|
onClose?.();
|
|
96
103
|
};
|
|
97
104
|
const handleBackdropPress = () => {
|
|
@@ -99,81 +106,129 @@ export function AlertDialog({
|
|
|
99
106
|
requestClose();
|
|
100
107
|
}
|
|
101
108
|
};
|
|
109
|
+
const handleConfirm = () => {
|
|
110
|
+
if (haptic) triggerHaptic("light");
|
|
111
|
+
onConfirm?.();
|
|
112
|
+
};
|
|
113
|
+
const handleCancel = () => {
|
|
114
|
+
if (haptic) triggerHaptic("selection");
|
|
115
|
+
onCancel?.();
|
|
116
|
+
};
|
|
117
|
+
const glassBg = isDark ? "rgba(15, 27, 45, 0.92)" : "rgba(255, 255, 255, 0.96)";
|
|
118
|
+
const dialogBg = glass ? glassBg : colors.surface;
|
|
119
|
+
const borderColor = withAlpha(toneColor, isDark ? 0.35 : 0.25);
|
|
120
|
+
const isCentered = align === "center";
|
|
102
121
|
const dialog = /*#__PURE__*/_jsxs(View, {
|
|
103
122
|
style: [{
|
|
104
123
|
width: "100%",
|
|
105
|
-
maxWidth:
|
|
106
|
-
backgroundColor:
|
|
124
|
+
maxWidth: 400,
|
|
125
|
+
backgroundColor: dialogBg,
|
|
107
126
|
borderRadius: radii.xxl,
|
|
108
127
|
borderWidth: components.borderWidth.strong,
|
|
109
|
-
borderColor
|
|
110
|
-
padding: spacing.
|
|
111
|
-
gap: spacing.lg
|
|
128
|
+
borderColor,
|
|
129
|
+
padding: spacing.xl,
|
|
130
|
+
gap: spacing.lg,
|
|
131
|
+
alignItems: isCentered ? "center" : "stretch",
|
|
132
|
+
position: "relative",
|
|
133
|
+
elevation: 0
|
|
112
134
|
}, style],
|
|
113
|
-
children: [/*#__PURE__*/
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
135
|
+
children: [onClose ? /*#__PURE__*/_jsx(Pressable, {
|
|
136
|
+
accessibilityRole: "button",
|
|
137
|
+
accessibilityLabel: "Close dialog",
|
|
138
|
+
onPress: requestClose,
|
|
139
|
+
hitSlop: 12,
|
|
140
|
+
style: ({
|
|
141
|
+
pressed
|
|
142
|
+
}) => ({
|
|
143
|
+
position: "absolute",
|
|
144
|
+
top: spacing.md,
|
|
145
|
+
right: spacing.md,
|
|
146
|
+
width: 32,
|
|
147
|
+
height: 32,
|
|
148
|
+
borderRadius: 16,
|
|
149
|
+
alignItems: "center",
|
|
150
|
+
justifyContent: "center",
|
|
151
|
+
backgroundColor: pressed ? colors.backgroundMuted : "transparent",
|
|
152
|
+
zIndex: 10,
|
|
153
|
+
opacity: pressed ? 0.8 : 0.7
|
|
154
|
+
}),
|
|
155
|
+
children: closeIcon ? renderIcon(closeIcon, colors.textMuted, 16) : /*#__PURE__*/_jsx(Text, {
|
|
120
156
|
style: {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
backgroundColor: colors.backgroundMuted,
|
|
125
|
-
alignItems: "center",
|
|
126
|
-
justifyContent: "center"
|
|
157
|
+
color: colors.textMuted,
|
|
158
|
+
fontSize: 16,
|
|
159
|
+
fontWeight: "600"
|
|
127
160
|
},
|
|
128
|
-
children:
|
|
129
|
-
})
|
|
161
|
+
children: "\u2715"
|
|
162
|
+
})
|
|
163
|
+
}) : null, icon ? /*#__PURE__*/_jsx(View, {
|
|
164
|
+
style: {
|
|
165
|
+
width: isCentered ? 56 : 44,
|
|
166
|
+
height: isCentered ? 56 : 44,
|
|
167
|
+
borderRadius: isCentered ? 28 : radii.lg,
|
|
168
|
+
backgroundColor: withAlpha(toneColor, 0.14),
|
|
169
|
+
borderWidth: 1.5,
|
|
170
|
+
borderColor: withAlpha(toneColor, 0.28),
|
|
171
|
+
alignItems: "center",
|
|
172
|
+
justifyContent: "center",
|
|
173
|
+
alignSelf: isCentered ? "center" : "flex-start"
|
|
174
|
+
},
|
|
175
|
+
children: renderIcon(icon, toneColor, isCentered ? 26 : 22)
|
|
176
|
+
}) : null, /*#__PURE__*/_jsxs(View, {
|
|
177
|
+
style: [{
|
|
178
|
+
width: "100%",
|
|
179
|
+
gap: spacing.xs,
|
|
180
|
+
alignItems: isCentered ? "center" : "flex-start"
|
|
181
|
+
}, contentStyle],
|
|
182
|
+
children: [title ? typeof title === "string" ? /*#__PURE__*/_jsx(Text, {
|
|
183
|
+
variant: "h3",
|
|
184
|
+
weight: "700",
|
|
130
185
|
style: [{
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
},
|
|
134
|
-
children:
|
|
135
|
-
}),
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
borderRadius: 16,
|
|
145
|
-
alignItems: "center",
|
|
146
|
-
justifyContent: "center",
|
|
147
|
-
opacity: pressed ? 0.72 : 1
|
|
148
|
-
}),
|
|
149
|
-
children: closeIcon ? renderIcon(closeIcon, colors.textMuted, 18) : /*#__PURE__*/_jsx(Text, {
|
|
150
|
-
variant: "label",
|
|
151
|
-
color: "textMuted",
|
|
152
|
-
children: "x"
|
|
153
|
-
})
|
|
154
|
-
}) : null]
|
|
186
|
+
textAlign: isCentered ? "center" : "left",
|
|
187
|
+
color: colors.text
|
|
188
|
+
}, titleStyle],
|
|
189
|
+
children: title
|
|
190
|
+
}) : title : null, description ? typeof description === "string" ? /*#__PURE__*/_jsx(Text, {
|
|
191
|
+
variant: "bodySmall",
|
|
192
|
+
color: "textMuted",
|
|
193
|
+
style: [{
|
|
194
|
+
textAlign: isCentered ? "center" : "left",
|
|
195
|
+
lineHeight: 22
|
|
196
|
+
}, descriptionStyle],
|
|
197
|
+
children: description
|
|
198
|
+
}) : description : null]
|
|
155
199
|
}), children ? /*#__PURE__*/_jsx(View, {
|
|
200
|
+
style: {
|
|
201
|
+
width: "100%"
|
|
202
|
+
},
|
|
156
203
|
children: children
|
|
157
204
|
}) : null, onCancel || onConfirm ? /*#__PURE__*/_jsxs(View, {
|
|
158
205
|
style: {
|
|
206
|
+
width: "100%",
|
|
159
207
|
flexDirection: "row",
|
|
160
|
-
justifyContent: "flex-end",
|
|
161
|
-
gap: spacing.sm
|
|
208
|
+
justifyContent: isCentered ? "center" : "flex-end",
|
|
209
|
+
gap: spacing.sm,
|
|
210
|
+
marginTop: spacing.xs
|
|
162
211
|
},
|
|
163
212
|
children: [onCancel ? /*#__PURE__*/_jsx(Button, {
|
|
164
213
|
variant: "outline",
|
|
165
214
|
tone: "secondary",
|
|
166
|
-
size: "
|
|
215
|
+
size: "md",
|
|
216
|
+
style: {
|
|
217
|
+
flex: isCentered ? 1 : undefined
|
|
218
|
+
},
|
|
167
219
|
disabled: cancelDisabled,
|
|
168
|
-
onPress:
|
|
220
|
+
onPress: handleCancel,
|
|
169
221
|
children: cancelText
|
|
170
222
|
}) : null, onConfirm ? /*#__PURE__*/_jsx(Button, {
|
|
171
223
|
variant: "filled",
|
|
172
224
|
tone: tone,
|
|
173
|
-
size: "
|
|
225
|
+
size: "md",
|
|
226
|
+
style: {
|
|
227
|
+
flex: isCentered ? 1 : undefined
|
|
228
|
+
},
|
|
174
229
|
loading: confirmLoading,
|
|
175
230
|
disabled: confirmDisabled,
|
|
176
|
-
onPress:
|
|
231
|
+
onPress: handleConfirm,
|
|
177
232
|
children: confirmText
|
|
178
233
|
}) : null]
|
|
179
234
|
}) : null]
|
|
@@ -187,14 +242,14 @@ export function AlertDialog({
|
|
|
187
242
|
hardwareAccelerated: true,
|
|
188
243
|
onRequestClose: requestClose,
|
|
189
244
|
...modalProps,
|
|
190
|
-
children: /*#__PURE__*/_jsxs(View, {
|
|
245
|
+
children: /*#__PURE__*/_jsxs(Animated.View, {
|
|
191
246
|
style: [{
|
|
192
247
|
flex: 1,
|
|
193
|
-
backgroundColor:
|
|
248
|
+
backgroundColor: isDark ? "rgba(0, 0, 0, 0.78)" : "rgba(15, 23, 42, 0.65)",
|
|
194
249
|
padding: spacing.xl,
|
|
195
250
|
alignItems: "center",
|
|
196
251
|
justifyContent: "center"
|
|
197
|
-
}, overlayStyle],
|
|
252
|
+
}, backdropAnimatedStyle, overlayStyle],
|
|
198
253
|
children: [/*#__PURE__*/_jsx(Pressable, {
|
|
199
254
|
accessibilityRole: "button",
|
|
200
255
|
style: {
|
|
@@ -208,8 +263,9 @@ export function AlertDialog({
|
|
|
208
263
|
}), animated ? /*#__PURE__*/_jsx(Animated.View, {
|
|
209
264
|
style: [{
|
|
210
265
|
width: "100%",
|
|
211
|
-
maxWidth:
|
|
212
|
-
|
|
266
|
+
maxWidth: 400,
|
|
267
|
+
alignItems: "center"
|
|
268
|
+
}, cardAnimatedStyle],
|
|
213
269
|
children: dialog
|
|
214
270
|
}) : dialog]
|
|
215
271
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useState","Modal","Pressable","View","Animated","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useTheme","
|
|
1
|
+
{"version":3,"names":["React","useEffect","useState","Modal","Pressable","View","Animated","Easing","runOnJS","useAnimatedStyle","useSharedValue","withTiming","useTheme","withAlpha","triggerHaptic","Button","Text","renderIcon","jsx","_jsx","jsxs","_jsxs","getToneColor","tone","colors","primary","success","warning","danger","info","secondary","AlertDialog","visible","align","title","description","children","glass","haptic","icon","closeIcon","confirmText","cancelText","onConfirm","onCancel","onClose","confirmLoading","confirmDisabled","cancelDisabled","dismissOnBackdropPress","animated","animationDuration","modalProps","overlayStyle","style","contentStyle","titleStyle","descriptionStyle","components","radii","spacing","isDark","mounted","setMounted","progress","toneColor","value","duration","easing","out","cubic","Math","max","in","quad","finished","backdropAnimatedStyle","opacity","cardAnimatedStyle","transform","scale","translateY","requestClose","handleBackdropPress","handleConfirm","handleCancel","glassBg","dialogBg","surface","borderColor","isCentered","dialog","width","maxWidth","backgroundColor","borderRadius","xxl","borderWidth","strong","padding","xl","gap","lg","alignItems","position","elevation","accessibilityRole","accessibilityLabel","onPress","hitSlop","pressed","top","md","right","height","justifyContent","backgroundMuted","zIndex","textMuted","color","fontSize","fontWeight","alignSelf","xs","variant","weight","textAlign","text","lineHeight","flexDirection","sm","marginTop","size","flex","undefined","disabled","loading","transparent","animationType","statusBarTranslucent","navigationBarTranslucent","hardwareAccelerated","onRequestClose","bottom","left"],"sourceRoot":"../../../src","sources":["components/AlertDialog.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -16,6 +16,7 @@ function useAvatarContext() {
|
|
|
16
16
|
const GroupContext = /*#__PURE__*/createContext(null);
|
|
17
17
|
export function Avatar({
|
|
18
18
|
size = "default",
|
|
19
|
+
shape = "circle",
|
|
19
20
|
style,
|
|
20
21
|
children,
|
|
21
22
|
...props
|
|
@@ -31,28 +32,30 @@ export function Avatar({
|
|
|
31
32
|
// Check if rendered inside an AvatarGroup
|
|
32
33
|
const group = useContext(GroupContext);
|
|
33
34
|
const finalSize = group ? group.size : size;
|
|
35
|
+
const finalShape = group ? group.shape : shape;
|
|
34
36
|
const inGroup = !!group;
|
|
35
37
|
|
|
36
38
|
// Determine width and height based on size
|
|
37
|
-
const dimension = finalSize === "lg" ?
|
|
39
|
+
const dimension = typeof finalSize === "number" ? finalSize : finalSize === "xl" ? 56 : finalSize === "lg" ? 44 : finalSize === "sm" ? 28 : 36;
|
|
40
|
+
const borderRadius = finalShape === "circle" ? radii.full : finalShape === "square" ? radii.xs : radii.md;
|
|
38
41
|
const rootStyle = {
|
|
39
42
|
position: "relative",
|
|
40
43
|
width: dimension,
|
|
41
44
|
height: dimension,
|
|
42
|
-
borderRadius
|
|
45
|
+
borderRadius,
|
|
43
46
|
backgroundColor: colors.backgroundMuted,
|
|
44
47
|
alignItems: "center",
|
|
45
48
|
justifyContent: "center",
|
|
46
49
|
overflow: "visible",
|
|
47
|
-
// Let the badge sit outside or on the edge
|
|
48
50
|
...(inGroup ? {
|
|
49
51
|
borderWidth: components.borderWidth.ring,
|
|
50
|
-
borderColor: colors.background
|
|
52
|
+
borderColor: colors.background
|
|
51
53
|
} : {})
|
|
52
54
|
};
|
|
53
55
|
return /*#__PURE__*/_jsx(AvatarContext.Provider, {
|
|
54
56
|
value: {
|
|
55
57
|
size: finalSize,
|
|
58
|
+
shape: finalShape,
|
|
56
59
|
hasLoaded,
|
|
57
60
|
setHasLoaded,
|
|
58
61
|
hasError,
|
|
@@ -76,7 +79,8 @@ export function AvatarImage({
|
|
|
76
79
|
const {
|
|
77
80
|
setHasLoaded,
|
|
78
81
|
setHasError,
|
|
79
|
-
hasError
|
|
82
|
+
hasError,
|
|
83
|
+
shape
|
|
80
84
|
} = useAvatarContext();
|
|
81
85
|
const {
|
|
82
86
|
radii
|
|
@@ -96,10 +100,11 @@ export function AvatarImage({
|
|
|
96
100
|
setHasError(true);
|
|
97
101
|
onError?.(e);
|
|
98
102
|
};
|
|
103
|
+
const borderRadius = shape === "circle" ? radii.full : shape === "square" ? radii.xs : radii.md;
|
|
99
104
|
return /*#__PURE__*/_jsx(Image, {
|
|
100
105
|
source: source,
|
|
101
106
|
style: [StyleSheet.absoluteFill, {
|
|
102
|
-
borderRadius
|
|
107
|
+
borderRadius
|
|
103
108
|
}, style],
|
|
104
109
|
onLoad: handleLoad,
|
|
105
110
|
onError: handleError,
|
|
@@ -115,26 +120,24 @@ export function AvatarFallback({
|
|
|
115
120
|
const {
|
|
116
121
|
hasLoaded,
|
|
117
122
|
hasError,
|
|
118
|
-
size
|
|
123
|
+
size,
|
|
124
|
+
shape
|
|
119
125
|
} = useAvatarContext();
|
|
120
126
|
const {
|
|
121
127
|
colors,
|
|
122
128
|
radii
|
|
123
129
|
} = useTheme();
|
|
124
|
-
|
|
125
|
-
// Show fallback only if not loaded yet OR if load failed
|
|
126
130
|
if (hasLoaded && !hasError) {
|
|
127
131
|
return null;
|
|
128
132
|
}
|
|
133
|
+
const borderRadius = shape === "circle" ? radii.full : shape === "square" ? radii.xs : radii.md;
|
|
129
134
|
const fallbackStyle = {
|
|
130
|
-
borderRadius
|
|
135
|
+
borderRadius,
|
|
131
136
|
backgroundColor: colors.backgroundMuted,
|
|
132
137
|
alignItems: "center",
|
|
133
138
|
justifyContent: "center"
|
|
134
139
|
};
|
|
135
|
-
|
|
136
|
-
// Determine text size based on size
|
|
137
|
-
const fontSize = size === "lg" ? 16 : size === "sm" ? 10 : 12;
|
|
140
|
+
const fontSize = typeof size === "number" ? size * 0.4 : size === "xl" ? 20 : size === "lg" ? 16 : size === "sm" ? 11 : 13;
|
|
138
141
|
return /*#__PURE__*/_jsx(View, {
|
|
139
142
|
style: [StyleSheet.absoluteFill, fallbackStyle, style],
|
|
140
143
|
...props,
|
|
@@ -151,6 +154,7 @@ export function AvatarFallback({
|
|
|
151
154
|
export function AvatarBadge({
|
|
152
155
|
style,
|
|
153
156
|
bg,
|
|
157
|
+
status,
|
|
154
158
|
...props
|
|
155
159
|
}) {
|
|
156
160
|
const {
|
|
@@ -160,10 +164,9 @@ export function AvatarBadge({
|
|
|
160
164
|
colors,
|
|
161
165
|
components
|
|
162
166
|
} = useTheme();
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
const
|
|
166
|
-
const offset = size === "lg" ? 0 : size === "sm" ? -1 : -0.5;
|
|
167
|
+
const statusColor = status === "online" ? colors.success : status === "busy" ? colors.danger : status === "away" ? colors.warning : status === "offline" ? colors.textMuted : bg || colors.success;
|
|
168
|
+
const badgeSize = typeof size === "number" ? size * 0.28 : size === "xl" ? 14 : size === "lg" ? 12 : size === "sm" ? 8 : 10;
|
|
169
|
+
const offset = typeof size === "number" ? 0 : size === "xl" ? 1 : size === "lg" ? 0 : size === "sm" ? -1 : -0.5;
|
|
167
170
|
const badgeStyle = {
|
|
168
171
|
position: "absolute",
|
|
169
172
|
right: offset,
|
|
@@ -171,10 +174,9 @@ export function AvatarBadge({
|
|
|
171
174
|
width: badgeSize,
|
|
172
175
|
height: badgeSize,
|
|
173
176
|
borderRadius: badgeSize / 2,
|
|
174
|
-
backgroundColor:
|
|
177
|
+
backgroundColor: statusColor,
|
|
175
178
|
borderWidth: components.borderWidth.focus,
|
|
176
179
|
borderColor: colors.background,
|
|
177
|
-
// ring-2 ring-background
|
|
178
180
|
zIndex: 10
|
|
179
181
|
};
|
|
180
182
|
return /*#__PURE__*/_jsx(View, {
|
|
@@ -184,6 +186,7 @@ export function AvatarBadge({
|
|
|
184
186
|
}
|
|
185
187
|
export function AvatarGroup({
|
|
186
188
|
size = "default",
|
|
189
|
+
shape = "circle",
|
|
187
190
|
style,
|
|
188
191
|
children,
|
|
189
192
|
...props
|
|
@@ -192,13 +195,12 @@ export function AvatarGroup({
|
|
|
192
195
|
flexDirection: "row",
|
|
193
196
|
alignItems: "center"
|
|
194
197
|
};
|
|
195
|
-
|
|
196
|
-
// Spacing values mapped to negative margins
|
|
197
|
-
const spacing = size === "lg" ? -10 : size === "sm" ? -6 : -8;
|
|
198
|
+
const spacing = typeof size === "number" ? -size * 0.25 : size === "xl" ? -14 : size === "lg" ? -10 : size === "sm" ? -6 : -8;
|
|
198
199
|
return /*#__PURE__*/_jsx(GroupContext.Provider, {
|
|
199
200
|
value: {
|
|
200
201
|
inGroup: true,
|
|
201
|
-
size
|
|
202
|
+
size,
|
|
203
|
+
shape
|
|
202
204
|
},
|
|
203
205
|
children: /*#__PURE__*/_jsx(View, {
|
|
204
206
|
style: [groupStyle, style],
|
|
@@ -227,19 +229,20 @@ export function AvatarGroupCount({
|
|
|
227
229
|
} = useTheme();
|
|
228
230
|
const group = useContext(GroupContext);
|
|
229
231
|
const size = group ? group.size : "default";
|
|
230
|
-
const
|
|
231
|
-
const
|
|
232
|
-
const
|
|
232
|
+
const shape = group ? group.shape : "circle";
|
|
233
|
+
const dimension = typeof size === "number" ? size : size === "xl" ? 56 : size === "lg" ? 44 : size === "sm" ? 28 : 36;
|
|
234
|
+
const spacing = typeof size === "number" ? -size * 0.25 : size === "xl" ? -14 : size === "lg" ? -10 : size === "sm" ? -6 : -8;
|
|
235
|
+
const fontSize = typeof size === "number" ? size * 0.35 : size === "xl" ? 16 : size === "lg" ? 14 : size === "sm" ? 10 : 12;
|
|
236
|
+
const borderRadius = shape === "circle" ? radii.full : shape === "square" ? radii.xs : radii.md;
|
|
233
237
|
const countStyle = {
|
|
234
238
|
width: dimension,
|
|
235
239
|
height: dimension,
|
|
236
|
-
borderRadius
|
|
240
|
+
borderRadius,
|
|
237
241
|
backgroundColor: colors.backgroundMuted,
|
|
238
242
|
alignItems: "center",
|
|
239
243
|
justifyContent: "center",
|
|
240
244
|
borderWidth: components.borderWidth.ring,
|
|
241
245
|
borderColor: colors.background,
|
|
242
|
-
// ring-2 ring-background
|
|
243
246
|
marginLeft: spacing
|
|
244
247
|
};
|
|
245
248
|
return /*#__PURE__*/_jsx(View, {
|