@onairos/react-native 3.0.30 → 3.0.31

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.
@@ -23,41 +23,23 @@ const OAuthWebView = ({
23
23
  onComplete
24
24
  }) => {
25
25
  const [isLoading, setIsLoading] = (0, _react.useState)(true);
26
- console.log('Opening OAuth WebView with URL:', url); // Add logging
27
-
26
+ const [error, setError] = (0, _react.useState)(null);
27
+ const webViewRef = (0, _react.useRef)(null);
28
+ console.log('Opening OAuth WebView with URL:', url);
28
29
  const handleNavigationStateChange = navState => {
29
30
  console.log(`Navigation state changed for ${platform}:`, navState.url);
30
31
 
31
32
  // Check for the final redirect to onairos.uk domain (this means backend callback completed)
32
- const isFinalRedirect = navState.url.includes('onairos.uk/Home') || navState.url.includes('onairos.uk/home') || navState.url.includes('onairos.uk/success');
33
-
34
- // For YouTube specifically, we need to be more careful about when to close
35
- // Only close after the backend callback redirects to onairos.uk/Home
36
- if (platform === 'youtube') {
37
- // Only trigger success when we see the final redirect from the backend
38
- if (isFinalRedirect) {
39
- console.log('YouTube OAuth completed - backend callback finished and redirected to Home');
40
- onSuccess('success');
41
-
42
- // Close the OAuth window after a small delay to ensure redirect is processed
43
- setTimeout(() => {
44
- if (onComplete) {
45
- console.log('Closing YouTube OAuth window after callback completion');
46
- onComplete();
47
- }
48
- }, 500);
49
- }
50
- return; // Exit early for YouTube to avoid other triggers
51
- }
33
+ const isFinalRedirect = navState.url.includes('onairos.uk/Home') || navState.url.includes('onairos.uk/home') || navState.url.includes('onairos.uk/success') || navState.url.startsWith('https://onairos.uk/Home');
52
34
 
53
- // Platform-specific success patterns (for non-YouTube platforms)
35
+ // Platform-specific success patterns
54
36
  const platformSuccessPatterns = {
55
37
  reddit: [/reddit\.com\/api\/v1\/authorize\?done=true/, /reddit\.com\/api\/v1\/authorize\/success/],
56
38
  pinterest: [/pinterest\.com\/oauth\/success/, /pinterest\.com\/oauth\/complete/],
57
39
  linkedin: [/linkedin\.com\/oauth\/success/, /linkedin\.com\/oauth\/complete/, /linkedin\.com\/uas\/oauth2\/authorization\/success/],
58
40
  email: [/success/],
59
- // Generic success pattern for email
60
- instagram: [/instagram\.com\/oauth\/authorize\?done=true/, /instagram\.com\/oauth\/success/]
41
+ instagram: [/instagram\.com\/oauth\/authorize\?done=true/, /instagram\.com\/oauth\/success/],
42
+ youtube: [/accounts\.google\.com\/o\/oauth2\/approval/, /youtube\.com\/oauth\/success/]
61
43
  };
62
44
 
63
45
  // Check for platform-specific success patterns
@@ -106,6 +88,20 @@ const OAuthWebView = ({
106
88
  };
107
89
  const handleLoadEnd = () => {
108
90
  setIsLoading(false);
91
+ setError(null);
92
+ };
93
+ const handleError = syntheticEvent => {
94
+ const {
95
+ nativeEvent
96
+ } = syntheticEvent;
97
+ console.error('WebView error:', nativeEvent);
98
+ setError('Failed to load OAuth page. Please try again.');
99
+ setIsLoading(false);
100
+ };
101
+ const handleOpenInBrowser = () => {
102
+ _reactNative.Linking.openURL(url).catch(err => {
103
+ console.error('Failed to open URL in browser:', err);
104
+ });
109
105
  };
110
106
 
111
107
  /**
@@ -147,6 +143,43 @@ const OAuthWebView = ({
147
143
  return _constants.COLORS.primary;
148
144
  }
149
145
  };
146
+ if (error) {
147
+ return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
148
+ style: styles.container
149
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
150
+ style: styles.header
151
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
152
+ onPress: onClose,
153
+ style: styles.closeButton
154
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
155
+ name: "close",
156
+ size: 24,
157
+ color: "#000"
158
+ })), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
159
+ style: styles.titleContainer
160
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
161
+ name: getPlatformIcon(platform),
162
+ size: 20,
163
+ color: getPlatformColor(platform)
164
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
165
+ style: styles.titleText
166
+ }, platform.charAt(0).toUpperCase() + platform.slice(1), " OAuth"))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
167
+ style: styles.errorContainer
168
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
169
+ name: "error-outline",
170
+ size: 48,
171
+ color: "#FF6B6B"
172
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
173
+ style: styles.errorTitle
174
+ }, "Connection Error"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
175
+ style: styles.errorMessage
176
+ }, error), /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
177
+ style: styles.retryButton,
178
+ onPress: handleOpenInBrowser
179
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
180
+ style: styles.retryButtonText
181
+ }, "Open in Browser"))));
182
+ }
150
183
  return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
151
184
  style: styles.container
152
185
  }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
@@ -166,17 +199,24 @@ const OAuthWebView = ({
166
199
  color: getPlatformColor(platform)
167
200
  }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
168
201
  style: styles.titleText
169
- }, platform.charAt(0).toUpperCase() + platform.slice(1), " OAuth"))), /*#__PURE__*/_react.default.createElement(_reactNativeWebview.WebView, {
202
+ }, platform.charAt(0).toUpperCase() + platform.slice(1), " OAuth")), /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
203
+ onPress: handleOpenInBrowser,
204
+ style: styles.browserButton
205
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
206
+ name: "open-in-browser",
207
+ size: 20,
208
+ color: "#666"
209
+ }))), /*#__PURE__*/_react.default.createElement(_reactNativeWebview.WebView, {
210
+ ref: webViewRef,
170
211
  source: {
171
212
  uri: url
172
213
  },
173
214
  onNavigationStateChange: handleNavigationStateChange,
174
215
  onLoadEnd: handleLoadEnd,
216
+ onError: handleError,
175
217
  style: styles.webView,
176
218
  javaScriptEnabled: true,
177
219
  domStorageEnabled: true,
178
- sharedCookiesEnabled: true,
179
- thirdPartyCookiesEnabled: true,
180
220
  userAgent: "Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1"
181
221
  }), isLoading && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
182
222
  style: styles.loadingContainer
