@onairos/react-native 3.0.49 → 3.0.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/lib/commonjs/components/EmailVerificationModal.js +317 -0
  2. package/lib/commonjs/components/EmailVerificationModal.js.map +1 -0
  3. package/lib/commonjs/components/TrainingModal.js +66 -75
  4. package/lib/commonjs/components/TrainingModal.js.map +1 -1
  5. package/lib/commonjs/components/UniversalOnboarding.js +30 -5
  6. package/lib/commonjs/components/UniversalOnboarding.js.map +1 -1
  7. package/lib/commonjs/index.js +60 -2
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/services/platformAuthService.js +505 -53
  10. package/lib/commonjs/services/platformAuthService.js.map +1 -1
  11. package/lib/module/components/EmailVerificationModal.js +308 -0
  12. package/lib/module/components/EmailVerificationModal.js.map +1 -0
  13. package/lib/module/components/TrainingModal.js +66 -75
  14. package/lib/module/components/TrainingModal.js.map +1 -1
  15. package/lib/module/components/UniversalOnboarding.js +31 -6
  16. package/lib/module/components/UniversalOnboarding.js.map +1 -1
  17. package/lib/module/index.js +3 -1
  18. package/lib/module/index.js.map +1 -1
  19. package/lib/module/services/platformAuthService.js +496 -52
  20. package/lib/module/services/platformAuthService.js.map +1 -1
  21. package/lib/typescript/components/EmailVerificationModal.d.ts +10 -0
  22. package/lib/typescript/components/EmailVerificationModal.d.ts.map +1 -0
  23. package/lib/typescript/components/TrainingModal.d.ts.map +1 -1
  24. package/lib/typescript/components/UniversalOnboarding.d.ts.map +1 -1
  25. package/lib/typescript/index.d.ts +4 -1
  26. package/lib/typescript/index.d.ts.map +1 -1
  27. package/lib/typescript/services/platformAuthService.d.ts +57 -1
  28. package/lib/typescript/services/platformAuthService.d.ts.map +1 -1
  29. package/package.json +2 -1
  30. package/src/components/EmailVerificationModal.tsx +356 -0
  31. package/src/components/TrainingModal.tsx +69 -73
  32. package/src/components/UniversalOnboarding.tsx +31 -6
  33. package/src/index.ts +14 -1
  34. package/src/services/platformAuthService.ts +527 -55
@@ -1,7 +1,9 @@
1
+ import AsyncStorage from '@react-native-async-storage/async-storage';
2
+
1
3
  // Define types for platform auth configuration
2
4
 
3
5
  // Configuration for each platform's authentication
