@varity-labs/ui-kit 2.0.0-alpha.1
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/LICENSE +31 -0
- package/README.md +248 -0
- package/dist/components/AI/ChatbotWidget.d.ts +53 -0
- package/dist/components/AI/ChatbotWidget.d.ts.map +1 -0
- package/dist/components/AI/ChatbotWidget.js +126 -0
- package/dist/components/AI/ChatbotWidget.js.map +1 -0
- package/dist/components/AI/InputBar.d.ts +25 -0
- package/dist/components/AI/InputBar.d.ts.map +1 -0
- package/dist/components/AI/InputBar.js +126 -0
- package/dist/components/AI/InputBar.js.map +1 -0
- package/dist/components/AI/MessageBubble.d.ts +37 -0
- package/dist/components/AI/MessageBubble.d.ts.map +1 -0
- package/dist/components/AI/MessageBubble.js +124 -0
- package/dist/components/AI/MessageBubble.js.map +1 -0
- package/dist/components/AI/index.d.ts +12 -0
- package/dist/components/AI/index.d.ts.map +1 -0
- package/dist/components/AI/index.js +9 -0
- package/dist/components/AI/index.js.map +1 -0
- package/dist/components/Analytics/AnalyticsCard.d.ts +48 -0
- package/dist/components/Analytics/AnalyticsCard.d.ts.map +1 -0
- package/dist/components/Analytics/AnalyticsCard.js +156 -0
- package/dist/components/Analytics/AnalyticsCard.js.map +1 -0
- package/dist/components/Analytics/ChartContainer.d.ts +53 -0
- package/dist/components/Analytics/ChartContainer.d.ts.map +1 -0
- package/dist/components/Analytics/ChartContainer.js +128 -0
- package/dist/components/Analytics/ChartContainer.js.map +1 -0
- package/dist/components/Analytics/DataTable.d.ts +62 -0
- package/dist/components/Analytics/DataTable.d.ts.map +1 -0
- package/dist/components/Analytics/DataTable.js +165 -0
- package/dist/components/Analytics/DataTable.js.map +1 -0
- package/dist/components/Analytics/MetricDisplay.d.ts +42 -0
- package/dist/components/Analytics/MetricDisplay.d.ts.map +1 -0
- package/dist/components/Analytics/MetricDisplay.js +110 -0
- package/dist/components/Analytics/MetricDisplay.js.map +1 -0
- package/dist/components/Analytics/index.d.ts +14 -0
- package/dist/components/Analytics/index.d.ts.map +1 -0
- package/dist/components/Analytics/index.js +10 -0
- package/dist/components/Analytics/index.js.map +1 -0
- package/dist/components/Branding/Attribution.d.ts +39 -0
- package/dist/components/Branding/Attribution.d.ts.map +1 -0
- package/dist/components/Branding/Attribution.js +124 -0
- package/dist/components/Branding/Attribution.js.map +1 -0
- package/dist/components/Branding/Logo.d.ts +39 -0
- package/dist/components/Branding/Logo.d.ts.map +1 -0
- package/dist/components/Branding/Logo.js +67 -0
- package/dist/components/Branding/Logo.js.map +1 -0
- package/dist/components/Branding/ThemeProvider.d.ts +85 -0
- package/dist/components/Branding/ThemeProvider.d.ts.map +1 -0
- package/dist/components/Branding/ThemeProvider.js +186 -0
- package/dist/components/Branding/ThemeProvider.js.map +1 -0
- package/dist/components/Branding/index.d.ts +12 -0
- package/dist/components/Branding/index.d.ts.map +1 -0
- package/dist/components/Branding/index.js +9 -0
- package/dist/components/Branding/index.js.map +1 -0
- package/dist/components/Dashboard/DashboardFooter.d.ts +30 -0
- package/dist/components/Dashboard/DashboardFooter.d.ts.map +1 -0
- package/dist/components/Dashboard/DashboardFooter.js +68 -0
- package/dist/components/Dashboard/DashboardFooter.js.map +1 -0
- package/dist/components/Dashboard/DashboardHeader.d.ts +24 -0
- package/dist/components/Dashboard/DashboardHeader.d.ts.map +1 -0
- package/dist/components/Dashboard/DashboardHeader.js +87 -0
- package/dist/components/Dashboard/DashboardHeader.js.map +1 -0
- package/dist/components/Dashboard/DashboardLayout.d.ts +71 -0
- package/dist/components/Dashboard/DashboardLayout.d.ts.map +1 -0
- package/dist/components/Dashboard/DashboardLayout.js +52 -0
- package/dist/components/Dashboard/DashboardLayout.js.map +1 -0
- package/dist/components/Dashboard/DashboardSidebar.d.ts +26 -0
- package/dist/components/Dashboard/DashboardSidebar.d.ts.map +1 -0
- package/dist/components/Dashboard/DashboardSidebar.js +146 -0
- package/dist/components/Dashboard/DashboardSidebar.js.map +1 -0
- package/dist/components/Dashboard/EmptyState.d.ts +84 -0
- package/dist/components/Dashboard/EmptyState.d.ts.map +1 -0
- package/dist/components/Dashboard/EmptyState.js +99 -0
- package/dist/components/Dashboard/EmptyState.js.map +1 -0
- package/dist/components/Dashboard/KPICard.d.ts +58 -0
- package/dist/components/Dashboard/KPICard.d.ts.map +1 -0
- package/dist/components/Dashboard/KPICard.js +82 -0
- package/dist/components/Dashboard/KPICard.js.map +1 -0
- package/dist/components/Dashboard/LoadingSkeleton.d.ts +58 -0
- package/dist/components/Dashboard/LoadingSkeleton.d.ts.map +1 -0
- package/dist/components/Dashboard/LoadingSkeleton.js +105 -0
- package/dist/components/Dashboard/LoadingSkeleton.js.map +1 -0
- package/dist/components/Dashboard/StatusBadge.d.ts +57 -0
- package/dist/components/Dashboard/StatusBadge.d.ts.map +1 -0
- package/dist/components/Dashboard/StatusBadge.js +149 -0
- package/dist/components/Dashboard/StatusBadge.js.map +1 -0
- package/dist/components/Dashboard/index.d.ts +19 -0
- package/dist/components/Dashboard/index.d.ts.map +1 -0
- package/dist/components/Dashboard/index.js +18 -0
- package/dist/components/Dashboard/index.js.map +1 -0
- package/dist/components/InAppWallet/EmailLoginButton.d.ts +27 -0
- package/dist/components/InAppWallet/EmailLoginButton.d.ts.map +1 -0
- package/dist/components/InAppWallet/EmailLoginButton.js +84 -0
- package/dist/components/InAppWallet/EmailLoginButton.js.map +1 -0
- package/dist/components/InAppWallet/InAppWalletProvider.d.ts +54 -0
- package/dist/components/InAppWallet/InAppWalletProvider.d.ts.map +1 -0
- package/dist/components/InAppWallet/InAppWalletProvider.js +238 -0
- package/dist/components/InAppWallet/InAppWalletProvider.js.map +1 -0
- package/dist/components/InAppWallet/OnboardingFlow.d.ts +25 -0
- package/dist/components/InAppWallet/OnboardingFlow.d.ts.map +1 -0
- package/dist/components/InAppWallet/OnboardingFlow.js +159 -0
- package/dist/components/InAppWallet/OnboardingFlow.js.map +1 -0
- package/dist/components/InAppWallet/SocialLoginButtons.d.ts +28 -0
- package/dist/components/InAppWallet/SocialLoginButtons.d.ts.map +1 -0
- package/dist/components/InAppWallet/SocialLoginButtons.js +128 -0
- package/dist/components/InAppWallet/SocialLoginButtons.js.map +1 -0
- package/dist/components/InAppWallet/index.d.ts +15 -0
- package/dist/components/InAppWallet/index.d.ts.map +1 -0
- package/dist/components/InAppWallet/index.js +14 -0
- package/dist/components/InAppWallet/index.js.map +1 -0
- package/dist/components/Onramp/BuyUSDCButton.d.ts +27 -0
- package/dist/components/Onramp/BuyUSDCButton.d.ts.map +1 -0
- package/dist/components/Onramp/BuyUSDCButton.js +70 -0
- package/dist/components/Onramp/BuyUSDCButton.js.map +1 -0
- package/dist/components/Onramp/OnrampWidget.d.ts +38 -0
- package/dist/components/Onramp/OnrampWidget.d.ts.map +1 -0
- package/dist/components/Onramp/OnrampWidget.js +105 -0
- package/dist/components/Onramp/OnrampWidget.js.map +1 -0
- package/dist/components/Onramp/index.d.ts +14 -0
- package/dist/components/Onramp/index.d.ts.map +1 -0
- package/dist/components/Onramp/index.js +12 -0
- package/dist/components/Onramp/index.js.map +1 -0
- package/dist/components/Payments/CheckoutModal.d.ts +19 -0
- package/dist/components/Payments/CheckoutModal.d.ts.map +1 -0
- package/dist/components/Payments/CheckoutModal.js +183 -0
- package/dist/components/Payments/CheckoutModal.js.map +1 -0
- package/dist/components/Payments/SubscriptionWidget.d.ts +17 -0
- package/dist/components/Payments/SubscriptionWidget.d.ts.map +1 -0
- package/dist/components/Payments/SubscriptionWidget.js +89 -0
- package/dist/components/Payments/SubscriptionWidget.js.map +1 -0
- package/dist/components/Payments/constants.d.ts +59 -0
- package/dist/components/Payments/constants.d.ts.map +1 -0
- package/dist/components/Payments/constants.js +145 -0
- package/dist/components/Payments/constants.js.map +1 -0
- package/dist/components/Payments/index.d.ts +10 -0
- package/dist/components/Payments/index.d.ts.map +1 -0
- package/dist/components/Payments/index.js +12 -0
- package/dist/components/Payments/index.js.map +1 -0
- package/dist/components/Payments/types.d.ts +119 -0
- package/dist/components/Payments/types.d.ts.map +1 -0
- package/dist/components/Payments/types.js +27 -0
- package/dist/components/Payments/types.js.map +1 -0
- package/dist/components/Payments/usePayments.d.ts +33 -0
- package/dist/components/Payments/usePayments.d.ts.map +1 -0
- package/dist/components/Payments/usePayments.js +249 -0
- package/dist/components/Payments/usePayments.js.map +1 -0
- package/dist/components/Privy/InitTimeoutScreen.d.ts +62 -0
- package/dist/components/Privy/InitTimeoutScreen.d.ts.map +1 -0
- package/dist/components/Privy/InitTimeoutScreen.js +64 -0
- package/dist/components/Privy/InitTimeoutScreen.js.map +1 -0
- package/dist/components/Privy/InitializingScreen.d.ts +56 -0
- package/dist/components/Privy/InitializingScreen.d.ts.map +1 -0
- package/dist/components/Privy/InitializingScreen.js +60 -0
- package/dist/components/Privy/InitializingScreen.js.map +1 -0
- package/dist/components/Privy/PrivyLoginButton.d.ts +27 -0
- package/dist/components/Privy/PrivyLoginButton.d.ts.map +1 -0
- package/dist/components/Privy/PrivyLoginButton.js +48 -0
- package/dist/components/Privy/PrivyLoginButton.js.map +1 -0
- package/dist/components/Privy/PrivyProtectedRoute.d.ts +22 -0
- package/dist/components/Privy/PrivyProtectedRoute.d.ts.map +1 -0
- package/dist/components/Privy/PrivyProtectedRoute.js +46 -0
- package/dist/components/Privy/PrivyProtectedRoute.js.map +1 -0
- package/dist/components/Privy/PrivyReadyGate.d.ts +69 -0
- package/dist/components/Privy/PrivyReadyGate.d.ts.map +1 -0
- package/dist/components/Privy/PrivyReadyGate.js +83 -0
- package/dist/components/Privy/PrivyReadyGate.js.map +1 -0
- package/dist/components/Privy/PrivyUserProfile.d.ts +25 -0
- package/dist/components/Privy/PrivyUserProfile.d.ts.map +1 -0
- package/dist/components/Privy/PrivyUserProfile.js +98 -0
- package/dist/components/Privy/PrivyUserProfile.js.map +1 -0
- package/dist/components/Privy/index.d.ts +21 -0
- package/dist/components/Privy/index.d.ts.map +1 -0
- package/dist/components/Privy/index.js +16 -0
- package/dist/components/Privy/index.js.map +1 -0
- package/dist/components/SIWE/AuthStatus.d.ts +15 -0
- package/dist/components/SIWE/AuthStatus.d.ts.map +1 -0
- package/dist/components/SIWE/AuthStatus.js +47 -0
- package/dist/components/SIWE/AuthStatus.js.map +1 -0
- package/dist/components/SIWE/ProtectedRoute.d.ts +17 -0
- package/dist/components/SIWE/ProtectedRoute.d.ts.map +1 -0
- package/dist/components/SIWE/ProtectedRoute.js +52 -0
- package/dist/components/SIWE/ProtectedRoute.js.map +1 -0
- package/dist/components/SIWE/SIWEButton.d.ts +22 -0
- package/dist/components/SIWE/SIWEButton.d.ts.map +1 -0
- package/dist/components/SIWE/SIWEButton.js +106 -0
- package/dist/components/SIWE/SIWEButton.js.map +1 -0
- package/dist/components/SIWE/SIWEModal.d.ts +19 -0
- package/dist/components/SIWE/SIWEModal.d.ts.map +1 -0
- package/dist/components/SIWE/SIWEModal.js +75 -0
- package/dist/components/SIWE/SIWEModal.js.map +1 -0
- package/dist/components/SIWE/SIWEProvider.d.ts +38 -0
- package/dist/components/SIWE/SIWEProvider.d.ts.map +1 -0
- package/dist/components/SIWE/SIWEProvider.js +227 -0
- package/dist/components/SIWE/SIWEProvider.js.map +1 -0
- package/dist/components/SIWE/index.d.ts +15 -0
- package/dist/components/SIWE/index.d.ts.map +1 -0
- package/dist/components/SIWE/index.js +10 -0
- package/dist/components/SIWE/index.js.map +1 -0
- package/dist/components/index.d.ts +11 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +16 -0
- package/dist/components/index.js.map +1 -0
- package/dist/components/templates/Finance/FinanceDashboard.d.ts +15 -0
- package/dist/components/templates/Finance/FinanceDashboard.d.ts.map +1 -0
- package/dist/components/templates/Finance/FinanceDashboard.js +112 -0
- package/dist/components/templates/Finance/FinanceDashboard.js.map +1 -0
- package/dist/components/templates/Healthcare/HealthcareDashboard.d.ts +15 -0
- package/dist/components/templates/Healthcare/HealthcareDashboard.d.ts.map +1 -0
- package/dist/components/templates/Healthcare/HealthcareDashboard.js +121 -0
- package/dist/components/templates/Healthcare/HealthcareDashboard.js.map +1 -0
- package/dist/components/templates/ISO/ISODashboard.d.ts +15 -0
- package/dist/components/templates/ISO/ISODashboard.d.ts.map +1 -0
- package/dist/components/templates/ISO/ISODashboard.js +184 -0
- package/dist/components/templates/ISO/ISODashboard.js.map +1 -0
- package/dist/components/templates/Retail/RetailDashboard.d.ts +15 -0
- package/dist/components/templates/Retail/RetailDashboard.d.ts.map +1 -0
- package/dist/components/templates/Retail/RetailDashboard.js +151 -0
- package/dist/components/templates/Retail/RetailDashboard.js.map +1 -0
- package/dist/components/templates/index.d.ts +14 -0
- package/dist/components/templates/index.d.ts.map +1 -0
- package/dist/components/templates/index.js +14 -0
- package/dist/components/templates/index.js.map +1 -0
- package/dist/config/chains.d.ts +23 -0
- package/dist/config/chains.d.ts.map +1 -0
- package/dist/config/chains.js +55 -0
- package/dist/config/chains.js.map +1 -0
- package/dist/core/VarityClient.d.ts +76 -0
- package/dist/core/VarityClient.d.ts.map +1 -0
- package/dist/core/VarityClient.js +99 -0
- package/dist/core/VarityClient.js.map +1 -0
- package/dist/core/config.d.ts +136 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +156 -0
- package/dist/core/config.js.map +1 -0
- package/dist/hooks/index.d.ts +17 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +18 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useAnalytics.d.ts +94 -0
- package/dist/hooks/useAnalytics.d.ts.map +1 -0
- package/dist/hooks/useAnalytics.js +116 -0
- package/dist/hooks/useAnalytics.js.map +1 -0
- package/dist/hooks/useAuth.d.ts +71 -0
- package/dist/hooks/useAuth.d.ts.map +1 -0
- package/dist/hooks/useAuth.js +198 -0
- package/dist/hooks/useAuth.js.map +1 -0
- package/dist/hooks/useDashboard.d.ts +110 -0
- package/dist/hooks/useDashboard.d.ts.map +1 -0
- package/dist/hooks/useDashboard.js +201 -0
- package/dist/hooks/useDashboard.js.map +1 -0
- package/dist/hooks/useVarityAPI.d.ts +88 -0
- package/dist/hooks/useVarityAPI.d.ts.map +1 -0
- package/dist/hooks/useVarityAPI.js +138 -0
- package/dist/hooks/useVarityAPI.js.map +1 -0
- package/dist/hooks/useWalletAuth.d.ts +108 -0
- package/dist/hooks/useWalletAuth.d.ts.map +1 -0
- package/dist/hooks/useWalletAuth.js +415 -0
- package/dist/hooks/useWalletAuth.js.map +1 -0
- package/dist/hooks/web3/index.d.ts +5 -0
- package/dist/hooks/web3/index.d.ts.map +1 -0
- package/dist/hooks/web3/index.js +6 -0
- package/dist/hooks/web3/index.js.map +1 -0
- package/dist/hooks/web3/useAddressValidation.d.ts +37 -0
- package/dist/hooks/web3/useAddressValidation.d.ts.map +1 -0
- package/dist/hooks/web3/useAddressValidation.js +59 -0
- package/dist/hooks/web3/useAddressValidation.js.map +1 -0
- package/dist/hooks/web3/useBlockExplorer.d.ts +37 -0
- package/dist/hooks/web3/useBlockExplorer.d.ts.map +1 -0
- package/dist/hooks/web3/useBlockExplorer.js +59 -0
- package/dist/hooks/web3/useBlockExplorer.js.map +1 -0
- package/dist/hooks/web3/useUSDCFormat.d.ts +34 -0
- package/dist/hooks/web3/useUSDCFormat.d.ts.map +1 -0
- package/dist/hooks/web3/useUSDCFormat.js +43 -0
- package/dist/hooks/web3/useUSDCFormat.js.map +1 -0
- package/dist/hooks/web3/useVarityWallet.d.ts +48 -0
- package/dist/hooks/web3/useVarityWallet.d.ts.map +1 -0
- package/dist/hooks/web3/useVarityWallet.js +70 -0
- package/dist/hooks/web3/useVarityWallet.js.map +1 -0
- package/dist/index.d.ts +55 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +68 -0
- package/dist/index.js.map +1 -0
- package/dist/modules/analytics/AnalyticsClient.d.ts +72 -0
- package/dist/modules/analytics/AnalyticsClient.d.ts.map +1 -0
- package/dist/modules/analytics/AnalyticsClient.js +56 -0
- package/dist/modules/analytics/AnalyticsClient.js.map +1 -0
- package/dist/modules/analytics/index.d.ts +2 -0
- package/dist/modules/analytics/index.d.ts.map +1 -0
- package/dist/modules/analytics/index.js +2 -0
- package/dist/modules/analytics/index.js.map +1 -0
- package/dist/modules/auth/AuthClient.d.ts +41 -0
- package/dist/modules/auth/AuthClient.d.ts.map +1 -0
- package/dist/modules/auth/AuthClient.js +36 -0
- package/dist/modules/auth/AuthClient.js.map +1 -0
- package/dist/modules/auth/index.d.ts +2 -0
- package/dist/modules/auth/index.d.ts.map +1 -0
- package/dist/modules/auth/index.js +2 -0
- package/dist/modules/auth/index.js.map +1 -0
- package/dist/modules/cache/CacheClient.d.ts +48 -0
- package/dist/modules/cache/CacheClient.d.ts.map +1 -0
- package/dist/modules/cache/CacheClient.js +59 -0
- package/dist/modules/cache/CacheClient.js.map +1 -0
- package/dist/modules/cache/index.d.ts +2 -0
- package/dist/modules/cache/index.d.ts.map +1 -0
- package/dist/modules/cache/index.js +2 -0
- package/dist/modules/cache/index.js.map +1 -0
- package/dist/modules/compute/ComputeClient.d.ts +54 -0
- package/dist/modules/compute/ComputeClient.d.ts.map +1 -0
- package/dist/modules/compute/ComputeClient.js +39 -0
- package/dist/modules/compute/ComputeClient.js.map +1 -0
- package/dist/modules/compute/index.d.ts +2 -0
- package/dist/modules/compute/index.d.ts.map +1 -0
- package/dist/modules/compute/index.js +2 -0
- package/dist/modules/compute/index.js.map +1 -0
- package/dist/modules/export/ExportClient.d.ts +56 -0
- package/dist/modules/export/ExportClient.d.ts.map +1 -0
- package/dist/modules/export/ExportClient.js +42 -0
- package/dist/modules/export/ExportClient.js.map +1 -0
- package/dist/modules/export/index.d.ts +2 -0
- package/dist/modules/export/index.d.ts.map +1 -0
- package/dist/modules/export/index.js +2 -0
- package/dist/modules/export/index.js.map +1 -0
- package/dist/modules/forecasting/ForecastingClient.d.ts +112 -0
- package/dist/modules/forecasting/ForecastingClient.d.ts.map +1 -0
- package/dist/modules/forecasting/ForecastingClient.js +48 -0
- package/dist/modules/forecasting/ForecastingClient.js.map +1 -0
- package/dist/modules/forecasting/index.d.ts +2 -0
- package/dist/modules/forecasting/index.d.ts.map +1 -0
- package/dist/modules/forecasting/index.js +2 -0
- package/dist/modules/forecasting/index.js.map +1 -0
- package/dist/modules/monitoring/MonitoringClient.d.ts +67 -0
- package/dist/modules/monitoring/MonitoringClient.d.ts.map +1 -0
- package/dist/modules/monitoring/MonitoringClient.js +48 -0
- package/dist/modules/monitoring/MonitoringClient.js.map +1 -0
- package/dist/modules/monitoring/index.d.ts +2 -0
- package/dist/modules/monitoring/index.d.ts.map +1 -0
- package/dist/modules/monitoring/index.js +2 -0
- package/dist/modules/monitoring/index.js.map +1 -0
- package/dist/modules/notifications/NotificationsClient.d.ts +68 -0
- package/dist/modules/notifications/NotificationsClient.d.ts.map +1 -0
- package/dist/modules/notifications/NotificationsClient.js +50 -0
- package/dist/modules/notifications/NotificationsClient.js.map +1 -0
- package/dist/modules/notifications/index.d.ts +2 -0
- package/dist/modules/notifications/index.d.ts.map +1 -0
- package/dist/modules/notifications/index.js +2 -0
- package/dist/modules/notifications/index.js.map +1 -0
- package/dist/modules/oracle/OracleClient.d.ts +48 -0
- package/dist/modules/oracle/OracleClient.d.ts.map +1 -0
- package/dist/modules/oracle/OracleClient.js +34 -0
- package/dist/modules/oracle/OracleClient.js.map +1 -0
- package/dist/modules/oracle/index.d.ts +2 -0
- package/dist/modules/oracle/index.d.ts.map +1 -0
- package/dist/modules/oracle/index.js +2 -0
- package/dist/modules/oracle/index.js.map +1 -0
- package/dist/modules/storage/StorageClient.d.ts +44 -0
- package/dist/modules/storage/StorageClient.d.ts.map +1 -0
- package/dist/modules/storage/StorageClient.js +43 -0
- package/dist/modules/storage/StorageClient.js.map +1 -0
- package/dist/modules/storage/index.d.ts +2 -0
- package/dist/modules/storage/index.d.ts.map +1 -0
- package/dist/modules/storage/index.js +2 -0
- package/dist/modules/storage/index.js.map +1 -0
- package/dist/modules/templates/TemplateDeploymentClient.d.ts +208 -0
- package/dist/modules/templates/TemplateDeploymentClient.d.ts.map +1 -0
- package/dist/modules/templates/TemplateDeploymentClient.js +101 -0
- package/dist/modules/templates/TemplateDeploymentClient.js.map +1 -0
- package/dist/modules/templates/index.d.ts +8 -0
- package/dist/modules/templates/index.d.ts.map +1 -0
- package/dist/modules/templates/index.js +7 -0
- package/dist/modules/templates/index.js.map +1 -0
- package/dist/modules/webhooks/WebhooksClient.d.ts +85 -0
- package/dist/modules/webhooks/WebhooksClient.d.ts.map +1 -0
- package/dist/modules/webhooks/WebhooksClient.js +68 -0
- package/dist/modules/webhooks/WebhooksClient.js.map +1 -0
- package/dist/modules/webhooks/index.d.ts +2 -0
- package/dist/modules/webhooks/index.d.ts.map +1 -0
- package/dist/modules/webhooks/index.js +2 -0
- package/dist/modules/webhooks/index.js.map +1 -0
- package/dist/modules/zk/ZKClient.d.ts +67 -0
- package/dist/modules/zk/ZKClient.d.ts.map +1 -0
- package/dist/modules/zk/ZKClient.js +36 -0
- package/dist/modules/zk/ZKClient.js.map +1 -0
- package/dist/modules/zk/index.d.ts +2 -0
- package/dist/modules/zk/index.d.ts.map +1 -0
- package/dist/modules/zk/index.js +2 -0
- package/dist/modules/zk/index.js.map +1 -0
- package/dist/providers/ChainContext.d.ts +65 -0
- package/dist/providers/ChainContext.d.ts.map +1 -0
- package/dist/providers/ChainContext.js +92 -0
- package/dist/providers/ChainContext.js.map +1 -0
- package/dist/providers/PrivyProvider.d.ts +42 -0
- package/dist/providers/PrivyProvider.d.ts.map +1 -0
- package/dist/providers/PrivyProvider.js +131 -0
- package/dist/providers/PrivyProvider.js.map +1 -0
- package/dist/providers/PrivyStack.d.ts +165 -0
- package/dist/providers/PrivyStack.d.ts.map +1 -0
- package/dist/providers/PrivyStack.js +295 -0
- package/dist/providers/PrivyStack.js.map +1 -0
- package/dist/providers/VarityDashboardProvider.d.ts +90 -0
- package/dist/providers/VarityDashboardProvider.d.ts.map +1 -0
- package/dist/providers/VarityDashboardProvider.js +242 -0
- package/dist/providers/VarityDashboardProvider.js.map +1 -0
- package/dist/providers/VarityProvider.d.ts +32 -0
- package/dist/providers/VarityProvider.d.ts.map +1 -0
- package/dist/providers/VarityProvider.js +56 -0
- package/dist/providers/VarityProvider.js.map +1 -0
- package/dist/providers/WalletContext.d.ts +68 -0
- package/dist/providers/WalletContext.d.ts.map +1 -0
- package/dist/providers/WalletContext.js +98 -0
- package/dist/providers/WalletContext.js.map +1 -0
- package/dist/providers/WalletSyncProvider.d.ts +84 -0
- package/dist/providers/WalletSyncProvider.d.ts.map +1 -0
- package/dist/providers/WalletSyncProvider.js +132 -0
- package/dist/providers/WalletSyncProvider.js.map +1 -0
- package/dist/providers/index.d.ts +47 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +51 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/tests/mocks/httpClient.mock.d.ts +62 -0
- package/dist/tests/mocks/httpClient.mock.d.ts.map +1 -0
- package/dist/tests/mocks/httpClient.mock.js +108 -0
- package/dist/tests/mocks/httpClient.mock.js.map +1 -0
- package/dist/tests/setup.d.ts +6 -0
- package/dist/tests/setup.d.ts.map +1 -0
- package/dist/tests/setup.js +51 -0
- package/dist/tests/setup.js.map +1 -0
- package/dist/types/api-extensions.d.ts +92 -0
- package/dist/types/api-extensions.d.ts.map +1 -0
- package/dist/types/api-extensions.js +7 -0
- package/dist/types/api-extensions.js.map +1 -0
- package/dist/utils/http.d.ts +51 -0
- package/dist/utils/http.d.ts.map +1 -0
- package/dist/utils/http.js +104 -0
- package/dist/utils/http.js.map +1 -0
- package/dist/wallets/SimpleSmartWallet.d.ts +68 -0
- package/dist/wallets/SimpleSmartWallet.d.ts.map +1 -0
- package/dist/wallets/SimpleSmartWallet.js +74 -0
- package/dist/wallets/SimpleSmartWallet.js.map +1 -0
- package/dist/wallets/SmartWalletProvider.d.ts +217 -0
- package/dist/wallets/SmartWalletProvider.d.ts.map +1 -0
- package/dist/wallets/SmartWalletProvider.js +366 -0
- package/dist/wallets/SmartWalletProvider.js.map +1 -0
- package/dist/wallets/config.d.ts +199 -0
- package/dist/wallets/config.d.ts.map +1 -0
- package/dist/wallets/config.js +183 -0
- package/dist/wallets/config.js.map +1 -0
- package/dist/wallets/index.d.ts +9 -0
- package/dist/wallets/index.d.ts.map +1 -0
- package/dist/wallets/index.js +9 -0
- package/dist/wallets/index.js.map +1 -0
- package/dist/web3/AddressDisplay/AddressDisplay.d.ts +33 -0
- package/dist/web3/AddressDisplay/AddressDisplay.d.ts.map +1 -0
- package/dist/web3/AddressDisplay/AddressDisplay.js +42 -0
- package/dist/web3/AddressDisplay/AddressDisplay.js.map +1 -0
- package/dist/web3/AddressInput/AddressInput.d.ts +36 -0
- package/dist/web3/AddressInput/AddressInput.d.ts.map +1 -0
- package/dist/web3/AddressInput/AddressInput.js +54 -0
- package/dist/web3/AddressInput/AddressInput.js.map +1 -0
- package/dist/web3/AmountInput/AmountInput.d.ts +41 -0
- package/dist/web3/AmountInput/AmountInput.d.ts.map +1 -0
- package/dist/web3/AmountInput/AmountInput.js +74 -0
- package/dist/web3/AmountInput/AmountInput.js.map +1 -0
- package/dist/web3/BalanceDisplay/BalanceDisplay.d.ts +30 -0
- package/dist/web3/BalanceDisplay/BalanceDisplay.d.ts.map +1 -0
- package/dist/web3/BalanceDisplay/BalanceDisplay.js +35 -0
- package/dist/web3/BalanceDisplay/BalanceDisplay.js.map +1 -0
- package/dist/web3/BlockExplorerLink/BlockExplorerLink.d.ts +41 -0
- package/dist/web3/BlockExplorerLink/BlockExplorerLink.d.ts.map +1 -0
- package/dist/web3/BlockExplorerLink/BlockExplorerLink.js +46 -0
- package/dist/web3/BlockExplorerLink/BlockExplorerLink.js.map +1 -0
- package/dist/web3/ConnectWallet/ConnectWallet.d.ts +35 -0
- package/dist/web3/ConnectWallet/ConnectWallet.d.ts.map +1 -0
- package/dist/web3/ConnectWallet/ConnectWallet.js +58 -0
- package/dist/web3/ConnectWallet/ConnectWallet.js.map +1 -0
- package/dist/web3/DisconnectButton/DisconnectButton.d.ts +30 -0
- package/dist/web3/DisconnectButton/DisconnectButton.d.ts.map +1 -0
- package/dist/web3/DisconnectButton/DisconnectButton.js +48 -0
- package/dist/web3/DisconnectButton/DisconnectButton.js.map +1 -0
- package/dist/web3/WalletBalance/WalletBalance.d.ts +27 -0
- package/dist/web3/WalletBalance/WalletBalance.d.ts.map +1 -0
- package/dist/web3/WalletBalance/WalletBalance.js +49 -0
- package/dist/web3/WalletBalance/WalletBalance.js.map +1 -0
- package/dist/web3/WalletDropdown/WalletDropdown.d.ts +29 -0
- package/dist/web3/WalletDropdown/WalletDropdown.d.ts.map +1 -0
- package/dist/web3/WalletDropdown/WalletDropdown.js +93 -0
- package/dist/web3/WalletDropdown/WalletDropdown.js.map +1 -0
- package/dist/web3/WalletInfo/WalletInfo.d.ts +31 -0
- package/dist/web3/WalletInfo/WalletInfo.d.ts.map +1 -0
- package/dist/web3/WalletInfo/WalletInfo.js +41 -0
- package/dist/web3/WalletInfo/WalletInfo.js.map +1 -0
- package/dist/web3/index.d.ts +11 -0
- package/dist/web3/index.d.ts.map +1 -0
- package/dist/web3/index.js +14 -0
- package/dist/web3/index.js.map +1 -0
- package/package.json +105 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-App Wallet Components Export
|
|
3
|
+
*
|
|
4
|
+
* Thirdweb In-App Wallets for seamless Web2 user onboarding
|
|
5
|
+
* - Email OTP authentication
|
|
6
|
+
* - Social OAuth (Google, Apple, Facebook, Discord, Twitter)
|
|
7
|
+
* - Automatic custodial wallet creation
|
|
8
|
+
* - Complete onboarding flow
|
|
9
|
+
*/
|
|
10
|
+
export { InAppWalletProvider, useInAppWallet } from './InAppWalletProvider';
|
|
11
|
+
export { EmailLoginButton } from './EmailLoginButton';
|
|
12
|
+
export { SocialLoginButtons } from './SocialLoginButtons';
|
|
13
|
+
export { OnboardingFlow } from './OnboardingFlow';
|
|
14
|
+
export type { InAppWalletContextType } from './InAppWalletProvider';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/InAppWallet/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* In-App Wallet Components Export
|
|
3
|
+
*
|
|
4
|
+
* Thirdweb In-App Wallets for seamless Web2 user onboarding
|
|
5
|
+
* - Email OTP authentication
|
|
6
|
+
* - Social OAuth (Google, Apple, Facebook, Discord, Twitter)
|
|
7
|
+
* - Automatic custodial wallet creation
|
|
8
|
+
* - Complete onboarding flow
|
|
9
|
+
*/
|
|
10
|
+
export { InAppWalletProvider, useInAppWallet } from './InAppWalletProvider';
|
|
11
|
+
export { EmailLoginButton } from './EmailLoginButton';
|
|
12
|
+
export { SocialLoginButtons } from './SocialLoginButtons';
|
|
13
|
+
export { OnboardingFlow } from './OnboardingFlow';
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/InAppWallet/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BuyUSDCButton - Simple button to buy USDC with fiat
|
|
3
|
+
*
|
|
4
|
+
* Opens Thirdweb Pay widget for credit card purchases
|
|
5
|
+
* Supports credit card, debit card, Apple Pay, Google Pay
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <BuyUSDCButton
|
|
10
|
+
* walletAddress="0x..."
|
|
11
|
+
* amount={100}
|
|
12
|
+
* onSuccess={(tx) => console.log('Purchase complete:', tx)}
|
|
13
|
+
* />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
import React from 'react';
|
|
17
|
+
export interface BuyUSDCButtonProps {
|
|
18
|
+
walletAddress: string;
|
|
19
|
+
amount?: number;
|
|
20
|
+
onSuccess?: (transaction: any) => void;
|
|
21
|
+
onError?: (error: Error) => void;
|
|
22
|
+
buttonText?: string;
|
|
23
|
+
className?: string;
|
|
24
|
+
clientId: string;
|
|
25
|
+
}
|
|
26
|
+
export declare function BuyUSDCButton({ walletAddress, amount, onSuccess: _onSuccess, onError: _onError, buttonText, className, clientId }: BuyUSDCButtonProps): React.JSX.Element;
|
|
27
|
+
//# sourceMappingURL=BuyUSDCButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BuyUSDCButton.d.ts","sourceRoot":"","sources":["../../../src/components/Onramp/BuyUSDCButton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,aAAa,CAAC,EAC5B,aAAa,EACb,MAAY,EACZ,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,QAAQ,EACjB,UAAuB,EACvB,SAAS,EACT,QAAQ,EACT,EAAE,kBAAkB,qBAgFpB"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* BuyUSDCButton - Simple button to buy USDC with fiat
|
|
3
|
+
*
|
|
4
|
+
* Opens Thirdweb Pay widget for credit card purchases
|
|
5
|
+
* Supports credit card, debit card, Apple Pay, Google Pay
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <BuyUSDCButton
|
|
10
|
+
* walletAddress="0x..."
|
|
11
|
+
* amount={100}
|
|
12
|
+
* onSuccess={(tx) => console.log('Purchase complete:', tx)}
|
|
13
|
+
* />
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
import React, { useState } from 'react';
|
|
17
|
+
import { PayEmbed } from 'thirdweb/react';
|
|
18
|
+
import { createThirdwebClient } from 'thirdweb';
|
|
19
|
+
import { varityL3Testnet, VARITY_USDC_ADDRESS } from '../../config/chains';
|
|
20
|
+
export function BuyUSDCButton({ walletAddress, amount = 100, onSuccess: _onSuccess, onError: _onError, buttonText = 'Buy USDC', className, clientId }) {
|
|
21
|
+
const [showWidget, setShowWidget] = useState(false);
|
|
22
|
+
const client = React.useMemo(() => createThirdwebClient({ clientId }), [clientId]);
|
|
23
|
+
const defaultClassName = `
|
|
24
|
+
px-6 py-3
|
|
25
|
+
bg-gradient-to-r from-blue-600 to-indigo-600
|
|
26
|
+
hover:from-blue-700 hover:to-indigo-700
|
|
27
|
+
text-white font-semibold rounded-lg
|
|
28
|
+
transition-all duration-200
|
|
29
|
+
disabled:opacity-50 disabled:cursor-not-allowed
|
|
30
|
+
flex items-center justify-center gap-2
|
|
31
|
+
shadow-lg hover:shadow-xl
|
|
32
|
+
`;
|
|
33
|
+
const handleClick = () => {
|
|
34
|
+
setShowWidget(true);
|
|
35
|
+
};
|
|
36
|
+
if (showWidget) {
|
|
37
|
+
return (React.createElement("div", { className: "fixed inset-0 bg-black/50 flex items-center justify-center z-50 p-4" },
|
|
38
|
+
React.createElement("div", { className: "bg-white rounded-2xl p-6 max-w-md w-full relative" },
|
|
39
|
+
React.createElement("button", { onClick: () => setShowWidget(false), className: "absolute top-4 right-4 text-gray-400 hover:text-gray-600" },
|
|
40
|
+
React.createElement("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
41
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }))),
|
|
42
|
+
React.createElement("h3", { className: "text-xl font-bold mb-4" }, "Buy USDC"),
|
|
43
|
+
React.createElement(PayEmbed, { client: client, theme: "light", payOptions: {
|
|
44
|
+
mode: 'fund_wallet',
|
|
45
|
+
prefillBuy: {
|
|
46
|
+
chain: varityL3Testnet,
|
|
47
|
+
amount: amount.toString(),
|
|
48
|
+
token: {
|
|
49
|
+
// Use actual USDC contract address on Varity L3
|
|
50
|
+
address: VARITY_USDC_ADDRESS,
|
|
51
|
+
name: 'USDC',
|
|
52
|
+
symbol: 'USDC',
|
|
53
|
+
},
|
|
54
|
+
allowEdits: {
|
|
55
|
+
amount: true,
|
|
56
|
+
token: false,
|
|
57
|
+
chain: false,
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
metadata: {
|
|
61
|
+
name: 'Buy USDC on Varity L3',
|
|
62
|
+
},
|
|
63
|
+
} }))));
|
|
64
|
+
}
|
|
65
|
+
return (React.createElement("button", { onClick: handleClick, disabled: !walletAddress, className: className || defaultClassName },
|
|
66
|
+
React.createElement("svg", { className: "w-5 h-5", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
67
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z" })),
|
|
68
|
+
buttonText));
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=BuyUSDCButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BuyUSDCButton.js","sourceRoot":"","sources":["../../../src/components/Onramp/BuyUSDCButton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAY3E,MAAM,UAAU,aAAa,CAAC,EAC5B,aAAa,EACb,MAAM,GAAG,GAAG,EACZ,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,QAAQ,EACjB,UAAU,GAAG,UAAU,EACvB,SAAS,EACT,QAAQ,EACW;IACnB,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEpD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAC1B,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,QAAQ,EAAE,CAAC,EACxC,CAAC,QAAQ,CAAC,CACX,CAAC;IAEF,MAAM,gBAAgB,GAAG;;;;;;;;;GASxB,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,aAAa,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CACL,6BAAK,SAAS,EAAC,qEAAqE;YAClF,6BAAK,SAAS,EAAC,mDAAmD;gBAChE,gCACE,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EACnC,SAAS,EAAC,0DAA0D;oBAEpE,6BAAK,SAAS,EAAC,SAAS,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,OAAO,EAAC,WAAW;wBAC5E,8BAAM,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,EAAC,WAAW,EAAE,CAAC,EAAE,CAAC,EAAC,sBAAsB,GAAG,CAC1F,CACC;gBAET,4BAAI,SAAS,EAAC,wBAAwB,eAAc;gBAEpD,oBAAC,QAAQ,IACP,MAAM,EAAE,MAAM,EACd,KAAK,EAAC,OAAO,EACb,UAAU,EAAE;wBACV,IAAI,EAAE,aAAa;wBACnB,UAAU,EAAE;4BACV,KAAK,EAAE,eAAe;4BACtB,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE;4BACzB,KAAK,EAAE;gCACL,gDAAgD;gCAChD,OAAO,EAAE,mBAAmB;gCAC5B,IAAI,EAAE,MAAM;gCACZ,MAAM,EAAE,MAAM;6BACf;4BACD,UAAU,EAAE;gCACV,MAAM,EAAE,IAAI;gCACZ,KAAK,EAAE,KAAK;gCACZ,KAAK,EAAE,KAAK;6BACb;yBACF;wBACD,QAAQ,EAAE;4BACR,IAAI,EAAE,uBAAuB;yBAC9B;qBACF,GACD,CACE,CACF,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,gCACE,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,CAAC,aAAa,EACxB,SAAS,EAAE,SAAS,IAAI,gBAAgB;QAExC,6BAAK,SAAS,EAAC,SAAS,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,cAAc,EAAC,OAAO,EAAC,WAAW;YAC5E,8BAAM,aAAa,EAAC,OAAO,EAAC,cAAc,EAAC,OAAO,EAAC,WAAW,EAAE,CAAC,EAAE,CAAC,EAAC,wFAAwF,GAAG,CAC5J;QACL,UAAU,CACJ,CACV,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OnrampWidget - Full embedded Thirdweb Pay widget
|
|
3
|
+
*
|
|
4
|
+
* Complete payment widget with KYC, payment processing, and status tracking
|
|
5
|
+
* Automatically handles payment providers, KYC verification, and transaction receipts
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <OnrampWidget
|
|
10
|
+
* walletAddress="0x..."
|
|
11
|
+
* clientId="your-client-id"
|
|
12
|
+
* defaultAmount={100}
|
|
13
|
+
* onComplete={(status) => console.log('Purchase:', status)}
|
|
14
|
+
* />
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
import React from 'react';
|
|
18
|
+
export interface Purchase {
|
|
19
|
+
id: string;
|
|
20
|
+
amount: number;
|
|
21
|
+
currency: string;
|
|
22
|
+
status: 'pending' | 'processing' | 'completed' | 'failed';
|
|
23
|
+
timestamp: Date;
|
|
24
|
+
txHash?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface OnrampWidgetProps {
|
|
27
|
+
walletAddress: string;
|
|
28
|
+
clientId: string;
|
|
29
|
+
defaultAmount?: number;
|
|
30
|
+
minAmount?: number;
|
|
31
|
+
maxAmount?: number;
|
|
32
|
+
onComplete?: (purchase: Purchase) => void;
|
|
33
|
+
onError?: (error: Error) => void;
|
|
34
|
+
showHistory?: boolean;
|
|
35
|
+
theme?: 'light' | 'dark';
|
|
36
|
+
}
|
|
37
|
+
export declare function OnrampWidget({ walletAddress: _walletAddress, clientId, defaultAmount, minAmount, maxAmount, onComplete, onError, showHistory, theme }: OnrampWidgetProps): React.JSX.Element;
|
|
38
|
+
//# sourceMappingURL=OnrampWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnrampWidget.d.ts","sourceRoot":"","sources":["../../../src/components/Onramp/OnrampWidget.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC1D,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC1C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAED,wBAAgB,YAAY,CAAC,EAC3B,aAAa,EAAE,cAAc,EAC7B,QAAQ,EACR,aAAmB,EACnB,SAAc,EACd,SAAiB,EACjB,UAAU,EACV,OAAO,EACP,WAAkB,EAClB,KAAe,EAChB,EAAE,iBAAiB,qBA4JnB"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OnrampWidget - Full embedded Thirdweb Pay widget
|
|
3
|
+
*
|
|
4
|
+
* Complete payment widget with KYC, payment processing, and status tracking
|
|
5
|
+
* Automatically handles payment providers, KYC verification, and transaction receipts
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* <OnrampWidget
|
|
10
|
+
* walletAddress="0x..."
|
|
11
|
+
* clientId="your-client-id"
|
|
12
|
+
* defaultAmount={100}
|
|
13
|
+
* onComplete={(status) => console.log('Purchase:', status)}
|
|
14
|
+
* />
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
import React, { useState } from 'react';
|
|
18
|
+
import { PayEmbed } from 'thirdweb/react';
|
|
19
|
+
import { createThirdwebClient } from 'thirdweb';
|
|
20
|
+
import { varityL3Testnet, VARITY_USDC_ADDRESS } from '../../config/chains';
|
|
21
|
+
export function OnrampWidget({ walletAddress: _walletAddress, clientId, defaultAmount = 100, minAmount = 10, maxAmount = 10000, onComplete, onError, showHistory = true, theme = 'light' }) {
|
|
22
|
+
const [purchases, setPurchases] = useState([]);
|
|
23
|
+
const [currentPurchase, setCurrentPurchase] = useState(null);
|
|
24
|
+
const client = React.useMemo(() => createThirdwebClient({ clientId }), [clientId]);
|
|
25
|
+
const formatDate = (date) => {
|
|
26
|
+
return new Intl.DateTimeFormat('en-US', {
|
|
27
|
+
month: 'short',
|
|
28
|
+
day: 'numeric',
|
|
29
|
+
hour: '2-digit',
|
|
30
|
+
minute: '2-digit',
|
|
31
|
+
}).format(date);
|
|
32
|
+
};
|
|
33
|
+
const getStatusColor = (status) => {
|
|
34
|
+
switch (status) {
|
|
35
|
+
case 'completed':
|
|
36
|
+
return 'text-green-600 bg-green-100';
|
|
37
|
+
case 'processing':
|
|
38
|
+
return 'text-blue-600 bg-blue-100';
|
|
39
|
+
case 'pending':
|
|
40
|
+
return 'text-yellow-600 bg-yellow-100';
|
|
41
|
+
case 'failed':
|
|
42
|
+
return 'text-red-600 bg-red-100';
|
|
43
|
+
default:
|
|
44
|
+
return 'text-gray-600 bg-gray-100';
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
return (React.createElement("div", { className: "space-y-6" },
|
|
48
|
+
React.createElement("div", { className: `rounded-2xl overflow-hidden ${theme === 'dark' ? 'bg-gray-900' : 'bg-white'}` },
|
|
49
|
+
React.createElement("div", { className: "p-6 space-y-4" },
|
|
50
|
+
React.createElement("div", { className: "flex items-center justify-between" },
|
|
51
|
+
React.createElement("h3", { className: `text-xl font-bold ${theme === 'dark' ? 'text-white' : 'text-gray-900'}` }, "Buy USDC"),
|
|
52
|
+
React.createElement("div", { className: `px-3 py-1 rounded-full text-xs font-medium ${theme === 'dark' ? 'bg-gray-800 text-gray-300' : 'bg-gray-100 text-gray-600'}` }, "Varity L3")),
|
|
53
|
+
React.createElement("div", { className: `p-4 rounded-xl ${theme === 'dark' ? 'bg-gray-800' : 'bg-gradient-to-br from-blue-50 to-indigo-50'}` },
|
|
54
|
+
React.createElement("div", { className: "flex items-center gap-3" },
|
|
55
|
+
React.createElement("svg", { className: "w-8 h-8 text-blue-600", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
56
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M3 10h18M7 15h1m4 0h1m-7 4h12a3 3 0 003-3V8a3 3 0 00-3-3H6a3 3 0 00-3 3v8a3 3 0 003 3z" })),
|
|
57
|
+
React.createElement("div", null,
|
|
58
|
+
React.createElement("p", { className: `font-semibold ${theme === 'dark' ? 'text-white' : 'text-gray-900'}` }, "Supported Payment Methods"),
|
|
59
|
+
React.createElement("p", { className: `text-sm ${theme === 'dark' ? 'text-gray-400' : 'text-gray-600'}` }, "Credit/Debit Card \u2022 Apple Pay \u2022 Google Pay")))),
|
|
60
|
+
React.createElement(PayEmbed, { client: client, theme: theme, payOptions: {
|
|
61
|
+
mode: 'fund_wallet',
|
|
62
|
+
prefillBuy: {
|
|
63
|
+
chain: varityL3Testnet,
|
|
64
|
+
amount: defaultAmount.toString(),
|
|
65
|
+
token: {
|
|
66
|
+
// Use actual USDC contract address on Varity L3
|
|
67
|
+
address: VARITY_USDC_ADDRESS,
|
|
68
|
+
name: 'USDC',
|
|
69
|
+
symbol: 'USDC',
|
|
70
|
+
},
|
|
71
|
+
allowEdits: {
|
|
72
|
+
amount: true,
|
|
73
|
+
token: false,
|
|
74
|
+
chain: false,
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
metadata: {
|
|
78
|
+
name: 'Buy USDC on Varity L3',
|
|
79
|
+
},
|
|
80
|
+
} }))),
|
|
81
|
+
showHistory && purchases.length > 0 && (React.createElement("div", { className: `rounded-2xl p-6 ${theme === 'dark' ? 'bg-gray-900' : 'bg-white'}` },
|
|
82
|
+
React.createElement("h4", { className: `font-semibold mb-4 ${theme === 'dark' ? 'text-white' : 'text-gray-900'}` }, "Recent Purchases"),
|
|
83
|
+
React.createElement("div", { className: "space-y-3" }, purchases.map((purchase) => (React.createElement("div", { key: purchase.id, className: `p-4 rounded-xl border ${theme === 'dark' ? 'border-gray-800 bg-gray-800/50' : 'border-gray-200 bg-gray-50'}` },
|
|
84
|
+
React.createElement("div", { className: "flex items-center justify-between" },
|
|
85
|
+
React.createElement("div", { className: "flex-1" },
|
|
86
|
+
React.createElement("div", { className: "flex items-center gap-2" },
|
|
87
|
+
React.createElement("p", { className: `font-medium ${theme === 'dark' ? 'text-white' : 'text-gray-900'}` },
|
|
88
|
+
"$",
|
|
89
|
+
purchase.amount,
|
|
90
|
+
" ",
|
|
91
|
+
purchase.currency),
|
|
92
|
+
React.createElement("span", { className: `px-2 py-0.5 rounded-full text-xs font-medium ${getStatusColor(purchase.status)}` }, purchase.status)),
|
|
93
|
+
React.createElement("p", { className: `text-sm ${theme === 'dark' ? 'text-gray-400' : 'text-gray-500'}` }, formatDate(purchase.timestamp))),
|
|
94
|
+
purchase.txHash && (React.createElement("a", { href: `https://explorer.varity.io/tx/${purchase.txHash}`, target: "_blank", rel: "noopener noreferrer", className: "text-blue-600 hover:text-blue-700" },
|
|
95
|
+
React.createElement("svg", { className: "w-5 h-5", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
96
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14" }))))))))))),
|
|
97
|
+
React.createElement("div", { className: `p-4 rounded-xl ${theme === 'dark' ? 'bg-gray-800' : 'bg-blue-50'}` },
|
|
98
|
+
React.createElement("div", { className: "flex items-start gap-3" },
|
|
99
|
+
React.createElement("svg", { className: `w-5 h-5 mt-0.5 flex-shrink-0 ${theme === 'dark' ? 'text-blue-400' : 'text-blue-600'}`, fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
100
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" })),
|
|
101
|
+
React.createElement("div", null,
|
|
102
|
+
React.createElement("p", { className: `text-sm font-medium ${theme === 'dark' ? 'text-gray-200' : 'text-gray-900'}` }, "Secure & Regulated"),
|
|
103
|
+
React.createElement("p", { className: `text-xs ${theme === 'dark' ? 'text-gray-400' : 'text-gray-600'}` }, "Payments are processed by licensed providers. KYC may be required for larger amounts."))))));
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=OnrampWidget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OnrampWidget.js","sourceRoot":"","sources":["../../../src/components/Onramp/OnrampWidget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Onramp Components Export
|
|
3
|
+
*
|
|
4
|
+
* Thirdweb Pay for buying crypto with fiat currency
|
|
5
|
+
* - Credit/Debit card payments
|
|
6
|
+
* - Apple Pay & Google Pay
|
|
7
|
+
* - KYC verification handling
|
|
8
|
+
* - Transaction status tracking
|
|
9
|
+
*/
|
|
10
|
+
export { BuyUSDCButton } from './BuyUSDCButton';
|
|
11
|
+
export { OnrampWidget } from './OnrampWidget';
|
|
12
|
+
export type { BuyUSDCButtonProps } from './BuyUSDCButton';
|
|
13
|
+
export type { OnrampWidgetProps, Purchase } from './OnrampWidget';
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Onramp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Onramp Components Export
|
|
3
|
+
*
|
|
4
|
+
* Thirdweb Pay for buying crypto with fiat currency
|
|
5
|
+
* - Credit/Debit card payments
|
|
6
|
+
* - Apple Pay & Google Pay
|
|
7
|
+
* - KYC verification handling
|
|
8
|
+
* - Transaction status tracking
|
|
9
|
+
*/
|
|
10
|
+
export { BuyUSDCButton } from './BuyUSDCButton';
|
|
11
|
+
export { OnrampWidget } from './OnrampWidget';
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Onramp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SubscriptionPlan } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Checkout Modal Component
|
|
5
|
+
* Handles USDC payment processing for subscriptions
|
|
6
|
+
*/
|
|
7
|
+
interface CheckoutModalProps {
|
|
8
|
+
isOpen: boolean;
|
|
9
|
+
onClose: () => void;
|
|
10
|
+
plan: SubscriptionPlan;
|
|
11
|
+
clientId: string;
|
|
12
|
+
paymentRecipient: string;
|
|
13
|
+
onSuccess?: (txHash: string) => void;
|
|
14
|
+
onError?: (error: Error) => void;
|
|
15
|
+
theme?: 'light' | 'dark';
|
|
16
|
+
}
|
|
17
|
+
export declare const CheckoutModal: React.FC<CheckoutModalProps>;
|
|
18
|
+
export default CheckoutModal;
|
|
19
|
+
//# sourceMappingURL=CheckoutModal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckoutModal.d.ts","sourceRoot":"","sources":["../../../src/components/Payments/CheckoutModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAK3C;;;GAGG;AAEH,UAAU,kBAAkB;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,IAAI,EAAE,gBAAgB,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CAC1B;AAWD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA6KtD,CAAC;AA0NF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import React, { useState, useEffect } from 'react';
|
|
2
|
+
import { useActiveAccount, useSendTransaction } from 'thirdweb/react';
|
|
3
|
+
import { prepareContractCall } from 'thirdweb';
|
|
4
|
+
import { getContract } from 'thirdweb';
|
|
5
|
+
import { createThirdwebClient } from 'thirdweb';
|
|
6
|
+
import { formatUSDC, USDC_CONTRACT_ADDRESS } from './constants';
|
|
7
|
+
import { useSIWE } from '../SIWE/SIWEProvider';
|
|
8
|
+
import { varityL3Testnet } from '../../config/chains';
|
|
9
|
+
var CheckoutStep;
|
|
10
|
+
(function (CheckoutStep) {
|
|
11
|
+
CheckoutStep["REVIEW"] = "review";
|
|
12
|
+
CheckoutStep["APPROVE"] = "approve";
|
|
13
|
+
CheckoutStep["PAYMENT"] = "payment";
|
|
14
|
+
CheckoutStep["CONFIRMING"] = "confirming";
|
|
15
|
+
CheckoutStep["SUCCESS"] = "success";
|
|
16
|
+
CheckoutStep["ERROR"] = "error";
|
|
17
|
+
})(CheckoutStep || (CheckoutStep = {}));
|
|
18
|
+
export const CheckoutModal = ({ isOpen, onClose, plan, clientId, paymentRecipient, onSuccess, onError, theme = 'dark', }) => {
|
|
19
|
+
const [currentStep, setCurrentStep] = useState(CheckoutStep.REVIEW);
|
|
20
|
+
const [error, setError] = useState(null);
|
|
21
|
+
const [txHash, setTxHash] = useState(null);
|
|
22
|
+
const { isAuthenticated } = useSIWE();
|
|
23
|
+
const account = useActiveAccount();
|
|
24
|
+
const { mutate: sendTransaction, isPending } = useSendTransaction();
|
|
25
|
+
const client = createThirdwebClient({ clientId });
|
|
26
|
+
// Reset state when modal opens
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (isOpen) {
|
|
29
|
+
setCurrentStep(CheckoutStep.REVIEW);
|
|
30
|
+
setError(null);
|
|
31
|
+
setTxHash(null);
|
|
32
|
+
}
|
|
33
|
+
}, [isOpen]);
|
|
34
|
+
if (!isOpen)
|
|
35
|
+
return null;
|
|
36
|
+
const bgColor = theme === 'dark' ? 'bg-gray-900' : 'bg-white';
|
|
37
|
+
const textColor = theme === 'dark' ? 'text-white' : 'text-gray-900';
|
|
38
|
+
const mutedTextColor = theme === 'dark' ? 'text-gray-400' : 'text-gray-600';
|
|
39
|
+
const borderColor = theme === 'dark' ? 'border-gray-700' : 'border-gray-200';
|
|
40
|
+
const handlePayment = async () => {
|
|
41
|
+
if (!account || !isAuthenticated) {
|
|
42
|
+
setError('Please connect wallet and authenticate first');
|
|
43
|
+
setCurrentStep(CheckoutStep.ERROR);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
try {
|
|
47
|
+
setCurrentStep(CheckoutStep.PAYMENT);
|
|
48
|
+
setError(null);
|
|
49
|
+
// Get USDC contract
|
|
50
|
+
const usdcContract = getContract({
|
|
51
|
+
client,
|
|
52
|
+
chain: varityL3Testnet,
|
|
53
|
+
address: USDC_CONTRACT_ADDRESS,
|
|
54
|
+
});
|
|
55
|
+
// Prepare USDC transfer transaction
|
|
56
|
+
const transaction = prepareContractCall({
|
|
57
|
+
contract: usdcContract,
|
|
58
|
+
method: 'function transfer(address to, uint256 amount) returns (bool)',
|
|
59
|
+
params: [paymentRecipient, BigInt(plan.price)],
|
|
60
|
+
});
|
|
61
|
+
// Send transaction
|
|
62
|
+
sendTransaction(transaction, {
|
|
63
|
+
onSuccess: (result) => {
|
|
64
|
+
setTxHash(result.transactionHash);
|
|
65
|
+
setCurrentStep(CheckoutStep.CONFIRMING);
|
|
66
|
+
// Wait for confirmation
|
|
67
|
+
setTimeout(() => {
|
|
68
|
+
setCurrentStep(CheckoutStep.SUCCESS);
|
|
69
|
+
onSuccess?.(result.transactionHash);
|
|
70
|
+
}, 3000);
|
|
71
|
+
},
|
|
72
|
+
onError: (err) => {
|
|
73
|
+
const errorMessage = err.message || 'Payment failed';
|
|
74
|
+
setError(errorMessage);
|
|
75
|
+
setCurrentStep(CheckoutStep.ERROR);
|
|
76
|
+
onError?.(err);
|
|
77
|
+
},
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
catch (err) {
|
|
81
|
+
const errorMessage = err.message || 'Payment failed';
|
|
82
|
+
setError(errorMessage);
|
|
83
|
+
setCurrentStep(CheckoutStep.ERROR);
|
|
84
|
+
onError?.(err);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
const handleClose = () => {
|
|
88
|
+
if (currentStep !== CheckoutStep.PAYMENT && currentStep !== CheckoutStep.CONFIRMING) {
|
|
89
|
+
onClose();
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
return (React.createElement("div", { className: "fixed inset-0 z-50 flex items-center justify-center" },
|
|
93
|
+
React.createElement("div", { className: "absolute inset-0 bg-black bg-opacity-50", onClick: handleClose }),
|
|
94
|
+
React.createElement("div", { className: `relative w-full max-w-2xl mx-4 rounded-2xl shadow-2xl ${bgColor} ${textColor} border ${borderColor}` },
|
|
95
|
+
currentStep !== CheckoutStep.PAYMENT && currentStep !== CheckoutStep.CONFIRMING && (React.createElement("button", { onClick: handleClose, className: "absolute top-4 right-4 text-gray-400 hover:text-gray-600 transition-colors" },
|
|
96
|
+
React.createElement("svg", { className: "w-6 h-6", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
97
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" })))),
|
|
98
|
+
React.createElement("div", { className: "p-8" },
|
|
99
|
+
React.createElement("h2", { className: "text-3xl font-bold mb-6" }, "Complete Your Subscription"),
|
|
100
|
+
currentStep === CheckoutStep.REVIEW && (React.createElement(ReviewStep, { plan: plan, onProceed: handlePayment, theme: theme, textColor: textColor, mutedTextColor: mutedTextColor, borderColor: borderColor, isPending: isPending })),
|
|
101
|
+
currentStep === CheckoutStep.PAYMENT && (React.createElement(ProcessingStep, { message: "Processing payment...", theme: theme, textColor: textColor })),
|
|
102
|
+
currentStep === CheckoutStep.CONFIRMING && (React.createElement(ProcessingStep, { message: "Confirming transaction...", txHash: txHash, theme: theme, textColor: textColor, mutedTextColor: mutedTextColor })),
|
|
103
|
+
currentStep === CheckoutStep.SUCCESS && (React.createElement(SuccessStep, { plan: plan, txHash: txHash, onClose: onClose, theme: theme, textColor: textColor, mutedTextColor: mutedTextColor })),
|
|
104
|
+
currentStep === CheckoutStep.ERROR && (React.createElement(ErrorStep, { error: error, onRetry: handlePayment, onClose: onClose, theme: theme, textColor: textColor }))))));
|
|
105
|
+
};
|
|
106
|
+
const ReviewStep = ({ plan, onProceed, theme, textColor, mutedTextColor, borderColor, isPending, }) => (React.createElement(React.Fragment, null,
|
|
107
|
+
React.createElement("div", { className: `border ${borderColor} rounded-lg p-6 mb-6` },
|
|
108
|
+
React.createElement("div", { className: "flex justify-between items-start mb-4" },
|
|
109
|
+
React.createElement("div", null,
|
|
110
|
+
React.createElement("h3", { className: `text-xl font-bold ${textColor}` },
|
|
111
|
+
plan.name,
|
|
112
|
+
" Plan"),
|
|
113
|
+
React.createElement("p", { className: mutedTextColor }, plan.description)),
|
|
114
|
+
React.createElement("div", { className: "text-right" },
|
|
115
|
+
React.createElement("p", { className: `text-2xl font-bold ${textColor}` }, formatUSDC(plan.price)),
|
|
116
|
+
React.createElement("p", { className: `text-sm ${mutedTextColor}` }, "per month"))),
|
|
117
|
+
React.createElement("div", { className: "space-y-2" },
|
|
118
|
+
React.createElement("p", { className: `font-semibold ${textColor} mb-2` }, "Included features:"),
|
|
119
|
+
plan.features.slice(0, 5).map((feature, index) => (React.createElement("div", { key: index, className: "flex items-center gap-2" },
|
|
120
|
+
React.createElement("svg", { className: "w-4 h-4 text-green-500", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
121
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 13l4 4L19 7" })),
|
|
122
|
+
React.createElement("span", { className: `text-sm ${mutedTextColor}` }, feature)))))),
|
|
123
|
+
React.createElement("div", { className: `bg-${theme === 'dark' ? 'gray-800' : 'gray-50'} rounded-lg p-6 mb-6` },
|
|
124
|
+
React.createElement("h4", { className: `font-semibold mb-4 ${textColor}` }, "Payment Details"),
|
|
125
|
+
React.createElement("div", { className: "space-y-2" },
|
|
126
|
+
React.createElement("div", { className: "flex justify-between" },
|
|
127
|
+
React.createElement("span", { className: mutedTextColor }, "Subtotal"),
|
|
128
|
+
React.createElement("span", { className: textColor }, formatUSDC(plan.price))),
|
|
129
|
+
React.createElement("div", { className: "flex justify-between" },
|
|
130
|
+
React.createElement("span", { className: mutedTextColor }, "Currency"),
|
|
131
|
+
React.createElement("span", { className: textColor }, "USDC (Varity L3)")),
|
|
132
|
+
React.createElement("div", { className: `border-t ${borderColor} pt-2 mt-2` }),
|
|
133
|
+
React.createElement("div", { className: "flex justify-between font-bold" },
|
|
134
|
+
React.createElement("span", { className: textColor }, "Total Due Today"),
|
|
135
|
+
React.createElement("span", { className: `text-xl ${textColor}` }, formatUSDC(plan.price))))),
|
|
136
|
+
React.createElement("button", { onClick: onProceed, disabled: isPending, className: "w-full py-4 bg-blue-600 hover:bg-blue-700 text-white font-bold rounded-lg transition-colors disabled:opacity-50 disabled:cursor-not-allowed flex items-center justify-center gap-2" }, isPending ? (React.createElement(React.Fragment, null,
|
|
137
|
+
React.createElement(LoadingSpinner, null),
|
|
138
|
+
"Processing...")) : (React.createElement(React.Fragment, null,
|
|
139
|
+
"Pay ",
|
|
140
|
+
formatUSDC(plan.price),
|
|
141
|
+
" USDC"))),
|
|
142
|
+
React.createElement("p", { className: `text-xs text-center mt-4 ${mutedTextColor}` }, "Your payment is secure and encrypted. Powered by Thirdweb on Varity L3.")));
|
|
143
|
+
const ProcessingStep = ({ message, txHash, theme, textColor, mutedTextColor }) => (React.createElement("div", { className: "text-center py-12" },
|
|
144
|
+
React.createElement("div", { className: "inline-flex items-center justify-center w-20 h-20 rounded-full bg-blue-500 text-white mb-6 animate-pulse" },
|
|
145
|
+
React.createElement(LoadingSpinner, null)),
|
|
146
|
+
React.createElement("h3", { className: `text-2xl font-bold mb-2 ${textColor}` }, message),
|
|
147
|
+
React.createElement("p", { className: mutedTextColor }, "Please wait while we process your transaction"),
|
|
148
|
+
txHash && (React.createElement("div", { className: "mt-6" },
|
|
149
|
+
React.createElement("p", { className: `text-sm ${mutedTextColor} mb-2` }, "Transaction Hash:"),
|
|
150
|
+
React.createElement("code", { className: `text-xs ${theme === 'dark' ? 'bg-gray-800 text-gray-300' : 'bg-gray-100 text-gray-700'} px-3 py-1 rounded` },
|
|
151
|
+
txHash.substring(0, 10),
|
|
152
|
+
"...",
|
|
153
|
+
txHash.substring(txHash.length - 10))))));
|
|
154
|
+
const SuccessStep = ({ plan, txHash, onClose, theme, textColor, mutedTextColor }) => (React.createElement("div", { className: "text-center py-12" },
|
|
155
|
+
React.createElement("div", { className: "inline-flex items-center justify-center w-20 h-20 rounded-full bg-green-500 text-white mb-6" },
|
|
156
|
+
React.createElement("svg", { className: "w-12 h-12", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
157
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M5 13l4 4L19 7" }))),
|
|
158
|
+
React.createElement("h3", { className: `text-2xl font-bold mb-2 ${textColor}` }, "Payment Successful!"),
|
|
159
|
+
React.createElement("p", { className: mutedTextColor },
|
|
160
|
+
"You're now subscribed to the ",
|
|
161
|
+
plan.name,
|
|
162
|
+
" plan"),
|
|
163
|
+
txHash && (React.createElement("div", { className: "mt-6" },
|
|
164
|
+
React.createElement("p", { className: `text-sm ${mutedTextColor} mb-2` }, "Transaction Hash:"),
|
|
165
|
+
React.createElement("code", { className: `text-xs ${theme === 'dark' ? 'bg-gray-800 text-gray-300' : 'bg-gray-100 text-gray-700'} px-3 py-1 rounded` }, txHash))),
|
|
166
|
+
React.createElement("button", { onClick: onClose, className: "mt-8 px-8 py-3 bg-blue-600 hover:bg-blue-700 text-white font-semibold rounded-lg transition-colors" }, "Go to Dashboard")));
|
|
167
|
+
const ErrorStep = ({ error, onRetry, onClose, theme, textColor }) => (React.createElement("div", { className: "text-center py-12" },
|
|
168
|
+
React.createElement("div", { className: "inline-flex items-center justify-center w-20 h-20 rounded-full bg-red-500 text-white mb-6" },
|
|
169
|
+
React.createElement("svg", { className: "w-12 h-12", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24" },
|
|
170
|
+
React.createElement("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }))),
|
|
171
|
+
React.createElement("h3", { className: `text-2xl font-bold mb-2 ${textColor}` }, "Payment Failed"),
|
|
172
|
+
React.createElement("p", { className: "text-red-500 mb-8" }, error || 'An error occurred during payment'),
|
|
173
|
+
React.createElement("div", { className: "flex gap-4 justify-center" },
|
|
174
|
+
React.createElement("button", { onClick: onRetry, className: "px-6 py-3 bg-blue-600 hover:bg-blue-700 text-white font-semibold rounded-lg transition-colors" }, "Try Again"),
|
|
175
|
+
React.createElement("button", { onClick: onClose, className: `px-6 py-3 ${theme === 'dark' ? 'bg-gray-700 hover:bg-gray-600' : 'bg-gray-200 hover:bg-gray-300'} ${textColor} font-semibold rounded-lg transition-colors` }, "Cancel"))));
|
|
176
|
+
/**
|
|
177
|
+
* Loading Spinner Component
|
|
178
|
+
*/
|
|
179
|
+
const LoadingSpinner = () => (React.createElement("svg", { className: "animate-spin h-6 w-6", xmlns: "http://www.w3.org/2000/svg", fill: "none", viewBox: "0 0 24 24" },
|
|
180
|
+
React.createElement("circle", { className: "opacity-25", cx: "12", cy: "12", r: "10", stroke: "currentColor", strokeWidth: "4" }),
|
|
181
|
+
React.createElement("path", { className: "opacity-75", fill: "currentColor", d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z" })));
|
|
182
|
+
export default CheckoutModal;
|
|
183
|
+
//# sourceMappingURL=CheckoutModal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckoutModal.js","sourceRoot":"","sources":["../../../src/components/Payments/CheckoutModal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { SubscriptionTier } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Subscription Widget Component
|
|
5
|
+
* Displays subscription plans with feature comparison
|
|
6
|
+
*/
|
|
7
|
+
interface SubscriptionWidgetProps {
|
|
8
|
+
currentPlan?: SubscriptionTier;
|
|
9
|
+
onSelectPlan: (planId: string) => void;
|
|
10
|
+
theme?: 'light' | 'dark';
|
|
11
|
+
showAnnualToggle?: boolean;
|
|
12
|
+
className?: string;
|
|
13
|
+
isLoading?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export declare const SubscriptionWidget: React.FC<SubscriptionWidgetProps>;
|
|
16
|
+
export default SubscriptionWidget;
|
|
17
|
+
//# sourceMappingURL=SubscriptionWidget.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubscriptionWidget.d.ts","sourceRoot":"","sources":["../../../src/components/Payments/SubscriptionWidget.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAoB,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG7D;;;GAGG;AAEH,UAAU,uBAAuB;IAC/B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA6FhE,CAAC;AA6KF,eAAe,kBAAkB,CAAC"}
|