@masumdev/rn-ui 0.1.7 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. package/lib/commonjs/components/Accordion.js +28 -13
  2. package/lib/commonjs/components/Accordion.js.map +1 -1
  3. package/lib/commonjs/components/Alert.js +229 -73
  4. package/lib/commonjs/components/Alert.js.map +1 -1
  5. package/lib/commonjs/components/AlertDialog.js +143 -87
  6. package/lib/commonjs/components/AlertDialog.js.map +1 -1
  7. package/lib/commonjs/components/Avatar.js +31 -28
  8. package/lib/commonjs/components/Avatar.js.map +1 -1
  9. package/lib/commonjs/components/Badge.js +18 -7
  10. package/lib/commonjs/components/Badge.js.map +1 -1
  11. package/lib/commonjs/components/BottomSheet.js +63 -8
  12. package/lib/commonjs/components/BottomSheet.js.map +1 -1
  13. package/lib/commonjs/components/Breadcrumb.js +31 -9
  14. package/lib/commonjs/components/Breadcrumb.js.map +1 -1
  15. package/lib/commonjs/components/Button.js +22 -6
  16. package/lib/commonjs/components/Button.js.map +1 -1
  17. package/lib/commonjs/components/Calendar.js +113 -31
  18. package/lib/commonjs/components/Calendar.js.map +1 -1
  19. package/lib/commonjs/components/Card.js +8 -3
  20. package/lib/commonjs/components/Card.js.map +1 -1
  21. package/lib/commonjs/components/Carousel.js +67 -21
  22. package/lib/commonjs/components/Carousel.js.map +1 -1
  23. package/lib/commonjs/components/Checkbox.js +12 -7
  24. package/lib/commonjs/components/Checkbox.js.map +1 -1
  25. package/lib/commonjs/components/Collapsible.js +47 -36
  26. package/lib/commonjs/components/Collapsible.js.map +1 -1
  27. package/lib/commonjs/components/Combobox.js +110 -48
  28. package/lib/commonjs/components/Combobox.js.map +1 -1
  29. package/lib/commonjs/components/Command.js +121 -77
  30. package/lib/commonjs/components/Command.js.map +1 -1
  31. package/lib/commonjs/components/DropdownMenu.js +78 -25
  32. package/lib/commonjs/components/DropdownMenu.js.map +1 -1
  33. package/lib/commonjs/components/Empty.js +24 -10
  34. package/lib/commonjs/components/Empty.js.map +1 -1
  35. package/lib/commonjs/components/FormField.js +63 -13
  36. package/lib/commonjs/components/FormField.js.map +1 -1
  37. package/lib/commonjs/components/IconButton.js +22 -6
  38. package/lib/commonjs/components/IconButton.js.map +1 -1
  39. package/lib/commonjs/components/Input.js +11 -13
  40. package/lib/commonjs/components/Input.js.map +1 -1
  41. package/lib/commonjs/components/InputGroup.js +19 -10
  42. package/lib/commonjs/components/InputGroup.js.map +1 -1
  43. package/lib/commonjs/components/InputOTP.js +46 -15
  44. package/lib/commonjs/components/InputOTP.js.map +1 -1
  45. package/lib/commonjs/components/Popover.js +90 -23
  46. package/lib/commonjs/components/Popover.js.map +1 -1
  47. package/lib/commonjs/components/Progress.js +105 -6
  48. package/lib/commonjs/components/Progress.js.map +1 -1
  49. package/lib/commonjs/components/RadioGroup.js +109 -51
  50. package/lib/commonjs/components/RadioGroup.js.map +1 -1
  51. package/lib/commonjs/components/Rating.js +109 -95
  52. package/lib/commonjs/components/Rating.js.map +1 -1
  53. package/lib/commonjs/components/Select.js +109 -43
  54. package/lib/commonjs/components/Select.js.map +1 -1
  55. package/lib/commonjs/components/Sheet.js +217 -29
  56. package/lib/commonjs/components/Sheet.js.map +1 -1
  57. package/lib/commonjs/components/Stepper.js +119 -24
  58. package/lib/commonjs/components/Stepper.js.map +1 -1
  59. package/lib/commonjs/components/Switch.js +21 -11
  60. package/lib/commonjs/components/Switch.js.map +1 -1
  61. package/lib/commonjs/components/Tabs.js +159 -28
  62. package/lib/commonjs/components/Tabs.js.map +1 -1
  63. package/lib/commonjs/components/Timeline.js +35 -12
  64. package/lib/commonjs/components/Timeline.js.map +1 -1
  65. package/lib/commonjs/components/Toast.js +163 -38
  66. package/lib/commonjs/components/Toast.js.map +1 -1
  67. package/lib/commonjs/components/index.js +12 -0
  68. package/lib/commonjs/components/index.js.map +1 -1
  69. package/lib/commonjs/components/types.js +16 -0
  70. package/lib/commonjs/components/types.js.map +1 -1
  71. package/lib/commonjs/theme/tokens.js +7 -7
  72. package/lib/commonjs/theme/tokens.js.map +1 -1
  73. package/lib/commonjs/utils/haptics.js +42 -0
  74. package/lib/commonjs/utils/haptics.js.map +1 -0
  75. package/lib/commonjs/utils/index.js +7 -0
  76. package/lib/commonjs/utils/index.js.map +1 -1
  77. package/lib/module/components/Accordion.js +28 -13
  78. package/lib/module/components/Accordion.js.map +1 -1
  79. package/lib/module/components/Alert.js +229 -73
  80. package/lib/module/components/Alert.js.map +1 -1
  81. package/lib/module/components/AlertDialog.js +144 -88
  82. package/lib/module/components/AlertDialog.js.map +1 -1
  83. package/lib/module/components/Avatar.js +31 -28
  84. package/lib/module/components/Avatar.js.map +1 -1
  85. package/lib/module/components/Badge.js +18 -7
  86. package/lib/module/components/Badge.js.map +1 -1
  87. package/lib/module/components/BottomSheet.js +64 -4
  88. package/lib/module/components/BottomSheet.js.map +1 -1
  89. package/lib/module/components/Breadcrumb.js +31 -9
  90. package/lib/module/components/Breadcrumb.js.map +1 -1
  91. package/lib/module/components/Button.js +22 -6
  92. package/lib/module/components/Button.js.map +1 -1
  93. package/lib/module/components/Calendar.js +114 -32
  94. package/lib/module/components/Calendar.js.map +1 -1
  95. package/lib/module/components/Card.js +8 -3
  96. package/lib/module/components/Card.js.map +1 -1
  97. package/lib/module/components/Carousel.js +67 -21
  98. package/lib/module/components/Carousel.js.map +1 -1
  99. package/lib/module/components/Checkbox.js +12 -7
  100. package/lib/module/components/Checkbox.js.map +1 -1
  101. package/lib/module/components/Collapsible.js +49 -38
  102. package/lib/module/components/Collapsible.js.map +1 -1
  103. package/lib/module/components/Combobox.js +110 -48
  104. package/lib/module/components/Combobox.js.map +1 -1
  105. package/lib/module/components/Command.js +121 -77
  106. package/lib/module/components/Command.js.map +1 -1
  107. package/lib/module/components/DropdownMenu.js +79 -26
  108. package/lib/module/components/DropdownMenu.js.map +1 -1
  109. package/lib/module/components/Empty.js +24 -10
  110. package/lib/module/components/Empty.js.map +1 -1
  111. package/lib/module/components/FormField.js +63 -14
  112. package/lib/module/components/FormField.js.map +1 -1
  113. package/lib/module/components/IconButton.js +22 -6
  114. package/lib/module/components/IconButton.js.map +1 -1
  115. package/lib/module/components/Input.js +12 -14
  116. package/lib/module/components/Input.js.map +1 -1
  117. package/lib/module/components/InputGroup.js +19 -10
  118. package/lib/module/components/InputGroup.js.map +1 -1
  119. package/lib/module/components/InputOTP.js +46 -15
  120. package/lib/module/components/InputOTP.js.map +1 -1
  121. package/lib/module/components/Popover.js +90 -24
  122. package/lib/module/components/Popover.js.map +1 -1
  123. package/lib/module/components/Progress.js +106 -8
  124. package/lib/module/components/Progress.js.map +1 -1
  125. package/lib/module/components/RadioGroup.js +108 -51
  126. package/lib/module/components/RadioGroup.js.map +1 -1
  127. package/lib/module/components/Rating.js +109 -95
  128. package/lib/module/components/Rating.js.map +1 -1
  129. package/lib/module/components/Select.js +111 -45
  130. package/lib/module/components/Select.js.map +1 -1
  131. package/lib/module/components/Sheet.js +216 -24
  132. package/lib/module/components/Sheet.js.map +1 -1
  133. package/lib/module/components/Stepper.js +120 -25
  134. package/lib/module/components/Stepper.js.map +1 -1
  135. package/lib/module/components/Switch.js +21 -11
  136. package/lib/module/components/Switch.js.map +1 -1
  137. package/lib/module/components/Tabs.js +158 -29
  138. package/lib/module/components/Tabs.js.map +1 -1
  139. package/lib/module/components/Timeline.js +35 -12
  140. package/lib/module/components/Timeline.js.map +1 -1
  141. package/lib/module/components/Toast.js +164 -38
  142. package/lib/module/components/Toast.js.map +1 -1
  143. package/lib/module/components/index.js +2 -2
  144. package/lib/module/components/index.js.map +1 -1
  145. package/lib/module/components/types.js +16 -0
  146. package/lib/module/components/types.js.map +1 -1
  147. package/lib/module/theme/tokens.js +7 -7
  148. package/lib/module/theme/tokens.js.map +1 -1
  149. package/lib/module/utils/haptics.js +38 -0
  150. package/lib/module/utils/haptics.js.map +1 -0
  151. package/lib/module/utils/index.js +1 -0
  152. package/lib/module/utils/index.js.map +1 -1
  153. package/lib/typescript/commonjs/components/Accordion.d.ts +6 -3
  154. package/lib/typescript/commonjs/components/Accordion.d.ts.map +1 -1
  155. package/lib/typescript/commonjs/components/Alert.d.ts +4 -4
  156. package/lib/typescript/commonjs/components/Alert.d.ts.map +1 -1
  157. package/lib/typescript/commonjs/components/AlertDialog.d.ts +5 -3
  158. package/lib/typescript/commonjs/components/AlertDialog.d.ts.map +1 -1
  159. package/lib/typescript/commonjs/components/Avatar.d.ts +9 -4
  160. package/lib/typescript/commonjs/components/Avatar.d.ts.map +1 -1
  161. package/lib/typescript/commonjs/components/Badge.d.ts +4 -4
  162. package/lib/typescript/commonjs/components/Badge.d.ts.map +1 -1
  163. package/lib/typescript/commonjs/components/BottomSheet.d.ts +13 -4
  164. package/lib/typescript/commonjs/components/BottomSheet.d.ts.map +1 -1
  165. package/lib/typescript/commonjs/components/Breadcrumb.d.ts +6 -5
  166. package/lib/typescript/commonjs/components/Breadcrumb.d.ts.map +1 -1
  167. package/lib/typescript/commonjs/components/Button.d.ts +3 -3
  168. package/lib/typescript/commonjs/components/Button.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/components/Calendar.d.ts +9 -1
  170. package/lib/typescript/commonjs/components/Calendar.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/components/Card.d.ts +3 -2
  172. package/lib/typescript/commonjs/components/Card.d.ts.map +1 -1
  173. package/lib/typescript/commonjs/components/Carousel.d.ts +4 -1
  174. package/lib/typescript/commonjs/components/Carousel.d.ts.map +1 -1
  175. package/lib/typescript/commonjs/components/Checkbox.d.ts +3 -3
  176. package/lib/typescript/commonjs/components/Checkbox.d.ts.map +1 -1
  177. package/lib/typescript/commonjs/components/Collapsible.d.ts.map +1 -1
  178. package/lib/typescript/commonjs/components/Combobox.d.ts +11 -6
  179. package/lib/typescript/commonjs/components/Combobox.d.ts.map +1 -1
  180. package/lib/typescript/commonjs/components/Command.d.ts +3 -0
  181. package/lib/typescript/commonjs/components/Command.d.ts.map +1 -1
  182. package/lib/typescript/commonjs/components/DropdownMenu.d.ts +4 -2
  183. package/lib/typescript/commonjs/components/DropdownMenu.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/components/Empty.d.ts +7 -4
  185. package/lib/typescript/commonjs/components/Empty.d.ts.map +1 -1
  186. package/lib/typescript/commonjs/components/FormField.d.ts +12 -4
  187. package/lib/typescript/commonjs/components/FormField.d.ts.map +1 -1
  188. package/lib/typescript/commonjs/components/IconButton.d.ts +3 -3
  189. package/lib/typescript/commonjs/components/IconButton.d.ts.map +1 -1
  190. package/lib/typescript/commonjs/components/Input.d.ts +2 -1
  191. package/lib/typescript/commonjs/components/Input.d.ts.map +1 -1
  192. package/lib/typescript/commonjs/components/InputGroup.d.ts +3 -2
  193. package/lib/typescript/commonjs/components/InputGroup.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/components/InputOTP.d.ts +9 -4
  195. package/lib/typescript/commonjs/components/InputOTP.d.ts.map +1 -1
  196. package/lib/typescript/commonjs/components/Popover.d.ts +1 -1
  197. package/lib/typescript/commonjs/components/Popover.d.ts.map +1 -1
  198. package/lib/typescript/commonjs/components/Progress.d.ts +13 -1
  199. package/lib/typescript/commonjs/components/Progress.d.ts.map +1 -1
  200. package/lib/typescript/commonjs/components/RadioGroup.d.ts +3 -2
  201. package/lib/typescript/commonjs/components/RadioGroup.d.ts.map +1 -1
  202. package/lib/typescript/commonjs/components/Rating.d.ts +3 -23
  203. package/lib/typescript/commonjs/components/Rating.d.ts.map +1 -1
  204. package/lib/typescript/commonjs/components/Select.d.ts +5 -4
  205. package/lib/typescript/commonjs/components/Select.d.ts.map +1 -1
  206. package/lib/typescript/commonjs/components/Sheet.d.ts +25 -6
  207. package/lib/typescript/commonjs/components/Sheet.d.ts.map +1 -1
  208. package/lib/typescript/commonjs/components/Stepper.d.ts +5 -3
  209. package/lib/typescript/commonjs/components/Stepper.d.ts.map +1 -1
  210. package/lib/typescript/commonjs/components/Switch.d.ts +3 -3
  211. package/lib/typescript/commonjs/components/Switch.d.ts.map +1 -1
  212. package/lib/typescript/commonjs/components/Tabs.d.ts +21 -4
  213. package/lib/typescript/commonjs/components/Tabs.d.ts.map +1 -1
  214. package/lib/typescript/commonjs/components/Timeline.d.ts +9 -3
  215. package/lib/typescript/commonjs/components/Timeline.d.ts.map +1 -1
  216. package/lib/typescript/commonjs/components/Toast.d.ts +3 -0
  217. package/lib/typescript/commonjs/components/Toast.d.ts.map +1 -1
  218. package/lib/typescript/commonjs/components/index.d.ts +5 -5
  219. package/lib/typescript/commonjs/components/index.d.ts.map +1 -1
  220. package/lib/typescript/commonjs/components/types.d.ts +35 -0
  221. package/lib/typescript/commonjs/components/types.d.ts.map +1 -1
  222. package/lib/typescript/commonjs/utils/haptics.d.ts +6 -0
  223. package/lib/typescript/commonjs/utils/haptics.d.ts.map +1 -0
  224. package/lib/typescript/commonjs/utils/index.d.ts +1 -0
  225. package/lib/typescript/commonjs/utils/index.d.ts.map +1 -1
  226. package/lib/typescript/module/components/Accordion.d.ts +6 -3
  227. package/lib/typescript/module/components/Accordion.d.ts.map +1 -1
  228. package/lib/typescript/module/components/Alert.d.ts +4 -4
  229. package/lib/typescript/module/components/Alert.d.ts.map +1 -1
  230. package/lib/typescript/module/components/AlertDialog.d.ts +5 -3
  231. package/lib/typescript/module/components/AlertDialog.d.ts.map +1 -1
  232. package/lib/typescript/module/components/Avatar.d.ts +9 -4
  233. package/lib/typescript/module/components/Avatar.d.ts.map +1 -1
  234. package/lib/typescript/module/components/Badge.d.ts +4 -4
  235. package/lib/typescript/module/components/Badge.d.ts.map +1 -1
  236. package/lib/typescript/module/components/BottomSheet.d.ts +13 -4
  237. package/lib/typescript/module/components/BottomSheet.d.ts.map +1 -1
  238. package/lib/typescript/module/components/Breadcrumb.d.ts +6 -5
  239. package/lib/typescript/module/components/Breadcrumb.d.ts.map +1 -1
  240. package/lib/typescript/module/components/Button.d.ts +3 -3
  241. package/lib/typescript/module/components/Button.d.ts.map +1 -1
  242. package/lib/typescript/module/components/Calendar.d.ts +9 -1
  243. package/lib/typescript/module/components/Calendar.d.ts.map +1 -1
  244. package/lib/typescript/module/components/Card.d.ts +3 -2
  245. package/lib/typescript/module/components/Card.d.ts.map +1 -1
  246. package/lib/typescript/module/components/Carousel.d.ts +4 -1
  247. package/lib/typescript/module/components/Carousel.d.ts.map +1 -1
  248. package/lib/typescript/module/components/Checkbox.d.ts +3 -3
  249. package/lib/typescript/module/components/Checkbox.d.ts.map +1 -1
  250. package/lib/typescript/module/components/Collapsible.d.ts.map +1 -1
  251. package/lib/typescript/module/components/Combobox.d.ts +11 -6
  252. package/lib/typescript/module/components/Combobox.d.ts.map +1 -1
  253. package/lib/typescript/module/components/Command.d.ts +3 -0
  254. package/lib/typescript/module/components/Command.d.ts.map +1 -1
  255. package/lib/typescript/module/components/DropdownMenu.d.ts +4 -2
  256. package/lib/typescript/module/components/DropdownMenu.d.ts.map +1 -1
  257. package/lib/typescript/module/components/Empty.d.ts +7 -4
  258. package/lib/typescript/module/components/Empty.d.ts.map +1 -1
  259. package/lib/typescript/module/components/FormField.d.ts +12 -4
  260. package/lib/typescript/module/components/FormField.d.ts.map +1 -1
  261. package/lib/typescript/module/components/IconButton.d.ts +3 -3
  262. package/lib/typescript/module/components/IconButton.d.ts.map +1 -1
  263. package/lib/typescript/module/components/Input.d.ts +2 -1
  264. package/lib/typescript/module/components/Input.d.ts.map +1 -1
  265. package/lib/typescript/module/components/InputGroup.d.ts +3 -2
  266. package/lib/typescript/module/components/InputGroup.d.ts.map +1 -1
  267. package/lib/typescript/module/components/InputOTP.d.ts +9 -4
  268. package/lib/typescript/module/components/InputOTP.d.ts.map +1 -1
  269. package/lib/typescript/module/components/Popover.d.ts +1 -1
  270. package/lib/typescript/module/components/Popover.d.ts.map +1 -1
  271. package/lib/typescript/module/components/Progress.d.ts +13 -1
  272. package/lib/typescript/module/components/Progress.d.ts.map +1 -1
  273. package/lib/typescript/module/components/RadioGroup.d.ts +3 -2
  274. package/lib/typescript/module/components/RadioGroup.d.ts.map +1 -1
  275. package/lib/typescript/module/components/Rating.d.ts +3 -23
  276. package/lib/typescript/module/components/Rating.d.ts.map +1 -1
  277. package/lib/typescript/module/components/Select.d.ts +5 -4
  278. package/lib/typescript/module/components/Select.d.ts.map +1 -1
  279. package/lib/typescript/module/components/Sheet.d.ts +25 -6
  280. package/lib/typescript/module/components/Sheet.d.ts.map +1 -1
  281. package/lib/typescript/module/components/Stepper.d.ts +5 -3
  282. package/lib/typescript/module/components/Stepper.d.ts.map +1 -1
  283. package/lib/typescript/module/components/Switch.d.ts +3 -3
  284. package/lib/typescript/module/components/Switch.d.ts.map +1 -1
  285. package/lib/typescript/module/components/Tabs.d.ts +21 -4
  286. package/lib/typescript/module/components/Tabs.d.ts.map +1 -1
  287. package/lib/typescript/module/components/Timeline.d.ts +9 -3
  288. package/lib/typescript/module/components/Timeline.d.ts.map +1 -1
  289. package/lib/typescript/module/components/Toast.d.ts +3 -0
  290. package/lib/typescript/module/components/Toast.d.ts.map +1 -1
  291. package/lib/typescript/module/components/index.d.ts +5 -5
  292. package/lib/typescript/module/components/index.d.ts.map +1 -1
  293. package/lib/typescript/module/components/types.d.ts +35 -0
  294. package/lib/typescript/module/components/types.d.ts.map +1 -1
  295. package/lib/typescript/module/utils/haptics.d.ts +6 -0
  296. package/lib/typescript/module/utils/haptics.d.ts.map +1 -0
  297. package/lib/typescript/module/utils/index.d.ts +1 -0
  298. package/lib/typescript/module/utils/index.d.ts.map +1 -1
  299. package/package.json +1 -1
