@futdevpro/fsm-dynamo 1.9.35 → 1.9.37
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.
- package/build/_collections/utils/array.util.d.ts +1 -0
- package/build/_collections/utils/array.util.d.ts.map +1 -1
- package/build/_collections/utils/array.util.js +3 -0
- package/build/_collections/utils/array.util.js.map +1 -1
- package/build/_collections/utils/math/math.util.d.ts +1 -0
- package/build/_collections/utils/math/math.util.d.ts.map +1 -1
- package/build/_collections/utils/math/math.util.js +8 -1
- package/build/_collections/utils/math/math.util.js.map +1 -1
- package/build/_collections/utils/math/vector2.util.d.ts +5 -0
- package/build/_collections/utils/math/vector2.util.d.ts.map +1 -1
- package/build/_collections/utils/math/vector2.util.js +14 -0
- package/build/_collections/utils/math/vector2.util.js.map +1 -1
- package/build/_collections/utils/shared.static-service.d.ts +5 -0
- package/build/_collections/utils/shared.static-service.d.ts.map +1 -1
- package/build/_collections/utils/shared.static-service.js +25 -0
- package/build/_collections/utils/shared.static-service.js.map +1 -1
- package/build/_collections/utils/utilities.util.d.ts +24 -0
- package/build/_collections/utils/utilities.util.d.ts.map +1 -1
- package/build/_collections/utils/utilities.util.js +132 -6
- package/build/_collections/utils/utilities.util.js.map +1 -1
- package/futdevpro-fsm-dynamo-01.09.37.tgz +0 -0
- package/package.json +1 -1
- package/src/_collections/utils/array.util.ts +4 -0
- package/src/_collections/utils/math/math.util.ts +8 -1
- package/src/_collections/utils/math/vector2.util.ts +21 -0
- package/src/_collections/utils/shared.static-service.ts +28 -0
- package/src/_collections/utils/utilities.util.ts +169 -6
- package/futdevpro-fsm-dynamo-01.09.35.tgz +0 -0
|
@@ -5,6 +5,7 @@ export declare class DyFM_Array {
|
|
|
5
5
|
static asyncFilter<T>(list: T[], filterFunc: (element: T, index?: number, array?: T[]) => Promise<boolean>): Promise<T[]>;
|
|
6
6
|
static asyncMap<T, R>(list: T[], mapFunc: (element: T, index?: number, array?: T[]) => Promise<R>): Promise<R[]>;
|
|
7
7
|
static last<T>(array: T[]): T;
|
|
8
|
+
static lastString(array: string): string;
|
|
8
9
|
static remove<T>(array: T[], element: T): T[];
|
|
9
10
|
static findNRemove<T>(array: T[], func: (element: T, index?: number, array?: T[]) => boolean): T[];
|
|
10
11
|
static shuffle<T>(array: T[]): T[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.util.d.ts","sourceRoot":"","sources":["../../../src/_collections/utils/array.util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAItE,qBAAa,UAAU;WAER,YAAY,CAAC,CAAC,EACzB,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAC/D,OAAO,CAAC,IAAI,CAAC;WAMH,qBAAqB,CAAC,CAAC,EAClC,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAC/D,OAAO,CAAC,IAAI,CAAC;WAIH,WAAW,CAAC,CAAC,EACxB,IAAI,EAAE,CAAC,EAAE,EACT,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GACxE,OAAO,CAAC,CAAC,EAAE,CAAC;WAYF,QAAQ,CAAC,CAAC,EAAE,CAAC,EACxB,IAAI,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,GAC/D,OAAO,CAAC,CAAC,EAAE,CAAC;IAUf,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC;IAI7B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE;IAU7C,MAAM,CAAC,WAAW,CAAC,CAAC,EAClB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,GACzD,CAAC,EAAE;IAUN,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;IAclC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,EAAE;IAIpE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAU/E,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE;IAM/D;;;;SAIK;IACL,MAAM,CAAC,yBAAyB,CAC9B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,OAAe,GACvB,MAAM;IAcT,yBAAyB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAsB1D,cAAc,MAAA;CAEf"}
|
|
1
|
+
{"version":3,"file":"array.util.d.ts","sourceRoot":"","sources":["../../../src/_collections/utils/array.util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAItE,qBAAa,UAAU;WAER,YAAY,CAAC,CAAC,EACzB,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAC/D,OAAO,CAAC,IAAI,CAAC;WAMH,qBAAqB,CAAC,CAAC,EAClC,IAAI,EAAE,CAAC,EAAE,EACT,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,GAC/D,OAAO,CAAC,IAAI,CAAC;WAIH,WAAW,CAAC,CAAC,EACxB,IAAI,EAAE,CAAC,EAAE,EACT,UAAU,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GACxE,OAAO,CAAC,CAAC,EAAE,CAAC;WAYF,QAAQ,CAAC,CAAC,EAAE,CAAC,EACxB,IAAI,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,GAC/D,OAAO,CAAC,CAAC,EAAE,CAAC;IAUf,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC;IAI7B,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAIxC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE;IAU7C,MAAM,CAAC,WAAW,CAAC,CAAC,EAClB,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,KAAK,OAAO,GACzD,CAAC,EAAE;IAUN,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;IAclC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,EAAE;IAIpE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC;IAU/E,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,EAAE;IAM/D;;;;SAIK;IACL,MAAM,CAAC,yBAAyB,CAC9B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,OAAe,GACvB,MAAM;IAcT,yBAAyB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC;IAsB1D,cAAc,MAAA;CAEf"}
|
|
@@ -29,6 +29,9 @@ class DyFM_Array {
|
|
|
29
29
|
static last(array) {
|
|
30
30
|
return array.length ? array[array.length - 1] : null;
|
|
31
31
|
}
|
|
32
|
+
static lastString(array) {
|
|
33
|
+
return array.length ? array[array.length - 1] : null;
|
|
34
|
+
}
|
|
32
35
|
static remove(array, element) {
|
|
33
36
|
const index = array.indexOf(element);
|
|
34
37
|
if (-1 < index) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.util.js","sourceRoot":"","sources":["../../../src/_collections/utils/array.util.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"array.util.js","sourceRoot":"","sources":["../../../src/_collections/utils/array.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ export declare class DyFM_Math {
|
|
|
2
2
|
static between(value: number, minExclusive: number, maxExclusive: number): boolean;
|
|
3
3
|
static around(value: number, target: number, range: number): boolean;
|
|
4
4
|
static getRandomInt(min: number, max: number): number;
|
|
5
|
+
static readonly toFixed: typeof DyFM_Math.round;
|
|
5
6
|
static round(value: number, decimals?: number): number;
|
|
6
7
|
static numberWithSpaces(x: number): string;
|
|
7
8
|
static numberWithShorters(x: number): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.util.d.ts","sourceRoot":"","sources":["../../../../src/_collections/utils/math/math.util.ts"],"names":[],"mappings":"AASA,qBAAa,SAAS;IAEpB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO;IAIlF,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAIpE,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIrD,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"math.util.d.ts","sourceRoot":"","sources":["../../../../src/_collections/utils/math/math.util.ts"],"names":[],"mappings":"AASA,qBAAa,SAAS;IAEpB,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO;IAIlF,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAIpE,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIrD,MAAM,CAAC,QAAQ,CAAC,OAAO,yBAAc;IACrC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,GAAG,MAAM;IAUzD,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAI1C,MAAM,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAY5C,MAAM,CAAC,2BAA2B,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAIrD,MAAM,CAAC,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM;IAQlD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,MAAM;CAO5D"}
|
|
@@ -11,8 +11,15 @@ class DyFM_Math {
|
|
|
11
11
|
static getRandomInt(min, max) {
|
|
12
12
|
return min + Math.round((max - min) * Math.random());
|
|
13
13
|
}
|
|
14
|
+
static toFixed = this.round;
|
|
14
15
|
static round(value, decimals = 2) {
|
|
15
|
-
|
|
16
|
+
if (0 <= decimals) {
|
|
17
|
+
return Number(value.toFixed(decimals));
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
const factor = Math.pow(10, -decimals);
|
|
21
|
+
return Math.round(value / factor) * factor;
|
|
22
|
+
}
|
|
16
23
|
}
|
|
17
24
|
static numberWithSpaces(x) {
|
|
18
25
|
return x?.toString()?.replace(/\B(?=(\d{3})+(?!\d))/g, ' ');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.util.js","sourceRoot":"","sources":["../../../../src/_collections/utils/math/math.util.ts"],"names":[],"mappings":";;;AASA,MAAa,SAAS;IAEpB,MAAM,CAAC,OAAO,CAAC,KAAa,EAAE,YAAoB,EAAE,YAAoB;QACtE,OAAO,YAAY,GAAG,KAAK,IAAI,KAAK,GAAG,YAAY,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,KAAa,EAAE,MAAc,EAAE,KAAa;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAW,EAAE,GAAW;QAC1C,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAa,EAAE,WAAmB,CAAC;QAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"math.util.js","sourceRoot":"","sources":["../../../../src/_collections/utils/math/math.util.ts"],"names":[],"mappings":";;;AASA,MAAa,SAAS;IAEpB,MAAM,CAAC,OAAO,CAAC,KAAa,EAAE,YAAoB,EAAE,YAAoB;QACtE,OAAO,YAAY,GAAG,KAAK,IAAI,KAAK,GAAG,YAAY,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,KAAa,EAAE,MAAc,EAAE,KAAa;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAW,EAAE,GAAW;QAC1C,OAAO,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAU,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC;IACrC,MAAM,CAAC,KAAK,CAAC,KAAa,EAAE,WAAmB,CAAC;QAC9C,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;YAClB,OAAO,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;YAEvC,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,CAAS;QAC/B,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,CAAS;QACjC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;YACb,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC;QACvB,CAAC;aAAM,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC;YACvB,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACtC,CAAC;aAAM,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC;YAC1B,OAAO,CAAC,CAAC,GAAG,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,MAAM,CAAC,2BAA2B,CAAC,CAAS;QAC1C,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,CAAC,wBAAwB,CAAC,CAAS;QACvC,MAAM,KAAK,GAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAElD,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC,CAAC;QAE7D,OAAO,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,CAAS,EAAE,YAAoB,GAAG;QAChD,MAAM,KAAK,GAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAElD,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;QAEnE,OAAO,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;;AA3DH,8BA4DC"}
|
|
@@ -79,10 +79,15 @@ export declare class DyFM_Vector2_Util implements DyFM_Vector2 {
|
|
|
79
79
|
private calcMagnitude;
|
|
80
80
|
clone?(): DyFM_Vector2_Util;
|
|
81
81
|
static isChanged(a: DyFM_Vector2_Util, b: DyFM_Vector2_Util): boolean;
|
|
82
|
+
static isEqual(a: DyFM_Vector2, b: DyFM_Vector2): boolean;
|
|
82
83
|
static vectorChanged(a: DyFM_Vector2, b: DyFM_Vector2): boolean;
|
|
84
|
+
static equals(a: DyFM_Vector2, b: DyFM_Vector2): boolean;
|
|
83
85
|
static abs(v: DyFM_Vector2): DyFM_Vector2_Util;
|
|
84
86
|
abs?(): this;
|
|
87
|
+
static round(v: DyFM_Vector2, decimals?: number): DyFM_Vector2_Util;
|
|
88
|
+
static toVector2(v: DyFM_Vector2_Util): DyFM_Vector2;
|
|
85
89
|
get(): DyFM_Vector2;
|
|
86
90
|
getVector2: () => DyFM_Vector2;
|
|
91
|
+
toVector2: () => DyFM_Vector2;
|
|
87
92
|
}
|
|
88
93
|
//# sourceMappingURL=vector2.util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector2.util.d.ts","sourceRoot":"","sources":["../../../../src/_collections/utils/math/vector2.util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"vector2.util.d.ts","sourceRoot":"","sources":["../../../../src/_collections/utils/math/vector2.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DyFM_Vector2_Util = void 0;
|
|
4
|
+
const math_util_1 = require("./math.util");
|
|
4
5
|
const trigonometry_util_1 = require("./trigonometry.util");
|
|
5
6
|
/**
|
|
6
7
|
* The main difference between static class functions and instance functions
|
|
@@ -203,19 +204,32 @@ class DyFM_Vector2_Util {
|
|
|
203
204
|
static isChanged(a, b) {
|
|
204
205
|
return a.x !== b.x || a.y !== b.y;
|
|
205
206
|
}
|
|
207
|
+
static isEqual(a, b) {
|
|
208
|
+
return a.x === b.x && a.y === b.y;
|
|
209
|
+
}
|
|
206
210
|
static vectorChanged(a, b) {
|
|
207
211
|
return a.x !== b.x || a.y !== b.y;
|
|
208
212
|
}
|
|
213
|
+
static equals(a, b) {
|
|
214
|
+
return a.x === b.x && a.y === b.y;
|
|
215
|
+
}
|
|
209
216
|
static abs(v) {
|
|
210
217
|
return new DyFM_Vector2_Util(Math.abs(v.x), Math.abs(v.y));
|
|
211
218
|
}
|
|
212
219
|
abs() {
|
|
213
220
|
return this.newXY(Math.abs(this.x), Math.abs(this.y));
|
|
214
221
|
}
|
|
222
|
+
static round(v, decimals = 0) {
|
|
223
|
+
return new DyFM_Vector2_Util(math_util_1.DyFM_Math.round(v.x, decimals), math_util_1.DyFM_Math.round(v.y, decimals));
|
|
224
|
+
}
|
|
225
|
+
static toVector2(v) {
|
|
226
|
+
return (new DyFM_Vector2_Util(v)).get();
|
|
227
|
+
}
|
|
215
228
|
get() {
|
|
216
229
|
return { x: this.x, y: this.y };
|
|
217
230
|
}
|
|
218
231
|
getVector2 = this.get;
|
|
232
|
+
toVector2 = this.get;
|
|
219
233
|
}
|
|
220
234
|
exports.DyFM_Vector2_Util = DyFM_Vector2_Util;
|
|
221
235
|
//# sourceMappingURL=vector2.util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vector2.util.js","sourceRoot":"","sources":["../../../../src/_collections/utils/math/vector2.util.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"vector2.util.js","sourceRoot":"","sources":["../../../../src/_collections/utils/math/vector2.util.ts"],"names":[],"mappings":"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"}
|
|
@@ -68,5 +68,10 @@ export declare class DyFM_Shared {
|
|
|
68
68
|
* @returns modified data
|
|
69
69
|
*/
|
|
70
70
|
static nestRecursiveListedData<T>(parentObj: T, nestedListKey: string, nestIndexes: number[], dataToSet: any): T;
|
|
71
|
+
/**
|
|
72
|
+
* recursive function that returns mutated data structure,
|
|
73
|
+
* with locations at which circular references are found
|
|
74
|
+
*/
|
|
75
|
+
static resolveCirculation<T>(data: T, location?: string[], objs?: any[]): any;
|
|
71
76
|
}
|
|
72
77
|
//# sourceMappingURL=shared.static-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.static-service.d.ts","sourceRoot":"","sources":["../../../src/_collections/utils/shared.static-service.ts"],"names":[],"mappings":"AAGA,qBAAa,WAAW;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;IAgBjE;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,GAAG;IAYtE;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,MAAM;IAe9E;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,MAAM;IAerF;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,GAAG,MAAM;IAmBvF;;;;;;;OAOG;IACH,MAAM,CAAC,uBAAuB,CAAC,CAAC,EAC9B,SAAS,EAAE,CAAC,EACZ,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,GAAG,GACb,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.static-service.d.ts","sourceRoot":"","sources":["../../../src/_collections/utils/shared.static-service.ts"],"names":[],"mappings":"AAGA,qBAAa,WAAW;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;IAgBjE;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,GAAG;IAYtE;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,MAAM;IAe9E;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,MAAM;IAerF;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,GAAG,GAAG,MAAM;IAmBvF;;;;;;;OAOG;IACH,MAAM,CAAC,uBAAuB,CAAC,CAAC,EAC9B,SAAS,EAAE,CAAC,EACZ,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,GAAG,GACb,CAAC;IAiBJ;;;OAGG;IACH,MAAM,CAAC,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,GAAE,MAAM,EAAO,EAAE,IAAI,GAAE,GAAG,EAAO,GAAG,GAAG;CAuBtF"}
|
|
@@ -139,6 +139,31 @@ class DyFM_Shared {
|
|
|
139
139
|
}
|
|
140
140
|
return newData;
|
|
141
141
|
}
|
|
142
|
+
/**
|
|
143
|
+
* recursive function that returns mutated data structure,
|
|
144
|
+
* with locations at which circular references are found
|
|
145
|
+
*/
|
|
146
|
+
static resolveCirculation(data, location = [], objs = []) {
|
|
147
|
+
if (!data || !Array.isArray(data) || typeof data !== 'object') {
|
|
148
|
+
return data;
|
|
149
|
+
}
|
|
150
|
+
const newData = {};
|
|
151
|
+
Object.keys(data).forEach((key) => {
|
|
152
|
+
if (typeof data[key] === 'object' || Array.isArray(data[key])) {
|
|
153
|
+
if (objs.includes(data[key])) {
|
|
154
|
+
newData[key] = location.join('.');
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
objs.push(data[key]);
|
|
158
|
+
newData[key] = this.resolveCirculation(data[key], [...location, key], objs);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
newData[key] = data[key];
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
return newData;
|
|
166
|
+
}
|
|
142
167
|
}
|
|
143
168
|
exports.DyFM_Shared = DyFM_Shared;
|
|
144
169
|
//# sourceMappingURL=shared.static-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.static-service.js","sourceRoot":"","sources":["../../../src/_collections/utils/shared.static-service.ts"],"names":[],"mappings":";;;AACA,qDAA8C;AAE9C,MAAa,WAAW;IAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,MAAM,CAAC,UAAU,CAAC,OAAiB,EAAE,KAAiB;QACpD,IAAI,UAAU,GAAG,CAAE,GAAG,OAAO,CAAE,CAAC;QAEhC,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAO,EAAE;YACvC,MAAM,MAAM,GAAG,EAAE,CAAC;YAElB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAc,EAAQ,EAAE;gBACrC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,CAAC,SAAiB,EAAE,cAAwB;QAC9D,IAAI,OAAO,GAAG,IAAA,2BAAU,EAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;QAEvD,cAAc,CAAC,OAAO,CAAC,CAAC,EAAU,EAAQ,EAAE;YAC1C,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;YACxB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAiB,EAAE,QAAkB,EAAE,SAAc;QACnE,MAAM,OAAO,GAAG,IAAA,2BAAU,EAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;QAEzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,CAAE,GAAG,QAAQ,CAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAEjC,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QAC9E,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;QACnC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,SAAiB,EAAE,QAAkB,EAAE,SAAc;QAC1E,MAAM,OAAO,GAAG,IAAA,2BAAU,EAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;QAEzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,CAAE,GAAG,QAAQ,CAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAEjC,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;QACrF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;QACpC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,SAAiB,EAAE,QAAkB,EAAE,UAAe;QAC5E,MAAM,OAAO,GAAG,IAAA,2BAAU,EAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB;QAEzD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,CAAE,GAAG,QAAQ,CAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAEjC,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QACvF,CAAC;aAAM,CAAC;YACN,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAE,UAAU,CAAE,CAAC;YACxC,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,uBAAuB,CAC5B,SAAY,EACZ,aAAqB,EACrB,WAAqB,EACrB,SAAc;QAEd,MAAM,OAAO,GAAG,IAAA,2BAAU,EAAC,SAAS,CAAC,CAAC,CAAC,gCAAgC;QAEvE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,CAAE,GAAG,WAAW,CAAE,CAAC;YACnC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;YAErC,OAAO,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,uBAAuB,CACjE,OAAO,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,SAAS,CACxE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;QACrD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.static-service.js","sourceRoot":"","sources":["../../../src/_collections/utils/shared.static-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,26 @@ export declare function DyFM_clone<T>(object: T): T;
|
|
|
3
3
|
export declare const DyFM_copy: typeof DyFM_clone;
|
|
4
4
|
export declare function DyFM_surfaceClone<T>(object: T): T;
|
|
5
5
|
export declare const DyFM_surfaceCopy: typeof DyFM_surfaceClone;
|
|
6
|
+
export declare function DyFM_deepClone<T>(object: T): T;
|
|
7
|
+
/**
|
|
8
|
+
* A simple object comparison function that uses JSON.stringify() to compare objects.
|
|
9
|
+
*
|
|
10
|
+
* We experienced that sameObjects() function is not working properly for cases when
|
|
11
|
+
* deleting a key from the objects (to prevent strict results).
|
|
12
|
+
* So, we created orderedSameObject() function to prevent that issue.
|
|
13
|
+
* But be aware that, that function is not as fast as sameObjects() function.
|
|
14
|
+
*/
|
|
6
15
|
export declare function DyFM_sameObjects<T>(objA: T, objB: T): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* We experienced that sameObjects() function is not working properly for cases when
|
|
18
|
+
* deleting a key from the objects (to prevent strict results).
|
|
19
|
+
*
|
|
20
|
+
* This function is created to prevent that issue.
|
|
21
|
+
* But be aware that this function is not as fast as sameObjects() function.
|
|
22
|
+
*/
|
|
23
|
+
export declare function DyFM_orderedSameObject<T>(objA: T, objB: T): boolean;
|
|
24
|
+
export declare function DyFM_orderedSameObject2<T>(objA: T, objB: T): boolean;
|
|
25
|
+
export declare function DyFM_sameObjectSurface<T>(objA: T, objB: T): boolean;
|
|
7
26
|
/**
|
|
8
27
|
* sets values if its existing on To, even if its null (but if undefined)
|
|
9
28
|
* @param setOn
|
|
@@ -18,6 +37,11 @@ export declare const DyFM_wait: typeof DyFM_delay;
|
|
|
18
37
|
* because it can cause performance issues.
|
|
19
38
|
*/
|
|
20
39
|
export declare function DyFM_waitUntil(check: () => boolean, interval?: number, timeout?: number): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* WARNING: This function is recommended to use ONLY for limited instances,
|
|
42
|
+
* because it can cause performance issues.
|
|
43
|
+
*/
|
|
44
|
+
export declare function DyFM_waitUntilAsync(check: () => Promise<boolean>, interval?: number, timeout?: number): Promise<void>;
|
|
21
45
|
/**
|
|
22
46
|
* Creates a promise that resolves when the observable emits a value that passes the check function
|
|
23
47
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.util.d.ts","sourceRoot":"","sources":["../../../src/_collections/utils/utilities.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"utilities.util.d.ts","sourceRoot":"","sources":["../../../src/_collections/utils/utilities.util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AASlC,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAW1C;AACD,eAAO,MAAM,SAAS,mBAAa,CAAC;AAEpC,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAiBjD;AACD,eAAO,MAAM,gBAAgB,0BAAoB,CAAC;AAElD,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAuB9C;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAW7D;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CA4CnE;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAgCpE;AAMD,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,OAAO,CAWnE;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI,CAMvE;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpD;AACD,eAAO,MAAM,UAAU,mBAAa,CAAC;AACrC,eAAO,MAAM,SAAS,mBAAa,CAAC;AAEpC;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,MAAM,OAAO,EACpB,QAAQ,GAAE,MAAY,EACtB,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,EAC7B,QAAQ,GAAE,MAAY,EACtB,OAAO,GAAE,MAAc,GACtB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC9B,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,EACzB,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,OAAO,GAC5B,OAAO,CAAC,CAAC,CAAC,CAWZ;AAED,MAAM,MAAM,kBAAkB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;AAE3C;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,CAAC,EAAE,CAAC,EACJ,CAAC,EAAE,CAAC,EACJ,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,GACvB,kBAAkB,CAIpB;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,EACrC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,GAC1B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,kBAAkB,CAEpC;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,QAAQ,KAAA,GAAG,CAAC,EAAE,CAQjD"}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DyFM_JSONListify = exports.DyFM_getSortForTrueFn = exports.DyFM_sortForTrue = exports.DyFM_takeUntil = exports.DyFM_waitUntil = exports.DyFM_wait = exports.DyFM_sleep = exports.DyFM_delay = exports.DyFM_setExistingValuesOnly = exports.DyFM_sameObjects = exports.DyFM_surfaceCopy = exports.DyFM_surfaceClone = exports.DyFM_copy = exports.DyFM_clone = void 0;
|
|
3
|
+
exports.DyFM_JSONListify = exports.DyFM_getSortForTrueFn = exports.DyFM_sortForTrue = exports.DyFM_takeUntil = exports.DyFM_waitUntilAsync = exports.DyFM_waitUntil = exports.DyFM_wait = exports.DyFM_sleep = exports.DyFM_delay = exports.DyFM_setExistingValuesOnly = exports.DyFM_sameObjectSurface = exports.DyFM_orderedSameObject2 = exports.DyFM_orderedSameObject = exports.DyFM_sameObjects = exports.DyFM_deepClone = exports.DyFM_surfaceCopy = exports.DyFM_surfaceClone = exports.DyFM_copy = exports.DyFM_clone = void 0;
|
|
4
|
+
const log_util_1 = require("./log.util");
|
|
4
5
|
const defaultErrorMsg = ' failed. ' +
|
|
5
|
-
'\nThis might be happening
|
|
6
|
-
'
|
|
6
|
+
'\nThis might be happening because the object you trying to clone, ' +
|
|
7
|
+
'contains object hooks for its own objects, therefore its creating an object loop. ' +
|
|
7
8
|
'See further information in the detailed error:\n\n';
|
|
8
9
|
function DyFM_clone(object) {
|
|
9
10
|
try {
|
|
10
11
|
return object ? JSON.parse(JSON.stringify(object)) : object;
|
|
11
12
|
}
|
|
12
13
|
catch (error) {
|
|
13
|
-
|
|
14
|
+
log_util_1.DyFM_Log.error('clone()' + defaultErrorMsg, error);
|
|
14
15
|
throw error;
|
|
15
16
|
}
|
|
16
17
|
}
|
|
@@ -25,22 +26,127 @@ function DyFM_surfaceClone(object) {
|
|
|
25
26
|
return result;
|
|
26
27
|
}
|
|
27
28
|
catch (error) {
|
|
28
|
-
|
|
29
|
+
log_util_1.DyFM_Log.error('surfaceClone()' + defaultErrorMsg, error);
|
|
29
30
|
throw error;
|
|
30
31
|
}
|
|
31
32
|
}
|
|
32
33
|
exports.DyFM_surfaceClone = DyFM_surfaceClone;
|
|
33
34
|
exports.DyFM_surfaceCopy = DyFM_surfaceClone;
|
|
35
|
+
function DyFM_deepClone(object) {
|
|
36
|
+
try {
|
|
37
|
+
const result = {};
|
|
38
|
+
Object.keys(object).forEach((key) => {
|
|
39
|
+
if (typeof object[key] === 'object') {
|
|
40
|
+
result[key] = DyFM_deepClone(object[key]);
|
|
41
|
+
}
|
|
42
|
+
else if (Array.isArray(object[key])) {
|
|
43
|
+
result[key] = object[key].map((item) => DyFM_deepClone(item));
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
result[key] = object[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
log_util_1.DyFM_Log.error('deepClone()' + defaultErrorMsg, error);
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.DyFM_deepClone = DyFM_deepClone;
|
|
57
|
+
/**
|
|
58
|
+
* A simple object comparison function that uses JSON.stringify() to compare objects.
|
|
59
|
+
*
|
|
60
|
+
* We experienced that sameObjects() function is not working properly for cases when
|
|
61
|
+
* deleting a key from the objects (to prevent strict results).
|
|
62
|
+
* So, we created orderedSameObject() function to prevent that issue.
|
|
63
|
+
* But be aware that, that function is not as fast as sameObjects() function.
|
|
64
|
+
*/
|
|
34
65
|
function DyFM_sameObjects(objA, objB) {
|
|
35
66
|
try {
|
|
36
67
|
return JSON.stringify(objA) === JSON.stringify(objB);
|
|
37
68
|
}
|
|
38
69
|
catch (error) {
|
|
39
|
-
|
|
70
|
+
log_util_1.DyFM_Log.error('sameObjects()' + defaultErrorMsg, error);
|
|
40
71
|
throw error;
|
|
41
72
|
}
|
|
42
73
|
}
|
|
43
74
|
exports.DyFM_sameObjects = DyFM_sameObjects;
|
|
75
|
+
/**
|
|
76
|
+
* We experienced that sameObjects() function is not working properly for cases when
|
|
77
|
+
* deleting a key from the objects (to prevent strict results).
|
|
78
|
+
*
|
|
79
|
+
* This function is created to prevent that issue.
|
|
80
|
+
* But be aware that this function is not as fast as sameObjects() function.
|
|
81
|
+
*/
|
|
82
|
+
function DyFM_orderedSameObject(objA, objB) {
|
|
83
|
+
try {
|
|
84
|
+
if (typeof objA !== 'object' ||
|
|
85
|
+
typeof objB !== 'object' ||
|
|
86
|
+
Array.isArray(objA) ||
|
|
87
|
+
Array.isArray(objB) ||
|
|
88
|
+
objA === null ||
|
|
89
|
+
objB === null ||
|
|
90
|
+
objA === undefined ||
|
|
91
|
+
objB === undefined) {
|
|
92
|
+
return JSON.stringify(objA) === JSON.stringify(objB);
|
|
93
|
+
}
|
|
94
|
+
const keysA = Object.keys(objA);
|
|
95
|
+
const keysB = Object.keys(objB);
|
|
96
|
+
if (keysA.length !== keysB.length) {
|
|
97
|
+
return false;
|
|
98
|
+
}
|
|
99
|
+
keysA.sort();
|
|
100
|
+
keysB.sort();
|
|
101
|
+
for (let i = 0; i < keysA.length; i++) {
|
|
102
|
+
if (JSON.stringify(keysA[i]) !== JSON.stringify(keysB[i])) {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
return true;
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
/* try {
|
|
110
|
+
return DyFM_orderedSameObject2(objA, objB);
|
|
111
|
+
} catch (error) { */
|
|
112
|
+
log_util_1.DyFM_Log.error('orderedSameObject()' + defaultErrorMsg, error);
|
|
113
|
+
throw error;
|
|
114
|
+
/* } */
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
exports.DyFM_orderedSameObject = DyFM_orderedSameObject;
|
|
118
|
+
function DyFM_orderedSameObject2(objA, objB) {
|
|
119
|
+
try {
|
|
120
|
+
console.log('using orderedSameObject2');
|
|
121
|
+
if (typeof objA !== 'object' ||
|
|
122
|
+
typeof objB !== 'object' ||
|
|
123
|
+
Array.isArray(objA) ||
|
|
124
|
+
Array.isArray(objB) ||
|
|
125
|
+
objA === null ||
|
|
126
|
+
objB === null ||
|
|
127
|
+
objA === undefined ||
|
|
128
|
+
objB === undefined) {
|
|
129
|
+
return JSON.stringify(objA) === JSON.stringify(objB);
|
|
130
|
+
}
|
|
131
|
+
return JSON.stringify(objA, Object.keys(objA).sort()) === JSON.stringify(objB, Object.keys(objB).sort());
|
|
132
|
+
}
|
|
133
|
+
catch (error) {
|
|
134
|
+
log_util_1.DyFM_Log.error('sameObjects()' + defaultErrorMsg, error);
|
|
135
|
+
throw error;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
exports.DyFM_orderedSameObject2 = DyFM_orderedSameObject2;
|
|
139
|
+
function DyFM_sameObjectSurface(objA, objB) {
|
|
140
|
+
let result = true;
|
|
141
|
+
for (const key in objA) {
|
|
142
|
+
if (objA[key] !== objB[key]) {
|
|
143
|
+
result = false;
|
|
144
|
+
break;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return result;
|
|
148
|
+
}
|
|
149
|
+
exports.DyFM_sameObjectSurface = DyFM_sameObjectSurface;
|
|
44
150
|
/**
|
|
45
151
|
* sets values if its existing on To, even if its null (but if undefined)
|
|
46
152
|
* @param setOn
|
|
@@ -80,6 +186,26 @@ function DyFM_waitUntil(check, interval = 100, timeout = 10000) {
|
|
|
80
186
|
});
|
|
81
187
|
}
|
|
82
188
|
exports.DyFM_waitUntil = DyFM_waitUntil;
|
|
189
|
+
/**
|
|
190
|
+
* WARNING: This function is recommended to use ONLY for limited instances,
|
|
191
|
+
* because it can cause performance issues.
|
|
192
|
+
*/
|
|
193
|
+
function DyFM_waitUntilAsync(check, interval = 100, timeout = 10000) {
|
|
194
|
+
return new Promise((resolve, reject) => {
|
|
195
|
+
const startTime = Date.now();
|
|
196
|
+
const intervalId = setInterval(async () => {
|
|
197
|
+
if (await check()) {
|
|
198
|
+
clearInterval(intervalId);
|
|
199
|
+
resolve();
|
|
200
|
+
}
|
|
201
|
+
else if (Date.now() - startTime > timeout) {
|
|
202
|
+
clearInterval(intervalId);
|
|
203
|
+
reject('timeout');
|
|
204
|
+
}
|
|
205
|
+
}, interval);
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
exports.DyFM_waitUntilAsync = DyFM_waitUntilAsync;
|
|
83
209
|
/**
|
|
84
210
|
* Creates a promise that resolves when the observable emits a value that passes the check function
|
|
85
211
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilities.util.js","sourceRoot":"","sources":["../../../src/_collections/utils/utilities.util.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"utilities.util.js","sourceRoot":"","sources":["../../../src/_collections/utils/utilities.util.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@futdevpro/fsm-dynamo",
|
|
3
|
-
"version": "01.09.
|
|
3
|
+
"version": "01.09.37",
|
|
4
4
|
"description": "Full Stack Model Collection for Dynamic (NodeJS-Typescript) Framework called Dynamo, by Future Development Ltd.",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"prep": "npm i pnpm -g && npm i rimraf nodemon -g",
|
|
@@ -53,6 +53,10 @@ export class DyFM_Array {
|
|
|
53
53
|
return array.length ? array[array.length - 1] : null;
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
+
static lastString(array: string): string {
|
|
57
|
+
return array.length ? array[array.length - 1] : null;
|
|
58
|
+
}
|
|
59
|
+
|
|
56
60
|
static remove<T>(array: T[], element: T): T[] {
|
|
57
61
|
const index = array.indexOf(element);
|
|
58
62
|
|
|
@@ -21,8 +21,15 @@ export class DyFM_Math {
|
|
|
21
21
|
return min + Math.round((max - min) * Math.random());
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
+
static readonly toFixed = this.round;
|
|
24
25
|
static round(value: number, decimals: number = 2): number {
|
|
25
|
-
|
|
26
|
+
if (0 <= decimals) {
|
|
27
|
+
return Number(value.toFixed(decimals));
|
|
28
|
+
} else {
|
|
29
|
+
const factor = Math.pow(10, -decimals);
|
|
30
|
+
|
|
31
|
+
return Math.round(value / factor) * factor;
|
|
32
|
+
}
|
|
26
33
|
}
|
|
27
34
|
|
|
28
35
|
static numberWithSpaces(x: number): string {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
|
|
2
2
|
import { DyFM_Vector2 } from '../../../_models/interfaces/vector2.interface';
|
|
3
|
+
import { DyFM_Math } from './math.util';
|
|
3
4
|
|
|
4
5
|
import { DyFM_Trigonometry } from './trigonometry.util';
|
|
5
6
|
|
|
@@ -249,10 +250,18 @@ export class DyFM_Vector2_Util implements DyFM_Vector2 {
|
|
|
249
250
|
return a.x !== b.x || a.y !== b.y;
|
|
250
251
|
}
|
|
251
252
|
|
|
253
|
+
static isEqual(a: DyFM_Vector2, b: DyFM_Vector2): boolean {
|
|
254
|
+
return a.x === b.x && a.y === b.y;
|
|
255
|
+
}
|
|
256
|
+
|
|
252
257
|
static vectorChanged(a: DyFM_Vector2, b: DyFM_Vector2): boolean {
|
|
253
258
|
return a.x !== b.x || a.y !== b.y;
|
|
254
259
|
}
|
|
255
260
|
|
|
261
|
+
static equals(a: DyFM_Vector2, b: DyFM_Vector2): boolean {
|
|
262
|
+
return a.x === b.x && a.y === b.y;
|
|
263
|
+
}
|
|
264
|
+
|
|
256
265
|
static abs(v: DyFM_Vector2): DyFM_Vector2_Util {
|
|
257
266
|
return new DyFM_Vector2_Util(Math.abs(v.x), Math.abs(v.y));
|
|
258
267
|
}
|
|
@@ -260,10 +269,22 @@ export class DyFM_Vector2_Util implements DyFM_Vector2 {
|
|
|
260
269
|
return this.newXY(Math.abs(this.x), Math.abs(this.y));
|
|
261
270
|
}
|
|
262
271
|
|
|
272
|
+
static round(v: DyFM_Vector2, decimals: number = 0): DyFM_Vector2_Util {
|
|
273
|
+
return new DyFM_Vector2_Util(
|
|
274
|
+
DyFM_Math.round(v.x, decimals),
|
|
275
|
+
DyFM_Math.round(v.y, decimals)
|
|
276
|
+
);
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
static toVector2(v: DyFM_Vector2_Util): DyFM_Vector2 {
|
|
280
|
+
return (new DyFM_Vector2_Util(v)).get();
|
|
281
|
+
}
|
|
282
|
+
|
|
263
283
|
get(): DyFM_Vector2 {
|
|
264
284
|
return { x: this.x, y: this.y };
|
|
265
285
|
}
|
|
266
286
|
getVector2 = this.get;
|
|
287
|
+
toVector2 = this.get;
|
|
267
288
|
}
|
|
268
289
|
|
|
269
290
|
|
|
@@ -164,4 +164,32 @@ export class DyFM_Shared {
|
|
|
164
164
|
|
|
165
165
|
return newData;
|
|
166
166
|
}
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* recursive function that returns mutated data structure,
|
|
170
|
+
* with locations at which circular references are found
|
|
171
|
+
*/
|
|
172
|
+
static resolveCirculation<T>(data: T, location: string[] = [], objs: any[] = []): any {
|
|
173
|
+
if (!data || !Array.isArray(data) || typeof data !== 'object') {
|
|
174
|
+
return data;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
const newData = {};
|
|
178
|
+
|
|
179
|
+
Object.keys(data).forEach((key: string): void => {
|
|
180
|
+
if (typeof data[key] === 'object' || Array.isArray(data[key])) {
|
|
181
|
+
if (objs.includes(data[key])) {
|
|
182
|
+
newData[key] = location.join('.');
|
|
183
|
+
} else {
|
|
184
|
+
objs.push(data[key]);
|
|
185
|
+
newData[key] = this.resolveCirculation(data[key], [ ...location, key ], objs);
|
|
186
|
+
}
|
|
187
|
+
} else {
|
|
188
|
+
newData[key] = data[key];
|
|
189
|
+
}
|
|
190
|
+
});
|
|
191
|
+
|
|
192
|
+
return newData;
|
|
193
|
+
}
|
|
194
|
+
|
|
167
195
|
}
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
+
import { DyFM_Log } from './log.util';
|
|
2
3
|
|
|
3
4
|
const defaultErrorMsg =
|
|
4
5
|
' failed. ' +
|
|
5
|
-
'\nThis might be happening
|
|
6
|
-
'
|
|
6
|
+
'\nThis might be happening because the object you trying to clone, ' +
|
|
7
|
+
'contains object hooks for its own objects, therefore its creating an object loop. ' +
|
|
7
8
|
'See further information in the detailed error:\n\n';
|
|
8
9
|
|
|
9
10
|
export function DyFM_clone<T>(object: T): T {
|
|
10
11
|
try {
|
|
11
12
|
return object ? JSON.parse(JSON.stringify(object)) as T : object;
|
|
12
13
|
} catch (error) {
|
|
13
|
-
|
|
14
|
+
DyFM_Log.error(
|
|
14
15
|
'clone()' + defaultErrorMsg,
|
|
15
16
|
error
|
|
16
17
|
);
|
|
@@ -30,7 +31,7 @@ export function DyFM_surfaceClone<T>(object: T): T {
|
|
|
30
31
|
|
|
31
32
|
return result as T;
|
|
32
33
|
} catch (error) {
|
|
33
|
-
|
|
34
|
+
DyFM_Log.error(
|
|
34
35
|
'surfaceClone()' + defaultErrorMsg,
|
|
35
36
|
error
|
|
36
37
|
);
|
|
@@ -40,11 +41,44 @@ export function DyFM_surfaceClone<T>(object: T): T {
|
|
|
40
41
|
}
|
|
41
42
|
export const DyFM_surfaceCopy = DyFM_surfaceClone;
|
|
42
43
|
|
|
44
|
+
export function DyFM_deepClone<T>(object: T): T {
|
|
45
|
+
try {
|
|
46
|
+
const result = {};
|
|
47
|
+
|
|
48
|
+
Object.keys(object).forEach((key: string): void => {
|
|
49
|
+
if (typeof object[key] === 'object') {
|
|
50
|
+
result[key] = DyFM_deepClone(object[key]);
|
|
51
|
+
} else if (Array.isArray(object[key])) {
|
|
52
|
+
result[key] = object[key].map((item: any): any => DyFM_deepClone(item));
|
|
53
|
+
} else {
|
|
54
|
+
result[key] = object[key];
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
return result as T;
|
|
59
|
+
} catch (error) {
|
|
60
|
+
DyFM_Log.error(
|
|
61
|
+
'deepClone()' + defaultErrorMsg,
|
|
62
|
+
error
|
|
63
|
+
);
|
|
64
|
+
|
|
65
|
+
throw error;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* A simple object comparison function that uses JSON.stringify() to compare objects.
|
|
71
|
+
*
|
|
72
|
+
* We experienced that sameObjects() function is not working properly for cases when
|
|
73
|
+
* deleting a key from the objects (to prevent strict results).
|
|
74
|
+
* So, we created orderedSameObject() function to prevent that issue.
|
|
75
|
+
* But be aware that, that function is not as fast as sameObjects() function.
|
|
76
|
+
*/
|
|
43
77
|
export function DyFM_sameObjects<T>(objA: T, objB: T): boolean {
|
|
44
78
|
try {
|
|
45
79
|
return JSON.stringify(objA) === JSON.stringify(objB);
|
|
46
80
|
} catch (error) {
|
|
47
|
-
|
|
81
|
+
DyFM_Log.error(
|
|
48
82
|
'sameObjects()' + defaultErrorMsg,
|
|
49
83
|
error
|
|
50
84
|
);
|
|
@@ -53,6 +87,110 @@ export function DyFM_sameObjects<T>(objA: T, objB: T): boolean {
|
|
|
53
87
|
}
|
|
54
88
|
}
|
|
55
89
|
|
|
90
|
+
/**
|
|
91
|
+
* We experienced that sameObjects() function is not working properly for cases when
|
|
92
|
+
* deleting a key from the objects (to prevent strict results).
|
|
93
|
+
*
|
|
94
|
+
* This function is created to prevent that issue.
|
|
95
|
+
* But be aware that this function is not as fast as sameObjects() function.
|
|
96
|
+
*/
|
|
97
|
+
export function DyFM_orderedSameObject<T>(objA: T, objB: T): boolean {
|
|
98
|
+
try {
|
|
99
|
+
if (
|
|
100
|
+
typeof objA !== 'object' ||
|
|
101
|
+
typeof objB !== 'object' ||
|
|
102
|
+
Array.isArray(objA) ||
|
|
103
|
+
Array.isArray(objB) ||
|
|
104
|
+
objA === null ||
|
|
105
|
+
objB === null ||
|
|
106
|
+
objA === undefined ||
|
|
107
|
+
objB === undefined
|
|
108
|
+
) {
|
|
109
|
+
return JSON.stringify(objA) === JSON.stringify(objB);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
const keysA = Object.keys(objA);
|
|
113
|
+
const keysB = Object.keys(objB);
|
|
114
|
+
|
|
115
|
+
if (keysA.length !== keysB.length) {
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
keysA.sort();
|
|
120
|
+
keysB.sort();
|
|
121
|
+
|
|
122
|
+
for (let i = 0; i < keysA.length; i++) {
|
|
123
|
+
if (JSON.stringify(keysA[i]) !== JSON.stringify(keysB[i])) {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
return true;
|
|
129
|
+
} catch (error) {
|
|
130
|
+
/* try {
|
|
131
|
+
return DyFM_orderedSameObject2(objA, objB);
|
|
132
|
+
} catch (error) { */
|
|
133
|
+
DyFM_Log.error(
|
|
134
|
+
'orderedSameObject()' + defaultErrorMsg,
|
|
135
|
+
error
|
|
136
|
+
);
|
|
137
|
+
|
|
138
|
+
throw error;
|
|
139
|
+
/* } */
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export function DyFM_orderedSameObject2<T>(objA: T, objB: T): boolean {
|
|
144
|
+
try {
|
|
145
|
+
console.log('using orderedSameObject2');
|
|
146
|
+
|
|
147
|
+
if (
|
|
148
|
+
typeof objA !== 'object' ||
|
|
149
|
+
typeof objB !== 'object' ||
|
|
150
|
+
Array.isArray(objA) ||
|
|
151
|
+
Array.isArray(objB) ||
|
|
152
|
+
objA === null ||
|
|
153
|
+
objB === null ||
|
|
154
|
+
objA === undefined ||
|
|
155
|
+
objB === undefined
|
|
156
|
+
) {
|
|
157
|
+
return JSON.stringify(objA) === JSON.stringify(objB);
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
return JSON.stringify(
|
|
161
|
+
objA,
|
|
162
|
+
Object.keys(objA).sort()
|
|
163
|
+
) === JSON.stringify(
|
|
164
|
+
objB,
|
|
165
|
+
Object.keys(objB).sort()
|
|
166
|
+
);
|
|
167
|
+
} catch (error) {
|
|
168
|
+
DyFM_Log.error(
|
|
169
|
+
'sameObjects()' + defaultErrorMsg,
|
|
170
|
+
error
|
|
171
|
+
);
|
|
172
|
+
|
|
173
|
+
throw error;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
export function DyFM_sameObjectSurface<T>(objA: T, objB: T): boolean {
|
|
182
|
+
let result = true;
|
|
183
|
+
|
|
184
|
+
for (const key in objA) {
|
|
185
|
+
if (objA[key] !== objB[key]) {
|
|
186
|
+
result = false;
|
|
187
|
+
break;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
return result;
|
|
192
|
+
}
|
|
193
|
+
|
|
56
194
|
/**
|
|
57
195
|
* sets values if its existing on To, even if its null (but if undefined)
|
|
58
196
|
* @param setOn
|
|
@@ -96,6 +234,30 @@ export function DyFM_waitUntil(
|
|
|
96
234
|
});
|
|
97
235
|
}
|
|
98
236
|
|
|
237
|
+
/**
|
|
238
|
+
* WARNING: This function is recommended to use ONLY for limited instances,
|
|
239
|
+
* because it can cause performance issues.
|
|
240
|
+
*/
|
|
241
|
+
export function DyFM_waitUntilAsync(
|
|
242
|
+
check: () => Promise<boolean>,
|
|
243
|
+
interval: number = 100,
|
|
244
|
+
timeout: number = 10000
|
|
245
|
+
): Promise<void> {
|
|
246
|
+
return new Promise((resolve, reject): void => {
|
|
247
|
+
const startTime = Date.now();
|
|
248
|
+
|
|
249
|
+
const intervalId = setInterval(async (): Promise<void> => {
|
|
250
|
+
if (await check()) {
|
|
251
|
+
clearInterval(intervalId);
|
|
252
|
+
resolve();
|
|
253
|
+
} else if (Date.now() - startTime > timeout) {
|
|
254
|
+
clearInterval(intervalId);
|
|
255
|
+
reject('timeout');
|
|
256
|
+
}
|
|
257
|
+
}, interval);
|
|
258
|
+
});
|
|
259
|
+
}
|
|
260
|
+
|
|
99
261
|
/**
|
|
100
262
|
* Creates a promise that resolves when the observable emits a value that passes the check function
|
|
101
263
|
*/
|
|
@@ -147,7 +309,8 @@ export function DyFM_sortForTrue<T>(
|
|
|
147
309
|
* codes.sort(getSortForTrueFn((c: Code) => c.haveImg));
|
|
148
310
|
*/
|
|
149
311
|
export function DyFM_getSortForTrueFn<T>(
|
|
150
|
-
checkFor: (a: T) => boolean
|
|
312
|
+
checkFor: (a: T) => boolean
|
|
313
|
+
): (a: T, b: T) => DyFM_SortDirection {
|
|
151
314
|
return (a: T, b: T): DyFM_SortDirection => DyFM_sortForTrue<T>(a, b, checkFor);
|
|
152
315
|
}
|
|
153
316
|
|
|
Binary file
|