@thisisagile/easy 17.15.0 → 17.15.1

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.
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-GCY5A63A.mjs";
7
7
  import {
8
8
  json
9
- } from "./chunk-6NJ65PSU.mjs";
9
+ } from "./chunk-VCOKOQFW.mjs";
10
10
  import {
11
11
  meta
12
12
  } from "./chunk-WTFW6DLP.mjs";
@@ -133,4 +133,4 @@ export {
133
133
  Mapper,
134
134
  mappings
135
135
  };
136
- //# sourceMappingURL=chunk-YGLRUAUP.mjs.map
136
+ //# sourceMappingURL=chunk-6I4QZH2B.mjs.map
@@ -11,7 +11,7 @@ import {
11
11
  import {
12
12
  asJson,
13
13
  json
14
- } from "./chunk-6NJ65PSU.mjs";
14
+ } from "./chunk-VCOKOQFW.mjs";
15
15
  import {
16
16
  choose
17
17
  } from "./chunk-2KZ5UP6A.mjs";
@@ -88,4 +88,4 @@ export {
88
88
  view,
89
89
  views
90
90
  };
91
- //# sourceMappingURL=chunk-L4A73A2T.mjs.map
91
+ //# sourceMappingURL=chunk-6RMQPTKX.mjs.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-MDXL65W4.mjs";
4
4
  import {
5
5
  json
6
- } from "./chunk-6NJ65PSU.mjs";
6
+ } from "./chunk-VCOKOQFW.mjs";
7
7
  import {
8
8
  isDefined
9
9
  } from "./chunk-DEJ7A5PY.mjs";
@@ -50,4 +50,4 @@ export {
50
50
  toCondition,
51
51
  isSortCondition
52
52
  };
53
- //# sourceMappingURL=chunk-RO6COWZH.mjs.map
53
+ //# sourceMappingURL=chunk-ODV3IWXD.mjs.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  json
3
- } from "./chunk-6NJ65PSU.mjs";
3
+ } from "./chunk-VCOKOQFW.mjs";
4
4
  import {
5
5
  validate
6
6
  } from "./chunk-2KZ5UP6A.mjs";
@@ -37,4 +37,4 @@ export {
37
37
  Struct,
38
38
  isStruct
39
39
  };
40
- //# sourceMappingURL=chunk-TZYSQJ2N.mjs.map
40
+ //# sourceMappingURL=chunk-UZHMXDAO.mjs.map
@@ -26,6 +26,7 @@ var json = {
26
26
  },
27
27
  set: (subject, key = "", value) => isEmpty(key) ? subject : value !== void 0 ? { ...subject, ...{ [key]: value } } : json.delete(subject, key),
28
28
  omit: (subject, ...keys) => keys.reduce((js, k) => json.delete(js, k), json.parse(subject)),
29
+ pick: (subject, ...keys) => keys.reduce((js, k) => json.set(js, k, subject[k]), {}),
29
30
  defaults: (options = {}, defaults = {}) => json.merge(defaults, options),
30
31
  isSubset: (subject, subset) => !entries(subset).some(([k, v]) => subject[k] !== v)
31
32
  };
@@ -52,4 +53,4 @@ export {
52
53
  asJson,
53
54
  any
54
55
  };