@@ -220,6 +260,12 @@ const styles = _reactNative.StyleSheet.create({
220
260
  left: 16,
221
261
  zIndex: 10
222
262
  },
263
+ browserButton: {
264
+ padding: 8,
265
+ position: 'absolute',
266
+ right: 16,
267
+ zIndex: 10
268
+ },
223
269
  webView: {
224
270
  flex: 1
225
271
  },
@@ -233,6 +279,36 @@ const styles = _reactNative.StyleSheet.create({
233
279
  marginTop: 10,
234
280
  fontSize: 16,
235
281
  color: '#666'
282
+ },
283
+ errorContainer: {
284
+ flex: 1,
285
+ alignItems: 'center',
286
+ justifyContent: 'center',
287
+ padding: 20
288
+ },
289
+ errorTitle: {
290
+ fontSize: 18,
291
+ fontWeight: '600',
292
+ color: '#333',
293
+ marginTop: 16,
294
+ marginBottom: 8
295
+ },
296
+ errorMessage: {
297
+ fontSize: 14,
298
+ color: '#666',
299
+ textAlign: 'center',
300
+ marginBottom: 20
301
+ },
302
+ retryButton: {
303
+ backgroundColor: _constants.COLORS.primary,
304
+ paddingHorizontal: 24,
305
+ paddingVertical: 12,
306
+ borderRadius: 8
307
+ },
308
+ retryButtonText: {
309
+ color: '#fff',
310
+ fontSize: 16,
311
+ fontWeight: '600'
236
312
  }
237
313
  });
238
314
  //# sourceMappingURL=OAuthWebView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeWebview","_MaterialIcons","_interopRequireDefault","_constants","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","width","height","Dimensions","OAuthWebView","url","onClose","onSuccess","platform","onComplete","isLoading","setIsLoading","useState","console","log","handleNavigationStateChange","navState","isFinalRedirect","includes","setTimeout","platformSuccessPatterns","reddit","pinterest","linkedin","email","instagram","isPlatformSuccess","some","pattern","test","isCallbackUrl","authCode","codeMatch","match","tokenMatch","handleLoadEnd","getPlatformIcon","getPlatformColor","COLORS","primary","createElement","SafeAreaView","style","styles","container","View","header","TouchableOpacity","onPress","closeButton","name","size","color","titleContainer","Text","titleText","charAt","toUpperCase","slice","WebView","source","uri","onNavigationStateChange","onLoadEnd","webView","javaScriptEnabled","domStorageEnabled","sharedCookiesEnabled","thirdPartyCookiesEnabled","userAgent","loadingContainer","ActivityIndicator","loadingText","exports","StyleSheet","create","flex","backgroundColor","flexDirection","alignItems","borderBottomWidth","borderBottomColor","paddingHorizontal","justifyContent","marginLeft","fontSize","fontWeight","padding","position","left","zIndex","absoluteFillObject","marginTop"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/onboarding/OAuthWebView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeWebview","_MaterialIcons","_interopRequireDefault","_constants","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","width","height","Dimensions","OAuthWebView","url","onClose","onSuccess","platform","onComplete","isLoading","setIsLoading","useState","error","setError","webViewRef","useRef","console","log","handleNavigationStateChange","navState","isFinalRedirect","includes","startsWith","platformSuccessPatterns","reddit","pinterest","linkedin","email","instagram","youtube","isPlatformSuccess","some","pattern","test","isCallbackUrl","authCode","codeMatch","match","tokenMatch","handleLoadEnd","handleError","syntheticEvent","nativeEvent","handleOpenInBrowser","Linking","openURL","catch","err","getPlatformIcon","getPlatformColor","COLORS","primary","createElement","SafeAreaView","style","styles","container","View","header","TouchableOpacity","onPress","closeButton","name","size","color","titleContainer","Text","titleText","charAt","toUpperCase","slice","errorContainer","errorTitle","errorMessage","retryButton","retryButtonText","browserButton","WebView","ref","source","uri","onNavigationStateChange","onLoadEnd","onError","webView","javaScriptEnabled","domStorageEnabled","userAgent","loadingContainer","ActivityIndicator","loadingText","exports","StyleSheet","create","flex","backgroundColor","flexDirection","alignItems","borderBottomWidth","borderBottomColor","paddingHorizontal","justifyContent","marginLeft","fontSize","fontWeight","padding","position","left","zIndex","right","absoluteFillObject","marginTop","marginBottom","textAlign","paddingVertical","borderRadius"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/onboarding/OAuthWebView.tsx"],"mappings":"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","ignoreList":[]}
