@sincpro/mobile-ui 3.0.1 → 3.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 (314) 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 +437 -62
  15. package/dist/Dialog/Dialog.Sheet.d.ts +7 -3
  16. package/dist/Dialog/Dialog.Sheet.js +267 -15
  17. package/dist/Dialog/OverlayHost.d.ts +24 -0
  18. package/dist/Dialog/OverlayHost.js +230 -0
  19. package/dist/Dialog/SheetSurface.d.ts +43 -0
  20. package/dist/Dialog/SheetSurface.js +495 -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 +148 -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 +15 -11
  98. package/dist/Display/icon-map.js +344 -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 +507 -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 +497 -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 +223 -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 +539 -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.d.ts +1 -0
  154. package/dist/Form/Form.RadioButton.js +26 -29
  155. package/dist/Form/Form.Select.d.ts +2 -1
  156. package/dist/Form/Form.Select.js +388 -60
  157. package/dist/Form/Form.Slider.js +133 -10
  158. package/dist/Form/Form.Switch.js +99 -4
  159. package/dist/Form/choice-row.d.ts +15 -0
  160. package/dist/Form/choice-row.js +236 -0
  161. package/dist/Form/index.d.ts +11 -6
  162. package/dist/Form/index.js +26 -27
  163. package/dist/Form/input-text.d.ts +7 -0
  164. package/dist/Form/input-text.js +18 -0
  165. package/dist/Navigation/Navigation.AppBar.d.ts +3 -4
  166. package/dist/Navigation/Navigation.AppBar.js +535 -99
  167. package/dist/Navigation/Navigation.BottomNav.js +363 -98
  168. package/dist/Navigation/Navigation.CollapsingHeader.d.ts +28 -13
  169. package/dist/Navigation/Navigation.CollapsingHeader.js +369 -36
  170. package/dist/Navigation/Navigation.FloatingBar.js +71 -11
  171. package/dist/Navigation/Navigation.Menu.js +309 -95
  172. package/dist/Navigation/Navigation.MenuSection.js +80 -11
  173. package/dist/Navigation/Navigation.RowItem.d.ts +4 -2
  174. package/dist/Navigation/Navigation.RowItem.js +93 -8
  175. package/dist/Navigation/Navigation.Search.js +241 -27
  176. package/dist/Navigation/Navigation.SearchBar.d.ts +7 -1
  177. package/dist/Navigation/Navigation.SearchBar.js +218 -29
  178. package/dist/Navigation/Navigation.SearchSuggestions.js +77 -3
  179. package/dist/Navigation/Navigation.SegmentedControl.js +152 -14
  180. package/dist/Navigation/Navigation.Steps.js +105 -11
  181. package/dist/Navigation/Navigation.Tabs.js +449 -41
  182. package/dist/Navigation/index.d.ts +9 -4
  183. package/dist/Navigation/index.js +13 -13
  184. package/dist/Typography/Typography.Heading.js +33 -3
  185. package/dist/Typography/Typography.SelectableText.js +95 -7
  186. package/dist/Typography/Typography.Text.d.ts +4 -2
  187. package/dist/Typography/Typography.Text.js +217 -7
  188. package/dist/Typography/index.js +3 -3
  189. package/dist/branding.js +29 -13
  190. package/dist/icons/AddItemIcon.js +76 -2
  191. package/dist/icons/ArrangeCircle.js +82 -2
  192. package/dist/icons/ArrowDownIcon.js +63 -3
  193. package/dist/icons/ArrowUpIcon.js +63 -3
  194. package/dist/icons/BoxIcon.js +64 -2
  195. package/dist/icons/BoxTimeIcon.js +63 -2
  196. package/dist/icons/CalendarIcon.js +145 -2
  197. package/dist/icons/CardIcon.js +80 -2
  198. package/dist/icons/CashierIcon.js +39 -2
  199. package/dist/icons/CreditIcon.js +76 -3
  200. package/dist/icons/DuoIcon.js +75 -2
  201. package/dist/icons/HomeIcon.js +39 -2
  202. package/dist/icons/HomeIconOutlined.js +53 -2
  203. package/dist/icons/LogoIcon.js +87 -2
  204. package/dist/icons/MoneyReceiveIcon.js +86 -2
  205. package/dist/icons/PinIcon.js +39 -2
  206. package/dist/icons/ProfileIcon.js +47 -2
  207. package/dist/icons/SettingsIcon.js +114 -2
  208. package/dist/icons/SinpeIcon.js +60 -2
  209. package/dist/icons/ToggleOffIcon.js +53 -2
  210. package/dist/icons/WalletMoneyIcon.js +81 -2
  211. package/dist/index.d.ts +1 -0
  212. package/dist/index.js +8 -2
  213. package/dist/layouts/AuthContainer.d.ts +4 -5
  214. package/dist/layouts/AuthContainer.js +231 -7
  215. package/dist/layouts/BottomInset.js +4 -1
  216. package/dist/layouts/Container.d.ts +2 -2
  217. package/dist/layouts/Container.js +45 -3
  218. package/dist/layouts/GradientContainer.js +37 -5
  219. package/dist/layouts/PlainLayout.js +19 -3
  220. package/dist/layouts/ScrollContainer.d.ts +14 -9
  221. package/dist/layouts/ScrollContainer.js +125 -4
  222. package/dist/layouts/edges.d.ts +2 -0
  223. package/dist/layouts/edges.js +1 -0
  224. package/dist/primitives/AspectRatio.js +75 -3
  225. package/dist/primitives/Box.js +45 -3
  226. package/dist/primitives/Pressable.js +95 -5
  227. package/dist/primitives/Row.js +84 -13
  228. package/dist/primitives/Spacer.js +42 -5
  229. package/dist/primitives/Stack.js +66 -7
  230. package/dist/primitives/index.js +1 -1
  231. package/dist/theme/active.d.ts +2 -0
  232. package/dist/theme/active.js +33 -18
  233. package/dist/theme/build.js +118 -87
  234. package/dist/theme/color.js +87 -87
  235. package/dist/theme/components/ThemedActivityIndicator.d.ts +2 -15
  236. package/dist/theme/components/ThemedActivityIndicator.js +35 -3
  237. package/dist/theme/components/index.js +1 -0
  238. package/dist/theme/contrast.js +32 -33
  239. package/dist/theme/css-vars.js +71 -75
  240. package/dist/theme/dark.js +116 -97
  241. package/dist/theme/default.js +116 -97
  242. package/dist/theme/define.js +16 -12
  243. package/dist/theme/index.d.ts +1 -0
  244. package/dist/theme/index.js +7 -6
  245. package/dist/theme/on-dark-surface.d.ts +12 -0
  246. package/dist/theme/on-dark-surface.js +13 -0
  247. package/dist/theme/theme.js +1 -0
  248. package/dist/theme/tw.js +3 -1
  249. package/dist/theme/types.js +0 -18
  250. package/dist/theme/typography.d.ts +1 -1
  251. package/dist/theme/typography.js +337 -303
  252. package/dist/theme/useTheme.d.ts +4 -0
  253. package/dist/theme/useTheme.js +7 -3
  254. package/dist/theme/useThemeVars.d.ts +9 -0
  255. package/dist/theme/useThemeVars.js +23 -0
  256. package/dist/theme/validate.js +175 -166
  257. package/dist/tokens/index.js +1 -1
  258. package/dist/tokens/motion.js +30 -13
  259. package/dist/utils/async.d.ts +14 -0
  260. package/dist/utils/async.js +22 -0
  261. package/dist/utils/criteria.js +66 -85
  262. package/dist/utils/date.d.ts +8 -2
  263. package/dist/utils/date.js +63 -50
  264. package/dist/utils/image.js +8 -8
  265. package/dist/utils/intl.d.ts +1 -0
  266. package/dist/utils/intl.js +13 -0
  267. package/dist/utils/keys.js +3 -5
  268. package/dist/utils/monetary.d.ts +1 -0
  269. package/dist/utils/monetary.js +28 -24
  270. package/dist/utils/progress.js +2 -3
  271. package/dist/utils/quantity.js +25 -26
  272. package/dist/utils/reorder.js +11 -20
  273. package/dist/utils/search.d.ts +4 -0
  274. package/dist/utils/search.js +12 -0
  275. package/dist/utils/serializer.js +38 -38
  276. package/dist/utils/useReducedMotion.js +32 -30
  277. package/dist/views/AppSplashView.js +117 -3
  278. package/dist/views/AuthFormView.d.ts +4 -5
  279. package/dist/views/AuthFormView.js +119 -11
  280. package/dist/views/FormViewV2.context.js +75 -23
  281. package/dist/views/FormViewV2.d.ts +4 -5
  282. package/dist/views/FormViewV2.js +658 -92
  283. package/dist/views/ListViewV2.context.js +91 -47
  284. package/dist/views/ListViewV2.d.ts +84 -43
  285. package/dist/views/ListViewV2.js +1350 -200
  286. package/dist/views/Wizard/Wizard.context.js +248 -84
  287. package/dist/views/Wizard/Wizard.js +260 -67
  288. package/dist/views/types/IListView.js +34 -31
  289. package/dist/widgets/CollectionOptions.js +557 -138
  290. package/dist/widgets/FilterBar.js +159 -7
  291. package/dist/widgets/FilterBuilder.js +375 -102
  292. package/dist/widgets/JSONViewer.js +275 -129
  293. package/dist/widgets/PromoBanner.js +336 -42
  294. package/dist/widgets/PromoModal.d.ts +2 -2
  295. package/dist/widgets/PromoModal.js +389 -62
  296. package/dist/widgets/QueryChoice.js +150 -8
  297. package/dist/widgets/QuickActions.js +120 -31
  298. package/dist/widgets/ReorderableList.js +399 -128
  299. package/dist/widgets/TimeZoneSelectorModal.js +458 -51
  300. package/dist/widgets/index.js +3 -3
  301. package/package.json +6 -1
  302. package/tailwind.preset.js +7 -5
  303. package/dist/Form/Form.InputField.d.ts +0 -10
  304. package/dist/Form/Form.InputField.js +0 -38
  305. package/dist/Form/Form.KeyboardToolbar.d.ts +0 -22
  306. package/dist/Form/Form.KeyboardToolbar.js +0 -66
  307. package/dist/Form/Form.PasswordInput.d.ts +0 -9
  308. package/dist/Form/Form.PasswordInput.js +0 -17
  309. package/dist/Form/Form.TextInput.d.ts +0 -8
  310. package/dist/Form/Form.TextInput.js +0 -8
  311. package/dist/primitives/BaseButton.d.ts +0 -150
  312. package/dist/primitives/BaseButton.js +0 -229
  313. package/dist/utils/useSheetTranslation.d.ts +0 -5
  314. package/dist/utils/useSheetTranslation.js +0 -23
