@onairos/react-native 3.0.21 → 3.0.22

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.
@@ -12,8 +12,8 @@ var _secureStorage = require("../utils/secureStorage");
12
12
  var _api = require("../api");
13
13
  var _Portal = require("../utils/Portal");
14
14
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
- /**
16
- * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
15
+ /**
16
+ * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
17
17
  */
18
18
  const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef)(({
19
19
  returnLink,
@@ -34,7 +34,13 @@ const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef
34
34
  debug = false,
35
35
  darkMode = false,
36
36
  preferredPlatform,
37
- testMode = false
37
+ testMode = false,
38
+ autoFetch = false,
39
+ inferenceData,
40
+ textLayout,
41
+ textColor: customTextColor,
42
+ proofMode = false,
43
+ webpageName
38
44
  }, ref) => {
39
45
  const [showOnboarding, setShowOnboarding] = (0, _react.useState)(false);
40
46
  const [showOverlay, setShowOverlay] = (0, _react.useState)(false);
@@ -88,6 +94,55 @@ const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef
88
94
  if (!enabled || isLoading) return;
89
95
  setIsLoading(true);
90
96
  try {
97
+ // If autoFetch is enabled, directly call the API with inferenceData
98
+ if (autoFetch) {
99
+ if (!inferenceData) {
100
+ throw new Error('inferenceData is required when autoFetch is enabled');
101
+ }
102
+ try {
103
+ // Check if credentials exist
104
+ const hasStoredCreds = await (0, _secureStorage.hasCredentials)();
105
+ if (hasStoredCreds) {
106
+ const credentials = await (0, _secureStorage.getCredentials)();
107
+ if (!credentials || !credentials.username) {
108
+ throw new Error('Invalid credentials');
109
+ }
110
+
111
+ // Call the API directly with inferenceData
112
+ // Using a custom API call for inference
113
+ const result = await fetch(`https://api.onairos.ai/inference`, {
114
+ method: 'POST',
115
+ headers: {
116
+ 'Content-Type': 'application/json',
117
+ 'Authorization': `Bearer ${credentials.userPin || ''}`
118
+ },
119
+ body: JSON.stringify({
120
+ username: credentials.username,
121
+ modelKey: credentials.userPin || '',
122
+ data: inferenceData,
123
+ requestData: requestData || {},
124
+ proofMode: proofMode,
125
+ webpageName: webpageName || AppName
126
+ })
127
+ }).then(res => res.json());
128
+ if (result && result.success) {
129
+ if (onResolved) {
130
+ onResolved(result.apiUrl || '', result.token || '', result.data || {});
131
+ }
132
+ setIsLoading(false);
133
+ return;
134
+ } else {
135
+ throw new Error((result === null || result === void 0 ? void 0 : result.error) || 'API call failed');
136
+ }
137
+ } else {
138
+ // No credentials, proceed with normal flow
139
+ console.log('No credentials found, proceeding with normal flow');
140
+ }
141
+ } catch (autoFetchError) {
142
+ console.error('AutoFetch error:', autoFetchError);
143
+ // Fall back to normal flow on error
144
+ }
145
+ }
91
146
  if (preCheck) {
92
147
  const shouldProceed = await preCheck();
93
148
  if (!shouldProceed) {
@@ -161,8 +216,8 @@ const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef
161
216
  borderColor: darkMode ? '#555555' : '#000000'
162
217
  }, swerv && styles.swervButton, !enabled && styles.disabledButton].filter(Boolean);
163
218
 
164
- // Calculate text color
165
- const textColor = getTextColor();
219
+ // Calculate button text color
220
+ const buttonTextColor = getTextColor();
166
221
 
167
222
  // Render components
168
223
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
@@ -174,7 +229,7 @@ const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef
174
229
  onPressOut: () => setIsPressed(false)
175
230
  }, isLoading ? /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
176
231
  size: "small",
177
- color: textColor
232
+ color: buttonTextColor
178
233
  }) : /*#__PURE__*/_react.default.createElement(_reactNative.View, {
179
234
  style: styles.buttonContent
180
235
  }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
@@ -183,7 +238,7 @@ const OnairosButton = exports.OnairosButton = /*#__PURE__*/(0, _react.forwardRef
183
238
  resizeMode: "contain"
184
239
  }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
185
240
  style: [styles.buttonText, {
186
- color: textColor
241
+ color: buttonTextColor
187
242
  }]
188
243
  }, getButtonText()))), showOnboarding && /*#__PURE__*/_react.default.createElement(_UniversalOnboarding.UniversalOnboarding, {
189
244
  visible: showOnboarding,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_UniversalOnboarding","_Overlay","_secureStorage","_api","_Portal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OnairosButton","exports","forwardRef","returnLink","prefillUrl","AppName","buttonType","requestData","buttonWidth","buttonHeight","hasStroke","enabled","buttonForm","onRejection","onResolved","preCheck","color","swerv","debug","darkMode","preferredPlatform","testMode","ref","showOnboarding","setShowOnboarding","useState","showOverlay","setShowOverlay","storedCredentials","setStoredCredentials","isLoading","setIsLoading","isPressed","setIsPressed","useImperativeHandle","trigger","handlePress","reset","clearCredentials","getButtonText","getBackgroundColor","getTextColor","bgColor","includes","shouldProceed","hasStoredCreds","hasCredentials","credentials","getCredentials","username","isValid","onairosApi","validateCredentials","validationError","console","warn","error","Error","message","handleOnboardingComplete","useCallback","apiUrl","token","data","handleOverlayResolved","buttonStyle","styles","button","pillButton","strokedButton","width","height","backgroundColor","borderColor","swervButton","disabledButton","filter","Boolean","textColor","createElement","Fragment","TouchableOpacity","style","onPress","disabled","accessibilityLabel","onPressIn","onPressOut","ActivityIndicator","size","View","buttonContent","Image","source","logo","resizeMode","Text","buttonText","UniversalOnboarding","visible","onClose","onComplete","test","Portal","Overlay","modelKey","userPin","appName","StyleSheet","create","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","marginRight","borderWidth","transform","rotate","opacity","fontSize","fontWeight","textAlign"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_UniversalOnboarding","_Overlay","_secureStorage","_api","_Portal","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OnairosButton","exports","forwardRef","returnLink","prefillUrl","AppName","buttonType","requestData","buttonWidth","buttonHeight","hasStroke","enabled","buttonForm","onRejection","onResolved","preCheck","color","swerv","debug","darkMode","preferredPlatform","testMode","autoFetch","inferenceData","textLayout","textColor","customTextColor","proofMode","webpageName","ref","showOnboarding","setShowOnboarding","useState","showOverlay","setShowOverlay","storedCredentials","setStoredCredentials","isLoading","setIsLoading","isPressed","setIsPressed","useImperativeHandle","trigger","handlePress","reset","clearCredentials","getButtonText","getBackgroundColor","getTextColor","bgColor","includes","Error","hasStoredCreds","hasCredentials","credentials","getCredentials","username","result","fetch","method","headers","userPin","body","JSON","stringify","modelKey","data","then","res","json","success","apiUrl","token","error","console","log","autoFetchError","shouldProceed","isValid","onairosApi","validateCredentials","validationError","warn","message","handleOnboardingComplete","useCallback","handleOverlayResolved","buttonStyle","styles","button","pillButton","strokedButton","width","height","backgroundColor","borderColor","swervButton","disabledButton","filter","Boolean","buttonTextColor","createElement","Fragment","TouchableOpacity","style","onPress","disabled","accessibilityLabel","onPressIn","onPressOut","ActivityIndicator","size","View","buttonContent","Image","source","logo","resizeMode","Text","buttonText","UniversalOnboarding","visible","onClose","onComplete","test","Portal","Overlay","appName","StyleSheet","create","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","marginRight","borderWidth","transform","rotate","opacity","fontSize","fontWeight","textAlign"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,8 +5,8 @@ import { Overlay } from './Overlay';
5
5
  import { hasCredentials, getCredentials, deleteCredentials as clearCredentials } from '../utils/secureStorage';
6
6
  import { onairosApi } from '../api';
7
7
  import { Portal } from '../utils/Portal';
8
- /**
9
- * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
8
+ /**
9
+ * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
10
10
  */
11
11
  export const OnairosButton = /*#__PURE__*/forwardRef(({
12
12
  returnLink,
@@ -27,7 +27,13 @@ export const OnairosButton = /*#__PURE__*/forwardRef(({
27
27
  debug = false,
28
28
  darkMode = false,
29
29
  preferredPlatform,
30
- testMode = false
30
+ testMode = false,
31
+ autoFetch = false,
32
+ inferenceData,
33
+ textLayout,
34
+ textColor: customTextColor,
35
+ proofMode = false,
36
+ webpageName
31
37
  }, ref) => {
32
38
  const [showOnboarding, setShowOnboarding] = useState(false);
33
39
  const [showOverlay, setShowOverlay] = useState(false);
@@ -81,6 +87,55 @@ export const OnairosButton = /*#__PURE__*/forwardRef(({
81
87
  if (!enabled || isLoading) return;
82
88
  setIsLoading(true);
83
89
  try {
90
+ // If autoFetch is enabled, directly call the API with inferenceData
91
+ if (autoFetch) {
92
+ if (!inferenceData) {
93
+ throw new Error('inferenceData is required when autoFetch is enabled');
94
+ }
95
+ try {
96
+ // Check if credentials exist
97
+ const hasStoredCreds = await hasCredentials();
98
+ if (hasStoredCreds) {
99
+ const credentials = await getCredentials();
100
+ if (!credentials || !credentials.username) {
101
+ throw new Error('Invalid credentials');
102
+ }
103
+
104
+ // Call the API directly with inferenceData
105
+ // Using a custom API call for inference
106
+ const result = await fetch(`https://api.onairos.ai/inference`, {
107
+ method: 'POST',
108
+ headers: {
109
+ 'Content-Type': 'application/json',
110
+ 'Authorization': `Bearer ${credentials.userPin || ''}`
111
+ },
112
+ body: JSON.stringify({
113
+ username: credentials.username,
114
+ modelKey: credentials.userPin || '',
115
+ data: inferenceData,
116
+ requestData: requestData || {},
117
+ proofMode: proofMode,
118
+ webpageName: webpageName || AppName
119
+ })
120
+ }).then(res => res.json());
121
+ if (result && result.success) {
122
+ if (onResolved) {
123
+ onResolved(result.apiUrl || '', result.token || '', result.data || {});
124
+ }
125
+ setIsLoading(false);
126
+ return;
127
+ } else {
128
+ throw new Error((result === null || result === void 0 ? void 0 : result.error) || 'API call failed');
129
+ }
130
+ } else {
131
+ // No credentials, proceed with normal flow
132
+ console.log('No credentials found, proceeding with normal flow');
133
+ }
134
+ } catch (autoFetchError) {
135
+ console.error('AutoFetch error:', autoFetchError);
136
+ // Fall back to normal flow on error
137
+ }
138
+ }
84
139
  if (preCheck) {
85
140
  const shouldProceed = await preCheck();
86
141
  if (!shouldProceed) {
@@ -154,8 +209,8 @@ export const OnairosButton = /*#__PURE__*/forwardRef(({
154
209
  borderColor: darkMode ? '#555555' : '#000000'
155
210
  }, swerv && styles.swervButton, !enabled && styles.disabledButton].filter(Boolean);
156
211
 
157
- // Calculate text color
158
- const textColor = getTextColor();
212
+ // Calculate button text color
213
+ const buttonTextColor = getTextColor();
159
214
 
160
215
  // Render components
161
216
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TouchableOpacity, {
@@ -167,7 +222,7 @@ export const OnairosButton = /*#__PURE__*/forwardRef(({
167
222
  onPressOut: () => setIsPressed(false)
168
223
  }, isLoading ? /*#__PURE__*/React.createElement(ActivityIndicator, {
169
224
  size: "small",
170
- color: textColor
225
+ color: buttonTextColor
171
226
  }) : /*#__PURE__*/React.createElement(View, {
172
227
  style: styles.buttonContent
173
228
  }, /*#__PURE__*/React.createElement(Image, {
@@ -176,7 +231,7 @@ export const OnairosButton = /*#__PURE__*/forwardRef(({
176
231
  resizeMode: "contain"
177
232
  }), /*#__PURE__*/React.createElement(Text, {
178
233
  style: [styles.buttonText, {
179
- color: textColor
234
+ color: buttonTextColor
180
235
  }]
181
236
  }, getButtonText()))), showOnboarding && /*#__PURE__*/React.createElement(UniversalOnboarding, {
182
237
  visible: showOnboarding,
@@ -1 +1 @@
1
- {"version":3,"names":["React","useState","useCallback","forwardRef","useImperativeHandle","TouchableOpacity","Text","StyleSheet","View","ActivityIndicator","Image","UniversalOnboarding","Overlay","hasCredentials","getCredentials","deleteCredentials","clearCredentials","onairosApi","Portal","OnairosButton","returnLink","prefillUrl","AppName","buttonType","requestData","buttonWidth","buttonHeight","hasStroke","enabled","buttonForm","onRejection","onResolved","preCheck","color","swerv","debug","darkMode","preferredPlatform","testMode","ref","showOnboarding","setShowOnboarding","showOverlay","setShowOverlay","storedCredentials","setStoredCredentials","isLoading","setIsLoading","isPressed","setIsPressed","trigger","handlePress","reset","getButtonText","getBackgroundColor","getTextColor","bgColor","includes","shouldProceed","hasStoredCreds","credentials","username","isValid","validateCredentials","validationError","console","warn","error","Error","message","handleOnboardingComplete","apiUrl","token","data","handleOverlayResolved","buttonStyle","styles","button","pillButton","strokedButton","width","height","backgroundColor","borderColor","swervButton","disabledButton","filter","Boolean","textColor","createElement","Fragment","style","onPress","disabled","accessibilityLabel","onPressIn","onPressOut","size","buttonContent","source","require","logo","resizeMode","buttonText","visible","onClose","onComplete","test","modelKey","userPin","appName","create","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","marginRight","borderWidth","transform","rotate","opacity","fontSize","fontWeight","textAlign"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","useCallback","forwardRef","useImperativeHandle","TouchableOpacity","Text","StyleSheet","View","ActivityIndicator","Image","UniversalOnboarding","Overlay","hasCredentials","getCredentials","deleteCredentials","clearCredentials","onairosApi","Portal","OnairosButton","returnLink","prefillUrl","AppName","buttonType","requestData","buttonWidth","buttonHeight","hasStroke","enabled","buttonForm","onRejection","onResolved","preCheck","color","swerv","debug","darkMode","preferredPlatform","testMode","autoFetch","inferenceData","textLayout","textColor","customTextColor","proofMode","webpageName","ref","showOnboarding","setShowOnboarding","showOverlay","setShowOverlay","storedCredentials","setStoredCredentials","isLoading","setIsLoading","isPressed","setIsPressed","trigger","handlePress","reset","getButtonText","getBackgroundColor","getTextColor","bgColor","includes","Error","hasStoredCreds","credentials","username","result","fetch","method","headers","userPin","body","JSON","stringify","modelKey","data","then","res","json","success","apiUrl","token","error","console","log","autoFetchError","shouldProceed","isValid","validateCredentials","validationError","warn","message","handleOnboardingComplete","handleOverlayResolved","buttonStyle","styles","button","pillButton","strokedButton","width","height","backgroundColor","borderColor","swervButton","disabledButton","filter","Boolean","buttonTextColor","createElement","Fragment","style","onPress","disabled","accessibilityLabel","onPressIn","onPressOut","size","buttonContent","source","require","logo","resizeMode","buttonText","visible","onClose","onComplete","test","appName","create","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","marginRight","borderWidth","transform","rotate","opacity","fontSize","fontWeight","textAlign"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"OnairosButton.d.ts","sourceRoot":"","sources":["../../../src/components/OnairosButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiE,MAAM,OAAO,CAAC;AActF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAKnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,6FA0OxB,CAAC"}
1
+ {"version":3,"file":"OnairosButton.d.ts","sourceRoot":"","sources":["../../../src/components/OnairosButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiE,MAAM,OAAO,CAAC;AActF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAKnD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,6FAsSxB,CAAC"}
@@ -51,6 +51,12 @@ export interface OnairosButtonProps {
51
51
  darkMode?: boolean;
52
52
  preferredPlatform?: string;
53
53
  testMode?: boolean;
54
+ autoFetch?: boolean;
55
+ inferenceData?: any;
56
+ textLayout?: 'left' | 'right' | 'center';
57
+ textColor?: string;
58
+ proofMode?: boolean;
59
+ webpageName?: string;
54
60
  }
55
61
  export interface PlatformListProps {
56
62
  platforms?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onairos/react-native",
3
- "version": "3.0.21",
3
+ "version": "3.0.22",
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,306 +1,366 @@
1
- import React, { useState, useCallback, forwardRef, useImperativeHandle } from 'react';
2
- import {
3
- TouchableOpacity,
4
- Text,
5
- StyleSheet,
6
- View,
7
- ViewStyle,
8
- TextStyle,
9
- ActivityIndicator,
10
- Image,
11
- } from 'react-native';
12
- import { UniversalOnboarding } from './UniversalOnboarding';
13
- import { Overlay } from './Overlay';
14
- import { COLORS } from '../constants';
15
- import type { OnairosButtonProps } from '../types';
16
- import { hasCredentials, getCredentials, deleteCredentials as clearCredentials } from '../utils/secureStorage';
17
- import { onairosApi } from '../api';
18
- import { Portal } from '../utils/Portal';
19
-
20
- export interface OnairosButtonRef {
21
- trigger: () => Promise<void>;
22
- reset: () => Promise<void>;
23
- }
24
-
25
- /**
26
- * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
27
- */
28
- export const OnairosButton = forwardRef<OnairosButtonRef, OnairosButtonProps>(({
29
- returnLink,
30
- prefillUrl,
31
- AppName,
32
- buttonType = 'normal',
33
- requestData,
34
- buttonWidth = 180,
35
- buttonHeight = 48,
36
- hasStroke = false,
37
- enabled = true,
38
- buttonForm = 'default',
39
- onRejection,
40
- onResolved,
41
- preCheck,
42
- color,
43
- swerv = false,
44
- debug = false,
45
- darkMode = false,
46
- preferredPlatform,
47
- testMode = false,
48
- }, ref) => {
49
- const [showOnboarding, setShowOnboarding] = useState(false);
50
- const [showOverlay, setShowOverlay] = useState(false);
51
- const [storedCredentials, setStoredCredentials] = useState<any>(null);
52
- const [isLoading, setIsLoading] = useState(false);
53
- const [isPressed, setIsPressed] = useState(false);
54
-
55
- // Expose methods via ref
56
- useImperativeHandle(ref, () => ({
57
- trigger: async () => {
58
- await handlePress();
59
- },
60
- reset: async () => {
61
- await clearCredentials();
62
- }
63
- }));
64
-
65
- // Compute button text based on buttonForm
66
- const getButtonText = () => {
67
- if (buttonForm === 'connect' || buttonForm === 'signup') {
68
- return 'Connect with Onairos';
69
- } else {
70
- return 'Sign in with Onairos';
71
- }
72
- };
73
-
74
- // Calculate background color based on props and state
75
- const getBackgroundColor = (): string => {
76
- if (!enabled) {
77
- return darkMode ? '#3A3A3A' : '#e0e0e0';
78
- }
79
-
80
- if (isPressed) {
81
- return color ?
82
- (typeof color === 'string' ? `${color}80` : color) :
83
- (darkMode ? '#32323280' : '#f5f5f580');
84
- }
85
-
86
- return color || (darkMode ? '#2A2A2A' : '#ffffff');
87
- };
88
-
89
- // Calculate text color based on background luminance
90
- const getTextColor = (): string => {
91
- if (!enabled) {
92
- return darkMode ? '#777777' : '#AAAAAA';
93
- }
94
-
95
- if (darkMode) {
96
- return '#FFFFFF';
97
- }
98
-
99
- const bgColor = getBackgroundColor();
100
- // Simple luminance check
101
- return bgColor === '#ffffff' || bgColor === '#f5f5f580' || bgColor.includes('#f') ? '#000000' : '#FFFFFF';
102
- };
103
-
104
- const handlePress = async () => {
105
- if (!enabled || isLoading) return;
106
-
107
- setIsLoading(true);
108
-
109
- try {
110
- if (preCheck) {
111
- const shouldProceed = await preCheck();
112
- if (!shouldProceed) {
113
- onRejection?.('Precheck validation failed');
114
- setIsLoading(false);
115
- return;
116
- }
117
- }
118
-
119
- // Check if credentials exist
120
- const hasStoredCreds = await hasCredentials();
121
-
122
- if (hasStoredCreds) {
123
- // If credentials exist, fetch them and verify
124
- const credentials = await getCredentials();
125
-
126
- if (!credentials || !credentials.username) {
127
- // Invalid credentials, clear and start fresh
128
- await clearCredentials();
129
- setShowOnboarding(true);
130
- setIsLoading(false);
131
- return;
132
- }
133
-
134
- try {
135
- // Validate credentials with server
136
- const isValid = await onairosApi.validateCredentials(credentials.username);
137
-
138
- if (!isValid) {
139
- // Clear invalid credentials
140
- await clearCredentials();
141
- setShowOnboarding(true);
142
- setIsLoading(false);
143
- return;
144
- }
145
-
146
- // Store and display overlay with valid credentials
147
- setStoredCredentials(credentials);
148
- setShowOverlay(true);
149
- } catch (validationError) {
150
- console.warn('Validation error, proceeding to onboarding:', validationError);
151
- setShowOnboarding(true);
152
- }
153
- } else {
154
- // If no credentials, show onboarding
155
- setShowOnboarding(true);
156
- }
157
- } catch (error) {
158
- console.error('Error during button press flow:', error);
159
- // Fall back to onboarding on error
160
- setShowOnboarding(true);
161
- onRejection?.(error instanceof Error ? error.message : 'Unknown error');
162
- } finally {
163
- setIsLoading(false);
164
- }
165
- };
166
-
167
- const handleOnboardingComplete = useCallback((apiUrl: string, token: string, data: any) => {
168
- setShowOnboarding(false);
169
- if (onResolved) {
170
- onResolved(apiUrl, token, data);
171
- }
172
- }, [onResolved]);
173
-
174
- const handleOverlayResolved = useCallback((apiUrl: string, token: string, data: any) => {
175
- setShowOverlay(false);
176
- if (onResolved) {
177
- onResolved(apiUrl, token, data);
178
- }
179
- }, [onResolved]);
180
-
181
- // Calculate button styles based on props
182
- const buttonStyle: ViewStyle[] = [
183
- styles.button,
184
- buttonType === 'pill' && styles.pillButton,
185
- hasStroke && styles.strokedButton,
186
- {
187
- width: buttonWidth,
188
- height: buttonHeight,
189
- backgroundColor: getBackgroundColor(),
190
- borderColor: darkMode ? '#555555' : '#000000',
191
- },
192
- swerv && styles.swervButton,
193
- !enabled && styles.disabledButton
194
- ].filter(Boolean) as ViewStyle[];
195
-
196
- // Calculate text color
197
- const textColor = getTextColor();
198
-
199
- // Render components
200
- return (
201
- <>
202
- <TouchableOpacity
203
- style={buttonStyle}
204
- onPress={handlePress}
205
- disabled={!enabled || isLoading}
206
- accessibilityLabel={`Sign in with Onairos`}
207
- onPressIn={() => setIsPressed(true)}
208
- onPressOut={() => setIsPressed(false)}
209
- >
210
- {isLoading ? (
211
- <ActivityIndicator
212
- size="small"
213
- color={textColor}
214
- />
215
- ) : (
216
- <View style={styles.buttonContent}>
217
- <Image
218
- source={require('../assets/images/onairos_logo.png')}
219
- style={styles.logo}
220
- resizeMode="contain"
221
- />
222
- <Text style={[styles.buttonText, { color: textColor }]}>
223
- {getButtonText()}
224
- </Text>
225
- </View>
226
- )}
227
- </TouchableOpacity>
228
-
229
- {/* Overlay and Onboarding components rendered outside the button */}
230
- {showOnboarding && (
231
- <UniversalOnboarding
232
- visible={showOnboarding}
233
- onClose={() => {
234
- setShowOnboarding(false);
235
- onRejection?.('User closed onboarding');
236
- }}
237
- AppName={AppName}
238
- requestData={requestData as any}
239
- returnLink={returnLink || ''}
240
- onComplete={handleOnboardingComplete}
241
- debug={debug}
242
- test={testMode}
243
- preferredPlatform={preferredPlatform}
244
- />
245
- )}
246
-
247
- {/* Overlay rendered through Portal to ensure it appears at root level */}
248
- {showOverlay && storedCredentials && (
249
- <Portal>
250
- <Overlay
251
- data={requestData || {}}
252
- username={storedCredentials.username}
253
- modelKey={storedCredentials.userPin || ''}
254
- onResolved={handleOverlayResolved}
255
- appName={AppName}
256
- darkMode={darkMode}
257
- />
258
- </Portal>
259
- )}
260
- </>
261
- );
262
- });
263
-
264
- const styles = StyleSheet.create({
265
- button: {
266
- flexDirection: 'row',
267
- alignItems: 'center',
268
- justifyContent: 'center',
269
- paddingVertical: 12,
270
- paddingHorizontal: 16,
271
- borderRadius: 8,
272
- shadowColor: '#000',
273
- shadowOffset: { width: 0, height: 2 },
274
- shadowOpacity: 0.1,
275
- shadowRadius: 4,
276
- elevation: 2,
277
- },
278
- buttonContent: {
279
- flexDirection: 'row',
280
- alignItems: 'center',
281
- justifyContent: 'center',
282
- },
283
- logo: {
284
- width: 24,
285
- height: 24,
286
- marginRight: 8,
287
- },
288
- pillButton: {
289
- borderRadius: 24,
290
- },
291
- strokedButton: {
292
- backgroundColor: 'transparent',
293
- borderWidth: 1,
294
- },
295
- swervButton: {
296
- transform: [{ rotate: '-2deg' }],
297
- },
298
- disabledButton: {
299
- opacity: 0.6,
300
- },
301
- buttonText: {
302
- fontSize: 16,
303
- fontWeight: '600',
304
- textAlign: 'center',
305
- },
1
+ import React, { useState, useCallback, forwardRef, useImperativeHandle } from 'react';
2
+ import {
3
+ TouchableOpacity,
4
+ Text,
5
+ StyleSheet,
6
+ View,
7
+ ViewStyle,
8
+ TextStyle,
9
+ ActivityIndicator,
10
+ Image,
11
+ } from 'react-native';
12
+ import { UniversalOnboarding } from './UniversalOnboarding';
13
+ import { Overlay } from './Overlay';
14
+ import { COLORS } from '../constants';
15
+ import type { OnairosButtonProps } from '../types';
16
+ import { hasCredentials, getCredentials, deleteCredentials as clearCredentials } from '../utils/secureStorage';
17
+ import { onairosApi } from '../api';
18
+ import { Portal } from '../utils/Portal';
19
+
20
+ export interface OnairosButtonRef {
21
+ trigger: () => Promise<void>;
22
+ reset: () => Promise<void>;
23
+ }
24
+
25
+ /**
26
+ * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
27
+ */
28
+ export const OnairosButton = forwardRef<OnairosButtonRef, OnairosButtonProps>(({
29
+ returnLink,
30
+ prefillUrl,
31
+ AppName,
32
+ buttonType = 'normal',
33
+ requestData,
34
+ buttonWidth = 180,
35
+ buttonHeight = 48,
36
+ hasStroke = false,
37
+ enabled = true,
38
+ buttonForm = 'default',
39
+ onRejection,
40
+ onResolved,
41
+ preCheck,
42
+ color,
43
+ swerv = false,
44
+ debug = false,
45
+ darkMode = false,
46
+ preferredPlatform,
47
+ testMode = false,
48
+ autoFetch = false,
49
+ inferenceData,
50
+ textLayout,
51
+ textColor: customTextColor,
52
+ proofMode = false,
53
+ webpageName,
54
+ }, ref) => {
55
+ const [showOnboarding, setShowOnboarding] = useState(false);
56
+ const [showOverlay, setShowOverlay] = useState(false);
57
+ const [storedCredentials, setStoredCredentials] = useState<any>(null);
58
+ const [isLoading, setIsLoading] = useState(false);
59
+ const [isPressed, setIsPressed] = useState(false);
60
+
61
+ // Expose methods via ref
62
+ useImperativeHandle(ref, () => ({
63
+ trigger: async () => {
64
+ await handlePress();
65
+ },
66
+ reset: async () => {
67
+ await clearCredentials();
68
+ }
69
+ }));
70
+
71
+ // Compute button text based on buttonForm
72
+ const getButtonText = () => {
73
+ if (buttonForm === 'connect' || buttonForm === 'signup') {
74
+ return 'Connect with Onairos';
75
+ } else {
76
+ return 'Sign in with Onairos';
77
+ }
78
+ };
79
+
80
+ // Calculate background color based on props and state
81
+ const getBackgroundColor = (): string => {
82
+ if (!enabled) {
83
+ return darkMode ? '#3A3A3A' : '#e0e0e0';
84
+ }
85
+
86
+ if (isPressed) {
87
+ return color ?
88
+ (typeof color === 'string' ? `${color}80` : color) :
89
+ (darkMode ? '#32323280' : '#f5f5f580');
90
+ }
91
+
92
+ return color || (darkMode ? '#2A2A2A' : '#ffffff');
93
+ };
94
+
95
+ // Calculate text color based on background luminance
96
+ const getTextColor = (): string => {
97
+ if (!enabled) {
98
+ return darkMode ? '#777777' : '#AAAAAA';
99
+ }
100
+
101
+ if (darkMode) {
102
+ return '#FFFFFF';
103
+ }
104
+
105
+ const bgColor = getBackgroundColor();
106
+ // Simple luminance check
107
+ return bgColor === '#ffffff' || bgColor === '#f5f5f580' || bgColor.includes('#f') ? '#000000' : '#FFFFFF';
108
+ };
109
+
110
+ const handlePress = async () => {
111
+ if (!enabled || isLoading) return;
112
+
113
+ setIsLoading(true);
114
+
115
+ try {
116
+ // If autoFetch is enabled, directly call the API with inferenceData
117
+ if (autoFetch) {
118
+ if (!inferenceData) {
119
+ throw new Error('inferenceData is required when autoFetch is enabled');
120
+ }
121
+
122
+ try {
123
+ // Check if credentials exist
124
+ const hasStoredCreds = await hasCredentials();
125
+
126
+ if (hasStoredCreds) {
127
+ const credentials = await getCredentials();
128
+
129
+ if (!credentials || !credentials.username) {
130
+ throw new Error('Invalid credentials');
131
+ }
132
+
133
+ // Call the API directly with inferenceData
134
+ // Using a custom API call for inference
135
+ const result = await fetch(`https://api.onairos.ai/inference`, {
136
+ method: 'POST',
137
+ headers: {
138
+ 'Content-Type': 'application/json',
139
+ 'Authorization': `Bearer ${credentials.userPin || ''}`
140
+ },
141
+ body: JSON.stringify({
142
+ username: credentials.username,
143
+ modelKey: credentials.userPin || '',
144
+ data: inferenceData,
145
+ requestData: requestData || {},
146
+ proofMode: proofMode,
147
+ webpageName: webpageName || AppName
148
+ })
149
+ }).then(res => res.json());
150
+
151
+ if (result && result.success) {
152
+ if (onResolved) {
153
+ onResolved(result.apiUrl || '', result.token || '', result.data || {});
154
+ }
155
+ setIsLoading(false);
156
+ return;
157
+ } else {
158
+ throw new Error(result?.error || 'API call failed');
159
+ }
160
+ } else {
161
+ // No credentials, proceed with normal flow
162
+ console.log('No credentials found, proceeding with normal flow');
163
+ }
164
+ } catch (autoFetchError) {
165
+ console.error('AutoFetch error:', autoFetchError);
166
+ // Fall back to normal flow on error
167
+ }
168
+ }
169
+
170
+ if (preCheck) {
171
+ const shouldProceed = await preCheck();
172
+ if (!shouldProceed) {
173
+ onRejection?.('Precheck validation failed');
174
+ setIsLoading(false);
175
+ return;
176
+ }
177
+ }
178
+
179
+ // Check if credentials exist
180
+ const hasStoredCreds = await hasCredentials();
181
+
182
+ if (hasStoredCreds) {
183
+ // If credentials exist, fetch them and verify
184
+ const credentials = await getCredentials();
185
+
186
+ if (!credentials || !credentials.username) {
187
+ // Invalid credentials, clear and start fresh
188
+ await clearCredentials();
189
+ setShowOnboarding(true);
190
+ setIsLoading(false);
191
+ return;
192
+ }
193
+
194
+ try {
195
+ // Validate credentials with server
196
+ const isValid = await onairosApi.validateCredentials(credentials.username);
197
+
198
+ if (!isValid) {
199
+ // Clear invalid credentials
200
+ await clearCredentials();
201
+ setShowOnboarding(true);
202
+ setIsLoading(false);
203
+ return;
204
+ }
205
+
206
+ // Store and display overlay with valid credentials
207
+ setStoredCredentials(credentials);
208
+ setShowOverlay(true);
209
+ } catch (validationError) {
210
+ console.warn('Validation error, proceeding to onboarding:', validationError);
211
+ setShowOnboarding(true);
212
+ }
213
+ } else {
214
+ // If no credentials, show onboarding
215
+ setShowOnboarding(true);
216
+ }
217
+ } catch (error) {
218
+ console.error('Error during button press flow:', error);
219
+ // Fall back to onboarding on error
220
+ setShowOnboarding(true);
221
+ onRejection?.(error instanceof Error ? error.message : 'Unknown error');
222
+ } finally {
223
+ setIsLoading(false);
224
+ }
225
+ };
226
+
227
+ const handleOnboardingComplete = useCallback((apiUrl: string, token: string, data: any) => {
228
+ setShowOnboarding(false);
229
+ if (onResolved) {
230
+ onResolved(apiUrl, token, data);
231
+ }
232
+ }, [onResolved]);
233
+
234
+ const handleOverlayResolved = useCallback((apiUrl: string, token: string, data: any) => {
235
+ setShowOverlay(false);
236
+ if (onResolved) {
237
+ onResolved(apiUrl, token, data);
238
+ }
239
+ }, [onResolved]);
240
+
241
+ // Calculate button styles based on props
242
+ const buttonStyle: ViewStyle[] = [
243
+ styles.button,
244
+ buttonType === 'pill' && styles.pillButton,
245
+ hasStroke && styles.strokedButton,
246
+ {
247
+ width: buttonWidth,
248
+ height: buttonHeight,
249
+ backgroundColor: getBackgroundColor(),
250
+ borderColor: darkMode ? '#555555' : '#000000',
251
+ },
252
+ swerv && styles.swervButton,
253
+ !enabled && styles.disabledButton
254
+ ].filter(Boolean) as ViewStyle[];
255
+
256
+ // Calculate button text color
257
+ const buttonTextColor = getTextColor();
258
+
259
+ // Render components
260
+ return (
261
+ <>
262
+ <TouchableOpacity
263
+ style={buttonStyle}
264
+ onPress={handlePress}
265
+ disabled={!enabled || isLoading}
266
+ accessibilityLabel={`Sign in with Onairos`}
267
+ onPressIn={() => setIsPressed(true)}
268
+ onPressOut={() => setIsPressed(false)}
269
+ >
270
+ {isLoading ? (
271
+ <ActivityIndicator
272
+ size="small"
273
+ color={buttonTextColor}
274
+ />
275
+ ) : (
276
+ <View style={styles.buttonContent}>
277
+ <Image
278
+ source={require('../assets/images/onairos_logo.png')}
279
+ style={styles.logo}
280
+ resizeMode="contain"
281
+ />
282
+ <Text style={[styles.buttonText, { color: buttonTextColor }]}>
283
+ {getButtonText()}
284
+ </Text>
285
+ </View>
286
+ )}
287
+ </TouchableOpacity>
288
+
289
+ {/* Overlay and Onboarding components rendered outside the button */}
290
+ {showOnboarding && (
291
+ <UniversalOnboarding
292
+ visible={showOnboarding}
293
+ onClose={() => {
294
+ setShowOnboarding(false);
295
+ onRejection?.('User closed onboarding');
296
+ }}
297
+ AppName={AppName}
298
+ requestData={requestData as any}
299
+ returnLink={returnLink || ''}
300
+ onComplete={handleOnboardingComplete}
301
+ debug={debug}
302
+ test={testMode}
303
+ preferredPlatform={preferredPlatform}
304
+ />
305
+ )}
306
+
307
+ {/* Overlay rendered through Portal to ensure it appears at root level */}
308
+ {showOverlay && storedCredentials && (
309
+ <Portal>
310
+ <Overlay
311
+ data={requestData || {}}
312
+ username={storedCredentials.username}
313
+ modelKey={storedCredentials.userPin || ''}
314
+ onResolved={handleOverlayResolved}
315
+ appName={AppName}
316
+ darkMode={darkMode}
317
+ />
318
+ </Portal>
319
+ )}
320
+ </>
321
+ );
322
+ });
323
+
324
+ const styles = StyleSheet.create({
325
+ button: {
326
+ flexDirection: 'row',
327
+ alignItems: 'center',
328
+ justifyContent: 'center',
329
+ paddingVertical: 12,
330
+ paddingHorizontal: 16,
331
+ borderRadius: 8,
332
+ shadowColor: '#000',
333
+ shadowOffset: { width: 0, height: 2 },
334
+ shadowOpacity: 0.1,
335
+ shadowRadius: 4,
336
+ elevation: 2,
337
+ },
338
+ buttonContent: {
339
+ flexDirection: 'row',
340
+ alignItems: 'center',
341
+ justifyContent: 'center',
342
+ },
343
+ logo: {
344
+ width: 24,
345
+ height: 24,
346
+ marginRight: 8,
347
+ },
348
+ pillButton: {
349
+ borderRadius: 24,
350
+ },
351
+ strokedButton: {
352
+ backgroundColor: 'transparent',
353
+ borderWidth: 1,
354
+ },
355
+ swervButton: {
356
+ transform: [{ rotate: '-2deg' }],
357
+ },
358
+ disabledButton: {
359
+ opacity: 0.6,
360
+ },
361
+ buttonText: {
362
+ fontSize: 16,
363
+ fontWeight: '600',
364
+ textAlign: 'center',
365
+ },
306
366
  });
package/src/types.ts CHANGED
@@ -54,6 +54,12 @@ export interface OnairosButtonProps {
54
54
  darkMode?: boolean;
55
55
  preferredPlatform?: string;
56
56
  testMode?: boolean;
57
+ autoFetch?: boolean;
58
+ inferenceData?: any;
59
+ textLayout?: 'left' | 'right' | 'center';
60
+ textColor?: string;
61
+ proofMode?: boolean;
62
+ webpageName?: string;
57
63
  }
58
64
 
59
65
  export interface PlatformListProps {