@medway-ui/native 1.1.1 → 1.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 (218) hide show
  1. package/README.md +238 -105
  2. package/lib/commonjs/components/Alert.js +5 -4
  3. package/lib/commonjs/components/Alert.js.map +1 -1
  4. package/lib/commonjs/components/Avatar.js +2 -1
  5. package/lib/commonjs/components/Avatar.js.map +1 -1
  6. package/lib/commonjs/components/Badge.js +2 -1
  7. package/lib/commonjs/components/Badge.js.map +1 -1
  8. package/lib/commonjs/components/Button.js +3 -2
  9. package/lib/commonjs/components/Button.js.map +1 -1
  10. package/lib/commonjs/components/CardNews.js +7 -6
  11. package/lib/commonjs/components/CardNews.js.map +1 -1
  12. package/lib/commonjs/components/Carousel.js +122 -0
  13. package/lib/commonjs/components/Carousel.js.map +1 -0
  14. package/lib/commonjs/components/Checkbox.js +11 -2
  15. package/lib/commonjs/components/Checkbox.js.map +1 -1
  16. package/lib/commonjs/components/DropdownMenu.js +225 -0
  17. package/lib/commonjs/components/DropdownMenu.js.map +1 -0
  18. package/lib/commonjs/components/EmptyState.js +19 -20
  19. package/lib/commonjs/components/EmptyState.js.map +1 -1
  20. package/lib/commonjs/components/Feed.js +82 -0
  21. package/lib/commonjs/components/Feed.js.map +1 -0
  22. package/lib/commonjs/components/FeedNotice.js +76 -0
  23. package/lib/commonjs/components/FeedNotice.js.map +1 -0
  24. package/lib/commonjs/components/Input.js +21 -9
  25. package/lib/commonjs/components/Input.js.map +1 -1
  26. package/lib/commonjs/components/InvitePopover.js +196 -0
  27. package/lib/commonjs/components/InvitePopover.js.map +1 -0
  28. package/lib/commonjs/components/Label.js +2 -1
  29. package/lib/commonjs/components/Label.js.map +1 -1
  30. package/lib/commonjs/components/LeaderboardCard.js +58 -0
  31. package/lib/commonjs/components/LeaderboardCard.js.map +1 -0
  32. package/lib/commonjs/components/MemberRow.js +131 -0
  33. package/lib/commonjs/components/MemberRow.js.map +1 -0
  34. package/lib/commonjs/components/PageHeader.js +3 -2
  35. package/lib/commonjs/components/PageHeader.js.map +1 -1
  36. package/lib/commonjs/components/PostForm.js +182 -0
  37. package/lib/commonjs/components/PostForm.js.map +1 -0
  38. package/lib/commonjs/components/PrizeCollection.js +135 -0
  39. package/lib/commonjs/components/PrizeCollection.js.map +1 -0
  40. package/lib/commonjs/components/RadioGroup.js +22 -0
  41. package/lib/commonjs/components/RadioGroup.js.map +1 -1
  42. package/lib/commonjs/components/SectionHeader.js +36 -0
  43. package/lib/commonjs/components/SectionHeader.js.map +1 -0
  44. package/lib/commonjs/components/Switch.js +33 -19
  45. package/lib/commonjs/components/Switch.js.map +1 -1
  46. package/lib/commonjs/components/Tabs.js +156 -0
  47. package/lib/commonjs/components/Tabs.js.map +1 -0
  48. package/lib/commonjs/components/Tag.js +2 -1
  49. package/lib/commonjs/components/Tag.js.map +1 -1
  50. package/lib/commonjs/components/Text.js +60 -0
  51. package/lib/commonjs/components/Text.js.map +1 -0
  52. package/lib/commonjs/components/Toast.js +3 -2
  53. package/lib/commonjs/components/Toast.js.map +1 -1
  54. package/lib/commonjs/components/Tooltip.js +2 -2
  55. package/lib/commonjs/components/Tooltip.js.map +1 -1
  56. package/lib/commonjs/hooks/useThemeColor.js +66 -29
  57. package/lib/commonjs/hooks/useThemeColor.js.map +1 -1
  58. package/lib/commonjs/index.js +319 -1
  59. package/lib/commonjs/index.js.map +1 -1
  60. package/lib/commonjs/lib/overlay-host.js +101 -0
  61. package/lib/commonjs/lib/overlay-host.js.map +1 -0
  62. package/lib/commonjs/lib/typography.js +26 -0
  63. package/lib/commonjs/lib/typography.js.map +1 -0
  64. package/lib/commonjs/nativewind-env.d.js +0 -1
  65. package/lib/commonjs/nativewind-env.d.js.map +1 -1
  66. package/lib/module/components/Alert.js +3 -2
  67. package/lib/module/components/Alert.js.map +1 -1
  68. package/lib/module/components/Avatar.js +2 -1
  69. package/lib/module/components/Avatar.js.map +1 -1
  70. package/lib/module/components/Badge.js +2 -1
  71. package/lib/module/components/Badge.js.map +1 -1
  72. package/lib/module/components/Button.js +2 -1
  73. package/lib/module/components/Button.js.map +1 -1
  74. package/lib/module/components/CardNews.js +2 -1
  75. package/lib/module/components/CardNews.js.map +1 -1
  76. package/lib/module/components/Carousel.js +117 -0
  77. package/lib/module/components/Carousel.js.map +1 -0
  78. package/lib/module/components/Checkbox.js +12 -2
  79. package/lib/module/components/Checkbox.js.map +1 -1
  80. package/lib/module/components/DropdownMenu.js +216 -0
  81. package/lib/module/components/DropdownMenu.js.map +1 -0
  82. package/lib/module/components/EmptyState.js +19 -20
  83. package/lib/module/components/EmptyState.js.map +1 -1
  84. package/lib/module/components/Feed.js +77 -0
  85. package/lib/module/components/Feed.js.map +1 -0
  86. package/lib/module/components/FeedNotice.js +73 -0
  87. package/lib/module/components/FeedNotice.js.map +1 -0
  88. package/lib/module/components/Input.js +21 -9
  89. package/lib/module/components/Input.js.map +1 -1
  90. package/lib/module/components/InvitePopover.js +183 -0
  91. package/lib/module/components/InvitePopover.js.map +1 -0
  92. package/lib/module/components/Label.js +2 -1
  93. package/lib/module/components/Label.js.map +1 -1
  94. package/lib/module/components/LeaderboardCard.js +53 -0
  95. package/lib/module/components/LeaderboardCard.js.map +1 -0
  96. package/lib/module/components/MemberRow.js +127 -0
  97. package/lib/module/components/MemberRow.js.map +1 -0
  98. package/lib/module/components/PageHeader.js +2 -1
  99. package/lib/module/components/PageHeader.js.map +1 -1
  100. package/lib/module/components/PostForm.js +174 -0
  101. package/lib/module/components/PostForm.js.map +1 -0
  102. package/lib/module/components/PrizeCollection.js +127 -0
  103. package/lib/module/components/PrizeCollection.js.map +1 -0
  104. package/lib/module/components/RadioGroup.js +21 -1
  105. package/lib/module/components/RadioGroup.js.map +1 -1
  106. package/lib/module/components/SectionHeader.js +33 -0
  107. package/lib/module/components/SectionHeader.js.map +1 -0
  108. package/lib/module/components/Switch.js +34 -20
  109. package/lib/module/components/Switch.js.map +1 -1
  110. package/lib/module/components/Tabs.js +148 -0
  111. package/lib/module/components/Tabs.js.map +1 -0
  112. package/lib/module/components/Tag.js +2 -1
  113. package/lib/module/components/Tag.js.map +1 -1
  114. package/lib/module/components/Text.js +58 -0
  115. package/lib/module/components/Text.js.map +1 -0
  116. package/lib/module/components/Toast.js +2 -1
  117. package/lib/module/components/Toast.js.map +1 -1
  118. package/lib/module/components/Tooltip.js +1 -1
  119. package/lib/module/components/Tooltip.js.map +1 -1
  120. package/lib/module/hooks/useThemeColor.js +66 -31
  121. package/lib/module/hooks/useThemeColor.js.map +1 -1
  122. package/lib/module/index.js +27 -3
  123. package/lib/module/index.js.map +1 -1
  124. package/lib/module/lib/overlay-host.js +96 -0
  125. package/lib/module/lib/overlay-host.js.map +1 -0
  126. package/lib/module/lib/typography.js +22 -0
  127. package/lib/module/lib/typography.js.map +1 -0
  128. package/lib/module/nativewind-env.d.js +0 -1
  129. package/lib/module/nativewind-env.d.js.map +1 -1
  130. package/lib/typescript/components/Alert.d.ts.map +1 -1
  131. package/lib/typescript/components/Avatar.d.ts.map +1 -1
  132. package/lib/typescript/components/Badge.d.ts.map +1 -1
  133. package/lib/typescript/components/Button.d.ts.map +1 -1
  134. package/lib/typescript/components/CardNews.d.ts.map +1 -1
  135. package/lib/typescript/components/Carousel.d.ts +29 -0
  136. package/lib/typescript/components/Carousel.d.ts.map +1 -0
  137. package/lib/typescript/components/Checkbox.d.ts.map +1 -1
  138. package/lib/typescript/components/DropdownMenu.d.ts +39 -0
  139. package/lib/typescript/components/DropdownMenu.d.ts.map +1 -0
  140. package/lib/typescript/components/EmptyState.d.ts +1 -1
  141. package/lib/typescript/components/EmptyState.d.ts.map +1 -1
  142. package/lib/typescript/components/Feed.d.ts +22 -0
  143. package/lib/typescript/components/Feed.d.ts.map +1 -0
  144. package/lib/typescript/components/FeedNotice.d.ts +17 -0
  145. package/lib/typescript/components/FeedNotice.d.ts.map +1 -0
  146. package/lib/typescript/components/Input.d.ts +3 -2
  147. package/lib/typescript/components/Input.d.ts.map +1 -1
  148. package/lib/typescript/components/InvitePopover.d.ts +46 -0
  149. package/lib/typescript/components/InvitePopover.d.ts.map +1 -0
  150. package/lib/typescript/components/Label.d.ts.map +1 -1
  151. package/lib/typescript/components/LeaderboardCard.d.ts +16 -0
  152. package/lib/typescript/components/LeaderboardCard.d.ts.map +1 -0
  153. package/lib/typescript/components/MemberRow.d.ts +40 -0
  154. package/lib/typescript/components/MemberRow.d.ts.map +1 -0
  155. package/lib/typescript/components/PageHeader.d.ts.map +1 -1
  156. package/lib/typescript/components/PostForm.d.ts +50 -0
  157. package/lib/typescript/components/PostForm.d.ts.map +1 -0
  158. package/lib/typescript/components/PrizeCollection.d.ts +35 -0
  159. package/lib/typescript/components/PrizeCollection.d.ts.map +1 -0
  160. package/lib/typescript/components/RadioGroup.d.ts +10 -2
  161. package/lib/typescript/components/RadioGroup.d.ts.map +1 -1
  162. package/lib/typescript/components/SectionHeader.d.ts +12 -0
  163. package/lib/typescript/components/SectionHeader.d.ts.map +1 -0
  164. package/lib/typescript/components/Switch.d.ts.map +1 -1
  165. package/lib/typescript/components/Tabs.d.ts +32 -0
  166. package/lib/typescript/components/Tabs.d.ts.map +1 -0
  167. package/lib/typescript/components/Tag.d.ts.map +1 -1
  168. package/lib/typescript/components/Text.d.ts +23 -0
  169. package/lib/typescript/components/Text.d.ts.map +1 -0
  170. package/lib/typescript/components/Toast.d.ts +1 -1
  171. package/lib/typescript/components/Toast.d.ts.map +1 -1
  172. package/lib/typescript/components/Tooltip.d.ts.map +1 -1
  173. package/lib/typescript/hooks/useThemeColor.d.ts +4 -2
  174. package/lib/typescript/hooks/useThemeColor.d.ts.map +1 -1
  175. package/lib/typescript/index.d.ts +28 -4
  176. package/lib/typescript/index.d.ts.map +1 -1
  177. package/lib/typescript/lib/overlay-host.d.ts +23 -0
  178. package/lib/typescript/lib/overlay-host.d.ts.map +1 -0
  179. package/lib/typescript/lib/typography.d.ts +12 -0
  180. package/lib/typescript/lib/typography.d.ts.map +1 -0
  181. package/package.json +13 -3
  182. package/setup/MedwayUiProvider.tsx +15 -4
  183. package/setup/babel-brownfield.js +70 -0
  184. package/setup/metro.js +95 -24
  185. package/setup/tailwind.js +76 -8
  186. package/setup/tokens.native.css +8 -3
  187. package/src/components/Alert.tsx +4 -2
  188. package/src/components/Avatar.tsx +3 -1
  189. package/src/components/Badge.tsx +3 -1
  190. package/src/components/Button.tsx +3 -7
  191. package/src/components/CardNews.tsx +2 -1
  192. package/src/components/Carousel.tsx +152 -0
  193. package/src/components/Checkbox.tsx +14 -4
  194. package/src/components/DropdownMenu.tsx +312 -0
  195. package/src/components/EmptyState.tsx +21 -23
  196. package/src/components/Feed.tsx +96 -0
  197. package/src/components/FeedNotice.tsx +112 -0
  198. package/src/components/Input.tsx +11 -6
  199. package/src/components/InvitePopover.tsx +240 -0
  200. package/src/components/Label.tsx +3 -1
  201. package/src/components/LeaderboardCard.tsx +70 -0
  202. package/src/components/MemberRow.tsx +157 -0
  203. package/src/components/PageHeader.tsx +3 -1
  204. package/src/components/PostForm.tsx +250 -0
  205. package/src/components/PrizeCollection.tsx +190 -0
  206. package/src/components/RadioGroup.tsx +32 -3
  207. package/src/components/SectionHeader.tsx +45 -0
  208. package/src/components/Switch.tsx +65 -59
  209. package/src/components/Tabs.tsx +182 -0
  210. package/src/components/Tag.tsx +3 -1
  211. package/src/components/Text.tsx +66 -0
  212. package/src/components/Toast.tsx +3 -1
  213. package/src/components/Tooltip.tsx +2 -1
  214. package/src/hooks/useThemeColor.ts +77 -32
  215. package/src/index.ts +147 -6
  216. package/src/lib/overlay-host.tsx +102 -0
  217. package/src/lib/typography.ts +21 -0
  218. package/src/nativewind-env.d.ts +2 -0
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+
3
+ import { Image, View } from "react-native";
4
+ import { Text } from "@/components/Text";
5
+ import { cn } from "@/lib/utils";
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ const rankColors = {
8
+ 1: "bg-yellow-background-fill",
9
+ 2: "bg-gray-background-fill",
10
+ 3: "bg-warning-background-fill"
11
+ };
12
+ function PrizeCollection({
13
+ className,
14
+ title = "Sua coleção",
15
+ statsTitle = "Contagem de pódios",
16
+ children,
17
+ footer,
18
+ ...props
19
+ }) {
20
+ return /*#__PURE__*/_jsxs(View, {
21
+ className: cn("gap-3", className),
22
+ ...props,
23
+ children: [/*#__PURE__*/_jsx(Text, {
24
+ className: "text-title-xs font-semibold text-primary-foreground",
25
+ children: title
26
+ }), /*#__PURE__*/_jsxs(View, {
27
+ className: "gap-8",
28
+ children: [/*#__PURE__*/_jsxs(View, {
29
+ className: "gap-3 rounded-lg border border-gray-stroke-muted bg-surface-section p-4",
30
+ children: [/*#__PURE__*/_jsx(Text, {
31
+ className: "text-center text-lg font-medium text-primary-foreground",
32
+ children: statsTitle
33
+ }), children]
34
+ }), footer]
35
+ })]
36
+ });
37
+ }
38
+ function PrizeCollectionStats({
39
+ className,
40
+ children,
41
+ ...props
42
+ }) {
43
+ return /*#__PURE__*/_jsx(View, {
44
+ className: cn("flex-row items-center justify-center gap-4", className),
45
+ ...props,
46
+ children: children
47
+ });
48
+ }
49
+ function PrizeCollectionStatsItem({
50
+ className,
51
+ count,
52
+ rank,
53
+ ...props
54
+ }) {
55
+ return /*#__PURE__*/_jsxs(View, {
56
+ className: cn("flex-row items-center gap-2 rounded-pill bg-gray-background-soft-emphasis py-1 pl-4 pr-1", className),
57
+ ...props,
58
+ children: [/*#__PURE__*/_jsx(Text, {
59
+ className: "text-title-xs font-semibold text-primary-foreground",
60
+ children: count
61
+ }), /*#__PURE__*/_jsx(View, {
62
+ className: cn("size-8 rounded-full", rankColors[rank])
63
+ })]
64
+ });
65
+ }
66
+ function PrizeShelf({
67
+ className,
68
+ title = "Prateleira de Prêmios",
69
+ children,
70
+ ...props
71
+ }) {
72
+ return /*#__PURE__*/_jsxs(View, {
73
+ className: cn("gap-4", className),
74
+ ...props,
75
+ children: [/*#__PURE__*/_jsx(Text, {
76
+ className: "text-lg font-medium text-primary-foreground",
77
+ children: title
78
+ }), /*#__PURE__*/_jsx(View, {
79
+ className: "gap-2",
80
+ children: children
81
+ })]
82
+ });
83
+ }
84
+ function PrizeRow({
85
+ className,
86
+ ...props
87
+ }) {
88
+ return /*#__PURE__*/_jsx(View, {
89
+ className: cn("flex-row items-start justify-between", className),
90
+ ...props
91
+ });
92
+ }
93
+ function PrizeItem({
94
+ className,
95
+ imageSrc,
96
+ image,
97
+ dateLabel,
98
+ isNew = false,
99
+ locked = false,
100
+ ...props
101
+ }) {
102
+ return /*#__PURE__*/_jsxs(View, {
103
+ className: cn("relative w-[116px] items-center gap-1 rounded-lg px-4 py-2 shadow-sm", locked ? "opacity-50" : "bg-surface-card", className),
104
+ ...props,
105
+ children: [isNew ? /*#__PURE__*/_jsx(View, {
106
+ className: "absolute -right-1 -top-1 rounded-md bg-green-background-fill px-2 py-1",
107
+ children: /*#__PURE__*/_jsx(Text, {
108
+ className: "text-xs font-semibold text-green-foreground-onfill",
109
+ children: "Novo"
110
+ })
111
+ }) : null, image ?? (imageSrc ? /*#__PURE__*/_jsx(Image, {
112
+ source: {
113
+ uri: imageSrc
114
+ },
115
+ className: "h-[112px] w-[96px]",
116
+ resizeMode: "contain",
117
+ accessibilityLabel: dateLabel ?? "Prêmio"
118
+ }) : /*#__PURE__*/_jsx(View, {
119
+ className: "h-[112px] w-[96px] rounded-lg bg-gray-background-soft"
120
+ })), dateLabel ? /*#__PURE__*/_jsx(Text, {
121
+ className: "text-xs font-semibold text-gray-stroke-emphasis",
122
+ children: dateLabel
123
+ }) : null]
124
+ });
125
+ }
126
+ export { PrizeCollection, PrizeCollectionStats, PrizeCollectionStatsItem, PrizeShelf, PrizeRow, PrizeItem };
127
+ //# sourceMappingURL=PrizeCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Image","View","Text","cn","jsx","_jsx","jsxs","_jsxs","rankColors","PrizeCollection","className","title","statsTitle","children","footer","props","PrizeCollectionStats","PrizeCollectionStatsItem","count","rank","PrizeShelf","PrizeRow","PrizeItem","imageSrc","image","dateLabel","isNew","locked","source","uri","resizeMode","accessibilityLabel"],"sourceRoot":"../../../src","sources":["components/PrizeCollection.tsx"],"mappings":"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","ignoreList":[]}
@@ -62,5 +62,25 @@ function RadioGroupItem({
62
62
  })
