@oxyhq/services 5.4.2 → 5.4.4

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 (418) hide show
  1. package/README.md +14 -0
  2. package/lib/commonjs/assets/OxyLogo.svg +1 -0
  3. package/lib/commonjs/assets/assets/OxyLogo.svg +1 -0
  4. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  5. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  6. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  7. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  8. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  9. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  10. package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  11. package/lib/commonjs/assets/assets/icons/OxyServices.tsx +67 -0
  12. package/lib/commonjs/assets/assets/icons/logo_OxyServices.svg +1 -0
  13. package/lib/commonjs/assets/assets/illustrations/HighFive.tsx +41 -0
  14. package/lib/commonjs/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  15. package/lib/commonjs/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  16. package/lib/commonjs/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  17. package/lib/commonjs/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  18. package/lib/commonjs/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  19. package/lib/commonjs/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  20. package/lib/commonjs/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  21. package/lib/commonjs/assets/icons/OxyServices.js +53 -0
  22. package/lib/commonjs/assets/icons/OxyServices.js.map +1 -0
  23. package/lib/commonjs/assets/icons/logo_OxyServices.svg +1 -0
  24. package/lib/commonjs/assets/illustrations/HighFive.js +61 -0
  25. package/lib/commonjs/assets/illustrations/HighFive.js.map +1 -0
  26. package/lib/commonjs/constants/version.js +28 -0
  27. package/lib/commonjs/constants/version.js.map +1 -0
  28. package/lib/commonjs/core/index.js +1660 -0
  29. package/lib/commonjs/core/index.js.map +1 -0
  30. package/lib/commonjs/index.js +160 -0
  31. package/lib/commonjs/index.js.map +1 -0
  32. package/lib/commonjs/lib/sonner.js +21 -0
  33. package/lib/commonjs/lib/sonner.js.map +1 -0
  34. package/lib/commonjs/models/interfaces.js +2 -0
  35. package/lib/commonjs/models/interfaces.js.map +1 -0
  36. package/lib/commonjs/models/secureSession.js +2 -0
  37. package/lib/commonjs/models/secureSession.js.map +1 -0
  38. package/lib/commonjs/node/createAuth.js +95 -0
  39. package/lib/commonjs/node/createAuth.js.map +1 -0
  40. package/lib/commonjs/node/index.js +63 -0
  41. package/lib/commonjs/node/index.js.map +1 -0
  42. package/lib/commonjs/package.json +1 -0
  43. package/lib/commonjs/ui/components/Avatar.js +98 -0
  44. package/lib/commonjs/ui/components/Avatar.js.map +1 -0
  45. package/lib/commonjs/ui/components/FollowButton.js +246 -0
  46. package/lib/commonjs/ui/components/FollowButton.js.map +1 -0
  47. package/lib/commonjs/ui/components/FontLoader.js +181 -0
  48. package/lib/commonjs/ui/components/FontLoader.js.map +1 -0
  49. package/lib/commonjs/ui/components/GroupedItem.js +109 -0
  50. package/lib/commonjs/ui/components/GroupedItem.js.map +1 -0
  51. package/lib/commonjs/ui/components/GroupedSection.js +33 -0
  52. package/lib/commonjs/ui/components/GroupedSection.js.map +1 -0
  53. package/lib/commonjs/ui/components/OxyLogo.js +56 -0
  54. package/lib/commonjs/ui/components/OxyLogo.js.map +1 -0
  55. package/lib/commonjs/ui/components/OxyProvider.js +522 -0
  56. package/lib/commonjs/ui/components/OxyProvider.js.map +1 -0
  57. package/lib/commonjs/ui/components/OxySignInButton.js +178 -0
  58. package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -0
  59. package/lib/commonjs/ui/components/ProfileCard.js +124 -0
  60. package/lib/commonjs/ui/components/ProfileCard.js.map +1 -0
  61. package/lib/commonjs/ui/components/QuickActions.js +87 -0
  62. package/lib/commonjs/ui/components/QuickActions.js.map +1 -0
  63. package/lib/commonjs/ui/components/Section.js +36 -0
  64. package/lib/commonjs/ui/components/Section.js.map +1 -0
  65. package/lib/commonjs/ui/components/SectionTitle.js +35 -0
  66. package/lib/commonjs/ui/components/SectionTitle.js.map +1 -0
  67. package/lib/commonjs/ui/components/bottomSheet/index.js +37 -0
  68. package/lib/commonjs/ui/components/bottomSheet/index.js.map +1 -0
  69. package/lib/commonjs/ui/components/icon/OxyIcon.js +27 -0
  70. package/lib/commonjs/ui/components/icon/OxyIcon.js.map +1 -0
  71. package/lib/commonjs/ui/components/icon/index.js +14 -0
  72. package/lib/commonjs/ui/components/icon/index.js.map +1 -0
  73. package/lib/commonjs/ui/components/index.js +97 -0
  74. package/lib/commonjs/ui/components/index.js.map +1 -0
  75. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js +213 -0
  76. package/lib/commonjs/ui/components/internal/GroupedPillButtons.js.map +1 -0
  77. package/lib/commonjs/ui/components/internal/TextField.js +576 -0
  78. package/lib/commonjs/ui/components/internal/TextField.js.map +1 -0
  79. package/lib/commonjs/ui/context/OxyContext.js +584 -0
  80. package/lib/commonjs/ui/context/OxyContext.js.map +1 -0
  81. package/lib/commonjs/ui/index.js +136 -0
  82. package/lib/commonjs/ui/index.js.map +1 -0
  83. package/lib/commonjs/ui/navigation/OxyRouter.js +269 -0
  84. package/lib/commonjs/ui/navigation/OxyRouter.js.map +1 -0
  85. package/lib/commonjs/ui/navigation/types.js +6 -0
  86. package/lib/commonjs/ui/navigation/types.js.map +1 -0
  87. package/lib/commonjs/ui/screens/AccountCenterScreen.js +313 -0
  88. package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -0
  89. package/lib/commonjs/ui/screens/AccountManagementDemo.js +299 -0
  90. package/lib/commonjs/ui/screens/AccountManagementDemo.js.map +1 -0
  91. package/lib/commonjs/ui/screens/AccountOverviewScreen.js +855 -0
  92. package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -0
  93. package/lib/commonjs/ui/screens/AccountSettingsScreen.js +843 -0
  94. package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -0
  95. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +788 -0
  96. package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -0
  97. package/lib/commonjs/ui/screens/AppInfoScreen.js +664 -0
  98. package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -0
  99. package/lib/commonjs/ui/screens/BillingManagementScreen.js +636 -0
  100. package/lib/commonjs/ui/screens/BillingManagementScreen.js.map +1 -0
  101. package/lib/commonjs/ui/screens/FeedbackScreen.js +1169 -0
  102. package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -0
  103. package/lib/commonjs/ui/screens/FileManagementScreen.js +2515 -0
  104. package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -0
  105. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +1620 -0
  106. package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -0
  107. package/lib/commonjs/ui/screens/ProfileScreen.js +450 -0
  108. package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -0
  109. package/lib/commonjs/ui/screens/SessionManagementScreen.js +449 -0
  110. package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -0
  111. package/lib/commonjs/ui/screens/SignInScreen.js +882 -0
  112. package/lib/commonjs/ui/screens/SignInScreen.js.map +1 -0
  113. package/lib/commonjs/ui/screens/SignUpScreen.js +1036 -0
  114. package/lib/commonjs/ui/screens/SignUpScreen.js.map +1 -0
  115. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js +88 -0
  116. package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js.map +1 -0
  117. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +364 -0
  118. package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -0
  119. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +227 -0
  120. package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +1 -0
  121. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +148 -0
  122. package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -0
  123. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js +127 -0
  124. package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js.map +1 -0
  125. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +105 -0
  126. package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +1 -0
  127. package/lib/commonjs/ui/store/index.js +52 -0
  128. package/lib/commonjs/ui/store/index.js.map +1 -0
  129. package/lib/commonjs/ui/styles/FONTS.md +126 -0
  130. package/lib/commonjs/ui/styles/fonts.js +84 -0
  131. package/lib/commonjs/ui/styles/fonts.js.map +1 -0
  132. package/lib/commonjs/ui/styles/index.js +28 -0
  133. package/lib/commonjs/ui/styles/index.js.map +1 -0
  134. package/lib/commonjs/ui/styles/theme.js +121 -0
  135. package/lib/commonjs/ui/styles/theme.js.map +1 -0
  136. package/lib/commonjs/utils/deviceManager.js +173 -0
  137. package/lib/commonjs/utils/deviceManager.js.map +1 -0
  138. package/lib/commonjs/utils/index.js +13 -0
  139. package/lib/commonjs/utils/index.js.map +1 -0
  140. package/lib/commonjs/utils/polyfills.js +42 -0
  141. package/lib/commonjs/utils/polyfills.js.map +1 -0
  142. package/lib/module/assets/OxyLogo.svg +1 -0
  143. package/lib/module/assets/assets/OxyLogo.svg +1 -0
  144. package/lib/module/assets/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  145. package/lib/module/assets/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  146. package/lib/module/assets/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  147. package/lib/module/assets/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  148. package/lib/module/assets/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  149. package/lib/module/assets/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  150. package/lib/module/assets/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  151. package/lib/module/assets/assets/icons/OxyServices.tsx +67 -0
  152. package/lib/module/assets/assets/icons/logo_OxyServices.svg +1 -0
  153. package/lib/module/assets/assets/illustrations/HighFive.tsx +41 -0
  154. package/lib/module/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
  155. package/lib/module/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
  156. package/lib/module/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
  157. package/lib/module/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
  158. package/lib/module/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
  159. package/lib/module/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
  160. package/lib/module/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
  161. package/lib/module/assets/icons/OxyServices.js +46 -0
  162. package/lib/module/assets/icons/OxyServices.js.map +1 -0
  163. package/lib/module/assets/icons/logo_OxyServices.svg +1 -0
  164. package/lib/module/assets/illustrations/HighFive.js +55 -0
  165. package/lib/module/assets/illustrations/HighFive.js.map +1 -0
  166. package/lib/module/constants/version.js +21 -0
  167. package/lib/module/constants/version.js.map +1 -0
  168. package/lib/module/core/index.js +1634 -0
  169. package/lib/module/core/index.js.map +1 -0
  170. package/lib/module/index.js +48 -0
  171. package/lib/module/index.js.map +1 -0
  172. package/lib/module/lib/sonner.js +16 -0
  173. package/lib/module/lib/sonner.js.map +1 -0
  174. package/lib/module/models/interfaces.js +2 -0
  175. package/lib/module/models/interfaces.js.map +1 -0
  176. package/lib/module/models/secureSession.js +2 -0
  177. package/lib/module/models/secureSession.js.map +1 -0
  178. package/lib/module/node/createAuth.js +90 -0
  179. package/lib/module/node/createAuth.js.map +1 -0
  180. package/lib/module/node/index.js +27 -0
  181. package/lib/module/node/index.js.map +1 -0
  182. package/lib/module/package.json +1 -0
  183. package/lib/module/ui/components/Avatar.js +93 -0
  184. package/lib/module/ui/components/Avatar.js.map +1 -0
  185. package/lib/module/ui/components/FollowButton.js +241 -0
  186. package/lib/module/ui/components/FollowButton.js.map +1 -0
  187. package/lib/module/ui/components/FontLoader.js +176 -0
  188. package/lib/module/ui/components/FontLoader.js.map +1 -0
  189. package/lib/module/ui/components/GroupedItem.js +104 -0
  190. package/lib/module/ui/components/GroupedItem.js.map +1 -0
  191. package/lib/module/ui/components/GroupedSection.js +28 -0
  192. package/lib/module/ui/components/GroupedSection.js.map +1 -0
  193. package/lib/module/ui/components/OxyLogo.js +49 -0
  194. package/lib/module/ui/components/OxyLogo.js.map +1 -0
  195. package/lib/module/ui/components/OxyProvider.js +516 -0
  196. package/lib/module/ui/components/OxyProvider.js.map +1 -0
  197. package/lib/module/ui/components/OxySignInButton.js +172 -0
  198. package/lib/module/ui/components/OxySignInButton.js.map +1 -0
  199. package/lib/module/ui/components/ProfileCard.js +119 -0
  200. package/lib/module/ui/components/ProfileCard.js.map +1 -0
  201. package/lib/module/ui/components/QuickActions.js +82 -0
  202. package/lib/module/ui/components/QuickActions.js.map +1 -0
  203. package/lib/module/ui/components/Section.js +31 -0
  204. package/lib/module/ui/components/Section.js.map +1 -0
  205. package/lib/module/ui/components/SectionTitle.js +30 -0
  206. package/lib/module/ui/components/SectionTitle.js.map +1 -0
  207. package/lib/module/ui/components/bottomSheet/index.js +5 -0
  208. package/lib/module/ui/components/bottomSheet/index.js.map +1 -0
  209. package/lib/module/ui/components/icon/OxyIcon.js +22 -0
  210. package/lib/module/ui/components/icon/OxyIcon.js.map +1 -0
  211. package/lib/module/ui/components/icon/index.js +4 -0
  212. package/lib/module/ui/components/icon/index.js.map +1 -0
  213. package/lib/module/ui/components/index.js +18 -0
  214. package/lib/module/ui/components/index.js.map +1 -0
  215. package/lib/module/ui/components/internal/GroupedPillButtons.js +208 -0
  216. package/lib/module/ui/components/internal/GroupedPillButtons.js.map +1 -0
  217. package/lib/module/ui/components/internal/TextField.js +571 -0
  218. package/lib/module/ui/components/internal/TextField.js.map +1 -0
  219. package/lib/module/ui/context/OxyContext.js +579 -0
  220. package/lib/module/ui/context/OxyContext.js.map +1 -0
  221. package/lib/module/ui/index.js +26 -0
  222. package/lib/module/ui/index.js.map +1 -0
  223. package/lib/module/ui/navigation/OxyRouter.js +262 -0
  224. package/lib/module/ui/navigation/OxyRouter.js.map +1 -0
  225. package/lib/module/ui/navigation/types.js +4 -0
  226. package/lib/module/ui/navigation/types.js.map +1 -0
  227. package/lib/module/ui/screens/AccountCenterScreen.js +308 -0
  228. package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -0
  229. package/lib/module/ui/screens/AccountManagementDemo.js +296 -0
  230. package/lib/module/ui/screens/AccountManagementDemo.js.map +1 -0
  231. package/lib/module/ui/screens/AccountOverviewScreen.js +849 -0
  232. package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -0
  233. package/lib/module/ui/screens/AccountSettingsScreen.js +837 -0
  234. package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -0
  235. package/lib/module/ui/screens/AccountSwitcherScreen.js +782 -0
  236. package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -0
  237. package/lib/module/ui/screens/AppInfoScreen.js +658 -0
  238. package/lib/module/ui/screens/AppInfoScreen.js.map +1 -0
  239. package/lib/module/ui/screens/BillingManagementScreen.js +631 -0
  240. package/lib/module/ui/screens/BillingManagementScreen.js.map +1 -0
  241. package/lib/module/ui/screens/FeedbackScreen.js +1164 -0
  242. package/lib/module/ui/screens/FeedbackScreen.js.map +1 -0
  243. package/lib/module/ui/screens/FileManagementScreen.js +2510 -0
  244. package/lib/module/ui/screens/FileManagementScreen.js.map +1 -0
  245. package/lib/module/ui/screens/PremiumSubscriptionScreen.js +1615 -0
  246. package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -0
  247. package/lib/module/ui/screens/ProfileScreen.js +444 -0
  248. package/lib/module/ui/screens/ProfileScreen.js.map +1 -0
  249. package/lib/module/ui/screens/SessionManagementScreen.js +444 -0
  250. package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -0
  251. package/lib/module/ui/screens/SignInScreen.js +876 -0
  252. package/lib/module/ui/screens/SignInScreen.js.map +1 -0
  253. package/lib/module/ui/screens/SignUpScreen.js +1030 -0
  254. package/lib/module/ui/screens/SignUpScreen.js.map +1 -0
  255. package/lib/module/ui/screens/karma/KarmaAboutScreen.js +83 -0
  256. package/lib/module/ui/screens/karma/KarmaAboutScreen.js.map +1 -0
  257. package/lib/module/ui/screens/karma/KarmaCenterScreen.js +358 -0
  258. package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -0
  259. package/lib/module/ui/screens/karma/KarmaFAQScreen.js +222 -0
  260. package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +1 -0
  261. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +142 -0
  262. package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -0
  263. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js +122 -0
  264. package/lib/module/ui/screens/karma/KarmaRewardsScreen.js.map +1 -0
  265. package/lib/module/ui/screens/karma/KarmaRulesScreen.js +100 -0
  266. package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -0
  267. package/lib/module/ui/store/index.js +44 -0
  268. package/lib/module/ui/store/index.js.map +1 -0
  269. package/lib/module/ui/styles/FONTS.md +126 -0
  270. package/lib/module/ui/styles/fonts.js +81 -0
  271. package/lib/module/ui/styles/fonts.js.map +1 -0
  272. package/lib/module/ui/styles/index.js +5 -0
  273. package/lib/module/ui/styles/index.js.map +1 -0
  274. package/lib/module/ui/styles/theme.js +114 -0
  275. package/lib/module/ui/styles/theme.js.map +1 -0
  276. package/lib/module/utils/deviceManager.js +167 -0
  277. package/lib/module/utils/deviceManager.js.map +1 -0
  278. package/lib/module/utils/index.js +4 -0
  279. package/lib/module/utils/index.js.map +1 -0
  280. package/lib/module/utils/polyfills.js +36 -0
  281. package/lib/module/utils/polyfills.js.map +1 -0
  282. package/lib/typescript/assets/icons/OxyServices.d.ts +29 -0
  283. package/lib/typescript/assets/icons/OxyServices.d.ts.map +1 -0
  284. package/lib/typescript/assets/illustrations/HighFive.d.ts +9 -0
  285. package/lib/typescript/assets/illustrations/HighFive.d.ts.map +1 -0
  286. package/lib/typescript/constants/version.d.ts +14 -0
  287. package/lib/typescript/constants/version.d.ts.map +1 -0
  288. package/lib/typescript/core/index.d.ts +603 -0
  289. package/lib/typescript/core/index.d.ts.map +1 -0
  290. package/lib/typescript/index.d.ts +20 -0
  291. package/lib/typescript/index.d.ts.map +1 -0
  292. package/lib/typescript/lib/sonner.d.ts +6 -0
  293. package/lib/typescript/lib/sonner.d.ts.map +1 -0
  294. package/lib/typescript/models/interfaces.d.ts +179 -0
  295. package/lib/typescript/models/interfaces.d.ts.map +1 -0
  296. package/lib/typescript/models/secureSession.d.ts +27 -0
  297. package/lib/typescript/models/secureSession.d.ts.map +1 -0
  298. package/lib/typescript/node/createAuth.d.ts +7 -0
  299. package/lib/typescript/node/createAuth.d.ts.map +1 -0
  300. package/lib/typescript/node/index.d.ts +13 -0
  301. package/lib/typescript/node/index.d.ts.map +1 -0
  302. package/lib/typescript/types/expo-vector-icons.d.ts +3 -0
  303. package/lib/typescript/types/express.d.ts +5 -0
  304. package/lib/typescript/types/react-redux.d.ts +5 -0
  305. package/lib/typescript/ui/components/Avatar.d.ts +62 -0
  306. package/lib/typescript/ui/components/Avatar.d.ts.map +1 -0
  307. package/lib/typescript/ui/components/FollowButton.d.ts +92 -0
  308. package/lib/typescript/ui/components/FollowButton.d.ts.map +1 -0
  309. package/lib/typescript/ui/components/FontLoader.d.ts +15 -0
  310. package/lib/typescript/ui/components/FontLoader.d.ts.map +1 -0
  311. package/lib/typescript/ui/components/GroupedItem.d.ts +17 -0
  312. package/lib/typescript/ui/components/GroupedItem.d.ts.map +1 -0
  313. package/lib/typescript/ui/components/GroupedSection.d.ts +19 -0
  314. package/lib/typescript/ui/components/GroupedSection.d.ts.map +1 -0
  315. package/lib/typescript/ui/components/OxyLogo.d.ts +29 -0
  316. package/lib/typescript/ui/components/OxyLogo.d.ts.map +1 -0
  317. package/lib/typescript/ui/components/OxyProvider.d.ts +12 -0
  318. package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -0
  319. package/lib/typescript/ui/components/OxySignInButton.d.ts +70 -0
  320. package/lib/typescript/ui/components/OxySignInButton.d.ts.map +1 -0
  321. package/lib/typescript/ui/components/ProfileCard.d.ts +20 -0
  322. package/lib/typescript/ui/components/ProfileCard.d.ts.map +1 -0
  323. package/lib/typescript/ui/components/QuickActions.d.ts +15 -0
  324. package/lib/typescript/ui/components/QuickActions.d.ts.map +1 -0
  325. package/lib/typescript/ui/components/Section.d.ts +11 -0
  326. package/lib/typescript/ui/components/Section.d.ts.map +1 -0
  327. package/lib/typescript/ui/components/SectionTitle.d.ts +9 -0
  328. package/lib/typescript/ui/components/SectionTitle.d.ts.map +1 -0
  329. package/lib/typescript/ui/components/bottomSheet/index.d.ts +4 -0
  330. package/lib/typescript/ui/components/bottomSheet/index.d.ts.map +1 -0
  331. package/lib/typescript/ui/components/icon/OxyIcon.d.ts +10 -0
  332. package/lib/typescript/ui/components/icon/OxyIcon.d.ts.map +1 -0
  333. package/lib/typescript/ui/components/icon/index.d.ts +3 -0
  334. package/lib/typescript/ui/components/icon/index.d.ts.map +1 -0
  335. package/lib/typescript/ui/components/index.d.ts +13 -0
  336. package/lib/typescript/ui/components/index.d.ts.map +1 -0
  337. package/lib/typescript/ui/components/internal/GroupedPillButtons.d.ts +18 -0
  338. package/lib/typescript/ui/components/internal/GroupedPillButtons.d.ts.map +1 -0
  339. package/lib/typescript/ui/components/internal/TextField.d.ts +25 -0
  340. package/lib/typescript/ui/components/internal/TextField.d.ts.map +1 -0
  341. package/lib/typescript/ui/context/OxyContext.d.ts +42 -0
  342. package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -0
  343. package/lib/typescript/ui/index.d.ts +17 -0
  344. package/lib/typescript/ui/index.d.ts.map +1 -0
  345. package/lib/typescript/ui/navigation/OxyRouter.d.ts +5 -0
  346. package/lib/typescript/ui/navigation/OxyRouter.d.ts.map +1 -0
  347. package/lib/typescript/ui/navigation/types.d.ts +116 -0
  348. package/lib/typescript/ui/navigation/types.d.ts.map +1 -0
  349. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts +5 -0
  350. package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +1 -0
  351. package/lib/typescript/ui/screens/AccountManagementDemo.d.ts +8 -0
  352. package/lib/typescript/ui/screens/AccountManagementDemo.d.ts.map +1 -0
  353. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts +5 -0
  354. package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts.map +1 -0
  355. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts +5 -0
  356. package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -0
  357. package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts +5 -0
  358. package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts.map +1 -0
  359. package/lib/typescript/ui/screens/AppInfoScreen.d.ts +5 -0
  360. package/lib/typescript/ui/screens/AppInfoScreen.d.ts.map +1 -0
  361. package/lib/typescript/ui/screens/BillingManagementScreen.d.ts +5 -0
  362. package/lib/typescript/ui/screens/BillingManagementScreen.d.ts.map +1 -0
  363. package/lib/typescript/ui/screens/FeedbackScreen.d.ts +5 -0
  364. package/lib/typescript/ui/screens/FeedbackScreen.d.ts.map +1 -0
  365. package/lib/typescript/ui/screens/FileManagementScreen.d.ts +8 -0
  366. package/lib/typescript/ui/screens/FileManagementScreen.d.ts.map +1 -0
  367. package/lib/typescript/ui/screens/PremiumSubscriptionScreen.d.ts +5 -0
  368. package/lib/typescript/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -0
  369. package/lib/typescript/ui/screens/ProfileScreen.d.ts +9 -0
  370. package/lib/typescript/ui/screens/ProfileScreen.d.ts.map +1 -0
  371. package/lib/typescript/ui/screens/SessionManagementScreen.d.ts +5 -0
  372. package/lib/typescript/ui/screens/SessionManagementScreen.d.ts.map +1 -0
  373. package/lib/typescript/ui/screens/SignInScreen.d.ts +5 -0
  374. package/lib/typescript/ui/screens/SignInScreen.d.ts.map +1 -0
  375. package/lib/typescript/ui/screens/SignUpScreen.d.ts +5 -0
  376. package/lib/typescript/ui/screens/SignUpScreen.d.ts.map +1 -0
  377. package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts +5 -0
  378. package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -0
  379. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts +5 -0
  380. package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -0
  381. package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts +5 -0
  382. package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -0
  383. package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts +5 -0
  384. package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -0
  385. package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts +5 -0
  386. package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -0
  387. package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts +5 -0
  388. package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -0
  389. package/lib/typescript/ui/store/index.d.ts +19 -0
  390. package/lib/typescript/ui/store/index.d.ts.map +1 -0
  391. package/lib/typescript/ui/styles/fonts.d.ts +21 -0
  392. package/lib/typescript/ui/styles/fonts.d.ts.map +1 -0
  393. package/lib/typescript/ui/styles/index.d.ts +3 -0
  394. package/lib/typescript/ui/styles/index.d.ts.map +1 -0
  395. package/lib/typescript/ui/styles/theme.d.ts +68 -0
  396. package/lib/typescript/ui/styles/theme.d.ts.map +1 -0
  397. package/lib/typescript/utils/deviceManager.d.ts +66 -0
  398. package/lib/typescript/utils/deviceManager.d.ts.map +1 -0
  399. package/lib/typescript/utils/index.d.ts +3 -0
  400. package/lib/typescript/utils/index.d.ts.map +1 -0
  401. package/lib/typescript/utils/polyfills.d.ts +6 -0
  402. package/lib/typescript/utils/polyfills.d.ts.map +1 -0
  403. package/package.json +7 -6
  404. package/src/assets/illustrations/HighFive.tsx +41 -0
  405. package/src/node/createAuth.ts +116 -0
  406. package/src/node/index.ts +4 -0
  407. package/src/types/expo-vector-icons.d.ts +3 -0
  408. package/src/types/express.d.ts +5 -0
  409. package/src/types/react-redux.d.ts +5 -0
  410. package/src/ui/components/OxyProvider.tsx +136 -135
  411. package/src/ui/components/internal/GroupedPillButtons.tsx +253 -0
  412. package/src/ui/components/internal/TextField.tsx +694 -0
  413. package/src/ui/index.ts +6 -2
  414. package/src/ui/navigation/OxyRouter.tsx +8 -3
  415. package/src/ui/screens/FeedbackScreen.tsx +1042 -0
  416. package/src/ui/screens/SignInScreen.tsx +179 -222
  417. package/src/ui/screens/SignUpScreen.tsx +772 -608
  418. package/src/ui/store/index.ts +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["configureStore","createSlice","initialState","user","isAuthenticated","isLoading","error","authSlice","name","reducers","loginStart","state","loginSuccess","action","payload","loginFailure","logout","actions","store","reducer","auth"],"sourceRoot":"../../../../src","sources":["ui/store/index.ts"],"mappings":";;AAAA,SAASA,cAAc,EAAEC,WAAW,QAAuB,kBAAkB;AAU7E,MAAMC,YAAuB,GAAG;EAC9BC,IAAI,EAAE,IAAI;EACVC,eAAe,EAAE,KAAK;EACtBC,SAAS,EAAE,KAAK;EAChBC,KAAK,EAAE;AACT,CAAC;AAED,MAAMC,SAAS,GAAGN,WAAW,CAAC;EAC5BO,IAAI,EAAE,MAAM;EACZN,YAAY;EACZO,QAAQ,EAAE;IACRC,UAAUA,CAACC,KAAgB,EAAE;MAC3BA,KAAK,CAACN,SAAS,GAAG,IAAI;MACtBM,KAAK,CAACL,KAAK,GAAG,IAAI;IACpB,CAAC;IACDM,YAAYA,CAACD,KAAgB,EAAEE,MAA2B,EAAE;MAC1DF,KAAK,CAACN,SAAS,GAAG,KAAK;MACvBM,KAAK,CAACP,eAAe,GAAG,IAAI;MAC5BO,KAAK,CAACR,IAAI,GAAGU,MAAM,CAACC,OAAO;IAC7B,CAAC;IACDC,YAAYA,CAACJ,KAAgB,EAAEE,MAA6B,EAAE;MAC5DF,KAAK,CAACN,SAAS,GAAG,KAAK;MACvBM,KAAK,CAACL,KAAK,GAAGO,MAAM,CAACC,OAAO;IAC9B,CAAC;IACDE,MAAMA,CAACL,KAAgB,EAAE;MACvBA,KAAK,CAACR,IAAI,GAAG,IAAI;MACjBQ,KAAK,CAACP,eAAe,GAAG,KAAK;IAC/B;EACF;AACF,CAAC,CAAC;AAEF,OAAO,MAAM;EAAEM,UAAU;EAAEE,YAAY;EAAEG,YAAY;EAAEC;AAAO,CAAC,GAAGT,SAAS,CAACU,OAAO;AAEnF,OAAO,MAAMC,KAAK,GAAGlB,cAAc,CAAC;EAClCmB,OAAO,EAAE;IACPC,IAAI,EAAEb,SAAS,CAACY;EAClB;AACF,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,126 @@
