@mxpicture/gcp-functions-backend 0.2.20 → 0.2.22

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,6 +1,5 @@
1
1
  import { type ZodError, type ZodObject, type ZodRawShape } from "zod";
2
- import type { DocumentData, WithKey, WithoutKey } from "@mxpicture/gcp-functions-common/types";
3
- import { ValidationFieldErrors } from "../types/types.validation.js";
2
+ import type { DocumentData, ValidationFieldErrors, WithKey, WithoutKey } from "@mxpicture/gcp-functions-common/types";
4
3
  export declare class Validation<DTO extends DocumentData> {
5
4
  readonly name: string;
6
5
  protected _createSchema?: ZodObject;
@@ -9,6 +8,7 @@ export declare class Validation<DTO extends DocumentData> {
9
8
  constructor(name: string);
10
9
  useShape(shape: ZodRawShape): void;
11
10
  protected shape(): ZodRawShape;
11
+ protected shape4Create(): ZodRawShape;
12
12
  protected createSchema(): ZodObject;
13
13
  protected updateSchema(): ZodObject;
14
14
  validate(doc: Partial<WithoutKey<DTO>>): WithKey<DTO>;
@@ -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,YAAY,EACZ,OAAO,EACP,UAAU,EACX,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,qBAAa,UAAU,CAAC,GAAG,SAAS,YAAY;aAKX,IAAI,EAAE,MAAM;IAJ/C,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;gBAEI,IAAI,EAAE,MAAM;IAExC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAIzC,SAAS,CAAC,KAAK,IAAI,WAAW;IAQ9B,SAAS,CAAC,YAAY,IAAI,SAAS;IAMnC,SAAS,CAAC,YAAY,IAAI,SAAS;IAK5B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IASrD,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IASzE,SAAS,CAAC,mBAAmB,CAC3B,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GACzB,qBAAqB;CAUzB"}
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,YAAY,EACZ,qBAAqB,EACrB,OAAO,EACP,UAAU,EACX,MAAM,uCAAuC,CAAC;AAG/C,qBAAa,UAAU,CAAC,GAAG,SAAS,YAAY;aAKX,IAAI,EAAE,MAAM;IAJ/C,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC;IACpC,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;gBAEI,IAAI,EAAE,MAAM;IAExC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAIzC,SAAS,CAAC,KAAK,IAAI,WAAW;IAQ9B,SAAS,CAAC,YAAY,IAAI,WAAW;IAOrC,SAAS,CAAC,YAAY,IAAI,SAAS;IAKnC,SAAS,CAAC,YAAY,IAAI,SAAS;IAK5B,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IASrD,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IASzE,SAAS,CAAC,mBAAmB,CAC3B,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GACzB,qBAAqB;CAUzB"}
@@ -1,5 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { HttpsError } from "firebase-functions/https";
3
+ import { DOCUMENT_KEY_ADMIN_KEYS } from "@mxpicture/gcp-functions-common/helper";
3
4
  export class Validation {
4
5
  name;
5
6
  _createSchema;
@@ -16,10 +17,16 @@ export class Validation {
16
17
  throw new Error(`${this.name}: shape not provided. Use "useShape" method`);
17
18
  return this._shape;
18
19
  }
20
+ shape4Create() {
21
+ const shape = { ...this.shape() };
22
+ for (const key of Object.keys(shape))
23
+ if (DOCUMENT_KEY_ADMIN_KEYS.includes(key))
24
+ delete shape[key];
25
+ return shape;
26
+ }
19
27
  createSchema() {
20
- // todo remove id, timestamps WithoutKeyType
21
28
  if (!this._createSchema)
22
- this._createSchema = z.object(this.shape());
29
+ this._createSchema = z.object(this.shape4Create());
23
30
  return this._createSchema;
24
31
  }
25
32
  updateSchema() {
@@ -1 +1 @@
1
- {"version":3,"file":"Validation.js","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmD,MAAM,KAAK,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAQtD,MAAM,OAAO,UAAU;IAKc;IAJzB,aAAa,CAAa;IAC1B,aAAa,CAAa;IAC1B,MAAM,CAAe;IAE/B,YAAmC,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAE5C,QAAQ,CAAC,KAAkB;QAChC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAES,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;IAES,YAAY;QACpB,4CAA4C;QAC5C,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACrE,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAES,YAAY;QACpB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEM,QAAQ,CAAC,GAA6B;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,EAAE;gBAC/D,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;aACtD,CAAC,CAAC;QACL,OAAO,MAAM,CAAC,IAAoB,CAAC;IACrC,CAAC;IAEM,eAAe,CAAC,GAA0B;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,EAAE;gBAC/D,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;aACtD,CAAC,CAAC;QACL,OAAO,MAAM,CAAC,IAA6B,CAAC;IAC9C,CAAC;IAES,mBAAmB,CAC3B,MAA0B;QAE1B,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAChE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"Validation.js","sourceRoot":"","sources":["../../src/validation/Validation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAmD,MAAM,KAAK,CAAC;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAOtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEjF,MAAM,OAAO,UAAU;IAKc;IAJzB,aAAa,CAAa;IAC1B,aAAa,CAAa;IAC1B,MAAM,CAAe;IAE/B,YAAmC,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;IAAG,CAAC;IAE5C,QAAQ,CAAC,KAAkB;QAChC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAES,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;IAES,YAAY;QACpB,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QAClC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YAClC,IAAI,uBAAuB,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IAES,YAAY;QACpB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAES,YAAY;QACpB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,EAAE,CAAC;QAC5E,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEM,QAAQ,CAAC,GAA6B;QAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,EAAE;gBAC/D,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;aACtD,CAAC,CAAC;QACL,OAAO,MAAM,CAAC,IAAoB,CAAC;IACrC,CAAC;IAEM,eAAe,CAAC,GAA0B;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,CAAC,OAAO;YACjB,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,EAAE;gBAC/D,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;aACtD,CAAC,CAAC;QACL,OAAO,MAAM,CAAC,IAA6B,CAAC;IAC9C,CAAC;IAES,mBAAmB,CAC3B,MAA0B;QAE1B,MAAM,MAAM,GAA0B,EAAE,CAAC;QAEzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YAChE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mxpicture/gcp-functions-backend",
3
- "version": "0.2.20",
3
+ "version": "0.2.22",
4
4
  "description": "Utils for google cloud functions, publishing both CommonJS and ESM builds",
5
5
  "type": "module",
6
6
  "author": "MXPicture",
@@ -11,12 +11,11 @@
11
11
  },
12
12
  "exports": {
13
13
  "./api": "./dist/api/index.js",
14
+ "./package.json": "./package.json",
14
15
  "./firebase": "./dist/firebase/index.js",
15
16
  "./function": "./dist/function/index.js",
16
17
  "./store": "./dist/store/index.js",
17
- "./types": "./dist/types/index.js",
18
- "./validation": "./dist/validation/index.js",
19
- "./package.json": "./package.json"
18
+ "./validation": "./dist/validation/index.js"
20
19
  },
21
20
  "files": [
22
21
  "dist"
@@ -32,7 +31,7 @@
32
31
  "access": "public"
33
32
  },
34
33
  "dependencies": {
35
- "@mxpicture/gcp-functions-common": "^0.2.20",
34
+ "@mxpicture/gcp-functions-common": "^0.2.22",
36
35
  "firebase-admin": "^13.7.0",
37
36
  "firebase-functions": "^7.0.6",
38
37
  "short-uuid": "^6.0.3",
@@ -1,2 +0,0 @@
1
- export { ValidationFieldErrors } from "./types.validation.js";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export type ValidationFieldErrors = Record<string, string[]>;
2
- //# sourceMappingURL=types.validation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.validation.d.ts","sourceRoot":"","sources":["../../src/types/types.validation.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.validation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.validation.js","sourceRoot":"","sources":["../../src/types/types.validation.ts"],"names":[],"mappings":""}