@onairos/react-native 1.0.0
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.
- package/README.md +334 -0
- package/lib/commonjs/components/DataRequestModal.js +176 -0
- package/lib/commonjs/components/DataRequestModal.js.map +1 -0
- package/lib/commonjs/components/Notification.js +106 -0
- package/lib/commonjs/components/Notification.js.map +1 -0
- package/lib/commonjs/components/OnairosButton.js +575 -0
- package/lib/commonjs/components/OnairosButton.js.map +1 -0
- package/lib/commonjs/components/Overlay.js +818 -0
- package/lib/commonjs/components/Overlay.js.map +1 -0
- package/lib/commonjs/components/UniversalOnboarding.js +173 -0
- package/lib/commonjs/components/UniversalOnboarding.js.map +1 -0
- package/lib/commonjs/components/onboarding/OAuthWebView.js +137 -0
- package/lib/commonjs/components/onboarding/OAuthWebView.js.map +1 -0
- package/lib/commonjs/components/onboarding/OnboardingHeader.js +74 -0
- package/lib/commonjs/components/onboarding/OnboardingHeader.js.map +1 -0
- package/lib/commonjs/components/onboarding/PinInput.js +283 -0
- package/lib/commonjs/components/onboarding/PinInput.js.map +1 -0
- package/lib/commonjs/components/onboarding/PlatformConnector.js +244 -0
- package/lib/commonjs/components/onboarding/PlatformConnector.js.map +1 -0
- package/lib/commonjs/components/screens/ConnectorScreen.js +145 -0
- package/lib/commonjs/components/screens/ConnectorScreen.js.map +1 -0
- package/lib/commonjs/components/screens/LoadingScreen.js +91 -0
- package/lib/commonjs/components/screens/LoadingScreen.js.map +1 -0
- package/lib/commonjs/components/screens/PinCreationScreen.js +61 -0
- package/lib/commonjs/components/screens/PinCreationScreen.js.map +1 -0
- package/lib/commonjs/constants/index.js +78 -0
- package/lib/commonjs/constants/index.js.map +1 -0
- package/lib/commonjs/hooks/useConnections.js +89 -0
- package/lib/commonjs/hooks/useConnections.js.map +1 -0
- package/lib/commonjs/hooks/useCredentials.js +85 -0
- package/lib/commonjs/hooks/useCredentials.js.map +1 -0
- package/lib/commonjs/index.js +282 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/services/oauthService.js +362 -0
- package/lib/commonjs/services/oauthService.js.map +1 -0
- package/lib/commonjs/types/declarations.d.js +2 -0
- package/lib/commonjs/types/declarations.d.js.map +1 -0
- package/lib/commonjs/types/index.js +2 -0
- package/lib/commonjs/types/index.js.map +1 -0
- package/lib/commonjs/utils/api.js +129 -0
- package/lib/commonjs/utils/api.js.map +1 -0
- package/lib/commonjs/utils/auth.js +111 -0
- package/lib/commonjs/utils/auth.js.map +1 -0
- package/lib/commonjs/utils/crypto.js +62 -0
- package/lib/commonjs/utils/crypto.js.map +1 -0
- package/lib/commonjs/utils/debugHelper.js +64 -0
- package/lib/commonjs/utils/debugHelper.js.map +1 -0
- package/lib/commonjs/utils/onairosApi.js +270 -0
- package/lib/commonjs/utils/onairosApi.js.map +1 -0
- package/lib/commonjs/utils/secureStorage.js +210 -0
- package/lib/commonjs/utils/secureStorage.js.map +1 -0
- package/lib/module/components/DataRequestModal.js +168 -0
- package/lib/module/components/DataRequestModal.js.map +1 -0
- package/lib/module/components/Notification.js +99 -0
- package/lib/module/components/Notification.js.map +1 -0
- package/lib/module/components/OnairosButton.js +550 -0
- package/lib/module/components/OnairosButton.js.map +1 -0
- package/lib/module/components/Overlay.js +825 -0
- package/lib/module/components/Overlay.js.map +1 -0
- package/lib/module/components/UniversalOnboarding.js +164 -0
- package/lib/module/components/UniversalOnboarding.js.map +1 -0
- package/lib/module/components/onboarding/OAuthWebView.js +128 -0
- package/lib/module/components/onboarding/OAuthWebView.js.map +1 -0
- package/lib/module/components/onboarding/OnboardingHeader.js +66 -0
- package/lib/module/components/onboarding/OnboardingHeader.js.map +1 -0
- package/lib/module/components/onboarding/PinInput.js +274 -0
- package/lib/module/components/onboarding/PinInput.js.map +1 -0
- package/lib/module/components/onboarding/PlatformConnector.js +235 -0
- package/lib/module/components/onboarding/PlatformConnector.js.map +1 -0
- package/lib/module/components/screens/ConnectorScreen.js +137 -0
- package/lib/module/components/screens/ConnectorScreen.js.map +1 -0
- package/lib/module/components/screens/LoadingScreen.js +83 -0
- package/lib/module/components/screens/LoadingScreen.js.map +1 -0
- package/lib/module/components/screens/PinCreationScreen.js +53 -0
- package/lib/module/components/screens/PinCreationScreen.js.map +1 -0
- package/lib/module/constants/index.js +72 -0
- package/lib/module/constants/index.js.map +1 -0
- package/lib/module/hooks/useConnections.js +81 -0
- package/lib/module/hooks/useConnections.js.map +1 -0
- package/lib/module/hooks/useCredentials.js +77 -0
- package/lib/module/hooks/useCredentials.js.map +1 -0
- package/lib/module/index.js +34 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/services/oauthService.js +352 -0
- package/lib/module/services/oauthService.js.map +1 -0
- package/lib/module/types/declarations.d.js +2 -0
- package/lib/module/types/declarations.d.js.map +1 -0
- package/lib/module/types/index.js +2 -0
- package/lib/module/types/index.js.map +1 -0
- package/lib/module/utils/api.js +117 -0
- package/lib/module/utils/api.js.map +1 -0
- package/lib/module/utils/auth.js +99 -0
- package/lib/module/utils/auth.js.map +1 -0
- package/lib/module/utils/crypto.js +54 -0
- package/lib/module/utils/crypto.js.map +1 -0
- package/lib/module/utils/debugHelper.js +54 -0
- package/lib/module/utils/debugHelper.js.map +1 -0
- package/lib/module/utils/onairosApi.js +256 -0
- package/lib/module/utils/onairosApi.js.map +1 -0
- package/lib/module/utils/secureStorage.js +196 -0
- package/lib/module/utils/secureStorage.js.map +1 -0
- package/package.json +115 -0
- package/src/components/DataRequestModal.tsx +187 -0
- package/src/components/Notification.js +101 -0
- package/src/components/OnairosButton.js +604 -0
- package/src/components/OnairosButton.tsx +182 -0
- package/src/components/Overlay.js +854 -0
- package/src/components/Overlay.tsx +272 -0
- package/src/components/UniversalOnboarding.tsx +184 -0
- package/src/components/onboarding/OAuthWebView.tsx +134 -0
- package/src/components/onboarding/OnboardingHeader.tsx +70 -0
- package/src/components/onboarding/PinInput.tsx +356 -0
- package/src/components/onboarding/PlatformConnector.tsx +297 -0
- package/src/components/screens/ConnectorScreen.tsx +152 -0
- package/src/components/screens/LoadingScreen.tsx +100 -0
- package/src/components/screens/PinCreationScreen.tsx +67 -0
- package/src/constants/index.ts +78 -0
- package/src/hooks/useConnections.ts +90 -0
- package/src/hooks/useCredentials.ts +83 -0
- package/src/index.js +14 -0
- package/src/index.ts +82 -0
- package/src/services/oauthService.ts +360 -0
- package/src/types/declarations.d.ts +26 -0
- package/src/types/index.ts +82 -0
- package/src/utils/api.js +112 -0
- package/src/utils/auth.js +104 -0
- package/src/utils/crypto.js +60 -0
- package/src/utils/debugHelper.ts +53 -0
- package/src/utils/onairosApi.ts +303 -0
- package/src/utils/secureStorage.ts +230 -0
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ConnectorScreen = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _OnboardingHeader = require("../onboarding/OnboardingHeader");
|
|
10
|
+
var _PlatformConnector = require("../onboarding/PlatformConnector");
|
|
11
|
+
var _oauthService = require("../../services/oauthService");
|
|
12
|
+
var _secureStorage = require("../../utils/secureStorage");
|
|
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
|
+
const ConnectorScreen = ({
|
|
15
|
+
onComplete,
|
|
16
|
+
onClose,
|
|
17
|
+
AppName
|
|
18
|
+
}) => {
|
|
19
|
+
const [connections, setConnections] = (0, _react.useState)({});
|
|
20
|
+
const [isConnecting, setIsConnecting] = (0, _react.useState)(false);
|
|
21
|
+
|
|
22
|
+
// Load initial connection status
|
|
23
|
+
(0, _react.useEffect)(() => {
|
|
24
|
+
loadConnectionStatus();
|
|
25
|
+
}, []);
|
|
26
|
+
|
|
27
|
+
// Load connection status from secure storage
|
|
28
|
+
const loadConnectionStatus = (0, _react.useCallback)(async () => {
|
|
29
|
+
try {
|
|
30
|
+
const credentials = await (0, _secureStorage.getCredentials)();
|
|
31
|
+
if (credentials !== null && credentials !== void 0 && credentials.platforms) {
|
|
32
|
+
const connectionStatus = {};
|
|
33
|
+
|
|
34
|
+
// Transform platforms data to connection status format
|
|
35
|
+
Object.entries(credentials.platforms).forEach(([platform, data]) => {
|
|
36
|
+
if (data && 'username' in data) {
|
|
37
|
+
connectionStatus[platform] = {
|
|
38
|
+
userName: data.username
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
setConnections(connectionStatus);
|
|
43
|
+
}
|
|
44
|
+
} catch (error) {
|
|
45
|
+
console.error('Error loading connection status:', error);
|
|
46
|
+
}
|
|
47
|
+
}, []);
|
|
48
|
+
|
|
49
|
+
// Handle platform connection
|
|
50
|
+
const handleConnect = (0, _react.useCallback)(async platform => {
|
|
51
|
+
try {
|
|
52
|
+
setIsConnecting(true);
|
|
53
|
+
|
|
54
|
+
// Start OAuth flow
|
|
55
|
+
const connectionData = await (0, _oauthService.connectPlatform)(platform);
|
|
56
|
+
|
|
57
|
+
// Get current credentials
|
|
58
|
+
const credentials = await (0, _secureStorage.getCredentials)();
|
|
59
|
+
if (!credentials) {
|
|
60
|
+
throw new Error('No credentials found');
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
// Update platforms in credentials
|
|
64
|
+
const updatedPlatforms = {
|
|
65
|
+
...credentials.platforms,
|
|
66
|
+
[platform]: {
|
|
67
|
+
token: connectionData.token,
|
|
68
|
+
username: connectionData.username,
|
|
69
|
+
userId: connectionData.userId
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
// Update stored credentials
|
|
74
|
+
await (0, _secureStorage.updateCredentials)({
|
|
75
|
+
platforms: updatedPlatforms
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
// Refresh connection status
|
|
79
|
+
await loadConnectionStatus();
|
|
80
|
+
} catch (error) {
|
|
81
|
+
console.error(`Error connecting to ${platform}:`, error);
|
|
82
|
+
} finally {
|
|
83
|
+
setIsConnecting(false);
|
|
84
|
+
}
|
|
85
|
+
}, [loadConnectionStatus]);
|
|
86
|
+
|
|
87
|
+
// Handle platform disconnection
|
|
88
|
+
const handleDisconnect = (0, _react.useCallback)(async platform => {
|
|
89
|
+
try {
|
|
90
|
+
setIsConnecting(true);
|
|
91
|
+
|
|
92
|
+
// Get current credentials
|
|
93
|
+
const credentials = await (0, _secureStorage.getCredentials)();
|
|
94
|
+
if (!credentials || !credentials.platforms) {
|
|
95
|
+
throw new Error('No credentials or platforms found');
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Create updated platforms object without the disconnected platform
|
|
99
|
+
const updatedPlatforms = {
|
|
100
|
+
...credentials.platforms
|
|
101
|
+
};
|
|
102
|
+
delete updatedPlatforms[platform];
|
|
103
|
+
|
|
104
|
+
// Update stored credentials
|
|
105
|
+
await (0, _secureStorage.updateCredentials)({
|
|
106
|
+
platforms: updatedPlatforms
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
// Refresh connection status
|
|
110
|
+
await loadConnectionStatus();
|
|
111
|
+
} catch (error) {
|
|
112
|
+
console.error(`Error disconnecting from ${platform}:`, error);
|
|
113
|
+
} finally {
|
|
114
|
+
setIsConnecting(false);
|
|
115
|
+
}
|
|
116
|
+
}, [loadConnectionStatus]);
|
|
117
|
+
|
|
118
|
+
// Check if user can proceed to next step
|
|
119
|
+
const canProceed = (0, _react.useCallback)(() => {
|
|
120
|
+
const connectedPlatforms = Object.values(connections).filter(Boolean).length;
|
|
121
|
+
return connectedPlatforms >= 2;
|
|
122
|
+
}, [connections]);
|
|
123
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
|
|
124
|
+
style: styles.container
|
|
125
|
+
}, /*#__PURE__*/_react.default.createElement(_OnboardingHeader.OnboardingHeader, {
|
|
126
|
+
title: "Connect Your Platforms",
|
|
127
|
+
subtitle: `Connecting to ${AppName}`,
|
|
128
|
+
onClose: onClose
|
|
129
|
+
}), /*#__PURE__*/_react.default.createElement(_PlatformConnector.PlatformConnector, {
|
|
130
|
+
connections: connections,
|
|
131
|
+
onConnect: handleConnect,
|
|
132
|
+
onDisconnect: handleDisconnect,
|
|
133
|
+
isLoading: isConnecting,
|
|
134
|
+
canProceed: canProceed(),
|
|
135
|
+
onProceed: onComplete
|
|
136
|
+
}));
|
|
137
|
+
};
|
|
138
|
+
exports.ConnectorScreen = ConnectorScreen;
|
|
139
|
+
const styles = _reactNative.StyleSheet.create({
|
|
140
|
+
container: {
|
|
141
|
+
flex: 1,
|
|
142
|
+
backgroundColor: '#fff'
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
//# sourceMappingURL=ConnectorScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_OnboardingHeader","_PlatformConnector","_oauthService","_secureStorage","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ConnectorScreen","onComplete","onClose","AppName","connections","setConnections","useState","isConnecting","setIsConnecting","useEffect","loadConnectionStatus","useCallback","credentials","getCredentials","platforms","connectionStatus","entries","forEach","platform","data","userName","username","error","console","handleConnect","connectionData","connectPlatform","Error","updatedPlatforms","token","userId","updateCredentials","handleDisconnect","canProceed","connectedPlatforms","values","filter","Boolean","length","createElement","SafeAreaView","style","styles","container","OnboardingHeader","title","subtitle","PlatformConnector","onConnect","onDisconnect","isLoading","onProceed","exports","StyleSheet","create","flex","backgroundColor"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/screens/ConnectorScreen.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.LoadingScreen = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _constants = require("../../constants");
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
const LoadingScreen = ({
|
|
12
|
+
message,
|
|
13
|
+
progress,
|
|
14
|
+
eta
|
|
15
|
+
}) => {
|
|
16
|
+
// Calculate progress percentage for display
|
|
17
|
+
const progressPercent = progress ? Math.round(progress * 100) : undefined;
|
|
18
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
|
|
19
|
+
style: styles.container
|
|
20
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
21
|
+
style: styles.content
|
|
22
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
|
|
23
|
+
size: "large",
|
|
24
|
+
color: _constants.COLORS.primary,
|
|
25
|
+
style: styles.spinner
|
|
26
|
+
}), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
27
|
+
style: styles.message
|
|
28
|
+
}, message), progressPercent !== undefined && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
29
|
+
style: styles.progressContainer
|
|
30
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
31
|
+
style: styles.progressBarBackground
|
|
32
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
33
|
+
style: [styles.progressBar, {
|
|
34
|
+
width: `${progressPercent}%`
|
|
35
|
+
}]
|
|
36
|
+
})), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
37
|
+
style: styles.progressText
|
|
38
|
+
}, progressPercent, "%")), eta && /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
|
|
39
|
+
style: styles.etaText
|
|
40
|
+
}, eta)));
|
|
41
|
+
};
|
|
42
|
+
exports.LoadingScreen = LoadingScreen;
|
|
43
|
+
const styles = _reactNative.StyleSheet.create({
|
|
44
|
+
container: {
|
|
45
|
+
flex: 1,
|
|
46
|
+
backgroundColor: '#fff',
|
|
47
|
+
justifyContent: 'center',
|
|
48
|
+
alignItems: 'center'
|
|
49
|
+
},
|
|
50
|
+
content: {
|
|
51
|
+
width: '80%',
|
|
52
|
+
alignItems: 'center',
|
|
53
|
+
padding: 24
|
|
54
|
+
},
|
|
55
|
+
spinner: {
|
|
56
|
+
marginBottom: 24
|
|
57
|
+
},
|
|
58
|
+
message: {
|
|
59
|
+
fontSize: 18,
|
|
60
|
+
fontWeight: '600',
|
|
61
|
+
color: '#000',
|
|
62
|
+
textAlign: 'center',
|
|
63
|
+
marginBottom: 24
|
|
64
|
+
},
|
|
65
|
+
progressContainer: {
|
|
66
|
+
width: '100%',
|
|
67
|
+
marginBottom: 8
|
|
68
|
+
},
|
|
69
|
+
progressBarBackground: {
|
|
70
|
+
height: 8,
|
|
71
|
+
backgroundColor: '#eee',
|
|
72
|
+
borderRadius: 4,
|
|
73
|
+
overflow: 'hidden',
|
|
74
|
+
marginBottom: 8
|
|
75
|
+
},
|
|
76
|
+
progressBar: {
|
|
77
|
+
height: '100%',
|
|
78
|
+
backgroundColor: _constants.COLORS.primary
|
|
79
|
+
},
|
|
80
|
+
progressText: {
|
|
81
|
+
fontSize: 14,
|
|
82
|
+
color: '#666',
|
|
83
|
+
textAlign: 'right'
|
|
84
|
+
},
|
|
85
|
+
etaText: {
|
|
86
|
+
fontSize: 14,
|
|
87
|
+
color: '#666',
|
|
88
|
+
marginTop: 8
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
//# sourceMappingURL=LoadingScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_constants","e","__esModule","default","LoadingScreen","message","progress","eta","progressPercent","Math","round","undefined","createElement","SafeAreaView","style","styles","container","View","content","ActivityIndicator","size","color","COLORS","primary","spinner","Text","progressContainer","progressBarBackground","progressBar","width","progressText","etaText","exports","StyleSheet","create","flex","backgroundColor","justifyContent","alignItems","padding","marginBottom","fontSize","fontWeight","textAlign","height","borderRadius","overflow","marginTop"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/screens/LoadingScreen.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PinCreationScreen = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _OnboardingHeader = require("../onboarding/OnboardingHeader");
|
|
10
|
+
var _PinInput = require("../onboarding/PinInput");
|
|
11
|
+
var _secureStorage = require("../../utils/secureStorage");
|
|
12
|
+
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); }
|
|
13
|
+
const PinCreationScreen = ({
|
|
14
|
+
onComplete,
|
|
15
|
+
onBack,
|
|
16
|
+
onClose,
|
|
17
|
+
AppName
|
|
18
|
+
}) => {
|
|
19
|
+
// Handle PIN submission
|
|
20
|
+
const handlePinSubmit = (0, _react.useCallback)(async pin => {
|
|
21
|
+
try {
|
|
22
|
+
// Get current credentials
|
|
23
|
+
const credentials = await (0, _secureStorage.getCredentials)();
|
|
24
|
+
if (!credentials) {
|
|
25
|
+
throw new Error('No credentials found');
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
// Update credentials with PIN
|
|
29
|
+
await (0, _secureStorage.updateCredentials)({
|
|
30
|
+
userPin: pin
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
// Move to next step
|
|
34
|
+
onComplete();
|
|
35
|
+
} catch (error) {
|
|
36
|
+
console.error('Error saving PIN:', error);
|
|
37
|
+
}
|
|
38
|
+
}, [onComplete]);
|
|
39
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
|
|
40
|
+
style: styles.container
|
|
41
|
+
}, /*#__PURE__*/_react.default.createElement(_OnboardingHeader.OnboardingHeader, {
|
|
42
|
+
title: "Create a PIN",
|
|
43
|
+
subtitle: `Secure your ${AppName} account`,
|
|
44
|
+
showBackButton: true,
|
|
45
|
+
onBack: onBack,
|
|
46
|
+
onClose: onClose
|
|
47
|
+
}), /*#__PURE__*/_react.default.createElement(_PinInput.PinInput, {
|
|
48
|
+
onSubmit: handlePinSubmit,
|
|
49
|
+
minLength: 8,
|
|
50
|
+
requireSpecialChar: true,
|
|
51
|
+
requireNumber: true
|
|
52
|
+
}));
|
|
53
|
+
};
|
|
54
|
+
exports.PinCreationScreen = PinCreationScreen;
|
|
55
|
+
const styles = _reactNative.StyleSheet.create({
|
|
56
|
+
container: {
|
|
57
|
+
flex: 1,
|
|
58
|
+
backgroundColor: '#fff'
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
//# sourceMappingURL=PinCreationScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_OnboardingHeader","_PinInput","_secureStorage","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","PinCreationScreen","onComplete","onBack","onClose","AppName","handlePinSubmit","useCallback","pin","credentials","getCredentials","Error","updateCredentials","userPin","error","console","createElement","SafeAreaView","style","styles","container","OnboardingHeader","title","subtitle","showBackButton","PinInput","onSubmit","minLength","requireSpecialChar","requireNumber","exports","StyleSheet","create","flex","backgroundColor"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/screens/PinCreationScreen.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.STORAGE_KEYS = exports.PLATFORMS = exports.PIN_REQUIREMENTS = exports.DEEP_LINK_CONFIG = exports.COLORS = exports.API_ENDPOINTS = void 0;
|
|
7
|
+
const COLORS = exports.COLORS = {
|
|
8
|
+
primary: '#00BFA5',
|
|
9
|
+
headerBg: '#E0F2F1',
|
|
10
|
+
text: {
|
|
11
|
+
primary: '#000000',
|
|
12
|
+
secondary: '#757575'
|
|
13
|
+
},
|
|
14
|
+
border: '#EEEEEE',
|
|
15
|
+
success: '#4CAF50',
|
|
16
|
+
error: '#F44336',
|
|
17
|
+
instagram: '#E4405F',
|
|
18
|
+
pinterest: '#BD081C',
|
|
19
|
+
reddit: '#FF4500',
|
|
20
|
+
youtube: '#FF0000'
|
|
21
|
+
};
|
|
22
|
+
const PLATFORMS = exports.PLATFORMS = {
|
|
23
|
+
instagram: {
|
|
24
|
+
name: 'Instagram',
|
|
25
|
+
icon: 'instagram',
|
|
26
|
+
color: COLORS.instagram,
|
|
27
|
+
description: 'Connect your Instagram account to train your AI model'
|
|
28
|
+
},
|
|
29
|
+
pinterest: {
|
|
30
|
+
name: 'Pinterest',
|
|
31
|
+
icon: 'pinterest',
|
|
32
|
+
color: COLORS.pinterest,
|
|
33
|
+
description: 'Use your Pinterest boards for AI training'
|
|
34
|
+
},
|
|
35
|
+
reddit: {
|
|
36
|
+
name: 'Reddit',
|
|
37
|
+
icon: 'reddit',
|
|
38
|
+
color: COLORS.reddit,
|
|
39
|
+
description: 'Connect Reddit to enhance your AI model'
|
|
40
|
+
},
|
|
41
|
+
youtube: {
|
|
42
|
+
name: 'YouTube',
|
|
43
|
+
icon: 'youtube',
|
|
44
|
+
color: COLORS.youtube,
|
|
45
|
+
description: 'Use YouTube data to improve AI recommendations'
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const API_ENDPOINTS = exports.API_ENDPOINTS = {
|
|
49
|
+
base: 'https://api2.onairos.uk',
|
|
50
|
+
oauth: {
|
|
51
|
+
instagram: '/instagram/auth',
|
|
52
|
+
pinterest: '/pinterest/auth',
|
|
53
|
+
reddit: '/reddit/auth',
|
|
54
|
+
youtube: '/youtube/auth'
|
|
55
|
+
},
|
|
56
|
+
callback: {
|
|
57
|
+
instagram: '/instagram/callback',
|
|
58
|
+
pinterest: '/pinterest/callback',
|
|
59
|
+
reddit: '/reddit/callback',
|
|
60
|
+
youtube: '/youtube/callback'
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
const STORAGE_KEYS = exports.STORAGE_KEYS = {
|
|
64
|
+
credentials: 'onairos_credentials',
|
|
65
|
+
connections: 'onairos_connections'
|
|
66
|
+
};
|
|
67
|
+
const PIN_REQUIREMENTS = exports.PIN_REQUIREMENTS = {
|
|
68
|
+
minLength: 8,
|
|
69
|
+
requireUppercase: true,
|
|
70
|
+
requireLowercase: true,
|
|
71
|
+
requireNumber: true,
|
|
72
|
+
requireSpecialChar: true
|
|
73
|
+
};
|
|
74
|
+
const DEEP_LINK_CONFIG = exports.DEEP_LINK_CONFIG = {
|
|
75
|
+
scheme: 'onairosreact',
|
|
76
|
+
host: 'authenticate'
|
|
77
|
+
};
|
|
78
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["COLORS","exports","primary","headerBg","text","secondary","border","success","error","instagram","pinterest","reddit","youtube","PLATFORMS","name","icon","color","description","API_ENDPOINTS","base","oauth","callback","STORAGE_KEYS","credentials","connections","PIN_REQUIREMENTS","minLength","requireUppercase","requireLowercase","requireNumber","requireSpecialChar","DEEP_LINK_CONFIG","scheme","host"],"sourceRoot":"..\\..\\..\\src","sources":["constants/index.ts"],"mappings":";;;;;;AAEO,MAAMA,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAG;EACpBE,OAAO,EAAE,SAAS;EAClBC,QAAQ,EAAE,SAAS;EACnBC,IAAI,EAAE;IACJF,OAAO,EAAE,SAAS;IAClBG,SAAS,EAAE;EACb,CAAC;EACDC,MAAM,EAAE,SAAS;EACjBC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,SAAS,EAAE,SAAS;EACpBC,SAAS,EAAE,SAAS;EACpBC,MAAM,EAAE,SAAS;EACjBC,OAAO,EAAE;AACX,CAAC;AAEM,MAAMC,SAAyC,GAAAZ,OAAA,CAAAY,SAAA,GAAG;EACvDJ,SAAS,EAAE;IACTK,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE,WAAW;IACjBC,KAAK,EAAEhB,MAAM,CAACS,SAAS;IACvBQ,WAAW,EAAE;EACf,CAAC;EACDP,SAAS,EAAE;IACTI,IAAI,EAAE,WAAW;IACjBC,IAAI,EAAE,WAAW;IACjBC,KAAK,EAAEhB,MAAM,CAACU,SAAS;IACvBO,WAAW,EAAE;EACf,CAAC;EACDN,MAAM,EAAE;IACNG,IAAI,EAAE,QAAQ;IACdC,IAAI,EAAE,QAAQ;IACdC,KAAK,EAAEhB,MAAM,CAACW,MAAM;IACpBM,WAAW,EAAE;EACf,CAAC;EACDL,OAAO,EAAE;IACPE,IAAI,EAAE,SAAS;IACfC,IAAI,EAAE,SAAS;IACfC,KAAK,EAAEhB,MAAM,CAACY,OAAO;IACrBK,WAAW,EAAE;EACf;AACF,CAAC;AAEM,MAAMC,aAAa,GAAAjB,OAAA,CAAAiB,aAAA,GAAG;EAC3BC,IAAI,EAAE,yBAAyB;EAC/BC,KAAK,EAAE;IACLX,SAAS,EAAE,iBAAiB;IAC5BC,SAAS,EAAE,iBAAiB;IAC5BC,MAAM,EAAE,cAAc;IACtBC,OAAO,EAAE;EACX,CAAC;EACDS,QAAQ,EAAE;IACRZ,SAAS,EAAE,qBAAqB;IAChCC,SAAS,EAAE,qBAAqB;IAChCC,MAAM,EAAE,kBAAkB;IAC1BC,OAAO,EAAE;EACX;AACF,CAAC;AAEM,MAAMU,YAAY,GAAArB,OAAA,CAAAqB,YAAA,GAAG;EAC1BC,WAAW,EAAE,qBAAqB;EAClCC,WAAW,EAAE;AACf,CAAC;AAEM,MAAMC,gBAAgB,GAAAxB,OAAA,CAAAwB,gBAAA,GAAG;EAC9BC,SAAS,EAAE,CAAC;EACZC,gBAAgB,EAAE,IAAI;EACtBC,gBAAgB,EAAE,IAAI;EACtBC,aAAa,EAAE,IAAI;EACnBC,kBAAkB,EAAE;AACtB,CAAC;AAEM,MAAMC,gBAAgB,GAAA9B,OAAA,CAAA8B,gBAAA,GAAG;EAC9BC,MAAM,EAAE,cAAc;EACtBC,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useConnections = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var Keychain = _interopRequireWildcard(require("react-native-keychain"));
|
|
10
|
+
var _constants = require("../constants");
|
|
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
|
+
const useConnections = () => {
|
|
13
|
+
const [isConnecting, setIsConnecting] = (0, _react.useState)(false);
|
|
14
|
+
const getConnectionStatus = (0, _react.useCallback)(async () => {
|
|
15
|
+
try {
|
|
16
|
+
const stored = await Keychain.getGenericPassword(_constants.STORAGE_KEYS.connections);
|
|
17
|
+
if (stored) {
|
|
18
|
+
return JSON.parse(stored.password);
|
|
19
|
+
}
|
|
20
|
+
return {};
|
|
21
|
+
} catch (error) {
|
|
22
|
+
console.error('Error getting connection status:', error);
|
|
23
|
+
return {};
|
|
24
|
+
}
|
|
25
|
+
}, []);
|
|
26
|
+
const saveConnectionStatus = (0, _react.useCallback)(async status => {
|
|
27
|
+
try {
|
|
28
|
+
await Keychain.setGenericPassword(_constants.STORAGE_KEYS.connections, JSON.stringify(status));
|
|
29
|
+
} catch (error) {
|
|
30
|
+
console.error('Error saving connection status:', error);
|
|
31
|
+
}
|
|
32
|
+
}, []);
|
|
33
|
+
const connectPlatform = (0, _react.useCallback)(async platform => {
|
|
34
|
+
setIsConnecting(true);
|
|
35
|
+
try {
|
|
36
|
+
// Get OAuth URL from API
|
|
37
|
+
const response = await fetch(`${_constants.API_ENDPOINTS.base}${_constants.API_ENDPOINTS.oauth[platform]}`);
|
|
38
|
+
const {
|
|
39
|
+
url
|
|
40
|
+
} = await response.json();
|
|
41
|
+
if (!url) {
|
|
42
|
+
throw new Error('No OAuth URL received');
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Open OAuth URL
|
|
46
|
+
await _reactNative.Linking.openURL(url);
|
|
47
|
+
|
|
48
|
+
// Connection status will be updated when the OAuth callback is received
|
|
49
|
+
// This is handled in the UniversalOnboarding component
|
|
50
|
+
} catch (error) {
|
|
51
|
+
console.error(`Error connecting to ${platform}:`, error);
|
|
52
|
+
throw error;
|
|
53
|
+
} finally {
|
|
54
|
+
setIsConnecting(false);
|
|
55
|
+
}
|
|
56
|
+
}, []);
|
|
57
|
+
const disconnectPlatform = (0, _react.useCallback)(async platform => {
|
|
58
|
+
try {
|
|
59
|
+
const status = await getConnectionStatus();
|
|
60
|
+
delete status[platform];
|
|
61
|
+
await saveConnectionStatus(status);
|
|
62
|
+
} catch (error) {
|
|
63
|
+
console.error(`Error disconnecting ${platform}:`, error);
|
|
64
|
+
throw error;
|
|
65
|
+
}
|
|
66
|
+
}, [getConnectionStatus, saveConnectionStatus]);
|
|
67
|
+
const handleOAuthCallback = (0, _react.useCallback)(async (platform, data) => {
|
|
68
|
+
try {
|
|
69
|
+
const status = await getConnectionStatus();
|
|
70
|
+
status[platform] = {
|
|
71
|
+
userName: data.userName
|
|
72
|
+
};
|
|
73
|
+
await saveConnectionStatus(status);
|
|
74
|
+
return true;
|
|
75
|
+
} catch (error) {
|
|
76
|
+
console.error('Error handling OAuth callback:', error);
|
|
77
|
+
return false;
|
|
78
|
+
}
|
|
79
|
+
}, [getConnectionStatus, saveConnectionStatus]);
|
|
80
|
+
return {
|
|
81
|
+
isConnecting,
|
|
82
|
+
connectPlatform,
|
|
83
|
+
disconnectPlatform,
|
|
84
|
+
getConnectionStatus,
|
|
85
|
+
handleOAuthCallback
|
|
86
|
+
};
|
|
87
|
+
};
|
|
88
|
+
exports.useConnections = useConnections;
|
|
89
|
+
//# sourceMappingURL=useConnections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","Keychain","_interopRequireWildcard","_constants","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useConnections","isConnecting","setIsConnecting","useState","getConnectionStatus","useCallback","stored","getGenericPassword","STORAGE_KEYS","connections","JSON","parse","password","error","console","saveConnectionStatus","status","setGenericPassword","stringify","connectPlatform","platform","response","fetch","API_ENDPOINTS","base","oauth","url","json","Error","Linking","openURL","disconnectPlatform","handleOAuthCallback","data","userName","exports"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useConnections.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useCredentials = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var Keychain = _interopRequireWildcard(require("react-native-keychain"));
|
|
9
|
+
var _constants = require("../constants");
|
|
10
|
+
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); }
|
|
11
|
+
const useCredentials = () => {
|
|
12
|
+
const hasCredentials = (0, _react.useCallback)(async () => {
|
|
13
|
+
try {
|
|
14
|
+
const credentials = await Keychain.getGenericPassword(_constants.STORAGE_KEYS.credentials);
|
|
15
|
+
return !!credentials;
|
|
16
|
+
} catch (error) {
|
|
17
|
+
console.error('Error checking credentials:', error);
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
}, []);
|
|
21
|
+
const getCredentials = (0, _react.useCallback)(async () => {
|
|
22
|
+
try {
|
|
23
|
+
const credentials = await Keychain.getGenericPassword(_constants.STORAGE_KEYS.credentials);
|
|
24
|
+
if (credentials) {
|
|
25
|
+
return JSON.parse(credentials.password);
|
|
26
|
+
}
|
|
27
|
+
return null;
|
|
28
|
+
} catch (error) {
|
|
29
|
+
console.error('Error getting credentials:', error);
|
|
30
|
+
return null;
|
|
31
|
+
}
|
|
32
|
+
}, []);
|
|
33
|
+
const storeCredentials = (0, _react.useCallback)(async (username, userPin, accessToken) => {
|
|
34
|
+
try {
|
|
35
|
+
await Keychain.setGenericPassword(_constants.STORAGE_KEYS.credentials, JSON.stringify({
|
|
36
|
+
username,
|
|
37
|
+
userPin,
|
|
38
|
+
accessToken
|
|
39
|
+
}));
|
|
40
|
+
return true;
|
|
41
|
+
} catch (error) {
|
|
42
|
+
console.error('Error storing credentials:', error);
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
}, []);
|
|
46
|
+
const clearCredentials = (0, _react.useCallback)(async () => {
|
|
47
|
+
try {
|
|
48
|
+
await Keychain.resetGenericPassword(_constants.STORAGE_KEYS.credentials);
|
|
49
|
+
} catch (error) {
|
|
50
|
+
console.error('Error clearing credentials:', error);
|
|
51
|
+
}
|
|
52
|
+
}, []);
|
|
53
|
+
const validateCredentials = (0, _react.useCallback)(async username => {
|
|
54
|
+
try {
|
|
55
|
+
const response = await fetch(`https://api2.onairos.uk/validate`, {
|
|
56
|
+
method: 'POST',
|
|
57
|
+
headers: {
|
|
58
|
+
'Content-Type': 'application/json'
|
|
59
|
+
},
|
|
60
|
+
body: JSON.stringify({
|
|
61
|
+
username
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
const data = await response.json();
|
|
65
|
+
return {
|
|
66
|
+
isValid: data.valid,
|
|
67
|
+
credentials: data.credentials
|
|
68
|
+
};
|
|
69
|
+
} catch (error) {
|
|
70
|
+
console.error('Error validating credentials:', error);
|
|
71
|
+
return {
|
|
72
|
+
isValid: false
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}, []);
|
|
76
|
+
return {
|
|
77
|
+
hasCredentials,
|
|
78
|
+
getCredentials,
|
|
79
|
+
storeCredentials,
|
|
80
|
+
clearCredentials,
|
|
81
|
+
validateCredentials
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
exports.useCredentials = useCredentials;
|
|
85
|
+
//# sourceMappingURL=useCredentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","Keychain","_interopRequireWildcard","_constants","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useCredentials","hasCredentials","useCallback","credentials","getGenericPassword","STORAGE_KEYS","error","console","getCredentials","JSON","parse","password","storeCredentials","username","userPin","accessToken","setGenericPassword","stringify","clearCredentials","resetGenericPassword","validateCredentials","response","fetch","method","headers","body","data","json","isValid","valid","exports"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/useCredentials.ts"],"mappings":"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","ignoreList":[]}
|