@thisisagile/easy 8.24.0 → 8.29.0

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.
@@ -18,7 +18,8 @@ export declare class List<T = unknown> extends Array<T> {
18
18
  mapDefined: <U>(f: (value: T, index: number, array: T[]) => U, params?: unknown) => List<NonNullable<U>>;
19
19
  distinct: () => List<T>;
20
20
  filter: (p: (value: T, index: number, array: T[]) => unknown, params?: unknown) => List<T>;
21
- byId: (id: Id) => List<T>;
21
+ sum: (p: (t: T) => number) => number;
22
+ byId: (id: Id) => T;
22
23
  add: (...items: (T | T[])[]) => this;
23
24
  remove: (item: T) => List<T>;
24
25
  switch: (item: T) => List<T>;
@@ -26,7 +26,8 @@ class List extends Array {
26
26
  this.mapDefined = (f, params) => this.map(f, params).defined();
27
27
  this.distinct = () => this.filter((i, index) => this.indexOf(i) === index);
28
28
  this.filter = (p, params) => (0, exports.toList)(super.filter(p, params));
29
- this.byId = (id) => this.filter(i => i.id === id);
29
+ this.sum = (p) => this.reduce((sum, i) => sum + p(i), 0);
30
+ this.byId = (id) => this.first(i => i.id === id);
30
31
  this.add = (...items) => {
31
32
  super.push(...(0, Array_1.toArray)(...items));
32
33
  return this;
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/types/List.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/types/List.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy",
3
- "version": "8.24.0",
3
+ "version": "8.29.0",
4
4
  "description": "Straightforward library for building domain-driven microservice architectures",
5
5
  "author": "Sander Hoogendoorn",
6
6
  "license": "MIT",
@@ -31,7 +31,7 @@
31
31
  "access": "public"
32
32
  },
33
33
  "devDependencies": {
34
- "@thisisagile/easy-test": "8.24.0",
34
+ "@thisisagile/easy-test": "8.29.0",
35
35
  "@types/form-urlencoded": "^4.4.0",
36
36
  "@types/jsonwebtoken": "^8.5.8",
37
37
  "@types/validator": "^13.7.0"
package/src/types/List.ts CHANGED
@@ -39,7 +39,9 @@ export class List<T = unknown> extends Array<T> {
39
39
 
40
40
  filter = (p: (value: T, index: number, array: T[]) => unknown, params?: unknown): List<T> => toList<T>(super.filter(p, params));
41
41
 
42
- byId = (id: Id): List<T> => this.filter(i => (i as any).id === id);
42
+ sum = (p: (t: T) => number): number => this.reduce((sum: number, i) => sum + p(i), 0);
43
+
44
+ byId = (id: Id): T => this.first(i => (i as any).id === id);
43
45
 
44
46
  add = (...items: (T | T[])[]): this => {
45
47
  super.push(...toArray(...items));