@onairos/react-native 3.1.9 → 3.1.12

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