@sudobility/auth_lib 0.0.33 → 0.0.34

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":"FirebaseAuthNetworkService.d.ts","sourceRoot":"","sources":["../../src/network/FirebaseAuthNetworkService.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIhF,MAAM,WAAW,iCAAiC;IAEhD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAEtB,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/C;AAqCD,qBAAa,0BAA2B,SAAQ,gBAAgB;IAC9D,OAAO,CAAC,cAAc,CAAgD;gBAE1D,OAAO,CAAC,EAAE,iCAAiC;IAUxC,OAAO,CAAC,CAAC,GAAG,OAAO,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAmD/B"}
1
+ {"version":3,"file":"FirebaseAuthNetworkService.d.ts","sourceRoot":"","sources":["../../src/network/FirebaseAuthNetworkService.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIhF,MAAM,WAAW,iCAAiC;IAEhD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IAEtB,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/C;AAuDD,qBAAa,0BAA2B,SAAQ,gBAAgB;IAC9D,OAAO,CAAC,cAAc,CAAgD;gBAE1D,OAAO,CAAC,EAAE,iCAAiC;IAUxC,OAAO,CAAC,CAAC,GAAG,OAAO,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;CAsG/B"}
@@ -3,11 +3,25 @@ import { signOut } from 'firebase/auth';
3
3
  import { getFirebaseAuth } from '../config/firebase-init';
4
4
  async function getAuthToken(forceRefresh = false) {
5
5
  const auth = getFirebaseAuth();
6
+ console.log('[FirebaseAuthNetworkService] getAuthToken called', {
7
+ forceRefresh,
8
+ hasAuth: !!auth,
9
+ hasCurrentUser: !!auth?.currentUser,
10
+ userEmail: auth?.currentUser?.email,
11
+ });
6
12
  const user = auth?.currentUser;
7
- if (!user)
13
+ if (!user) {
14
+ console.warn('[FirebaseAuthNetworkService] No currentUser - cannot get token');
8
15
  return '';
16
+ }
9
17
  try {
10
- return await user.getIdToken(forceRefresh);
18
+ const token = await user.getIdToken(forceRefresh);
19
+ console.log('[FirebaseAuthNetworkService] Got token', {
20
+ forceRefresh,
21
+ tokenLength: token?.length,
22
+ tokenPrefix: `${token?.substring(0, 20)}...`,
23
+ });
24
+ return token;
11
25
  }
12
26
  catch (err) {
13
27
  console.error('[FirebaseAuthNetworkService] Failed to get ID token:', err);
@@ -32,28 +46,66 @@ export class FirebaseAuthNetworkService extends WebNetworkClient {
32
46
  this.serviceOptions = options;
33
47
  }
34
48
  async request(url, options = {}) {
49
+ const urlForLog = url.length > 100 ? `${url.substring(0, 100)}...` : url;
50
+ console.log('[FirebaseAuthNetworkService] request() called', {
51
+ url: urlForLog,
52
+ method: options.method || 'GET',
53
+ hasAuthHeader: !!options.headers?.Authorization,
54
+ });
35
55
  try {
36
- return await super.request(url, options);
56
+ const response = await super.request(url, options);
57
+ console.log('[FirebaseAuthNetworkService] request() succeeded', {
58
+ url: urlForLog,
59
+ status: response.status,
60
+ ok: response.ok,
61
+ });
62
+ return response;
37
63
  }
38
64
  catch (error) {
65
+ console.log('[FirebaseAuthNetworkService] request() caught error', {
66
+ url: urlForLog,
67
+ errorType: error?.constructor?.name,
68
+ errorMessage: error instanceof Error ? error.message : String(error),
69
+ hasStatus: error && typeof error === 'object' && 'status' in error,
70
+ status: error && typeof error === 'object' && 'status' in error
71
+ ? error.status
72
+ : 'N/A',
73
+ errorKeys: error && typeof error === 'object' ? Object.keys(error) : [],
74
+ });
39
75
  if (error && typeof error === 'object' && 'status' in error) {
40
76
  const networkError = error;
41
77
  if (networkError.status === 401) {
42
- console.log('[FirebaseAuthNetworkService] 401 received, attempting token refresh');
78
+ console.log('[FirebaseAuthNetworkService] 401 detected, attempting token refresh...');
43
79
  const freshToken = await getAuthToken(true);
44
80
  if (freshToken) {
45
- console.log('[FirebaseAuthNetworkService] Token refreshed, retrying request');
81
+ console.log('[FirebaseAuthNetworkService] Token refreshed successfully, retrying request...');
46
82
  const retryHeaders = {
47
83
  ...options.headers,
48
84
  Authorization: `Bearer ${freshToken}`,
49
85
  };
50
- return super.request(url, {
51
- ...options,
52
- headers: retryHeaders,
53
- });
86
+ try {
87
+ const retryResponse = await super.request(url, {
88
+ ...options,
89
+ headers: retryHeaders,
90
+ });
91
+ console.log('[FirebaseAuthNetworkService] Retry succeeded!', {
92
+ status: retryResponse.status,
93
+ ok: retryResponse.ok,
94
+ });
95
+ return retryResponse;
96
+ }
97
+ catch (retryError) {
98
+ console.error('[FirebaseAuthNetworkService] Retry also failed', {
99
+ errorType: retryError?.constructor?.name,
100
+ errorMessage: retryError instanceof Error
101
+ ? retryError.message
102
+ : String(retryError),
103
+ });
104
+ throw retryError;
105
+ }
54
106
  }
55
107
  else {
56
- console.error('[FirebaseAuthNetworkService] Token refresh failed - no token returned');
108
+ console.error('[FirebaseAuthNetworkService] Token refresh failed - no token returned (empty string)');
57
109
  this.serviceOptions?.onTokenRefreshFailed?.(new Error('Failed to refresh token'));
58
110
  }
59
111
  }
@@ -62,6 +114,12 @@ export class FirebaseAuthNetworkService extends WebNetworkClient {
62
114
  await logoutUser(this.serviceOptions?.onLogout);
63
115
  }
64
116
  }
117
+ else {
118
+ console.warn('[FirebaseAuthNetworkService] Error does not have status property, cannot handle', {
119
+ errorType: error?.constructor?.name,
120
+ });
121
+ }
122
+ console.log('[FirebaseAuthNetworkService] Re-throwing original error');
65
123
  throw error;
66
124
  }
67
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FirebaseAuthNetworkService.js","sourceRoot":"","sources":["../../src/network/FirebaseAuthNetworkService.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAa1D,KAAK,UAAU,YAAY,CAAC,YAAY,GAAG,KAAK;IAC9C,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,EAAE,WAAW,CAAC;IAC/B,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sDAAsD,EAAE,GAAG,CAAC,CAAC;QAC3E,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAKD,KAAK,UAAU,UAAU,CAAC,QAAqB;IAC7C,MAAM,IAAI,GAAG,eAAe,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QACpB,QAAQ,EAAE,EAAE,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,GAAG,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAMD,MAAM,OAAO,0BAA2B,SAAQ,gBAAgB;IAG9D,YAAY,OAA2C;QACrD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;IAChC,CAAC;IAOQ,KAAK,CAAC,OAAO,CACpB,GAAW,EACX,UAAiC,EAAE;QAEnC,IAAI,CAAC;YACH,OAAO,MAAM,KAAK,CAAC,OAAO,CAAI,GAAG,EAAE,OAAO,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAGf,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;gBAC5D,MAAM,YAAY,GAAG,KAA4C,CAAC;gBAGlE,IAAI,YAAY,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,CACT,qEAAqE,CACtE,CAAC;oBACF,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC5C,IAAI,UAAU,EAAE,CAAC;wBACf,OAAO,CAAC,GAAG,CACT,gEAAgE,CACjE,CAAC;wBACF,MAAM,YAAY,GAAG;4BACnB,GAAG,OAAO,CAAC,OAAO;4BAClB,aAAa,EAAE,UAAU,UAAU,EAAE;yBACtC,CAAC;wBACF,OAAO,KAAK,CAAC,OAAO,CAAI,GAAG,EAAE;4BAC3B,GAAG,OAAO;4BACV,OAAO,EAAE,YAAY;yBACtB,CAAC,CAAC;oBACL,CAAC;yBAAM,CAAC;wBAEN,OAAO,CAAC,KAAK,CACX,uEAAuE,CACxE,CAAC;wBACF,IAAI,CAAC,cAAc,EAAE,oBAAoB,EAAE,CACzC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CACrC,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAGD,IAAI,YAAY,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAChC,OAAO,CAAC,IAAI,CACV,+DAA+D,CAChE,CAAC;oBACF,MAAM,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YAGD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"FirebaseAuthNetworkService.js","sourceRoot":"","sources":["../../src/network/FirebaseAuthNetworkService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/auth_lib",
3
- "version": "0.0.33",
3
+ "version": "0.0.34",
4
4
  "description": "Firebase authentication utilities with token refresh handling",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -38,8 +38,8 @@
38
38
  "@react-native-firebase/app": ">=18.0.0",
39
39
  "@react-native-firebase/auth": ">=18.0.0",
40
40
  "@sudobility/di": "^1.5.31",
41
- "@sudobility/di_web": "^0.1.91",
42
- "@sudobility/di_rn": "^0.1.16",
41
+ "@sudobility/di_web": "^0.1.92",
42
+ "@sudobility/di_rn": "^0.1.17",
43
43
  "@sudobility/types": "^1.9.49",
44
44
  "@tanstack/react-query": "^5.0.0"
45
45
  },
@@ -62,8 +62,8 @@
62
62
  },
63
63
  "devDependencies": {
64
64
  "@sudobility/di": "^1.5.31",
65
- "@sudobility/di_web": "^0.1.91",
66
- "@sudobility/di_rn": "^0.1.16",
65
+ "@sudobility/di_web": "^0.1.92",
66
+ "@sudobility/di_rn": "^0.1.17",
67
67
  "@sudobility/types": "^1.9.49",
68
68
  "@tanstack/react-query": "^5.80.7",
69
69
  "@types/node": "^22.0.0",