@sincpro/mobile-ui 0.1.3 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/README.md +34 -9
  2. package/{lib → dist}/Dialog/BottomSheet/BottomSheet.Root.js +1 -1
  3. package/{lib → dist}/Dialog/Confirmation.context.js +1 -1
  4. package/{lib → dist}/Dialog/Dialog.Confirmation.js +1 -1
  5. package/{lib → dist}/Dialog/Dialog.EditValue.js +1 -1
  6. package/{lib → dist}/Display/Display.Avatar.js +1 -1
  7. package/{lib → dist}/Display/Display.Badge.js +1 -1
  8. package/{lib → dist}/Display/Display.CopyableText.js +1 -1
  9. package/{lib → dist}/Display/Display.CountRecords.js +1 -1
  10. package/{lib → dist}/Display/Display.Date.js +7 -8
  11. package/{lib → dist}/Display/Display.Divider.js +1 -1
  12. package/{lib → dist}/Display/Display.Icon.js +1 -1
  13. package/{lib → dist}/Display/Display.Logo.js +1 -1
  14. package/{lib → dist}/Display/Display.MenuButton.js +1 -1
  15. package/{lib → dist}/Display/Display.Monetary.js +1 -1
  16. package/{lib → dist}/Feedback/ErrorBoundary.js +1 -1
  17. package/{lib → dist}/Feedback/Feedback.DomainSplashScreen.js +1 -1
  18. package/{lib → dist}/Feedback/Feedback.Empty.js +1 -1
  19. package/{lib → dist}/Feedback/Feedback.Error.js +1 -1
  20. package/{lib → dist}/Feedback/Feedback.Loading.js +1 -1
  21. package/{lib → dist}/Feedback/Feedback.Spinner.js +1 -1
  22. package/{lib → dist}/Feedback/Feedback.Splash.js +1 -1
  23. package/{lib → dist}/Form/Form.Button.js +1 -1
  24. package/{lib → dist}/Form/Form.Checkbox.js +1 -1
  25. package/{lib → dist}/Form/Form.ControlledCheckbox.js +1 -1
  26. package/{lib → dist}/Form/Form.ControlledInput.js +1 -1
  27. package/{lib → dist}/Form/Form.ControlledMonetaryInput.js +1 -1
  28. package/{lib → dist}/Form/Form.ControlledRadioButton.js +1 -1
  29. package/{lib → dist}/Form/Form.Dropdown.js +1 -1
  30. package/{lib → dist}/Form/Form.FilterButton.js +1 -1
  31. package/{lib → dist}/Form/Form.FractionalQuantityInput.js +1 -1
  32. package/{lib → dist}/Form/Form.IconButton.js +1 -1
  33. package/{lib → dist}/Form/Form.Input.js +1 -1
  34. package/{lib → dist}/Form/Form.InputField.js +1 -1
  35. package/{lib → dist}/Form/Form.MonetaryInput.js +1 -1
  36. package/{lib → dist}/Form/Form.PasswordInput.js +1 -1
  37. package/{lib → dist}/Form/Form.QuantitySelector.js +1 -1
  38. package/{lib → dist}/Form/Form.RadioButton.js +1 -1
  39. package/{lib → dist}/Form/Form.SearchBar.js +1 -1
  40. package/{lib → dist}/Form/Form.TextInput.js +1 -1
  41. package/dist/Navigation/Navigation.Header.d.ts +12 -0
  42. package/{lib → dist}/Navigation/Navigation.Header.js +3 -3
  43. package/{lib → dist}/Navigation/Navigation.HeaderToolbar.js +1 -1
  44. package/{lib → dist}/Navigation/Navigation.RowItem.js +1 -1
  45. package/{lib → dist}/Navigation/Navigation.TabIcon.js +1 -1
  46. package/{lib → dist}/Navigation/Navigation.TabItem.js +1 -1
  47. package/{lib → dist}/Navigation/index.d.ts +1 -1
  48. package/{lib → dist}/Typography/Typography.Heading.js +1 -1
  49. package/{lib → dist}/Typography/Typography.Text.js +1 -1
  50. package/{lib → dist}/icons/AddItemIcon.js +1 -1
  51. package/{lib → dist}/icons/ArrangeCircle.js +1 -1
  52. package/{lib → dist}/icons/ArrowDownIcon.js +1 -1
  53. package/{lib → dist}/icons/ArrowUpIcon.js +1 -1
  54. package/{lib → dist}/icons/BoxIcon.js +1 -1
  55. package/{lib → dist}/icons/BoxTimeIcon.js +1 -1
  56. package/{lib → dist}/icons/CalendarIcon.js +1 -1
  57. package/{lib → dist}/icons/CardIcon.js +1 -1
  58. package/{lib → dist}/icons/CashierIcon.js +1 -1
  59. package/{lib → dist}/icons/CreditIcon.js +1 -1
  60. package/{lib → dist}/icons/DuoIcon.js +1 -1
  61. package/{lib → dist}/icons/HomeIcon.js +1 -1
  62. package/{lib → dist}/icons/HomeIconOutlined.js +1 -1
  63. package/{lib → dist}/icons/LogoIcon.js +1 -1
  64. package/{lib → dist}/icons/MoneyReceiveIcon.js +1 -1
  65. package/{lib → dist}/icons/OdooIcon.js +1 -1
  66. package/{lib → dist}/icons/PinIcon.js +1 -1
  67. package/{lib → dist}/icons/PrinterIcon.js +1 -1
  68. package/{lib → dist}/icons/ProfileIcon.js +1 -1
  69. package/{lib → dist}/icons/SettingsIcon.js +1 -1
  70. package/{lib → dist}/icons/SinpeIcon.js +1 -1
  71. package/{lib → dist}/icons/ToggleOffIcon.js +1 -1
  72. package/{lib → dist}/icons/WalletMoneyIcon.js +1 -1
  73. package/{lib → dist}/layouts/AuthContainer.js +1 -1
  74. package/{lib → dist}/layouts/Container.js +1 -1
  75. package/{lib → dist}/layouts/GradientContainer.js +1 -1
  76. package/{lib → dist}/layouts/PlainLayout.js +1 -1
  77. package/{lib → dist}/layouts/ScrollContainer.js +1 -1
  78. package/{lib → dist}/layouts/TabNavigatorLayout.d.ts +1 -1
  79. package/{lib → dist}/layouts/TabNavigatorLayout.js +1 -1
  80. package/{lib → dist}/primitives/BaseButton.js +1 -1
  81. package/{lib → dist}/primitives/Box.js +1 -1
  82. package/{lib → dist}/primitives/Row.js +1 -1
  83. package/{lib → dist}/primitives/Stack.js +1 -1
  84. package/{lib → dist}/providers/index.js +1 -1
  85. package/{lib → dist}/theme/components/ThemedActivityIndicator.js +1 -1
  86. package/dist/theme/css-vars.d.ts +7 -0
  87. package/dist/theme/css-vars.js +64 -0
  88. package/dist/theme/define.d.ts +18 -0
  89. package/dist/theme/define.js +34 -0
  90. package/dist/theme/globals.css +67 -0
  91. package/dist/theme/index.d.ts +7 -0
  92. package/dist/theme/index.js +6 -0
  93. package/dist/views/AuthFormView.d.ts +11 -0
  94. package/{lib → dist}/views/AuthFormView.js +3 -3
  95. package/{lib → dist}/views/FormViewV2.context.js +1 -1
  96. package/{lib → dist}/views/FormViewV2.d.ts +3 -1
  97. package/{lib → dist}/views/FormViewV2.js +3 -3
  98. package/{lib → dist}/views/ListViewV2.context.js +1 -1
  99. package/{lib → dist}/views/ListViewV2.js +1 -1
  100. package/{lib → dist}/views/Wizard/Wizard.context.js +1 -1
  101. package/{lib → dist}/views/Wizard/Wizard.js +1 -1
  102. package/dist/views/types/UIItem.js +1 -0
  103. package/{lib → dist}/widgets/CircleButton.js +1 -1
  104. package/{lib → dist}/widgets/GeoPermissionCard.js +1 -1
  105. package/{lib → dist}/widgets/HomeHeader.d.ts +2 -0
  106. package/{lib → dist}/widgets/HomeHeader.js +3 -3
  107. package/{lib → dist}/widgets/JSONViewer.js +1 -1
  108. package/{lib → dist}/widgets/MenuCard.js +1 -1
  109. package/{lib → dist}/widgets/MenuGrid.js +1 -1
  110. package/{lib → dist}/widgets/ScreenHeader.d.ts +3 -1
  111. package/{lib → dist}/widgets/ScreenHeader.js +4 -4
  112. package/{lib → dist}/widgets/TimeZoneSelector.js +1 -1
  113. package/{lib → dist}/widgets/TimeZoneSelectorModal.js +1 -1
  114. package/package.json +41 -7
  115. package/tailwind.preset.js +146 -0
  116. package/lib/Navigation/Navigation.Header.d.ts +0 -10
  117. package/lib/providers/index.d.ts +0 -0
  118. package/lib/theme/index.d.ts +0 -4
  119. package/lib/theme/index.js +0 -3
  120. package/lib/views/AuthFormView.d.ts +0 -9
  121. /package/{lib → dist}/Dialog/BottomSheet/BottomSheet.Root.d.ts +0 -0
  122. /package/{lib → dist}/Dialog/BottomSheet/index.d.ts +0 -0
  123. /package/{lib → dist}/Dialog/BottomSheet/index.js +0 -0
  124. /package/{lib → dist}/Dialog/Confirmation.context.d.ts +0 -0
  125. /package/{lib → dist}/Dialog/Dialog.Confirmation.d.ts +0 -0
  126. /package/{lib → dist}/Dialog/Dialog.EditValue.d.ts +0 -0
  127. /package/{lib → dist}/Dialog/index.d.ts +0 -0
  128. /package/{lib → dist}/Dialog/index.js +0 -0
  129. /package/{lib → dist}/Display/Display.Avatar.d.ts +0 -0
  130. /package/{lib → dist}/Display/Display.Badge.d.ts +0 -0
  131. /package/{lib → dist}/Display/Display.CopyableText.d.ts +0 -0
  132. /package/{lib → dist}/Display/Display.CountRecords.d.ts +0 -0
  133. /package/{lib → dist}/Display/Display.Date.d.ts +0 -0
  134. /package/{lib → dist}/Display/Display.Divider.d.ts +0 -0
  135. /package/{lib → dist}/Display/Display.Icon.d.ts +0 -0
  136. /package/{lib → dist}/Display/Display.Logo.d.ts +0 -0
  137. /package/{lib → dist}/Display/Display.MenuButton.d.ts +0 -0
  138. /package/{lib → dist}/Display/Display.Monetary.d.ts +0 -0
  139. /package/{lib → dist}/Display/index.d.ts +0 -0
  140. /package/{lib → dist}/Display/index.js +0 -0
  141. /package/{lib → dist}/Feedback/ErrorBoundary.d.ts +0 -0
  142. /package/{lib → dist}/Feedback/Feedback.DomainSplashScreen.d.ts +0 -0
  143. /package/{lib → dist}/Feedback/Feedback.Empty.d.ts +0 -0
  144. /package/{lib → dist}/Feedback/Feedback.Error.d.ts +0 -0
  145. /package/{lib → dist}/Feedback/Feedback.Loading.d.ts +0 -0
  146. /package/{lib → dist}/Feedback/Feedback.Spinner.d.ts +0 -0
  147. /package/{lib → dist}/Feedback/Feedback.Splash.d.ts +0 -0
  148. /package/{lib → dist}/Feedback/index.d.ts +0 -0
  149. /package/{lib → dist}/Feedback/index.js +0 -0
  150. /package/{lib → dist}/Form/Form.Button.d.ts +0 -0
  151. /package/{lib → dist}/Form/Form.Checkbox.d.ts +0 -0
  152. /package/{lib → dist}/Form/Form.ControlledCheckbox.d.ts +0 -0
  153. /package/{lib → dist}/Form/Form.ControlledDropdown.d.ts +0 -0
  154. /package/{lib → dist}/Form/Form.ControlledDropdown.js +0 -0
  155. /package/{lib → dist}/Form/Form.ControlledInput.d.ts +0 -0
  156. /package/{lib → dist}/Form/Form.ControlledMonetaryInput.d.ts +0 -0
  157. /package/{lib → dist}/Form/Form.ControlledRadioButton.d.ts +0 -0
  158. /package/{lib → dist}/Form/Form.Dropdown.d.ts +0 -0
  159. /package/{lib → dist}/Form/Form.FilterButton.d.ts +0 -0
  160. /package/{lib → dist}/Form/Form.FractionalQuantityInput.d.ts +0 -0
  161. /package/{lib → dist}/Form/Form.IconButton.d.ts +0 -0
  162. /package/{lib → dist}/Form/Form.Input.d.ts +0 -0
  163. /package/{lib → dist}/Form/Form.InputField.d.ts +0 -0
  164. /package/{lib → dist}/Form/Form.MonetaryInput.d.ts +0 -0
  165. /package/{lib → dist}/Form/Form.PasswordInput.d.ts +0 -0
  166. /package/{lib → dist}/Form/Form.QuantitySelector.d.ts +0 -0
  167. /package/{lib → dist}/Form/Form.RadioButton.d.ts +0 -0
  168. /package/{lib → dist}/Form/Form.SearchBar.d.ts +0 -0
  169. /package/{lib → dist}/Form/Form.TextInput.d.ts +0 -0
  170. /package/{lib → dist}/Form/index.d.ts +0 -0
  171. /package/{lib → dist}/Form/index.js +0 -0
  172. /package/{lib → dist}/Navigation/Navigation.HeaderToolbar.d.ts +0 -0
  173. /package/{lib → dist}/Navigation/Navigation.RowItem.d.ts +0 -0
  174. /package/{lib → dist}/Navigation/Navigation.TabIcon.d.ts +0 -0
  175. /package/{lib → dist}/Navigation/Navigation.TabItem.d.ts +0 -0
  176. /package/{lib → dist}/Navigation/index.js +0 -0
  177. /package/{lib → dist}/Typography/Typography.Heading.d.ts +0 -0
  178. /package/{lib → dist}/Typography/Typography.Text.d.ts +0 -0
  179. /package/{lib → dist}/Typography/index.d.ts +0 -0
  180. /package/{lib → dist}/Typography/index.js +0 -0
  181. /package/{lib → dist}/icons/AddItemIcon.d.ts +0 -0
  182. /package/{lib → dist}/icons/ArrangeCircle.d.ts +0 -0
  183. /package/{lib → dist}/icons/ArrowDownIcon.d.ts +0 -0
  184. /package/{lib → dist}/icons/ArrowUpIcon.d.ts +0 -0
  185. /package/{lib → dist}/icons/BoxIcon.d.ts +0 -0
  186. /package/{lib → dist}/icons/BoxTimeIcon.d.ts +0 -0
  187. /package/{lib → dist}/icons/CalendarIcon.d.ts +0 -0
  188. /package/{lib → dist}/icons/CardIcon.d.ts +0 -0
  189. /package/{lib → dist}/icons/CashierIcon.d.ts +0 -0
  190. /package/{lib → dist}/icons/CreditIcon.d.ts +0 -0
  191. /package/{lib → dist}/icons/DuoIcon.d.ts +0 -0
  192. /package/{lib → dist}/icons/HomeIcon.d.ts +0 -0
  193. /package/{lib → dist}/icons/HomeIconOutlined.d.ts +0 -0
  194. /package/{lib → dist}/icons/LogoIcon.d.ts +0 -0
  195. /package/{lib → dist}/icons/MoneyReceiveIcon.d.ts +0 -0
  196. /package/{lib → dist}/icons/OdooIcon.d.ts +0 -0
  197. /package/{lib → dist}/icons/PinIcon.d.ts +0 -0
  198. /package/{lib → dist}/icons/PrinterIcon.d.ts +0 -0
  199. /package/{lib → dist}/icons/ProfileIcon.d.ts +0 -0
  200. /package/{lib → dist}/icons/SettingsIcon.d.ts +0 -0
  201. /package/{lib → dist}/icons/SinpeIcon.d.ts +0 -0
  202. /package/{lib → dist}/icons/ToggleOffIcon.d.ts +0 -0
  203. /package/{lib → dist}/icons/WalletMoneyIcon.d.ts +0 -0
  204. /package/{lib → dist}/icons/icon_getters.d.ts +0 -0
  205. /package/{lib → dist}/icons/icon_getters.js +0 -0
  206. /package/{lib → dist}/icons/props.d.ts +0 -0
  207. /package/{lib → dist}/icons/props.js +0 -0
  208. /package/{lib → dist}/index.d.ts +0 -0
  209. /package/{lib → dist}/index.js +0 -0
  210. /package/{lib → dist}/layouts/AuthContainer.d.ts +0 -0
  211. /package/{lib → dist}/layouts/Container.d.ts +0 -0
  212. /package/{lib → dist}/layouts/GradientContainer.d.ts +0 -0
  213. /package/{lib → dist}/layouts/PlainLayout.d.ts +0 -0
  214. /package/{lib → dist}/layouts/ScrollContainer.d.ts +0 -0
  215. /package/{lib → dist}/notifications/index.d.ts +0 -0
  216. /package/{lib → dist}/notifications/index.js +0 -0
  217. /package/{lib → dist}/primitives/BaseButton.d.ts +0 -0
  218. /package/{lib → dist}/primitives/Box.d.ts +0 -0
  219. /package/{lib → dist}/primitives/Row.d.ts +0 -0
  220. /package/{lib → dist}/primitives/Stack.d.ts +0 -0
  221. /package/{lib → dist}/primitives/index.d.ts +0 -0
  222. /package/{lib → dist}/primitives/index.js +0 -0
  223. /package/{lib/utils/icon.js → dist/providers/index.d.ts} +0 -0
  224. /package/{lib → dist}/theme/active.d.ts +0 -0
  225. /package/{lib → dist}/theme/active.js +0 -0
  226. /package/{lib → dist}/theme/components/ThemedActivityIndicator.d.ts +0 -0
  227. /package/{lib → dist}/theme/components/index.d.ts +0 -0
  228. /package/{lib → dist}/theme/components/index.js +0 -0
  229. /package/{lib → dist}/theme/default.d.ts +0 -0
  230. /package/{lib → dist}/theme/default.js +0 -0
  231. /package/{lib → dist}/theme/theme.d.ts +0 -0
  232. /package/{lib → dist}/theme/theme.js +0 -0
  233. /package/{lib → dist}/theme/tw.d.ts +0 -0
  234. /package/{lib → dist}/theme/tw.js +0 -0
  235. /package/{lib → dist}/theme/types.d.ts +0 -0
  236. /package/{lib → dist}/theme/types.js +0 -0
  237. /package/{lib → dist}/theme/typography.d.ts +0 -0
  238. /package/{lib → dist}/theme/typography.js +0 -0
  239. /package/{lib → dist}/theme/useTheme.d.ts +0 -0
  240. /package/{lib → dist}/theme/useTheme.js +0 -0
  241. /package/{lib → dist}/utils/date.d.ts +0 -0
  242. /package/{lib → dist}/utils/date.js +0 -0
  243. /package/{lib → dist}/utils/icon.d.ts +0 -0
  244. /package/{lib/utils/timezone.js → dist/utils/icon.js} +0 -0
  245. /package/{lib → dist}/utils/monetary.d.ts +0 -0
  246. /package/{lib → dist}/utils/monetary.js +0 -0
  247. /package/{lib → dist}/utils/quantity.d.ts +0 -0
  248. /package/{lib → dist}/utils/quantity.js +0 -0
  249. /package/{lib → dist}/utils/serializer.d.ts +0 -0
  250. /package/{lib → dist}/utils/serializer.js +0 -0
  251. /package/{lib → dist}/utils/timezone.d.ts +0 -0
  252. /package/{lib/views/types/IFormView.js → dist/utils/timezone.js} +0 -0
  253. /package/{lib → dist}/views/FormViewV2.context.d.ts +0 -0
  254. /package/{lib → dist}/views/ListViewV2.context.d.ts +0 -0
  255. /package/{lib → dist}/views/ListViewV2.d.ts +0 -0
  256. /package/{lib → dist}/views/Wizard/Wizard.context.d.ts +0 -0
  257. /package/{lib → dist}/views/Wizard/Wizard.d.ts +0 -0
  258. /package/{lib → dist}/views/Wizard/index.d.ts +0 -0
  259. /package/{lib → dist}/views/Wizard/index.js +0 -0
  260. /package/{lib → dist}/views/types/IFormView.d.ts +0 -0
  261. /package/{lib/views/types/UIItem.js → dist/views/types/IFormView.js} +0 -0
  262. /package/{lib → dist}/views/types/IListView.d.ts +0 -0
  263. /package/{lib → dist}/views/types/IListView.js +0 -0
  264. /package/{lib → dist}/views/types/UIItem.d.ts +0 -0
  265. /package/{lib → dist}/widgets/CircleButton.d.ts +0 -0
  266. /package/{lib → dist}/widgets/GeoPermissionCard.d.ts +0 -0
  267. /package/{lib → dist}/widgets/JSONViewer.d.ts +0 -0
  268. /package/{lib → dist}/widgets/MenuCard.d.ts +0 -0
  269. /package/{lib → dist}/widgets/MenuGrid.d.ts +0 -0
  270. /package/{lib → dist}/widgets/TimeZoneSelector.d.ts +0 -0
  271. /package/{lib → dist}/widgets/TimeZoneSelectorModal.d.ts +0 -0
  272. /package/{lib → dist}/widgets/index.d.ts +0 -0
  273. /package/{lib → dist}/widgets/index.js +0 -0
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # @sincpro/mobile_ui
1
+ # @sincpro/mobile-ui
2
2
 
