@thisisagile/easy 15.10.0 → 15.10.2

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,23 +1,23 @@
1
1
  import { Id, Json, JsonValue, OneOrMore, Optional, PageOptions, Text } from '../types';
2
- export declare class Req implements Omit<PageOptions, 'sort'> {
2
+ export declare class Req<T = unknown> implements Omit<PageOptions, 'sort'> {
3
3
  readonly path: Json;
4
4
  readonly query: Json;
5
- readonly body: unknown;
5
+ readonly body: T;
6
6
  readonly headers: Record<string, OneOrMore<string>>;
7
7
  readonly skip: Optional<number>;
8
8
  readonly take: Optional<number>;
9
- constructor(path: Json, query: Json, body: unknown, headers: Record<string, OneOrMore<string>>);
9
+ constructor(path: Json, query: Json, body: T, headers: Record<string, OneOrMore<string>>);
10
10
  get id(): Id;
11
11
  get q(): JsonValue;
12
12
  get: (key: Text) => any;
13
13
  }
14
- export declare const toReq: (req: {
14
+ export declare function toReq<T = unknown>(req: {
15
15
  params?: {
16
16
  id?: unknown;
17
17
  };
18
18
  query?: {
19
19
  q?: unknown;
20
20
  };
21
- body?: unknown;
21
+ body?: T;
22
22
  headers?: unknown;
23
- }) => Req;
23
+ }): Req;
@@ -43,7 +43,9 @@ class Req {
43
43
  }
44
44
  get = (key) => this.path[key.toString()] ?? this.query[key.toString()];
45
45
  }
46
- const toReq = (req) => new Req(req.params, req.query, req.body, req.headers);
46
+ function toReq(req) {
47
+ return new Req(req.params, req.query, req.body, req.headers);
48
+ }
47
49
  // Annotate the CommonJS export names for ESM import in node:
48
50
  0 && (module.exports = {
49
51
  Req,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/resources/Req.ts"],"sourcesContent":["import { asNumber, Id, Json, JsonValue, OneOrMore, Optional, PageOptions, Text } from '../types';\nimport { ifDefined } from '../utils';\n\nexport class Req implements Omit<PageOptions, 'sort'> {\n readonly skip: Optional<number>;\n readonly take: Optional<number>;\n constructor(readonly path: Json = {}, readonly query: Json = {}, readonly body: unknown, readonly headers: Record<string, OneOrMore<string>>) {\n this.skip = ifDefined(query.skip, s => asNumber(s));\n this.take = ifDefined(query.take, t => asNumber(t));\n }\n\n get id(): Id {\n return this.get('id');\n }\n\n get q(): JsonValue {\n return this.get('q');\n }\n\n get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];\n}\n\nexport const toReq = (req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: unknown; headers?: unknown }): Req =>\n new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsF;AACtF,mBAA0B;AAEnB,MAAM,IAAyC;AAAA,EAGpD,YAAqB,OAAa,CAAC,GAAY,QAAc,CAAC,GAAY,MAAwB,SAA4C;AAAzH;AAA0B;AAA2B;AAAwB;AAChG,SAAK,WAAO,wBAAU,MAAM,MAAM,WAAK,uBAAS,CAAC,CAAC;AAClD,SAAK,WAAO,wBAAU,MAAM,MAAM,WAAK,uBAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EALS;AAAA,EACA;AAAA,EAMT,IAAI,KAAS;AACX,WAAO,KAAK,IAAI,IAAI;AAAA,EACtB;AAAA,EAEA,IAAI,IAAe;AACjB,WAAO,KAAK,IAAI,GAAG;AAAA,EACrB;AAAA,EAEA,MAAM,CAAC,QAAmB,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,SAAS,CAAC;AAClF;AAEO,MAAM,QAAQ,CAAC,QACpB,IAAI,IAAI,IAAI,QAAgB,IAAI,OAAe,IAAI,MAAc,IAAI,OAA4C;","names":[]}