@@ -4,9 +4,9 @@ import React from "react";
4
4
  import { Pressable, View } from "react-native";
5
5
  import Animated, { useAnimatedStyle, useSharedValue, withSpring } from "react-native-reanimated";
6
6
  import { useTheme } from "../theme/index.js";
7
+ import { triggerHaptic } from "../utils/haptics.js";
7
8
  import { renderIcon } from "./types.js";
8
9
  import { jsx as _jsx } from "react/jsx-runtime";
9
- // Pure SVG/Vector checkmark to avoid external dependencies
10
10
  function CheckIcon({
11
11
  color
12
12
  }) {
@@ -29,13 +29,16 @@ export function Checkbox({
29
29
  onCheckedChange,
30
30
  disabled = false,
31
31
  invalid = false,
32
+ glass = false,
33
+ haptic = true,
32
34
  style,
33
35
  icon,
34
36
  ...props
35
37
  }) {
36
38
  const {
37
39
  colors,
38
- components
40
+ components,
41
+ isDark
39
42
  } = useTheme();
40
43
  const progress = useSharedValue(checked ? 1 : 0);
41
44
  React.useEffect(() => {
@@ -46,10 +49,12 @@ export function Checkbox({
46
49
  }, [checked, progress]);
47
50
  const handlePress = () => {
48
51
  if (!disabled && onCheckedChange) {
52
+ if (haptic) triggerHaptic("selection");
49
53
  onCheckedChange(!checked);
50
54
  }
51
55
  };
52
- const borderColor = invalid ? colors.danger : checked ? colors.primary : colors.border;
56
+ const glassBg = isDark ? "rgba(15, 27, 45, 0.60)" : "rgba(255, 255, 255, 0.75)";
57
+ const borderColor = invalid ? colors.danger : checked ? colors.primary : glass ? isDark ? "rgba(248, 250, 252, 0.20)" : "rgba(15, 23, 42, 0.14)" : colors.border;
53
58
  const overlayStyle = useAnimatedStyle(() => ({
54
59
  opacity: progress.value,
55
60
  transform: [{
@@ -67,12 +72,12 @@ export function Checkbox({
67
72
  style: ({
68
73
  pressed
69
74
  }) => [{
70
- width: 18,
71
- height: 18,
72
- borderRadius: 4,
75
+ width: 20,
76
+ height: 20,
77
+ borderRadius: 5,
73
78
  borderWidth: components.borderWidth.focus,
74
79
  borderColor,
75
- backgroundColor: colors.transparent,
80
+ backgroundColor: glass ? glassBg : colors.transparent,
76
81
  justifyContent: "center",
77
82
  alignItems: "center",
78
83
  overflow: "hidden",
@@ -1 +1 @@
1
- {"version":3,"names":["React","Pressable","View","Animated","useAnimatedStyle","useSharedValue","withSpring","useTheme","renderIcon","jsx","_jsx","CheckIcon","color","style","width","height","borderLeftWidth","borderBottomWidth","borderColor","transform","rotate","marginTop","Checkbox","checked","onCheckedChange","disabled","invalid","icon","props","colors","components","progress","useEffect","value","damping","stiffness","handlePress","danger","primary","border","overlayStyle","opacity","scale","accessibilityRole","accessibilityState","onPress","pressed","borderRadius","borderWidth","focus","backgroundColor","transparent","justifyContent","alignItems","overflow","children","position","top","left","right","bottom","onPrimary"],"sourceRoot":"../../../src","sources":["components/Checkbox.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Pressable","View","Animated","useAnimatedStyle","useSharedValue","withSpring","useTheme","triggerHaptic","renderIcon","jsx","_jsx","CheckIcon","color","style","width","height","borderLeftWidth","borderBottomWidth","borderColor","transform","rotate","marginTop","Checkbox","checked","onCheckedChange","disabled","invalid","glass","haptic","icon","props","colors","components","isDark","progress","useEffect","value","damping","stiffness","handlePress","glassBg","danger","primary","border","overlayStyle","opacity","scale","accessibilityRole","accessibilityState","onPress","pressed","borderRadius","borderWidth","focus","backgroundColor","transparent","justifyContent","alignItems","overflow","children","position","top","left","right","bottom","onPrimary"],"sourceRoot":"../../../src","sources":["components/Checkbox.tsx"],"mappings":"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","ignoreList":[]}
@@ -2,8 +2,9 @@
2
2
 
3
3
  import React from "react";
4
4
  import { Pressable, View } from "react-native";
5
- import Animated, { useAnimatedStyle, useSharedValue, withTiming } from "react-native-reanimated";
6
- import { jsx as _jsx } from "react/jsx-runtime";
5
+ import Animated, { Easing, useAnimatedStyle, useSharedValue, withTiming } from "react-native-reanimated";
6
+ import { triggerHaptic } from "../utils/haptics.js";
7
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
8
  const CollapsibleContext = /*#__PURE__*/React.createContext(null);
8
9
  export function useCollapsible() {
9
10
  const context = React.useContext(CollapsibleContext);
@@ -52,11 +53,15 @@ export function CollapsibleTrigger({
52
53
  const {
53
54
  toggle
54
55
  } = useCollapsible();
56
+ const handlePress = () => {
57
+ triggerHaptic("selection");
58
+ toggle();
59
+ };
55
60
  return /*#__PURE__*/_jsx(Pressable, {
56
- onPress: toggle,
61
+ onPress: handlePress,
57
62
  style: style,
58
63
  ...props,
59
- children: children
64
+ children: typeof children === "function" ? children() : children
60
65
  });
61
66
  }
62
67
  export function CollapsibleContent({
@@ -67,46 +72,52 @@ export function CollapsibleContent({
67
72
  const {
68
73
  open
69
74
  } = useCollapsible();
70
- const [measuredHeight, setMeasuredHeight] = React.useState(0);
71
- const heightAnim = useSharedValue(open ? measuredHeight : 0);
72
-
73
- // Track if we have completed our first height layout measurement
74
- const hasMeasured = measuredHeight > 0;
75
+ const [contentHeight, setContentHeight] = React.useState(0);
76
+ const progress = useSharedValue(open ? 1 : 0);
75
77
  React.useEffect(() => {
76
- if (hasMeasured) {
77
- heightAnim.value = withTiming(open ? measuredHeight : 0, {
78
- duration: 220
79
- });
80
- } else {
81
- // Set initial value immediately without animating during initial layout
82
- heightAnim.value = open ? measuredHeight : 0;
83
- }
84
- }, [open, measuredHeight, hasMeasured, heightAnim]);
78
+ progress.value = withTiming(open ? 1 : 0, {
79
+ duration: 220,
80
+ easing: Easing.out(Easing.quad)
81
+ });
82
+ }, [open, progress]);
83
+ const animatedStyle = useAnimatedStyle(() => ({
84
+ height: progress.value * contentHeight,
85
+ opacity: progress.value
86
+ }));
85
87
  const handleLayout = e => {
86
- const {
87
- height
88
- } = e.nativeEvent.layout;
89
- if (height > 0 && height !== measuredHeight) {
90
- setMeasuredHeight(height);
88
+ const h = e.nativeEvent.layout.height;
89
+ if (h > 0 && Math.abs(h - contentHeight) > 1) {
90
+ setContentHeight(h);
91
91
  }
92
92
  };
93
- const animatedStyle = useAnimatedStyle(() => ({
94
- height: hasMeasured ? heightAnim.value : open ? undefined : 0,
95
- opacity: hasMeasured ? Math.min(1, heightAnim.value / Math.max(1, measuredHeight)) : open ? 1 : 0
96
- }));
97
- return /*#__PURE__*/_jsx(Animated.View, {
98
- pointerEvents: open ? "auto" : "none",
99
- style: [{
93
+ const childContent = typeof children === "function" ? children() : children;
94
+ return /*#__PURE__*/_jsxs(View, {
95
+ style: {
100
96
  overflow: "hidden"
101
- }, animatedStyle, style],
102
- ...props,
103
- children: /*#__PURE__*/_jsx(View, {
97
+ },
98
+ children: [/*#__PURE__*/_jsx(View, {
99
+ style: [style, {
100
+ position: "absolute",
101
+ opacity: 0,
102
+ top: -9999,
103
+ left: 0,
104
+ right: 0,
105
+ zIndex: -1
106
+ }],
104
107
  onLayout: handleLayout,
105
- style: {
106
- width: "100%"
107
- },
108
- children: children
109
- })
108
+ pointerEvents: "none",
109
+ children: childContent
110
+ }), /*#__PURE__*/_jsx(Animated.View, {
111
+ pointerEvents: open ? "auto" : "none",
112
+ style: [{
113
+ overflow: "hidden"
114
+ }, animatedStyle],
115
+ children: /*#__PURE__*/_jsx(View, {
116
+ style: style,
117
+ ...props,
118
+ children: childContent
119
+ })
120
+ })]
110
121
  });
111
122
  }
112
123
  //# sourceMappingURL=Collapsible.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Pressable","View","Animated","useAnimatedStyle","useSharedValue","withTiming","jsx","_jsx","CollapsibleContext","createContext","useCollapsible","context","useContext","Error","Collapsible","open","controlledOpen","defaultOpen","onOpenChange","children","style","props","uncontrolledOpen","setUncontrolledOpen","useState","isControlled","undefined","toggle","useCallback","nextOpen","Provider","value","CollapsibleTrigger","onPress","CollapsibleContent","measuredHeight","setMeasuredHeight","heightAnim","hasMeasured","useEffect","duration","handleLayout","e","height","nativeEvent","layout","animatedStyle","opacity","Math","min","max","pointerEvents","overflow","onLayout","width"],"sourceRoot":"../../../src","sources":["components/Collapsible.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Pressable","View","Animated","Easing","useAnimatedStyle","useSharedValue","withTiming","triggerHaptic","jsx","_jsx","jsxs","_jsxs","CollapsibleContext","createContext","useCollapsible","context","useContext","Error","Collapsible","open","controlledOpen","defaultOpen","onOpenChange","children","style","props","uncontrolledOpen","setUncontrolledOpen","useState","isControlled","undefined","toggle","useCallback","nextOpen","Provider","value","CollapsibleTrigger","handlePress","onPress","CollapsibleContent","contentHeight","setContentHeight","progress","useEffect","duration","easing","out","quad","animatedStyle","height","opacity","handleLayout","e","h","nativeEvent","layout","Math","abs","childContent","overflow","position","top","left","right","zIndex","onLayout","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Collapsible.tsx"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,8 @@ import React from "react";
4
4
  import { Dimensions, Modal, Pressable, ScrollView, StyleSheet, TextInput, View } from "react-native";
5
5
  import Animated, { useAnimatedStyle, useSharedValue, withTiming } from "react-native-reanimated";
6
6
  import { useTheme } from "../theme/index.js";
7
+ import { withAlpha } from "../utils/index.js";
8
+ import { triggerHaptic } from "../utils/haptics.js";
7
9
  import { Text } from "./Text.js";
8
10
  import { renderIcon } from "./types.js";
9
11
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -20,6 +22,8 @@ export function Combobox({
20
22
  onValueChange,
21
23
  open: controlledOpen,
22
24
  onOpenChange,
25
+ glass = false,
26
+ haptic = true,
23
27
  children
24
28
  }) {
25
29
  const {
@@ -53,7 +57,7 @@ export function Combobox({
53
57
  onValueChange(nextVal);
54
58
  }
55
59
  }, [controlledValue, onValueChange]);
56
- const measureTrigger = React.useCallback(() => {
60
+ const measureTrigger = React.useCallback(callback => {
57
61
  triggerRef.current?.measureInWindow((x, y, width, height) => {
58
62
  if (width > 0 && height > 0) {
59
63
  setTriggerLayout({
@@ -62,6 +66,7 @@ export function Combobox({
62
66
  width,
63
67
  height
64
68
  });
69
+ callback?.();
65
70
  }
66
71
  });
67
72
  }, []);
@@ -76,6 +81,8 @@ export function Combobox({
76
81
  triggerRef,
77
82
  triggerLayout,
78
83
  measureTrigger,
84
+ glass,
85
+ haptic,
79
86
  colors
80
87
  },
81
88
  children: /*#__PURE__*/_jsx(View, {
@@ -86,8 +93,6 @@ export function Combobox({
86
93
  })
87
94
  });
88
95
  }
89
-
90
- // Chevron pure arrow down icon
91
96
  function ChevronDownIcon({
92
97
  color
93
98
  }) {
@@ -101,17 +106,39 @@ function ChevronDownIcon({
101
106
  transform: [{
102
107
  rotate: "45deg"
103
108
  }],
104
- marginTop: -3,
105
- marginRight: 4
109
+ marginTop: -3
106
110
  }
107
111
  });
108
112
  }
113
+ function ClearIcon({
114
+ color
115
+ }) {
116
+ return /*#__PURE__*/_jsx(Text, {
117
+ style: {
118
+ color,
119
+ fontSize: 14,
120
+ fontWeight: "600",
121
+ lineHeight: 14
122
+ },
123
+ children: "\u2715"
124
+ });
125
+ }
126
+ const comboboxHeights = {
127
+ sm: 36,
128
+ md: 44,
129
+ lg: 52
130
+ };
109
131
  export function ComboboxInput({
110
132
  placeholder = "Select option...",
133
+ size = "md",
134
+ variant = "outline",
135
+ glass = false,
136
+ haptic = true,
111
137
  style,
112
138
  inputStyle,
113
139
  disabled = false,
114
- chevronIcon
140
+ chevronIcon,
141
+ searchIcon
115
142
  }) {
116
143
  const {
117
144
  inputValue,
@@ -126,20 +153,29 @@ export function ComboboxInput({
126
153
  components,
127
154
  radii,
128
155
  spacing,
129
- typography
156
+ typography,
157
+ isDark
130
158
  } = useTheme();
131
159
  const handleFocus = () => {
132
160
  if (!disabled) {
133
- measureTrigger();
134
- setOpen(true);
161
+ if (haptic) triggerHaptic("light");
162
+ measureTrigger(() => setOpen(true));
135
163
  }
136
164
  };
137
165
  const handlePress = () => {
138
166
  if (!disabled) {
139
- measureTrigger();
140
- setOpen(!open);
167
+ if (haptic) triggerHaptic("light");
168
+ measureTrigger(() => setOpen(!open));
141
169
  }
142
170
  };
171
+ const handleClear = () => {
172
+ if (haptic) triggerHaptic("light");
173
+ setInputValue("");
174
+ };
175
+ const glassBg = isDark ? "rgba(15, 27, 45, 0.70)" : "rgba(255, 255, 255, 0.85)";
176
+ const triggerBg = disabled ? withAlpha(colors.input, 0.55) : glass ? glassBg : variant === "filled" ? colors.surface : variant === "soft" ? withAlpha(colors.primary, 0.08) : colors.input;
177
+ const borderColor = disabled ? colors.border : open ? colors.primary : glass ? isDark ? "rgba(248, 250, 252, 0.20)" : "rgba(15, 23, 42, 0.14)" : colors.border;
178
+ const containerHeight = comboboxHeights[size];
143
179
  return /*#__PURE__*/_jsxs(Pressable, {
144
180
  ref: triggerRef,
145
181
  onPress: handlePress,
@@ -147,30 +183,41 @@ export function ComboboxInput({
147
183
  style: [{
148
184
  flexDirection: "row",
149
185
  alignItems: "center",
150
- height: 40,
151
- borderWidth: components.borderWidth.strong,
152
- borderColor: colors.border,
186
+ height: containerHeight,
187
+ borderWidth: open ? components.borderWidth.focus : components.borderWidth.strong,
188
+ borderColor,
153
189
  borderRadius: radii.lg,
154
- backgroundColor: colors.input,
190
+ backgroundColor: triggerBg,
155
191
  paddingHorizontal: spacing.md,
156
192
  width: "100%",
157
- opacity: disabled ? 0.5 : 1
193
+ gap: spacing.sm,
194
+ opacity: disabled ? 0.56 : 1
158
195
  }, style],
159
- children: [/*#__PURE__*/_jsx(TextInput, {
196
+ children: [searchIcon ? renderIcon(searchIcon, colors.textMuted, 16) : null, /*#__PURE__*/_jsx(TextInput, {
160
197
  editable: !disabled,
161
198
  placeholder: placeholder,
162
- placeholderTextColor: colors.textMuted,
199
+ placeholderTextColor: colors.placeholder,
163
200
  value: inputValue,
164
- onChangeText: setInputValue,
201
+ onChangeText: val => {
202
+ setInputValue(val);
203
+ if (!open) setOpen(true);
204
+ },
165
205
  onFocus: handleFocus,
166
206
  pointerEvents: disabled ? "none" : "auto",
167
207
  style: [{
168
208
  flex: 1,
169
- ...typography.bodySmall,
209
+ ...typography.body,
210
+ fontSize: size === "sm" ? 13 : 15,
170
211
  color: colors.text,
171
212
  padding: 0,
172
213
  height: "100%"
173
214
  }, inputStyle]
215
+ }), !!inputValue && /*#__PURE__*/_jsx(Pressable, {
216
+ onPress: handleClear,
217
+ hitSlop: 8,
218
+ children: /*#__PURE__*/_jsx(ClearIcon, {
219
+ color: colors.textMuted
220
+ })
174
221
  }), chevronIcon ? renderIcon(chevronIcon, colors.textMuted, 16) : /*#__PURE__*/_jsx(ChevronDownIcon, {
175
222
  color: colors.textMuted
176
223
  })]
@@ -186,11 +233,14 @@ export function ComboboxContent({
186
233
  open,
187
234
  setOpen,
188
235
  triggerLayout,
189
- colors
236
+ colors,
237
+ glass
190
238
  } = useCombobox();
191
239
  const {
192
240
  components,
193
- radii
241
+ radii,
242
+ spacing,
243
+ isDark
194
244
  } = useTheme();
195
245
  const progress = useSharedValue(open ? 1 : 0);
196
246
  React.useEffect(() => {
@@ -202,24 +252,25 @@ export function ComboboxContent({
202
252
  height: SCREEN_HEIGHT
203
253
  } = Dimensions.get("window");
204
254
  const spaceBelow = SCREEN_HEIGHT - (triggerLayout.pageY + triggerLayout.height);
205
- const dropdownMaxHeight = 220;
255
+ const dropdownMaxHeight = 240;
206
256
  const renderAbove = spaceBelow < dropdownMaxHeight + 40;
207
257
  const positionStyle = renderAbove ? {
208
258
  bottom: SCREEN_HEIGHT - triggerLayout.pageY + 6
209
259
  } : {
210
- top: triggerLayout.pageY + triggerLayout.height + 6
260
+ top: triggerLayout.pageY + triggerLayout.height + 4
211
261
  };
212
262
  const animatedStyle = useAnimatedStyle(() => ({
213
263
  opacity: progress.value,
214
264
  transform: [{
215
- translateY: (renderAbove ? 8 : -8) * (1 - progress.value)
265
+ translateY: (renderAbove ? 6 : -6) * (1 - progress.value)
216
266
  }]
217
267
  }));
218
- if (!open) return null;
268
+ const glassBg = isDark ? "rgba(15, 27, 45, 0.70)" : "rgba(255, 255, 255, 0.85)";
269
+ if (!open || triggerLayout.width === 0) return null;
219
270
  return /*#__PURE__*/_jsxs(Modal, {
220
271
  transparent: true,
221
272
  visible: open,
222
- animationType: "none",
273
+ animationType: "fade",
223
274
  statusBarTranslucent: true,
224
275
  navigationBarTranslucent: true,
225
276
  hardwareAccelerated: true,
@@ -233,12 +284,21 @@ export function ComboboxContent({
233
284
  position: "absolute",
234
285
  left: triggerLayout.pageX,
235
286
  width: triggerLayout.width,
236
- backgroundColor: colors.surface,
287
+ backgroundColor: glass ? glassBg : colors.surface,
237
288
  borderWidth: components.borderWidth.strong,
238
- borderColor: colors.border,
239
- borderRadius: radii.lg,
289
+ borderColor: glass ? isDark ? "rgba(248, 250, 252, 0.20)" : "rgba(15, 23, 42, 0.14)" : colors.border,
290
+ borderRadius: radii.xl,
240
291
  maxHeight: dropdownMaxHeight,
241
- overflow: "hidden"
292
+ padding: spacing.xs,
293
+ overflow: "hidden",
294
+ elevation: 8,
295
+ shadowColor: "#000",
296
+ shadowOffset: {
297
+ width: 0,
298
+ height: 4
299
+ },
300
+ shadowOpacity: 0.18,
301
+ shadowRadius: 12
242
302
  }, animatedStyle, positionStyle, style],
243
303
  children: children
244
304
  })]
@@ -248,19 +308,20 @@ export function ComboboxList({
248
308
  children,
249
309
  style
250
310
  }) {
251
- const {
252
- spacing
253
- } = useTheme();
254
311
  return /*#__PURE__*/_jsx(ScrollView, {
312
+ nestedScrollEnabled: true,
255
313
  keyboardShouldPersistTaps: "handled",
256
314
  style: [{
257
- flex: 1,
258
- padding: spacing.xs
315
+ flex: 1
259
316
  }, style],
260
- children: children
317
+ children: /*#__PURE__*/_jsx(View, {
318
+ style: {
319
+ gap: 2
320
+ },
321
+ children: children
322
+ })
261
323
  });
262
324
  }
263
- // Chevron checkmark for selected indicator
264
325
  function CheckIcon({
265
326
  color
266
327
  }) {
@@ -274,7 +335,7 @@ function CheckIcon({
274
335
  transform: [{
275
336
  rotate: "-45deg"
276
337
  }],
277
- marginRight: 6
338
+ marginRight: 4
278
339
  }
279
340
  });
280
341
  }
@@ -291,6 +352,7 @@ export function ComboboxItem({
291
352
  setOpen,
292
353
  inputValue,
293
354
  setInputValue,
355
+ haptic,
294
356
  colors
295
357
  } = useCombobox();
296
358
  const {
@@ -298,13 +360,12 @@ export function ComboboxItem({
298
360
  spacing,
299
361
  typography
300
362
  } = useTheme();
301
-
302
- // Automatic filter matching
303
363
  if (inputValue && !label.toLowerCase().includes(inputValue.toLowerCase())) {
304
364
  return null;
305
365
  }
306
366
  const isSelected = selectedValue === value;
307
367
  const handlePress = () => {
368
+ if (haptic) triggerHaptic("selection");
308
369
  onValueChange(value);
309
370
  setInputValue(label);
310
371
  setOpen(false);
@@ -314,22 +375,23 @@ export function ComboboxItem({
314
375
  style: ({
315
376
  pressed
316
377
  }) => [{
378
+ minHeight: 40,
317
379
  flexDirection: "row",
318
380
  alignItems: "center",
319
- paddingVertical: spacing.sm + 1,
381
+ paddingVertical: spacing.xs,
320
382
  paddingHorizontal: spacing.md,
321
- borderRadius: radii.md,
322
- backgroundColor: isSelected ? colors.surfaceMuted : pressed ? colors.surfaceMuted : colors.transparent,
383
+ borderRadius: radii.lg,
384
+ backgroundColor: isSelected ? colors.primarySoft : pressed ? colors.backgroundMuted : colors.transparent,
323
385
  justifyContent: "space-between"
324
386
  }, style],
325
387
  children: [/*#__PURE__*/_jsx(Text, {
326
388
  style: {
327
- ...typography.bodySmall,
328
- color: colors.text,
329
- fontWeight: isSelected ? "500" : "400"
389
+ ...typography.body,
390
+ color: isSelected ? colors.primary : colors.text,
391
+ fontWeight: isSelected ? "600" : "400"
330
392
  },
331
393
  children: children || label
332
- }), isSelected && (checkIcon ? renderIcon(checkIcon, colors.primary, 14) : /*#__PURE__*/_jsx(CheckIcon, {
394
+ }), isSelected && (checkIcon ? renderIcon(checkIcon, colors.primary, 16) : /*#__PURE__*/_jsx(CheckIcon, {
333
395
  color: colors.primary
334
396
  }))]
335
397
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","Dimensions","Modal","Pressable","ScrollView","StyleSheet","TextInput","View","Animated","useAnimatedStyle","useSharedValue","withTiming","useTheme","Text","renderIcon","jsx","_jsx","jsxs","_jsxs","ComboboxContext","createContext","useCombobox","context","useContext","Error","Combobox","value","controlledValue","onValueChange","open","controlledOpen","onOpenChange","children","colors","uncontrolledValue","setUncontrolledValue","useState","uncontrolledOpen","setUncontrolledOpen","inputValue","setInputValue","triggerLayout","setTriggerLayout","pageX","pageY","width","height","triggerRef","useRef","undefined","setOpen","useCallback","nextOpen","handleValueChange","nextVal","measureTrigger","current","measureInWindow","x","y","Provider","style","ChevronDownIcon","color","borderRightWidth","borderBottomWidth","borderColor","transform","rotate","marginTop","marginRight","ComboboxInput","placeholder","inputStyle","disabled","chevronIcon","components","radii","spacing","typography","handleFocus","handlePress","ref","onPress","flexDirection","alignItems","borderWidth","strong","border","borderRadius","lg","backgroundColor","input","paddingHorizontal","md","opacity","editable","placeholderTextColor","textMuted","onChangeText","onFocus","pointerEvents","flex","bodySmall","text","padding","ComboboxContent","overlayStyle","modalProps","progress","useEffect","duration","SCREEN_HEIGHT","get","spaceBelow","dropdownMaxHeight","renderAbove","positionStyle","bottom","top","animatedStyle","translateY","transparent","visible","animationType","statusBarTranslucent","navigationBarTranslucent","hardwareAccelerated","onRequestClose","absoluteFill","position","left","surface","maxHeight","overflow","ComboboxList","keyboardShouldPersistTaps","xs","CheckIcon","borderLeftWidth","ComboboxItem","label","checkIcon","selectedValue","toLowerCase","includes","isSelected","pressed","paddingVertical","sm","surfaceMuted","justifyContent","fontWeight","primary","ComboboxEmpty","caption"],"sourceRoot":"../../../src","sources":["components/Combobox.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","Dimensions","Modal","Pressable","ScrollView","StyleSheet","TextInput","View","Animated","useAnimatedStyle","useSharedValue","withTiming","useTheme","withAlpha","triggerHaptic","Text","renderIcon","jsx","_jsx","jsxs","_jsxs","ComboboxContext","createContext","useCombobox","context","useContext","Error","Combobox","value","controlledValue","onValueChange","open","controlledOpen","onOpenChange","glass","haptic","children","colors","uncontrolledValue","setUncontrolledValue","useState","uncontrolledOpen","setUncontrolledOpen","inputValue","setInputValue","triggerLayout","setTriggerLayout","pageX","pageY","width","height","triggerRef","useRef","undefined","setOpen","useCallback","nextOpen","handleValueChange","nextVal","measureTrigger","callback","current","measureInWindow","x","y","Provider","style","ChevronDownIcon","color","borderRightWidth","borderBottomWidth","borderColor","transform","rotate","marginTop","ClearIcon","fontSize","fontWeight","lineHeight","comboboxHeights","sm","md","lg","ComboboxInput","placeholder","size","variant","inputStyle","disabled","chevronIcon","searchIcon","components","radii","spacing","typography","isDark","handleFocus","handlePress","handleClear","glassBg","triggerBg","input","surface","primary","border","containerHeight","ref","onPress","flexDirection","alignItems","borderWidth","focus","strong","borderRadius","backgroundColor","paddingHorizontal","gap","opacity","textMuted","editable","placeholderTextColor","onChangeText","val","onFocus","pointerEvents","flex","body","text","padding","hitSlop","ComboboxContent","overlayStyle","modalProps","progress","useEffect","duration","SCREEN_HEIGHT","get","spaceBelow","dropdownMaxHeight","renderAbove","positionStyle","bottom","top","animatedStyle","translateY","transparent","visible","animationType","statusBarTranslucent","navigationBarTranslucent","hardwareAccelerated","onRequestClose","absoluteFill","position","left","xl","maxHeight","xs","overflow","elevation","shadowColor","shadowOffset","shadowOpacity","shadowRadius","ComboboxList","nestedScrollEnabled","keyboardShouldPersistTaps","CheckIcon","borderLeftWidth","marginRight","ComboboxItem","label","checkIcon","selectedValue","toLowerCase","includes","isSelected","pressed","minHeight","paddingVertical","primarySoft","backgroundMuted","justifyContent","ComboboxEmpty","caption"],"sourceRoot":"../../../src","sources":["components/Combobox.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SACEC,UAAU,EACVC,KAAK,EACLC,SAAS,EACTC,UAAU,EACVC,UAAU,EACVC,SAAS,EACTC,IAAI,QAKC,cAAc;AACrB,OAAOC,QAAQ,IACbC,gBAAgB,EAChBC,cAAc,EACdC,UAAU,QACL,yBAAyB;AAEhC,SAASC,QAAQ,QAA0B,mBAAU;AACrD,SAASC,SAAS,QAAQ,mBAAU;AACpC,SAASC,aAAa,QAAQ,qBAAkB;AAChD,SAASC,IAAI,QAAQ,WAAQ;AAC7B,SACEC,UAAU,QAML,YAAS;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAiCjB,MAAMC,eAAe,gBAAGrB,KAAK,CAACsB,aAAa,CAA8B,IAAI,CAAC;AAE9E,OAAO,SAASC,WAAWA,CAAA,EAAG;EAC5B,MAAMC,OAAO,GAAGxB,KAAK,CAACyB,UAAU,CAACJ,eAAe,CAAC;EACjD,IAAI,CAACG,OAAO,EAAE;IACZ,MAAM,IAAIE,KAAK,CAAC,gDAAgD,CAAC;EACnE;EACA,OAAOF,OAAO;AAChB;AAEA,OAAO,SAASG,QAAQA,CAAC;EACvBC,KAAK,EAAEC,eAAe;EACtBC,aAAa;EACbC,IAAI,EAAEC,cAAc;EACpBC,YAAY;EACZC,KAAK,GAAG,KAAK;EACbC,MAAM,GAAG,IAAI;EACbC;AACa,CAAC,EAAE;EAChB,MAAM;IAAEC;EAAO,CAAC,GAAGzB,QAAQ,CAAC,CAAC;EAE7B,MAAM,CAAC0B,iBAAiB,EAAEC,oBAAoB,CAAC,GAAGvC,KAAK,CAACwC,QAAQ,CAAC,EAAE,CAAC;EACpE,MAAM,CAACC,gBAAgB,EAAEC,mBAAmB,CAAC,GAAG1C,KAAK,CAACwC,QAAQ,CAAC,KAAK,CAAC;EACrE,MAAM,CAACG,UAAU,EAAEC,aAAa,CAAC,GAAG5C,KAAK,CAACwC,QAAQ,CAAC,EAAE,CAAC;EACtD,MAAM,CAACK,aAAa,EAAEC,gBAAgB,CAAC,GAAG9C,KAAK,CAACwC,QAAQ,CAAC;IACvDO,KAAK,EAAE,CAAC;IACRC,KAAK,EAAE,CAAC;IACRC,KAAK,EAAE,CAAC;IACRC,MAAM,EAAE;EACV,CAAC,CAAC;EAEF,MAAMC,UAAU,GAAGnD,KAAK,CAACoD,MAAM,CAAM,IAAI,CAAC;EAE1C,MAAMxB,KAAK,GACTC,eAAe,KAAKwB,SAAS,GAAGxB,eAAe,GAAGS,iBAAiB;EACrE,MAAMP,IAAI,GAAGC,cAAc,KAAKqB,SAAS,GAAGrB,cAAc,GAAGS,gBAAgB;EAE7E,MAAMa,OAAO,GAAGtD,KAAK,CAACuD,WAAW,CAC9BC,QAAiB,IAAK;IACrB,IAAIxB,cAAc,KAAKqB,SAAS,EAAE;MAChCX,mBAAmB,CAACc,QAAQ,CAAC;IAC/B;IACA,IAAIvB,YAAY,EAAE;MAChBA,YAAY,CAACuB,QAAQ,CAAC;IACxB;EACF,CAAC,EACD,CAACxB,cAAc,EAAEC,YAAY,CAC/B,CAAC;EAED,MAAMwB,iBAAiB,GAAGzD,KAAK,CAACuD,WAAW,CACxCG,OAAe,IAAK;IACnB,IAAI7B,eAAe,KAAKwB,SAAS,EAAE;MACjCd,oBAAoB,CAACmB,OAAO,CAAC;IAC/B;IACA,IAAI5B,aAAa,EAAE;MACjBA,aAAa,CAAC4B,OAAO,CAAC;IACxB;EACF,CAAC,EACD,CAAC7B,eAAe,EAAEC,aAAa,CACjC,CAAC;EAED,MAAM6B,cAAc,GAAG3D,KAAK,CAACuD,WAAW,CAAEK,QAAqB,IAAK;IAClET,UAAU,CAACU,OAAO,EAAEC,eAAe,CACjC,CAACC,CAAS,EAAEC,CAAS,EAAEf,KAAa,EAAEC,MAAc,KAAK;MACvD,IAAID,KAAK,GAAG,CAAC,IAAIC,MAAM,GAAG,CAAC,EAAE;QAC3BJ,gBAAgB,CAAC;UAAEC,KAAK,EAAEgB,CAAC;UAAEf,KAAK,EAAEgB,CAAC;UAAEf,KAAK;UAAEC;QAAO,CAAC,CAAC;QACvDU,QAAQ,GAAG,CAAC;MACd;IACF,CACF,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE1C,IAAA,CAACG,eAAe,CAAC4C,QAAQ;IACvBrC,KAAK,EAAE;MACLA,KAAK;MACLE,aAAa,EAAE2B,iBAAiB;MAChC1B,IAAI;MACJuB,OAAO;MACPX,UAAU;MACVC,aAAa;MACbO,UAAU;MACVN,aAAa;MACbc,cAAc;MACdzB,KAAK;MACLC,MAAM;MACNE;IACF,CAAE;IAAAD,QAAA,eAEFlB,IAAA,CAACX,IAAI;MAAC2D,KAAK,EAAE;QAAEjB,KAAK,EAAE;MAAO,CAAE;MAAAb,QAAA,EAAEA;IAAQ,CAAO;EAAC,CACzB,CAAC;AAE/B;AAEA,SAAS+B,eAAeA,CAAC;EAAEC;AAAyB,CAAC,EAAE;EACrD,oBACElD,IAAA,CAACX,IAAI;IACH2D,KAAK,EAAE;MACLjB,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE,CAAC;MACTmB,gBAAgB,EAAE,GAAG;MACrBC,iBAAiB,EAAE,GAAG;MACtBC,WAAW,EAAEH,KAAK;MAClBI,SAAS,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAQ,CAAC,CAAC;MAChCC,SAAS,EAAE,CAAC;IACd;EAAE,CACH,CAAC;AAEN;AAEA,SAASC,SAASA,CAAC;EAAEP;AAAyB,CAAC,EAAE;EAC/C,oBACElD,IAAA,CAACH,IAAI;IAACmD,KAAK,EAAE;MAAEE,KAAK;MAAEQ,QAAQ,EAAE,EAAE;MAAEC,UAAU,EAAE,KAAK;MAAEC,UAAU,EAAE;IAAG,CAAE;IAAA1C,QAAA,EAAC;EAEzE,CAAM,CAAC;AAEX;AAeA,MAAM2C,eAA6C,GAAG;EACpDC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE;AACN,CAAC;AAED,OAAO,SAASC,aAAaA,CAAC;EAC5BC,WAAW,GAAG,kBAAkB;EAChCC,IAAI,GAAG,IAAI;EACXC,OAAO,GAAG,SAAS;EACnBpD,KAAK,GAAG,KAAK;EACbC,MAAM,GAAG,IAAI;EACb+B,KAAK;EACLqB,UAAU;EACVC,QAAQ,GAAG,KAAK;EAChBC,WAAW;EACXC;AACkB,CAAC,EAAE;EACrB,MAAM;IACJ/C,UAAU;IACVC,aAAa;IACbb,IAAI;IACJuB,OAAO;IACPH,UAAU;IACVQ,cAAc;IACdtB;EACF,CAAC,GAAGd,WAAW,CAAC,CAAC;EACjB,MAAM;IAAEoE,UAAU;IAAEC,KAAK;IAAEC,OAAO;IAAEC,UAAU;IAAEC;EAAO,CAAC,GAAGnF,QAAQ,CAAC,CAAC;EAErE,MAAMoF,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI,CAACR,QAAQ,EAAE;MACb,IAAIrD,MAAM,EAAErB,aAAa,CAAC,OAAO,CAAC;MAClC6C,cAAc,CAAC,MAAML,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC;EACF,CAAC;EAED,MAAM2C,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI,CAACT,QAAQ,EAAE;MACb,IAAIrD,MAAM,EAAErB,aAAa,CAAC,OAAO,CAAC;MAClC6C,cAAc,CAAC,MAAML,OAAO,CAAC,CAACvB,IAAI,CAAC,CAAC;IACtC;EACF,CAAC;EAED,MAAMmE,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI/D,MAAM,EAAErB,aAAa,CAAC,OAAO,CAAC;IAClC8B,aAAa,CAAC,EAAE,CAAC;EACnB,CAAC;EAED,MAAMuD,OAAO,GAAGJ,MAAM,GAClB,wBAAwB,GACxB,2BAA2B;EAE/B,MAAMK,SAAS,GAAGZ,QAAQ,GACtB3E,SAAS,CAACwB,MAAM,CAACgE,KAAK,EAAE,IAAI,CAAC,GAC7BnE,KAAK,GACHiE,OAAO,GACPb,OAAO,KAAK,QAAQ,GAClBjD,MAAM,CAACiE,OAAO,GACdhB,OAAO,KAAK,MAAM,GAChBzE,SAAS,CAACwB,MAAM,CAACkE,OAAO,EAAE,IAAI,CAAC,GAC/BlE,MAAM,CAACgE,KAAK;EAEtB,MAAM9B,WAAW,GAAGiB,QAAQ,GACxBnD,MAAM,CAACmE,MAAM,GACbzE,IAAI,GACFM,MAAM,CAACkE,OAAO,GACdrE,KAAK,GACH6D,MAAM,GACJ,2BAA2B,GAC3B,wBAAwB,GAC1B1D,MAAM,CAACmE,MAAM;EAErB,MAAMC,eAAe,GAAG1B,eAAe,CAACM,IAAI,CAAC;EAE7C,oBACEjE,KAAA,CAACjB,SAAS;IACRuG,GAAG,EAAEvD,UAAW;IAChBwD,OAAO,EAAEV,WAAY;IACrBT,QAAQ,EAAEA,QAAS;IACnBtB,KAAK,EAAE,CACL;MACE0C,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,QAAQ;MACpB3D,MAAM,EAAEuD,eAAe;MACvBK,WAAW,EAAE/E,IAAI,GACb4D,UAAU,CAACmB,WAAW,CAACC,KAAK,GAC5BpB,UAAU,CAACmB,WAAW,CAACE,MAAM;MACjCzC,WAAW;MACX0C,YAAY,EAAErB,KAAK,CAACV,EAAE;MACtBgC,eAAe,EAAEd,SAAS;MAC1Be,iBAAiB,EAAEtB,OAAO,CAACZ,EAAE;MAC7BhC,KAAK,EAAE,MAAM;MACbmE,GAAG,EAAEvB,OAAO,CAACb,EAAE;MACfqC,OAAO,EAAE7B,QAAQ,GAAG,IAAI,GAAG;IAC7B,CAAC,EACDtB,KAAK,CACL;IAAA9B,QAAA,GAEDsD,UAAU,GAAG1E,UAAU,CAAC0E,UAAU,EAAErD,MAAM,CAACiF,SAAS,EAAE,EAAE,CAAC,GAAG,IAAI,eAEjEpG,IAAA,CAACZ,SAAS;MACRiH,QAAQ,EAAE,CAAC/B,QAAS;MACpBJ,WAAW,EAAEA,WAAY;MACzBoC,oBAAoB,EAAEnF,MAAM,CAAC+C,WAAY;MACzCxD,KAAK,EAAEe,UAAW;MAClB8E,YAAY,EAAGC,GAAG,IAAK;QACrB9E,aAAa,CAAC8E,GAAG,CAAC;QAClB,IAAI,CAAC3F,IAAI,EAAEuB,OAAO,CAAC,IAAI,CAAC;MAC1B,CAAE;MACFqE,OAAO,EAAE3B,WAAY;MACrB4B,aAAa,EAAEpC,QAAQ,GAAG,MAAM,GAAG,MAAO;MAC1CtB,KAAK,EAAE,CACL;QACE2D,IAAI,EAAE,CAAC;QACP,GAAG/B,UAAU,CAACgC,IAAI;QAClBlD,QAAQ,EAAES,IAAI,KAAK,IAAI,GAAG,EAAE,GAAG,EAAE;QACjCjB,KAAK,EAAE/B,MAAM,CAAC0F,IAAI;QAClBC,OAAO,EAAE,CAAC;QACV9E,MAAM,EAAE;MACV,CAAC,EACDqC,UAAU;IACV,CACH,CAAC,EAED,CAAC,CAAC5C,UAAU,iBACXzB,IAAA,CAACf,SAAS;MAACwG,OAAO,EAAET,WAAY;MAAC+B,OAAO,EAAE,CAAE;MAAA7F,QAAA,eAC1ClB,IAAA,CAACyD,SAAS;QAACP,KAAK,EAAE/B,MAAM,CAACiF;MAAU,CAAE;IAAC,CAC7B,CACZ,EAEA7B,WAAW,GACVzE,UAAU,CAACyE,WAAW,EAAEpD,MAAM,CAACiF,SAAS,EAAE,EAAE,CAAC,gBAE7CpG,IAAA,CAACiD,eAAe;MAACC,KAAK,EAAE/B,MAAM,CAACiF;IAAU,CAAE,CAC5C;EAAA,CACQ,CAAC;AAEhB;AAYA,OAAO,SAASY,eAAeA,CAAC;EAC9B9F,QAAQ;EACR8B,KAAK;EACLiE,YAAY;EACZC;AACoB,CAAC,EAAE;EACvB,MAAM;IAAErG,IAAI;IAAEuB,OAAO;IAAET,aAAa;IAAER,MAAM;IAAEH;EAAM,CAAC,GAAGX,WAAW,CAAC,CAAC;EACrE,MAAM;IAAEoE,UAAU;IAAEC,KAAK;IAAEC,OAAO;IAAEE;EAAO,CAAC,GAAGnF,QAAQ,CAAC,CAAC;EACzD,MAAMyH,QAAQ,GAAG3H,cAAc,CAACqB,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;EAE7C/B,KAAK,CAACsI,SAAS,CAAC,MAAM;IACpBD,QAAQ,CAACzG,KAAK,GAAGjB,UAAU,CAACoB,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE;MAAEwG,QAAQ,EAAE;IAAI,CAAC,CAAC;EAC9D,CAAC,EAAE,CAACxG,IAAI,EAAEsG,QAAQ,CAAC,CAAC;EAEpB,MAAM;IAAEnF,MAAM,EAAEsF;EAAc,CAAC,GAAGvI,UAAU,CAACwI,GAAG,CAAC,QAAQ,CAAC;EAC1D,MAAMC,UAAU,GACdF,aAAa,IAAI3F,aAAa,CAACG,KAAK,GAAGH,aAAa,CAACK,MAAM,CAAC;EAC9D,MAAMyF,iBAAiB,GAAG,GAAG;EAC7B,MAAMC,WAAW,GAAGF,UAAU,GAAGC,iBAAiB,GAAG,EAAE;EAEvD,MAAME,aAAa,GAAGD,WAAW,GAC7B;IAAEE,MAAM,EAAEN,aAAa,GAAG3F,aAAa,CAACG,KAAK,GAAG;EAAE,CAAC,GACnD;IAAE+F,GAAG,EAAElG,aAAa,CAACG,KAAK,GAAGH,aAAa,CAACK,MAAM,GAAG;EAAE,CAAC;EAE3D,MAAM8F,aAAa,GAAGvI,gBAAgB,CAAC,OAAO;IAC5C4G,OAAO,EAAEgB,QAAQ,CAACzG,KAAK;IACvB4C,SAAS,EAAE,CAAC;MAAEyE,UAAU,EAAE,CAACL,WAAW,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAGP,QAAQ,CAACzG,KAAK;IAAE,CAAC;EAC3E,CAAC,CAAC,CAAC;EAEH,MAAMuE,OAAO,GAAGJ,MAAM,GAClB,wBAAwB,GACxB,2BAA2B;EAE/B,IAAI,CAAChE,IAAI,IAAIc,aAAa,CAACI,KAAK,KAAK,CAAC,EAAE,OAAO,IAAI;EAEnD,oBACE7B,KAAA,CAAClB,KAAK;IACJgJ,WAAW;IACXC,OAAO,EAAEpH,IAAK;IACdqH,aAAa,EAAC,MAAM;IACpBC,oBAAoB;IACpBC,wBAAwB;IACxBC,mBAAmB;IACnBC,cAAc,EAAEA,CAAA,KAAMlG,OAAO,CAAC,KAAK,CAAE;IAAA,GACjC8E,UAAU;IAAAhG,QAAA,gBAEdlB,IAAA,CAACf,SAAS;MACR+D,KAAK,EAAE,CAAC7D,UAAU,CAACoJ,YAAY,EAAEtB,YAAY,CAAE;MAC/CxB,OAAO,EAAEA,CAAA,KAAMrD,OAAO,CAAC,KAAK;IAAE,CAC/B,CAAC,eAEFpC,IAAA,CAACV,QAAQ,CAACD,IAAI;MACZ2D,KAAK,EAAE,CACL;QACEwF,QAAQ,EAAE,UAAU;QACpBC,IAAI,EAAE9G,aAAa,CAACE,KAAK;QACzBE,KAAK,EAAEJ,aAAa,CAACI,KAAK;QAC1BiE,eAAe,EAAEhF,KAAK,GAAGiE,OAAO,GAAG9D,MAAM,CAACiE,OAAO;QACjDQ,WAAW,EAAEnB,UAAU,CAACmB,WAAW,CAACE,MAAM;QAC1CzC,WAAW,EAAErC,KAAK,GACd6D,MAAM,GACJ,2BAA2B,GAC3B,wBAAwB,GAC1B1D,MAAM,CAACmE,MAAM;QACjBS,YAAY,EAAErB,KAAK,CAACgE,EAAE;QACtBC,SAAS,EAAElB,iBAAiB;QAC5BX,OAAO,EAAEnC,OAAO,CAACiE,EAAE;QACnBC,QAAQ,EAAE,QAAQ;QAClBC,SAAS,EAAE,CAAC;QACZC,WAAW,EAAE,MAAM;QACnBC,YAAY,EAAE;UAAEjH,KAAK,EAAE,CAAC;UAAEC,MAAM,EAAE;QAAE,CAAC;QACrCiH,aAAa,EAAE,IAAI;QACnBC,YAAY,EAAE;MAChB,CAAC,EACDpB,aAAa,EACbH,aAAa,EACb3E,KAAK,CACL;MAAA9B,QAAA,EAEDA;IAAQ,CACI,CAAC;EAAA,CACX,CAAC;AAEZ;AAOA,OAAO,SAASiI,YAAYA,CAAC;EAAEjI,QAAQ;EAAE8B;AAAyB,CAAC,EAAE;EACnE,oBACEhD,IAAA,CAACd,UAAU;IACTkK,mBAAmB;IACnBC,yBAAyB,EAAC,SAAS;IACnCrG,KAAK,EAAE,CAAC;MAAE2D,IAAI,EAAE;IAAE,CAAC,EAAE3D,KAAK,CAAE;IAAA9B,QAAA,eAE5BlB,IAAA,CAACX,IAAI;MAAC2D,KAAK,EAAE;QAAEkD,GAAG,EAAE;MAAE,CAAE;MAAAhF,QAAA,EAAEA;IAAQ,CAAO;EAAC,CAChC,CAAC;AAEjB;AAUA,SAASoI,SAASA,CAAC;EAAEpG;AAAyB,CAAC,EAAE;EAC/C,oBACElD,IAAA,CAACX,IAAI;IACH2D,KAAK,EAAE;MACLjB,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE,CAAC;MACTuH,eAAe,EAAE,IAAI;MACrBnG,iBAAiB,EAAE,IAAI;MACvBC,WAAW,EAAEH,KAAK;MAClBI,SAAS,EAAE,CAAC;QAAEC,MAAM,EAAE;MAAS,CAAC,CAAC;MACjCiG,WAAW,EAAE;IACf;EAAE,CACH,CAAC;AAEN;AAEA,OAAO,SAASC,YAAYA,CAAC;EAC3B/I,KAAK;EACLgJ,KAAK;EACLxI,QAAQ;EACR8B,KAAK;EACL2G;AACiB,CAAC,EAAE;EACpB,MAAM;IACJjJ,KAAK,EAAEkJ,aAAa;IACpBhJ,aAAa;IACbwB,OAAO;IACPX,UAAU;IACVC,aAAa;IACbT,MAAM;IACNE;EACF,CAAC,GAAGd,WAAW,CAAC,CAAC;EACjB,MAAM;IAAEqE,KAAK;IAAEC,OAAO;IAAEC;EAAW,CAAC,GAAGlF,QAAQ,CAAC,CAAC;EAEjD,IAAI+B,UAAU,IAAI,CAACiI,KAAK,CAACG,WAAW,CAAC,CAAC,CAACC,QAAQ,CAACrI,UAAU,CAACoI,WAAW,CAAC,CAAC,CAAC,EAAE;IACzE,OAAO,IAAI;EACb;EAEA,MAAME,UAAU,GAAGH,aAAa,KAAKlJ,KAAK;EAE1C,MAAMqE,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAI9D,MAAM,EAAErB,aAAa,CAAC,WAAW,CAAC;IACtCgB,aAAa,CAACF,KAAK,CAAC;IACpBgB,aAAa,CAACgI,KAAK,CAAC;IACpBtH,OAAO,CAAC,KAAK,CAAC;EAChB,CAAC;EAED,oBACElC,KAAA,CAACjB,SAAS;IACRwG,OAAO,EAAEV,WAAY;IACrB/B,KAAK,EAAEA,CAAC;MAAEgH;IAAQ,CAAC,KAAK,CACtB;MACEC,SAAS,EAAE,EAAE;MACbvE,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,QAAQ;MACpBuE,eAAe,EAAEvF,OAAO,CAACiE,EAAE;MAC3B3C,iBAAiB,EAAEtB,OAAO,CAACZ,EAAE;MAC7BgC,YAAY,EAAErB,KAAK,CAACV,EAAE;MACtBgC,eAAe,EAAE+D,UAAU,GACvB5I,MAAM,CAACgJ,WAAW,GAClBH,OAAO,GACL7I,MAAM,CAACiJ,eAAe,GACtBjJ,MAAM,CAAC6G,WAAW;MACxBqC,cAAc,EAAE;IAClB,CAAC,EACDrH,KAAK,CACL;IAAA9B,QAAA,gBAEFlB,IAAA,CAACH,IAAI;MACHmD,KAAK,EAAE;QACL,GAAG4B,UAAU,CAACgC,IAAI;QAClB1D,KAAK,EAAE6G,UAAU,GAAG5I,MAAM,CAACkE,OAAO,GAAGlE,MAAM,CAAC0F,IAAI;QAChDlD,UAAU,EAAEoG,UAAU,GAAG,KAAK,GAAG;MACnC,CAAE;MAAA7I,QAAA,EAEDA,QAAQ,IAAIwI;IAAK,CACd,CAAC,EACNK,UAAU,KACRJ,SAAS,GACR7J,UAAU,CAAC6J,SAAS,EAAExI,MAAM,CAACkE,OAAO,EAAE,EAAE,CAAC,gBAEzCrF,IAAA,CAACsJ,SAAS;MAACpG,KAAK,EAAE/B,MAAM,CAACkE;IAAQ,CAAE,CACpC,CAAC;EAAA,CACK,CAAC;AAEhB;AAOA,OAAO,SAASiF,aAAaA,CAAC;EAC5BpJ,QAAQ,GAAG,mBAAmB;EAC9B8B;AACkB,CAAC,EAAE;EACrB,MAAM;IAAE7B;EAAO,CAAC,GAAGd,WAAW,CAAC,CAAC;EAChC,MAAM;IAAEsE,OAAO;IAAEC;EAAW,CAAC,GAAGlF,QAAQ,CAAC,CAAC;EAE1C,oBACEM,IAAA,CAACX,IAAI;IAAC2D,KAAK,EAAE,CAAC;MAAE8D,OAAO,EAAEnC,OAAO,CAACZ,EAAE;MAAE4B,UAAU,EAAE;IAAS,CAAC,EAAE3C,KAAK,CAAE;IAAA9B,QAAA,eAClElB,IAAA,CAACH,IAAI;MAACmD,KAAK,EAAE;QAAE,GAAG4B,UAAU,CAAC2F,OAAO;QAAErH,KAAK,EAAE/B,MAAM,CAACiF;MAAU,CAAE;MAAAlF,QAAA,EAC7DA;IAAQ,CACL;EAAC,CACH,CAAC;AAEX","ignoreList":[]}