3
3
  Sincpro Mobile design system: generic, presentational React Native components.
4
4
 
@@ -9,24 +9,49 @@ Sincpro Mobile design system: generic, presentational React Native components.
9
9
  ## Install
10
10
 
11
11
  ```bash
12
- yarn add @sincpro/mobile_ui
12
+ npx expo install @sincpro/mobile-ui
13
13
  ```
14
14
 
15
- Peer dependencies (provided by the host app): react, react-native, nativewind, react-native-reanimated, react-native-svg, react-native-safe-area-context, and the expo modules listed in `package.json`.
15
+ Peer dependencies (provided by the host app): `react`, `react-native`, `nativewind`, `react-native-reanimated`, `react-native-svg`, `react-native-safe-area-context`, `react-native-keyboard-controller`, `react-native-worklets`, `react-hook-form`, `react-native-currency-input`, `@expo/vector-icons`, `@expo-google-fonts/montserrat`, and the expo modules listed in `package.json`.
16
+
17
+ ## Tailwind preset (required)
18
+
19
+ The components use design tokens exposed as Tailwind classes (`bg-primary`, `text-text-secondary`, …) backed by CSS variables. The consumer app wires them via the shipped preset and content globs:
20
+
21
+ ```js
22
+ // tailwind.config.js
23
+ module.exports = {
24
+ presets: [require("@sincpro/mobile-ui/tailwind.preset")],
25
+ content: ["./App.tsx", "./src/**/*.{ts,tsx}", "./node_modules/@sincpro/mobile-ui/**/*.js"],
26
+ theme: { extend: { colors: { brand: "#FF6600" } } },
27
+ };
28
+ ```
29
+
30
+ The token values are CSS variables; override them (a custom theme) in your global CSS `:root`, or inject at runtime with `vars()`. The framework's `createAppShell({ theme })` does this automatically.
16
31
 
