@stamhoofd/utility 1.1.15 → 2.1.3
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/LICENSE +661 -0
- package/dist/index.d.ts +6 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/src/Colors.d.ts +39 -0
- package/dist/src/Colors.d.ts.map +1 -0
- package/dist/src/Colors.js +240 -0
- package/dist/src/Colors.js.map +1 -0
- package/dist/src/DataValidator.d.ts +4 -0
- package/dist/src/DataValidator.d.ts.map +1 -0
- package/dist/src/DataValidator.js +20 -0
- package/dist/src/DataValidator.js.map +1 -0
- package/dist/src/Formatter.d.ts +52 -6
- package/dist/src/Formatter.d.ts.map +1 -1
- package/dist/src/Formatter.js +218 -16
- package/dist/src/Formatter.js.map +1 -1
- package/dist/src/GoogleTranslateHelper.d.ts +5 -0
- package/dist/src/GoogleTranslateHelper.d.ts.map +1 -0
- package/dist/src/GoogleTranslateHelper.js +22 -0
- package/dist/src/GoogleTranslateHelper.js.map +1 -0
- package/dist/src/Sleep.d.ts +2 -0
- package/dist/src/Sleep.d.ts.map +1 -0
- package/dist/src/Sleep.js +8 -0
- package/dist/src/Sleep.js.map +1 -0
- package/dist/src/Sorter.d.ts +19 -7
- package/dist/src/Sorter.d.ts.map +1 -1
- package/dist/src/Sorter.js +37 -0
- package/dist/src/Sorter.js.map +1 -1
- package/dist/src/StringCompare.d.ts +16 -1
- package/dist/src/StringCompare.d.ts.map +1 -1
- package/dist/src/StringCompare.js +43 -1
- package/dist/src/StringCompare.js.map +1 -1
- package/dist/src/Throttle.d.ts +2 -0
- package/dist/src/Throttle.d.ts.map +1 -0
- package/dist/src/Throttle.js +24 -0
- package/dist/src/Throttle.js.map +1 -0
- package/esm/dist/index.d.ts +6 -1
- package/esm/dist/index.d.ts.map +1 -1
- package/esm/dist/index.js +6 -1
- package/esm/dist/index.js.map +1 -1
- package/esm/dist/src/Colors.d.ts +39 -0
- package/esm/dist/src/Colors.d.ts.map +1 -0
- package/esm/dist/src/Colors.js +236 -0
- package/esm/dist/src/Colors.js.map +1 -0
- package/esm/dist/src/DataValidator.d.ts +4 -0
- package/esm/dist/src/DataValidator.d.ts.map +1 -0
- package/esm/dist/src/DataValidator.js +16 -0
- package/esm/dist/src/DataValidator.js.map +1 -0
- package/esm/dist/src/Formatter.d.ts +52 -6
- package/esm/dist/src/Formatter.d.ts.map +1 -1
- package/esm/dist/src/Formatter.js +218 -16
- package/esm/dist/src/Formatter.js.map +1 -1
- package/esm/dist/src/GoogleTranslateHelper.d.ts +5 -0
- package/esm/dist/src/GoogleTranslateHelper.d.ts.map +1 -0
- package/esm/dist/src/GoogleTranslateHelper.js +18 -0
- package/esm/dist/src/GoogleTranslateHelper.js.map +1 -0
- package/esm/dist/src/Sleep.d.ts +2 -0
- package/esm/dist/src/Sleep.d.ts.map +1 -0
- package/esm/dist/src/Sleep.js +4 -0
- package/esm/dist/src/Sleep.js.map +1 -0
- package/esm/dist/src/Sorter.d.ts +19 -7
- package/esm/dist/src/Sorter.d.ts.map +1 -1
- package/esm/dist/src/Sorter.js +37 -0
- package/esm/dist/src/Sorter.js.map +1 -1
- package/esm/dist/src/StringCompare.d.ts +16 -1
- package/esm/dist/src/StringCompare.d.ts.map +1 -1
- package/esm/dist/src/StringCompare.js +43 -1
- package/esm/dist/src/StringCompare.js.map +1 -1
- package/esm/dist/src/Throttle.d.ts +2 -0
- package/esm/dist/src/Throttle.d.ts.map +1 -0
- package/esm/dist/src/Throttle.js +20 -0
- package/esm/dist/src/Throttle.js.map +1 -0
- package/package.json +4 -19
package/dist/src/Formatter.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Formatter = void 0;
|
|
4
|
+
const luxon_1 = require("luxon");
|
|
5
|
+
const Sorter_1 = require("./Sorter");
|
|
4
6
|
function pad(number) {
|
|
5
7
|
if (number < 10) {
|
|
6
8
|
return '0' + number;
|
|
@@ -8,63 +10,204 @@ function pad(number) {
|
|
|
8
10
|
return number;
|
|
9
11
|
}
|
|
10
12
|
class Formatter {
|
|
11
|
-
static
|
|
13
|
+
static removeAccents(name) {
|
|
12
14
|
name = name.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
13
|
-
return name
|
|
15
|
+
return name;
|
|
16
|
+
}
|
|
17
|
+
static emailSenderName(name) {
|
|
18
|
+
return this.removeAccents(name).replace(/[^A-Za-z]+/g, " ").trim();
|
|
19
|
+
}
|
|
20
|
+
static slug(name) {
|
|
21
|
+
return this.removeAccents(name).toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^-+/, "").replace(/-+$/, "");
|
|
22
|
+
}
|
|
23
|
+
static slugEmail(name) {
|
|
24
|
+
return this.removeAccents(name).toLowerCase().replace(/[^a-z0-9_]+/g, "-").replace(/^-+/, "").replace(/-+$/, "");
|
|
25
|
+
}
|
|
26
|
+
static fileSlug(name) {
|
|
27
|
+
return this.removeAccents(name).replace(/[^A-Za-z0-9-]+/g, " ").trim();
|
|
28
|
+
}
|
|
29
|
+
static removeDuplicateSpaces(name) {
|
|
30
|
+
return name.replace(/\s+/, " ");
|
|
14
31
|
}
|
|
15
32
|
/**
|
|
16
33
|
* 1 = january
|
|
17
34
|
*/
|
|
18
35
|
static month(index) {
|
|
36
|
+
if (typeof index === "object") {
|
|
37
|
+
const datetime = luxon_1.DateTime.fromJSDate(index).setZone(this.timezone);
|
|
38
|
+
index = datetime.month;
|
|
39
|
+
}
|
|
19
40
|
const monthNames = ["januari", "februari", "maart", "april", "mei", "juni",
|
|
20
41
|
"juli", "augustus", "september", "oktober", "november", "december"
|
|
21
42
|
];
|
|
22
43
|
return monthNames[index - 1];
|
|
23
44
|
}
|
|
45
|
+
static weekDay(date) {
|
|
46
|
+
if (!date) {
|
|
47
|
+
// Crash protection in case undefined get passed
|
|
48
|
+
return "?";
|
|
49
|
+
}
|
|
50
|
+
const monthNames = ["maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag", "zondag",];
|
|
51
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
52
|
+
return monthNames[datetime.weekday - 1];
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* 1 januari (2020). Year only in different year if withYear is null (default)
|
|
56
|
+
*/
|
|
57
|
+
static date(date, withYear = null) {
|
|
58
|
+
if (!date) {
|
|
59
|
+
// Crash protection in case undefined get passed
|
|
60
|
+
return "?";
|
|
61
|
+
}
|
|
62
|
+
const currentYear = luxon_1.DateTime.now().setZone(this.timezone).year;
|
|
63
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
64
|
+
const year = datetime.year;
|
|
65
|
+
return datetime.day + " " + this.month(datetime.month) + (currentYear != year || withYear === true ? (" " + year) : "");
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* januari 2020
|
|
69
|
+
*/
|
|
70
|
+
static dateWithoutDay(date, options) {
|
|
71
|
+
var _a;
|
|
72
|
+
if (!date) {
|
|
73
|
+
// Crash protection in case undefined get passed
|
|
74
|
+
return "?";
|
|
75
|
+
}
|
|
76
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone((_a = options === null || options === void 0 ? void 0 : options.timezone) !== null && _a !== void 0 ? _a : this.timezone);
|
|
77
|
+
const year = datetime.year;
|
|
78
|
+
return this.month(datetime.month) + " " + year;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* 2020
|
|
82
|
+
*/
|
|
83
|
+
static year(date) {
|
|
84
|
+
if (!date) {
|
|
85
|
+
// Crash protection in case undefined get passed
|
|
86
|
+
return 0;
|
|
87
|
+
}
|
|
88
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
89
|
+
return datetime.year;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* maandag, 1 januari (2020). Year only in different year
|
|
93
|
+
*/
|
|
94
|
+
static dateWithDay(date) {
|
|
95
|
+
if (!date) {
|
|
96
|
+
// Crash protection in case undefined get passed
|
|
97
|
+
return "?";
|
|
98
|
+
}
|
|
99
|
+
return this.weekDay(date) + ", " + this.date(date);
|
|
100
|
+
}
|
|
24
101
|
/**
|
|
25
|
-
* 1 januari (2020). Year only in different year
|
|
102
|
+
* maandag, 1 januari (2020) om XX:XX. Year only in different year
|
|
26
103
|
*/
|
|
27
|
-
static
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
104
|
+
static dateTimeWithDay(date) {
|
|
105
|
+
if (!date) {
|
|
106
|
+
// Crash protection in case undefined get passed
|
|
107
|
+
return "?";
|
|
108
|
+
}
|
|
109
|
+
return this.weekDay(date) + ", " + this.dateTime(date);
|
|
31
110
|
}
|
|
32
111
|
/**
|
|
33
112
|
* 01/01/2020
|
|
34
113
|
*/
|
|
35
|
-
static dateNumber(date) {
|
|
36
|
-
|
|
37
|
-
|
|
114
|
+
static dateNumber(date, withYear = true) {
|
|
115
|
+
if (!date) {
|
|
116
|
+
// Crash protection in case undefined get passed
|
|
117
|
+
return "?";
|
|
118
|
+
}
|
|
119
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
120
|
+
return (datetime.day + "").padStart(2, "0") + "/" + (datetime.month + "").padStart(2, "0") + (withYear ? "/" + datetime.year : "");
|
|
38
121
|
}
|
|
39
122
|
/**
|
|
40
123
|
* 2020-01-31
|
|
41
124
|
*/
|
|
42
125
|
static dateIso(date) {
|
|
43
|
-
|
|
44
|
-
|
|
126
|
+
if (!date) {
|
|
127
|
+
// Crash protection in case undefined get passed
|
|
128
|
+
return "?";
|
|
129
|
+
}
|
|
130
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
131
|
+
const year = datetime.year;
|
|
132
|
+
return year + "-" + (datetime.month + "").padStart(2, "0") + "-" + (datetime.day + "").padStart(2, "0");
|
|
45
133
|
}
|
|
46
134
|
/**
|
|
47
135
|
* 12:00
|
|
48
136
|
*/
|
|
49
137
|
static time(date) {
|
|
50
|
-
|
|
138
|
+
if (!date) {
|
|
139
|
+
// Crash protection in case undefined get passed
|
|
140
|
+
return "?";
|
|
141
|
+
}
|
|
142
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
143
|
+
return datetime.hour + ":" + (datetime.minute + "").padStart(2, "0");
|
|
144
|
+
}
|
|
145
|
+
static luxon(date = new Date()) {
|
|
146
|
+
return luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* 12:00
|
|
150
|
+
*/
|
|
151
|
+
static timeIso(date) {
|
|
152
|
+
if (!date) {
|
|
153
|
+
// Crash protection in case undefined get passed
|
|
154
|
+
return "?";
|
|
155
|
+
}
|
|
156
|
+
const datetime = luxon_1.DateTime.fromJSDate(date).setZone(this.timezone);
|
|
157
|
+
return (datetime.hour + "").padStart(2, "0") + ":" + (datetime.minute + "").padStart(2, "0");
|
|
158
|
+
}
|
|
159
|
+
static uniqueArray(array) {
|
|
160
|
+
function onlyUnique(value, index, self) {
|
|
161
|
+
return self.indexOf(value) === index;
|
|
162
|
+
}
|
|
163
|
+
return array.filter(onlyUnique);
|
|
51
164
|
}
|
|
52
165
|
/**
|
|
53
166
|
* 1 januari (2020) om 12:00. Year only in different year
|
|
54
167
|
*/
|
|
55
|
-
static dateTime(date) {
|
|
168
|
+
static dateTime(date, hideZero = false) {
|
|
169
|
+
if (!date) {
|
|
170
|
+
// Crash protection in case undefined get passed
|
|
171
|
+
return "?";
|
|
172
|
+
}
|
|
173
|
+
if (hideZero && this.time(date) == "0:00") {
|
|
174
|
+
return this.date(date);
|
|
175
|
+
}
|
|
56
176
|
return this.date(date) + " om " + this.time(date);
|
|
57
177
|
}
|
|
58
|
-
static
|
|
178
|
+
static integer(value) {
|
|
179
|
+
const formatted = new Intl.NumberFormat("nl-BE").format(Math.abs(value));
|
|
180
|
+
const v = (value < 0 ? "- " : "") + formatted;
|
|
181
|
+
return v;
|
|
182
|
+
}
|
|
183
|
+
static percentage(value) {
|
|
184
|
+
const formatted = new Intl.NumberFormat("nl-BE").format(Math.abs(value / 100));
|
|
185
|
+
const v = (value < 0 ? "- " : "") + formatted;
|
|
186
|
+
return v + "%";
|
|
187
|
+
}
|
|
188
|
+
static price(value, removeZeroDecimals = true) {
|
|
59
189
|
const formatted = new Intl.NumberFormat("nl-BE", {
|
|
60
190
|
style: "currency",
|
|
61
191
|
currency: "EUR",
|
|
62
192
|
}).format(Math.abs(value) / 100);
|
|
63
|
-
|
|
193
|
+
const v = (value < 0 ? "- " : "") + formatted.replace(new RegExp("EUR", "ig"), '€');
|
|
194
|
+
if (removeZeroDecimals && (v.endsWith(",00") || v.endsWith(".00"))) {
|
|
195
|
+
return v.substring(0, v.length - 3);
|
|
196
|
+
}
|
|
197
|
+
return v;
|
|
198
|
+
}
|
|
199
|
+
static priceChange(value) {
|
|
200
|
+
if (value >= 0) {
|
|
201
|
+
return "+ " + this.price(value);
|
|
202
|
+
}
|
|
203
|
+
return this.price(value);
|
|
64
204
|
}
|
|
65
205
|
static capitalizeFirstLetter(string) {
|
|
66
206
|
return string.charAt(0).toUpperCase() + string.slice(1);
|
|
67
207
|
}
|
|
208
|
+
static capitalizeWords(string) {
|
|
209
|
+
return string.split(" ").map(s => this.capitalizeFirstLetter(s)).join(" ");
|
|
210
|
+
}
|
|
68
211
|
static fileSize(bytes) {
|
|
69
212
|
if (bytes < 1000) {
|
|
70
213
|
return bytes + " bytes";
|
|
@@ -77,11 +220,70 @@ class Formatter {
|
|
|
77
220
|
}
|
|
78
221
|
return Math.round(bytes / 1000 / 1000 / 10) / 100 + " GB";
|
|
79
222
|
}
|
|
223
|
+
static minutesPadded(minutes) {
|
|
224
|
+
const h = Math.floor(minutes / 60);
|
|
225
|
+
const m = minutes - h * 60;
|
|
226
|
+
return (h + "").padStart(2, "0") + ":" + (m + "").padStart(2, "0");
|
|
227
|
+
}
|
|
80
228
|
static minutes(minutes) {
|
|
81
229
|
const h = Math.floor(minutes / 60);
|
|
82
230
|
const m = minutes - h * 60;
|
|
83
231
|
return h + ":" + (m + "").padStart(2, "0");
|
|
84
232
|
}
|
|
233
|
+
static escapeHtml(unsafe) {
|
|
234
|
+
return unsafe
|
|
235
|
+
.replace(/&/g, "&")
|
|
236
|
+
.replace(/</g, "<")
|
|
237
|
+
.replace(/>/g, ">")
|
|
238
|
+
.replace(/"/g, """)
|
|
239
|
+
.replace(/'/g, "'");
|
|
240
|
+
}
|
|
241
|
+
static joinLast(array, separator, lastSeparator) {
|
|
242
|
+
array = array.slice();
|
|
243
|
+
const last = array.pop();
|
|
244
|
+
if (last === undefined) {
|
|
245
|
+
return "";
|
|
246
|
+
}
|
|
247
|
+
if (array.length == 0) {
|
|
248
|
+
return last + "";
|
|
249
|
+
}
|
|
250
|
+
return array.join(separator) + lastSeparator + last;
|
|
251
|
+
}
|
|
252
|
+
static ordinalNumber(number) {
|
|
253
|
+
if (number == 1) {
|
|
254
|
+
return "eerste";
|
|
255
|
+
}
|
|
256
|
+
if (number == 2) {
|
|
257
|
+
return "tweede";
|
|
258
|
+
}
|
|
259
|
+
if (number == 3) {
|
|
260
|
+
return "derde";
|
|
261
|
+
}
|
|
262
|
+
return number + "e";
|
|
263
|
+
}
|
|
264
|
+
static pluralText(num, singular, plural) {
|
|
265
|
+
if (num === 1) {
|
|
266
|
+
return 'één ' + singular;
|
|
267
|
+
}
|
|
268
|
+
return num + ' ' + plural;
|
|
269
|
+
}
|
|
270
|
+
static groupNamesByFamily(names) {
|
|
271
|
+
const n = names.slice().sort((a, b) => Sorter_1.Sorter.stack(a.lastName.localeCompare(b.lastName), a.firstName.localeCompare(b.firstName)));
|
|
272
|
+
const firstNames = this.uniqueArray(n.map(n => n.firstName));
|
|
273
|
+
const lastNames = this.uniqueArray(n.map(n => n.lastName));
|
|
274
|
+
return this.joinLast(firstNames, ", ", " en ") + (lastNames.length > 0 ? (" " + lastNames.join('-')) : '');
|
|
275
|
+
}
|
|
276
|
+
static firstLetters(str, maxLength) {
|
|
277
|
+
if (!str) {
|
|
278
|
+
return "";
|
|
279
|
+
}
|
|
280
|
+
if (maxLength === 1) {
|
|
281
|
+
return str.substr(0, 1).toLocaleUpperCase();
|
|
282
|
+
}
|
|
283
|
+
const splitted = Formatter.slug(str).split('-');
|
|
284
|
+
return splitted.slice(0, maxLength).map(s => s.substr(0, 1).toLocaleUpperCase()).join('');
|
|
285
|
+
}
|
|
85
286
|
}
|
|
86
287
|
exports.Formatter = Formatter;
|
|
288
|
+
Formatter.timezone = "Europe/Brussels";
|
|
87
289
|
//# sourceMappingURL=Formatter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Formatter.js","sourceRoot":"","sources":["../../src/Formatter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Formatter.js","sourceRoot":"","sources":["../../src/Formatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoogleTranslateHelper.d.ts","sourceRoot":"","sources":["../../src/GoogleTranslateHelper.ts"],"names":[],"mappings":"AAAA,qBAAa,qBAAqB;IAC9B,MAAM,CAAC,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIvD,MAAM,CAAC,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAc9D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GoogleTranslateHelper = void 0;
|
|
4
|
+
class GoogleTranslateHelper {
|
|
5
|
+
static isGoogleTranslateDomain(domain) {
|
|
6
|
+
return domain.endsWith(".translate.goog");
|
|
7
|
+
}
|
|
8
|
+
static getDomainFromTranslateDomain(domain) {
|
|
9
|
+
if (this.isGoogleTranslateDomain(domain)) {
|
|
10
|
+
// Strip it out
|
|
11
|
+
let cleaned = domain.substr(0, domain.length - (".translate.goog").length);
|
|
12
|
+
// Replace dashes with points
|
|
13
|
+
cleaned = cleaned.replace(/-/g, ".");
|
|
14
|
+
// Replace double points with dashes
|
|
15
|
+
cleaned = cleaned.replace(/\.\./g, "-");
|
|
16
|
+
return cleaned;
|
|
17
|
+
}
|
|
18
|
+
return domain;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.GoogleTranslateHelper = GoogleTranslateHelper;
|
|
22
|
+
//# sourceMappingURL=GoogleTranslateHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoogleTranslateHelper.js","sourceRoot":"","sources":["../../src/GoogleTranslateHelper.ts"],"names":[],"mappings":";;;AAAA,MAAa,qBAAqB;IAC9B,MAAM,CAAC,uBAAuB,CAAC,MAAc;QACzC,OAAO,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;IAC7C,CAAC;IAED,MAAM,CAAC,4BAA4B,CAAC,MAAc;QAC9C,IAAI,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,eAAe;YACf,IAAI,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAE,CAAA;YAE3E,6BAA6B;YAC7B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YAEpC,oCAAoC;YACpC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;YACvC,OAAO,OAAO,CAAA;QAClB,CAAC;QACD,OAAO,MAAM,CAAA;IACjB,CAAC;CACJ;AAnBD,sDAmBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sleep.d.ts","sourceRoot":"","sources":["../../src/Sleep.ts"],"names":[],"mappings":"AAAA,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Sleep.js","sourceRoot":"","sources":["../../src/Sleep.ts"],"names":[],"mappings":";;;AAAA,SAAgB,KAAK,CAAC,EAAU;IAC5B,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAFD,sBAEC"}
|
package/dist/src/Sorter.d.ts
CHANGED
|
@@ -3,15 +3,27 @@ export declare class Sorter {
|
|
|
3
3
|
id: string;
|
|
4
4
|
}, b: {
|
|
5
5
|
id: string;
|
|
6
|
-
}):
|
|
7
|
-
static byStringProperty<Field extends keyof any>(a: Record<Field, string>, b: Record<Field, string>, field: Field):
|
|
8
|
-
static
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
6
|
+
}): 0 | 1 | -1;
|
|
7
|
+
static byStringProperty<Field extends keyof any>(a: Record<Field, string>, b: Record<Field, string>, field: Field): 0 | 1 | -1;
|
|
8
|
+
static byNumberProperty<Field extends keyof any>(a: Record<Field, number>, b: Record<Field, number>, field: Field): 0 | 1 | -1;
|
|
9
|
+
/**
|
|
10
|
+
* Sort strings ASC order
|
|
11
|
+
*/
|
|
12
|
+
static byStringValue(a: string, b: string): 0 | 1 | -1;
|
|
13
|
+
static byBooleanValue(a: boolean, b: boolean): 0 | 1 | -1;
|
|
14
|
+
static byEnumValue<T extends {}>(a: string, b: string, enumObject: T): number;
|
|
15
|
+
/**
|
|
16
|
+
* Sort from large to small - DESC
|
|
17
|
+
*/
|
|
18
|
+
static byNumberValue(a: number, b: number): 0 | 1 | -1;
|
|
19
|
+
/**
|
|
20
|
+
* Sort from new to old - DESC
|
|
21
|
+
*/
|
|
22
|
+
static byDateValue(a: Date, b: Date): 0 | 1 | -1;
|
|
12
23
|
/**
|
|
13
24
|
* Return the first non zero value from a list, or zero if all values are zero
|
|
14
25
|
*/
|
|
15
|
-
static stack(...sortResults:
|
|
26
|
+
static stack(...sortResults: number[]): number;
|
|
27
|
+
static getMostOccuringElement<T>(array: T[]): T | undefined;
|
|
16
28
|
}
|
|
17
29
|
//# sourceMappingURL=Sorter.d.ts.map
|
package/dist/src/Sorter.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sorter.d.ts","sourceRoot":"","sources":["../../src/Sorter.ts"],"names":[],"mappings":"AACA,qBAAa,MAAM;IACf,MAAM,CAAC,IAAI,CAAE,CAAC,EAAE;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC,EAAE;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC;IAU7C,MAAM,CAAC,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,EAAI,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK;IAInH,MAAM,CAAC,aAAa,CAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAa1C,MAAM,CAAC,cAAc,CAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO;IAU7C,MAAM,CAAC,aAAa,CAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAU1C,MAAM,CAAC,WAAW,CAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI;IAUpC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"Sorter.d.ts","sourceRoot":"","sources":["../../src/Sorter.ts"],"names":[],"mappings":"AACA,qBAAa,MAAM;IACf,MAAM,CAAC,IAAI,CAAE,CAAC,EAAE;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,EAAE,CAAC,EAAE;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC;IAU7C,MAAM,CAAC,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,EAAI,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK;IAInH,MAAM,CAAC,gBAAgB,CAAC,KAAK,SAAS,MAAM,GAAG,EAAI,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK;IAInH;;OAEG;IACH,MAAM,CAAC,aAAa,CAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAa1C,MAAM,CAAC,cAAc,CAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO;IAU7C,MAAM,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,EAAG,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAIrE;;OAEG;IACH,MAAM,CAAC,aAAa,CAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM;IAU1C;;OAEG;IACH,MAAM,CAAC,WAAW,CAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI;IAUpC;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,EAAE,MAAM,EAAE;IAWrC,MAAM,CAAC,sBAAsB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS;CAoB9D"}
|
package/dist/src/Sorter.js
CHANGED
|
@@ -14,6 +14,12 @@ class Sorter {
|
|
|
14
14
|
static byStringProperty(a, b, field) {
|
|
15
15
|
return this.byStringValue(a[field], b[field]);
|
|
16
16
|
}
|
|
17
|
+
static byNumberProperty(a, b, field) {
|
|
18
|
+
return this.byNumberValue(a[field], b[field]);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Sort strings ASC order
|
|
22
|
+
*/
|
|
17
23
|
static byStringValue(a, b) {
|
|
18
24
|
const af = a.toLowerCase();
|
|
19
25
|
const bf = b.toLowerCase();
|
|
@@ -34,6 +40,12 @@ class Sorter {
|
|
|
34
40
|
}
|
|
35
41
|
return 1;
|
|
36
42
|
}
|
|
43
|
+
static byEnumValue(a, b, enumObject) {
|
|
44
|
+
return Object.values(enumObject).indexOf(a) - Object.values(enumObject).indexOf(b);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Sort from large to small - DESC
|
|
48
|
+
*/
|
|
37
49
|
static byNumberValue(a, b) {
|
|
38
50
|
if (a === b) {
|
|
39
51
|
return 0;
|
|
@@ -43,6 +55,9 @@ class Sorter {
|
|
|
43
55
|
}
|
|
44
56
|
return 1;
|
|
45
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* Sort from new to old - DESC
|
|
60
|
+
*/
|
|
46
61
|
static byDateValue(a, b) {
|
|
47
62
|
if (a === b) {
|
|
48
63
|
return 0;
|
|
@@ -57,6 +72,7 @@ class Sorter {
|
|
|
57
72
|
*/
|
|
58
73
|
static stack(...sortResults) {
|
|
59
74
|
while (sortResults.length > 0) {
|
|
75
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
60
76
|
const f = sortResults.shift();
|
|
61
77
|
if (f != 0) {
|
|
62
78
|
return f;
|
|
@@ -64,6 +80,27 @@ class Sorter {
|
|
|
64
80
|
}
|
|
65
81
|
return 0;
|
|
66
82
|
}
|
|
83
|
+
static getMostOccuringElement(array) {
|
|
84
|
+
const counts = new Map();
|
|
85
|
+
for (const element of array) {
|
|
86
|
+
const count = counts.get(element);
|
|
87
|
+
if (count) {
|
|
88
|
+
counts.set(element, count + 1);
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
counts.set(element, 1);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
let maxCount = 0;
|
|
95
|
+
let mostOccuringElement;
|
|
96
|
+
for (const [element, count] of counts) {
|
|
97
|
+
if (count > maxCount) {
|
|
98
|
+
maxCount = count;
|
|
99
|
+
mostOccuringElement = element;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
return mostOccuringElement;
|
|
103
|
+
}
|
|
67
104
|
}
|
|
68
105
|
exports.Sorter = Sorter;
|
|
69
106
|
//# sourceMappingURL=Sorter.js.map
|
package/dist/src/Sorter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sorter.js","sourceRoot":"","sources":["../../src/Sorter.ts"],"names":[],"mappings":";;;AACA,MAAa,MAAM;IACf,MAAM,CAAC,IAAI,CAAE,CAAe,EAAE,CAAe;QACzC,IAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"Sorter.js","sourceRoot":"","sources":["../../src/Sorter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
export declare class StringCompare {
|
|
2
|
+
/**
|
|
3
|
+
* Return the search score = percentage (floating point) that matches.
|
|
4
|
+
* Returns zero if no match is found or if minimum percentage is not met
|
|
5
|
+
*/
|
|
6
|
+
static contains(haystack: string, needle: string): boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Return the search score = percentage (floating point) that matches.
|
|
9
|
+
* Returns zero if no match is found or if minimum percentage is not met
|
|
10
|
+
*/
|
|
11
|
+
static searchScore(haystack: string, needle: string, minimumPercentage?: number | null, minimumChars?: number | null): number;
|
|
2
12
|
/**
|
|
3
13
|
* Return the amount of characters that are equal (allowing to detect typo's)
|
|
4
14
|
*/
|
|
5
|
-
static compare(left: string, right: string, allowSplit?: boolean):
|
|
15
|
+
static compare(left: string, right: string, allowSplit?: boolean): number;
|
|
16
|
+
static matchCount(original: string, compareWith: string): number;
|
|
6
17
|
static typoCount(original: string, compareWith: string): number;
|
|
18
|
+
/**
|
|
19
|
+
* Return true if the user typed in full caps (sigh)
|
|
20
|
+
*/
|
|
21
|
+
static isFullCaps(str: string): boolean;
|
|
7
22
|
}
|
|
8
23
|
//# sourceMappingURL=StringCompare.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringCompare.d.ts","sourceRoot":"","sources":["../../src/StringCompare.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StringCompare.d.ts","sourceRoot":"","sources":["../../src/StringCompare.ts"],"names":[],"mappings":"AAEA,qBAAa,aAAa;IACtB;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO;IAO1D;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,GAAE,MAAM,GAAG,IAAS,EAAE,YAAY,GAAE,MAAM,GAAG,IAAQ,GAAG,MAAM;IAgBpI;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,UAAO,GAAG,MAAM;IAyBtE,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAOhE,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAO/D;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAO1C"}
|
|
@@ -1,7 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StringCompare = void 0;
|
|
4
|
+
const Formatter_1 = require("./Formatter");
|
|
4
5
|
class StringCompare {
|
|
6
|
+
/**
|
|
7
|
+
* Return the search score = percentage (floating point) that matches.
|
|
8
|
+
* Returns zero if no match is found or if minimum percentage is not met
|
|
9
|
+
*/
|
|
10
|
+
static contains(haystack, needle) {
|
|
11
|
+
haystack = haystack.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
12
|
+
needle = needle.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
13
|
+
return haystack.includes(needle);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Return the search score = percentage (floating point) that matches.
|
|
17
|
+
* Returns zero if no match is found or if minimum percentage is not met
|
|
18
|
+
*/
|
|
19
|
+
static searchScore(haystack, needle, minimumPercentage = 10, minimumChars = 2) {
|
|
20
|
+
if (haystack.length == 0) {
|
|
21
|
+
return 0;
|
|
22
|
+
}
|
|
23
|
+
haystack = haystack.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
24
|
+
needle = needle.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
25
|
+
const overlap = this.compare(needle, haystack);
|
|
26
|
+
if ((minimumChars == null || overlap > minimumChars) && (minimumPercentage === null || overlap >= haystack.length * minimumPercentage / 100)) {
|
|
27
|
+
return overlap;
|
|
28
|
+
}
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
5
31
|
/**
|
|
6
32
|
* Return the amount of characters that are equal (allowing to detect typo's)
|
|
7
33
|
*/
|
|
@@ -12,7 +38,7 @@ class StringCompare {
|
|
|
12
38
|
const firstLeft = left[0];
|
|
13
39
|
const firstRight = right[0];
|
|
14
40
|
if (firstLeft == firstRight) {
|
|
15
|
-
return 1 + this.compare(left.substr(1), right.substr(1));
|
|
41
|
+
return 1 + this.compare(left.substr(1), right.substr(1), true);
|
|
16
42
|
}
|
|
17
43
|
if (allowSplit) {
|
|
18
44
|
return Math.max(this.compare(left, right.substr(1), false), this.compare(right, left.substr(1), false), this.compare(left.substr(1), right.substr(1), false), this.compare(right.substr(1), left.substr(1), false));
|
|
@@ -20,12 +46,28 @@ class StringCompare {
|
|
|
20
46
|
// no split allowed -> continue to remove right side
|
|
21
47
|
return this.compare(left, right.substr(1), false);
|
|
22
48
|
}
|
|
49
|
+
static matchCount(original, compareWith) {
|
|
50
|
+
// remove special chars + lowercase
|
|
51
|
+
original = original.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
52
|
+
compareWith = compareWith.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
53
|
+
return this.compare(original, compareWith);
|
|
54
|
+
}
|
|
23
55
|
static typoCount(original, compareWith) {
|
|
24
56
|
// remove special chars + lowercase
|
|
25
57
|
original = original.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
26
58
|
compareWith = compareWith.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase().replace(/\s+/, " ").trim();
|
|
27
59
|
return Math.max(original.length, compareWith.length) - this.compare(original, compareWith);
|
|
28
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Return true if the user typed in full caps (sigh)
|
|
63
|
+
*/
|
|
64
|
+
static isFullCaps(str) {
|
|
65
|
+
const fn = Formatter_1.Formatter.removeAccents(str);
|
|
66
|
+
if (fn.toUpperCase() == fn) {
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
29
71
|
}
|
|
30
72
|
exports.StringCompare = StringCompare;
|
|
31
73
|
//# sourceMappingURL=StringCompare.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringCompare.js","sourceRoot":"","sources":["../../src/StringCompare.ts"],"names":[],"mappings":";;;AAAA,MAAa,aAAa;
|
|
1
|
+
{"version":3,"file":"StringCompare.js","sourceRoot":"","sources":["../../src/StringCompare.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Throttle.d.ts","sourceRoot":"","sources":["../../src/Throttle.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ,SAAU,GAAG,SAAS,GAAG,YAGpB,GAAG,SAgB5B,CAAC"}
|