@onairos/react-native 2.1.1 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,29 +6,117 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.onairosApi = void 0;
7
7
  var _axios = _interopRequireDefault(require("axios"));
8
8
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- const BASE_URL = 'https://api2.onairos.uk';
10
- class OnairosApi {
11
- constructor(baseUrl = BASE_URL) {
12
- this.baseUrl = baseUrl;
13
- }
14
- async get(endpoint) {
9
+ /**
10
+ * Onairos API service for handling API requests
11
+ */
12
+ const onairosApi = exports.onairosApi = {
13
+ baseUrl: 'https://api2.onairos.uk',
14
+ /**
15
+ * Make a GET request to the API
16
+ * @param endpoint The endpoint to request
17
+ * @returns The response data
18
+ */
19
+ get: async endpoint => {
15
20
  try {
16
- const response = await _axios.default.get(`${this.baseUrl}/${endpoint}`);
21
+ const response = await _axios.default.get(`${onairosApi.baseUrl}/${endpoint}`);
17
22
  return response.data;
18
23
  } catch (error) {
19
- console.error('API GET Error:', error);
24
+ console.error(`GET ${endpoint} error:`, error);
20
25
  throw error;
21
26
  }
22
- }
23
- async post(endpoint, data) {
27
+ },
28
+ /**
29
+ * Make a POST request to the API
30
+ * @param endpoint The endpoint to request
31
+ * @param data The data to send
32
+ * @returns The response data
33
+ */
34
+ post: async (endpoint, data) => {
24
35
  try {
25
- const response = await _axios.default.post(`${this.baseUrl}/${endpoint}`, data);
36
+ const response = await _axios.default.post(`${onairosApi.baseUrl}/${endpoint}`, data);
26
37
  return response.data;
27
38
  } catch (error) {
28
- console.error('API POST Error:', error);
39
+ console.error(`POST ${endpoint} error:`, error);
40
+ throw error;
41
+ }
42
+ },
43
+ /**
44
+ * Get the server's public key for encryption
45
+ * @returns The server's public key
46
+ */
47
+ getServerPublicKey: async () => {
48
+ try {
49
+ const response = await onairosApi.get('public/getPublicKey');
50
+ return response.publicKey;
51
+ } catch (error) {
52
+ console.error('Error getting server public key:', error);
53
+ return '';
54
+ }
55
+ },
56
+ /**
57
+ * Validate credentials with the server
58
+ * @param username The username to validate
59
+ * @returns Whether the credentials are valid
60
+ */
61
+ validateCredentials: async username => {
62
+ try {
63
+ const response = await onairosApi.post('validate', {
64
+ username
65
+ });
66
+ return response.valid === true;
67
+ } catch (error) {
68
+ console.error('Error validating credentials:', error);
69
+ return false;
70
+ }
71
+ },
72
+ /**
73
+ * Get account information for a user
74
+ * @param username The username to get account info for
75
+ * @returns The account information
76
+ */
77
+ getAccountInfo: async username => {
78
+ try {
79
+ const response = await onairosApi.post('getAccountInfo', {
80
+ Info: {
81
+ username
82
+ }
83
+ });
84
+ return response.AccountInfo;
85
+ } catch (error) {
86
+ console.error('Error getting account info:', error);
87
+ return null;
88
+ }
89
+ },
90
+ /**
91
+ * Get API URL and token for a user
92
+ * @param params The parameters for the request
93
+ * @returns The API URL and token
94
+ */
95
+ getApiUrl: async params => {
96
+ try {
97
+ const response = await onairosApi.post('getAPIUrlMobile', {
98
+ Info: {
99
+ storage: 'local',
100
+ appId: params.appId,
101
+ confirmations: params.confirmations,
102
+ developerURL: 'devURL',
103
+ EncryptedUserPin: params.encryptedModelKey,
104
+ account: params.username,
105
+ proofMode: false
106
+ }
107
+ });
108
+ if (response && response.apiUrl && response.token) {
109
+ return {
110
+ apiUrl: response.apiUrl,
111
+ token: response.token
112
+ };
113
+ } else {
114
+ throw new Error('Invalid response from getAPIUrlMobile');
115
+ }
116
+ } catch (error) {
117
+ console.error('Error getting API URL:', error);
29
118
  throw error;
30
119
  }
31
120
  }
32
- }
33
- const onairosApi = exports.onairosApi = new OnairosApi();
121
+ };
34
122
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_axios","_interopRequireDefault","require","e","__esModule","default","BASE_URL","OnairosApi","constructor","baseUrl","get","endpoint","response","axios","data","error","console","post","onairosApi","exports"],"sourceRoot":"..\\..\\..\\src","sources":["api/index.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1B,MAAMG,QAAQ,GAAG,yBAAyB;AAE1C,MAAMC,UAAU,CAAC;EAGfC,WAAWA,CAACC,OAAe,GAAGH,QAAQ,EAAE;IACtC,IAAI,CAACG,OAAO,GAAGA,OAAO;EACxB;EAEA,MAAMC,GAAGA,CAACC,QAAgB,EAAE;IAC1B,IAAI;MACF,MAAMC,QAAQ,GAAG,MAAMC,cAAK,CAACH,GAAG,CAAC,GAAG,IAAI,CAACD,OAAO,IAAIE,QAAQ,EAAE,CAAC;MAC/D,OAAOC,QAAQ,CAACE,IAAI;IACtB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,gBAAgB,EAAEA,KAAK,CAAC;MACtC,MAAMA,KAAK;IACb;EACF;EAEA,MAAME,IAAIA,CAACN,QAAgB,EAAEG,IAAS,EAAE;IACtC,IAAI;MACF,MAAMF,QAAQ,GAAG,MAAMC,cAAK,CAACI,IAAI,CAAC,GAAG,IAAI,CAACR,OAAO,IAAIE,QAAQ,EAAE,EAAEG,IAAI,CAAC;MACtE,OAAOF,QAAQ,CAACE,IAAI;IACtB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,iBAAiB,EAAEA,KAAK,CAAC;MACvC,MAAMA,KAAK;IACb;EACF;AACF;AAEO,MAAMG,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG,IAAIX,UAAU,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_axios","_interopRequireDefault","require","e","__esModule","default","onairosApi","exports","baseUrl","get","endpoint","response","axios","data","error","console","post","getServerPublicKey","publicKey","validateCredentials","username","valid","getAccountInfo","Info","AccountInfo","getApiUrl","params","storage","appId","confirmations","developerURL","EncryptedUserPin","encryptedModelKey","account","proofMode","apiUrl","token","Error"],"sourceRoot":"..\\..\\..\\src","sources":["api/index.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE1B;AACA;AACA;AACO,MAAMG,UAAU,GAAAC,OAAA,CAAAD,UAAA,GAAG;EACxBE,OAAO,EAAE,yBAAyB;EAElC;AACF;AACA;AACA;AACA;EACEC,GAAG,EAAE,MAAOC,QAAgB,IAAK;IAC/B,IAAI;MACF,MAAMC,QAAQ,GAAG,MAAMC,cAAK,CAACH,GAAG,CAAC,GAAGH,UAAU,CAACE,OAAO,IAAIE,QAAQ,EAAE,CAAC;MACrE,OAAOC,QAAQ,CAACE,IAAI;IACtB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,OAAOJ,QAAQ,SAAS,EAAEI,KAAK,CAAC;MAC9C,MAAMA,KAAK;IACb;EACF,CAAC;EAED;AACF;AACA;AACA;AACA;AACA;EACEE,IAAI,EAAE,MAAAA,CAAON,QAAgB,EAAEG,IAAS,KAAK;IAC3C,IAAI;MACF,MAAMF,QAAQ,GAAG,MAAMC,cAAK,CAACI,IAAI,CAC/B,GAAGV,UAAU,CAACE,OAAO,IAAIE,QAAQ,EAAE,EACnCG,IACF,CAAC;MACD,OAAOF,QAAQ,CAACE,IAAI;IACtB,CAAC,CAAC,OAAOC,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,QAAQJ,QAAQ,SAAS,EAAEI,KAAK,CAAC;MAC/C,MAAMA,KAAK;IACb;EACF,CAAC;EAED;AACF;AACA;AACA;EACEG,kBAAkB,EAAE,MAAAA,CAAA,KAAY;IAC9B,IAAI;MACF,MAAMN,QAAQ,GAAG,MAAML,UAAU,CAACG,GAAG,CAAC,qBAAqB,CAAC;MAC5D,OAAOE,QAAQ,CAACO,SAAS;IAC3B,CAAC,CAAC,OAAOJ,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,kCAAkC,EAAEA,KAAK,CAAC;MACxD,OAAO,EAAE;IACX;EACF,CAAC;EAED;AACF;AACA;AACA;AACA;EACEK,mBAAmB,EAAE,MAAOC,QAAgB,IAAK;IAC/C,IAAI;MACF,MAAMT,QAAQ,GAAG,MAAML,UAAU,CAACU,IAAI,CAAC,UAAU,EAAE;QAAEI;MAAS,CAAC,CAAC;MAChE,OAAOT,QAAQ,CAACU,KAAK,KAAK,IAAI;IAChC,CAAC,CAAC,OAAOP,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,+BAA+B,EAAEA,KAAK,CAAC;MACrD,OAAO,KAAK;IACd;EACF,CAAC;EAED;AACF;AACA;AACA;AACA;EACEQ,cAAc,EAAE,MAAOF,QAAgB,IAAK;IAC1C,IAAI;MACF,MAAMT,QAAQ,GAAG,MAAML,UAAU,CAACU,IAAI,CAAC,gBAAgB,EAAE;QACvDO,IAAI,EAAE;UAAEH;QAAS;MACnB,CAAC,CAAC;MACF,OAAOT,QAAQ,CAACa,WAAW;IAC7B,CAAC,CAAC,OAAOV,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,6BAA6B,EAAEA,KAAK,CAAC;MACnD,OAAO,IAAI;IACb;EACF,CAAC;EAED;AACF;AACA;AACA;AACA;EACEW,SAAS,EAAE,MAAOC,MAKjB,IAAK;IACJ,IAAI;MACF,MAAMf,QAAQ,GAAG,MAAML,UAAU,CAACU,IAAI,CAAC,iBAAiB,EAAE;QACxDO,IAAI,EAAE;UACJI,OAAO,EAAE,OAAO;UAChBC,KAAK,EAAEF,MAAM,CAACE,KAAK;UACnBC,aAAa,EAAEH,MAAM,CAACG,aAAa;UACnCC,YAAY,EAAE,QAAQ;UACtBC,gBAAgB,EAAEL,MAAM,CAACM,iBAAiB;UAC1CC,OAAO,EAAEP,MAAM,CAACN,QAAQ;UACxBc,SAAS,EAAE;QACb;MACF,CAAC,CAAC;MAEF,IAAIvB,QAAQ,IAAIA,QAAQ,CAACwB,MAAM,IAAIxB,QAAQ,CAACyB,KAAK,EAAE;QACjD,OAAO;UACLD,MAAM,EAAExB,QAAQ,CAACwB,MAAM;UACvBC,KAAK,EAAEzB,QAAQ,CAACyB;QAClB,CAAC;MACH,CAAC,MAAM;QACL,MAAM,IAAIC,KAAK,CAAC,uCAAuC,CAAC;MAC1D;IACF,CAAC,CAAC,OAAOvB,KAAK,EAAE;MACdC,OAAO,CAACD,KAAK,CAAC,wBAAwB,EAAEA,KAAK,CAAC;MAC9C,MAAMA,KAAK;IACb;EACF;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Onairos = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _OnairosButton = require("./OnairosButton");
10
+ var _secureStorage = require("../utils/secureStorage");
11
+ 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); }
12
+ /**
13
+ * Main Onairos component - wraps OnairosButton with additional state management and logic
14
+ */
15
+ const Onairos = ({
16
+ AppName,
17
+ returnLink,
18
+ requestData,
19
+ buttonType = 'normal',
20
+ buttonForm = 'default',
21
+ buttonWidth,
22
+ buttonHeight,
23
+ color,
24
+ hasStroke,
25
+ preferredPlatform,
26
+ onResolved,
27
+ onRejection,
28
+ testMode = false,
29
+ containerStyle
30
+ }) => {
31
+ const [isInitialized, setIsInitialized] = (0, _react.useState)(false);
32
+ const [hasExistingCredentials, setHasExistingCredentials] = (0, _react.useState)(false);
33
+ const initialize = (0, _react.useCallback)(async () => {
34
+ try {
35
+ // Check for existing credentials
36
+ const credentialsExist = await (0, _secureStorage.hasCredentials)();
37
+ setHasExistingCredentials(credentialsExist);
38
+ if (credentialsExist) {
39
+ // Load credentials to verify they are valid
40
+ const credentials = await (0, _secureStorage.getCredentials)();
41
+ if (!credentials || !credentials.username || !credentials.userPin) {
42
+ setHasExistingCredentials(false);
43
+ }
44
+ }
45
+ } catch (error) {
46
+ console.error('Error initializing Onairos:', error);
47
+ } finally {
48
+ setIsInitialized(true);
49
+ }
50
+ }, []);
51
+ (0, _react.useEffect)(() => {
52
+ initialize();
53
+ }, [initialize]);
54
+ const handleResolved = (0, _react.useCallback)((apiUrl, token, userData) => {
55
+ if (onResolved) {
56
+ onResolved(apiUrl, token, userData);
57
+ }
58
+ }, [onResolved]);
59
+ const handleRejection = (0, _react.useCallback)(error => {
60
+ if (onRejection) {
61
+ onRejection(error);
62
+ }
63
+ }, [onRejection]);
64
+ if (!isInitialized) {
65
+ // Could render a loading state here if needed
66
+ return null;
67
+ }
68
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
69
+ style: containerStyle
70
+ }, /*#__PURE__*/_react.default.createElement(_OnairosButton.OnairosButton, {
71
+ AppName: AppName,
72
+ returnLink: returnLink,
73
+ requestData: requestData,
74
+ buttonType: buttonType,
75
+ buttonForm: buttonForm,
76
+ buttonWidth: buttonWidth,
77
+ buttonHeight: buttonHeight,
78
+ color: color,
79
+ hasStroke: hasStroke,
80
+ enabled: true,
81
+ preferredPlatform: preferredPlatform,
82
+ onResolved: handleResolved,
83
+ onRejection: handleRejection,
84
+ preCheck: async () => true,
85
+ testMode: testMode
86
+ }));
87
+ };
88
+ exports.Onairos = Onairos;
89
+ //# sourceMappingURL=Onairos.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_OnairosButton","_secureStorage","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Onairos","AppName","returnLink","requestData","buttonType","buttonForm","buttonWidth","buttonHeight","color","hasStroke","preferredPlatform","onResolved","onRejection","testMode","containerStyle","isInitialized","setIsInitialized","useState","hasExistingCredentials","setHasExistingCredentials","initialize","useCallback","credentialsExist","hasCredentials","credentials","getCredentials","username","userPin","error","console","useEffect","handleResolved","apiUrl","token","userData","handleRejection","createElement","View","style","OnairosButton","enabled","preCheck","exports"],"sourceRoot":"..\\..\\..\\src","sources":["components/Onairos.tsx"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,11 @@ var _reactNative = require("react-native");
9
9
  var _UniversalOnboarding = require("./UniversalOnboarding");