63
63
  });
64
64
  }
65
- export { RadioGroup, RadioGroupItem, radioGroupVariants };
65
+ function RadioGroupList({
66
+ className,
67
+ children,
68
+ ...props
69
+ }) {
70
+ return /*#__PURE__*/_jsx(RadioGroupPrimitive.Root, {
71
+ className: cn("gap-0", className),
72
+ ...props,
73
+ children: children
74
+ });
75
+ }
76
+ function RadioGroupListItem({
77
+ className,
78
+ ...props
79
+ }) {
80
+ return /*#__PURE__*/_jsx(View, {
81
+ className: cn("border-b border-gray-stroke-muted py-2", className),
82
+ ...props
83
+ });
84
+ }
85
+ export { RadioGroup, RadioGroupItem, RadioGroupList, RadioGroupListItem, radioGroupVariants };
66
86
  //# sourceMappingURL=RadioGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["View","RadioGroupPrimitive","cva","cn","jsx","_jsx","INNER_DOT_SIZES","sm","md","lg","radioGroupVariants","variants","size","variant","regular","defaultVariants","RadioGroup","className","props","Root","RadioGroupItem","resolvedSize","dotSize","Item","children","Indicator","style","width","height","borderRadius"],"sourceRoot":"../../../src","sources":["components/RadioGroup.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAQ,cAAc;AACnC,OAAO,KAAKC,mBAAmB,MAAM,4BAA4B;AACjE,SAASC,GAAG,QAA2B,0BAA0B;AACjE,SAASC,EAAE,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMjC,MAAMC,eAAmD,GAAG;EAC1DC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE;AACN,CAAC;AAED,MAAMC,kBAAkB,GAAGR,GAAG,CAC5B,qGAAqG,EACrG;EACES,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJL,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE;IACN,CAAC;IACDI,OAAO,EAAE;MACPC,OAAO,EAAE;IACX;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE,IAAI;IACVC,OAAO,EAAE;EACX;AACF,CACF,CAAC;AAED,SAASG,UAAUA,CAAC;EAAEC,SAAS;EAAE,GAAGC;AAAqC,CAAC,EAAE;EAC1E,oBACEb,IAAA,CAACJ,mBAAmB,CAACkB,IAAI;IAACF,SAAS,EAAEd,EAAE,CAAC,OAAO,EAAEc,SAAS,CAAE;IAAA,GAAKC;EAAK,CAAG,CAAC;AAE9E;AAEA,SAASE,cAAcA,CAAC;EAAEH,SAAS;EAAEL,IAAI,GAAG,IAAI;EAAEC,OAAO;EAAE,GAAGK;AAA2B,CAAC,EAAE;EAC1F,MAAMG,YAAY,GAAGT,IAAI,IAAI,IAAI;EACjC,MAAMU,OAAO,GAAGhB,eAAe,CAACe,YAAY,CAAC;EAE7C,oBACEhB,IAAA,CAACJ,mBAAmB,CAACsB,IAAI;IACvBN,SAAS,EAAEd,EAAE,CAACO,kBAAkB,CAAC;MAAEE,IAAI;MAAEC;IAAQ,CAAC,CAAC,EAAEI,SAAS,CAAE;IAAA,GAC5DC,KAAK;IAAAM,QAAA,eAETnB,IAAA,CAACJ,mBAAmB,CAACwB,SAAS;MAACR,SAAS,EAAC,6BAA6B;MAAAO,QAAA,eACpEnB,IAAA,CAACL,IAAI;QACH0B,KAAK,EAAE;UAAEC,KAAK,EAAEL,OAAO;UAAEM,MAAM,EAAEN,OAAO;UAAEO,YAAY,EAAEP,OAAO,GAAG;QAAE,CAAE;QACtEL,SAAS,EAAC;MAA4B,CACvC;IAAC,CAC2B;EAAC,CACR,CAAC;AAE/B;AAEA,SAASD,UAAU,EAAEI,cAAc,EAAEV,kBAAkB","ignoreList":[]}
