@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,516 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { useCallback, useRef, useState, useEffect, useMemo } from 'react';
|
|
4
|
+
import { View, StyleSheet, Dimensions, Platform, Animated, StatusBar, Keyboard } from 'react-native';
|
|
5
|
+
import { SafeAreaProvider, useSafeAreaInsets } from 'react-native-safe-area-context';
|
|
6
|
+
import { GestureHandlerRootView } from 'react-native-gesture-handler';
|
|
7
|
+
import { OxyContextProvider } from '../context/OxyContext';
|
|
8
|
+
import { Provider } from 'react-redux';
|
|
9
|
+
import { store } from '../store';
|
|
10
|
+
import OxyRouter from '../navigation/OxyRouter';
|
|
11
|
+
import { FontLoader, setupFonts } from './FontLoader';
|
|
12
|
+
import { Toaster } from '../../lib/sonner';
|
|
13
|
+
|
|
14
|
+
// Import bottom sheet components directly - no longer a peer dependency
|
|
15
|
+
import { BottomSheetModal, BottomSheetBackdrop, BottomSheetModalProvider, BottomSheetScrollView } from './bottomSheet';
|
|
16
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
17
|
+
// Initialize fonts automatically
|
|
18
|
+
setupFonts();
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Enhanced OxyProvider component
|
|
22
|
+
*
|
|
23
|
+
* This component serves two purposes:
|
|
24
|
+
* 1. As a context provider for authentication and session management across the app
|
|
25
|
+
* 2. As a UI component for authentication and account management using a bottom sheet
|
|
26
|
+
*/
|
|
27
|
+
const OxyProvider = props => {
|
|
28
|
+
const {
|
|
29
|
+
oxyServices,
|
|
30
|
+
children,
|
|
31
|
+
contextOnly = false,
|
|
32
|
+
onAuthStateChange,
|
|
33
|
+
storageKeyPrefix,
|
|
34
|
+
showInternalToaster = true,
|
|
35
|
+
...bottomSheetProps
|
|
36
|
+
} = props;
|
|
37
|
+
|
|
38
|
+
// Create internal bottom sheet ref
|
|
39
|
+
const internalBottomSheetRef = useRef(null);
|
|
40
|
+
|
|
41
|
+
// If contextOnly is true, we just provide the context without the bottom sheet UI
|
|
42
|
+
if (contextOnly) {
|
|
43
|
+
return /*#__PURE__*/_jsx(Provider, {
|
|
44
|
+
store: store,
|
|
45
|
+
children: /*#__PURE__*/_jsx(OxyContextProvider, {
|
|
46
|
+
oxyServices: oxyServices,
|
|
47
|
+
storageKeyPrefix: storageKeyPrefix,
|
|
48
|
+
onAuthStateChange: onAuthStateChange,
|
|
49
|
+
children: children
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
// Otherwise, provide both the context and the bottom sheet UI
|
|
55
|
+
return /*#__PURE__*/_jsx(Provider, {
|
|
56
|
+
store: store,
|
|
57
|
+
children: /*#__PURE__*/_jsx(OxyContextProvider, {
|
|
58
|
+
oxyServices: oxyServices,
|
|
59
|
+
storageKeyPrefix: storageKeyPrefix,
|
|
60
|
+
onAuthStateChange: onAuthStateChange,
|
|
61
|
+
bottomSheetRef: internalBottomSheetRef,
|
|
62
|
+
children: /*#__PURE__*/_jsx(FontLoader, {
|
|
63
|
+
children: /*#__PURE__*/_jsxs(GestureHandlerRootView, {
|
|
64
|
+
style: styles.gestureHandlerRoot,
|
|
65
|
+
children: [/*#__PURE__*/_jsxs(BottomSheetModalProvider, {
|
|
66
|
+
children: [/*#__PURE__*/_jsx(StatusBar, {
|
|
67
|
+
translucent: true,
|
|
68
|
+
backgroundColor: "transparent"
|
|
69
|
+
}), /*#__PURE__*/_jsxs(SafeAreaProvider, {
|
|
70
|
+
children: [/*#__PURE__*/_jsx(OxyBottomSheet, {
|
|
71
|
+
...bottomSheetProps,
|
|
72
|
+
bottomSheetRef: internalBottomSheetRef,
|
|
73
|
+
oxyServices: oxyServices
|
|
74
|
+
}), children]
|
|
75
|
+
})]
|
|
76
|
+
}), !showInternalToaster && /*#__PURE__*/_jsx(View, {
|
|
77
|
+
style: styles.toasterContainer,
|
|
78
|
+
children: /*#__PURE__*/_jsx(Toaster, {
|
|
79
|
+
position: "top-center",
|
|
80
|
+
swipeToDismissDirection: "left",
|
|
81
|
+
offset: 15
|
|
82
|
+
})
|
|
83
|
+
})]
|
|
84
|
+
})
|
|
85
|
+
})
|
|
86
|
+
})
|
|
87
|
+
});
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* OxyBottomSheet component - A bottom sheet-based authentication and account management UI
|
|
92
|
+
*
|
|
93
|
+
* This is the original OxyProvider UI functionality, now extracted into its own component
|
|
94
|
+
* and reimplemented using BottomSheetModal for better Android compatibility
|
|
95
|
+
*/
|
|
96
|
+
const OxyBottomSheet = ({
|
|
97
|
+
oxyServices,
|
|
98
|
+
initialScreen = 'SignIn',
|
|
99
|
+
onClose,
|
|
100
|
+
onAuthenticated,
|
|
101
|
+
theme = 'light',
|
|
102
|
+
customStyles = {},
|
|
103
|
+
bottomSheetRef,
|
|
104
|
+
autoPresent = false,
|
|
105
|
+
showInternalToaster = true
|
|
106
|
+
}) => {
|
|
107
|
+
// Use the internal ref (which is passed as a prop from OxyProvider)
|
|
108
|
+
const modalRef = useRef(null);
|
|
109
|
+
|
|
110
|
+
// Create a ref to store the navigation function from OxyRouter
|
|
111
|
+
const navigationRef = useRef(null);
|
|
112
|
+
|
|
113
|
+
// Track content height for dynamic sizing
|
|
114
|
+
const [contentHeight, setContentHeight] = useState(0);
|
|
115
|
+
const [containerWidth, setContainerWidth] = useState(800); // Track actual container width
|
|
116
|
+
const screenHeight = Dimensions.get('window').height;
|
|
117
|
+
|
|
118
|
+
// Set up effect to sync the internal ref with our modal ref
|
|
119
|
+
useEffect(() => {
|
|
120
|
+
if (bottomSheetRef && modalRef.current) {
|
|
121
|
+
// We need to expose certain methods to the internal ref
|
|
122
|
+
const methodsToExpose = ['snapToIndex', 'snapToPosition', 'close', 'expand', 'collapse', 'present', 'dismiss'];
|
|
123
|
+
methodsToExpose.forEach(method => {
|
|
124
|
+
if (modalRef.current && typeof modalRef.current[method] === 'function') {
|
|
125
|
+
// Properly forward methods from modalRef to bottomSheetRef
|
|
126
|
+
// @ts-ignore - We're doing a runtime compatibility layer
|
|
127
|
+
bottomSheetRef.current = bottomSheetRef.current || {};
|
|
128
|
+
// @ts-ignore - Dynamic method assignment
|
|
129
|
+
bottomSheetRef.current[method] = (...args) => {
|
|
130
|
+
// @ts-ignore - Dynamic method call
|
|
131
|
+
return modalRef.current?.[method]?.(...args);
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
// Add a method to navigate between screens
|
|
137
|
+
// @ts-ignore - Adding custom method
|
|
138
|
+
bottomSheetRef.current._navigateToScreen = (screenName, props) => {
|
|
139
|
+
console.log(`Navigation requested: ${screenName}`, props);
|
|
140
|
+
|
|
141
|
+
// Try direct navigation function first (most reliable)
|
|
142
|
+
if (navigationRef.current) {
|
|
143
|
+
console.log('Using direct navigation function');
|
|
144
|
+
navigationRef.current(screenName, props);
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
// Fallback to event-based navigation
|
|
149
|
+
if (typeof document !== 'undefined') {
|
|
150
|
+
// For web - use a custom event
|
|
151
|
+
console.log('Using web event navigation');
|
|
152
|
+
const event = new CustomEvent('oxy:navigate', {
|
|
153
|
+
detail: {
|
|
154
|
+
screen: screenName,
|
|
155
|
+
props
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
document.dispatchEvent(event);
|
|
159
|
+
} else {
|
|
160
|
+
// For React Native - use the global variable approach
|
|
161
|
+
console.log('Using React Native global navigation');
|
|
162
|
+
globalThis.oxyNavigateEvent = {
|
|
163
|
+
screen: screenName,
|
|
164
|
+
props
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
}, [bottomSheetRef, modalRef]);
|
|
170
|
+
|
|
171
|
+
// Use percentage-based snap points for better cross-platform compatibility
|
|
172
|
+
const [snapPoints, setSnapPoints] = useState(['60%', '90%']);
|
|
173
|
+
|
|
174
|
+
// Animation values - we'll use these for content animations
|
|
175
|
+
// Start with opacity 1 on Android to avoid visibility issues
|
|
176
|
+
const fadeAnim = useRef(new Animated.Value(Platform.OS === 'android' ? 1 : 0)).current;
|
|
177
|
+
const slideAnim = useRef(new Animated.Value(Platform.OS === 'android' ? 0 : 50)).current;
|
|
178
|
+
|
|
179
|
+
// Track keyboard status
|
|
180
|
+
const [keyboardVisible, setKeyboardVisible] = useState(false);
|
|
181
|
+
const insets = useSafeAreaInsets();
|
|
182
|
+
|
|
183
|
+
// Handle keyboard events - memoized to prevent re-registration
|
|
184
|
+
useEffect(() => {
|
|
185
|
+
const keyboardWillShowListener = Keyboard.addListener(Platform.OS === 'ios' ? 'keyboardWillShow' : 'keyboardDidShow', event => {
|
|
186
|
+
setKeyboardVisible(true);
|
|
187
|
+
// Ensure the bottom sheet remains visible when keyboard opens
|
|
188
|
+
// by adjusting to the highest snap point
|
|
189
|
+
if (modalRef.current) {
|
|
190
|
+
// Use requestAnimationFrame to avoid conflicts
|
|
191
|
+
requestAnimationFrame(() => {
|
|
192
|
+
modalRef.current?.snapToIndex(1);
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
});
|
|
196
|
+
const keyboardWillHideListener = Keyboard.addListener(Platform.OS === 'ios' ? 'keyboardWillHide' : 'keyboardDidHide', () => {
|
|
197
|
+
setKeyboardVisible(false);
|
|
198
|
+
});
|
|
199
|
+
|
|
200
|
+
// Cleanup listeners
|
|
201
|
+
return () => {
|
|
202
|
+
keyboardWillShowListener.remove();
|
|
203
|
+
keyboardWillHideListener.remove();
|
|
204
|
+
};
|
|
205
|
+
}, []); // Remove keyboardVisible dependency to prevent re-registration
|
|
206
|
+
|
|
207
|
+
// Present the modal when component mounts, but only if autoPresent is true
|
|
208
|
+
useEffect(() => {
|
|
209
|
+
// Add expand method that handles presentation and animations
|
|
210
|
+
if (bottomSheetRef && modalRef.current) {
|
|
211
|
+
// Override expand to handle initial presentation
|
|
212
|
+
// @ts-ignore - Dynamic method assignment
|
|
213
|
+
bottomSheetRef.current.expand = () => {
|
|
214
|
+
// Only present if not already presented
|
|
215
|
+
modalRef.current?.present();
|
|
216
|
+
|
|
217
|
+
// Start content animations after presenting
|
|
218
|
+
Animated.parallel([Animated.timing(fadeAnim, {
|
|
219
|
+
toValue: 1,
|
|
220
|
+
duration: 300,
|
|
221
|
+
useNativeDriver: Platform.OS === 'ios' // Only use native driver on iOS
|
|
222
|
+
}), Animated.spring(slideAnim, {
|
|
223
|
+
toValue: 0,
|
|
224
|
+
friction: 8,
|
|
225
|
+
tension: 40,
|
|
226
|
+
useNativeDriver: Platform.OS === 'ios' // Only use native driver on iOS
|
|
227
|
+
})]).start();
|
|
228
|
+
};
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
// Auto-present if the autoPresent prop is true
|
|
232
|
+
if (autoPresent && modalRef.current) {
|
|
233
|
+
// Small delay to allow everything to initialize
|
|
234
|
+
const timer = setTimeout(() => {
|
|
235
|
+
modalRef.current?.present();
|
|
236
|
+
|
|
237
|
+
// Start content animations after presenting
|
|
238
|
+
Animated.parallel([Animated.timing(fadeAnim, {
|
|
239
|
+
toValue: 1,
|
|
240
|
+
duration: 300,
|
|
241
|
+
useNativeDriver: Platform.OS === 'ios' // Only use native driver on iOS
|
|
242
|
+
}), Animated.spring(slideAnim, {
|
|
243
|
+
toValue: 0,
|
|
244
|
+
friction: 8,
|
|
245
|
+
tension: 40,
|
|
246
|
+
useNativeDriver: Platform.OS === 'ios' // Only use native driver on iOS
|
|
247
|
+
})]).start();
|
|
248
|
+
}, 100);
|
|
249
|
+
return () => clearTimeout(timer);
|
|
250
|
+
}
|
|
251
|
+
}, [bottomSheetRef, modalRef, fadeAnim, slideAnim, autoPresent]);
|
|
252
|
+
|
|
253
|
+
// Close the bottom sheet with animation
|
|
254
|
+
const handleClose = useCallback(() => {
|
|
255
|
+
// Animate content out
|
|
256
|
+
Animated.timing(fadeAnim, {
|
|
257
|
+
toValue: 0,
|
|
258
|
+
duration: Platform.OS === 'android' ? 100 : 200,
|
|
259
|
+
// Faster on Android
|
|
260
|
+
useNativeDriver: Platform.OS === 'ios' // Only use native driver on iOS
|
|
261
|
+
}).start(() => {
|
|
262
|
+
// Dismiss the sheet
|
|
263
|
+
modalRef.current?.dismiss();
|
|
264
|
+
if (onClose) {
|
|
265
|
+
setTimeout(() => {
|
|
266
|
+
onClose();
|
|
267
|
+
}, Platform.OS === 'android' ? 150 : 100);
|
|
268
|
+
}
|
|
269
|
+
});
|
|
270
|
+
}, [onClose, fadeAnim]);
|
|
271
|
+
|
|
272
|
+
// Handle authentication success from the bottom sheet screens
|
|
273
|
+
const handleAuthenticated = useCallback(user => {
|
|
274
|
+
// Stop any ongoing animations that might interfere with dismissal
|
|
275
|
+
fadeAnim.stopAnimation();
|
|
276
|
+
slideAnim.stopAnimation();
|
|
277
|
+
|
|
278
|
+
// Call the prop callback if provided
|
|
279
|
+
if (onAuthenticated) {
|
|
280
|
+
onAuthenticated(user);
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
// Automatically dismiss the bottom sheet after successful authentication
|
|
284
|
+
// Use direct dismissal for immediate closure
|
|
285
|
+
modalRef.current?.dismiss();
|
|
286
|
+
|
|
287
|
+
// Call onClose callback if provided
|
|
288
|
+
if (onClose) {
|
|
289
|
+
setTimeout(() => {
|
|
290
|
+
onClose();
|
|
291
|
+
}, 100);
|
|
292
|
+
}
|
|
293
|
+
}, [onAuthenticated, onClose, fadeAnim, slideAnim]);
|
|
294
|
+
|
|
295
|
+
// Remove handle animation to prevent conflicts with bottom sheet animations
|
|
296
|
+
|
|
297
|
+
// Handle backdrop rendering
|
|
298
|
+
const renderBackdrop = useCallback(props => /*#__PURE__*/_jsx(BottomSheetBackdrop, {
|
|
299
|
+
...props,
|
|
300
|
+
disappearsOnIndex: -1,
|
|
301
|
+
appearsOnIndex: 0,
|
|
302
|
+
opacity: 0.5
|
|
303
|
+
}), []);
|
|
304
|
+
|
|
305
|
+
// Memoize background style based on theme to prevent recalculation on every render
|
|
306
|
+
const backgroundStyle = useMemo(() => {
|
|
307
|
+
const baseColor = customStyles.backgroundColor || (theme === 'light' ? '#FFFFFF' : '#121212');
|
|
308
|
+
return {
|
|
309
|
+
backgroundColor: baseColor,
|
|
310
|
+
// Make sure there's no transparency
|
|
311
|
+
opacity: 1,
|
|
312
|
+
// Additional Android-specific styles
|
|
313
|
+
...Platform.select({
|
|
314
|
+
android: {
|
|
315
|
+
elevation: 24
|
|
316
|
+
}
|
|
317
|
+
})
|
|
318
|
+
};
|
|
319
|
+
}, [customStyles.backgroundColor, theme]);
|
|
320
|
+
|
|
321
|
+
// Method to adjust snap points from Router - memoized with stable dependencies
|
|
322
|
+
const adjustSnapPoints = useCallback(points => {
|
|
323
|
+
setSnapPoints(prevSnapPoints => {
|
|
324
|
+
// Ensure snap points are high enough when keyboard is visible
|
|
325
|
+
if (keyboardVisible) {
|
|
326
|
+
// If keyboard is visible, make sure we use higher snap points
|
|
327
|
+
// to ensure the sheet content remains visible
|
|
328
|
+
const highestPoint = points[points.length - 1];
|
|
329
|
+
const newSnapPoints = [highestPoint, highestPoint];
|
|
330
|
+
// Only update if actually different
|
|
331
|
+
if (JSON.stringify(prevSnapPoints) !== JSON.stringify(newSnapPoints)) {
|
|
332
|
+
return newSnapPoints;
|
|
333
|
+
}
|
|
334
|
+
return prevSnapPoints;
|
|
335
|
+
} else {
|
|
336
|
+
// If we have content height, use it as a constraint
|
|
337
|
+
if (contentHeight > 0) {
|
|
338
|
+
// Calculate content height as percentage of screen (plus some padding)
|
|
339
|
+
// Clamp to ensure we don't exceed 90% to leave space for UI elements
|
|
340
|
+
const contentHeightPercent = Math.min(Math.ceil(contentHeight / screenHeight * 100), 90);
|
|
341
|
+
const contentHeightPercentStr = `${contentHeightPercent}%`;
|
|
342
|
+
// Use content height for first snap point if it's taller than the default
|
|
343
|
+
const firstPoint = contentHeight / screenHeight > 0.6 ? contentHeightPercentStr : points[0];
|
|
344
|
+
const newSnapPoints = [firstPoint, points[1] || '90%'];
|
|
345
|
+
// Only update if actually different
|
|
346
|
+
if (JSON.stringify(prevSnapPoints) !== JSON.stringify(newSnapPoints)) {
|
|
347
|
+
return newSnapPoints;
|
|
348
|
+
}
|
|
349
|
+
return prevSnapPoints;
|
|
350
|
+
} else {
|
|
351
|
+
// Only update if actually different
|
|
352
|
+
if (JSON.stringify(prevSnapPoints) !== JSON.stringify(points)) {
|
|
353
|
+
return points;
|
|
354
|
+
}
|
|
355
|
+
return prevSnapPoints;
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
});
|
|
359
|
+
}, [keyboardVisible, contentHeight, screenHeight]);
|
|
360
|
+
|
|
361
|
+
// Handle content layout changes to measure height and width - prevent rerender loops
|
|
362
|
+
const handleContentLayout = useCallback(event => {
|
|
363
|
+
const {
|
|
364
|
+
height: layoutHeight,
|
|
365
|
+
width: layoutWidth
|
|
366
|
+
} = event.nativeEvent.layout;
|
|
367
|
+
|
|
368
|
+
// Only update if values actually changed to prevent unnecessary rerenders
|
|
369
|
+
setContentHeight(prevHeight => {
|
|
370
|
+
if (Math.abs(prevHeight - layoutHeight) > 5) {
|
|
371
|
+
// 5px threshold to prevent minor fluctuations
|
|
372
|
+
return layoutHeight;
|
|
373
|
+
}
|
|
374
|
+
return prevHeight;
|
|
375
|
+
});
|
|
376
|
+
setContainerWidth(prevWidth => {
|
|
377
|
+
if (Math.abs(prevWidth - layoutWidth) > 5) {
|
|
378
|
+
// 5px threshold to prevent minor fluctuations
|
|
379
|
+
return layoutWidth;
|
|
380
|
+
}
|
|
381
|
+
return prevWidth;
|
|
382
|
+
});
|
|
383
|
+
}, []); // Remove dependencies that cause rerender loops
|
|
384
|
+
|
|
385
|
+
// Handle sheet index changes - simplified to prevent unnecessary rerenders
|
|
386
|
+
const handleSheetChanges = useCallback(index => {
|
|
387
|
+
// Sheet change handling can be added here if needed
|
|
388
|
+
}, []);
|
|
389
|
+
return /*#__PURE__*/_jsxs(BottomSheetModal, {
|
|
390
|
+
ref: modalRef,
|
|
391
|
+
index: 0,
|
|
392
|
+
snapPoints: snapPoints,
|
|
393
|
+
enablePanDownToClose: true,
|
|
394
|
+
backdropComponent: renderBackdrop,
|
|
395
|
+
backgroundStyle: [backgroundStyle, {
|
|
396
|
+
borderTopLeftRadius: 35,
|
|
397
|
+
borderTopRightRadius: 35
|
|
398
|
+
}],
|
|
399
|
+
handleIndicatorStyle: {
|
|
400
|
+
backgroundColor: customStyles.handleColor || (theme === 'light' ? '#CCCCCC' : '#444444'),
|
|
401
|
+
width: 40,
|
|
402
|
+
height: 4
|
|
403
|
+
},
|
|
404
|
+
onChange: handleSheetChanges,
|
|
405
|
+
style: styles.bottomSheetContainer
|
|
406
|
+
// Adding additional props to improve layout behavior
|
|
407
|
+
,
|
|
408
|
+
keyboardBehavior: "interactive",
|
|
409
|
+
keyboardBlurBehavior: "restore",
|
|
410
|
+
android_keyboardInputMode: "adjustResize",
|
|
411
|
+
enableOverDrag: true,
|
|
412
|
+
enableContentPanningGesture: true,
|
|
413
|
+
enableHandlePanningGesture: true,
|
|
414
|
+
overDragResistanceFactor: 2.5,
|
|
415
|
+
enableBlurKeyboardOnGesture: true
|
|
416
|
+
// Log sheet animations for debugging
|
|
417
|
+
,
|
|
418
|
+
onAnimate: (fromIndex, toIndex) => {
|
|
419
|
+
console.log(`Animating from index ${fromIndex} to ${toIndex}`);
|
|
420
|
+
},
|
|
421
|
+
children: [/*#__PURE__*/_jsx(BottomSheetScrollView, {
|
|
422
|
+
style: [styles.contentContainer,
|
|
423
|
+
// Override padding if provided in customStyles
|
|
424
|
+
customStyles.contentPadding !== undefined && {
|
|
425
|
+
padding: customStyles.contentPadding
|
|
426
|
+
}],
|
|
427
|
+
onLayout: handleContentLayout,
|
|
428
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
429
|
+
style: styles.centeredContentWrapper,
|
|
430
|
+
children: /*#__PURE__*/_jsx(Animated.View, {
|
|
431
|
+
style: [styles.animatedContent,
|
|
432
|
+
// Apply animations - conditionally for Android
|
|
433
|
+
Platform.OS === 'android' ? {
|
|
434
|
+
opacity: 1 // No fade animation on Android
|
|
435
|
+
} : {
|
|
436
|
+
opacity: fadeAnim,
|
|
437
|
+
transform: [{
|
|
438
|
+
translateY: slideAnim
|
|
439
|
+
}]
|
|
440
|
+
}],
|
|
441
|
+
children: /*#__PURE__*/_jsx(OxyRouter, {
|
|
442
|
+
oxyServices: oxyServices,
|
|
443
|
+
initialScreen: initialScreen,
|
|
444
|
+
onClose: handleClose,
|
|
445
|
+
onAuthenticated: handleAuthenticated,
|
|
446
|
+
theme: theme,
|
|
447
|
+
adjustSnapPoints: adjustSnapPoints,
|
|
448
|
+
navigationRef: navigationRef,
|
|
449
|
+
containerWidth: containerWidth
|
|
450
|
+
})
|
|
451
|
+
})
|
|
452
|
+
})
|
|
453
|
+
}), showInternalToaster && /*#__PURE__*/_jsx(View, {
|
|
454
|
+
style: styles.toasterContainer,
|
|
455
|
+
children: /*#__PURE__*/_jsx(Toaster, {
|
|
456
|
+
position: "top-center",
|
|
457
|
+
swipeToDismissDirection: "left"
|
|
458
|
+
})
|
|
459
|
+
})]
|
|
460
|
+
});
|
|
461
|
+
};
|
|
462
|
+
const styles = StyleSheet.create({
|
|
463
|
+
bottomSheetContainer: {
|
|
464
|
+
maxWidth: 800,
|
|
465
|
+
width: '100%',
|
|
466
|
+
marginHorizontal: 'auto'
|
|
467
|
+
},
|
|
468
|
+
contentContainer: {
|
|
469
|
+
width: '100%',
|
|
470
|
+
borderTopLeftRadius: 35,
|
|
471
|
+
borderTopRightRadius: 35
|
|
472
|
+
},
|
|
473
|
+
centeredContentWrapper: {
|
|
474
|
+
width: '100%',
|
|
475
|
+
marginHorizontal: 'auto'
|
|
476
|
+
},
|
|
477
|
+
animatedContent: {
|
|
478
|
+
width: '100%'
|
|
479
|
+
},
|
|
480
|
+
indicator: {
|
|
481
|
+
width: 40,
|
|
482
|
+
height: 4,
|
|
483
|
+
marginTop: 8,
|
|
484
|
+
marginBottom: 8,
|
|
485
|
+
borderRadius: 35
|
|
486
|
+
},
|
|
487
|
+
errorContainer: {
|
|
488
|
+
flex: 1,
|
|
489
|
+
justifyContent: 'center',
|
|
490
|
+
alignItems: 'center'
|
|
491
|
+
},
|
|
492
|
+
gestureHandlerRoot: {
|
|
493
|
+
flex: 1,
|
|
494
|
+
position: 'relative',
|
|
495
|
+
backgroundColor: 'transparent',
|
|
496
|
+
...Platform.select({
|
|
497
|
+
android: {
|
|
498
|
+
height: '100%',
|
|
499
|
+
width: '100%'
|
|
500
|
+
}
|
|
501
|
+
})
|
|
502
|
+
},
|
|
503
|
+
toasterContainer: {
|
|
504
|
+
position: 'absolute',
|
|
505
|
+
top: 0,
|
|
506
|
+
left: 0,
|
|
507
|
+
right: 0,
|
|
508
|
+
bottom: 0,
|
|
509
|
+
zIndex: 9999,
|
|
510
|
+
elevation: 9999,
|
|
511
|
+
// For Android
|
|
512
|
+
pointerEvents: 'box-none' // Allow touches to pass through to underlying components
|
|
513
|
+
}
|
|
514
|
+
});
|
|
515
|
+
export default OxyProvider;
|
|
516
|
+
//# sourceMappingURL=OxyProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useCallback","useRef","useState","useEffect","useMemo","View","StyleSheet","Dimensions","Platform","Animated","StatusBar","Keyboard","SafeAreaProvider","useSafeAreaInsets","GestureHandlerRootView","OxyContextProvider","Provider","store","OxyRouter","FontLoader","setupFonts","Toaster","BottomSheetModal","BottomSheetBackdrop","BottomSheetModalProvider","BottomSheetScrollView","jsx","_jsx","jsxs","_jsxs","OxyProvider","props","oxyServices","children","contextOnly","onAuthStateChange","storageKeyPrefix","showInternalToaster","bottomSheetProps","internalBottomSheetRef","bottomSheetRef","style","styles","gestureHandlerRoot","translucent","backgroundColor","OxyBottomSheet","toasterContainer","position","swipeToDismissDirection","offset","initialScreen","onClose","onAuthenticated","theme","customStyles","autoPresent","modalRef","navigationRef","contentHeight","setContentHeight","containerWidth","setContainerWidth","screenHeight","get","height","current","methodsToExpose","forEach","method","args","_navigateToScreen","screenName","console","log","document","event","CustomEvent","detail","screen","dispatchEvent","globalThis","oxyNavigateEvent","snapPoints","setSnapPoints","fadeAnim","Value","OS","slideAnim","keyboardVisible","setKeyboardVisible","insets","keyboardWillShowListener","addListener","requestAnimationFrame","snapToIndex","keyboardWillHideListener","remove","expand","present","parallel","timing","toValue","duration","useNativeDriver","spring","friction","tension","start","timer","setTimeout","clearTimeout","handleClose","dismiss","handleAuthenticated","user","stopAnimation","renderBackdrop","disappearsOnIndex","appearsOnIndex","opacity","backgroundStyle","baseColor","select","android","elevation","adjustSnapPoints","points","prevSnapPoints","highestPoint","length","newSnapPoints","JSON","stringify","contentHeightPercent","Math","min","ceil","contentHeightPercentStr","firstPoint","handleContentLayout","layoutHeight","width","layoutWidth","nativeEvent","layout","prevHeight","abs","prevWidth","handleSheetChanges","index","ref","enablePanDownToClose","backdropComponent","borderTopLeftRadius","borderTopRightRadius","handleIndicatorStyle","handleColor","onChange","bottomSheetContainer","keyboardBehavior","keyboardBlurBehavior","android_keyboardInputMode","enableOverDrag","enableContentPanningGesture","enableHandlePanningGesture","overDragResistanceFactor","enableBlurKeyboardOnGesture","onAnimate","fromIndex","toIndex","contentContainer","contentPadding","undefined","padding","onLayout","centeredContentWrapper","animatedContent","transform","translateY","create","maxWidth","marginHorizontal","indicator","marginTop","marginBottom","borderRadius","errorContainer","flex","justifyContent","alignItems","top","left","right","bottom","zIndex","pointerEvents"],"sourceRoot":"../../../../src","sources":["ui/components/OxyProvider.tsx"],"mappings":"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","ignoreList":[]}
|