@@ -165,13 +165,55 @@ const initiateNativeAuth = async platform => {
165
165
  try {
166
166
  // Currently only YouTube (Google Sign-In) is supported
167
167
  if (platform === 'youtube') {
168
- // This is a placeholder for the actual implementation
169
- // In a real implementation, you would import and use the Google Sign-In SDK
170
168
  console.log('Initiating native Google Sign-In for YouTube');
171
-
172
- // Simulate a successful authentication
173
- // In a real implementation, this would be the result of the Google Sign-In flow
174
- return true;
169
+ try {
170
+ // Import Google Sign-In dynamically to avoid errors if not installed
171
+ const {
172
+ GoogleSignin,
173
+ statusCodes
174
+ } = require('@react-native-google-signin/google-signin');
175
+
176
+ // Configure Google Sign-In
177
+ await GoogleSignin.configure({
178
+ scopes: ['https://www.googleapis.com/auth/youtube.readonly'],
179
+ webClientId: 'YOUR_WEB_CLIENT_ID',
180
+ // Replace with your actual web client ID
181
+ offlineAccess: true,
182
+ hostedDomain: '',
183
+ forceCodeForRefreshToken: true
184
+ });
185
+
186
+ // Check if device supports Google Play Services
187
+ await GoogleSignin.hasPlayServices();
188
+
189
+ // Sign in
190
+ const userInfo = await GoogleSignin.signIn();
191
+ console.log('Google Sign-In successful:', userInfo);
192
+
193
+ // Get access token
194
+ const tokens = await GoogleSignin.getTokens();
195
+ console.log('Google tokens:', tokens);
196
+
197
+ // Here you would typically send the tokens to your backend
198
+ // to associate the YouTube account with the user
199
+
200
+ return true;
201
+ } catch (error) {
202
+ console.error('Google Sign-In error:', error);
203
+ const {
204
+ statusCodes: StatusCodes
205
+ } = require('@react-native-google-signin/google-signin');
206
+ if (error.code === StatusCodes.SIGN_IN_CANCELLED) {
207
+ console.log('User cancelled the sign-in flow');
208
+ } else if (error.code === StatusCodes.IN_PROGRESS) {
209
+ console.log('Sign-in is in progress already');
210
+ } else if (error.code === StatusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
211
+ console.log('Play services not available or outdated');
212
+ } else {
213
+ console.log('Some other error happened');
214
+ }
215
+ return false;
216
+ }
175
217
  }
176
218
  throw new Error(`Native authentication not supported for ${platform}`);
177
219
  } catch (error) {
@@ -1 +1 @@
1
- {"version":3,"names":["PLATFORM_AUTH_CONFIG","instagram","hasNativeSDK","authEndpoint","color","youtube","nativeSDKPackage","reddit","pinterest","email","platform","config","exports","getAuthEndpoint","getPlatformColor","initiateOAuth","username","appName","Error","state","jsonData","session","oauthState","response","fetch","method","headers","body","JSON","stringify","responseData","json","instagramURL","data","redditURL","pinterestURL","youtubeURL","emailURL","url","error","console","initiateNativeAuth","log","handleOAuthCallback","parsedUrl","URL","searchParams","get","isOAuthCallback","startsWith"],"sourceRoot":"..\\..\\..\\src","sources":["services/platformAuthService.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PLATFORM_AUTH_CONFIG","instagram","hasNativeSDK","authEndpoint","color","youtube","nativeSDKPackage","reddit","pinterest","email","platform","config","exports","getAuthEndpoint","getPlatformColor","initiateOAuth","username","appName","Error","state","jsonData","session","oauthState","response","fetch","method","headers","body","JSON","stringify","responseData","json","instagramURL","data","redditURL","pinterestURL","youtubeURL","emailURL","url","error","console","initiateNativeAuth","log","GoogleSignin","statusCodes","require","configure","scopes","webClientId","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"],"sourceRoot":"..\\..\\..\\src","sources":["services/platformAuthService.ts"],"mappings":";;;;;;AAGA;;AAQA;AACA,MAAMA,oBAAwD,GAAG;EAC/DC,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;EACT,CAAC;EACDG,MAAM,EAAE;IACNL,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,0CAA0C;IACxDC,KAAK,EAAE;EACT,CAAC;EACDI,SAAS,EAAE;IACTN,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,6CAA6C;IAC3DC,KAAK,EAAE;EACT,CAAC;EACDK,KAAK,EAAE;IACLP,YAAY,EAAE,KAAK;IACnBC,YAAY,EAAE,yCAAyC;IACvDC,KAAK,EAAE;EACT;AACF,CAAC;;AAED;AACA;AACA;AACO,MAAMF,YAAY,GAAIQ,QAAgB,IAAc;EACzD,MAAMC,MAAM,GAAGX,oBAAoB,CAACU,QAAQ,CAAC;EAC7C,OAAO,CAAAC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAET,YAAY,KAAI,KAAK;AACtC,CAAC;;AAED;AACA;AACA;AAFAU,OAAA,CAAAV,YAAA,GAAAA,YAAA;AAGO,MAAMW,eAAe,GAAIH,QAAgB,IAAa;EAC3D,MAAMC,MAAM,GAAGX,oBAAoB,CAACU,QAAQ,CAAC;EAC7C,OAAO,CAAAC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAER,YAAY,KAAI,EAAE;AACnC,CAAC;;AAED;AACA;AACA;AAFAS,OAAA,CAAAC,eAAA,GAAAA,eAAA;AAGO,MAAMC,gBAAgB,GAAIJ,QAAgB,IAAa;EAC5D,MAAMC,MAAM,GAAGX,oBAAoB,CAACU,QAAQ,CAAC;EAC7C,OAAO,CAAAC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEP,KAAK,KAAI,SAAS;AACnC,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AANAQ,OAAA,CAAAE,gBAAA,GAAAA,gBAAA;AAOO,MAAMC,aAAa,GAAG,MAAAA,CAAOL,QAAgB,EAAEM,QAAgB,EAAEC,OAAgB,KAA6B;EACnH,IAAI;IACF;IACA,IAAI,CAACjB,oBAAoB,CAACU,QAAQ,CAAC,EAAE;MACnC,MAAM,IAAIQ,KAAK,CAAC,yBAAyBR,QAAQ,EAAE,CAAC;IACtD;;IAEA;IACA,IAAIV,oBAAoB,CAACU,QAAQ,CAAC,CAACR,YAAY,EAAE;MAC/C;MACA,OAAO,IAAI;IACb;;IAEA;IACA,IAAIQ,QAAQ,KAAK,WAAW,EAAE;MAC5B,MAAMS,KAAK,GAAG,UAAU;MACxB,MAAMC,QAAQ,GAAG;QACfC,OAAO,EAAE;UACPC,UAAU,EAAEH,KAAK;UACjBH,QAAQ,EAAEA,QAAQ,IAAI;QACxB;MACF,CAAC;MAED,MAAMO,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;MAEF,MAAMU,YAAY,GAAG,MAAMP,QAAQ,CAACQ,IAAI,CAAC,CAAC;MAE1C,IAAID,YAAY,CAACE,YAAY,EAAE;QAC7B,OAAOF,YAAY,CAACE,YAAY;MAClC;MAEA,MAAM,IAAId,KAAK,CAAC,oCAAoC,CAAC;IACvD;;IAEA;IACA,MAAME,QAAQ,GAAG;MACfC,OAAO,EAAE;QACPC,UAAU,EAAE,UAAU;QAAE;QACxBN,QAAQ,EAAEA,QAAQ,IAAI,QAAQ;QAC9BC,OAAO,EAAEA,OAAO,IAAI;MACtB;IACF,CAAC;;IAED;IACA,MAAMM,QAAQ,GAAG,MAAMC,KAAK,CAACxB,oBAAoB,CAACU,QAAQ,CAAC,CAACP,YAAY,EAAE;MACxEsB,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE;QACP,cAAc,EAAE;MAClB,CAAC;MACDC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACT,QAAQ;IAC/B,CAAC,CAAC;;IAEF;IACA,MAAMa,IAAI,GAAG,MAAMV,QAAQ,CAACQ,IAAI,CAAC,CAAC;;IAElC;IACA,QAAQrB,QAAQ;MACd,KAAK,QAAQ;QACX,IAAIuB,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,IAAIpB,KAAK,CAAC,sCAAsCR,QAAQ,EAAE,CAAC;EACnE,CAAC,CAAC,OAAO6B,KAAK,EAAE;IACdC,OAAO,CAACD,KAAK,CAAC,8BAA8B7B,QAAQ,GAAG,EAAE6B,KAAK,CAAC;IAC/D,MAAMA,KAAK;EACb;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AAJA3B,OAAA,CAAAG,aAAA,GAAAA,aAAA;AAKO,MAAM0B,kBAAkB,GAAG,MAAO/B,QAAgB,IAAuB;EAC9E,IAAI;IACF;IACA,IAAIA,QAAQ,KAAK,SAAS,EAAE;MAC1B8B,OAAO,CAACE,GAAG,CAAC,8CAA8C,CAAC;MAE3D,IAAI;QACF;QACA,MAAM;UAAEC,YAAY;UAAEC;QAAY,CAAC,GAAGC,OAAO,CAAC,2CAA2C,CAAC;;QAE1F;QACA,MAAMF,YAAY,CAACG,SAAS,CAAC;UAC3BC,MAAM,EAAE,CAAC,kDAAkD,CAAC;UAC5DC,WAAW,EAAE,oBAAoB;UAAE;UACnCC,aAAa,EAAE,IAAI;UACnBC,YAAY,EAAE,EAAE;UAChBC,wBAAwB,EAAE;QAC5B,CAAC,CAAC;;QAEF;QACA,MAAMR,YAAY,CAACS,eAAe,CAAC,CAAC;;QAEpC;QACA,MAAMC,QAAQ,GAAG,MAAMV,YAAY,CAACW,MAAM,CAAC,CAAC;QAC5Cd,OAAO,CAACE,GAAG,CAAC,4BAA4B,EAAEW,QAAQ,CAAC;;QAEnD;QACA,MAAME,MAAM,GAAG,MAAMZ,YAAY,CAACa,SAAS,CAAC,CAAC;QAC7ChB,OAAO,CAACE,GAAG,CAAC,gBAAgB,EAAEa,MAAM,CAAC;;QAErC;QACA;;QAEA,OAAO,IAAI;MACb,CAAC,CAAC,OAAOhB,KAAU,EAAE;QACnBC,OAAO,CAACD,KAAK,CAAC,uBAAuB,EAAEA,KAAK,CAAC;QAE7C,MAAM;UAAEK,WAAW,EAAEa;QAAY,CAAC,GAAGZ,OAAO,CAAC,2CAA2C,CAAC;QAEzF,IAAIN,KAAK,CAACmB,IAAI,KAAKD,WAAW,CAACE,iBAAiB,EAAE;UAChDnB,OAAO,CAACE,GAAG,CAAC,iCAAiC,CAAC;QAChD,CAAC,MAAM,IAAIH,KAAK,CAACmB,IAAI,KAAKD,WAAW,CAACG,WAAW,EAAE;UACjDpB,OAAO,CAACE,GAAG,CAAC,gCAAgC,CAAC;QAC/C,CAAC,MAAM,IAAIH,KAAK,CAACmB,IAAI,KAAKD,WAAW,CAACI,2BAA2B,EAAE;UACjErB,OAAO,CAACE,GAAG,CAAC,yCAAyC,CAAC;QACxD,CAAC,MAAM;UACLF,OAAO,CAACE,GAAG,CAAC,2BAA2B,CAAC;QAC1C;QAEA,OAAO,KAAK;MACd;IACF;IAEA,MAAM,IAAIxB,KAAK,CAAC,2CAA2CR,QAAQ,EAAE,CAAC;EACxE,CAAC,CAAC,OAAO6B,KAAK,EAAE;IACdC,OAAO,CAACD,KAAK,CAAC,oCAAoC7B,QAAQ,GAAG,EAAE6B,KAAK,CAAC;IACrE,MAAMA,KAAK;EACb;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AAJA3B,OAAA,CAAA6B,kBAAA,GAAAA,kBAAA;AAKO,MAAMqB,mBAAmB,GAAIxB,GAAW,IAAoB;EACjE,IAAI;IACF;IACA,MAAMyB,SAAS,GAAG,IAAIC,GAAG,CAAC1B,GAAG,CAAC;;IAE9B;IACA,OAAOyB,SAAS,CAACE,YAAY,CAACC,GAAG,CAAC,MAAM,CAAC;EAC3C,CAAC,CAAC,OAAO3B,KAAK,EAAE;IACdC,OAAO,CAACD,KAAK,CAAC,gCAAgC,EAAEA,KAAK,CAAC;IACtD,OAAO,IAAI;EACb;AACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AAJA3B,OAAA,CAAAkD,mBAAA,GAAAA,mBAAA;AAKO,MAAMK,eAAe,GAAI7B,GAAW,IAAc;EACvD;EACA,OAAOA,GAAG,CAAC8B,UAAU,CAAC,sBAAsB,CAAC;AAC/C,CAAC;AAACxD,OAAA,CAAAuD,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import React, { useState } from 'react';
2
- import { View, Text, StyleSheet, TouchableOpacity, ActivityIndicator, SafeAreaView, Dimensions } from 'react-native';
1
+ import React, { useState, useRef } from 'react';
2
+ import { View, Text, StyleSheet, TouchableOpacity, ActivityIndicator, SafeAreaView, Dimensions, Linking } from 'react-native';
3
3
  import { WebView } from 'react-native-webview';
4
4
  import Icon from 'react-native-vector-icons/MaterialIcons';
5
5
  import { COLORS } from '../../constants';
@@ -15,41 +15,23 @@ export const OAuthWebView = ({
15
15
  onComplete
16
16
  }) => {
17
17
  const [isLoading, setIsLoading] = useState(true);
18
- console.log('Opening OAuth WebView with URL:', url); // Add logging
19
-
18
+ const [error, setError] = useState(null);
19
+ const webViewRef = useRef(null);
20
+ console.log('Opening OAuth WebView with URL:', url);
20
21
  const handleNavigationStateChange = navState => {
21
22
  console.log(`Navigation state changed for ${platform}:`, navState.url);
22
23
 
23
24
  // Check for the final redirect to onairos.uk domain (this means backend callback completed)
24
- const isFinalRedirect = navState.url.includes('onairos.uk/Home') || navState.url.includes('onairos.uk/home') || navState.url.includes('onairos.uk/success');
25
-
26
- // For YouTube specifically, we need to be more careful about when to close
27
- // Only close after the backend callback redirects to onairos.uk/Home
28
- if (platform === 'youtube') {
29
- // Only trigger success when we see the final redirect from the backend
30
- if (isFinalRedirect) {
31
- console.log('YouTube OAuth completed - backend callback finished and redirected to Home');
32
- onSuccess('success');
33
-
34
- // Close the OAuth window after a small delay to ensure redirect is processed
35
- setTimeout(() => {
36
- if (onComplete) {
37
- console.log('Closing YouTube OAuth window after callback completion');
38
- onComplete();
39
- }
40
- }, 500);
41
- }
42
- return; // Exit early for YouTube to avoid other triggers
43
- }
25
+ const isFinalRedirect = navState.url.includes('onairos.uk/Home') || navState.url.includes('onairos.uk/home') || navState.url.includes('onairos.uk/success') || navState.url.startsWith('https://onairos.uk/Home');
44
26
 
45
- // Platform-specific success patterns (for non-YouTube platforms)
27
+ // Platform-specific success patterns
46
28
  const platformSuccessPatterns = {
47
29
  reddit: [/reddit\.com\/api\/v1\/authorize\?done=true/, /reddit\.com\/api\/v1\/authorize\/success/],
48
30
  pinterest: [/pinterest\.com\/oauth\/success/, /pinterest\.com\/oauth\/complete/],
49
31
  linkedin: [/linkedin\.com\/oauth\/success/, /linkedin\.com\/oauth\/complete/, /linkedin\.com\/uas\/oauth2\/authorization\/success/],
50
32
  email: [/success/],
51
- // Generic success pattern for email
52
- instagram: [/instagram\.com\/oauth\/authorize\?done=true/, /instagram\.com\/oauth\/success/]
33
+ instagram: [/instagram\.com\/oauth\/authorize\?done=true/, /instagram\.com\/oauth\/success/],
34
+ youtube: [/accounts\.google\.com\/o\/oauth2\/approval/, /youtube\.com\/oauth\/success/]
53
35
  };
54
36
 
55
37
  // Check for platform-specific success patterns
@@ -98,6 +80,20 @@ export const OAuthWebView = ({
98
80
  };
99
81
  const handleLoadEnd = () => {
100
82
  setIsLoading(false);
83
+ setError(null);
84
+ };
85
+ const handleError = syntheticEvent => {
86
+ const {
87
+ nativeEvent
88
+ } = syntheticEvent;
89
+ console.error('WebView error:', nativeEvent);
90
+ setError('Failed to load OAuth page. Please try again.');
91
+ setIsLoading(false);
92
+ };
93
+ const handleOpenInBrowser = () => {
94
+ Linking.openURL(url).catch(err => {
95
+ console.error('Failed to open URL in browser:', err);
96
+ });
101
97
  };
102
98
 
103
99
  /**
@@ -139,6 +135,43 @@ export const OAuthWebView = ({
139
135
  return COLORS.primary;
140
136
  }
141
137
  };
138
+ if (error) {
139
+ return /*#__PURE__*/React.createElement(SafeAreaView, {
140
+ style: styles.container
141
+ }, /*#__PURE__*/React.createElement(View, {
142
+ style: styles.header
143
+ }, /*#__PURE__*/React.createElement(TouchableOpacity, {
144
+ onPress: onClose,
145
+ style: styles.closeButton
146
+ }, /*#__PURE__*/React.createElement(Icon, {
147
+ name: "close",
148
+ size: 24,
149
+ color: "#000"
150
+ })), /*#__PURE__*/React.createElement(View, {
151
+ style: styles.titleContainer
152
+ }, /*#__PURE__*/React.createElement(Icon, {
153
+ name: getPlatformIcon(platform),
154
+ size: 20,
155
+ color: getPlatformColor(platform)
156
+ }), /*#__PURE__*/React.createElement(Text, {
157
+ style: styles.titleText
158
+ }, platform.charAt(0).toUpperCase() + platform.slice(1), " OAuth"))), /*#__PURE__*/React.createElement(View, {
159
+ style: styles.errorContainer
160
+ }, /*#__PURE__*/React.createElement(Icon, {
161
+ name: "error-outline",
162
+ size: 48,
163
+ color: "#FF6B6B"
164
+ }), /*#__PURE__*/React.createElement(Text, {
165
+ style: styles.errorTitle
166
+ }, "Connection Error"), /*#__PURE__*/React.createElement(Text, {
167
+ style: styles.errorMessage
168
+ }, error), /*#__PURE__*/React.createElement(TouchableOpacity, {
169
+ style: styles.retryButton,
170
+ onPress: handleOpenInBrowser
171
+ }, /*#__PURE__*/React.createElement(Text, {
172
+ style: styles.retryButtonText
173
+ }, "Open in Browser"))));
174
+ }
142
175
  return /*#__PURE__*/React.createElement(SafeAreaView, {
143
176
  style: styles.container
144
177
  }, /*#__PURE__*/React.createElement(View, {
@@ -158,17 +191,24 @@ export const OAuthWebView = ({
158
191
  color: getPlatformColor(platform)
159
192
  }), /*#__PURE__*/React.createElement(Text, {
160
193
  style: styles.titleText
161
- }, platform.charAt(0).toUpperCase() + platform.slice(1), " OAuth"))), /*#__PURE__*/React.createElement(WebView, {
194
+ }, platform.charAt(0).toUpperCase() + platform.slice(1), " OAuth")), /*#__PURE__*/React.createElement(TouchableOpacity, {
195
+ onPress: handleOpenInBrowser,
196
+ style: styles.browserButton
197
+ }, /*#__PURE__*/React.createElement(Icon, {
198
+ name: "open-in-browser",
199
+ size: 20,
200
+ color: "#666"
201
+ }))), /*#__PURE__*/React.createElement(WebView, {
202
+ ref: webViewRef,
162
203
  source: {
163
204
  uri: url
164
205
  },
165
206
  onNavigationStateChange: handleNavigationStateChange,
166
207
  onLoadEnd: handleLoadEnd,
208
+ onError: handleError,
167
209
  style: styles.webView,
168
210
  javaScriptEnabled: true,
169
211
  domStorageEnabled: true,
170
- sharedCookiesEnabled: true,
171
- thirdPartyCookiesEnabled: true,
172
212
  userAgent: "Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1"
173
213
  }), isLoading && /*#__PURE__*/React.createElement(View, {
174
214
  style: styles.loadingContainer
@@ -211,6 +251,12 @@ const styles = StyleSheet.create({
211
251
  left: 16,
212
252
  zIndex: 10
213
253
  },
254
+ browserButton: {
255
+ padding: 8,
256
+ position: 'absolute',
257
+ right: 16,
258
+ zIndex: 10
259
+ },
214
260
  webView: {
215
261
  flex: 1
216
262
  },
@@ -224,6 +270,36 @@ const styles = StyleSheet.create({
224
270
  marginTop: 10,
225
271
  fontSize: 16,
226
272
  color: '#666'
273
+ },
274
+ errorContainer: {
275
+ flex: 1,
276
+ alignItems: 'center',
277
+ justifyContent: 'center',
278
+ padding: 20
279
+ },
280
+ errorTitle: {
281
+ fontSize: 18,
282
+ fontWeight: '600',
283
+ color: '#333',
284
+ marginTop: 16,
285
+ marginBottom: 8
286
+ },
287
+ errorMessage: {
288
+ fontSize: 14,
289
+ color: '#666',
290
+ textAlign: 'center',
291
+ marginBottom: 20
292
+ },
293
+ retryButton: {
294
+ backgroundColor: COLORS.primary,
295
+ paddingHorizontal: 24,
296
+ paddingVertical: 12,
297
+ borderRadius: 8
298
+ },
299
+ retryButtonText: {
300
+ color: '#fff',
301
+ fontSize: 16,
302
+ fontWeight: '600'
227
303
  }
228
304
  });
229
305
  //# sourceMappingURL=OAuthWebView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","View","Text","StyleSheet","TouchableOpacity","ActivityIndicator","SafeAreaView","Dimensions","WebView","Icon","COLORS","width","height","get","OAuthWebView","url","onClose","onSuccess","platform","onComplete","isLoading","setIsLoading","console","log","handleNavigationStateChange","navState","isFinalRedirect","includes","setTimeout","platformSuccessPatterns","reddit","pinterest","linkedin","email","instagram","isPlatformSuccess","some","pattern","test","isCallbackUrl","authCode","codeMatch","match","tokenMatch","handleLoadEnd","getPlatformIcon","getPlatformColor","primary","createElement","style","styles","container","header","onPress","closeButton","name","size","color","titleContainer","titleText","charAt","toUpperCase","slice","source","uri","onNavigationStateChange","onLoadEnd","webView","javaScriptEnabled","domStorageEnabled","sharedCookiesEnabled","thirdPartyCookiesEnabled","userAgent","loadingContainer","loadingText","create","flex","backgroundColor","flexDirection","alignItems","borderBottomWidth","borderBottomColor","paddingHorizontal","justifyContent","marginLeft","fontSize","fontWeight","padding","position","left","zIndex","absoluteFillObject","marginTop"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/onboarding/OAuthWebView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","useRef","View","Text","StyleSheet","TouchableOpacity","ActivityIndicator","SafeAreaView","Dimensions","Linking","WebView","Icon","COLORS","width","height","get","OAuthWebView","url","onClose","onSuccess","platform","onComplete","isLoading","setIsLoading","error","setError","webViewRef","console","log","handleNavigationStateChange","navState","isFinalRedirect","includes","startsWith","platformSuccessPatterns","reddit","pinterest","linkedin","email","instagram","youtube","isPlatformSuccess","some","pattern","test","isCallbackUrl","authCode","codeMatch","match","tokenMatch","handleLoadEnd","handleError","syntheticEvent","nativeEvent","handleOpenInBrowser","openURL","catch","err","getPlatformIcon","getPlatformColor","primary","createElement","style","styles","container","header","onPress","closeButton","name","size","color","titleContainer","titleText","charAt","toUpperCase","slice","errorContainer","errorTitle","errorMessage","retryButton","retryButtonText","browserButton","ref","source","uri","onNavigationStateChange","onLoadEnd","onError","webView","javaScriptEnabled","domStorageEnabled","userAgent","loadingContainer","loadingText","create","flex","backgroundColor","flexDirection","alignItems","borderBottomWidth","borderBottomColor","paddingHorizontal","justifyContent","marginLeft","fontSize","fontWeight","padding","position","left","zIndex","right","absoluteFillObject","marginTop","marginBottom","textAlign","paddingVertical","borderRadius"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/onboarding/OAuthWebView.tsx"],"mappings":"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","ignoreList":[]}
@@ -155,13 +155,55 @@ export const initiateNativeAuth = async platform => {
155
155
  try {
156
156
  // Currently only YouTube (Google Sign-In) is supported
157
157
  if (platform === 'youtube') {
158
- // This is a placeholder for the actual implementation
159
- // In a real implementation, you would import and use the Google Sign-In SDK
160
158
  console.log('Initiating native Google Sign-In for YouTube');
161
-
162
- // Simulate a successful authentication
163
- // In a real implementation, this would be the result of the Google Sign-In flow
164
- return true;
159
+ try {
160
+ // Import Google Sign-In dynamically to avoid errors if not installed
161
+ const {
162
+ GoogleSignin,
163
+ statusCodes
164
+ } = require('@react-native-google-signin/google-signin');
165
+
166
+ // Configure Google Sign-In
167
+ await GoogleSignin.configure({
168
+ scopes: ['https://www.googleapis.com/auth/youtube.readonly'],
169
+ webClientId: 'YOUR_WEB_CLIENT_ID',
170
+ // Replace with your actual web client ID
171
+ offlineAccess: true,
172
+ hostedDomain: '',
173
+ forceCodeForRefreshToken: true
174
+ });
175
+
176
+ // Check if device supports Google Play Services
177
+ await GoogleSignin.hasPlayServices();
178
+
179
+ // Sign in
180
+ const userInfo = await GoogleSignin.signIn();
181
+ console.log('Google Sign-In successful:', userInfo);
182
+
183
+ // Get access token
184
+ const tokens = await GoogleSignin.getTokens();
185
+ console.log('Google tokens:', tokens);
186
+
187
+ // Here you would typically send the tokens to your backend
188
+ // to associate the YouTube account with the user
189
+
190
+ return true;
191
+ } catch (error) {
192
+ console.error('Google Sign-In error:', error);
193
+ const {
194
+ statusCodes: StatusCodes
195
+ } = require('@react-native-google-signin/google-signin');
196
+ if (error.code === StatusCodes.SIGN_IN_CANCELLED) {
197
+ console.log('User cancelled the sign-in flow');
198
+ } else if (error.code === StatusCodes.IN_PROGRESS) {
199
+ console.log('Sign-in is in progress already');
200
+ } else if (error.code === StatusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
201
+ console.log('Play services not available or outdated');
202
+ } else {
203
+ console.log('Some other error happened');
204
+ }
205
+ return false;
206
+ }
165
207
  }
166
208
  throw new Error(`Native authentication not supported for ${platform}`);
167
209
  } catch (error) {
@@ -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","Error","state","jsonData","session","oauthState","response","fetch","method","headers","body","JSON","stringify","responseData","json","instagramURL","data","redditURL","pinterestURL","youtubeURL","emailURL","url","error","console","initiateNativeAuth","log","handleOAuthCallback","parsedUrl","URL","searchParams","get","isOAuthCallback","startsWith"],"sourceRoot":"..\\..\\..\\src","sources":["services/platformAuthService.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PLATFORM_AUTH_CONFIG","instagram","hasNativeSDK","authEndpoint","color","youtube","nativeSDKPackage","reddit","pinterest","email","platform","config","getAuthEndpoint","getPlatformColor","initiateOAuth","username","appName","Error","state","jsonData","session","oauthState","response","fetch","method","headers","body","JSON","stringify","responseData","json","instagramURL","data","redditURL","pinterestURL","youtubeURL","emailURL","url","error","console","initiateNativeAuth","log","GoogleSignin","statusCodes","require","configure","scopes","webClientId","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"],"sourceRoot":"..\\..\\..\\src","sources":["services/platformAuthService.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"OAuthWebView.d.ts","sourceRoot":"","sources":["../../../../src/components/onboarding/OAuthWebView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAgBxC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAmMpD,CAAC"}
1
+ {"version":3,"file":"OAuthWebView.d.ts","sourceRoot":"","sources":["../../../../src/components/onboarding/OAuthWebView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAiBhD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAqOpD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"platformAuthService.d.ts","sourceRoot":"","sources":["../../../src/services/platformAuthService.ts"],"names":[],"mappings":"AAyCA;;GAEG;AACH,eAAO,MAAM,YAAY,aAAc,MAAM,KAAG,OAG/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,aAAc,MAAM,KAAG,MAGlD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,aAAc,MAAM,KAAG,MAGnD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,aAAoB,MAAM,YAAY,MAAM,YAAY,MAAM,KAAG,QAAQ,MAAM,GAAG,IAAI,CAqF/G,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,aAAoB,MAAM,KAAG,QAAQ,OAAO,CAkB1E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAS,MAAM,KAAG,MAAM,GAAG,IAW1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,KAAG,OAG7C,CAAC"}
1
+ {"version":3,"file":"platformAuthService.d.ts","sourceRoot":"","sources":["../../../src/services/platformAuthService.ts"],"names":[],"mappings":"AAyCA;;GAEG;AACH,eAAO,MAAM,YAAY,aAAc,MAAM,KAAG,OAG/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,aAAc,MAAM,KAAG,MAGlD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,aAAc,MAAM,KAAG,MAGnD,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,aAAoB,MAAM,YAAY,MAAM,YAAY,MAAM,KAAG,QAAQ,MAAM,GAAG,IAAI,CAqF/G,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,aAAoB,MAAM,KAAG,QAAQ,OAAO,CA0D1E,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAS,MAAM,KAAG,MAAM,GAAG,IAW1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAS,MAAM,KAAG,OAG7C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onairos/react-native",
3
- "version": "3.0.30",
3
+ "version": "3.0.31",
4
4
  "description": "Onairos React Native SDK for social media authentication and AI model training",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -1,4 +1,4 @@
1
- import React, { useState } from 'react';
1
+ import React, { useState, useRef } from 'react';
2
2
  import {
3
3
  View,
4
4
  Text,
@@ -7,6 +7,7 @@ import {
7
7
  ActivityIndicator,
8
8
  SafeAreaView,
9
9
  Dimensions,
10
+ Linking,
10
11
  } from 'react-native';
11
12
  import { WebView } from 'react-native-webview';
12
13
  import Icon from 'react-native-vector-icons/MaterialIcons';
@@ -30,8 +31,10 @@ export const OAuthWebView: React.FC<OAuthWebViewProps> = ({
30
31
  onComplete,
31
32
  }) => {
32
33
  const [isLoading, setIsLoading] = useState(true);
34
+ const [error, setError] = useState<string | null>(null);
35
+ const webViewRef = useRef<WebView>(null);
33
36
 
34
- console.log('Opening OAuth WebView with URL:', url); // Add logging
37
+ console.log('Opening OAuth WebView with URL:', url);
35
38
 
36
39
  const handleNavigationStateChange = (navState: any) => {
37
40
  console.log(`Navigation state changed for ${platform}:`, navState.url);
@@ -40,29 +43,11 @@ export const OAuthWebView: React.FC<OAuthWebViewProps> = ({
40
43
  const isFinalRedirect = (
41
44
  navState.url.includes('onairos.uk/Home') ||
42
45
  navState.url.includes('onairos.uk/home') ||
43
- navState.url.includes('onairos.uk/success')
46
+ navState.url.includes('onairos.uk/success') ||
47
+ navState.url.startsWith('https://onairos.uk/Home')
44
48
  );
45
49
 
46
- // For YouTube specifically, we need to be more careful about when to close
47
- // Only close after the backend callback redirects to onairos.uk/Home
48
- if (platform === 'youtube') {
49
- // Only trigger success when we see the final redirect from the backend
50
- if (isFinalRedirect) {
51
- console.log('YouTube OAuth completed - backend callback finished and redirected to Home');
52
- onSuccess('success');
53
-
54
- // Close the OAuth window after a small delay to ensure redirect is processed
55
- setTimeout(() => {
56
- if (onComplete) {
57
- console.log('Closing YouTube OAuth window after callback completion');
58
- onComplete();
59
- }
60
- }, 500);
61
- }
62
- return; // Exit early for YouTube to avoid other triggers
63
- }
64
-
65
- // Platform-specific success patterns (for non-YouTube platforms)
50
+ // Platform-specific success patterns
66
51
  const platformSuccessPatterns: Record<string, RegExp[]> = {
67
52
  reddit: [
68
53
  /reddit\.com\/api\/v1\/authorize\?done=true/,
@@ -77,10 +62,14 @@ export const OAuthWebView: React.FC<OAuthWebViewProps> = ({
77
62
  /linkedin\.com\/oauth\/complete/,
78
63
  /linkedin\.com\/uas\/oauth2\/authorization\/success/
79
64
  ],
80
- email: [/success/], // Generic success pattern for email
65
+ email: [/success/],
81
66
  instagram: [
82
67
  /instagram\.com\/oauth\/authorize\?done=true/,
83
68
  /instagram\.com\/oauth\/success/
69
+ ],
70
+ youtube: [
71
+ /accounts\.google\.com\/o\/oauth2\/approval/,
72
+ /youtube\.com\/oauth\/success/
84
73
  ]
85
74
  };
86
75
 
@@ -139,6 +128,20 @@ export const OAuthWebView: React.FC<OAuthWebViewProps> = ({
139
128
 
140
129
  const handleLoadEnd = () => {
141
130
  setIsLoading(false);
131
+ setError(null);
132
+ };
133
+
134
+ const handleError = (syntheticEvent: any) => {
135
+ const { nativeEvent } = syntheticEvent;
136
+ console.error('WebView error:', nativeEvent);
137
+ setError('Failed to load OAuth page. Please try again.');
138
+ setIsLoading(false);
139
+ };
140
+
141
+ const handleOpenInBrowser = () => {
142
+ Linking.openURL(url).catch(err => {
143
+ console.error('Failed to open URL in browser:', err);
144
+ });
142
145
  };
143
146
 
144
147
  /**
@@ -181,6 +184,35 @@ export const OAuthWebView: React.FC<OAuthWebViewProps> = ({
181
184
  }
182
185
  };
183
186
 
187
+ if (error) {
188
+ return (
189
+ <SafeAreaView style={styles.container}>
190
+ <View style={styles.header}>
191
+ <TouchableOpacity onPress={onClose} style={styles.closeButton}>
192
+ <Icon name="close" size={24} color="#000" />
193
+ </TouchableOpacity>
194
+ <View style={styles.titleContainer}>
195
+ <Icon
196
+ name={getPlatformIcon(platform)}
197
+ size={20}
198
+ color={getPlatformColor(platform)}
199
+ />
200
+ <Text style={styles.titleText}>{platform.charAt(0).toUpperCase() + platform.slice(1)} OAuth</Text>
201
+ </View>
202
+ </View>
203
+
204
+ <View style={styles.errorContainer}>
205
+ <Icon name="error-outline" size={48} color="#FF6B6B" />
206
+ <Text style={styles.errorTitle}>Connection Error</Text>
207
+ <Text style={styles.errorMessage}>{error}</Text>
208
+ <TouchableOpacity style={styles.retryButton} onPress={handleOpenInBrowser}>
209
+ <Text style={styles.retryButtonText}>Open in Browser</Text>
210
+ </TouchableOpacity>
211
+ </View>
212
+ </SafeAreaView>
213
+ );
214
+ }
215
+
184
216
  return (
185
217
  <SafeAreaView style={styles.container}>
186
218
  <View style={styles.header}>
@@ -195,17 +227,20 @@ export const OAuthWebView: React.FC<OAuthWebViewProps> = ({
195
227
  />
196
228
  <Text style={styles.titleText}>{platform.charAt(0).toUpperCase() + platform.slice(1)} OAuth</Text>
197
229
  </View>
230
+ <TouchableOpacity onPress={handleOpenInBrowser} style={styles.browserButton}>
231
+ <Icon name="open-in-browser" size={20} color="#666" />
232
+ </TouchableOpacity>
198
233
  </View>
199
234
 
200
235
  <WebView
236
+ ref={webViewRef}
201
237
  source={{ uri: url }}
202
238
  onNavigationStateChange={handleNavigationStateChange}
203
239
  onLoadEnd={handleLoadEnd}
240
+ onError={handleError}
204
241
  style={styles.webView}
205
242
  javaScriptEnabled={true}
206
243
  domStorageEnabled={true}
207
- sharedCookiesEnabled={true}
208
- thirdPartyCookiesEnabled={true}
209
244
  userAgent="Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1"
210
245
  />
211
246
 
@@ -251,6 +286,12 @@ const styles = StyleSheet.create({
251
286
  left: 16,
252
287
  zIndex: 10,
253
288
  },
289
+ browserButton: {
290
+ padding: 8,
291
+ position: 'absolute',
292
+ right: 16,
293
+ zIndex: 10,
294
+ },
254
295
  webView: {
255
296
  flex: 1,
256
297
  },
@@ -265,4 +306,34 @@ const styles = StyleSheet.create({
265
306
  fontSize: 16,
266
307
  color: '#666',
267
308
  },
309
+ errorContainer: {
310
+ flex: 1,
311
+ alignItems: 'center',
312
+ justifyContent: 'center',
313
+ padding: 20,
314
+ },
315
+ errorTitle: {
316
+ fontSize: 18,
317
+ fontWeight: '600',
318
+ color: '#333',
319
+ marginTop: 16,
320
+ marginBottom: 8,
321
+ },
322
+ errorMessage: {
323
+ fontSize: 14,
324
+ color: '#666',
325
+ textAlign: 'center',
326
+ marginBottom: 20,
327
+ },
328
+ retryButton: {
329
+ backgroundColor: COLORS.primary,
330
+ paddingHorizontal: 24,
331
+ paddingVertical: 12,
332
+ borderRadius: 8,
333
+ },
334
+ retryButtonText: {
335
+ color: '#fff',
336
+ fontSize: 16,
337
+ fontWeight: '600',
338
+ },
268
339
  });
@@ -166,13 +166,53 @@ export const initiateNativeAuth = async (platform: string): Promise<boolean> =>
166
166
  try {
167
167
  // Currently only YouTube (Google Sign-In) is supported
168
168
  if (platform === 'youtube') {
169
- // This is a placeholder for the actual implementation
170
- // In a real implementation, you would import and use the Google Sign-In SDK
171
169
  console.log('Initiating native Google Sign-In for YouTube');
172
170
 
173
- // Simulate a successful authentication
174
- // In a real implementation, this would be the result of the Google Sign-In flow
175
- return true;
171
+ try {
172
+ // Import Google Sign-In dynamically to avoid errors if not installed
173
+ const { GoogleSignin, statusCodes } = require('@react-native-google-signin/google-signin');
174
+
175
+ // Configure Google Sign-In
176
+ await GoogleSignin.configure({
177
+ scopes: ['https://www.googleapis.com/auth/youtube.readonly'],
178
+ webClientId: 'YOUR_WEB_CLIENT_ID', // Replace with your actual web client ID
179
+ offlineAccess: true,
180
+ hostedDomain: '',
181
+ forceCodeForRefreshToken: true,
182
+ });
183
+
184
+ // Check if device supports Google Play Services
185
+ await GoogleSignin.hasPlayServices();
186
+
187
+ // Sign in
188
+ const userInfo = await GoogleSignin.signIn();
189
+ console.log('Google Sign-In successful:', userInfo);
190
+
191
+ // Get access token
192
+ const tokens = await GoogleSignin.getTokens();
193
+ console.log('Google tokens:', tokens);
194
+
195
+ // Here you would typically send the tokens to your backend
196
+ // to associate the YouTube account with the user
197
+
198
+ return true;
199
+ } catch (error: any) {
200
+ console.error('Google Sign-In error:', error);
201
+
202
+ const { statusCodes: StatusCodes } = require('@react-native-google-signin/google-signin');
203
+
204
+ if (error.code === StatusCodes.SIGN_IN_CANCELLED) {
205
+ console.log('User cancelled the sign-in flow');
206
+ } else if (error.code === StatusCodes.IN_PROGRESS) {
207
+ console.log('Sign-in is in progress already');
208
+ } else if (error.code === StatusCodes.PLAY_SERVICES_NOT_AVAILABLE) {
209
+ console.log('Play services not available or outdated');
210
+ } else {
211
+ console.log('Some other error happened');
212
+ }
213
+
214
+ return false;
215
+ }
176
216
  }
177
217
 
178
218
  throw new Error(`Native authentication not supported for ${platform}`);