@onairos/react-native 3.0.65 → 3.0.66

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.
@@ -0,0 +1,329 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.DataRequestScreen = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _reactNative = require("react-native");
9
+ var _MaterialIcons = _interopRequireDefault(require("react-native-vector-icons/MaterialIcons"));
10
+ var _constants = require("../constants");
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const DataRequestScreen = ({
13
+ onAccept,
14
+ onDecline,
15
+ requestData,
16
+ AppName,
17
+ appIcon
18
+ }) => {
19
+ // Basic data requests that are always shown
20
+ const basicRequests = [{
21
+ key: 'basic_profile',
22
+ name: 'Basic Profile',
23
+ description: 'Your basic social media profile information',
24
+ reward: 'Personalized experience',
25
+ icon: 'person'
26
+ }, {
27
+ key: 'content_analysis',
28
+ name: 'Content Analysis',
29
+ description: 'Analysis of your posts and interactions',
30
+ reward: 'Better recommendations',
31
+ icon: 'analytics'
32
+ }];
33
+ const renderDataRequest = (data, key, isBasic = false) => {
34
+ let name, description, reward, icon;
35
+ if (isBasic) {
36
+ ({
37
+ name,
38
+ description,
39
+ reward,
40
+ icon
41
+ } = data);
42
+ } else {
43
+ // Handle new format (personality_traits, sentiment_analysis)
44
+ if ('name' in data && 'description' in data && 'reward' in data) {
45
+ name = data.name;
46
+ description = data.description;
47
+ reward = data.reward;
48
+ icon = key === 'personality_traits' ? 'psychology' : 'analytics';
49
+ } else if ('type' in data && 'descriptions' in data && 'reward' in data) {
50
+ // Handle old format (Small, Medium, Large)
51
+ name = `${key} - ${data.type}`;
52
+ description = data.descriptions;
53
+ reward = data.reward;
54
+ icon = 'data_usage';
55
+ } else {
56
+ return null;
57
+ }
58
+ }
59
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
60
+ key: key,
61
+ style: styles.dataRequestContainer
62
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
63
+ style: styles.dataRequestHeader
64
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
65
+ style: styles.iconContainer
66
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
67
+ name: icon,
68
+ size: 24,
69
+ color: _constants.COLORS.primary
70
+ })), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
71
+ style: styles.requestContent
72
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
73
+ style: styles.dataRequestName
74
+ }, name), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
75
+ style: styles.dataRequestDescription
76
+ }, description), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
77
+ style: styles.rewardContainer
78
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
79
+ name: "star",
80
+ size: 16,
81
+ color: "#FFD700"
82
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
83
+ style: styles.rewardText
84
+ }, reward)))));
85
+ };
86
+ const renderCustomRequests = () => {
87
+ return Object.entries(requestData).map(([key, data]) => {
88
+ // Skip if data is undefined or doesn't have the expected structure
89
+ if (!data || typeof data !== 'object') return null;
90
+ return renderDataRequest(data, key, false);
91
+ });
92
+ };
93
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
94
+ style: styles.container
95
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
96
+ style: styles.header
97
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
98
+ style: styles.titleContainer
99
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
100
+ style: styles.title
101
+ }, "Data Sharing Request"), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
102
+ style: styles.subtitle
103
+ }, AppName, " would like access to the following data")), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
104
+ style: styles.iconFlow
105
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
106
+ source: require('../assets/images/onairos_logo.png'),
107
+ style: styles.onairosIcon,
108
+ resizeMode: "contain"
109
+ }), /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
110
+ name: "arrow-forward",
111
+ size: 24,
112
+ color: "#666",
113
+ style: styles.arrowIcon
114
+ }), appIcon ? /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
115
+ source: appIcon,
116
+ style: styles.appIcon,
117
+ resizeMode: "contain"
118
+ }) : /*#__PURE__*/_react.default.createElement(_reactNative.View, {
119
+ style: styles.appIconPlaceholder
120
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
121
+ style: styles.appIconText
122
+ }, AppName.charAt(0).toUpperCase())))), /*#__PURE__*/_react.default.createElement(_reactNative.ScrollView, {
123
+ style: styles.content,
124
+ contentContainerStyle: styles.scrollContent,
125
+ showsVerticalScrollIndicator: false
126
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
127
+ style: styles.section
128
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
129
+ style: styles.sectionTitle
130
+ }, "Basic Data"), basicRequests.map(request => renderDataRequest(request, request.key, true))), Object.keys(requestData).length > 0 && /*#__PURE__*/_react.default.createElement(_reactNative.View, {
131
+ style: styles.section
132
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
133
+ style: styles.sectionTitle
134
+ }, "Additional Insights"), renderCustomRequests()), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
135
+ style: styles.privacyNote
136
+ }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
137
+ name: "security",
138
+ size: 20,
139
+ color: "#28a745"
140
+ }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
141
+ style: styles.privacyText
142
+ }, "Your data is encrypted and never shared with third parties"))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
143
+ style: styles.footer
144
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
145
+ style: styles.declineButton,
146
+ onPress: onDecline
147
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
148
+ style: styles.declineButtonText
149
+ }, "Decline")), /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
150
+ style: styles.acceptButton,
151
+ onPress: onAccept
152
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
153
+ style: styles.acceptButtonText
154
+ }, "Accept & Continue"))));
155
+ };
156
+ exports.DataRequestScreen = DataRequestScreen;
157
+ const styles = _reactNative.StyleSheet.create({
158
+ container: {
159
+ flex: 1,
160
+ backgroundColor: '#fff'
161
+ },
162
+ header: {
163
+ padding: 24,
164
+ paddingTop: 40,
165
+ backgroundColor: '#f8f9fa',
166
+ borderBottomWidth: 1,
167
+ borderBottomColor: '#e9ecef'
168
+ },
169
+ titleContainer: {
170
+ marginBottom: 20
171
+ },
172
+ title: {
173
+ fontSize: 24,
174
+ fontWeight: '600',
175
+ color: '#000',
176
+ textAlign: 'center',
177
+ marginBottom: 8
178
+ },
179
+ subtitle: {
180
+ fontSize: 16,
181
+ color: '#666',
182
+ textAlign: 'center'
183
+ },
184
+ iconFlow: {
185
+ flexDirection: 'row',
186
+ alignItems: 'center',
187
+ justifyContent: 'center'
188
+ },
189
+ onairosIcon: {
190
+ width: 32,
191
+ height: 32
192
+ },
193
+ arrowIcon: {
194
+ marginHorizontal: 12
195
+ },
196
+ appIcon: {
197
+ width: 32,
198
+ height: 32,
199
+ borderRadius: 8
200
+ },
201
+ appIconPlaceholder: {
202
+ width: 32,
203
+ height: 32,
204
+ borderRadius: 8,
205
+ backgroundColor: _constants.COLORS.primary,
206
+ alignItems: 'center',
207
+ justifyContent: 'center'
208
+ },
209
+ appIconText: {
210
+ color: '#fff',
211
+ fontSize: 16,
212
+ fontWeight: '600'
213
+ },
214
+ content: {
215
+ flex: 1
216
+ },
217
+ scrollContent: {
218
+ padding: 20
219
+ },
220
+ section: {
221
+ marginBottom: 24
222
+ },
223
+ sectionTitle: {
224
+ fontSize: 18,
225
+ fontWeight: '600',
226
+ color: '#000',
227
+ marginBottom: 16
228
+ },
229
+ dataRequestContainer: {
230
+ marginBottom: 16,
231
+ borderWidth: 1,
232
+ borderColor: '#e9ecef',
233
+ borderRadius: 12,
234
+ padding: 16,
235
+ backgroundColor: '#fff'
236
+ },
237
+ dataRequestHeader: {
238
+ flexDirection: 'row',
239
+ alignItems: 'flex-start'
240
+ },
241
+ iconContainer: {
242
+ width: 40,
243
+ height: 40,
244
+ borderRadius: 20,
245
+ backgroundColor: '#f0f8ff',
246
+ alignItems: 'center',
247
+ justifyContent: 'center',
248
+ marginRight: 12
249
+ },
250
+ requestContent: {
251
+ flex: 1
252
+ },
253
+ dataRequestName: {
254
+ fontSize: 16,
255
+ fontWeight: '600',
256
+ color: '#000',
257
+ marginBottom: 4
258
+ },
259
+ dataRequestDescription: {
260
+ fontSize: 14,
261
+ color: '#666',
262
+ lineHeight: 20,
263
+ marginBottom: 8
264
+ },
265
+ rewardContainer: {
266
+ flexDirection: 'row',
267
+ alignItems: 'center',
268
+ backgroundColor: '#fff3cd',
269
+ padding: 6,
270
+ borderRadius: 6,
271
+ alignSelf: 'flex-start'
272
+ },
273
+ rewardText: {
274
+ fontSize: 12,
275
+ fontWeight: '500',
276
+ marginLeft: 4,
277
+ color: '#856404'
278
+ },
279
+ privacyNote: {
280
+ flexDirection: 'row',
281
+ alignItems: 'center',
282
+ backgroundColor: '#d4edda',
283
+ padding: 12,
284
+ borderRadius: 8,
285
+ marginTop: 8
286
+ },
287
+ privacyText: {
288
+ fontSize: 14,
289
+ color: '#155724',
290
+ marginLeft: 8,
291
+ flex: 1
292
+ },
293
+ footer: {
294
+ flexDirection: 'row',
295
+ padding: 20,
296
+ borderTopWidth: 1,
297
+ borderTopColor: '#e9ecef',
298
+ backgroundColor: '#fff'
299
+ },
300
+ declineButton: {
301
+ flex: 1,
302
+ paddingVertical: 16,
303
+ paddingHorizontal: 24,
304
+ borderRadius: 12,
305
+ borderWidth: 1,
306
+ borderColor: '#dc3545',
307
+ marginRight: 12,
308
+ alignItems: 'center'
309
+ },
310
+ declineButtonText: {
311
+ fontSize: 16,
312
+ fontWeight: '600',
313
+ color: '#dc3545'
314
+ },
315
+ acceptButton: {
316
+ flex: 2,
317
+ paddingVertical: 16,
318
+ paddingHorizontal: 24,
319
+ borderRadius: 12,
320
+ backgroundColor: '#28a745',
321
+ alignItems: 'center'
322
+ },
323
+ acceptButtonText: {
324
+ fontSize: 16,
325
+ fontWeight: '600',
326
+ color: '#fff'
327
+ }
328
+ });
329
+ //# sourceMappingURL=DataRequestScreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_MaterialIcons","_constants","e","__esModule","default","DataRequestScreen","onAccept","onDecline","requestData","AppName","appIcon","basicRequests","key","name","description","reward","icon","renderDataRequest","data","isBasic","type","descriptions","createElement","View","style","styles","dataRequestContainer","dataRequestHeader","iconContainer","size","color","COLORS","primary","requestContent","Text","dataRequestName","dataRequestDescription","rewardContainer","rewardText","renderCustomRequests","Object","entries","map","container","header","titleContainer","title","subtitle","iconFlow","Image","source","onairosIcon","resizeMode","arrowIcon","appIconPlaceholder","appIconText","charAt","toUpperCase","ScrollView","content","contentContainerStyle","scrollContent","showsVerticalScrollIndicator","section","sectionTitle","request","keys","length","privacyNote","privacyText","footer","TouchableOpacity","declineButton","onPress","declineButtonText","acceptButton","acceptButtonText","exports","StyleSheet","create","flex","backgroundColor","padding","paddingTop","borderBottomWidth","borderBottomColor","marginBottom","fontSize","fontWeight","textAlign","flexDirection","alignItems","justifyContent","width","height","marginHorizontal","borderRadius","borderWidth","borderColor","marginRight","lineHeight","alignSelf","marginLeft","marginTop","borderTopWidth","borderTopColor","paddingVertical","paddingHorizontal"],"sourceRoot":"..\\..\\..\\src","sources":["components/DataRequestScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,7 @@ var _reactNative = require("react-native");
9
9
  var _MaterialIcons = _interopRequireDefault(require("react-native-vector-icons/MaterialIcons"));
