@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.
- package/lib/cjs/firebase-admin-helper.js +25 -0
- package/lib/cjs/firebase-admin-helper.js.map +1 -0
- package/lib/cjs/index.js +20 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/mocks/test-user.js +134 -0
- package/lib/cjs/mocks/test-user.js.map +1 -0
- package/lib/cjs/server-auth/firebase-server-auth.js +50 -0
- package/lib/cjs/server-auth/firebase-server-auth.js.map +1 -0
- package/lib/{store → cjs/store}/firebase-admin-datasource.d.ts +2 -1
- package/lib/cjs/store/firebase-admin-datasource.js +142 -0
- package/lib/cjs/store/firebase-admin-datasource.js.map +1 -0
- package/lib/esm/firebase-admin-helper.d.ts +11 -0
- package/lib/esm/firebase-admin-helper.js +21 -0
- package/lib/esm/firebase-admin-helper.js.map +1 -0
- package/lib/esm/index.d.ts +3 -0
- package/lib/esm/index.js +4 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/mocks/test-user.d.ts +49 -0
- package/lib/esm/mocks/test-user.js +131 -0
- package/lib/esm/mocks/test-user.js.map +1 -0
- package/lib/esm/server-auth/firebase-server-auth.d.ts +8 -0
- package/lib/esm/server-auth/firebase-server-auth.js +46 -0
- package/lib/esm/server-auth/firebase-server-auth.js.map +1 -0
- package/lib/esm/store/firebase-admin-datasource.d.ts +17 -0
- package/lib/esm/store/firebase-admin-datasource.js +115 -0
- package/lib/esm/store/firebase-admin-datasource.js.map +1 -0
- package/package.json +23 -19
- package/lib/entropic-bond-firebase-admin.js +0 -89721
- package/lib/entropic-bond-firebase-admin.js.map +0 -1
- package/lib/entropic-bond-firebase-admin.umd.cjs +0 -1054
- package/lib/entropic-bond-firebase-admin.umd.cjs.map +0 -1
- package/lib/server-auth/firebase-server-auth.spec.d.ts +0 -1
- package/lib/store/firebase-admin-datasource.spec.d.ts +0 -1
- /package/lib/{firebase-admin-helper.d.ts → cjs/firebase-admin-helper.d.ts} +0 -0
- /package/lib/{index.d.ts → cjs/index.d.ts} +0 -0
- /package/lib/{mocks → cjs/mocks}/test-user.d.ts +0 -0
- /package/lib/{server-auth → cjs/server-auth}/firebase-server-auth.d.ts +0 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FirebaseAdminHelper = void 0;
|
|
4
|
+
const app_1 = require("firebase-admin/app");
|
|
5
|
+
const auth_1 = require("firebase-admin/auth");
|
|
6
|
+
const firestore_1 = require("firebase-admin/firestore");
|
|
7
|
+
class FirebaseAdminHelper {
|
|
8
|
+
static setFirebaseConfig(config) {
|
|
9
|
+
FirebaseAdminHelper._firebaseConfig = config;
|
|
10
|
+
}
|
|
11
|
+
constructor() {
|
|
12
|
+
(0, app_1.initializeApp)(FirebaseAdminHelper._firebaseConfig);
|
|
13
|
+
}
|
|
14
|
+
static get instance() {
|
|
15
|
+
return this._instance || (this._instance = new FirebaseAdminHelper());
|
|
16
|
+
}
|
|
17
|
+
firestore() {
|
|
18
|
+
return (0, firestore_1.getFirestore)();
|
|
19
|
+
}
|
|
20
|
+
auth() {
|
|
21
|
+
return (0, auth_1.getAuth)();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.FirebaseAdminHelper = FirebaseAdminHelper;
|
|
25
|
+
//# sourceMappingURL=firebase-admin-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"firebase-admin-helper.js","sourceRoot":"","sources":["../../src/firebase-admin-helper.ts"],"names":[],"mappings":";;;AAAA,4CAA8D;AAC9D,8CAAmD;AACnD,wDAAuD;AAEvD,MAAa,mBAAmB;IAE/B,MAAM,CAAC,iBAAiB,CAAE,MAAmB;QAC5C,mBAAmB,CAAC,eAAe,GAAG,MAAM,CAAA;IAC7C,CAAC;IAED;QACC,IAAA,mBAAa,EAAE,mBAAmB,CAAC,eAAe,CAAE,CAAA;IACrD,CAAC;IAED,MAAM,KAAK,QAAQ;QAClB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAE,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAE,CAAA;IACxE,CAAC;IAED,SAAS;QACR,OAAO,IAAA,wBAAY,GAAE,CAAA;IACtB,CAAC;IAED,IAAI;QACH,OAAO,IAAA,cAAO,GAAE,CAAA;IACjB,CAAC;CAID;AAxBD,kDAwBC"}
|
package/lib/cjs/index.js
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./store/firebase-admin-datasource"), exports);
|
|
18
|
+
__exportStar(require("./firebase-admin-helper"), exports);
|
|
19
|
+
__exportStar(require("./server-auth/firebase-server-auth"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oEAAiD;AACjD,0DAAuC;AACvC,qEAAkD"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.DerivedUser = exports.TestUser = exports.SubClass = void 0;
|
|
10
|
+
const entropic_bond_1 = require("entropic-bond");
|
|
11
|
+
let SubClass = class SubClass extends entropic_bond_1.Persistent {
|
|
12
|
+
set year(value) {
|
|
13
|
+
this._year = value;
|
|
14
|
+
}
|
|
15
|
+
get year() {
|
|
16
|
+
return this._year;
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
exports.SubClass = SubClass;
|
|
20
|
+
__decorate([
|
|
21
|
+
entropic_bond_1.persistent
|
|
22
|
+
], SubClass.prototype, "_year", void 0);
|
|
23
|
+
exports.SubClass = SubClass = __decorate([
|
|
24
|
+
(0, entropic_bond_1.registerPersistentClass)('SubClass')
|
|
25
|
+
], SubClass);
|
|
26
|
+
let TestUser = class TestUser extends entropic_bond_1.Persistent {
|
|
27
|
+
constructor() {
|
|
28
|
+
super(...arguments);
|
|
29
|
+
this._colleagues = [];
|
|
30
|
+
this._manyRefs = [];
|
|
31
|
+
}
|
|
32
|
+
set name(value) {
|
|
33
|
+
this._name = value;
|
|
34
|
+
}
|
|
35
|
+
get name() {
|
|
36
|
+
return this._name;
|
|
37
|
+
}
|
|
38
|
+
set age(value) {
|
|
39
|
+
this._age = value;
|
|
40
|
+
}
|
|
41
|
+
get age() {
|
|
42
|
+
return this._age;
|
|
43
|
+
}
|
|
44
|
+
set admin(value) {
|
|
45
|
+
this._admin = value;
|
|
46
|
+
}
|
|
47
|
+
get admin() {
|
|
48
|
+
return this._admin;
|
|
49
|
+
}
|
|
50
|
+
set skills(value) {
|
|
51
|
+
this._skills = value;
|
|
52
|
+
}
|
|
53
|
+
get skills() {
|
|
54
|
+
return this._skills;
|
|
55
|
+
}
|
|
56
|
+
set documentRef(value) {
|
|
57
|
+
this._documentRef = value;
|
|
58
|
+
}
|
|
59
|
+
get documentRef() {
|
|
60
|
+
return this._documentRef;
|
|
61
|
+
}
|
|
62
|
+
set manyRefs(value) {
|
|
63
|
+
this._manyRefs = value;
|
|
64
|
+
}
|
|
65
|
+
get manyRefs() {
|
|
66
|
+
return this._manyRefs;
|
|
67
|
+
}
|
|
68
|
+
set derived(value) {
|
|
69
|
+
this._derived = value;
|
|
70
|
+
}
|
|
71
|
+
get derived() {
|
|
72
|
+
return this._derived;
|
|
73
|
+
}
|
|
74
|
+
set manyDerived(value) {
|
|
75
|
+
this._manyDerived = value;
|
|
76
|
+
}
|
|
77
|
+
get manyDerived() {
|
|
78
|
+
return this._manyDerived;
|
|
79
|
+
}
|
|
80
|
+
set colleagues(value) {
|
|
81
|
+
this._colleagues = value;
|
|
82
|
+
}
|
|
83
|
+
get colleagues() {
|
|
84
|
+
return this._colleagues;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
exports.TestUser = TestUser;
|
|
88
|
+
__decorate([
|
|
89
|
+
entropic_bond_1.persistent,
|
|
90
|
+
entropic_bond_1.searchableArray
|
|
91
|
+
], TestUser.prototype, "_colleagues", void 0);
|
|
92
|
+
__decorate([
|
|
93
|
+
entropic_bond_1.persistent
|
|
94
|
+
], TestUser.prototype, "_name", void 0);
|
|
95
|
+
__decorate([
|
|
96
|
+
entropic_bond_1.persistent
|
|
97
|
+
], TestUser.prototype, "_age", void 0);
|
|
98
|
+
__decorate([
|
|
99
|
+
entropic_bond_1.persistent
|
|
100
|
+
], TestUser.prototype, "_admin", void 0);
|
|
101
|
+
__decorate([
|
|
102
|
+
entropic_bond_1.persistent
|
|
103
|
+
], TestUser.prototype, "_skills", void 0);
|
|
104
|
+
__decorate([
|
|
105
|
+
entropic_bond_1.persistentReference
|
|
106
|
+
], TestUser.prototype, "_documentRef", void 0);
|
|
107
|
+
__decorate([
|
|
108
|
+
entropic_bond_1.persistentReference
|
|
109
|
+
], TestUser.prototype, "_manyRefs", void 0);
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, entropic_bond_1.persistentReferenceAt)('TestUser')
|
|
112
|
+
], TestUser.prototype, "_derived", void 0);
|
|
113
|
+
__decorate([
|
|
114
|
+
(0, entropic_bond_1.persistentReferenceAt)('TestUser')
|
|
115
|
+
], TestUser.prototype, "_manyDerived", void 0);
|
|
116
|
+
exports.TestUser = TestUser = __decorate([
|
|
117
|
+
(0, entropic_bond_1.registerPersistentClass)('TestUser')
|
|
118
|
+
], TestUser);
|
|
119
|
+
let DerivedUser = class DerivedUser extends TestUser {
|
|
120
|
+
set salary(value) {
|
|
121
|
+
this._salary = value;
|
|
122
|
+
}
|
|
123
|
+
get salary() {
|
|
124
|
+
return this._salary;
|
|
125
|
+
}
|
|
126
|
+
};
|
|
127
|
+
exports.DerivedUser = DerivedUser;
|
|
128
|
+
__decorate([
|
|
129
|
+
entropic_bond_1.persistent
|
|
130
|
+
], DerivedUser.prototype, "_salary", void 0);
|
|
131
|
+
exports.DerivedUser = DerivedUser = __decorate([
|
|
132
|
+
(0, entropic_bond_1.registerPersistentClass)('DerivedUser')
|
|
133
|
+
], DerivedUser);
|
|
134
|
+
//# sourceMappingURL=test-user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-user.js","sourceRoot":"","sources":["../../../src/mocks/test-user.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FirebaseServerAuth = void 0;
|
|
4
|
+
const entropic_bond_1 = require("entropic-bond");
|
|
5
|
+
const firebase_admin_helper_1 = require("../firebase-admin-helper");
|
|
6
|
+
class FirebaseServerAuth extends entropic_bond_1.ServerAuthService {
|
|
7
|
+
async getUser(userId) {
|
|
8
|
+
try {
|
|
9
|
+
return this.convertToUserCredentials(await firebase_admin_helper_1.FirebaseAdminHelper.instance.auth().getUser(userId));
|
|
10
|
+
}
|
|
11
|
+
catch (error) {
|
|
12
|
+
if (error.code === 'auth/user-not-found')
|
|
13
|
+
return undefined;
|
|
14
|
+
else
|
|
15
|
+
throw new Error(error);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
setCustomCredentials(userId, customCredentials) {
|
|
19
|
+
return firebase_admin_helper_1.FirebaseAdminHelper.instance.auth().setCustomUserClaims(userId, customCredentials);
|
|
20
|
+
}
|
|
21
|
+
async updateUser(userId, credentials) {
|
|
22
|
+
return this.convertToUserCredentials(await firebase_admin_helper_1.FirebaseAdminHelper.instance.auth().updateUser(userId, credentials));
|
|
23
|
+
}
|
|
24
|
+
async deleteUser(userId) {
|
|
25
|
+
try {
|
|
26
|
+
await firebase_admin_helper_1.FirebaseAdminHelper.instance.auth().deleteUser(userId);
|
|
27
|
+
}
|
|
28
|
+
catch (error) {
|
|
29
|
+
if (error.code === 'auth/user-not-found')
|
|
30
|
+
return undefined;
|
|
31
|
+
else
|
|
32
|
+
throw new Error(error);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
convertToUserCredentials(userData) {
|
|
36
|
+
return {
|
|
37
|
+
id: userData.uid,
|
|
38
|
+
email: userData.email ?? '',
|
|
39
|
+
emailVerified: userData.emailVerified ?? undefined,
|
|
40
|
+
creationDate: userData.metadata.creationTime ? new Date(userData.metadata.creationTime).getTime() : undefined,
|
|
41
|
+
lastLogin: userData.metadata.lastSignInTime ? new Date(userData.metadata.lastSignInTime).getTime() : undefined,
|
|
42
|
+
name: userData.displayName,
|
|
43
|
+
phoneNumber: userData.phoneNumber ?? undefined,
|
|
44
|
+
pictureUrl: userData.photoURL ?? undefined,
|
|
45
|
+
customData: userData.customClaims
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.FirebaseServerAuth = FirebaseServerAuth;
|
|
50
|
+
//# 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,iDAAqF;AACrF,oEAA8D;AAG9D,MAAa,kBAAmB,SAAQ,iCAAiB;IAExD,KAAK,CAAC,OAAO,CAAgB,MAAc;QAC1C,IAAI,CAAC;YACJ,OAAO,IAAI,CAAC,wBAAwB,CACnC,MAAM,2CAAmB,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,2CAAmB,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,2CAAmB,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,2CAAmB,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;AA9CD,gDA8CC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Collections, DataSource, DocumentObject, QueryObject, QueryOperator } from 'entropic-bond';
|
|
1
|
+
import { Collections, DataSource, DocumentChangeListerner, DocumentChangeListernerHandler, DocumentObject, PersistentProperty, QueryObject, QueryOperator } from 'entropic-bond';
|
|
2
2
|
import { WhereFilterOp } from 'firebase-admin/firestore';
|
|
3
3
|
export declare class FirebaseAdminDatasource extends DataSource {
|
|
4
4
|
findById(id: string, collectionName: string): Promise<DocumentObject>;
|
|
@@ -10,6 +10,7 @@ export declare class FirebaseAdminDatasource extends DataSource {
|
|
|
10
10
|
private getFromQuery;
|
|
11
11
|
private queryObjectToFirebaseQuery;
|
|
12
12
|
toFirebaseOperator(operator: QueryOperator): WhereFilterOp;
|
|
13
|
+
protected subscribeToDocumentChangeListerner(prop: PersistentProperty, listener: DocumentChangeListerner): DocumentChangeListernerHandler | undefined;
|
|
13
14
|
private _lastQuery;
|
|
14
15
|
private _lastLimit;
|
|
15
16
|
private _lastDocRetrieved;
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.FirebaseAdminDatasource = void 0;
|
|
27
|
+
const entropic_bond_1 = require("entropic-bond");
|
|
28
|
+
const firebase_admin_helper_1 = require("../firebase-admin-helper");
|
|
29
|
+
const firestore_1 = require("firebase-admin/firestore");
|
|
30
|
+
const functions = __importStar(require("firebase-functions/v2"));
|
|
31
|
+
class FirebaseAdminDatasource extends entropic_bond_1.DataSource {
|
|
32
|
+
constructor() {
|
|
33
|
+
super(...arguments);
|
|
34
|
+
this._lastLimit = 0;
|
|
35
|
+
}
|
|
36
|
+
findById(id, collectionName) {
|
|
37
|
+
const db = firebase_admin_helper_1.FirebaseAdminHelper.instance.firestore();
|
|
38
|
+
return new Promise(async (resolve) => {
|
|
39
|
+
try {
|
|
40
|
+
const docSnap = db.doc(`${collectionName}/${id}`);
|
|
41
|
+
const retrievedObj = await docSnap.get();
|
|
42
|
+
resolve(retrievedObj.data());
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
console.log(error);
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
save(collections) {
|
|
51
|
+
const db = firebase_admin_helper_1.FirebaseAdminHelper.instance.firestore();
|
|
52
|
+
const batch = db.batch();
|
|
53
|
+
Object.entries(collections).forEach(([collectionName, collection]) => {
|
|
54
|
+
collection?.forEach(document => {
|
|
55
|
+
const ref = db.doc(`${collectionName}/${document.id}`);
|
|
56
|
+
batch.set(ref, document);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
return batch.commit();
|
|
60
|
+
}
|
|
61
|
+
find(queryObject, collectionName) {
|
|
62
|
+
const query = this.queryObjectToFirebaseQuery(queryObject, collectionName);
|
|
63
|
+
this._lastQuery = query;
|
|
64
|
+
return this.getFromQuery(query);
|
|
65
|
+
}
|
|
66
|
+
async count(queryObject, collectionName) {
|
|
67
|
+
const query = this.queryObjectToFirebaseQuery(queryObject, collectionName);
|
|
68
|
+
const snapShot = await query.count().get();
|
|
69
|
+
return snapShot.data().count;
|
|
70
|
+
}
|
|
71
|
+
delete(id, collectionName) {
|
|
72
|
+
const db = firebase_admin_helper_1.FirebaseAdminHelper.instance.firestore();
|
|
73
|
+
return db.recursiveDelete(db.doc(`${collectionName}/${id}`));
|
|
74
|
+
}
|
|
75
|
+
next(maxDocs) {
|
|
76
|
+
if (!this._lastQuery)
|
|
77
|
+
throw new Error('You should perform a query prior to using method next');
|
|
78
|
+
this._lastLimit = maxDocs || this._lastLimit;
|
|
79
|
+
const query = this._lastQuery.limit(this._lastLimit).startAfter(this._lastDocRetrieved);
|
|
80
|
+
return this.getFromQuery(query);
|
|
81
|
+
}
|
|
82
|
+
// prev should be used with next in reverse order
|
|
83
|
+
// prev( limit?: number ): Promise< DocumentObject[] > {
|
|
84
|
+
// }
|
|
85
|
+
getFromQuery(query) {
|
|
86
|
+
return new Promise(async (resolve) => {
|
|
87
|
+
const doc = await query.get();
|
|
88
|
+
this._lastDocRetrieved = doc.docs[doc.docs.length - 1];
|
|
89
|
+
resolve(doc.docs.map(doc => doc.data()));
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
queryObjectToFirebaseQuery(queryObject, collectionName) {
|
|
93
|
+
const db = firebase_admin_helper_1.FirebaseAdminHelper.instance.firestore();
|
|
94
|
+
const andConstraints = [];
|
|
95
|
+
const orConstraints = [];
|
|
96
|
+
entropic_bond_1.DataSource.toPropertyPathOperations(queryObject.operations).forEach(operation => {
|
|
97
|
+
const operator = this.toFirebaseOperator(operation.operator);
|
|
98
|
+
if (operation.aggregate)
|
|
99
|
+
orConstraints.push(firestore_1.Filter.where(operation.property, operator, operation.value));
|
|
100
|
+
else
|
|
101
|
+
andConstraints.push(firestore_1.Filter.where(operation.property, operator, operation.value));
|
|
102
|
+
});
|
|
103
|
+
let query = db.collection(collectionName).where(firestore_1.Filter.or(...orConstraints, firestore_1.Filter.and(...andConstraints)));
|
|
104
|
+
if (queryObject.sort?.propertyName) {
|
|
105
|
+
query = query.orderBy(queryObject.sort.propertyName, queryObject.sort.order);
|
|
106
|
+
}
|
|
107
|
+
if (queryObject.limit) {
|
|
108
|
+
this._lastLimit = queryObject.limit;
|
|
109
|
+
query = query.limit(queryObject.limit);
|
|
110
|
+
}
|
|
111
|
+
return query;
|
|
112
|
+
}
|
|
113
|
+
toFirebaseOperator(operator) {
|
|
114
|
+
switch (operator) {
|
|
115
|
+
case '==':
|
|
116
|
+
case '!=':
|
|
117
|
+
case '<':
|
|
118
|
+
case '<=':
|
|
119
|
+
case '>':
|
|
120
|
+
case '>=': return operator;
|
|
121
|
+
case 'contains': return 'array-contains';
|
|
122
|
+
case 'containsAny': return 'array-contains-any';
|
|
123
|
+
default: return operator;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
subscribeToDocumentChangeListerner(prop, listener) {
|
|
127
|
+
const collectionPath = entropic_bond_1.Persistent.collectionPath(undefined, prop);
|
|
128
|
+
const handler = functions.firestore.onDocumentUpdated(collectionPath, event => {
|
|
129
|
+
const snapshot = event.data;
|
|
130
|
+
listener({
|
|
131
|
+
before: entropic_bond_1.Persistent.createInstance(snapshot?.before.data()).toObject(),
|
|
132
|
+
after: entropic_bond_1.Persistent.createInstance(snapshot?.after.data()).toObject()
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
return {
|
|
136
|
+
uninstall: () => { },
|
|
137
|
+
nativeHandler: handler
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
exports.FirebaseAdminDatasource = FirebaseAdminDatasource;
|
|
142
|
+
//# 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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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AppOptions } from 'firebase-admin/app';
|
|
2
|
+
import { Auth } from 'firebase-admin/auth';
|
|
3
|
+
export declare class FirebaseAdminHelper {
|
|
4
|
+
static setFirebaseConfig(config?: AppOptions): void;
|
|
5
|
+
private constructor();
|
|
6
|
+
static get instance(): FirebaseAdminHelper;
|
|
7
|
+
firestore(): FirebaseFirestore.Firestore;
|
|
8
|
+
auth(): Auth;
|
|
9
|
+
private static _instance;
|
|
10
|
+
private static _firebaseConfig;
|
|
11
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { initializeApp } from 'firebase-admin/app';
|
|
2
|
+
import { getAuth } from 'firebase-admin/auth';
|
|
3
|
+
import { getFirestore } from 'firebase-admin/firestore';
|
|
4
|
+
export class FirebaseAdminHelper {
|
|
5
|
+
static setFirebaseConfig(config) {
|
|
6
|
+
FirebaseAdminHelper._firebaseConfig = config;
|
|
7
|
+
}
|
|
8
|
+
constructor() {
|
|
9
|
+
initializeApp(FirebaseAdminHelper._firebaseConfig);
|
|
10
|
+
}
|
|
11
|
+
static get instance() {
|
|
12
|
+
return this._instance || (this._instance = new FirebaseAdminHelper());
|
|
13
|
+
}
|
|
14
|
+
firestore() {
|
|
15
|
+
return getFirestore();
|
|
16
|
+
}
|
|
17
|
+
auth() {
|
|
18
|
+
return getAuth();
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=firebase-admin-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"firebase-admin-helper.js","sourceRoot":"","sources":["../../src/firebase-admin-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAC9D,OAAO,EAAQ,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAEvD,MAAM,OAAO,mBAAmB;IAE/B,MAAM,CAAC,iBAAiB,CAAE,MAAmB;QAC5C,mBAAmB,CAAC,eAAe,GAAG,MAAM,CAAA;IAC7C,CAAC;IAED;QACC,aAAa,CAAE,mBAAmB,CAAC,eAAe,CAAE,CAAA;IACrD,CAAC;IAED,MAAM,KAAK,QAAQ;QAClB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAE,IAAI,CAAC,SAAS,GAAG,IAAI,mBAAmB,EAAE,CAAE,CAAA;IACxE,CAAC;IAED,SAAS;QACR,OAAO,YAAY,EAAE,CAAA;IACtB,CAAC;IAED,IAAI;QACH,OAAO,OAAO,EAAE,CAAA;IACjB,CAAC;CAID"}
|
package/lib/esm/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAA;AACjD,cAAc,yBAAyB,CAAA;AACvC,cAAc,oCAAoC,CAAA"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { Persistent } from 'entropic-bond';
|
|
2
|
+
interface Name {
|
|
3
|
+
firstName: string;
|
|
4
|
+
lastName: string;
|
|
5
|
+
ancestorName?: {
|
|
6
|
+
father?: string;
|
|
7
|
+
mother?: string;
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export declare class SubClass extends Persistent {
|
|
11
|
+
set year(value: number | undefined);
|
|
12
|
+
get year(): number | undefined;
|
|
13
|
+
private _year;
|
|
14
|
+
}
|
|
15
|
+
export declare class TestUser extends Persistent {
|
|
16
|
+
set name(value: Name | undefined);
|
|
17
|
+
get name(): Name | undefined;
|
|
18
|
+
set age(value: number | undefined);
|
|
19
|
+
get age(): number | undefined;
|
|
20
|
+
set admin(value: boolean | undefined);
|
|
21
|
+
get admin(): boolean | undefined;
|
|
22
|
+
set skills(value: string[] | undefined);
|
|
23
|
+
get skills(): string[] | undefined;
|
|
24
|
+
set documentRef(value: SubClass | undefined);
|
|
25
|
+
get documentRef(): SubClass | undefined;
|
|
26
|
+
set manyRefs(value: SubClass[]);
|
|
27
|
+
get manyRefs(): SubClass[];
|
|
28
|
+
set derived(value: DerivedUser | undefined);
|
|
29
|
+
get derived(): DerivedUser | undefined;
|
|
30
|
+
set manyDerived(value: DerivedUser[] | undefined);
|
|
31
|
+
get manyDerived(): DerivedUser[] | undefined;
|
|
32
|
+
set colleagues(value: TestUser[]);
|
|
33
|
+
get colleagues(): TestUser[];
|
|
34
|
+
private _colleagues;
|
|
35
|
+
private _name;
|
|
36
|
+
private _age;
|
|
37
|
+
private _admin;
|
|
38
|
+
private _skills;
|
|
39
|
+
private _documentRef;
|
|
40
|
+
private _manyRefs;
|
|
41
|
+
private _derived;
|
|
42
|
+
private _manyDerived;
|
|
43
|
+
}
|
|
44
|
+
export declare class DerivedUser extends TestUser {
|
|
45
|
+
set salary(value: number | undefined);
|
|
46
|
+
get salary(): number | undefined;
|
|
47
|
+
private _salary;
|
|
48
|
+
}
|
|
49
|
+
export {};
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { persistent, Persistent, persistentReference, persistentReferenceAt, registerPersistentClass, searchableArray } from 'entropic-bond';
|
|
8
|
+
let SubClass = class SubClass extends Persistent {
|
|
9
|
+
set year(value) {
|
|
10
|
+
this._year = value;
|
|
11
|
+
}
|
|
12
|
+
get year() {
|
|
13
|
+
return this._year;
|
|
14
|
+
}
|
|
15
|
+
};
|
|
16
|
+
__decorate([
|
|
17
|
+
persistent
|
|
18
|
+
], SubClass.prototype, "_year", void 0);
|
|
19
|
+
SubClass = __decorate([
|
|
20
|
+
registerPersistentClass('SubClass')
|
|
21
|
+
], SubClass);
|
|
22
|
+
export { SubClass };
|
|
23
|
+
let TestUser = class TestUser extends Persistent {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(...arguments);
|
|
26
|
+
this._colleagues = [];
|
|
27
|
+
this._manyRefs = [];
|
|
28
|
+
}
|
|
29
|
+
set name(value) {
|
|
30
|
+
this._name = value;
|
|
31
|
+
}
|
|
32
|
+
get name() {
|
|
33
|
+
return this._name;
|
|
34
|
+
}
|
|
35
|
+
set age(value) {
|
|
36
|
+
this._age = value;
|
|
37
|
+
}
|
|
38
|
+
get age() {
|
|
39
|
+
return this._age;
|
|
40
|
+
}
|
|
41
|
+
set admin(value) {
|
|
42
|
+
this._admin = value;
|
|
43
|
+
}
|
|
44
|
+
get admin() {
|
|
45
|
+
return this._admin;
|
|
46
|
+
}
|
|
47
|
+
set skills(value) {
|
|
48
|
+
this._skills = value;
|
|
49
|
+
}
|
|
50
|
+
get skills() {
|
|
51
|
+
return this._skills;
|
|
52
|
+
}
|
|
53
|
+
set documentRef(value) {
|
|
54
|
+
this._documentRef = value;
|
|
55
|
+
}
|
|
56
|
+
get documentRef() {
|
|
57
|
+
return this._documentRef;
|
|
58
|
+
}
|
|
59
|
+
set manyRefs(value) {
|
|
60
|
+
this._manyRefs = value;
|
|
61
|
+
}
|
|
62
|
+
get manyRefs() {
|
|
63
|
+
return this._manyRefs;
|
|
64
|
+
}
|
|
65
|
+
set derived(value) {
|
|
66
|
+
this._derived = value;
|
|
67
|
+
}
|
|
68
|
+
get derived() {
|
|
69
|
+
return this._derived;
|
|
70
|
+
}
|
|
71
|
+
set manyDerived(value) {
|
|
72
|
+
this._manyDerived = value;
|
|
73
|
+
}
|
|
74
|
+
get manyDerived() {
|
|
75
|
+
return this._manyDerived;
|
|
76
|
+
}
|
|
77
|
+
set colleagues(value) {
|
|
78
|
+
this._colleagues = value;
|
|
79
|
+
}
|
|
80
|
+
get colleagues() {
|
|
81
|
+
return this._colleagues;
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
__decorate([
|
|
85
|
+
persistent,
|
|
86
|
+
searchableArray
|
|
87
|
+
], TestUser.prototype, "_colleagues", void 0);
|
|
88
|
+
__decorate([
|
|
89
|
+
persistent
|
|
90
|
+
], TestUser.prototype, "_name", void 0);
|
|
91
|
+
__decorate([
|
|
92
|
+
persistent
|
|
93
|
+
], TestUser.prototype, "_age", void 0);
|
|
94
|
+
__decorate([
|
|
95
|
+
persistent
|
|
96
|
+
], TestUser.prototype, "_admin", void 0);
|
|
97
|
+
__decorate([
|
|
98
|
+
persistent
|
|
99
|
+
], TestUser.prototype, "_skills", void 0);
|
|
100
|
+
__decorate([
|
|
101
|
+
persistentReference
|
|
102
|
+
], TestUser.prototype, "_documentRef", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
persistentReference
|
|
105
|
+
], TestUser.prototype, "_manyRefs", void 0);
|
|
106
|
+
__decorate([
|
|
107
|
+
persistentReferenceAt('TestUser')
|
|
108
|
+
], TestUser.prototype, "_derived", void 0);
|
|
109
|
+
__decorate([
|
|
110
|
+
persistentReferenceAt('TestUser')
|
|
111
|
+
], TestUser.prototype, "_manyDerived", void 0);
|
|
112
|
+
TestUser = __decorate([
|
|
113
|
+
registerPersistentClass('TestUser')
|
|
114
|
+
], TestUser);
|
|
115
|
+
export { TestUser };
|
|
116
|
+
let DerivedUser = class DerivedUser extends TestUser {
|
|
117
|
+
set salary(value) {
|
|
118
|
+
this._salary = value;
|
|
119
|
+
}
|
|
120
|
+
get salary() {
|
|
121
|
+
return this._salary;
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
__decorate([
|
|
125
|
+
persistent
|
|
126
|
+
], DerivedUser.prototype, "_salary", void 0);
|
|
127
|
+
DerivedUser = __decorate([
|
|
128
|
+
registerPersistentClass('DerivedUser')
|
|
129
|
+
], DerivedUser);
|
|
130
|
+
export { DerivedUser };
|
|
131
|
+
//# sourceMappingURL=test-user.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-user.js","sourceRoot":"","sources":["../../../src/mocks/test-user.ts"],"names":[],"mappings":"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"}
|