@mxpicture/gcp-functions-backend 1.1.21 → 1.1.23

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.
@@ -1,4 +1,4 @@
1
- import type { CreateInput, DocumentData, UpdateInput, WithKey, ApiFromRoutes, CrudRoutes, DocumentKey, ApiFilter } from "@mxpicture/gcp-functions-common/types";
1
+ import type { ApiFromRoutes, CrudRoutes, DocumentKey, ApiFilter, DocumentKeyAdmin, CreateInput, UpdateInput } from "@mxpicture/gcp-functions-common/types";
2
2
  import { Store } from "../store/Store.js";
3
3
  import type { Validation } from "../validation/Validation.js";
4
4
  import { IBackendApi } from "./IBackendApi.js";
@@ -13,10 +13,9 @@ import { IBackendApi } from "./IBackendApi.js";
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 BackendApi<STORE_DOC extends DocumentData, DTO extends STORE_DOC, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> extends IBackendApi<STORE_DOC, DTO, STORE, VAL> implements ApiFromRoutes<CrudRoutes<DTO>> {
17
- protected abstract loadVirtualFields(doc: WithKey<STORE_DOC>): Promise<WithKey<DTO>>;
18
- protected processVirtualFields(doc: WithKey<DTO>): Promise<WithKey<STORE_DOC>>;
19
- protected processVirtualFieldsPartial(doc: UpdateInput<DTO>): Promise<UpdateInput<STORE_DOC>>;
16
+ export declare abstract class BackendApi<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> extends IBackendApi<STORE_DOC, DTO, STORE, VAL> implements ApiFromRoutes<CrudRoutes<DTO>> {
17
+ protected abstract loadVirtualFields(doc: STORE_DOC): Promise<DTO>;
18
+ protected processVirtualFields(doc: DTO): Promise<STORE_DOC>;
20
19
  /**
21
20
  * Delete a document by its key.
22
21
  *
@@ -32,14 +31,14 @@ export declare abstract class BackendApi<STORE_DOC extends DocumentData, DTO ext
32
31
  * @param request - The document key identifying the document to retrieve.
33
32
  * @returns The document including its key metadata.
34
33
  */
35
- get(request: DocumentKey): Promise<WithKey<DTO>>;
34
+ get(request: DocumentKey): Promise<DTO>;
36
35
  /**
37
36
  * Query documents with optional filters.
38
37
  *
39
38
  * @param request - Optional filter criteria to narrow the query results.
40
39
  * @returns An array of documents matching the filter criteria.
41
40
  */
42
- query(request?: ApiFilter | null): Promise<WithKey<DTO>[]>;
41
+ query(request?: ApiFilter | null): Promise<DTO[]>;
43
42
  /**
44
43
  * Count documents matching optional filter criteria.
45
44
  *
@@ -65,7 +64,7 @@ export declare abstract class BackendApi<STORE_DOC extends DocumentData, DTO ext
65
64
  * @returns The newly created document including its generated key.
66
65
  * @throws {@link HttpsError} if validation fails.
67
66
  */
68
- create(request: CreateInput<DTO>): Promise<WithKey<DTO>>;
67
+ create(request: CreateInput<DTO>): Promise<DTO>;
69
68
  /**
70
69
  * Update an existing document after validating the partial input.
71
70
  *
@@ -73,10 +72,11 @@ export declare abstract class BackendApi<STORE_DOC extends DocumentData, DTO ext
73
72
  * @returns The updated document including its key metadata.
74
73
  * @throws {@link HttpsError} if validation fails.
75
74
  */
76
- update(request: UpdateInput<DTO>): Promise<WithKey<DTO>>;
77
- protected toDto(doc: WithKey<STORE_DOC>): Promise<WithKey<DTO>>;
78
- protected toDtos(docs: WithKey<STORE_DOC>[]): Promise<WithKey<DTO>[]>;
79
- protected fromDtoCreate(dto: CreateInput<DTO>): Promise<WithKey<STORE_DOC>>;
80
- protected fromDtoUpdate(dto: UpdateInput<DTO>): Promise<UpdateInput<STORE_DOC>>;
75
+ update(request: UpdateInput<DTO>): Promise<DTO>;
76
+ protected toDto(doc: STORE_DOC): Promise<DTO>;
77
+ protected toDtos(docs: STORE_DOC[]): Promise<DTO[]>;
78
+ protected fromDto(dto: DTO): Promise<STORE_DOC>;
79
+ protected fromDtoUpdate(dto: UpdateInput<DTO>): Promise<STORE_DOC>;
80
+ protected fromDtoCreate(dto: CreateInput<DTO>): Promise<STORE_DOC>;
81
81
  }
82
82
  //# sourceMappingURL=BackendApi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackendApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,OAAO,EACP,aAAa,EACb,UAAU,EACV,WAAW,EACX,SAAS,EACV,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAM/C;;;;;;;;;;GAUG;AACH,8BAAsB,UAAU,CAC9B,SAAS,SAAS,YAAY,EAC9B,GAAG,SAAS,SAAS,EACrB,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,KAAK,EAAE,GAAG,CAC9C,YAAW,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAEzC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAClC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,GACtB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;cAGR,oBAAoB,CAClC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAChB,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;cAKd,2BAA2B,CACzC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GACpB,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAMlC;;;;;OAKG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAKrE;;;;;OAKG;IACU,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAI7D;;;;;OAKG;IACU,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;IAIvE;;;;;OAKG;IACU,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAI1E;;;;;OAKG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAIvE;;;;;;OAMG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAOrE;;;;;;OAMG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;cAWrD,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;cAOrD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;cAI3D,aAAa,CAC3B,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GACpB,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;cAUd,aAAa,CAC3B,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GACpB,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;CAKnC"}
1
+ {"version":3,"file":"BackendApi.d.ts","sourceRoot":"","sources":["../../src/api/BackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,UAAU,EACV,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,WAAW,EACZ,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAM/C;;;;;;;;;;GAUG;AACH,8BAAsB,UAAU,CAC9B,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,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,KAAK,EAAE,GAAG,CAC9C,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;;;;;OAKG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,IAAI,CAAA;KAAE,CAAC;IAKrE;;;;;OAKG;IACU,GAAG,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;IAIpD;;;;;OAKG;IACU,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAI9D;;;;;OAKG;IACU,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAI1E;;;;;OAKG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAIvE;;;;;;OAMG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAO5D;;;;;;OAMG;IACU,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;cAW5C,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,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;cAMrC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;cAKxD,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;CAIzE"}
@@ -14,12 +14,9 @@ import { toDatesDeep, toTimestampsDeep, } from "@mxpicture/gcp-functions-common/
14
14
  export class BackendApi extends IBackendApi {
15
15
  // to be redefined
16
16
  async processVirtualFields(doc) {
17
- return (await this.processVirtualFieldsPartial(doc));
18
- }
19
- // to be redefined
20
- async processVirtualFieldsPartial(doc) {
21
17
  // default strip object
22
18
  for (const { key } of this.virtuals)
19
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
23
20
  if (doc[key])
24
21
  delete doc[key];
25
22
  return doc;
@@ -78,7 +75,7 @@ export class BackendApi extends IBackendApi {
78
75
  * @throws {@link HttpsError} if validation fails.
79
76
  */
80
77
  async create(request) {
81
- const validated = this.validation().validate(request);
78
+ const validated = this.validation().validateCreate(request);
82
79
  const storeDoc = await this.fromDtoCreate(validated);
83
80
  const created = await this.store().create(storeDoc);
84
81
  return this.toDto(created);
@@ -91,7 +88,7 @@ export class BackendApi extends IBackendApi {
91
88
  * @throws {@link HttpsError} if validation fails.
92
89
  */
93
90
  async update(request) {
94
- const validated = this.validation().validatePartial(request);
91
+ const validated = this.validation().validateUpdate(request);
95
92
  const storeDoc = await this.fromDtoUpdate(validated);
96
93
  const { id, ...patch } = storeDoc;
97
94
  const updated = await this.store().update(id, patch);
@@ -106,19 +103,18 @@ export class BackendApi extends IBackendApi {
106
103
  async toDtos(docs) {
107
104
  return Promise.all(docs.map((doc) => this.toDto(doc)));
108
105
  }
109
- async fromDtoCreate(dto) {
106
+ async fromDto(dto) {
110
107
  const cloned = toDatesDeep(dto, this.datePaths);
111
- const id = this.store().createId();
112
- const loaded = await this.processVirtualFields({
113
- ...cloned,
114
- id,
115
- });
108
+ const loaded = await this.processVirtualFields(cloned);
116
109
  return toTimestampsDeep(loaded, this.datePaths);
117
110
  }
118
111
  async fromDtoUpdate(dto) {
119
- const cloned = toDatesDeep(dto, this.datePaths);
120
- const loaded = await this.processVirtualFieldsPartial(cloned);
121
- return toTimestampsDeep(loaded, this.datePaths);
112
+ const existing = await this.get({ id: dto.id });
113
+ return this.fromDto({ ...existing, ...dto });
114
+ }
115
+ async fromDtoCreate(dto) {
116
+ const keyAdmin = { id: this.store().createId() };
117
+ return this.fromDto({ ...dto, ...keyAdmin });
122
118
  }
123
119
  }
124
120
  //# sourceMappingURL=BackendApi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BackendApi.js","sourceRoot":"","sources":["../../src/api/BackendApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BackendApi.js","sourceRoot":"","sources":["../../src/api/BackendApi.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { DecoPropertyVirtual, DocumentData } from "@mxpicture/gcp-functions-common/types";
1
+ import type { DecoPropertyVirtual, DocumentKeyAdmin } from "@mxpicture/gcp-functions-common/types";
2
2
  import { Store } from "../store/Store.js";
3
3
  import type { Validation } from "../validation/Validation.js";
4
4
  /**
@@ -14,7 +14,7 @@ import type { Validation } from "../validation/Validation.js";
14
14
  * @typeParam STORE - The store implementation used for persistence.
15
15
  * @typeParam VAL - The validation implementation used for input validation.
16
16
  */
17
- export declare abstract class IBackendApi<STORE_DOC extends DocumentData, DTO extends STORE_DOC, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> {
17
+ export declare abstract class IBackendApi<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, STORE extends Store<STORE_DOC> = Store<STORE_DOC>, VAL extends Validation<DTO> = Validation<DTO>> {
18
18
  readonly name: string;
19
19
  protected readonly datePaths: string[];
20
20
  protected readonly virtuals: DecoPropertyVirtual[];
@@ -1 +1 @@
1
- {"version":3,"file":"IBackendApi.d.ts","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACb,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;;;;;;;;;;;GAYG;AACH,8BAAsB,WAAW,CAC/B,SAAS,SAAS,YAAY,EAC9B,GAAG,SAAS,SAAS,EACrB,KAAK,SAAS,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EACjD,GAAG,SAAS,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC;aAY3B,IAAI,EAAE,MAAM;IAC5B,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;IACtC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAAE;IAZpD,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACzB,SAAS,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IAE5B;;;;;OAKG;gBAEe,IAAI,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,mBAAmB,EAAE;IAGpD;;;;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"}
1
+ {"version":3,"file":"IBackendApi.d.ts","sourceRoot":"","sources":["../../src/api/IBackendApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAE9D;;;;;;;;;;;;GAYG;AACH,8BAAsB,WAAW,CAC/B,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,KAAK,SAAS,KAAK,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EACjD,GAAG,SAAS,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC;aAY3B,IAAI,EAAE,MAAM;IAC5B,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;IACtC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAAE;IAZpD,SAAS,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IACzB,SAAS,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC;IAE5B;;;;;OAKG;gBAEe,IAAI,EAAE,MAAM,EACT,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,EAAE,mBAAmB,EAAE;IAGpD;;;;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"}
@@ -1,4 +1,4 @@
1
- import type { DocumentData, FunctionRequest, FunctionResponse } from "@mxpicture/gcp-functions-common/types";
1
+ import type { DocumentData, DocumentKeyAdmin, FunctionRequest, FunctionResponse } from "@mxpicture/gcp-functions-common/types";
2
2
  import { BackendApi } from "../api/BackendApi.js";
3
3
  import { CallableFunction } from "firebase-functions/v2/https";
4
4
  /**
@@ -12,7 +12,7 @@ import { CallableFunction } from "firebase-functions/v2/https";
12
12
  * @typeParam DTO - The document data transfer object type.
13
13
  * @typeParam API - The backend API implementation that handles route logic.
14
14
  */
15
- export declare abstract class IBackendFunction<STORE_DOC extends DocumentData, DTO extends STORE_DOC, API extends BackendApi<STORE_DOC, DTO>> {
15
+ export declare abstract class IBackendFunction<STORE_DOC extends DocumentKeyAdmin, DTO extends STORE_DOC, API extends BackendApi<STORE_DOC, DTO>> {
16
16
  readonly name: string;
17
17
  readonly region: string;
18
18
  readonly serviceAccount: string;
@@ -1 +1 @@
1
- {"version":3,"file":"IBackendFunction.d.ts","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,eAAe,EACf,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAEL,gBAAgB,EAEjB,MAAM,6BAA6B,CAAC;AAMrC;;;;;;;;;;GAUG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,SAAS,YAAY,EAC9B,GAAG,SAAS,SAAS,EACrB,GAAG,SAAS,UAAU,CAAC,SAAS,EAAE,GAAG,CAAC;aAcpB,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,aAAa,IAAI,gBAAgB,CAEtC,eAAe,CAAC,GAAG,CAAC,EAEpB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAC/B;CAMF"}
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,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAEL,gBAAgB,EAEjB,MAAM,6BAA6B,CAAC;AAMrC;;;;;;;;;;GAUG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,SAAS,gBAAgB,EAClC,GAAG,SAAS,SAAS,EACrB,GAAG,SAAS,UAAU,CAAC,SAAS,EAAE,GAAG,CAAC;aAcpB,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,aAAa,IAAI,gBAAgB,CAEtC,eAAe,CAAC,GAAG,CAAC,EAEpB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAC/B;CAMF"}
@@ -1 +1 @@
1
- {"version":3,"file":"IBackendFunction.js","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAMA,OAAO,EACL,MAAM,EAEN,UAAU,GACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,gBAAgB;IAiBlB;IACA;IACA;IACG;IAfX,IAAI,CAAO;IACX,OAAO,CAAY;IAE7B;;;;;;;OAOG;IACH,YACkB,IAAY,EACZ,MAAc,EACd,cAAsB,EACnB,SAAmB;QAHtB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,mBAAc,GAAd,cAAc,CAAQ;QACnB,cAAS,GAAT,SAAS,CAAU;IACrC,CAAC;IAEJ;;;;OAIG;IACI,MAAM,CAAC,GAAQ;QACpB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,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;IACO,GAAG;QACX,IAAI,CAAC,IAAI,CAAC,IAAI;YACZ,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,yCAAyC,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACO,MAAM;QACd,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;;;;;;;;;;;;;OAaG;IACI,KAAK,CAAC,OAAO,CAClB,OAA6B;QAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC;YAC1C,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,SAAS,OAAO,CAAC,KAAK,gBAAgB,CACvC,CAAC;QAEJ,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAE9D,8DAA8D;YAC9D,MAAM,OAAO,GAAG,MAAO,IAAI,CAAC,GAAG,EAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;YACtE,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,UAAU;gBAAE,MAAM,KAAK,CAAC;YAC7C,8DAA8D;YAC9D,MAAM,IAAI,UAAU,CAAC,UAAU,EAAG,KAAa,EAAE,OAAO,IAAI,SAAS,CAAC,CAAC;YACvE,IAAI;QACN,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACI,aAAa;QAMlB,OAAO,MAAM,CACX,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,EAC5D,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CACtC,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"IBackendFunction.js","sourceRoot":"","sources":["../../src/function/IBackendFunction.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,MAAM,EAEN,UAAU,GACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,WAAW,EACX,gBAAgB,GACjB,MAAM,wCAAwC,CAAC;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,OAAgB,gBAAgB;IAiBlB;IACA;IACA;IACG;IAfX,IAAI,CAAO;IACX,OAAO,CAAY;IAE7B;;;;;;;OAOG;IACH,YACkB,IAAY,EACZ,MAAc,EACd,cAAsB,EACnB,SAAmB;QAHtB,SAAI,GAAJ,IAAI,CAAQ;QACZ,WAAM,GAAN,MAAM,CAAQ;QACd,mBAAc,GAAd,cAAc,CAAQ;QACnB,cAAS,GAAT,SAAS,CAAU;IACrC,CAAC;IAEJ;;;;OAIG;IACI,MAAM,CAAC,GAAQ;QACpB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IAClB,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;IACO,GAAG;QACX,IAAI,CAAC,IAAI,CAAC,IAAI;YACZ,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,yCAAyC,CAAC,CAAC;QACzE,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACO,MAAM;QACd,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;;;;;;;;;;;;;OAaG;IACI,KAAK,CAAC,OAAO,CAClB,OAA6B;QAE7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC;YAC1C,MAAM,IAAI,UAAU,CAClB,kBAAkB,EAClB,SAAS,OAAO,CAAC,KAAK,gBAAgB,CACvC,CAAC;QAEJ,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAE9D,8DAA8D;YAC9D,MAAM,OAAO,GAAG,MAAO,IAAI,CAAC,GAAG,EAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,CAAC;YACtE,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,UAAU;gBAAE,MAAM,KAAK,CAAC;YAC7C,8DAA8D;YAC9D,MAAM,IAAI,UAAU,CAAC,UAAU,EAAG,KAAa,EAAE,OAAO,IAAI,SAAS,CAAC,CAAC;YACvE,IAAI;QACN,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACI,aAAa;QAMlB,OAAO,MAAM,CACX,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,EAC5D,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CACtC,CAAC;IACJ,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  import { CollectionReference, DocumentReference, FirestoreDataConverter, Query, QuerySnapshot } from "firebase-admin/firestore";
2
- import type { ApiFilterItems, DocumentData, WithKey } from "@mxpicture/gcp-functions-common/types";
2
+ import type { ApiFilterItems, CreateInput, DocumentKeyAdmin } from "@mxpicture/gcp-functions-common/types";
3
3
  /**
4
4
  * Firestore-backed data store for a document type.
5
5
  *
@@ -9,7 +9,7 @@ import type { ApiFilterItems, DocumentData, WithKey } from "@mxpicture/gcp-funct
9
9
  *
10
10
  * @typeParam DTO - The document data transfer object type.
11
11
  */
12
- export declare class Store<DTO extends DocumentData> {
12
+ export declare class Store<DTO extends DocumentKeyAdmin> {
13
13
  readonly collectionName: string;
14
14
  readonly namespace: string;
15
15
  protected readonly converter?: FirestoreDataConverter<DTO> | undefined;
@@ -34,7 +34,7 @@ export declare class Store<DTO extends DocumentData> {
34
34
  * @param p - Optional filter items; when `parentId` is set, queries by parent.
35
35
  * @returns An array of documents with key metadata.
36
36
  */
37
- query(p?: ApiFilterItems): Promise<WithKey<DTO>[]>;
37
+ query(p?: ApiFilterItems): Promise<DTO[]>;
38
38
  /**
39
39
  * Execute a Firestore query and return the raw snapshot.
40
40
  *
@@ -68,7 +68,7 @@ export declare class Store<DTO extends DocumentData> {
68
68
  * @returns The document data including key metadata.
69
69
  * @throws {@link Error} if the document does not exist or its data is invalid.
70
70
  */
71
- get(id: string): Promise<WithKey<DTO>>;
71
+ get(id: string): Promise<DTO>;
72
72
  /**
73
73
  * Check whether a document exists by ID.
74
74
  *
@@ -82,7 +82,7 @@ export declare class Store<DTO extends DocumentData> {
82
82
  * @param doc - The document data to persist.
83
83
  * @returns The persisted document including its generated key metadata.
84
84
  */
85
- create(doc: DTO | WithKey<DTO>): Promise<WithKey<DTO>>;
85
+ create(doc: CreateInput<DTO>): Promise<DTO>;
86
86
  createId(id?: string): string;
87
87
  /**
88
88
  * Update an existing document by merging partial data.
@@ -91,7 +91,7 @@ export declare class Store<DTO extends DocumentData> {
91
91
  * @param doc - The partial document data to merge.
92
92
  * @returns The updated document including its key metadata.
93
93
  */
94
- update(id: string, doc: Partial<DTO>): Promise<WithKey<DTO>>;
94
+ update(id: string, doc: Partial<DTO>): Promise<DTO>;
95
95
  /**
96
96
  * Delete one or more documents by their IDs.
97
97
  *
@@ -1 +1 @@
1
- {"version":3,"file":"Store.d.ts","sourceRoot":"","sources":["../../src/store/Store.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,EACL,aAAa,EACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,OAAO,EACR,MAAM,uCAAuC,CAAC;AAE/C;;;;;;;;GAQG;AACH,qBAAa,KAAK,CAAC,GAAG,SAAS,YAAY;aAWvB,cAAc,EAAE,MAAM;aACtB,SAAS,EAAE,MAAM;IACjC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC;IAZ5D,SAAS,CAAC,GAAG,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAEzC;;;;;;OAMG;gBAEe,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC,YAAA;IAG5D;;;;OAIG;IACI,EAAE,IAAI,mBAAmB,CAAC,GAAG,CAAC;IAarC;;;;;OAKG;IACU,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;IAc/D;;;;;;;;OAQG;cACa,aAAa,CAC3B,CAAC,CAAC,EAAE,cAAc,GACjB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAc9B;;;;;OAKG;IACU,KAAK,CAAC,CAAC,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAS9D;;;;;OAKG;IACI,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC;IAI9C;;;;;;OAMG;IACU,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAWnD;;;;;OAKG;IACU,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD;;;;;OAKG;IACU,MAAM,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAO5D,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIpC;;;;;;OAMG;IACU,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAMzE;;;;OAIG;IACU,MAAM,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD;;;;OAIG;IACU,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;OAKG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM;CAGpC"}
1
+ {"version":3,"file":"Store.d.ts","sourceRoot":"","sources":["../../src/store/Store.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,EACL,aAAa,EACd,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAE/C;;;;;;;;GAQG;AACH,qBAAa,KAAK,CAAC,GAAG,SAAS,gBAAgB;aAW3B,cAAc,EAAE,MAAM;aACtB,SAAS,EAAE,MAAM;IACjC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC;IAZ5D,SAAS,CAAC,GAAG,CAAC,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAEzC;;;;;;OAMG;gBAEe,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC,YAAA;IAG5D;;;;OAIG;IACI,EAAE,IAAI,mBAAmB,CAAC,GAAG,CAAC;IAarC;;;;;OAKG;IACU,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IActD;;;;;;;;OAQG;cACa,aAAa,CAC3B,CAAC,CAAC,EAAE,cAAc,GACjB,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IAc9B;;;;;OAKG;IACU,KAAK,CAAC,CAAC,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAS9D;;;;;OAKG;IACI,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,CAAC,GAAG,CAAC;IAI9C;;;;;;OAMG;IACU,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAW1C;;;;;OAKG;IACU,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjD;;;;;OAKG;IACU,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAOjD,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM;IAIpC;;;;;;OAMG;IACU,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAMhE;;;;OAIG;IACU,MAAM,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD;;;;OAIG;IACU,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK5D;;;;;OAKG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM;CAGpC"}
@@ -139,9 +139,9 @@ export class Store {
139
139
  * @returns The persisted document including its generated key metadata.
140
140
  */
141
141
  async create(doc) {
142
- const id = this.createId(doc.id);
142
+ const id = this.createId();
143
143
  const ref = this.ref(id);
144
- await ref.set(doc);
144
+ await ref.set({ ...doc, id });
145
145
  return this.get(id);
146
146
  }
147
147
  createId(id) {
@@ -1 +1 @@
1
- {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../src/store/Store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Store.js","sourceRoot":"","sources":["../../src/store/Store.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { type ZodError, type ZodObject, type ZodRawShape } from "zod";
2
- import type { CreateInput, DocumentData, UpdateInput, ValidationResult } from "@mxpicture/gcp-functions-common/types";
2
+ import type { CreateInput, DocumentKeyAdmin, 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, DocumentData, UpdateInput, ValidationResult } from "@
10
10
  *
11
11
  * @typeParam DTO - The document data transfer object type.
12
12
  */
13
- export declare class Validation<DTO extends DocumentData> {
13
+ export declare class Validation<DTO extends DocumentKeyAdmin> {
14
14
  readonly name: string;
15
15
  protected _createSchema?: ZodObject;
16
16
  protected _updateSchema?: ZodObject;
@@ -70,7 +70,7 @@ export declare class Validation<DTO extends DocumentData> {
70
70
  * @returns The parsed and validated document data.
71
71
  * @throws {@link HttpsError} with `invalid-argument` if validation fails.
72
72
  */
73
- validate(doc: CreateInput<DTO>): CreateInput<DTO>;
73
+ validateCreate(doc: CreateInput<DTO>): CreateInput<DTO>;
74
74
  /**
75
75
  * Validate a partial document for update operations.
76
76
  *
@@ -78,7 +78,7 @@ export declare class Validation<DTO extends DocumentData> {
78
78
  * @returns The parsed and validated partial document data.
79
79
  * @throws {@link HttpsError} with `invalid-argument` if validation fails.
80
80
  */
81
- validatePartial(doc: UpdateInput<DTO>): UpdateInput<DTO>;
81
+ validateUpdate(doc: UpdateInput<DTO>): UpdateInput<DTO>;
82
82
  /**
83
83
  * Convert Zod validation issues into a structured validation result.
84
84
  *
@@ -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,YAAY,EACZ,WAAW,EACX,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAG/C;;;;;;;;;GASG;AACH,qBAAa,UAAU,CAAC,GAAG,SAAS,YAAY;aAWX,IAAI,EAAE,MAAM;IAV/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,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;;;;;;OAMG;IACI,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;IAWxD;;;;;;OAMG;IACI,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC;IAW/D;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,gBAAgB;CAUvE"}
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,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EACjB,MAAM,uCAAuC,CAAC;AAG/C;;;;;;;;;GASG;AACH,qBAAa,UAAU,CAAC,GAAG,SAAS,gBAAgB;aAWf,IAAI,EAAE,MAAM;IAV/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,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;;;;;;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"}
@@ -97,7 +97,7 @@ export class Validation {
97
97
  * @returns The parsed and validated document data.
98
98
  * @throws {@link HttpsError} with `invalid-argument` if validation fails.
99
99
  */
100
- validate(doc) {
100
+ validateCreate(doc) {
101
101
  const result = this.createSchema().safeParse(doc);
102
102
  if (!result.success)
103
103
  throw new HttpsError("invalid-argument", "Invalid request data", this.issuesToResult(result.error.issues));
@@ -110,7 +110,7 @@ export class Validation {
110
110
  * @returns The parsed and validated partial document data.
111
111
  * @throws {@link HttpsError} with `invalid-argument` if validation fails.
112
112
  */
113
- validatePartial(doc) {
113
+ validateUpdate(doc) {
114
114
  const result = this.updateSchemaWithId().safeParse(doc);
115
115
  if (!result.success)
116
116
  throw new HttpsError("invalid-argument", "Invalid request data", this.issuesToResult(result.error.issues));
@@ -1 +1 @@
1
- {"version":3,"file":"Validation.js","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Validation.js","sourceRoot":"","sources":["../../src/validation/Validation.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.1.21",
3
+ "version": "1.1.23",
4
4
  "description": "Utils for google cloud functions, publishing both CommonJS and ESM builds",
5
5
  "type": "module",
6
6
  "author": "MXPicture",
@@ -33,7 +33,7 @@
33
33
  "access": "public"
34
34
  },
35
35
  "dependencies": {
36
- "@mxpicture/gcp-functions-common": "^1.1.21",
36
+ "@mxpicture/gcp-functions-common": "^1.1.23",
37
37
  "firebase-admin": "^13.7.0",
38
38
  "firebase-functions": "^7.0.6",
39
39
  "short-uuid": "^6.0.3",