@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.
- package/README.md +14 -0
- package/lib/commonjs/assets/OxyLogo.svg +1 -0
- package/lib/commonjs/assets/assets/OxyLogo.svg +1 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
- package/lib/commonjs/assets/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
- package/lib/commonjs/assets/assets/icons/OxyServices.tsx +67 -0
- package/lib/commonjs/assets/assets/icons/logo_OxyServices.svg +1 -0
- package/lib/commonjs/assets/assets/illustrations/HighFive.tsx +41 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
- package/lib/commonjs/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
- package/lib/commonjs/assets/icons/OxyServices.js +53 -0
- package/lib/commonjs/assets/icons/OxyServices.js.map +1 -0
- package/lib/commonjs/assets/icons/logo_OxyServices.svg +1 -0
- package/lib/commonjs/assets/illustrations/HighFive.js +61 -0
- package/lib/commonjs/assets/illustrations/HighFive.js.map +1 -0
- package/lib/commonjs/constants/version.js +28 -0
- package/lib/commonjs/constants/version.js.map +1 -0
- package/lib/commonjs/core/index.js +1660 -0
- package/lib/commonjs/core/index.js.map +1 -0
- package/lib/commonjs/index.js +160 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/lib/sonner.js +21 -0
- package/lib/commonjs/lib/sonner.js.map +1 -0
- package/lib/commonjs/models/interfaces.js +2 -0
- package/lib/commonjs/models/interfaces.js.map +1 -0
- package/lib/commonjs/models/secureSession.js +2 -0
- package/lib/commonjs/models/secureSession.js.map +1 -0
- package/lib/commonjs/node/createAuth.js +95 -0
- package/lib/commonjs/node/createAuth.js.map +1 -0
- package/lib/commonjs/node/index.js +63 -0
- package/lib/commonjs/node/index.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/ui/components/Avatar.js +98 -0
- package/lib/commonjs/ui/components/Avatar.js.map +1 -0
- package/lib/commonjs/ui/components/FollowButton.js +246 -0
- package/lib/commonjs/ui/components/FollowButton.js.map +1 -0
- package/lib/commonjs/ui/components/FontLoader.js +181 -0
- package/lib/commonjs/ui/components/FontLoader.js.map +1 -0
- package/lib/commonjs/ui/components/GroupedItem.js +109 -0
- package/lib/commonjs/ui/components/GroupedItem.js.map +1 -0
- package/lib/commonjs/ui/components/GroupedSection.js +33 -0
- package/lib/commonjs/ui/components/GroupedSection.js.map +1 -0
- package/lib/commonjs/ui/components/OxyLogo.js +56 -0
- package/lib/commonjs/ui/components/OxyLogo.js.map +1 -0
- package/lib/commonjs/ui/components/OxyProvider.js +522 -0
- package/lib/commonjs/ui/components/OxyProvider.js.map +1 -0
- package/lib/commonjs/ui/components/OxySignInButton.js +178 -0
- package/lib/commonjs/ui/components/OxySignInButton.js.map +1 -0
- package/lib/commonjs/ui/components/ProfileCard.js +124 -0
- package/lib/commonjs/ui/components/ProfileCard.js.map +1 -0
- package/lib/commonjs/ui/components/QuickActions.js +87 -0
- package/lib/commonjs/ui/components/QuickActions.js.map +1 -0
- package/lib/commonjs/ui/components/Section.js +36 -0
- package/lib/commonjs/ui/components/Section.js.map +1 -0
- package/lib/commonjs/ui/components/SectionTitle.js +35 -0
- package/lib/commonjs/ui/components/SectionTitle.js.map +1 -0
- package/lib/commonjs/ui/components/bottomSheet/index.js +37 -0
- package/lib/commonjs/ui/components/bottomSheet/index.js.map +1 -0
- package/lib/commonjs/ui/components/icon/OxyIcon.js +27 -0
- package/lib/commonjs/ui/components/icon/OxyIcon.js.map +1 -0
- package/lib/commonjs/ui/components/icon/index.js +14 -0
- package/lib/commonjs/ui/components/icon/index.js.map +1 -0
- package/lib/commonjs/ui/components/index.js +97 -0
- package/lib/commonjs/ui/components/index.js.map +1 -0
- package/lib/commonjs/ui/components/internal/GroupedPillButtons.js +213 -0
- package/lib/commonjs/ui/components/internal/GroupedPillButtons.js.map +1 -0
- package/lib/commonjs/ui/components/internal/TextField.js +576 -0
- package/lib/commonjs/ui/components/internal/TextField.js.map +1 -0
- package/lib/commonjs/ui/context/OxyContext.js +584 -0
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -0
- package/lib/commonjs/ui/index.js +136 -0
- package/lib/commonjs/ui/index.js.map +1 -0
- package/lib/commonjs/ui/navigation/OxyRouter.js +269 -0
- package/lib/commonjs/ui/navigation/OxyRouter.js.map +1 -0
- package/lib/commonjs/ui/navigation/types.js +6 -0
- package/lib/commonjs/ui/navigation/types.js.map +1 -0
- package/lib/commonjs/ui/screens/AccountCenterScreen.js +313 -0
- package/lib/commonjs/ui/screens/AccountCenterScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/AccountManagementDemo.js +299 -0
- package/lib/commonjs/ui/screens/AccountManagementDemo.js.map +1 -0
- package/lib/commonjs/ui/screens/AccountOverviewScreen.js +855 -0
- package/lib/commonjs/ui/screens/AccountOverviewScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js +843 -0
- package/lib/commonjs/ui/screens/AccountSettingsScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +788 -0
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/AppInfoScreen.js +664 -0
- package/lib/commonjs/ui/screens/AppInfoScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/BillingManagementScreen.js +636 -0
- package/lib/commonjs/ui/screens/BillingManagementScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/FeedbackScreen.js +1169 -0
- package/lib/commonjs/ui/screens/FeedbackScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/FileManagementScreen.js +2515 -0
- package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js +1620 -0
- package/lib/commonjs/ui/screens/PremiumSubscriptionScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/ProfileScreen.js +450 -0
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/SessionManagementScreen.js +449 -0
- package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/SignInScreen.js +882 -0
- package/lib/commonjs/ui/screens/SignInScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/SignUpScreen.js +1036 -0
- package/lib/commonjs/ui/screens/SignUpScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js +88 -0
- package/lib/commonjs/ui/screens/karma/KarmaAboutScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +364 -0
- package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js +227 -0
- package/lib/commonjs/ui/screens/karma/KarmaFAQScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +148 -0
- package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js +127 -0
- package/lib/commonjs/ui/screens/karma/KarmaRewardsScreen.js.map +1 -0
- package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +105 -0
- package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +1 -0
- package/lib/commonjs/ui/store/index.js +52 -0
- package/lib/commonjs/ui/store/index.js.map +1 -0
- package/lib/commonjs/ui/styles/FONTS.md +126 -0
- package/lib/commonjs/ui/styles/fonts.js +84 -0
- package/lib/commonjs/ui/styles/fonts.js.map +1 -0
- package/lib/commonjs/ui/styles/index.js +28 -0
- package/lib/commonjs/ui/styles/index.js.map +1 -0
- package/lib/commonjs/ui/styles/theme.js +121 -0
- package/lib/commonjs/ui/styles/theme.js.map +1 -0
- package/lib/commonjs/utils/deviceManager.js +173 -0
- package/lib/commonjs/utils/deviceManager.js.map +1 -0
- package/lib/commonjs/utils/index.js +13 -0
- package/lib/commonjs/utils/index.js.map +1 -0
- package/lib/commonjs/utils/polyfills.js +42 -0
- package/lib/commonjs/utils/polyfills.js.map +1 -0
- package/lib/module/assets/OxyLogo.svg +1 -0
- package/lib/module/assets/assets/OxyLogo.svg +1 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
- package/lib/module/assets/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
- package/lib/module/assets/assets/icons/OxyServices.tsx +67 -0
- package/lib/module/assets/assets/icons/logo_OxyServices.svg +1 -0
- package/lib/module/assets/assets/illustrations/HighFive.tsx +41 -0
- package/lib/module/assets/fonts/Phudu/Phudu-Black.ttf +0 -0
- package/lib/module/assets/fonts/Phudu/Phudu-Bold.ttf +0 -0
- package/lib/module/assets/fonts/Phudu/Phudu-ExtraBold.ttf +0 -0
- package/lib/module/assets/fonts/Phudu/Phudu-Light.ttf +0 -0
- package/lib/module/assets/fonts/Phudu/Phudu-Medium.ttf +0 -0
- package/lib/module/assets/fonts/Phudu/Phudu-Regular.ttf +0 -0
- package/lib/module/assets/fonts/Phudu/Phudu-SemiBold.ttf +0 -0
- package/lib/module/assets/icons/OxyServices.js +46 -0
- package/lib/module/assets/icons/OxyServices.js.map +1 -0
- package/lib/module/assets/icons/logo_OxyServices.svg +1 -0
- package/lib/module/assets/illustrations/HighFive.js +55 -0
- package/lib/module/assets/illustrations/HighFive.js.map +1 -0
- package/lib/module/constants/version.js +21 -0
- package/lib/module/constants/version.js.map +1 -0
- package/lib/module/core/index.js +1634 -0
- package/lib/module/core/index.js.map +1 -0
- package/lib/module/index.js +48 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/lib/sonner.js +16 -0
- package/lib/module/lib/sonner.js.map +1 -0
- package/lib/module/models/interfaces.js +2 -0
- package/lib/module/models/interfaces.js.map +1 -0
- package/lib/module/models/secureSession.js +2 -0
- package/lib/module/models/secureSession.js.map +1 -0
- package/lib/module/node/createAuth.js +90 -0
- package/lib/module/node/createAuth.js.map +1 -0
- package/lib/module/node/index.js +27 -0
- package/lib/module/node/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/ui/components/Avatar.js +93 -0
- package/lib/module/ui/components/Avatar.js.map +1 -0
- package/lib/module/ui/components/FollowButton.js +241 -0
- package/lib/module/ui/components/FollowButton.js.map +1 -0
- package/lib/module/ui/components/FontLoader.js +176 -0
- package/lib/module/ui/components/FontLoader.js.map +1 -0
- package/lib/module/ui/components/GroupedItem.js +104 -0
- package/lib/module/ui/components/GroupedItem.js.map +1 -0
- package/lib/module/ui/components/GroupedSection.js +28 -0
- package/lib/module/ui/components/GroupedSection.js.map +1 -0
- package/lib/module/ui/components/OxyLogo.js +49 -0
- package/lib/module/ui/components/OxyLogo.js.map +1 -0
- package/lib/module/ui/components/OxyProvider.js +516 -0
- package/lib/module/ui/components/OxyProvider.js.map +1 -0
- package/lib/module/ui/components/OxySignInButton.js +172 -0
- package/lib/module/ui/components/OxySignInButton.js.map +1 -0
- package/lib/module/ui/components/ProfileCard.js +119 -0
- package/lib/module/ui/components/ProfileCard.js.map +1 -0
- package/lib/module/ui/components/QuickActions.js +82 -0
- package/lib/module/ui/components/QuickActions.js.map +1 -0
- package/lib/module/ui/components/Section.js +31 -0
- package/lib/module/ui/components/Section.js.map +1 -0
- package/lib/module/ui/components/SectionTitle.js +30 -0
- package/lib/module/ui/components/SectionTitle.js.map +1 -0
- package/lib/module/ui/components/bottomSheet/index.js +5 -0
- package/lib/module/ui/components/bottomSheet/index.js.map +1 -0
- package/lib/module/ui/components/icon/OxyIcon.js +22 -0
- package/lib/module/ui/components/icon/OxyIcon.js.map +1 -0
- package/lib/module/ui/components/icon/index.js +4 -0
- package/lib/module/ui/components/icon/index.js.map +1 -0
- package/lib/module/ui/components/index.js +18 -0
- package/lib/module/ui/components/index.js.map +1 -0
- package/lib/module/ui/components/internal/GroupedPillButtons.js +208 -0
- package/lib/module/ui/components/internal/GroupedPillButtons.js.map +1 -0
- package/lib/module/ui/components/internal/TextField.js +571 -0
- package/lib/module/ui/components/internal/TextField.js.map +1 -0
- package/lib/module/ui/context/OxyContext.js +579 -0
- package/lib/module/ui/context/OxyContext.js.map +1 -0
- package/lib/module/ui/index.js +26 -0
- package/lib/module/ui/index.js.map +1 -0
- package/lib/module/ui/navigation/OxyRouter.js +262 -0
- package/lib/module/ui/navigation/OxyRouter.js.map +1 -0
- package/lib/module/ui/navigation/types.js +4 -0
- package/lib/module/ui/navigation/types.js.map +1 -0
- package/lib/module/ui/screens/AccountCenterScreen.js +308 -0
- package/lib/module/ui/screens/AccountCenterScreen.js.map +1 -0
- package/lib/module/ui/screens/AccountManagementDemo.js +296 -0
- package/lib/module/ui/screens/AccountManagementDemo.js.map +1 -0
- package/lib/module/ui/screens/AccountOverviewScreen.js +849 -0
- package/lib/module/ui/screens/AccountOverviewScreen.js.map +1 -0
- package/lib/module/ui/screens/AccountSettingsScreen.js +837 -0
- package/lib/module/ui/screens/AccountSettingsScreen.js.map +1 -0
- package/lib/module/ui/screens/AccountSwitcherScreen.js +782 -0
- package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -0
- package/lib/module/ui/screens/AppInfoScreen.js +658 -0
- package/lib/module/ui/screens/AppInfoScreen.js.map +1 -0
- package/lib/module/ui/screens/BillingManagementScreen.js +631 -0
- package/lib/module/ui/screens/BillingManagementScreen.js.map +1 -0
- package/lib/module/ui/screens/FeedbackScreen.js +1164 -0
- package/lib/module/ui/screens/FeedbackScreen.js.map +1 -0
- package/lib/module/ui/screens/FileManagementScreen.js +2510 -0
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -0
- package/lib/module/ui/screens/PremiumSubscriptionScreen.js +1615 -0
- package/lib/module/ui/screens/PremiumSubscriptionScreen.js.map +1 -0
- package/lib/module/ui/screens/ProfileScreen.js +444 -0
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -0
- package/lib/module/ui/screens/SessionManagementScreen.js +444 -0
- package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -0
- package/lib/module/ui/screens/SignInScreen.js +876 -0
- package/lib/module/ui/screens/SignInScreen.js.map +1 -0
- package/lib/module/ui/screens/SignUpScreen.js +1030 -0
- package/lib/module/ui/screens/SignUpScreen.js.map +1 -0
- package/lib/module/ui/screens/karma/KarmaAboutScreen.js +83 -0
- package/lib/module/ui/screens/karma/KarmaAboutScreen.js.map +1 -0
- package/lib/module/ui/screens/karma/KarmaCenterScreen.js +358 -0
- package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -0
- package/lib/module/ui/screens/karma/KarmaFAQScreen.js +222 -0
- package/lib/module/ui/screens/karma/KarmaFAQScreen.js.map +1 -0
- package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +142 -0
- package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -0
- package/lib/module/ui/screens/karma/KarmaRewardsScreen.js +122 -0
- package/lib/module/ui/screens/karma/KarmaRewardsScreen.js.map +1 -0
- package/lib/module/ui/screens/karma/KarmaRulesScreen.js +100 -0
- package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -0
- package/lib/module/ui/store/index.js +44 -0
- package/lib/module/ui/store/index.js.map +1 -0
- package/lib/module/ui/styles/FONTS.md +126 -0
- package/lib/module/ui/styles/fonts.js +81 -0
- package/lib/module/ui/styles/fonts.js.map +1 -0
- package/lib/module/ui/styles/index.js +5 -0
- package/lib/module/ui/styles/index.js.map +1 -0
- package/lib/module/ui/styles/theme.js +114 -0
- package/lib/module/ui/styles/theme.js.map +1 -0
- package/lib/module/utils/deviceManager.js +167 -0
- package/lib/module/utils/deviceManager.js.map +1 -0
- package/lib/module/utils/index.js +4 -0
- package/lib/module/utils/index.js.map +1 -0
- package/lib/module/utils/polyfills.js +36 -0
- package/lib/module/utils/polyfills.js.map +1 -0
- package/lib/typescript/assets/icons/OxyServices.d.ts +29 -0
- package/lib/typescript/assets/icons/OxyServices.d.ts.map +1 -0
- package/lib/typescript/assets/illustrations/HighFive.d.ts +9 -0
- package/lib/typescript/assets/illustrations/HighFive.d.ts.map +1 -0
- package/lib/typescript/constants/version.d.ts +14 -0
- package/lib/typescript/constants/version.d.ts.map +1 -0
- package/lib/typescript/core/index.d.ts +603 -0
- package/lib/typescript/core/index.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +20 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/lib/sonner.d.ts +6 -0
- package/lib/typescript/lib/sonner.d.ts.map +1 -0
- package/lib/typescript/models/interfaces.d.ts +179 -0
- package/lib/typescript/models/interfaces.d.ts.map +1 -0
- package/lib/typescript/models/secureSession.d.ts +27 -0
- package/lib/typescript/models/secureSession.d.ts.map +1 -0
- package/lib/typescript/node/createAuth.d.ts +7 -0
- package/lib/typescript/node/createAuth.d.ts.map +1 -0
- package/lib/typescript/node/index.d.ts +13 -0
- package/lib/typescript/node/index.d.ts.map +1 -0
- package/lib/typescript/types/expo-vector-icons.d.ts +3 -0
- package/lib/typescript/types/express.d.ts +5 -0
- package/lib/typescript/types/react-redux.d.ts +5 -0
- package/lib/typescript/ui/components/Avatar.d.ts +62 -0
- package/lib/typescript/ui/components/Avatar.d.ts.map +1 -0
- package/lib/typescript/ui/components/FollowButton.d.ts +92 -0
- package/lib/typescript/ui/components/FollowButton.d.ts.map +1 -0
- package/lib/typescript/ui/components/FontLoader.d.ts +15 -0
- package/lib/typescript/ui/components/FontLoader.d.ts.map +1 -0
- package/lib/typescript/ui/components/GroupedItem.d.ts +17 -0
- package/lib/typescript/ui/components/GroupedItem.d.ts.map +1 -0
- package/lib/typescript/ui/components/GroupedSection.d.ts +19 -0
- package/lib/typescript/ui/components/GroupedSection.d.ts.map +1 -0
- package/lib/typescript/ui/components/OxyLogo.d.ts +29 -0
- package/lib/typescript/ui/components/OxyLogo.d.ts.map +1 -0
- package/lib/typescript/ui/components/OxyProvider.d.ts +12 -0
- package/lib/typescript/ui/components/OxyProvider.d.ts.map +1 -0
- package/lib/typescript/ui/components/OxySignInButton.d.ts +70 -0
- package/lib/typescript/ui/components/OxySignInButton.d.ts.map +1 -0
- package/lib/typescript/ui/components/ProfileCard.d.ts +20 -0
- package/lib/typescript/ui/components/ProfileCard.d.ts.map +1 -0
- package/lib/typescript/ui/components/QuickActions.d.ts +15 -0
- package/lib/typescript/ui/components/QuickActions.d.ts.map +1 -0
- package/lib/typescript/ui/components/Section.d.ts +11 -0
- package/lib/typescript/ui/components/Section.d.ts.map +1 -0
- package/lib/typescript/ui/components/SectionTitle.d.ts +9 -0
- package/lib/typescript/ui/components/SectionTitle.d.ts.map +1 -0
- package/lib/typescript/ui/components/bottomSheet/index.d.ts +4 -0
- package/lib/typescript/ui/components/bottomSheet/index.d.ts.map +1 -0
- package/lib/typescript/ui/components/icon/OxyIcon.d.ts +10 -0
- package/lib/typescript/ui/components/icon/OxyIcon.d.ts.map +1 -0
- package/lib/typescript/ui/components/icon/index.d.ts +3 -0
- package/lib/typescript/ui/components/icon/index.d.ts.map +1 -0
- package/lib/typescript/ui/components/index.d.ts +13 -0
- package/lib/typescript/ui/components/index.d.ts.map +1 -0
- package/lib/typescript/ui/components/internal/GroupedPillButtons.d.ts +18 -0
- package/lib/typescript/ui/components/internal/GroupedPillButtons.d.ts.map +1 -0
- package/lib/typescript/ui/components/internal/TextField.d.ts +25 -0
- package/lib/typescript/ui/components/internal/TextField.d.ts.map +1 -0
- package/lib/typescript/ui/context/OxyContext.d.ts +42 -0
- package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -0
- package/lib/typescript/ui/index.d.ts +17 -0
- package/lib/typescript/ui/index.d.ts.map +1 -0
- package/lib/typescript/ui/navigation/OxyRouter.d.ts +5 -0
- package/lib/typescript/ui/navigation/OxyRouter.d.ts.map +1 -0
- package/lib/typescript/ui/navigation/types.d.ts +116 -0
- package/lib/typescript/ui/navigation/types.d.ts.map +1 -0
- package/lib/typescript/ui/screens/AccountCenterScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/AccountCenterScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/AccountManagementDemo.d.ts +8 -0
- package/lib/typescript/ui/screens/AccountManagementDemo.d.ts.map +1 -0
- package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/AccountOverviewScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/AccountSettingsScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/AccountSwitcherScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/AppInfoScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/AppInfoScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/BillingManagementScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/BillingManagementScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/FeedbackScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/FeedbackScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/FileManagementScreen.d.ts +8 -0
- package/lib/typescript/ui/screens/FileManagementScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/PremiumSubscriptionScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/PremiumSubscriptionScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/ProfileScreen.d.ts +9 -0
- package/lib/typescript/ui/screens/ProfileScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/SessionManagementScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/SessionManagementScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/SignInScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/SignInScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/SignUpScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/SignUpScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/karma/KarmaAboutScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/karma/KarmaCenterScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/karma/KarmaFAQScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/karma/KarmaLeaderboardScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/karma/KarmaRewardsScreen.d.ts.map +1 -0
- package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts +5 -0
- package/lib/typescript/ui/screens/karma/KarmaRulesScreen.d.ts.map +1 -0
- package/lib/typescript/ui/store/index.d.ts +19 -0
- package/lib/typescript/ui/store/index.d.ts.map +1 -0
- package/lib/typescript/ui/styles/fonts.d.ts +21 -0
- package/lib/typescript/ui/styles/fonts.d.ts.map +1 -0
- package/lib/typescript/ui/styles/index.d.ts +3 -0
- package/lib/typescript/ui/styles/index.d.ts.map +1 -0
- package/lib/typescript/ui/styles/theme.d.ts +68 -0
- package/lib/typescript/ui/styles/theme.d.ts.map +1 -0
- package/lib/typescript/utils/deviceManager.d.ts +66 -0
- package/lib/typescript/utils/deviceManager.d.ts.map +1 -0
- package/lib/typescript/utils/index.d.ts +3 -0
- package/lib/typescript/utils/index.d.ts.map +1 -0
- package/lib/typescript/utils/polyfills.d.ts +6 -0
- package/lib/typescript/utils/polyfills.d.ts.map +1 -0
- package/package.json +7 -6
- package/src/assets/illustrations/HighFive.tsx +41 -0
- package/src/node/createAuth.ts +116 -0
- package/src/node/index.ts +4 -0
- package/src/types/expo-vector-icons.d.ts +3 -0
- package/src/types/express.d.ts +5 -0
- package/src/types/react-redux.d.ts +5 -0
- package/src/ui/components/OxyProvider.tsx +136 -135
- package/src/ui/components/internal/GroupedPillButtons.tsx +253 -0
- package/src/ui/components/internal/TextField.tsx +694 -0
- package/src/ui/index.ts +6 -2
- package/src/ui/navigation/OxyRouter.tsx +8 -3
- package/src/ui/screens/FeedbackScreen.tsx +1042 -0
- package/src/ui/screens/SignInScreen.tsx +179 -222
- package/src/ui/screens/SignUpScreen.tsx +772 -608
- 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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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"}
|