@@ -0,0 +1,124 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import { useTheme } from "../theme/index.js";
3
+ import { Typography } from "../Typography/index.js";
4
+ import { StyleSheet, View } from "react-native";
5
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
6
+ const styles = StyleSheet.create({
7
+ count: {
8
+ minWidth: 18,
9
+ height: 18,
10
+ borderRadius: 9,
11
+ paddingHorizontal: 4,
12
+ borderWidth: 2,
13
+ alignItems: "center",
14
+ justifyContent: "center"
15
+ },
16
+ dot: {
17
+ width: 10,
18
+ height: 10,
19
+ borderRadius: 5,
20
+ borderWidth: 2
21
+ },
22
+ // An absolute child is measured against its parent, often a 24-point icon, so
23
+ // "99+" wrapped and lost its "+". The anchor gives the badge room and no touches.
24
+ anchor: {
25
+ position: "absolute",
26
+ width: 64,
27
+ alignItems: "flex-end"
28
+ },
29
+ label: {
30
+ fontSize: 10,
31
+ lineHeight: 14,
32
+ includeFontPadding: false
33
+ }
34
+ });
35
+ export function countLabel(count, max) {
36
+ return typeof count === "number" && count > max ? `${max}+` : String(count);
37
+ }
38
+
39
+ /** The one notification count of the DS: icon badges, app bar actions, tabs and menu rows. */
40
+ export function CountBadge(t0) {
41
+ const $ = _c(16);
42
+ const {
43
+ count,
44
+ max: t1,
45
+ dot: t2,
46
+ color,
47
+ ringColor,
48
+ anchor,
49
+ style
50
+ } = t0;
51
+ const max = t1 === undefined ? 99 : t1;
52
+ const dot = t2 === undefined ? false : t2;
53
+ const theme = useTheme();
54
+ const t3 = color ?? theme.danger;
55
+ const t4 = ringColor ?? theme.bg.card;
56
+ let t5;
57
+ if ($[0] !== t3 || $[1] !== t4) {
58
+ t5 = {
59
+ backgroundColor: t3,
60
+ borderColor: t4
61
+ };
62
+ $[0] = t3;
63
+ $[1] = t4;
64
+ $[2] = t5;
65
+ } else {
66
+ t5 = $[2];
67
+ }
68
+ const fill = t5;
69
+ if (!dot && (count == null || count === "")) {
70
+ return null;
71
+ }
72
+ let t6;
73
+ if ($[3] !== color || $[4] !== count || $[5] !== dot || $[6] !== fill || $[7] !== max || $[8] !== style || $[9] !== theme) {
74
+ t6 = dot ? _jsx(View, {
75
+ style: [styles.dot, fill, style]
76
+ }) : _jsx(View, {
77
+ style: [styles.count, fill, style],
78
+ children: _jsx(Typography.Text, {
79
+ semibold: true,
80
+ style: [styles.label, {
81
+ color: color ? theme.text.inverse : theme.text.onDanger
82
+ }],
83
+ variant: "labelSmall",
84
+ children: countLabel(count ?? "", max)
85
+ })
86
+ });
87
+ $[3] = color;
88
+ $[4] = count;
89
+ $[5] = dot;
90
+ $[6] = fill;
91
+ $[7] = max;
92
+ $[8] = style;
93
+ $[9] = theme;
94
+ $[10] = t6;
95
+ } else {
96
+ t6 = $[10];
97
+ }
98
+ const badge = t6;
99
+ if (!anchor) {
100
+ return badge;
101
+ }
102
+ let t7;
103
+ if ($[11] !== anchor) {
104
+ t7 = [styles.anchor, anchor];
105
+ $[11] = anchor;
106
+ $[12] = t7;
107
+ } else {
108
+ t7 = $[12];
109
+ }
110
+ let t8;
111
+ if ($[13] !== badge || $[14] !== t7) {
112
+ t8 = _jsx(View, {
113
+ pointerEvents: "none",
114
+ style: t7,
115
+ children: badge
116
+ });
117
+ $[13] = badge;
118
+ $[14] = t7;
119
+ $[15] = t8;
120
+ } else {
121
+ t8 = $[15];
122
+ }
123
+ return t8;
124
+ }
@@ -0,0 +1,10 @@
1
+ import type { StyleProp, TextStyle } from "react-native";
2
+ /**
3
+ * The title above a group of rows (`MenuSection`, `ListGroup`, `FormViewV2.Content.Group`,
4
+ * `QuickActions`): the uppercase caption of the settings screens in production. Uppercase
5
+ * comes from `transform`, so screen readers get the original text, announced as a header.
6
+ */
7
+ export declare function GroupTitle({ children, style, }: {
8
+ children: string;
9
+ style?: StyleProp<TextStyle>;
10
+ }): import("react").JSX.Element;
@@ -0,0 +1,53 @@
1
+ import { c as _c } from "react/compiler-runtime";
2
+ import { useTheme } from "../theme/index.js";
3
+ import { Typography } from "../Typography/index.js";
4
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
5
+ /**
6
+ * The title above a group of rows (`MenuSection`, `ListGroup`, `FormViewV2.Content.Group`,
7
+ * `QuickActions`): the uppercase caption of the settings screens in production. Uppercase
8
+ * comes from `transform`, so screen readers get the original text, announced as a header.
9
+ */
10
+ export function GroupTitle(t0) {
11
+ const $ = _c(8);
12
+ const {
13
+ children,
14
+ style
15
+ } = t0;
16
+ const theme = useTheme();
17
+ let t1;
18
+ if ($[0] !== theme.text.secondary) {
19
+ t1 = {
20
+ color: theme.text.secondary
21
+ };
22
+ $[0] = theme.text.secondary;
23
+ $[1] = t1;
24
+ } else {
25
+ t1 = $[1];
26
+ }
27
+ let t2;
28
+ if ($[2] !== style || $[3] !== t1) {
29
+ t2 = [t1, style];
30
+ $[2] = style;
31
+ $[3] = t1;
32
+ $[4] = t2;
33
+ } else {
34
+ t2 = $[4];
35
+ }
36
+ let t3;
37
+ if ($[5] !== children || $[6] !== t2) {
38
+ t3 = _jsx(Typography.Text, {
39
+ accessibilityRole: "header",
40
+ semibold: true,
41
+ style: t2,
42
+ transform: "uppercase",
43
+ variant: "caption",
44
+ children: children
45
+ });
46
+ $[5] = children;
47
+ $[6] = t2;
48
+ $[7] = t3;
49
+ } else {
50
+ t3 = $[7];
51
+ }
52
+ return t3;
53
+ }
@@ -0,0 +1,3 @@
1
+ export declare const ICON_FONT_FAMILY = "MaterialSymbols_400Regular";
2
+ /** Load once at startup with `useFonts(ICON_FONTS)`; Android and web draw icons from it. */
3
+ export declare const ICON_FONTS: Record<string, number>;
@@ -0,0 +1,3 @@
1
+ export declare const ICON_FONT_FAMILY = "MaterialSymbols_400Regular";
2
+ /** iOS draws SF Symbols natively; the Material font stays out of the iOS bundle. */
3
+ export declare const ICON_FONTS: Record<string, number>;
@@ -0,0 +1,4 @@
1
+ export const ICON_FONT_FAMILY = "MaterialSymbols_400Regular";
2
+
3
+ /** iOS draws SF Symbols natively; the Material font stays out of the iOS bundle. */
4
+ export const ICON_FONTS = {};
@@ -0,0 +1,7 @@
1
+ import { MaterialSymbols_400Regular } from "@expo-google-fonts/material-symbols/400Regular";
2
+ export const ICON_FONT_FAMILY = "MaterialSymbols_400Regular";
3
+
4
+ /** Load once at startup with `useFonts(ICON_FONTS)`; Android and web draw icons from it. */
5
+ export const ICON_FONTS = {
6
+ [ICON_FONT_FAMILY]: MaterialSymbols_400Regular
7
+ };
@@ -0,0 +1,2 @@
1
+ import type { BuiltInIconName } from "./icon-map.js";
2
+ export declare const MATERIAL_CODEPOINTS: Readonly<Record<BuiltInIconName, number>>;
@@ -0,0 +1,87 @@
1
+ // Generated by scripts/generate-icon-glyphs.mjs from expo-symbols' Material Symbols table.
2
+ export const MATERIAL_CODEPOINTS = {
3
+ add: 0xe145,
4
+ "add-circle": 0xe147,
5
+ archive: 0xe149,
6
+ back: 0xe5c4,
7
+ bicycle: 0xe52f,
8
+ book: 0xe865,
9
+ bookmark: 0xe866,
10
+ "bookmark-empty": 0xe867,
11
+ calendar: 0xebcc,
12
+ camera: 0xe3b0,
13
+ card: 0xe870,
14
+ cart: 0xe8cc,
15
+ cash: 0xef63,
16
+ check: 0xe5ca,
17
+ circle: 0xe836,
18
+ close: 0xe5cd,
19
+ collapse: 0xe5ce,
20
+ copy: 0xe14d,
21
+ "dark-mode": 0xe51c,
22
+ database: 0xf20e,
23
+ delete: 0xe872,
24
+ dismiss: 0xe5c9,
25
+ document: 0xe873,
26
+ down: 0xe5db,
27
+ download: 0xf090,
28
+ "download-cloud": 0xe2c0,
29
+ edit: 0xe3c9,
30
+ empty: 0xe156,
31
+ error: 0xe000,
32
+ expand: 0xe5cf,
33
+ filter: 0xe429,
34
+ folder: 0xe2c7,
35
+ grid: 0xe9b0,
36
+ help: 0xe887,
37
+ hidden: 0xe8f5,
38
+ home: 0xe88a,
39
+ image: 0xe3f4,
40
+ inbox: 0xe156,
41
+ info: 0xe88e,
42
+ link: 0xe157,
43
+ list: 0xe896,
44
+ location: 0xe0c8,
45
+ "location-disabled": 0xe0c7,
46
+ lock: 0xe897,
47
+ logout: 0xe9ba,
48
+ mail: 0xe158,
49
+ map: 0xe55b,
50
+ menu: 0xe5d2,
51
+ more: 0xe5d3,
52
+ "more-vertical": 0xe5d4,
53
+ mute: 0xe04f,
54
+ next: 0xe5cc,
55
+ notifications: 0xe7f4,
56
+ package: 0xe1a1,
57
+ pause: 0xe034,
58
+ people: 0xe7ef,
59
+ play: 0xe037,
60
+ printer: 0xe8ad,
61
+ profile: 0xe7fd,
62
+ "profile-circle": 0xe853,
63
+ rating: 0xe838,
64
+ "rating-empty": 0xe83a,
65
+ receipt: 0xef6e,
66
+ remove: 0xe15b,
67
+ reorder: 0xe25d,
68
+ save: 0xe161,
69
+ search: 0xe8b6,
70
+ "search-empty": 0xea76,
71
+ server: 0xe875,
72
+ settings: 0xe8b8,
73
+ share: 0xe80d,
74
+ stop: 0xe769,
75
+ success: 0xe86c,
76
+ sync: 0xe627,
77
+ time: 0xe8b5,
78
+ unlink: 0xe16f,
79
+ up: 0xe5d8,
80
+ upload: 0xf09b,
81
+ "upload-cloud": 0xe2c3,
82
+ visibility: 0xe8f4,
83
+ volume: 0xe050,
84
+ wallet: 0xf8ff,
85
+ warning: 0xe002,
86
+ wifi: 0xe63e
87
+ };
@@ -1,3 +1,4 @@
1
+ import type { CustomIconName } from "./icon-registry.js";
1
2
  import type { AndroidSymbol, SFSymbol } from "expo-symbols";