55
- //# sourceMappingURL=chunk-6NJ65PSU.mjs.map
56
+ //# sourceMappingURL=chunk-VCOKOQFW.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/types/Json.ts"],"sourcesContent":["import { isA } from './IsA';\nimport { isEmpty, isObject } from './Is';\nimport { Get, ofGet } from './Get';\nimport { ifDefined } from '../utils/If';\nimport { TypeGuard } from './TypeGuard';\nimport { entries } from './Object';\n\nexport type JsonValue = string | number | boolean | null | Json | JsonValue[];\nexport type Json = { [key: string]: JsonValue };\n\nexport const isJson: TypeGuard<{ toJSON: () => Json }> = (subject?: unknown): subject is { toJSON: () => Json } =>\n isA<{ toJSON: () => Json }>(subject, 'toJSON');\n\nexport const json = {\n parse: <T extends Json = Json>(subject: unknown): T => JSON.parse(JSON.stringify(subject ?? {})),\n merge: (...subjects: unknown[]): Json => json.parse(subjects.map(s => asJson(s, s => json.parse(s))).reduce((js, j) => ({ ...js, ...j }), {})),\n delete: <T extends Json = Json>(subject: T, key: string): T => {\n ifDefined(subject, () => delete (subject as any)[key]);\n return subject;\n },\n set: <T extends Json = Json>(subject: T, key = '', value?: unknown): T =>\n isEmpty(key) ? subject : value !== undefined ? { ...(subject as any), ...{ [key]: value as JsonValue } } : json.delete(subject, key),\n omit: <T extends Json = Json>(subject: T, ...keys: string[]): T => keys.reduce((js, k) => json.delete(js, k), json.parse<T>(subject)),\n pick: <T extends Json = Json>(subject: T, ...keys: string[]): T => keys.reduce((js, k) => json.set(js, k, (subject as any)[k]), {} as T),\n defaults: <T extends Json = Json>(options: Partial<T> = {}, defaults: Partial<T> = {}): T => json.merge(defaults, options) as T,\n isSubset: (subject: Json, subset: Json): boolean => !entries(subset).some(([k, v]) => subject[k] !== v),\n};\n\nexport const toJson = json.merge;\n\nexport const asJson = (j?: unknown, alt: Get<Json> = {}): Json => (isJson(j) ? j.toJSON() : isObject(j) ? (j as Json) : ofGet(alt, j));\n\nclass Any<T extends Json> {\n constructor(readonly value: T) {}\n\n merge = (...subjects: T[]): Any<T> => any<T>(json.merge(this.value, ...subjects) as T);\n delete = (key: keyof T): Any<T> => any<T>(json.delete<T>(this.value, key as string));\n omit = (...keys: (keyof T)[]): Any<T> => any<T>(json.omit<T>(this.value, ...(keys as string[])));\n set = (key: keyof T, value?: unknown): Any<T> => any<T>(json.set(this.value, key as string, value));\n\n toJSON(): Json {\n return this.value;\n }\n}\n\nexport const any = <T extends Json = Json>(value: T): Any<T> => new Any<T>(value);\n"],"mappings":";;;;;;;;;;;;;;;;;;AAUO,IAAM,SAA4C,CAAC,YACxD,IAA4B,SAAS,QAAQ;AAExC,IAAM,OAAO;AAAA,EAClB,OAAO,CAAwB,YAAwB,KAAK,MAAM,KAAK,UAAU,WAAW,CAAC,CAAC,CAAC;AAAA,EAC/F,OAAO,IAAI,aAA8B,KAAK,MAAM,SAAS,IAAI,OAAK,OAAO,GAAG,CAAAA,OAAK,KAAK,MAAMA,EAAC,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,OAAO,EAAE,GAAG,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AAAA,EAC7I,QAAQ,CAAwB,SAAY,QAAmB;AAC7D,cAAU,SAAS,MAAM,OAAQ,QAAgB,GAAG,CAAC;AACrD,WAAO;AAAA,EACT;AAAA,EACA,KAAK,CAAwB,SAAY,MAAM,IAAI,UACjD,QAAQ,GAAG,IAAI,UAAU,UAAU,SAAY,EAAE,GAAI,SAAiB,GAAG,EAAE,CAAC,GAAG,GAAG,MAAmB,EAAE,IAAI,KAAK,OAAO,SAAS,GAAG;AAAA,EACrI,MAAM,CAAwB,YAAe,SAAsB,KAAK,OAAO,CAAC,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,GAAG,KAAK,MAAS,OAAO,CAAC;AAAA,EACpI,MAAM,CAAwB,YAAe,SAAsB,KAAK,OAAO,CAAC,IAAI,MAAM,KAAK,IAAI,IAAI,GAAI,QAAgB,CAAC,CAAC,GAAG,CAAC,CAAM;AAAA,EACvI,UAAU,CAAwB,UAAsB,CAAC,GAAG,WAAuB,CAAC,MAAS,KAAK,MAAM,UAAU,OAAO;AAAA,EACzH,UAAU,CAAC,SAAe,WAA0B,CAAC,QAAQ,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC;AACxG;AAEO,IAAM,SAAS,KAAK;AAEpB,IAAM,SAAS,CAAC,GAAa,MAAiB,CAAC,MAAa,OAAO,CAAC,IAAI,EAAE,OAAO,IAAI,SAAS,CAAC,IAAK,IAAa,MAAM,KAAK,CAAC;AAEpI,IAAM,MAAN,MAA0B;AAAA,EACxB,YAAqB,OAAU;AAAV;AAAA,EAAW;AAAA,EAEhC,QAAQ,IAAI,aAA0B,IAAO,KAAK,MAAM,KAAK,OAAO,GAAG,QAAQ,CAAM;AAAA,EACrF,SAAS,CAAC,QAAyB,IAAO,KAAK,OAAU,KAAK,OAAO,GAAa,CAAC;AAAA,EACnF,OAAO,IAAI,SAA8B,IAAO,KAAK,KAAQ,KAAK,OAAO,GAAI,IAAiB,CAAC;AAAA,EAC/F,MAAM,CAAC,KAAc,UAA4B,IAAO,KAAK,IAAI,KAAK,OAAO,KAAe,KAAK,CAAC;AAAA,EAElG,SAAe;AACb,WAAO,KAAK;AAAA,EACd;AACF;AAEO,IAAM,MAAM,CAAwB,UAAqB,IAAI,IAAO,KAAK;","names":["s"]}
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-UR544PJT.mjs";
8
8
  import {
9
9
  Struct
10
- } from "./chunk-TZYSQJ2N.mjs";
10
+ } from "./chunk-UZHMXDAO.mjs";
11
11
  import {
12
12
  choose
13
13
  } from "./chunk-2KZ5UP6A.mjs";