10
10
  var _Overlay = require("./Overlay");
11
11
  var _secureStorage = require("../utils/secureStorage");
12
+ var _api = require("../api");
12
13
  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); }
14
+ /**
15
+ * OnairosButton Component - A sign-in button similar to Google/Apple sign-in
16
+ */
13
17
  const OnairosButton = ({
14
18
  returnLink,
15
19
  prefillUrl,
@@ -33,37 +37,68 @@ const OnairosButton = ({
33
37
  const [showOnboarding, setShowOnboarding] = (0, _react.useState)(false);
34
38
  const [showOverlay, setShowOverlay] = (0, _react.useState)(false);
35
39
  const [storedCredentials, setStoredCredentials] = (0, _react.useState)(null);
40
+ const [isLoading, setIsLoading] = (0, _react.useState)(false);
36
41
  const isDarkMode = color === 'black' || !color && !hasStroke;
37
42
  const handlePress = async () => {
38
- if (!enabled) return;
39
- if (preCheck) {
40
- const shouldProceed = await preCheck();
41
- if (!shouldProceed) {
42
- onRejection === null || onRejection === void 0 || onRejection();
43
- return;
43
+ if (!enabled || isLoading) return;
44
+ setIsLoading(true);
45
+ try {
46
+ if (preCheck) {
47
+ const shouldProceed = await preCheck();
48
+ if (!shouldProceed) {
49
+ onRejection === null || onRejection === void 0 || onRejection('Precheck validation failed');
50
+ return;
51
+ }
44
52
  }
45
- }
46
53
 
47
- // Check if credentials exist
48
- const hasStoredCreds = await (0, _secureStorage.hasCredentials)();
49
- if (hasStoredCreds) {
50
- // If credentials exist, fetch them and display overlay
51
- const credentials = await (0, _secureStorage.getCredentials)();
52
- setStoredCredentials(credentials);
53
- setShowOverlay(true);
54
- } else {
55
- // If no credentials, show onboarding
56
- setShowOnboarding(true);
54
+ // Check if credentials exist
55
+ const hasStoredCreds = await (0, _secureStorage.hasCredentials)();
56
+ if (hasStoredCreds) {
57
+ // If credentials exist, fetch them and verify
58
+ const credentials = await (0, _secureStorage.getCredentials)();
59
+ if (!credentials || !credentials.username || !credentials.userPin) {
60
+ // Invalid credentials, clear and start fresh
61
+ await (0, _secureStorage.deleteCredentials)();
62
+ setShowOnboarding(true);
63
+ return;
64
+ }
65
+
66
+ // Validate credentials with server
67
+ const isValid = await _api.onairosApi.validateCredentials(credentials.username);
68
+ if (!isValid) {
69
+ // Clear invalid credentials
70
+ await (0, _secureStorage.deleteCredentials)();
71
+ setShowOnboarding(true);
72
+ return;
73
+ }
74
+
75
+ // Store and display overlay with valid credentials
76
+ setStoredCredentials(credentials);
77
+ setShowOverlay(true);
78
+ } else {
79
+ // If no credentials, show onboarding
80
+ setShowOnboarding(true);
81
+ }
82
+ } catch (error) {
83
+ console.error('Error during button press flow:', error);
84
+ _reactNative.Alert.alert('Error', 'An error occurred. Please try again later.');
85
+ onRejection === null || onRejection === void 0 || onRejection(error instanceof Error ? error.message : 'Unknown error');
86
+ } finally {
87
+ setIsLoading(false);
57
88
  }
58
89
  };
59
- const handleOnboardingComplete = (apiUrl, token, data) => {
90
+ const handleOnboardingComplete = (0, _react.useCallback)((apiUrl, token, data) => {
60
91
  setShowOnboarding(false);
61
- onResolved === null || onResolved === void 0 || onResolved(apiUrl, token, data);
62
- };
63
- const handleOverlayResolved = (apiUrl, token, data) => {
92
+ if (onResolved) {
93
+ onResolved(apiUrl, token, data);
94
+ }
95
+ }, [onResolved]);
96
+ const handleOverlayResolved = (0, _react.useCallback)((apiUrl, token, data) => {
64
97
  setShowOverlay(false);
65
- onResolved === null || onResolved === void 0 || onResolved(apiUrl, token, data);
66
- };
98
+ if (onResolved) {
99
+ onResolved(apiUrl, token, data);
100
+ }
101
+ }, [onResolved]);
67
102
 
68
103
  // Calculate button styles based on props
69
104
  const buttonStyle = [styles.button, buttonType === 'pill' && styles.pillButton, hasStroke && styles.strokedButton, {
@@ -71,20 +106,26 @@ const OnairosButton = ({
71
106
  height: buttonHeight
72
107
  }, color ? {
73
108
  backgroundColor: color
74
- } : null, isDarkMode ? styles.darkButton : styles.lightButton, swerv && styles.swervButton].filter(Boolean);
109
+ } : null, isDarkMode ? styles.darkButton : styles.lightButton, swerv && styles.swervButton, !enabled && styles.disabledButton].filter(Boolean);
75
110
 
76
111
  // Calculate text styles based on props
77
- const textStyle = [styles.buttonText, isDarkMode ? styles.lightText : styles.darkText].filter(Boolean);
112
+ const textStyle = [styles.buttonText, isDarkMode ? styles.lightText : styles.darkText, !enabled && styles.disabledText].filter(Boolean);
78
113
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
79
114
  style: buttonStyle,
80
115
  onPress: handlePress,
81
- disabled: !enabled,
116
+ disabled: !enabled || isLoading,
82
117
  accessibilityLabel: `Sign in with Onairos`
83
- }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
118
+ }, isLoading ? /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
119
+ size: "small",
120
+ color: isDarkMode ? '#fff' : '#000'
121
+ }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
84
122
  style: textStyle
85
- }, "Sign in with Onairos")), showOnboarding && /*#__PURE__*/_react.default.createElement(_UniversalOnboarding.UniversalOnboarding, {
123
+ }, "Sign in with Onairos"))), showOnboarding && /*#__PURE__*/_react.default.createElement(_UniversalOnboarding.UniversalOnboarding, {
86
124
  visible: showOnboarding,
87
- onClose: () => setShowOnboarding(false),
125
+ onClose: () => {
126
+ setShowOnboarding(false);
127
+ onRejection === null || onRejection === void 0 || onRejection('User closed onboarding');
128
+ },
88
129
  AppName: AppName,
89
130
  requestData: requestData,
90
131
  returnLink: returnLink,
@@ -130,6 +171,9 @@ const styles = _reactNative.StyleSheet.create({
130
171
  backgroundColor: '#fff',
131
172
  borderColor: '#000'
132
173
  },
174
+ disabledButton: {
175
+ opacity: 0.6
176
+ },
133
177
  buttonText: {
134
178
  fontSize: 16,
135
179
  fontWeight: '600',
@@ -140,6 +184,9 @@ const styles = _reactNative.StyleSheet.create({
140
184
  },
141
185
  darkText: {
142
186
  color: '#000'
187
+ },
188
+ disabledText: {
189
+ opacity: 0.7
143
190
  }
144
191
  });
145
192
  //# sourceMappingURL=OnairosButton.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_UniversalOnboarding","_Overlay","_secureStorage","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OnairosButton","returnLink","prefillUrl","AppName","buttonType","requestData","buttonWidth","buttonHeight","hasStroke","enabled","buttonForm","onRejection","onResolved","preCheck","color","swerv","debug","preferredPlatform","testMode","showOnboarding","setShowOnboarding","useState","showOverlay","setShowOverlay","storedCredentials","setStoredCredentials","isDarkMode","handlePress","shouldProceed","hasStoredCreds","hasCredentials","credentials","getCredentials","handleOnboardingComplete","apiUrl","token","data","handleOverlayResolved","buttonStyle","styles","button","pillButton","strokedButton","width","height","backgroundColor","darkButton","lightButton","swervButton","filter","Boolean","textStyle","buttonText","lightText","darkText","createElement","View","TouchableOpacity","style","onPress","disabled","accessibilityLabel","Text","UniversalOnboarding","visible","onClose","onComplete","test","Overlay","username","modelKey","userPin","exports","StyleSheet","create","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","borderWidth","borderColor","transform","rotate","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","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OnairosButton","returnLink","prefillUrl","AppName","buttonType","requestData","buttonWidth","buttonHeight","hasStroke","enabled","buttonForm","onRejection","onResolved","preCheck","color","swerv","debug","preferredPlatform","testMode","showOnboarding","setShowOnboarding","useState","showOverlay","setShowOverlay","storedCredentials","setStoredCredentials","isLoading","setIsLoading","isDarkMode","handlePress","shouldProceed","hasStoredCreds","hasCredentials","credentials","getCredentials","username","userPin","clearCredentials","isValid","onairosApi","validateCredentials","error","console","Alert","alert","Error","message","handleOnboardingComplete","useCallback","apiUrl","token","data","handleOverlayResolved","buttonStyle","styles","button","pillButton","strokedButton","width","height","backgroundColor","darkButton","lightButton","swervButton","disabledButton","filter","Boolean","textStyle","buttonText","lightText","darkText","disabledText","createElement","View","TouchableOpacity","style","onPress","disabled","accessibilityLabel","ActivityIndicator","size","Fragment","Text","UniversalOnboarding","visible","onClose","onComplete","test","Overlay","modelKey","exports","StyleSheet","create","flexDirection","alignItems","justifyContent","paddingVertical","paddingHorizontal","borderRadius","borderWidth","borderColor","transform","rotate","opacity","fontSize","fontWeight","textAlign"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,54 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ var _exportNames = {
7
+ Onairos: true,
8
+ OnairosButton: true,
9
+ OnairosOverlay: true,
10
+ UniversalOnboarding: true,
11
+ ConnectorScreen: true,
12
+ PinCreationScreen: true,
13
+ LoadingScreen: true,
14
+ OAuthWebView: true,
15
+ PlatformConnector: true,
16
+ OnboardingHeader: true,
17
+ PinInput: true,
18
+ useCredentials: true,
19
+ useConnections: true,
20
+ storeCredentials: true,
21
+ getCredentials: true,
22
+ hasCredentials: true,
23
+ deleteCredentials: true,
24
+ updateCredentials: true,
25
+ generateDeviceUsername: true,
26
+ verifyCredentials: true,
27
+ validateCredentials: true,
28
+ createAccount: true,
29
+ authenticate: true,
30
+ refreshToken: true,
31
+ getPlatformData: true,
32
+ getUserProfile: true,
33
+ updatePlatformConnections: true,
34
+ rsaEncrypt: true,
35
+ sha256: true,
36
+ base64ToBuffer: true,
37
+ logDebug: true,
38
+ logError: true,
39
+ isDebugMode: true,
40
+ connectPlatform: true,
41
+ disconnectPlatform: true,
42
+ initializeOAuthService: true,
43
+ cleanupOAuthService: true,
44
+ storePlatformConnection: true,
45
+ OAuthService: true,
46
+ COLORS: true,
47
+ PLATFORMS: true,
48
+ API_ENDPOINTS: true,
49
+ STORAGE_KEYS: true,
50
+ PIN_REQUIREMENTS: true,
51
+ DEEP_LINK_CONFIG: true,
52
+ onairosApi: true
53
+ };
6
54
  Object.defineProperty(exports, "API_ENDPOINTS", {
7
55
  enumerable: true,
8
56
  get: function () {
@@ -33,28 +81,40 @@ Object.defineProperty(exports, "LoadingScreen", {
33
81
  return _LoadingScreen.LoadingScreen;
34
82
  }
35
83
  });
84
+ Object.defineProperty(exports, "OAuthService", {
85
+ enumerable: true,
86
+ get: function () {
87
+ return _oauthService.OAuthService;
88
+ }
89
+ });
36
90
  Object.defineProperty(exports, "OAuthWebView", {
37
91
  enumerable: true,
38
92
  get: function () {
39
93
  return _OAuthWebView.OAuthWebView;
40
94
  }
41
95
  });
96
+ Object.defineProperty(exports, "Onairos", {
97
+ enumerable: true,
98
+ get: function () {
99
+ return _Onairos.Onairos;
100
+ }
101
+ });
42
102
  Object.defineProperty(exports, "OnairosButton", {
43
103
  enumerable: true,
44
104
  get: function () {
45
105
  return _OnairosButton.OnairosButton;
46
106
  }
47
107
  });
48
- Object.defineProperty(exports, "OnboardingHeader", {
108
+ Object.defineProperty(exports, "OnairosOverlay", {
49
109
  enumerable: true,
50
110
  get: function () {
51
- return _OnboardingHeader.OnboardingHeader;
111
+ return _Overlay.Overlay;
52
112
  }
53
113
  });
54
- Object.defineProperty(exports, "Overlay", {
114
+ Object.defineProperty(exports, "OnboardingHeader", {
55
115
  enumerable: true,
56
116
  get: function () {
57
- return _Overlay.Overlay;
117
+ return _OnboardingHeader.OnboardingHeader;
58
118
  }
59
119
  });
60
120
  Object.defineProperty(exports, "PIN_REQUIREMENTS", {
@@ -195,6 +255,12 @@ Object.defineProperty(exports, "logError", {
195
255
  return _debugHelper.logError;
196
256
  }
197
257
  });
258
+ Object.defineProperty(exports, "onairosApi", {
259
+ enumerable: true,
260
+ get: function () {
261
+ return _api.onairosApi;
262
+ }
263
+ });
198
264
  Object.defineProperty(exports, "refreshToken", {
199
265
  enumerable: true,
200
266
  get: function () {
@@ -261,9 +327,10 @@ Object.defineProperty(exports, "verifyCredentials", {
261
327
  return _secureStorage.verifyCredentials;
262
328
  }
263
329
  });
330
+ var _Onairos = require("./components/Onairos");
264
331
  var _OnairosButton = require("./components/OnairosButton");
265
- var _UniversalOnboarding = require("./components/UniversalOnboarding");
266
332
  var _Overlay = require("./components/Overlay");
333
+ var _UniversalOnboarding = require("./components/UniversalOnboarding");
267
334
  var _ConnectorScreen = require("./components/screens/ConnectorScreen");
268
335
  var _PinCreationScreen = require("./components/screens/PinCreationScreen");
269
336
  var _LoadingScreen = require("./components/screens/LoadingScreen");
@@ -271,12 +338,36 @@ var _OAuthWebView = require("./components/onboarding/OAuthWebView");
271
338
  var _PlatformConnector = require("./components/onboarding/PlatformConnector");
272
339
  var _OnboardingHeader = require("./components/onboarding/OnboardingHeader");
273
340
  var _PinInput = require("./components/onboarding/PinInput");
274
- var _useConnections = require("./hooks/useConnections");
275
341
  var _useCredentials = require("./hooks/useCredentials");
342
+ var _useConnections = require("./hooks/useConnections");
276
343
  var _secureStorage = require("./utils/secureStorage");
344
+ Object.keys(_secureStorage).forEach(function (key) {
345
+ if (key === "default" || key === "__esModule") return;
346
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
347
+ if (key in exports && exports[key] === _secureStorage[key]) return;
348
+ Object.defineProperty(exports, key, {
349
+ enumerable: true,
350
+ get: function () {
351
+ return _secureStorage[key];
352
+ }
353
+ });
354
+ });
277
355
  var _onairosApi = require("./utils/onairosApi");
278
356
  var _crypto = require("./utils/crypto");
279
357
  var _debugHelper = require("./utils/debugHelper");
280
358
  var _oauthService = require("./services/oauthService");
281
359
  var _constants = require("./constants");
360
+ var _api = require("./api");
361
+ var _encryption = require("./utils/encryption");
362
+ Object.keys(_encryption).forEach(function (key) {
363
+ if (key === "default" || key === "__esModule") return;
364
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
365
+ if (key in exports && exports[key] === _encryption[key]) return;
366
+ Object.defineProperty(exports, key, {
367
+ enumerable: true,
368
+ get: function () {
369
+ return _encryption[key];
370
+ }
371
+ });
372
+ });
282
373
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_OnairosButton","require","_UniversalOnboarding","_Overlay","_ConnectorScreen","_PinCreationScreen","_LoadingScreen","_OAuthWebView","_PlatformConnector","_OnboardingHeader","_PinInput","_useConnections","_useCredentials","_secureStorage","_onairosApi","_crypto","_debugHelper","_oauthService","_constants"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,oBAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAGA,IAAAG,gBAAA,GAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AACA,IAAAK,cAAA,GAAAL,OAAA;AAGA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,kBAAA,GAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AAGA,IAAAU,eAAA,GAAAV,OAAA;AACA,IAAAW,eAAA,GAAAX,OAAA;AAGA,IAAAY,cAAA,GAAAZ,OAAA;AAUA,IAAAa,WAAA,GAAAb,OAAA;AAUA,IAAAc,OAAA,GAAAd,OAAA;AAMA,IAAAe,YAAA,GAAAf,OAAA;AAOA,IAAAgB,aAAA,GAAAhB,OAAA;AA2BA,IAAAiB,UAAA,GAAAjB,OAAA","ignoreList":[]}
1
+ {"version":3,"names":["_Onairos","require","_OnairosButton","_Overlay","_UniversalOnboarding","_ConnectorScreen","_PinCreationScreen","_LoadingScreen","_OAuthWebView","_PlatformConnector","_OnboardingHeader","_PinInput","_useCredentials","_useConnections","_secureStorage","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_onairosApi","_crypto","_debugHelper","_oauthService","_constants","_api","_encryption"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAH,OAAA;AAGA,IAAAI,gBAAA,GAAAJ,OAAA;AACA,IAAAK,kBAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AAGA,IAAAO,aAAA,GAAAP,OAAA;AACA,IAAAQ,kBAAA,GAAAR,OAAA;AACA,IAAAS,iBAAA,GAAAT,OAAA;AACA,IAAAU,SAAA,GAAAV,OAAA;AAGA,IAAAW,eAAA,GAAAX,OAAA;AACA,IAAAY,eAAA,GAAAZ,OAAA;AAGA,IAAAa,cAAA,GAAAb,OAAA;AAkEAc,MAAA,CAAAC,IAAA,CAAAF,cAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,cAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,cAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AAxDA,IAAAS,WAAA,GAAA1B,OAAA;AAUA,IAAA2B,OAAA,GAAA3B,OAAA;AAMA,IAAA4B,YAAA,GAAA5B,OAAA;AAOA,IAAA6B,aAAA,GAAA7B,OAAA;AA4BA,IAAA8B,UAAA,GAAA9B,OAAA;AAGA,IAAA+B,IAAA,GAAA/B,OAAA;AAGA,IAAAgC,WAAA,GAAAhC,OAAA;AAAAc,MAAA,CAAAC,IAAA,CAAAiB,WAAA,EAAAhB,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAe,WAAA,CAAAf,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAO,WAAA,CAAAf,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}