@sincpro/mobile-ui 3.0.1 → 3.1.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 (308) hide show
  1. package/dist/Actions/Actions.Button.d.ts +6 -6
  2. package/dist/Actions/Actions.Button.js +650 -180
  3. package/dist/Actions/Actions.Dock.d.ts +1 -1
  4. package/dist/Actions/Actions.Dock.js +297 -18
  5. package/dist/Actions/Actions.FAB.js +100 -12
  6. package/dist/Actions/Actions.FilterButton.d.ts +17 -0
  7. package/dist/Actions/Actions.FilterButton.js +263 -33
  8. package/dist/Actions/Actions.IconButton.d.ts +1 -0
  9. package/dist/Actions/Actions.IconButton.js +196 -33
  10. package/dist/Actions/index.js +13 -13
  11. package/dist/Dialog/Confirmation.context.js +82 -16
  12. package/dist/Dialog/Dialog.ActionSheet.js +200 -41
  13. package/dist/Dialog/Dialog.Confirmation.js +168 -31
  14. package/dist/Dialog/Dialog.EditValue.js +449 -61
  15. package/dist/Dialog/Dialog.Sheet.d.ts +7 -3
  16. package/dist/Dialog/Dialog.Sheet.js +231 -15
  17. package/dist/Dialog/OverlayHost.d.ts +23 -0
  18. package/dist/Dialog/OverlayHost.js +196 -0
  19. package/dist/Dialog/SheetSurface.d.ts +24 -0
  20. package/dist/Dialog/SheetSurface.js +441 -0
  21. package/dist/Dialog/dialog-actions.d.ts +17 -0
  22. package/dist/Dialog/dialog-actions.js +59 -0
  23. package/dist/Dialog/index.d.ts +4 -1
  24. package/dist/Dialog/index.js +8 -7
  25. package/dist/Dialog/overlay.store.d.ts +24 -0
  26. package/dist/Dialog/overlay.store.js +59 -0
  27. package/dist/Dialog/requestConfirmation.js +20 -10
  28. package/dist/Display/Display.Accordion.js +185 -13
  29. package/dist/Display/Display.AmountSummary.js +206 -15
  30. package/dist/Display/Display.Avatar.js +93 -31
  31. package/dist/Display/Display.AvatarGroup.js +132 -17
  32. package/dist/Display/Display.Badge.d.ts +18 -2
  33. package/dist/Display/Display.Badge.js +117 -49
  34. package/dist/Display/Display.Card.js +163 -26
  35. package/dist/Display/Display.Carousel.js +459 -105
  36. package/dist/Display/Display.Chip.d.ts +4 -1
  37. package/dist/Display/Display.Chip.js +165 -31
  38. package/dist/Display/Display.CircleButton.d.ts +1 -0
  39. package/dist/Display/Display.CircleButton.js +86 -27
  40. package/dist/Display/Display.CopyableText.js +289 -66
  41. package/dist/Display/Display.CountRecords.js +60 -3
  42. package/dist/Display/Display.DataTable.js +123 -13
  43. package/dist/Display/Display.Date.js +243 -33
  44. package/dist/Display/Display.Divider.d.ts +10 -10
  45. package/dist/Display/Display.Divider.js +67 -20
  46. package/dist/Display/Display.ExpoImage.js +97 -8
  47. package/dist/Display/Display.GradientSurface.d.ts +9 -4
  48. package/dist/Display/Display.GradientSurface.js +196 -46
  49. package/dist/Display/Display.Icon.js +129 -15
  50. package/dist/Display/Display.IconBadge.js +95 -25
  51. package/dist/Display/Display.Image.d.ts +7 -1
  52. package/dist/Display/Display.Image.js +344 -39
  53. package/dist/Display/Display.KeyValue.js +90 -5
  54. package/dist/Display/Display.ListGroup.js +181 -9
  55. package/dist/Display/Display.ListItem.js +324 -28
  56. package/dist/Display/Display.Logo.js +84 -29
  57. package/dist/Display/Display.MediaCard.js +125 -4
  58. package/dist/Display/Display.MediaEmbed.d.ts +0 -5
  59. package/dist/Display/Display.MediaEmbed.js +170 -26
  60. package/dist/Display/Display.MenuButton.d.ts +2 -2
  61. package/dist/Display/Display.MenuButton.js +380 -94
  62. package/dist/Display/Display.MenuCard.js +122 -18
  63. package/dist/Display/Display.MenuGrid.js +43 -3
  64. package/dist/Display/Display.Monetary.js +90 -5
  65. package/dist/Display/Display.Pattern.js +306 -47
  66. package/dist/Display/Display.PriceTag.js +117 -14
  67. package/dist/Display/Display.ProductCard.js +154 -4
  68. package/dist/Display/Display.Rating.js +92 -11
  69. package/dist/Display/Display.SearchHistory.js +132 -6
  70. package/dist/Display/Display.SectionHeader.d.ts +5 -1
  71. package/dist/Display/Display.SectionHeader.js +125 -12
  72. package/dist/Display/Display.Stat.js +62 -3
  73. package/dist/Display/Display.StatCard.js +131 -7
  74. package/dist/Display/Display.StatusBadge.d.ts +29 -0
  75. package/dist/Display/Display.StatusBadge.js +68 -0
  76. package/dist/Display/Display.StatusDot.js +93 -18
  77. package/dist/Display/Display.Story.js +285 -35
  78. package/dist/Display/Display.StoryTray.js +354 -34
  79. package/dist/Display/Display.StoryViewer.js +571 -72
  80. package/dist/Display/Display.SwipeableRow.js +141 -20
  81. package/dist/Display/Display.Tag.d.ts +4 -1
  82. package/dist/Display/Display.Tag.js +66 -4
  83. package/dist/Display/Display.Timeline.js +102 -13
  84. package/dist/Display/Display.Tooltip.js +122 -26
  85. package/dist/Display/chevron.d.ts +6 -0
  86. package/dist/Display/chevron.js +32 -0
  87. package/dist/Display/count-badge.d.ts +21 -0
  88. package/dist/Display/count-badge.js +124 -0
  89. package/dist/Display/group-title.d.ts +10 -0
  90. package/dist/Display/group-title.js +53 -0
  91. package/dist/Display/icon-font.d.ts +3 -0
  92. package/dist/Display/icon-font.ios.d.ts +3 -0
  93. package/dist/Display/icon-font.ios.js +4 -0
  94. package/dist/Display/icon-font.js +7 -0
  95. package/dist/Display/icon-glyphs.d.ts +2 -0
  96. package/dist/Display/icon-glyphs.js +87 -0
  97. package/dist/Display/icon-map.d.ts +5 -1
  98. package/dist/Display/icon-map.js +340 -84
  99. package/dist/Display/icon-registry.d.ts +21 -0
  100. package/dist/Display/icon-registry.js +21 -0
  101. package/dist/Display/index.d.ts +6 -1
  102. package/dist/Display/index.js +53 -48
  103. package/dist/Display/pill.d.ts +16 -0
  104. package/dist/Display/pill.js +47 -0
  105. package/dist/Feedback/ErrorBoundary.js +35 -23
  106. package/dist/Feedback/Feedback.Banner.js +202 -24
  107. package/dist/Feedback/Feedback.DomainSplashScreen.js +246 -70
  108. package/dist/Feedback/Feedback.Empty.js +54 -3
  109. package/dist/Feedback/Feedback.EmptyState.js +114 -5
  110. package/dist/Feedback/Feedback.Error.d.ts +1 -1
  111. package/dist/Feedback/Feedback.Error.js +130 -5
  112. package/dist/Feedback/Feedback.Loading.d.ts +1 -1
  113. package/dist/Feedback/Feedback.Loading.js +70 -3
  114. package/dist/Feedback/Feedback.PermissionCard.js +161 -5
  115. package/dist/Feedback/Feedback.Progress.js +199 -41
  116. package/dist/Feedback/Feedback.ProgressCircle.js +184 -12
  117. package/dist/Feedback/Feedback.Skeleton.js +149 -36
  118. package/dist/Feedback/Feedback.Spinner.js +407 -79
  119. package/dist/Feedback/Feedback.Splash.js +240 -33
  120. package/dist/Feedback/Feedback.State.d.ts +17 -0
  121. package/dist/Feedback/Feedback.State.js +104 -0
  122. package/dist/Feedback/Toast.context.js +883 -167
  123. package/dist/Feedback/index.d.ts +3 -0
  124. package/dist/Feedback/index.js +15 -13
  125. package/dist/Form/Form.Checkbox.js +212 -22
  126. package/dist/Form/Form.ControlledCheckbox.d.ts +1 -1
  127. package/dist/Form/Form.ControlledCheckbox.js +46 -4
  128. package/dist/Form/Form.ControlledDropdown.d.ts +1 -1
  129. package/dist/Form/Form.ControlledDropdown.js +62 -4
  130. package/dist/Form/Form.ControlledInput.d.ts +4 -3
  131. package/dist/Form/Form.ControlledInput.js +72 -4
  132. package/dist/Form/Form.ControlledMonetaryInput.d.ts +6 -3
  133. package/dist/Form/Form.ControlledMonetaryInput.js +50 -4
  134. package/dist/Form/Form.ControlledRadioButton.d.ts +2 -2
  135. package/dist/Form/Form.ControlledRadioButton.js +45 -4
  136. package/dist/Form/Form.DatePicker.js +505 -107
  137. package/dist/Form/Form.Dropdown.js +303 -52
  138. package/dist/Form/Form.ErrorSummary.js +236 -44
  139. package/dist/Form/Form.Field.d.ts +24 -0
  140. package/dist/Form/Form.Field.js +55 -0
  141. package/dist/Form/Form.FractionalQuantityInput.js +508 -96
  142. package/dist/Form/Form.Input.d.ts +17 -3
  143. package/dist/Form/Form.Input.js +478 -29
  144. package/dist/Form/Form.KeyboardForm.d.ts +22 -8
  145. package/dist/Form/Form.KeyboardForm.js +83 -8
  146. package/dist/Form/Form.KeyboardToolbarHost.d.ts +14 -0
  147. package/dist/Form/Form.KeyboardToolbarHost.js +182 -0
  148. package/dist/Form/Form.MonetaryInput.js +164 -17
  149. package/dist/Form/Form.PickerField.d.ts +31 -0
  150. package/dist/Form/Form.PickerField.js +562 -0
  151. package/dist/Form/Form.PinInput.js +150 -15
  152. package/dist/Form/Form.QuantitySelector.js +229 -25
  153. package/dist/Form/Form.RadioButton.js +132 -24
  154. package/dist/Form/Form.Select.js +487 -56
  155. package/dist/Form/Form.Slider.js +133 -10
  156. package/dist/Form/Form.Switch.js +99 -4
  157. package/dist/Form/index.d.ts +11 -6
  158. package/dist/Form/index.js +26 -27
  159. package/dist/Form/input-text.d.ts +7 -0
  160. package/dist/Form/input-text.js +18 -0
  161. package/dist/Navigation/Navigation.AppBar.d.ts +3 -4
  162. package/dist/Navigation/Navigation.AppBar.js +535 -99
  163. package/dist/Navigation/Navigation.BottomNav.js +363 -98
  164. package/dist/Navigation/Navigation.CollapsingHeader.d.ts +28 -13
  165. package/dist/Navigation/Navigation.CollapsingHeader.js +369 -36
  166. package/dist/Navigation/Navigation.FloatingBar.js +71 -11
  167. package/dist/Navigation/Navigation.Menu.js +309 -95
  168. package/dist/Navigation/Navigation.MenuSection.js +80 -11
  169. package/dist/Navigation/Navigation.RowItem.d.ts +4 -2
  170. package/dist/Navigation/Navigation.RowItem.js +93 -8
  171. package/dist/Navigation/Navigation.Search.js +241 -27
  172. package/dist/Navigation/Navigation.SearchBar.d.ts +7 -1
  173. package/dist/Navigation/Navigation.SearchBar.js +218 -29
  174. package/dist/Navigation/Navigation.SearchSuggestions.js +77 -3
  175. package/dist/Navigation/Navigation.SegmentedControl.js +152 -14
  176. package/dist/Navigation/Navigation.Steps.js +105 -11
  177. package/dist/Navigation/Navigation.Tabs.js +449 -41
  178. package/dist/Navigation/index.d.ts +9 -4
  179. package/dist/Navigation/index.js +13 -13
  180. package/dist/Typography/Typography.Heading.js +33 -3
  181. package/dist/Typography/Typography.SelectableText.js +95 -7
  182. package/dist/Typography/Typography.Text.d.ts +4 -2
  183. package/dist/Typography/Typography.Text.js +217 -7
  184. package/dist/Typography/index.js +3 -3
  185. package/dist/branding.js +29 -13
  186. package/dist/icons/AddItemIcon.js +76 -2
  187. package/dist/icons/ArrangeCircle.js +82 -2
  188. package/dist/icons/ArrowDownIcon.js +63 -3
  189. package/dist/icons/ArrowUpIcon.js +63 -3
  190. package/dist/icons/BoxIcon.js +64 -2
  191. package/dist/icons/BoxTimeIcon.js +63 -2
  192. package/dist/icons/CalendarIcon.js +145 -2
  193. package/dist/icons/CardIcon.js +80 -2
  194. package/dist/icons/CashierIcon.js +39 -2
  195. package/dist/icons/CreditIcon.js +76 -3
  196. package/dist/icons/DuoIcon.js +75 -2
  197. package/dist/icons/HomeIcon.js +39 -2
  198. package/dist/icons/HomeIconOutlined.js +53 -2
  199. package/dist/icons/LogoIcon.js +87 -2
  200. package/dist/icons/MoneyReceiveIcon.js +86 -2
  201. package/dist/icons/PinIcon.js +39 -2
  202. package/dist/icons/ProfileIcon.js +47 -2
  203. package/dist/icons/SettingsIcon.js +114 -2
  204. package/dist/icons/SinpeIcon.js +60 -2
  205. package/dist/icons/ToggleOffIcon.js +53 -2
  206. package/dist/icons/WalletMoneyIcon.js +81 -2
  207. package/dist/index.d.ts +1 -0
  208. package/dist/index.js +8 -2
  209. package/dist/layouts/AuthContainer.d.ts +4 -5
  210. package/dist/layouts/AuthContainer.js +231 -7
  211. package/dist/layouts/BottomInset.js +4 -1
  212. package/dist/layouts/Container.d.ts +2 -2
  213. package/dist/layouts/Container.js +45 -3
  214. package/dist/layouts/GradientContainer.js +37 -5
  215. package/dist/layouts/PlainLayout.js +19 -3
  216. package/dist/layouts/ScrollContainer.d.ts +14 -9
  217. package/dist/layouts/ScrollContainer.js +125 -4
  218. package/dist/layouts/edges.d.ts +2 -0
  219. package/dist/layouts/edges.js +1 -0
  220. package/dist/primitives/AspectRatio.js +75 -3
  221. package/dist/primitives/Box.js +45 -3
  222. package/dist/primitives/Pressable.js +95 -5
  223. package/dist/primitives/Row.js +84 -13
  224. package/dist/primitives/Spacer.js +42 -5
  225. package/dist/primitives/Stack.js +66 -7
  226. package/dist/primitives/index.js +1 -1
  227. package/dist/theme/active.js +20 -18
  228. package/dist/theme/build.js +118 -87
  229. package/dist/theme/color.js +87 -87
  230. package/dist/theme/components/ThemedActivityIndicator.d.ts +2 -15
  231. package/dist/theme/components/ThemedActivityIndicator.js +35 -3
  232. package/dist/theme/components/index.js +1 -0
  233. package/dist/theme/contrast.js +32 -33
  234. package/dist/theme/css-vars.js +71 -75
  235. package/dist/theme/dark.js +116 -97
  236. package/dist/theme/default.js +116 -97
  237. package/dist/theme/define.js +16 -12
  238. package/dist/theme/index.d.ts +1 -0
  239. package/dist/theme/index.js +7 -6
  240. package/dist/theme/on-dark-surface.d.ts +12 -0
  241. package/dist/theme/on-dark-surface.js +13 -0
  242. package/dist/theme/theme.js +1 -0
  243. package/dist/theme/tw.js +3 -1
  244. package/dist/theme/types.js +0 -18
  245. package/dist/theme/typography.d.ts +1 -1
  246. package/dist/theme/typography.js +337 -303
  247. package/dist/theme/useTheme.js +12 -3
  248. package/dist/theme/useThemeVars.d.ts +9 -0
  249. package/dist/theme/useThemeVars.js +23 -0
  250. package/dist/theme/validate.js +175 -166
  251. package/dist/tokens/index.js +1 -1
  252. package/dist/tokens/motion.js +30 -13
  253. package/dist/utils/async.d.ts +14 -0
  254. package/dist/utils/async.js +22 -0
  255. package/dist/utils/criteria.js +66 -85
  256. package/dist/utils/date.d.ts +8 -2
  257. package/dist/utils/date.js +63 -50
  258. package/dist/utils/image.js +8 -8
  259. package/dist/utils/intl.d.ts +1 -0
  260. package/dist/utils/intl.js +13 -0
  261. package/dist/utils/keys.js +3 -5
  262. package/dist/utils/monetary.d.ts +1 -0
  263. package/dist/utils/monetary.js +28 -24
  264. package/dist/utils/progress.js +2 -3
  265. package/dist/utils/quantity.js +25 -26
  266. package/dist/utils/reorder.js +11 -20
  267. package/dist/utils/search.d.ts +4 -0
  268. package/dist/utils/search.js +12 -0
  269. package/dist/utils/serializer.js +38 -38
  270. package/dist/utils/useReducedMotion.js +32 -30
  271. package/dist/views/AppSplashView.js +117 -3
  272. package/dist/views/AuthFormView.d.ts +4 -5
  273. package/dist/views/AuthFormView.js +119 -11
  274. package/dist/views/FormViewV2.context.js +75 -23
  275. package/dist/views/FormViewV2.d.ts +4 -5
  276. package/dist/views/FormViewV2.js +658 -92
  277. package/dist/views/ListViewV2.context.js +91 -47
  278. package/dist/views/ListViewV2.d.ts +84 -43
  279. package/dist/views/ListViewV2.js +1350 -200
  280. package/dist/views/Wizard/Wizard.context.js +248 -84
  281. package/dist/views/Wizard/Wizard.js +260 -67
  282. package/dist/views/types/IListView.js +34 -31
  283. package/dist/widgets/CollectionOptions.js +557 -138
  284. package/dist/widgets/FilterBar.js +159 -7
  285. package/dist/widgets/FilterBuilder.js +375 -102
  286. package/dist/widgets/JSONViewer.js +275 -129
  287. package/dist/widgets/PromoBanner.js +336 -42
  288. package/dist/widgets/PromoModal.d.ts +2 -2
  289. package/dist/widgets/PromoModal.js +389 -62
  290. package/dist/widgets/QueryChoice.js +150 -8
  291. package/dist/widgets/QuickActions.js +120 -31
  292. package/dist/widgets/ReorderableList.js +399 -128
  293. package/dist/widgets/TimeZoneSelectorModal.js +458 -51
  294. package/dist/widgets/index.js +3 -3
  295. package/package.json +6 -1
  296. package/tailwind.preset.js +7 -5
  297. package/dist/Form/Form.InputField.d.ts +0 -10
  298. package/dist/Form/Form.InputField.js +0 -38
  299. package/dist/Form/Form.KeyboardToolbar.d.ts +0 -22
  300. package/dist/Form/Form.KeyboardToolbar.js +0 -66
  301. package/dist/Form/Form.PasswordInput.d.ts +0 -9
  302. package/dist/Form/Form.PasswordInput.js +0 -17
  303. package/dist/Form/Form.TextInput.d.ts +0 -8
  304. package/dist/Form/Form.TextInput.js +0 -8
  305. package/dist/primitives/BaseButton.d.ts +0 -150
  306. package/dist/primitives/BaseButton.js +0 -229
  307. package/dist/utils/useSheetTranslation.d.ts +0 -5
  308. package/dist/utils/useSheetTranslation.js +0 -23
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
1
+ import { c as _c } from "react/compiler-runtime";
2
2
  import Icon from "./Display.Icon.js";
