@thisisagile/easy 11.2.10 → 11.3.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.
@@ -22,6 +22,7 @@ export declare class DateTime extends Value<string | undefined> {
22
22
  withZone: (zone: string) => DateTime;
23
23
  toString(): string;
24
24
  toJSON(): JsonValue;
25
+ toFormat: (format: string) => string;
25
26
  toLocale: (locale?: string, format?: string) => string;
26
27
  toFull: (locale?: string) => string;
27
28
  toDate(): Date | undefined;
@@ -17,6 +17,7 @@ class DateTime extends types_1.Value {
17
17
  this.startOf = (unit = 'day') => new DateTime(this.luxon.startOf(unit).toISO());
18
18
  this.endOf = (unit = 'day') => new DateTime(this.luxon.endOf(unit).toISO());
19
19
  this.withZone = (zone) => new DateTime(this.utc.setZone(zone).toISO());
20
+ this.toFormat = (format) => this.luxon.toFormat(format);
20
21
  this.toLocale = (locale = 'nl-NL', format = 'D') => this.luxon.setLocale(locale).toFormat(format);
21
22
  this.toFull = (locale) => this.toLocale(locale, 'DDD');
22
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DateTime.js","sourceRoot":"","sources":["../../../src/domain/values/DateTime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DateTime.js","sourceRoot":"","sources":["../../../src/domain/values/DateTime.ts"],"names":[],"mappings":"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"}
@@ -2,3 +2,6 @@ import { Json } from './Json';
2
2
  export declare type ArrayLike<T> = (T | T[])[];
3
3
  export declare const toArray: <T>(...items: ArrayLike<T>) => T[];
4
4
  export declare const toObject: <T>(key: keyof T, ...items: ArrayLike<T>) => Json;
5
+ export declare const array: {
6
+ merge: (first?: any[], second?: any[], firstKey?: string, secondKey?: string) => any[];
7
+ };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.toObject = exports.toArray = void 0;
3
+ exports.array = exports.toObject = exports.toArray = void 0;
4
4
  const Is_1 = require("./Is");
5
5
  const toArray = (...items) => items.length > 1 ? items : (0, Is_1.isArray)(items[0]) ? items[0] : (0, Is_1.isDefined)(items[0]) ? [items[0]] : [];
6
6
  exports.toArray = toArray;
@@ -9,4 +9,10 @@ const toObject = (key, ...items) => (0, exports.toArray)(...items).reduce((o, i)
9
9
  return o;
10
10
  }, {});
11
11
  exports.toObject = toObject;
12
+ exports.array = {
13
+ merge: (first = [], second = [], firstKey = 'id', secondKey = 'id') => first.map(f => ({
14
+ ...f,
15
+ ...second.find(s => (0, Is_1.isDefined)(s[secondKey]) && (0, Is_1.isDefined)(f[firstKey]) && s[secondKey] === f[firstKey])
16
+ })),
17
+ };
12
18
  //# sourceMappingURL=Array.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Array.js","sourceRoot":"","sources":["../../src/types/Array.ts"],"names":[],"mappings":";;;AAAA,6BAA0C;AAKnC,MAAM,OAAO,GAAG,CAAI,GAAG,KAAmB,EAAO,EAAE,CACxD,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,IAAA,YAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,cAAS,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAD9F,QAAA,OAAO,WACuF;AAEpG,MAAM,QAAQ,GAAG,CAAI,GAAY,EAAE,GAAG,KAAmB,EAAQ,EAAE,CACxE,IAAA,eAAO,EAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,CAAC,EAAE,EAAE;IACrC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACd,OAAO,CAAC,CAAC;AACX,CAAC,EAAE,EAAE,CAAC,CAAC;AAJI,QAAA,QAAQ,YAIZ"}
1
+ {"version":3,"file":"Array.js","sourceRoot":"","sources":["../../src/types/Array.ts"],"names":[],"mappings":";;;AAAA,6BAA0C;AAKnC,MAAM,OAAO,GAAG,CAAI,GAAG,KAAmB,EAAO,EAAE,CACxD,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,KAAa,CAAC,CAAC,CAAC,IAAA,YAAO,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAA,cAAS,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAD9F,QAAA,OAAO,WACuF;AAEpG,MAAM,QAAQ,GAAG,CAAI,GAAY,EAAE,GAAG,KAAmB,EAAQ,EAAE,CACxE,IAAA,eAAO,EAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,CAAC,EAAE,EAAE;IACrC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACd,OAAO,CAAC,CAAC;AACX,CAAC,EAAE,EAAE,CAAC,CAAC;AAJI,QAAA,QAAQ,YAIZ;AAEI,QAAA,KAAK,GAAG;IACnB,KAAK,EAAE,CAAC,QAAe,EAAE,EAAE,SAAgB,EAAE,EAAE,QAAQ,GAAG,IAAI,EAAE,SAAS,GAAG,IAAI,EAAS,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1G,GAAG,CAAC;QACJ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,cAAS,EAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,IAAA,cAAS,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;KACvG,CAAC,CAAC;CACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thisisagile/easy",
3
- "version": "11.2.10",
3
+ "version": "11.3.2",
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": "11.2.10",
34
+ "@thisisagile/easy-test": "11.3.2",
35
35
  "@types/form-urlencoded": "^4.4.0",
36
36
  "@types/jsonwebtoken": "^8.5.8",
37
37
  "@types/luxon": "2.3.2",
@@ -80,6 +80,8 @@ export class DateTime extends Value<string | undefined> {
80
80
  return this.utc.toISO() as unknown as JsonValue;
81
81
  }
82
82
 
83
+ toFormat = (format: string): string => this.luxon.toFormat( format);
84
+
83
85
  toLocale = (locale = 'nl-NL', format = 'D'): string => this.luxon.setLocale(locale).toFormat(format);
84
86
 
85
87
  toFull = (locale?: string): string => this.toLocale(locale, 'DDD');
@@ -11,3 +11,10 @@ export const toObject = <T>(key: keyof T, ...items: ArrayLike<T>): Json =>
11
11
  o[i[key]] = i;
12
12
  return o;
13
13
  }, {});
14
+
15
+ export const array = {
16
+ merge: (first: any[] = [], second: any[] = [], firstKey = 'id', secondKey = 'id'): any[] => first.map(f => ({
17
+ ...f,
18
+ ...second.find(s => isDefined(s[secondKey]) && isDefined(f[firstKey]) && s[secondKey] === f[firstKey])
19
+ })),
20
+ };