@dereekb/firebase-server 8.12.7 → 8.12.10
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/CHANGELOG.md +12 -0
- package/package.json +7 -7
- package/src/lib/auth/auth.nest.util.d.ts +5 -0
- package/src/lib/auth/auth.nest.util.js +29 -1
- package/src/lib/auth/auth.nest.util.js.map +1 -1
- package/src/lib/auth/auth.service.d.ts +21 -1
- package/src/lib/auth/auth.service.js +11 -1
- package/src/lib/auth/auth.service.js.map +1 -1
- package/src/lib/nest/model/create.model.function.d.ts +5 -1
- package/src/lib/nest/model/create.model.function.js +5 -2
- package/src/lib/nest/model/create.model.function.js.map +1 -1
- package/src/lib/nest/model/crud.assert.function.d.ts +12 -0
- package/src/lib/nest/model/crud.assert.function.js +3 -0
- package/src/lib/nest/model/crud.assert.function.js.map +1 -0
- package/src/lib/nest/model/delete.model.function.d.ts +5 -1
- package/src/lib/nest/model/delete.model.function.js +5 -2
- package/src/lib/nest/model/delete.model.function.js.map +1 -1
- package/src/lib/nest/model/update.model.function.d.ts +5 -1
- package/src/lib/nest/model/update.model.function.js +5 -2
- package/src/lib/nest/model/update.model.function.js.map +1 -1
- package/test/CHANGELOG.md +12 -0
- package/test/package.json +10 -10
- package/test/src/lib/firebase/firebase.admin.auth.js +1 -1
- package/test/src/lib/firebase/firebase.admin.auth.js.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [8.12.10](https://github.com/dereekb/dbx-components/compare/v8.12.9-dev...v8.12.10) (2022-07-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [8.12.9](https://github.com/dereekb/dbx-components/compare/v8.12.8-dev...v8.12.9) (2022-07-12)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## [8.12.8](https://github.com/dereekb/dbx-components/compare/v8.12.7-dev...v8.12.8) (2022-07-12)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
5
17
|
## [8.12.7](https://github.com/dereekb/dbx-components/compare/v8.12.6-dev...v8.12.7) (2022-07-11)
|
|
6
18
|
|
|
7
19
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/firebase-server",
|
|
3
|
-
"version": "8.12.
|
|
3
|
+
"version": "8.12.10",
|
|
4
4
|
"devDependencies": {
|
|
5
5
|
"firebase-functions-test": "2.0.2"
|
|
6
6
|
},
|
|
@@ -20,27 +20,27 @@
|
|
|
20
20
|
"typings": "./src/index.d.ts",
|
|
21
21
|
"dependencies": {},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@dereekb/firebase": "8.12.
|
|
23
|
+
"@dereekb/firebase": "8.12.10",
|
|
24
24
|
"rxfire": "^6.0.3",
|
|
25
25
|
"rxjs": "^7.0.0",
|
|
26
26
|
"firebase": "^9.8.0",
|
|
27
|
-
"@dereekb/util": "8.12.
|
|
27
|
+
"@dereekb/util": "8.12.10",
|
|
28
28
|
"make-error": "^1.3.0",
|
|
29
29
|
"ts-essentials": "^9.1.2",
|
|
30
30
|
"extra-set": "^2.2.11",
|
|
31
|
-
"@dereekb/rxjs": "8.12.
|
|
31
|
+
"@dereekb/rxjs": "8.12.10",
|
|
32
32
|
"ms": "^3.0.0-canary.1",
|
|
33
|
-
"@dereekb/model": "8.12.
|
|
33
|
+
"@dereekb/model": "8.12.10",
|
|
34
34
|
"class-transformer": "^0.5.1",
|
|
35
35
|
"class-validator": "^0.13.2",
|
|
36
|
-
"@dereekb/date": "8.12.
|
|
36
|
+
"@dereekb/date": "8.12.10",
|
|
37
37
|
"date-fns": "^2.28.0",
|
|
38
38
|
"date-fns-tz": "^1.3.0",
|
|
39
39
|
"rrule": "2.7.0",
|
|
40
40
|
"firebase-functions": "^3.22.0",
|
|
41
41
|
"firebase-admin": "^11.0.0",
|
|
42
42
|
"@nestjs/common": "^8.4.0",
|
|
43
|
-
"@dereekb/nestjs": "8.12.
|
|
43
|
+
"@dereekb/nestjs": "8.12.10",
|
|
44
44
|
"@nestjs/config": "^2.0.1",
|
|
45
45
|
"@google-cloud/firestore": "^5.0.2",
|
|
46
46
|
"@nestjs/core": "^8.4.0",
|
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { UserRelated } from '@dereekb/firebase';
|
|
2
|
+
import { ArrayOrValue, AuthRole } from '@dereekb/util';
|
|
2
3
|
import { NestContextCallableRequestWithAuth } from '../nest/function/nest';
|
|
3
4
|
import { AbstractFirebaseNestContext } from '../nest/nest.provider';
|
|
4
5
|
export declare function assertIsAdminInRequest<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I = unknown>(request: NestContextCallableRequestWithAuth<N, I>): void;
|
|
5
6
|
export declare function isAdminInRequest<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I = unknown>(request: NestContextCallableRequestWithAuth<N, I>): boolean;
|
|
6
7
|
export declare function assertIsAdminOrTargetUserInRequestData<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I extends Partial<UserRelated> = Partial<UserRelated>>(request: NestContextCallableRequestWithAuth<N, I>, requireUid?: boolean): string;
|
|
7
8
|
export declare function isAdminOrTargetUserInRequestData<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I extends Partial<UserRelated> = Partial<UserRelated>>(request: NestContextCallableRequestWithAuth<N, I>, requireUid?: boolean): boolean;
|
|
9
|
+
export declare function assertHasSignedTosInRequest<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I = unknown>(request: NestContextCallableRequestWithAuth<N, I>): void;
|
|
10
|
+
export declare function hasSignedTosInRequest<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I = unknown>(request: NestContextCallableRequestWithAuth<N, I>): boolean;
|
|
11
|
+
export declare function assertHasRolesInRequest<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I = unknown>(request: NestContextCallableRequestWithAuth<N, I>, authRoles: ArrayOrValue<AuthRole>): void;
|
|
12
|
+
export declare function hasAuthRolesInRequest<N extends AbstractFirebaseNestContext<any, any> = AbstractFirebaseNestContext<any, any>, I = unknown>(request: NestContextCallableRequestWithAuth<N, I>, authRoles: ArrayOrValue<AuthRole>): boolean;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isAdminOrTargetUserInRequestData = exports.assertIsAdminOrTargetUserInRequestData = exports.isAdminInRequest = exports.assertIsAdminInRequest = void 0;
|
|
3
|
+
exports.hasAuthRolesInRequest = exports.assertHasRolesInRequest = exports.hasSignedTosInRequest = exports.assertHasSignedTosInRequest = exports.isAdminOrTargetUserInRequestData = exports.assertIsAdminOrTargetUserInRequestData = exports.isAdminInRequest = exports.assertIsAdminInRequest = void 0;
|
|
4
|
+
const util_1 = require("@dereekb/util");
|
|
4
5
|
const function_1 = require("../function");
|
|
5
6
|
function assertIsAdminInRequest(request) {
|
|
6
7
|
if (!isAdminInRequest(request)) {
|
|
@@ -30,4 +31,31 @@ function isAdminOrTargetUserInRequestData(request, requireUid = false) {
|
|
|
30
31
|
return isAdminOrTargetUser;
|
|
31
32
|
}
|
|
32
33
|
exports.isAdminOrTargetUserInRequestData = isAdminOrTargetUserInRequestData;
|
|
34
|
+
function assertHasSignedTosInRequest(request) {
|
|
35
|
+
if (!hasSignedTosInRequest(request)) {
|
|
36
|
+
throw (0, function_1.forbiddenError)({
|
|
37
|
+
message: 'ToS has not been signed.'
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.assertHasSignedTosInRequest = assertHasSignedTosInRequest;
|
|
42
|
+
function hasSignedTosInRequest(request) {
|
|
43
|
+
return request.nest.authService.context(request).hasSignedTos;
|
|
44
|
+
}
|
|
45
|
+
exports.hasSignedTosInRequest = hasSignedTosInRequest;
|
|
46
|
+
function assertHasRolesInRequest(request, authRoles) {
|
|
47
|
+
if (!hasAuthRolesInRequest(request, authRoles)) {
|
|
48
|
+
throw (0, function_1.forbiddenError)({
|
|
49
|
+
message: 'Missing required auth roles.',
|
|
50
|
+
data: {
|
|
51
|
+
roles: (0, util_1.asArray)(authRoles)
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.assertHasRolesInRequest = assertHasRolesInRequest;
|
|
57
|
+
function hasAuthRolesInRequest(request, authRoles) {
|
|
58
|
+
return (0, util_1.containsAllValues)(request.nest.authService.context(request).authRoles, authRoles);
|
|
59
|
+
}
|
|
60
|
+
exports.hasAuthRolesInRequest = hasAuthRolesInRequest;
|
|
33
61
|
//# sourceMappingURL=auth.nest.util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.nest.util.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/auth.nest.util.ts"],"names":[],"mappings":";;;AACA,0CAA6C;AAI7C,SAAgB,sBAAsB,CAAuG,OAAiD;IAC5L,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;QAC9B,MAAM,IAAA,yBAAc,GAAE,CAAC;KACxB;AACH,CAAC;AAJD,wDAIC;AAED,SAAgB,gBAAgB,CAAuG,OAAiD;IACtL,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;AAC3D,CAAC;AAFD,4CAEC;AAED,SAAgB,sCAAsC,CAAiJ,OAAiD,EAAE,UAAoB;;IAC5Q,IAAI,CAAC,gCAAgC,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;QAC1D,MAAM,IAAA,yBAAc,GAAE,CAAC;KACxB;IAED,OAAO,MAAA,OAAO,CAAC,IAAI,CAAC,GAAG,mCAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9C,CAAC;AAND,wFAMC;AAED,SAAgB,gCAAgC,CAAiJ,OAAiD,EAAE,UAAU,GAAG,KAAK;IACpQ,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;IAEjC,IAAI,mBAAmB,GAAG,IAAI,CAAC;IAE/B,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,OAAO,CAAC,EAAE;QACnE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;KACzE;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAXD,4EAWC"}
|
|
1
|
+
{"version":3,"file":"auth.nest.util.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/auth.nest.util.ts"],"names":[],"mappings":";;;AACA,wCAAmF;AACnF,0CAA6C;AAI7C,SAAgB,sBAAsB,CAAuG,OAAiD;IAC5L,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;QAC9B,MAAM,IAAA,yBAAc,GAAE,CAAC;KACxB;AACH,CAAC;AAJD,wDAIC;AAED,SAAgB,gBAAgB,CAAuG,OAAiD;IACtL,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;AAC3D,CAAC;AAFD,4CAEC;AAED,SAAgB,sCAAsC,CAAiJ,OAAiD,EAAE,UAAoB;;IAC5Q,IAAI,CAAC,gCAAgC,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE;QAC1D,MAAM,IAAA,yBAAc,GAAE,CAAC;KACxB;IAED,OAAO,MAAA,OAAO,CAAC,IAAI,CAAC,GAAG,mCAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9C,CAAC;AAND,wFAMC;AAED,SAAgB,gCAAgC,CAAiJ,OAAiD,EAAE,UAAU,GAAG,KAAK;IACpQ,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;IAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;IAEjC,IAAI,mBAAmB,GAAG,IAAI,CAAC;IAE/B,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,OAAO,CAAC,EAAE;QACnE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;KACzE;IAED,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAXD,4EAWC;AAED,SAAgB,2BAA2B,CAAuG,OAAiD;IACjM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE;QACnC,MAAM,IAAA,yBAAc,EAAC;YACnB,OAAO,EAAE,0BAA0B;SACpC,CAAC,CAAC;KACJ;AACH,CAAC;AAND,kEAMC;AAED,SAAgB,qBAAqB,CAAuG,OAAiD;IAC3L,OAAO,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;AAChE,CAAC;AAFD,sDAEC;AAED,SAAgB,uBAAuB,CAAuG,OAAiD,EAAE,SAAiC;IAChO,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE;QAC9C,MAAM,IAAA,yBAAc,EAAC;YACnB,OAAO,EAAE,8BAA8B;YACvC,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAA,cAAO,EAAC,SAAS,CAAC;aAC1B;SACF,CAAC,CAAC;KACJ;AACH,CAAC;AATD,0DASC;AAED,SAAgB,qBAAqB,CAAuG,OAAiD,EAAE,SAAiC;IAC9N,OAAO,IAAA,wBAAiB,EAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAC3F,CAAC;AAFD,sDAEC"}
|
|
@@ -88,6 +88,10 @@ export interface FirebaseServerAuthContext<U extends FirebaseServerAuthUserConte
|
|
|
88
88
|
* Whether or not the context sees the user as an admin of the system.
|
|
89
89
|
*/
|
|
90
90
|
readonly isAdmin: boolean;
|
|
91
|
+
/**
|
|
92
|
+
* Whether or not the context sees the user as having signed the terms of service.
|
|
93
|
+
*/
|
|
94
|
+
readonly hasSignedTos: boolean;
|
|
91
95
|
/**
|
|
92
96
|
* The auth roles provided by the token in this context.
|
|
93
97
|
*/
|
|
@@ -104,12 +108,14 @@ export interface FirebaseServerAuthContext<U extends FirebaseServerAuthUserConte
|
|
|
104
108
|
export declare abstract class AbstractFirebaseServerAuthContext<C extends FirebaseServerAuthContext, U extends FirebaseServerAuthUserContext = FirebaseServerAuthUserContext, S extends FirebaseServerAuthService<U, C> = FirebaseServerAuthService<U, C>> implements FirebaseServerAuthContext {
|
|
105
109
|
readonly service: S;
|
|
106
110
|
readonly context: CallableContextWithAuthData;
|
|
107
|
-
private readonly _isAdmin;
|
|
108
111
|
private readonly _authRoles;
|
|
112
|
+
private readonly _isAdmin;
|
|
113
|
+
private readonly _hasSignedTos;
|
|
109
114
|
private readonly _userContext;
|
|
110
115
|
constructor(service: S, context: CallableContextWithAuthData);
|
|
111
116
|
get userContext(): U;
|
|
112
117
|
get isAdmin(): boolean;
|
|
118
|
+
get hasSignedTos(): boolean;
|
|
113
119
|
get authRoles(): AuthRoleSet;
|
|
114
120
|
get token(): admin.auth.DecodedIdToken;
|
|
115
121
|
get claims(): AuthClaims;
|
|
@@ -148,12 +154,24 @@ export declare abstract class FirebaseServerAuthService<U extends FirebaseServer
|
|
|
148
154
|
* @param claims
|
|
149
155
|
*/
|
|
150
156
|
abstract isAdmin(claims: AuthClaims): boolean;
|
|
157
|
+
/**
|
|
158
|
+
* Whether or not the input claims indiciate the user has signed the ToS.
|
|
159
|
+
*
|
|
160
|
+
* @param claims
|
|
161
|
+
*/
|
|
162
|
+
abstract hasSignedTos(claims: AuthClaims): boolean;
|
|
151
163
|
/**
|
|
152
164
|
* Whether or not the input roles indicate admin priviledges.
|
|
153
165
|
*
|
|
154
166
|
* @param roles
|
|
155
167
|
*/
|
|
156
168
|
abstract isAdminInRoles(roles: AuthRoleSet): boolean;
|
|
169
|
+
/**
|
|
170
|
+
* Whether or not the input roles indiciate the user has signed the ToS.
|
|
171
|
+
*
|
|
172
|
+
* @param claims
|
|
173
|
+
*/
|
|
174
|
+
abstract hasSignedTosInRoles(roles: AuthRoleSet): boolean;
|
|
157
175
|
/**
|
|
158
176
|
* Reads the AuthRoleSet from the input claims.
|
|
159
177
|
*
|
|
@@ -186,6 +204,8 @@ export declare abstract class AbstractFirebaseServerAuthService<U extends Fireba
|
|
|
186
204
|
abstract userContext(uid: FirebaseAuthUserId): U;
|
|
187
205
|
isAdmin(claims: AuthClaims): boolean;
|
|
188
206
|
isAdminInRoles(roles: AuthRoleSet): boolean;
|
|
207
|
+
hasSignedTos(claims: AuthClaims): boolean;
|
|
208
|
+
hasSignedTosInRoles(roles: AuthRoleSet): boolean;
|
|
189
209
|
abstract readRoles(claims: AuthClaims): AuthRoleSet;
|
|
190
210
|
abstract claimsForRoles(roles: AuthRoleSet): AuthClaimsUpdate;
|
|
191
211
|
authContextInfo(context: AuthDataRef): Maybe<FirebaseAuthContextInfo>;
|
|
@@ -74,8 +74,9 @@ class AbstractFirebaseServerAuthContext {
|
|
|
74
74
|
constructor(service, context) {
|
|
75
75
|
this.service = service;
|
|
76
76
|
this.context = context;
|
|
77
|
-
this._isAdmin = (0, util_1.cachedGetter)(() => this.service.isAdmin(this.claims));
|
|
78
77
|
this._authRoles = (0, util_1.cachedGetter)(() => this.service.readRoles(this.claims));
|
|
78
|
+
this._isAdmin = (0, util_1.cachedGetter)(() => this.service.isAdminInRoles(this._authRoles()));
|
|
79
|
+
this._hasSignedTos = (0, util_1.cachedGetter)(() => this.service.hasSignedTosInRoles(this._authRoles()));
|
|
79
80
|
this._userContext = (0, util_1.cachedGetter)(() => this.service.userContext(this.context.auth.uid));
|
|
80
81
|
}
|
|
81
82
|
get userContext() {
|
|
@@ -84,6 +85,9 @@ class AbstractFirebaseServerAuthContext {
|
|
|
84
85
|
get isAdmin() {
|
|
85
86
|
return this._isAdmin();
|
|
86
87
|
}
|
|
88
|
+
get hasSignedTos() {
|
|
89
|
+
return this._hasSignedTos();
|
|
90
|
+
}
|
|
87
91
|
get authRoles() {
|
|
88
92
|
return this._authRoles();
|
|
89
93
|
}
|
|
@@ -122,6 +126,12 @@ class AbstractFirebaseServerAuthService {
|
|
|
122
126
|
isAdminInRoles(roles) {
|
|
123
127
|
return roles.has(util_1.AUTH_ADMIN_ROLE);
|
|
124
128
|
}
|
|
129
|
+
hasSignedTos(claims) {
|
|
130
|
+
return this.hasSignedTosInRoles(this.readRoles(claims));
|
|
131
|
+
}
|
|
132
|
+
hasSignedTosInRoles(roles) {
|
|
133
|
+
return roles.has(util_1.AUTH_TOS_SIGNED_ROLE);
|
|
134
|
+
}
|
|
125
135
|
authContextInfo(context) {
|
|
126
136
|
const { auth } = context;
|
|
127
137
|
let result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/auth.service.ts"],"names":[],"mappings":";;;;AAGA,
|
|
1
|
+
{"version":3,"file":"auth.service.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/auth/auth.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,15 +2,19 @@ import { PromiseOrValue } from '@dereekb/util';
|
|
|
2
2
|
import { FirestoreModelType, FirestoreModelIdentity, FirestoreModelTypes, OnCallCreateModelParams, OnCallCreateModelResult, ModelFirebaseCrudFunctionSpecifierRef } from '@dereekb/firebase';
|
|
3
3
|
import { OnCallWithAuthorizedNestContext } from '../function/call';
|
|
4
4
|
import { NestContextCallableRequestWithAuth } from '../function/nest';
|
|
5
|
+
import { AssertModelCrudRequestFunction } from './crud.assert.function';
|
|
5
6
|
export declare type OnCallCreateModelFunction<N, I = unknown, O extends OnCallCreateModelResult = OnCallCreateModelResult> = (request: NestContextCallableRequestWithAuth<N, I> & ModelFirebaseCrudFunctionSpecifierRef) => PromiseOrValue<O>;
|
|
6
7
|
export declare type OnCallCreateModelMap<N, T extends FirestoreModelIdentity = FirestoreModelIdentity> = {
|
|
7
8
|
[K in FirestoreModelTypes<T>]?: OnCallCreateModelFunction<N, any, OnCallCreateModelResult>;
|
|
8
9
|
};
|
|
10
|
+
export interface OnCallCreateModelConfig<N> {
|
|
11
|
+
preAssert?: AssertModelCrudRequestFunction<N, OnCallCreateModelParams>;
|
|
12
|
+
}
|
|
9
13
|
/**
|
|
10
14
|
* Creates a OnCallWithAuthorizedNestContext function for creating a model.
|
|
11
15
|
*
|
|
12
16
|
* @param map
|
|
13
17
|
* @returns
|
|
14
18
|
*/
|
|
15
|
-
export declare function onCallCreateModel<N>(map: OnCallCreateModelMap<N>): OnCallWithAuthorizedNestContext<N, OnCallCreateModelParams, OnCallCreateModelResult>;
|
|
19
|
+
export declare function onCallCreateModel<N>(map: OnCallCreateModelMap<N>, config?: OnCallCreateModelConfig<N>): OnCallWithAuthorizedNestContext<N, OnCallCreateModelParams, OnCallCreateModelResult>;
|
|
16
20
|
export declare function createModelUnknownModelTypeError(modelType: FirestoreModelType): import("firebase-functions/v1/auth").HttpsError;
|
|
@@ -9,13 +9,16 @@ const function_1 = require("../../function");
|
|
|
9
9
|
* @param map
|
|
10
10
|
* @returns
|
|
11
11
|
*/
|
|
12
|
-
function onCallCreateModel(map) {
|
|
12
|
+
function onCallCreateModel(map, config = {}) {
|
|
13
|
+
const { preAssert = () => undefined } = config;
|
|
13
14
|
return (request) => {
|
|
14
15
|
var _a;
|
|
15
16
|
const modelType = (_a = request.data) === null || _a === void 0 ? void 0 : _a.modelType;
|
|
16
17
|
const createFn = map[modelType];
|
|
17
18
|
if (createFn) {
|
|
18
|
-
|
|
19
|
+
const specifier = request.data.specifier;
|
|
20
|
+
preAssert({ crud: 'create', request, modelType, specifier });
|
|
21
|
+
return createFn(Object.assign(Object.assign({}, request), { specifier, data: request.data.data }));
|
|
19
22
|
}
|
|
20
23
|
else {
|
|
21
24
|
throw createModelUnknownModelTypeError(modelType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.model.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/create.model.function.ts"],"names":[],"mappings":";;;AAAA,wCAA4D;AAE5D,6CAAiD;
|
|
1
|
+
{"version":3,"file":"create.model.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/create.model.function.ts"],"names":[],"mappings":";;;AAAA,wCAA4D;AAE5D,6CAAiD;AAgBjD;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,GAA4B,EAAE,SAAqC,EAAE;IACxG,MAAM,EAAE,SAAS,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC;IAE/C,OAAO,CAAC,OAAO,EAAE,EAAE;;QACjB,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,IAAI,0CAAE,SAAS,CAAC;QAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QAEhC,IAAI,QAAQ,EAAE;YACZ,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;YACzC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7D,OAAO,QAAQ,iCACV,OAAO,KACV,SAAS,EACT,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,IACvB,CAAC;SACJ;aAAM;YACL,MAAM,gCAAgC,CAAC,SAAS,CAAC,CAAC;SACnD;IACH,CAAC,CAAC;AACJ,CAAC;AAnBD,8CAmBC;AAED,SAAgB,gCAAgC,CAAC,SAA6B;IAC5E,OAAO,IAAA,0BAAe,EACpB,IAAA,kBAAW,EAAC;QACV,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,iBAAiB,SAAS,cAAc;QACjD,IAAI,EAAE;YACJ,SAAS;SACV;KACF,CAAC,CACH,CAAC;AACJ,CAAC;AAXD,4EAWC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Maybe } from '@dereekb/util';
|
|
2
|
+
import { NestContextCallableRequestWithAuth } from '../function/nest';
|
|
3
|
+
export interface AssertModelCrudRequestFunctionContext<N, I = unknown> {
|
|
4
|
+
request: NestContextCallableRequestWithAuth<N, I>;
|
|
5
|
+
crud: 'create' | 'update' | 'delete';
|
|
6
|
+
modelType: string;
|
|
7
|
+
specifier: Maybe<string>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Function that asserts something given the input request.
|
|
11
|
+
*/
|
|
12
|
+
export declare type AssertModelCrudRequestFunction<N, I = unknown> = (context: AssertModelCrudRequestFunctionContext<N, I>) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crud.assert.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/crud.assert.function.ts"],"names":[],"mappings":""}
|
|
@@ -2,15 +2,19 @@ import { PromiseOrValue } from '@dereekb/util';
|
|
|
2
2
|
import { FirestoreModelType, FirestoreModelIdentity, FirestoreModelTypes, OnCallDeleteModelParams, ModelFirebaseCrudFunctionSpecifierRef } from '@dereekb/firebase';
|
|
3
3
|
import { NestContextCallableRequestWithAuth } from '../function/nest';
|
|
4
4
|
import { OnCallWithAuthorizedNestContext } from '../function/call';
|
|
5
|
+
import { AssertModelCrudRequestFunction } from './crud.assert.function';
|
|
5
6
|
export declare type OnCallDeleteModelFunction<N, I = unknown, O = void> = (request: NestContextCallableRequestWithAuth<N, I> & ModelFirebaseCrudFunctionSpecifierRef) => PromiseOrValue<O>;
|
|
6
7
|
export declare type OnCallDeleteModelMap<N, T extends FirestoreModelIdentity = FirestoreModelIdentity> = {
|
|
7
8
|
[K in FirestoreModelTypes<T>]?: OnCallDeleteModelFunction<N, any, any>;
|
|
8
9
|
};
|
|
10
|
+
export interface OnCallDeleteModelConfig<N> {
|
|
11
|
+
preAssert?: AssertModelCrudRequestFunction<N, OnCallDeleteModelParams>;
|
|
12
|
+
}
|
|
9
13
|
/**
|
|
10
14
|
* Creates a OnCallWithAuthorizedNestContext function for updating model params.
|
|
11
15
|
*
|
|
12
16
|
* @param map
|
|
13
17
|
* @returns
|
|
14
18
|
*/
|
|
15
|
-
export declare function onCallDeleteModel<N>(map: OnCallDeleteModelMap<N>): OnCallWithAuthorizedNestContext<N, OnCallDeleteModelParams, unknown>;
|
|
19
|
+
export declare function onCallDeleteModel<N>(map: OnCallDeleteModelMap<N>, config?: OnCallDeleteModelConfig<N>): OnCallWithAuthorizedNestContext<N, OnCallDeleteModelParams, unknown>;
|
|
16
20
|
export declare function deleteModelUnknownModelTypeError(modelType: FirestoreModelType): import("firebase-functions/v1/auth").HttpsError;
|
|
@@ -9,13 +9,16 @@ const function_1 = require("../../function");
|
|
|
9
9
|
* @param map
|
|
10
10
|
* @returns
|
|
11
11
|
*/
|
|
12
|
-
function onCallDeleteModel(map) {
|
|
12
|
+
function onCallDeleteModel(map, config = {}) {
|
|
13
|
+
const { preAssert = () => undefined } = config;
|
|
13
14
|
return (request) => {
|
|
14
15
|
var _a;
|
|
15
16
|
const modelType = (_a = request.data) === null || _a === void 0 ? void 0 : _a.modelType;
|
|
16
17
|
const deleteFn = map[modelType];
|
|
17
18
|
if (deleteFn) {
|
|
18
|
-
|
|
19
|
+
const specifier = request.data.specifier;
|
|
20
|
+
preAssert({ crud: 'delete', request, modelType, specifier });
|
|
21
|
+
return deleteFn(Object.assign(Object.assign({}, request), { specifier, data: request.data.data }));
|
|
19
22
|
}
|
|
20
23
|
else {
|
|
21
24
|
throw deleteModelUnknownModelTypeError(modelType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.model.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/delete.model.function.ts"],"names":[],"mappings":";;;AAAA,wCAA4D;AAE5D,6CAAiD;
|
|
1
|
+
{"version":3,"file":"delete.model.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/delete.model.function.ts"],"names":[],"mappings":";;;AAAA,wCAA4D;AAE5D,6CAAiD;AAgBjD;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,GAA4B,EAAE,SAAqC,EAAE;IACxG,MAAM,EAAE,SAAS,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC;IAE/C,OAAO,CAAC,OAAO,EAAE,EAAE;;QACjB,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,IAAI,0CAAE,SAAS,CAAC;QAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QAEhC,IAAI,QAAQ,EAAE;YACZ,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;YACzC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7D,OAAO,QAAQ,iCACV,OAAO,KACV,SAAS,EACT,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,IACvB,CAAC;SACJ;aAAM;YACL,MAAM,gCAAgC,CAAC,SAAS,CAAC,CAAC;SACnD;IACH,CAAC,CAAC;AACJ,CAAC;AAnBD,8CAmBC;AAED,SAAgB,gCAAgC,CAAC,SAA6B;IAC5E,OAAO,IAAA,0BAAe,EACpB,IAAA,kBAAW,EAAC;QACV,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,yBAAyB;QAClC,IAAI,EAAE;YACJ,SAAS;SACV;KACF,CAAC,CACH,CAAC;AACJ,CAAC;AAXD,4EAWC"}
|
|
@@ -2,15 +2,19 @@ import { PromiseOrValue } from '@dereekb/util';
|
|
|
2
2
|
import { FirestoreModelType, FirestoreModelIdentity, FirestoreModelTypes, OnCallUpdateModelParams, ModelFirebaseCrudFunctionSpecifierRef } from '@dereekb/firebase';
|
|
3
3
|
import { OnCallWithAuthorizedNestContext } from '../function/call';
|
|
4
4
|
import { NestContextCallableRequestWithAuth } from '../function/nest';
|
|
5
|
+
import { AssertModelCrudRequestFunction } from './crud.assert.function';
|
|
5
6
|
export declare type OnCallUpdateModelFunction<N, I = unknown, O = void> = (request: NestContextCallableRequestWithAuth<N, I> & ModelFirebaseCrudFunctionSpecifierRef) => PromiseOrValue<O>;
|
|
6
7
|
export declare type OnCallUpdateModelMap<N, T extends FirestoreModelIdentity = FirestoreModelIdentity> = {
|
|
7
8
|
[K in FirestoreModelTypes<T>]?: OnCallUpdateModelFunction<N, any, any>;
|
|
8
9
|
};
|
|
10
|
+
export interface OnCallUpdateModelConfig<N> {
|
|
11
|
+
preAssert?: AssertModelCrudRequestFunction<N, OnCallUpdateModelParams>;
|
|
12
|
+
}
|
|
9
13
|
/**
|
|
10
14
|
* Creates a OnCallWithAuthorizedNestContext function for updating model params.
|
|
11
15
|
*
|
|
12
16
|
* @param map
|
|
13
17
|
* @returns
|
|
14
18
|
*/
|
|
15
|
-
export declare function onCallUpdateModel<N>(map: OnCallUpdateModelMap<N>): OnCallWithAuthorizedNestContext<N, OnCallUpdateModelParams, unknown>;
|
|
19
|
+
export declare function onCallUpdateModel<N>(map: OnCallUpdateModelMap<N>, config?: OnCallUpdateModelConfig<N>): OnCallWithAuthorizedNestContext<N, OnCallUpdateModelParams, unknown>;
|
|
16
20
|
export declare function updateModelUnknownModelTypeError(modelType: FirestoreModelType): import("firebase-functions/v1/auth").HttpsError;
|
|
@@ -9,13 +9,16 @@ const function_1 = require("../../function");
|
|
|
9
9
|
* @param map
|
|
10
10
|
* @returns
|
|
11
11
|
*/
|
|
12
|
-
function onCallUpdateModel(map) {
|
|
12
|
+
function onCallUpdateModel(map, config = {}) {
|
|
13
|
+
const { preAssert = () => undefined } = config;
|
|
13
14
|
return (request) => {
|
|
14
15
|
var _a;
|
|
15
16
|
const modelType = (_a = request.data) === null || _a === void 0 ? void 0 : _a.modelType;
|
|
16
17
|
const updateFn = map[modelType];
|
|
17
18
|
if (updateFn) {
|
|
18
|
-
|
|
19
|
+
const specifier = request.data.specifier;
|
|
20
|
+
preAssert({ crud: 'update', request, modelType, specifier });
|
|
21
|
+
return updateFn(Object.assign(Object.assign({}, request), { specifier, data: request.data.data }));
|
|
19
22
|
}
|
|
20
23
|
else {
|
|
21
24
|
throw updateModelUnknownModelTypeError(modelType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.model.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/update.model.function.ts"],"names":[],"mappings":";;;AAAA,wCAA4D;AAE5D,6CAAiD;
|
|
1
|
+
{"version":3,"file":"update.model.function.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/model/update.model.function.ts"],"names":[],"mappings":";;;AAAA,wCAA4D;AAE5D,6CAAiD;AAgBjD;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAI,GAA4B,EAAE,SAAqC,EAAE;IACxG,MAAM,EAAE,SAAS,GAAG,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC;IAE/C,OAAO,CAAC,OAAO,EAAE,EAAE;;QACjB,MAAM,SAAS,GAAG,MAAA,OAAO,CAAC,IAAI,0CAAE,SAAS,CAAC;QAC1C,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;QAEhC,IAAI,QAAQ,EAAE;YACZ,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC;YACzC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7D,OAAO,QAAQ,iCACV,OAAO,KACV,SAAS,EACT,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,IACvB,CAAC;SACJ;aAAM;YACL,MAAM,gCAAgC,CAAC,SAAS,CAAC,CAAC;SACnD;IACH,CAAC,CAAC;AACJ,CAAC;AAnBD,8CAmBC;AAED,SAAgB,gCAAgC,CAAC,SAA6B;IAC5E,OAAO,IAAA,0BAAe,EACpB,IAAA,kBAAW,EAAC;QACV,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,yBAAyB;QAClC,IAAI,EAAE;YACJ,SAAS;SACV;KACF,CAAC,CACH,CAAC;AACJ,CAAC;AAXD,4EAWC"}
|
package/test/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
## [8.12.10](https://github.com/dereekb/dbx-components/compare/v8.12.9-dev...v8.12.10) (2022-07-13)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [8.12.9](https://github.com/dereekb/dbx-components/compare/v8.12.8-dev...v8.12.9) (2022-07-12)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
## [8.12.8](https://github.com/dereekb/dbx-components/compare/v8.12.7-dev...v8.12.8) (2022-07-12)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
5
17
|
## [8.12.7](https://github.com/dereekb/dbx-components/compare/v8.12.6-dev...v8.12.7) (2022-07-11)
|
|
6
18
|
|
|
7
19
|
|
package/test/package.json
CHANGED
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/firebase-server/test",
|
|
3
|
-
"version": "8.12.
|
|
3
|
+
"version": "8.12.10",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./src/index.js",
|
|
6
6
|
"typings": "./src/index.d.ts",
|
|
7
7
|
"dependencies": {},
|
|
8
8
|
"peerDependencies": {
|
|
9
|
-
"@dereekb/firebase": "8.12.
|
|
9
|
+
"@dereekb/firebase": "8.12.10",
|
|
10
10
|
"rxfire": "^6.0.3",
|
|
11
11
|
"rxjs": "^7.0.0",
|
|
12
12
|
"firebase": "^9.8.0",
|
|
13
|
-
"@dereekb/util": "8.12.
|
|
13
|
+
"@dereekb/util": "8.12.10",
|
|
14
14
|
"make-error": "^1.3.0",
|
|
15
15
|
"ts-essentials": "^9.1.2",
|
|
16
16
|
"extra-set": "^2.2.11",
|
|
17
|
-
"@dereekb/rxjs": "8.12.
|
|
17
|
+
"@dereekb/rxjs": "8.12.10",
|
|
18
18
|
"ms": "^3.0.0-canary.1",
|
|
19
|
-
"@dereekb/model": "8.12.
|
|
19
|
+
"@dereekb/model": "8.12.10",
|
|
20
20
|
"class-transformer": "^0.5.1",
|
|
21
21
|
"class-validator": "^0.13.2",
|
|
22
|
-
"@dereekb/date": "8.12.
|
|
22
|
+
"@dereekb/date": "8.12.10",
|
|
23
23
|
"date-fns": "^2.28.0",
|
|
24
24
|
"date-fns-tz": "^1.3.0",
|
|
25
25
|
"rrule": "2.7.0",
|
|
26
|
-
"@dereekb/util/test": "8.12.
|
|
26
|
+
"@dereekb/util/test": "8.12.10",
|
|
27
27
|
"firebase-admin": "^11.0.0",
|
|
28
28
|
"jsonwebtoken": "^8.0.0",
|
|
29
29
|
"firebase-functions": "^3.22.0",
|
|
30
30
|
"@nestjs/common": "^8.4.0",
|
|
31
31
|
"@google-cloud/firestore": "^5.0.2",
|
|
32
|
-
"@dereekb/firebase/test": "8.12.
|
|
33
|
-
"@dereekb/firebase-server": "8.12.
|
|
34
|
-
"@dereekb/nestjs": "8.12.
|
|
32
|
+
"@dereekb/firebase/test": "8.12.10",
|
|
33
|
+
"@dereekb/firebase-server": "8.12.10",
|
|
34
|
+
"@dereekb/nestjs": "8.12.10",
|
|
35
35
|
"@nestjs/config": "^2.0.1",
|
|
36
36
|
"@nestjs/core": "^8.4.0",
|
|
37
37
|
"@nestjs/platform-express": "^8.4.0",
|
|
@@ -98,7 +98,7 @@ exports.authorizedUserContextFactory = authorizedUserContextFactory;
|
|
|
98
98
|
*
|
|
99
99
|
* Has the format 'test-uid-<number>'
|
|
100
100
|
*/
|
|
101
|
-
exports.testUidFactory = (0, util_1.mapGetter)((0, util_1.incrementingNumberFactory)(), (i) =>
|
|
101
|
+
exports.testUidFactory = (0, util_1.mapGetter)((0, util_1.incrementingNumberFactory)(), (i) => `${new Date().getTime()}0${i}`);
|
|
102
102
|
/**
|
|
103
103
|
* Creates a CallableContextOptions with auth attached corresponding to the input UserRecord.
|
|
104
104
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase.admin.auth.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/test/src/lib/firebase/firebase.admin.auth.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"firebase.admin.auth.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/test/src/lib/firebase/firebase.admin.auth.ts"],"names":[],"mappings":"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"}
|