@onairos/react-native 3.0.63 → 3.0.65

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.
@@ -1 +1 @@
1
- {"version":3,"file":"TrainingModal.d.ts","sourceRoot":"","sources":["../../../src/components/TrainingModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAiB3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyPtD,CAAC"}
1
+ {"version":3,"file":"TrainingModal.d.ts","sourceRoot":"","sources":["../../../src/components/TrainingModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAiB3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA+StD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"UniversalOnboarding.d.ts","sourceRoot":"","sources":["../../../src/components/UniversalOnboarding.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AA6BxE,OAAO,KAAK,EAAE,wBAAwB,EAAoB,MAAM,UAAU,CAAC;AAmB3E,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAs/BlE,CAAC"}
1
+ {"version":3,"file":"UniversalOnboarding.d.ts","sourceRoot":"","sources":["../../../src/components/UniversalOnboarding.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AA6BxE,OAAO,KAAK,EAAE,wBAAwB,EAAqC,MAAM,UAAU,CAAC;AAmB5F,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CA2nClE,CAAC"}
@@ -31,6 +31,12 @@ export interface OnairosButtonProps {
31
31
  testMode?: boolean;
32
32
  darkMode?: boolean;
33
33
  }
34
+ export interface TestModeOptions {
35
+ existingUser?: boolean;
36
+ newUser?: boolean;
37
+ fastTraining?: boolean;
38
+ skipRealConnections?: boolean;
39
+ }
34
40
  export interface UniversalOnboardingProps {
35
41
  visible: boolean;
36
42
  onClose: () => void;
@@ -46,7 +52,7 @@ export interface UniversalOnboardingProps {
46
52
  onComplete: (apiUrl: string, token: string, userData: any) => void;
47
53
  preferredPlatform?: string;
48
54
  debug?: boolean;
49
- test?: boolean;
55
+ test?: boolean | TestModeOptions;
50
56
  embedd?: boolean;
51
57
  }
52
58
  export interface ConnectionStatus {
@@ -77,6 +83,7 @@ export interface TrainingModalProps {
77
83
  onComplete?: () => void;
78
84
  modelKey?: string;
79
85
  username?: string;
86
+ test?: boolean;
80
87
  }
81
88
  export interface OAuthWebViewProps {
82
89
  url: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,12 @@ export interface DataRequest {
8
8
  description: string;
9
9
  reward: string;
10
10
  }
11
+ export interface TestModeOptions {
12
+ existingUser?: boolean;
13
+ newUser?: boolean;
14
+ fastTraining?: boolean;
15
+ skipRealConnections?: boolean;
16
+ }
11
17
  export interface UniversalOnboardingProps {
12
18
  visible: boolean;
13
19
  onClose: () => void;
@@ -25,7 +31,7 @@ export interface UniversalOnboardingProps {
25
31
  onComplete: (apiUrl: string, token: string, data: any) => void;
26
32
  embedd?: boolean;
27
33
  debug?: boolean;
28
- test?: boolean;
34
+ test?: boolean | TestModeOptions;
29
35
  buttonType?: 'default' | 'pill';
30
36
  buttonForm?: 'signup' | 'login';
31
37
  preferredPlatform?: string;
@@ -109,6 +115,7 @@ export interface TrainingModalProps {
109
115
  onComplete?: () => void;
110
116
  modelKey?: string;
111
117
  username?: string;
118
+ test?: boolean;
112
119
  }
113
120
  export interface OAuthWebViewProps {
114
121
  url: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAE9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,WAAW,EAAE;QAEX,KAAK,CAAC,EAAE,QAAQ,CAAC;QACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;QAClB,KAAK,CAAC,EAAE,QAAQ,CAAC;QAEjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;QACjC,kBAAkB,CAAC,EAAE,WAAW,CAAC;QACjC,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;KACnD,CAAC;IACF,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,GAAG,eAAe,CAAC;IACjC,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC;QACnB,WAAW,CAAC,EAAE,GAAG,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,UAAU,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE;QAEZ,KAAK,CAAC,EAAE,QAAQ,CAAC;QACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;QAClB,KAAK,CAAC,EAAE,QAAQ,CAAC;QAEjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;QACjC,kBAAkB,CAAC,EAAE,WAAW,CAAC;QACjC,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;KACnD,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IACxD,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,IAAI,CAAC;IACpE,QAAQ,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACxD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE;QAEJ,KAAK,CAAC,EAAE,QAAQ,CAAC;QACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;QAClB,KAAK,CAAC,EAAE,QAAQ,CAAC;QAEjB,kBAAkB,CAAC,EAAE,WAAW,CAAC;QACjC,kBAAkB,CAAC,EAAE,WAAW,CAAC;QACjC,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;KACnD,CAAC;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,IAAI,CAAC;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,GAAG,CAAA;KAAC,CAAC,CAAC;CAC1D;AAED,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;CAC7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onairos/react-native",
3
- "version": "3.0.63",
3
+ "version": "3.0.65",
4
4
  "description": "Onairos React Native SDK for social media authentication and AI model training",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -27,6 +27,7 @@ export const TrainingModal: React.FC<TrainingModalProps> = ({
27
27
  onComplete,
28
28
  modelKey,
29
29
  username,
30
+ test = false,
30
31
  }) => {
31
32
  // Socket and training state
32
33
  const socketRef = useRef<Socket | null>(null);
@@ -106,6 +107,50 @@ export const TrainingModal: React.FC<TrainingModalProps> = ({
106
107
  setHasError(true);
107
108
  }
108
109
  };
110
+
111
+ // Simulate training progress for test mode
112
+ const simulateTraining = () => {
113
+ console.log('🧪 Starting simulated training...');
114
+ setTrainingStatus('Initializing training...');
115
+ setInternalProgress(10);
116
+
117
+ // Fast training for test mode (shorter delays)
118
+ const baseDelay = 800;
119
+ const stages = [
120
+ { progress: 20, status: 'Analyzing data patterns...', delay: baseDelay },
121
+ { progress: 35, status: 'Building neural network...', delay: baseDelay },
122
+ { progress: 50, status: 'Training model...', delay: baseDelay },
123
+ { progress: 65, status: 'Optimizing parameters...', delay: baseDelay },
124
+ { progress: 80, status: 'Running test inference...', delay: baseDelay },
125
+ { progress: 95, status: 'Finalizing model...', delay: baseDelay },
126
+ { progress: 100, status: 'Complete!', delay: 300 },
127
+ ];
128
+
129
+ let currentStage = 0;
130
+
131
+ const progressInterval = setInterval(() => {
132
+ if (currentStage < stages.length) {
133
+ const stage = stages[currentStage];
134
+ setInternalProgress(stage.progress);
135
+ setTrainingStatus(stage.status);
136
+
137
+ if (stage.progress === 100) {
138
+ setIsTrainingComplete(true);
139
+ clearInterval(progressInterval);
140
+
141
+ // Auto-complete after a short delay
142
+ setTimeout(() => {
143
+ onComplete && onComplete();
144
+ }, 800);
145
+ }
146
+
147
+ currentStage++;
148
+ }
149
+ }, stages[currentStage]?.delay || baseDelay);
150
+
151
+ // Cleanup interval on unmount
152
+ return () => clearInterval(progressInterval);
153
+ };
109
154
 
110
155
  // Setup socket connection and training
111
156
  useEffect(() => {
@@ -113,6 +158,15 @@ export const TrainingModal: React.FC<TrainingModalProps> = ({
113
158
 
114
159
  console.log('Setting up socket connection for training...');
115
160
  console.log('🧑‍💻 User info available:', userInfo);
161
+ console.log('🧪 Test mode:', test);
162
+
163
+ // If test mode is enabled, use simulation instead of real API
164
+ if (test) {
165
+ console.log('🧪 Test mode enabled - Using simulated training');
166
+ setSocketConnected(true);
167
+ simulateTraining();
168
+ return;
169
+ }
116
170
 
117
171
  // Initialize real socket connection - backend confirmed this is working
118
172
  try {
@@ -159,7 +213,7 @@ export const TrainingModal: React.FC<TrainingModalProps> = ({
159
213
 
160
214
  // Auto-complete after a short delay
161
215
  setTimeout(() => {
162
- onComplete();
216
+ onComplete && onComplete();
163
217
  }, 1500);
164
218
  });
165
219
 
@@ -180,8 +234,8 @@ export const TrainingModal: React.FC<TrainingModalProps> = ({
180
234
  console.error('Socket connection failed, falling back to simulation:', socketError);
181
235
  // Fallback to simulation if socket fails
182
236
  console.log('🔌 Falling back to simulated socket connection...');
183
- setSocketConnected(true);
184
- startEnochTraining('simulated-socket-id');
237
+ setSocketConnected(true);
238
+ simulateTraining();
185
239
  }
186
240
 
187
241
  // Cleanup function
@@ -192,7 +246,7 @@ export const TrainingModal: React.FC<TrainingModalProps> = ({
192
246
  socketRef.current = null;
193
247
  }
194
248
  };
195
- }, [visible, userInfo]);
249
+ }, [visible, userInfo, test]);
196
250
 
197
251
  return (
198
252
  <Modal
@@ -27,7 +27,7 @@ import { OAuthWebView } from './onboarding/OAuthWebView';
27
27
  import { useConnections } from '../hooks/useConnections';
28
28
  import { COLORS, DEEP_LINK_CONFIG } from '../constants';
29
29
  import { initiateOAuth, initiateNativeAuth, hasNativeSDK, isOAuthCallback, testApiConnectivity, handleOAuthCallbackUrl, refreshYouTubeTokens, requestEmailVerification, verifyEmailCode, checkEmailVerificationStatus, disconnectPlatform } from '../services/platformAuthService';
30
- import type { UniversalOnboardingProps, ConnectionStatus } from '../types';
30
+ import type { UniversalOnboardingProps, ConnectionStatus, TestModeOptions } from '../types';
31
31
 
32
32
  // Optional Opacity SDK imports with error handling
33
33
  let opacityInit: any = null;
@@ -83,18 +83,39 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
83
83
  const [showDataRequestModal, setShowDataRequestModal] = useState<boolean>(false);
84
84
  const [isExistingUser, setIsExistingUser] = useState<boolean>(false);
85
85
 
86
- // Add refs for cleanup
86
+ // Add refs for cleanup and code inputs
87
87
  const successTimeoutRef = useRef<ReturnType<typeof setTimeout> | null>(null);
88
88
  const isMountedRef = useRef<boolean>(true);
89
+ const codeInputRefs = useRef<Array<TextInput | null>>([]);
90
+
91
+ // Add state for showing additional platforms
92
+ const [showAllPlatforms, setShowAllPlatforms] = useState<boolean>(false);
93
+ const [showTestDataRequest, setShowTestDataRequest] = useState<boolean>(false);
94
+
95
+ // Parse test mode options
96
+ const testModeOptions = typeof test === 'object' ? test : {};
97
+ const isTestMode = test === true || (typeof test === 'object' && test !== null);
98
+ const showTestControls = (debug || isTestMode) && requestData;
99
+
100
+ // Simple 2-flow system
101
+ const isExistingUserFlow = testModeOptions.existingUser || false;
102
+ const isNewUserFlow = testModeOptions.newUser || false;
89
103
 
90
104
  const platforms = [
91
105
  { id: 'instagram', name: 'Instagram', icon: require('../assets/images/instagram.png') },
92
106
  { id: 'youtube', name: 'YouTube', icon: require('../assets/images/youtube.png') },
107
+ { id: 'email', name: 'Gmail', icon: require('../assets/images/email.png') },
93
108
  { id: 'reddit', name: 'Reddit', icon: require('../assets/images/reddit.png') },
94
109
  { id: 'pinterest', name: 'Pinterest', icon: require('../assets/images/pinterest.png') },
95
- { id: 'email', name: 'Gmail', icon: require('../assets/images/email.png') },
96
110
  ];
97
111
 
112
+ // Define primary platforms (shown by default)
113
+ const primaryPlatforms = platforms.slice(0, 3); // Instagram, YouTube, Gmail
114
+ const additionalPlatforms = platforms.slice(3); // Reddit, Pinterest
115
+
116
+ // Get platforms to display based on showAllPlatforms state
117
+ const platformsToDisplay = showAllPlatforms ? platforms : primaryPlatforms;
118
+
98
119
  const {
99
120
  connectPlatform,
100
121
  disconnectPlatform,
@@ -569,21 +590,41 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
569
590
  throw new Error('Email verification service not available');
570
591
  }
571
592
 
593
+ // Test Mode: Use specific flows
594
+ if (isTestMode) {
595
+ console.log('🧪 Test mode verification - simulating success');
596
+
597
+ if (isExistingUserFlow) {
598
+ // Flow 1: Existing User → Data Request → Close (return API URL)
599
+ console.log('🧪 Test Flow 1: Existing User → Show Data Request');
600
+ setIsExistingUser(true);
601
+ setShowDataRequestModal(true);
602
+ return;
603
+ } else if (isNewUserFlow) {
604
+ // Flow 2: New User → Platform Connect → PIN → Training
605
+ console.log('🧪 Test Flow 2: New User → Platform Connect');
606
+ const emailPrefix = email.trim().split('@')[0] || 'TestUser';
607
+ setUsername(emailPrefix);
608
+ setStep('connect');
609
+ return;
610
+ }
611
+ }
612
+
613
+ // Real API call (production)
572
614
  const result = await verifyEmailCode(email.trim(), verificationCode.trim());
573
615
 
574
616
  if (result.success) {
575
617
  console.log('✅ Email verification successful');
576
618
 
577
- // For now, always treat as new users for testing (can be updated later)
578
- // In production, this would check if user exists in database
579
- const existingUser = false; // TODO: Check backend for existing user
619
+ // Check if user exists in backend
620
+ const existingUser = (result as any).existingUser || false;
580
621
  setIsExistingUser(existingUser);
581
622
 
582
623
  if (existingUser) {
583
- console.log('Existing user detected, showing data request modal');
624
+ console.log('👤 Existing user detected, showing data request modal');
584
625
  setShowDataRequestModal(true);
585
626
  } else {
586
- console.log('New user, proceeding to platform connection');
627
+ console.log('🆕 New user, proceeding to platform connection');
587
628
  // Safely set username from email prefix
588
629
  try {
589
630
  const emailPrefix = email.trim().split('@')[0];
@@ -692,23 +733,23 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
692
733
  }, [handleClose]);
693
734
 
694
735
  const canProceedToPin = useCallback(() => {
695
- // For testing, allow proceeding without any platforms connected
696
- if (debug || test) {
697
- console.log('🧪 Testing mode: Allowing proceed without platform connections');
736
+ // Test mode: Always allow proceeding (simulates platform connections)
737
+ if (isTestMode || testModeOptions.skipRealConnections) {
738
+ console.log('🧪 Test mode: Allowing proceed without real platform connections');
698
739
  return true;
699
740
  }
700
741
 
701
- // Check if at least one platform is toggled on
742
+ // Production: Check if at least one platform is connected
702
743
  const hasPlatformConnected = Object.values(platformToggles).some(value => value === true);
703
744
 
704
- // If auto mode is enabled and partner is not "couplebible", require inferenceData
745
+ // Auto mode validation
705
746
  if (auto && partner !== 'couplebible' && !inferenceData) {
706
747
  console.warn('Auto mode enabled but no inference data provided (and partner is not couplebible)');
707
748
  return false;
708
749
  }
709
750
 
710
751
  return hasPlatformConnected;
711
- }, [platformToggles, auto, partner, inferenceData, debug, test]);
752
+ }, [platformToggles, auto, partner, inferenceData, isTestMode, testModeOptions]);
712
753
 
713
754
  const handleProceed = () => {
714
755
  console.log('Proceeding to next step');
@@ -815,6 +856,7 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
815
856
  {[0, 1, 2, 3, 4, 5].map((index) => (
816
857
  <TextInput
817
858
  key={index}
859
+ ref={(ref) => (codeInputRefs.current[index] = ref)}
818
860
  style={[
819
861
  styles.codeDigit,
820
862
  verificationCode.length === index && styles.codeDigitActive
@@ -829,10 +871,16 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
829
871
 
830
872
  // Auto-focus next input
831
873
  if (text && index < 5) {
832
- // Focus next input (would need refs for actual implementation)
874
+ codeInputRefs.current[index + 1]?.focus();
833
875
  }
834
876
  }
835
877
  }}
878
+ onKeyPress={({ nativeEvent }) => {
879
+ // Handle backspace to move to previous input
880
+ if (nativeEvent.key === 'Backspace' && !verificationCode[index] && index > 0) {
881
+ codeInputRefs.current[index - 1]?.focus();
882
+ }
883
+ }}
836
884
  keyboardType="number-pad"
837
885
  maxLength={1}
838
886
  textAlign="center"
@@ -914,11 +962,16 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
914
962
  <Text style={styles.privacyMessage}>
915
963
  None of your app data is shared with ANYONE
916
964
  </Text>
965
+ {(debug || test) && (
966
+ <Text style={styles.developmentNote}>
967
+ 🧪 Test Mode: You can proceed without connecting any platforms
968
+ </Text>
969
+ )}
917
970
  </View>
918
971
 
919
972
  {/* Platform connection options */}
920
973
  <View style={styles.platformsContainer}>
921
- {platforms.map((platform) => (
974
+ {platformsToDisplay.map((platform) => (
922
975
  <TouchableOpacity
923
976
  key={platform.id}
924
977
  style={styles.platformItem}
@@ -943,14 +996,79 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
943
996
  styles.platformToggle,
944
997
  platformToggles[platform.id] && styles.platformToggleActive
945
998
  ]}>
946
- {platformToggles[platform.id] && (
947
- <Icon name="check" size={16} color="#fff" />
948
- )}
999
+ <View style={[
1000
+ styles.platformToggleThumb,
1001
+ platformToggles[platform.id] && styles.platformToggleThumbActive
1002
+ ]} />
949
1003
  </View>
950
1004
  )}
951
1005
  </TouchableOpacity>
952
1006
  ))}
1007
+
1008
+ {/* Show more/less platforms button */}
1009
+ {additionalPlatforms.length > 0 && (
1010
+ <TouchableOpacity
1011
+ style={styles.expandButton}
1012
+ onPress={() => setShowAllPlatforms(!showAllPlatforms)}
1013
+ >
1014
+ <Icon
1015
+ name={showAllPlatforms ? "expand_less" : "add"}
1016
+ size={24}
1017
+ color={COLORS.primary}
1018
+ />
1019
+ <Text style={styles.expandButtonText}>
1020
+ {showAllPlatforms
1021
+ ? "Show Less"
1022
+ : `${additionalPlatforms.length} More Connectors`
1023
+ }
1024
+ </Text>
1025
+ </TouchableOpacity>
1026
+ )}
953
1027
  </View>
1028
+
1029
+ {/* Test mode controls - Simple 2-flow system */}
1030
+ {showTestControls && (
1031
+ <View style={styles.testModeContainer}>
1032
+ <Text style={styles.testModeTitle}>🧪 Test Mode - 2 Main Flows</Text>
1033
+
1034
+ <TouchableOpacity
1035
+ style={styles.testExistingUserButton}
1036
+ onPress={() => {
1037
+ // Flow 1: Existing User
1038
+ setIsExistingUser(true);
1039
+ setShowDataRequestModal(true);
1040
+ }}
1041
+ >
1042
+ <Icon name="person" size={20} color="#28a745" />
1043
+ <Text style={styles.testExistingUserButtonText}>
1044
+ Flow 1: Existing User (Email → Code → Data Request → Close)
1045
+ </Text>
1046
+ </TouchableOpacity>
1047
+
1048
+ <TouchableOpacity
1049
+ style={styles.testSkipToTrainingButton}
1050
+ onPress={() => {
1051
+ // Flow 2: New User - Skip to connect step
1052
+ setStep('connect');
1053
+ }}
1054
+ >
1055
+ <Icon name="person-add" size={20} color="#17a2b8" />
1056
+ <Text style={styles.testSkipToTrainingButtonText}>
1057
+ Flow 2: New User (Connect → PIN → Training)
1058
+ </Text>
1059
+ </TouchableOpacity>
1060
+
1061
+ <TouchableOpacity
1062
+ style={styles.testDataRequestButton}
1063
+ onPress={() => setShowTestDataRequest(true)}
1064
+ >
1065
+ <Icon name="preview" size={20} color={COLORS.primary} />
1066
+ <Text style={styles.testDataRequestButtonText}>
1067
+ Preview Data Request Modal
1068
+ </Text>
1069
+ </TouchableOpacity>
1070
+ </View>
1071
+ )}
954
1072
  </ScrollView>
955
1073
 
956
1074
  <View style={styles.footer}>
@@ -1024,6 +1142,7 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
1024
1142
  onComplete={handleTrainingComplete}
1025
1143
  modelKey="onairosTrainingModel"
1026
1144
  username={username}
1145
+ test={isTestMode}
1027
1146
  />
1028
1147
  )}
1029
1148
 
@@ -1058,6 +1177,20 @@ export const UniversalOnboarding: React.FC<UniversalOnboardingProps> = ({
1058
1177
  AppName={AppName}
1059
1178
  />
1060
1179
  )}
1180
+
1181
+ {/* Test mode data request modal */}
1182
+ {showTestDataRequest && requestData && (
1183
+ <DataRequestModal
1184
+ visible={showTestDataRequest}
1185
+ onClose={() => setShowTestDataRequest(false)}
1186
+ onAccept={() => {
1187
+ setShowTestDataRequest(false);
1188
+ Alert.alert('Test Mode', 'This is a preview of the data request. In actual implementation, this would proceed with the data sharing agreement.');
1189
+ }}
1190
+ requestData={requestData}
1191
+ AppName={`${AppName} (Test Preview)`}
1192
+ />
1193
+ )}
1061
1194
  </Modal>
1062
1195
  );
1063
1196
  };
@@ -1266,18 +1399,32 @@ const styles = StyleSheet.create({
1266
1399
  color: '#666',
1267
1400
  },
1268
1401
  platformToggle: {
1269
- width: 24,
1270
- height: 24,
1271
- borderRadius: 12,
1402
+ width: 50,
1403
+ height: 28,
1404
+ borderRadius: 14,
1272
1405
  borderWidth: 1,
1273
- borderColor: '#ccc',
1274
- alignItems: 'center',
1406
+ borderColor: '#ddd',
1407
+ backgroundColor: '#f0f0f0',
1275
1408
  justifyContent: 'center',
1276
- backgroundColor: '#fff',
1409
+ paddingHorizontal: 2,
1277
1410
  },
1278
1411
  platformToggleActive: {
1279
- borderColor: '#000',
1280
- backgroundColor: '#000',
1412
+ borderColor: '#4CAF50',
1413
+ backgroundColor: '#4CAF50',
1414
+ },
1415
+ platformToggleThumb: {
1416
+ width: 22,
1417
+ height: 22,
1418
+ borderRadius: 11,
1419
+ backgroundColor: '#fff',
1420
+ shadowColor: '#000',
1421
+ shadowOffset: { width: 0, height: 1 },
1422
+ shadowOpacity: 0.2,
1423
+ shadowRadius: 2,
1424
+ elevation: 2,
1425
+ },
1426
+ platformToggleThumbActive: {
1427
+ alignSelf: 'flex-end',
1281
1428
  },
1282
1429
  // Dark mode styles
1283
1430
  darkPlatformItem: {
@@ -1392,4 +1539,89 @@ const styles = StyleSheet.create({
1392
1539
  color: '#666',
1393
1540
  fontSize: 16,
1394
1541
  },
1542
+ // Expand button styles
1543
+ expandButton: {
1544
+ flexDirection: 'row',
1545
+ alignItems: 'center',
1546
+ justifyContent: 'center',
1547
+ padding: 12,
1548
+ backgroundColor: '#f8f9fa',
1549
+ borderRadius: 12,
1550
+ borderWidth: 1,
1551
+ borderColor: '#e9ecef',
1552
+ marginTop: 8,
1553
+ },
1554
+ expandButtonText: {
1555
+ fontSize: 14,
1556
+ fontWeight: '500',
1557
+ color: COLORS.primary,
1558
+ marginLeft: 8,
1559
+ },
1560
+ // Test mode styles
1561
+ testModeContainer: {
1562
+ marginTop: 16,
1563
+ paddingHorizontal: 16,
1564
+ backgroundColor: '#f8f9fa',
1565
+ borderRadius: 12,
1566
+ padding: 16,
1567
+ borderWidth: 1,
1568
+ borderColor: '#e9ecef',
1569
+ },
1570
+ testModeTitle: {
1571
+ fontSize: 16,
1572
+ fontWeight: '600',
1573
+ color: '#495057',
1574
+ marginBottom: 12,
1575
+ textAlign: 'center',
1576
+ },
1577
+ testDataRequestButton: {
1578
+ flexDirection: 'row',
1579
+ alignItems: 'center',
1580
+ justifyContent: 'center',
1581
+ padding: 12,
1582
+ backgroundColor: '#fff3cd',
1583
+ borderRadius: 12,
1584
+ borderWidth: 1,
1585
+ borderColor: '#ffeaa7',
1586
+ marginBottom: 8,
1587
+ },
1588
+ testDataRequestButtonText: {
1589
+ fontSize: 14,
1590
+ fontWeight: '500',
1591
+ color: '#856404',
1592
+ marginLeft: 8,
1593
+ },
1594
+ testExistingUserButton: {
1595
+ flexDirection: 'row',
1596
+ alignItems: 'center',
1597
+ justifyContent: 'center',
1598
+ padding: 12,
1599
+ backgroundColor: '#d4edda',
1600
+ borderRadius: 12,
1601
+ borderWidth: 1,
1602
+ borderColor: '#c3e6cb',
1603
+ marginBottom: 8,
1604
+ },
1605
+ testExistingUserButtonText: {
1606
+ fontSize: 14,
1607
+ fontWeight: '500',
1608
+ color: '#155724',
1609
+ marginLeft: 8,
1610
+ },
1611
+ testSkipToTrainingButton: {
1612
+ flexDirection: 'row',
1613
+ alignItems: 'center',
1614
+ justifyContent: 'center',
1615
+ padding: 12,
1616
+ backgroundColor: '#d1ecf1',
1617
+ borderRadius: 12,
1618
+ borderWidth: 1,
1619
+ borderColor: '#bee5eb',
1620
+ },
1621
+ testSkipToTrainingButtonText: {
1622
+ fontSize: 14,
1623
+ fontWeight: '500',
1624
+ color: '#0c5460',
1625
+ marginLeft: 8,
1626
+ },
1395
1627
  });
@@ -90,9 +90,14 @@ declare module '@onairos/react-native' {
90
90
  }
91
91
 
92
92
  export interface TrainingModalProps {
93
+ visible: boolean;
93
94
  progress: number;
94
95
  eta: string;
95
96
  onCancel: () => void;
97
+ onComplete?: () => void;
98
+ modelKey?: string;
99
+ username?: string;
100
+ test?: boolean; // Enable test mode for simulated training
96
101
  }
97
102
 
98
103
  export interface OAuthWebViewProps {