@@ -47,4 +47,4 @@ __decorateClass([
47
47
  export {
48
48
  Audit
49
49
  };
50
- //# sourceMappingURL=chunk-DV7QIJRF.mjs.map
50
+ //# sourceMappingURL=chunk-ZOT3U45L.mjs.map
@@ -4,9 +4,9 @@ import {
4
4
  SortCondition,
5
5
  isSortCondition,
6
6
  toCondition
7
- } from "../chunk-RO6COWZH.mjs";
7
+ } from "../chunk-ODV3IWXD.mjs";
8
8
  import "../chunk-MDXL65W4.mjs";
9
- import "../chunk-6NJ65PSU.mjs";
9
+ import "../chunk-VCOKOQFW.mjs";
10
10
  import "../chunk-H2762RTS.mjs";
11
11
  import "../chunk-A7C3XND3.mjs";
12
12
  import "../chunk-JSON7A4X.mjs";
@@ -4,9 +4,9 @@ import {
4
4
  import {
5
5
  SortCondition,
6
6
  toCondition
7
- } from "../chunk-RO6COWZH.mjs";
7
+ } from "../chunk-ODV3IWXD.mjs";
8
8
  import "../chunk-MDXL65W4.mjs";
9
- import "../chunk-6NJ65PSU.mjs";
9
+ import "../chunk-VCOKOQFW.mjs";
10
10
  import "../chunk-H2762RTS.mjs";
11
11
  import "../chunk-A7C3XND3.mjs";
12
12
  import "../chunk-JSON7A4X.mjs";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  Audit
3
- } from "../chunk-DV7QIJRF.mjs";
3
+ } from "../chunk-ZOT3U45L.mjs";
4
4
  import "../chunk-RBQOVMPC.mjs";
5
5
  import "../chunk-UR544PJT.mjs";