10
10
  var _PinInput = require("./PinInput");
11
11
  var _TrainingModal = require("./TrainingModal");
12
- var _DataRequestModal = require("./DataRequestModal");
12
+ var _DataRequestScreen = require("./DataRequestScreen");
13
13
  var _OAuthWebView = require("./onboarding/OAuthWebView");
14
14
  var _useConnections = require("../hooks/useConnections");
15
15
  var _constants = require("../constants");
@@ -67,7 +67,6 @@ const UniversalOnboarding = ({
67
67
  const [email, setEmail] = (0, _react.useState)('');
68
68
  const [verificationCode, setVerificationCode] = (0, _react.useState)('');
69
69
  const [isVerifyingCode, setIsVerifyingCode] = (0, _react.useState)(false);
70
- const [showDataRequestModal, setShowDataRequestModal] = (0, _react.useState)(false);
71
70
  const [isExistingUser, setIsExistingUser] = (0, _react.useState)(false);
72
71
 
73
72
  // Add refs for cleanup and code inputs
@@ -77,7 +76,6 @@ const UniversalOnboarding = ({
77
76
 
78
77
  // Add state for showing additional platforms
79
78
  const [showAllPlatforms, setShowAllPlatforms] = (0, _react.useState)(false);
80
- const [showTestDataRequest, setShowTestDataRequest] = (0, _react.useState)(false);
81
79
 
82
80
  // Parse test mode options
83
81
  const testModeOptions = typeof test === 'object' ? test : {};
@@ -583,7 +581,7 @@ const UniversalOnboarding = ({
583
581
  // Flow 1: Existing User → Data Request → Close (return API URL)
584
582
  console.log('🧪 Test Flow 1: Existing User → Show Data Request');
585
583
  setIsExistingUser(true);
586
- setShowDataRequestModal(true);
584
+ setStep('dataRequest');
587
585
  return;
588
586
  } else if (isNewUserFlow) {
589
587
  // Flow 2: New User → Platform Connect → PIN → Training
@@ -604,8 +602,8 @@ const UniversalOnboarding = ({
604
602
  const existingUser = result.existingUser || false;
605
603
  setIsExistingUser(existingUser);
606
604
  if (existingUser) {
607
- console.log('👤 Existing user detected, showing data request modal');
608
- setShowDataRequestModal(true);
605
+ console.log('👤 Existing user detected, showing data request screen');
606
+ setStep('dataRequest');
609
607
  } else {
610
608
  console.log('🆕 New user, proceeding to platform connection');
611
609
  // Safely set username from email prefix
@@ -697,7 +695,6 @@ const UniversalOnboarding = ({
697
695
  }, [pin, connections, platformToggles, selectedTier, requestData, auto, inferenceData, partner, handleClose, onComplete]);
698
696
  const handleDataRequestAccept = (0, _react.useCallback)(() => {
699
697
  console.log('Data request accepted for existing user');
700
- setShowDataRequestModal(false);
701
698
 
702
699
  // Complete onboarding for existing user
703
700
  onComplete('https://api2.onairos.uk', 'existing-session-token', {
@@ -709,7 +706,6 @@ const UniversalOnboarding = ({
709
706
  }, [email, onComplete, requestData]);
710
707
  const handleDataRequestDecline = (0, _react.useCallback)(() => {
711
708
  console.log('Data request declined');
712
- setShowDataRequestModal(false);
713
709
  handleClose();
714
710
  }, [handleClose]);
715
711
  const canProceedToPin = (0, _react.useCallback)(() => {
@@ -948,7 +944,7 @@ const UniversalOnboarding = ({
948
944
  onPress: () => {
949
945
  // Flow 1: Existing User
950
946
  setIsExistingUser(true);
951
- setShowDataRequestModal(true);
947
+ setStep('dataRequest');
952
948
  }
953
949
  }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
954
950
  name: "person",
@@ -970,14 +966,14 @@ const UniversalOnboarding = ({
970
966
  style: styles.testSkipToTrainingButtonText
971
967
  }, "Flow 2: New User (Connect \u2192 PIN \u2192 Training)")), /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
972
968
  style: styles.testDataRequestButton,
973
- onPress: () => setShowTestDataRequest(true)
969
+ onPress: () => setStep('dataRequest')
974
970
  }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
975
971
  name: "preview",
976
972
  size: 20,
977
973
  color: _constants.COLORS.primary
978
974
  }), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
979
975
  style: styles.testDataRequestButtonText
980
- }, "Preview Data Request Modal")))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
976
+ }, "Preview Data Request Screen")))), /*#__PURE__*/_react.default.createElement(_reactNative.View, {
981
977
  style: styles.footer
982
978
  }, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
983
979
  style: styles.footerButtonCancel,
@@ -1030,6 +1026,12 @@ const UniversalOnboarding = ({
1030
1026
  modelKey: "onairosTrainingModel",
1031
1027
  username: username,
1032
1028
  test: isTestMode
1029
+ }), step === 'dataRequest' && /*#__PURE__*/_react.default.createElement(_DataRequestScreen.DataRequestScreen, {
1030
+ onAccept: handleDataRequestAccept,
1031
+ onDecline: handleDataRequestDecline,
1032
+ requestData: requestData || {},
1033
+ AppName: AppName,
1034
+ appIcon: appIcon
1033
1035
  }), step === 'oauth' && oauthUrl && /*#__PURE__*/_react.default.createElement(_OAuthWebView.OAuthWebView, {
1034
1036
  url: oauthUrl,
1035
1037
  platform: currentPlatform,
@@ -1039,22 +1041,7 @@ const UniversalOnboarding = ({
1039
1041
  },
1040
1042
  onSuccess: handleOAuthSuccess,
1041
1043
  onComplete: () => setStep('connect')
1042
- })))))), showDataRequestModal && requestData && /*#__PURE__*/_react.default.createElement(_DataRequestModal.DataRequestModal, {
1043
- visible: showDataRequestModal,
1044
- onClose: handleDataRequestDecline,
1045
- onAccept: handleDataRequestAccept,
1046
- requestData: requestData,
1047
- AppName: AppName
1048
- }), showTestDataRequest && requestData && /*#__PURE__*/_react.default.createElement(_DataRequestModal.DataRequestModal, {
1049
- visible: showTestDataRequest,
1050
- onClose: () => setShowTestDataRequest(false),
1051
- onAccept: () => {
1052
- setShowTestDataRequest(false);
1053
- _reactNative.Alert.alert('Test Mode', 'This is a preview of the data request. In actual implementation, this would proceed with the data sharing agreement.');
1054
- },
1055
- requestData: requestData,
1056
- AppName: `${AppName} (Test Preview)`
1057
- }));
1044
+ })))))));
1058
1045
  };
1059
1046
  exports.UniversalOnboarding = UniversalOnboarding;
1060
1047
  const styles = _reactNative.StyleSheet.create({