1
+ {"version":3,"names":["View","RadioGroupPrimitive","cva","cn","jsx","_jsx","INNER_DOT_SIZES","sm","md","lg","radioGroupVariants","variants","size","variant","regular","defaultVariants","RadioGroup","className","props","Root","RadioGroupItem","resolvedSize","dotSize","Item","children","Indicator","style","width","height","borderRadius","RadioGroupList","RadioGroupListItem"],"sourceRoot":"../../../src","sources":["components/RadioGroup.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAwB,cAAc;AACnD,OAAO,KAAKC,mBAAmB,MAAM,4BAA4B;AACjE,SAASC,GAAG,QAA2B,0BAA0B;AAEjE,SAASC,EAAE,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAMjC,MAAMC,eAAmD,GAAG;EAC1DC,EAAE,EAAE,CAAC;EACLC,EAAE,EAAE,EAAE;EACNC,EAAE,EAAE;AACN,CAAC;AAED,MAAMC,kBAAkB,GAAGR,GAAG,CAC5B,qGAAqG,EACrG;EACES,QAAQ,EAAE;IACRC,IAAI,EAAE;MACJL,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE,SAAS;MACbC,EAAE,EAAE;IACN,CAAC;IACDI,OAAO,EAAE;MACPC,OAAO,EAAE;IACX;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,IAAI,EAAE,IAAI;IACVC,OAAO,EAAE;EACX;AACF,CACF,CAAC;AAED,SAASG,UAAUA,CAAC;EAAEC,SAAS;EAAE,GAAGC;AAAqC,CAAC,EAAE;EAC1E,oBACEb,IAAA,CAACJ,mBAAmB,CAACkB,IAAI;IAACF,SAAS,EAAEd,EAAE,CAAC,OAAO,EAAEc,SAAS,CAAE;IAAA,GAAKC;EAAK,CAAG,CAAC;AAE9E;AAEA,SAASE,cAAcA,CAAC;EAAEH,SAAS;EAAEL,IAAI,GAAG,IAAI;EAAEC,OAAO;EAAE,GAAGK;AAA2B,CAAC,EAAE;EAC1F,MAAMG,YAAY,GAAGT,IAAI,IAAI,IAAI;EACjC,MAAMU,OAAO,GAAGhB,eAAe,CAACe,YAAY,CAAC;EAE7C,oBACEhB,IAAA,CAACJ,mBAAmB,CAACsB,IAAI;IACvBN,SAAS,EAAEd,EAAE,CAACO,kBAAkB,CAAC;MAAEE,IAAI;MAAEC;IAAQ,CAAC,CAAC,EAAEI,SAAS,CAAE;IAAA,GAC5DC,KAAK;IAAAM,QAAA,eAETnB,IAAA,CAACJ,mBAAmB,CAACwB,SAAS;MAACR,SAAS,EAAC,6BAA6B;MAAAO,QAAA,eACpEnB,IAAA,CAACL,IAAI;QACH0B,KAAK,EAAE;UAAEC,KAAK,EAAEL,OAAO;UAAEM,MAAM,EAAEN,OAAO;UAAEO,YAAY,EAAEP,OAAO,GAAG;QAAE,CAAE;QACtEL,SAAS,EAAC;MAA4B,CACvC;IAAC,CAC2B;EAAC,CACR,CAAC;AAE/B;AAOA,SAASa,cAAcA,CAAC;EAAEb,SAAS;EAAEO,QAAQ;EAAE,GAAGN;AAA2B,CAAC,EAAE;EAC9E,oBACEb,IAAA,CAACJ,mBAAmB,CAACkB,IAAI;IAACF,SAAS,EAAEd,EAAE,CAAC,OAAO,EAAEc,SAAS,CAAE;IAAA,GAAKC,KAAK;IAAAM,QAAA,EACnEA;EAAQ,CACe,CAAC;AAE/B;AAEA,SAASO,kBAAkBA,CAAC;EAAEd,SAAS;EAAE,GAAGC;AAAiB,CAAC,EAAE;EAC9D,oBACEb,IAAA,CAACL,IAAI;IACHiB,SAAS,EAAEd,EAAE,CAAC,wCAAwC,EAAEc,SAAS,CAAE;IAAA,GAC/DC;EAAK,CACV,CAAC;AAEN;AAEA,SACEF,UAAU,EACVI,cAAc,EACdU,cAAc,EACdC,kBAAkB,EAClBrB,kBAAkB","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ import { View } from "react-native";
4
+ import { Text } from "@/components/Text";
5
+ import { cn } from "@/lib/utils";
6
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
+ function SectionHeader({
8
+ className,
9
+ title,
10
+ subtitle,
11
+ trailing,
12
+ ...props
13
+ }) {
14
+ return /*#__PURE__*/_jsxs(View, {
15
+ className: cn("flex-row items-center justify-between px-1", className),
16
+ ...props,
17
+ children: [/*#__PURE__*/_jsxs(View, {
18
+ className: "min-w-0 flex-1 gap-0",
19
+ children: [/*#__PURE__*/_jsx(Text, {
20
+ className: "text-title-xs font-semibold text-primary-foreground",
21
+ children: title
22
+ }), subtitle != null ? /*#__PURE__*/_jsx(Text, {
23
+ className: "text-sm font-medium leading-sm text-primary-foreground",
24
+ children: subtitle
25
+ }) : null]
26
+ }), trailing ? /*#__PURE__*/_jsx(View, {
27
+ className: "flex-row items-center gap-4",
28
+ children: trailing
29
+ }) : null]
30
+ });
31
+ }
32
+ export { SectionHeader };
33
+ //# sourceMappingURL=SectionHeader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["View","Text","cn","jsx","_jsx","jsxs","_jsxs","SectionHeader","className","title","subtitle","trailing","props","children"],"sourceRoot":"../../../src","sources":["components/SectionHeader.tsx"],"mappings":";;AACA,SAASA,IAAI,QAAwB,cAAc;AAEnD,SAASC,IAAI,QAAQ,mBAAmB;AAExC,SAASC,EAAE,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AASjC,SAASC,aAAaA,CAAC;EACrBC,SAAS;EACTC,KAAK;EACLC,QAAQ;EACRC,QAAQ;EACR,GAAGC;AACe,CAAC,EAAE;EACrB,oBACEN,KAAA,CAACN,IAAI;IACHQ,SAAS,EAAEN,EAAE,CAAC,4CAA4C,EAAEM,SAAS,CAAE;IAAA,GACnEI,KAAK;IAAAC,QAAA,gBAETP,KAAA,CAACN,IAAI;MAACQ,SAAS,EAAC,sBAAsB;MAAAK,QAAA,gBACpCT,IAAA,CAACH,IAAI;QAACO,SAAS,EAAC,qDAAqD;QAAAK,QAAA,EAClEJ;MAAK,CACF,CAAC,EACNC,QAAQ,IAAI,IAAI,gBACfN,IAAA,CAACH,IAAI;QAACO,SAAS,EAAC,wDAAwD;QAAAK,QAAA,EACrEH;MAAQ,CACL,CAAC,GACL,IAAI;IAAA,CACJ,CAAC,EACNC,QAAQ,gBACPP,IAAA,CAACJ,IAAI;MAACQ,SAAS,EAAC,6BAA6B;MAAAK,QAAA,EAAEF;IAAQ,CAAO,CAAC,GAC7D,IAAI;EAAA,CACJ,CAAC;AAEX;AAEA,SAASJ,aAAa","ignoreList":[]}
@@ -6,7 +6,8 @@ import * as SwitchPrimitive from "@rn-primitives/switch";
6
6
  import Animated, { useSharedValue, useAnimatedStyle, withTiming, Easing } from "react-native-reanimated";
7
7
  import { cva } from "class-variance-authority";
8
8
  import { cn } from "@/lib/utils";
9
- import { Fragment as _Fragment, jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
9
+ import { useThemeColor } from "@/hooks/useThemeColor";
10
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
10
11
  const THUMB_SIZES = {
11
12
  sm: 8,
12
13
  md: 12,
@@ -17,7 +18,7 @@ const THUMB_TRANSLATE = {
17
18
  md: 15,
18
19
  lg: 19
19
20
  };
20
- const SWITCH_TRACK = {
21
+ const SWITCH_DIMENSIONS = {
21
22
  sm: {
22
23
  width: 24,
23
24
  height: 16
@@ -61,10 +62,17 @@ function Switch({
61
62
  ...props
62
63
  }) {
63
64
  const resolvedSize = size ?? "md";
64
- const trackSize = SWITCH_TRACK[resolvedSize];
65
+ const dimensions = SWITCH_DIMENSIONS[resolvedSize];
65
66
  const [internalChecked, setInternalChecked] = useState(defaultChecked ?? false);
66
67
  const isControlled = checked !== undefined;
67
68
  const isChecked = isControlled ? checked ?? false : internalChecked;
69
+ const trackOn = useThemeColor("primary-background-fill");
70
+ const trackOff = useThemeColor("surface-card");
71
+ const trackDisabled = useThemeColor("gray-background-soft-muted");
72
+ const trackBorder = useThemeColor("gray-stroke-muted");
73
+ const thumbOn = useThemeColor("primary-foreground-onfill");
74
+ const thumbOff = useThemeColor("gray-foreground-muted");
75
+ const thumbDisabled = useThemeColor("gray-background-fill-muted");
68
76
  const translateX = useSharedValue(isChecked ? THUMB_TRANSLATE[resolvedSize] : 2);
69
77
  useEffect(() => {
70
78
  translateX.value = withTiming(isChecked ? THUMB_TRANSLATE[resolvedSize] : 2, {
@@ -77,44 +85,50 @@ function Switch({
77
85
  translateX: translateX.value
78
86
  }]
79
87
  }));
80
- const hasIcons = checkedIcon || uncheckedIcon;
88
+ const hasIcons = Boolean(checkedIcon || uncheckedIcon);
81
89
  const thumbSize = THUMB_SIZES[resolvedSize];
82
90
  const handleCheckedChange = nextChecked => {
83
91
  if (!isControlled) setInternalChecked(nextChecked);
84
92
  onCheckedChange?.(nextChecked);
85
93
  };
86
- const trackStyle = {
87
- width: trackSize.width,
88
- height: trackSize.height,
89
- minWidth: trackSize.width,
90
- minHeight: trackSize.height,
91
- borderRadius: trackSize.height / 2,
94
+ const trackBackgroundColor = disabled ? trackDisabled : isChecked ? trackOn : trackOff;
95
+ const trackBorderColor = disabled || !isChecked ? trackBorder : "transparent";
96
+ const thumbBackgroundColor = disabled ? thumbDisabled : hasIcons ? "transparent" : isChecked ? thumbOn : thumbOff;
97
+ const rootStyle = {
98
+ width: dimensions.width,
99
+ height: dimensions.height,
100
+ minWidth: dimensions.width,
101
+ minHeight: dimensions.height,
102
+ borderRadius: dimensions.height / 2,
92
103
  borderWidth: 2,
93
- justifyContent: "center"
104
+ alignItems: "flex-start",
105
+ justifyContent: "center",
106
+ backgroundColor: trackBackgroundColor,
107
+ borderColor: trackBorderColor
94
108
  };
95
109
  return /*#__PURE__*/_jsx(SwitchPrimitive.Root, {
96
110
  checked: isChecked,
97
111
  onCheckedChange: handleCheckedChange,
98
112
  disabled: disabled,
99
- style: state => [trackStyle, typeof style === "function" ? style(state) : style],
113
+ style: state => [rootStyle, typeof style === "function" ? style(state) : style],
100
114
  className: cn(switchVariants({
101
115
  size,
102
116
  variant
103
- }), disabled ? "bg-gray-background-soft-muted border-gray-stroke-muted" : isChecked ? "bg-primary-background-fill border-primary-background-fill" : "bg-surface-card border-gray-stroke-muted", className),
117
+ }), className),
104
118
  ...props,
105
119
  children: /*#__PURE__*/_jsx(SwitchPrimitive.Thumb, {
106
120
  asChild: true,
107
121
  children: /*#__PURE__*/_jsx(Animated.View, {
108
122
  style: [thumbStyle, {
109
123
  width: thumbSize,
110
- height: thumbSize
124
+ height: thumbSize,
125
+ borderRadius: thumbSize / 2,
126
+ backgroundColor: thumbBackgroundColor
111
127
  }],
112
- children: /*#__PURE__*/_jsx(View, {
113
- className: cn("flex-1 items-center justify-center rounded-full", disabled ? "bg-gray-background-fill-muted" : hasIcons ? "bg-transparent" : isChecked ? "bg-primary-foreground-onfill" : "bg-gray-foreground-muted"),
114
- children: hasIcons ? /*#__PURE__*/_jsxs(_Fragment, {
115
- children: [isChecked && checkedIcon, !isChecked && uncheckedIcon]
116
- }) : null
117
- })
128
+ children: hasIcons ? /*#__PURE__*/_jsxs(View, {
129
+ className: "flex-1 items-center justify-center",
130
+ children: [isChecked && checkedIcon, !isChecked && uncheckedIcon]
131
+ }) : null
118
132
  })
119
133
  })
120
134
  });
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useEffect","View","SwitchPrimitive","Animated","useSharedValue","useAnimatedStyle","withTiming","Easing","cva","cn","Fragment","_Fragment","jsxs","_jsxs","jsx","_jsx","THUMB_SIZES","sm","md","lg","THUMB_TRANSLATE","SWITCH_TRACK","width","height","switchVariants","variants","variant","regular","size","defaultVariants","Switch","className","checkedIcon","uncheckedIcon","checked","defaultChecked","onCheckedChange","disabled","style","props","resolvedSize","trackSize","internalChecked","setInternalChecked","isControlled","undefined","isChecked","translateX","value","duration","easing","out","ease","thumbStyle","transform","hasIcons","thumbSize","handleCheckedChange","nextChecked","trackStyle","minWidth","minHeight","borderRadius","borderWidth","justifyContent","Root","state","children","Thumb","asChild"],"sourceRoot":"../../../src","sources":["components/Switch.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useState","useEffect","View","SwitchPrimitive","Animated","useSharedValue","useAnimatedStyle","withTiming","Easing","cva","cn","useThemeColor","jsxs","_jsxs","jsx","_jsx","THUMB_SIZES","sm","md","lg","THUMB_TRANSLATE","SWITCH_DIMENSIONS","width","height","switchVariants","variants","variant","regular","size","defaultVariants","Switch","className","checkedIcon","uncheckedIcon","checked","defaultChecked","onCheckedChange","disabled","style","props","resolvedSize","dimensions","internalChecked","setInternalChecked","isControlled","undefined","isChecked","trackOn","trackOff","trackDisabled","trackBorder","thumbOn","thumbOff","thumbDisabled","translateX","value","duration","easing","out","ease","thumbStyle","transform","hasIcons","Boolean","thumbSize","handleCheckedChange","nextChecked","trackBackgroundColor","trackBorderColor","thumbBackgroundColor","rootStyle","minWidth","minHeight","borderRadius","borderWidth","alignItems","justifyContent","backgroundColor","borderColor","Root","state","children","Thumb","asChild"],"sourceRoot":"../../../src","sources":["components/Switch.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+
3
+ import { createContext, useContext } from "react";
4
+ import { Pressable, View } from "react-native";
5
+ import { Text } from "@/components/Text";
6
+ import * as TabsPrimitive from "@rn-primitives/tabs";
7
+ import { cva } from "class-variance-authority";
8
+ import { cn } from "@/lib/utils";
9
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
10
+ const TabsVariantContext = /*#__PURE__*/createContext("pill");
11
+ function useTabsVariant() {
12
+ return useContext(TabsVariantContext);
13
+ }
14
+ const tabsTriggerVariants = cva("min-h-12 flex-row items-center justify-center rounded-pill px-4", {
15
+ variants: {
16
+ active: {
17
+ true: "bg-primary-background-fill",
18
+ false: "bg-transparent"
19
+ }
20
+ },
21
+ defaultVariants: {
22
+ active: false
23
+ }
24
+ });
25
+ const tabsTriggerTextVariants = cva("text-sm font-semibold", {
26
+ variants: {
27
+ active: {
28
+ true: "text-primary-foreground-onfill",
29
+ false: "text-primary-foreground"
30
+ }
31
+ },
32
+ defaultVariants: {
33
+ active: false
34
+ }
35
+ });
36
+ function Tabs({
37
+ className,
38
+ children,
39
+ variant = "pill",
40
+ ...props
41
+ }) {
42
+ return /*#__PURE__*/_jsx(TabsVariantContext.Provider, {
43
+ value: variant,
44
+ children: /*#__PURE__*/_jsx(TabsPrimitive.Root, {
45
+ asChild: true,
46
+ ...props,
47
+ children: /*#__PURE__*/_jsx(View, {
48
+ className: cn(variant === "filter" ? "gap-8" : "gap-2", className),
49
+ children: children
50
+ })
51
+ })
52
+ });
53
+ }
54
+ function TabsList({
55
+ className,
56
+ children,
57
+ ...props
58
+ }) {
59
+ const variant = useTabsVariant();
60
+ if (variant === "filter") {
61
+ return /*#__PURE__*/_jsx(View, {
62
+ className: "rounded-lg border border-gray-stroke-muted bg-surface-section px-6 py-1",
63
+ children: /*#__PURE__*/_jsx(TabsPrimitive.List, {
64
+ asChild: true,
65
+ ...props,
66
+ children: /*#__PURE__*/_jsx(View, {
67
+ className: cn("w-full flex-row items-center", className),
68
+ children: children
69
+ })
70
+ })
71
+ });
72
+ }
73
+ return /*#__PURE__*/_jsx(TabsPrimitive.List, {
74
+ asChild: true,
75
+ ...props,
76
+ children: /*#__PURE__*/_jsx(View, {
77
+ className: cn("flex-row items-center gap-2", className),
78
+ children: children
79
+ })
80
+ });
81
+ }
82
+ function TabsTrigger({
83
+ className,
84
+ children,
85
+ icon,
86
+ value,
87
+ ...props
88
+ }) {
89
+ const variant = useTabsVariant();
90
+ const {
91
+ value: activeValue
92
+ } = TabsPrimitive.useRootContext();
93
+ const isActive = activeValue === value;
94
+ if (variant === "filter") {
95
+ const hasLabel = typeof children === "string" && children.length > 0;
96
+ const showLabel = isActive && hasLabel;
97
+ return /*#__PURE__*/_jsx(TabsPrimitive.Trigger, {
98
+ asChild: true,
99
+ value: value,
100
+ ...props,
101
+ children: /*#__PURE__*/_jsxs(Pressable, {
102
+ className: cn("relative min-h-12 flex-1 flex-row items-center justify-center gap-3 py-3", className),
103
+ children: [icon ? /*#__PURE__*/_jsx(View, {
104
+ className: "size-6 shrink-0",
105
+ children: icon
106
+ }) : null, showLabel ? /*#__PURE__*/_jsx(Text, {
107
+ className: "text-md font-semibold text-primary-foreground",
108
+ children: children
109
+ }) : !hasLabel ? children : null, isActive ? /*#__PURE__*/_jsx(View, {
110
+ className: "absolute -bottom-1 left-0 right-0 h-0.5 rounded-t-pill bg-secondary-stroke-emphasis"
111
+ }) : null]
112
+ })
113
+ });
114
+ }
115
+ return /*#__PURE__*/_jsx(TabsPrimitive.Trigger, {
116
+ asChild: true,
117
+ value: value,
118
+ ...props,
119
+ children: /*#__PURE__*/_jsx(Pressable, {
120
+ className: cn(tabsTriggerVariants({
121
+ active: isActive
122
+ }), className),
123
+ children: typeof children === "string" ? /*#__PURE__*/_jsx(Text, {
124
+ className: cn(tabsTriggerTextVariants({
125
+ active: isActive
126
+ })),
127
+ children: children
128
+ }) : children
129
+ })
130
+ });
131
+ }
132
+ function TabsContent({
133
+ className,
134
+ children,
135
+ ...props
136
+ }) {
137
+ const variant = useTabsVariant();
138
+ return /*#__PURE__*/_jsx(TabsPrimitive.Content, {
139
+ asChild: true,
140
+ ...props,
141
+ children: /*#__PURE__*/_jsx(View, {
142
+ className: cn(variant === "filter" ? "gap-8" : "pt-2", className),
143
+ children: children
144
+ })
145
+ });
146
+ }
147
+ export { Tabs, TabsContent, TabsList, TabsTrigger, tabsTriggerVariants };
148
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createContext","useContext","Pressable","View","Text","TabsPrimitive","cva","cn","jsx","_jsx","jsxs","_jsxs","TabsVariantContext","useTabsVariant","tabsTriggerVariants","variants","active","true","false","defaultVariants","tabsTriggerTextVariants","Tabs","className","children","variant","props","Provider","value","Root","asChild","TabsList","List","TabsTrigger","icon","activeValue","useRootContext","isActive","hasLabel","length","showLabel","Trigger","TabsContent","Content"],"sourceRoot":"../../../src","sources":["components/Tabs.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAwB,OAAO;AACjE,SAASC,SAAS,EAAEC,IAAI,QAAQ,cAAc;AAE9C,SAASC,IAAI,QAAQ,mBAAmB;AACxC,OAAO,KAAKC,aAAa,MAAM,qBAAqB;AACpD,SAASC,GAAG,QAA2B,0BAA0B;AAEjE,SAASC,EAAE,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAIjC,MAAMC,kBAAkB,gBAAGZ,aAAa,CAAc,MAAM,CAAC;AAE7D,SAASa,cAAcA,CAAA,EAAG;EACxB,OAAOZ,UAAU,CAACW,kBAAkB,CAAC;AACvC;AAEA,MAAME,mBAAmB,GAAGR,GAAG,CAC7B,iEAAiE,EACjE;EACES,QAAQ,EAAE;IACRC,MAAM,EAAE;MACNC,IAAI,EAAE,4BAA4B;MAClCC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,MAAM,EAAE;EACV;AACF,CACF,CAAC;AAED,MAAMI,uBAAuB,GAAGd,GAAG,CAAC,uBAAuB,EAAE;EAC3DS,QAAQ,EAAE;IACRC,MAAM,EAAE;MACNC,IAAI,EAAE,gCAAgC;MACtCC,KAAK,EAAE;IACT;EACF,CAAC;EACDC,eAAe,EAAE;IACfH,MAAM,EAAE;EACV;AACF,CAAC,CAAC;AA0BF,SAASK,IAAIA,CAAC;EAAEC,SAAS;EAAEC,QAAQ;EAAEC,OAAO,GAAG,MAAM;EAAE,GAAGC;AAAiB,CAAC,EAAE;EAC5E,oBACEhB,IAAA,CAACG,kBAAkB,CAACc,QAAQ;IAACC,KAAK,EAAEH,OAAQ;IAAAD,QAAA,eAC1Cd,IAAA,CAACJ,aAAa,CAACuB,IAAI;MAACC,OAAO;MAAA,GAAKJ,KAAK;MAAAF,QAAA,eACnCd,IAAA,CAACN,IAAI;QACHmB,SAAS,EAAEf,EAAE,CAACiB,OAAO,KAAK,QAAQ,GAAG,OAAO,GAAG,OAAO,EAAEF,SAAS,CAAE;QAAAC,QAAA,EAElEA;MAAQ,CACL;IAAC,CACW;EAAC,CACM,CAAC;AAElC;AAEA,SAASO,QAAQA,CAAC;EAAER,SAAS;EAAEC,QAAQ;EAAE,GAAGE;AAAqB,CAAC,EAAE;EAClE,MAAMD,OAAO,GAAGX,cAAc,CAAC,CAAC;EAEhC,IAAIW,OAAO,KAAK,QAAQ,EAAE;IACxB,oBACEf,IAAA,CAACN,IAAI;MAACmB,SAAS,EAAC,yEAAyE;MAAAC,QAAA,eACvFd,IAAA,CAACJ,aAAa,CAAC0B,IAAI;QAACF,OAAO;QAAA,GAAKJ,KAAK;QAAAF,QAAA,eACnCd,IAAA,CAACN,IAAI;UAACmB,SAAS,EAAEf,EAAE,CAAC,8BAA8B,EAAEe,SAAS,CAAE;UAAAC,QAAA,EAC5DA;QAAQ,CACL;MAAC,CACW;IAAC,CACjB,CAAC;EAEX;EAEA,oBACEd,IAAA,CAACJ,aAAa,CAAC0B,IAAI;IAACF,OAAO;IAAA,GAAKJ,KAAK;IAAAF,QAAA,eACnCd,IAAA,CAACN,IAAI;MAACmB,SAAS,EAAEf,EAAE,CAAC,6BAA6B,EAAEe,SAAS,CAAE;MAAAC,QAAA,EAC3DA;IAAQ,CACL;EAAC,CACW,CAAC;AAEzB;AAEA,SAASS,WAAWA,CAAC;EACnBV,SAAS;EACTC,QAAQ;EACRU,IAAI;EACJN,KAAK;EACL,GAAGF;AACa,CAAC,EAAE;EACnB,MAAMD,OAAO,GAAGX,cAAc,CAAC,CAAC;EAChC,MAAM;IAAEc,KAAK,EAAEO;EAAY,CAAC,GAAG7B,aAAa,CAAC8B,cAAc,CAAC,CAAC;EAC7D,MAAMC,QAAQ,GAAGF,WAAW,KAAKP,KAAK;EAEtC,IAAIH,OAAO,KAAK,QAAQ,EAAE;IACxB,MAAMa,QAAQ,GAAG,OAAOd,QAAQ,KAAK,QAAQ,IAAIA,QAAQ,CAACe,MAAM,GAAG,CAAC;IACpE,MAAMC,SAAS,GAAGH,QAAQ,IAAIC,QAAQ;IAEtC,oBACE5B,IAAA,CAACJ,aAAa,CAACmC,OAAO;MAACX,OAAO;MAACF,KAAK,EAAEA,KAAM;MAAA,GAAKF,KAAK;MAAAF,QAAA,eACpDZ,KAAA,CAACT,SAAS;QACRoB,SAAS,EAAEf,EAAE,CACX,0EAA0E,EAC1Ee,SACF,CAAE;QAAAC,QAAA,GAEDU,IAAI,gBAAGxB,IAAA,CAACN,IAAI;UAACmB,SAAS,EAAC,iBAAiB;UAAAC,QAAA,EAAEU;QAAI,CAAO,CAAC,GAAG,IAAI,EAC7DM,SAAS,gBACR9B,IAAA,CAACL,IAAI;UAACkB,SAAS,EAAC,+CAA+C;UAAAC,QAAA,EAC5DA;QAAQ,CACL,CAAC,GACL,CAACc,QAAQ,GACXd,QAAQ,GACN,IAAI,EACPa,QAAQ,gBACP3B,IAAA,CAACN,IAAI;UAACmB,SAAS,EAAC;QAAqF,CAAE,CAAC,GACtG,IAAI;MAAA,CACC;IAAC,CACS,CAAC;EAE5B;EAEA,oBACEb,IAAA,CAACJ,aAAa,CAACmC,OAAO;IAACX,OAAO;IAACF,KAAK,EAAEA,KAAM;IAAA,GAAKF,KAAK;IAAAF,QAAA,eACpDd,IAAA,CAACP,SAAS;MACRoB,SAAS,EAAEf,EAAE,CAACO,mBAAmB,CAAC;QAAEE,MAAM,EAAEoB;MAAS,CAAC,CAAC,EAAEd,SAAS,CAAE;MAAAC,QAAA,EAEnE,OAAOA,QAAQ,KAAK,QAAQ,gBAC3Bd,IAAA,CAACL,IAAI;QAACkB,SAAS,EAAEf,EAAE,CAACa,uBAAuB,CAAC;UAAEJ,MAAM,EAAEoB;QAAS,CAAC,CAAC,CAAE;QAAAb,QAAA,EAChEA;MAAQ,CACL,CAAC,GAEPA;IACD,CACQ;EAAC,CACS,CAAC;AAE5B;AAEA,SAASkB,WAAWA,CAAC;EAAEnB,SAAS;EAAEC,QAAQ;EAAE,GAAGE;AAAwB,CAAC,EAAE;EACxE,MAAMD,OAAO,GAAGX,cAAc,CAAC,CAAC;EAEhC,oBACEJ,IAAA,CAACJ,aAAa,CAACqC,OAAO;IAACb,OAAO;IAAA,GAAKJ,KAAK;IAAAF,QAAA,eACtCd,IAAA,CAACN,IAAI;MAACmB,SAAS,EAAEf,EAAE,CAACiB,OAAO,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,EAAEF,SAAS,CAAE;MAAAC,QAAA,EACrEA;IAAQ,CACL;EAAC,CACc,CAAC;AAE5B;AAEA,SAASF,IAAI,EAAEoB,WAAW,EAAEX,QAAQ,EAAEE,WAAW,EAAElB,mBAAmB","ignoreList":[]}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
 
3
- import { View, Text } from "react-native";
3
+ import { View } from "react-native";
4
+ import { Text } from "@/components/Text";
4
5
  import { cva } from "class-variance-authority";
5
6
  import { cn } from "@/lib/utils";
6
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
@@ -1 +1 @@
1
- {"version":3,"names":["View","Text","cva","cn","jsx","_jsx","jsxs","_jsxs","tagVariants","variants","variant","regular","emphasis","gray","success","error","warning","cm","go","cir","ped","prev","ia","defaultVariants","tagTextVariants","TagIcon","icon","className","children","Tag","props"],"sourceRoot":"../../../src","sources":["components/Tag.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["View","Text","cva","cn","jsx","_jsx","jsxs","_jsxs","tagVariants","variants","variant","regular","emphasis","gray","success","error","warning","cm","go","cir","ped","prev","ia","defaultVariants","tagTextVariants","TagIcon","icon","className","children","Tag","props"],"sourceRoot":"../../../src","sources":["components/Tag.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ import { forwardRef } from 'react';
4
+ import { Text as RNText } from 'react-native';
5
+ import { cn } from '@/lib/utils';
6
+
7
+ /**
8
+ * Maps Medway UI token weight class names → expo-font family keys.
9
+ * RN cannot pick a weight inside a single "Montserrat" family the way the web does.
10
+ */
11
+ import { jsx as _jsx } from "react/jsx-runtime";
12
+ const FONT_BY_WEIGHT_CLASS = {
13
+ 'font-thin': 'MontserratLight',
14
+ 'font-extralight': 'MontserratLight',
15
+ 'font-light': 'MontserratLight',
16
+ 'font-normal': 'Montserrat',
17
+ 'font-regular': 'Montserrat',
18
+ 'font-medium': 'MontserratMedium',
19
+ 'font-semibold': 'MontserratSemiBold',
20
+ 'font-bold': 'MontserratBold',
21
+ 'font-extrabold': 'MontserratExtraBold',
22
+ 'font-black': 'MontserratBlack'
23
+ };
24
+ function resolveMontserratFamily(className) {
25
+ if (!className) {
26
+ return 'Montserrat';
27
+ }
28
+ const tokens = className.split(/\s+/);
29
+ for (let i = tokens.length - 1; i >= 0; i -= 1) {
30
+ const family = FONT_BY_WEIGHT_CLASS[tokens[i]];
31
+ if (family) {
32
+ return family;
33
+ }
34
+ }
35
+ return 'Montserrat';
36
+ }
37
+ /**
38
+ * NativeWind Text that always applies the Montserrat file for the token weight
39
+ * class (font-medium → MontserratMedium, etc.). Last style entry wins over
40
+ * className-derived styles so RN actually loads the correct TTF.
41
+ */
42
+ const Text = /*#__PURE__*/forwardRef(function Text({
43
+ className,
44
+ style,
45
+ ...props
46
+ }, ref) {
47
+ const fontFamily = resolveMontserratFamily(className);
48
+ return /*#__PURE__*/_jsx(RNText, {
49
+ ref: ref,
50
+ className: cn(className),
51
+ style: [style, {
52
+ fontFamily
53
+ }],
54
+ ...props
55
+ });
56
+ });
57
+ export { Text, resolveMontserratFamily, FONT_BY_WEIGHT_CLASS };
58
+ //# sourceMappingURL=Text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","Text","RNText","cn","jsx","_jsx","FONT_BY_WEIGHT_CLASS","resolveMontserratFamily","className","tokens","split","i","length","family","style","props","ref","fontFamily"],"sourceRoot":"../../../src","sources":["components/Text.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAA6B,OAAO;AACvD,SAASC,IAAI,IAAIC,MAAM,QAAuC,cAAc;AAE5E,SAASC,EAAE,QAAQ,aAAa;;AAEhC;AACA;AACA;AACA;AAHA,SAAAC,GAAA,IAAAC,IAAA;AAIA,MAAMC,oBAA4C,GAAG;EACnD,WAAW,EAAE,iBAAiB;EAC9B,iBAAiB,EAAE,iBAAiB;EACpC,YAAY,EAAE,iBAAiB;EAC/B,aAAa,EAAE,YAAY;EAC3B,cAAc,EAAE,YAAY;EAC5B,aAAa,EAAE,kBAAkB;EACjC,eAAe,EAAE,oBAAoB;EACrC,WAAW,EAAE,gBAAgB;EAC7B,gBAAgB,EAAE,qBAAqB;EACvC,YAAY,EAAE;AAChB,CAAC;AAED,SAASC,uBAAuBA,CAACC,SAAkB,EAAU;EAC3D,IAAI,CAACA,SAAS,EAAE;IACd,OAAO,YAAY;EACrB;EAEA,MAAMC,MAAM,GAAGD,SAAS,CAACE,KAAK,CAAC,KAAK,CAAC;EACrC,KAAK,IAAIC,CAAC,GAAGF,MAAM,CAACG,MAAM,GAAG,CAAC,EAAED,CAAC,IAAI,CAAC,EAAEA,CAAC,IAAI,CAAC,EAAE;IAC9C,MAAME,MAAM,GAAGP,oBAAoB,CAACG,MAAM,CAACE,CAAC,CAAC,CAAC;IAC9C,IAAIE,MAAM,EAAE;MACV,OAAOA,MAAM;IACf;EACF;EAEA,OAAO,YAAY;AACrB;AAMA;AACA;AACA;AACA;AACA;AACA,MAAMZ,IAAI,gBAAGD,UAAU,CAAoB,SAASC,IAAIA,CACtD;EAAEO,SAAS;EAAEM,KAAK;EAAE,GAAGC;AAAM,CAAC,EAC9BC,GAAG,EACH;EACA,MAAMC,UAAU,GAAGV,uBAAuB,CAACC,SAAS,CAAC;EAErD,oBACEH,IAAA,CAACH,MAAM;IACLc,GAAG,EAAEA,GAAI;IACTR,SAAS,EAAEL,EAAE,CAACK,SAAS,CAAE;IACzBM,KAAK,EAAE,CAACA,KAAK,EAAE;MAAEG;IAAW,CAAC,CAAE;IAAA,GAC3BF;EAAK,CACV,CAAC;AAEN,CAAC,CAAC;AAEF,SAASd,IAAI,EAAEM,uBAAuB,EAAED,oBAAoB","ignoreList":[]}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
 
3
3
  import { useState, useEffect } from "react";
4
- import { View, Text, Pressable } from "react-native";
4
+ import { View, Pressable } from "react-native";
5
+ import { Text } from "@/components/Text";
5
6
  import { cva } from "class-variance-authority";
6
7
  import Animated, { useSharedValue, useAnimatedStyle, withTiming, withDelay, runOnJS } from "react-native-reanimated";
7
8
  import { cn } from "@/lib/utils";