6
6
  import "../chunk-JQQGQCYH.mjs";
7
7
  import "../chunk-ADJAEGCT.mjs";
8
- import "../chunk-TZYSQJ2N.mjs";
9
- import "../chunk-6NJ65PSU.mjs";
8
+ import "../chunk-UZHMXDAO.mjs";
9
+ import "../chunk-VCOKOQFW.mjs";
10
10
  import "../chunk-2KZ5UP6A.mjs";
11
11
  import "../chunk-OFGI5FLG.mjs";
12
12
  import "../chunk-NCEWAKOZ.mjs";
@@ -8,10 +8,10 @@ import {
8
8
  import "../chunk-ADJAEGCT.mjs";
9
9
  import {
10
10
  Struct
11
- } from "../chunk-TZYSQJ2N.mjs";
11
+ } from "../chunk-UZHMXDAO.mjs";
12
12
  import {
13
13
  json
14
- } from "../chunk-6NJ65PSU.mjs";
14
+ } from "../chunk-VCOKOQFW.mjs";
15
15
  import "../chunk-2KZ5UP6A.mjs";
16
16
  import "../chunk-OFGI5FLG.mjs";
17
17
  import "../chunk-NCEWAKOZ.mjs";
@@ -4,7 +4,7 @@ import {
4
4
  import "../chunk-LXQQ5N6S.mjs";
5
5
  import {
6
6
  Audit
7
- } from "../chunk-DV7QIJRF.mjs";
7
+ } from "../chunk-ZOT3U45L.mjs";
8
8
  import {
9
9
  required
10
10
  } from "../chunk-RBQOVMPC.mjs";
@@ -13,10 +13,10 @@ import "../chunk-JQQGQCYH.mjs";
13
13
  import "../chunk-ADJAEGCT.mjs";
14
14
  import {
15
15
  Struct
16
- } from "../chunk-TZYSQJ2N.mjs";
16
+ } from "../chunk-UZHMXDAO.mjs";
17
17
  import {
18
18
  json
19
- } from "../chunk-6NJ65PSU.mjs";
19
+ } from "../chunk-VCOKOQFW.mjs";
20
20
  import "../chunk-2KZ5UP6A.mjs";
21
21
  import "../chunk-OFGI5FLG.mjs";
22
22
  import "../chunk-NCEWAKOZ.mjs";
@@ -3,7 +3,7 @@ import {
3
3
  } from "../chunk-ROTFIQND.mjs";
4
4
  import {
5
5
  toJson
6
- } from "../chunk-6NJ65PSU.mjs";
6
+ } from "../chunk-VCOKOQFW.mjs";
7
7
  import {
8
8
  when
9
9
  } from "../chunk-2KZ5UP6A.mjs";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  Struct,
3
3
  isStruct
4
- } from "../chunk-TZYSQJ2N.mjs";
5
- import "../chunk-6NJ65PSU.mjs";
4
+ } from "../chunk-UZHMXDAO.mjs";
5
+ import "../chunk-VCOKOQFW.mjs";
6
6
  import "../chunk-2KZ5UP6A.mjs";
7
7
  import "../chunk-OFGI5FLG.mjs";
8
8
  import "../chunk-NCEWAKOZ.mjs";
package/dist/index.js CHANGED
@@ -655,6 +655,7 @@ var json = {
655
655
  },
656
656
  set: (subject, key = "", value) => isEmpty(key) ? subject : value !== void 0 ? { ...subject, ...{ [key]: value } } : json.delete(subject, key),
657
657
  omit: (subject, ...keys2) => keys2.reduce((js, k) => json.delete(js, k), json.parse(subject)),
658
+ pick: (subject, ...keys2) => keys2.reduce((js, k) => json.set(js, k, subject[k]), {}),
658
659
  defaults: (options = {}, defaults = {}) => json.merge(defaults, options),
659
660
  isSubset: (subject, subset) => !entries(subset).some(([k, v]) => subject[k] !== v)
660
661
  };