17
32
  ## Usage
18
33
 
19
34
  ```tsx
20
- import { Form } from "@sincpro/mobile_ui/Form";
21
- import { Display } from "@sincpro/mobile_ui/Display";
22
- import { theme } from "@sincpro/mobile_ui/theme";
23
- import { formatDate } from "@sincpro/mobile_ui/lib/date";
35
+ import { Form } from "@sincpro/mobile-ui/Form";
36
+ import { Display } from "@sincpro/mobile-ui/Display";
37
+ import { theme } from "@sincpro/mobile-ui/theme";
24
38
  ```
25
39
 
40
+ ## Storybook (on-device, Expo)
41
+
42
+ Visualiza los componentes en simulador/dispositivo con Storybook React Native (dev-only, no se publica):
43
+
44
+ ```bash
45
+ make storybook # expo start (Expo Go / dev build)
46
+ make storybook-android # expo run:android
47
+ ```
48
+
49
+ Las stories viven en `.rnstorybook/stories/**/*.stories.tsx` e importan desde `@sincpro/mobile-ui/*`. El harness (`App.tsx`, `metro.config.js`, `.rnstorybook/`) está excluido del paquete publicado (`files: ["dist", ...]`).
50
+
26
51
  ## Structure
27
52
 
28
53
  - `Form`, `Display`, `Dialog`, `Feedback`, `Typography`, `Navigation`, `primitives` — component categories
