@mxpicture/gcp-functions-backend 1.3.50 → 1.3.51
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 → BackendBaseApi.d.ts} +5 -22
- package/dist/api/BackendBaseApi.d.ts.map +1 -0
- package/dist/api/{IBackendApi.js → BackendBaseApi.js} +4 -26
- package/dist/api/BackendBaseApi.js.map +1 -0
- package/dist/api/{BackendCustomApi.d.ts → BackendCrudApi.d.ts} +4 -4
- package/dist/api/BackendCrudApi.d.ts.map +1 -0
- package/dist/api/{BackendCustomApi.js → BackendCrudApi.js} +4 -4
- package/dist/api/BackendCrudApi.js.map +1 -0
- package/dist/api/{BackendApi.d.ts → BackendDefaultApi.d.ts} +4 -4
- package/dist/api/BackendDefaultApi.d.ts.map +1 -0
- package/dist/api/{BackendApi.js → BackendDefaultApi.js} +4 -4
- package/dist/api/BackendDefaultApi.js.map +1 -0
- package/dist/api/BackendStoreApi.d.ts +34 -0
- package/dist/api/BackendStoreApi.d.ts.map +1 -0
- package/dist/api/BackendStoreApi.js +37 -0
- package/dist/api/BackendStoreApi.js.map +1 -0
- package/dist/api/index.d.ts +4 -3
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +4 -3
- package/dist/api/index.js.map +1 -1
- package/dist/function/IBackendFunction.d.ts +3 -3
- package/dist/function/IBackendFunction.d.ts.map +1 -1
- package/dist/function/IBackendFunction.js +1 -1
- package/dist/validation/Validation.d.ts +2 -2
- package/dist/validation/Validation.d.ts.map +1 -1
- package/package.json +2 -2
- package/dist/api/BackendApi.d.ts.map +0 -1
- package/dist/api/BackendApi.js.map +0 -1
- package/dist/api/BackendCustomApi.d.ts.map +0 -1
- package/dist/api/BackendCustomApi.js.map +0 -1
- package/dist/api/IBackendApi.d.ts.map +0 -1
- package/dist/api/IBackendApi.js.map +0 -1
|
@@ -1,25 +1,21 @@
|
|
|
1
|
-
import type { DecoPropertyVirtual, DocumentData
|
|
2
|
-
import type { Store } from "../store/Store.js";
|
|
1
|
+
import type { DecoPropertyVirtual, DocumentData } from "@mxpicture/gcp-functions-common/types";
|
|
3
2
|
import type { Validation } from "../validation/Validation.js";
|
|
4
3
|
/**
|
|
5
4
|
* Abstract base class for backend API implementations.
|
|
6
5
|
*
|
|
7
6
|
* @remarks
|
|
8
|
-
* Provides dependency-injection points for a {@link
|
|
7
|
+
* Provides dependency-injection points for a {@link Validation} instance.
|
|
9
8
|
* Subclasses implement the concrete API methods while relying on the injected store and
|
|
10
|
-
* validation via {@link
|
|
9
|
+
* validation via {@link BackendBaseApi.useStore} and {@link BackendBaseApi.useValidation}.
|
|
11
10
|
*
|
|
12
11
|
* @typeParam DTO - The document data transfer object type.
|
|
13
|
-
* @typeParam STORE_DOC - The store document type.
|
|
14
|
-
* @typeParam STORE - The store implementation used for persistence.
|
|
15
12
|
* @typeParam VAL - The validation implementation used for input validation.
|
|
16
13
|
*/
|
|
17
|
-
export declare abstract class
|
|
14
|
+
export declare abstract class BackendBaseApi<DTO extends DocumentData, SIDE_EFFECTS extends DocumentData = DocumentData, VAL extends Validation<DTO> = Validation<DTO>> {
|
|
18
15
|
readonly name: string;
|
|
19
16
|
protected readonly datePaths: string[];
|
|
20
17
|
protected readonly virtuals: DecoPropertyVirtual[];
|
|
21
18
|
protected readonly sideEffects: string[];
|
|
22
|
-
protected _store?: STORE;
|
|
23
19
|
protected _validation?: VAL;
|
|
24
20
|
protected _functionUrl?: string;
|
|
25
21
|
protected _routes?: string[];
|
|
@@ -32,12 +28,6 @@ export declare abstract class IBackendApi<STORE_DOC extends DocumentKeyAdmin, DT
|
|
|
32
28
|
constructor(name: string, datePaths: string[], virtuals: DecoPropertyVirtual[], sideEffects: string[]);
|
|
33
29
|
useFunctionUrl(url: string): void;
|
|
34
30
|
get functionUrl(): string;
|
|
35
|
-
/**
|
|
36
|
-
* Inject the store instance used for data persistence.
|
|
37
|
-
*
|
|
38
|
-
* @param store - The store to use for persistence operations.
|
|
39
|
-
*/
|
|
40
|
-
useStore(store: STORE): void;
|
|
41
31
|
/**
|
|
42
32
|
* Inject the validation instance used for input validation.
|
|
43
33
|
*
|
|
@@ -59,13 +49,6 @@ export declare abstract class IBackendApi<STORE_DOC extends DocumentKeyAdmin, DT
|
|
|
59
49
|
* @throws {@link Error} if no routes have been provided via {@link useRoutes}.
|
|
60
50
|
*/
|
|
61
51
|
get routes(): string[];
|
|
62
|
-
/**
|
|
63
|
-
* Retrieve the injected store instance.
|
|
64
|
-
*
|
|
65
|
-
* @returns The store instance.
|
|
66
|
-
* @throws {@link Error} if no store has been provided via {@link useStore}.
|
|
67
|
-
*/
|
|
68
|
-
protected store(): STORE;
|
|
69
52
|
/**
|
|
70
53
|
* Retrieve the injected validation instance.
|
|
71
54
|
*
|
|
@@ -88,4 +71,4 @@ export declare abstract class IBackendApi<STORE_DOC extends DocumentKeyAdmin, DT
|
|
|
88
71
|
*/
|
|
89
72
|
ingress<REQ, RES extends DocumentData>(route: string, data: REQ): Promise<RES>;
|
|
90
73
|
}
|
|
91
|
-
//# sourceMappingURL=
|
|
74
|
+
//# sourceMappingURL=BackendBaseApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendBaseApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendBaseApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAM9D;;;;;;;;;;GAUG;AACH,8BAAsB,cAAc,CAClC,GAAG,SAAS,YAAY,EAExB,YAAY,SAAS,YAAY,GAAG,YAAY,EAChD,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,WAAW,CAAC,EAAE,GAAG,CAAC;IAC5B,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B;;;;;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,IAAW,WAAW,IAAI,MAAM,CAG/B;IAED;;;;OAIG;IACI,aAAa,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI;IAI3C;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,MAAM,EAAE,GAAG,IAAI;IAIpE;;;;;OAKG;IACH,IAAW,MAAM,IAAI,MAAM,EAAE,CAM5B;IAED;;;;;OAKG;IACH,SAAS,CAAC,UAAU,IAAI,GAAG;IAQ3B;;;;;;;;;;;;OAYG;IACU,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,YAAY,EAChD,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,GAAG,GACR,OAAO,CAAC,GAAG,CAAC;CAWhB"}
|
|
@@ -3,21 +3,18 @@ import { toDatesDeep, toTimestampsDeep, } from "@mxpicture/gcp-functions-common/
|
|
|
3
3
|
* Abstract base class for backend API implementations.
|
|
4
4
|
*
|
|
5
5
|
* @remarks
|
|
6
|
-
* Provides dependency-injection points for a {@link
|
|
6
|
+
* Provides dependency-injection points for a {@link Validation} instance.
|
|
7
7
|
* Subclasses implement the concrete API methods while relying on the injected store and
|
|
8
|
-
* validation via {@link
|
|
8
|
+
* validation via {@link BackendBaseApi.useStore} and {@link BackendBaseApi.useValidation}.
|
|
9
9
|
*
|
|
10
10
|
* @typeParam DTO - The document data transfer object type.
|
|
11
|
-
* @typeParam STORE_DOC - The store document type.
|
|
12
|
-
* @typeParam STORE - The store implementation used for persistence.
|
|
13
11
|
* @typeParam VAL - The validation implementation used for input validation.
|
|
14
12
|
*/
|
|
15
|
-
export class
|
|
13
|
+
export class BackendBaseApi {
|
|
16
14
|
name;
|
|
17
15
|
datePaths;
|
|
18
16
|
virtuals;
|
|
19
17
|
sideEffects;
|
|
20
|
-
_store;
|
|
21
18
|
_validation;
|
|
22
19
|
_functionUrl;
|
|
23
20
|
_routes;
|
|
@@ -41,14 +38,6 @@ export class IBackendApi {
|
|
|
41
38
|
throw new Error(`No Url provided. ${this.name}`);
|
|
42
39
|
return this._functionUrl;
|
|
43
40
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Inject the store instance used for data persistence.
|
|
46
|
-
*
|
|
47
|
-
* @param store - The store to use for persistence operations.
|
|
48
|
-
*/
|
|
49
|
-
useStore(store) {
|
|
50
|
-
this._store = store;
|
|
51
|
-
}
|
|
52
41
|
/**
|
|
53
42
|
* Inject the validation instance used for input validation.
|
|
54
43
|
*
|
|
@@ -76,17 +65,6 @@ export class IBackendApi {
|
|
|
76
65
|
throw new Error(`${this.name}: routes not provided. Use "useRoutes" method`);
|
|
77
66
|
return this._routes;
|
|
78
67
|
}
|
|
79
|
-
/**
|
|
80
|
-
* Retrieve the injected store instance.
|
|
81
|
-
*
|
|
82
|
-
* @returns The store instance.
|
|
83
|
-
* @throws {@link Error} if no store has been provided via {@link useStore}.
|
|
84
|
-
*/
|
|
85
|
-
store() {
|
|
86
|
-
if (!this._store)
|
|
87
|
-
throw new Error(`${this.name}: store not provided. Use "useStore" method`);
|
|
88
|
-
return this._store;
|
|
89
|
-
}
|
|
90
68
|
/**
|
|
91
69
|
* Retrieve the injected validation instance.
|
|
92
70
|
*
|
|
@@ -121,4 +99,4 @@ export class IBackendApi {
|
|
|
121
99
|
return toTimestampsDeep(payload, this.datePaths);
|
|
122
100
|
}
|
|
123
101
|
}
|
|
124
|
-
//# sourceMappingURL=
|
|
102
|
+
//# sourceMappingURL=BackendBaseApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendBaseApi.js","sourceRoot":"","sources":["../../src/api/BackendBaseApi.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,cAAc;IAiBhB;IACG;IACA;IACA;IAdX,WAAW,CAAO;IAClB,YAAY,CAAU;IACtB,OAAO,CAAY;IAE7B;;;;;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,IAAW,WAAW;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,UAAe;QAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACI,SAAS,CAAC,MAA4C;QAC3D,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxE,CAAC;IAED;;;;;OAKG;IACH,IAAW,MAAM;QACf,IAAI,CAAC,IAAI,CAAC,OAAO;YACf,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,IAAI,+CAA+C,CAC5D,CAAC;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,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;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,OAAO,CAClB,KAAa,EACb,IAAS;QAET,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,gBAAgB,CAAC,CAAC;QAElD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,8DAA8D;QAC9D,MAAM,OAAO,GAAG,MAAO,IAAY,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;CACF"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import type { ApiFromRoutes, CrudRoutes, DocumentKey, ApiFilter, DocumentKeyAdmin, CreateInput, UpdateInput, DocumentData } from "@mxpicture/gcp-functions-common/types";
|
|
2
2
|
import type { Store } from "../store/Store.js";
|
|
3
3
|
import type { Validation } from "../validation/Validation.js";
|
|
4
|
-
import {
|
|
4
|
+
import { BackendStoreApi } from "./BackendStoreApi.js";
|
|
5
5
|
/**
|
|
6
6
|
* Backend API providing standard CRUD operations for a document type.
|
|
7
7
|
*
|
|
8
8
|
* @remarks
|
|
9
|
-
* Extends {@link
|
|
9
|
+
* Extends {@link BackendStoreApi} and implements all routes defined by {@link CrudRoutes}.
|
|
10
10
|
* Delegates persistence to a {@link Store} and input validation to a {@link Validation} instance.
|
|
11
11
|
*
|
|
12
12
|
* @typeParam DTO - The document data transfer object type.
|
|
13
13
|
* @typeParam STORE - The store implementation used for persistence.
|
|
14
14
|
* @typeParam VAL - The validation implementation used for input validation.
|
|
15
15
|
*/
|
|
16
|
-
export declare abstract class
|
|
16
|
+
export declare abstract class BackendCrudApi<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, SIDE_EFFECTS extends DocumentData = DocumentData, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> extends BackendStoreApi<STORE_DOC, DTO, SIDE_EFFECTS, STORE, VAL> implements ApiFromRoutes<CrudRoutes<DTO>> {
|
|
17
17
|
protected abstract loadVirtualFields(doc: STORE_DOC): Promise<DTO>;
|
|
18
18
|
protected processVirtualFields(doc: DTO): Promise<STORE_DOC>;
|
|
19
19
|
protected abstract processSideEffects(current: DTO, prev: DTO | null, sideEffects: Partial<SIDE_EFFECTS>): Promise<DTO>;
|
|
@@ -81,4 +81,4 @@ export declare abstract class BackendCustomApi<STORE_DOC extends DocumentKeyAdmi
|
|
|
81
81
|
protected fromDtoCreate(dto: CreateInput<DTO>): Promise<STORE_DOC>;
|
|
82
82
|
protected createId(id?: string): string;
|
|
83
83
|
}
|
|
84
|
-
//# sourceMappingURL=
|
|
84
|
+
//# sourceMappingURL=BackendCrudApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendCrudApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendCrudApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,YAAY,EACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD;;;;;;;;;;GAUG;AACH,8BAAsB,cAAc,CAClC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,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,CAE7C,SAAQ,eAAe,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,CAChE,YAAW,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAEzC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;cAGlD,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAQlE,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CACnC,OAAO,EAAE,GAAG,EACZ,IAAI,EAAE,GAAG,GAAG,IAAI,EAChB,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,GACjC,OAAO,CAAC,GAAG,CAAC;IAEf;;;;;OAKG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAExE;;;;;OAKG;aACa,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAEvD;;;;;OAKG;aACa,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjE;;;;;OAKG;aACa,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAE7E;;;;;OAKG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAE1E;;;;;;OAMG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAE/D;;;;;;OAMG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cAE/C,KAAK,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;cAOnC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;cAIzC,OAAO,CACrB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,GAAG,GAAG,IAAI,EACnB,YAAY,GAAE,MAAM,EAAO,GAC1B,OAAO,CAAC,SAAS,CAAC;cA+BL,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;cAYxD,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAKxE,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;CAOxC"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import * as uuid from "short-uuid";
|
|
2
|
-
import {
|
|
2
|
+
import { BackendStoreApi } from "./BackendStoreApi.js";
|
|
3
3
|
import { toDatesDeep, toTimestampsDeep, } from "@mxpicture/gcp-functions-common/helper";
|
|
4
4
|
/**
|
|
5
5
|
* Backend API providing standard CRUD operations for a document type.
|
|
6
6
|
*
|
|
7
7
|
* @remarks
|
|
8
|
-
* Extends {@link
|
|
8
|
+
* Extends {@link BackendStoreApi} and implements all routes defined by {@link CrudRoutes}.
|
|
9
9
|
* Delegates persistence to a {@link Store} and input validation to a {@link Validation} instance.
|
|
10
10
|
*
|
|
11
11
|
* @typeParam DTO - The document data transfer object type.
|
|
12
12
|
* @typeParam STORE - The store implementation used for persistence.
|
|
13
13
|
* @typeParam VAL - The validation implementation used for input validation.
|
|
14
14
|
*/
|
|
15
|
-
export class
|
|
15
|
+
export class BackendCrudApi extends BackendStoreApi {
|
|
16
16
|
// to be redefined
|
|
17
17
|
async processVirtualFields(doc) {
|
|
18
18
|
// default strip object
|
|
@@ -80,4 +80,4 @@ export class BackendCustomApi extends IBackendApi {
|
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
|
-
//# sourceMappingURL=
|
|
83
|
+
//# sourceMappingURL=BackendCrudApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendCrudApi.js","sourceRoot":"","sources":["../../src/api/BackendCrudApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import type { DocumentKey, ApiFilter, DocumentKeyAdmin, CreateInput, UpdateInput, DocumentData } from "@mxpicture/gcp-functions-common/types";
|
|
2
2
|
import type { Store } from "../store/Store.js";
|
|
3
3
|
import type { Validation } from "../validation/Validation.js";
|
|
4
|
-
import {
|
|
4
|
+
import { BackendCrudApi } from "./BackendCrudApi.js";
|
|
5
5
|
/**
|
|
6
6
|
* Backend API providing standard CRUD operations for a document type.
|
|
7
7
|
*
|
|
8
8
|
* @remarks
|
|
9
|
-
* Extends {@link
|
|
9
|
+
* Extends {@link BackendStoreApi} and implements all routes defined by {@link CrudRoutes}.
|
|
10
10
|
* Delegates persistence to a {@link Store} and input validation to a {@link Validation} instance.
|
|
11
11
|
*
|
|
12
12
|
* @typeParam DTO - The document data transfer object type.
|
|
13
13
|
* @typeParam STORE - The store implementation used for persistence.
|
|
14
14
|
* @typeParam VAL - The validation implementation used for input validation.
|
|
15
15
|
*/
|
|
16
|
-
export declare abstract class
|
|
16
|
+
export declare abstract class BackendDefaultApi<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, SIDE_EFFECTS extends DocumentData = DocumentData, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> extends BackendCrudApi<STORE_DOC, DTO, SIDE_EFFECTS, STORE, VAL> {
|
|
17
17
|
protected processVirtualFields(doc: DTO): Promise<STORE_DOC>;
|
|
18
18
|
/**
|
|
19
19
|
* Delete a document by its key.
|
|
@@ -82,4 +82,4 @@ export declare abstract class BackendApi<STORE_DOC extends DocumentKeyAdmin, DTO
|
|
|
82
82
|
changedPaths: string[];
|
|
83
83
|
}>;
|
|
84
84
|
}
|
|
85
|
-
//# sourceMappingURL=
|
|
85
|
+
//# sourceMappingURL=BackendDefaultApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendDefaultApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendDefaultApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,YAAY,EACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;;GAUG;AACH,8BAAsB,iBAAiB,CACrC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,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,CAC7C,SAAQ,cAAc,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC;cAEvC,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAQ3E;;;;;OAKG;IACmB,MAAM,CAC1B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAK7B;;;;;OAKG;IACmB,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7D;;;;;OAKG;IACmB,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAIvE;;;;;OAKG;IACmB,KAAK,CACzB,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GACzB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAI7B;;;;;OAKG;IACmB,MAAM,CAC1B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAI/B;;;;;;OAMG;IACmB,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAOrE;;;;;;OAMG;IACmB,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cAMrD,aAAa,CAC3B,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GACxB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;KAAE,CAAC;cAOrC,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,GACxB,OAAO,CAAC,MAAM,EAAE,CAAC;cAIJ,QAAQ,CACtB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,EACzB,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC;QAAE,OAAO,EAAE,GAAG,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAQrD"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BackendCrudApi } from "./BackendCrudApi.js";
|
|
2
2
|
/**
|
|
3
3
|
* Backend API providing standard CRUD operations for a document type.
|
|
4
4
|
*
|
|
5
5
|
* @remarks
|
|
6
|
-
* Extends {@link
|
|
6
|
+
* Extends {@link BackendStoreApi} and implements all routes defined by {@link CrudRoutes}.
|
|
7
7
|
* Delegates persistence to a {@link Store} and input validation to a {@link Validation} instance.
|
|
8
8
|
*
|
|
9
9
|
* @typeParam DTO - The document data transfer object type.
|
|
10
10
|
* @typeParam STORE - The store implementation used for persistence.
|
|
11
11
|
* @typeParam VAL - The validation implementation used for input validation.
|
|
12
12
|
*/
|
|
13
|
-
export class
|
|
13
|
+
export class BackendDefaultApi extends BackendCrudApi {
|
|
14
14
|
// to be redefined
|
|
15
15
|
async processVirtualFields(doc) {
|
|
16
16
|
// default strip object
|
|
@@ -105,4 +105,4 @@ export class BackendApi extends BackendCustomApi {
|
|
|
105
105
|
return { updated: await this.toDto(updated), changedPaths };
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
|
-
//# sourceMappingURL=
|
|
108
|
+
//# sourceMappingURL=BackendDefaultApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendDefaultApi.js","sourceRoot":"","sources":["../../src/api/BackendDefaultApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { DocumentData, DocumentKeyAdmin } from "@mxpicture/gcp-functions-common/types";
|
|
2
|
+
import type { Store } from "../store/Store.js";
|
|
3
|
+
import type { Validation } from "../validation/Validation.js";
|
|
4
|
+
import { BackendBaseApi } from "./BackendBaseApi.js";
|
|
5
|
+
/**
|
|
6
|
+
* Abstract base class for backend API implementations.
|
|
7
|
+
*
|
|
8
|
+
* @remarks
|
|
9
|
+
* Provides dependency-injection points for a {@link Store} and {@link Validation} instance.
|
|
10
|
+
* Subclasses implement the concrete API methods while relying on the injected store and
|
|
11
|
+
* validation via {@link BackendStoreApi.useStore} and {@link BackendStoreApi.useValidation}.
|
|
12
|
+
*
|
|
13
|
+
* @typeParam DTO - The document data transfer object type.
|
|
14
|
+
* @typeParam STORE_DOC - The store document type.
|
|
15
|
+
* @typeParam STORE - The store implementation used for persistence.
|
|
16
|
+
* @typeParam VAL - The validation implementation used for input validation.
|
|
17
|
+
*/
|
|
18
|
+
export declare abstract class BackendStoreApi<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, SIDE_EFFECTS extends DocumentData = DocumentData, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> extends BackendBaseApi<DTO, SIDE_EFFECTS, VAL> {
|
|
19
|
+
protected _store?: STORE;
|
|
20
|
+
/**
|
|
21
|
+
* Inject the store instance used for data persistence.
|
|
22
|
+
*
|
|
23
|
+
* @param store - The store to use for persistence operations.
|
|
24
|
+
*/
|
|
25
|
+
useStore(store: STORE): void;
|
|
26
|
+
/**
|
|
27
|
+
* Retrieve the injected store instance.
|
|
28
|
+
*
|
|
29
|
+
* @returns The store instance.
|
|
30
|
+
* @throws {@link Error} if no store has been provided via {@link useStore}.
|
|
31
|
+
*/
|
|
32
|
+
protected store(): STORE;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=BackendStoreApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendStoreApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendStoreApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,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;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,8BAAsB,eAAe,CACnC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,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,CAC7C,SAAQ,cAAc,CAAC,GAAG,EAAE,YAAY,EAAE,GAAG,CAAC;IAC9C,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAEzB;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAInC;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,KAAK;CAOzB"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { BackendBaseApi } from "./BackendBaseApi.js";
|
|
2
|
+
/**
|
|
3
|
+
* Abstract base class for backend API implementations.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Provides dependency-injection points for a {@link Store} and {@link Validation} instance.
|
|
7
|
+
* Subclasses implement the concrete API methods while relying on the injected store and
|
|
8
|
+
* validation via {@link BackendStoreApi.useStore} and {@link BackendStoreApi.useValidation}.
|
|
9
|
+
*
|
|
10
|
+
* @typeParam DTO - The document data transfer object type.
|
|
11
|
+
* @typeParam STORE_DOC - The store document type.
|
|
12
|
+
* @typeParam STORE - The store implementation used for persistence.
|
|
13
|
+
* @typeParam VAL - The validation implementation used for input validation.
|
|
14
|
+
*/
|
|
15
|
+
export class BackendStoreApi extends BackendBaseApi {
|
|
16
|
+
_store;
|
|
17
|
+
/**
|
|
18
|
+
* Inject the store instance used for data persistence.
|
|
19
|
+
*
|
|
20
|
+
* @param store - The store to use for persistence operations.
|
|
21
|
+
*/
|
|
22
|
+
useStore(store) {
|
|
23
|
+
this._store = store;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Retrieve the injected store instance.
|
|
27
|
+
*
|
|
28
|
+
* @returns The store instance.
|
|
29
|
+
* @throws {@link Error} if no store has been provided via {@link useStore}.
|
|
30
|
+
*/
|
|
31
|
+
store() {
|
|
32
|
+
if (!this._store)
|
|
33
|
+
throw new Error(`${this.name}: store not provided. Use "useStore" method`);
|
|
34
|
+
return this._store;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=BackendStoreApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BackendStoreApi.js","sourceRoot":"","sources":["../../src/api/BackendStoreApi.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAgB,eAMpB,SAAQ,cAAsC;IACpC,MAAM,CAAS;IAEzB;;;;OAIG;IACI,QAAQ,CAAC,KAAY;QAC1B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,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;CACF"}
|
package/dist/api/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export * from "./
|
|
2
|
-
export * from "./
|
|
3
|
-
export * from "./
|
|
1
|
+
export * from "./BackendBaseApi.js";
|
|
2
|
+
export * from "./BackendCrudApi.js";
|
|
3
|
+
export * from "./BackendDefaultApi.js";
|
|
4
|
+
export * from "./BackendStoreApi.js";
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/api/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AACA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AACA,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
|
package/dist/api/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// This file is auto-generated by build-cli. Do not edit manually.
|
|
2
|
-
export * from "./
|
|
3
|
-
export * from "./
|
|
4
|
-
export * from "./
|
|
2
|
+
export * from "./BackendBaseApi.js";
|
|
3
|
+
export * from "./BackendCrudApi.js";
|
|
4
|
+
export * from "./BackendDefaultApi.js";
|
|
5
|
+
export * from "./BackendStoreApi.js";
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
package/dist/api/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import type { DocumentData, DocumentKeyAdmin, 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
|
-
import type {
|
|
4
|
+
import type { BackendBaseApi } from "../api/BackendBaseApi.js";
|
|
5
5
|
/**
|
|
6
6
|
* Abstract base class for Firebase callable backend functions.
|
|
7
7
|
*
|
|
8
8
|
* @remarks
|
|
9
|
-
* Encapsulates the wiring between an incoming callable request and a {@link
|
|
9
|
+
* Encapsulates the wiring between an incoming callable request and a {@link BackendDefaultApi}.
|
|
10
10
|
* Subclasses configure the API, routes, region, and service account, then call
|
|
11
11
|
* {@link IBackendFunction.buildFunction} to produce a deployable Cloud Function.
|
|
12
12
|
*
|
|
13
13
|
* @typeParam DTO - The document data transfer object type.
|
|
14
14
|
* @typeParam API - The backend API implementation that handles route logic.
|
|
15
15
|
*/
|
|
16
|
-
export declare abstract class IBackendFunction<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, SIDE_EFFECTS extends DocumentData, API extends
|
|
16
|
+
export declare abstract class IBackendFunction<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, SIDE_EFFECTS extends DocumentData, API extends BackendBaseApi<DTO, SIDE_EFFECTS>> {
|
|
17
17
|
readonly name: string;
|
|
18
18
|
readonly projectId: string;
|
|
19
19
|
readonly region: string;
|
|
@@ -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;AAIrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,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;AAIrC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D;;;;;;;;;;GAUG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,YAAY,SAAS,YAAY,EACjC,GAAG,SAAS,cAAc,CAAC,GAAG,EAAE,YAAY,CAAC;aAa3B,IAAI,EAAE,MAAM;aACZ,SAAS,EAAE,MAAM;aACjB,MAAM,EAAE,MAAM;aACd,cAAc,EAAE,MAAM;IACtC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;IAfxC,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC;IAErB;;;;;;;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,CAE5B;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;IAejC;;;;;;;;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"}
|
|
@@ -5,7 +5,7 @@ import { checkServiceAuth } from "../firebase/firebase.express.js";
|
|
|
5
5
|
* Abstract base class for Firebase callable backend functions.
|
|
6
6
|
*
|
|
7
7
|
* @remarks
|
|
8
|
-
* Encapsulates the wiring between an incoming callable request and a {@link
|
|
8
|
+
* Encapsulates the wiring between an incoming callable request and a {@link BackendDefaultApi}.
|
|
9
9
|
* Subclasses configure the API, routes, region, and service account, then call
|
|
10
10
|
* {@link IBackendFunction.buildFunction} to produce a deployable Cloud Function.
|
|
11
11
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ZodError, type ZodObject, type ZodRawShape } from "zod";
|
|
2
|
-
import type { CreateInput,
|
|
2
|
+
import type { CreateInput, DocumentData, UpdateInput, ValidationResult } from "@mxpicture/gcp-functions-common/types";
|
|
3
3
|
/**
|
|
4
4
|
* Zod-based validation for document data transfer objects.
|
|
5
5
|
*
|
|
@@ -10,7 +10,7 @@ import type { CreateInput, DocumentKeyAdmin, UpdateInput, ValidationResult } fro
|
|
|
10
10
|
*
|
|
11
11
|
* @typeParam DTO - The document data transfer object type.
|
|
12
12
|
*/
|
|
13
|
-
export declare class Validation<DTO extends
|
|
13
|
+
export declare class Validation<DTO extends DocumentData> {
|
|
14
14
|
readonly name: string;
|
|
15
15
|
protected _createSchema?: ZodObject;
|
|
16
16
|
protected _updateSchema?: ZodObject;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validation.d.ts","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC;AAEzE,OAAO,KAAK,EACV,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"Validation.d.ts","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAK,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC;AAEzE,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAG/C;;;;;;;;;GASG;AACH,qBAAa,UAAU,CAAC,GAAG,SAAS,YAAY;aAYX,IAAI,EAAE,MAAM;IAX/C,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAC1C,SAAS,CAAC,UAAU,CAAC,EAAE,SAAS,CAAC;IACjC,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAE/B;;;;OAIG;gBACgC,IAAI,EAAE,MAAM;IAE/C;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAIzC;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,WAAW;IAQ9B;;;;OAIG;IACH,SAAS,CAAC,YAAY,IAAI,WAAW;IAOrC;;;;OAIG;IACH,SAAS,CAAC,YAAY,IAAI,SAAS;IAKnC;;;;;;;;OAQG;IACH,SAAS,CAAC,YAAY,IAAI,SAAS;IAKnC;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,IAAI,SAAS;IAMzC,SAAS,CAAC,SAAS,IAAI,SAAS;IAKhC;;;;;;OAMG;IACI,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;IAW9D;;;;;;OAMG;IACI,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;IAW9D;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,gBAAgB;CAUvE"}
|
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.51",
|
|
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.51",
|
|
58
58
|
"express": "^5.2.1",
|
|
59
59
|
"firebase-admin": "^13.7.0",
|
|
60
60
|
"firebase-functions": "^7.0.6",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackendApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,YAAY,EACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,8BAAsB,UAAU,CAC9B,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,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,CAC7C,SAAQ,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,CAAC;cAEzC,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAQ3E;;;;;OAKG;IACmB,MAAM,CAC1B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAK7B;;;;;OAKG;IACmB,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAI7D;;;;;OAKG;IACmB,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAIvE;;;;;OAKG;IACmB,KAAK,CACzB,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GACzB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAI7B;;;;;OAKG;IACmB,MAAM,CAC1B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAI/B;;;;;;OAMG;IACmB,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAOrE;;;;;;OAMG;IACmB,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cAMrD,aAAa,CAC3B,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GACxB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;KAAE,CAAC;cAOrC,aAAa,CAC3B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,GACxB,OAAO,CAAC,MAAM,EAAE,CAAC;cAIJ,QAAQ,CACtB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,EACzB,cAAc,CAAC,EAAE,OAAO,GACvB,OAAO,CAAC;QAAE,OAAO,EAAE,GAAG,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAQrD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackendApi.js","sourceRoot":"","sources":["../../src/api/BackendApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackendCustomApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendCustomApi.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,YAAY,EACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAM/C;;;;;;;;;;GAUG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,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,CAE7C,SAAQ,WAAW,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,CAC5D,YAAW,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAEzC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;cAGlD,oBAAoB,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;IAQlE,SAAS,CAAC,QAAQ,CAAC,kBAAkB,CACnC,OAAO,EAAE,GAAG,EACZ,IAAI,EAAE,GAAG,GAAG,IAAI,EAChB,WAAW,EAAE,OAAO,CAAC,YAAY,CAAC,GACjC,OAAO,CAAC,GAAG,CAAC;IAEf;;;;;OAKG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAExE;;;;;OAKG;aACa,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAEvD;;;;;OAKG;aACa,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjE;;;;;OAKG;aACa,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAE7E;;;;;OAKG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAE1E;;;;;;OAMG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAE/D;;;;;;OAMG;aACa,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cAE/C,KAAK,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;cAOnC,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;cAIzC,OAAO,CACrB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,GAAG,GAAG,IAAI,EACnB,YAAY,GAAE,MAAM,EAAO,GAC1B,OAAO,CAAC,SAAS,CAAC;cA+BL,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;cAYxD,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAKxE,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;CAOxC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BackendCustomApi.js","sourceRoot":"","sources":["../../src/api/BackendCustomApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AAanC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EACL,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,gBAOpB,SAAQ,WAAqD;IAK7D,kBAAkB;IACR,KAAK,CAAC,oBAAoB,CAAC,GAAQ;QAC3C,uBAAuB;QACvB,KAAK,MAAM,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,QAAQ;YACjC,8DAA8D;YAC9D,IAAK,GAAW,CAAC,GAAG,CAAC;gBAAE,OAAQ,GAAW,CAAC,GAAG,CAAC,CAAC;QAClD,OAAO,GAAG,CAAC;IACb,CAAC;IAkES,KAAK,CAAC,KAAK,CAAC,GAAc;QAClC,IAAI,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACpD,OAAO,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAES,KAAK,CAAC,MAAM,CAAC,IAAiB;QACtC,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAES,KAAK,CAAC,OAAO,CACrB,GAAQ,EACR,OAAmB,EACnB,eAAyB,EAAE;QAE3B,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAExD,qBAAqB;QACrB,IAAI,cAAc,GAAY,KAAK,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,IAAI,IAAI,KAAK,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChD,cAAc,GAAG,IAAI,CAAC;gBACtB,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAe,IAAI,CAAC;QAC7B,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,EAAE,GAA0B,EAAE,CAAC;YAErC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC/C,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAC1D,8DAA8D;oBAC7D,EAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAE7B,KAAK,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,MAAM,CAAC;QACjB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACtD,OAAO,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,GAAqB;QACjD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QAChD,MAAM,MAAM,GAAQ,EAAE,GAAG,QAAQ,EAAE,GAAG,GAAG,EAAE,CAAC;QAE5C,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjD,8DAA8D;YAC9D,IAAK,MAAc,CAAC,GAAG,CAAC,KAAK,KAAK;gBAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAExD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAES,KAAK,CAAC,aAAa,CAAC,GAAqB;QACjD,MAAM,QAAQ,GAAqB,EAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC3D,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,GAAG,EAAE,GAAG,QAAQ,EAAS,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACnE,CAAC;IAES,QAAQ,CAAC,EAAW;QAC5B,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC/B,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
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;AAM9D;;;;;;;;;;;;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;aAc3B,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;IAf1C,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACzB,SAAS,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IAC5B,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAChC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B;;;;;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,IAAW,WAAW,IAAI,MAAM,CAG/B;IAED;;;;OAIG;IACI,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAInC;;;;OAIG;IACI,aAAa,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI;IAI3C;;;;OAIG;IACI,SAAS,CAAC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,MAAM,EAAE,GAAG,IAAI;IAIpE;;;;;OAKG;IACH,IAAW,MAAM,IAAI,MAAM,EAAE,CAM5B;IAED;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,KAAK;IAQxB;;;;;OAKG;IACH,SAAS,CAAC,UAAU,IAAI,GAAG;IAQ3B;;;;;;;;;;;;OAYG;IACU,OAAO,CAAC,GAAG,EAAE,GAAG,SAAS,YAAY,EAChD,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,GAAG,GACR,OAAO,CAAC,GAAG,CAAC;CAWhB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"IBackendApi.js","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAEhD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAgB,WAAW;IAoBb;IACG;IACA;IACA;IAfX,MAAM,CAAS;IACf,WAAW,CAAO;IAClB,YAAY,CAAU;IACtB,OAAO,CAAY;IAE7B;;;;;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,IAAW,WAAW;QACpB,IAAI,CAAC,IAAI,CAAC,YAAY;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,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;;;;OAIG;IACI,SAAS,CAAC,MAA4C;QAC3D,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACxE,CAAC;IAED;;;;;OAKG;IACH,IAAW,MAAM;QACf,IAAI,CAAC,IAAI,CAAC,OAAO;YACf,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,CAAC,IAAI,+CAA+C,CAC5D,CAAC;QACJ,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,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;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,OAAO,CAClB,KAAa,EACb,IAAS;QAET,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,gBAAgB,CAAC,CAAC;QAElD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAEtD,8DAA8D;QAC9D,MAAM,OAAO,GAAG,MAAO,IAAY,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;QACxD,OAAO,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;CACF"}
|