@entropic-bond/firebase-admin 1.6.3 → 1.7.0

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.
Files changed (37) hide show
  1. package/lib/cjs/firebase-admin-helper.js +25 -0
  2. package/lib/cjs/firebase-admin-helper.js.map +1 -0
  3. package/lib/cjs/index.js +20 -0
  4. package/lib/cjs/index.js.map +1 -0
  5. package/lib/cjs/mocks/test-user.js +134 -0
  6. package/lib/cjs/mocks/test-user.js.map +1 -0
  7. package/lib/cjs/server-auth/firebase-server-auth.js +50 -0
  8. package/lib/cjs/server-auth/firebase-server-auth.js.map +1 -0
  9. package/lib/{store → cjs/store}/firebase-admin-datasource.d.ts +2 -1
  10. package/lib/cjs/store/firebase-admin-datasource.js +142 -0
  11. package/lib/cjs/store/firebase-admin-datasource.js.map +1 -0
  12. package/lib/esm/firebase-admin-helper.d.ts +11 -0
  13. package/lib/esm/firebase-admin-helper.js +21 -0
  14. package/lib/esm/firebase-admin-helper.js.map +1 -0
  15. package/lib/esm/index.d.ts +3 -0
  16. package/lib/esm/index.js +4 -0
  17. package/lib/esm/index.js.map +1 -0
  18. package/lib/esm/mocks/test-user.d.ts +49 -0
  19. package/lib/esm/mocks/test-user.js +131 -0
  20. package/lib/esm/mocks/test-user.js.map +1 -0
  21. package/lib/esm/server-auth/firebase-server-auth.d.ts +8 -0
  22. package/lib/esm/server-auth/firebase-server-auth.js +46 -0
  23. package/lib/esm/server-auth/firebase-server-auth.js.map +1 -0
  24. package/lib/esm/store/firebase-admin-datasource.d.ts +17 -0
  25. package/lib/esm/store/firebase-admin-datasource.js +115 -0
  26. package/lib/esm/store/firebase-admin-datasource.js.map +1 -0
  27. package/package.json +23 -19
  28. package/lib/entropic-bond-firebase-admin.js +0 -89721
  29. package/lib/entropic-bond-firebase-admin.js.map +0 -1
  30. package/lib/entropic-bond-firebase-admin.umd.cjs +0 -1054
  31. package/lib/entropic-bond-firebase-admin.umd.cjs.map +0 -1
  32. package/lib/server-auth/firebase-server-auth.spec.d.ts +0 -1
  33. package/lib/store/firebase-admin-datasource.spec.d.ts +0 -1
  34. /package/lib/{firebase-admin-helper.d.ts → cjs/firebase-admin-helper.d.ts} +0 -0
  35. /package/lib/{index.d.ts → cjs/index.d.ts} +0 -0
  36. /package/lib/{mocks → cjs/mocks}/test-user.d.ts +0 -0
  37. /package/lib/{server-auth → cjs/server-auth}/firebase-server-auth.d.ts +0 -0