29
54
  - `views` — compound views (ListViewV2, FormViewV2, Wizard)
30
55
  - `widgets` — generic composed widgets (HomeHeader, MenuGrid, GeoPermissionCard, TimeZoneSelector)
31
- - `theme` — design tokens + tailwind-variants helpers
32
- - `lib` — generic utilities (date, monetary, quantity, serializer, icon, timezone)
56
+ - `theme` — design tokens + tailwind-variants helpers (`defineTheme`, `extendTheme`, `themeToVars`)
57
+ - `utils` — generic utilities (date, monetary, quantity, serializer, icon, timezone)
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { theme } from "../../theme";
3
3
  import { createContext, useContext, useEffect, useRef } from "react";
4
4
  import { Animated, Dimensions, Modal, PanResponder, Pressable, ScrollView, Text, View, } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "nativewind/jsx-runtime";
2
2
  import { BottomSheet } from "../Dialog/BottomSheet";
3
3
  import ConfirmationDialog from "../Dialog/Dialog.Confirmation";
4
4
  import { BaseButton } from "../primitives/BaseButton";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { BaseButton } from "../primitives/BaseButton";
3
3
  import { theme } from "../theme";
4
4
  import Typography from "../Typography/Typography.Text";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { theme } from "../theme";
3
3
  import { Typography } from "../Typography";
