@thisisagile/easy 8.43.0 → 8.44.4

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 +1 @@
1
- {"version":3,"file":"Repo.js","sourceRoot":"","sources":["../../src/domain/Repo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Repo.js","sourceRoot":"","sources":["../../src/domain/Repo.ts"],"names":[],"mappings":"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"}
@@ -10,10 +10,10 @@ export declare abstract class Enum implements Validatable {
10
10
  protected constructor(name: string, id?: Id, code?: string);
11
11
  get isValid(): boolean;
12
12
  static all<E extends Enum>(): List<E>;
13
- static byId<E extends Enum>(id: Id, alt?: Get<E, unknown>): E;
14
- static byIds<T extends Enum>(ids?: Id[]): List<T>;
15
13
  static filter<E extends Enum>(p: (value: E, index: number, array: E[]) => unknown, params?: unknown): List<E>;
16
14
  static first<E extends Enum>(p?: (value: E, index: number, array: E[]) => unknown, params?: unknown): E;
15
+ static byIds<E extends Enum>(ids?: Id[]): List<E>;
16
+ static byId<E extends Enum>(id: Id, alt?: Get<E, unknown>): E;
17
17
  equals<E extends Enum | Id>(other: E): boolean;
18
18
  isIn<E extends Enum>(...items: E[]): boolean;
19
19
  toJSON(): JsonValue;
@@ -19,22 +19,18 @@ class Enum {
19
19
  .values()
20
20
  .filter((e) => (0, exports.isEnum)(e));
21
21
  }
22
- static byId(id, alt) {
23
- return ((0, Meta_1.meta)(this)
24
- .values()
25
- .first((e) => (0, exports.isEnum)(e) && e.equals(id)) ?? (0, Get_1.ofGet)(alt));
26
- }
27
- static byIds(ids) {
28
- return (0, Meta_1.meta)(this)
29
- .values()
30
- .filter((e) => (0, exports.isEnum)(e) && ids?.some(i => e.equals(i)));
31
- }
32
22
  static filter(p, params) {
33
23
  return this.all().filter(p, params);
34
24
  }
35
25
  static first(p, params) {
36
26
  return this.all().first(p, params);
37
27
  }
28
+ static byIds(ids) {
29
+ return this.filter(e => ids?.some(i => e.equals(i)));
30
+ }
31
+ static byId(id, alt) {
32
+ return this.first((e => e.equals(id))) ?? (0, Get_1.ofGet)(alt);
33
+ }
38
34
  equals(other) {
39
35
  return this.id === ((0, exports.isEnum)(other) ? other.id : other);
40
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Enum.js","sourceRoot":"","sources":["../../src/types/Enum.ts"],"names":[],"mappings":";;;AAEA,+BAA6B;AAC7B,iCAA8B;AAC9B,6BAAiC;AAGjC,+BAAmC;AAEnC,MAAsB,IAAI;IACxB,YAA+B,IAAY,EAAW,KAAS,IAAI,CAAC,WAAW,EAAE,EAAW,OAAe,EAAE,CAAC,QAAQ,EAAE;QAAzF,SAAI,GAAJ,IAAI,CAAQ;QAAW,OAAE,GAAF,EAAE,CAAyB;QAAW,SAAI,GAAJ,IAAI,CAAwB;IAAG,CAAC;IAE5H,IAAI,OAAO;QACT,OAAO,IAAA,cAAS,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,GAAG;QACR,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC;aACd,MAAM,EAAK;aACX,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,IAAA,cAAM,EAAC,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,IAAI,CAAiB,EAAM,EAAE,GAAqB;QACvD,OAAO,CACL,IAAA,WAAI,EAAC,IAAI,CAAC;aACP,MAAM,EAAK;aACX,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,IAAA,cAAM,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,IAAA,WAAK,EAAC,GAAG,CAAC,CAClE,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAiB,GAAU;QACrC,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC;aACd,MAAM,EAAK;aACX,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,IAAA,cAAM,EAAC,CAAC,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,CAAC,MAAM,CAAiB,CAAmD,EAAE,MAAgB;QACjG,OAAO,IAAI,CAAC,GAAG,EAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,KAAK,CAAiB,CAAoD,EAAE,MAAgB;QACjG,OAAO,IAAI,CAAC,GAAG,EAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAsB,KAAQ;QAClC,OAAO,IAAI,CAAC,EAAE,KAAK,CAAC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAiB,GAAG,KAAU;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;CACF;AAlDD,oBAkDC;AAEM,MAAM,MAAM,GAAG,CAAC,CAAW,EAAa,EAAE,CAAC,IAAA,cAAS,EAAC,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,IAAA,UAAI,EAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAA9G,QAAA,MAAM,UAAwG"}
1
+ {"version":3,"file":"Enum.js","sourceRoot":"","sources":["../../src/types/Enum.ts"],"names":[],"mappings":";;;AAEA,+BAA6B;AAC7B,iCAA8B;AAC9B,6BAAiC;AAGjC,+BAAmC;AAEnC,MAAsB,IAAI;IACxB,YAA+B,IAAY,EAAW,KAAS,IAAI,CAAC,WAAW,EAAE,EAAW,OAAe,EAAE,CAAC,QAAQ,EAAE;QAAzF,SAAI,GAAJ,IAAI,CAAQ;QAAW,OAAE,GAAF,EAAE,CAAyB;QAAW,SAAI,GAAJ,IAAI,CAAwB;IACxH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAA,cAAS,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,CAAC,GAAG;QACR,OAAO,IAAA,WAAI,EAAC,IAAI,CAAC;aACd,MAAM,EAAK;aACX,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,IAAA,cAAM,EAAC,CAAC,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,MAAM,CAAiB,CAAmD,EAAE,MAAgB;QACjG,OAAO,IAAI,CAAC,GAAG,EAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,KAAK,CAAiB,CAAoD,EAAE,MAAgB;QACjG,OAAO,IAAI,CAAC,GAAG,EAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,KAAK,CAAiB,GAAU;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,IAAI,CAAiB,EAAM,EAAE,GAAqB;QACvD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAA,WAAK,EAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAsB,KAAQ;QAClC,OAAO,IAAI,CAAC,EAAE,KAAK,CAAC,IAAA,cAAM,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAiB,GAAG,KAAU;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,EAAE,CAAC;IACjB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;CACF;AA7CD,oBA6CC;AAEM,MAAM,MAAM,GAAG,CAAC,CAAW,EAAa,EAAE,CAAC,IAAA,cAAS,EAAC,CAAC,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,IAAA,UAAI,EAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAA9G,QAAA,MAAM,UAAwG"}
@@ -15,6 +15,7 @@ export declare class List<T = unknown> extends Array<T> {
15
15
  overlaps: (...items: ArrayLike<T>) => boolean;
16
16
  toJSON: () => Json[];
17
17
  map: <U>(f: (value: T, index: number, array: T[]) => U, params?: unknown) => List<U>;
18
+ flatMap: <U, This = unknown>(f: (this: This, value: T, index: number, array: T[]) => U | readonly U[], params?: This | undefined) => List<U>;
18
19
  mapDefined: <U>(f: (value: T, index: number, array: T[]) => U, params?: unknown) => List<NonNullable<U>>;
19
20
  mapAsync: (f: (i: T) => Promise<T>) => Promise<List<T>>;
20
21
  distinct: () => List<T>;
@@ -24,6 +24,7 @@ class List extends Array {
24
24
  return a;
25
25
  }, new Array());
26
26
  this.map = (f, params) => (0, exports.toList)(super.map(f, params));
27
+ this.flatMap = (f, params) => (0, exports.toList)(super.flatMap(f, params));
27
28
  this.mapDefined = (f, params) => this.map(f, params).defined();
28
29
  this.mapAsync = (f) => Promise.all(super.map(e => f(e))).then(a => (0, exports.toList)(a));
29
30
  this.distinct = () => this.filter((i, index) => this.indexOf(i) === index);
@@ -48,7 +49,7 @@ class List extends Array {
48
49
  }
49
50
  }
50
51
  exports.List = List;
51
- const toList = (...items) => new List(...(0, Array_1.toArray)(...items));
52
+ const toList = (...items) => new List().add(...items);
52
53
  exports.toList = toList;
53
54
  const isList = (l) => (0, Is_1.isDefined)(l) && (0, Is_1.isArray)(l) && (0, IsA_1.isA)(l, 'first', 'last', 'asc', 'desc');
54
55
  exports.isList = isList;
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sourceRoot":"","sources":["../../src/types/List.ts"],"names":[],"mappings":";;;AAAA,mCAAwE;AAExE,iCAAoC;AACpC,6BAAmD;AACnD,+BAA4B;AAC5B,+BAAgD;AAEhD,iCAAkC;AAElC,MAAa,IAAkB,SAAQ,KAAQ;IAA/C;;QACE,QAAG,GAAG,CAAC,CAAsB,EAAW,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAA,gBAAU,EAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAA,gBAAU,EAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnH,SAAI,GAAG,CAAC,CAAsB,EAAW,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,IAAA,gBAAU,EAAC,EAAE,EAAE,CAAC,CAAC,GAAG,IAAA,gBAAU,EAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpH,UAAK,GAAG,CAAC,CAAoD,EAAE,MAAgB,EAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAEtI,YAAO,GAAG,CAAC,KAAQ,EAAW,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QAExD,SAAI,GAAG,CAAC,CAAoD,EAAE,MAAgB,EAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1I,SAAI,GAAG,CAAC,CAAoD,EAAE,MAAgB,EAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1I,SAAI,GAAG,CAAC,CAAoD,EAAE,MAAgB,EAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAElJ,WAAM,GAAG,CAAC,KAAQ,EAAW,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;QAEtD,aAAQ,GAAG,CAAC,GAAG,KAAmB,EAAW,EAAE,CAAC,IAAA,cAAM,EAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEvG,WAAM,GAAG,GAAW,EAAE,CACpB,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACnB,CAAC,CAAC,IAAI,CAAC,WAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtB,OAAO,CAAC,CAAC;QACX,CAAC,EAAE,IAAI,KAAK,EAAQ,CAAC,CAAC;QAExB,QAAG,GAAG,CAAI,CAA6C,EAAE,MAAgB,EAAW,EAAE,CAAC,IAAA,cAAM,EAAI,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAEvH,eAAU,GAAG,CAAI,CAA6C,EAAE,MAAgB,EAAwB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC;QAEzI,aAAQ,GAAG,CAAC,CAAuB,EAAoB,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,cAAM,EAAI,CAAC,CAAC,CAAC,CAAC;QAEpH,aAAQ,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC;QAE/E,WAAM,GAAG,CAAC,CAAmD,EAAE,MAAgB,EAAW,EAAE,CAAC,IAAA,cAAM,EAAI,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAEhI,QAAG,GAAG,CAAC,CAAmB,EAAU,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtF,SAAI,GAAG,CAAC,EAAM,EAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,eAAQ,EAAE,CAAS,CAAC,EAAE,CAAC,KAAK,IAAA,eAAQ,EAAC,EAAE,CAAC,CAAC,CAAC;QAEhF,QAAG,GAAG,CAAC,GAAG,KAAkB,EAAQ,EAAE;YACpC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAA,eAAO,EAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,WAAM,GAAG,CAAC,IAAO,EAAW,EAAE;YAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;gBACd,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aACvB;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QAEF,WAAM,GAAG,CAAC,IAAO,EAAW,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QAE1F,YAAO,GAAG,GAAyB,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAA,cAAS,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAA,cAAM,GAAkB,CAAC,CAAC;QAErH,aAAQ,GAAG,CAAC,GAAY,EAAQ,EAAE,CAAC,IAAA,gBAAa,EAAI,GAAG,EAAE,IAAI,CAAC,CAAC;QAE/D,WAAM,GAAG,CAAC,GAAG,GAAiB,EAAuB,EAAE,CAAC,CAAC,CAAC,IAAA,YAAO,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAA,YAAO,EAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAA,cAAM,EAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrI,CAAC;CAAA;AA3DD,oBA2DC;AAEM,MAAM,MAAM,GAAG,CAAc,GAAG,KAAmB,EAAW,EAAE,CAAC,IAAI,IAAI,CAAI,GAAG,IAAA,eAAO,EAAI,GAAG,KAAK,CAAC,CAAC,CAAC;AAAhG,QAAA,MAAM,UAA0F;AAEtG,MAAM,MAAM,GAAG,CAAI,CAAW,EAAgB,EAAE,CAAC,IAAA,cAAS,EAAC,CAAC,CAAC,IAAI,IAAA,YAAO,EAAC,CAAC,CAAC,IAAI,IAAA,SAAG,EAAU,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAAzH,QAAA,MAAM,UAAmH;AAG/H,MAAM,MAAM,GAAG,CAAI,CAAiB,EAAE,QAA6B,EAAE,EAAW,EAAE,CAAC,IAAA,cAAM,EAAI,IAAA,eAAO,EAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAA1H,QAAA,MAAM,UAAoH"}
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.43.0",
3
+ "version": "8.44.4",
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.43.0",
34
+ "@thisisagile/easy-test": "8.44.4",
35
35
  "@types/form-urlencoded": "^4.4.0",
36
36
  "@types/jsonwebtoken": "^8.5.8",
37
37
  "@types/validator": "^13.7.1"
@@ -35,7 +35,6 @@ export class Repo<T extends Struct> {
35
35
  }
36
36
 
37
37
  add(json: Json): Promise<T> {
38
-
39
38
  return this.extend(new this.ctor(json))
40
39
  .then(i => when(i).not.isValid.reject())
41
40
  .then(i => this.validate(i))
package/src/types/Enum.ts CHANGED
@@ -8,7 +8,8 @@ import { JsonValue } from './Json';
8
8
  import { Get, ofGet } from './Get';
9
9
 
10
10
  export abstract class Enum implements Validatable {
11
- protected constructor(readonly name: string, readonly id: Id = name.toLowerCase(), readonly code: string = id.toString()) {}
11
+ protected constructor(readonly name: string, readonly id: Id = name.toLowerCase(), readonly code: string = id.toString()) {
12
+ }
12
13
 
13
14
  get isValid(): boolean {
14
15
  return isDefined(this.id);
@@ -20,20 +21,6 @@ export abstract class Enum implements Validatable {
20
21
  .filter((e: unknown) => isEnum(e));
21
22
  }
22
23
 
23
- static byId<E extends Enum>(id: Id, alt?: Get<E, unknown>): E {
24
- return (
25
- meta(this)
26
- .values<E>()
27
- .first((e: unknown) => isEnum(e) && e.equals(id)) ?? ofGet(alt)
28
- );
29
- }
30
-
31
- static byIds<T extends Enum>(ids?: Id[]): List<T> {
32
- return meta(this)
33
- .values<T>()
34
- .filter((e: unknown) => isEnum(e) && ids?.some(i => e.equals(i)));
35
- }
36
-
37
24
  static filter<E extends Enum>(p: (value: E, index: number, array: E[]) => unknown, params?: unknown): List<E> {
38
25
  return this.all<E>().filter(p, params);
39
26
  }
@@ -42,6 +29,14 @@ export abstract class Enum implements Validatable {
42
29
  return this.all<E>().first(p, params);
43
30
  }
44
31
 
32
+ static byIds<E extends Enum>(ids?: Id[]): List<E> {
33
+ return this.filter(e => ids?.some(i => e.equals(i)));
34
+ }
35
+
36
+ static byId<E extends Enum>(id: Id, alt?: Get<E, unknown>): E {
37
+ return this.first((e => e.equals(id))) ?? ofGet(alt);
38
+ }
39
+
45
40
  equals<E extends Enum | Id>(other: E): boolean {
46
41
  return this.id === (isEnum(other) ? other.id : other);
47
42
  }
package/src/types/List.ts CHANGED
@@ -34,6 +34,8 @@ export class List<T = unknown> extends Array<T> {
34
34
 
35
35
  map = <U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): List<U> => toList<U>(super.map(f, params));
36
36
 
37
+ flatMap = <U, This = unknown>(f: (this: This, value: T, index: number, array: T[]) => (ReadonlyArray<U> | U), params?: This): List<U> => toList<U>(super.flatMap(f, params));
38
+
37
39
  mapDefined = <U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): List<NonNullable<U>> => this.map(f, params).defined();
38
40
 
39
41
  mapAsync = (f: (i: T) => Promise<T>): Promise<List<T>> => Promise.all(super.map(e => f(e))).then(a => toList<T>(a));
@@ -68,7 +70,7 @@ export class List<T = unknown> extends Array<T> {
68
70
  orElse = (...alt: ArrayLike<T>): List<T> | undefined => (!isEmpty(this) ? this : !isEmpty(...alt) ? toList<T>(...alt) : undefined);
69
71
  }
70
72
 
71
- export const toList = <T = unknown>(...items: ArrayLike<T>): List<T> => new List<T>(...toArray<T>(...items));
73
+ export const toList = <T = unknown>(...items: ArrayLike<T>): List<T> => new List<T>().add(...items);
72
74
 
73
75
  export const isList = <T>(l?: unknown): l is List<T> => isDefined(l) && isArray(l) && isA<List<T>>(l, 'first', 'last', 'asc', 'desc');
74
76