1
+ {"version":3,"sources":["../../src/resources/Req.ts"],"sourcesContent":["import { asNumber, Id, Json, JsonValue, OneOrMore, Optional, PageOptions, Text } from '../types';\nimport { ifDefined } from '../utils';\n\nexport class Req<T = unknown> implements Omit<PageOptions, 'sort'> {\n readonly skip: Optional<number>;\n readonly take: Optional<number>;\n constructor(readonly path: Json = {}, readonly query: Json = {}, readonly body: T, readonly headers: Record<string, OneOrMore<string>>) {\n this.skip = ifDefined(query.skip, s => asNumber(s));\n this.take = ifDefined(query.take, t => asNumber(t));\n }\n\n get id(): Id {\n return this.get('id');\n }\n\n get q(): JsonValue {\n return this.get('q');\n }\n\n get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];\n}\n\nexport function toReq<T = unknown>(req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: T; headers?: unknown }): Req {\n return new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsF;AACtF,mBAA0B;AAEnB,MAAM,IAAsD;AAAA,EAGjE,YAAqB,OAAa,CAAC,GAAY,QAAc,CAAC,GAAY,MAAkB,SAA4C;AAAnH;AAA0B;AAA2B;AAAkB;AAC1F,SAAK,WAAO,wBAAU,MAAM,MAAM,WAAK,uBAAS,CAAC,CAAC;AAClD,SAAK,WAAO,wBAAU,MAAM,MAAM,WAAK,uBAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EALS;AAAA,EACA;AAAA,EAMT,IAAI,KAAS;AACX,WAAO,KAAK,IAAI,IAAI;AAAA,EACtB;AAAA,EAEA,IAAI,IAAe;AACjB,WAAO,KAAK,IAAI,GAAG;AAAA,EACrB;AAAA,EAEA,MAAM,CAAC,QAAmB,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,SAAS,CAAC;AAClF;AAEO,SAAS,MAAmB,KAA+F;AAChI,SAAO,IAAI,IAAI,IAAI,QAAgB,IAAI,OAAe,IAAI,MAAc,IAAI,OAA4C;AAC1H;","names":[]}
@@ -20,7 +20,9 @@ class Req {
20
20
  }
21
21
  get = (key) => this.path[key.toString()] ?? this.query[key.toString()];
22
22
  }
23
- const toReq = (req) => new Req(req.params, req.query, req.body, req.headers);
23
+ function toReq(req) {
24
+ return new Req(req.params, req.query, req.body, req.headers);
25
+ }
24
26
  export {
25
27
  Req,
26
28
  toReq
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/resources/Req.ts"],"sourcesContent":["import { asNumber, Id, Json, JsonValue, OneOrMore, Optional, PageOptions, Text } from '../types';\nimport { ifDefined } from '../utils';\n\nexport class Req implements Omit<PageOptions, 'sort'> {\n readonly skip: Optional<number>;\n readonly take: Optional<number>;\n constructor(readonly path: Json = {}, readonly query: Json = {}, readonly body: unknown, readonly headers: Record<string, OneOrMore<string>>) {\n this.skip = ifDefined(query.skip, s => asNumber(s));\n this.take = ifDefined(query.take, t => asNumber(t));\n }\n\n get id(): Id {\n return this.get('id');\n }\n\n get q(): JsonValue {\n return this.get('q');\n }\n\n get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];\n}\n\nexport const toReq = (req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: unknown; headers?: unknown }): Req =>\n new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);\n"],"mappings":";AAAA,SAAS,gBAA6E;AACtF,SAAS,iBAAiB;AAEnB,MAAM,IAAyC;AAAA,EAGpD,YAAqB,OAAa,CAAC,GAAY,QAAc,CAAC,GAAY,MAAwB,SAA4C;AAAzH;AAA0B;AAA2B;AAAwB;AAChG,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAClD,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EALS;AAAA,EACA;AAAA,EAMT,IAAI,KAAS;AACX,WAAO,KAAK,IAAI,IAAI;AAAA,EACtB;AAAA,EAEA,IAAI,IAAe;AACjB,WAAO,KAAK,IAAI,GAAG;AAAA,EACrB;AAAA,EAEA,MAAM,CAAC,QAAmB,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,SAAS,CAAC;AAClF;AAEO,MAAM,QAAQ,CAAC,QACpB,IAAI,IAAI,IAAI,QAAgB,IAAI,OAAe,IAAI,MAAc,IAAI,OAA4C;","names":[]}
1
+ {"version":3,"sources":["../../src/resources/Req.ts"],"sourcesContent":["import { asNumber, Id, Json, JsonValue, OneOrMore, Optional, PageOptions, Text } from '../types';\nimport { ifDefined } from '../utils';\n\nexport class Req<T = unknown> implements Omit<PageOptions, 'sort'> {\n readonly skip: Optional<number>;\n readonly take: Optional<number>;\n constructor(readonly path: Json = {}, readonly query: Json = {}, readonly body: T, readonly headers: Record<string, OneOrMore<string>>) {\n this.skip = ifDefined(query.skip, s => asNumber(s));\n this.take = ifDefined(query.take, t => asNumber(t));\n }\n\n get id(): Id {\n return this.get('id');\n }\n\n get q(): JsonValue {\n return this.get('q');\n }\n\n get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];\n}\n\nexport function toReq<T = unknown>(req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: T; headers?: unknown }): Req {\n return new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);\n}\n"],"mappings":";AAAA,SAAS,gBAA6E;AACtF,SAAS,iBAAiB;AAEnB,MAAM,IAAsD;AAAA,EAGjE,YAAqB,OAAa,CAAC,GAAY,QAAc,CAAC,GAAY,MAAkB,SAA4C;AAAnH;AAA0B;AAA2B;AAAkB;AAC1F,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAClD,SAAK,OAAO,UAAU,MAAM,MAAM,OAAK,SAAS,CAAC,CAAC;AAAA,EACpD;AAAA,EALS;AAAA,EACA;AAAA,EAMT,IAAI,KAAS;AACX,WAAO,KAAK,IAAI,IAAI;AAAA,EACtB;AAAA,EAEA,IAAI,IAAe;AACjB,WAAO,KAAK,IAAI,GAAG;AAAA,EACrB;AAAA,EAEA,MAAM,CAAC,QAAmB,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,IAAI,SAAS,CAAC;AAClF;AAEO,SAAS,MAAmB,KAA+F;AAChI,SAAO,IAAI,IAAI,IAAI,QAAgB,IAAI,OAAe,IAAI,MAAc,IAAI,OAA4C;AAC1H;","names":[]}
@@ -1,4 +1,6 @@
1
+ import { Json } from "../types";
1
2
  export declare const base64: {
2
3
  decode: (data: string) => string;
3
4
  encode: (data: string) => string;
5
+ toJson: (data: string) => Json;
4
6
  };
