@mxpicture/gcp-functions-backend 1.3.4 → 1.3.17

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.
@@ -24,7 +24,7 @@ export declare class FirebaseTaskHandler {
24
24
  *
25
25
  * @param p - Task parameters including the mandatory `taskId` to reschedule.
26
26
  * @param scheduleTime - The new schedule timestamp.
27
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
27
+ * @returns The created task's resource name.
28
28
  */
29
29
  reschedule(p: FirebaseTaskParams & {
30
30
  taskId: string;
@@ -32,10 +32,9 @@ export declare class FirebaseTaskHandler {
32
32
  /**
33
33
  * Create a new Cloud Task scheduled for the given time.
34
34
  *
35
- * @param p - Task parameters: target URL, optional payload, optional task ID, queue ID, and
36
- * optional `callbackUrl` / `taskRef` for end-of-task notification (see {@link FirebaseTaskCallbackBody}).
35
+ * @param p - Task parameters: target URL, optional payload, optional task ID, queue ID
37
36
  * @param scheduleTime - When the task should be dispatched.
38
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
37
+ * @returns The created task's resource name.
39
38
  */
40
39
  schedule(p: FirebaseTaskParams, scheduleTime: FirebaseTaskTimestamp): Promise<FirebaseTaskScheduleResult>;
41
40
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FirebaseTaskHandler.d.ts","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAOzE;;;;;;GAMG;AACH,qBAAa,mBAAmB;IASX,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe;IAR1D,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACxC,SAAS,CAAC,aAAa,EAAE,wBAAwB,EAAE,CAAM;IAEzD;;;;OAIG;gBACmC,GAAG,EAAE,eAAe;IAInD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB;IAYjE;;;;;;OAMG;IACU,UAAU,CACrB,CAAC,EAAE,kBAAkB,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC1C,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAkBtC;;;;;;;OAOG;IACU,QAAQ,CACnB,CAAC,EAAE,kBAAkB,EACrB,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAuCtC;;;;;OAKG;IACU,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAO/D;;;;;;OAMG;IACU,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAO5E;;;;;;OAMG;IACU,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3E;;;;;;OAMG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IASxD;;;;;OAKG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI;IAW/D;;;;;OAKG;IACI,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAQzC;;;;;OAKG;IACI,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAUjE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY;CAOhE"}
1
+ {"version":3,"file":"FirebaseTaskHandler.d.ts","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EACV,sBAAsB,EACtB,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAOzE;;;;;;GAMG;AACH,qBAAa,mBAAmB;IASX,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe;IAR1D,SAAS,CAAC,WAAW,EAAE,gBAAgB,CAAC;IACxC,SAAS,CAAC,aAAa,EAAE,wBAAwB,EAAE,CAAM;IAEzD;;;;OAIG;gBACmC,GAAG,EAAE,eAAe;IAInD,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,wBAAwB;IAYjE;;;;;;OAMG;IACU,UAAU,CACrB,CAAC,EAAE,kBAAkB,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC1C,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAgBtC;;;;;;OAMG;IACU,QAAQ,CACnB,CAAC,EAAE,kBAAkB,EACrB,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAiCtC;;;;;OAKG;IACU,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAO/D;;;;;;OAMG;IACU,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAO5E;;;;;;OAMG;IACU,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS3E;;;;;;OAMG;IACI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM;IASxD;;;;;OAKG;IACI,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,qBAAqB,GAAG,IAAI;IAW/D;;;;;OAKG;IACI,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAQzC;;;;;OAKG;IACI,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAUjE,SAAS,CAAC,mBAAmB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY;CAOhE"}
@@ -1,5 +1,4 @@
1
1
  import { CloudTasksClient } from "@google-cloud/tasks";
2
- import { randomUUID } from "node:crypto";
3
2
  import { FirebaseTaskQueueHandler } from "./FirebaseTaskQueueHandler.js";
4
3
  const taskPathRegex = /^projects\/([a-zA-Z0-9-_]+)\/locations\/([a-zA-Z0-9-_]+)\/queues\/([a-zA-Z0-9-_]+)\/tasks\/([a-zA-Z0-9-_]+)$/;
5
4
  const queuePathRegex = /^projects\/([a-zA-Z0-9-_]+)\/locations\/([a-zA-Z0-9-_]+)\/queues\/([a-zA-Z0-9-_]+)$/;
@@ -37,7 +36,7 @@ export class FirebaseTaskHandler {
37
36
  *
38
37
  * @param p - Task parameters including the mandatory `taskId` to reschedule.
39
38
  * @param scheduleTime - The new schedule timestamp.
40
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
39
+ * @returns The created task's resource name.
41
40
  */
42
41
  async reschedule(p, scheduleTime) {
43
42
  try {
@@ -50,17 +49,14 @@ export class FirebaseTaskHandler {
50
49
  payload: p.payload,
51
50
  taskId: p.taskId,
52
51
  queueId: p.queueId,
53
- callbackUrl: p.callbackUrl,
54
- taskRef: p.taskRef,
55
52
  }, scheduleTime);
56
53
  }
57
54
  /**
58
55
  * Create a new Cloud Task scheduled for the given time.
59
56
  *
60
- * @param p - Task parameters: target URL, optional payload, optional task ID, queue ID, and
61
- * optional `callbackUrl` / `taskRef` for end-of-task notification (see {@link FirebaseTaskCallbackBody}).
57
+ * @param p - Task parameters: target URL, optional payload, optional task ID, queue ID
62
58
  * @param scheduleTime - When the task should be dispatched.
63
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
59
+ * @returns The created task's resource name.
64
60
  */
65
61
  async schedule(p, scheduleTime) {
66
62
  const queuePath = this.queuePath(p.queueId);
@@ -71,11 +67,6 @@ export class FirebaseTaskHandler {
71
67
  body = Buffer.from(p.payload, "utf8").toString("base64");
72
68
  headers["Content-Type"] = "application/json";
73
69
  }
74
- const taskRef = p.callbackUrl ? (p.taskRef ?? randomUUID()) : null;
75
- if (p.callbackUrl && taskRef) {
76
- headers["X-Task-Callback-Url"] = p.callbackUrl;
77
- headers["X-Task-Ref"] = taskRef;
78
- }
79
70
  const [task] = await this.tasksClient.createTask({
80
71
  parent: queuePath,
81
72
  task: {
@@ -94,7 +85,7 @@ export class FirebaseTaskHandler {
94
85
  },
95
86
  },
96
87
  });
97
- return { name: task.name ?? null, taskRef };
88
+ return { name: task.name ?? null };
98
89
  }
99
90
  /**
100
91
  * List all tasks in a queue.
@@ -1 +1 @@
1
- {"version":3,"file":"FirebaseTaskHandler.js","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FirebaseTaskHandler.js","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskHandler.ts"],"names":[],"mappings":"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"}
@@ -19,7 +19,7 @@ export declare class FirebaseTaskQueueHandler {
19
19
  *
20
20
  * @param p - Task parameters including the mandatory `taskId` to reschedule.
21
21
  * @param scheduleTime - The new schedule timestamp.
22
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
22
+ * @returns The created task's resource name.
23
23
  */
24
24
  reschedule(p: FirebaseTaskQueueParams & {
25
25
  taskId: string;
@@ -27,10 +27,9 @@ export declare class FirebaseTaskQueueHandler {
27
27
  /**
28
28
  * Create a new Cloud Task scheduled for the given time.
29
29
  *
30
- * @param p - Task parameters: target URL, optional payload, optional task ID, and optional
31
- * `callbackUrl` / `taskRef` for end-of-task notification.
30
+ * @param p - Task parameters: target URL, optional payload, optional task ID
32
31
  * @param scheduleTime - When the task should be dispatched.
33
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
32
+ * @returns The created task's resource name.
34
33
  */
35
34
  schedule(p: FirebaseTaskQueueParams, scheduleTime: FirebaseTaskTimestamp): Promise<FirebaseTaskScheduleResult>;
36
35
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FirebaseTaskQueueHandler.d.ts","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskQueueHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;;;;GAMG;AACH,qBAAa,wBAAwB;aAIA,OAAO,EAAE,MAAM;IAHlD,SAAS,CAAC,YAAY,EAAE,mBAAmB,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,aAAa,EAAE,wBAAwB,EAAE,CAAM;gBAEtB,OAAO,EAAE,MAAM;IAElD,IAAW,aAAa,CAAC,OAAO,EAAE,mBAAmB,EAEpD;IAED,IAAW,WAAW,IAAI,mBAAmB,CAI5C;IAED;;;;;;OAMG;IACU,UAAU,CACrB,CAAC,EAAE,uBAAuB,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC/C,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAOtC;;;;;;;OAOG;IACU,QAAQ,CACnB,CAAC,EAAE,uBAAuB,EAC1B,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAOtC;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAIhD;;;;;OAKG;IACU,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI3D;;;;;OAKG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAG3D"}
1
+ {"version":3,"file":"FirebaseTaskQueueHandler.d.ts","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskQueueHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACtB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;;;;GAMG;AACH,qBAAa,wBAAwB;aAIA,OAAO,EAAE,MAAM;IAHlD,SAAS,CAAC,YAAY,EAAE,mBAAmB,GAAG,IAAI,CAAQ;IAC1D,SAAS,CAAC,aAAa,EAAE,wBAAwB,EAAE,CAAM;gBAEtB,OAAO,EAAE,MAAM;IAElD,IAAW,aAAa,CAAC,OAAO,EAAE,mBAAmB,EAEpD;IAED,IAAW,WAAW,IAAI,mBAAmB,CAI5C;IAED;;;;;;OAMG;IACU,UAAU,CACrB,CAAC,EAAE,uBAAuB,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAC/C,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAOtC;;;;;;OAMG;IACU,QAAQ,CACnB,CAAC,EAAE,uBAAuB,EAC1B,YAAY,EAAE,qBAAqB,GAClC,OAAO,CAAC,0BAA0B,CAAC;IAOtC;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;IAIhD;;;;;OAKG;IACU,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI3D;;;;;OAKG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAG3D"}
@@ -25,7 +25,7 @@ export class FirebaseTaskQueueHandler {
25
25
  *
26
26
  * @param p - Task parameters including the mandatory `taskId` to reschedule.
27
27
  * @param scheduleTime - The new schedule timestamp.
28
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
28
+ * @returns The created task's resource name.
29
29
  */
30
30
  async reschedule(p, scheduleTime) {
31
31
  return await this.taskHandler.reschedule({ ...p, queueId: this.queueId }, scheduleTime);
@@ -33,10 +33,9 @@ export class FirebaseTaskQueueHandler {
33
33
  /**
34
34
  * Create a new Cloud Task scheduled for the given time.
35
35
  *
36
- * @param p - Task parameters: target URL, optional payload, optional task ID, and optional
37
- * `callbackUrl` / `taskRef` for end-of-task notification.
36
+ * @param p - Task parameters: target URL, optional payload, optional task ID
38
37
  * @param scheduleTime - When the task should be dispatched.
39
- * @returns The created task's resource name and the resolved callback `taskRef` (when applicable).
38
+ * @returns The created task's resource name.
40
39
  */
41
40
  async schedule(p, scheduleTime) {
42
41
  return await this.taskHandler.schedule({ ...p, queueId: this.queueId }, scheduleTime);
@@ -1 +1 @@
1
- {"version":3,"file":"FirebaseTaskQueueHandler.js","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskQueueHandler.ts"],"names":[],"mappings":"AAQA;;;;;;GAMG;AACH,MAAM,OAAO,wBAAwB;IAIA;IAHzB,YAAY,GAA+B,IAAI,CAAC;IAChD,aAAa,GAA+B,EAAE,CAAC;IAEzD,YAAmC,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;IAEtD,IAAW,aAAa,CAAC,OAA4B;QACnD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;IAC9B,CAAC;IAED,IAAW,WAAW;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,UAAU,CACrB,CAA+C,EAC/C,YAAmC;QAEnC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CACtC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC/B,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,QAAQ,CACnB,CAA0B,EAC1B,YAAmC;QAEnC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CACpC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC/B,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,QAAQ;QACnB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAAC,MAAc;QACjC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CAAC,MAAc;QACrC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;CACF"}
1
+ {"version":3,"file":"FirebaseTaskQueueHandler.js","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskQueueHandler.ts"],"names":[],"mappings":"AAQA;;;;;;GAMG;AACH,MAAM,OAAO,wBAAwB;IAIA;IAHzB,YAAY,GAA+B,IAAI,CAAC;IAChD,aAAa,GAA+B,EAAE,CAAC;IAEzD,YAAmC,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;IAEtD,IAAW,aAAa,CAAC,OAA4B;QACnD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;IAC9B,CAAC;IAED,IAAW,WAAW;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY;YACpB,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,UAAU,CACrB,CAA+C,EAC/C,YAAmC;QAEnC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CACtC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC/B,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,QAAQ,CACnB,CAA0B,EAC1B,YAAmC;QAEnC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CACpC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,EAC/B,YAAY,CACb,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,QAAQ;QACnB,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,OAAO,CAAC,MAAc;QACjC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,WAAW,CAAC,MAAc;QACrC,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;CACF"}
@@ -1,4 +1,3 @@
1
- export * from "./FirebaseTaskCallback.js";
2
1
  export * from "./FirebaseTaskHandler.js";
3
2
  export * from "./FirebaseTaskQueueHandler.js";
4
3
  export * from "./FirebaseTaskSetup.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AACA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AACA,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC"}
@@ -1,5 +1,4 @@
1
1
  // This file is auto-generated by build-cli. Do not edit manually.
2
- export * from "./FirebaseTaskCallback.js";
3
2
  export * from "./FirebaseTaskHandler.js";
4
3
  export * from "./FirebaseTaskQueueHandler.js";
5
4
  export * from "./FirebaseTaskSetup.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,cAAc,2BAA2B,CAAC;AAC1C,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/firebase/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { DocumentData, DocumentKeyAdmin, FunctionRequest, FunctionResponse } from "@mxpicture/gcp-functions-common/types";
1
+ import type { DocumentData, DocumentKeyAdmin, FunctionIngressFollowup, FunctionRequest, FunctionResponse } from "@mxpicture/gcp-functions-common/types";
2
2
  import type { CallableFunction, HttpsFunction } from "firebase-functions/v2/https";
3
3
  import type { ExpressAuthHandler } from "../types/types.express.js";
4
4
  import type { IBackendApi } from "../api/IBackendApi.js";
@@ -20,6 +20,7 @@ export declare abstract class IBackendFunction<STORE_DOC extends DocumentKeyAdmi
20
20
  protected readonly datePaths: string[];
21
21
  protected _api?: API;
22
22
  protected _routes?: string[];
23
+ ingressFollowup: FunctionIngressFollowup | null;
23
24
  /**
24
25
  * Create a new backend function instance.
25
26
  *
@@ -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,EAAC,MAAM,6BAA6B,CAAC;AAYpD,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;IAfxC,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IACrB,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B;;;;;;;OAOG;gBAEe,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EAAE;IAGxC;;;;OAIG;IACI,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAI7B;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,MAAM,EAAE,GAAG,IAAI;IAIpE;;;;;OAKG;IACH,SAAS,CAAC,GAAG,IAAI,GAAG;IAMpB;;;;;OAKG;IACH,SAAS,CAAC,MAAM,IAAI,MAAM,EAAE;IAQ5B;;;;;;;;;;;;;OAaG;IACU,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,YAAY,EAChD,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAsBjC;;;;;;;;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;CAkBjB"}
1
+ {"version":3,"file":"IBackendFunction.d.ts","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,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;AAGzD;;;;;;;;;;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;aAenC,IAAI,EAAE,MAAM;aACZ,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;IACtB,eAAe,EAAE,uBAAuB,GAAG,IAAI,CAAQ;IAE9D;;;;;;;OAOG;gBAEe,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EAAE;IAGxC;;;;OAIG;IACI,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAI7B;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,MAAM,EAAE,GAAG,IAAI;IAIpE;;;;;OAKG;IACH,SAAS,CAAC,GAAG,IAAI,GAAG;IAMpB;;;;;OAKG;IACH,SAAS,CAAC,MAAM,IAAI,MAAM,EAAE;IAQ5B;;;;;;;;;;;;;OAaG;IACU,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,YAAY,EAChD,OAAO,EAAE,eAAe,CAAC,GAAG,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IA4BjC;;;;;;;;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;CAmBjB"}
@@ -2,6 +2,7 @@ import { onCall, HttpsError, onRequest } from "firebase-functions/v2/https";
2
2
  import express from "express";
3
3
  import { toDatesDeep, toTimestampsDeep, } from "@mxpicture/gcp-functions-common/helper";
4
4
  import { checkServiceAuth } from "../firebase/firebase.express.js";
5
+ import { mapHttpToFunctionHeaders } from "@mxpicture/gcp-functions-common/config";
5
6
  /**
6
7
  * Abstract base class for Firebase callable backend functions.
7
8
  *
@@ -20,6 +21,7 @@ export class IBackendFunction {
20
21
  datePaths;
21
22
  _api;
22
23
  _routes;
24
+ ingressFollowup = null;
23
25
  /**
24
26
  * Create a new backend function instance.
25
27
  *
@@ -94,9 +96,14 @@ export class IBackendFunction {
94
96
  const requestData = toDatesDeep(request.data, this.datePaths);
95
97
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
96
98
  const payload = await this.api()[request.route](requestData);
97
- return { data: toTimestampsDeep(payload, this.datePaths) };
99
+ const response = {
100
+ data: toTimestampsDeep(payload, this.datePaths),
101
+ };
102
+ await this.ingressFollowup?.(this, "success", request, response);
103
+ return response;
98
104
  }
99
105
  catch (error) {
106
+ await this.ingressFollowup?.(this, "error", request, null);
100
107
  if (error instanceof HttpsError)
101
108
  throw error;
102
109
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -134,7 +141,8 @@ export class IBackendFunction {
134
141
  if (req.method !== "POST")
135
142
  return next();
136
143
  const route = req.path.slice(1);
137
- const result = await this.ingress({ data: req.body, route });
144
+ const headers = mapHttpToFunctionHeaders(req.headers);
145
+ const result = await this.ingress({ data: req.body, route, headers });
138
146
  res.json(result.data);
139
147
  });
140
148
  return onRequest({ region: this.region, serviceAccount: this.serviceAccount }, app);
@@ -1 +1 @@
1
- {"version":3,"file":"IBackendFunction.js","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IBackendFunction.js","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"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"}
@@ -12,43 +12,16 @@ export interface FirebaseTaskParams {
12
12
  payload?: string;
13
13
  taskId?: string;
14
14
  queueId: string;
15
- /**
16
- * Fully-qualified URL the worker should POST a {@link FirebaseTaskCallbackBody} to
17
- * once the task finishes (success or failure). When set, the scheduled task carries
18
- * the callback URL on the `X-Task-Callback-Url` request header.
19
- */
20
- callbackUrl?: string;
21
- /**
22
- * Correlation ID echoed back on the callback. Auto-generated when omitted and
23
- * `callbackUrl` is set. Travels on the `X-Task-Ref` request header.
24
- */
25
- taskRef?: string;
26
15
  }
27
16
  export interface FirebaseTaskQueueParams {
28
17
  targetUrl: string;
29
18
  payload?: string;
30
19
  taskId?: string;
31
- callbackUrl?: string;
32
- taskRef?: string;
33
20
  }
34
21
  /** Result of scheduling a task with optional callback metadata. */
35
22
  export interface FirebaseTaskScheduleResult {
36
23
  /** Full Cloud Tasks resource name, or `null` if the created task has no name. */
37
24
  name: string | null;
38
- /** Resolved callback correlation ID, or `null` if no `callbackUrl` was provided. */
39
- taskRef: string | null;
40
- }
41
- /** Status reported by the worker on task completion. */
42
- export type FirebaseTaskCallbackStatus = "succeeded" | "failed";
43
- /** Body posted by the worker to the caller-supplied `callbackUrl`. */
44
- export interface FirebaseTaskCallbackBody {
45
- taskRef: string;
46
- status: FirebaseTaskCallbackStatus;
47
- result?: unknown;
48
- error?: {
49
- message: string;
50
- stack?: string;
51
- };
52
25
  }
53
26
  /** Relative time offset parameters used by {@link taskScheduleTimestamp}. */
54
27
  export interface FirebaseTaskDurationParams {
@@ -1 +1 @@
1
- {"version":3,"file":"types.tasks.d.ts","sourceRoot":"","sources":["../../src/types/types.tasks.ts"],"names":[],"mappings":"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"}
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,qBAAsB,SAAQ,sBAAsB;IACnE,MAAM,EAAE,MAAM,CAAC;CAChB;AACD,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACzC,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,wBAAwB;IACxB,YAAY,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC5C,sBAAsB;IACtB,UAAU,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC1C,4BAA4B;IAC5B,gBAAgB,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC/C,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wBAAwB;IACxB,YAAY,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC1C,uBAAuB;IACvB,WAAW,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;CAC1C;AAED,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAClC,YAAY,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC5C,YAAY,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC5C,YAAY,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC5C,cAAc,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;CAC5C;AAED,+EAA+E;AAC/E,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,gFAAgF;AAChF,MAAM,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAEzD,kEAAkE;AAClE,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mxpicture/gcp-functions-backend",
3
- "version": "1.3.4",
3
+ "version": "1.3.17",
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.4",
57
+ "@mxpicture/gcp-functions-common": "^1.3.17",
58
58
  "express": "^5.2.1",
59
59
  "firebase-admin": "^13.7.0",
60
60
  "firebase-functions": "^7.0.6",
@@ -1,29 +0,0 @@
1
- import type { Request } from "express";
2
- /**
3
- * Run a Cloud Tasks worker function and POST a {@link FirebaseTaskCallbackBody}
4
- * to the caller-supplied callback URL when it finishes.
5
- *
6
- * @remarks
7
- * The callback URL and correlation ID are read from the `X-Task-Callback-Url`
8
- * and `X-Task-Ref` request headers (set by {@link FirebaseTaskHandler.schedule}
9
- * when `callbackUrl` is provided).
10
- *
11
- * Behavior:
12
- * - On success: POSTs `{ taskRef, status: "succeeded", result }`, then returns the result.
13
- * - On failure: POSTs `{ taskRef, status: "failed", error }`, then returns `undefined` —
14
- * the error is **swallowed** so the caller can ack Cloud Tasks with 2xx and avoid retries.
15
- * The callback delivery is the durable failure signal.
16
- * - If callback headers are absent: runs `fn` as a passthrough and rethrows on error
17
- * (backward compatible with workers that don't opt in to callbacks).
18
- * - If the callback POST itself fails: the error is logged but otherwise ignored;
19
- * the worker still returns normally so Cloud Tasks does not retry.
20
- *
21
- * The callback POST uses an OIDC bearer token whose audience is the callback URL,
22
- * matching the auth shape that {@link checkServiceAuth} validates.
23
- *
24
- * @param req - The Express request the Cloud Task dispatched.
25
- * @param fn - The worker logic to run.
26
- * @returns The worker's result, or `undefined` if the worker threw (see above).
27
- */
28
- export declare function runTaskWithCallback<T>(req: Request, fn: () => Promise<T>): Promise<T | undefined>;
29
- //# sourceMappingURL=FirebaseTaskCallback.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FirebaseTaskCallback.d.ts","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskCallback.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMvC;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,GAAG,EAAE,OAAO,EACZ,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAwCxB"}
@@ -1,69 +0,0 @@
1
- import { GoogleAuth } from "google-auth-library";
2
- const auth = new GoogleAuth();
3
- /**
4
- * Run a Cloud Tasks worker function and POST a {@link FirebaseTaskCallbackBody}
5
- * to the caller-supplied callback URL when it finishes.
6
- *
7
- * @remarks
8
- * The callback URL and correlation ID are read from the `X-Task-Callback-Url`
9
- * and `X-Task-Ref` request headers (set by {@link FirebaseTaskHandler.schedule}
10
- * when `callbackUrl` is provided).
11
- *
12
- * Behavior:
13
- * - On success: POSTs `{ taskRef, status: "succeeded", result }`, then returns the result.
14
- * - On failure: POSTs `{ taskRef, status: "failed", error }`, then returns `undefined` —
15
- * the error is **swallowed** so the caller can ack Cloud Tasks with 2xx and avoid retries.
16
- * The callback delivery is the durable failure signal.
17
- * - If callback headers are absent: runs `fn` as a passthrough and rethrows on error
18
- * (backward compatible with workers that don't opt in to callbacks).
19
- * - If the callback POST itself fails: the error is logged but otherwise ignored;
20
- * the worker still returns normally so Cloud Tasks does not retry.
21
- *
22
- * The callback POST uses an OIDC bearer token whose audience is the callback URL,
23
- * matching the auth shape that {@link checkServiceAuth} validates.
24
- *
25
- * @param req - The Express request the Cloud Task dispatched.
26
- * @param fn - The worker logic to run.
27
- * @returns The worker's result, or `undefined` if the worker threw (see above).
28
- */
29
- export async function runTaskWithCallback(req, fn) {
30
- const callbackUrl = req.header("x-task-callback-url");
31
- const taskRef = req.header("x-task-ref");
32
- if (!callbackUrl || !taskRef)
33
- return await fn();
34
- let result;
35
- let body;
36
- try {
37
- result = await fn();
38
- body = { taskRef, status: "succeeded", result };
39
- }
40
- catch (err) {
41
- const e = err;
42
- body = {
43
- taskRef,
44
- status: "failed",
45
- error: {
46
- message: e?.message ?? String(err),
47
- stack: e?.stack,
48
- },
49
- };
50
- }
51
- try {
52
- const client = await auth.getIdTokenClient(callbackUrl);
53
- await client.request({
54
- url: callbackUrl,
55
- method: "POST",
56
- headers: { "Content-Type": "application/json" },
57
- data: body,
58
- });
59
- }
60
- catch (err) {
61
- console.error("[runTaskWithCallback] callback POST failed", {
62
- callbackUrl,
63
- taskRef,
64
- err,
65
- });
66
- }
67
- return result;
68
- }
69
- //# sourceMappingURL=FirebaseTaskCallback.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FirebaseTaskCallback.js","sourceRoot":"","sources":["../../src/firebase/FirebaseTaskCallback.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD,MAAM,IAAI,GAAG,IAAI,UAAU,EAAE,CAAC;AAE9B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAY,EACZ,EAAoB;IAEpB,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAEzC,IAAI,CAAC,WAAW,IAAI,CAAC,OAAO;QAAE,OAAO,MAAM,EAAE,EAAE,CAAC;IAEhD,IAAI,MAAqB,CAAC;IAC1B,IAAI,IAA8B,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;QACpB,IAAI,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,GAAwB,CAAC;QACnC,IAAI,GAAG;YACL,OAAO;YACP,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE;gBACL,OAAO,EAAE,CAAC,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC;gBAClC,KAAK,EAAE,CAAC,EAAE,KAAK;aAChB;SACF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACxD,MAAM,MAAM,CAAC,OAAO,CAAC;YACnB,GAAG,EAAE,WAAW;YAChB,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI;SACX,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE;YAC1D,WAAW;YACX,OAAO;YACP,GAAG;SACJ,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}