@masumdev/rn-ui 0.1.6 → 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/README.md +47 -1752
- 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/AspectRatio.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 +25 -9
- 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/ButtonGroup.js +2 -4
- package/lib/commonjs/components/ButtonGroup.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/FloatingActionButton.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 +108 -7
- 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 +19 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/commonjs/components/types.js +53 -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/AspectRatio.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 +25 -9
- 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/ButtonGroup.js +3 -5
- package/lib/module/components/ButtonGroup.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/FloatingActionButton.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 +109 -9
- 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 +3 -2
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/components/types.js +53 -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 -4
- package/lib/typescript/commonjs/components/AlertDialog.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/AspectRatio.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 +5 -8
- 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 +6 -12
- package/lib/typescript/commonjs/components/Button.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/ButtonGroup.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/FloatingActionButton.d.ts +2 -5
- package/lib/typescript/commonjs/components/FloatingActionButton.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 +4 -7
- 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 +15 -2
- 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 +7 -6
- package/lib/typescript/commonjs/components/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/components/types.d.ts +110 -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 -4
- package/lib/typescript/module/components/AlertDialog.d.ts.map +1 -1
- package/lib/typescript/module/components/AspectRatio.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 +5 -8
- 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 +6 -12
- package/lib/typescript/module/components/Button.d.ts.map +1 -1
- package/lib/typescript/module/components/ButtonGroup.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/FloatingActionButton.d.ts +2 -5
- package/lib/typescript/module/components/FloatingActionButton.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 +4 -7
- 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 +15 -2
- 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 +7 -6
- package/lib/typescript/module/components/index.d.ts.map +1 -1
- package/lib/typescript/module/components/types.d.ts +110 -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 +10 -1
|
@@ -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":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","View","useTheme","jsx","_jsx","AspectRatio","ratio","radius","children","style","props","radii","containerStyle","width","aspectRatio","overflow","borderRadius","undefined","absoluteFill","Children","map","child","isValidElement","cloneElement"],"sourceRoot":"../../../src","sources":["components/AspectRatio.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,
|
|
1
|
+
{"version":3,"names":["React","StyleSheet","View","useTheme","jsx","_jsx","AspectRatio","ratio","radius","children","style","props","radii","containerStyle","width","aspectRatio","overflow","borderRadius","undefined","absoluteFill","Children","map","child","isValidElement","cloneElement"],"sourceRoot":"../../../src","sources":["components/AspectRatio.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,UAAU,EAAEC,IAAI,QAAwD,cAAc;AAE/F,SAASC,QAAQ,QAAQ,mBAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAkBpC,OAAO,SAASC,WAAWA,CAAC;EAC1BC,KAAK,GAAG,CAAC;EACTC,MAAM;EACNC,QAAQ;EACRC,KAAK;EACL,GAAGC;AACa,CAAC,EAAE;EACnB,MAAM;IAAEC;EAAM,CAAC,GAAGT,QAAQ,CAAC,CAAC;EAE5B,MAAMU,cAAyB,GAAG;IAChCC,KAAK,EAAE,MAAM;IACbC,WAAW,EAAER,KAAK;IAClBS,QAAQ,EAAE,QAAQ;IAClBC,YAAY,EAAET,MAAM,GAAGI,KAAK,CAACJ,MAAM,CAAC,GAAGU;EACzC,CAAC;EAED,oBACEb,IAAA,CAACH,IAAI;IAACQ,KAAK,EAAE,CAACG,cAAc,EAAEH,KAAK,CAAE;IAAA,GAAKC,KAAK;IAAAF,QAAA,eAC7CJ,IAAA,CAACH,IAAI;MAACQ,KAAK,EAAET,UAAU,CAACkB,YAAa;MAAAV,QAAA,EAClCT,KAAK,CAACoB,QAAQ,CAACC,GAAG,CAACZ,QAAQ,EAAGa,KAAK,IAAK;QACvC,iBAAItB,KAAK,CAACuB,cAAc,CAAmCD,KAAK,CAAC,EAAE;UACjE,oBAAOtB,KAAK,CAACwB,YAAY,CAACF,KAAK,EAAE;YAC/BZ,KAAK,EAAE,CAACT,UAAU,CAACkB,YAAY,EAAEG,KAAK,CAACX,KAAK,CAACD,KAAK;UACpD,CAAC,CAAC;QACJ;QACA,OAAOY,KAAK;MACd,CAAC;IAAC,CACE;EAAC,CACH,CAAC;AAEX","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, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","createContext","useContext","useState","useEffect","Image","StyleSheet","View","useTheme","Text","jsx","_jsx","jsxs","_jsxs","AvatarContext","useAvatarContext","context","Error","GroupContext","Avatar","size","style","children","props","colors","components","radii","hasLoaded","setHasLoaded","hasError","setHasError","group","finalSize","inGroup","dimension","
|
|
1
|
+
{"version":3,"names":["React","createContext","useContext","useState","useEffect","Image","StyleSheet","View","useTheme","Text","jsx","_jsx","jsxs","_jsxs","AvatarContext","useAvatarContext","context","Error","GroupContext","Avatar","size","shape","style","children","props","colors","components","radii","hasLoaded","setHasLoaded","hasError","setHasError","group","finalSize","finalShape","inGroup","dimension","borderRadius","full","xs","md","rootStyle","position","width","height","backgroundColor","backgroundMuted","alignItems","justifyContent","overflow","borderWidth","ring","borderColor","background","Provider","value","AvatarImage","source","onLoad","onError","handleLoad","e","handleError","absoluteFill","AvatarFallback","textStyle","fallbackStyle","fontSize","color","textMuted","fontWeight","AvatarBadge","bg","status","statusColor","success","danger","warning","badgeSize","offset","badgeStyle","right","bottom","focus","zIndex","AvatarGroup","groupStyle","flexDirection","spacing","Children","map","child","index","isValidElement","cloneElement","marginLeft","AvatarGroupCount","count","countStyle"],"sourceRoot":"../../../src","sources":["components/Avatar.tsx"],"mappings":"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","ignoreList":[]}
|