@onairos/react-native 3.1.8 → 3.1.11

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.
@@ -91,7 +91,14 @@ const initializeApiKey = async config => {
91
91
  // Validate the API key (handles both admin and developer keys)
92
92
  const validation = await validateApiKey(config.apiKey);
93
93
  if (!validation.isValid) {
94
- throw new Error(`API key validation failed: ${validation.error}`);
94
+ var _validation$error, _validation$error2, _validation$error3;
95
+ // If it's a network error or JSON parse error, warn but don't fail initialization
96
+ if ((_validation$error = validation.error) !== null && _validation$error !== void 0 && _validation$error.includes('Network error') || (_validation$error2 = validation.error) !== null && _validation$error2 !== void 0 && _validation$error2.includes('JSON Parse error') || (_validation$error3 = validation.error) !== null && _validation$error3 !== void 0 && _validation$error3.includes('API validation endpoint returned')) {
97
+ console.warn('⚠️ API key validation failed due to network/server issues, continuing in offline mode:', validation.error);
98
+ console.warn('📝 SDK will function with limited validation. Ensure your API key is valid for production use.');
99
+ } else {
100
+ throw new Error(`API key validation failed: ${validation.error}`);
101
+ }
95
102
  }
96
103
 
97
104
  // Try to load existing JWT token
@@ -157,7 +164,7 @@ const isAdminKey = apiKey => {
157
164
  exports.isAdminKey = isAdminKey;
158
165
  const validateApiKey = async apiKey => {
159
166
  try {
160
- var _globalConfig2, _globalConfig3;
167
+ var _globalConfig2, _globalConfig3, _globalConfig4;
161
168
  console.log('🔍 Validating API key...');
162
169
 
163
170
  // Check if it's an admin key
@@ -197,82 +204,187 @@ const validateApiKey = async apiKey => {
197
204
  const environment = ((_globalConfig2 = globalConfig) === null || _globalConfig2 === void 0 ? void 0 : _globalConfig2.environment) || 'production';
198
205
  const baseUrl = API_ENDPOINTS[environment];
199
206
  const timeout = ((_globalConfig3 = globalConfig) === null || _globalConfig3 === void 0 ? void 0 : _globalConfig3.timeout) || 30000;
207
+ const maxRetries = ((_globalConfig4 = globalConfig) === null || _globalConfig4 === void 0 ? void 0 : _globalConfig4.retryAttempts) || 3;
208
+
209
+ // Retry logic for network failures
210
+ for (let attempt = 1; attempt <= maxRetries; attempt++) {
211
+ // Create abort controller for timeout
212
+ const controller = new AbortController();
213
+ const timeoutId = setTimeout(() => controller.abort(), timeout);
214
+ try {
215
+ var _globalConfig5;
216
+ if ((_globalConfig5 = globalConfig) !== null && _globalConfig5 !== void 0 && _globalConfig5.enableLogging && attempt > 1) {
217
+ console.log(`🔄 Retry attempt ${attempt}/${maxRetries} for API key validation`);
218
+ }
219
+ const response = await fetch(`${baseUrl}/auth/validate-key`, {
220
+ method: 'POST',
221
+ headers: {
222
+ 'Content-Type': 'application/json',
223
+ 'Authorization': `Bearer ${apiKey}`,
224
+ 'User-Agent': 'OnairosReactNative/3.1.10',
225
+ 'X-API-Key-Type': keyType,
226
+ 'X-SDK-Platform': 'react-native',
227
+ 'X-Retry-Attempt': attempt.toString()
228
+ },
229
+ body: JSON.stringify({
230
+ environment,
231
+ sdk_version: '3.1.10',
232
+ platform: 'react-native',
233
+ keyType,
234
+ timestamp: new Date().toISOString(),
235
+ attempt
236
+ }),
237
+ signal: controller.signal
238
+ });
239
+ clearTimeout(timeoutId);
200
240
 
201
- // Create abort controller for timeout
202
- const controller = new AbortController();
203
- const timeoutId = setTimeout(() => controller.abort(), timeout);
204
- try {
205
- const response = await fetch(`${baseUrl}/auth/validate-key`, {
206
- method: 'POST',
207
- headers: {
208
- 'Content-Type': 'application/json',
209
- 'Authorization': `Bearer ${apiKey}`,
210
- 'User-Agent': 'OnairosReactNative/1.0',
211
- 'X-API-Key-Type': keyType
212
- },
213
- body: JSON.stringify({
214
- environment,
215
- sdk_version: '3.0.72',
216
- platform: 'react-native',
217
- keyType,
218
- timestamp: new Date().toISOString()
219
- }),
220
- signal: controller.signal
221
- });
222
- clearTimeout(timeoutId);
223
- const data = await response.json();
224
- if (response.ok && data.success) {
225
- var _globalConfig4;
226
- const result = {
227
- isValid: true,
228
- permissions: data.permissions || [],
229
- rateLimits: data.rateLimits || null,
230
- keyType: keyType
231
- };
232
-
233
- // Cache the successful result
234
- validationCache.set(apiKey, {
235
- result,
236
- timestamp: Date.now()
241
+ // First check if we got a valid response
242
+ if (!response) {
243
+ throw new Error('No response received from server');
244
+ }
245
+
246
+ // Check if response is actually JSON before trying to parse
247
+ const contentType = response.headers.get('content-type');
248
+ const isJsonResponse = contentType && contentType.includes('application/json');
249
+ if (!isJsonResponse) {
250
+ const textContent = await response.text();
251
+ const previewText = textContent.substring(0, 200);
252
+ console.error('❌ API endpoint returned non-JSON response:', {
253
+ status: response.status,
254
+ statusText: response.statusText,
255
+ contentType: contentType || 'unknown',
256
+ preview: previewText,
257
+ url: `${baseUrl}/auth/validate-key`,
258
+ attempt: attempt
259
+ });
260
+
261
+ // Handle specific error cases
262
+ if (response.status === 404) {
263
+ throw new Error(`API validation endpoint not found (404). The endpoint ${baseUrl}/auth/validate-key may not exist or be configured correctly.`);
264
+ } else if (response.status === 500) {
265
+ throw new Error(`Server error (500). The Onairos backend is experiencing issues.`);
266
+ } else if (response.status === 502 || response.status === 503) {
267
+ throw new Error(`Service unavailable (${response.status}). The Onairos backend may be temporarily down.`);
268
+ } else if (textContent.includes('<html') || textContent.includes('<!DOCTYPE')) {
269
+ throw new Error(`Server returned HTML page instead of JSON API response. This often indicates a routing issue or server misconfiguration.`);
270
+ } else {
271
+ throw new Error(`API validation endpoint returned ${response.status} - ${response.statusText}. Expected JSON but got ${contentType || 'unknown content type'}.`);
272
+ }
273
+ }
274
+
275
+ // Parse JSON response
276
+ let data;
277
+ try {
278
+ data = await response.json();
279
+ } catch (jsonError) {
280
+ console.error('❌ Failed to parse JSON response:', {
281
+ error: jsonError.message,
282
+ status: response.status,
283
+ contentType,
284
+ attempt: attempt
285
+ });
286
+ throw new Error(`Failed to parse server response as JSON: ${jsonError.message}`);
287
+ }
288
+
289
+ // Handle successful response
290
+ if (response.ok && data.success) {
291
+ var _globalConfig6;
292
+ const result = {
293
+ isValid: true,
294
+ permissions: data.permissions || [],
295
+ rateLimits: data.rateLimits || null,
296
+ keyType: keyType
297
+ };
298
+
299
+ // Cache the successful result
300
+ validationCache.set(apiKey, {
301
+ result,
302
+ timestamp: Date.now()
303
+ });
304
+ if ((_globalConfig6 = globalConfig) !== null && _globalConfig6 !== void 0 && _globalConfig6.enableLogging) {
305
+ console.log('✅ API key validation successful');
306
+ }
307
+ return result;
308
+ } else {
309
+ // Handle API errors (invalid key, etc.)
310
+ const errorMessage = data.error || data.message || `HTTP ${response.status}: ${response.statusText}`;
311
+ const result = {
312
+ isValid: false,
313
+ error: errorMessage,
314
+ keyType: keyType
315
+ };
316
+
317
+ // For client errors (4xx), don't retry
318
+ if (response.status >= 400 && response.status < 500) {
319
+ var _globalConfig7;
320
+ if ((_globalConfig7 = globalConfig) !== null && _globalConfig7 !== void 0 && _globalConfig7.enableLogging) {
321
+ console.error('❌ API key validation failed (client error):', errorMessage);
322
+ }
323
+ return result;
324
+ }
325
+
326
+ // For server errors (5xx), retry
327
+ throw new Error(errorMessage);
328
+ }
329
+ } catch (fetchError) {
330
+ var _globalConfig8;
331
+ clearTimeout(timeoutId);
332
+ if (fetchError.name === 'AbortError') {
333
+ const errorMessage = `API key validation timeout (${timeout}ms)`;
334
+ console.error('⏱️ API key validation timeout');
335
+ if (attempt === maxRetries) {
336
+ return {
337
+ isValid: false,
338
+ error: errorMessage,
339
+ keyType: keyType
340
+ };
341
+ }
342
+ continue; // Retry timeout errors
343
+ }
344
+
345
+ // Enhanced error message based on error type
346
+ let errorMessage = `Network error during API key validation: ${fetchError.message}`;
347
+
348
+ // Add specific guidance for common errors
349
+ if (fetchError.message.includes('JSON Parse error') || fetchError.message.includes('Unexpected character')) {
350
+ errorMessage = `Server returned invalid JSON response. This usually indicates the API endpoint returned HTML instead of JSON (often a 404 or server error page). ${fetchError.message}`;
351
+ } else if (fetchError.message.includes('Network request failed') || fetchError.message.includes('fetch')) {
352
+ errorMessage = `Network connectivity issue. Please check internet connection and verify the Onairos API is accessible. ${fetchError.message}`;
353
+ } else if (fetchError.message.includes('DNS') || fetchError.message.includes('ENOTFOUND')) {
354
+ errorMessage = `DNS resolution failed for ${baseUrl}. Please check network settings and domain accessibility. ${fetchError.message}`;
355
+ }
356
+ console.error('🌐 Network error during API key validation:', {
357
+ error: fetchError,
358
+ endpoint: `${baseUrl}/auth/validate-key`,
359
+ attempt: attempt,
360
+ maxRetries: maxRetries,
361
+ retryable: attempt < maxRetries
237
362
  });
238
- if ((_globalConfig4 = globalConfig) !== null && _globalConfig4 !== void 0 && _globalConfig4.enableLogging) {
239
- console.log('✅ API key validation successful');
363
+
364
+ // If this is the last attempt, return the error
365
+ if (attempt === maxRetries) {
366
+ return {
367
+ isValid: false,
368
+ error: errorMessage,
369
+ keyType: keyType
370
+ };
240
371
  }
241
- return result;
242
- } else {
243
- var _globalConfig5;
244
- const errorMessage = data.error || `HTTP ${response.status}: ${response.statusText}`;
245
- const result = {
246
- isValid: false,
247
- error: errorMessage,
248
- keyType: keyType
249
- };
250
-
251
- // Don't cache failed results
252
- if ((_globalConfig5 = globalConfig) !== null && _globalConfig5 !== void 0 && _globalConfig5.enableLogging) {
253
- console.error('❌ API key validation failed:', errorMessage);
372
+
373
+ // Wait before retrying (exponential backoff)
374
+ const backoffDelay = Math.min(1000 * Math.pow(2, attempt - 1), 5000);
375
+ if ((_globalConfig8 = globalConfig) !== null && _globalConfig8 !== void 0 && _globalConfig8.enableLogging) {
376
+ console.log(`⏳ Waiting ${backoffDelay}ms before retry...`);
254
377
  }
255
- return result;
256
- }
257
- } catch (fetchError) {
258
- clearTimeout(timeoutId);
259
- if (fetchError.name === 'AbortError') {
260
- const errorMessage = 'API key validation timeout';
261
- console.error('⏱️ API key validation timeout');
262
- return {
263
- isValid: false,
264
- error: errorMessage,
265
- keyType: keyType
266
- };
378
+ await new Promise(resolve => setTimeout(() => resolve(), backoffDelay));
267
379
  }
268
- const errorMessage = `Network error during API key validation: ${fetchError.message}`;
269
- console.error('🌐 Network error during API key validation:', fetchError);
270
- return {
271
- isValid: false,
272
- error: errorMessage,
273
- keyType: keyType
274
- };
275
380
  }
381
+
382
+ // This should never be reached, but just in case
383
+ return {
384
+ isValid: false,
385
+ error: 'All retry attempts exhausted',
386
+ keyType: keyType
387
+ };
276
388
  } catch (error) {
277
389
  const errorMessage = `API key validation error: ${error.message}`;
278
390
  console.error('❌ API key validation error:', error);
@@ -299,8 +411,8 @@ const getApiConfig = () => {
299
411
  */
300
412
  exports.getApiConfig = getApiConfig;
301
413
  const getApiKey = () => {
302
- var _globalConfig6;
303
- return ((_globalConfig6 = globalConfig) === null || _globalConfig6 === void 0 ? void 0 : _globalConfig6.apiKey) || null;
414
+ var _globalConfig9;
415
+ return ((_globalConfig9 = globalConfig) === null || _globalConfig9 === void 0 ? void 0 : _globalConfig9.apiKey) || null;
304
416
  };
305
417
 
306
418
  /**
@@ -319,10 +431,10 @@ const isApiKeyInitialized = () => {
319
431
  exports.isApiKeyInitialized = isApiKeyInitialized;
320
432
  const storeJWT = async token => {
321
433
  try {
322
- var _globalConfig7;
434
+ var _globalConfig0;
323
435
  await _asyncStorage.default.setItem(JWT_TOKEN_KEY, token);
324
436
  userToken = token;
325
- if ((_globalConfig7 = globalConfig) !== null && _globalConfig7 !== void 0 && _globalConfig7.enableLogging) {
437
+ if ((_globalConfig0 = globalConfig) !== null && _globalConfig0 !== void 0 && _globalConfig0.enableLogging) {
326
438
  console.log('🎫 JWT token stored successfully');
327
439
  }
328
440
  } catch (error) {
@@ -362,10 +474,10 @@ const getJWT = () => {
362
474
  exports.getJWT = getJWT;
363
475
  const clearJWT = async () => {
364
476
  try {
365
- var _globalConfig8;
477
+ var _globalConfig1;
366
478
  await _asyncStorage.default.removeItem(JWT_TOKEN_KEY);
367
479
  userToken = null;
368
- if ((_globalConfig8 = globalConfig) !== null && _globalConfig8 !== void 0 && _globalConfig8.enableLogging) {
480
+ if ((_globalConfig1 = globalConfig) !== null && _globalConfig1 !== void 0 && _globalConfig1.enableLogging) {
369
481
  console.log('🗑️ JWT token cleared');
370
482
  }
371
483
  } catch (error) {
@@ -436,7 +548,7 @@ const decodeJWTPayload = token => {
436
548
  exports.decodeJWTPayload = decodeJWTPayload;
437
549
  const extractUsernameFromJWT = token => {
438
550
  try {
439
- var _globalConfig9;
551
+ var _globalConfig10;
440
552
  const jwtToken = token || userToken;
441
553
  if (!jwtToken) {
442
554
  console.warn('⚠️ No JWT token available for username extraction');
@@ -449,7 +561,7 @@ const extractUsernameFromJWT = token => {
449
561
 
450
562
  // Try different possible username fields in order of preference
451
563
  const username = payload.userName || payload.username || payload.userId || payload.email;
452
- if ((_globalConfig9 = globalConfig) !== null && _globalConfig9 !== void 0 && _globalConfig9.enableLogging) {
564
+ if ((_globalConfig10 = globalConfig) !== null && _globalConfig10 !== void 0 && _globalConfig10.enableLogging) {
453
565
  console.log('👤 Extracted username from JWT:', username);
454
566
  }
455
567
  return username || null;
@@ -467,7 +579,7 @@ const extractUsernameFromJWT = token => {
467
579
  exports.extractUsernameFromJWT = extractUsernameFromJWT;
468
580
  const extractUserDataFromJWT = token => {
469
581
  try {
470
- var _globalConfig0;
582
+ var _globalConfig11;
471
583
  const jwtToken = token || userToken;
472
584
  if (!jwtToken) {
473
585
  console.warn('⚠️ No JWT token available for user data extraction');
@@ -486,7 +598,7 @@ const extractUserDataFromJWT = token => {
486
598
  iat: payload.iat,
487
599
  exp: payload.exp
488
600
  };
489
- if ((_globalConfig0 = globalConfig) !== null && _globalConfig0 !== void 0 && _globalConfig0.enableLogging) {
601
+ if ((_globalConfig11 = globalConfig) !== null && _globalConfig11 !== void 0 && _globalConfig11.enableLogging) {
490
602
  console.log('👤 Extracted user data from JWT:', userData);
491
603
  }
492
604
  return userData;
@@ -511,8 +623,8 @@ const isUserAuthenticated = () => {
511
623
  */
512
624
  exports.isUserAuthenticated = isUserAuthenticated;
513
625
  const getAuthHeaders = () => {
514
- var _globalConfig1;
515
- if (!((_globalConfig1 = globalConfig) !== null && _globalConfig1 !== void 0 && _globalConfig1.apiKey)) {
626
+ var _globalConfig12;
627
+ if (!((_globalConfig12 = globalConfig) !== null && _globalConfig12 !== void 0 && _globalConfig12.apiKey)) {
516
628
  throw new Error('SDK not initialized. Call initializeApiKey() first.');
517
629
  }
518
630
  const keyType = getApiKeyType(globalConfig.apiKey);
@@ -533,8 +645,8 @@ const getAuthHeaders = () => {
533
645
  */
534
646
  exports.getAuthHeaders = getAuthHeaders;
535
647
  const getDeveloperAuthHeaders = () => {
536
- var _globalConfig10;
537
- if (!((_globalConfig10 = globalConfig) !== null && _globalConfig10 !== void 0 && _globalConfig10.apiKey)) {
648
+ var _globalConfig13;
649
+ if (!((_globalConfig13 = globalConfig) !== null && _globalConfig13 !== void 0 && _globalConfig13.apiKey)) {
538
650
  throw new Error('SDK not initialized. Call initializeApiKey() first.');
539
651
  }
540
652
  const keyType = getApiKeyType(globalConfig.apiKey);
@@ -555,7 +667,7 @@ const getDeveloperAuthHeaders = () => {
555
667
  */
556
668
  exports.getDeveloperAuthHeaders = getDeveloperAuthHeaders;
557
669
  const getUserAuthHeaders = () => {
558
- var _globalConfig11;
670
+ var _globalConfig14;
559
671
  if (!userToken) {
560
672
  throw new Error('User not authenticated. Please verify email first.');
561
673
  }
@@ -564,7 +676,7 @@ const getUserAuthHeaders = () => {
564
676
  'Authorization': `Bearer ${userToken}`,
565
677
  'User-Agent': 'OnairosSDK/1.0.0',
566
678
  'X-SDK-Version': '3.0.72',
567
- 'X-SDK-Environment': ((_globalConfig11 = globalConfig) === null || _globalConfig11 === void 0 ? void 0 : _globalConfig11.environment) || 'production'
679
+ 'X-SDK-Environment': ((_globalConfig14 = globalConfig) === null || _globalConfig14 === void 0 ? void 0 : _globalConfig14.environment) || 'production'
568
680
  };
569
681
  };
570
682
 
@@ -763,9 +875,9 @@ const makeUserRequest = async (endpoint, options = {}) => {
763
875
  */
764
876
  exports.makeUserRequest = makeUserRequest;
765
877
  const clearValidationCache = () => {
766
- var _globalConfig12;
878
+ var _globalConfig15;
767
879
  validationCache.clear();
768
- if ((_globalConfig12 = globalConfig) !== null && _globalConfig12 !== void 0 && _globalConfig12.enableLogging) {
880
+ if ((_globalConfig15 = globalConfig) !== null && _globalConfig15 !== void 0 && _globalConfig15.enableLogging) {
769
881
  console.log('🗑️ API key validation cache cleared');
770
882
  }
771
883
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_asyncStorage","_interopRequireDefault","require","e","__esModule","default","ADMIN_API_KEY","exports","ApiKeyType","JWT_TOKEN_KEY","globalConfig","validationCache","Map","isInitialized","userToken","CACHE_DURATION","API_ENDPOINTS","production","staging","development","initializeApiKey","config","console","log","apiKey","Error","isAdminKey","length","environment","enableLogging","timeout","retryAttempts","apiKeyPrefix","substring","validation","validateApiKey","isValid","error","loadJWT","permissions","rateLimits","getApiKeyType","ADMIN","startsWith","DEVELOPER","INVALID","_globalConfig2","_globalConfig3","remaining","resetTime","Date","now","keyType","cached","get","timestamp","_globalConfig","result","baseUrl","controller","AbortController","timeoutId","setTimeout","abort","response","fetch","method","headers","body","JSON","stringify","sdk_version","platform","toISOString","signal","clearTimeout","data","json","ok","success","_globalConfig4","set","_globalConfig5","errorMessage","status","statusText","fetchError","name","message","getApiConfig","getApiKey","_globalConfig6","isApiKeyInitialized","storeJWT","token","_globalConfig7","AsyncStorage","setItem","getItem","getJWT","clearJWT","_globalConfig8","removeItem","base64Decode","str","chars","i","replace","a","indexOf","charAt","b","c","d","bitmap","String","fromCharCode","decodeJWTPayload","parts","split","payload","base64","padded","padEnd","Math","ceil","decoded","parse","extractUsernameFromJWT","_globalConfig9","jwtToken","warn","username","userName","userId","email","extractUserDataFromJWT","_globalConfig0","userData","id","verified","iat","exp","isUserAuthenticated","getAuthHeaders","_globalConfig1","getDeveloperAuthHeaders","_globalConfig10","getUserAuthHeaders","_globalConfig11","makeAuthenticatedRequest","endpoint","options","url","makeDeveloperRequest","makeUserRequest","clearValidationCache","_globalConfig12","clear","resetApiKeyService"],"sourceRoot":"..\\..\\..\\src","sources":["services/apiKeyService.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_asyncStorage","_interopRequireDefault","require","e","__esModule","default","ADMIN_API_KEY","exports","ApiKeyType","JWT_TOKEN_KEY","globalConfig","validationCache","Map","isInitialized","userToken","CACHE_DURATION","API_ENDPOINTS","production","staging","development","initializeApiKey","config","console","log","apiKey","Error","isAdminKey","length","environment","enableLogging","timeout","retryAttempts","apiKeyPrefix","substring","validation","validateApiKey","isValid","_validation$error","_validation$error2","_validation$error3","error","includes","warn","loadJWT","permissions","rateLimits","getApiKeyType","ADMIN","startsWith","DEVELOPER","INVALID","_globalConfig2","_globalConfig3","_globalConfig4","remaining","resetTime","Date","now","keyType","cached","get","timestamp","_globalConfig","result","baseUrl","maxRetries","attempt","controller","AbortController","timeoutId","setTimeout","abort","_globalConfig5","response","fetch","method","headers","toString","body","JSON","stringify","sdk_version","platform","toISOString","signal","clearTimeout","contentType","isJsonResponse","textContent","text","previewText","status","statusText","preview","url","data","json","jsonError","message","ok","success","_globalConfig6","set","errorMessage","_globalConfig7","fetchError","_globalConfig8","name","endpoint","retryable","backoffDelay","Math","min","pow","Promise","resolve","getApiConfig","getApiKey","_globalConfig9","isApiKeyInitialized","storeJWT","token","_globalConfig0","AsyncStorage","setItem","getItem","getJWT","clearJWT","_globalConfig1","removeItem","base64Decode","str","chars","i","replace","a","indexOf","charAt","b","c","d","bitmap","String","fromCharCode","decodeJWTPayload","parts","split","payload","base64","padded","padEnd","ceil","decoded","parse","extractUsernameFromJWT","_globalConfig10","jwtToken","username","userName","userId","email","extractUserDataFromJWT","_globalConfig11","userData","id","verified","iat","exp","isUserAuthenticated","getAuthHeaders","_globalConfig12","getDeveloperAuthHeaders","_globalConfig13","getUserAuthHeaders","_globalConfig14","makeAuthenticatedRequest","options","makeDeveloperRequest","makeUserRequest","clearValidationCache","_globalConfig15","clear","resetApiKeyService"],"sourceRoot":"..\\..\\..\\src","sources":["services/apiKeyService.ts"],"mappings":"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","ignoreList":[]}