@@ -0,0 +1,8 @@
1
+ import { ServerAuthService, UserCredentials, CustomCredentials } from 'entropic-bond';
2
+ export declare class FirebaseServerAuth extends ServerAuthService {
3
+ getUser<T extends {}>(userId: string): Promise<UserCredentials<T> | undefined>;
4
+ setCustomCredentials<T extends CustomCredentials>(userId: string, customCredentials: T): Promise<void>;
5
+ updateUser<T extends {}>(userId: string, credentials: UserCredentials<T>): Promise<UserCredentials<T>>;
6
+ deleteUser(userId: string): Promise<void>;
7
+ private convertToUserCredentials;
8
+ }
@@ -0,0 +1,46 @@
1
+ import { ServerAuthService } from 'entropic-bond';
2
+ import { FirebaseAdminHelper } from '../firebase-admin-helper';
3
+ export class FirebaseServerAuth extends ServerAuthService {
4
+ async getUser(userId) {
5
+ try {
6
+ return this.convertToUserCredentials(await FirebaseAdminHelper.instance.auth().getUser(userId));
7
+ }
8
+ catch (error) {
9
+ if (error.code === 'auth/user-not-found')
10
+ return undefined;
11
+ else
12
+ throw new Error(error);
13
+ }
14
+ }
15
+ setCustomCredentials(userId, customCredentials) {
16
+ return FirebaseAdminHelper.instance.auth().setCustomUserClaims(userId, customCredentials);
17
+ }
18
+ async updateUser(userId, credentials) {
19
+ return this.convertToUserCredentials(await FirebaseAdminHelper.instance.auth().updateUser(userId, credentials));
20
+ }
21
+ async deleteUser(userId) {
22
+ try {
23
+ await FirebaseAdminHelper.instance.auth().deleteUser(userId);
24
+ }
25
+ catch (error) {
26
+ if (error.code === 'auth/user-not-found')
27
+ return undefined;
28
+ else
29
+ throw new Error(error);
30
+ }
31
+ }
32
+ convertToUserCredentials(userData) {
33
+ return {
34
+ id: userData.uid,
35
+ email: userData.email ?? '',
36
+ emailVerified: userData.emailVerified ?? undefined,
37
+ creationDate: userData.metadata.creationTime ? new Date(userData.metadata.creationTime).getTime() : undefined,
38
+ lastLogin: userData.metadata.lastSignInTime ? new Date(userData.metadata.lastSignInTime).getTime() : undefined,
39
+ name: userData.displayName,
40
+ phoneNumber: userData.phoneNumber ?? undefined,
41
+ pictureUrl: userData.photoURL ?? undefined,
42
+ customData: userData.customClaims
43
+ };
44
+ }
45
+ }
46
+ //# sourceMappingURL=firebase-server-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firebase-server-auth.js","sourceRoot":"","sources":["../../../src/server-auth/firebase-server-auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAsC,MAAM,eAAe,CAAA;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAG9D,MAAM,OAAO,kBAAmB,SAAQ,iBAAiB;IAExD,KAAK,CAAC,OAAO,CAAgB,MAAc;QAC1C,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,wBAAwB,CACnC,MAAM,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAE,MAAM,CAAE,CAC3D,CAAA;QACF,CAAC;QAAC,OAAQ,KAAK,EAAG,CAAC;YAClB,IAAK,KAAK,CAAC,IAAI,KAAK,qBAAqB;gBAAG,OAAO,SAAS,CAAA;;gBACvD,MAAM,IAAI,KAAK,CAAE,KAAK,CAAE,CAAA;QAC9B,CAAC;IACF,CAAC;IAED,oBAAoB,CAA+B,MAAc,EAAE,iBAAoB;QACtF,OAAO,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,mBAAmB,CAAE,MAAM,EAAE,iBAAiB,CAAE,CAAA;IAC5F,CAAC;IAED,KAAK,CAAC,UAAU,CAAgB,MAAc,EAAE,WAA+B;QAC9E,OAAO,IAAI,CAAC,wBAAwB,CACnC,MAAM,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU,CAAE,MAAM,EAAE,WAAW,CAAE,CAC3E,CAAA;IACF,CAAC;IAED,KAAK,CAAC,UAAU,CAAE,MAAc;QAC/B,IAAI,CAAC;YACJ,MAAM,mBAAmB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,UAAU,CAAE,MAAM,CAAE,CAAA;QAC/D,CAAC;QACD,OAAQ,KAAK,EAAG,CAAC;YAChB,IAAK,KAAK,CAAC,IAAI,KAAK,qBAAqB;gBAAG,OAAO,SAAS,CAAA;;gBACvD,MAAM,IAAI,KAAK,CAAE,KAAK,CAAE,CAAA;QAC9B,CAAC;IACF,CAAC;IAEO,wBAAwB,CAAgB,QAAoB;QACnE,OAAO;YACN,EAAE,EAAE,QAAQ,CAAC,GAAG;YAChB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,EAAE;YAC3B,aAAa,EAAE,QAAQ,CAAC,aAAa,IAAI,SAAS;YAClD,YAAY,EAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAA,CAAC,CAAC,IAAI,IAAI,CAAE,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;YAC9G,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAA,CAAC,CAAC,IAAI,IAAI,CAAE,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;YAC/G,IAAI,EAAE,QAAQ,CAAC,WAAW;YAC1B,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,SAAS;YAC9C,UAAU,EAAE,QAAQ,CAAC,QAAQ,IAAI,SAAS;YAC1C,UAAU,EAAE,QAAQ,CAAC,YAAiB;SACtC,CAAA;IACF,CAAC;CACD"}
@@ -0,0 +1,17 @@
1
+ import { Collections, DataSource, DocumentChangeListerner, DocumentChangeListernerHandler, DocumentObject, PersistentProperty, QueryObject, QueryOperator } from 'entropic-bond';
2
+ import { WhereFilterOp } from 'firebase-admin/firestore';
3
+ export declare class FirebaseAdminDatasource extends DataSource {
4
+ findById(id: string, collectionName: string): Promise<DocumentObject>;
5
+ save(collections: Collections): Promise<void>;
6
+ find(queryObject: QueryObject<DocumentObject>, collectionName: string): Promise<DocumentObject[]>;
7
+ count(queryObject: QueryObject<DocumentObject>, collectionName: string): Promise<number>;
8
+ delete(id: string, collectionName: string): Promise<void>;
9
+ next(maxDocs?: number): Promise<DocumentObject[]>;
10
+ private getFromQuery;
11
+ private queryObjectToFirebaseQuery;
12
+ toFirebaseOperator(operator: QueryOperator): WhereFilterOp;
13
+ protected subscribeToDocumentChangeListerner(prop: PersistentProperty, listener: DocumentChangeListerner): DocumentChangeListernerHandler | undefined;
14
+ private _lastQuery;
15
+ private _lastLimit;
16
+ private _lastDocRetrieved;
17
+ }
@@ -0,0 +1,115 @@
1
+ import { DataSource, Persistent } from 'entropic-bond';
2
+ import { FirebaseAdminHelper } from '../firebase-admin-helper';
3
+ import { Filter } from 'firebase-admin/firestore';
4
+ import * as functions from 'firebase-functions/v2';
5
+ export class FirebaseAdminDatasource extends DataSource {
6
+ constructor() {
7
+ super(...arguments);
8
+ this._lastLimit = 0;
9
+ }
10
+ findById(id, collectionName) {
11
+ const db = FirebaseAdminHelper.instance.firestore();
12
+ return new Promise(async (resolve) => {
13
+ try {
14
+ const docSnap = db.doc(`${collectionName}/${id}`);
15
+ const retrievedObj = await docSnap.get();
16
+ resolve(retrievedObj.data());
17
+ }
18
+ catch (error) {
19
+ console.log(error);
20
+ return null;
21
+ }
22
+ });
23
+ }
24
+ save(collections) {
25
+ const db = FirebaseAdminHelper.instance.firestore();
26
+ const batch = db.batch();
27
+ Object.entries(collections).forEach(([collectionName, collection]) => {
28
+ collection?.forEach(document => {
29
+ const ref = db.doc(`${collectionName}/${document.id}`);
30
+ batch.set(ref, document);
31
+ });
32
+ });
33
+ return batch.commit();
34
+ }
35
+ find(queryObject, collectionName) {
36
+ const query = this.queryObjectToFirebaseQuery(queryObject, collectionName);
37
+ this._lastQuery = query;
38
+ return this.getFromQuery(query);
39
+ }
40
+ async count(queryObject, collectionName) {
41
+ const query = this.queryObjectToFirebaseQuery(queryObject, collectionName);
42
+ const snapShot = await query.count().get();
43
+ return snapShot.data().count;
44
+ }
45
+ delete(id, collectionName) {
46
+ const db = FirebaseAdminHelper.instance.firestore();
47
+ return db.recursiveDelete(db.doc(`${collectionName}/${id}`));
48
+ }
49
+ next(maxDocs) {
50
+ if (!this._lastQuery)
51
+ throw new Error('You should perform a query prior to using method next');
52
+ this._lastLimit = maxDocs || this._lastLimit;
53
+ const query = this._lastQuery.limit(this._lastLimit).startAfter(this._lastDocRetrieved);
54
+ return this.getFromQuery(query);
55
+ }
56
+ // prev should be used with next in reverse order
57
+ // prev( limit?: number ): Promise< DocumentObject[] > {
58
+ // }
59
+ getFromQuery(query) {
60
+ return new Promise(async (resolve) => {
61
+ const doc = await query.get();
62
+ this._lastDocRetrieved = doc.docs[doc.docs.length - 1];
63
+ resolve(doc.docs.map(doc => doc.data()));
64
+ });
65
+ }
66
+ queryObjectToFirebaseQuery(queryObject, collectionName) {
67
+ const db = FirebaseAdminHelper.instance.firestore();
68
+ const andConstraints = [];
69
+ const orConstraints = [];
70
+ DataSource.toPropertyPathOperations(queryObject.operations).forEach(operation => {
71
+ const operator = this.toFirebaseOperator(operation.operator);
72
+ if (operation.aggregate)
73
+ orConstraints.push(Filter.where(operation.property, operator, operation.value));
74
+ else
75
+ andConstraints.push(Filter.where(operation.property, operator, operation.value));
76
+ });
77
+ let query = db.collection(collectionName).where(Filter.or(...orConstraints, Filter.and(...andConstraints)));
78
+ if (queryObject.sort?.propertyName) {
79
+ query = query.orderBy(queryObject.sort.propertyName, queryObject.sort.order);
80
+ }
81
+ if (queryObject.limit) {
82
+ this._lastLimit = queryObject.limit;
83
+ query = query.limit(queryObject.limit);
84
+ }
85
+ return query;
86
+ }
87
+ toFirebaseOperator(operator) {
88
+ switch (operator) {
89
+ case '==':
90
+ case '!=':
91
+ case '<':
92
+ case '<=':
93
+ case '>':
94
+ case '>=': return operator;
95
+ case 'contains': return 'array-contains';
96
+ case 'containsAny': return 'array-contains-any';
97
+ default: return operator;
98
+ }
99
+ }
100
+ subscribeToDocumentChangeListerner(prop, listener) {
101
+ const collectionPath = Persistent.collectionPath(undefined, prop);
102
+ const handler = functions.firestore.onDocumentUpdated(collectionPath, event => {
103
+ const snapshot = event.data;
104
+ listener({
105
+ before: Persistent.createInstance(snapshot?.before.data()).toObject(),
106
+ after: Persistent.createInstance(snapshot?.after.data()).toObject()
107
+ });
108
+ });
109
+ return {
110
+ uninstall: () => { },
111
+ nativeHandler: handler
112
+ };
113
+ }
114
+ }
115
+ //# sourceMappingURL=firebase-admin-datasource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"firebase-admin-datasource.js","sourceRoot":"","sources":["../../../src/store/firebase-admin-datasource.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,18 +1,18 @@
1
1
  {
2
2
  "name": "@entropic-bond/firebase-admin",
3
- "type": "module",
4
- "version": "1.6.3",
3
+ "type": "commonjs",
4
+ "version": "1.7.0",
5
5
  "description": "Firebase Admin plugins for Entropic Bond",
6
- "main": "lib/entropic-bond-firebase-admin.umd.cjs",
7
- "module": "lib/entropic-bond-firebase-admin.js",
6
+ "main": "lib/cjs/index.js",
7
+ "module": "lib/esm/index.js",
8
8
  "exports": {
9
9
  ".": {
10
- "import": "./lib/entropic-bond-firebase-admin.js",
11
- "require": "./lib/entropic-bond-firebase-admin.umd.cjs",
12
- "types": "./lib/index.d.ts"
10
+ "import": "./lib/esm/index.js",
11
+ "require": "./lib/cjs/index.js",
12
+ "types": "./lib/esm/index.d.ts"
13
13
  }
14
14
  },
15
- "types": "./lib/index.d.ts",
15
+ "types": "./lib/esm/index.d.ts",
16
16
  "files": [
17
17
  "lib"
18
18
  ],
@@ -33,9 +33,12 @@
33
33
  },
