@dereekb/firebase-server 4.1.0 → 5.0.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/CHANGELOG.md +21 -0
- package/LICENSE +21 -0
- package/package.json +10 -9
- package/src/lib/auth/auth.nest.d.ts +2 -1
- package/src/lib/auth/auth.nest.js +6 -6
- package/src/lib/auth/auth.nest.js.map +1 -1
- package/src/lib/auth/auth.service.d.ts +9 -5
- package/src/lib/auth/auth.service.js +3 -3
- package/src/lib/auth/auth.service.js.map +1 -1
- package/src/lib/firebase/firebase.nest.d.ts +1 -1
- package/src/lib/firestore/driver.accessor.batch.d.ts +1 -1
- package/src/lib/firestore/driver.accessor.batch.js.map +1 -1
- package/src/lib/firestore/driver.accessor.default.js.map +1 -1
- package/src/lib/firestore/driver.accessor.js.map +1 -1
- package/src/lib/firestore/driver.accessor.transaction.d.ts +1 -1
- package/src/lib/firestore/driver.accessor.transaction.js.map +1 -1
- package/src/lib/firestore/driver.d.ts +1 -2
- package/src/lib/firestore/driver.query.d.ts +1 -1
- package/src/lib/function/type.d.ts +8 -2
- package/src/lib/nest/app.d.ts +14 -2
- package/src/lib/nest/app.js +14 -9
- package/src/lib/nest/app.js.map +1 -1
- package/src/lib/nest/function/context.d.ts +2 -3
- package/src/lib/nest/function/index.d.ts +2 -2
- package/src/lib/nest/function/index.js +2 -2
- package/src/lib/nest/function/index.js.map +1 -1
- package/src/lib/nest/function/v1/call.d.ts +36 -0
- package/src/lib/nest/function/v1/call.js +28 -0
- package/src/lib/nest/function/v1/call.js.map +1 -0
- package/src/lib/nest/function/{nest.utility.d.ts → v1/call.utility.d.ts} +3 -3
- package/src/lib/nest/function/{nest.utility.js → v1/call.utility.js} +3 -3
- package/src/lib/nest/function/v1/call.utility.js.map +1 -0
- package/src/lib/nest/function/v1/event.d.ts +38 -0
- package/src/lib/nest/function/{nest.js → v1/event.js} +2 -35
- package/src/lib/nest/function/v1/event.js.map +1 -0
- package/src/lib/nest/function/v1/index.d.ts +3 -0
- package/src/lib/nest/function/v1/index.js +7 -0
- package/src/lib/nest/function/v1/index.js.map +1 -0
- package/src/lib/nest/function/v2/blocking.d.ts +19 -0
- package/src/lib/nest/function/v2/blocking.js +23 -0
- package/src/lib/nest/function/v2/blocking.js.map +1 -0
- package/src/lib/nest/function/v2/call.d.ts +36 -0
- package/src/lib/nest/function/v2/call.js +28 -0
- package/src/lib/nest/function/v2/call.js.map +1 -0
- package/src/lib/nest/function/v2/event.d.ts +20 -0
- package/src/lib/nest/function/v2/event.js +23 -0
- package/src/lib/nest/function/v2/event.js.map +1 -0
- package/src/lib/nest/function/v2/index.d.ts +4 -0
- package/src/lib/nest/function/v2/index.js +8 -0
- package/src/lib/nest/function/v2/index.js.map +1 -0
- package/src/lib/nest/function/v2/taskqueue.d.ts +19 -0
- package/src/lib/nest/function/v2/taskqueue.js +23 -0
- package/src/lib/nest/function/v2/taskqueue.js.map +1 -0
- package/src/lib/nest/index.d.ts +2 -0
- package/src/lib/nest/index.js +2 -0
- package/src/lib/nest/index.js.map +1 -1
- package/src/lib/nest/middleware/index.d.ts +2 -0
- package/src/lib/nest/middleware/index.js +6 -0
- package/src/lib/nest/middleware/index.js.map +1 -0
- package/src/lib/nest/middleware/rawbody.middleware.d.ts +6 -0
- package/src/lib/nest/middleware/rawbody.middleware.js +16 -0
- package/src/lib/nest/middleware/rawbody.middleware.js.map +1 -0
- package/src/lib/nest/middleware/webhook.d.ts +10 -0
- package/src/lib/nest/middleware/webhook.js +30 -0
- package/src/lib/nest/middleware/webhook.js.map +1 -0
- package/src/lib/nest/nest.provider.d.ts +23 -0
- package/src/lib/nest/nest.provider.js +13 -0
- package/src/lib/nest/nest.provider.js.map +1 -0
- package/test/CHANGELOG.md +9 -0
- package/test/package.json +12 -11
- package/test/src/lib/firebase/firebase.admin.auth.js +1 -1
- package/test/src/lib/firebase/firebase.admin.auth.js.map +1 -1
- package/test/src/lib/firebase/firebase.admin.d.ts +6 -18
- package/test/src/lib/firebase/firebase.admin.function.d.ts +4 -3
- package/test/src/lib/firebase/firebase.admin.function.js +7 -4
- package/test/src/lib/firebase/firebase.admin.function.js.map +1 -1
- package/test/src/lib/firebase/firebase.admin.js +7 -13
- package/test/src/lib/firebase/firebase.admin.js.map +1 -1
- package/test/src/lib/firebase/firebase.admin.nest.function.context.d.ts +3 -3
- package/test/src/lib/firebase/firebase.admin.nest.function.context.js +2 -0
- package/test/src/lib/firebase/firebase.admin.nest.function.context.js.map +1 -1
- package/test/src/lib/firebase/firebase.admin.nest.function.d.ts +7 -8
- package/test/src/lib/firebase/firebase.admin.nest.function.js +8 -7
- package/test/src/lib/firebase/firebase.admin.nest.function.js.map +1 -1
- package/test/src/lib/firebase/firebase.function.d.ts +23 -0
- package/test/src/lib/firebase/firebase.function.js +27 -0
- package/test/src/lib/firebase/firebase.function.js.map +1 -0
- package/src/lib/nest/function/nest.d.ts +0 -91
- package/src/lib/nest/function/nest.js.map +0 -1
- package/src/lib/nest/function/nest.utility.js.map +0 -1
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { PromiseOrValue } from '@dereekb/util';
|
|
2
|
+
import { INestApplicationContext } from '@nestjs/common';
|
|
3
|
+
import * as functions from 'firebase-functions';
|
|
4
|
+
import { EventContext } from 'firebase-functions';
|
|
5
|
+
import { MakeNestContext, NestApplicationFunctionFactory } from '../../nest.provider';
|
|
6
|
+
export declare type FirestoreEventHandler<I = unknown, O = unknown> = (data: I, context: EventContext) => PromiseOrValue<O>;
|
|
7
|
+
export declare type NestApplicationEventHandler<I = unknown, O = unknown> = (nest: INestApplicationContext, data: I, context: EventContext) => PromiseOrValue<O>;
|
|
8
|
+
export declare type NestApplicationEventHandlerBuilder<I = unknown, O = unknown> = (handler: NestApplicationEventHandler<I, O>) => FirestoreEventHandler<I, O>;
|
|
9
|
+
export declare type OnEventWithNestApplicationBuilder<I = unknown, O = unknown> = (nest: NestApplicationEventHandlerBuilder<I, O>) => functions.CloudFunction<I>;
|
|
10
|
+
/**
|
|
11
|
+
* Factory function for generating a CloudFunctionHandler via a NestApplicationCloudFunctionHandler.
|
|
12
|
+
*/
|
|
13
|
+
export declare type OnEventWithNestApplicationFactory = <I, O>(fn: OnEventWithNestApplicationBuilder<I, O>) => NestApplicationFunctionFactory<functions.CloudFunction<I>>;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a factory for generating OnEventWithNestApplicationBuilder values.
|
|
16
|
+
*
|
|
17
|
+
* @param nestAppPromiseGetter
|
|
18
|
+
* @returns
|
|
19
|
+
*/
|
|
20
|
+
export declare function onEventWithNestApplicationFactory(): OnEventWithNestApplicationFactory;
|
|
21
|
+
export declare type NestContextEventHandler<C, I = unknown, O = unknown> = (nest: C, data: I, context: EventContext) => Promise<O>;
|
|
22
|
+
export declare type NestContextEventHandlerBuilder<C, I = unknown, O = unknown> = (handler: NestContextEventHandler<C, I, O>) => FirestoreEventHandler<I, O>;
|
|
23
|
+
/**
|
|
24
|
+
* Runnable function that is passed an arbitrary nest context object in addition to the usual data/context provided by firebase.
|
|
25
|
+
*/
|
|
26
|
+
export declare type OnEventWithNestContextBuilder<C, I = unknown, O = unknown> = (nest: NestContextEventHandlerBuilder<C, I, O>) => functions.CloudFunction<I>;
|
|
27
|
+
/**
|
|
28
|
+
* Factory function for generating a firebase CloudFunction for a specific event.
|
|
29
|
+
*/
|
|
30
|
+
export declare type OnEventWithNestContextFactory<C> = <I, O = unknown>(fn: OnEventWithNestContextBuilder<C, I, O>) => NestApplicationFunctionFactory<functions.CloudFunction<I>>;
|
|
31
|
+
/**
|
|
32
|
+
* Creates a factory for generating OnCallWithNestContext functions with a nest context object that is generated by the input function.
|
|
33
|
+
*
|
|
34
|
+
* @param appFactory
|
|
35
|
+
* @param makeNestContext
|
|
36
|
+
* @returns
|
|
37
|
+
*/
|
|
38
|
+
export declare function onEventWithNestContextFactory<C>(makeNestContext: MakeNestContext<C>): OnEventWithNestContextFactory<C>;
|
|
@@ -1,39 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.onEventWithNestContextFactory = exports.onEventWithNestApplicationFactory =
|
|
4
|
-
const functions = require("firebase-functions");
|
|
5
|
-
/**
|
|
6
|
-
* Creates a factory for generating OnCallWithNestApplication functions.
|
|
7
|
-
*
|
|
8
|
-
* @param nestAppPromiseGetter
|
|
9
|
-
* @returns
|
|
10
|
-
*/
|
|
11
|
-
function onCallWithNestApplicationFactory() {
|
|
12
|
-
return (fn) => {
|
|
13
|
-
return (nestAppPromiseGetter) => functions.https.onCall((data, context) => nestAppPromiseGetter().then(x => fn(x, data, context)));
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
exports.onCallWithNestApplicationFactory = onCallWithNestApplicationFactory;
|
|
17
|
-
/**
|
|
18
|
-
* Creates a factory for generating OnCallWithNestContext functions with a nest context object that is generated by the input function.
|
|
19
|
-
*
|
|
20
|
-
* @param appFactory
|
|
21
|
-
* @param makeNestContext
|
|
22
|
-
* @returns
|
|
23
|
-
*/
|
|
24
|
-
function onCallWithNestContextFactory(appFactory, makeNestContext) {
|
|
25
|
-
return (fn) => appFactory((nest, data, context) => fn(makeNestContext(nest), data, context));
|
|
26
|
-
}
|
|
27
|
-
exports.onCallWithNestContextFactory = onCallWithNestContextFactory;
|
|
28
|
-
/**
|
|
29
|
-
* Abstract class that wraps an INestApplicationContext value.
|
|
30
|
-
*/
|
|
31
|
-
class AbstractNestContext {
|
|
32
|
-
constructor(nest) {
|
|
33
|
-
this.nest = nest;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
exports.AbstractNestContext = AbstractNestContext;
|
|
3
|
+
exports.onEventWithNestContextFactory = exports.onEventWithNestApplicationFactory = void 0;
|
|
37
4
|
/**
|
|
38
5
|
* Creates a factory for generating OnEventWithNestApplicationBuilder values.
|
|
39
6
|
*
|
|
@@ -71,4 +38,4 @@ function onEventWithNestContextFactory(makeNestContext) {
|
|
|
71
38
|
};
|
|
72
39
|
}
|
|
73
40
|
exports.onEventWithNestContextFactory = onEventWithNestContextFactory;
|
|
74
|
-
//# sourceMappingURL=
|
|
41
|
+
//# sourceMappingURL=event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v1/event.ts"],"names":[],"mappings":";;;AAkBA;;;;;GAKG;AACH,SAAgB,iCAAiC;IAC/C,OAAO,CAAO,EAA2C,EAAE,EAAE;QAC3D,OAAO,CAAC,oBAAkD,EAAE,EAAE;YAC5D,MAAM,cAAc,GAA6C,CAAC,OAAO,EAAE,EAAE;gBAC3E,MAAM,SAAS,GAAgC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBACpI,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;YAEF,OAAO,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,8EAWC;AAeD;;;;;;GAMG;AACH,SAAgB,6BAA6B,CAAI,eAAmC;IAClF,OAAO,CAAiB,EAA0C,EAAE,EAAE;QACpE,OAAO,CAAC,oBAAkD,EAAE,EAAE;YAC5D,MAAM,cAAc,GAA4C,CAAC,OAAO,EAAE,EAAE;gBAC1E,MAAM,SAAS,GAAgC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;gBACrJ,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;YAEF,OAAO,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,sEAWC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./call"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./call.utility"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./event"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v1/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,yDAA+B;AAC/B,kDAAwB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { PromiseOrValue } from '@dereekb/util';
|
|
2
|
+
import { BlockingFunction } from 'firebase-functions';
|
|
3
|
+
import { MakeNestContext, NestApplicationFunctionFactory } from '../../nest.provider';
|
|
4
|
+
export declare type BlockingFunctionHandler<E, O = unknown> = (event: E) => PromiseOrValue<O>;
|
|
5
|
+
export declare type NestContextBlockingFunctionHandler<C, E, O = unknown> = (nest: C, event: E) => PromiseOrValue<O>;
|
|
6
|
+
export declare type NestContextBlockingFunctionHandlerBuilder<C, E, O = unknown> = (handler: NestContextBlockingFunctionHandler<C, E, O>) => BlockingFunctionHandler<E, O>;
|
|
7
|
+
export declare type BlockingFunctionHandlerWithNestContextBuilder<C, E, O = unknown> = (nest: NestContextBlockingFunctionHandlerBuilder<C, E, O>) => BlockingFunction;
|
|
8
|
+
/**
|
|
9
|
+
* Factory function for generating a firebase BlockingFunction for a specific event.
|
|
10
|
+
*/
|
|
11
|
+
export declare type BlockingFunctionHandlerWithNestContextFactory<C> = <E, O = unknown>(fn: BlockingFunctionHandlerWithNestContextBuilder<C, E, O>) => NestApplicationFunctionFactory<BlockingFunction>;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a BlockingFunctionHandlerWithNestContextFactory.
|
|
14
|
+
*
|
|
15
|
+
* @param appFactory
|
|
16
|
+
* @param makeNestContext
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export declare function blockingFunctionHandlerWithNestContextFactory<C>(makeNestContext: MakeNestContext<C>): BlockingFunctionHandlerWithNestContextFactory<C>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.blockingFunctionHandlerWithNestContextFactory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a BlockingFunctionHandlerWithNestContextFactory.
|
|
6
|
+
*
|
|
7
|
+
* @param appFactory
|
|
8
|
+
* @param makeNestContext
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
function blockingFunctionHandlerWithNestContextFactory(makeNestContext) {
|
|
12
|
+
return (fn) => {
|
|
13
|
+
return (nestAppPromiseGetter) => {
|
|
14
|
+
const handlerBuilder = (handler) => {
|
|
15
|
+
const fnHandler = (event) => nestAppPromiseGetter().then((nest) => handler(makeNestContext(nest), event));
|
|
16
|
+
return fnHandler;
|
|
17
|
+
};
|
|
18
|
+
return fn(handlerBuilder);
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
exports.blockingFunctionHandlerWithNestContextFactory = blockingFunctionHandlerWithNestContextFactory;
|
|
23
|
+
//# sourceMappingURL=blocking.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blocking.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v2/blocking.ts"],"names":[],"mappings":";;;AAeA;;;;;;GAMG;AACH,SAAgB,6CAA6C,CAAI,eAAmC;IAClG,OAAO,CAAO,EAA0D,EAAE,EAAE;QAC1E,OAAO,CAAC,oBAAkD,EAAE,EAAE;YAC5D,MAAM,cAAc,GAAuD,CAAC,OAAoD,EAAE,EAAE;gBAClI,MAAM,SAAS,GAAkC,CAAC,KAAQ,EAAE,EAAE,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC5I,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;YAEF,OAAO,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,sGAWC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { INestApplicationContext } from '@nestjs/common';
|
|
2
|
+
import { CallableRequest } from 'firebase-functions/v2/https';
|
|
3
|
+
import { CallableHttpFunction } from '../../../function/type';
|
|
4
|
+
import { MakeNestContext, NestApplicationFunctionFactory } from '../../nest.provider';
|
|
5
|
+
export declare type NestApplicationCallableHttpFunctionFactory<I, O = unknown> = NestApplicationFunctionFactory<CallableHttpFunction<I, O>>;
|
|
6
|
+
/**
|
|
7
|
+
* Runnable function that is passed an INestApplicationContext in addition to the usual data/context provided by firebase.
|
|
8
|
+
*/
|
|
9
|
+
export declare type OnCallHandlerWithNestApplication<I = unknown, O = unknown> = (nest: INestApplicationContext, request: CallableRequest<I>) => O;
|
|
10
|
+
/**
|
|
11
|
+
* Factory function for generating a NestApplicationFunctionFactory for a HttpsFunctions/Runnable firebase function.
|
|
12
|
+
*/
|
|
13
|
+
export declare type OnCallHandlerWithNestApplicationFactory = <I, O>(fn: OnCallHandlerWithNestApplication<I, O>) => NestApplicationCallableHttpFunctionFactory<I, O>;
|
|
14
|
+
/**
|
|
15
|
+
* Creates a factory for generating OnCallWithNestApplication functions.
|
|
16
|
+
*
|
|
17
|
+
* @param nestAppPromiseGetter
|
|
18
|
+
* @returns
|
|
19
|
+
*/
|
|
20
|
+
export declare function onCallHandlerWithNestApplicationFactory(): OnCallHandlerWithNestApplicationFactory;
|
|
21
|
+
/**
|
|
22
|
+
* Runnable function that is passed an arbitrary nest context object in addition to the usual data/context provided by firebase.
|
|
23
|
+
*/
|
|
24
|
+
export declare type OnCallHandlerWithNestContext<C, I = unknown, O = unknown> = (nestContext: C, request: CallableRequest<I>) => O;
|
|
25
|
+
/**
|
|
26
|
+
* Factory function for generating HttpsFunctions/Runnable firebase function that returns the value from the input OnCallWithNestContext function.
|
|
27
|
+
*/
|
|
28
|
+
export declare type OnCallHandlerWithNestContextFactory<C> = <I, O>(fn: OnCallHandlerWithNestContext<C, I, O>) => NestApplicationCallableHttpFunctionFactory<I>;
|
|
29
|
+
/**
|
|
30
|
+
* Creates a factory for generating OnCallWithNestContext functions with a nest context object that is generated by the input function.
|
|
31
|
+
*
|
|
32
|
+
* @param appFactory
|
|
33
|
+
* @param makeNestContext
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
export declare function onCallHandlerWithNestContextFactory<C>(appFactory: OnCallHandlerWithNestApplicationFactory, makeNestContext: MakeNestContext<C>): OnCallHandlerWithNestContextFactory<C>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.onCallHandlerWithNestContextFactory = exports.onCallHandlerWithNestApplicationFactory = void 0;
|
|
4
|
+
const v2_1 = require("firebase-functions/v2");
|
|
5
|
+
/**
|
|
6
|
+
* Creates a factory for generating OnCallWithNestApplication functions.
|
|
7
|
+
*
|
|
8
|
+
* @param nestAppPromiseGetter
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
function onCallHandlerWithNestApplicationFactory() {
|
|
12
|
+
return (fn) => {
|
|
13
|
+
return (nestAppPromiseGetter) => v2_1.https.onCall((request) => nestAppPromiseGetter().then(x => fn(x, request)));
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
exports.onCallHandlerWithNestApplicationFactory = onCallHandlerWithNestApplicationFactory;
|
|
17
|
+
/**
|
|
18
|
+
* Creates a factory for generating OnCallWithNestContext functions with a nest context object that is generated by the input function.
|
|
19
|
+
*
|
|
20
|
+
* @param appFactory
|
|
21
|
+
* @param makeNestContext
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
function onCallHandlerWithNestContextFactory(appFactory, makeNestContext) {
|
|
25
|
+
return (fn) => appFactory((nest, request) => fn(makeNestContext(nest), request));
|
|
26
|
+
}
|
|
27
|
+
exports.onCallHandlerWithNestContextFactory = onCallHandlerWithNestContextFactory;
|
|
28
|
+
//# sourceMappingURL=call.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"call.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v2/call.ts"],"names":[],"mappings":";;;AAEA,8CAA8C;AAmB9C;;;;;GAKG;AACH,SAAgB,uCAAuC;IACrD,OAAO,CAAO,EAA0C,EAAE,EAAE;QAC1D,OAAO,CAAC,oBAAkD,EAAE,EAAE,CAAC,UAAK,CAAC,MAAM,CAAC,CAAC,OAA2B,EAAE,EAAE,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACjK,CAAC,CAAC;AACJ,CAAC;AAJD,0FAIC;AAYD;;;;;;GAMG;AACH,SAAgB,mCAAmC,CAAI,UAAmD,EAAE,eAAmC;IAC7I,OAAO,CAAO,EAAyC,EAAE,EAAE,CAAC,UAAU,CAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AACtI,CAAC;AAFD,kFAEC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { PromiseOrValue } from '@dereekb/util';
|
|
2
|
+
import { CloudEvent, CloudFunction } from 'firebase-functions/v2';
|
|
3
|
+
import { MakeNestContext, NestApplicationFunctionFactory } from '../../nest.provider';
|
|
4
|
+
export declare type CloudEventHandler<E extends CloudEvent<unknown>, O = unknown> = (event: E) => PromiseOrValue<O>;
|
|
5
|
+
export declare type NestContextCloudEventHandler<C, E extends CloudEvent<unknown>, O = unknown> = (nest: C, event: E) => PromiseOrValue<O>;
|
|
6
|
+
export declare type NestContextCloudEventHandlerBuilder<C, E extends CloudEvent<unknown>, O = unknown> = (handler: NestContextCloudEventHandler<C, E, O>) => CloudEventHandler<E, O>;
|
|
7
|
+
export declare type NestContextCloudEventHandlerWithData<C, I, O = unknown> = NestContextCloudEventHandler<C, CloudEvent<I>, O>;
|
|
8
|
+
export declare type CloudEventHandlerWithNestContextBuilder<C, E extends CloudEvent<unknown>, O = unknown> = (nest: NestContextCloudEventHandlerBuilder<C, E, O>) => CloudFunction<E>;
|
|
9
|
+
/**
|
|
10
|
+
* Factory function for generating a firebase CloudFunction for a specific event.
|
|
11
|
+
*/
|
|
12
|
+
export declare type CloudEventHandlerWithNestContextFactory<C> = <E extends CloudEvent<unknown>, O = unknown>(fn: CloudEventHandlerWithNestContextBuilder<C, E, O>) => NestApplicationFunctionFactory<CloudFunction<E>>;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a CloudEventHandlerWithNestContextFactory.
|
|
15
|
+
*
|
|
16
|
+
* @param appFactory
|
|
17
|
+
* @param makeNestContext
|
|
18
|
+
* @returns
|
|
19
|
+
*/
|
|
20
|
+
export declare function cloudEventHandlerWithNestContextFactory<C>(makeNestContext: MakeNestContext<C>): CloudEventHandlerWithNestContextFactory<C>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cloudEventHandlerWithNestContextFactory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a CloudEventHandlerWithNestContextFactory.
|
|
6
|
+
*
|
|
7
|
+
* @param appFactory
|
|
8
|
+
* @param makeNestContext
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
function cloudEventHandlerWithNestContextFactory(makeNestContext) {
|
|
12
|
+
return (fn) => {
|
|
13
|
+
return (nestAppPromiseGetter) => {
|
|
14
|
+
const handlerBuilder = (handler) => {
|
|
15
|
+
const fnHandler = (event) => nestAppPromiseGetter().then((nest) => handler(makeNestContext(nest), event));
|
|
16
|
+
return fnHandler;
|
|
17
|
+
};
|
|
18
|
+
return fn(handlerBuilder);
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
exports.cloudEventHandlerWithNestContextFactory = cloudEventHandlerWithNestContextFactory;
|
|
23
|
+
//# sourceMappingURL=event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v2/event.ts"],"names":[],"mappings":";;;AAgBA;;;;;;GAMG;AACH,SAAgB,uCAAuC,CAAI,eAAmC;IAC5F,OAAO,CAA6C,EAAoD,EAAE,EAAE;QAC1G,OAAO,CAAC,oBAAkD,EAAE,EAAE;YAC5D,MAAM,cAAc,GAAiD,CAAC,OAA8C,EAAE,EAAE;gBACtH,MAAM,SAAS,GAA4B,CAAC,KAAQ,EAAE,EAAE,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBACtI,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;YAEF,OAAO,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,0FAWC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./blocking"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./call"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./event"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./taskqueue"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v2/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B;AAC3B,iDAAuB;AACvB,kDAAwB;AACxB,sDAA4B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { PromiseOrValue } from '@dereekb/util';
|
|
2
|
+
import { TaskQueueFunction } from 'firebase-functions/v2/tasks';
|
|
3
|
+
import { MakeNestContext, NestApplicationFunctionFactory } from '../../nest.provider';
|
|
4
|
+
export declare type TaskQueueFunctionHandler<E = unknown> = (event: E) => PromiseOrValue<void>;
|
|
5
|
+
export declare type NestContextTaskQueueFunctionHandler<C, E = unknown> = (nest: C, event: E) => PromiseOrValue<void>;
|
|
6
|
+
export declare type NestContextTaskQueueFunctionHandlerBuilder<C, E = unknown> = (handler: NestContextTaskQueueFunctionHandler<C, E>) => TaskQueueFunctionHandler<E>;
|
|
7
|
+
export declare type TaskQueueFunctionHandlerWithNestContextBuilder<C, E = unknown> = (nest: NestContextTaskQueueFunctionHandlerBuilder<C, E>) => TaskQueueFunction<E>;
|
|
8
|
+
/**
|
|
9
|
+
* Factory function for generating a TaskQueueFunction for a specific task.
|
|
10
|
+
*/
|
|
11
|
+
export declare type TaskQueueFunctionHandlerWithNestContextFactory<C> = <E = unknown>(fn: TaskQueueFunctionHandlerWithNestContextBuilder<C, E>) => NestApplicationFunctionFactory<TaskQueueFunction<E>>;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a TaskQueueFunctionHandlerWithNestContextFactory.
|
|
14
|
+
*
|
|
15
|
+
* @param appFactory
|
|
16
|
+
* @param makeNestContext
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
export declare function taskQueueFunctionHandlerWithNestContextFactory<C>(makeNestContext: MakeNestContext<C>): TaskQueueFunctionHandlerWithNestContextFactory<C>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.taskQueueFunctionHandlerWithNestContextFactory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Creates a TaskQueueFunctionHandlerWithNestContextFactory.
|
|
6
|
+
*
|
|
7
|
+
* @param appFactory
|
|
8
|
+
* @param makeNestContext
|
|
9
|
+
* @returns
|
|
10
|
+
*/
|
|
11
|
+
function taskQueueFunctionHandlerWithNestContextFactory(makeNestContext) {
|
|
12
|
+
return (fn) => {
|
|
13
|
+
return (nestAppPromiseGetter) => {
|
|
14
|
+
const handlerBuilder = (handler) => {
|
|
15
|
+
const fnHandler = (event) => nestAppPromiseGetter().then((nest) => handler(makeNestContext(nest), event));
|
|
16
|
+
return fnHandler;
|
|
17
|
+
};
|
|
18
|
+
return fn(handlerBuilder);
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
exports.taskQueueFunctionHandlerWithNestContextFactory = taskQueueFunctionHandlerWithNestContextFactory;
|
|
23
|
+
//# sourceMappingURL=taskqueue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taskqueue.js","sourceRoot":"","sources":["../../../../../../../../packages/firebase-server/src/lib/nest/function/v2/taskqueue.ts"],"names":[],"mappings":";;;AAeA;;;;;;GAMG;AACH,SAAgB,8CAA8C,CAAI,eAAmC;IACnG,OAAO,CAAc,EAAwD,EAAE,EAAE;QAC/E,OAAO,CAAC,oBAAkD,EAAE,EAAE;YAC5D,MAAM,cAAc,GAAqD,CAAC,OAAkD,EAAE,EAAE;gBAC9H,MAAM,SAAS,GAAgC,CAAC,KAAQ,EAAE,EAAE,CAAC,oBAAoB,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC1I,OAAO,SAAS,CAAC;YACnB,CAAC,CAAC;YAEF,OAAO,EAAE,CAAC,cAAc,CAAC,CAAC;QAC5B,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAXD,wGAWC"}
|
package/src/lib/nest/index.d.ts
CHANGED
package/src/lib/nest/index.js
CHANGED
|
@@ -2,5 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./function"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./middleware"), exports);
|
|
5
6
|
tslib_1.__exportStar(require("./app"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./nest.provider"), exports);
|
|
6
8
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/nest/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B;AAC3B,gDAAsB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/nest/index.ts"],"names":[],"mappings":";;;AAAA,qDAA2B;AAC3B,uDAA6B;AAC7B,gDAAsB;AACtB,0DAAgC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./rawbody.middleware"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./webhook"), exports);
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/middleware/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,oDAA0B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { NestMiddleware } from '@nestjs/common';
|
|
2
|
+
import { Request } from 'firebase-functions/v2/https';
|
|
3
|
+
import { Response } from 'express';
|
|
4
|
+
export declare class FirebaseRawBodyMiddleware implements NestMiddleware {
|
|
5
|
+
use(req: Request, res: Response, next: () => void): void;
|
|
6
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FirebaseRawBodyMiddleware = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
let FirebaseRawBodyMiddleware = class FirebaseRawBodyMiddleware {
|
|
7
|
+
use(req, res, next) {
|
|
8
|
+
req.body = req.rawBody;
|
|
9
|
+
next();
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
FirebaseRawBodyMiddleware = tslib_1.__decorate([
|
|
13
|
+
(0, common_1.Injectable)()
|
|
14
|
+
], FirebaseRawBodyMiddleware);
|
|
15
|
+
exports.FirebaseRawBodyMiddleware = FirebaseRawBodyMiddleware;
|
|
16
|
+
//# sourceMappingURL=rawbody.middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rawbody.middleware.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/middleware/rawbody.middleware.ts"],"names":[],"mappings":";;;;AAAA,2CAA4D;AAK5D,IAAa,yBAAyB,GAAtC,MAAa,yBAAyB;IAEpC,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,IAAgB;QAC/C,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;QACvB,IAAI,EAAE,CAAC;IACT,CAAC;CAEF,CAAA;AAPY,yBAAyB;IADrC,IAAA,mBAAU,GAAE;GACA,yBAAyB,CAOrC;AAPY,8DAAyB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { MiddlewareConsumer } from "@nestjs/common";
|
|
2
|
+
/**
|
|
3
|
+
* Convenience class that mirrors the ConfigureWebhookMiddlewareModule class in @dereekb/nestjs, but for Firebase apps.
|
|
4
|
+
*
|
|
5
|
+
* Requests to /webhook/* have their request.body value set to the rawBody.
|
|
6
|
+
*/
|
|
7
|
+
export declare class ConfigureFirebaseWebhookMiddlewareModule {
|
|
8
|
+
private readonly logger;
|
|
9
|
+
configure(consumer: MiddlewareConsumer): void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConfigureFirebaseWebhookMiddlewareModule = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const common_1 = require("@nestjs/common");
|
|
6
|
+
const rawbody_middleware_1 = require("./rawbody.middleware");
|
|
7
|
+
/**
|
|
8
|
+
* Convenience class that mirrors the ConfigureWebhookMiddlewareModule class in @dereekb/nestjs, but for Firebase apps.
|
|
9
|
+
*
|
|
10
|
+
* Requests to /webhook/* have their request.body value set to the rawBody.
|
|
11
|
+
*/
|
|
12
|
+
let ConfigureFirebaseWebhookMiddlewareModule = class ConfigureFirebaseWebhookMiddlewareModule {
|
|
13
|
+
constructor() {
|
|
14
|
+
this.logger = new common_1.Logger('ConfigureFirebaseWebhookMiddlewareModule');
|
|
15
|
+
}
|
|
16
|
+
configure(consumer) {
|
|
17
|
+
consumer
|
|
18
|
+
.apply(rawbody_middleware_1.FirebaseRawBodyMiddleware)
|
|
19
|
+
.forRoutes({
|
|
20
|
+
path: '/webhook/*',
|
|
21
|
+
method: common_1.RequestMethod.POST,
|
|
22
|
+
});
|
|
23
|
+
this.logger.debug('Configured firebase webhook routes with proper middleware.');
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
ConfigureFirebaseWebhookMiddlewareModule = tslib_1.__decorate([
|
|
27
|
+
(0, common_1.Module)({})
|
|
28
|
+
], ConfigureFirebaseWebhookMiddlewareModule);
|
|
29
|
+
exports.ConfigureFirebaseWebhookMiddlewareModule = ConfigureFirebaseWebhookMiddlewareModule;
|
|
30
|
+
//# sourceMappingURL=webhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../../../../../../packages/firebase-server/src/lib/nest/middleware/webhook.ts"],"names":[],"mappings":";;;;AAAA,2CAAmF;AACnF,6DAAiE;AAEjE;;;;GAIG;AAEH,IAAa,wCAAwC,GAArD,MAAa,wCAAwC;IAArD;QAEmB,WAAM,GAAG,IAAI,eAAM,CAAC,0CAA0C,CAAC,CAAC;IAanF,CAAC;IAXQ,SAAS,CAAC,QAA4B;QAC3C,QAAQ;aACL,KAAK,CAAC,8CAAyB,CAAC;aAChC,SAAS,CAAC;YACT,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,sBAAa,CAAC,IAAI;SAC3B,CAAC,CAAC;QAEL,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAClF,CAAC;CAEF,CAAA;AAfY,wCAAwC;IADpD,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,wCAAwC,CAepD;AAfY,4FAAwC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Getter } from '@dereekb/util';
|
|
2
|
+
import { INestApplicationContext } from '@nestjs/common';
|
|
3
|
+
/**
|
|
4
|
+
* Getter for an INestApplicationContext promise. Nest should be initialized when the promise resolves.
|
|
5
|
+
*/
|
|
6
|
+
export declare type NestApplicationPromiseGetter = Getter<Promise<INestApplicationContext>>;
|
|
7
|
+
/**
|
|
8
|
+
* Generates a function from the passed NestApplicationPromiseGetter/context.
|
|
9
|
+
*
|
|
10
|
+
* This pattern is available to allow generating similar content for differenting contexts, such as production and testing.
|
|
11
|
+
*/
|
|
12
|
+
export declare type NestApplicationFunctionFactory<F> = (nestAppPromiseGetter: NestApplicationPromiseGetter) => F;
|
|
13
|
+
/**
|
|
14
|
+
* Getter for an INestApplicationContext promise. Nest should be initialized when the promise resolves.
|
|
15
|
+
*/
|
|
16
|
+
export declare type MakeNestContext<C> = (nest: INestApplicationContext) => C;
|
|
17
|
+
/**
|
|
18
|
+
* Abstract class that wraps an INestApplicationContext value.
|
|
19
|
+
*/
|
|
20
|
+
export declare abstract class AbstractNestContext {
|
|
21
|
+
readonly nest: INestApplicationContext;
|
|
22
|
+
constructor(nest: INestApplicationContext);
|
|
23
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AbstractNestContext = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Abstract class that wraps an INestApplicationContext value.
|
|
6
|
+
*/
|
|
7
|
+
class AbstractNestContext {
|
|
8
|
+
constructor(nest) {
|
|
9
|
+
this.nest = nest;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.AbstractNestContext = AbstractNestContext;
|
|
13
|
+
//# sourceMappingURL=nest.provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nest.provider.js","sourceRoot":"","sources":["../../../../../../packages/firebase-server/src/lib/nest/nest.provider.ts"],"names":[],"mappings":";;;AAoBA;;GAEG;AACH,MAAsB,mBAAmB;IACvC,YAAqB,IAA6B;QAA7B,SAAI,GAAJ,IAAI,CAAyB;IAAI,CAAC;CACxD;AAFD,kDAEC"}
|
package/test/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
# [5.0.0](https://github.com/dereekb/dbx-components/compare/v4.1.0-dev...v5.0.0) (2022-05-25)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* added firebase functions v2 nest context components ([e5ca892](https://github.com/dereekb/dbx-components/commit/e5ca89250c7b7cf99f75d8edb0fc16a4618cbc21))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
5
14
|
# [4.1.0](https://github.com/dereekb/dbx-components/compare/v4.0.1-dev...v4.1.0) (2022-05-17)
|
|
6
15
|
|
|
7
16
|
|
package/test/package.json
CHANGED
|
@@ -1,35 +1,36 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dereekb/firebase-server/test",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.0",
|
|
4
4
|
"main": "./src/index.js",
|
|
5
5
|
"typings": "./src/index.d.ts",
|
|
6
6
|
"dependencies": {},
|
|
7
7
|
"peerDependencies": {
|
|
8
|
-
"@dereekb/firebase": "
|
|
8
|
+
"@dereekb/firebase": "5.0.0",
|
|
9
9
|
"rxjs": "^7.0.0",
|
|
10
10
|
"rxfire": "^6.0.3",
|
|
11
11
|
"firebase": "^9.8.0",
|
|
12
|
-
"@dereekb/util": "
|
|
12
|
+
"@dereekb/util": "5.0.0",
|
|
13
13
|
"make-error": "^1.3.0",
|
|
14
14
|
"extra-set": "^2.2.11",
|
|
15
|
-
"
|
|
16
|
-
"@dereekb/rxjs": "4.1.0",
|
|
15
|
+
"@dereekb/rxjs": "5.0.0",
|
|
17
16
|
"ms": "^3.0.0-canary.1",
|
|
18
|
-
"@dereekb/date": "
|
|
17
|
+
"@dereekb/date": "5.0.0",
|
|
19
18
|
"class-transformer": "^0.5.1",
|
|
20
19
|
"date-fns": "^2.28.0",
|
|
21
20
|
"class-validator": "^0.13.2",
|
|
22
21
|
"date-fns-tz": "^1.3.0",
|
|
23
22
|
"rrule": "git+https://git@github.com/dereekb/rrule.git#17adf5708d6567b4d01a3a8afd106261421ea492",
|
|
24
|
-
"@dereekb/model": "
|
|
25
|
-
"@dereekb/util/test": "
|
|
23
|
+
"@dereekb/model": "5.0.0",
|
|
24
|
+
"@dereekb/util/test": "5.0.0",
|
|
26
25
|
"firebase-admin": "^10.2.0",
|
|
27
26
|
"jsonwebtoken": "^8.0.0",
|
|
28
|
-
"firebase-functions": "^3.21.
|
|
27
|
+
"firebase-functions": "^3.21.2",
|
|
29
28
|
"@nestjs/common": "^8.4.0",
|
|
30
29
|
"@google-cloud/firestore": "^5.0.2",
|
|
31
|
-
"@dereekb/firebase/test": "
|
|
32
|
-
"@dereekb/firebase-server": "
|
|
30
|
+
"@dereekb/firebase/test": "5.0.0",
|
|
31
|
+
"@dereekb/firebase-server": "5.0.0",
|
|
32
|
+
"@dereekb/nestjs": "5.0.0",
|
|
33
|
+
"@nestjs/config": "^2.0.1",
|
|
33
34
|
"@nestjs/core": "^8.4.0",
|
|
34
35
|
"@nestjs/platform-express": "^8.4.0",
|
|
35
36
|
"tslib": "^2.0.0"
|
|
@@ -100,7 +100,7 @@ exports.authorizedUserContextFactory = authorizedUserContextFactory;
|
|
|
100
100
|
*
|
|
101
101
|
* Has the format 'test-uid-<number>'
|
|
102
102
|
*/
|
|
103
|
-
exports.testUidFactory = (0, util_1.mapGetter)((0, util_1.incrementingNumberFactory)(), (i) => `test-uid-${i}`);
|
|
103
|
+
exports.testUidFactory = (0, util_1.mapGetter)((0, util_1.incrementingNumberFactory)(), (i) => `test-uid-${i}+${new Date().toISOString()}`);
|
|
104
104
|
/**
|
|
105
105
|
* Creates a CallableContextOptions with auth attached corresponding to the input UserRecord.
|
|
106
106
|
*
|
|
@@ -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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"}
|