4
4
  import { useEffect, useRef } from "react";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { cn, tv } from "../theme/tw";
3
3
  import { Typography } from "../Typography";
4
4
  import { View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { tv } from "../theme/tw";
3
3
  import { Text, View } from "react-native";
4
4
  const badge = tv({
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { Typography } from "../Typography";
3
3
  import * as Clipboard from "expo-clipboard";
4
4
  import { TouchableOpacity } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { cn } from "../theme/tw";
3
3
  import { Typography } from "../Typography";
4
4
  import { View } from "react-native";
@@ -1,14 +1,13 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { Typography } from "../Typography";
3
- import { formatDate } from "../utils/date";
3
+ import { formatDate, formatDateWithDefaultTimezone } from "../utils/date";
4
4
  function DateField({ value, format = "short", prefix = "", textVariant = "body", color, style = {}, semibold = false, bold = false, className, showTime = true, timezone, }) {
5
5
  const locale = "es-CR";
6
- const formatted = value
7
- ? formatDate(value, timezone, {
8
- showTime,
9
- locale,
10
- })
11
- : "-";
6
+ const formatted = !value
7
+ ? "-"
8
+ : timezone
9
+ ? formatDate(value, timezone, { showTime, locale })
10
+ : formatDateWithDefaultTimezone(value, { showTime, locale });
12
11
  return (_jsx(Typography.Text, { bold: bold, className: className, color: color, semibold: semibold && !bold, style: style, variant: textVariant, children: prefix ? `${prefix}${formatted}` : formatted }));
13
12
  }
14
13
  export default DateField;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { cn, tv } from "../theme/tw";
3
3
  import { View } from "react-native";
4
4
  const divider = tv({
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { AntDesign, Feather, FontAwesome, FontAwesome5, Ionicons, MaterialCommunityIcons, MaterialIcons, SimpleLineIcons, } from "@expo/vector-icons";
3
3
  import { theme } from "../theme";
4
4
  import { View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { tv } from "../theme/tw";
3
3
  import { Image, View } from "react-native";
4
4
  const logo = tv({
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { theme } from "../theme";
3
3
  import { tv } from "../theme/tw";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Typography } from "../Typography";
3
3
  import { formatTwoDecimals } from "../utils/monetary";
4
4
  function MonetaryField({ value, currencySymbol = "₡", prefix = "", color, textVariant = "body", style = {}, symbolColor, semibold = true, bold = false, className, }) {
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import FeedbackError from "../Feedback/Feedback.Error";
3
3
  import { Component } from "react";
4
4
  export class ErrorBoundary extends Component {
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import GradientContainer from "../layouts/GradientContainer";
3
3
  import { Typography } from "../Typography";
4
4
  import { useCallback, useEffect, useState } from "react";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { cn } from "../theme/tw";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import Button from "../Form/Form.Button";
4
4
  import { cn } from "../theme/tw";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import Spinner from "../Feedback/Feedback.Spinner";
3
3
  import { cn } from "../theme/tw";
4
4
  import { View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { cn } from "../theme/tw";
3
3
  import { Typography } from "../Typography";
4
4
  import { ActivityIndicator, View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Loading from "../Feedback/Feedback.Loading";
3
3
  import GradientContainer from "../layouts/GradientContainer";
4
4
  import { useEffect, useRef, useState } from "react";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { useConfirmationContext } from "../Dialog/Confirmation.context";
3
3
  import { Display } from "../Display";
4
4
  import { theme } from "../theme";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { theme } from "../theme";
3
3
  import { cn } from "../theme/tw";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import Checkbox from "../Form/Form.Checkbox";
3
3
  import { Controller } from "react-hook-form";
4
4
  function ControlledCheckbox({ control, name, label, subText, }) {
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import Input from "../Form/Form.Input";
3
3
  import { Controller } from "react-hook-form";
4
4
  function ControlledInput({ control, name, label, placeholder, keyboardType, autoCapitalize, multiline, numberOfLines, rules, error, }) {
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import MonetaryInput from "../Form/Form.MonetaryInput";
3
3
  import { Controller } from "react-hook-form";
4
4
  function ControlledMonetaryInput({ control, name, label, placeholder, currency = "CRC", rules, error, }) {
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import RadioButton from "../Form/Form.RadioButton";
3
3
  import { Controller } from "react-hook-form";
4
4
  function ControlledRadioButton({ control, name, label, value, }) {
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { theme } from "../theme";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { tv } from "../theme/tw";
3
3
  import { Typography } from "../Typography";
4
4
  import { TouchableOpacity, View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Dialog } from "../Dialog";
3
3
  import { Display } from "../Display";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { theme } from "../theme";
4
4
  import { tv } from "../theme/tw";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { theme } from "../theme";
3
3
  import { cn, tv } from "../theme/tw";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import TextInputF from "../Form/Form.TextInput";
3
3
  import { tv } from "../theme/tw";
4
4
  import { Typography } from "../Typography";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { tv } from "../theme/tw";
3
3
  import { Typography } from "../Typography";
4
4
  import { parseToMonetaryNumber } from "../utils/monetary";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Ionicons } from "@expo/vector-icons";
3
3
  import InputField from "../Form/Form.InputField";
4
4
  import { useState } from "react";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { Typography } from "../Typography";
4
4
  import { TouchableOpacity, View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Typography } from "../Typography";
3
3
  import { TouchableOpacity, View } from "react-native";
4
4
  import { tv } from "tailwind-variants";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { theme } from "../theme";
4
4
  import { cn, tv } from "../theme/tw";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { theme } from "../theme";
3
3
  import { cn } from "../theme/tw";
4
4
  import { TextInput } from "react-native";
@@ -0,0 +1,12 @@
1
+ import { ReactNode } from "react";
2
+ import { type ImageSourcePropType } from "react-native";
3
+ export interface HeaderProps {
4
+ title?: string;
5
+ logo?: ReactNode;
6
+ logoSource?: ImageSourcePropType;
7
+ backButton?: boolean;
8
+ handleBackButton?: () => void;
9
+ className?: string;
10
+ }
11
+ declare const Header: ({ title, logo, logoSource, backButton, handleBackButton, className, }: HeaderProps) => import("react/jsx-runtime").JSX.Element;
12
+ export default Header;
@@ -1,12 +1,12 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import GradientContainer from "../layouts/GradientContainer";
4
4
  import { theme } from "../theme";
5
5
  import { cn } from "../theme/tw";
6
6
  import { Typography } from "../Typography";
7
7
  import { TouchableOpacity, View } from "react-native";
8
- const Header = ({ title, logo, backButton, handleBackButton, className }) => {
8
+ const Header = ({ title, logo, logoSource, backButton, handleBackButton, className, }) => {
9
9
  const onBackPress = handleBackButton ?? (() => { });
10
- return (_jsx(GradientContainer, { className: cn("pt-10 pb-3.5 px-4", className), children: _jsxs(View, { className: "relative items-center justify-center", children: [backButton && (_jsx(TouchableOpacity, { className: "absolute top-0 left-0 z-10 border border-white p-1.5 rounded", onPress: onBackPress, children: _jsx(Display.Icon, { color: theme.text.inverse, name: "chevron-back", size: 25, type: "ionicons" }) })), _jsxs(View, { className: "items-center justify-center", children: [logo || _jsx(Display.Logo, { size: "medium" }), title && (_jsx(Typography.Text, { className: "text-white", variant: "h4", children: title }))] })] }) }));
10
+ return (_jsx(GradientContainer, { className: cn("pt-10 pb-3.5 px-4", className), children: _jsxs(View, { className: "relative items-center justify-center", children: [backButton && (_jsx(TouchableOpacity, { className: "absolute top-0 left-0 z-10 border border-white p-1.5 rounded", onPress: onBackPress, children: _jsx(Display.Icon, { color: theme.text.inverse, name: "chevron-back", size: 25, type: "ionicons" }) })), _jsxs(View, { className: "items-center justify-center", children: [logo || _jsx(Display.Logo, { size: "medium", source: logoSource }), title && (_jsx(Typography.Text, { className: "text-white", variant: "h4", children: title }))] })] }) }));
11
11
  };
12
12
  export default Header;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import GradientContainer from "../layouts/GradientContainer";
4
4
  import { theme } from "../theme";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import { cn } from "../theme/tw";
3
3
  import { Typography } from "../Typography";
4
4
  import { TouchableOpacity, View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { cn } from "../theme/tw";
4
4
  import { View } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { Display } from "../Display";
3
3
  import { cn } from "../theme/tw";
4
4
  import { View } from "react-native";
@@ -2,7 +2,7 @@ import HeaderToolbar from "../Navigation/Navigation.HeaderToolbar";
2
2
  import RowItem from "../Navigation/Navigation.RowItem";
3
3
  import TabIcon from "../Navigation/Navigation.TabIcon";
4
4
  export declare const Navigation: {
5
- Header: ({ title, logo, backButton, handleBackButton, className }: import("../Navigation/Navigation.Header").HeaderProps) => import("react/jsx-runtime").JSX.Element;
5
+ Header: ({ title, logo, logoSource, backButton, handleBackButton, className, }: import("../Navigation/Navigation.Header").HeaderProps) => import("react/jsx-runtime").JSX.Element;
6
6
  HeaderToolbar: typeof HeaderToolbar;
7
7
  TabItem: import("react").FC<import("../Navigation/Navigation.TabItem").TabIconProps>;
8
8
  TabIcon: typeof TabIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { AppText } from "../Typography/Typography.Text";
3
3
  const Heading = ({ variant = "h1", ...props }) => {
4
4
  return _jsx(AppText, { variant: variant, ...props });
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import { cn } from "../theme/tw";
3
3
  import { fontFamilies, Typography, } from "../theme/typography";
4
4
  import { Text } from "react-native";
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { ClipPath, Defs, G, Path, Rect } from "react-native-svg";
3
3
  const AddItemIcon = ({ size = 25 }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 25 24", width: size, children: [_jsxs(G, { clipPath: "url(#clip0_9386_14684)", children: [_jsx(Path, { d: "M8.5 16H5.93C3.64 16 2.5 14.86 2.5 12.57V5.43C2.5 3.14 3.64 2 5.93 2H10.5C12.79 2 13.93 3.14 13.93 5.43", stroke: "#047DF9", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }), _jsx(Path, { d: "M19.0703 22H14.5003C12.2103 22 11.0703 20.86 11.0703 18.57V11.43C11.0703 9.14 12.2103 8 14.5003 8H19.0703C21.3603 8 22.5003 9.14 22.5003 11.43V18.57C22.5003 20.86 21.3603 22 19.0703 22Z", stroke: "#047DF9", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }), _jsx(Path, { d: "M15.3701 15H18.6301", stroke: "#047DF9", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }), _jsx(Path, { d: "M17 16.63V13.37", stroke: "#047DF9", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" })] }), _jsx(Defs, { children: _jsx(ClipPath, { id: "clip0_9386_14684", children: _jsx(Rect, { fill: "white", height: "24", transform: "translate(0.5)", width: "24" }) }) })] }));
4
4
  export default AddItemIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const ArrangeCircleIcon = ({ size = 25 }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 24 24", width: size, children: [_jsx(Path, { d: "M17.1494 13.82L14.1094 16.86", stroke: "#232933", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M6.84961 13.82H17.1496", stroke: "#232933", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M6.84961 10.18L9.88962 7.14001", stroke: "#232933", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M17.1496 10.18H6.84961", stroke: "#232933", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z", stroke: "black", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" })] }));
4
4
  export default ArrangeCircleIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  function ArrowDownIcon({ size = 56, color = "#FFFFFF" }) {
4
4
  return (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 56 56", width: size, children: [_jsx(Path, { d: "M28.0003 51.3333C40.887 51.3333 51.3337 40.8866 51.3337 28C51.3337 15.1133 40.887 4.66663 28.0003 4.66663C15.1137 4.66663 4.66699 15.1133 4.66699 28C4.66699 40.8866 15.1137 51.3333 28.0003 51.3333Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M28 19.8334V33.8334", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M21 29.1666L28 36.1666L35 29.1666", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" })] }));
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  function ArrowUpIcon({ size = 56, color = "#FFFFFF" }) {
4
4
  return (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 56 56", width: size, children: [_jsx(Path, { d: "M28.0003 51.3333C40.887 51.3333 51.3337 40.8866 51.3337 28C51.3337 15.1133 40.887 4.66663 28.0003 4.66663C15.1137 4.66663 4.66699 15.1133 4.66699 28C4.66699 40.8866 15.1137 51.3333 28.0003 51.3333Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M28 36.1666V22.1666", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M21 26.8334L28 19.8334L35 26.8334", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" })] }));
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const BoxIcon = ({ size = 56, color = "#ffffff" }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 56 56", width: size, children: [_jsx(Path, { d: "M7.39648 17.36L27.9998 29.2833L48.4632 17.43", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M28 50.4233V29.26", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M23.1705 5.78663L10.7105 12.6933C7.88715 14.2566 5.57715 18.1766 5.57715 21.3966V34.58C5.57715 37.8 7.88715 41.72 10.7105 43.2833L23.1705 50.2133C25.8305 51.6833 30.1938 51.6833 32.8538 50.2133L45.3138 43.2833C48.1371 41.72 50.4472 37.8 50.4472 34.58V21.3966C50.4472 18.1766 48.1371 14.2566 45.3138 12.6933L32.8538 5.7633C30.1705 4.2933 25.8305 4.2933 23.1705 5.78663Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" })] }));
4
4
  export default BoxIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const BoxTimeIcon = ({ size = 24, color = "#374151" }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 22 21", width: size, children: [_jsx(Path, { d: "M16.1005 3.31003L10.4505 0.270029C9.85047 -0.0499707 9.14047 -0.0499707 8.54047 0.270029L2.90047 3.31003C2.49047 3.54003 2.23047 3.98003 2.23047 4.46003C2.23047 4.95003 2.48047 5.39003 2.90047 5.61003L8.55047 8.65003C8.85047 8.81003 9.18047 8.89003 9.50047 8.89003C9.82047 8.89003 10.1605 8.81003 10.4505 8.65003L16.1005 5.61003C16.5105 5.39003 16.7705 4.95003 16.7705 4.46003C16.7705 3.98003 16.5105 3.54003 16.1005 3.31003Z", fill: color }), _jsx(Path, { d: "M7.62 9.71009L2.37 7.09009C1.96 6.88009 1.5 6.91009 1.11 7.14009C0.73 7.38009 0.5 7.79009 0.5 8.24009V13.2001C0.5 14.0601 0.98 14.8301 1.75 15.2201L7 17.8401C7.18 17.9301 7.38 17.9801 7.58 17.9801C7.81 17.9801 8.05 17.9101 8.26 17.7901C8.64 17.5501 8.87 17.1401 8.87 16.6901V11.7301C8.86 10.8701 8.38 10.1001 7.62 9.71009Z", fill: color }), _jsx(Path, { d: "M18.5006 8.24009V10.7001C18.0206 10.5601 17.5106 10.5001 17.0006 10.5001C15.6406 10.5001 14.3106 10.9701 13.2606 11.8101C11.8206 12.9401 11.0006 14.6501 11.0006 16.5001C11.0006 16.9901 11.0606 17.4801 11.1906 17.9501C11.0406 17.9301 10.8906 17.8701 10.7506 17.7801C10.3706 17.5501 10.1406 17.1401 10.1406 16.6901V11.7301C10.1406 10.8701 10.6206 10.1001 11.3806 9.71009L16.6306 7.09009C17.0406 6.88009 17.5006 6.91009 17.8906 7.14009C18.2706 7.38009 18.5006 7.79009 18.5006 8.24009Z", fill: color }), _jsx(Path, { d: "M20.48 13.65C19.66 12.64 18.41 12 17 12C15.94 12 14.96 12.37 14.19 12.99C13.15 13.81 12.5 15.08 12.5 16.5C12.5 17.91 13.14 19.16 14.15 19.98C14.92 20.62 15.92 21 17 21C18.14 21 19.17 20.57 19.97 19.88C20.9 19.05 21.5 17.85 21.5 16.5C21.5 15.42 21.12 14.42 20.48 13.65ZM18.03 16.78C18.03 17.04 17.89 17.29 17.67 17.42L16.26 18.26C16.14 18.33 16.01 18.37 15.87 18.37C15.62 18.37 15.37 18.24 15.23 18.01C15.02 17.65 15.13 17.19 15.49 16.98L16.53 16.36V15.1C16.53 14.69 16.87 14.35 17.28 14.35C17.69 14.35 18.03 14.69 18.03 15.1V16.78Z", fill: color })] }));
4
4
  export default BoxTimeIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const CalendarIcon = ({ size = 24, color = "#0075FF" }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 24 24", width: size, children: [_jsx(Path, { d: "M8 2V5", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M16 2V5", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M3.5 9.08997H20.5", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M21 8.5V17C21 20 19.5 22 16 22H8C4.5 22 3 20 3 17V8.5C3 5.5 4.5 3.5 8 3.5H16C19.5 3.5 21 5.5 21 8.5Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "1.5" }), _jsx(Path, { d: "M15.6947 13.7H15.7037", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M15.6947 16.7H15.7037", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M11.9955 13.7H12.0045", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M11.9955 16.7H12.0045", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M8.29431 13.7H8.30329", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M8.29431 16.7H8.30329", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" })] }));
4
4
  export default CalendarIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const CardIcon = ({ size = 56, color = "#FFFFFF" }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 56 56", width: size, children: [_jsx(Path, { d: "M4.66699 19.8448H51.3337", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "3" }), _jsx(Path, { d: "M14 38.5116H18.6667", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "3" }), _jsx(Path, { d: "M24.5 38.5116H33.8333", stroke: color, "stroke-width": "3", strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "3" }), _jsx(Path, { d: "M15.027 8.17822H40.9503C49.257 8.17822 51.3337 10.2316 51.3337 18.4216V37.5782C51.3337 45.7682 49.257 47.8216 40.9737 47.8216H15.027C6.74366 47.8449 4.66699 45.7916 4.66699 37.6016V18.4216C4.66699 10.2316 6.74366 8.17822 15.027 8.17822Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeMiterlimit: "10", strokeWidth: "3" })] }));
4
4
  export default CardIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const CashierIcon = ({ size = 24, color = "#374151" }) => (_jsx(Svg, { fill: "none", height: size, viewBox: "0 0 25 24", width: size, children: _jsx(Path, { d: "M16.69 2H8.31C4.67 2 2.5 4.17 2.5 7.81V16.18C2.5 19.83 4.67 22 8.31 22H16.68C20.32 22 22.49 19.83 22.49 16.19V7.81C22.5 4.17 20.33 2 16.69 2ZM8.13 18.15C8.13 18.56 7.79 18.9 7.38 18.9C6.97 18.9 6.63 18.56 6.63 18.15V16.08C6.63 15.67 6.97 15.33 7.38 15.33C7.79 15.33 8.13 15.67 8.13 16.08V18.15ZM13.25 18.15C13.25 18.56 12.91 18.9 12.5 18.9C12.09 18.9 11.75 18.56 11.75 18.15V14C11.75 13.59 12.09 13.25 12.5 13.25C12.91 13.25 13.25 13.59 13.25 14V18.15ZM18.37 18.15C18.37 18.56 18.03 18.9 17.62 18.9C17.21 18.9 16.87 18.56 16.87 18.15V11.93C16.87 11.52 17.21 11.18 17.62 11.18C18.03 11.18 18.37 11.52 18.37 11.93V18.15ZM18.37 8.77C18.37 9.18 18.03 9.52 17.62 9.52C17.21 9.52 16.87 9.18 16.87 8.77V7.8C14.32 10.42 11.13 12.27 7.56 13.16C7.5 13.18 7.44 13.18 7.38 13.18C7.04 13.18 6.74 12.95 6.65 12.61C6.55 12.21 6.79 11.8 7.2 11.7C10.57 10.86 13.57 9.09 15.95 6.59H14.7C14.29 6.59 13.95 6.25 13.95 5.84C13.95 5.43 14.29 5.09 14.7 5.09H17.63C17.67 5.09 17.7 5.11 17.74 5.11C17.79 5.12 17.84 5.12 17.89 5.14C17.94 5.16 17.98 5.19 18.03 5.22C18.06 5.24 18.09 5.25 18.12 5.27C18.13 5.28 18.13 5.29 18.14 5.29C18.18 5.33 18.21 5.37 18.24 5.41C18.27 5.45 18.3 5.48 18.31 5.52C18.33 5.56 18.33 5.6 18.34 5.65C18.35 5.7 18.37 5.75 18.37 5.81C18.37 5.82 18.38 5.83 18.38 5.84V8.77H18.37Z", fill: color }) }));
4
4
  export default CashierIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  function CreditIcon({ width = 24, height = 24, color = "#000000" }) {
4
4
  return (_jsxs(Svg, { fill: "none", height: height, viewBox: "0 0 24 24", width: width, children: [_jsx(Path, { d: "M21 5H3C2.44772 5 2 5.44772 2 6V18C2 18.5523 2.44772 19 3 19H21C21.5523 19 22 18.5523 22 18V6C22 5.44772 21.5523 5 21 5Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M2 9H22", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M6 15H8", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" }), _jsx(Path, { d: "M10 15H14", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "2" })] }));
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const DuoIcon = ({ size = 56, color = "#FFFFFF" }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 56 56", width: size, children: [_jsx(Path, { d: "M21.373 25.3633C21.1396 25.34 20.8596 25.34 20.603 25.3633C15.0496 25.1766 10.6396 20.6266 10.6396 15.0266C10.6396 9.30996 15.2596 4.66663 20.9996 4.66663C26.7163 4.66663 31.3596 9.30996 31.3596 15.0266C31.3363 20.6266 26.9263 25.1766 21.373 25.3633Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M38.2897 9.33337C42.8163 9.33337 46.4563 12.9967 46.4563 17.5C46.4563 21.91 42.9563 25.5034 38.593 25.6667C38.4063 25.6434 38.1963 25.6434 37.9863 25.6667", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M9.70668 33.9734C4.06001 37.7534 4.06001 43.9134 9.70668 47.67C16.1233 51.9634 26.6467 51.9634 33.0633 47.67C38.71 43.89 38.71 37.73 33.0633 33.9734C26.67 29.7034 16.1467 29.7034 9.70668 33.9734Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" }), _jsx(Path, { d: "M42.793 46.6666C44.473 46.3166 46.0596 45.64 47.3663 44.6366C51.0063 41.9066 51.0063 37.4033 47.3663 34.6733C46.083 33.6933 44.5196 33.04 42.863 32.6666", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "3" })] }));
4
4
  export default DuoIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
1
+ import { jsx as _jsx } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const HomeIcon = ({ size = 56, color = "#0075FF" }) => (_jsx(Svg, { fill: "none", height: size, viewBox: "0 0 24 24", width: size, children: _jsx(Path, { d: "M20.0383 6.81994L14.2783 2.78994C12.7083 1.68994 10.2983 1.74994 8.78828 2.91994L3.77828 6.82994C2.77828 7.60994 1.98828 9.20994 1.98828 10.4699V17.3699C1.98828 19.9199 4.05828 21.9999 6.60828 21.9999H17.3883C19.9383 21.9999 22.0083 19.9299 22.0083 17.3799V10.5999C22.0083 9.24994 21.1383 7.58994 20.0383 6.81994ZM12.7483 17.9999C12.7483 18.4099 12.4083 18.7499 11.9983 18.7499C11.5883 18.7499 11.2483 18.4099 11.2483 17.9999V14.9999C11.2483 14.5899 11.5883 14.2499 11.9983 14.2499C12.4083 14.2499 12.7483 14.5899 12.7483 14.9999V17.9999Z", fill: color }) }));
4
4
  export default HomeIcon;
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
+ import { jsx as _jsx, jsxs as _jsxs } from "nativewind/jsx-runtime";
2
2
  import Svg, { Path } from "react-native-svg";
3
3
  const HomeIconOutlined = ({ size = 24, color = "#374151" }) => (_jsxs(Svg, { fill: "none", height: size, viewBox: "0 0 24 24", width: size, children: [_jsx(Path, { d: "M9.02 2.83992L3.63 7.03992C2.73 7.73992 2 9.22992 2 10.3599V17.7699C2 20.0899 3.89 21.9899 6.21 21.9899H17.79C20.11 21.9899 22 20.0899 22 17.7799V10.4999C22 9.28992 21.19 7.73992 20.2 7.04992L14.02 2.71992C12.62 1.73992 10.37 1.78992 9.02 2.83992Z", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }), _jsx(Path, { d: "M12 17.99V14.99", stroke: color, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" })] }));
4
4
  export default HomeIconOutlined;