@rapidraptor/auth-server 0.2.2 → 0.2.5
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.
package/dist/firebase/admin.d.ts
CHANGED
|
@@ -3,6 +3,9 @@ import { type Firestore } from 'firebase-admin/firestore';
|
|
|
3
3
|
/**
|
|
4
4
|
* Initialize Firebase Admin SDK
|
|
5
5
|
* Can be called multiple times safely (idempotent)
|
|
6
|
+
*
|
|
7
|
+
* Supports emulator mode when FIREBASE_AUTH_EMULATOR_HOST and FIRESTORE_EMULATOR_HOST are set.
|
|
8
|
+
* In emulator mode, credentials are not required.
|
|
6
9
|
*/
|
|
7
10
|
export declare function initializeFirebaseAdmin(): Promise<void>;
|
|
8
11
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../src/firebase/admin.ts"],"names":[],"mappings":"AACA,OAAO,EAAgC,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAqDxE
|
|
1
|
+
{"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../src/firebase/admin.ts"],"names":[],"mappings":"AACA,OAAO,EAAgC,KAAK,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAqDxE;;;;;;GAMG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAyD7D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,SAAS,CAOhD;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,GAAG,CAOpC"}
|
package/dist/firebase/admin.js
CHANGED
|
@@ -41,6 +41,9 @@ function getCredentialsFromFile() {
|
|
|
41
41
|
/**
|
|
42
42
|
* Initialize Firebase Admin SDK
|
|
43
43
|
* Can be called multiple times safely (idempotent)
|
|
44
|
+
*
|
|
45
|
+
* Supports emulator mode when FIREBASE_AUTH_EMULATOR_HOST and FIRESTORE_EMULATOR_HOST are set.
|
|
46
|
+
* In emulator mode, credentials are not required.
|
|
44
47
|
*/
|
|
45
48
|
export async function initializeFirebaseAdmin() {
|
|
46
49
|
// Check if already initialized
|
|
@@ -49,7 +52,21 @@ export async function initializeFirebaseAdmin() {
|
|
|
49
52
|
appInstance = getApps()[0];
|
|
50
53
|
return;
|
|
51
54
|
}
|
|
52
|
-
//
|
|
55
|
+
// Check if emulator mode is enabled
|
|
56
|
+
const authEmulatorHost = process.env.FIREBASE_AUTH_EMULATOR_HOST;
|
|
57
|
+
const firestoreEmulatorHost = process.env.FIRESTORE_EMULATOR_HOST;
|
|
58
|
+
const projectId = process.env.FIREBASE_PROJECT_ID || 'demo-project';
|
|
59
|
+
const isEmulatorMode = !!(authEmulatorHost || firestoreEmulatorHost);
|
|
60
|
+
if (isEmulatorMode) {
|
|
61
|
+
// Emulator mode: Initialize without credentials
|
|
62
|
+
// Firebase Admin SDK automatically connects to emulators when env vars are set
|
|
63
|
+
appInstance = initializeApp({
|
|
64
|
+
projectId,
|
|
65
|
+
});
|
|
66
|
+
firestoreInstance = getFirestore(appInstance);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
// Production mode: Try to get credentials from environment or file
|
|
53
70
|
// Environment variables take precedence over file-based credentials
|
|
54
71
|
const envCredentials = getCredentialsFromEnv();
|
|
55
72
|
const fileCredentials = getCredentialsFromFile();
|
|
@@ -59,7 +76,7 @@ export async function initializeFirebaseAdmin() {
|
|
|
59
76
|
}
|
|
60
77
|
const credentials = envCredentials || fileCredentials;
|
|
61
78
|
if (!credentials) {
|
|
62
|
-
throw new Error('Firebase Admin credentials not found. Set FIREBASE_PROJECT_ID, FIREBASE_PRIVATE_KEY, and FIREBASE_CLIENT_EMAIL environment variables, or set GOOGLE_APPLICATION_CREDENTIALS to point to a service account file.');
|
|
79
|
+
throw new Error('Firebase Admin credentials not found. Set FIREBASE_PROJECT_ID, FIREBASE_PRIVATE_KEY, and FIREBASE_CLIENT_EMAIL environment variables, or set GOOGLE_APPLICATION_CREDENTIALS to point to a service account file. For emulator mode, set FIREBASE_AUTH_EMULATOR_HOST and FIRESTORE_EMULATOR_HOST.');
|
|
63
80
|
}
|
|
64
81
|
// Initialize Firebase Admin
|
|
65
82
|
appInstance = initializeApp({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/firebase/admin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAY,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAkB,MAAM,0BAA0B,CAAC;AAExE,IAAI,iBAAiB,GAAqB,IAAI,CAAC;AAC/C,IAAI,WAAW,GAAe,IAAI,CAAC;AAWnC;;GAEG;AACH,SAAS,qBAAqB;IAC5B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3E,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAEtD,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,IAAI,CAAC,WAAW,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB;IAC7B,MAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;IACtE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,+DAA+D;QAC/D,MAAM,YAAY,GAAG,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QAC/D,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAChD,OAAO;YACL,SAAS,EAAE,cAAc,CAAC,UAAU;YACpC,UAAU,EAAE,cAAc,CAAC,WAAW;YACtC,WAAW,EAAE,cAAc,CAAC,YAAY;SACzC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/firebase/admin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rapidraptor/auth-server",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.5",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"description": "Server-side authentication library for Node.js/Express applications",
|
|
5
6
|
"main": "./dist/index.js",
|
|
6
7
|
"types": "./dist/index.d.ts",
|
|
@@ -14,8 +15,11 @@
|
|
|
14
15
|
"exports": {
|
|
15
16
|
".": {
|
|
16
17
|
"types": "./dist/index.d.ts",
|
|
18
|
+
"import": "./dist/index.js",
|
|
19
|
+
"require": "./dist/index.js",
|
|
17
20
|
"default": "./dist/index.js"
|
|
18
|
-
}
|
|
21
|
+
},
|
|
22
|
+
"./package.json": "./package.json"
|
|
19
23
|
},
|
|
20
24
|
"publishConfig": {
|
|
21
25
|
"access": "public"
|
|
@@ -26,7 +30,7 @@
|
|
|
26
30
|
"test": "vitest"
|
|
27
31
|
},
|
|
28
32
|
"dependencies": {
|
|
29
|
-
"@rapidraptor/auth-shared": "^0.2.
|
|
33
|
+
"@rapidraptor/auth-shared": "^0.2.5",
|
|
30
34
|
"firebase-admin": "^12.0.0",
|
|
31
35
|
"jose": "^5.2.0"
|
|
32
36
|
},
|