@onairos/react-native 1.0.1 → 1.0.3

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,159 +6,67 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.OnairosButton = void 0;
7
7
  var _react = _interopRequireWildcard(require("react"));
8
8
  var _reactNative = require("react-native");
9
- var _MaterialIcons = _interopRequireDefault(require("react-native-vector-icons/MaterialIcons"));
10
9
  var _UniversalOnboarding = require("./UniversalOnboarding");
11
- var _DataRequestModal = require("./DataRequestModal");
12
- var _useCredentials = require("../hooks/useCredentials");
13
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ var _constants = require("../constants");
14
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); }
15
- // import { validateCredentials } from '../utils/auth';
16
- // import { COLORS } from '../constants';
17
-
18
12
  const OnairosButton = ({
13
+ title,
14
+ onPress,
15
+ style,
16
+ buttonType = 'default',
17
+ buttonForm = 'signup',
19
18
  AppName,
20
19
  requestData,
21
20
  returnLink,
21
+ onComplete,
22
22
  embedd = false,
23
- color = '#00BFA5',
24
- icon = 'auto_awesome',
25
- onResolved,
26
- login = false,
27
- buttonType = 'circle',
28
23
  debug = false,
29
24
  test = false
30
25
  }) => {
31
26
  const [showOnboarding, setShowOnboarding] = (0, _react.useState)(false);
32
- const [showDataRequest, setShowDataRequest] = (0, _react.useState)(false);
33
- const {
34
- hasCredentials,
35
- getCredentials,
36
- validateCredentials
37
- } = (0, _useCredentials.useCredentials)();
38
- const [loading, setLoading] = (0, _react.useState)(false);
39
- const handlePress = (0, _react.useCallback)(async () => {
40
- setLoading(true);
41
- try {
42
- const hasExisting = await hasCredentials();
43
- if (!hasExisting) {
44
- setShowOnboarding(true);
45
- return;
46
- }
47
- const credentials = await getCredentials();
48
- if (!credentials) {
49
- setShowOnboarding(true);
50
- return;
51
- }
52
- const validationResult = await validateCredentials(credentials.username);
53
- if (!validationResult.isValid) {
54
- setShowOnboarding(true);
55
- return;
56
- }
57
-
58
- // If we have valid credentials, show data request modal
59
- setShowDataRequest(true);
60
- } catch (error) {
61
- console.error('Error in button press:', error);
27
+ const handlePress = () => {
28
+ if (buttonForm === 'signup') {
62
29
  setShowOnboarding(true);
63
- } finally {
64
- setLoading(false);
30
+ } else {
31
+ onPress();
65
32
  }
66
- }, [hasCredentials, getCredentials, validateCredentials]);
67
- const handleDataRequestAccept = (0, _react.useCallback)(async () => {
68
- try {
69
- const credentials = await getCredentials();
70
- if (credentials) {
71
- onResolved('https://api2.onairos.uk', credentials.accessToken, credentials);
72
- }
73
- setShowDataRequest(false);
74
- } catch (error) {
75
- console.error('Error handling data request accept:', error);
76
- }
77
- }, [getCredentials, onResolved]);
78
- (0, _react.useEffect)(() => {
79
- // Setup deep linking
80
- const handleDeepLink = ({
81
- url
82
- }) => {
83
- if (url.includes('onairosreact://authenticate')) {
84
- // Handle authentication callback
85
- const params = new URL(url).searchParams;
86
- const nonce = params.get('nonce');
87
- const callback = params.get('callback');
88
- if (nonce && callback) {
89
- // Process authentication
90
- setShowOnboarding(false);
91
- }
92
- }
93
- };
94
- _reactNative.Linking.addEventListener('url', handleDeepLink);
95
- return () => {
96
- // Cleanup deep linking
97
- // Note: Remove event listener based on RN version
98
- // if (Platform.OS === 'android') {
99
- // Linking.removeEventListener('url', handleDeepLink);
100
- // }
101
- };
102
- }, []);
103
- const buttonStyles = [styles.button, buttonType === 'pill' ? styles.pillButton : styles.circleButton, {
104
- backgroundColor: color
105
- }];
106
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
107
- style: buttonStyles,
108
- onPress: handlePress,
109
- disabled: loading
110
- }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
111
- name: icon,
112
- size: 24,
113
- color: "white"
114
- }), buttonType === 'pill' && /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
33
+ };
34
+ const handleOnboardingComplete = (apiUrl, token, data) => {
35
+ setShowOnboarding(false);
36
+ onComplete(apiUrl, token, data);
37
+ };
38
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
39
+ style: [styles.button, buttonType === 'pill' && styles.pillButton, style],
40
+ onPress: handlePress
41
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
115
42
  style: styles.buttonText
116
- }, "Connect with Onairos")), /*#__PURE__*/_react.default.createElement(_UniversalOnboarding.UniversalOnboarding, {
43
+ }, title)), /*#__PURE__*/_react.default.createElement(_UniversalOnboarding.UniversalOnboarding, {
117
44
  visible: showOnboarding,
118
45
  onClose: () => setShowOnboarding(false),
119
46
  AppName: AppName,
120
47
  requestData: requestData,
121
48
  returnLink: returnLink,
122
- onComplete: onResolved,
49
+ onComplete: handleOnboardingComplete,
123
50
  embedd: embedd,
124
51
  debug: debug,
125
52
  test: test
126
- }), /*#__PURE__*/_react.default.createElement(_DataRequestModal.DataRequestModal, {
127
- visible: showDataRequest,
128
- onClose: () => setShowDataRequest(false),
129
- onAccept: handleDataRequestAccept,
130
- requestData: requestData,
131
- AppName: AppName
132
53
  }));
133
54
  };
134
55
  exports.OnairosButton = OnairosButton;
