@my-devkit/firebase 1.0.175 → 1.0.177
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app-factory.d.ts +2 -2
- package/dist/app-factory.js +20 -8
- package/dist/app-factory.js.map +1 -1
- package/package.json +3 -3
- package/src/app-factory.ts +26 -9
package/dist/app-factory.d.ts
CHANGED
|
@@ -3,11 +3,11 @@ import { QueryDocumentSnapshot } from 'firebase-admin/firestore';
|
|
|
3
3
|
import { MemoryOption, SupportedRegion } from 'firebase-functions/v2';
|
|
4
4
|
import { FirestoreEvent } from 'firebase-functions/v2/firestore';
|
|
5
5
|
import { HttpsFunction } from 'firebase-functions/v2/https';
|
|
6
|
-
import { ScheduleFunction } from 'firebase-functions/v2/scheduler';
|
|
7
6
|
import { Bus } from './bus';
|
|
8
7
|
import { ExecutionMode } from './execution-mode-enum';
|
|
9
8
|
import { Type } from './interfaces';
|
|
10
9
|
export declare class AppFactory {
|
|
10
|
+
private static functionInRegion;
|
|
11
11
|
private static firestore;
|
|
12
12
|
private static auth;
|
|
13
13
|
private static publicPaths;
|
|
@@ -18,7 +18,7 @@ export declare class AppFactory {
|
|
|
18
18
|
static initializeApp(options: AppFactory.Options): void;
|
|
19
19
|
static createHttpsFunction(name: string, module: Type): HttpsFunction;
|
|
20
20
|
static createOnCallGenkit(name: string, flow: any): CallableFunction;
|
|
21
|
-
static createScheduledJob<C extends Command>(name: string, module: Type, schedule: string, timeZone: string, commandType: new () => C):
|
|
21
|
+
static createScheduledJob<C extends Command>(name: string, module: Type, schedule: string, timeZone: string, commandType: new () => C): import("firebase-functions/v1").CloudFunction<unknown>;
|
|
22
22
|
static createEventListener(name: string, module: Type, mode?: ExecutionMode): import("firebase-functions/core").CloudFunction<FirestoreEvent<import("firebase-functions/v2/firestore").QueryDocumentSnapshot, Record<string, string>>>;
|
|
23
23
|
private static registerEventPersisterHandler;
|
|
24
24
|
private static registerControllers;
|
package/dist/app-factory.js
CHANGED
|
@@ -15,10 +15,10 @@ const app_1 = require("firebase-admin/app");
|
|
|
15
15
|
const auth_1 = require("firebase-admin/auth");
|
|
16
16
|
const firestore_1 = require("firebase-admin/firestore");
|
|
17
17
|
const params_1 = require("firebase-functions/params");
|
|
18
|
+
const v1_1 = require("firebase-functions/v1");
|
|
18
19
|
const v2_1 = require("firebase-functions/v2");
|
|
19
20
|
const firestore_2 = require("firebase-functions/v2/firestore");
|
|
20
21
|
const https_1 = require("firebase-functions/v2/https");
|
|
21
|
-
const scheduler_1 = require("firebase-functions/v2/scheduler");
|
|
22
22
|
const bus_1 = require("./bus");
|
|
23
23
|
const constants_1 = require("./constants");
|
|
24
24
|
const context_1 = require("./context");
|
|
@@ -42,6 +42,12 @@ class AppFactory {
|
|
|
42
42
|
this.firestore.settings({});
|
|
43
43
|
this.apiKey = (0, params_1.defineSecret)('GOOGLE_GENAI_API_KEY');
|
|
44
44
|
this.auth = (0, auth_1.getAuth)(app);
|
|
45
|
+
// THIS PART SHOULD BE REMOVED ONCE COMPLETELY UPGRADED TO V2
|
|
46
|
+
const runtimeOptions = {
|
|
47
|
+
timeoutSeconds: options.timeoutSeconds,
|
|
48
|
+
memory: '1GB'
|
|
49
|
+
};
|
|
50
|
+
this.functionInRegion = (0, v1_1.region)(this.isEmulator ? 'functions' : options.region).runWith(runtimeOptions);
|
|
45
51
|
}
|
|
46
52
|
static createHttpsFunction(name, module) {
|
|
47
53
|
if (!this.isActive(name)) {
|
|
@@ -81,13 +87,19 @@ class AppFactory {
|
|
|
81
87
|
const bus = new bus_1.Bus();
|
|
82
88
|
this.registerEventPersisterHandler(bus);
|
|
83
89
|
this.registerHandlers(bus, module);
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
90
|
+
// V2 gets errors on deployed environment (PERMISSION_DENIED...)
|
|
91
|
+
// return onSchedule({
|
|
92
|
+
// schedule,
|
|
93
|
+
// timeZone,
|
|
94
|
+
// memory: this.options.memory,
|
|
95
|
+
// timeoutSeconds: this.options.timeoutSeconds,
|
|
96
|
+
// region: this.options.region
|
|
97
|
+
// }, this.getFunctionCommandHandler(bus, commandType));
|
|
98
|
+
return this.functionInRegion
|
|
99
|
+
.pubsub
|
|
100
|
+
.schedule(schedule)
|
|
101
|
+
.timeZone(timeZone)
|
|
102
|
+
.onRun(this.getFunctionCommandHandler(bus, commandType));
|
|
91
103
|
}
|
|
92
104
|
static createEventListener(name, module, mode = execution_mode_enum_1.ExecutionMode.Asynchronous) {
|
|
93
105
|
if (!this.isActive(name))
|
package/dist/app-factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-factory.js","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAA4E;AAC5E,4CAAmD;AACnD,8CAAoD;AACpD,wDAA0F;AAC1F,sDAAyD;AACzD,8CAA8E;
|
|
1
|
+
{"version":3,"file":"app-factory.js","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@my-devkit/firebase",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.177",
|
|
4
4
|
"description": "My Devkit: firebase tools for CQRS implementation",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -23,13 +23,13 @@
|
|
|
23
23
|
"reflect-metadata": "0.2.2"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"@my-devkit/core": "1.0.
|
|
26
|
+
"@my-devkit/core": "1.0.112",
|
|
27
27
|
"firebase-admin": "13.4.0",
|
|
28
28
|
"firebase-functions": "6.3.2"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@my-devkit/cli": "2.0.6",
|
|
32
|
-
"@my-devkit/core": "1.0.
|
|
32
|
+
"@my-devkit/core": "1.0.112",
|
|
33
33
|
"@types/cors": "2.8.17",
|
|
34
34
|
"@types/express": "4.17.21",
|
|
35
35
|
"@types/mocha": "10.0.6",
|
package/src/app-factory.ts
CHANGED
|
@@ -3,12 +3,13 @@ import { initializeApp } from 'firebase-admin/app';
|
|
|
3
3
|
import { Auth, getAuth } from 'firebase-admin/auth';
|
|
4
4
|
import { Firestore, getFirestore, QueryDocumentSnapshot } from 'firebase-admin/firestore';
|
|
5
5
|
import { defineSecret } from 'firebase-functions/params';
|
|
6
|
+
import { FunctionBuilder, region } from 'firebase-functions/v1';
|
|
6
7
|
import { logger, MemoryOption, SupportedRegion } from 'firebase-functions/v2';
|
|
7
8
|
|
|
8
9
|
import { SecretParam } from 'firebase-functions/lib/params/types';
|
|
10
|
+
import { RuntimeOptions } from 'firebase-functions/lib/v1/function-configuration';
|
|
9
11
|
import { FirestoreEvent, onDocumentCreated } from 'firebase-functions/v2/firestore';
|
|
10
12
|
import { HttpsFunction, onCallGenkit, onRequest } from 'firebase-functions/v2/https';
|
|
11
|
-
import { onSchedule, ScheduleFunction } from 'firebase-functions/v2/scheduler';
|
|
12
13
|
import { Bus } from './bus';
|
|
13
14
|
import { MODULE_METADATA } from './constants';
|
|
14
15
|
import { Context } from './context';
|
|
@@ -19,6 +20,7 @@ import { reflect } from './reflect';
|
|
|
19
20
|
import { Server } from './server';
|
|
20
21
|
|
|
21
22
|
export class AppFactory {
|
|
23
|
+
private static functionInRegion: FunctionBuilder;
|
|
22
24
|
private static firestore: Firestore;
|
|
23
25
|
private static auth: Auth;
|
|
24
26
|
private static publicPaths: string[];
|
|
@@ -47,6 +49,14 @@ export class AppFactory {
|
|
|
47
49
|
this.apiKey = defineSecret('GOOGLE_GENAI_API_KEY');
|
|
48
50
|
|
|
49
51
|
this.auth = getAuth(app);
|
|
52
|
+
|
|
53
|
+
// THIS PART SHOULD BE REMOVED ONCE COMPLETELY UPGRADED TO V2
|
|
54
|
+
const runtimeOptions: RuntimeOptions = {
|
|
55
|
+
timeoutSeconds: options.timeoutSeconds,
|
|
56
|
+
memory: '1GB'
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
this.functionInRegion = region(this.isEmulator ? 'functions' : options.region).runWith(runtimeOptions);
|
|
50
60
|
}
|
|
51
61
|
|
|
52
62
|
public static createHttpsFunction(name: string, module: Type): HttpsFunction {
|
|
@@ -97,7 +107,7 @@ export class AppFactory {
|
|
|
97
107
|
schedule: string,
|
|
98
108
|
timeZone: string,
|
|
99
109
|
commandType: new () => C
|
|
100
|
-
)
|
|
110
|
+
) {
|
|
101
111
|
if (!this.isActive(name))
|
|
102
112
|
return null;
|
|
103
113
|
|
|
@@ -109,13 +119,20 @@ export class AppFactory {
|
|
|
109
119
|
|
|
110
120
|
this.registerHandlers(bus, module);
|
|
111
121
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
122
|
+
// V2 gets errors on deployed environment (PERMISSION_DENIED...)
|
|
123
|
+
// return onSchedule({
|
|
124
|
+
// schedule,
|
|
125
|
+
// timeZone,
|
|
126
|
+
// memory: this.options.memory,
|
|
127
|
+
// timeoutSeconds: this.options.timeoutSeconds,
|
|
128
|
+
// region: this.options.region
|
|
129
|
+
// }, this.getFunctionCommandHandler(bus, commandType));
|
|
130
|
+
|
|
131
|
+
return this.functionInRegion
|
|
132
|
+
.pubsub
|
|
133
|
+
.schedule(schedule)
|
|
134
|
+
.timeZone(timeZone)
|
|
135
|
+
.onRun(this.getFunctionCommandHandler(bus, commandType));
|
|
119
136
|
}
|
|
120
137
|
|
|
121
138
|
public static createEventListener(name: string, module: Type, mode: ExecutionMode = ExecutionMode.Asynchronous) {
|