@mxpicture/gcp-functions-backend 1.3.26 → 1.3.28
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/api/IBackendApi.d.ts +2 -0
- package/dist/api/IBackendApi.d.ts.map +1 -1
- package/dist/api/IBackendApi.js +4 -0
- package/dist/api/IBackendApi.js.map +1 -1
- package/dist/firebase/FirebaseTaskHandler.js +2 -2
- package/dist/firebase/firebase.tasks.d.ts +8 -5
- package/dist/firebase/firebase.tasks.d.ts.map +1 -1
- package/dist/firebase/firebase.tasks.js +13 -2
- package/dist/firebase/firebase.tasks.js.map +1 -1
- package/dist/function/IBackendFunction.d.ts +3 -1
- package/dist/function/IBackendFunction.d.ts.map +1 -1
- package/dist/function/IBackendFunction.js +7 -1
- package/dist/function/IBackendFunction.js.map +1 -1
- package/dist/types/types.tasks.d.ts +9 -3
- package/dist/types/types.tasks.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -21,6 +21,7 @@ export declare abstract class IBackendApi<STORE_DOC extends DocumentKeyAdmin, DT
|
|
|
21
21
|
protected readonly sideEffects: string[];
|
|
22
22
|
protected _store?: STORE;
|
|
23
23
|
protected _validation?: VAL;
|
|
24
|
+
protected _functionUrl?: string;
|
|
24
25
|
/**
|
|
25
26
|
* Create a new backend API instance.
|
|
26
27
|
*
|
|
@@ -28,6 +29,7 @@ export declare abstract class IBackendApi<STORE_DOC extends DocumentKeyAdmin, DT
|
|
|
28
29
|
* @param datePaths - JSON paths within the response payload that contain date values to convert to Firestore Timestamps.
|
|
29
30
|
*/
|
|
30
31
|
constructor(name: string, datePaths: string[], virtuals: DecoPropertyVirtual[], sideEffects: string[]);
|
|
32
|
+
useFunctionUrl(url: string): void;
|
|
31
33
|
/**
|
|
32
34
|
* Inject the store instance used for data persistence.
|
|
33
35
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IBackendApi.d.ts","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;;;;;;;;;;;GAYG;AACH,8BAAsB,WAAW,CAC/B,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EAErB,YAAY,SAAS,YAAY,GAAG,YAAY,EAChD,KAAK,SAAS,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EACjD,GAAG,SAAS,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"IBackendApi.d.ts","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;;;;;;;;;;;GAYG;AACH,8BAAsB,WAAW,CAC/B,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EAErB,YAAY,SAAS,YAAY,GAAG,YAAY,EAChD,KAAK,SAAS,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EACjD,GAAG,SAAS,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC;aAa3B,IAAI,EAAE,MAAM;IAC5B,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;IACtC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAAE;IAClD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE;IAd1C,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACzB,SAAS,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IAC5B,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;OAKG;gBAEe,IAAI,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,mBAAmB,EAAE,EAC/B,WAAW,EAAE,MAAM,EAAE;IAGnC,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIxC;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAInC;;;;OAIG;IACI,aAAa,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI;IAI3C;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,KAAK;IAQxB;;;;;OAKG;IACH,SAAS,CAAC,UAAU,IAAI,GAAG;CAO5B"}
|
package/dist/api/IBackendApi.js
CHANGED
|
@@ -18,6 +18,7 @@ export class IBackendApi {
|
|
|
18
18
|
sideEffects;
|
|
19
19
|
_store;
|
|
20
20
|
_validation;
|
|
21
|
+
_functionUrl;
|
|
21
22
|
/**
|
|
22
23
|
* Create a new backend API instance.
|
|
23
24
|
*
|
|
@@ -30,6 +31,9 @@ export class IBackendApi {
|
|
|
30
31
|
this.virtuals = virtuals;
|
|
31
32
|
this.sideEffects = sideEffects;
|
|
32
33
|
}
|
|
34
|
+
useFunctionUrl(url) {
|
|
35
|
+
this._functionUrl = url;
|
|
36
|
+
}
|
|
33
37
|
/**
|
|
34
38
|
* Inject the store instance used for data persistence.
|
|
35
39
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IBackendApi.js","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;GAYG;AACH,MAAM,OAAgB,WAAW;
|
|
1
|
+
{"version":3,"file":"IBackendApi.js","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;GAYG;AACH,MAAM,OAAgB,WAAW;IAmBb;IACG;IACA;IACA;IAdX,MAAM,CAAS;IACf,WAAW,CAAO;IAClB,YAAY,CAAU;IAEhC;;;;;OAKG;IACH,YACkB,IAAY,EACT,SAAmB,EACnB,QAA+B,EAC/B,WAAqB;QAHxB,SAAI,GAAJ,IAAI,CAAQ;QACT,cAAS,GAAT,SAAS,CAAU;QACnB,aAAQ,GAAR,QAAQ,CAAuB;QAC/B,gBAAW,GAAX,WAAW,CAAU;IACvC,CAAC;IAEG,cAAc,CAAC,GAAW;QAC/B,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,KAAY;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,UAAe;QAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACO,KAAK;QACb,IAAI,CAAC,IAAI,CAAC,MAAM;YACd,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,IAAI,6CAA6C,CAC1D,CAAC;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACO,UAAU;QAClB,IAAI,CAAC,IAAI,CAAC,WAAW;YACnB,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,IAAI,uDAAuD,CACpE,CAAC;QACJ,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;CACF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CloudTasksClient } from "@google-cloud/tasks";
|
|
2
2
|
import { FirebaseTaskQueueHandler } from "./FirebaseTaskQueueHandler.js";
|
|
3
|
-
import {
|
|
3
|
+
import { fromTaskName } from "./firebase.tasks.js";
|
|
4
4
|
/**
|
|
5
5
|
* Client wrapper around Google Cloud Tasks for scheduling, retrieving, and managing HTTP-targeted tasks.
|
|
6
6
|
*
|
|
@@ -157,7 +157,7 @@ export class FirebaseTaskHandler {
|
|
|
157
157
|
const cloned = structuredClone(task);
|
|
158
158
|
if (!cloned.name)
|
|
159
159
|
return cloned;
|
|
160
|
-
const parts =
|
|
160
|
+
const parts = fromTaskName(cloned.name);
|
|
161
161
|
if (parts)
|
|
162
162
|
cloned.nameParts = parts;
|
|
163
163
|
return cloned;
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { FirebaseQueueFqName, FirebaseTaskDurationParams, FirebaseTaskFqName, FirebaseTaskName, FirebaseTaskTimestamp } from "../types/types.tasks.js";
|
|
2
|
+
export declare const taskPathRegex: RegExp;
|
|
3
|
+
export declare const queuePathRegex: RegExp;
|
|
4
|
+
export declare const taskNameRegex: RegExp;
|
|
2
5
|
/**
|
|
3
6
|
* Compute a Cloud Tasks schedule timestamp from a duration specification or an absolute `Date`.
|
|
4
7
|
*
|
|
@@ -13,20 +16,20 @@ import type { FirebaseQueueNameParts, FirebaseTaskDurationParams, FirebaseTaskNa
|
|
|
13
16
|
* @returns A {@link FirebaseTaskTimestamp} containing the computed `seconds` value.
|
|
14
17
|
*/
|
|
15
18
|
export declare const taskScheduleTimestamp: (duration_date: FirebaseTaskDurationParams | Date) => FirebaseTaskTimestamp;
|
|
16
|
-
export declare const taskPathRegex: RegExp;
|
|
17
|
-
export declare const queuePathRegex: RegExp;
|
|
18
19
|
/**
|
|
19
20
|
* Parse a fully-qualified task resource path into its constituent parts.
|
|
20
21
|
*
|
|
21
22
|
* @param path - The task resource path to parse.
|
|
22
23
|
* @returns The parsed parts, or `null` if the path does not match the expected format.
|
|
23
24
|
*/
|
|
24
|
-
export declare const fromTaskPath: (path: string) =>
|
|
25
|
+
export declare const fromTaskPath: (path: string) => FirebaseTaskFqName | null;
|
|
25
26
|
/**
|
|
26
27
|
* Parse a fully-qualified queue resource path into its constituent parts.
|
|
27
28
|
*
|
|
28
29
|
* @param path - The queue resource path to parse.
|
|
29
30
|
* @returns The parsed parts, or `null` if the path does not match the expected format.
|
|
30
31
|
*/
|
|
31
|
-
export declare const fromQueuePath: (path: string) =>
|
|
32
|
+
export declare const fromQueuePath: (path: string) => FirebaseQueueFqName | null;
|
|
33
|
+
export declare const fromTaskName: (name: string) => FirebaseTaskName | null;
|
|
34
|
+
export declare const toTaskName: (name: FirebaseTaskName) => string;
|
|
32
35
|
//# sourceMappingURL=firebase.tasks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase.tasks.d.ts","sourceRoot":"","sources":["../../src/firebase/firebase.tasks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,
|
|
1
|
+
{"version":3,"file":"firebase.tasks.d.ts","sourceRoot":"","sources":["../../src/firebase/firebase.tasks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AAEjC,eAAO,MAAM,aAAa,QACsF,CAAC;AAEjH,eAAO,MAAM,cAAc,QAC4D,CAAC;AAExF,eAAO,MAAM,aAAa,QAAsC,CAAC;AAEjE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,qBAAqB,GAChC,eAAe,0BAA0B,GAAG,IAAI,KAC/C,qBAuBF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,kBAAkB,GAAG,IAShE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,mBAAmB,GAAG,IAQlE,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,gBAAgB,GAAG,IAO9D,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,gBAAgB,KAAG,MAClB,CAAC"}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { computeScheduleTimeUtc } from "@mxpicture/gcp-functions-common/helper";
|
|
2
|
+
export const taskPathRegex = /^projects\/([a-zA-Z0-9-_]+)\/locations\/([a-zA-Z0-9-_]+)\/queues\/([a-zA-Z0-9-_]+)\/tasks\/([a-zA-Z0-9-_]+)$/;
|
|
3
|
+
export const queuePathRegex = /^projects\/([a-zA-Z0-9-_]+)\/locations\/([a-zA-Z0-9-_]+)\/queues\/([a-zA-Z0-9-_]+)$/;
|
|
4
|
+
export const taskNameRegex = /^([a-zA-Z0-9_]+)-([a-zA-Z0-9_]+)$/;
|
|
2
5
|
/**
|
|
3
6
|
* Compute a Cloud Tasks schedule timestamp from a duration specification or an absolute `Date`.
|
|
4
7
|
*
|
|
@@ -30,8 +33,6 @@ export const taskScheduleTimestamp = (duration_date) => {
|
|
|
30
33
|
}
|
|
31
34
|
return { seconds: Math.floor(targetAt.getTime() / 1000) };
|
|
32
35
|
};
|
|
33
|
-
export const taskPathRegex = /^projects\/([a-zA-Z0-9-_]+)\/locations\/([a-zA-Z0-9-_]+)\/queues\/([a-zA-Z0-9-_]+)\/tasks\/([a-zA-Z0-9-_]+)$/;
|
|
34
|
-
export const queuePathRegex = /^projects\/([a-zA-Z0-9-_]+)\/locations\/([a-zA-Z0-9-_]+)\/queues\/([a-zA-Z0-9-_]+)$/;
|
|
35
36
|
/**
|
|
36
37
|
* Parse a fully-qualified task resource path into its constituent parts.
|
|
37
38
|
*
|
|
@@ -65,4 +66,14 @@ export const fromQueuePath = (path) => {
|
|
|
65
66
|
queueId: found[3],
|
|
66
67
|
};
|
|
67
68
|
};
|
|
69
|
+
export const fromTaskName = (name) => {
|
|
70
|
+
const found = name.match(taskNameRegex);
|
|
71
|
+
if (!found)
|
|
72
|
+
return null;
|
|
73
|
+
return {
|
|
74
|
+
queueId: found[1],
|
|
75
|
+
taskId: found[2],
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
export const toTaskName = (name) => `${name.queueId}-${name.taskId}`;
|
|
68
79
|
//# sourceMappingURL=firebase.tasks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"firebase.tasks.js","sourceRoot":"","sources":["../../src/firebase/firebase.tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;
|
|
1
|
+
{"version":3,"file":"firebase.tasks.js","sourceRoot":"","sources":["../../src/firebase/firebase.tasks.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ import type { IBackendApi } from "../api/IBackendApi.js";
|
|
|
15
15
|
*/
|
|
16
16
|
export declare abstract class IBackendFunction<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, SIDE_EFFECTS extends DocumentData, API extends IBackendApi<STORE_DOC, DTO, SIDE_EFFECTS>> {
|
|
17
17
|
readonly name: string;
|
|
18
|
+
readonly projectId: string;
|
|
18
19
|
readonly region: string;
|
|
19
20
|
readonly serviceAccount: string;
|
|
20
21
|
protected readonly datePaths: string[];
|
|
@@ -28,7 +29,8 @@ export declare abstract class IBackendFunction<STORE_DOC extends DocumentKeyAdmi
|
|
|
28
29
|
* @param serviceAccount - The service account email used to run the function.
|
|
29
30
|
* @param datePaths - JSON paths within the response payload that contain date values to convert to Firestore Timestamps.
|
|
30
31
|
*/
|
|
31
|
-
constructor(name: string, region: string, serviceAccount: string, datePaths: string[]);
|
|
32
|
+
constructor(name: string, projectId: string, region: string, serviceAccount: string, datePaths: string[]);
|
|
33
|
+
get url(): string;
|
|
32
34
|
/**
|
|
33
35
|
* Inject the backend API instance that handles route logic.
|
|
34
36
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IBackendFunction.d.ts","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACd,MAAM,6BAA6B,CAAC;AAQrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,YAAY,SAAS,YAAY,EACjC,GAAG,SAAS,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC;aAcnC,IAAI,EAAE,MAAM;aACZ,MAAM,EAAE,MAAM;aACd,cAAc,EAAE,MAAM;IACtC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"IBackendFunction.d.ts","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EACV,gBAAgB,EAChB,aAAa,EACd,MAAM,6BAA6B,CAAC;AAQrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,YAAY,SAAS,YAAY,EACjC,GAAG,SAAS,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC;aAcnC,IAAI,EAAE,MAAM;aACZ,SAAS,EAAE,MAAM;aACjB,MAAM,EAAE,MAAM;aACd,cAAc,EAAE,MAAM;IACtC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;IAhBxC,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IACrB,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B;;;;;;;OAOG;gBAEe,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EAAE;IAGxC,IAAW,GAAG,IAAI,MAAM,CAEvB;IAED;;;;OAIG;IACI,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAK7B;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,MAAM,EAAE,GAAG,IAAI;IAIpE;;;;;OAKG;IACH,IAAW,GAAG,IAAI,GAAG,CAIpB;IAED;;;;;OAKG;IACH,IAAW,MAAM,IAAI,MAAM,EAAE,CAM5B;IAED;;;;;;;;;;;;;OAaG;IACU,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,YAAY,EAChD,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,EAC7B,eAAe,EAAE,OAAO,GACvB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IA0BjC;;;;;;;;OAQG;IACI,qBAAqB,IAAI,gBAAgB,CAE9C,eAAe,CAAC,GAAG,CAAC,EAEpB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAC/B;IAOD;;;;;;;;OAQG;IACI,kBAAkB,CACvB,IAAI,GAAE,kBAAkB,GAAG,IAAuB,GACjD,aAAa;CAwCjB"}
|
|
@@ -15,6 +15,7 @@ import { checkServiceAuth } from "../firebase/firebase.express.js";
|
|
|
15
15
|
*/
|
|
16
16
|
export class IBackendFunction {
|
|
17
17
|
name;
|
|
18
|
+
projectId;
|
|
18
19
|
region;
|
|
19
20
|
serviceAccount;
|
|
20
21
|
datePaths;
|
|
@@ -28,12 +29,16 @@ export class IBackendFunction {
|
|
|
28
29
|
* @param serviceAccount - The service account email used to run the function.
|
|
29
30
|
* @param datePaths - JSON paths within the response payload that contain date values to convert to Firestore Timestamps.
|
|
30
31
|
*/
|
|
31
|
-
constructor(name, region, serviceAccount, datePaths) {
|
|
32
|
+
constructor(name, projectId, region, serviceAccount, datePaths) {
|
|
32
33
|
this.name = name;
|
|
34
|
+
this.projectId = projectId;
|
|
33
35
|
this.region = region;
|
|
34
36
|
this.serviceAccount = serviceAccount;
|
|
35
37
|
this.datePaths = datePaths;
|
|
36
38
|
}
|
|
39
|
+
get url() {
|
|
40
|
+
return `https://${this.region}-${this.projectId}.cloudfunctions.net/${this.name}`;
|
|
41
|
+
}
|
|
37
42
|
/**
|
|
38
43
|
* Inject the backend API instance that handles route logic.
|
|
39
44
|
*
|
|
@@ -41,6 +46,7 @@ export class IBackendFunction {
|
|
|
41
46
|
*/
|
|
42
47
|
useApi(api) {
|
|
43
48
|
this._api = api;
|
|
49
|
+
this._api.useFunctionUrl(this.url);
|
|
44
50
|
}
|
|
45
51
|
/**
|
|
46
52
|
* Register the allowed route names for this function.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IBackendFunction.js","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAInE;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,gBAAgB;IAkBlB;IACA;IACA;IACG;
|
|
1
|
+
{"version":3,"file":"IBackendFunction.js","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,15 +33,21 @@ export interface FirebaseTaskDurationParams {
|
|
|
33
33
|
targetHoursTo?: number;
|
|
34
34
|
}
|
|
35
35
|
/** Parsed components of a fully-qualified Cloud Tasks task resource path. */
|
|
36
|
-
export interface
|
|
36
|
+
export interface FirebaseTaskFqName extends FirebaseQueueFqName {
|
|
37
37
|
taskId: string;
|
|
38
38
|
}
|
|
39
39
|
/** Parsed components of a fully-qualified Cloud Tasks queue resource path. */
|
|
40
|
-
export interface
|
|
40
|
+
export interface FirebaseQueueFqName {
|
|
41
41
|
projectId: string;
|
|
42
42
|
region: string;
|
|
43
43
|
queueId: string;
|
|
44
44
|
}
|
|
45
|
+
export interface FirebaseTaskName extends FirebaseQueueName {
|
|
46
|
+
taskId: string;
|
|
47
|
+
}
|
|
48
|
+
export interface FirebaseQueueName {
|
|
49
|
+
queueId: string;
|
|
50
|
+
}
|
|
45
51
|
/**
|
|
46
52
|
* Represents a Cloud Task as returned by the Cloud Tasks API.
|
|
47
53
|
*
|
|
@@ -49,7 +55,7 @@ export interface FirebaseQueueNameParts {
|
|
|
49
55
|
* Field shapes are adapted from the `@google-cloud/tasks` protobuf definitions.
|
|
50
56
|
*/
|
|
51
57
|
export interface FirebaseTask {
|
|
52
|
-
nameParts?:
|
|
58
|
+
nameParts?: FirebaseTaskName | null;
|
|
53
59
|
/** Task name */
|
|
54
60
|
name?: string | null;
|
|
55
61
|
/** Task scheduleTime */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.tasks.d.ts","sourceRoot":"","sources":["../../src/types/types.tasks.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,4DAA4D;AAC5D,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,mEAAmE;AACnE,MAAM,WAAW,0BAA0B;IACzC,iFAAiF;IACjF,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,6EAA6E;AAC7E,MAAM,WAAW,0BAA0B;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD,6EAA6E;AAC7E,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"types.tasks.d.ts","sourceRoot":"","sources":["../../src/types/types.tasks.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mxpicture/gcp-functions-backend",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.28",
|
|
4
4
|
"description": "Utils for google cloud functions, publishing both CommonJS and ESM builds",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"author": "MXPicture",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
56
|
"@google-cloud/tasks": "^6.2.1",
|
|
57
|
-
"@mxpicture/gcp-functions-common": "^1.3.
|
|
57
|
+
"@mxpicture/gcp-functions-common": "^1.3.28",
|
|
58
58
|
"express": "^5.2.1",
|
|
59
59
|
"firebase-admin": "^13.7.0",
|
|
60
60
|
"firebase-functions": "^7.0.6",
|