135
56
  const styles = _reactNative.StyleSheet.create({
136
57
  button: {
58
+ backgroundColor: _constants.COLORS.primary,
59
+ paddingVertical: 12,
60
+ paddingHorizontal: 24,
61
+ borderRadius: 8,
137
62
  alignItems: 'center',
138
- justifyContent: 'center',
139
- elevation: 3,
140
- shadowColor: '#000',
141
- shadowOffset: {
142
- width: 0,
143
- height: 2
144
- },
145
- shadowOpacity: 0.25,
146
- shadowRadius: 3.84
147
- },
148
- circleButton: {
149
- width: 60,
150
- height: 60,
151
- borderRadius: 30
63
+ justifyContent: 'center'
152
64
  },
153
65
  pillButton: {
154
- flexDirection: 'row',
155
- paddingHorizontal: 16,
156
- paddingVertical: 12,
157
- borderRadius: 25
66
+ borderRadius: 20
158
67
  },
159
68
  buttonText: {
160
- color: 'white',
161
- marginLeft: 8,
69
+ color: '#fff',
162
70
  fontSize: 16,
163
71
  fontWeight: '600'
164
72
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_MaterialIcons","_interopRequireDefault","_UniversalOnboarding","_DataRequestModal","_useCredentials","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OnairosButton","AppName","requestData","returnLink","embedd","color","icon","onResolved","login","buttonType","debug","test","showOnboarding","setShowOnboarding","useState","showDataRequest","setShowDataRequest","hasCredentials","getCredentials","validateCredentials","useCredentials","loading","setLoading","handlePress","useCallback","hasExisting","credentials","validationResult","username","isValid","error","console","handleDataRequestAccept","accessToken","useEffect","handleDeepLink","url","includes","params","URL","searchParams","nonce","callback","Linking","addEventListener","buttonStyles","styles","button","pillButton","circleButton","backgroundColor","createElement","Fragment","TouchableOpacity","style","onPress","disabled","name","size","Text","buttonText","UniversalOnboarding","visible","onClose","onComplete","DataRequestModal","onAccept","exports","StyleSheet","create","alignItems","justifyContent","elevation","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","borderRadius","flexDirection","paddingHorizontal","paddingVertical","marginLeft","fontSize","fontWeight"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_UniversalOnboarding","_constants","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OnairosButton","title","onPress","style","buttonType","buttonForm","AppName","requestData","returnLink","onComplete","embedd","debug","test","showOnboarding","setShowOnboarding","useState","handlePress","handleOnboardingComplete","apiUrl","token","data","createElement","View","TouchableOpacity","styles","button","pillButton","Text","buttonText","UniversalOnboarding","visible","onClose","exports","StyleSheet","create","backgroundColor","COLORS","primary","paddingVertical","paddingHorizontal","borderRadius","alignItems","justifyContent","color","fontSize","fontWeight"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
@@ -25,14 +25,15 @@ const UniversalOnboarding = ({
25
25
  requestData,
26
26
  returnLink,
27
27
  onComplete,
28
- embedd,
29
- debug,
30
- test
28
+ embedd = false,
29
+ debug = false,
30
+ test = false
31
31
  }) => {
32
32
  const bottomSheetRef = (0, _react.useRef)(null);
33
33
  const [step, setStep] = (0, _react.useState)('connect');
34
34
  const [connections, setConnections] = (0, _react.useState)({});
35
35
  const [pin, setPin] = (0, _react.useState)('');
36
+ const [selectedTier, setSelectedTier] = (0, _react.useState)('Medium');
36
37
  const [training, setTraining] = (0, _react.useState)({
37
38
  progress: 0,
38
39
  eta: ''
@@ -85,11 +86,13 @@ const UniversalOnboarding = ({
85
86
  clearInterval(interval);
86
87
  onComplete('https://api2.onairos.uk', 'dummy-token', {
87
88
  pin: userPin,
88
- connections
89
+ connections,
90
+ selectedTier,
91
+ tierData: requestData[selectedTier]
89
92
  });
90
93
  }
91
94
  }, 1000);
92
- }, [connections, onComplete]);
95
+ }, [connections, onComplete, selectedTier, requestData]);
93
96
  const canProceedToPin = (0, _react.useMemo)(() => {
94
97
  const connectedPlatforms = Object.values(connections).filter(Boolean).length;
95
98
  return connectedPlatforms >= 2;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_bottomSheet","_interopRequireDefault","_MaterialIcons","_PlatformList","_PinInput","_TrainingModal","_useConnections","_constants","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","height","Dimensions","UniversalOnboarding","visible","onClose","AppName","requestData","returnLink","onComplete","embedd","debug","test","bottomSheetRef","useRef","step","setStep","useState","connections","setConnections","pin","setPin","training","setTraining","progress","eta","connectPlatform","disconnectPlatform","getConnectionStatus","isConnecting","useConnections","snapPoints","useMemo","useEffect","_bottomSheetRef$curre","current","expand","loadInitialStatus","_bottomSheetRef$curre2","close","useCallback","status","handlePlatformToggle","platform","connect","error","console","handlePinSubmit","userPin","interval","setInterval","Math","round","clearInterval","canProceedToPin","connectedPlatforms","values","filter","Boolean","length","renderHeader","createElement","View","style","styles","header","name","size","color","COLORS","primary","Text","headerTitle","TouchableOpacity","onPress","closeButton","renderContent","PlatformList","onToggle","isLoading","canProceed","onProceed","PinInput","onSubmit","minLength","requireSpecialChar","requireNumber","TrainingModal","onCancel","ref","enablePanDownToClose","index","container","exports","StyleSheet","create","flex","backgroundColor","flexDirection","alignItems","padding","headerBg","borderTopLeftRadius","borderTopRightRadius","fontSize","fontWeight","marginLeft"],"sourceRoot":"..\\..\\..\\src","sources":["components/UniversalOnboarding.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_bottomSheet","_interopRequireDefault","_MaterialIcons","_PlatformList","_PinInput","_TrainingModal","_useConnections","_constants","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","height","Dimensions","UniversalOnboarding","visible","onClose","AppName","requestData","returnLink","onComplete","embedd","debug","test","bottomSheetRef","useRef","step","setStep","useState","connections","setConnections","pin","setPin","selectedTier","setSelectedTier","training","setTraining","progress","eta","connectPlatform","disconnectPlatform","getConnectionStatus","isConnecting","useConnections","snapPoints","useMemo","useEffect","_bottomSheetRef$curre","current","expand","loadInitialStatus","_bottomSheetRef$curre2","close","useCallback","status","handlePlatformToggle","platform","connect","error","console","handlePinSubmit","userPin","interval","setInterval","Math","round","clearInterval","tierData","canProceedToPin","connectedPlatforms","values","filter","Boolean","length","renderHeader","createElement","View","style","styles","header","name","size","color","COLORS","primary","Text","headerTitle","TouchableOpacity","onPress","closeButton","renderContent","PlatformList","onToggle","isLoading","canProceed","onProceed","PinInput","onSubmit","minLength","requireSpecialChar","requireNumber","TrainingModal","onCancel","ref","enablePanDownToClose","index","container","exports","StyleSheet","create","flex","backgroundColor","flexDirection","alignItems","padding","headerBg","borderTopLeftRadius","borderTopRightRadius","fontSize","fontWeight","marginLeft"],"sourceRoot":"..\\..\\..\\src","sources":["components/UniversalOnboarding.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\src","sources":["types.ts"],"mappings":"","ignoreList":[]}
@@ -1,155 +1,64 @@
1
- import React, { useCallback, useEffect, useState } from 'react';
2
- import { TouchableOpacity, StyleSheet, Text, Linking } from 'react-native';
3
- import Icon from 'react-native-vector-icons/MaterialIcons';
1
+ import React, { useState } from 'react';
2
+ import { TouchableOpacity, Text, StyleSheet, View } from 'react-native';
4
3
  import { UniversalOnboarding } from './UniversalOnboarding';
5
- import { DataRequestModal } from './DataRequestModal';
6
- import { useCredentials } from '../hooks/useCredentials';
7
- // import { validateCredentials } from '../utils/auth';
8
- // import { COLORS } from '../constants';
9
-
4
+ import { COLORS } from '../constants';
10
5
  export const OnairosButton = ({
6
+ title,
7
+ onPress,
8
+ style,
9
+ buttonType = 'default',
10
+ buttonForm = 'signup',
11
11
  AppName,
12
12
  requestData,
13
13
  returnLink,
14
+ onComplete,
14
15
  embedd = false,
15
- color = '#00BFA5',
16
- icon = 'auto_awesome',
17
- onResolved,
18
- login = false,
19
- buttonType = 'circle',
20
16
  debug = false,
21
17
  test = false
22
18
  }) => {
23
19
  const [showOnboarding, setShowOnboarding] = useState(false);
24
- const [showDataRequest, setShowDataRequest] = useState(false);
25
- const {
26
- hasCredentials,
27
- getCredentials,
28
- validateCredentials
29
- } = useCredentials();
30
- const [loading, setLoading] = useState(false);
31
- const handlePress = useCallback(async () => {
32
- setLoading(true);
33
- try {
34
- const hasExisting = await hasCredentials();
35
- if (!hasExisting) {
36
- setShowOnboarding(true);
37
- return;
38
- }
39
- const credentials = await getCredentials();
40
- if (!credentials) {
41
- setShowOnboarding(true);
42
- return;
43
- }
44
- const validationResult = await validateCredentials(credentials.username);
45
- if (!validationResult.isValid) {
46
- setShowOnboarding(true);
47
- return;
48
- }
49
-
50
- // If we have valid credentials, show data request modal
51
- setShowDataRequest(true);
52
- } catch (error) {
53
- console.error('Error in button press:', error);
20
+ const handlePress = () => {
21
+ if (buttonForm === 'signup') {
54
22
  setShowOnboarding(true);
55
- } finally {
56
- setLoading(false);
23
+ } else {
24
+ onPress();
57
25
  }
58
- }, [hasCredentials, getCredentials, validateCredentials]);
59
- const handleDataRequestAccept = useCallback(async () => {
60
- try {
61
- const credentials = await getCredentials();
62
- if (credentials) {
63
- onResolved('https://api2.onairos.uk', credentials.accessToken, credentials);
64
- }
65
- setShowDataRequest(false);
66
- } catch (error) {
67
- console.error('Error handling data request accept:', error);
68
- }
69
- }, [getCredentials, onResolved]);
70
- useEffect(() => {
71
- // Setup deep linking
72
- const handleDeepLink = ({
73
- url
74
- }) => {
75
- if (url.includes('onairosreact://authenticate')) {
76
- // Handle authentication callback
77
- const params = new URL(url).searchParams;
78
- const nonce = params.get('nonce');
79
- const callback = params.get('callback');
80
- if (nonce && callback) {
81
- // Process authentication
82
- setShowOnboarding(false);
83
- }
84
- }
85
- };
86
- Linking.addEventListener('url', handleDeepLink);
87
- return () => {
88
- // Cleanup deep linking
89
- // Note: Remove event listener based on RN version
90
- // if (Platform.OS === 'android') {
91
- // Linking.removeEventListener('url', handleDeepLink);
92
- // }
93
- };
94
- }, []);
95
- const buttonStyles = [styles.button, buttonType === 'pill' ? styles.pillButton : styles.circleButton, {
96
- backgroundColor: color
97
- }];
98
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(TouchableOpacity, {
99
- style: buttonStyles,
100
- onPress: handlePress,
101
- disabled: loading
102
- }, /*#__PURE__*/React.createElement(Icon, {
103
- name: icon,
104
- size: 24,
105
- color: "white"
106
- }), buttonType === 'pill' && /*#__PURE__*/React.createElement(Text, {
26
+ };
27
+ const handleOnboardingComplete = (apiUrl, token, data) => {
28
+ setShowOnboarding(false);
29
+ onComplete(apiUrl, token, data);
30
+ };
31
+ return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(TouchableOpacity, {
32
+ style: [styles.button, buttonType === 'pill' && styles.pillButton, style],
33
+ onPress: handlePress
34
+ }, /*#__PURE__*/React.createElement(Text, {
107
35
  style: styles.buttonText
108
- }, "Connect with Onairos")), /*#__PURE__*/React.createElement(UniversalOnboarding, {
36
+ }, title)), /*#__PURE__*/React.createElement(UniversalOnboarding, {
109
37
  visible: showOnboarding,
110
38
  onClose: () => setShowOnboarding(false),
111
39
  AppName: AppName,
112
40
  requestData: requestData,
113
41
  returnLink: returnLink,
114
- onComplete: onResolved,
42
+ onComplete: handleOnboardingComplete,
115
43
  embedd: embedd,
116
44
  debug: debug,
117
45
  test: test
118
- }), /*#__PURE__*/React.createElement(DataRequestModal, {
119
- visible: showDataRequest,
120
- onClose: () => setShowDataRequest(false),
121
- onAccept: handleDataRequestAccept,
122
- requestData: requestData,
123
- AppName: AppName
124
46
  }));
125
47
  };
126
48
  const styles = StyleSheet.create({
127
49
  button: {
50
+ backgroundColor: COLORS.primary,
51
+ paddingVertical: 12,
52
+ paddingHorizontal: 24,
53
+ borderRadius: 8,
128
54
  alignItems: 'center',
129
- justifyContent: 'center',
130
- elevation: 3,
131
- shadowColor: '#000',
132
- shadowOffset: {
133
- width: 0,
134
- height: 2
135
- },
136
- shadowOpacity: 0.25,
137
- shadowRadius: 3.84
138
- },
139
- circleButton: {
140
- width: 60,
141
- height: 60,
142
- borderRadius: 30
55
+ justifyContent: 'center'
143
56
  },
144
57
  pillButton: {
145
- flexDirection: 'row',
146
- paddingHorizontal: 16,
147
- paddingVertical: 12,
148
- borderRadius: 25
58
+ borderRadius: 20
149
59
  },
150
60
  buttonText: {
151
- color: 'white',
152
- marginLeft: 8,
61
+ color: '#fff',
153
62
  fontSize: 16,
154
63
  fontWeight: '600'
155
64
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useState","TouchableOpacity","StyleSheet","Text","Linking","Icon","UniversalOnboarding","DataRequestModal","useCredentials","OnairosButton","AppName","requestData","returnLink","embedd","color","icon","onResolved","login","buttonType","debug","test","showOnboarding","setShowOnboarding","showDataRequest","setShowDataRequest","hasCredentials","getCredentials","validateCredentials","loading","setLoading","handlePress","hasExisting","credentials","validationResult","username","isValid","error","console","handleDataRequestAccept","accessToken","handleDeepLink","url","includes","params","URL","searchParams","nonce","get","callback","addEventListener","buttonStyles","styles","button","pillButton","circleButton","backgroundColor","createElement","Fragment","style","onPress","disabled","name","size","buttonText","visible","onClose","onComplete","onAccept","create","alignItems","justifyContent","elevation","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","borderRadius","flexDirection","paddingHorizontal","paddingVertical","marginLeft","fontSize","fontWeight"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useState","TouchableOpacity","Text","StyleSheet","View","UniversalOnboarding","COLORS","OnairosButton","title","onPress","style","buttonType","buttonForm","AppName","requestData","returnLink","onComplete","embedd","debug","test","showOnboarding","setShowOnboarding","handlePress","handleOnboardingComplete","apiUrl","token","data","createElement","styles","button","pillButton","buttonText","visible","onClose","create","backgroundColor","primary","paddingVertical","paddingHorizontal","borderRadius","alignItems","justifyContent","color","fontSize","fontWeight"],"sourceRoot":"..\\..\\..\\src","sources":["components/OnairosButton.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,QAAQ,OAAO;AACvC,SAASC,gBAAgB,EAAEC,IAAI,EAAEC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AACvE,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,MAAM,QAAQ,cAAc;AAGrC,OAAO,MAAMC,aAA2C,GAAGA,CAAC;EAC1DC,KAAK;EACLC,OAAO;EACPC,KAAK;EACLC,UAAU,GAAG,SAAS;EACtBC,UAAU,GAAG,QAAQ;EACrBC,OAAO;EACPC,WAAW;EACXC,UAAU;EACVC,UAAU;EACVC,MAAM,GAAG,KAAK;EACdC,KAAK,GAAG,KAAK;EACbC,IAAI,GAAG;AACT,CAAC,KAAK;EACJ,MAAM,CAACC,cAAc,EAAEC,iBAAiB,CAAC,GAAGrB,QAAQ,CAAC,KAAK,CAAC;EAE3D,MAAMsB,WAAW,GAAGA,CAAA,KAAM;IACxB,IAAIV,UAAU,KAAK,QAAQ,EAAE;MAC3BS,iBAAiB,CAAC,IAAI,CAAC;IACzB,CAAC,MAAM;MACLZ,OAAO,CAAC,CAAC;IACX;EACF,CAAC;EAED,MAAMc,wBAAwB,GAAGA,CAACC,MAAc,EAAEC,KAAa,EAAEC,IAAS,KAAK;IAC7EL,iBAAiB,CAAC,KAAK,CAAC;IACxBL,UAAU,CAACQ,MAAM,EAAEC,KAAK,EAAEC,IAAI,CAAC;EACjC,CAAC;EAED,oBACE3B,KAAA,CAAA4B,aAAA,CAACvB,IAAI,qBACHL,KAAA,CAAA4B,aAAA,CAAC1B,gBAAgB;IACfS,KAAK,EAAE,CACLkB,MAAM,CAACC,MAAM,EACblB,UAAU,KAAK,MAAM,IAAIiB,MAAM,CAACE,UAAU,EAC1CpB,KAAK,CACL;IACFD,OAAO,EAAEa;EAAY,gBAErBvB,KAAA,CAAA4B,aAAA,CAACzB,IAAI;IAACQ,KAAK,EAAEkB,MAAM,CAACG;EAAW,GAAEvB,KAAY,CAC7B,CAAC,eAEnBT,KAAA,CAAA4B,aAAA,CAACtB,mBAAmB;IAClB2B,OAAO,EAAEZ,cAAe;IACxBa,OAAO,EAAEA,CAAA,KAAMZ,iBAAiB,CAAC,KAAK,CAAE;IACxCR,OAAO,EAAEA,OAAQ;IACjBC,WAAW,EAAEA,WAAY;IACzBC,UAAU,EAAEA,UAAW;IACvBC,UAAU,EAAEO,wBAAyB;IACrCN,MAAM,EAAEA,MAAO;IACfC,KAAK,EAAEA,KAAM;IACbC,IAAI,EAAEA;EAAK,CACZ,CACG,CAAC;AAEX,CAAC;AAED,MAAMS,MAAM,GAAGzB,UAAU,CAAC+B,MAAM,CAAC;EAC/BL,MAAM,EAAE;IACNM,eAAe,EAAE7B,MAAM,CAAC8B,OAAO;IAC/BC,eAAe,EAAE,EAAE;IACnBC,iBAAiB,EAAE,EAAE;IACrBC,YAAY,EAAE,CAAC;IACfC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB,CAAC;EACDX,UAAU,EAAE;IACVS,YAAY,EAAE;EAChB,CAAC;EACDR,UAAU,EAAE;IACVW,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE;EACd;AACF,CAAC,CAAC","ignoreList":[]}
@@ -17,14 +17,15 @@ export const UniversalOnboarding = ({
17
17
  requestData,
18
18
  returnLink,
19
19
  onComplete,
20
- embedd,
21
- debug,
22
- test
20
+ embedd = false,
21
+ debug = false,
22
+ test = false
23
23
  }) => {
24
24
  const bottomSheetRef = useRef(null);
25
25
  const [step, setStep] = useState('connect');
26
26
  const [connections, setConnections] = useState({});
27
27
  const [pin, setPin] = useState('');
28
+ const [selectedTier, setSelectedTier] = useState('Medium');
28
29
  const [training, setTraining] = useState({
29
30
  progress: 0,
30
31
  eta: ''
@@ -77,11 +78,13 @@ export const UniversalOnboarding = ({
77
78
  clearInterval(interval);
78
79
  onComplete('https://api2.onairos.uk', 'dummy-token', {
79
80
  pin: userPin,
80
- connections
81
+ connections,
82
+ selectedTier,
83
+ tierData: requestData[selectedTier]
81
84
  });
82
85
  }
83
86
  }, 1000);
84
- }, [connections, onComplete]);
87
+ }, [connections, onComplete, selectedTier, requestData]);
85
88
  const canProceedToPin = useMemo(() => {
86
89
  const connectedPlatforms = Object.values(connections).filter(Boolean).length;
87
90
  return connectedPlatforms >= 2;
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","Text","StyleSheet","TouchableOpacity","Dimensions","BottomSheet","Icon","PlatformList","PinInput","TrainingModal","useConnections","COLORS","height","get","UniversalOnboarding","visible","onClose","AppName","requestData","returnLink","onComplete","embedd","debug","test","bottomSheetRef","step","setStep","connections","setConnections","pin","setPin","training","setTraining","progress","eta","connectPlatform","disconnectPlatform","getConnectionStatus","isConnecting","snapPoints","_bottomSheetRef$curre","current","expand","loadInitialStatus","_bottomSheetRef$curre2","close","status","handlePlatformToggle","platform","connect","error","console","handlePinSubmit","userPin","interval","setInterval","Math","round","clearInterval","canProceedToPin","connectedPlatforms","Object","values","filter","Boolean","length","renderHeader","createElement","style","styles","header","name","size","color","primary","headerTitle","onPress","closeButton","renderContent","onToggle","isLoading","canProceed","onProceed","onSubmit","minLength","requireSpecialChar","requireNumber","onCancel","ref","enablePanDownToClose","index","container","create","flex","backgroundColor","flexDirection","alignItems","padding","headerBg","borderTopLeftRadius","borderTopRightRadius","fontSize","fontWeight","marginLeft"],"sourceRoot":"..\\..\\..\\src","sources":["components/UniversalOnboarding.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","Text","StyleSheet","TouchableOpacity","Dimensions","BottomSheet","Icon","PlatformList","PinInput","TrainingModal","useConnections","COLORS","height","get","UniversalOnboarding","visible","onClose","AppName","requestData","returnLink","onComplete","embedd","debug","test","bottomSheetRef","step","setStep","connections","setConnections","pin","setPin","selectedTier","setSelectedTier","training","setTraining","progress","eta","connectPlatform","disconnectPlatform","getConnectionStatus","isConnecting","snapPoints","_bottomSheetRef$curre","current","expand","loadInitialStatus","_bottomSheetRef$curre2","close","status","handlePlatformToggle","platform","connect","error","console","handlePinSubmit","userPin","interval","setInterval","Math","round","clearInterval","tierData","canProceedToPin","connectedPlatforms","Object","values","filter","Boolean","length","renderHeader","createElement","style","styles","header","name","size","color","primary","headerTitle","onPress","closeButton","renderContent","onToggle","isLoading","canProceed","onProceed","onSubmit","minLength","requireSpecialChar","requireNumber","onCancel","ref","enablePanDownToClose","index","container","create","flex","backgroundColor","flexDirection","alignItems","padding","headerBg","borderTopLeftRadius","borderTopRightRadius","fontSize","fontWeight","marginLeft"],"sourceRoot":"..\\..\\..\\src","sources":["components/UniversalOnboarding.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,34 +1,11 @@
1
- // Components
2
- export { OnairosButton } from './components/OnairosButton';
3
- export { UniversalOnboarding } from './components/UniversalOnboarding';
4
- export { Overlay } from './components/Overlay';
1
+ import OnairosButton from './components/OnairosButton';
2
+ import * as AuthUtils from './utils/auth';
3
+ import * as CryptoUtils from './utils/crypto';
4
+ import * as ApiUtils from './utils/api';
5
5
 
6
- // Screen Components
7
- export { ConnectorScreen } from './components/screens/ConnectorScreen';
8
- export { PinCreationScreen } from './components/screens/PinCreationScreen';
9
- export { LoadingScreen } from './components/screens/LoadingScreen';
6
+ // Export the main component
7
+ export default OnairosButton;
10
8
 
11
- // Onboarding Components
12
- export { OAuthWebView } from './components/onboarding/OAuthWebView';
13
- export { PlatformConnector } from './components/onboarding/PlatformConnector';
14
- export { OnboardingHeader } from './components/onboarding/OnboardingHeader';
15
- export { PinInput } from './components/onboarding/PinInput';
16
-
17
- // Hooks
18
- export { useConnections } from './hooks/useConnections';
19
- export { useCredentials } from './hooks/useCredentials';
20
-
21
- // Utilities
22
- export { storeCredentials, getCredentials, hasCredentials, deleteCredentials, updateCredentials, generateDeviceUsername, verifyCredentials } from './utils/secureStorage';
23
- export { validateCredentials, createAccount, authenticate, refreshToken, getPlatformData, getUserProfile, updatePlatformConnections } from './utils/onairosApi';
24
- export { rsaEncrypt, sha256, base64ToBuffer } from './utils/crypto';
25
- export { logDebug, logError, isDebugMode } from './utils/debugHelper';
26
-
27
- // Services
28
- export { connectPlatform, disconnectPlatform, initializeOAuthService, cleanupOAuthService, storePlatformConnection } from './services/oauthService';
29
-
30
- // Types
31
-
32
- // Constants
33
- export { COLORS, PLATFORMS, API_ENDPOINTS, STORAGE_KEYS, PIN_REQUIREMENTS, DEEP_LINK_CONFIG } from './constants';
9
+ // Export utilities for advanced usage
10
+ export { AuthUtils, CryptoUtils, ApiUtils };
34
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["OnairosButton","UniversalOnboarding","Overlay","ConnectorScreen","PinCreationScreen","LoadingScreen","OAuthWebView","PlatformConnector","OnboardingHeader","PinInput","useConnections","useCredentials","storeCredentials","getCredentials","hasCredentials","deleteCredentials","updateCredentials","generateDeviceUsername","verifyCredentials","validateCredentials","createAccount","authenticate","refreshToken","getPlatformData","getUserProfile","updatePlatformConnections","rsaEncrypt","sha256","base64ToBuffer","logDebug","logError","isDebugMode","connectPlatform","disconnectPlatform","initializeOAuthService","cleanupOAuthService","storePlatformConnection","COLORS","PLATFORMS","API_ENDPOINTS","STORAGE_KEYS","PIN_REQUIREMENTS","DEEP_LINK_CONFIG"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":"AAAA;AACA,SAASA,aAAa,QAAQ,4BAA4B;AAC1D,SAASC,mBAAmB,QAAQ,kCAAkC;AACtE,SAASC,OAAO,QAAQ,sBAAsB;;AAE9C;AACA,SAASC,eAAe,QAAQ,sCAAsC;AACtE,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,aAAa,QAAQ,oCAAoC;;AAElE;AACA,SAASC,YAAY,QAAQ,sCAAsC;AACnE,SAASC,iBAAiB,QAAQ,2CAA2C;AAC7E,SAASC,gBAAgB,QAAQ,0CAA0C;AAC3E,SAASC,QAAQ,QAAQ,kCAAkC;;AAE3D;AACA,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,cAAc,QAAQ,wBAAwB;;AAEvD;AACA,SACEC,gBAAgB,EAChBC,cAAc,EACdC,cAAc,EACdC,iBAAiB,EACjBC,iBAAiB,EACjBC,sBAAsB,EACtBC,iBAAiB,QACZ,uBAAuB;AAE9B,SACEC,mBAAmB,EACnBC,aAAa,EACbC,YAAY,EACZC,YAAY,EACZC,eAAe,EACfC,cAAc,EACdC,yBAAyB,QACpB,oBAAoB;AAE3B,SACEC,UAAU,EACVC,MAAM,EACNC,cAAc,QACT,gBAAgB;AAEvB,SACEC,QAAQ,EACRC,QAAQ,EACRC,WAAW,QACN,qBAAqB;;AAE5B;AACA,SACEC,eAAe,EACfC,kBAAkB,EAClBC,sBAAsB,EACtBC,mBAAmB,EACnBC,uBAAuB,QAClB,yBAAyB;;AAEhC;;AAkBA;AACA,SAASC,MAAM,EAAEC,SAAS,EAAEC,aAAa,EAAEC,YAAY,EAAEC,gBAAgB,EAAEC,gBAAgB,QAAQ,aAAa","ignoreList":[]}
1
+ {"version":3,"names":["OnairosButton","AuthUtils","CryptoUtils","ApiUtils"],"sourceRoot":"..\\..\\src","sources":["index.js"],"mappings":"AAAA,OAAOA,aAAa,MAAM,4BAA4B;AACtD,OAAO,KAAKC,SAAS,MAAM,cAAc;AACzC,OAAO,KAAKC,WAAW,MAAM,gBAAgB;AAC7C,OAAO,KAAKC,QAAQ,MAAM,aAAa;;AAEvC;AACA,eAAeH,aAAa;;AAE5B;AACA,SACEC,SAAS,EACTC,WAAW,EACXC,QAAQ","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"..\\..\\src","sources":["types.ts"],"mappings":"","ignoreList":[]}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@onairos/react-native",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "Onairos React Native SDK for social media authentication and AI model training",
5
- "main": "lib/commonjs/index",
6
- "module": "lib/module/index",
5
+ "main": "lib/commonjs/index.js",
6
+ "module": "lib/module/index.js",
7
7
  "types": "lib/typescript/index.d.ts",
8
8
  "react-native": "src/index",
9
9
  "source": "src/index",
@@ -1,132 +1,49 @@
1
- import React, { useCallback, useEffect, useState } from 'react';
2
- import {
3
- TouchableOpacity,
4
- StyleSheet,
5
- View,
6
- Text,
7
- Platform,
8
- Linking,
9
- Modal,
10
- } from 'react-native';
11
- import Icon from 'react-native-vector-icons/MaterialIcons';
12
- import * as Keychain from 'react-native-keychain';
1
+ import React, { useState } from 'react';
2
+ import { TouchableOpacity, Text, StyleSheet, View } from 'react-native';
13
3
  import { UniversalOnboarding } from './UniversalOnboarding';
14
- import { DataRequestModal } from './DataRequestModal';
15
- import { useCredentials } from '../hooks/useCredentials';
16
- // import { validateCredentials } from '../utils/auth';
17
- // import { COLORS } from '../constants';
4
+ import { COLORS } from '../constants';
18
5
  import type { OnairosButtonProps } from '../types';
19
6
 
20
7
  export const OnairosButton: React.FC<OnairosButtonProps> = ({
8
+ title,
9
+ onPress,
10
+ style,
11
+ buttonType = 'default',
12
+ buttonForm = 'signup',
21
13
  AppName,
22
14
  requestData,
23
15
  returnLink,
16
+ onComplete,
24
17
  embedd = false,
25
- color = '#00BFA5',
26
- icon = 'auto_awesome',
27
- onResolved,
28
- login = false,
29
- buttonType = 'circle',
30
18
  debug = false,
31
19
  test = false,
32
20
  }) => {
33
21
  const [showOnboarding, setShowOnboarding] = useState(false);
34
- const [showDataRequest, setShowDataRequest] = useState(false);
35
- const { hasCredentials, getCredentials, validateCredentials } = useCredentials();
36
- const [loading, setLoading] = useState(false);
37
22
 
38
- const handlePress = useCallback(async () => {
39
- setLoading(true);
40
- try {
41
- const hasExisting = await hasCredentials();
42
-
43
- if (!hasExisting) {
44
- setShowOnboarding(true);
45
- return;
46
- }
47
-
48
- const credentials = await getCredentials();
49
- if (!credentials) {
50
- setShowOnboarding(true);
51
- return;
52
- }
53
-
54
- const validationResult = await validateCredentials(credentials.username);
55
- if (!validationResult.isValid) {
56
- setShowOnboarding(true);
57
- return;
58
- }
59
-
60
- // If we have valid credentials, show data request modal
61
- setShowDataRequest(true);
62
- } catch (error) {
63
- console.error('Error in button press:', error);
23
+ const handlePress = () => {
24
+ if (buttonForm === 'signup') {
64
25
  setShowOnboarding(true);
65
- } finally {
66
- setLoading(false);
67
- }
68
- }, [hasCredentials, getCredentials, validateCredentials]);
69
-
70
- const handleDataRequestAccept = useCallback(async () => {
71
- try {
72
- const credentials = await getCredentials();
73
- if (credentials) {
74
- onResolved(
75
- 'https://api2.onairos.uk',
76
- credentials.accessToken,
77
- credentials
78
- );
79
- }
80
- setShowDataRequest(false);
81
- } catch (error) {
82
- console.error('Error handling data request accept:', error);
26
+ } else {
27
+ onPress();
83
28
  }
84
- }, [getCredentials, onResolved]);
85
-
86
- useEffect(() => {
87
- // Setup deep linking
88
- const handleDeepLink = ({ url }: { url: string }) => {
89
- if (url.includes('onairosreact://authenticate')) {
90
- // Handle authentication callback
91
- const params = new URL(url).searchParams;
92
- const nonce = params.get('nonce');
93
- const callback = params.get('callback');
94
-
95
- if (nonce && callback) {
96
- // Process authentication
97
- setShowOnboarding(false);
98
- }
99
- }
100
- };
101
-
102
- Linking.addEventListener('url', handleDeepLink);
103
-
104
- return () => {
105
- // Cleanup deep linking
106
- // Note: Remove event listener based on RN version
107
- // if (Platform.OS === 'android') {
108
- // Linking.removeEventListener('url', handleDeepLink);
109
- // }
110
- };
111
- }, []);
29
+ };
112
30
 
113
- const buttonStyles = [
114
- styles.button,
115
- buttonType === 'pill' ? styles.pillButton : styles.circleButton,
116
- { backgroundColor: color },
117
- ];
31
+ const handleOnboardingComplete = (apiUrl: string, token: string, data: any) => {
32
+ setShowOnboarding(false);
33
+ onComplete(apiUrl, token, data);
34
+ };
118
35
 
119
36
  return (
120
- <>
37
+ <View>
121
38
  <TouchableOpacity
122
- style={buttonStyles}
39
+ style={[
40
+ styles.button,
41
+ buttonType === 'pill' && styles.pillButton,
42
+ style,
43
+ ]}
123
44
  onPress={handlePress}
124
- disabled={loading}
125
45
  >
126
- <Icon name={icon} size={24} color="white" />
127
- {buttonType === 'pill' && (
128
- <Text style={styles.buttonText}>Connect with Onairos</Text>
129
- )}
46
+ <Text style={styles.buttonText}>{title}</Text>
130
47
  </TouchableOpacity>
131
48
 
132
49
  <UniversalOnboarding
@@ -135,47 +52,29 @@ export const OnairosButton: React.FC<OnairosButtonProps> = ({
135
52
  AppName={AppName}
136
53
  requestData={requestData}
137
54
  returnLink={returnLink}
138
- onComplete={onResolved}
55
+ onComplete={handleOnboardingComplete}
139
56
  embedd={embedd}
140
57
  debug={debug}
141
58
  test={test}
142
59
  />
143
-
144
- <DataRequestModal
145
- visible={showDataRequest}
146
- onClose={() => setShowDataRequest(false)}
147
- onAccept={handleDataRequestAccept}
148
- requestData={requestData}
149
- AppName={AppName}
150
- />
151
- </>
60
+ </View>
152
61
  );
153
62
  };
154
63
 
155
64
  const styles = StyleSheet.create({
156
65
  button: {
66
+ backgroundColor: COLORS.primary,
67
+ paddingVertical: 12,
68
+ paddingHorizontal: 24,
69
+ borderRadius: 8,
157
70
  alignItems: 'center',
158
71
  justifyContent: 'center',
159
- elevation: 3,
160
- shadowColor: '#000',
161
- shadowOffset: { width: 0, height: 2 },
162
- shadowOpacity: 0.25,
163
- shadowRadius: 3.84,
164
- },
165
- circleButton: {
166
- width: 60,
167
- height: 60,
168
- borderRadius: 30,
169
72
  },
170
73
  pillButton: {
171
- flexDirection: 'row',
172
- paddingHorizontal: 16,
173
- paddingVertical: 12,
174
- borderRadius: 25,
74
+ borderRadius: 20,
175
75
  },
176
76
  buttonText: {
177
- color: 'white',
178
- marginLeft: 8,
77
+ color: '#fff',
179
78
  fontSize: 16,
180
79
  fontWeight: '600',
181
80
  },
@@ -25,14 +25,15 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
25
25
  requestData,
26
26
  returnLink,
27
27
  onComplete,
28
- embedd,
29
- debug,
30
- test,
28
+ embedd = false,
29
+ debug = false,
30
+ test = false,
31
31
  }) => {
32
32
  const bottomSheetRef = useRef<BottomSheet>(null);
33
33
  const [step, setStep] = useState<'connect' | 'pin' | 'training'>('connect');
34
34
  const [connections, setConnections] = useState<ConnectionStatus>({});
35
35
  const [pin, setPin] = useState<string>('');
36
+ const [selectedTier, setSelectedTier] = useState<keyof typeof requestData>('Medium');
36
37
  const [training, setTraining] = useState<{
37
38
  progress: number;
38
39
  eta: string;
@@ -90,10 +91,12 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
90
91
  onComplete('https://api2.onairos.uk', 'dummy-token', {
91
92
  pin: userPin,
92
93
  connections,
94
+ selectedTier,
95
+ tierData: requestData[selectedTier],
93
96
  });
94
97
  }
95
98
  }, 1000);
96
- }, [connections, onComplete]);
99
+ }, [connections, onComplete, selectedTier, requestData]);
97
100
 
98
101
  const canProceedToPin = useMemo(() => {
99
102
  const connectedPlatforms = Object.values(connections).filter(Boolean).length;
@@ -1,13 +1,24 @@
1
+ export interface DataTier {
2
+ type: string;
3
+ descriptions: string;
4
+ reward: string;
5
+ }
6
+
1
7
  export interface OnairosButtonProps {
8
+ title: string;
9
+ onPress: () => void;
10
+ style?: any;
11
+ buttonType?: 'default' | 'pill';
12
+ buttonForm?: 'signup' | 'login';
2
13
  AppName: string;
3
- requestData: Record<string, Record<string, string>>;
14
+ requestData: {
15
+ Small: DataTier;
16
+ Medium: DataTier;
17
+ Large: DataTier;
18
+ };
4
19
  returnLink: string;
20
+ onComplete: (apiUrl: string, token: string, data: any) => void;
5
21
  embedd?: boolean;
6
- color?: string;
7
- icon?: string;
8
- onResolved: (apiUrl: string, accessToken: string, loginDetails?: Record<string, any>) => void;
9
- login?: boolean;
10
- buttonType?: 'circle' | 'pill';
11
22
  debug?: boolean;
12
23
  test?: boolean;
13
24
  }
@@ -16,19 +27,20 @@ export interface UniversalOnboardingProps {
16
27
  visible: boolean;
17
28
  onClose: () => void;
18
29
  AppName: string;
19
- requestData: Record<string, Record<string, string>>;
30
+ requestData: {
31
+ Small: DataTier;
32
+ Medium: DataTier;
33
+ Large: DataTier;
34
+ };
20
35
  returnLink: string;
21
- onComplete: (apiUrl: string, accessToken: string, data: any) => void;
36
+ onComplete: (apiUrl: string, token: string, data: any) => void;
22
37
  embedd?: boolean;
23
38
  debug?: boolean;
24
39
  test?: boolean;
25
40
  }
26
41
 
27
42
  export interface ConnectionStatus {
28
- instagram?: { userName: string };
29
- pinterest?: { userName: string };
30
- reddit?: { userName: string };
31
- youtube?: { userName: string };
43
+ [key: string]: boolean;
32
44
  }
33
45
 
34
46
  export interface PlatformListProps {
package/src/types.ts ADDED
@@ -0,0 +1,29 @@
1
+ export interface DataTier {
2
+ type: string;
3
+ descriptions: string;
4
+ reward: string;
5
+ }
6
+
7
+ export interface UniversalOnboardingProps {
8
+ visible: boolean;
9
+ onClose: () => void;
10
+ AppName: string;
11
+ requestData: {
12
+ Small: DataTier;
13
+ Medium: DataTier;
14
+ Large: DataTier;
15
+ };
16
+ returnLink: string;
17
+ onComplete: (apiUrl: string, token: string, data: any) => void;
18
+ embedd?: boolean;
19
+ debug?: boolean;
20
+ test?: boolean;
21
+ buttonType?: 'default' | 'pill';
22
+ buttonForm?: 'signup' | 'login';
23
+ }
24
+
25
+ export interface ConnectionStatus {
26
+ [key: string]: boolean;
27
+ }
28
+
29
+ // ... rest of the existing types ...