34
34
  "scripts": {
35
35
  "test": "firebase emulators:exec --project demo-test 'vitest'",
36
- "build": "vite build",
36
+ "build": "npm run build-module && npm run build-cjs",
37
+ "build-with-vite": "tsc -p tsconfig-build.json && vite build",
38
+ "build-module": "tsc -p tsconfig-module.json",
39
+ "build-cjs": "tsc -p tsconfig-cjs.json",
37
40
  "prepare": "npm run build",
38
- "emulators": "firebase emulators:start --project demo-test"
41
+ "emulators": "firebase emulators:start --project demo-test --inspect-functions"
39
42
  },
40
43
  "repository": {
41
44
  "type": "git",
@@ -54,18 +57,19 @@
54
57
  "devDependencies": {
55
58
  "@semantic-release/changelog": "^6.0.3",
56
59
  "@semantic-release/git": "^10.0.1",
57
- "@types/node": "^20.11.17",
60
+ "@types/node": "^20.12.7",
58
61
  "git-branch-is": "^4.0.0",
59
- "husky": "^9.0.10",
60
- "semantic-release": "^23.0.2",
61
- "typescript": "^5.3.3",
62
- "vite": "^5.1.1",
63
- "vite-plugin-dts": "^3.7.2",
64
- "vitest": "^1.2.2"
62
+ "husky": "^9.0.11",
63
+ "semantic-release": "^23.0.8",
64
+ "typescript": "^5.4.5",
65
+ "vite": "^5.2.9",
66
+ "vite-plugin-dts": "^3.8.3",
67
+ "vitest": "^1.5.0"
65
68
  },
66
69
  "dependencies": {
67
- "entropic-bond": "^1.50.4",
68
- "firebase-admin": "^12.0.0"
70
+ "entropic-bond": "^1.51.2",
71
+ "firebase-admin": "^12.1.0",
72
+ "firebase-functions": "^4.9.0"
69
73
  },
70
74
  "husky": {
71
75
  "hooks": {