aril 0.0.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.
- package/README.md +26 -0
- package/esm2022/aril.mjs +5 -0
- package/esm2022/http/aril-http.mjs +5 -0
- package/esm2022/http/index.mjs +4 -0
- package/esm2022/http/lib/enums.mjs +22 -0
- package/esm2022/http/lib/interfaces.mjs +35 -0
- package/esm2022/http/src/httpClient.mjs +11 -0
- package/esm2022/http/src/serviceBase.mjs +79 -0
- package/esm2022/http/src/serviceStateMethods.mjs +26 -0
- package/esm2022/public-api.mjs +2 -0
- package/esm2022/ui/aril-ui.mjs +5 -0
- package/esm2022/ui/button/aril-ui-button.mjs +5 -0
- package/esm2022/ui/button/index.mjs +2 -0
- package/esm2022/ui/button/src/button.component.mjs +11 -0
- package/esm2022/ui/calendar/aril-ui-calendar.mjs +5 -0
- package/esm2022/ui/calendar/index.mjs +2 -0
- package/esm2022/ui/calendar/src/calendar.component.mjs +11 -0
- package/esm2022/ui/checkbox/aril-ui-checkbox.mjs +5 -0
- package/esm2022/ui/checkbox/index.mjs +2 -0
- package/esm2022/ui/checkbox/src/checkbox.component.mjs +11 -0
- package/esm2022/ui/index.mjs +2 -0
- package/esm2022/ui/lib/aril-ui-lib.mjs +5 -0
- package/esm2022/ui/lib/index.mjs +5 -0
- package/esm2022/ui/lib/src/form/form-field-builder.mjs +23 -0
- package/esm2022/ui/lib/src/form/form-validation.mjs +14 -0
- package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +49 -0
- package/esm2022/ui/lib/src/input/input-disabled.directive.mjs +25 -0
- package/esm2022/util/aril-util.mjs +5 -0
- package/esm2022/util/index.mjs +2 -0
- package/esm2022/util/init-event/aril-util-init-event.mjs +5 -0
- package/esm2022/util/init-event/index.mjs +2 -0
- package/esm2022/util/init-event/src/init-event.directive.mjs +22 -0
- package/esm2022/util/lib/aril-util-lib.mjs +5 -0
- package/esm2022/util/lib/index.mjs +3 -0
- package/esm2022/util/lib/src/interfaces.mjs +2 -0
- package/esm2022/util/lib/src/types.mjs +2 -0
- package/esm2022/util/primitive-extensions/aril-util-primitive-extensions.mjs +5 -0
- package/esm2022/util/primitive-extensions/index.mjs +5 -0
- package/esm2022/util/primitive-extensions/src/boolean.extensions.mjs +2 -0
- package/esm2022/util/primitive-extensions/src/date.extensions.mjs +95 -0
- package/esm2022/util/primitive-extensions/src/number.extensions.mjs +33 -0
- package/esm2022/util/primitive-extensions/src/string.extensions.mjs +17 -0
- package/esm2022/util/pub-sub/aril-util-pub-sub.mjs +5 -0
- package/esm2022/util/pub-sub/index.mjs +2 -0
- package/esm2022/util/pub-sub/src/pub-sub.service.mjs +27 -0
- package/fesm2022/aril-http.mjs +174 -0
- package/fesm2022/aril-http.mjs.map +1 -0
- package/fesm2022/aril-ui-button.mjs +18 -0
- package/fesm2022/aril-ui-button.mjs.map +1 -0
- package/fesm2022/aril-ui-calendar.mjs +18 -0
- package/fesm2022/aril-ui-calendar.mjs.map +1 -0
- package/fesm2022/aril-ui-checkbox.mjs +18 -0
- package/fesm2022/aril-ui-checkbox.mjs.map +1 -0
- package/fesm2022/aril-ui-lib.mjs +115 -0
- package/fesm2022/aril-ui-lib.mjs.map +1 -0
- package/fesm2022/aril-ui.mjs +8 -0
- package/fesm2022/aril-ui.mjs.map +1 -0
- package/fesm2022/aril-util-init-event.mjs +29 -0
- package/fesm2022/aril-util-init-event.mjs.map +1 -0
- package/fesm2022/aril-util-lib.mjs +4 -0
- package/fesm2022/aril-util-lib.mjs.map +1 -0
- package/fesm2022/aril-util-primitive-extensions.mjs +146 -0
- package/fesm2022/aril-util-primitive-extensions.mjs.map +1 -0
- package/fesm2022/aril-util-pub-sub.mjs +34 -0
- package/fesm2022/aril-util-pub-sub.mjs.map +1 -0
- package/fesm2022/aril-util.mjs +8 -0
- package/fesm2022/aril-util.mjs.map +1 -0
- package/fesm2022/aril.mjs +8 -0
- package/fesm2022/aril.mjs.map +1 -0
- package/http/index.d.ts +3 -0
- package/http/lib/enums.d.ts +17 -0
- package/http/lib/interfaces.d.ts +41 -0
- package/http/src/httpClient.d.ts +10 -0
- package/http/src/serviceBase.d.ts +2 -0
- package/http/src/serviceStateMethods.d.ts +4 -0
- package/index.d.ts +5 -0
- package/package.json +91 -0
- package/public-api.d.ts +1 -0
- package/ui/button/index.d.ts +1 -0
- package/ui/button/src/button.component.d.ts +5 -0
- package/ui/calendar/index.d.ts +1 -0
- package/ui/calendar/src/calendar.component.d.ts +5 -0
- package/ui/checkbox/index.d.ts +1 -0
- package/ui/checkbox/src/checkbox.component.d.ts +5 -0
- package/ui/index.d.ts +1 -0
- package/ui/lib/index.d.ts +4 -0
- package/ui/lib/src/form/form-field-builder.d.ts +7 -0
- package/ui/lib/src/form/form-validation.d.ts +2 -0
- package/ui/lib/src/input/common-input-validators.service.d.ts +19 -0
- package/ui/lib/src/input/input-disabled.directive.d.ts +9 -0
- package/util/index.d.ts +1 -0
- package/util/init-event/index.d.ts +1 -0
- package/util/init-event/src/init-event.directive.d.ts +8 -0
- package/util/lib/index.d.ts +2 -0
- package/util/lib/src/interfaces.d.ts +38 -0
- package/util/lib/src/types.d.ts +22 -0
- package/util/primitive-extensions/index.d.ts +4 -0
- package/util/primitive-extensions/src/boolean.extensions.d.ts +1 -0
- package/util/primitive-extensions/src/date.extensions.d.ts +8 -0
- package/util/primitive-extensions/src/number.extensions.d.ts +12 -0
- package/util/primitive-extensions/src/string.extensions.d.ts +10 -0
- package/util/pub-sub/index.d.ts +1 -0
- package/util/pub-sub/src/pub-sub.service.d.ts +21 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
Date.prototype.safeBool = function () {
|
|
2
|
+
return !!this;
|
|
3
|
+
};
|
|
4
|
+
Date.prototype.dateToString = function (format) {
|
|
5
|
+
if (!this || !this.getTime || isNaN(this.getTime()))
|
|
6
|
+
return undefined;
|
|
7
|
+
switch (format) {
|
|
8
|
+
case "hour":
|
|
9
|
+
format = "hh:mm";
|
|
10
|
+
break;
|
|
11
|
+
case "time":
|
|
12
|
+
format = "dd/MMMM/yyyy hh:mm";
|
|
13
|
+
break;
|
|
14
|
+
case "second":
|
|
15
|
+
format = "dd/MMMM/yyyy hh:mm:ss";
|
|
16
|
+
break;
|
|
17
|
+
case "minute":
|
|
18
|
+
format = "dd/MMMM/yyyy hh:mm";
|
|
19
|
+
break;
|
|
20
|
+
case "day":
|
|
21
|
+
format = "dd/MMMM/yyyy";
|
|
22
|
+
break;
|
|
23
|
+
case "onlyDay":
|
|
24
|
+
format = "dd";
|
|
25
|
+
break;
|
|
26
|
+
case "month":
|
|
27
|
+
format = "MMMM/yyyy";
|
|
28
|
+
break;
|
|
29
|
+
case "monthInt":
|
|
30
|
+
format = "MM/yyyy";
|
|
31
|
+
break;
|
|
32
|
+
case "onlyMonth":
|
|
33
|
+
format = "MMMM";
|
|
34
|
+
break;
|
|
35
|
+
case "year":
|
|
36
|
+
format = "yyyy";
|
|
37
|
+
break;
|
|
38
|
+
default:
|
|
39
|
+
format = format ? format : "dd/MMMM/yyyy";
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
const months = ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"];
|
|
43
|
+
const year = this.getFullYear().toString();
|
|
44
|
+
const month = this.getMonth() >= 9 ? (this.getMonth() + 1).toString() : ("0" + (this.getMonth() + 1).toString());
|
|
45
|
+
const monthText = months[this.getMonth()];
|
|
46
|
+
const day = this.getDate() > 9 ? this.getDate().toString() : ("0" + this.getDate().toString());
|
|
47
|
+
const hour = this.getHours() > 9 ? this.getHours().toString() : ("0" + this.getHours().toString());
|
|
48
|
+
const minute = this.getMinutes() > 9 ? this.getMinutes().toString() : ("0" + this.getMinutes().toString());
|
|
49
|
+
const second = this.getSeconds() > 9 ? this.getSeconds().toString() : ("0" + this.getSeconds().toString());
|
|
50
|
+
const dictionary = { "dd": day, "hh": hour, "mm": minute, "ss": second, "yyyy": year, "MMMM": monthText, "MM": month };
|
|
51
|
+
let result = format;
|
|
52
|
+
for (const i in dictionary) {
|
|
53
|
+
result = result.replace(i, dictionary[i]);
|
|
54
|
+
}
|
|
55
|
+
return result;
|
|
56
|
+
};
|
|
57
|
+
Date.prototype.dateToLong = function (zoomLevel) {
|
|
58
|
+
if (!this || !this.getFullYear)
|
|
59
|
+
return undefined;
|
|
60
|
+
const year = this.getFullYear().toString();
|
|
61
|
+
const month = this.getMonth() >= 9 ? (this.getMonth() + 1).toString() : ("0" + (this.getMonth() + 1).toString());
|
|
62
|
+
const day = this.getDate() > 9 ? this.getDate().toString() : ("0" + this.getDate().toString());
|
|
63
|
+
const hour = this.getHours() > 9 ? this.getHours().toString() : ("0" + this.getHours().toString());
|
|
64
|
+
const minute = this.getMinutes() > 9 ? this.getMinutes().toString() : ("0" + this.getMinutes().toString());
|
|
65
|
+
const second = this.getSeconds() > 9 ? this.getSeconds().toString() : ("0" + this.getSeconds().toString());
|
|
66
|
+
let result;
|
|
67
|
+
if (!zoomLevel)
|
|
68
|
+
zoomLevel = "day";
|
|
69
|
+
switch (zoomLevel) {
|
|
70
|
+
case "time":
|
|
71
|
+
result = year + month + day + hour + minute + second;
|
|
72
|
+
break;
|
|
73
|
+
case "minute":
|
|
74
|
+
result = year + month + day + hour + minute + "00";
|
|
75
|
+
break;
|
|
76
|
+
case "hour":
|
|
77
|
+
result = year + month + day + hour + "0000";
|
|
78
|
+
break;
|
|
79
|
+
case "day":
|
|
80
|
+
result = year + month + day + "000000";
|
|
81
|
+
break;
|
|
82
|
+
case "month":
|
|
83
|
+
result = year + month + "01000000";
|
|
84
|
+
break;
|
|
85
|
+
case "year":
|
|
86
|
+
result = year + "0101000000";
|
|
87
|
+
break;
|
|
88
|
+
default:
|
|
89
|
+
result = year + month + day + "000000";
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
return result;
|
|
93
|
+
};
|
|
94
|
+
export {};
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5leHRlbnNpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91dGlsL3ByaW1pdGl2ZS1leHRlbnNpb25zL3NyYy9kYXRlLmV4dGVuc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEdBQUc7SUFDeEIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFBO0FBQ2YsQ0FBQyxDQUFBO0FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEdBQUcsVUFBVSxNQUFlO0lBQ3JELElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUN0RSxRQUFRLE1BQU0sRUFBRSxDQUFDO1FBQ2YsS0FBSyxNQUFNO1lBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQztZQUFDLE1BQU07UUFDckMsS0FBSyxNQUFNO1lBQUUsTUFBTSxHQUFHLG9CQUFvQixDQUFDO1lBQUMsTUFBTTtRQUNsRCxLQUFLLFFBQVE7WUFBRSxNQUFNLEdBQUcsdUJBQXVCLENBQUM7WUFBQyxNQUFNO1FBQ3ZELEtBQUssUUFBUTtZQUFFLE1BQU0sR0FBRyxvQkFBb0IsQ0FBQztZQUFDLE1BQU07UUFDcEQsS0FBSyxLQUFLO1lBQUUsTUFBTSxHQUFHLGNBQWMsQ0FBQztZQUFDLE1BQU07UUFDM0MsS0FBSyxTQUFTO1lBQUUsTUFBTSxHQUFHLElBQUksQ0FBQztZQUFDLE1BQU07UUFDckMsS0FBSyxPQUFPO1lBQUUsTUFBTSxHQUFHLFdBQVcsQ0FBQztZQUFDLE1BQU07UUFDMUMsS0FBSyxVQUFVO1lBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztZQUFDLE1BQU07UUFDM0MsS0FBSyxXQUFXO1lBQUUsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUFDLE1BQU07UUFDekMsS0FBSyxNQUFNO1lBQUUsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUFDLE1BQU07UUFDcEM7WUFBUyxNQUFNLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztZQUFDLE1BQU07SUFDNUQsQ0FBQztJQUVELE1BQU0sTUFBTSxHQUFHLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUUvSCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDakgsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDL0YsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNuRyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQzNHLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFM0csTUFBTSxVQUFVLEdBQThCLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDO0lBRWxKLElBQUksTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNwQixLQUFLLE1BQU0sQ0FBQyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQzNCLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyxDQUFBO0FBRUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUcsVUFBVSxTQUFrQjtJQUN0RCxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVc7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUVqRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDakgsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUUvRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ25HLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDM0csTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUUzRyxJQUFJLE1BQU0sQ0FBQztJQUNYLElBQUksQ0FBQyxTQUFTO1FBQUUsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQyxRQUFRLFNBQVMsRUFBRSxDQUFDO1FBQ2xCLEtBQUssTUFBTTtZQUNULE1BQU0sR0FBRyxJQUFJLEdBQUcsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLEdBQUcsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUNyRCxNQUFNO1FBQ1IsS0FBSyxRQUFRO1lBQ1gsTUFBTSxHQUFHLElBQUksR0FBRyxLQUFLLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRyxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ25ELE1BQU07UUFDUixLQUFLLE1BQU07WUFDVCxNQUFNLEdBQUcsSUFBSSxHQUFHLEtBQUssR0FBRyxHQUFHLEdBQUcsSUFBSSxHQUFHLE1BQU0sQ0FBQztZQUM1QyxNQUFNO1FBQ1IsS0FBSyxLQUFLO1lBQ1IsTUFBTSxHQUFHLElBQUksR0FBRyxLQUFLLEdBQUcsR0FBRyxHQUFHLFFBQVEsQ0FBQztZQUN2QyxNQUFNO1FBQ1IsS0FBSyxPQUFPO1lBQ1YsTUFBTSxHQUFHLElBQUksR0FBRyxLQUFLLEdBQUcsVUFBVSxDQUFDO1lBQ25DLE1BQU07UUFDUixLQUFLLE1BQU07WUFDVCxNQUFNLEdBQUcsSUFBSSxHQUFHLFlBQVksQ0FBQztZQUM3QixNQUFNO1FBQ1I7WUFDRSxNQUFNLEdBQUcsSUFBSSxHQUFHLEtBQUssR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDO1lBQ3ZDLE1BQU07SUFDVixDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZGVjbGFyZSBnbG9iYWwge1xyXG4gIGludGVyZmFjZSBEYXRlIHtcclxuICAgIHNhZmVCb29sKCk6IGJvb2xlYW47XHJcbiAgICBkYXRlVG9TdHJpbmcoZm9ybWF0Pzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gICAgZGF0ZVRvTG9uZyh6b29tTGV2ZWw/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQ7XHJcbiAgfVxyXG59XHJcblxyXG5EYXRlLnByb3RvdHlwZS5zYWZlQm9vbCA9IGZ1bmN0aW9uICgpOiBib29sZWFuIHtcclxuICByZXR1cm4gISF0aGlzXHJcbn1cclxuXHJcbkRhdGUucHJvdG90eXBlLmRhdGVUb1N0cmluZyA9IGZ1bmN0aW9uIChmb3JtYXQ/OiBzdHJpbmcpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gIGlmICghdGhpcyB8fCAhdGhpcy5nZXRUaW1lIHx8IGlzTmFOKHRoaXMuZ2V0VGltZSgpKSkgcmV0dXJuIHVuZGVmaW5lZDtcclxuICBzd2l0Y2ggKGZvcm1hdCkge1xyXG4gICAgY2FzZSBcImhvdXJcIjogZm9ybWF0ID0gXCJoaDptbVwiOyBicmVhaztcclxuICAgIGNhc2UgXCJ0aW1lXCI6IGZvcm1hdCA9IFwiZGQvTU1NTS95eXl5IGhoOm1tXCI7IGJyZWFrO1xyXG4gICAgY2FzZSBcInNlY29uZFwiOiBmb3JtYXQgPSBcImRkL01NTU0veXl5eSBoaDptbTpzc1wiOyBicmVhaztcclxuICAgIGNhc2UgXCJtaW51dGVcIjogZm9ybWF0ID0gXCJkZC9NTU1NL3l5eXkgaGg6bW1cIjsgYnJlYWs7XHJcbiAgICBjYXNlIFwiZGF5XCI6IGZvcm1hdCA9IFwiZGQvTU1NTS95eXl5XCI7IGJyZWFrO1xyXG4gICAgY2FzZSBcIm9ubHlEYXlcIjogZm9ybWF0ID0gXCJkZFwiOyBicmVhaztcclxuICAgIGNhc2UgXCJtb250aFwiOiBmb3JtYXQgPSBcIk1NTU0veXl5eVwiOyBicmVhaztcclxuICAgIGNhc2UgXCJtb250aEludFwiOiBmb3JtYXQgPSBcIk1NL3l5eXlcIjsgYnJlYWs7XHJcbiAgICBjYXNlIFwib25seU1vbnRoXCI6IGZvcm1hdCA9IFwiTU1NTVwiOyBicmVhaztcclxuICAgIGNhc2UgXCJ5ZWFyXCI6IGZvcm1hdCA9IFwieXl5eVwiOyBicmVhaztcclxuICAgIGRlZmF1bHQ6IGZvcm1hdCA9IGZvcm1hdCA/IGZvcm1hdCA6IFwiZGQvTU1NTS95eXl5XCI7IGJyZWFrO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgbW9udGhzID0gW1wiT2Nha1wiLCBcIsWedWJhdFwiLCBcIk1hcnRcIiwgXCJOaXNhblwiLCBcIk1hecSxc1wiLCBcIkhhemlyYW5cIiwgXCJUZW1tdXpcIiwgXCJBxJ91c3Rvc1wiLCBcIkV5bMO8bFwiLCBcIkVraW1cIiwgXCJLYXPEsW1cIiwgXCJBcmFsxLFrXCJdO1xyXG5cclxuICBjb25zdCB5ZWFyID0gdGhpcy5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCk7XHJcbiAgY29uc3QgbW9udGggPSB0aGlzLmdldE1vbnRoKCkgPj0gOSA/ICh0aGlzLmdldE1vbnRoKCkgKyAxKS50b1N0cmluZygpIDogKFwiMFwiICsgKHRoaXMuZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkpO1xyXG4gIGNvbnN0IG1vbnRoVGV4dCA9IG1vbnRoc1t0aGlzLmdldE1vbnRoKCldO1xyXG4gIGNvbnN0IGRheSA9IHRoaXMuZ2V0RGF0ZSgpID4gOSA/IHRoaXMuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkgOiAoXCIwXCIgKyB0aGlzLmdldERhdGUoKS50b1N0cmluZygpKTtcclxuICBjb25zdCBob3VyID0gdGhpcy5nZXRIb3VycygpID4gOSA/IHRoaXMuZ2V0SG91cnMoKS50b1N0cmluZygpIDogKFwiMFwiICsgdGhpcy5nZXRIb3VycygpLnRvU3RyaW5nKCkpO1xyXG4gIGNvbnN0IG1pbnV0ZSA9IHRoaXMuZ2V0TWludXRlcygpID4gOSA/IHRoaXMuZ2V0TWludXRlcygpLnRvU3RyaW5nKCkgOiAoXCIwXCIgKyB0aGlzLmdldE1pbnV0ZXMoKS50b1N0cmluZygpKTtcclxuICBjb25zdCBzZWNvbmQgPSB0aGlzLmdldFNlY29uZHMoKSA+IDkgPyB0aGlzLmdldFNlY29uZHMoKS50b1N0cmluZygpIDogKFwiMFwiICsgdGhpcy5nZXRTZWNvbmRzKCkudG9TdHJpbmcoKSk7XHJcblxyXG4gIGNvbnN0IGRpY3Rpb25hcnk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7IFwiZGRcIjogZGF5LCBcImhoXCI6IGhvdXIsIFwibW1cIjogbWludXRlLCBcInNzXCI6IHNlY29uZCwgXCJ5eXl5XCI6IHllYXIsIFwiTU1NTVwiOiBtb250aFRleHQsIFwiTU1cIjogbW9udGggfTtcclxuXHJcbiAgbGV0IHJlc3VsdCA9IGZvcm1hdDtcclxuICBmb3IgKGNvbnN0IGkgaW4gZGljdGlvbmFyeSkge1xyXG4gICAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UoaSwgZGljdGlvbmFyeVtpXSk7XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbkRhdGUucHJvdG90eXBlLmRhdGVUb0xvbmcgPSBmdW5jdGlvbiAoem9vbUxldmVsPzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcclxuICBpZiAoIXRoaXMgfHwgIXRoaXMuZ2V0RnVsbFllYXIpIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gIGNvbnN0IHllYXIgPSB0aGlzLmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcclxuICBjb25zdCBtb250aCA9IHRoaXMuZ2V0TW9udGgoKSA+PSA5ID8gKHRoaXMuZ2V0TW9udGgoKSArIDEpLnRvU3RyaW5nKCkgOiAoXCIwXCIgKyAodGhpcy5nZXRNb250aCgpICsgMSkudG9TdHJpbmcoKSk7XHJcbiAgY29uc3QgZGF5ID0gdGhpcy5nZXREYXRlKCkgPiA5ID8gdGhpcy5nZXREYXRlKCkudG9TdHJpbmcoKSA6IChcIjBcIiArIHRoaXMuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkpO1xyXG5cclxuICBjb25zdCBob3VyID0gdGhpcy5nZXRIb3VycygpID4gOSA/IHRoaXMuZ2V0SG91cnMoKS50b1N0cmluZygpIDogKFwiMFwiICsgdGhpcy5nZXRIb3VycygpLnRvU3RyaW5nKCkpO1xyXG4gIGNvbnN0IG1pbnV0ZSA9IHRoaXMuZ2V0TWludXRlcygpID4gOSA/IHRoaXMuZ2V0TWludXRlcygpLnRvU3RyaW5nKCkgOiAoXCIwXCIgKyB0aGlzLmdldE1pbnV0ZXMoKS50b1N0cmluZygpKTtcclxuICBjb25zdCBzZWNvbmQgPSB0aGlzLmdldFNlY29uZHMoKSA+IDkgPyB0aGlzLmdldFNlY29uZHMoKS50b1N0cmluZygpIDogKFwiMFwiICsgdGhpcy5nZXRTZWNvbmRzKCkudG9TdHJpbmcoKSk7XHJcblxyXG4gIGxldCByZXN1bHQ7XHJcbiAgaWYgKCF6b29tTGV2ZWwpIHpvb21MZXZlbCA9IFwiZGF5XCI7XHJcbiAgc3dpdGNoICh6b29tTGV2ZWwpIHtcclxuICAgIGNhc2UgXCJ0aW1lXCI6XHJcbiAgICAgIHJlc3VsdCA9IHllYXIgKyBtb250aCArIGRheSArIGhvdXIgKyBtaW51dGUgKyBzZWNvbmQ7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgY2FzZSBcIm1pbnV0ZVwiOlxyXG4gICAgICByZXN1bHQgPSB5ZWFyICsgbW9udGggKyBkYXkgKyBob3VyICsgbWludXRlICsgXCIwMFwiO1xyXG4gICAgICBicmVhaztcclxuICAgIGNhc2UgXCJob3VyXCI6XHJcbiAgICAgIHJlc3VsdCA9IHllYXIgKyBtb250aCArIGRheSArIGhvdXIgKyBcIjAwMDBcIjtcclxuICAgICAgYnJlYWs7XHJcbiAgICBjYXNlIFwiZGF5XCI6XHJcbiAgICAgIHJlc3VsdCA9IHllYXIgKyBtb250aCArIGRheSArIFwiMDAwMDAwXCI7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgY2FzZSBcIm1vbnRoXCI6XHJcbiAgICAgIHJlc3VsdCA9IHllYXIgKyBtb250aCArIFwiMDEwMDAwMDBcIjtcclxuICAgICAgYnJlYWs7XHJcbiAgICBjYXNlIFwieWVhclwiOlxyXG4gICAgICByZXN1bHQgPSB5ZWFyICsgXCIwMTAxMDAwMDAwXCI7XHJcbiAgICAgIGJyZWFrO1xyXG4gICAgZGVmYXVsdDpcclxuICAgICAgcmVzdWx0ID0geWVhciArIG1vbnRoICsgZGF5ICsgXCIwMDAwMDBcIjtcclxuICAgICAgYnJlYWs7XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbmV4cG9ydCB7IH07Il19
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
Number.prototype.safeBool = function () {
|
|
2
|
+
return !!this;
|
|
3
|
+
};
|
|
4
|
+
Number.prototype.isNull = function () { return this === null; };
|
|
5
|
+
Number.prototype.isUndefined = function () { return this === undefined; };
|
|
6
|
+
Number.prototype.isNullOrUndefined = function () { return this.isNull() || this.isUndefined(); };
|
|
7
|
+
Number.prototype.longToDate = function () {
|
|
8
|
+
if (!this || this.toString() == "0")
|
|
9
|
+
return undefined;
|
|
10
|
+
const str = this.toString();
|
|
11
|
+
const year = str.substring(0, 4);
|
|
12
|
+
const month = str.substring(4, 6);
|
|
13
|
+
const day = str.substring(6, 8);
|
|
14
|
+
const hour = str.substring(8, 10);
|
|
15
|
+
const min = str.substring(10, 12);
|
|
16
|
+
const sn = str.substring(12, 14);
|
|
17
|
+
return new Date(year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + sn);
|
|
18
|
+
};
|
|
19
|
+
Number.prototype.longToString = function (format) {
|
|
20
|
+
if (!this || this.toString() == "0")
|
|
21
|
+
return undefined;
|
|
22
|
+
return this.longToDate()?.dateToString(format);
|
|
23
|
+
};
|
|
24
|
+
Number.prototype.decimalToString = function (format) {
|
|
25
|
+
if (!this && this !== 0)
|
|
26
|
+
return undefined;
|
|
27
|
+
if (!format)
|
|
28
|
+
return this.toString();
|
|
29
|
+
const count = (format.match(/#/g) || []).length;
|
|
30
|
+
return Number(parseFloat(this.toString()).toFixed(count)).toString();
|
|
31
|
+
};
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3V0aWwvcHJpbWl0aXZlLWV4dGVuc2lvbnMvc3JjL251bWJlci5leHRlbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlBLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHO0lBQzFCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQTtBQUNmLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLGNBQXVCLE9BQU8sSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQTtBQUV4RSxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FBRyxjQUF1QixPQUFPLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFFbEYsTUFBTSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsR0FBRyxjQUF1QixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFFekcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEdBQUc7SUFDNUIsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksR0FBRztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBRXRELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUU1QixNQUFNLElBQUksR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNqQyxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNsQyxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNoQyxNQUFNLElBQUksR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsQyxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsQyxNQUFNLEVBQUUsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVqQyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLEdBQUcsS0FBSyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRyxHQUFHLEdBQUcsR0FBRyxHQUFHLEdBQUcsR0FBRyxFQUFFLENBQUMsQ0FBQztBQUN0RixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLFlBQVksR0FBRyxVQUFVLE1BQWU7SUFDdkQsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksR0FBRztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQ3RELE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNqRCxDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsU0FBUyxDQUFDLGVBQWUsR0FBRyxVQUFVLE1BQWM7SUFDekQsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEtBQUssQ0FBQztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQzFDLElBQUksQ0FBQyxNQUFNO1FBQUUsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFcEMsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNoRCxPQUFPLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDdkUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZGVjbGFyZSBnbG9iYWwge1xyXG4gIGludGVyZmFjZSBOdW1iZXIge1xyXG4gICAgc2FmZUJvb2woKTogYm9vbGVhbjtcclxuICAgIGlzTnVsbCgpOiBib29sZWFuO1xyXG4gICAgaXNVbmRlZmluZWQoKTogYm9vbGVhbjtcclxuICAgIGlzTnVsbE9yVW5kZWZpbmVkKCk6IGJvb2xlYW47XHJcbiAgICBsb25nVG9EYXRlKCk6IERhdGUgfCB1bmRlZmluZWQ7XHJcbiAgICBsb25nVG9TdHJpbmcoZm9ybWF0Pzogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gICAgZGVjaW1hbFRvU3RyaW5nKGZvcm1hdDogc3RyaW5nKTogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gIH1cclxufVxyXG5cclxuTnVtYmVyLnByb3RvdHlwZS5zYWZlQm9vbCA9IGZ1bmN0aW9uICgpOiBib29sZWFuIHtcclxuICByZXR1cm4gISF0aGlzXHJcbn1cclxuXHJcbk51bWJlci5wcm90b3R5cGUuaXNOdWxsID0gZnVuY3Rpb24gKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcyA9PT0gbnVsbDsgfVxyXG5cclxuTnVtYmVyLnByb3RvdHlwZS5pc1VuZGVmaW5lZCA9IGZ1bmN0aW9uICgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMgPT09IHVuZGVmaW5lZDsgfVxyXG5cclxuTnVtYmVyLnByb3RvdHlwZS5pc051bGxPclVuZGVmaW5lZCA9IGZ1bmN0aW9uICgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuaXNOdWxsKCkgfHwgdGhpcy5pc1VuZGVmaW5lZCgpOyB9XHJcblxyXG5OdW1iZXIucHJvdG90eXBlLmxvbmdUb0RhdGUgPSBmdW5jdGlvbiAoKTogRGF0ZSB8IHVuZGVmaW5lZCB7XHJcbiAgaWYgKCF0aGlzIHx8IHRoaXMudG9TdHJpbmcoKSA9PSBcIjBcIikgcmV0dXJuIHVuZGVmaW5lZDtcclxuXHJcbiAgY29uc3Qgc3RyID0gdGhpcy50b1N0cmluZygpO1xyXG5cclxuICBjb25zdCB5ZWFyID0gc3RyLnN1YnN0cmluZygwLCA0KTtcclxuICBjb25zdCBtb250aCA9IHN0ci5zdWJzdHJpbmcoNCwgNik7XHJcbiAgY29uc3QgZGF5ID0gc3RyLnN1YnN0cmluZyg2LCA4KTtcclxuICBjb25zdCBob3VyID0gc3RyLnN1YnN0cmluZyg4LCAxMCk7XHJcbiAgY29uc3QgbWluID0gc3RyLnN1YnN0cmluZygxMCwgMTIpO1xyXG4gIGNvbnN0IHNuID0gc3RyLnN1YnN0cmluZygxMiwgMTQpO1xyXG5cclxuICByZXR1cm4gbmV3IERhdGUoeWVhciArIFwiLVwiICsgbW9udGggKyBcIi1cIiArIGRheSArIFwiIFwiICsgaG91ciArIFwiOlwiICsgbWluICsgXCI6XCIgKyBzbik7XHJcbn1cclxuXHJcbk51bWJlci5wcm90b3R5cGUubG9uZ1RvU3RyaW5nID0gZnVuY3Rpb24gKGZvcm1hdD86IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XHJcbiAgaWYgKCF0aGlzIHx8IHRoaXMudG9TdHJpbmcoKSA9PSBcIjBcIikgcmV0dXJuIHVuZGVmaW5lZDtcclxuICByZXR1cm4gdGhpcy5sb25nVG9EYXRlKCk/LmRhdGVUb1N0cmluZyhmb3JtYXQpO1xyXG59XHJcblxyXG5OdW1iZXIucHJvdG90eXBlLmRlY2ltYWxUb1N0cmluZyA9IGZ1bmN0aW9uIChmb3JtYXQ6IHN0cmluZyk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XHJcbiAgaWYgKCF0aGlzICYmIHRoaXMgIT09IDApIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgaWYgKCFmb3JtYXQpIHJldHVybiB0aGlzLnRvU3RyaW5nKCk7XHJcblxyXG4gIGNvbnN0IGNvdW50ID0gKGZvcm1hdC5tYXRjaCgvIy9nKSB8fCBbXSkubGVuZ3RoO1xyXG4gIHJldHVybiBOdW1iZXIocGFyc2VGbG9hdCh0aGlzLnRvU3RyaW5nKCkpLnRvRml4ZWQoY291bnQpKS50b1N0cmluZygpO1xyXG59O1xyXG5cclxuZXhwb3J0IHsgfTtcclxuIl19
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
String.prototype.safeBool = function () {
|
|
2
|
+
return !!this;
|
|
3
|
+
};
|
|
4
|
+
String.prototype.escapeRegExp = function () {
|
|
5
|
+
return this.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
6
|
+
};
|
|
7
|
+
String.prototype.toCamelCase = function () {
|
|
8
|
+
return this.replace(/(?:^\w|[A-Z]|-|\b\w)/g, (character, index) => index === 0 ? character.toLocaleLowerCase() : character.toLocaleUpperCase());
|
|
9
|
+
};
|
|
10
|
+
String.prototype.toPascalCase = function () {
|
|
11
|
+
return this.replace(/(?:^\w|[A-Z]|-|\b\w)/g, firstCharacter => firstCharacter.toLocaleUpperCase());
|
|
12
|
+
};
|
|
13
|
+
String.prototype.toCapitalizeFirstLetter = function () {
|
|
14
|
+
return this.charAt(0).toLocaleUpperCase() + this.slice(1);
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmV4dGVuc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3V0aWwvcHJpbWl0aXZlLWV4dGVuc2lvbnMvc3JjL3N0cmluZy5leHRlbnNpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVVBLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxHQUFHO0lBQzFCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQTtBQUNmLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxHQUFHO0lBQzlCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxxQkFBcUIsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUNyRCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsR0FBRztJQUM3QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FDaEUsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLGlCQUFpQixFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxDQUM1RSxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEdBQUc7SUFDOUIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQyxFQUFFLENBQzVELGNBQWMsQ0FBQyxpQkFBaUIsRUFBRSxDQUNuQyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsR0FBRztJQUN6QyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQzVELENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImRlY2xhcmUgZ2xvYmFsIHtcclxuICBpbnRlcmZhY2UgU3RyaW5nIHtcclxuICAgIHNhZmVCb29sKCk6IGJvb2xlYW47XHJcbiAgICBlc2NhcGVSZWdFeHAoKTogc3RyaW5nO1xyXG4gICAgdG9DYW1lbENhc2UoKTogc3RyaW5nO1xyXG4gICAgdG9QYXNjYWxDYXNlKCk6IHN0cmluZztcclxuICAgIHRvQ2FwaXRhbGl6ZUZpcnN0TGV0dGVyKCk6IHN0cmluZztcclxuICB9XHJcbn1cclxuXHJcblN0cmluZy5wcm90b3R5cGUuc2FmZUJvb2wgPSBmdW5jdGlvbiAoKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuICEhdGhpc1xyXG59XHJcblxyXG5TdHJpbmcucHJvdG90eXBlLmVzY2FwZVJlZ0V4cCA9IGZ1bmN0aW9uICgpOiBzdHJpbmcge1xyXG4gIHJldHVybiB0aGlzLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXF1cXFxcXS9nLCBcIlxcXFwkJlwiKTtcclxufTtcclxuXHJcblN0cmluZy5wcm90b3R5cGUudG9DYW1lbENhc2UgPSBmdW5jdGlvbiAoKTogc3RyaW5nIHtcclxuICByZXR1cm4gdGhpcy5yZXBsYWNlKC8oPzpeXFx3fFtBLVpdfC18XFxiXFx3KS9nLCAoY2hhcmFjdGVyLCBpbmRleCkgPT5cclxuICAgIGluZGV4ID09PSAwID8gY2hhcmFjdGVyLnRvTG9jYWxlTG93ZXJDYXNlKCkgOiBjaGFyYWN0ZXIudG9Mb2NhbGVVcHBlckNhc2UoKVxyXG4gICk7XHJcbn07XHJcblxyXG5TdHJpbmcucHJvdG90eXBlLnRvUGFzY2FsQ2FzZSA9IGZ1bmN0aW9uICgpOiBzdHJpbmcge1xyXG4gIHJldHVybiB0aGlzLnJlcGxhY2UoLyg/Ol5cXHd8W0EtWl18LXxcXGJcXHcpL2csIGZpcnN0Q2hhcmFjdGVyID0+XHJcbiAgICBmaXJzdENoYXJhY3Rlci50b0xvY2FsZVVwcGVyQ2FzZSgpXHJcbiAgKTtcclxufTtcclxuXHJcblN0cmluZy5wcm90b3R5cGUudG9DYXBpdGFsaXplRmlyc3RMZXR0ZXIgPSBmdW5jdGlvbiAoKTogc3RyaW5nIHtcclxuICByZXR1cm4gdGhpcy5jaGFyQXQoMCkudG9Mb2NhbGVVcHBlckNhc2UoKSArIHRoaXMuc2xpY2UoMSk7XHJcbn07XHJcblxyXG5cclxuZXhwb3J0IHsgfTsiXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpbC11dGlsLXB1Yi1zdWIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3V0aWwvcHViLXN1Yi9hcmlsLXV0aWwtcHViLXN1Yi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './src/pub-sub.service';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3V0aWwvcHViLXN1Yi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvcHViLXN1Yi5zZXJ2aWNlJzsiXX0=
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export const PubSubEvents = {
|
|
4
|
+
popstate: "popstate",
|
|
5
|
+
navigateBetweenApps: "navigateBetweenApps",
|
|
6
|
+
navigateInApps: "navigateInApps"
|
|
7
|
+
};
|
|
8
|
+
export class PubSubService {
|
|
9
|
+
publish(e) {
|
|
10
|
+
dispatchEvent(new CustomEvent(e.name, { detail: e.data }));
|
|
11
|
+
}
|
|
12
|
+
subscribe(eventName, listener) {
|
|
13
|
+
addEventListener(eventName, (event) => { listener(event.detail); });
|
|
14
|
+
}
|
|
15
|
+
unSubscribe(eventName, listener) {
|
|
16
|
+
removeEventListener(eventName, listener);
|
|
17
|
+
}
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: PubSubService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
19
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: PubSubService, providedIn: 'root' }); }
|
|
20
|
+
}
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: PubSubService, decorators: [{
|
|
22
|
+
type: Injectable,
|
|
23
|
+
args: [{
|
|
24
|
+
providedIn: 'root'
|
|
25
|
+
}]
|
|
26
|
+
}] });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHViLXN1Yi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91dGlsL3B1Yi1zdWIvc3JjL3B1Yi1zdWIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVUzQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsUUFBUSxFQUFFLFVBQVU7SUFDcEIsbUJBQW1CLEVBQUUscUJBQXFCO0lBQzFDLGNBQWMsRUFBRSxnQkFBZ0I7Q0FDakMsQ0FBQTtBQUtELE1BQU0sT0FBTyxhQUFhO0lBRXhCLE9BQU8sQ0FBQyxDQUFjO1FBQ3BCLGFBQWEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELFNBQVMsQ0FBQyxTQUFpQixFQUFFLFFBQTZCO1FBQ3hELGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQVUsRUFBRSxFQUFFLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxXQUFXLENBQUMsU0FBaUIsRUFBRSxRQUFvQjtRQUNqRCxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDM0MsQ0FBQzs4R0FaVSxhQUFhO2tIQUFiLGFBQWEsY0FGWixNQUFNOzsyRkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbnR5cGUgQ3VzdG9tRXZlbnQgPSB7XHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIGRhdGE6IHtcclxuICAgIHBhdGg6IHN0cmluZztcclxuICAgIGN1c3RvbT86IGFueTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBQdWJTdWJFdmVudHMgPSB7XHJcbiAgcG9wc3RhdGU6IFwicG9wc3RhdGVcIixcclxuICBuYXZpZ2F0ZUJldHdlZW5BcHBzOiBcIm5hdmlnYXRlQmV0d2VlbkFwcHNcIixcclxuICBuYXZpZ2F0ZUluQXBwczogXCJuYXZpZ2F0ZUluQXBwc1wiXHJcbn1cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFB1YlN1YlNlcnZpY2Uge1xyXG5cclxuICBwdWJsaXNoKGU6IEN1c3RvbUV2ZW50KSB7XHJcbiAgICBkaXNwYXRjaEV2ZW50KG5ldyBDdXN0b21FdmVudChlLm5hbWUsIHsgZGV0YWlsOiBlLmRhdGEgfSkpO1xyXG4gIH1cclxuXHJcbiAgc3Vic2NyaWJlKGV2ZW50TmFtZTogc3RyaW5nLCBsaXN0ZW5lcjogKGRhdGE6IGFueSkgPT4gdm9pZCkge1xyXG4gICAgYWRkRXZlbnRMaXN0ZW5lcihldmVudE5hbWUsIChldmVudDogYW55KSA9PiB7IGxpc3RlbmVyKGV2ZW50LmRldGFpbCkgfSk7XHJcbiAgfVxyXG5cclxuICB1blN1YnNjcmliZShldmVudE5hbWU6IHN0cmluZywgbGlzdGVuZXI6ICgpID0+IHZvaWQpIHtcclxuICAgIHJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnROYW1lLCBsaXN0ZW5lcik7XHJcbiAgfVxyXG59Il19
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { HttpClient, HttpParams } from '@angular/common/http';
|
|
2
|
+
import { InjectionToken, inject, Injector, runInInjectionContext } from '@angular/core';
|
|
3
|
+
import { Observable, throwError } from 'rxjs';
|
|
4
|
+
import { map, tap, catchError } from 'rxjs/operators';
|
|
5
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
6
|
+
|
|
7
|
+
const API_TOKEN = new InjectionToken('API');
|
|
8
|
+
class RestClient {
|
|
9
|
+
constructor() {
|
|
10
|
+
this.httpClient = inject(HttpClient);
|
|
11
|
+
this.baseAPI = inject(API_TOKEN);
|
|
12
|
+
this.injector = inject(Injector);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
17
|
+
const callState = (states, serviceName) => {
|
|
18
|
+
states[serviceName] = {
|
|
19
|
+
serviceCalled: true,
|
|
20
|
+
waitingForResponse: true,
|
|
21
|
+
responseIsRecieved: false,
|
|
22
|
+
serviceCallFailed: false
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
const successState = (states, serviceName) => {
|
|
26
|
+
states[serviceName] = {
|
|
27
|
+
serviceCalled: true,
|
|
28
|
+
waitingForResponse: false,
|
|
29
|
+
responseIsRecieved: true,
|
|
30
|
+
serviceCallFailed: false,
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
const errorState = (states, serviceName) => {
|
|
34
|
+
states[serviceName] = {
|
|
35
|
+
serviceCalled: true,
|
|
36
|
+
waitingForResponse: false,
|
|
37
|
+
responseIsRecieved: true,
|
|
38
|
+
serviceCallFailed: true,
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
var HTTPMethods;
|
|
43
|
+
(function (HTTPMethods) {
|
|
44
|
+
HTTPMethods["GET"] = "GET";
|
|
45
|
+
HTTPMethods["POST"] = "POST";
|
|
46
|
+
HTTPMethods["DELETE"] = "DELETE";
|
|
47
|
+
})(HTTPMethods || (HTTPMethods = {}));
|
|
48
|
+
;
|
|
49
|
+
var APIs;
|
|
50
|
+
(function (APIs) {
|
|
51
|
+
APIs["crm"] = "crm";
|
|
52
|
+
APIs["wdm"] = "wdm";
|
|
53
|
+
APIs["billing"] = "billing";
|
|
54
|
+
APIs["payment"] = "payment";
|
|
55
|
+
APIs["yeap"] = "yeap";
|
|
56
|
+
})(APIs || (APIs = {}));
|
|
57
|
+
var ProxyTypes;
|
|
58
|
+
(function (ProxyTypes) {
|
|
59
|
+
ProxyTypes[ProxyTypes["Native"] = 0] = "Native";
|
|
60
|
+
ProxyTypes[ProxyTypes["ServerSide"] = 1] = "ServerSide";
|
|
61
|
+
ProxyTypes[ProxyTypes["ClientSide"] = 2] = "ClientSide";
|
|
62
|
+
})(ProxyTypes || (ProxyTypes = {}));
|
|
63
|
+
|
|
64
|
+
class ServiceResponse {
|
|
65
|
+
constructor(resp) {
|
|
66
|
+
this.params = undefined;
|
|
67
|
+
this.response = resp ?? {};
|
|
68
|
+
this.proxy = ProxyTypes.Native;
|
|
69
|
+
this.items = [];
|
|
70
|
+
this.paging = {
|
|
71
|
+
currentPage: 1,
|
|
72
|
+
pageSize: 10,
|
|
73
|
+
totalItemCount: 0,
|
|
74
|
+
totalPageCount: 0
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
class ClientSidePagingResponse {
|
|
79
|
+
constructor() {
|
|
80
|
+
this.allItems = [];
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
class ServerSidePagingRequest {
|
|
84
|
+
constructor() {
|
|
85
|
+
this.params = undefined;
|
|
86
|
+
this.pageNumber = 1;
|
|
87
|
+
this.pageSize = 10;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
class ServerSidePagingResponse {
|
|
91
|
+
constructor() {
|
|
92
|
+
this.items = [];
|
|
93
|
+
this.totalItemCount = 0;
|
|
94
|
+
this.totalPageCount = 0;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
99
|
+
/** TODO: ADD INTERCEPTOR */
|
|
100
|
+
/** TODO: SET REQUEST & RESPONSE ACCORDING TO PROXY */
|
|
101
|
+
function ServiceCall(httpMethod, proxy, remoteAPI) {
|
|
102
|
+
return function (serviceClass, serviceName, descriptor) {
|
|
103
|
+
const originalFunction = descriptor.value;
|
|
104
|
+
descriptor.value = function (...args) {
|
|
105
|
+
return runInInjectionContext(this.injector, () => {
|
|
106
|
+
const httpClient = this.httpClient;
|
|
107
|
+
const api = remoteAPI ?? this.baseAPI;
|
|
108
|
+
const endPoint = api + serviceName;
|
|
109
|
+
const params = getParams(httpMethod, proxy, originalFunction, args);
|
|
110
|
+
const states = this.states;
|
|
111
|
+
callState(states, serviceName);
|
|
112
|
+
let observable = new Observable();
|
|
113
|
+
switch (httpMethod) {
|
|
114
|
+
case HTTPMethods.GET:
|
|
115
|
+
observable = httpClient.get(endPoint, { params: params, responseType: 'json' });
|
|
116
|
+
break;
|
|
117
|
+
case HTTPMethods.POST:
|
|
118
|
+
observable = httpClient.post(endPoint, params, { responseType: 'json' });
|
|
119
|
+
break;
|
|
120
|
+
case HTTPMethods.DELETE:
|
|
121
|
+
observable = httpClient.delete(endPoint + "/" + args[0], { responseType: 'json' });
|
|
122
|
+
break;
|
|
123
|
+
}
|
|
124
|
+
observable = observable.pipe(map((data) => setResponse(data, proxy)), tap(() => successState(states, serviceName)), catchError((error) => {
|
|
125
|
+
errorState(states, serviceName);
|
|
126
|
+
console.error(error);
|
|
127
|
+
return throwError(() => new Error('Something bad happened; please try again later.'));
|
|
128
|
+
}), takeUntilDestroyed());
|
|
129
|
+
return observable;
|
|
130
|
+
});
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
function getParams(httpMethod, proxy, fn, args) {
|
|
135
|
+
if (args.length) {
|
|
136
|
+
const source = fn.toString();
|
|
137
|
+
const match = source.match(/\((.*?)\)/);
|
|
138
|
+
const paramNames = match ? match[1].split(',').map(param => param.trim()) : [];
|
|
139
|
+
if (httpMethod === HTTPMethods.GET) {
|
|
140
|
+
let queryParams = new HttpParams();
|
|
141
|
+
paramNames.forEach((paramName, index) => {
|
|
142
|
+
queryParams = queryParams.append(paramName, args[index]);
|
|
143
|
+
});
|
|
144
|
+
return queryParams;
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
const params = {};
|
|
148
|
+
args.forEach((arg, index) => {
|
|
149
|
+
params[paramNames[index]] = arg;
|
|
150
|
+
});
|
|
151
|
+
return params;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else
|
|
155
|
+
return undefined;
|
|
156
|
+
}
|
|
157
|
+
function setResponse(data, proxy) {
|
|
158
|
+
// switch (proxy) {
|
|
159
|
+
// case ProxyTypes.Native:
|
|
160
|
+
// break;
|
|
161
|
+
// case ProxyTypes.ServerSide:
|
|
162
|
+
// break;
|
|
163
|
+
// case ProxyTypes.ClientSide:
|
|
164
|
+
// break;
|
|
165
|
+
// }
|
|
166
|
+
return new ServiceResponse(data);
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Generated bundle index. Do not edit.
|
|
171
|
+
*/
|
|
172
|
+
|
|
173
|
+
export { API_TOKEN, RestClient, ServiceCall, callState, errorState, successState };
|
|
174
|
+
//# sourceMappingURL=aril-http.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aril-http.mjs","sources":["../../projects/aril/http/src/httpClient.ts","../../projects/aril/http/src/serviceStateMethods.ts","../../projects/aril/http/lib/enums.ts","../../projects/aril/http/lib/interfaces.ts","../../projects/aril/http/src/serviceBase.ts","../../projects/aril/http/aril-http.ts"],"sourcesContent":["import { HttpClient } from \"@angular/common/http\";\r\nimport { InjectionToken, Injector, inject } from \"@angular/core\";\r\nimport { APIs } from \"../lib/enums\";\r\nimport { ServiceCallStateMap } from \"../lib/interfaces\";\r\n\r\nexport const API_TOKEN = new InjectionToken<APIs>('API');\r\n\r\nexport abstract class RestClient {\r\n private readonly httpClient = inject(HttpClient);\r\n private readonly baseAPI = inject(API_TOKEN);\r\n private readonly injector = inject(Injector);\r\n\r\n abstract states: ServiceCallStateMap<any>;\r\n}","/* eslint-disable @typescript-eslint/no-explicit-any */\r\n\r\nimport { ServiceCallStateMap } from \"../lib/interfaces\";\r\n\r\nexport const callState = (states: ServiceCallStateMap<any>, serviceName: any): void => {\r\n states[serviceName] = {\r\n serviceCalled: true,\r\n waitingForResponse: true,\r\n responseIsRecieved: false,\r\n serviceCallFailed: false\r\n };\r\n}\r\nexport const successState = (states: ServiceCallStateMap<any>, serviceName: any): void => {\r\n states[serviceName] = {\r\n serviceCalled: true,\r\n waitingForResponse: false,\r\n responseIsRecieved: true,\r\n serviceCallFailed: false,\r\n };\r\n}\r\nexport const errorState = (states: ServiceCallStateMap<any>, serviceName: any): void => {\r\n states[serviceName] = {\r\n serviceCalled: true,\r\n waitingForResponse: false,\r\n responseIsRecieved: true,\r\n serviceCallFailed: true,\r\n };\r\n}","export enum HTTPMethods {\r\n GET = \"GET\", // Read\r\n POST = \"POST\", // Create\r\n DELETE = \"DELETE\", // Delete\r\n};\r\n\r\nexport enum APIs {\r\n crm = \"crm\",\r\n wdm = \"wdm\",\r\n billing = \"billing\",\r\n payment = \"payment\",\r\n yeap = \"yeap\"\r\n}\r\n\r\nexport enum ProxyTypes {\r\n Native,\r\n ServerSide,\r\n ClientSide\r\n}","import { ProxyTypes } from \"./enums\";\r\n\r\nexport interface ServiceCallStates {\r\n serviceCalled: boolean;\r\n waitingForResponse: boolean;\r\n responseIsRecieved: boolean;\r\n serviceCallFailed: boolean;\r\n}\r\n\r\nexport type ServiceCallStateMap<T> = {\r\n [K in keyof T]?: T[K] extends Function ? ServiceCallStates : never;\r\n}\r\n\r\nexport class ServiceResponse<T> {\r\n params: any;\r\n response: T;\r\n proxy: ProxyTypes;\r\n items: Array<T>;\r\n paging: {\r\n currentPage: number;\r\n pageSize: number\r\n totalItemCount: number;\r\n totalPageCount: number;\r\n };\r\n\r\n constructor(resp?: T) {\r\n this.params = undefined;\r\n this.response = resp ?? {} as T;\r\n this.proxy = ProxyTypes.Native;\r\n this.items = [];\r\n this.paging = {\r\n currentPage: 1,\r\n pageSize: 10,\r\n totalItemCount: 0,\r\n totalPageCount: 0\r\n };\r\n }\r\n}\r\n\r\nexport class ClientSidePagingResponse {\r\n originalResponse: any;\r\n allItems: any[];\r\n\r\n constructor() {\r\n this.allItems = [];\r\n }\r\n}\r\n\r\nexport class ServerSidePagingRequest {\r\n params: any;\r\n pageNumber: number;\r\n pageSize: number;\r\n\r\n constructor() {\r\n this.params = undefined;\r\n this.pageNumber = 1;\r\n this.pageSize = 10;\r\n }\r\n}\r\n\r\nexport class ServerSidePagingResponse {\r\n originalResponse: any;\r\n items: any[];\r\n totalItemCount: number;\r\n totalPageCount: number;\r\n\r\n constructor() {\r\n this.items = [];\r\n this.totalItemCount = 0;\r\n this.totalPageCount = 0;\r\n }\r\n}","/* eslint-disable @typescript-eslint/no-explicit-any */\r\n\r\n/** TODO: ADD INTERCEPTOR */\r\n/** TODO: SET REQUEST & RESPONSE ACCORDING TO PROXY */\r\n\r\nimport { Observable, throwError } from 'rxjs';\r\nimport { catchError, map, tap } from 'rxjs/operators';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { HttpErrorResponse, HttpClient, HttpParams } from '@angular/common/http';\r\nimport { callState, successState, errorState } from './serviceStateMethods';\r\nimport { runInInjectionContext } from '@angular/core';\r\nimport { APIs, HTTPMethods, ProxyTypes } from '../lib/enums';\r\nimport { ServiceCallStateMap, ServiceResponse } from '../lib/interfaces';\r\nimport { Interfaces } from \"aril/util/lib\";\r\n\r\nexport function ServiceCall(httpMethod: HTTPMethods, proxy: ProxyTypes, remoteAPI?: APIs): MethodDecorator {\r\n return function (serviceClass: object, serviceName: string | symbol, descriptor: PropertyDescriptor) {\r\n const originalFunction = descriptor.value;\r\n\r\n descriptor.value = function (...args: any[]) {\r\n\r\n return runInInjectionContext((<any>this).injector, () => {\r\n const httpClient: HttpClient = (<any>this).httpClient;\r\n const api: APIs = remoteAPI ?? (<any>this).baseAPI;\r\n const endPoint: string = api + <string>serviceName;\r\n const params = getParams(httpMethod, proxy, originalFunction, args);\r\n const states: ServiceCallStateMap<any> = (<any>this).states;\r\n\r\n callState(states, serviceName);\r\n\r\n let observable: Observable<any> = new Observable<any>();\r\n\r\n switch (httpMethod) {\r\n case HTTPMethods.GET:\r\n observable = httpClient.get<any>(endPoint, { params: params as HttpParams, responseType: 'json' });\r\n break;\r\n case HTTPMethods.POST:\r\n observable = httpClient.post<any>(endPoint, params, { responseType: 'json' });\r\n break;\r\n case HTTPMethods.DELETE:\r\n observable = httpClient.delete<any>(endPoint + \"/\" + args[0], { responseType: 'json' });\r\n break;\r\n }\r\n\r\n observable = observable.pipe(\r\n map((data) => setResponse(data, proxy)),\r\n tap(() => successState(states, serviceName)),\r\n catchError((error: HttpErrorResponse) => {\r\n errorState(states, serviceName);\r\n console.error(error);\r\n return throwError(() => new Error('Something bad happened; please try again later.'));\r\n }),\r\n takeUntilDestroyed()\r\n );\r\n\r\n return observable;\r\n });\r\n };\r\n };\r\n}\r\n\r\nfunction getParams(httpMethod: HTTPMethods, proxy: ProxyTypes, fn: () => any, args: any[]): HttpParams | Interfaces.MapStringString | undefined {\r\n if (args.length) {\r\n const source = fn.toString();\r\n const match = source.match(/\\((.*?)\\)/);\r\n const paramNames = match ? match[1].split(',').map(param => param.trim()) : [];\r\n\r\n if (httpMethod === HTTPMethods.GET) {\r\n let queryParams = new HttpParams()\r\n\r\n paramNames.forEach((paramName, index) => {\r\n queryParams = queryParams.append(paramName, args[index]);\r\n });\r\n return queryParams;\r\n }\r\n else {\r\n const params: Interfaces.MapStringString = {};\r\n\r\n args.forEach((arg, index) => {\r\n params[paramNames[index]] = arg;\r\n });\r\n\r\n return params;\r\n }\r\n }\r\n else return undefined;\r\n}\r\n\r\nfunction setResponse(data: any, proxy: ProxyTypes) {\r\n // switch (proxy) {\r\n // case ProxyTypes.Native:\r\n // break;\r\n // case ProxyTypes.ServerSide:\r\n // break;\r\n // case ProxyTypes.ClientSide:\r\n // break;\r\n // }\r\n\r\n return new ServiceResponse<any>(data)\r\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
class ButtonComponent {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.1", type: ButtonComponent, isStandalone: true, selector: "aril-ui-button", ngImport: i0, template: "<p>button works!</p>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ standalone: true, selector: 'aril-ui-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p>button works!</p>\n" }]
|
|
11
|
+
}] });
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Generated bundle index. Do not edit.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export { ButtonComponent };
|
|
18
|
+
//# sourceMappingURL=aril-ui-button.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aril-ui-button.mjs","sources":["../../projects/aril/ui/button/src/button.component.ts","../../projects/aril/ui/button/src/button.component.html","../../projects/aril/ui/button/aril-ui-button.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n standalone: true,\n selector: 'aril-ui-button',\n templateUrl: './button.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ButtonComponent {}\n","<p>button works!</p>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAQa,eAAe,CAAA;8GAAf,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAf,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAe,0ECR5B,wBACA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FDOa,eAAe,EAAA,UAAA,EAAA,CAAA;kBAN3B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACN,QAAA,EAAA,gBAAgB,EAET,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,wBAAA,EAAA,CAAA;;;AENjD;;AAEG;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
class CalendarComponent {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.1", type: CalendarComponent, isStandalone: true, selector: "aril-ui-calendar", ngImport: i0, template: "<p>calendar works!</p>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CalendarComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ standalone: true, selector: 'aril-ui-calendar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p>calendar works!</p>\r\n" }]
|
|
11
|
+
}] });
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Generated bundle index. Do not edit.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export { CalendarComponent };
|
|
18
|
+
//# sourceMappingURL=aril-ui-calendar.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aril-ui-calendar.mjs","sources":["../../projects/aril/ui/calendar/src/calendar.component.ts","../../projects/aril/ui/calendar/src/calendar.component.html","../../projects/aril/ui/calendar/aril-ui-calendar.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'aril-ui-calendar',\r\n templateUrl: './calendar.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CalendarComponent {\r\n\r\n}\r\n","<p>calendar works!</p>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAQa,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,4ECR9B,4BACA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FDOa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACN,QAAA,EAAA,kBAAkB,EAEX,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA;;;AENjD;;AAEG;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Component, ChangeDetectionStrategy } from '@angular/core';
|
|
3
|
+
|
|
4
|
+
class CheckboxComponent {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
6
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.1", type: CheckboxComponent, isStandalone: true, selector: "aril-ui-checkbox", ngImport: i0, template: "<p>checkbox works!</p>\r\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
7
|
+
}
|
|
8
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CheckboxComponent, decorators: [{
|
|
9
|
+
type: Component,
|
|
10
|
+
args: [{ standalone: true, selector: 'aril-ui-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p>checkbox works!</p>\r\n" }]
|
|
11
|
+
}] });
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Generated bundle index. Do not edit.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
export { CheckboxComponent };
|
|
18
|
+
//# sourceMappingURL=aril-ui-checkbox.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aril-ui-checkbox.mjs","sources":["../../projects/aril/ui/checkbox/src/checkbox.component.ts","../../projects/aril/ui/checkbox/src/checkbox.component.html","../../projects/aril/ui/checkbox/aril-ui-checkbox.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'aril-ui-checkbox',\r\n templateUrl: './checkbox.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class CheckboxComponent {\r\n\r\n}\r\n","<p>checkbox works!</p>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAQa,iBAAiB,CAAA;8GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAjB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAiB,4ECR9B,4BACA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAA;;2FDOa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAN7B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,EACN,QAAA,EAAA,kBAAkB,EAEX,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4BAAA,EAAA,CAAA;;;AENjD;;AAEG;;;;"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Directive, Input, Injectable } from '@angular/core';
|
|
3
|
+
import * as i1 from '@angular/forms';
|
|
4
|
+
import { FormControl, FormGroup, FormArray } from '@angular/forms';
|
|
5
|
+
import 'aril/util/primitive-extensions';
|
|
6
|
+
|
|
7
|
+
class InputDisabledDirective {
|
|
8
|
+
constructor(ngControl) {
|
|
9
|
+
this.ngControl = ngControl;
|
|
10
|
+
}
|
|
11
|
+
set arilDisabled(condition) {
|
|
12
|
+
const action = condition ? 'disable' : 'enable';
|
|
13
|
+
if (this.ngControl.control)
|
|
14
|
+
this.ngControl.control[action]();
|
|
15
|
+
}
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: InputDisabledDirective, deps: [{ token: i1.NgControl }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.1.1", type: InputDisabledDirective, isStandalone: true, selector: "[arilDisabled]", inputs: { arilDisabled: "arilDisabled" }, ngImport: i0 }); }
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: InputDisabledDirective, decorators: [{
|
|
20
|
+
type: Directive,
|
|
21
|
+
args: [{
|
|
22
|
+
standalone: true,
|
|
23
|
+
selector: '[arilDisabled]'
|
|
24
|
+
}]
|
|
25
|
+
}], ctorParameters: () => [{ type: i1.NgControl }], propDecorators: { arilDisabled: [{
|
|
26
|
+
type: Input
|
|
27
|
+
}] } });
|
|
28
|
+
|
|
29
|
+
class CommonInputValidatorsService {
|
|
30
|
+
/**
|
|
31
|
+
* @param sdCtrlName - name of the start date form control
|
|
32
|
+
* @param edCtrlName - name of the end date form control
|
|
33
|
+
* @param rangeValue - range between start and end date. Default value is 1
|
|
34
|
+
* @param rangeFormat - format of the range. Default value is "day"
|
|
35
|
+
*/
|
|
36
|
+
dateRange(sdCtrlName, edCtrlName, rangeValue = 0, rangeFormat = "day") {
|
|
37
|
+
return (control) => {
|
|
38
|
+
const start = control.get(sdCtrlName)?.value;
|
|
39
|
+
const end = control.get(edCtrlName)?.value;
|
|
40
|
+
const startJSDate = start.longToDate();
|
|
41
|
+
const endJSDate = end.longToDate();
|
|
42
|
+
if (startJSDate && endJSDate) {
|
|
43
|
+
const isRangeValid = (endJSDate.getTime() - startJSDate.getTime() > rangeValue);
|
|
44
|
+
return isRangeValid ? null : { dateRange: `The end date must be at least ${rangeValue} ${rangeFormat} bigger than the start date` };
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* @description - pasword match vs.
|
|
51
|
+
*/
|
|
52
|
+
strictMatch(controlName, matchingControlName) {
|
|
53
|
+
return (control) => {
|
|
54
|
+
const firstField = control.get(controlName);
|
|
55
|
+
const secondField = control.get(matchingControlName);
|
|
56
|
+
if (!firstField || !secondField) {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
if (firstField.value !== secondField.value) {
|
|
60
|
+
return { strictMatch: `${controlName} and ${matchingControlName} do not match` };
|
|
61
|
+
}
|
|
62
|
+
return null;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CommonInputValidatorsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
66
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CommonInputValidatorsService, providedIn: 'root' }); }
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.1", ngImport: i0, type: CommonInputValidatorsService, decorators: [{
|
|
69
|
+
type: Injectable,
|
|
70
|
+
args: [{
|
|
71
|
+
providedIn: 'root'
|
|
72
|
+
}]
|
|
73
|
+
}] });
|
|
74
|
+
|
|
75
|
+
const checkValidInputs = (formGroup) => {
|
|
76
|
+
Object.keys(formGroup.controls).forEach(field => {
|
|
77
|
+
const control = formGroup.get(field);
|
|
78
|
+
if (control instanceof FormControl) {
|
|
79
|
+
control.markAsTouched({ onlySelf: true });
|
|
80
|
+
control.markAsDirty({ onlySelf: true });
|
|
81
|
+
}
|
|
82
|
+
else if (control instanceof FormGroup || control instanceof FormArray) {
|
|
83
|
+
checkValidInputs(control);
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
const addControlsWithValidation = (form, controls) => {
|
|
89
|
+
controls.forEach(control => {
|
|
90
|
+
if (!form.contains(control.name)) {
|
|
91
|
+
form.addControl(control.name, new FormControl('', control.validator));
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
const removeControls = (form, controlNames) => {
|
|
96
|
+
controlNames.forEach(controlName => {
|
|
97
|
+
if (form.contains(controlName)) {
|
|
98
|
+
form.removeControl(controlName);
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
};
|
|
102
|
+
const updateValueAndValidities = (form, controlNames) => {
|
|
103
|
+
controlNames.forEach(controlName => {
|
|
104
|
+
if (form.contains(controlName)) {
|
|
105
|
+
form.get(controlName)?.updateValueAndValidity();
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Generated bundle index. Do not edit.
|
|
112
|
+
*/
|
|
113
|
+
|
|
114
|
+
export { CommonInputValidatorsService, InputDisabledDirective, addControlsWithValidation, checkValidInputs, removeControls, updateValueAndValidities };
|
|
115
|
+
//# sourceMappingURL=aril-ui-lib.mjs.map
|