4
- const PLATFORM_AUTH_CONFIG = {
6
+ let PLATFORM_AUTH_CONFIG = {
5
7
  instagram: {
6
8
  hasNativeSDK: false,
7
9
  // Instagram uses OAuth WebView flow
@@ -9,11 +11,15 @@ const PLATFORM_AUTH_CONFIG = {
9
11
  color: '#E1306C'
10
12
  },
11
13
  youtube: {
12
- hasNativeSDK: false,
14
+ hasNativeSDK: true,
13
15
  // Native Google Sign-In SDK enabled
14
16
  nativeSDKPackage: '@react-native-google-signin/google-signin',
15
17
  authEndpoint: 'https://api2.onairos.uk/youtube/authorize',
16
- color: '#FF0000'
18
+ color: '#FF0000',
19
+ clientId: '1030678346906-lovkuds2ouqmoc8eu5qpo98spa6edv4o.apps.googleusercontent.com',
20
+ redirectUri: 'onairosevents://auth/callback',
21
+ scope: 'https://www.googleapis.com/auth/youtube.readonly',
22
+ responseType: 'code'
17
23
  },
18
24
  reddit: {
19
25
  hasNativeSDK: false,
@@ -179,67 +185,192 @@ export const initiateOAuth = async (platform, username, appName) => {
179
185
  * @param platform The platform to authenticate with
180
186
  * @returns A Promise that resolves to the authentication result
181
187
  */
182
- export const initiateNativeAuth = async platform => {
183
- try {
184
- // Currently only YouTube (Google Sign-In) is supported
185
- if (platform === 'youtube') {
186
- console.log('Initiating native Google Sign-In for YouTube');
188
+ export const initiateNativeAuth = async (platform, username) => {
189
+ if (platform === 'youtube') {
190
+ console.log('🔗 Initiating native Google Sign-In for YouTube');
191
+ try {
192
+ var _userInfo$user, _currentUser$user, _userInfo$user4, _userInfo$user6, _userInfo$user7, _userInfo$user8;
193
+ // Import Google Sign-In dynamically to avoid errors if not installed
194
+ const {
195
+ GoogleSignin,
196
+ statusCodes
197
+ } = require('@react-native-google-signin/google-signin');
198
+
199
+ // Configure Google Sign-In
200
+ await GoogleSignin.configure({
201
+ webClientId: '1030678346906-lovkuds2ouqmoc8eu5qpo98spa6edv4o.apps.googleusercontent.com',
202
+ // Replace with your web client ID
203
+ iosClientId: '1030678346906-lovkuds2ouqmoc8eu5qpo98spa6edv4o.apps.googleusercontent.com',
204
+ // Replace with your iOS client ID
205
+ scopes: ['https://www.googleapis.com/auth/youtube.readonly'],
206
+ offlineAccess: true,
207
+ // CRITICAL: This ensures we get refresh tokens
208
+ hostedDomain: '',
209
+ forceCodeForRefreshToken: true,
210
+ // CRITICAL: Force refresh token on first sign-in
211
+ accountName: '' // Clear to avoid conflicts
212
+ });
213
+
214
+ // Check if Google Play Services are available
215
+ await GoogleSignin.hasPlayServices();
216
+
217
+ // Sign in with Google
218
+ const userInfo = await GoogleSignin.signIn();
219
+ console.log('✅ Google Sign-In successful:', (_userInfo$user = userInfo.user) === null || _userInfo$user === void 0 ? void 0 : _userInfo$user.email);
220
+
221
+ // Get access token for API calls
222
+ const tokens = await GoogleSignin.getTokens();
223
+ console.log('🔑 Got Google tokens');
224
+
225
+ // Get current user info with refresh token
226
+ const currentUser = await GoogleSignin.getCurrentUser();
227
+ console.log('👤 Current user info:', currentUser === null || currentUser === void 0 || (_currentUser$user = currentUser.user) === null || _currentUser$user === void 0 ? void 0 : _currentUser$user.email);
228
+
229
+ // Extract refresh token from server auth code
230
+ let refreshToken = null;
231
+ if (currentUser !== null && currentUser !== void 0 && currentUser.serverAuthCode) {
232
+ console.log('🔄 Server auth code available for refresh token');
233
+ refreshToken = currentUser.serverAuthCode;
234
+ }
235
+ if (!refreshToken) {
236
+ console.warn('⚠️ No refresh token available - token refresh may fail later');
237
+ } else {
238
+ console.log('✅ Refresh token available for YouTube connection');
239
+ }
240
+
241
+ // Fetch YouTube channel information
242
+ let channelName = 'Unknown Channel';
243
+ let channelId = null;
187
244
  try {
188
- // Import Google Sign-In dynamically to avoid errors if not installed
189
- const {
190
- GoogleSignin,
191
- statusCodes
192
- } = require('@react-native-google-signin/google-signin');
193
-
194
- // Configure Google Sign-In
195
- await GoogleSignin.configure({
196
- scopes: ['https://www.googleapis.com/auth/youtube.readonly', 'https://www.googleapis.com/auth/youtube.force-ssl'],
197
- webClientId: 'YOUR_WEB_CLIENT_ID.apps.googleusercontent.com',
198
- // Replace with your Web Client ID from Google Cloud Console
199
- iosClientId: 'YOUR_IOS_CLIENT_ID.apps.googleusercontent.com',
200
- // Replace with your iOS Client ID (iOS only)
201
- offlineAccess: true,
202
- hostedDomain: '',
203
- forceCodeForRefreshToken: true
245
+ console.log('📺 Fetching YouTube channel information...');
246
+ const channelResponse = await fetch('https://www.googleapis.com/youtube/v3/channels?part=snippet&mine=true', {
247
+ headers: {
248
+ 'Authorization': `Bearer ${tokens.accessToken}`,
249
+ 'Accept': 'application/json'
250
+ }
204
251
  });
252
+ if (channelResponse.ok) {
253
+ const channelData = await channelResponse.json();
254
+ if (channelData.items && channelData.items.length > 0) {
255
+ channelName = channelData.items[0].snippet.title;
256
+ channelId = channelData.items[0].id;
257
+ console.log('✅ YouTube channel found:', channelName);
258
+ }
259
+ }
260
+ } catch (channelError) {
261
+ var _userInfo$user2, _userInfo$user3;
262
+ console.log('⚠️ Error fetching YouTube channel info:', channelError);
263
+ channelName = ((_userInfo$user2 = userInfo.user) === null || _userInfo$user2 === void 0 ? void 0 : _userInfo$user2.name) || ((_userInfo$user3 = userInfo.user) === null || _userInfo$user3 === void 0 ? void 0 : _userInfo$user3.email) || 'Unknown Channel';
264
+ }
205
265
 
206
- // Check if device supports Google Play Services
207
- await GoogleSignin.hasPlayServices();
266
+ // Get authentication info
267
+ let authToken = (await AsyncStorage.getItem('onairos_jwt_token')) || (await AsyncStorage.getItem('enoch_token')) || (await AsyncStorage.getItem('auth_token'));
268
+ const storedUsername = await AsyncStorage.getItem('onairos_username');
269
+ const finalUsername = storedUsername || username || ((_userInfo$user4 = userInfo.user) === null || _userInfo$user4 === void 0 ? void 0 : _userInfo$user4.email) || 'youtube_user';
208
270
 
209
- // Sign in
210
- const userInfo = await GoogleSignin.signIn();
211
- console.log('Google Sign-In successful:', userInfo);
271
+ // Create auth token if needed
272
+ if (!authToken || authToken.trim().length < 20) {
273
+ console.log('🔐 Creating authentication token for YouTube...');
274
+ try {
275
+ var _userInfo$user5;
276
+ const fallbackEmail = ((_userInfo$user5 = userInfo.user) === null || _userInfo$user5 === void 0 ? void 0 : _userInfo$user5.email) || `${finalUsername}@youtube.temp`;
212
277
 
213
- // Get access token
214
- const tokens = await GoogleSignin.getTokens();
215
- console.log('Google tokens:', tokens);
278
+ // Create user accounts and get JWT token
279
+ const onairosSignupResponse = await fetch('https://api2.onairos.uk/register/enoch', {
280
+ method: 'POST',
281
+ headers: {
282
+ 'Content-Type': 'application/json'
283
+ },
284
+ body: JSON.stringify({
285
+ email: fallbackEmail,
286
+ username: finalUsername,
287
+ name: finalUsername
288
+ })
289
+ });
290
+ if (onairosSignupResponse.ok) {
291
+ var _onairosResponseData$;
292
+ const onairosResponseData = await onairosSignupResponse.json();
216
293
 
217
- // Here you would typically send the tokens to your backend
218
- // to associate the YouTube account with the user
294
+ // Extract token from response
295
+ authToken = onairosResponseData.token || ((_onairosResponseData$ = onairosResponseData.data) === null || _onairosResponseData$ === void 0 ? void 0 : _onairosResponseData$.token) || onairosResponseData.jwt;
296
+ if (authToken) {
297
+ // Store tokens
298
+ await AsyncStorage.setItem('onairos_jwt_token', authToken);
299
+ await AsyncStorage.setItem('enoch_token', authToken);
300
+ await AsyncStorage.setItem('auth_token', authToken);
301
+ await AsyncStorage.setItem('onairos_username', onairosResponseData.username || finalUsername);
302
+ console.log('✅ Successfully created and stored authentication token');
303
+ }
304
+ }
305
+ } catch (tokenError) {
306
+ console.warn('⚠️ Error creating auth token:', tokenError);
307
+ }
308
+ }
309
+ console.log('🔗 Linking YouTube data to user:', finalUsername);
310
+ console.log('📺 YouTube channel name:', channelName);
219
311
 
312
+ // Send tokens to backend for YouTube data processing
313
+ const backendResponse = await fetch('https://api2.onairos.uk/youtube/native-auth', {
314
+ method: 'POST',
315
+ headers: {
316
+ 'Content-Type': 'application/json',
317
+ ...(authToken && {
318
+ 'Authorization': `Bearer ${authToken}`
319
+ })
320
+ },
321
+ body: JSON.stringify({
322
+ session: {
323
+ username: finalUsername,
324
+ platform: 'youtube',
325
+ timestamp: new Date().toISOString(),
326
+ channelName: channelName,
327
+ channelId: channelId
328
+ },
329
+ googleUser: userInfo.user,
330
+ accessToken: tokens.accessToken,
331
+ idToken: tokens.idToken,
332
+ refreshToken: refreshToken,
333
+ // CRITICAL: Include refresh token
334
+ serverAuthCode: currentUser === null || currentUser === void 0 ? void 0 : currentUser.serverAuthCode,
335
+ userAccountInfo: {
336
+ username: finalUsername,
337
+ email: (_userInfo$user6 = userInfo.user) === null || _userInfo$user6 === void 0 ? void 0 : _userInfo$user6.email,
338
+ authToken: authToken,
339
+ channelName: channelName,
340
+ channelId: channelId,
341
+ userIdentifier: authToken ? `user-${authToken.substring(0, 10)}` : `youtube-${(_userInfo$user7 = userInfo.user) === null || _userInfo$user7 === void 0 ? void 0 : _userInfo$user7.email}`,
342
+ googleId: (_userInfo$user8 = userInfo.user) === null || _userInfo$user8 === void 0 ? void 0 : _userInfo$user8.id
343
+ },
344
+ tokenExpiry: new Date(Date.now() + 3600 * 1000).toISOString(),
345
+ // 1 hour from now
346
+ requestRefreshToken: true
347
+ })
348
+ });
349
+ if (backendResponse.ok) {
350
+ const responseData = await backendResponse.json();
351
+ console.log('✅ YouTube connection processed by backend:', responseData);
220
352
  return true;
221
- } catch (error) {
222
- console.error('Google Sign-In error:', error);
223
- const {
224
- statusCodes: StatusCodes
225
- } = require('@react-native-google-signin/google-signin');
226
- if (error.code === StatusCodes.SIGN_IN_CANCELLED) {
227
- console.log('User cancelled the sign-in flow');
228
- } else if (error.code === StatusCodes.IN_PROGRESS) {
229
- console.log('Sign-in is in progress already');
230
- } else if (error.code === StatusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
231
- console.log('Play services not available or outdated');
232
- } else {
233
- console.log('Some other error happened');
234
- }
353
+ } else {
354
+ const errorData = await backendResponse.text();
355
+ console.error('❌ Backend processing failed:', backendResponse.status, errorData);
235
356
  return false;
236
357
  }
358
+ } catch (error) {
359
+ console.error('❌ Google Sign-In error:', error);
360
+ const {
361
+ statusCodes: StatusCodes
362
+ } = require('@react-native-google-signin/google-signin');
363
+ if (error.code === StatusCodes.SIGN_IN_CANCELLED) {
364
+ console.log('User cancelled Google Sign-In');
365
+ } else if (error.code === StatusCodes.IN_PROGRESS) {
366
+ console.log('Google Sign-In already in progress');
367
+ } else if (error.code === StatusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
368
+ console.log('Google Play Services not available');
369
+ }
370
+ return false;
237
371
  }
238
- throw new Error(`Native authentication not supported for ${platform}`);
239
- } catch (error) {
240
- console.error(`Error initiating native auth for ${platform}:`, error);
241
- throw error;
242
372
  }
373
+ return false;
243
374
  };
244
375
 
245
376
  /**
@@ -303,4 +434,317 @@ export const testApiConnectivity = async () => {
303
434
  };
304
435
  }
305
436
  };
437
+
438
+ /**
439
+ * 🔄 REFRESH GOOGLE TOKENS
440
+ */
441
+ export const refreshGoogleTokens = async () => {
442
+ try {
443
+ console.log('🔄 Attempting to refresh Google tokens...');
444
+ const {
445
+ GoogleSignin
446
+ } = require('@react-native-google-signin/google-signin');
447
+ const currentUser = await GoogleSignin.getCurrentUser();
448
+ if (!currentUser) {
449
+ console.log('❌ User not signed in to Google, cannot refresh tokens');
450
+ return null;
451
+ }
452
+ const tokens = await GoogleSignin.getTokens();
453
+ console.log('✅ Successfully refreshed Google tokens');
454
+ return {
455
+ accessToken: tokens.accessToken,
456
+ idToken: tokens.idToken
457
+ };
458
+ } catch (error) {
459
+ console.error('❌ Failed to refresh Google tokens:', error);
460
+
461
+ // If refresh fails, try to sign in again
462
+ try {
463
+ console.log('🔄 Refresh failed, attempting re-authentication...');
464
+ const {
465
+ GoogleSignin
466
+ } = require('@react-native-google-signin/google-signin');
467
+ const userInfo = await GoogleSignin.signIn();
468
+ const tokens = await GoogleSignin.getTokens();
469
+ console.log('✅ Re-authentication successful');
470
+ return {
471
+ accessToken: tokens.accessToken,
472
+ idToken: tokens.idToken
473
+ };
474
+ } catch (signInError) {
475
+ console.error('❌ Re-authentication also failed:', signInError);
476
+ return null;
477
+ }
478
+ }
479
+ };
480
+
481
+ /**
482
+ * 🔄 REFRESH YOUTUBE TOKENS
483
+ */
484
+ export const refreshYouTubeTokens = async () => {
485
+ try {
486
+ var _currentUser$user2;
487
+ console.log('🔄 Refreshing YouTube tokens...');
488
+
489
+ // Get fresh tokens from Google SDK
490
+ const freshTokens = await refreshGoogleTokens();
491
+ if (!freshTokens) {
492
+ console.error('❌ Failed to get fresh tokens from Google SDK');
493
+ return false;
494
+ }
495
+
496
+ // Get current user info
497
+ const {
498
+ GoogleSignin
499
+ } = require('@react-native-google-signin/google-signin');
500
+ const currentUser = await GoogleSignin.getCurrentUser();
501
+ if (!currentUser) {
502
+ console.error('❌ No current Google user found');
503
+ return false;
504
+ }
505
+
506
+ // Get stored auth token
507
+ const authToken = (await AsyncStorage.getItem('onairos_jwt_token')) || (await AsyncStorage.getItem('enoch_token')) || (await AsyncStorage.getItem('auth_token'));
508
+ if (!authToken) {
509
+ console.error('❌ No auth token found for YouTube refresh');
510
+ return false;
511
+ }
512
+
513
+ // Send refreshed tokens to backend
514
+ const refreshResponse = await fetch('https://api2.onairos.uk/youtube/refresh-token', {
515
+ method: 'POST',
516
+ headers: {
517
+ 'Content-Type': 'application/json',
518
+ 'Authorization': `Bearer ${authToken}`
519
+ },
520
+ body: JSON.stringify({
521
+ accessToken: freshTokens.accessToken,
522
+ idToken: freshTokens.idToken,
523
+ refreshToken: currentUser.serverAuthCode,
524
+ userEmail: (_currentUser$user2 = currentUser.user) === null || _currentUser$user2 === void 0 ? void 0 : _currentUser$user2.email,
525
+ tokenExpiry: new Date(Date.now() + 3600 * 1000).toISOString(),
526
+ timestamp: new Date().toISOString()
527
+ })
528
+ });
529
+ if (refreshResponse.ok) {
530
+ const responseData = await refreshResponse.json();
531
+ console.log('✅ YouTube tokens refreshed successfully:', responseData);
532
+ return true;
533
+ } else {
534
+ const errorData = await refreshResponse.text();
535
+ console.error('❌ YouTube token refresh failed:', refreshResponse.status, errorData);
536
+ return false;
537
+ }
538
+ } catch (error) {
539
+ console.error('❌ Error refreshing YouTube tokens:', error);
540
+ return false;
541
+ }
542
+ };
543
+
544
+ /**
545
+ * 🎯 ENHANCED OAUTH CALLBACK HANDLER
546
+ */
547
+ export const handleOAuthCallbackUrl = url => {
548
+ try {
549
+ console.log('🔍 Processing OAuth callback URL:', url);
550
+
551
+ // Parse the URL
552
+ const parsedUrl = new URL(url);
553
+
554
+ // Extract platform and code
555
+ const platform = parsedUrl.searchParams.get('platform') || parsedUrl.pathname.split('/').find(segment => ['instagram', 'youtube', 'reddit', 'pinterest', 'email'].includes(segment));
556
+ const code = parsedUrl.searchParams.get('code');
557
+ const error = parsedUrl.searchParams.get('error');
558
+ if (error) {
559
+ console.error('❌ OAuth error in callback:', error);
560
+ return {
561
+ success: false
562
+ };
563
+ }
564
+ if (code && platform) {
565
+ console.log(`✅ OAuth callback processed: ${platform} with code: ${code.substring(0, 10)}...`);
566
+ return {
567
+ platform,
568
+ code,
569
+ success: true
570
+ };
571
+ }
572
+ console.warn('⚠️ OAuth callback missing platform or code');
573
+ return {
574
+ success: false
575
+ };
576
+ } catch (error) {
577
+ console.error('❌ Error processing OAuth callback:', error);
578
+ return {
579
+ success: false
580
+ };
581
+ }
582
+ };
583
+
584
+ /**
585
+ * 🔧 UPDATE GOOGLE CLIENT IDS
586
+ * Allows apps to configure their own Google client IDs
587
+ */
588
+ export const updateGoogleClientIds = config => {
589
+ console.log('🔧 Updating Google client IDs configuration');
590
+ if (config.webClientId || config.iosClientId) {
591
+ // Update the YouTube configuration
592
+ PLATFORM_AUTH_CONFIG.youtube = {
593
+ ...PLATFORM_AUTH_CONFIG.youtube,
594
+ clientId: config.webClientId || PLATFORM_AUTH_CONFIG.youtube.clientId
595
+ };
596
+ console.log('✅ Google client IDs updated successfully');
597
+ }
598
+ };
599
+
600
+ /**
601
+ * 📧 EMAIL VERIFICATION FUNCTIONS
602
+ * Using the correct Onairos email verification endpoints
603
+ */
604
+ export const requestEmailVerification = async email => {
605
+ try {
606
+ console.log('📧 Requesting email verification for:', email);
607
+ const response = await fetch('https://api2.onairos.uk/email/verify', {
608
+ method: 'POST',
609
+ headers: {
610
+ 'Content-Type': 'application/json'
611
+ },
612
+ body: JSON.stringify({
613
+ email
614
+ })
615
+ });
616
+ const result = await response.json();
617
+ if (response.ok && result.success) {
618
+ console.log('✅ Email verification requested successfully');
619
+ console.log('🔍 Testing mode: Code logged to server console, but accepts any code');
620
+ return {
621
+ success: true,
622
+ message: result.message || 'Verification code sent to your email (testing mode: any code accepted)'
623
+ };
624
+ } else {
625
+ console.error('❌ Email verification request failed:', result.error);
626
+ return {
627
+ success: false,
628
+ error: result.error || 'Failed to send verification code'
629
+ };
630
+ }
631
+ } catch (error) {
632
+ console.error('❌ Email verification request error:', error);
633
+ return {
634
+ success: false,
635
+ error: error instanceof Error ? error.message : 'Network error'
636
+ };
637
+ }
638
+ };
639
+ export const verifyEmailCode = async (email, code) => {
640
+ try {
641
+ console.log('🔍 Verifying email code for:', email);
642
+ const response = await fetch('https://api2.onairos.uk/email/verify/confirm', {
643
+ method: 'POST',
644
+ headers: {
645
+ 'Content-Type': 'application/json'
646
+ },
647
+ body: JSON.stringify({
648
+ email,
649
+ code
650
+ })
651
+ });
652
+ const result = await response.json();
653
+ if (response.ok && result.success) {
654
+ console.log('✅ Email verification successful');
655
+ console.log('🔍 Testing mode: Any code accepted for verification');
656
+ return {
657
+ success: true,
658
+ message: result.message || 'Email verified successfully'
659
+ };
660
+ } else {
661
+ console.error('❌ Email verification failed:', result.error);
662
+ return {
663
+ success: false,
664
+ error: result.error || 'Invalid verification code'
665
+ };
666
+ }
667
+ } catch (error) {
668
+ console.error('❌ Email verification error:', error);
669
+ return {
670
+ success: false,
671
+ error: error instanceof Error ? error.message : 'Network error'
672
+ };
673
+ }
674
+ };
675
+ export const checkEmailVerificationStatus = async email => {
676
+ try {
677
+ console.log('🔍 Checking email verification status for:', email);
678
+ const response = await fetch(`https://api2.onairos.uk/email/verify/status/${encodeURIComponent(email)}`, {
679
+ method: 'GET',
680
+ headers: {
681
+ 'Content-Type': 'application/json'
682
+ }
683
+ });
684
+ const result = await response.json();
685
+ if (response.ok) {
686
+ console.log('✅ Email verification status retrieved');
687
+ return {
688
+ success: true,
689
+ isPending: result.isPending || false,
690
+ message: result.message || 'Status retrieved successfully'
691
+ };
692
+ } else {
693
+ console.error('❌ Email verification status check failed:', result.error);
694
+ return {
695
+ success: false,
696
+ error: result.error || 'Failed to check verification status'
697
+ };
698
+ }
699
+ } catch (error) {
700
+ console.error('❌ Email verification status error:', error);
701
+ return {
702
+ success: false,
703
+ error: error instanceof Error ? error.message : 'Network error'
704
+ };
705
+ }
706
+ };
707
+
708
+ /**
709
+ * 🔌 UNIVERSAL PLATFORM DISCONNECTION
710
+ * Backend confirmed this endpoint is fully implemented
711
+ */
712
+ export const disconnectPlatform = async (platform, username) => {
713
+ try {
714
+ console.log(`🔌 Disconnecting ${platform} for user:`, username);
715
+ const response = await fetch('https://api2.onairos.uk/revoke', {
716
+ method: 'POST',
717
+ headers: {
718
+ 'Content-Type': 'application/json'
719
+ },
720
+ body: JSON.stringify({
721
+ Info: {
722
+ connection: platform.charAt(0).toUpperCase() + platform.slice(1),
723
+ // Capitalize platform name
724
+ username: username
725
+ }
726
+ })
727
+ });
728
+ const result = await response.json();
729
+ if (response.ok && result.success) {
730
+ console.log(`✅ ${platform} disconnected successfully`);
731
+ return {
732
+ success: true,
733
+ message: result.message || `${platform} disconnected successfully`
734
+ };
735
+ } else {
736
+ console.error(`❌ ${platform} disconnection failed:`, result.error);
737
+ return {
738
+ success: false,
739
+ error: result.error || `Failed to disconnect ${platform}`
740
+ };
741
+ }
742
+ } catch (error) {
743
+ console.error(`❌ ${platform} disconnection error:`, error);
744
+ return {
745
+ success: false,
746
+ error: error instanceof Error ? error.message : 'Network error'
747
+ };
748
+ }
749
+ };
306
750
  //# sourceMappingURL=platformAuthService.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["PLATFORM_AUTH_CONFIG","instagram","hasNativeSDK","authEndpoint","color","youtube","nativeSDKPackage","reddit","pinterest","email","platform","config","getAuthEndpoint","getPlatformColor","initiateOAuth","username","appName","console","log","error","Error","state","jsonData","session","oauthState","response","fetch","method","headers","body","JSON","stringify","status","ok","errorText","text","responseData","json","instagramURL","data","redditURL","pinterestURL","youtubeURL","emailURL","url","initiateNativeAuth","GoogleSignin","statusCodes","require","configure","scopes","webClientId","iosClientId","offlineAccess","hostedDomain","forceCodeForRefreshToken","hasPlayServices","userInfo","signIn","tokens","getTokens","StatusCodes","code","SIGN_IN_CANCELLED","IN_PROGRESS","PLAY_SERVICES_NOT_AVAILABLE","handleOAuthCallback","parsedUrl","URL","searchParams","get","isOAuthCallback","startsWith","testApiConnectivity","success","message"],"sourceRoot":"..\\..\\..\\src","sources":["services/platformAuthService.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["AsyncStorage","PLATFORM_AUTH_CONFIG","instagram","hasNativeSDK","authEndpoint","color","youtube","nativeSDKPackage","clientId","redirectUri","scope","responseType","reddit","pinterest","email","platform","config","getAuthEndpoint","getPlatformColor","initiateOAuth","username","appName","console","log","error","Error","state","jsonData","session","oauthState","response","fetch","method","headers","body","JSON","stringify","status","ok","errorText","text","responseData","json","instagramURL","data","redditURL","pinterestURL","youtubeURL","emailURL","url","initiateNativeAuth","_userInfo$user","_currentUser$user","_userInfo$user4","_userInfo$user6","_userInfo$user7","_userInfo$user8","GoogleSignin","statusCodes","require","configure","webClientId","iosClientId","scopes","offlineAccess","hostedDomain","forceCodeForRefreshToken","accountName","hasPlayServices","userInfo","signIn","user","tokens","getTokens","currentUser","getCurrentUser","refreshToken","serverAuthCode","warn","channelName","channelId","channelResponse","accessToken","channelData","items","length","snippet","title","id","channelError","_userInfo$user2","_userInfo$user3","name","authToken","getItem","storedUsername","finalUsername","trim","_userInfo$user5","fallbackEmail","onairosSignupResponse","_onairosResponseData$","onairosResponseData","token","jwt","setItem","tokenError","backendResponse","timestamp","Date","toISOString","googleUser","idToken","userAccountInfo","userIdentifier","substring","googleId","tokenExpiry","now","requestRefreshToken","errorData","StatusCodes","code","SIGN_IN_CANCELLED","IN_PROGRESS","PLAY_SERVICES_NOT_AVAILABLE","handleOAuthCallback","parsedUrl","URL","searchParams","get","isOAuthCallback","startsWith","testApiConnectivity","success","message","refreshGoogleTokens","signInError","refreshYouTubeTokens","_currentUser$user2","freshTokens","refreshResponse","userEmail","handleOAuthCallbackUrl","pathname","split","find","segment","includes","updateGoogleClientIds","requestEmailVerification","result","verifyEmailCode","checkEmailVerificationStatus","encodeURIComponent","isPending","disconnectPlatform","Info","connection","charAt","toUpperCase","slice"],"sourceRoot":"..\\..\\..\\src","sources":["services/platformAuthService.ts"],"mappings":"AACA,OAAOA,YAAY,MAAM,2CAA2C;;AAEpE;;AAYA;AACA,IAAIC,oBAAwD,GAAG;EAC7DC,SAAS,EAAE;IACTC,YAAY,EAAE,KAAK;IAAE;IACrBC,YAAY,EAAE,6CAA6C;IAC3DC,KAAK,EAAE;EACT,CAAC;EACDC,OAAO,EAAE;IACPH,YAAY,EAAE,IAAI;IAAE;IACpBI,gBAAgB,EAAE,2CAA2C;IAC7DH,YAAY,EAAE,2CAA2C;IACzDC,KAAK,EAAE,SAAS;IAChBG,QAAQ,EAAE,2EAA2E;IACrFC,WAAW,EAAE,+BAA+B;IAC5CC,KAAK,EAAE,kDAAkD;IACzDC,YAAY,EAAE;EAChB,CAAC;EACDC,MAAM,EAAE;IACNT,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,0CAA0C;IACxDC,KAAK,EAAE;EACT,CAAC;EACDQ,SAAS,EAAE;IACTV,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,6CAA6C;IAC3DC,KAAK,EAAE;EACT,CAAC;EACDS,KAAK,EAAE;IACLX,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,yCAAyC;IACvDC,KAAK,EAAE;EACT;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMF,YAAY,GAAIY,QAAgB,IAAc;EACzD,MAAMC,MAAM,GAAGf,oBAAoB,CAACc,QAAQ,CAAC;EAC7C,OAAO,CAAAC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEb,YAAY,KAAI,KAAK;AACtC,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMc,eAAe,GAAIF,QAAgB,IAAa;EAC3D,MAAMC,MAAM,GAAGf,oBAAoB,CAACc,QAAQ,CAAC;EAC7C,OAAO,CAAAC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEZ,YAAY,KAAI,EAAE;AACnC,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMc,gBAAgB,GAAIH,QAAgB,IAAa;EAC5D,MAAMC,MAAM,GAAGf,oBAAoB,CAACc,QAAQ,CAAC;EAC7C,OAAO,CAAAC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEX,KAAK,KAAI,SAAS;AACnC,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMc,aAAa,GAAG,MAAAA,CAAOJ,QAAgB,EAAEK,QAAgB,EAAEC,OAAgB,KAA6B;EACnH,IAAI;IACFC,OAAO,CAACC,GAAG,CAAC,mCAAmC,EAAER,QAAQ,CAAC;IAC1DO,OAAO,CAACC,GAAG,CAAC,cAAc,EAAEH,QAAQ,CAAC;IACrCE,OAAO,CAACC,GAAG,CAAC,cAAc,EAAEF,OAAO,CAAC;;IAEpC;IACA,IAAI,CAACpB,oBAAoB,CAACc,QAAQ,CAAC,EAAE;MACnCO,OAAO,CAACE,KAAK,CAAC,yBAAyB,EAAET,QAAQ,CAAC;MAClD,MAAM,IAAIU,KAAK,CAAC,yBAAyBV,QAAQ,EAAE,CAAC;IACtD;;IAEA;IACA,IAAId,oBAAoB,CAACc,QAAQ,CAAC,CAACZ,YAAY,EAAE;MAC/CmB,OAAO,CAACC,GAAG,CAAC,6CAA6C,CAAC;MAC1D;MACA,OAAO,IAAI;IACb;IAEAD,OAAO,CAACC,GAAG,CAAC,qCAAqC,CAAC;IAClDD,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAEtB,oBAAoB,CAACc,QAAQ,CAAC,CAACX,YAAY,CAAC;;IAE7E;IACA,IAAIW,QAAQ,KAAK,WAAW,EAAE;MAC5B,MAAMW,KAAK,GAAG,UAAU;MACxB,MAAMC,QAAQ,GAAG;QACfC,OAAO,EAAE;UACPC,UAAU,EAAEH,KAAK;UACjBN,QAAQ,EAAEA,QAAQ,IAAI;QACxB;MACF,CAAC;MAEDE,OAAO,CAACC,GAAG,CAAC,qCAAqC,EAAEI,QAAQ,CAAC;MAE5D,MAAMG,QAAQ,GAAG,MAAMC,KAAK,CAAC,6CAA6C,EAAE;QAC1EC,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,cAAc,EAAE;QAClB,CAAC;QACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACT,QAAQ;MAC/B,CAAC,CAAC;MAEFL,OAAO,CAACC,GAAG,CAAC,qCAAqC,EAAEO,QAAQ,CAACO,MAAM,CAAC;MACnEf,OAAO,CAACC,GAAG,CAAC,sCAAsC,EAAEO,QAAQ,CAACG,OAAO,CAAC;MAErE,IAAI,CAACH,QAAQ,CAACQ,EAAE,EAAE;QAChB,MAAMC,SAAS,GAAG,MAAMT,QAAQ,CAACU,IAAI,CAAC,CAAC;QACvClB,OAAO,CAACE,KAAK,CAAC,8BAA8B,EAAEe,SAAS,CAAC;QACxD,MAAM,IAAId,KAAK,CAAC,8BAA8BK,QAAQ,CAACO,MAAM,MAAME,SAAS,EAAE,CAAC;MACjF;MAEA,MAAME,YAAY,GAAG,MAAMX,QAAQ,CAACY,IAAI,CAAC,CAAC;MAC1CpB,OAAO,CAACC,GAAG,CAAC,mCAAmC,EAAEkB,YAAY,CAAC;MAE9D,IAAIA,YAAY,CAACE,YAAY,EAAE;QAC7BrB,OAAO,CAACC,GAAG,CAAC,iCAAiC,EAAEkB,YAAY,CAACE,YAAY,CAAC;QACzE,OAAOF,YAAY,CAACE,YAAY;MAClC;MAEArB,OAAO,CAACE,KAAK,CAAC,sCAAsC,CAAC;MACrD,MAAM,IAAIC,KAAK,CAAC,oCAAoC,CAAC;IACvD;;IAEA;IACA,MAAME,QAAQ,GAAG;MACfC,OAAO,EAAE;QACPC,UAAU,EAAE,UAAU;QAAE;QACxBT,QAAQ,EAAEA,QAAQ,IAAI,QAAQ;QAC9BC,OAAO,EAAEA,OAAO,IAAI;MACtB;IACF,CAAC;IAEDC,OAAO,CAACC,GAAG,CAAC,cAAcR,QAAQ,iBAAiB,EAAEY,QAAQ,CAAC;;IAE9D;IACA,MAAMG,QAAQ,GAAG,MAAMC,KAAK,CAAC9B,oBAAoB,CAACc,QAAQ,CAAC,CAACX,YAAY,EAAE;MACxE4B,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACT,QAAQ;IAC/B,CAAC,CAAC;IAEFL,OAAO,CAACC,GAAG,CAAC,MAAMR,QAAQ,yBAAyB,EAAEe,QAAQ,CAACO,MAAM,CAAC;IACrEf,OAAO,CAACC,GAAG,CAAC,MAAMR,QAAQ,0BAA0B,EAAEe,QAAQ,CAACG,OAAO,CAAC;IAEvE,IAAI,CAACH,QAAQ,CAACQ,EAAE,EAAE;MAChB,MAAMC,SAAS,GAAG,MAAMT,QAAQ,CAACU,IAAI,CAAC,CAAC;MACvClB,OAAO,CAACE,KAAK,CAAC,KAAKT,QAAQ,mBAAmB,EAAEwB,SAAS,CAAC;MAC1D,MAAM,IAAId,KAAK,CAAC,GAAGV,QAAQ,qBAAqBe,QAAQ,CAACO,MAAM,MAAME,SAAS,EAAE,CAAC;IACnF;;IAEA;IACA,MAAMK,IAAI,GAAG,MAAMd,QAAQ,CAACY,IAAI,CAAC,CAAC;IAClCpB,OAAO,CAACC,GAAG,CAAC,MAAMR,QAAQ,uBAAuB,EAAE6B,IAAI,CAAC;;IAExD;IACA,QAAQ7B,QAAQ;MACd,KAAK,QAAQ;QACX,IAAI6B,IAAI,CAACC,SAAS,EAAE,OAAOD,IAAI,CAACC,SAAS;QACzC;MACF,KAAK,WAAW;QACd,IAAID,IAAI,CAACE,YAAY,EAAE,OAAOF,IAAI,CAACE,YAAY;QAC/C;MACF,KAAK,SAAS;QACZ,IAAIF,IAAI,CAACG,UAAU,EAAE,OAAOH,IAAI,CAACG,UAAU;QAC3C;MACF,KAAK,OAAO;QACV,IAAIH,IAAI,CAACI,QAAQ,EAAE,OAAOJ,IAAI,CAACI,QAAQ;QACvC;MACF;QACE,IAAIJ,IAAI,CAACK,GAAG,EAAE,OAAOL,IAAI,CAACK,GAAG;QAC7B;IACJ;IAEA,MAAM,IAAIxB,KAAK,CAAC,sCAAsCV,QAAQ,EAAE,CAAC;EACnE,CAAC,CAAC,OAAOS,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,8BAA8BT,QAAQ,GAAG,EAAES,KAAK,CAAC;IAC/D,MAAMA,KAAK;EACb;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,MAAM0B,kBAAkB,GAAG,MAAAA,CAAOnC,QAAgB,EAAEK,QAAiB,KAAuB;EACjG,IAAIL,QAAQ,KAAK,SAAS,EAAE;IAC1BO,OAAO,CAACC,GAAG,CAAC,iDAAiD,CAAC;IAC9D,IAAI;MAAA,IAAA4B,cAAA,EAAAC,iBAAA,EAAAC,eAAA,EAAAC,eAAA,EAAAC,eAAA,EAAAC,eAAA;MACF;MACA,MAAM;QAAEC,YAAY;QAAEC;MAAY,CAAC,GAAGC,OAAO,CAAC,2CAA2C,CAAC;;MAE1F;MACA,MAAMF,YAAY,CAACG,SAAS,CAAC;QAC3BC,WAAW,EAAE,2EAA2E;QAAE;QAC1FC,WAAW,EAAE,2EAA2E;QAAE;QAC1FC,MAAM,EAAE,CAAC,kDAAkD,CAAC;QAC5DC,aAAa,EAAE,IAAI;QAAE;QACrBC,YAAY,EAAE,EAAE;QAChBC,wBAAwB,EAAE,IAAI;QAAE;QAChCC,WAAW,EAAE,EAAE,CAAE;MACnB,CAAC,CAAC;;MAEF;MACA,MAAMV,YAAY,CAACW,eAAe,CAAC,CAAC;;MAEpC;MACA,MAAMC,QAAQ,GAAG,MAAMZ,YAAY,CAACa,MAAM,CAAC,CAAC;MAC5ChD,OAAO,CAACC,GAAG,CAAC,8BAA8B,GAAA4B,cAAA,GAAEkB,QAAQ,CAACE,IAAI,cAAApB,cAAA,uBAAbA,cAAA,CAAerC,KAAK,CAAC;;MAEjE;MACA,MAAM0D,MAAM,GAAG,MAAMf,YAAY,CAACgB,SAAS,CAAC,CAAC;MAC7CnD,OAAO,CAACC,GAAG,CAAC,sBAAsB,CAAC;;MAEnC;MACA,MAAMmD,WAAW,GAAG,MAAMjB,YAAY,CAACkB,cAAc,CAAC,CAAC;MACvDrD,OAAO,CAACC,GAAG,CAAC,uBAAuB,EAAEmD,WAAW,aAAXA,WAAW,gBAAAtB,iBAAA,GAAXsB,WAAW,CAAEH,IAAI,cAAAnB,iBAAA,uBAAjBA,iBAAA,CAAmBtC,KAAK,CAAC;;MAE9D;MACA,IAAI8D,YAAY,GAAG,IAAI;MACvB,IAAIF,WAAW,aAAXA,WAAW,eAAXA,WAAW,CAAEG,cAAc,EAAE;QAC/BvD,OAAO,CAACC,GAAG,CAAC,iDAAiD,CAAC;QAC9DqD,YAAY,GAAGF,WAAW,CAACG,cAAc;MAC3C;MAEA,IAAI,CAACD,YAAY,EAAE;QACjBtD,OAAO,CAACwD,IAAI,CAAC,8DAA8D,CAAC;MAC9E,CAAC,MAAM;QACLxD,OAAO,CAACC,GAAG,CAAC,kDAAkD,CAAC;MACjE;;MAEA;MACA,IAAIwD,WAAW,GAAG,iBAAiB;MACnC,IAAIC,SAAS,GAAG,IAAI;MACpB,IAAI;QACF1D,OAAO,CAACC,GAAG,CAAC,4CAA4C,CAAC;QACzD,MAAM0D,eAAe,GAAG,MAAMlD,KAAK,CAAC,uEAAuE,EAAE;UAC3GE,OAAO,EAAE;YACP,eAAe,EAAE,UAAUuC,MAAM,CAACU,WAAW,EAAE;YAC/C,QAAQ,EAAE;UACZ;QACF,CAAC,CAAC;QAEF,IAAID,eAAe,CAAC3C,EAAE,EAAE;UACtB,MAAM6C,WAAW,GAAG,MAAMF,eAAe,CAACvC,IAAI,CAAC,CAAC;UAChD,IAAIyC,WAAW,CAACC,KAAK,IAAID,WAAW,CAACC,KAAK,CAACC,MAAM,GAAG,CAAC,EAAE;YACrDN,WAAW,GAAGI,WAAW,CAACC,KAAK,CAAC,CAAC,CAAC,CAACE,OAAO,CAACC,KAAK;YAChDP,SAAS,GAAGG,WAAW,CAACC,KAAK,CAAC,CAAC,CAAC,CAACI,EAAE;YACnClE,OAAO,CAACC,GAAG,CAAC,0BAA0B,EAAEwD,WAAW,CAAC;UACtD;QACF;MACF,CAAC,CAAC,OAAOU,YAAY,EAAE;QAAA,IAAAC,eAAA,EAAAC,eAAA;QACrBrE,OAAO,CAACC,GAAG,CAAC,yCAAyC,EAAEkE,YAAY,CAAC;QACpEV,WAAW,GAAG,EAAAW,eAAA,GAAArB,QAAQ,CAACE,IAAI,cAAAmB,eAAA,uBAAbA,eAAA,CAAeE,IAAI,OAAAD,eAAA,GAAItB,QAAQ,CAACE,IAAI,cAAAoB,eAAA,uBAAbA,eAAA,CAAe7E,KAAK,KAAI,iBAAiB;MAChF;;MAEA;MACA,IAAI+E,SAAS,GAAG,OAAM7F,YAAY,CAAC8F,OAAO,CAAC,mBAAmB,CAAC,MAChD,MAAM9F,YAAY,CAAC8F,OAAO,CAAC,aAAa,CAAC,MACzC,MAAM9F,YAAY,CAAC8F,OAAO,CAAC,YAAY,CAAC;MACvD,MAAMC,cAAc,GAAG,MAAM/F,YAAY,CAAC8F,OAAO,CAAC,kBAAkB,CAAC;MACrE,MAAME,aAAa,GAAGD,cAAc,IAAI3E,QAAQ,MAAAiC,eAAA,GAAIgB,QAAQ,CAACE,IAAI,cAAAlB,eAAA,uBAAbA,eAAA,CAAevC,KAAK,KAAI,cAAc;;MAE1F;MACA,IAAI,CAAC+E,SAAS,IAAIA,SAAS,CAACI,IAAI,CAAC,CAAC,CAACZ,MAAM,GAAG,EAAE,EAAE;QAC9C/D,OAAO,CAACC,GAAG,CAAC,iDAAiD,CAAC;QAE9D,IAAI;UAAA,IAAA2E,eAAA;UACF,MAAMC,aAAa,GAAG,EAAAD,eAAA,GAAA7B,QAAQ,CAACE,IAAI,cAAA2B,eAAA,uBAAbA,eAAA,CAAepF,KAAK,KAAI,GAAGkF,aAAa,eAAe;;UAE7E;UACA,MAAMI,qBAAqB,GAAG,MAAMrE,KAAK,CAAC,wCAAwC,EAAE;YAClFC,MAAM,EAAE,MAAM;YACdC,OAAO,EAAE;cACP,cAAc,EAAE;YAClB,CAAC;YACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;cACnBtB,KAAK,EAAEqF,aAAa;cACpB/E,QAAQ,EAAE4E,aAAa;cACvBJ,IAAI,EAAEI;YACR,CAAC;UACH,CAAC,CAAC;UAEF,IAAII,qBAAqB,CAAC9D,EAAE,EAAE;YAAA,IAAA+D,qBAAA;YAC5B,MAAMC,mBAAmB,GAAG,MAAMF,qBAAqB,CAAC1D,IAAI,CAAC,CAAC;;YAE9D;YACAmD,SAAS,GAAGS,mBAAmB,CAACC,KAAK,MAAAF,qBAAA,GAAIC,mBAAmB,CAAC1D,IAAI,cAAAyD,qBAAA,uBAAxBA,qBAAA,CAA0BE,KAAK,KAAID,mBAAmB,CAACE,GAAG;YAEnG,IAAIX,SAAS,EAAE;cACb;cACA,MAAM7F,YAAY,CAACyG,OAAO,CAAC,mBAAmB,EAAEZ,SAAS,CAAC;cAC1D,MAAM7F,YAAY,CAACyG,OAAO,CAAC,aAAa,EAAEZ,SAAS,CAAC;cACpD,MAAM7F,YAAY,CAACyG,OAAO,CAAC,YAAY,EAAEZ,SAAS,CAAC;cACnD,MAAM7F,YAAY,CAACyG,OAAO,CAAC,kBAAkB,EAAEH,mBAAmB,CAAClF,QAAQ,IAAI4E,aAAa,CAAC;cAE7F1E,OAAO,CAACC,GAAG,CAAC,wDAAwD,CAAC;YACvE;UACF;QACF,CAAC,CAAC,OAAOmF,UAAU,EAAE;UACnBpF,OAAO,CAACwD,IAAI,CAAC,+BAA+B,EAAE4B,UAAU,CAAC;QAC3D;MACF;MAEApF,OAAO,CAACC,GAAG,CAAC,kCAAkC,EAAEyE,aAAa,CAAC;MAC9D1E,OAAO,CAACC,GAAG,CAAC,0BAA0B,EAAEwD,WAAW,CAAC;;MAEpD;MACA,MAAM4B,eAAe,GAAG,MAAM5E,KAAK,CAAC,6CAA6C,EAAE;QACjFC,MAAM,EAAE,MAAM;QACdC,OAAO,EAAE;UACP,cAAc,EAAE,kBAAkB;UAClC,IAAI4D,SAAS,IAAI;YAAE,eAAe,EAAE,UAAUA,SAAS;UAAG,CAAC;QAC7D,CAAC;QACD3D,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;UACnBR,OAAO,EAAE;YACPR,QAAQ,EAAE4E,aAAa;YACvBjF,QAAQ,EAAE,SAAS;YACnB6F,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;YACnC/B,WAAW,EAAEA,WAAW;YACxBC,SAAS,EAAEA;UACb,CAAC;UACD+B,UAAU,EAAE1C,QAAQ,CAACE,IAAI;UACzBW,WAAW,EAAEV,MAAM,CAACU,WAAW;UAC/B8B,OAAO,EAAExC,MAAM,CAACwC,OAAO;UACvBpC,YAAY,EAAEA,YAAY;UAAE;UAC5BC,cAAc,EAAEH,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEG,cAAc;UAC3CoC,eAAe,EAAE;YACf7F,QAAQ,EAAE4E,aAAa;YACvBlF,KAAK,GAAAwC,eAAA,GAAEe,QAAQ,CAACE,IAAI,cAAAjB,eAAA,uBAAbA,eAAA,CAAexC,KAAK;YAC3B+E,SAAS,EAAEA,SAAS;YACpBd,WAAW,EAAEA,WAAW;YACxBC,SAAS,EAAEA,SAAS;YACpBkC,cAAc,EAAErB,SAAS,GAAG,QAAQA,SAAS,CAACsB,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,YAAA5D,eAAA,GAAWc,QAAQ,CAACE,IAAI,cAAAhB,eAAA,uBAAbA,eAAA,CAAezC,KAAK,EAAE;YACpGsG,QAAQ,GAAA5D,eAAA,GAAEa,QAAQ,CAACE,IAAI,cAAAf,eAAA,uBAAbA,eAAA,CAAegC;UAC3B,CAAC;UACD6B,WAAW,EAAE,IAAIR,IAAI,CAACA,IAAI,CAACS,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAACR,WAAW,CAAC,CAAC;UAAE;UAC/DS,mBAAmB,EAAE;QACvB,CAAC;MACH,CAAC,CAAC;MAEF,IAAIZ,eAAe,CAACrE,EAAE,EAAE;QACtB,MAAMG,YAAY,GAAG,MAAMkE,eAAe,CAACjE,IAAI,CAAC,CAAC;QACjDpB,OAAO,CAACC,GAAG,CAAC,4CAA4C,EAAEkB,YAAY,CAAC;QACvE,OAAO,IAAI;MACb,CAAC,MAAM;QACL,MAAM+E,SAAS,GAAG,MAAMb,eAAe,CAACnE,IAAI,CAAC,CAAC;QAC9ClB,OAAO,CAACE,KAAK,CAAC,8BAA8B,EAAEmF,eAAe,CAACtE,MAAM,EAAEmF,SAAS,CAAC;QAChF,OAAO,KAAK;MACd;IAEF,CAAC,CAAC,OAAOhG,KAAU,EAAE;MACnBF,OAAO,CAACE,KAAK,CAAC,yBAAyB,EAAEA,KAAK,CAAC;MAE/C,MAAM;QAAEkC,WAAW,EAAE+D;MAAY,CAAC,GAAG9D,OAAO,CAAC,2CAA2C,CAAC;MAEzF,IAAInC,KAAK,CAACkG,IAAI,KAAKD,WAAW,CAACE,iBAAiB,EAAE;QAChDrG,OAAO,CAACC,GAAG,CAAC,+BAA+B,CAAC;MAC9C,CAAC,MAAM,IAAIC,KAAK,CAACkG,IAAI,KAAKD,WAAW,CAACG,WAAW,EAAE;QACjDtG,OAAO,CAACC,GAAG,CAAC,oCAAoC,CAAC;MACnD,CAAC,MAAM,IAAIC,KAAK,CAACkG,IAAI,KAAKD,WAAW,CAACI,2BAA2B,EAAE;QACjEvG,OAAO,CAACC,GAAG,CAAC,oCAAoC,CAAC;MACnD;MAEA,OAAO,KAAK;IACd;EACF;EAEA,OAAO,KAAK;AACd,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMuG,mBAAmB,GAAI7E,GAAW,IAAoB;EACjE,IAAI;IACF;IACA,MAAM8E,SAAS,GAAG,IAAIC,GAAG,CAAC/E,GAAG,CAAC;;IAE9B;IACA,OAAO8E,SAAS,CAACE,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC;EAC3C,CAAC,CAAC,OAAO1G,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,gCAAgC,EAAEA,KAAK,CAAC;IACtD,OAAO,IAAI;EACb;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA,OAAO,MAAM2G,eAAe,GAAIlF,GAAW,IAAc;EACvD;EACA,OAAOA,GAAG,CAACmF,UAAU,CAAC,sBAAsB,CAAC;AAC/C,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,GAAG,MAAAA,CAAA,KAA2D;EAC5F,IAAI;IACF/G,OAAO,CAACC,GAAG,CAAC,2CAA2C,CAAC;IAExD,MAAMO,QAAQ,GAAG,MAAMC,KAAK,CAAC,gCAAgC,EAAE;MAC7DC,MAAM,EAAE,KAAK;MACbC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB;IACF,CAAC,CAAC;IAEFX,OAAO,CAACC,GAAG,CAAC,oCAAoC,EAAEO,QAAQ,CAACO,MAAM,CAAC;IAElE,IAAIP,QAAQ,CAACQ,EAAE,EAAE;MACfhB,OAAO,CAACC,GAAG,CAAC,2BAA2B,CAAC;MACxC,OAAO;QAAE+G,OAAO,EAAE;MAAK,CAAC;IAC1B,CAAC,MAAM;MACLhH,OAAO,CAACC,GAAG,CAAC,qCAAqC,EAAEO,QAAQ,CAACO,MAAM,CAAC;MACnE,OAAO;QAAEiG,OAAO,EAAE,KAAK;QAAE9G,KAAK,EAAE,qBAAqBM,QAAQ,CAACO,MAAM;MAAG,CAAC;IAC1E;EACF,CAAC,CAAC,OAAOb,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,iCAAiC,EAAEA,KAAK,CAAC;IACvD,OAAO;MAAE8G,OAAO,EAAE,KAAK;MAAE9G,KAAK,EAAEA,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAAC+G,OAAO,GAAG;IAAgB,CAAC;EAC5F;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,GAAG,MAAAA,CAAA,KAAuE;EACxG,IAAI;IACFlH,OAAO,CAACC,GAAG,CAAC,2CAA2C,CAAC;IAExD,MAAM;MAAEkC;IAAa,CAAC,GAAGE,OAAO,CAAC,2CAA2C,CAAC;IAE7E,MAAMe,WAAW,GAAG,MAAMjB,YAAY,CAACkB,cAAc,CAAC,CAAC;IACvD,IAAI,CAACD,WAAW,EAAE;MAChBpD,OAAO,CAACC,GAAG,CAAC,uDAAuD,CAAC;MACpE,OAAO,IAAI;IACb;IAEA,MAAMiD,MAAM,GAAG,MAAMf,YAAY,CAACgB,SAAS,CAAC,CAAC;IAC7CnD,OAAO,CAACC,GAAG,CAAC,wCAAwC,CAAC;IAErD,OAAO;MACL2D,WAAW,EAAEV,MAAM,CAACU,WAAW;MAC/B8B,OAAO,EAAExC,MAAM,CAACwC;IAClB,CAAC;EACH,CAAC,CAAC,OAAOxF,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;;IAE1D;IACA,IAAI;MACFF,OAAO,CAACC,GAAG,CAAC,oDAAoD,CAAC;MACjE,MAAM;QAAEkC;MAAa,CAAC,GAAGE,OAAO,CAAC,2CAA2C,CAAC;MAC7E,MAAMU,QAAQ,GAAG,MAAMZ,YAAY,CAACa,MAAM,CAAC,CAAC;MAC5C,MAAME,MAAM,GAAG,MAAMf,YAAY,CAACgB,SAAS,CAAC,CAAC;MAE7CnD,OAAO,CAACC,GAAG,CAAC,gCAAgC,CAAC;MAC7C,OAAO;QACL2D,WAAW,EAAEV,MAAM,CAACU,WAAW;QAC/B8B,OAAO,EAAExC,MAAM,CAACwC;MAClB,CAAC;IACH,CAAC,CAAC,OAAOyB,WAAW,EAAE;MACpBnH,OAAO,CAACE,KAAK,CAAC,kCAAkC,EAAEiH,WAAW,CAAC;MAC9D,OAAO,IAAI;IACb;EACF;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,oBAAoB,GAAG,MAAAA,CAAA,KAA8B;EAChE,IAAI;IAAA,IAAAC,kBAAA;IACFrH,OAAO,CAACC,GAAG,CAAC,iCAAiC,CAAC;;IAE9C;IACA,MAAMqH,WAAW,GAAG,MAAMJ,mBAAmB,CAAC,CAAC;IAC/C,IAAI,CAACI,WAAW,EAAE;MAChBtH,OAAO,CAACE,KAAK,CAAC,8CAA8C,CAAC;MAC7D,OAAO,KAAK;IACd;;IAEA;IACA,MAAM;MAAEiC;IAAa,CAAC,GAAGE,OAAO,CAAC,2CAA2C,CAAC;IAC7E,MAAMe,WAAW,GAAG,MAAMjB,YAAY,CAACkB,cAAc,CAAC,CAAC;IACvD,IAAI,CAACD,WAAW,EAAE;MAChBpD,OAAO,CAACE,KAAK,CAAC,gCAAgC,CAAC;MAC/C,OAAO,KAAK;IACd;;IAEA;IACA,MAAMqE,SAAS,GAAG,OAAM7F,YAAY,CAAC8F,OAAO,CAAC,mBAAmB,CAAC,MAChD,MAAM9F,YAAY,CAAC8F,OAAO,CAAC,aAAa,CAAC,MACzC,MAAM9F,YAAY,CAAC8F,OAAO,CAAC,YAAY,CAAC;IAEzD,IAAI,CAACD,SAAS,EAAE;MACdvE,OAAO,CAACE,KAAK,CAAC,2CAA2C,CAAC;MAC1D,OAAO,KAAK;IACd;;IAEA;IACA,MAAMqH,eAAe,GAAG,MAAM9G,KAAK,CAAC,+CAA+C,EAAE;MACnFC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE,kBAAkB;QAClC,eAAe,EAAE,UAAU4D,SAAS;MACtC,CAAC;MACD3D,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;QACnB8C,WAAW,EAAE0D,WAAW,CAAC1D,WAAW;QACpC8B,OAAO,EAAE4B,WAAW,CAAC5B,OAAO;QAC5BpC,YAAY,EAAEF,WAAW,CAACG,cAAc;QACxCiE,SAAS,GAAAH,kBAAA,GAAEjE,WAAW,CAACH,IAAI,cAAAoE,kBAAA,uBAAhBA,kBAAA,CAAkB7H,KAAK;QAClCuG,WAAW,EAAE,IAAIR,IAAI,CAACA,IAAI,CAACS,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAACR,WAAW,CAAC,CAAC;QAC7DF,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC;MACpC,CAAC;IACH,CAAC,CAAC;IAEF,IAAI+B,eAAe,CAACvG,EAAE,EAAE;MACtB,MAAMG,YAAY,GAAG,MAAMoG,eAAe,CAACnG,IAAI,CAAC,CAAC;MACjDpB,OAAO,CAACC,GAAG,CAAC,0CAA0C,EAAEkB,YAAY,CAAC;MACrE,OAAO,IAAI;IACb,CAAC,MAAM;MACL,MAAM+E,SAAS,GAAG,MAAMqB,eAAe,CAACrG,IAAI,CAAC,CAAC;MAC9ClB,OAAO,CAACE,KAAK,CAAC,iCAAiC,EAAEqH,eAAe,CAACxG,MAAM,EAAEmF,SAAS,CAAC;MACnF,OAAO,KAAK;IACd;EACF,CAAC,CAAC,OAAOhG,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;IAC1D,OAAO,KAAK;EACd;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMuH,sBAAsB,GAAI9F,GAAW,IAA6D;EAC7G,IAAI;IACF3B,OAAO,CAACC,GAAG,CAAC,mCAAmC,EAAE0B,GAAG,CAAC;;IAErD;IACA,MAAM8E,SAAS,GAAG,IAAIC,GAAG,CAAC/E,GAAG,CAAC;;IAE9B;IACA,MAAMlC,QAAQ,GAAGgH,SAAS,CAACE,YAAY,CAACC,GAAG,CAAC,UAAU,CAAC,IACvCH,SAAS,CAACiB,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAACC,IAAI,CAACC,OAAO,IACxC,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAACC,QAAQ,CAACD,OAAO,CAC3E,CAAC;IAEjB,MAAMzB,IAAI,GAAGK,SAAS,CAACE,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC;IAC/C,MAAM1G,KAAK,GAAGuG,SAAS,CAACE,YAAY,CAACC,GAAG,CAAC,OAAO,CAAC;IAEjD,IAAI1G,KAAK,EAAE;MACTF,OAAO,CAACE,KAAK,CAAC,4BAA4B,EAAEA,KAAK,CAAC;MAClD,OAAO;QAAE8G,OAAO,EAAE;MAAM,CAAC;IAC3B;IAEA,IAAIZ,IAAI,IAAI3G,QAAQ,EAAE;MACpBO,OAAO,CAACC,GAAG,CAAC,+BAA+BR,QAAQ,eAAe2G,IAAI,CAACP,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;MAC7F,OAAO;QAAEpG,QAAQ;QAAE2G,IAAI;QAAEY,OAAO,EAAE;MAAK,CAAC;IAC1C;IAEAhH,OAAO,CAACwD,IAAI,CAAC,4CAA4C,CAAC;IAC1D,OAAO;MAAEwD,OAAO,EAAE;IAAM,CAAC;EAC3B,CAAC,CAAC,OAAO9G,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;IAC1D,OAAO;MAAE8G,OAAO,EAAE;IAAM,CAAC;EAC3B;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMe,qBAAqB,GAAIrI,MAGrC,IAAK;EACJM,OAAO,CAACC,GAAG,CAAC,6CAA6C,CAAC;EAE1D,IAAIP,MAAM,CAAC6C,WAAW,IAAI7C,MAAM,CAAC8C,WAAW,EAAE;IAC5C;IACA7D,oBAAoB,CAACK,OAAO,GAAG;MAC7B,GAAGL,oBAAoB,CAACK,OAAO;MAC/BE,QAAQ,EAAEQ,MAAM,CAAC6C,WAAW,IAAI5D,oBAAoB,CAACK,OAAO,CAACE;IAC/D,CAAC;IAEDc,OAAO,CAACC,GAAG,CAAC,0CAA0C,CAAC;EACzD;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAM+H,wBAAwB,GAAG,MAAOxI,KAAa,IAItD;EACJ,IAAI;IACFQ,OAAO,CAACC,GAAG,CAAC,uCAAuC,EAAET,KAAK,CAAC;IAE3D,MAAMgB,QAAQ,GAAG,MAAMC,KAAK,CAAC,sCAAsC,EAAE;MACnEC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;QAAEtB;MAAM,CAAC;IAChC,CAAC,CAAC;IAEF,MAAMyI,MAAM,GAAG,MAAMzH,QAAQ,CAACY,IAAI,CAAC,CAAC;IAEpC,IAAIZ,QAAQ,CAACQ,EAAE,IAAIiH,MAAM,CAACjB,OAAO,EAAE;MACjChH,OAAO,CAACC,GAAG,CAAC,6CAA6C,CAAC;MAC1DD,OAAO,CAACC,GAAG,CAAC,sEAAsE,CAAC;MACnF,OAAO;QACL+G,OAAO,EAAE,IAAI;QACbC,OAAO,EAAEgB,MAAM,CAAChB,OAAO,IAAI;MAC7B,CAAC;IACH,CAAC,MAAM;MACLjH,OAAO,CAACE,KAAK,CAAC,sCAAsC,EAAE+H,MAAM,CAAC/H,KAAK,CAAC;MACnE,OAAO;QACL8G,OAAO,EAAE,KAAK;QACd9G,KAAK,EAAE+H,MAAM,CAAC/H,KAAK,IAAI;MACzB,CAAC;IACH;EACF,CAAC,CAAC,OAAOA,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,qCAAqC,EAAEA,KAAK,CAAC;IAC3D,OAAO;MACL8G,OAAO,EAAE,KAAK;MACd9G,KAAK,EAAEA,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAAC+G,OAAO,GAAG;IAClD,CAAC;EACH;AACF,CAAC;AAED,OAAO,MAAMiB,eAAe,GAAG,MAAAA,CAAO1I,KAAa,EAAE4G,IAAY,KAI3D;EACJ,IAAI;IACFpG,OAAO,CAACC,GAAG,CAAC,8BAA8B,EAAET,KAAK,CAAC;IAElD,MAAMgB,QAAQ,GAAG,MAAMC,KAAK,CAAC,8CAA8C,EAAE;MAC3EC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;QAAEtB,KAAK;QAAE4G;MAAK,CAAC;IACtC,CAAC,CAAC;IAEF,MAAM6B,MAAM,GAAG,MAAMzH,QAAQ,CAACY,IAAI,CAAC,CAAC;IAEpC,IAAIZ,QAAQ,CAACQ,EAAE,IAAIiH,MAAM,CAACjB,OAAO,EAAE;MACjChH,OAAO,CAACC,GAAG,CAAC,iCAAiC,CAAC;MAC9CD,OAAO,CAACC,GAAG,CAAC,qDAAqD,CAAC;MAClE,OAAO;QACL+G,OAAO,EAAE,IAAI;QACbC,OAAO,EAAEgB,MAAM,CAAChB,OAAO,IAAI;MAC7B,CAAC;IACH,CAAC,MAAM;MACLjH,OAAO,CAACE,KAAK,CAAC,8BAA8B,EAAE+H,MAAM,CAAC/H,KAAK,CAAC;MAC3D,OAAO;QACL8G,OAAO,EAAE,KAAK;QACd9G,KAAK,EAAE+H,MAAM,CAAC/H,KAAK,IAAI;MACzB,CAAC;IACH;EACF,CAAC,CAAC,OAAOA,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,6BAA6B,EAAEA,KAAK,CAAC;IACnD,OAAO;MACL8G,OAAO,EAAE,KAAK;MACd9G,KAAK,EAAEA,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAAC+G,OAAO,GAAG;IAClD,CAAC;EACH;AACF,CAAC;AAED,OAAO,MAAMkB,4BAA4B,GAAG,MAAO3I,KAAa,IAK1D;EACJ,IAAI;IACFQ,OAAO,CAACC,GAAG,CAAC,4CAA4C,EAAET,KAAK,CAAC;IAEhE,MAAMgB,QAAQ,GAAG,MAAMC,KAAK,CAAC,+CAA+C2H,kBAAkB,CAAC5I,KAAK,CAAC,EAAE,EAAE;MACvGkB,MAAM,EAAE,KAAK;MACbC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB;IACF,CAAC,CAAC;IAEF,MAAMsH,MAAM,GAAG,MAAMzH,QAAQ,CAACY,IAAI,CAAC,CAAC;IAEpC,IAAIZ,QAAQ,CAACQ,EAAE,EAAE;MACfhB,OAAO,CAACC,GAAG,CAAC,uCAAuC,CAAC;MACpD,OAAO;QACL+G,OAAO,EAAE,IAAI;QACbqB,SAAS,EAAEJ,MAAM,CAACI,SAAS,IAAI,KAAK;QACpCpB,OAAO,EAAEgB,MAAM,CAAChB,OAAO,IAAI;MAC7B,CAAC;IACH,CAAC,MAAM;MACLjH,OAAO,CAACE,KAAK,CAAC,2CAA2C,EAAE+H,MAAM,CAAC/H,KAAK,CAAC;MACxE,OAAO;QACL8G,OAAO,EAAE,KAAK;QACd9G,KAAK,EAAE+H,MAAM,CAAC/H,KAAK,IAAI;MACzB,CAAC;IACH;EACF,CAAC,CAAC,OAAOA,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,oCAAoC,EAAEA,KAAK,CAAC;IAC1D,OAAO;MACL8G,OAAO,EAAE,KAAK;MACd9G,KAAK,EAAEA,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAAC+G,OAAO,GAAG;IAClD,CAAC;EACH;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMqB,kBAAkB,GAAG,MAAAA,CAAO7I,QAAgB,EAAEK,QAAgB,KAIrE;EACJ,IAAI;IACFE,OAAO,CAACC,GAAG,CAAC,oBAAoBR,QAAQ,YAAY,EAAEK,QAAQ,CAAC;IAE/D,MAAMU,QAAQ,GAAG,MAAMC,KAAK,CAAC,gCAAgC,EAAE;MAC7DC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAAC;QACnByH,IAAI,EAAE;UACJC,UAAU,EAAE/I,QAAQ,CAACgJ,MAAM,CAAC,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC,GAAGjJ,QAAQ,CAACkJ,KAAK,CAAC,CAAC,CAAC;UAAE;UAClE7I,QAAQ,EAAEA;QACZ;MACF,CAAC;IACH,CAAC,CAAC;IAEF,MAAMmI,MAAM,GAAG,MAAMzH,QAAQ,CAACY,IAAI,CAAC,CAAC;IAEpC,IAAIZ,QAAQ,CAACQ,EAAE,IAAIiH,MAAM,CAACjB,OAAO,EAAE;MACjChH,OAAO,CAACC,GAAG,CAAC,KAAKR,QAAQ,4BAA4B,CAAC;MACtD,OAAO;QACLuH,OAAO,EAAE,IAAI;QACbC,OAAO,EAAEgB,MAAM,CAAChB,OAAO,IAAI,GAAGxH,QAAQ;MACxC,CAAC;IACH,CAAC,MAAM;MACLO,OAAO,CAACE,KAAK,CAAC,KAAKT,QAAQ,wBAAwB,EAAEwI,MAAM,CAAC/H,KAAK,CAAC;MAClE,OAAO;QACL8G,OAAO,EAAE,KAAK;QACd9G,KAAK,EAAE+H,MAAM,CAAC/H,KAAK,IAAI,wBAAwBT,QAAQ;MACzD,CAAC;IACH;EACF,CAAC,CAAC,OAAOS,KAAK,EAAE;IACdF,OAAO,CAACE,KAAK,CAAC,KAAKT,QAAQ,uBAAuB,EAAES,KAAK,CAAC;IAC1D,OAAO;MACL8G,OAAO,EAAE,KAAK;MACd9G,KAAK,EAAEA,KAAK,YAAYC,KAAK,GAAGD,KAAK,CAAC+G,OAAO,GAAG;IAClD,CAAC;EACH;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export interface EmailVerificationModalProps {
3
+ visible: boolean;
4
+ email: string;
5
+ onClose: () => void;
6
+ onVerificationComplete: (email: string, isExistingUser: boolean) => void;
7
+ onVerificationFailed: (error: string) => void;
8
+ }
9
+ export declare const EmailVerificationModal: React.FC<EmailVerificationModalProps>;
10
+ //# sourceMappingURL=EmailVerificationModal.d.ts.map