3
3
  import Pressable from "../primitives/Pressable.js";
4
4
  import { useTheme } from "../theme/index.js";
@@ -7,20 +7,192 @@ import { Typography } from "../Typography/index.js";
7
7
  import { useReducedMotion } from "../utils/useReducedMotion.js";
8
8
  import { useState } from "react";
9
9
  import { LayoutAnimation, View } from "react-native";
10
- function AccordionItem({ title, children, defaultOpen = false, className, testID, }) {
11
- const [open, setOpen] = useState(defaultOpen);
12
- const theme = useTheme();
13
- const reducedMotion = useReducedMotion();
14
- const toggle = () => {
15
- if (!reducedMotion)
16
- LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
17
- setOpen((prev) => !prev);
10
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
11
+ function AccordionItem(t0) {
12
+ const $ = _c(30);
13
+ const {
14
+ title,
15
+ children,
16
+ defaultOpen: t1,
17
+ className,
18
+ testID
19
+ } = t0;
20
+ const defaultOpen = t1 === undefined ? false : t1;
21
+ const [open, setOpen] = useState(defaultOpen);
22
+ const theme = useTheme();
23
+ const reducedMotion = useReducedMotion();
24
+ let t2;
25
+ if ($[0] !== reducedMotion) {
26
+ t2 = () => {
27
+ if (!reducedMotion) {
28
+ LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
29
+ }
30
+ setOpen(_temp);
31
+ };
32
+ $[0] = reducedMotion;
33
+ $[1] = t2;
34
+ } else {
35
+ t2 = $[1];
36
+ }
37
+ const toggle = t2;
38
+ let t3;
39
+ if ($[2] !== className) {
40
+ t3 = cn("border-b border-border-default", className);
41
+ $[2] = className;
42
+ $[3] = t3;
43
+ } else {
44
+ t3 = $[3];
45
+ }
46
+ let t4;
47
+ if ($[4] !== open) {
48
+ t4 = {
49
+ expanded: open
18
50
  };
19
- return (_jsxs(View, { className: cn("border-b border-border-default", className), testID: testID, children: [_jsxs(Pressable, { accessibilityLabel: title, accessibilityRole: "button", accessibilityState: { expanded: open }, className: "flex-row items-center justify-between py-3", onPress: toggle, style: { minHeight: 48 }, children: [_jsx(Typography.Text, { className: "flex-1 text-text-primary", semibold: true, children: title }), _jsx(View, { style: { transform: [{ rotate: open ? "180deg" : "0deg" }] }, children: _jsx(Icon, { color: theme.icon.secondary, name: "expand", size: 18 }) })] }), open ? _jsx(View, { className: "pb-3", children: children }) : null] }));
51
+ $[4] = open;
52
+ $[5] = t4;
53
+ } else {
54
+ t4 = $[5];
55
+ }
56
+ let t5;
57
+ if ($[6] === Symbol.for("react.memo_cache_sentinel")) {
58
+ t5 = {
59
+ minHeight: 48
60
+ };
61
+ $[6] = t5;
62
+ } else {
63
+ t5 = $[6];
64
+ }
65
+ let t6;
66
+ if ($[7] !== title) {
67
+ t6 = _jsx(Typography.Text, {
68
+ className: "flex-1 text-text-primary",
69
+ semibold: true,
70
+ children: title
71
+ });
72
+ $[7] = title;
73
+ $[8] = t6;
74
+ } else {
75
+ t6 = $[8];
76
+ }
77
+ const t7 = open ? "180deg" : "0deg";
78
+ let t8;
79
+ if ($[9] !== t7) {
80
+ t8 = {
81
+ transform: [{
82
+ rotate: t7
83
+ }]
84
+ };
85
+ $[9] = t7;
86
+ $[10] = t8;
87
+ } else {
88
+ t8 = $[10];
89
+ }
90
+ let t9;
91
+ if ($[11] !== theme.icon.secondary) {
92
+ t9 = _jsx(Icon, {
93
+ color: theme.icon.secondary,
94
+ name: "expand",
95
+ size: 18
96
+ });
97
+ $[11] = theme.icon.secondary;
98
+ $[12] = t9;
99
+ } else {
100
+ t9 = $[12];
101
+ }
102
+ let t10;
103
+ if ($[13] !== t8 || $[14] !== t9) {
104
+ t10 = _jsx(View, {
105
+ style: t8,
106
+ children: t9
107
+ });
108
+ $[13] = t8;
109
+ $[14] = t9;
110
+ $[15] = t10;
111
+ } else {
112
+ t10 = $[15];
113
+ }
114
+ let t11;
115
+ if ($[16] !== t10 || $[17] !== t4 || $[18] !== t6 || $[19] !== title || $[20] !== toggle) {
116
+ t11 = _jsxs(Pressable, {
117
+ accessibilityLabel: title,
118
+ accessibilityRole: "button",
119
+ accessibilityState: t4,
120
+ className: "flex-row items-center justify-between py-3",
121
+ onPress: toggle,
122
+ style: t5,
123
+ children: [t6, t10]
124
+ });
125
+ $[16] = t10;
126
+ $[17] = t4;
127
+ $[18] = t6;
128
+ $[19] = title;
129
+ $[20] = toggle;
130
+ $[21] = t11;
131
+ } else {
132
+ t11 = $[21];
133
+ }
134
+ let t12;
135
+ if ($[22] !== children || $[23] !== open) {
136
+ t12 = open ? _jsx(View, {
137
+ className: "pb-3",
138
+ children: children
139
+ }) : null;
140
+ $[22] = children;
141
+ $[23] = open;
142
+ $[24] = t12;
143
+ } else {
144
+ t12 = $[24];
145
+ }
146
+ let t13;
147
+ if ($[25] !== t11 || $[26] !== t12 || $[27] !== t3 || $[28] !== testID) {
148
+ t13 = _jsxs(View, {
149
+ className: t3,
150
+ testID: testID,
151
+ children: [t11, t12]
152
+ });
153
+ $[25] = t11;
154
+ $[26] = t12;
155
+ $[27] = t3;
156
+ $[28] = testID;
157
+ $[29] = t13;
158
+ } else {
159
+ t13 = $[29];
160
+ }
161
+ return t13;
162
+ }
163
+ function _temp(prev) {
164
+ return !prev;
20
165
  }
21
- function AccordionRoot({ children, className }) {
22
- return _jsx(View, { className: cn("bg-bg-card rounded-lg", className), children: children });
166
+ function AccordionRoot(t0) {
167
+ const $ = _c(5);
168
+ const {
169
+ children,
170
+ className
171
+ } = t0;
172
+ let t1;
173
+ if ($[0] !== className) {
174
+ t1 = cn("bg-bg-card rounded-lg", className);
175
+ $[0] = className;
176
+ $[1] = t1;
177
+ } else {
178
+ t1 = $[1];
179
+ }
180
+ let t2;
181
+ if ($[2] !== children || $[3] !== t1) {
182
+ t2 = _jsx(View, {
183
+ className: t1,
184
+ children: children
185
+ });
186
+ $[2] = children;
187
+ $[3] = t1;
188
+ $[4] = t2;
189
+ } else {
190
+ t2 = $[4];
191
+ }
192
+ return t2;
23
193
  }
24
- const Accordion = Object.assign(AccordionRoot, { Item: AccordionItem });
194
+ const Accordion = Object.assign(AccordionRoot, {
195
+ Item: AccordionItem
196
+ });
25
197
  export default Accordion;
26
198
  export { Accordion };
@@ -1,25 +1,216 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "nativewind/jsx-runtime";
1
+ import { c as _c } from "react/compiler-runtime";
2
2
  import { cn } from "../theme/tw.js";
3
3
  import { Typography } from "../Typography/index.js";
4
- import { createContext, useContext } from "react";
4
+ import { createContext, useContext, useMemo } from "react";
5
5
  import { View } from "react-native";
6
6
  import Monetary from "./Display.Monetary";
7
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "nativewind/jsx-runtime";
7
8
  const AmountSummaryContext = createContext(undefined);
8
- function Root({ children, currencySymbol, variant = "card", className, testID, }) {
9
- return (_jsx(AmountSummaryContext.Provider, { value: { currencySymbol }, children: _jsx(View, { className: cn("gap-1", variant === "card"
10
- ? "rounded-xl border border-border-light bg-bg-card px-4 py-2"
11
- : "", className), testID: testID, children: children }) }));
9
+ function Root(t0) {
10
+ const $ = _c(12);
11
+ const {
12
+ children,
13
+ currencySymbol,
14
+ variant: t1,
15
+ className,
16
+ testID
17
+ } = t0;
18
+ const variant = t1 === undefined ? "card" : t1;
19
+ let t2;
20
+ if ($[0] !== currencySymbol) {
21
+ t2 = {
22
+ currencySymbol
23
+ };
24
+ $[0] = currencySymbol;
25
+ $[1] = t2;
26
+ } else {
27
+ t2 = $[1];
28
+ }
29
+ const context = t2;
30
+ const t3 = variant === "card" ? "rounded-xl border border-border-light bg-bg-card px-4 py-2" : "";
31
+ let t4;
32
+ if ($[2] !== className || $[3] !== t3) {
33
+ t4 = cn("gap-1", t3, className);
34
+ $[2] = className;
35
+ $[3] = t3;
36
+ $[4] = t4;
37
+ } else {
38
+ t4 = $[4];
39
+ }
40
+ let t5;
41
+ if ($[5] !== children || $[6] !== t4 || $[7] !== testID) {
42
+ t5 = _jsx(View, {
43
+ className: t4,
44
+ testID: testID,
45
+ children: children
46
+ });
47
+ $[5] = children;
48
+ $[6] = t4;
49
+ $[7] = testID;
50
+ $[8] = t5;
51
+ } else {
52
+ t5 = $[8];
53
+ }
54
+ let t6;
55
+ if ($[9] !== context || $[10] !== t5) {
56
+ t6 = _jsx(AmountSummaryContext.Provider, {
57
+ value: context,
58
+ children: t5
59
+ });
60
+ $[9] = context;
61
+ $[10] = t5;
62
+ $[11] = t6;
63
+ } else {
64
+ t6 = $[11];
65
+ }
66
+ return t6;
12
67
  }
13
- function Row({ label, value, currencySymbol, prefix, className, labelClassName, valueClassName, testID, }) {
14
- const context = useContext(AmountSummaryContext);
15
- const resolvedCurrencySymbol = currencySymbol ?? context?.currencySymbol;
16
- if (resolvedCurrencySymbol === undefined) {
17
- throw new Error("AmountSummary.Row requires a currencySymbol or an AmountSummary.Root.");
18
- }
19
- return (_jsxs(View, { className: cn("flex-row items-center justify-between gap-3 py-1", className), testID: testID, children: [_jsx(Typography.Text, { className: cn("flex-1 text-text-secondary", labelClassName), children: label }), _jsx(Monetary, { className: cn("text-text-primary", valueClassName), currencySymbol: resolvedCurrencySymbol, prefix: prefix, semibold: true, textVariant: "body", value: value })] }));
68
+ function Row(t0) {
69
+ const $ = _c(19);
70
+ const {
71
+ label,
72
+ value,
73
+ currencySymbol,
74
+ prefix,
75
+ className,
76
+ labelClassName,
77
+ valueClassName,
78
+ testID
79
+ } = t0;
80
+ const context = useContext(AmountSummaryContext);
81
+ const resolvedCurrencySymbol = currencySymbol ?? context?.currencySymbol;
82
+ if (resolvedCurrencySymbol === undefined) {
83
+ throw new Error("AmountSummary.Row requires a currencySymbol or an AmountSummary.Root.");
84
+ }
85
+ let t1;
86
+ if ($[0] !== className) {
87
+ t1 = cn("flex-row items-center justify-between gap-3 py-1", className);
88
+ $[0] = className;
89
+ $[1] = t1;
90
+ } else {
91
+ t1 = $[1];
92
+ }
93
+ let t2;
94
+ if ($[2] !== labelClassName) {
95
+ t2 = cn("flex-1 text-text-secondary", labelClassName);
96
+ $[2] = labelClassName;
97
+ $[3] = t2;
98
+ } else {
99
+ t2 = $[3];
100
+ }
101
+ let t3;
102
+ if ($[4] !== label || $[5] !== t2) {
103
+ t3 = _jsx(Typography.Text, {
104
+ className: t2,
105
+ children: label
106
+ });
107
+ $[4] = label;
108
+ $[5] = t2;
109
+ $[6] = t3;
110
+ } else {
111
+ t3 = $[6];
112
+ }
113
+ let t4;
114
+ if ($[7] !== valueClassName) {
115
+ t4 = cn("text-text-primary", valueClassName);
116
+ $[7] = valueClassName;
117
+ $[8] = t4;
118
+ } else {
119
+ t4 = $[8];
120
+ }
121
+ let t5;
122
+ if ($[9] !== prefix || $[10] !== resolvedCurrencySymbol || $[11] !== t4 || $[12] !== value) {
123
+ t5 = _jsx(Monetary, {
124
+ className: t4,
125
+ currencySymbol: resolvedCurrencySymbol,
126
+ prefix: prefix,
127
+ semibold: true,
128
+ textVariant: "body",
129
+ value: value
130
+ });
131
+ $[9] = prefix;
132
+ $[10] = resolvedCurrencySymbol;
133
+ $[11] = t4;
134
+ $[12] = value;
135
+ $[13] = t5;
136
+ } else {
137
+ t5 = $[13];
138
+ }
139
+ let t6;
140
+ if ($[14] !== t1 || $[15] !== t3 || $[16] !== t5 || $[17] !== testID) {
141
+ t6 = _jsxs(View, {
142
+ className: t1,
143
+ testID: testID,
144
+ children: [t3, t5]
145
+ });
146
+ $[14] = t1;
147
+ $[15] = t3;
148
+ $[16] = t5;
149
+ $[17] = testID;
150
+ $[18] = t6;
151
+ } else {
152
+ t6 = $[18];
153
+ }
154
+ return t6;
20
155
  }
21
156
  function Total(props) {
22
- return (_jsxs(_Fragment, { children: [_jsx(View, { className: "my-1 border-t border-border-light" }), _jsx(Row, { ...props, className: cn("py-2", props.className), labelClassName: cn("text-text-primary font-semibold", props.labelClassName), valueClassName: cn("text-text-primary", props.valueClassName) })] }));
157
+ const $ = _c(12);
158
+ let t0;
159
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
160
+ t0 = _jsx(View, {
161
+ className: "my-1 border-t border-border-light"
162
+ });
163
+ $[0] = t0;
164
+ } else {
165
+ t0 = $[0];
166
+ }
167
+ let t1;
168
+ if ($[1] !== props.className) {
169
+ t1 = cn("py-2", props.className);
170
+ $[1] = props.className;
171
+ $[2] = t1;
172
+ } else {
173
+ t1 = $[2];
174
+ }
175
+ let t2;
176
+ if ($[3] !== props.labelClassName) {
177
+ t2 = cn("text-text-primary font-semibold", props.labelClassName);
178
+ $[3] = props.labelClassName;
179
+ $[4] = t2;
180
+ } else {
181
+ t2 = $[4];
182
+ }
183
+ let t3;
184
+ if ($[5] !== props.valueClassName) {
185
+ t3 = cn("text-text-primary", props.valueClassName);
186
+ $[5] = props.valueClassName;
187
+ $[6] = t3;
188
+ } else {
189
+ t3 = $[6];
190
+ }
191
+ let t4;
192
+ if ($[7] !== props || $[8] !== t1 || $[9] !== t2 || $[10] !== t3) {
193
+ t4 = _jsxs(_Fragment, {
194
+ children: [t0, _jsx(Row, {
195
+ ...props,
196
+ className: t1,
197
+ labelClassName: t2,
198
+ valueClassName: t3
199
+ })]
200
+ });
201
+ $[7] = props;
202
+ $[8] = t1;
203
+ $[9] = t2;
204
+ $[10] = t3;
205
+ $[11] = t4;
206
+ } else {
207
+ t4 = $[11];
208
+ }
209
+ return t4;
23
210
  }
24
- const AmountSummary = { Root, Row, Total };
211
+ const AmountSummary = {
212
+ Root,
213
+ Row,
214
+ Total
215
+ };
25
216
  export default AmountSummary;
@@ -1,40 +1,102 @@
1
- import { jsx as _jsx } from "nativewind/jsx-runtime";
1
+ import { c as _c } from "react/compiler-runtime";
2
2
  import { cn, tv } from "../theme/tw.js";
3
+ import { fontSizes } from "../theme/typography.js";
3
4
  import { Typography } from "../Typography/index.js";
4
5
  import { View } from "react-native";
6
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
5
7
  const avatar = tv({
6
- base: "justify-center items-center rounded-full shadow-sm",
7
- variants: {
8
- size: {
9
- small: "w-8 h-8",
10
- medium: "w-10 h-10",
11
- large: "w-12 h-12",
12
- xlarge: "w-16 h-16",
13
- },
14
- colorScheme: {
15
- default: "bg-bg-hover",
16
- primary: "bg-primary/20",
17
- secondary: "bg-secondary/20",
18
- success: "bg-container-success",
19
- warning: "bg-container-warning",
20
- },
21
- },
22
- defaultVariants: {
23
- size: "medium",
24
- colorScheme: "default",
8
+ base: "justify-center items-center rounded-full shadow-sm",
9
+ variants: {
10
+ size: {
11
+ small: "w-8 h-8",
12
+ medium: "w-10 h-10",
13
+ large: "w-12 h-12",
14
+ xlarge: "w-16 h-16"
25
15
  },
16
+ colorScheme: {
17
+ default: "bg-bg-hover",
18
+ primary: "bg-primary/20",
19
+ secondary: "bg-secondary/20",
20
+ success: "bg-container-success",
21
+ warning: "bg-container-warning"
22
+ }
23
+ },
24
+ defaultVariants: {
25
+ size: "medium",
26
+ colorScheme: "default"
27
+ }
26
28
  });
27
- const Avatar = ({ initials, size, colorScheme = "default", className }) => {
28
- // Map size prop to Tailwind text classes
29
- const getTextSize = () => {
30
- if (size && size <= 32)
31
- return "text-xs";
32
- if (size && size <= 40)
33
- return "text-sm";
34
- if (size && size <= 48)
35
- return "text-base";
36
- return "text-lg";
29
+ const Avatar = t0 => {
30
+ const $ = _c(14);
31
+ const {
32
+ initials,
33
+ size,
34
+ colorScheme: t1,
35
+ className
36
+ } = t0;
37
+ const colorScheme = t1 === undefined ? "default" : t1;
38
+ const initialsSize = size && size <= 32 ? fontSizes.xs : size && size <= 40 ? fontSizes.sm : size && size <= 48 ? fontSizes.base : fontSizes.lg;
39
+ let t2;
40
+ if ($[0] !== className || $[1] !== colorScheme) {
41
+ t2 = cn(avatar({
42
+ colorScheme
43
+ }), className);
44
+ $[0] = className;
45
+ $[1] = colorScheme;
46
+ $[2] = t2;
47
+ } else {
48
+ t2 = $[2];
49
+ }
50
+ let t3;
51
+ if ($[3] !== size) {
52
+ t3 = size ? {
53
+ width: size,
54
+ height: size
55
+ } : undefined;
56
+ $[3] = size;
57
+ $[4] = t3;
58
+ } else {
59
+ t3 = $[4];
60
+ }
61
+ let t4;
62
+ if ($[5] !== initialsSize) {
63
+ t4 = {
64
+ fontSize: initialsSize
37
65
  };
38
- return (_jsx(View, { className: cn(avatar({ colorScheme }), className), style: size ? { width: size, height: size } : undefined, children: _jsx(Typography.Text, { className: cn("text-text-primary font-semibold", getTextSize()), variant: "body", children: initials }) }));
66
+ $[5] = initialsSize;
67
+ $[6] = t4;
68
+ } else {
69
+ t4 = $[6];
70
+ }
71
+ let t5;
72
+ if ($[7] !== initials || $[8] !== t4) {
73
+ t5 = _jsx(Typography.Text, {
74
+ className: "text-text-primary",
75
+ semibold: true,
76
+ style: t4,
77
+ variant: "body",
78
+ children: initials
79
+ });
80
+ $[7] = initials;
81
+ $[8] = t4;
82
+ $[9] = t5;
83
+ } else {
84
+ t5 = $[9];
85
+ }
86
+ let t6;
87
+ if ($[10] !== t2 || $[11] !== t3 || $[12] !== t5) {
88
+ t6 = _jsx(View, {
89
+ className: t2,
90
+ style: t3,
91
+ children: t5
92
+ });
93
+ $[10] = t2;
94
+ $[11] = t3;
95
+ $[12] = t5;
96
+ $[13] = t6;
97
+ } else {
98
+ t6 = $[13];
99
+ }
100
+ return t6;
39
101
  };
40
102
  export default Avatar;