2
3
  export type IconDefinition = Readonly<{
3
4
  sf: SFSymbol;
@@ -9,7 +10,7 @@ export declare const ICON_MAP: {
9
10
  readonly md: "add";
10
11
  };
11
12
  readonly "add-circle": {
12
- readonly sf: "plus.circle.fill";
13
+ readonly sf: "plus.circle";
13
14
  readonly md: "add_circle";
14
15
  };
15
16
  readonly archive: {
@@ -89,7 +90,7 @@ export declare const ICON_MAP: {
89
90
  readonly md: "delete";
90
91
  };
91
92
  readonly dismiss: {
92
- readonly sf: "xmark.circle.fill";
93
+ readonly sf: "xmark.circle";
93
94
  readonly md: "cancel";
94
95
  };
95
96
  readonly document: {
@@ -117,7 +118,7 @@ export declare const ICON_MAP: {
117
118
  readonly md: "inbox";
118
119
  };
119
120
  readonly error: {
120
- readonly sf: "exclamationmark.circle.fill";
121
+ readonly sf: "exclamationmark.circle";
121
122
  readonly md: "error";
122
123
  };
123
124
  readonly expand: {
@@ -145,7 +146,7 @@ export declare const ICON_MAP: {
145
146
  readonly md: "visibility_off";
146
147
  };
147
148
  readonly home: {
148
- readonly sf: "house.fill";
149
+ readonly sf: "house";
149
150
  readonly md: "home";
150
151
  };
151
152
  readonly image: {
@@ -157,7 +158,7 @@ export declare const ICON_MAP: {
157
158
  readonly md: "inbox";
158
159
  };
159
160
  readonly info: {
160
- readonly sf: "info.circle.fill";
161
+ readonly sf: "info.circle";
161
162
  readonly md: "info";
162
163
  };
163
164
  readonly link: {
@@ -205,7 +206,7 @@ export declare const ICON_MAP: {
205
206
  readonly md: "more_vert";
206
207
  };
207
208
  readonly mute: {
208
- readonly sf: "speaker.slash.fill";
209
+ readonly sf: "speaker.slash";
209
210
  readonly md: "volume_off";
210
211
  };
211
212
  readonly next: {
@@ -289,11 +290,11 @@ export declare const ICON_MAP: {
289
290
  readonly md: "share";
290
291
  };
291
292
  readonly stop: {
292
- readonly sf: "hand.raised.fill";
293
+ readonly sf: "hand.raised";
293
294
  readonly md: "front_hand";
294
295
  };
295
296
  readonly success: {
296
- readonly sf: "checkmark.circle.fill";
297
+ readonly sf: "checkmark.circle";
297
298
  readonly md: "check_circle";
298
299
  };
299
300
  readonly sync: {
@@ -325,7 +326,7 @@ export declare const ICON_MAP: {
325
326
  readonly md: "visibility";
326
327
  };
327
328
  readonly volume: {
328
- readonly sf: "speaker.wave.2.fill";
329
+ readonly sf: "speaker.wave.2";
329
330
  readonly md: "volume_up";
330
331
  };
331
332
  readonly wallet: {
@@ -333,7 +334,7 @@ export declare const ICON_MAP: {
333
334
  readonly md: "wallet";
334
335
  };
335
336
  readonly warning: {
336
- readonly sf: "exclamationmark.triangle.fill";
337
+ readonly sf: "exclamationmark.triangle";
337
338
  readonly md: "warning";
338
339
  };
339
340
  readonly wifi: {
@@ -341,4 +342,7 @@ export declare const ICON_MAP: {
341
342
  readonly md: "wifi";
342
343
  };
343
344
  };
344
- export type IconName = keyof typeof ICON_MAP;
345
+ export type BuiltInIconName = keyof typeof ICON_MAP;
346
+ /** Built-in semantic names plus the ones an app registers with `registerIcons`. */
347
+ export type IconName = BuiltInIconName | CustomIconName;
348
+ export declare const ICON_NAMES: readonly BuiltInIconName[];