1
+ # Font Implementation Guide
2
+
3
+ ## Overview
4
+ This document explains how custom fonts are implemented in the OxyProvider UI components.
5
+
6
+ ## Implementation Details
7
+
8
+ ### Fonts Used
9
+ - **Phudu Font Family**: Used for all big titles in the application for a consistent brand experience.
10
+ - File location: `src/assets/fonts/Phudu/` directory containing:
11
+ - Phudu-Light.ttf (weight: 300)
12
+ - Phudu-Regular.ttf (weight: 400)
13
+ - Phudu-Medium.ttf (weight: 500)
14
+ - Phudu-SemiBold.ttf (weight: 600)
15
+ - Phudu-Bold.ttf (weight: 700)
16
+ - Phudu-ExtraBold.ttf (weight: 800)
17
+ - Phudu-Black.ttf (weight: 900)
18
+
19
+ ### How to Use
20
+ The font system has been implemented across all UI components. To use the fonts in your custom components:
21
+
22
+ ```javascript
23
+ // Import the font styles
24
+ import { fontStyles, fontFamilies } from '@oxyhq/services';
25
+
26
+ // Use in your component styles
27
+ const styles = StyleSheet.create({
28
+ myTitle: {
29
+ ...fontStyles.titleLarge,
30
+ color: '#333333',
31
+ },
32
+ myCustomHeading: {
33
+ fontFamily: fontFamilies.phudu,
34
+ fontSize: 28,
35
+ fontWeight: '600',
36
+ }
37
+ });
38
+ ```
39
+
40
+ ### Available Font Styles
41
+ - `titleLarge`: 34px, bold - For main screen titles
42
+ - `titleMedium`: 24px, bold - For section headings
43
+ - `titleSmall`: 20px, bold - For subsection headings
44
+
45
+ ### Font Loading
46
+ The OxyProvider component automatically handles font loading using the FontLoader component.
47
+
48
+ #### For Expo projects
49
+ Fonts are loaded automatically via `expo-font` when you use the `OxyProvider` component.
50
+
51
+ #### For React Native projects (non-Expo)
52
+ Call the `setupFonts` function at your app's entry point:
53
+
54
+ ```javascript
55
+ import { setupFonts } from '@oxyhq/services';
56
+
57
+ // Call this before rendering your app
58
+ setupFonts();
59
+
60
+ // Then render your app with OxyProvider
61
+ const App = () => (
62
+ <OxyProvider>
63
+ {/* Your app content */}
64
+ </OxyProvider>
65
+ );
66
+ ```
67
+
68
+ Also ensure the font files are properly linked in your native projects:
69
+ - For iOS: Add the font file to Xcode project and add entry to Info.plist
70
+ - For Android: Place the font in android/app/src/main/assets/fonts/
71
+
72
+ #### For Web projects
73
+ The `setupFonts` function will dynamically add the necessary @font-face CSS to load the Phudu font.
74
+ The font will be automatically located if you use a bundler that supports asset imports.
75
+
76
+ If automatic resolution fails, the library will look for the font files in the `/assets/fonts/Phudu/` directory in your web build.
77
+
78
+ To customize the font paths for web, modify the `setupFonts` function in your own implementation:
79
+
80
+ ```javascript
81
+ // Custom implementation
82
+ import { setupFonts as originalSetupFonts } from '@oxyhq/services';
83
+
84
+ export const setupFonts = () => {
85
+ // Your custom font loading logic for web
86
+ if (typeof document !== 'undefined') {
87
+ const style = document.createElement('style');
88
+
89
+ // Add custom @font-face rules with your own font paths
90
+ const customFontPathBase = '/path/to/your/fonts/Phudu/';
91
+
92
+ style.textContent = `
93
+ @font-face {
94
+ font-family: 'Phudu';
95
+ src: url('${customFontPathBase}Phudu-Regular.ttf') format('truetype');
96
+ font-weight: 400;
97
+ font-style: normal;
98
+ }
99
+ @font-face {
100
+ font-family: 'Phudu';
101
+ src: url('${customFontPathBase}Phudu-Bold.ttf') format('truetype');
102
+ font-weight: 700;
103
+ font-style: normal;
104
+ }
105
+ /* Add other weights as needed */
106
+ `;
107
+
108
+ document.head.appendChild(style);
109
+ } else {
110
+ // Use the original implementation for native platforms
111
+ originalSetupFonts();
112
+ }
113
+ };
114
+ ```
115
+
116
+ ### Platform Support
117
+ - **iOS/Android**: Loaded as individual font files ('Phudu-Regular', 'Phudu-Bold', etc.)
118
+ - **Web**: Uses the font name 'Phudu' with specific weights via CSS weight property
119
+
120
+ ### Custom Font Implementation
121
+ If you want to add additional fonts:
122
+
123
+ 1. Add the font file to `src/assets/fonts/`
124
+ 2. Update the `fontFamilies` object in `src/ui/styles/fonts.ts`
125
+ 3. Update the `FontLoader` component in `src/ui/components/FontLoader.tsx`
126
+ 4. For web support, include the font in your web project's CSS
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+
5
+ /**
6
+ * Font family names for use across the app
7
+ *
8
+ * For web platforms, we use the CSS font name with weights
9
+ * For native platforms, we use the specific static font file names
10
+ */
11
+ export const fontFamilies = {
12
+ // Regular weight (400)
13
+ phudu: Platform.select({
14
+ web: 'Phudu',
15
+ // Web projects will use standard CSS font name
16
+ default: 'Phudu-Regular' // Native projects use the specific weight font
17
+ }),
18
+ // Light weight (300)
19
+ phuduLight: Platform.select({
20
+ web: 'Phudu',
21
+ // Web uses CSS weight
22
+ default: 'Phudu-Light' // Native uses specific font
23
+ }),
24
+ // Medium weight (500)
25
+ phuduMedium: Platform.select({
26
+ web: 'Phudu',
27
+ // Web uses CSS weight
28
+ default: 'Phudu-Medium' // Native uses specific font
29
+ }),
30
+ // SemiBold weight (600)
31
+ phuduSemiBold: Platform.select({
32
+ web: 'Phudu',
33
+ // Web uses CSS weight
34
+ default: 'Phudu-SemiBold' // Native uses specific font
35
+ }),
36
+ // Bold weight (700)
37
+ phuduBold: Platform.select({
38
+ web: 'Phudu',
39
+ // Web uses CSS weight
40
+ default: 'Phudu-Bold' // Native uses specific font
41
+ }),
42
+ // ExtraBold weight (800)
43
+ phuduExtraBold: Platform.select({
44
+ web: 'Phudu',
45
+ // Web uses CSS weight
46
+ default: 'Phudu-ExtraBold' // Native uses specific font
47
+ }),
48
+ // Black weight (900)
49
+ phuduBlack: Platform.select({
50
+ web: 'Phudu',
51
+ // Web uses CSS weight
52
+ default: 'Phudu-Black' // Native uses specific font
53
+ })
54
+ };
55
+
56
+ /**
57
+ * Font styles that can be reused across the app
58
+ */
59
+ export const fontStyles = {
60
+ titleLarge: {
61
+ fontFamily: Platform.OS === 'web' ? 'Phudu' : 'Phudu-Bold',
62
+ fontSize: 54,
63
+ fontWeight: Platform.OS === 'web' ? 'bold' : undefined // Only apply fontWeight on web
64
+ },
65
+ titleMedium: {
66
+ fontFamily: Platform.OS === 'web' ? 'Phudu' : 'Phudu-Bold',
67
+ fontSize: 24,
68
+ fontWeight: Platform.OS === 'web' ? 'bold' : undefined // Only apply fontWeight on web
69
+ },
70
+ titleSmall: {
71
+ fontFamily: Platform.OS === 'web' ? 'Phudu' : 'Phudu-Bold',
72
+ fontSize: 20,
73
+ fontWeight: Platform.OS === 'web' ? 'bold' : undefined // Only apply fontWeight on web
74
+ },
75
+ buttonText: {
76
+ fontFamily: Platform.OS === 'web' ? 'Phudu' : 'Phudu-SemiBold',
77
+ fontSize: 16,
78
+ fontWeight: Platform.OS === 'web' ? '600' : undefined // Only apply fontWeight on web
79
+ }
80
+ };
81
+ //# sourceMappingURL=fonts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","fontFamilies","phudu","select","web","default","phuduLight","phuduMedium","phuduSemiBold","phuduBold","phuduExtraBold","phuduBlack","fontStyles","titleLarge","fontFamily","OS","fontSize","fontWeight","undefined","titleMedium","titleSmall","buttonText"],"sourceRoot":"../../../../src","sources":["ui/styles/fonts.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAmB,cAAc;;AAElD;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,YAAY,GAAG;EAC1B;EACAC,KAAK,EAAEF,QAAQ,CAACG,MAAM,CAAC;IACrBC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,eAAe,CAAE;EAC5B,CAAC,CAAC;EAEF;EACAC,UAAU,EAAEN,QAAQ,CAACG,MAAM,CAAC;IAC1BC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,aAAa,CAAE;EAC1B,CAAC,CAAC;EAEF;EACAE,WAAW,EAAEP,QAAQ,CAACG,MAAM,CAAC;IAC3BC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,cAAc,CAAE;EAC3B,CAAC,CAAC;EAEF;EACAG,aAAa,EAAER,QAAQ,CAACG,MAAM,CAAC;IAC7BC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,gBAAgB,CAAE;EAC7B,CAAC,CAAC;EAEF;EACAI,SAAS,EAAET,QAAQ,CAACG,MAAM,CAAC;IACzBC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,YAAY,CAAE;EACzB,CAAC,CAAC;EAEF;EACAK,cAAc,EAAEV,QAAQ,CAACG,MAAM,CAAC;IAC9BC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,iBAAiB,CAAE;EAC9B,CAAC,CAAC;EAEF;EACAM,UAAU,EAAEX,QAAQ,CAACG,MAAM,CAAC;IAC1BC,GAAG,EAAE,OAAO;IAAG;IACfC,OAAO,EAAE,aAAa,CAAE;EAC1B,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMO,UAAqC,GAAG;EACnDC,UAAU,EAAE;IACVC,UAAU,EAAEd,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,OAAO,GAAG,YAAY;IAC1DC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEjB,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,MAAM,GAAGG,SAAS,CAAG;EAC3D,CAAC;EACDC,WAAW,EAAE;IACXL,UAAU,EAAEd,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,OAAO,GAAG,YAAY;IAC1DC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEjB,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,MAAM,GAAGG,SAAS,CAAG;EAC3D,CAAC;EACDE,UAAU,EAAE;IACVN,UAAU,EAAEd,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,OAAO,GAAG,YAAY;IAC1DC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEjB,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,MAAM,GAAGG,SAAS,CAAG;EAC3D,CAAC;EACDG,UAAU,EAAE;IACVP,UAAU,EAAEd,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,OAAO,GAAG,gBAAgB;IAC9DC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAEjB,QAAQ,CAACe,EAAE,KAAK,KAAK,GAAG,KAAK,GAAGG,SAAS,CAAG;EAC1D;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ export * from './fonts';
4
+ export * from './theme';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["ui/styles/index.ts"],"mappings":";;AAAA,cAAc,SAAS;AACvB,cAAc,SAAS","ignoreList":[]}
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+
3
+ import { Platform, StyleSheet } from 'react-native';
4
+ import { fontFamilies } from './fonts';
5
+ const lightColors = {
6
+ text: '#000000',
7
+ background: '#FFFFFF',
8
+ inputBackground: '#F5F5F5',
9
+ placeholder: '#999999',
10
+ primary: '#d169e5',
11
+ border: '#E0E0E0',
12
+ error: '#D32F2F',
13
+ success: '#2E7D32',
14
+ warning: '#F57C00',
15
+ secondaryText: '#666666'
16
+ };
17
+ const darkColors = {
18
+ text: '#FFFFFF',
19
+ background: '#121212',
20
+ inputBackground: '#333333',
21
+ placeholder: '#AAAAAA',
22
+ primary: '#d169e5',
23
+ border: '#444444',
24
+ error: '#EF5350',
25
+ success: '#81C784',
26
+ warning: '#FFB74D',
27
+ secondaryText: '#BBBBBB'
28
+ };
29
+ const createTheme = isDark => {
30
+ const colors = isDark ? darkColors : lightColors;
31
+ return {
32
+ colors,
33
+ fonts: {
34
+ title: {
35
+ fontFamily: Platform.OS === 'web' ? 'Phudu' : 'Phudu-Bold',
36
+ fontWeight: Platform.OS === 'web' ? 'bold' : undefined,
37
+ fontSize: 34
38
+ },
39
+ body: {
40
+ fontSize: 16,
41
+ lineHeight: 24
42
+ },
43
+ button: {
44
+ fontFamily: fontFamilies.phuduSemiBold,
45
+ fontSize: 16,
46
+ fontWeight: '600',
47
+ color: '#FFFFFF'
48
+ },
49
+ label: {
50
+ fontSize: 14,
51
+ fontWeight: '500',
52
+ marginBottom: 8
53
+ }
54
+ }
55
+ };
56
+ };
57
+ export const getTheme = theme => {
58
+ return createTheme(theme === 'dark');
59
+ };
60
+ export const useThemeColors = theme => {
61
+ return getTheme(theme).colors;
62
+ };
63
+
64
+ // Common styles that can be reused across components
65
+ export const createCommonStyles = theme => {
66
+ const themeObj = getTheme(theme);
67
+ const {
68
+ colors
69
+ } = themeObj;
70
+ return StyleSheet.create({
71
+ container: {
72
+ backgroundColor: colors.background
73
+ },
74
+ scrollContainer: {
75
+ padding: 10
76
+ },
77
+ input: {
78
+ height: 48,
79
+ borderRadius: 35,
80
+ paddingHorizontal: 16,
81
+ borderWidth: 1,
82
+ fontSize: 16,
83
+ backgroundColor: colors.inputBackground,
84
+ borderColor: colors.border,
85
+ color: colors.text
86
+ },
87
+ button: {
88
+ backgroundColor: colors.primary,
89
+ height: 48,
90
+ borderRadius: 35,
91
+ alignItems: 'center',
92
+ justifyContent: 'center',
93
+ marginTop: 24
94
+ },
95
+ buttonText: {
96
+ fontFamily: fontFamilies.phuduSemiBold,
97
+ fontSize: 16,
98
+ fontWeight: '600',
99
+ color: '#FFFFFF'
100
+ },
101
+ errorContainer: {
102
+ backgroundColor: '#FFEBEE',
103
+ padding: 12,
104
+ borderRadius: 35,
105
+ marginBottom: 16
106
+ },
107
+ errorText: {
108
+ fontSize: 14,
109
+ fontWeight: '500',
110
+ color: colors.error
111
+ }
112
+ });
113
+ };
114
+ //# sourceMappingURL=theme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","StyleSheet","fontFamilies","lightColors","text","background","inputBackground","placeholder","primary","border","error","success","warning","secondaryText","darkColors","createTheme","isDark","colors","fonts","title","fontFamily","OS","fontWeight","undefined","fontSize","body","lineHeight","button","phuduSemiBold","color","label","marginBottom","getTheme","theme","useThemeColors","createCommonStyles","themeObj","create","container","backgroundColor","scrollContainer","padding","input","height","borderRadius","paddingHorizontal","borderWidth","borderColor","alignItems","justifyContent","marginTop","buttonText","errorContainer","errorText"],"sourceRoot":"../../../../src","sources":["ui/styles/theme.ts"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,UAAU,QAAmB,cAAc;AAC9D,SAASC,YAAY,QAAQ,SAAS;AAyBtC,MAAMC,WAAwB,GAAG;EAC/BC,IAAI,EAAE,SAAS;EACfC,UAAU,EAAE,SAAS;EACrBC,eAAe,EAAE,SAAS;EAC1BC,WAAW,EAAE,SAAS;EACtBC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE,SAAS;EAClBC,aAAa,EAAE;AACjB,CAAC;AAED,MAAMC,UAAuB,GAAG;EAC9BV,IAAI,EAAE,SAAS;EACfC,UAAU,EAAE,SAAS;EACrBC,eAAe,EAAE,SAAS;EAC1BC,WAAW,EAAE,SAAS;EACtBC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAE,SAAS;EAChBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE,SAAS;EAClBC,aAAa,EAAE;AACjB,CAAC;AAED,MAAME,WAAW,GAAIC,MAAe,IAAY;EAC9C,MAAMC,MAAM,GAAGD,MAAM,GAAGF,UAAU,GAAGX,WAAW;EAEhD,OAAO;IACLc,MAAM;IACNC,KAAK,EAAE;MACLC,KAAK,EAAE;QACLC,UAAU,EAAEpB,QAAQ,CAACqB,EAAE,KAAK,KAAK,GAC7B,OAAO,GACP,YAAY;QAChBC,UAAU,EAAEtB,QAAQ,CAACqB,EAAE,KAAK,KAAK,GAAG,MAAM,GAAGE,SAAS;QACtDC,QAAQ,EAAE;MACZ,CAAC;MACDC,IAAI,EAAE;QACJD,QAAQ,EAAE,EAAE;QACZE,UAAU,EAAE;MACd,CAAC;MACDC,MAAM,EAAE;QACNP,UAAU,EAAElB,YAAY,CAAC0B,aAAa;QACtCJ,QAAQ,EAAE,EAAE;QACZF,UAAU,EAAE,KAAK;QACjBO,KAAK,EAAE;MACT,CAAC;MACDC,KAAK,EAAE;QACLN,QAAQ,EAAE,EAAE;QACZF,UAAU,EAAE,KAAK;QACjBS,YAAY,EAAE;MAChB;IACF;EACF,CAAC;AACH,CAAC;AAED,OAAO,MAAMC,QAAQ,GAAIC,KAAuB,IAAY;EAC1D,OAAOlB,WAAW,CAACkB,KAAK,KAAK,MAAM,CAAC;AACtC,CAAC;AAED,OAAO,MAAMC,cAAc,GAAID,KAAuB,IAAkB;EACtE,OAAOD,QAAQ,CAACC,KAAK,CAAC,CAAChB,MAAM;AAC/B,CAAC;;AAED;AACA,OAAO,MAAMkB,kBAAkB,GAAIF,KAAuB,IAAK;EAC7D,MAAMG,QAAQ,GAAGJ,QAAQ,CAACC,KAAK,CAAC;EAChC,MAAM;IAAEhB;EAAO,CAAC,GAAGmB,QAAQ;EAE3B,OAAOnC,UAAU,CAACoC,MAAM,CAAC;IACvBC,SAAS,EAAE;MACTC,eAAe,EAAEtB,MAAM,CAACZ;IAC1B,CAAC;IACDmC,eAAe,EAAE;MACfC,OAAO,EAAE;IACX,CAAC;IACDC,KAAK,EAAE;MACLC,MAAM,EAAE,EAAE;MACVC,YAAY,EAAE,EAAE;MAChBC,iBAAiB,EAAE,EAAE;MACrBC,WAAW,EAAE,CAAC;MACdtB,QAAQ,EAAE,EAAE;MACZe,eAAe,EAAEtB,MAAM,CAACX,eAAe;MACvCyC,WAAW,EAAE9B,MAAM,CAACR,MAAM;MAC1BoB,KAAK,EAAEZ,MAAM,CAACb;IAChB,CAAC;IACDuB,MAAM,EAAE;MACNY,eAAe,EAAEtB,MAAM,CAACT,OAAO;MAC/BmC,MAAM,EAAE,EAAE;MACVC,YAAY,EAAE,EAAE;MAChBI,UAAU,EAAE,QAAQ;MACpBC,cAAc,EAAE,QAAQ;MACxBC,SAAS,EAAE;IACb,CAAC;IACDC,UAAU,EAAE;MACV/B,UAAU,EAAElB,YAAY,CAAC0B,aAAa;MACtCJ,QAAQ,EAAE,EAAE;MACZF,UAAU,EAAE,KAAK;MACjBO,KAAK,EAAE;IACT,CAAC;IACDuB,cAAc,EAAE;MACdb,eAAe,EAAE,SAAS;MAC1BE,OAAO,EAAE,EAAE;MACXG,YAAY,EAAE,EAAE;MAChBb,YAAY,EAAE;IAChB,CAAC;IACDsB,SAAS,EAAE;MACT7B,QAAQ,EAAE,EAAE;MACZF,UAAU,EAAE,KAAK;MACjBO,KAAK,EAAEZ,MAAM,CAACP;IAChB;EACF,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
@@ -0,0 +1,167 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Client-side device management utility
5
+ * Handles persistent device identification across app sessions
6
+ */
7
+ export class DeviceManager {
8
+ static DEVICE_KEY = 'oxy_device_info';
9
+
10
+ /**
11
+ * Check if we're in React Native environment
12
+ */
13
+ static isReactNative() {
14
+ return typeof navigator !== 'undefined' && navigator.product === 'ReactNative';
15
+ }
16
+
17
+ /**
18
+ * Get appropriate storage for the platform
19
+ */
20
+ static async getStorage() {
21
+ if (this.isReactNative()) {
22
+ // Try to import AsyncStorage for React Native
23
+ try {
24
+ const AsyncStorage = await import('@react-native-async-storage/async-storage');
25
+ return AsyncStorage.default;
26
+ } catch (error) {
27
+ console.error('AsyncStorage not available in React Native:', error);
28
+ throw new Error('AsyncStorage is required in React Native environment');
29
+ }
30
+ } else {
31
+ // Use localStorage for web
32
+ return {
33
+ getItem: async key => localStorage.getItem(key),
34
+ setItem: async (key, value) => localStorage.setItem(key, value),
35
+ removeItem: async key => localStorage.removeItem(key)
36
+ };
37
+ }
38
+ }
39
+
40
+ /**
41
+ * Get or create device fingerprint for current device
42
+ */
43
+ static getDeviceFingerprint() {
44
+ const fingerprint = {
45
+ userAgent: typeof navigator !== 'undefined' ? navigator.userAgent : 'unknown',
46
+ platform: typeof navigator !== 'undefined' ? navigator.platform : 'unknown',
47
+ language: typeof navigator !== 'undefined' ? navigator.language : undefined,
48
+ timezone: typeof Intl !== 'undefined' ? Intl.DateTimeFormat().resolvedOptions().timeZone : undefined
49
+ };
50
+
51
+ // Add screen info if available
52
+ if (typeof screen !== 'undefined') {
53
+ fingerprint.screen = {
54
+ width: screen.width,
55
+ height: screen.height,
56
+ colorDepth: screen.colorDepth
57
+ };
58
+ }
59
+ return fingerprint;
60
+ }
61
+
62
+ /**
63
+ * Get stored device info or create new one
64
+ */
65
+ static async getDeviceInfo() {
66
+ try {
67
+ const storage = await this.getStorage();
68
+ const stored = await storage.getItem(this.DEVICE_KEY);
69
+ if (stored) {
70
+ const deviceInfo = JSON.parse(stored);
71
+
72
+ // Update last used timestamp
73
+ deviceInfo.lastUsed = new Date().toISOString();
74
+ await this.saveDeviceInfo(deviceInfo);
75
+ return deviceInfo;
76
+ }
77
+
78
+ // Create new device info
79
+ return await this.createNewDeviceInfo();
80
+ } catch (error) {
81
+ console.error('Error getting device info:', error);
82
+ return await this.createNewDeviceInfo();
83
+ }
84
+ }
85
+
86
+ /**
87
+ * Create new device info and store it
88
+ */
89
+ static async createNewDeviceInfo() {
90
+ const deviceInfo = {
91
+ deviceId: this.generateDeviceId(),
92
+ fingerprint: JSON.stringify(this.getDeviceFingerprint()),
93
+ createdAt: new Date().toISOString(),
94
+ lastUsed: new Date().toISOString()
95
+ };
96
+ await this.saveDeviceInfo(deviceInfo);
97
+ return deviceInfo;
98
+ }
99
+
100
+ /**
101
+ * Save device info to storage
102
+ */
103
+ static async saveDeviceInfo(deviceInfo) {
104
+ try {
105
+ const storage = await this.getStorage();
106
+ await storage.setItem(this.DEVICE_KEY, JSON.stringify(deviceInfo));
107
+ } catch (error) {
108
+ console.error('Error saving device info:', error);
109
+ }
110
+ }
111
+
112
+ /**
113
+ * Update device name
114
+ */
115
+ static async updateDeviceName(deviceName) {
116
+ try {
117
+ const deviceInfo = await this.getDeviceInfo();
118
+ deviceInfo.deviceName = deviceName;
119
+ await this.saveDeviceInfo(deviceInfo);
120
+ } catch (error) {
121
+ console.error('Error updating device name:', error);
122
+ }
123
+ }
124
+
125
+ /**
126
+ * Clear stored device info (useful for testing or reset)
127
+ */
128
+ static async clearDeviceInfo() {
129
+ try {
130
+ const storage = await this.getStorage();
131
+ await storage.removeItem(this.DEVICE_KEY);
132
+ } catch (error) {
133
+ console.error('Error clearing device info:', error);
134
+ }
135
+ }
136
+
137
+ /**
138
+ * Generate a unique device ID
139
+ */
140
+ static generateDeviceId() {
141
+ // Use crypto.getRandomValues if available, otherwise fallback to Math.random
142
+ if (typeof crypto !== 'undefined' && crypto.getRandomValues) {
143
+ const array = new Uint8Array(32);
144
+ crypto.getRandomValues(array);
145
+ return Array.from(array, byte => byte.toString(16).padStart(2, '0')).join('');
146
+ } else {
147
+ // Fallback for environments without crypto.getRandomValues
148
+ return 'device_' + Date.now().toString(36) + Math.random().toString(36).substr(2);
149
+ }
150
+ }
151
+
152
+ /**
153
+ * Get a user-friendly device name based on platform
154
+ */
155
+ static getDefaultDeviceName() {
156
+ const fingerprint = this.getDeviceFingerprint();
157
+ const platform = fingerprint.platform.toLowerCase();
158
+ if (platform.includes('win')) return 'Windows Computer';
159
+ if (platform.includes('mac')) return 'Mac Computer';
160
+ if (platform.includes('linux')) return 'Linux Computer';
161
+ if (platform.includes('iphone')) return 'iPhone';
162
+ if (platform.includes('ipad')) return 'iPad';
163
+ if (platform.includes('android')) return 'Android Device';
164
+ return 'Unknown Device';
165
+ }
166
+ }
167
+ //# sourceMappingURL=deviceManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeviceManager","DEVICE_KEY","isReactNative","navigator","product","getStorage","AsyncStorage","default","error","console","Error","getItem","key","localStorage","setItem","value","removeItem","getDeviceFingerprint","fingerprint","userAgent","platform","language","undefined","timezone","Intl","DateTimeFormat","resolvedOptions","timeZone","screen","width","height","colorDepth","getDeviceInfo","storage","stored","deviceInfo","JSON","parse","lastUsed","Date","toISOString","saveDeviceInfo","createNewDeviceInfo","deviceId","generateDeviceId","stringify","createdAt","updateDeviceName","deviceName","clearDeviceInfo","crypto","getRandomValues","array","Uint8Array","Array","from","byte","toString","padStart","join","now","Math","random","substr","getDefaultDeviceName","toLowerCase","includes"],"sourceRoot":"../../../src","sources":["utils/deviceManager.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export { DeviceManager } from './deviceManager';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeviceManager"],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,iBAAiB","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Polyfills for React Native environments that may be missing certain Web APIs
5
+ */
6
+
7
+ // FormData polyfill for React Native/Hermes environments
8
+ if (typeof FormData === 'undefined') {
9
+ try {
10
+ const FormDataPolyfill = require('form-data');
11
+ // Use globalThis which is more universal than global
12
+ if (typeof globalThis !== 'undefined') {
13
+ globalThis.FormData = FormDataPolyfill;
14
+ }
15
+ } catch (error) {
16
+ console.warn('form-data package not found. File uploads may not work in React Native environments without native FormData support.');
17
+ }
18
+ }
19
+
20
+ // Export a helper to ensure FormData is available
21
+ export const ensureFormDataAvailable = () => {
22
+ return typeof FormData !== 'undefined' || typeof require !== 'undefined';
23
+ };
24
+
25
+ // Get FormData constructor (either native or polyfilled)
26
+ export const getFormDataConstructor = () => {
27
+ if (typeof FormData !== 'undefined') {
28
+ return FormData;
29
+ }
30
+ try {
31
+ return require('form-data');
32
+ } catch (error) {
33
+ throw new Error('FormData is not available and form-data package is not installed. Please install form-data for file upload support.');
34
+ }
35
+ };
36
+ //# sourceMappingURL=polyfills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["FormData","FormDataPolyfill","require","globalThis","error","console","warn","ensureFormDataAvailable","getFormDataConstructor","Error"],"sourceRoot":"../../../src","sources":["utils/polyfills.ts"],"mappings":";;AAAA;AACA;AACA;;AAEA;AACA,IAAI,OAAOA,QAAQ,KAAK,WAAW,EAAE;EACnC,IAAI;IACF,MAAMC,gBAAgB,GAAGC,OAAO,CAAC,WAAW,CAAC;IAC7C;IACA,IAAI,OAAOC,UAAU,KAAK,WAAW,EAAE;MACpCA,UAAU,CAASH,QAAQ,GAAGC,gBAAgB;IACjD;EACF,CAAC,CAAC,OAAOG,KAAK,EAAE;IACdC,OAAO,CAACC,IAAI,CAAC,sHAAsH,CAAC;EACtI;AACF;;AAEA;AACA,OAAO,MAAMC,uBAAuB,GAAGA,CAAA,KAAe;EACpD,OAAO,OAAOP,QAAQ,KAAK,WAAW,IAAI,OAAOE,OAAO,KAAK,WAAW;AAC1E,CAAC;;AAED;AACA,OAAO,MAAMM,sBAAsB,GAAGA,CAAA,KAAW;EAC/C,IAAI,OAAOR,QAAQ,KAAK,WAAW,EAAE;IACnC,OAAOA,QAAQ;EACjB;EAEA,IAAI;IACF,OAAOE,OAAO,CAAC,WAAW,CAAC;EAC7B,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,MAAM,IAAIK,KAAK,CAAC,qHAAqH,CAAC;EACxI;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ import React from 'react';
2
+ import { ViewStyle } from 'react-native';
3
+ interface OxyLogoProps {
4
+ width?: number;
5
+ height?: number;
6
+ style?: ViewStyle;
7
+ /**
8
+ * Primary fill color for the logo
9
+ * If not provided, the theme's primary color will be used
10
+ */
11
+ fillColor?: string;
12
+ /**
13
+ * Secondary fill color for the inner glow effect
14
+ * If not provided, a lighter shade of the fillColor will be used
15
+ */
16
+ secondaryFillColor?: string;
17
+ /**
18
+ * Theme to use for the logo colors
19
+ * @default 'light'
20
+ */
21
+ theme?: 'light' | 'dark';
22
+ }
23
+ /**
24
+ * SVG logo component for Oxy
25
+ * This component renders the Oxy logo as an SVG and uses theme colors by default
26
+ */
27
+ export declare const OxyServicesLogo: React.FC<OxyLogoProps>;
28
+ export default OxyServicesLogo;
29
+ //# sourceMappingURL=OxyServices.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OxyServices.d.ts","sourceRoot":"","sources":["../../../../src/assets/icons/OxyServices.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,UAAU,YAAY;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAkClD,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface HighFiveProps {
3
+ width?: number;
4
+ height?: number;
5
+ color?: string;
6
+ }
7
+ declare const HighFive: React.FC<HighFiveProps>;
8
+ export default HighFive;
9
+ //# sourceMappingURL=HighFive.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HighFive.d.ts","sourceRoot":"","sources":["../../../../src/assets/illustrations/HighFive.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,UAAU,aAAa;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CA6BrC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Package version and metadata constants
3
+ * This file is auto-generated to avoid runtime dependency on package.json
4
+ */
5
+ export declare const packageInfo: {
6
+ readonly name: "@oxyhq/services";
7
+ readonly version: "5.2.1";
8
+ readonly description: "Reusable OxyHQ module to handle authentication, user management, karma system and more 🚀";
9
+ readonly main: "lib/commonjs/node/index.js";
10
+ readonly module: "lib/module/node/index.js";
11
+ readonly types: "lib/typescript/node/index.d.ts";
12
+ };
13
+ export declare const name: "@oxyhq/services", version: "5.2.1", description: "Reusable OxyHQ module to handle authentication, user management, karma system and more 🚀";
14
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../../src/constants/version.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,WAAW;;;;;;;CAOd,CAAC;AAEX,eAAO,MAAQ,IAAI,qBAAE,OAAO,WAAE,WAAW,6FAAgB,CAAC"}