@ecohouse/ui 0.1.5 → 0.1.7
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 +34 -3
- package/dist/index.cjs +946 -102
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +349 -157
- package/dist/index.d.ts +349 -157
- package/dist/index.js +930 -104
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Badge/Badge.stories.tsx +52 -0
- package/src/components/Badge/Badge.tsx +131 -0
- package/src/components/Badge/index.ts +2 -0
- package/src/components/CommentCard/CommentCard.stories.tsx +31 -0
- package/src/components/CommentCard/CommentCard.tsx +209 -0
- package/src/components/CommentCard/index.ts +2 -0
- package/src/components/Counter/Counter.stories.tsx +46 -0
- package/src/components/Counter/Counter.tsx +135 -0
- package/src/components/Counter/index.ts +2 -0
- package/src/components/RatingInput/RatingInput.stories.tsx +41 -0
- package/src/components/RatingInput/RatingInput.tsx +168 -0
- package/src/components/RatingInput/index.ts +2 -0
- package/src/components/SegmentedToggle/SegmentedToggle.stories.tsx +63 -0
- package/src/components/SegmentedToggle/SegmentedToggle.tsx +221 -0
- package/src/components/SegmentedToggle/index.ts +2 -0
- package/src/components/StatCard/StatCard.stories.tsx +20 -0
- package/src/components/StatCard/StatCard.tsx +61 -0
- package/src/components/StatCard/index.ts +2 -0
- package/src/components/index.ts +18 -0
- package/src/icons/Minus/MinusIcon.tsx +20 -0
- package/src/icons/Minus/MinusIcon.web.tsx +19 -0
- package/src/icons/Minus/index.ts +1 -0
- package/src/icons/Minus/minusPath.ts +1 -0
- package/src/icons/Plus/PlusIcon.tsx +20 -0
- package/src/icons/Plus/PlusIcon.web.tsx +19 -0
- package/src/icons/Plus/index.ts +1 -0
- package/src/icons/Plus/plusPath.ts +1 -0
- package/src/icons/Sidebar/SidebarIcon.tsx +21 -0
- package/src/icons/Sidebar/SidebarIcon.web.tsx +27 -0
- package/src/icons/Sidebar/index.ts +1 -0
- package/src/icons/Sidebar/sidebarPath.ts +3 -0
- package/src/icons/Star/StarIcon.tsx +35 -0
- package/src/icons/Star/StarIcon.web.tsx +41 -0
- package/src/icons/Star/index.ts +2 -0
- package/src/icons/Star/starPath.ts +3 -0
- package/src/icons/StarFilled/StarFilledIcon.tsx +28 -0
- package/src/icons/StarFilled/StarFilledIcon.web.tsx +34 -0
- package/src/icons/StarFilled/index.ts +1 -0
- package/src/icons/UsersAlt/UsersAltIcon.tsx +14 -0
- package/src/icons/UsersAlt/UsersAltIcon.web.tsx +13 -0
- package/src/icons/UsersAlt/index.ts +1 -0
- package/src/icons/UsersAlt/usersAltPath.ts +2 -0
- package/src/icons/index.ts +7 -0
- package/src/icons/registry.ts +18 -2
- package/src/index.ts +34 -1
- package/src/theme/colors.test.ts +6 -0
- package/src/theme/colors.ts +6 -0
- package/src/theme/index.ts +6 -0
- package/src/theme/typography.ts +77 -0
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { forwardRef, useRef, useMemo, useState, useCallback, useEffect, useLayoutEffect } from 'react';
|
|
2
|
-
import { Pressable, View, Text, StyleSheet, Platform, Image,
|
|
2
|
+
import { Pressable, View, Text, StyleSheet, Platform, Image, Animated, Easing, TouchableOpacity, TextInput, ScrollView } from 'react-native';
|
|
3
3
|
import Svg, { Path } from 'react-native-svg';
|
|
4
4
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
5
5
|
|
|
@@ -30,9 +30,15 @@ var colors = {
|
|
|
30
30
|
primary: "#B46436",
|
|
31
31
|
black: "#000000",
|
|
32
32
|
white: "#ffffff",
|
|
33
|
+
whiteAlpha86: "#FFFFFFDB",
|
|
34
|
+
whiteAlpha40: "#FFFFFF66",
|
|
35
|
+
whiteAlpha20: "#FFFFFF33",
|
|
36
|
+
whiteAlpha10: "#FFFFFF1A",
|
|
37
|
+
whiteAlpha5: "#FFFFFF0D",
|
|
33
38
|
dark: "#090909",
|
|
34
39
|
red: "#A63E3E",
|
|
35
40
|
lightGrey: "#B7B7B7",
|
|
41
|
+
green: "#34A853",
|
|
36
42
|
primaryMuted: "#B464360F",
|
|
37
43
|
primaryHover: "#B4643633",
|
|
38
44
|
redMuted: "#A63E3E0F",
|
|
@@ -74,6 +80,71 @@ var buttonTypography = {
|
|
|
74
80
|
letterSpacing: 0.36
|
|
75
81
|
}
|
|
76
82
|
};
|
|
83
|
+
var badgeTypography = {
|
|
84
|
+
fontFamily: fonts.sans,
|
|
85
|
+
fontSize: 14,
|
|
86
|
+
fontWeight: "400",
|
|
87
|
+
lineHeight: 16,
|
|
88
|
+
letterSpacing: 0
|
|
89
|
+
};
|
|
90
|
+
var statCardTypography = {
|
|
91
|
+
fontFamily: fonts.sans,
|
|
92
|
+
fontSize: 16,
|
|
93
|
+
fontWeight: "500",
|
|
94
|
+
lineHeight: 16,
|
|
95
|
+
letterSpacing: 0
|
|
96
|
+
};
|
|
97
|
+
var segmentedToggleTypography = {
|
|
98
|
+
fontFamily: fonts.sans,
|
|
99
|
+
fontSize: 14,
|
|
100
|
+
fontWeight: "500",
|
|
101
|
+
lineHeight: 14,
|
|
102
|
+
letterSpacing: 0
|
|
103
|
+
};
|
|
104
|
+
var counterTypography = {
|
|
105
|
+
fontFamily: fonts.sans,
|
|
106
|
+
fontSize: 14,
|
|
107
|
+
fontWeight: "700",
|
|
108
|
+
lineHeight: 14,
|
|
109
|
+
letterSpacing: 0
|
|
110
|
+
};
|
|
111
|
+
var ratingTypography = {
|
|
112
|
+
fontFamily: fonts.sans,
|
|
113
|
+
fontSize: 32,
|
|
114
|
+
fontWeight: "700",
|
|
115
|
+
lineHeight: 35.84,
|
|
116
|
+
letterSpacing: 0
|
|
117
|
+
};
|
|
118
|
+
var commentCardTypography = {
|
|
119
|
+
name: {
|
|
120
|
+
fontFamily: fonts.sans,
|
|
121
|
+
fontSize: 16,
|
|
122
|
+
fontWeight: "600",
|
|
123
|
+
lineHeight: 18,
|
|
124
|
+
letterSpacing: 0
|
|
125
|
+
},
|
|
126
|
+
date: {
|
|
127
|
+
fontFamily: fonts.sans,
|
|
128
|
+
fontSize: 14,
|
|
129
|
+
fontWeight: "400",
|
|
130
|
+
lineHeight: 16,
|
|
131
|
+
letterSpacing: 0
|
|
132
|
+
},
|
|
133
|
+
comment: {
|
|
134
|
+
fontFamily: fonts.sans,
|
|
135
|
+
fontSize: 14,
|
|
136
|
+
fontWeight: "400",
|
|
137
|
+
lineHeight: 19,
|
|
138
|
+
letterSpacing: 0
|
|
139
|
+
},
|
|
140
|
+
action: {
|
|
141
|
+
fontFamily: fonts.sans,
|
|
142
|
+
fontSize: 12,
|
|
143
|
+
fontWeight: "700",
|
|
144
|
+
lineHeight: 12,
|
|
145
|
+
letterSpacing: 0
|
|
146
|
+
}
|
|
147
|
+
};
|
|
77
148
|
var inputTypography = {
|
|
78
149
|
label: {
|
|
79
150
|
fontFamily: fonts.sans,
|
|
@@ -521,6 +592,21 @@ function MailIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
|
521
592
|
) });
|
|
522
593
|
}
|
|
523
594
|
|
|
595
|
+
// src/icons/Minus/minusPath.ts
|
|
596
|
+
var MINUS_PATH = "M3.33337 8H12.6667";
|
|
597
|
+
function MinusIcon({ size = 16, color = colors.white, strokeWidth = 2 }) {
|
|
598
|
+
return /* @__PURE__ */ jsx(Svg, { width: size, height: size, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ jsx(
|
|
599
|
+
Path,
|
|
600
|
+
{
|
|
601
|
+
d: MINUS_PATH,
|
|
602
|
+
stroke: color,
|
|
603
|
+
strokeWidth,
|
|
604
|
+
strokeLinecap: "round",
|
|
605
|
+
strokeLinejoin: "round"
|
|
606
|
+
}
|
|
607
|
+
) });
|
|
608
|
+
}
|
|
609
|
+
|
|
524
610
|
// src/icons/Navigate/navigatePath.ts
|
|
525
611
|
var NAVIGATE_PATH = "M5.691 14.2339C11.5836 17.7694 16.2976 13.0554 15.7084 4.21658C6.86968 3.62732 2.15584 8.34151 5.691 14.2339ZM5.691 14.2339C5.69093 14.2338 5.69107 14.234 5.691 14.2339ZM5.691 14.2339L4.16675 15.7576M5.691 14.2339L8.88079 11.0436";
|
|
526
612
|
function NavigateIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
@@ -551,6 +637,21 @@ function PhoneIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
|
551
637
|
) });
|
|
552
638
|
}
|
|
553
639
|
|
|
640
|
+
// src/icons/Plus/plusPath.ts
|
|
641
|
+
var PLUS_PATH = "M8.00004 3.33325V12.6666M3.33337 7.99992H12.6667";
|
|
642
|
+
function PlusIcon({ size = 16, color = colors.white, strokeWidth = 2 }) {
|
|
643
|
+
return /* @__PURE__ */ jsx(Svg, { width: size, height: size, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ jsx(
|
|
644
|
+
Path,
|
|
645
|
+
{
|
|
646
|
+
d: PLUS_PATH,
|
|
647
|
+
stroke: color,
|
|
648
|
+
strokeWidth,
|
|
649
|
+
strokeLinecap: "round",
|
|
650
|
+
strokeLinejoin: "round"
|
|
651
|
+
}
|
|
652
|
+
) });
|
|
653
|
+
}
|
|
654
|
+
|
|
554
655
|
// src/icons/Search/searchPath.ts
|
|
555
656
|
var SEARCH_CIRCLE_PATH = "M9.16667 15.8333C12.8486 15.8333 15.8333 12.8486 15.8333 9.16667C15.8333 5.48477 12.8486 2.5 9.16667 2.5C5.48477 2.5 2.5 5.48477 2.5 9.16667C2.5 12.8486 5.48477 15.8333 9.16667 15.8333Z";
|
|
556
657
|
var SEARCH_HANDLE_PATH = "M17.5 17.5L13.875 13.875";
|
|
@@ -626,6 +727,62 @@ function ShowIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
|
626
727
|
] });
|
|
627
728
|
}
|
|
628
729
|
|
|
730
|
+
// src/icons/Sidebar/sidebarPath.ts
|
|
731
|
+
var SIDEBAR_PATH = "M12.5 2.5V17.5M6.5 2.5H13.5C14.9001 2.5 15.6002 2.5 16.135 2.77248C16.6054 3.01217 16.9878 3.39462 17.2275 3.86502C17.5 4.3998 17.5 5.09987 17.5 6.5V13.5C17.5 14.9001 17.5 15.6002 17.2275 16.135C16.9878 16.6054 16.6054 16.9878 16.135 17.2275C15.6002 17.5 14.9001 17.5 13.5 17.5H6.5C5.09987 17.5 4.3998 17.5 3.86502 17.2275C3.39462 16.9878 3.01217 16.6054 2.77248 16.135C2.5 15.6002 2.5 14.9001 2.5 13.5V6.5C2.5 5.09987 2.5 4.3998 2.77248 3.86502C3.01217 3.39462 3.39462 3.01217 3.86502 2.77248C4.3998 2.5 5.09987 2.5 6.5 2.5Z";
|
|
732
|
+
function SidebarIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
733
|
+
return /* @__PURE__ */ jsx(Svg, { width: size, height: size, viewBox: "0 0 20 20", fill: "none", children: /* @__PURE__ */ jsx(
|
|
734
|
+
Path,
|
|
735
|
+
{
|
|
736
|
+
d: SIDEBAR_PATH,
|
|
737
|
+
stroke: color,
|
|
738
|
+
strokeWidth,
|
|
739
|
+
strokeLinecap: "round",
|
|
740
|
+
strokeLinejoin: "round"
|
|
741
|
+
}
|
|
742
|
+
) });
|
|
743
|
+
}
|
|
744
|
+
|
|
745
|
+
// src/icons/Star/starPath.ts
|
|
746
|
+
var STAR_PATH = "M12.6112 2.09824C12.9186 1.47565 13.0722 1.16436 13.2808 1.0649C13.4623 0.978367 13.6732 0.978367 13.8546 1.0649C14.0632 1.16436 14.2169 1.47565 14.5242 2.09824L17.4398 8.00486C17.5305 8.18866 17.5759 8.28056 17.6422 8.35192C17.7009 8.41509 17.7713 8.46628 17.8495 8.50264C17.9378 8.54371 18.0392 8.55854 18.242 8.58818L24.7637 9.54142C25.4505 9.6418 25.7938 9.69199 25.9528 9.85973C26.091 10.0057 26.156 10.2062 26.1297 10.4055C26.0995 10.6346 25.8509 10.8767 25.3537 11.361L20.6363 15.9557C20.4893 16.0989 20.4157 16.1706 20.3683 16.2558C20.3263 16.3312 20.2993 16.4141 20.2889 16.4998C20.2772 16.5966 20.2945 16.6978 20.3292 16.9001L21.4423 23.39C21.5597 24.0745 21.6184 24.4167 21.5081 24.6198C21.4121 24.7965 21.2415 24.9205 21.0438 24.9571C20.8165 24.9992 20.5092 24.8376 19.8945 24.5144L14.0642 21.4483C13.8826 21.3527 13.7917 21.305 13.696 21.2862C13.6113 21.2696 13.5242 21.2696 13.4394 21.2862C13.3437 21.305 13.2529 21.3527 13.0713 21.4483L7.24094 24.5144C6.62626 24.8376 6.31892 24.9992 6.09167 24.9571C5.89395 24.9205 5.72334 24.7965 5.62736 24.6198C5.51704 24.4167 5.57574 24.0745 5.69314 23.39L6.80622 16.9001C6.84092 16.6978 6.85828 16.5966 6.84653 16.4998C6.83614 16.4141 6.80919 16.3312 6.76718 16.2558C6.71974 16.1706 6.64621 16.0989 6.49916 15.9557L1.78179 11.361C1.28459 10.8767 1.03599 10.6346 1.00574 10.4055C0.979423 10.2062 1.04445 10.0057 1.18271 9.85973C1.34162 9.69199 1.685 9.6418 2.37177 9.54142L8.89346 8.58818C9.09627 8.55854 9.19768 8.54371 9.286 8.50264C9.36419 8.46628 9.43459 8.41509 9.49329 8.35192C9.55958 8.28056 9.60495 8.18866 9.69567 8.00486L12.6112 2.09824Z";
|
|
747
|
+
function StarIcon({
|
|
748
|
+
active = false,
|
|
749
|
+
size = 28,
|
|
750
|
+
height,
|
|
751
|
+
color,
|
|
752
|
+
strokeWidth = 2
|
|
753
|
+
}) {
|
|
754
|
+
const resolvedColor = color ?? (active ? "#E38E5E" : colors.grey150);
|
|
755
|
+
return /* @__PURE__ */ jsx(Svg, { width: size, height: height ?? size * 26 / 28, viewBox: "0 0 28 26", fill: "none", children: /* @__PURE__ */ jsx(
|
|
756
|
+
Path,
|
|
757
|
+
{
|
|
758
|
+
d: STAR_PATH,
|
|
759
|
+
fill: active ? resolvedColor : "none",
|
|
760
|
+
stroke: resolvedColor,
|
|
761
|
+
strokeWidth,
|
|
762
|
+
strokeLinecap: "round",
|
|
763
|
+
strokeLinejoin: "round"
|
|
764
|
+
}
|
|
765
|
+
) });
|
|
766
|
+
}
|
|
767
|
+
function StarFilledIcon({
|
|
768
|
+
size = 28,
|
|
769
|
+
height,
|
|
770
|
+
color = "#E38E5E",
|
|
771
|
+
strokeWidth = 2
|
|
772
|
+
}) {
|
|
773
|
+
return /* @__PURE__ */ jsx(Svg, { width: size, height: height ?? size * 26 / 28, viewBox: "0 0 28 26", fill: color, children: /* @__PURE__ */ jsx(
|
|
774
|
+
Path,
|
|
775
|
+
{
|
|
776
|
+
d: STAR_PATH,
|
|
777
|
+
fill: color,
|
|
778
|
+
stroke: color,
|
|
779
|
+
strokeWidth,
|
|
780
|
+
strokeLinecap: "round",
|
|
781
|
+
strokeLinejoin: "round"
|
|
782
|
+
}
|
|
783
|
+
) });
|
|
784
|
+
}
|
|
785
|
+
|
|
629
786
|
// src/icons/User/userPath.ts
|
|
630
787
|
var USER_PATH = "M15.8334 17.5C15.8334 14.2783 13.2217 11.6667 10 11.6667C6.77836 11.6667 4.16669 14.2783 4.16669 17.5M10 9.16667C8.15907 9.16667 6.66669 7.67428 6.66669 5.83333C6.66669 3.99238 8.15907 2.5 10 2.5C11.841 2.5 13.3334 3.99238 13.3334 5.83333C13.3334 7.67428 11.841 9.16667 10 9.16667Z";
|
|
631
788
|
function UserIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
@@ -641,6 +798,12 @@ function UserIcon({ size = 20, color = colors.primary, strokeWidth = 2 }) {
|
|
|
641
798
|
) });
|
|
642
799
|
}
|
|
643
800
|
|
|
801
|
+
// src/icons/UsersAlt/usersAltPath.ts
|
|
802
|
+
var USERS_ALT_PATH = "M14.35 14.2566C14.9725 13.7177 15.4718 13.0513 15.814 12.3024C16.1562 11.5536 16.3333 10.7399 16.3333 9.91659C16.3333 8.36949 15.7187 6.88576 14.6248 5.7918C13.5308 4.69783 12.0471 4.08325 10.5 4.08325C8.95289 4.08325 7.46916 4.69783 6.3752 5.7918C5.28124 6.88576 4.66666 8.36949 4.66666 9.91659C4.66665 10.7399 4.84376 11.5536 5.18597 12.3024C5.52818 13.0513 6.02748 13.7177 6.64999 14.2566C5.01682 14.9961 3.6312 16.1904 2.6588 17.6966C1.6864 19.2027 1.16837 20.9571 1.16666 22.7499C1.16666 23.0593 1.28957 23.3561 1.50837 23.5749C1.72716 23.7937 2.0239 23.9166 2.33332 23.9166C2.64274 23.9166 2.93949 23.7937 3.15828 23.5749C3.37707 23.3561 3.49999 23.0593 3.49999 22.7499C3.49999 20.8934 4.23749 19.1129 5.55024 17.8002C6.863 16.4874 8.64347 15.7499 10.5 15.7499C12.3565 15.7499 14.137 16.4874 15.4497 17.8002C16.7625 19.1129 17.5 20.8934 17.5 22.7499C17.5 23.0593 17.6229 23.3561 17.8417 23.5749C18.0605 23.7937 18.3572 23.9166 18.6667 23.9166C18.9761 23.9166 19.2728 23.7937 19.4916 23.5749C19.7104 23.3561 19.8333 23.0593 19.8333 22.7499C19.8316 20.9571 19.3136 19.2027 18.3412 17.6966C17.3688 16.1904 15.9832 14.9961 14.35 14.2566ZM10.5 13.4166C9.80775 13.4166 9.13107 13.2113 8.55549 12.8267C7.97992 12.4421 7.53132 11.8955 7.26641 11.256C7.0015 10.6164 6.93219 9.9127 7.06724 9.23377C7.20229 8.55484 7.53563 7.9312 8.02512 7.44171C8.5146 6.95223 9.13824 6.61889 9.81717 6.48384C10.4961 6.34879 11.1998 6.4181 11.8394 6.68301C12.4789 6.94791 13.0255 7.39652 13.4101 7.97209C13.7947 8.54766 14 9.22435 14 9.91659C14 10.8448 13.6312 11.7351 12.9749 12.3915C12.3185 13.0478 11.4282 13.4166 10.5 13.4166ZM21.8633 13.7899C22.61 12.9491 23.0977 11.9105 23.2678 10.799C23.4378 9.68748 23.2831 8.55051 22.822 7.52492C22.361 6.49933 21.6134 5.62885 20.6692 5.01825C19.725 4.40764 18.6244 4.08295 17.5 4.08325C17.1906 4.08325 16.8938 4.20617 16.675 4.42496C16.4562 4.64375 16.3333 4.9405 16.3333 5.24992C16.3333 5.55934 16.4562 5.85608 16.675 6.07488C16.8938 6.29367 17.1906 6.41659 17.5 6.41659C18.4282 6.41659 19.3185 6.78533 19.9749 7.44171C20.6312 8.09809 21 8.98833 21 9.91659C20.9983 10.5294 20.8358 11.131 20.5287 11.6612C20.2216 12.1915 19.7807 12.6319 19.25 12.9383C19.077 13.038 18.9325 13.1805 18.8304 13.3521C18.7283 13.5237 18.6719 13.7186 18.6667 13.9183C18.6618 14.1163 18.7074 14.3123 18.7993 14.4879C18.8911 14.6634 19.0262 14.8127 19.1917 14.9216L19.6467 15.2249L19.7983 15.3066C21.2046 15.9736 22.391 17.0286 23.2178 18.3473C24.0446 19.666 24.4773 21.1935 24.465 22.7499C24.465 23.0593 24.5879 23.3561 24.8067 23.5749C25.0255 23.7937 25.3222 23.9166 25.6317 23.9166C25.9411 23.9166 26.2378 23.7937 26.4566 23.5749C26.6754 23.3561 26.7983 23.0593 26.7983 22.7499C26.8079 20.9596 26.3594 19.1965 25.4957 17.6283C24.632 16.0601 23.3816 14.7388 21.8633 13.7899Z";
|
|
803
|
+
function UsersAltIcon({ size = 28, color = colors.white }) {
|
|
804
|
+
return /* @__PURE__ */ jsx(Svg, { width: size, height: size, viewBox: "0 0 28 28", fill: "none", children: /* @__PURE__ */ jsx(Path, { d: USERS_ALT_PATH, fill: color }) });
|
|
805
|
+
}
|
|
806
|
+
|
|
644
807
|
// src/icons/Video/videoPath.ts
|
|
645
808
|
var VIDEO_PATHS = [
|
|
646
809
|
"M14.6667 5.95424C14.6667 5.55036 14.6667 5.34843 14.5868 5.25492C14.5175 5.17378 14.4136 5.13072 14.3072 5.13909C14.1846 5.14874 14.0418 5.29153 13.7563 5.57712L11.3334 7.99999L13.7563 10.4229C14.0418 10.7085 14.1846 10.8512 14.3072 10.8609C14.4136 10.8693 14.5175 10.8262 14.5868 10.7451C14.6667 10.6516 14.6667 10.4496 14.6667 10.0457V5.95424Z",
|
|
@@ -684,12 +847,18 @@ var icons = {
|
|
|
684
847
|
linkedin: LinkedInIcon,
|
|
685
848
|
logOut: LogOutIcon,
|
|
686
849
|
mail: MailIcon,
|
|
850
|
+
minus: MinusIcon,
|
|
687
851
|
navigate: NavigateIcon,
|
|
688
852
|
phone: PhoneIcon,
|
|
853
|
+
plus: PlusIcon,
|
|
689
854
|
search: SearchIcon,
|
|
690
855
|
settings: SettingsIcon,
|
|
691
856
|
show: ShowIcon,
|
|
857
|
+
sidebar: SidebarIcon,
|
|
858
|
+
star: StarIcon,
|
|
859
|
+
starFilled: StarFilledIcon,
|
|
692
860
|
user: UserIcon,
|
|
861
|
+
usersAlt: UsersAltIcon,
|
|
693
862
|
video: VideoIcon
|
|
694
863
|
};
|
|
695
864
|
var iconNames = Object.keys(icons);
|
|
@@ -705,12 +874,16 @@ var iconGroups = {
|
|
|
705
874
|
"search",
|
|
706
875
|
"calendar",
|
|
707
876
|
"calendarOutline",
|
|
708
|
-
"heart"
|
|
877
|
+
"heart",
|
|
878
|
+
"star",
|
|
879
|
+
"starFilled",
|
|
880
|
+
"minus",
|
|
881
|
+
"plus"
|
|
709
882
|
],
|
|
710
|
-
objects: ["bag", "building", "clock", "user", "video"],
|
|
883
|
+
objects: ["bag", "building", "clock", "user", "usersAlt", "video"],
|
|
711
884
|
communication: ["mail", "phone"],
|
|
712
885
|
social: ["facebook", "instagram", "linkedin"],
|
|
713
|
-
interface: ["layoutGrid", "settings", "helpCircle", "logOut"]
|
|
886
|
+
interface: ["layoutGrid", "sidebar", "settings", "helpCircle", "logOut"]
|
|
714
887
|
};
|
|
715
888
|
var iconGroupNames = Object.keys(iconGroups);
|
|
716
889
|
function getIconsByGroup(group) {
|
|
@@ -1087,7 +1260,394 @@ var styles2 = StyleSheet.create({
|
|
|
1087
1260
|
})
|
|
1088
1261
|
}
|
|
1089
1262
|
});
|
|
1263
|
+
var ICON_SIZE2 = 20;
|
|
1264
|
+
var webBlurStyle = Platform.OS === "web" ? {
|
|
1265
|
+
backdropFilter: "blur(10.3px)",
|
|
1266
|
+
WebkitBackdropFilter: "blur(10.3px)"
|
|
1267
|
+
} : {};
|
|
1090
1268
|
var variantConfig = {
|
|
1269
|
+
default: {
|
|
1270
|
+
backgroundColor: colors.grey750,
|
|
1271
|
+
iconColor: colors.white,
|
|
1272
|
+
border: false,
|
|
1273
|
+
blur: false
|
|
1274
|
+
},
|
|
1275
|
+
transparent: {
|
|
1276
|
+
backgroundColor: colors.whiteAlpha5,
|
|
1277
|
+
iconColor: colors.primary,
|
|
1278
|
+
border: true,
|
|
1279
|
+
blur: true
|
|
1280
|
+
}
|
|
1281
|
+
};
|
|
1282
|
+
var Badge = forwardRef(function Badge2({ label, variant = "default", icon: Icon2, style, className, accessibilityLabel, ...rest }, forwardedRef) {
|
|
1283
|
+
const containerRef = useRef(null);
|
|
1284
|
+
const preset = variantConfig[variant];
|
|
1285
|
+
const resolvedClassName = className?.trim() || void 0;
|
|
1286
|
+
const setContainerRef = useMemo(() => mergeRefs(containerRef, forwardedRef), [forwardedRef]);
|
|
1287
|
+
useApplyWebClassName(containerRef, resolvedClassName);
|
|
1288
|
+
return /* @__PURE__ */ jsxs(
|
|
1289
|
+
View,
|
|
1290
|
+
{
|
|
1291
|
+
...rest,
|
|
1292
|
+
ref: setContainerRef,
|
|
1293
|
+
style: [
|
|
1294
|
+
styles3.base,
|
|
1295
|
+
{ backgroundColor: preset.backgroundColor },
|
|
1296
|
+
preset.border ? styles3.transparentBorder : null,
|
|
1297
|
+
preset.blur ? webBlurStyle : null,
|
|
1298
|
+
style
|
|
1299
|
+
],
|
|
1300
|
+
accessibilityRole: "text",
|
|
1301
|
+
accessibilityLabel: accessibilityLabel ?? label,
|
|
1302
|
+
children: [
|
|
1303
|
+
Icon2 ? /* @__PURE__ */ jsx(View, { style: styles3.iconSlot, children: /* @__PURE__ */ jsx(Icon2, { size: ICON_SIZE2, color: preset.iconColor }) }) : null,
|
|
1304
|
+
/* @__PURE__ */ jsx(Text, { style: [styles3.label, Platform.OS === "android" ? styles3.labelAndroid : null], children: label })
|
|
1305
|
+
]
|
|
1306
|
+
}
|
|
1307
|
+
);
|
|
1308
|
+
});
|
|
1309
|
+
var styles3 = StyleSheet.create({
|
|
1310
|
+
base: {
|
|
1311
|
+
flexDirection: "row",
|
|
1312
|
+
alignItems: "center",
|
|
1313
|
+
alignSelf: "flex-start",
|
|
1314
|
+
minHeight: 44,
|
|
1315
|
+
paddingVertical: 12,
|
|
1316
|
+
paddingHorizontal: 16,
|
|
1317
|
+
gap: 12,
|
|
1318
|
+
borderRadius: 79,
|
|
1319
|
+
overflow: "hidden",
|
|
1320
|
+
borderWidth: 0,
|
|
1321
|
+
borderColor: "transparent",
|
|
1322
|
+
borderStyle: "solid"
|
|
1323
|
+
},
|
|
1324
|
+
transparentBorder: {
|
|
1325
|
+
borderWidth: 1,
|
|
1326
|
+
borderColor: colors.whiteAlpha5,
|
|
1327
|
+
borderStyle: "solid"
|
|
1328
|
+
},
|
|
1329
|
+
iconSlot: {
|
|
1330
|
+
width: ICON_SIZE2,
|
|
1331
|
+
height: ICON_SIZE2,
|
|
1332
|
+
alignItems: "center",
|
|
1333
|
+
justifyContent: "center",
|
|
1334
|
+
flexShrink: 0
|
|
1335
|
+
},
|
|
1336
|
+
label: {
|
|
1337
|
+
...badgeTypography,
|
|
1338
|
+
color: colors.white
|
|
1339
|
+
},
|
|
1340
|
+
labelAndroid: {
|
|
1341
|
+
includeFontPadding: false
|
|
1342
|
+
}
|
|
1343
|
+
});
|
|
1344
|
+
var BUTTON_SIZE = 32;
|
|
1345
|
+
var webBlurStyle2 = Platform.OS === "web" ? {
|
|
1346
|
+
backdropFilter: "blur(20px)",
|
|
1347
|
+
WebkitBackdropFilter: "blur(20px)"
|
|
1348
|
+
} : {};
|
|
1349
|
+
function clamp(value, min, max) {
|
|
1350
|
+
return Math.max(min, max === void 0 ? value : Math.min(value, max));
|
|
1351
|
+
}
|
|
1352
|
+
var Counter = forwardRef(function Counter2({
|
|
1353
|
+
value,
|
|
1354
|
+
defaultValue,
|
|
1355
|
+
onValueChange,
|
|
1356
|
+
min = 1,
|
|
1357
|
+
max,
|
|
1358
|
+
step = 1,
|
|
1359
|
+
disabled = false,
|
|
1360
|
+
style,
|
|
1361
|
+
className,
|
|
1362
|
+
hitSlop,
|
|
1363
|
+
...rest
|
|
1364
|
+
}, forwardedRef) {
|
|
1365
|
+
const containerRef = useRef(null);
|
|
1366
|
+
const isControlled = value !== void 0;
|
|
1367
|
+
const [uncontrolledValue, setUncontrolledValue] = useState(
|
|
1368
|
+
() => clamp(defaultValue ?? min, min, max)
|
|
1369
|
+
);
|
|
1370
|
+
const resolvedValue = clamp(isControlled ? value : uncontrolledValue, min, max);
|
|
1371
|
+
const resolvedClassName = className?.trim() || void 0;
|
|
1372
|
+
const setContainerRef = useMemo(() => mergeRefs(containerRef, forwardedRef), [forwardedRef]);
|
|
1373
|
+
const decrementDisabled = disabled || resolvedValue <= min;
|
|
1374
|
+
const incrementDisabled = disabled || max !== void 0 && resolvedValue >= max;
|
|
1375
|
+
useApplyWebClassName(containerRef, resolvedClassName);
|
|
1376
|
+
const updateValue = (nextValue) => {
|
|
1377
|
+
const next = clamp(nextValue, min, max);
|
|
1378
|
+
if (next === resolvedValue) return;
|
|
1379
|
+
if (!isControlled) setUncontrolledValue(next);
|
|
1380
|
+
onValueChange?.(next);
|
|
1381
|
+
};
|
|
1382
|
+
return /* @__PURE__ */ jsxs(View, { ...rest, ref: setContainerRef, style: [styles4.base, style], children: [
|
|
1383
|
+
/* @__PURE__ */ jsx(
|
|
1384
|
+
Pressable,
|
|
1385
|
+
{
|
|
1386
|
+
disabled: decrementDisabled,
|
|
1387
|
+
hitSlop,
|
|
1388
|
+
onPress: () => updateValue(resolvedValue - step),
|
|
1389
|
+
accessibilityRole: "button",
|
|
1390
|
+
accessibilityLabel: "Decrease value",
|
|
1391
|
+
accessibilityState: { disabled: decrementDisabled },
|
|
1392
|
+
style: [styles4.button, webBlurStyle2, decrementDisabled && styles4.buttonDisabled],
|
|
1393
|
+
children: /* @__PURE__ */ jsx(MinusIcon, {})
|
|
1394
|
+
}
|
|
1395
|
+
),
|
|
1396
|
+
/* @__PURE__ */ jsx(Text, { style: styles4.value, children: resolvedValue }),
|
|
1397
|
+
/* @__PURE__ */ jsx(
|
|
1398
|
+
Pressable,
|
|
1399
|
+
{
|
|
1400
|
+
disabled: incrementDisabled,
|
|
1401
|
+
hitSlop,
|
|
1402
|
+
onPress: () => updateValue(resolvedValue + step),
|
|
1403
|
+
accessibilityRole: "button",
|
|
1404
|
+
accessibilityLabel: "Increase value",
|
|
1405
|
+
accessibilityState: { disabled: incrementDisabled },
|
|
1406
|
+
style: [styles4.button, webBlurStyle2, incrementDisabled && styles4.buttonDisabled],
|
|
1407
|
+
children: /* @__PURE__ */ jsx(PlusIcon, {})
|
|
1408
|
+
}
|
|
1409
|
+
)
|
|
1410
|
+
] });
|
|
1411
|
+
});
|
|
1412
|
+
var styles4 = StyleSheet.create({
|
|
1413
|
+
base: {
|
|
1414
|
+
flexDirection: "row",
|
|
1415
|
+
alignItems: "center",
|
|
1416
|
+
alignSelf: "flex-start",
|
|
1417
|
+
gap: 17
|
|
1418
|
+
},
|
|
1419
|
+
button: {
|
|
1420
|
+
width: BUTTON_SIZE,
|
|
1421
|
+
height: BUTTON_SIZE,
|
|
1422
|
+
alignItems: "center",
|
|
1423
|
+
justifyContent: "center",
|
|
1424
|
+
borderWidth: 1,
|
|
1425
|
+
borderColor: colors.whiteAlpha10,
|
|
1426
|
+
borderRadius: 39
|
|
1427
|
+
},
|
|
1428
|
+
buttonDisabled: {
|
|
1429
|
+
opacity: 0.25
|
|
1430
|
+
},
|
|
1431
|
+
value: {
|
|
1432
|
+
...counterTypography,
|
|
1433
|
+
color: colors.white
|
|
1434
|
+
}
|
|
1435
|
+
});
|
|
1436
|
+
var ICON_SIZE3 = 20;
|
|
1437
|
+
var ANIMATION_DURATION = 200;
|
|
1438
|
+
var SegmentedToggle = forwardRef(
|
|
1439
|
+
function SegmentedToggle2({
|
|
1440
|
+
options,
|
|
1441
|
+
value,
|
|
1442
|
+
defaultValue = options[0].value,
|
|
1443
|
+
onValueChange,
|
|
1444
|
+
fullWidth = true,
|
|
1445
|
+
disabled = false,
|
|
1446
|
+
style,
|
|
1447
|
+
className,
|
|
1448
|
+
hitSlop,
|
|
1449
|
+
onLayout,
|
|
1450
|
+
...rest
|
|
1451
|
+
}, forwardedRef) {
|
|
1452
|
+
const containerRef = useRef(null);
|
|
1453
|
+
const isControlled = value !== void 0;
|
|
1454
|
+
const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue);
|
|
1455
|
+
const selectedValue = isControlled ? value : uncontrolledValue;
|
|
1456
|
+
const selectedIndex = Math.max(
|
|
1457
|
+
0,
|
|
1458
|
+
options.findIndex(({ value: optionValue }) => optionValue === selectedValue)
|
|
1459
|
+
);
|
|
1460
|
+
const resolvedClassName = className?.trim() || void 0;
|
|
1461
|
+
const setContainerRef = useMemo(() => mergeRefs(containerRef, forwardedRef), [forwardedRef]);
|
|
1462
|
+
const progress = useRef(new Animated.Value(selectedIndex)).current;
|
|
1463
|
+
const [contentWidths, setContentWidths] = useState([0, 0]);
|
|
1464
|
+
const [containerWidth, setContainerWidth] = useState(0);
|
|
1465
|
+
const availableOptionWidth = Math.max(0, (containerWidth - 12) / 2);
|
|
1466
|
+
const widestContentWidth = Math.max(...contentWidths);
|
|
1467
|
+
const contentBasedOptionWidth = widestContentWidth > 0 ? widestContentWidth + 24 * 2 : 0;
|
|
1468
|
+
const optionWidth = fullWidth ? availableOptionWidth : contentBasedOptionWidth;
|
|
1469
|
+
const indicatorTranslateX = progress.interpolate({
|
|
1470
|
+
inputRange: [0, 1],
|
|
1471
|
+
outputRange: [0, optionWidth + 4]
|
|
1472
|
+
});
|
|
1473
|
+
useApplyWebClassName(containerRef, resolvedClassName);
|
|
1474
|
+
useEffect(() => {
|
|
1475
|
+
const animation = Animated.timing(progress, {
|
|
1476
|
+
toValue: selectedIndex,
|
|
1477
|
+
duration: ANIMATION_DURATION,
|
|
1478
|
+
easing: Easing.out(Easing.cubic),
|
|
1479
|
+
useNativeDriver: true
|
|
1480
|
+
});
|
|
1481
|
+
animation.start();
|
|
1482
|
+
return () => animation.stop();
|
|
1483
|
+
}, [progress, selectedIndex]);
|
|
1484
|
+
const selectOption = (nextValue) => {
|
|
1485
|
+
if (disabled || nextValue === selectedValue) return;
|
|
1486
|
+
if (!isControlled) setUncontrolledValue(nextValue);
|
|
1487
|
+
onValueChange?.(nextValue);
|
|
1488
|
+
};
|
|
1489
|
+
return /* @__PURE__ */ jsxs(
|
|
1490
|
+
View,
|
|
1491
|
+
{
|
|
1492
|
+
...rest,
|
|
1493
|
+
ref: setContainerRef,
|
|
1494
|
+
onLayout: (event) => {
|
|
1495
|
+
const nextWidth = event.nativeEvent.layout.width;
|
|
1496
|
+
setContainerWidth(
|
|
1497
|
+
(currentWidth) => currentWidth === nextWidth ? currentWidth : nextWidth
|
|
1498
|
+
);
|
|
1499
|
+
onLayout?.(event);
|
|
1500
|
+
},
|
|
1501
|
+
style: [
|
|
1502
|
+
styles5.base,
|
|
1503
|
+
fullWidth ? styles5.fullWidth : styles5.contentWidth,
|
|
1504
|
+
disabled && styles5.disabled,
|
|
1505
|
+
style
|
|
1506
|
+
],
|
|
1507
|
+
accessibilityRole: "radiogroup",
|
|
1508
|
+
children: [
|
|
1509
|
+
optionWidth > 0 ? /* @__PURE__ */ jsx(
|
|
1510
|
+
Animated.View,
|
|
1511
|
+
{
|
|
1512
|
+
pointerEvents: "none",
|
|
1513
|
+
style: [
|
|
1514
|
+
styles5.activeIndicator,
|
|
1515
|
+
{ width: optionWidth, transform: [{ translateX: indicatorTranslateX }] }
|
|
1516
|
+
]
|
|
1517
|
+
}
|
|
1518
|
+
) : null,
|
|
1519
|
+
options.map(({ value: optionValue, label, icon: Icon2 }, index) => {
|
|
1520
|
+
const selected = optionValue === selectedValue;
|
|
1521
|
+
const iconColor = selected ? colors.primary : colors.whiteAlpha20;
|
|
1522
|
+
const labelColor = selected ? colors.whiteAlpha86 : colors.whiteAlpha40;
|
|
1523
|
+
return /* @__PURE__ */ jsx(
|
|
1524
|
+
Pressable,
|
|
1525
|
+
{
|
|
1526
|
+
onPress: () => selectOption(optionValue),
|
|
1527
|
+
disabled,
|
|
1528
|
+
hitSlop,
|
|
1529
|
+
accessibilityRole: "radio",
|
|
1530
|
+
accessibilityLabel: label,
|
|
1531
|
+
accessibilityState: { selected, disabled },
|
|
1532
|
+
style: [
|
|
1533
|
+
styles5.option,
|
|
1534
|
+
fullWidth ? styles5.optionFullWidth : optionWidth > 0 && { minWidth: optionWidth }
|
|
1535
|
+
],
|
|
1536
|
+
children: /* @__PURE__ */ jsxs(
|
|
1537
|
+
View,
|
|
1538
|
+
{
|
|
1539
|
+
onLayout: (event) => {
|
|
1540
|
+
const nextWidth = event.nativeEvent.layout.width;
|
|
1541
|
+
setContentWidths((currentWidths) => {
|
|
1542
|
+
if (currentWidths[index] === nextWidth) return currentWidths;
|
|
1543
|
+
const nextWidths = [currentWidths[0], currentWidths[1]];
|
|
1544
|
+
nextWidths[index] = nextWidth;
|
|
1545
|
+
return nextWidths;
|
|
1546
|
+
});
|
|
1547
|
+
},
|
|
1548
|
+
style: styles5.optionContent,
|
|
1549
|
+
children: [
|
|
1550
|
+
Icon2 ? /* @__PURE__ */ jsx(Icon2, { size: ICON_SIZE3, color: iconColor }) : null,
|
|
1551
|
+
/* @__PURE__ */ jsx(Text, { numberOfLines: 1, style: [styles5.label, { color: labelColor }], children: label })
|
|
1552
|
+
]
|
|
1553
|
+
}
|
|
1554
|
+
)
|
|
1555
|
+
},
|
|
1556
|
+
optionValue
|
|
1557
|
+
);
|
|
1558
|
+
})
|
|
1559
|
+
]
|
|
1560
|
+
}
|
|
1561
|
+
);
|
|
1562
|
+
}
|
|
1563
|
+
);
|
|
1564
|
+
var styles5 = StyleSheet.create({
|
|
1565
|
+
base: {
|
|
1566
|
+
height: 44,
|
|
1567
|
+
flexDirection: "row",
|
|
1568
|
+
padding: 4,
|
|
1569
|
+
gap: 4,
|
|
1570
|
+
borderRadius: 60,
|
|
1571
|
+
backgroundColor: colors.grey700,
|
|
1572
|
+
overflow: "hidden"
|
|
1573
|
+
},
|
|
1574
|
+
fullWidth: {
|
|
1575
|
+
width: "100%",
|
|
1576
|
+
alignSelf: "stretch"
|
|
1577
|
+
},
|
|
1578
|
+
contentWidth: {
|
|
1579
|
+
alignSelf: "flex-start"
|
|
1580
|
+
},
|
|
1581
|
+
disabled: {
|
|
1582
|
+
opacity: 0.6
|
|
1583
|
+
},
|
|
1584
|
+
option: {
|
|
1585
|
+
zIndex: 1,
|
|
1586
|
+
flexDirection: "row",
|
|
1587
|
+
alignItems: "center",
|
|
1588
|
+
justifyContent: "center",
|
|
1589
|
+
paddingHorizontal: 24,
|
|
1590
|
+
borderRadius: 60
|
|
1591
|
+
},
|
|
1592
|
+
optionContent: {
|
|
1593
|
+
maxWidth: "100%",
|
|
1594
|
+
flexDirection: "row",
|
|
1595
|
+
alignItems: "center",
|
|
1596
|
+
gap: 12
|
|
1597
|
+
},
|
|
1598
|
+
optionFullWidth: {
|
|
1599
|
+
flex: 1,
|
|
1600
|
+
minWidth: 0
|
|
1601
|
+
},
|
|
1602
|
+
activeIndicator: {
|
|
1603
|
+
position: "absolute",
|
|
1604
|
+
top: 4,
|
|
1605
|
+
left: 4,
|
|
1606
|
+
height: 36,
|
|
1607
|
+
backgroundColor: colors.grey600,
|
|
1608
|
+
borderRadius: 60
|
|
1609
|
+
},
|
|
1610
|
+
label: {
|
|
1611
|
+
...segmentedToggleTypography,
|
|
1612
|
+
flexShrink: 1
|
|
1613
|
+
}
|
|
1614
|
+
});
|
|
1615
|
+
var ICON_SIZE4 = 28;
|
|
1616
|
+
var StatCard = forwardRef(function StatCard2({ label, icon: Icon2, style, className, accessibilityLabel, ...rest }, forwardedRef) {
|
|
1617
|
+
const containerRef = useRef(null);
|
|
1618
|
+
const resolvedClassName = className?.trim() || void 0;
|
|
1619
|
+
const setContainerRef = useMemo(() => mergeRefs(containerRef, forwardedRef), [forwardedRef]);
|
|
1620
|
+
useApplyWebClassName(containerRef, resolvedClassName);
|
|
1621
|
+
return /* @__PURE__ */ jsxs(
|
|
1622
|
+
View,
|
|
1623
|
+
{
|
|
1624
|
+
...rest,
|
|
1625
|
+
ref: setContainerRef,
|
|
1626
|
+
style: [styles6.base, style],
|
|
1627
|
+
accessibilityRole: "text",
|
|
1628
|
+
accessibilityLabel: accessibilityLabel ?? label,
|
|
1629
|
+
children: [
|
|
1630
|
+
/* @__PURE__ */ jsx(Icon2, { size: ICON_SIZE4, color: colors.white }),
|
|
1631
|
+
/* @__PURE__ */ jsx(Text, { style: styles6.label, children: label })
|
|
1632
|
+
]
|
|
1633
|
+
}
|
|
1634
|
+
);
|
|
1635
|
+
});
|
|
1636
|
+
var styles6 = StyleSheet.create({
|
|
1637
|
+
base: {
|
|
1638
|
+
width: 204.5,
|
|
1639
|
+
minHeight: 114,
|
|
1640
|
+
padding: 24,
|
|
1641
|
+
gap: 16,
|
|
1642
|
+
borderRadius: 20,
|
|
1643
|
+
backgroundColor: colors.grey750
|
|
1644
|
+
},
|
|
1645
|
+
label: {
|
|
1646
|
+
...statCardTypography,
|
|
1647
|
+
color: colors.whiteAlpha86
|
|
1648
|
+
}
|
|
1649
|
+
});
|
|
1650
|
+
var variantConfig2 = {
|
|
1091
1651
|
primary: {
|
|
1092
1652
|
backgroundColor: colors.primary,
|
|
1093
1653
|
textColor: colors.white,
|
|
@@ -1146,7 +1706,7 @@ var Button = forwardRef(
|
|
|
1146
1706
|
}, forwardedRef) {
|
|
1147
1707
|
const containerRef = useRef(null);
|
|
1148
1708
|
const textRef = useRef(null);
|
|
1149
|
-
const preset =
|
|
1709
|
+
const preset = variantConfig2[variant];
|
|
1150
1710
|
const metrics = sizeConfig[size];
|
|
1151
1711
|
const label = typeof children !== "undefined" ? children : title;
|
|
1152
1712
|
const hasCustomChildren = typeof children !== "undefined";
|
|
@@ -1159,7 +1719,7 @@ var Button = forwardRef(
|
|
|
1159
1719
|
useApplyWebClassName(textRef, textClassName);
|
|
1160
1720
|
const iconNode = customIcon ?? /* @__PURE__ */ jsx(ArrowRightIcon, { size: metrics.iconSize, color: preset.iconColor });
|
|
1161
1721
|
const containerStyle = [
|
|
1162
|
-
|
|
1722
|
+
styles7.base,
|
|
1163
1723
|
{
|
|
1164
1724
|
minHeight: metrics.minHeight,
|
|
1165
1725
|
borderRadius: metrics.borderRadius,
|
|
@@ -1170,15 +1730,15 @@ var Button = forwardRef(
|
|
|
1170
1730
|
paddingRight: hasIcon ? metrics.paddingRightWithIcon : metrics.paddingRight,
|
|
1171
1731
|
gap: hasIcon ? metrics.gap : 0
|
|
1172
1732
|
},
|
|
1173
|
-
disabled &&
|
|
1733
|
+
disabled && styles7.disabled,
|
|
1174
1734
|
style
|
|
1175
1735
|
];
|
|
1176
1736
|
const labelStyle = [
|
|
1177
|
-
|
|
1737
|
+
styles7.label,
|
|
1178
1738
|
metrics.text,
|
|
1179
1739
|
{ color: preset.textColor },
|
|
1180
|
-
Platform.OS === "android" ?
|
|
1181
|
-
!hasIcon &&
|
|
1740
|
+
Platform.OS === "android" ? styles7.labelAndroid : null,
|
|
1741
|
+
!hasIcon && styles7.labelCentered,
|
|
1182
1742
|
textStyle
|
|
1183
1743
|
];
|
|
1184
1744
|
return /* @__PURE__ */ jsxs(
|
|
@@ -1199,7 +1759,7 @@ var Button = forwardRef(
|
|
|
1199
1759
|
View,
|
|
1200
1760
|
{
|
|
1201
1761
|
style: [
|
|
1202
|
-
|
|
1762
|
+
styles7.iconContainer,
|
|
1203
1763
|
{
|
|
1204
1764
|
width: metrics.iconContainerSize,
|
|
1205
1765
|
height: metrics.iconContainerSize,
|
|
@@ -1215,7 +1775,7 @@ var Button = forwardRef(
|
|
|
1215
1775
|
);
|
|
1216
1776
|
}
|
|
1217
1777
|
);
|
|
1218
|
-
var
|
|
1778
|
+
var styles7 = StyleSheet.create({
|
|
1219
1779
|
base: {
|
|
1220
1780
|
flexDirection: "row",
|
|
1221
1781
|
alignItems: "center",
|
|
@@ -1293,13 +1853,13 @@ var Checkbox = forwardRef(function Checkbox2({
|
|
|
1293
1853
|
accessibilityRole: "checkbox",
|
|
1294
1854
|
accessibilityLabel: resolvedAccessibilityLabel,
|
|
1295
1855
|
accessibilityState: { checked: isActive, disabled },
|
|
1296
|
-
style: [
|
|
1856
|
+
style: [styles8.root, disabled && styles8.disabled, style],
|
|
1297
1857
|
children: [
|
|
1298
1858
|
/* @__PURE__ */ jsx(
|
|
1299
1859
|
View,
|
|
1300
1860
|
{
|
|
1301
1861
|
style: [
|
|
1302
|
-
|
|
1862
|
+
styles8.box,
|
|
1303
1863
|
{
|
|
1304
1864
|
backgroundColor: chrome.backgroundColor,
|
|
1305
1865
|
borderColor: chrome.borderColor
|
|
@@ -1308,12 +1868,12 @@ var Checkbox = forwardRef(function Checkbox2({
|
|
|
1308
1868
|
children: isActive ? /* @__PURE__ */ jsx(CheckIcon, { size: CHECK_SIZE, color: colors.primary, strokeWidth: CHECK_STROKE }) : null
|
|
1309
1869
|
}
|
|
1310
1870
|
),
|
|
1311
|
-
labelContent != null && labelContent !== false ? typeof labelContent === "string" || typeof labelContent === "number" ? /* @__PURE__ */ jsx(Text, { style: [
|
|
1871
|
+
labelContent != null && labelContent !== false ? typeof labelContent === "string" || typeof labelContent === "number" ? /* @__PURE__ */ jsx(Text, { style: [styles8.label, labelStyle], children: labelContent }) : labelContent : null
|
|
1312
1872
|
]
|
|
1313
1873
|
}
|
|
1314
1874
|
);
|
|
1315
1875
|
});
|
|
1316
|
-
var
|
|
1876
|
+
var styles8 = StyleSheet.create({
|
|
1317
1877
|
root: {
|
|
1318
1878
|
flexDirection: "row",
|
|
1319
1879
|
alignItems: "center",
|
|
@@ -1411,7 +1971,7 @@ var DEFAULT_WIDTH = 380;
|
|
|
1411
1971
|
var TRIGGER_HEIGHT = 44;
|
|
1412
1972
|
var TRIGGER_RADIUS = 60;
|
|
1413
1973
|
var MENU_RADIUS2 = 20;
|
|
1414
|
-
var
|
|
1974
|
+
var ICON_SIZE5 = 20;
|
|
1415
1975
|
var NAV_ICON_SIZE = 20;
|
|
1416
1976
|
var DAY_CELL_HEIGHT = 44;
|
|
1417
1977
|
var DAY_CIRCLE_SIZE = 44;
|
|
@@ -1563,9 +2123,9 @@ var DatePicker = forwardRef(
|
|
|
1563
2123
|
{
|
|
1564
2124
|
...rest,
|
|
1565
2125
|
ref: setRootRef,
|
|
1566
|
-
style: [
|
|
2126
|
+
style: [styles9.root, isOpen && styles9.rootOpen, disabled && styles9.disabled, style],
|
|
1567
2127
|
accessibilityState: { disabled, expanded: isOpen },
|
|
1568
|
-
children: /* @__PURE__ */ jsxs(View, { style: [
|
|
2128
|
+
children: /* @__PURE__ */ jsxs(View, { style: [styles9.triggerWrap, isOpen && styles9.triggerWrapOpen], children: [
|
|
1569
2129
|
/* @__PURE__ */ jsxs(
|
|
1570
2130
|
Pressable,
|
|
1571
2131
|
{
|
|
@@ -1576,17 +2136,17 @@ var DatePicker = forwardRef(
|
|
|
1576
2136
|
accessibilityLabel: resolvedAccessibilityLabel,
|
|
1577
2137
|
accessibilityState: { disabled, expanded: isOpen },
|
|
1578
2138
|
style: [
|
|
1579
|
-
|
|
2139
|
+
styles9.trigger,
|
|
1580
2140
|
{ borderColor: triggerBorderColor, backgroundColor: colors.grey700 }
|
|
1581
2141
|
],
|
|
1582
2142
|
children: [
|
|
1583
|
-
/* @__PURE__ */ jsx(Text, { style: [
|
|
1584
|
-
/* @__PURE__ */ jsx(View, { style:
|
|
2143
|
+
/* @__PURE__ */ jsx(Text, { style: [styles9.triggerText, { color: triggerTextColor }], numberOfLines: 1, children: triggerLabel }),
|
|
2144
|
+
/* @__PURE__ */ jsx(View, { style: styles9.iconSlot, children: /* @__PURE__ */ jsx(CalendarOutlineIcon, { size: ICON_SIZE5, color: colors.grey100 }) })
|
|
1585
2145
|
]
|
|
1586
2146
|
}
|
|
1587
2147
|
),
|
|
1588
|
-
isOpen ? /* @__PURE__ */ jsxs(View, { style:
|
|
1589
|
-
/* @__PURE__ */ jsxs(View, { style:
|
|
2148
|
+
isOpen ? /* @__PURE__ */ jsxs(View, { style: styles9.menu, children: [
|
|
2149
|
+
/* @__PURE__ */ jsxs(View, { style: styles9.calendarHeader, children: [
|
|
1590
2150
|
/* @__PURE__ */ jsx(
|
|
1591
2151
|
Pressable,
|
|
1592
2152
|
{
|
|
@@ -1594,11 +2154,11 @@ var DatePicker = forwardRef(
|
|
|
1594
2154
|
hitSlop: 8,
|
|
1595
2155
|
accessibilityRole: "button",
|
|
1596
2156
|
accessibilityLabel: "Previous month",
|
|
1597
|
-
style:
|
|
2157
|
+
style: styles9.navButton,
|
|
1598
2158
|
children: /* @__PURE__ */ jsx(ChevronLeftIcon, { size: NAV_ICON_SIZE, color: colors.white })
|
|
1599
2159
|
}
|
|
1600
2160
|
),
|
|
1601
|
-
/* @__PURE__ */ jsxs(Text, { style:
|
|
2161
|
+
/* @__PURE__ */ jsxs(Text, { style: styles9.monthHeading, children: [
|
|
1602
2162
|
monthNames[visibleMonth.getMonth()],
|
|
1603
2163
|
" ",
|
|
1604
2164
|
visibleMonth.getFullYear()
|
|
@@ -1610,13 +2170,13 @@ var DatePicker = forwardRef(
|
|
|
1610
2170
|
hitSlop: 8,
|
|
1611
2171
|
accessibilityRole: "button",
|
|
1612
2172
|
accessibilityLabel: "Next month",
|
|
1613
|
-
style:
|
|
1614
|
-
children: /* @__PURE__ */ jsx(View, { style:
|
|
2173
|
+
style: styles9.navButton,
|
|
2174
|
+
children: /* @__PURE__ */ jsx(View, { style: styles9.navIconMirror, children: /* @__PURE__ */ jsx(ChevronLeftIcon, { size: NAV_ICON_SIZE, color: colors.white }) })
|
|
1615
2175
|
}
|
|
1616
2176
|
)
|
|
1617
2177
|
] }),
|
|
1618
2178
|
/* @__PURE__ */ jsxs(View, { children: [
|
|
1619
|
-
/* @__PURE__ */ jsx(View, { style:
|
|
2179
|
+
/* @__PURE__ */ jsx(View, { style: styles9.weekdayRow, children: weekdayLabels.map((weekdayLabel, index) => /* @__PURE__ */ jsx(View, { style: styles9.dayCellWrap, children: /* @__PURE__ */ jsx(Text, { style: styles9.weekdayText, children: weekdayLabel }) }, `${weekdayLabel}-${index}`)) }),
|
|
1620
2180
|
weeks.map((week, weekIndex) => {
|
|
1621
2181
|
let rangeHighlightStyle = null;
|
|
1622
2182
|
if (isRange && rangeValue.start && rangeValue.end) {
|
|
@@ -1653,13 +2213,13 @@ var DatePicker = forwardRef(
|
|
|
1653
2213
|
return /* @__PURE__ */ jsxs(
|
|
1654
2214
|
View,
|
|
1655
2215
|
{
|
|
1656
|
-
style: [
|
|
2216
|
+
style: [styles9.weekRow, weekIndex > 0 && styles9.weekRowSpaced],
|
|
1657
2217
|
children: [
|
|
1658
2218
|
rangeHighlightStyle ? /* @__PURE__ */ jsx(
|
|
1659
2219
|
View,
|
|
1660
2220
|
{
|
|
1661
2221
|
pointerEvents: "none",
|
|
1662
|
-
style: [
|
|
2222
|
+
style: [styles9.rangeHighlight, rangeHighlightStyle]
|
|
1663
2223
|
}
|
|
1664
2224
|
) : null,
|
|
1665
2225
|
week.map((day, dayIndex) => {
|
|
@@ -1682,7 +2242,7 @@ var DatePicker = forwardRef(
|
|
|
1682
2242
|
onHoverOut: () => setHoveredDayKey((current) => current === dayKey ? null : current),
|
|
1683
2243
|
onPressIn: () => setHoveredDayKey(dayKey),
|
|
1684
2244
|
onPressOut: () => setHoveredDayKey((current) => current === dayKey ? null : current),
|
|
1685
|
-
style:
|
|
2245
|
+
style: styles9.dayCellWrap,
|
|
1686
2246
|
accessibilityRole: "button",
|
|
1687
2247
|
accessibilityLabel: formatValue(day),
|
|
1688
2248
|
accessibilityState: {
|
|
@@ -1694,14 +2254,14 @@ var DatePicker = forwardRef(
|
|
|
1694
2254
|
View,
|
|
1695
2255
|
{
|
|
1696
2256
|
style: [
|
|
1697
|
-
|
|
1698
|
-
isSelectedEndpoint &&
|
|
1699
|
-
isHovered &&
|
|
2257
|
+
styles9.dayCircle,
|
|
2258
|
+
isSelectedEndpoint && styles9.dayCircleSelected,
|
|
2259
|
+
isHovered && styles9.dayCircleHovered
|
|
1700
2260
|
],
|
|
1701
|
-
children: /* @__PURE__ */ jsx(Text, { style: [
|
|
2261
|
+
children: /* @__PURE__ */ jsx(Text, { style: [styles9.dayText, { color: dayTextColor }], children: day.getDate() })
|
|
1702
2262
|
}
|
|
1703
2263
|
),
|
|
1704
|
-
isToday && !isSelectedEndpoint ? /* @__PURE__ */ jsx(View, { style:
|
|
2264
|
+
isToday && !isSelectedEndpoint ? /* @__PURE__ */ jsx(View, { style: styles9.todayDot }) : null
|
|
1705
2265
|
]
|
|
1706
2266
|
},
|
|
1707
2267
|
dayIndex
|
|
@@ -1719,7 +2279,7 @@ var DatePicker = forwardRef(
|
|
|
1719
2279
|
);
|
|
1720
2280
|
}
|
|
1721
2281
|
);
|
|
1722
|
-
var
|
|
2282
|
+
var styles9 = StyleSheet.create({
|
|
1723
2283
|
root: {
|
|
1724
2284
|
width: DEFAULT_WIDTH,
|
|
1725
2285
|
gap: 8,
|
|
@@ -1755,8 +2315,8 @@ var styles5 = StyleSheet.create({
|
|
|
1755
2315
|
minWidth: 0
|
|
1756
2316
|
},
|
|
1757
2317
|
iconSlot: {
|
|
1758
|
-
width:
|
|
1759
|
-
height:
|
|
2318
|
+
width: ICON_SIZE5,
|
|
2319
|
+
height: ICON_SIZE5,
|
|
1760
2320
|
alignItems: "center",
|
|
1761
2321
|
justifyContent: "center",
|
|
1762
2322
|
flexShrink: 0
|
|
@@ -1979,13 +2539,13 @@ var Input = forwardRef(function Input2({
|
|
|
1979
2539
|
const rightIconNode = rightIcon ?? /* @__PURE__ */ jsx(ShowIcon, { size: metrics.iconSize, color: chrome.rightIconColor });
|
|
1980
2540
|
useApplyWebClassName(rootRef, className);
|
|
1981
2541
|
useApplyWebClassName(inputRef, inputClassName);
|
|
1982
|
-
return /* @__PURE__ */ jsxs(View, { ref: rootRef, style: [
|
|
1983
|
-
showLabel && label ? /* @__PURE__ */ jsx(Text, { style: [
|
|
2542
|
+
return /* @__PURE__ */ jsxs(View, { ref: rootRef, style: [styles10.root, disabled && styles10.disabled, style], children: [
|
|
2543
|
+
showLabel && label ? /* @__PURE__ */ jsx(Text, { style: [styles10.label, { color: chrome.labelColor }], children: label }) : null,
|
|
1984
2544
|
/* @__PURE__ */ jsxs(
|
|
1985
2545
|
View,
|
|
1986
2546
|
{
|
|
1987
2547
|
style: [
|
|
1988
|
-
|
|
2548
|
+
styles10.field,
|
|
1989
2549
|
{
|
|
1990
2550
|
height: metrics.height,
|
|
1991
2551
|
borderRadius: metrics.borderRadius,
|
|
@@ -2000,7 +2560,7 @@ var Input = forwardRef(function Input2({
|
|
|
2000
2560
|
fieldStyle
|
|
2001
2561
|
],
|
|
2002
2562
|
children: [
|
|
2003
|
-
hasLeftIcon ? /* @__PURE__ */ jsx(View, { style: [
|
|
2563
|
+
hasLeftIcon ? /* @__PURE__ */ jsx(View, { style: [styles10.iconSlot, { width: metrics.iconSize, height: metrics.iconSize }], children: leftIconNode }) : null,
|
|
2004
2564
|
/* @__PURE__ */ jsx(
|
|
2005
2565
|
TextInput,
|
|
2006
2566
|
{
|
|
@@ -2024,11 +2584,11 @@ var Input = forwardRef(function Input2({
|
|
|
2024
2584
|
onBlur?.(event);
|
|
2025
2585
|
},
|
|
2026
2586
|
style: [
|
|
2027
|
-
|
|
2587
|
+
styles10.input,
|
|
2028
2588
|
metrics.text,
|
|
2029
2589
|
{ color: chrome.textColor },
|
|
2030
|
-
Platform.OS === "web" ?
|
|
2031
|
-
Platform.OS === "android" ?
|
|
2590
|
+
Platform.OS === "web" ? styles10.inputWeb : null,
|
|
2591
|
+
Platform.OS === "android" ? styles10.inputAndroid : null,
|
|
2032
2592
|
inputStyle
|
|
2033
2593
|
],
|
|
2034
2594
|
accessibilityLabel: resolvedAccessibilityLabel,
|
|
@@ -2040,20 +2600,20 @@ var Input = forwardRef(function Input2({
|
|
|
2040
2600
|
{
|
|
2041
2601
|
onPress: onRightIconPress,
|
|
2042
2602
|
disabled,
|
|
2043
|
-
style: [
|
|
2603
|
+
style: [styles10.iconSlot, { width: metrics.iconSize, height: metrics.iconSize }],
|
|
2044
2604
|
accessibilityRole: "button",
|
|
2045
2605
|
accessibilityLabel: rightIconAccessibilityLabel,
|
|
2046
2606
|
hitSlop: 8,
|
|
2047
2607
|
children: rightIconNode
|
|
2048
2608
|
}
|
|
2049
|
-
) : /* @__PURE__ */ jsx(View, { style: [
|
|
2609
|
+
) : /* @__PURE__ */ jsx(View, { style: [styles10.iconSlot, { width: metrics.iconSize, height: metrics.iconSize }], children: rightIconNode }) : null
|
|
2050
2610
|
]
|
|
2051
2611
|
}
|
|
2052
2612
|
),
|
|
2053
|
-
showHint && hint ? /* @__PURE__ */ jsx(Text, { style: [
|
|
2613
|
+
showHint && hint ? /* @__PURE__ */ jsx(Text, { style: [styles10.hint, { color: chrome.hintColor }], children: hint }) : null
|
|
2054
2614
|
] });
|
|
2055
2615
|
});
|
|
2056
|
-
var
|
|
2616
|
+
var styles10 = StyleSheet.create({
|
|
2057
2617
|
root: {
|
|
2058
2618
|
width: DEFAULT_WIDTH2,
|
|
2059
2619
|
gap: 8,
|
|
@@ -2096,7 +2656,7 @@ var TRIGGER_RADIUS2 = 60;
|
|
|
2096
2656
|
var MENU_RADIUS3 = 24;
|
|
2097
2657
|
var MENU_MAX_LIST_HEIGHT = 248;
|
|
2098
2658
|
var ITEM_RADIUS2 = 12;
|
|
2099
|
-
var
|
|
2659
|
+
var ICON_SIZE6 = 20;
|
|
2100
2660
|
var CHIP_GAP = 6;
|
|
2101
2661
|
var FALLBACK_ELLIPSIS_WIDTH = 20;
|
|
2102
2662
|
function itemBackground(state) {
|
|
@@ -2169,25 +2729,25 @@ function MultiValueChips({ options, disabled, onRemove }) {
|
|
|
2169
2729
|
const next = Math.ceil(event.nativeEvent.layout.width);
|
|
2170
2730
|
setEllipsisWidth((current) => current === next ? current : next);
|
|
2171
2731
|
};
|
|
2172
|
-
return /* @__PURE__ */ jsxs(View, { style:
|
|
2173
|
-
/* @__PURE__ */ jsxs(View, { pointerEvents: "none", style:
|
|
2732
|
+
return /* @__PURE__ */ jsxs(View, { style: styles11.multiValueRoot, children: [
|
|
2733
|
+
/* @__PURE__ */ jsxs(View, { pointerEvents: "none", style: styles11.measureRow, children: [
|
|
2174
2734
|
options.map((option) => /* @__PURE__ */ jsxs(
|
|
2175
2735
|
View,
|
|
2176
2736
|
{
|
|
2177
|
-
style:
|
|
2737
|
+
style: styles11.chip,
|
|
2178
2738
|
onLayout: (event) => handleChipLayout(option.value, event),
|
|
2179
2739
|
children: [
|
|
2180
|
-
/* @__PURE__ */ jsx(Text, { style:
|
|
2181
|
-
/* @__PURE__ */ jsx(Text, { style:
|
|
2740
|
+
/* @__PURE__ */ jsx(Text, { style: styles11.chipLabel, numberOfLines: 1, children: option.label }),
|
|
2741
|
+
/* @__PURE__ */ jsx(Text, { style: styles11.chipRemove, children: "\xD7" })
|
|
2182
2742
|
]
|
|
2183
2743
|
},
|
|
2184
2744
|
`measure-${option.value}`
|
|
2185
2745
|
)),
|
|
2186
|
-
/* @__PURE__ */ jsx(View, { style:
|
|
2746
|
+
/* @__PURE__ */ jsx(View, { style: styles11.ellipsis, onLayout: handleEllipsisLayout, children: /* @__PURE__ */ jsx(Text, { style: styles11.ellipsisText, children: "..." }) })
|
|
2187
2747
|
] }),
|
|
2188
|
-
/* @__PURE__ */ jsxs(View, { style:
|
|
2189
|
-
visible.map((option) => /* @__PURE__ */ jsxs(View, { style:
|
|
2190
|
-
/* @__PURE__ */ jsx(Text, { style:
|
|
2748
|
+
/* @__PURE__ */ jsxs(View, { style: styles11.chipsRow, onLayout: handleContainerLayout, children: [
|
|
2749
|
+
visible.map((option) => /* @__PURE__ */ jsxs(View, { style: styles11.chip, children: [
|
|
2750
|
+
/* @__PURE__ */ jsx(Text, { style: styles11.chipLabel, numberOfLines: 1, children: option.label }),
|
|
2191
2751
|
/* @__PURE__ */ jsx(
|
|
2192
2752
|
Pressable,
|
|
2193
2753
|
{
|
|
@@ -2199,11 +2759,11 @@ function MultiValueChips({ options, disabled, onRemove }) {
|
|
|
2199
2759
|
hitSlop: 6,
|
|
2200
2760
|
accessibilityRole: "button",
|
|
2201
2761
|
accessibilityLabel: `Remove ${option.label}`,
|
|
2202
|
-
children: /* @__PURE__ */ jsx(Text, { style:
|
|
2762
|
+
children: /* @__PURE__ */ jsx(Text, { style: styles11.chipRemove, children: "\xD7" })
|
|
2203
2763
|
}
|
|
2204
2764
|
)
|
|
2205
2765
|
] }, option.value)),
|
|
2206
|
-
hasOverflow ? /* @__PURE__ */ jsx(View, { style:
|
|
2766
|
+
hasOverflow ? /* @__PURE__ */ jsx(View, { style: styles11.ellipsis, children: /* @__PURE__ */ jsx(Text, { style: styles11.ellipsisText, children: "..." }) }) : null
|
|
2207
2767
|
] })
|
|
2208
2768
|
] });
|
|
2209
2769
|
}
|
|
@@ -2414,7 +2974,7 @@ var Select = forwardRef(
|
|
|
2414
2974
|
const leftIconNode = leftIcon ?? /* @__PURE__ */ jsx(
|
|
2415
2975
|
UserIcon,
|
|
2416
2976
|
{
|
|
2417
|
-
size:
|
|
2977
|
+
size: ICON_SIZE6,
|
|
2418
2978
|
color: error ? colors.red : isOpen ? colors.primary : colors.grey100
|
|
2419
2979
|
}
|
|
2420
2980
|
);
|
|
@@ -2430,11 +2990,11 @@ var Select = forwardRef(
|
|
|
2430
2990
|
{
|
|
2431
2991
|
...rest,
|
|
2432
2992
|
ref: setRootRef,
|
|
2433
|
-
style: [
|
|
2993
|
+
style: [styles11.root, isOpen && styles11.rootOpen, disabled && styles11.disabled, style],
|
|
2434
2994
|
accessibilityState: { disabled, expanded: isOpen },
|
|
2435
2995
|
children: [
|
|
2436
|
-
showLabel && label ? /* @__PURE__ */ jsx(Text, { style: [
|
|
2437
|
-
/* @__PURE__ */ jsxs(View, { style: [
|
|
2996
|
+
showLabel && label ? /* @__PURE__ */ jsx(Text, { style: [styles11.label, { color: labelColor }], children: label }) : null,
|
|
2997
|
+
/* @__PURE__ */ jsxs(View, { style: [styles11.triggerWrap, isOpen && styles11.triggerWrapOpen], children: [
|
|
2438
2998
|
/* @__PURE__ */ jsxs(
|
|
2439
2999
|
Pressable,
|
|
2440
3000
|
{
|
|
@@ -2445,29 +3005,29 @@ var Select = forwardRef(
|
|
|
2445
3005
|
accessibilityLabel: resolvedAccessibilityLabel,
|
|
2446
3006
|
accessibilityState: { disabled, expanded: isOpen },
|
|
2447
3007
|
style: [
|
|
2448
|
-
|
|
3008
|
+
styles11.trigger,
|
|
2449
3009
|
{
|
|
2450
3010
|
borderColor: triggerBorderColor,
|
|
2451
3011
|
backgroundColor: colors.grey700
|
|
2452
3012
|
}
|
|
2453
3013
|
],
|
|
2454
3014
|
children: [
|
|
2455
|
-
hasLeftIcon ? /* @__PURE__ */ jsx(View, { style:
|
|
2456
|
-
/* @__PURE__ */ jsx(View, { style:
|
|
3015
|
+
hasLeftIcon ? /* @__PURE__ */ jsx(View, { style: styles11.iconSlot, children: leftIconNode }) : null,
|
|
3016
|
+
/* @__PURE__ */ jsx(View, { style: styles11.triggerContent, children: multiple && hasValue ? /* @__PURE__ */ jsx(
|
|
2457
3017
|
MultiValueChips,
|
|
2458
3018
|
{
|
|
2459
3019
|
options: selectedOptions,
|
|
2460
3020
|
disabled,
|
|
2461
3021
|
onRemove: handleRemoveChip
|
|
2462
3022
|
}
|
|
2463
|
-
) : /* @__PURE__ */ jsx(Text, { style: [
|
|
2464
|
-
/* @__PURE__ */ jsx(View, { style: [
|
|
3023
|
+
) : /* @__PURE__ */ jsx(Text, { style: [styles11.triggerText, { color: triggerTextColor }], numberOfLines: 1, children: multiple ? placeholder : singleLabel }) }),
|
|
3024
|
+
/* @__PURE__ */ jsx(View, { style: [styles11.iconSlot, isOpen && styles11.chevronOpen], children: /* @__PURE__ */ jsx(ChevronDownIcon, { size: ICON_SIZE6, color: isOpen ? colors.primary : colors.grey100 }) })
|
|
2465
3025
|
]
|
|
2466
3026
|
}
|
|
2467
3027
|
),
|
|
2468
|
-
isOpen ? /* @__PURE__ */ jsxs(View, { style:
|
|
2469
|
-
showSearch ? /* @__PURE__ */ jsxs(View, { style:
|
|
2470
|
-
/* @__PURE__ */ jsx(View, { style:
|
|
3028
|
+
isOpen ? /* @__PURE__ */ jsxs(View, { style: styles11.menu, children: [
|
|
3029
|
+
showSearch ? /* @__PURE__ */ jsxs(View, { style: styles11.searchField, children: [
|
|
3030
|
+
/* @__PURE__ */ jsx(View, { style: styles11.iconSlot, children: /* @__PURE__ */ jsx(SearchIcon, { size: ICON_SIZE6, color: colors.grey100 }) }),
|
|
2471
3031
|
/* @__PURE__ */ jsx(
|
|
2472
3032
|
TextInput,
|
|
2473
3033
|
{
|
|
@@ -2478,9 +3038,9 @@ var Select = forwardRef(
|
|
|
2478
3038
|
placeholder: searchPlaceholder,
|
|
2479
3039
|
placeholderTextColor: colors.grey100,
|
|
2480
3040
|
style: [
|
|
2481
|
-
|
|
2482
|
-
Platform.OS === "web" ?
|
|
2483
|
-
Platform.OS === "android" ?
|
|
3041
|
+
styles11.searchInput,
|
|
3042
|
+
Platform.OS === "web" ? styles11.searchInputWeb : null,
|
|
3043
|
+
Platform.OS === "android" ? styles11.searchInputAndroid : null
|
|
2484
3044
|
],
|
|
2485
3045
|
accessibilityLabel: searchPlaceholder
|
|
2486
3046
|
}
|
|
@@ -2489,12 +3049,12 @@ var Select = forwardRef(
|
|
|
2489
3049
|
/* @__PURE__ */ jsxs(
|
|
2490
3050
|
ScrollView,
|
|
2491
3051
|
{
|
|
2492
|
-
style:
|
|
2493
|
-
contentContainerStyle:
|
|
3052
|
+
style: styles11.optionList,
|
|
3053
|
+
contentContainerStyle: styles11.optionListContent,
|
|
2494
3054
|
keyboardShouldPersistTaps: "handled",
|
|
2495
3055
|
showsVerticalScrollIndicator: false,
|
|
2496
3056
|
children: [
|
|
2497
|
-
loading ? /* @__PURE__ */ jsx(View, { style:
|
|
3057
|
+
loading ? /* @__PURE__ */ jsx(View, { style: styles11.statusRow, children: /* @__PURE__ */ jsx(Text, { style: styles11.statusText, children: "Loading..." }) }) : filteredOptions.length === 0 ? /* @__PURE__ */ jsx(View, { style: styles11.statusRow, children: /* @__PURE__ */ jsx(Text, { style: styles11.statusText, children: emptyText }) }) : null,
|
|
2498
3058
|
!loading && filteredOptions.map((option) => {
|
|
2499
3059
|
const isSelected = selectedValues.includes(option.value);
|
|
2500
3060
|
const isHovered = hoveredValue === option.value;
|
|
@@ -2511,14 +3071,14 @@ var Select = forwardRef(
|
|
|
2511
3071
|
accessibilityRole: multiple ? "checkbox" : "button",
|
|
2512
3072
|
accessibilityState: { selected: isSelected, checked: isSelected, disabled },
|
|
2513
3073
|
style: [
|
|
2514
|
-
|
|
3074
|
+
styles11.item,
|
|
2515
3075
|
{
|
|
2516
3076
|
backgroundColor: itemBackground(visualState)
|
|
2517
3077
|
}
|
|
2518
3078
|
],
|
|
2519
3079
|
children: [
|
|
2520
|
-
multiple ? /* @__PURE__ */ jsx(View, { pointerEvents: "none", style:
|
|
2521
|
-
/* @__PURE__ */ jsx(Text, { style:
|
|
3080
|
+
multiple ? /* @__PURE__ */ jsx(View, { pointerEvents: "none", style: styles11.itemCheckbox, children: /* @__PURE__ */ jsx(Checkbox, { value: isSelected, variant: "light" }) }) : null,
|
|
3081
|
+
/* @__PURE__ */ jsx(Text, { style: styles11.itemLabel, numberOfLines: 1, children: option.label })
|
|
2522
3082
|
]
|
|
2523
3083
|
},
|
|
2524
3084
|
option.value
|
|
@@ -2529,13 +3089,13 @@ var Select = forwardRef(
|
|
|
2529
3089
|
)
|
|
2530
3090
|
] }) : null
|
|
2531
3091
|
] }),
|
|
2532
|
-
showHint && hint ? /* @__PURE__ */ jsx(Text, { style: [
|
|
3092
|
+
showHint && hint ? /* @__PURE__ */ jsx(Text, { style: [styles11.hint, { color: hintColor }], children: hint }) : null
|
|
2533
3093
|
]
|
|
2534
3094
|
}
|
|
2535
3095
|
);
|
|
2536
3096
|
}
|
|
2537
3097
|
);
|
|
2538
|
-
var
|
|
3098
|
+
var styles11 = StyleSheet.create({
|
|
2539
3099
|
root: {
|
|
2540
3100
|
width: DEFAULT_WIDTH3,
|
|
2541
3101
|
gap: 8,
|
|
@@ -2625,8 +3185,8 @@ var styles7 = StyleSheet.create({
|
|
|
2625
3185
|
lineHeight: 16
|
|
2626
3186
|
},
|
|
2627
3187
|
iconSlot: {
|
|
2628
|
-
width:
|
|
2629
|
-
height:
|
|
3188
|
+
width: ICON_SIZE6,
|
|
3189
|
+
height: ICON_SIZE6,
|
|
2630
3190
|
alignItems: "center",
|
|
2631
3191
|
justifyContent: "center",
|
|
2632
3192
|
flexShrink: 0
|
|
@@ -2797,13 +3357,13 @@ var Textarea = forwardRef(function Textarea2({
|
|
|
2797
3357
|
const resolvedAccessibilityLabel = accessibilityLabel ?? (showLabel ? void 0 : label);
|
|
2798
3358
|
useApplyWebClassName(rootRef, className);
|
|
2799
3359
|
useApplyWebClassName(inputRef, inputClassName);
|
|
2800
|
-
return /* @__PURE__ */ jsxs(View, { ref: rootRef, style: [
|
|
2801
|
-
showLabel && label ? /* @__PURE__ */ jsx(Text, { style: [
|
|
3360
|
+
return /* @__PURE__ */ jsxs(View, { ref: rootRef, style: [styles12.root, disabled && styles12.disabled, style], children: [
|
|
3361
|
+
showLabel && label ? /* @__PURE__ */ jsx(Text, { style: [styles12.label, { color: chrome.labelColor }], children: label }) : null,
|
|
2802
3362
|
/* @__PURE__ */ jsx(
|
|
2803
3363
|
View,
|
|
2804
3364
|
{
|
|
2805
3365
|
style: [
|
|
2806
|
-
|
|
3366
|
+
styles12.field,
|
|
2807
3367
|
{
|
|
2808
3368
|
borderColor: chrome.borderColor,
|
|
2809
3369
|
backgroundColor: chrome.backgroundColor
|
|
@@ -2835,11 +3395,11 @@ var Textarea = forwardRef(function Textarea2({
|
|
|
2835
3395
|
onBlur?.(event);
|
|
2836
3396
|
},
|
|
2837
3397
|
style: [
|
|
2838
|
-
|
|
3398
|
+
styles12.input,
|
|
2839
3399
|
textareaTypography.field,
|
|
2840
3400
|
{ color: chrome.textColor },
|
|
2841
|
-
Platform.OS === "web" ?
|
|
2842
|
-
Platform.OS === "android" ?
|
|
3401
|
+
Platform.OS === "web" ? styles12.inputWeb : null,
|
|
3402
|
+
Platform.OS === "android" ? styles12.inputAndroid : null,
|
|
2843
3403
|
inputStyle
|
|
2844
3404
|
],
|
|
2845
3405
|
accessibilityLabel: resolvedAccessibilityLabel,
|
|
@@ -2848,10 +3408,10 @@ var Textarea = forwardRef(function Textarea2({
|
|
|
2848
3408
|
)
|
|
2849
3409
|
}
|
|
2850
3410
|
),
|
|
2851
|
-
showHint && hint ? /* @__PURE__ */ jsx(Text, { style: [
|
|
3411
|
+
showHint && hint ? /* @__PURE__ */ jsx(Text, { style: [styles12.hint, { color: chrome.hintColor }], children: hint }) : null
|
|
2852
3412
|
] });
|
|
2853
3413
|
});
|
|
2854
|
-
var
|
|
3414
|
+
var styles12 = StyleSheet.create({
|
|
2855
3415
|
root: {
|
|
2856
3416
|
width: DEFAULT_WIDTH4,
|
|
2857
3417
|
gap: 8,
|
|
@@ -2894,7 +3454,7 @@ var TRACK_RADIUS = 43;
|
|
|
2894
3454
|
var TRACK_PADDING = 4;
|
|
2895
3455
|
var THUMB_SIZE = TRACK_HEIGHT - TRACK_PADDING * 2;
|
|
2896
3456
|
var THUMB_TRAVEL = TRACK_WIDTH - TRACK_PADDING * 2 - THUMB_SIZE;
|
|
2897
|
-
var
|
|
3457
|
+
var ANIMATION_DURATION2 = 300;
|
|
2898
3458
|
var Toggle = forwardRef(function Toggle2({
|
|
2899
3459
|
value,
|
|
2900
3460
|
defaultValue = false,
|
|
@@ -2921,7 +3481,7 @@ var Toggle = forwardRef(function Toggle2({
|
|
|
2921
3481
|
useEffect(() => {
|
|
2922
3482
|
Animated.timing(progress, {
|
|
2923
3483
|
toValue: isActive ? 1 : 0,
|
|
2924
|
-
duration:
|
|
3484
|
+
duration: ANIMATION_DURATION2,
|
|
2925
3485
|
easing: Easing.out(Easing.ease),
|
|
2926
3486
|
useNativeDriver: false
|
|
2927
3487
|
}).start();
|
|
@@ -2951,13 +3511,13 @@ var Toggle = forwardRef(function Toggle2({
|
|
|
2951
3511
|
accessibilityRole: "switch",
|
|
2952
3512
|
accessibilityLabel: resolvedAccessibilityLabel,
|
|
2953
3513
|
accessibilityState: { checked: isActive, disabled },
|
|
2954
|
-
style: [
|
|
3514
|
+
style: [styles13.pressable, disabled && styles13.disabled, style],
|
|
2955
3515
|
children: [
|
|
2956
3516
|
/* @__PURE__ */ jsx(
|
|
2957
3517
|
Animated.View,
|
|
2958
3518
|
{
|
|
2959
3519
|
style: [
|
|
2960
|
-
|
|
3520
|
+
styles13.track,
|
|
2961
3521
|
{
|
|
2962
3522
|
backgroundColor: trackBackgroundColor
|
|
2963
3523
|
}
|
|
@@ -2966,7 +3526,7 @@ var Toggle = forwardRef(function Toggle2({
|
|
|
2966
3526
|
Animated.View,
|
|
2967
3527
|
{
|
|
2968
3528
|
style: [
|
|
2969
|
-
|
|
3529
|
+
styles13.thumb,
|
|
2970
3530
|
{
|
|
2971
3531
|
transform: [{ translateX: thumbTranslateX }]
|
|
2972
3532
|
}
|
|
@@ -2975,12 +3535,12 @@ var Toggle = forwardRef(function Toggle2({
|
|
|
2975
3535
|
)
|
|
2976
3536
|
}
|
|
2977
3537
|
),
|
|
2978
|
-
labelContent != null && labelContent !== false ? typeof labelContent === "string" || typeof labelContent === "number" ? /* @__PURE__ */ jsx(Text, { style: [
|
|
3538
|
+
labelContent != null && labelContent !== false ? typeof labelContent === "string" || typeof labelContent === "number" ? /* @__PURE__ */ jsx(Text, { style: [styles13.label, labelStyle], children: labelContent }) : labelContent : null
|
|
2979
3539
|
]
|
|
2980
3540
|
}
|
|
2981
3541
|
);
|
|
2982
3542
|
});
|
|
2983
|
-
var
|
|
3543
|
+
var styles13 = StyleSheet.create({
|
|
2984
3544
|
pressable: {
|
|
2985
3545
|
flexDirection: "row",
|
|
2986
3546
|
alignItems: "center",
|
|
@@ -3008,7 +3568,273 @@ var styles9 = StyleSheet.create({
|
|
|
3008
3568
|
color: colors.white
|
|
3009
3569
|
}
|
|
3010
3570
|
});
|
|
3571
|
+
var STAR_COUNT = 5;
|
|
3572
|
+
var BASE_ITEM_SIZE = 16;
|
|
3573
|
+
var ICON_WIDTH_RATIO = 12.57 / BASE_ITEM_SIZE;
|
|
3574
|
+
var ICON_HEIGHT_RATIO = 11.98 / BASE_ITEM_SIZE;
|
|
3575
|
+
var STAR_GAP_RATIO = 2 / BASE_ITEM_SIZE;
|
|
3576
|
+
function clamp2(value) {
|
|
3577
|
+
return Math.max(0, Math.min(value, STAR_COUNT));
|
|
3578
|
+
}
|
|
3579
|
+
var RatingInput = forwardRef(
|
|
3580
|
+
function RatingInput2({
|
|
3581
|
+
value,
|
|
3582
|
+
defaultValue = 0,
|
|
3583
|
+
onValueChange,
|
|
3584
|
+
showValue = true,
|
|
3585
|
+
precision = 1,
|
|
3586
|
+
size = 20,
|
|
3587
|
+
starGap,
|
|
3588
|
+
readOnly = false,
|
|
3589
|
+
disabled = false,
|
|
3590
|
+
style,
|
|
3591
|
+
valueStyle,
|
|
3592
|
+
className,
|
|
3593
|
+
hitSlop = 6,
|
|
3594
|
+
accessibilityLabel,
|
|
3595
|
+
...rest
|
|
3596
|
+
}, forwardedRef) {
|
|
3597
|
+
const containerRef = useRef(null);
|
|
3598
|
+
const setContainerRef = useMemo(() => mergeRefs(containerRef, forwardedRef), [forwardedRef]);
|
|
3599
|
+
const isControlled = value !== void 0;
|
|
3600
|
+
const [uncontrolledValue, setUncontrolledValue] = useState(() => clamp2(defaultValue));
|
|
3601
|
+
const selectedValue = clamp2(isControlled ? value : uncontrolledValue);
|
|
3602
|
+
const selectedStarCount = Math.round(selectedValue);
|
|
3603
|
+
const iconWidth = size * ICON_WIDTH_RATIO;
|
|
3604
|
+
const iconHeight = size * ICON_HEIGHT_RATIO;
|
|
3605
|
+
const resolvedStarGap = starGap ?? size * STAR_GAP_RATIO;
|
|
3606
|
+
const resolvedAccessibilityLabel = accessibilityLabel ?? (readOnly ? `${selectedValue} out of ${STAR_COUNT} stars` : "Rating");
|
|
3607
|
+
useApplyWebClassName(containerRef, className);
|
|
3608
|
+
const selectValue = (nextValue) => {
|
|
3609
|
+
if (disabled || nextValue === selectedValue) return;
|
|
3610
|
+
if (!isControlled) setUncontrolledValue(nextValue);
|
|
3611
|
+
onValueChange?.(nextValue);
|
|
3612
|
+
};
|
|
3613
|
+
return /* @__PURE__ */ jsxs(
|
|
3614
|
+
View,
|
|
3615
|
+
{
|
|
3616
|
+
...rest,
|
|
3617
|
+
ref: setContainerRef,
|
|
3618
|
+
style: [styles14.root, disabled && styles14.disabled, style],
|
|
3619
|
+
children: [
|
|
3620
|
+
showValue ? /* @__PURE__ */ jsx(Text, { numberOfLines: 1, style: [styles14.value, valueStyle], children: selectedValue.toFixed(precision) }) : null,
|
|
3621
|
+
/* @__PURE__ */ jsx(
|
|
3622
|
+
View,
|
|
3623
|
+
{
|
|
3624
|
+
accessibilityRole: readOnly ? "image" : "radiogroup",
|
|
3625
|
+
accessibilityLabel: resolvedAccessibilityLabel,
|
|
3626
|
+
accessibilityState: { disabled },
|
|
3627
|
+
style: [styles14.stars, { gap: resolvedStarGap }],
|
|
3628
|
+
children: Array.from({ length: STAR_COUNT }, (_, index) => {
|
|
3629
|
+
const starValue = index + 1;
|
|
3630
|
+
const isSelected = starValue <= selectedStarCount;
|
|
3631
|
+
const icon = isSelected ? /* @__PURE__ */ jsx(StarFilledIcon, { size: iconWidth, height: iconHeight }) : /* @__PURE__ */ jsx(StarIcon, { size: iconWidth, height: iconHeight });
|
|
3632
|
+
const itemStyle = [styles14.starItem, { width: size, height: size }];
|
|
3633
|
+
if (readOnly) {
|
|
3634
|
+
return /* @__PURE__ */ jsx(View, { style: itemStyle, children: icon }, starValue);
|
|
3635
|
+
}
|
|
3636
|
+
return /* @__PURE__ */ jsx(
|
|
3637
|
+
Pressable,
|
|
3638
|
+
{
|
|
3639
|
+
disabled,
|
|
3640
|
+
hitSlop,
|
|
3641
|
+
onPress: () => selectValue(starValue),
|
|
3642
|
+
accessibilityRole: "radio",
|
|
3643
|
+
accessibilityLabel: `${starValue} star${starValue === 1 ? "" : "s"}`,
|
|
3644
|
+
accessibilityState: { checked: isSelected, disabled },
|
|
3645
|
+
style: itemStyle,
|
|
3646
|
+
children: icon
|
|
3647
|
+
},
|
|
3648
|
+
starValue
|
|
3649
|
+
);
|
|
3650
|
+
})
|
|
3651
|
+
}
|
|
3652
|
+
)
|
|
3653
|
+
]
|
|
3654
|
+
}
|
|
3655
|
+
);
|
|
3656
|
+
}
|
|
3657
|
+
);
|
|
3658
|
+
var styles14 = StyleSheet.create({
|
|
3659
|
+
root: {
|
|
3660
|
+
flexDirection: "row",
|
|
3661
|
+
alignItems: "center",
|
|
3662
|
+
flexWrap: "nowrap",
|
|
3663
|
+
alignSelf: "flex-start",
|
|
3664
|
+
gap: 16
|
|
3665
|
+
},
|
|
3666
|
+
stars: {
|
|
3667
|
+
flexDirection: "row",
|
|
3668
|
+
alignItems: "center"
|
|
3669
|
+
},
|
|
3670
|
+
starItem: {
|
|
3671
|
+
alignItems: "center",
|
|
3672
|
+
justifyContent: "center"
|
|
3673
|
+
},
|
|
3674
|
+
value: {
|
|
3675
|
+
...ratingTypography,
|
|
3676
|
+
color: colors.white
|
|
3677
|
+
},
|
|
3678
|
+
disabled: {
|
|
3679
|
+
opacity: 0.5
|
|
3680
|
+
}
|
|
3681
|
+
});
|
|
3682
|
+
var CARD_WIDTH = 370;
|
|
3683
|
+
var CARD_MIN_HEIGHT = 173;
|
|
3684
|
+
var AVATAR_SIZE = 44;
|
|
3685
|
+
var CommentCard = forwardRef(
|
|
3686
|
+
function CommentCard2({
|
|
3687
|
+
userName,
|
|
3688
|
+
date,
|
|
3689
|
+
commentText,
|
|
3690
|
+
rating,
|
|
3691
|
+
imageUrl,
|
|
3692
|
+
maxCommentLines = 3,
|
|
3693
|
+
maxCommentLength = 111,
|
|
3694
|
+
readMoreLabel = "\u0534\u056B\u057F\u0565\u056C \u0561\u057E\u0565\u056C\u056B\u0576",
|
|
3695
|
+
readLessLabel = "\u0553\u0561\u056F\u0565\u056C",
|
|
3696
|
+
onExpandedChange,
|
|
3697
|
+
style,
|
|
3698
|
+
commentStyle,
|
|
3699
|
+
className,
|
|
3700
|
+
...rest
|
|
3701
|
+
}, forwardedRef) {
|
|
3702
|
+
const containerRef = useRef(null);
|
|
3703
|
+
const setContainerRef = useMemo(() => mergeRefs(containerRef, forwardedRef), [forwardedRef]);
|
|
3704
|
+
const [imageFailed, setImageFailed] = useState(false);
|
|
3705
|
+
const [expanded, setExpanded] = useState(false);
|
|
3706
|
+
const [actionHovered, setActionHovered] = useState(false);
|
|
3707
|
+
const hasImage = Boolean(imageUrl) && !imageFailed;
|
|
3708
|
+
const shouldShowAction = Array.from(commentText).length >= maxCommentLength;
|
|
3709
|
+
useApplyWebClassName(containerRef, className);
|
|
3710
|
+
useEffect(() => {
|
|
3711
|
+
setImageFailed(false);
|
|
3712
|
+
}, [imageUrl]);
|
|
3713
|
+
useEffect(() => {
|
|
3714
|
+
setExpanded(false);
|
|
3715
|
+
setActionHovered(false);
|
|
3716
|
+
}, [commentText, maxCommentLength, maxCommentLines]);
|
|
3717
|
+
const toggleExpanded = () => {
|
|
3718
|
+
const next = !expanded;
|
|
3719
|
+
setExpanded(next);
|
|
3720
|
+
onExpandedChange?.(next);
|
|
3721
|
+
};
|
|
3722
|
+
return /* @__PURE__ */ jsxs(View, { ...rest, ref: setContainerRef, style: [styles15.root, style], children: [
|
|
3723
|
+
/* @__PURE__ */ jsxs(View, { style: styles15.header, children: [
|
|
3724
|
+
/* @__PURE__ */ jsx(View, { style: styles15.avatar, children: hasImage ? /* @__PURE__ */ jsx(
|
|
3725
|
+
Image,
|
|
3726
|
+
{
|
|
3727
|
+
source: { uri: imageUrl ?? void 0 },
|
|
3728
|
+
style: styles15.avatarImage,
|
|
3729
|
+
onError: () => setImageFailed(true)
|
|
3730
|
+
}
|
|
3731
|
+
) : /* @__PURE__ */ jsx(UserIcon, { size: 20, color: colors.primary }) }),
|
|
3732
|
+
/* @__PURE__ */ jsxs(View, { style: styles15.identity, children: [
|
|
3733
|
+
/* @__PURE__ */ jsx(Text, { numberOfLines: 1, style: styles15.name, children: userName }),
|
|
3734
|
+
/* @__PURE__ */ jsx(Text, { numberOfLines: 1, style: styles15.date, children: date })
|
|
3735
|
+
] }),
|
|
3736
|
+
/* @__PURE__ */ jsx(RatingInput, { value: rating, readOnly: true, showValue: false, size: 16 })
|
|
3737
|
+
] }),
|
|
3738
|
+
/* @__PURE__ */ jsx(
|
|
3739
|
+
Text,
|
|
3740
|
+
{
|
|
3741
|
+
numberOfLines: expanded ? void 0 : maxCommentLines,
|
|
3742
|
+
style: [styles15.comment, commentStyle],
|
|
3743
|
+
children: commentText
|
|
3744
|
+
}
|
|
3745
|
+
),
|
|
3746
|
+
shouldShowAction ? /* @__PURE__ */ jsx(
|
|
3747
|
+
Pressable,
|
|
3748
|
+
{
|
|
3749
|
+
onPress: toggleExpanded,
|
|
3750
|
+
accessibilityRole: "button",
|
|
3751
|
+
accessibilityState: { expanded },
|
|
3752
|
+
hitSlop: 6,
|
|
3753
|
+
onHoverIn: () => setActionHovered(true),
|
|
3754
|
+
onHoverOut: () => setActionHovered(false),
|
|
3755
|
+
style: styles15.action,
|
|
3756
|
+
children: /* @__PURE__ */ jsx(
|
|
3757
|
+
Text,
|
|
3758
|
+
{
|
|
3759
|
+
style: [
|
|
3760
|
+
styles15.actionText,
|
|
3761
|
+
expanded && styles15.closeActionText,
|
|
3762
|
+
actionHovered && (expanded ? styles15.closeActionTextHovered : styles15.openActionTextHovered)
|
|
3763
|
+
],
|
|
3764
|
+
children: expanded ? readLessLabel : readMoreLabel
|
|
3765
|
+
}
|
|
3766
|
+
)
|
|
3767
|
+
}
|
|
3768
|
+
) : null
|
|
3769
|
+
] });
|
|
3770
|
+
}
|
|
3771
|
+
);
|
|
3772
|
+
var styles15 = StyleSheet.create({
|
|
3773
|
+
root: {
|
|
3774
|
+
width: CARD_WIDTH,
|
|
3775
|
+
minHeight: CARD_MIN_HEIGHT,
|
|
3776
|
+
padding: 16,
|
|
3777
|
+
gap: 12,
|
|
3778
|
+
borderRadius: 12,
|
|
3779
|
+
backgroundColor: colors.grey750
|
|
3780
|
+
},
|
|
3781
|
+
header: {
|
|
3782
|
+
flexDirection: "row",
|
|
3783
|
+
alignItems: "center",
|
|
3784
|
+
gap: 8
|
|
3785
|
+
},
|
|
3786
|
+
avatar: {
|
|
3787
|
+
width: AVATAR_SIZE,
|
|
3788
|
+
height: AVATAR_SIZE,
|
|
3789
|
+
flexShrink: 0,
|
|
3790
|
+
alignItems: "center",
|
|
3791
|
+
justifyContent: "center",
|
|
3792
|
+
overflow: "hidden",
|
|
3793
|
+
borderRadius: AVATAR_SIZE / 2,
|
|
3794
|
+
backgroundColor: colors.grey600
|
|
3795
|
+
},
|
|
3796
|
+
avatarImage: {
|
|
3797
|
+
width: AVATAR_SIZE,
|
|
3798
|
+
height: AVATAR_SIZE
|
|
3799
|
+
},
|
|
3800
|
+
identity: {
|
|
3801
|
+
minWidth: 0,
|
|
3802
|
+
flex: 1,
|
|
3803
|
+
gap: 4
|
|
3804
|
+
},
|
|
3805
|
+
name: {
|
|
3806
|
+
...commentCardTypography.name,
|
|
3807
|
+
color: colors.white
|
|
3808
|
+
},
|
|
3809
|
+
date: {
|
|
3810
|
+
...commentCardTypography.date,
|
|
3811
|
+
color: colors.grey0
|
|
3812
|
+
},
|
|
3813
|
+
comment: {
|
|
3814
|
+
...commentCardTypography.comment,
|
|
3815
|
+
color: colors.white
|
|
3816
|
+
},
|
|
3817
|
+
action: {
|
|
3818
|
+
alignSelf: "flex-start",
|
|
3819
|
+
marginTop: "auto",
|
|
3820
|
+
minHeight: 16,
|
|
3821
|
+
justifyContent: "center"
|
|
3822
|
+
},
|
|
3823
|
+
actionText: {
|
|
3824
|
+
...commentCardTypography.action,
|
|
3825
|
+
color: colors.white
|
|
3826
|
+
},
|
|
3827
|
+
closeActionText: {
|
|
3828
|
+
color: colors.primary
|
|
3829
|
+
},
|
|
3830
|
+
openActionTextHovered: {
|
|
3831
|
+
color: colors.primary
|
|
3832
|
+
},
|
|
3833
|
+
closeActionTextHovered: {
|
|
3834
|
+
color: colors.white
|
|
3835
|
+
}
|
|
3836
|
+
});
|
|
3011
3837
|
|
|
3012
|
-
export { ArrowRightIcon, Avatar, BagIcon, BellIcon, BuildingIcon, Button, CalendarIcon, CalendarOutlineIcon, CameraIcon, CheckBadgeIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ClockIcon, DatePicker, FacebookIcon, HeartIcon, HelpCircleIcon, HomeIcon, Icon, Input, InstagramIcon, KeyIcon, LayoutGridIcon, LinkedInIcon, LogOutIcon, MailIcon, MenuItem, NavigateIcon, PhoneIcon, SearchIcon, Select, SettingsIcon, ShowIcon, Textarea, Toggle, UserIcon, VideoIcon, avatarTypography, buttonTypography, colors, datePickerTypography, fonts, getIconsByGroup, grey, iconGroupNames, iconGroups, iconNames, icons, inputTypography, selectTypography, textareaTypography };
|
|
3838
|
+
export { ArrowRightIcon, Avatar, Badge, BagIcon, BellIcon, BuildingIcon, Button, CalendarIcon, CalendarOutlineIcon, CameraIcon, CheckBadgeIcon, CheckIcon, Checkbox, ChevronDownIcon, ChevronLeftIcon, ClockIcon, CommentCard, Counter, DatePicker, FacebookIcon, HeartIcon, HelpCircleIcon, HomeIcon, Icon, Input, InstagramIcon, KeyIcon, LayoutGridIcon, LinkedInIcon, LogOutIcon, MailIcon, MenuItem, MinusIcon, NavigateIcon, PhoneIcon, PlusIcon, RatingInput, SearchIcon, SegmentedToggle, Select, SettingsIcon, ShowIcon, SidebarIcon, StarFilledIcon, StarIcon, StatCard, Textarea, Toggle, UserIcon, UsersAltIcon, VideoIcon, avatarTypography, badgeTypography, buttonTypography, colors, commentCardTypography, counterTypography, datePickerTypography, fonts, getIconsByGroup, grey, iconGroupNames, iconGroups, iconNames, icons, inputTypography, ratingTypography, segmentedToggleTypography, selectTypography, statCardTypography, textareaTypography };
|
|
3013
3839
|
//# sourceMappingURL=index.js.map
|
|
3014
3840
|
//# sourceMappingURL=index.js.map
|