@@ -23,7 +23,8 @@ __export(Base64_exports, {
23
23
  module.exports = __toCommonJS(Base64_exports);
24
24
  const base64 = {
25
25
  decode: (data) => Buffer.from(data, "base64").toString("utf-8"),
26
- encode: (data) => Buffer.from(data, "utf-8").toString("base64")
26
+ encode: (data) => Buffer.from(data, "utf-8").toString("base64"),
27
+ toJson: (data) => JSON.parse(base64.decode(data))
27
28
  };
28
29
  // Annotate the CommonJS export names for ESM import in node:
29
30
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/Base64.ts"],"sourcesContent":["export const base64 = {\n decode: (data: string): string => Buffer.from(data, \"base64\").toString(\"utf-8\"),\n encode: (data: string): string => Buffer.from(data, \"utf-8\").toString(\"base64\")\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,SAAS;AAAA,EACpB,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,QAAQ,EAAE,SAAS,OAAO;AAAA,EAC9E,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,OAAO,EAAE,SAAS,QAAQ;AAChF;","names":[]}
1
+ {"version":3,"sources":["../../src/utils/Base64.ts"],"sourcesContent":["import { Json } from \"../types\";\n\nexport const base64 = {\n decode: (data: string): string => Buffer.from(data, \"base64\").toString(\"utf-8\"),\n encode: (data: string): string => Buffer.from(data, \"utf-8\").toString(\"base64\"),\n toJson: (data: string): Json => JSON.parse(base64.decode(data))\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,SAAS;AAAA,EACpB,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,QAAQ,EAAE,SAAS,OAAO;AAAA,EAC9E,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,OAAO,EAAE,SAAS,QAAQ;AAAA,EAC9E,QAAQ,CAAC,SAAuB,KAAK,MAAM,OAAO,OAAO,IAAI,CAAC;AAChE;","names":[]}
@@ -1,7 +1,8 @@
1
1
  import "../chunk-4N72FQFX.mjs";
2
2
  const base64 = {
3
3
  decode: (data) => Buffer.from(data, "base64").toString("utf-8"),
4
- encode: (data) => Buffer.from(data, "utf-8").toString("base64")
4
+ encode: (data) => Buffer.from(data, "utf-8").toString("base64"),
5
+ toJson: (data) => JSON.parse(base64.decode(data))
5
6
  };
6
7
  export {
7
8
  base64
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/utils/Base64.ts"],"sourcesContent":["export const base64 = {\n decode: (data: string): string => Buffer.from(data, \"base64\").toString(\"utf-8\"),\n encode: (data: string): string => Buffer.from(data, \"utf-8\").toString(\"base64\")\n};\n"],"mappings":";AAAO,MAAM,SAAS;AAAA,EACpB,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,QAAQ,EAAE,SAAS,OAAO;AAAA,EAC9E,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,OAAO,EAAE,SAAS,QAAQ;AAChF;","names":[]}
1
+ {"version":3,"sources":["../../src/utils/Base64.ts"],"sourcesContent":["import { Json } from \"../types\";\n\nexport const base64 = {\n decode: (data: string): string => Buffer.from(data, \"base64\").toString(\"utf-8\"),\n encode: (data: string): string => Buffer.from(data, \"utf-8\").toString(\"base64\"),\n toJson: (data: string): Json => JSON.parse(base64.decode(data))\n};\n"],"mappings":";AAEO,MAAM,SAAS;AAAA,EACpB,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,QAAQ,EAAE,SAAS,OAAO;AAAA,EAC9E,QAAQ,CAAC,SAAyB,OAAO,KAAK,MAAM,OAAO,EAAE,SAAS,QAAQ;AAAA,EAC9E,QAAQ,CAAC,SAAuB,KAAK,MAAM,OAAO,OAAO,IAAI,CAAC;AAChE;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy",
3
- "version": "15.10.0",
3
+ "version": "15.10.2",
4
4
  "description": "Straightforward library for building domain-driven microservice architectures",
5
5
  "author": "Sander Hoogendoorn",
6
6
  "license": "MIT",
@@ -33,7 +33,7 @@
33
33
  "access": "public"
34
34
  },
35
35
  "devDependencies": {
36
- "@thisisagile/easy-test": "15.10.0",
36
+ "@thisisagile/easy-test": "15.10.2",
37
37
  "@types/form-urlencoded": "^4.4.0",
38
38
  "@types/jsonwebtoken": "^9.0.2",
39
39
  "@types/luxon": "3.2.0",
@@ -1,10 +1,10 @@
1
1
  import { asNumber, Id, Json, JsonValue, OneOrMore, Optional, PageOptions, Text } from '../types';
2
2
  import { ifDefined } from '../utils';
3
3
 
4
- export class Req implements Omit<PageOptions, 'sort'> {
4
+ export class Req<T = unknown> implements Omit<PageOptions, 'sort'> {
5
5
  readonly skip: Optional<number>;
6
6
  readonly take: Optional<number>;
7
- constructor(readonly path: Json = {}, readonly query: Json = {}, readonly body: unknown, readonly headers: Record<string, OneOrMore<string>>) {
7
+ constructor(readonly path: Json = {}, readonly query: Json = {}, readonly body: T, readonly headers: Record<string, OneOrMore<string>>) {
8
8
  this.skip = ifDefined(query.skip, s => asNumber(s));
9
9
  this.take = ifDefined(query.take, t => asNumber(t));
10
10
  }
@@ -20,5 +20,6 @@ export class Req implements Omit<PageOptions, 'sort'> {
20
20
  get = (key: Text): any => this.path[key.toString()] ?? this.query[key.toString()];
21
21
  }
22
22
 
23
- export const toReq = (req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: unknown; headers?: unknown }): Req =>
24
- new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);
23
+ export function toReq<T = unknown>(req: { params?: { id?: unknown }; query?: { q?: unknown }; body?: T; headers?: unknown }): Req {
24
+ return new Req(req.params as Json, req.query as Json, req.body as Json, req.headers as Record<string, OneOrMore<string>>);
25
+ }
@@ -1,4 +1,7 @@
1
+ import { Json } from "../types";
2
+
1
3
  export const base64 = {
2
4
  decode: (data: string): string => Buffer.from(data, "base64").toString("utf-8"),
3
- encode: (data: string): string => Buffer.from(data, "utf-8").toString("base64")
5
+ encode: (data: string): string => Buffer.from(data, "utf-8").toString("base64"),
6
+ toJson: (data: string): Json => JSON.parse(base64.decode(data))
4
7
  };