@stamhoofd/utility 2.119.0 → 2.120.0
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/dist/Colors.d.ts.map +1 -0
- package/dist/Colors.js.map +1 -0
- package/dist/DataValidator.d.ts.map +1 -0
- package/{esm/dist/src → dist}/DataValidator.js +5 -5
- package/dist/DataValidator.js.map +1 -0
- package/dist/FiscalDocumentYearHelper.d.ts.map +1 -0
- package/{esm/dist/src → dist}/FiscalDocumentYearHelper.js +19 -19
- package/dist/FiscalDocumentYearHelper.js.map +1 -0
- package/{esm/dist/src → dist}/Formatter.d.ts +4 -0
- package/dist/Formatter.d.ts.map +1 -0
- package/{esm/dist/src → dist}/Formatter.js +22 -14
- package/dist/Formatter.js.map +1 -0
- package/dist/GoogleTranslateHelper.d.ts.map +1 -0
- package/dist/GoogleTranslateHelper.js.map +1 -0
- package/dist/STMath.d.ts.map +1 -0
- package/dist/STMath.js.map +1 -0
- package/dist/Sleep.d.ts.map +1 -0
- package/dist/Sleep.js.map +1 -0
- package/dist/Sorter.d.ts.map +1 -0
- package/dist/Sorter.js.map +1 -0
- package/dist/StringCompare.d.ts.map +1 -0
- package/dist/StringCompare.js.map +1 -0
- package/dist/Throttle.d.ts.map +1 -0
- package/dist/Throttle.js.map +1 -0
- package/dist/deepFreeze.d.ts.map +1 -0
- package/dist/deepFreeze.js.map +1 -0
- package/dist/index.d.ts +11 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -14
- package/dist/index.js.map +1 -1
- package/package.json +17 -10
- package/dist/src/Colors.d.ts.map +0 -1
- package/dist/src/Colors.js +0 -242
- package/dist/src/Colors.js.map +0 -1
- package/dist/src/DataValidator.d.ts.map +0 -1
- package/dist/src/DataValidator.js +0 -163
- package/dist/src/DataValidator.js.map +0 -1
- package/dist/src/FiscalDocumentYearHelper.d.ts.map +0 -1
- package/dist/src/FiscalDocumentYearHelper.js +0 -61
- package/dist/src/FiscalDocumentYearHelper.js.map +0 -1
- package/dist/src/Formatter.d.ts +0 -112
- package/dist/src/Formatter.d.ts.map +0 -1
- package/dist/src/Formatter.js +0 -497
- package/dist/src/Formatter.js.map +0 -1
- package/dist/src/GoogleTranslateHelper.d.ts.map +0 -1
- package/dist/src/GoogleTranslateHelper.js +0 -22
- package/dist/src/GoogleTranslateHelper.js.map +0 -1
- package/dist/src/STMath.d.ts.map +0 -1
- package/dist/src/STMath.js +0 -13
- package/dist/src/STMath.js.map +0 -1
- package/dist/src/Sleep.d.ts.map +0 -1
- package/dist/src/Sleep.js +0 -7
- package/dist/src/Sleep.js.map +0 -1
- package/dist/src/Sorter.d.ts.map +0 -1
- package/dist/src/Sorter.js +0 -105
- package/dist/src/Sorter.js.map +0 -1
- package/dist/src/StringCompare.d.ts.map +0 -1
- package/dist/src/StringCompare.js +0 -73
- package/dist/src/StringCompare.js.map +0 -1
- package/dist/src/StringCompare.test.d.ts +0 -2
- package/dist/src/StringCompare.test.d.ts.map +0 -1
- package/dist/src/StringCompare.test.js +0 -30
- package/dist/src/StringCompare.test.js.map +0 -1
- package/dist/src/Throttle.d.ts.map +0 -1
- package/dist/src/Throttle.js +0 -27
- package/dist/src/Throttle.js.map +0 -1
- package/dist/src/deepFreeze.d.ts.map +0 -1
- package/dist/src/deepFreeze.js +0 -33
- package/dist/src/deepFreeze.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- package/esm/dist/index.d.ts +0 -12
- package/esm/dist/index.d.ts.map +0 -1
- package/esm/dist/index.js +0 -12
- package/esm/dist/index.js.map +0 -1
- package/esm/dist/src/Colors.d.ts +0 -39
- package/esm/dist/src/Colors.d.ts.map +0 -1
- package/esm/dist/src/Colors.js.map +0 -1
- package/esm/dist/src/DataValidator.d.ts +0 -24
- package/esm/dist/src/DataValidator.d.ts.map +0 -1
- package/esm/dist/src/DataValidator.js.map +0 -1
- package/esm/dist/src/FiscalDocumentYearHelper.d.ts +0 -40
- package/esm/dist/src/FiscalDocumentYearHelper.d.ts.map +0 -1
- package/esm/dist/src/FiscalDocumentYearHelper.js.map +0 -1
- package/esm/dist/src/Formatter.d.ts.map +0 -1
- package/esm/dist/src/Formatter.js.map +0 -1
- package/esm/dist/src/GoogleTranslateHelper.d.ts +0 -5
- package/esm/dist/src/GoogleTranslateHelper.d.ts.map +0 -1
- package/esm/dist/src/GoogleTranslateHelper.js.map +0 -1
- package/esm/dist/src/STMath.d.ts +0 -7
- package/esm/dist/src/STMath.d.ts.map +0 -1
- package/esm/dist/src/STMath.js.map +0 -1
- package/esm/dist/src/Sleep.d.ts +0 -2
- package/esm/dist/src/Sleep.d.ts.map +0 -1
- package/esm/dist/src/Sleep.js.map +0 -1
- package/esm/dist/src/Sorter.d.ts +0 -29
- package/esm/dist/src/Sorter.d.ts.map +0 -1
- package/esm/dist/src/Sorter.js.map +0 -1
- package/esm/dist/src/StringCompare.d.ts +0 -23
- package/esm/dist/src/StringCompare.d.ts.map +0 -1
- package/esm/dist/src/StringCompare.js.map +0 -1
- package/esm/dist/src/StringCompare.test.d.ts +0 -2
- package/esm/dist/src/StringCompare.test.d.ts.map +0 -1
- package/esm/dist/src/StringCompare.test.js +0 -28
- package/esm/dist/src/StringCompare.test.js.map +0 -1
- package/esm/dist/src/Throttle.d.ts +0 -5
- package/esm/dist/src/Throttle.d.ts.map +0 -1
- package/esm/dist/src/Throttle.js.map +0 -1
- package/esm/dist/src/deepFreeze.d.ts +0 -2
- package/esm/dist/src/deepFreeze.d.ts.map +0 -1
- package/esm/dist/src/deepFreeze.js.map +0 -1
- package/esm/dist/tsconfig.tsbuildinfo +0 -1
- package/esm/package.json +0 -3
- /package/dist/{src/Colors.d.ts → Colors.d.ts} +0 -0
- /package/{esm/dist/src → dist}/Colors.js +0 -0
- /package/dist/{src/DataValidator.d.ts → DataValidator.d.ts} +0 -0
- /package/dist/{src/FiscalDocumentYearHelper.d.ts → FiscalDocumentYearHelper.d.ts} +0 -0
- /package/dist/{src/GoogleTranslateHelper.d.ts → GoogleTranslateHelper.d.ts} +0 -0
- /package/{esm/dist/src → dist}/GoogleTranslateHelper.js +0 -0
- /package/dist/{src/STMath.d.ts → STMath.d.ts} +0 -0
- /package/{esm/dist/src → dist}/STMath.js +0 -0
- /package/dist/{src/Sleep.d.ts → Sleep.d.ts} +0 -0
- /package/{esm/dist/src → dist}/Sleep.js +0 -0
- /package/dist/{src/Sorter.d.ts → Sorter.d.ts} +0 -0
- /package/{esm/dist/src → dist}/Sorter.js +0 -0
- /package/dist/{src/StringCompare.d.ts → StringCompare.d.ts} +0 -0
- /package/{esm/dist/src → dist}/StringCompare.js +0 -0
- /package/dist/{src/Throttle.d.ts → Throttle.d.ts} +0 -0
- /package/{esm/dist/src → dist}/Throttle.js +0 -0
- /package/dist/{src/deepFreeze.d.ts → deepFreeze.d.ts} +0 -0
- /package/{esm/dist/src → dist}/deepFreeze.js +0 -0
package/dist/src/Colors.js
DELETED
|
@@ -1,242 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Colors = void 0;
|
|
4
|
-
class Colors {
|
|
5
|
-
static hexToHSL(hex) {
|
|
6
|
-
const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);
|
|
7
|
-
if (!result) {
|
|
8
|
-
if (STAMHOOFD.environment === 'development') {
|
|
9
|
-
console.error(`Invalid hex color: ${hex}`);
|
|
10
|
-
}
|
|
11
|
-
return {
|
|
12
|
-
h: 0,
|
|
13
|
-
s: 0,
|
|
14
|
-
l: 0,
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
let r = parseInt(result[1], 16);
|
|
18
|
-
let g = parseInt(result[2], 16);
|
|
19
|
-
let b = parseInt(result[3], 16);
|
|
20
|
-
r /= 255;
|
|
21
|
-
g /= 255;
|
|
22
|
-
b /= 255;
|
|
23
|
-
const max = Math.max(r, g, b), min = Math.min(r, g, b);
|
|
24
|
-
let h, s, l = (max + min) / 2;
|
|
25
|
-
if (max === min) {
|
|
26
|
-
h = s = 0; // achromatic
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
const d = max - min;
|
|
30
|
-
s = l > 0.5 ? d / (2 - max - min) : d / (max + min);
|
|
31
|
-
switch (max) {
|
|
32
|
-
case r:
|
|
33
|
-
h = (g - b) / d + (g < b ? 6 : 0);
|
|
34
|
-
break;
|
|
35
|
-
case g:
|
|
36
|
-
h = (b - r) / d + 2;
|
|
37
|
-
break;
|
|
38
|
-
case b:
|
|
39
|
-
h = (r - g) / d + 4;
|
|
40
|
-
break;
|
|
41
|
-
}
|
|
42
|
-
h /= 6;
|
|
43
|
-
}
|
|
44
|
-
return {
|
|
45
|
-
h: h * 360,
|
|
46
|
-
s: s * 100,
|
|
47
|
-
l: l * 100,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
*
|
|
52
|
-
* @param h degree
|
|
53
|
-
* @param s percentage
|
|
54
|
-
* @param l percentage
|
|
55
|
-
*/
|
|
56
|
-
static HSLToRGB(h, s, l) {
|
|
57
|
-
// Must be fractions of 1
|
|
58
|
-
s /= 100;
|
|
59
|
-
l /= 100;
|
|
60
|
-
const c = (1 - Math.abs(2 * l - 1)) * s, x = c * (1 - Math.abs((h / 60) % 2 - 1)), m = l - c / 2;
|
|
61
|
-
let r = 0, g = 0, b = 0;
|
|
62
|
-
if (0 <= h && h < 60) {
|
|
63
|
-
r = c;
|
|
64
|
-
g = x;
|
|
65
|
-
b = 0;
|
|
66
|
-
}
|
|
67
|
-
else if (60 <= h && h < 120) {
|
|
68
|
-
r = x;
|
|
69
|
-
g = c;
|
|
70
|
-
b = 0;
|
|
71
|
-
}
|
|
72
|
-
else if (120 <= h && h < 180) {
|
|
73
|
-
r = 0;
|
|
74
|
-
g = c;
|
|
75
|
-
b = x;
|
|
76
|
-
}
|
|
77
|
-
else if (180 <= h && h < 240) {
|
|
78
|
-
r = 0;
|
|
79
|
-
g = x;
|
|
80
|
-
b = c;
|
|
81
|
-
}
|
|
82
|
-
else if (240 <= h && h < 300) {
|
|
83
|
-
r = x;
|
|
84
|
-
g = 0;
|
|
85
|
-
b = c;
|
|
86
|
-
}
|
|
87
|
-
else if (300 <= h && h < 360) {
|
|
88
|
-
r = c;
|
|
89
|
-
g = 0;
|
|
90
|
-
b = x;
|
|
91
|
-
}
|
|
92
|
-
r = Math.round((r + m) * 255);
|
|
93
|
-
g = Math.round((g + m) * 255);
|
|
94
|
-
b = Math.round((b + m) * 255);
|
|
95
|
-
return {
|
|
96
|
-
r, g, b,
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
static hslToHex(color) {
|
|
100
|
-
let { h, s, l } = color;
|
|
101
|
-
l /= 100;
|
|
102
|
-
const a = s * Math.min(l, 1 - l) / 100;
|
|
103
|
-
const f = (n) => {
|
|
104
|
-
const k = (n + h / 30) % 12;
|
|
105
|
-
const color = l - a * Math.max(Math.min(k - 3, 9 - k, 1), -1);
|
|
106
|
-
return Math.round(255 * color).toString(16).padStart(2, '0'); // convert to Hex and prefix "0" if needed
|
|
107
|
-
};
|
|
108
|
-
return `#${f(0)}${f(8)}${f(4)}`;
|
|
109
|
-
}
|
|
110
|
-
static hexToRGB(hex) {
|
|
111
|
-
if (hex.startsWith('#')) {
|
|
112
|
-
hex = hex.substring(1);
|
|
113
|
-
}
|
|
114
|
-
if (hex.length !== 6) {
|
|
115
|
-
throw new Error('Only six-digit hex colors are allowed.');
|
|
116
|
-
}
|
|
117
|
-
const aRgbHex = hex.match(/.{1,2}/g);
|
|
118
|
-
if (!aRgbHex || aRgbHex.length !== 3) {
|
|
119
|
-
throw new Error('Invalid hex color');
|
|
120
|
-
}
|
|
121
|
-
return {
|
|
122
|
-
r: parseInt(aRgbHex[0], 16),
|
|
123
|
-
g: parseInt(aRgbHex[1], 16),
|
|
124
|
-
b: parseInt(aRgbHex[2], 16),
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
static getContrastRatio(foreground, background) {
|
|
128
|
-
const L1 = this.getRelativeLuminance(background);
|
|
129
|
-
const L2 = this.getRelativeLuminance(foreground);
|
|
130
|
-
// https://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef
|
|
131
|
-
return (Math.max(L1, L2) + 0.05) / (Math.min(L1, L2) + 0.05);
|
|
132
|
-
}
|
|
133
|
-
static getRelativeLuminance(c) {
|
|
134
|
-
const color = {
|
|
135
|
-
r: c.r / 255,
|
|
136
|
-
g: c.g / 255,
|
|
137
|
-
b: c.b / 255,
|
|
138
|
-
};
|
|
139
|
-
// https://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
|
|
140
|
-
const R = color.r <= 0.03928
|
|
141
|
-
? color.r / 12.92
|
|
142
|
-
: Math.pow((color.r + 0.055) / 1.055, 2.4);
|
|
143
|
-
const G = color.g <= 0.03928
|
|
144
|
-
? color.g / 12.92
|
|
145
|
-
: Math.pow((color.g + 0.055) / 1.055, 2.4);
|
|
146
|
-
const B = color.b <= 0.03928
|
|
147
|
-
? color.b / 12.92
|
|
148
|
-
: Math.pow((color.b + 0.055) / 1.055, 2.4);
|
|
149
|
-
const L = 0.2126 * R + 0.7152 * G + 0.0722 * B;
|
|
150
|
-
return L;
|
|
151
|
-
}
|
|
152
|
-
static anyColorToRGB(color) {
|
|
153
|
-
if (typeof color === 'string') {
|
|
154
|
-
return this.hexToRGB(color);
|
|
155
|
-
}
|
|
156
|
-
if ('r' in color) {
|
|
157
|
-
return color;
|
|
158
|
-
}
|
|
159
|
-
return this.HSLToRGB(color.h, color.s, color.l);
|
|
160
|
-
}
|
|
161
|
-
static getContrastColor(color) {
|
|
162
|
-
try {
|
|
163
|
-
const rgb = this.anyColorToRGB(color);
|
|
164
|
-
const blackContrast = this.getAPCAContrast(rgb, { r: 0, g: 0, b: 0 });
|
|
165
|
-
const whiteContrast = this.getAPCAContrast(rgb, { r: 255, g: 255, b: 255 });
|
|
166
|
-
return blackContrast > whiteContrast ? '#000' : '#fff';
|
|
167
|
-
}
|
|
168
|
-
catch (e) {
|
|
169
|
-
console.error(e);
|
|
170
|
-
return '#fff';
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
// https://github.com/Myndex/SAPC-APCA#the-plain-english-steps-are
|
|
174
|
-
// Example:
|
|
175
|
-
// const contrast = getAPCAContrast("rgb(255, 255, 255)", "rgb(136, 136, 136)");
|
|
176
|
-
// This returns `66.89346308821438` (66.893%)
|
|
177
|
-
// SAPC-APCA README says:
|
|
178
|
-
// > #888 vs #fff • 66.89346308821438
|
|
179
|
-
// 80% means 7:1 in WCAG 2.0
|
|
180
|
-
// 60% means 4.5:1 in WCAG 2.0
|
|
181
|
-
// Web UI: https://hail2u.net/pub/test/702.html
|
|
182
|
-
static linearize(val) {
|
|
183
|
-
return (val / 255.0) ** 2.4;
|
|
184
|
-
}
|
|
185
|
-
static clampLuminance(luminance) {
|
|
186
|
-
const blkThrs = 0.022;
|
|
187
|
-
const blkClmp = 1.414;
|
|
188
|
-
if (luminance > blkThrs) {
|
|
189
|
-
return luminance;
|
|
190
|
-
}
|
|
191
|
-
return Math.abs(blkThrs - luminance) ** blkClmp + luminance;
|
|
192
|
-
}
|
|
193
|
-
static getLuminance(color) {
|
|
194
|
-
const y = 0.2126729 * this.linearize(color.r)
|
|
195
|
-
+ 0.7151522 * this.linearize(color.g)
|
|
196
|
-
+ 0.072175 * this.linearize(color.b);
|
|
197
|
-
return this.clampLuminance(y);
|
|
198
|
-
}
|
|
199
|
-
static getContrast(background, foreground) {
|
|
200
|
-
const deltaYmin = 0.0005;
|
|
201
|
-
const scale = 1.14;
|
|
202
|
-
const backgroundLuminance = this.getLuminance(background);
|
|
203
|
-
const foregroundLuminance = this.getLuminance(foreground);
|
|
204
|
-
if (Math.abs(backgroundLuminance - foregroundLuminance) < deltaYmin) {
|
|
205
|
-
return 0.0;
|
|
206
|
-
}
|
|
207
|
-
if (backgroundLuminance > foregroundLuminance) {
|
|
208
|
-
return (backgroundLuminance ** 0.56 - foregroundLuminance ** 0.57) * scale;
|
|
209
|
-
}
|
|
210
|
-
if (backgroundLuminance < foregroundLuminance) {
|
|
211
|
-
return (backgroundLuminance ** 0.65 - foregroundLuminance ** 0.62) * scale;
|
|
212
|
-
}
|
|
213
|
-
return 0.0;
|
|
214
|
-
}
|
|
215
|
-
static scaleContrast(contrast) {
|
|
216
|
-
const loClip = 0.001;
|
|
217
|
-
const loConThresh = 0.035991;
|
|
218
|
-
const loConFactor = 27.7847239587675;
|
|
219
|
-
const loConOffset = 0.027;
|
|
220
|
-
const absContrast = Math.abs(contrast);
|
|
221
|
-
if (absContrast < loClip) {
|
|
222
|
-
return 0.0;
|
|
223
|
-
}
|
|
224
|
-
if (absContrast <= loConThresh) {
|
|
225
|
-
return contrast - contrast * loConFactor * loConOffset;
|
|
226
|
-
}
|
|
227
|
-
if (contrast > loConThresh) {
|
|
228
|
-
return contrast - loConOffset;
|
|
229
|
-
}
|
|
230
|
-
if (contrast < -loConThresh) {
|
|
231
|
-
return contrast + loConOffset;
|
|
232
|
-
}
|
|
233
|
-
return 0.0;
|
|
234
|
-
}
|
|
235
|
-
static getAPCAContrast(background, foreground) {
|
|
236
|
-
const contrast = this.getContrast(background, foreground);
|
|
237
|
-
const scaledContrast = this.scaleContrast(contrast);
|
|
238
|
-
return Math.abs(scaledContrast * 100);
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
exports.Colors = Colors;
|
|
242
|
-
//# sourceMappingURL=Colors.js.map
|
package/dist/src/Colors.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Colors.js","sourceRoot":"","sources":["../../src/Colors.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DataValidator.d.ts","sourceRoot":"","sources":["../../src/DataValidator.ts"],"names":[],"mappings":"AAGA,qBAAa,aAAa;IACtB,MAAM,CAAC,QAAQ,CAAC,mBAAmB,SAAiB;IAEpD,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM;IAmD/B,MAAM,CAAC,mBAAmB,CAAC,GAAG,EAAE,MAAM;IAItC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO;IAO5B,MAAM,CAAC,0BAA0B,CAAC,GAAG,EAAE,MAAM;IAU7C,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM;IActC,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,MAAM;IAuB/C,MAAM,CAAC,8BAA8B,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,IAAI;IAazE,MAAM,CAAC,0BAA0B,CAAC,IAAI,EAAE,MAAM;IAI9C,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM;IAI9B,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM;IAIrC,MAAM,CAAC,6BAA6B;yBAEX,MAAM;2BAGJ,MAAM;;IAMjC,MAAM,CAAC,sCAAsC;yBAEpB,MAAM;2BAGJ,MAAM;;IAMjC,MAAM,CAAC,2BAA2B,CAAC,IAAI,EAAE,MAAM;IAgB/C,MAAM,CAAC,6BAA6B,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;CAS3D"}
|
|
@@ -1,163 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DataValidator = void 0;
|
|
4
|
-
const Formatter_js_1 = require("./Formatter.js");
|
|
5
|
-
const StringCompare_js_1 = require("./StringCompare.js");
|
|
6
|
-
class DataValidator {
|
|
7
|
-
static isEmailValid(str) {
|
|
8
|
-
const blockList = [
|
|
9
|
-
'gmail.be',
|
|
10
|
-
'gmail.nl',
|
|
11
|
-
'icloud.be',
|
|
12
|
-
];
|
|
13
|
-
const regex = /^[a-zA-Z0-9.!#$%&*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/;
|
|
14
|
-
if (!regex.test(str)) {
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
for (const l of blockList) {
|
|
18
|
-
if (str.endsWith('@' + l)) {
|
|
19
|
-
return false;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
const domain = str.split('@')[1];
|
|
23
|
-
if (domain.length > 255) {
|
|
24
|
-
return false;
|
|
25
|
-
}
|
|
26
|
-
const typo = ['gmail.com', 'hotmail.com', 'hotmail.fr', 'hotmail.be', 'yahoo.com', 'live.com', 'outlook.com', 'icloud.com', 'skynet.be', 'telenet.be', 'proximus.be', 'scarlet.be', 'vodafone.be', 'orange.be'];
|
|
27
|
-
let foundInvalid = false;
|
|
28
|
-
for (const t of typo) {
|
|
29
|
-
if (domain === t) {
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
if (StringCompare_js_1.StringCompare.typoCount(domain, t) === 1) {
|
|
33
|
-
foundInvalid = true;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
if (domain === 'mail.com') {
|
|
37
|
-
// Exception for typo on gmail.com
|
|
38
|
-
return true;
|
|
39
|
-
}
|
|
40
|
-
if (foundInvalid) {
|
|
41
|
-
return false;
|
|
42
|
-
}
|
|
43
|
-
const tld = domain.split('.').pop();
|
|
44
|
-
if (!tld || tld.length < 2) {
|
|
45
|
-
return false;
|
|
46
|
-
}
|
|
47
|
-
return true;
|
|
48
|
-
}
|
|
49
|
-
static isUitpasNumberValid(str) {
|
|
50
|
-
return this.UITPAS_NUMBER_REGEX.test(str);
|
|
51
|
-
}
|
|
52
|
-
static isUuid(value) {
|
|
53
|
-
if (typeof value !== 'string') {
|
|
54
|
-
return false;
|
|
55
|
-
}
|
|
56
|
-
return value.length === 36 && value[8] === '-' && value[13] === '-' && value[18] === '-' && value[23] === '-';
|
|
57
|
-
}
|
|
58
|
-
static isUitpasNumberKansenTarief(str) {
|
|
59
|
-
const isValid = this.isUitpasNumberValid(str);
|
|
60
|
-
if (!isValid) {
|
|
61
|
-
return false;
|
|
62
|
-
}
|
|
63
|
-
const char = str[str.length - 2];
|
|
64
|
-
return char === '1';
|
|
65
|
-
}
|
|
66
|
-
static formatUitpasNumber(text) {
|
|
67
|
-
const trimmed = this.cleanUitpasNumber(text);
|
|
68
|
-
// XXXX XXX XXX XXX
|
|
69
|
-
return Formatter_js_1.Formatter.injectPattern(trimmed, [
|
|
70
|
-
{ length: 4 },
|
|
71
|
-
' ',
|
|
72
|
-
{ length: 3 },
|
|
73
|
-
' ',
|
|
74
|
-
{ length: 3 },
|
|
75
|
-
' ',
|
|
76
|
-
{ length: 3 },
|
|
77
|
-
]);
|
|
78
|
-
}
|
|
79
|
-
static verifyBelgianNationalNumber(text) {
|
|
80
|
-
const trimmed = text.replace(/[^0-9]+/g, ''); // keep A-Z for validation
|
|
81
|
-
if (trimmed.length !== 11) {
|
|
82
|
-
return false;
|
|
83
|
-
}
|
|
84
|
-
const toCheck = parseInt(trimmed.substring(0, trimmed.length - 2));
|
|
85
|
-
const checksum = parseInt(trimmed.substring(trimmed.length - 2));
|
|
86
|
-
// we calculate the expected checksum. again
|
|
87
|
-
const realChecksum = 97 - (toCheck % 97); // Dates before 2000
|
|
88
|
-
const realChecksum2 = 97 - ((2000000000 + toCheck) % 97); // Dates after 2000
|
|
89
|
-
if (STAMHOOFD.environment === 'development') {
|
|
90
|
-
return true;
|
|
91
|
-
}
|
|
92
|
-
if (checksum === realChecksum || checksum === realChecksum2) {
|
|
93
|
-
// Check birth day via doesMatchBelgianNationalNumber
|
|
94
|
-
return true;
|
|
95
|
-
}
|
|
96
|
-
return false;
|
|
97
|
-
}
|
|
98
|
-
static doesMatchBelgianNationalNumber(text, birthDay) {
|
|
99
|
-
if (!birthDay) {
|
|
100
|
-
return true;
|
|
101
|
-
}
|
|
102
|
-
// Check if year, month and day matches
|
|
103
|
-
const generated = this.generateBelgianNationalNumber(birthDay);
|
|
104
|
-
if (this.formatBelgianNationalNumber(text).startsWith(generated)) {
|
|
105
|
-
return true;
|
|
106
|
-
}
|
|
107
|
-
return false;
|
|
108
|
-
}
|
|
109
|
-
static cleanBelgianNationalNumber(text) {
|
|
110
|
-
return text.replace(/[^0-9]+/g, '');
|
|
111
|
-
}
|
|
112
|
-
static cleanPhone(text) {
|
|
113
|
-
return text.replace(/[^+0-9]+/g, '');
|
|
114
|
-
}
|
|
115
|
-
static cleanUitpasNumber(text) {
|
|
116
|
-
return text.replace(/[^0-9]+/g, '');
|
|
117
|
-
}
|
|
118
|
-
static getUitpasNumberInputFormatter() {
|
|
119
|
-
return {
|
|
120
|
-
cleaner: (value) => {
|
|
121
|
-
return this.cleanUitpasNumber(value);
|
|
122
|
-
},
|
|
123
|
-
formatter: (value) => {
|
|
124
|
-
return this.formatUitpasNumber(value);
|
|
125
|
-
},
|
|
126
|
-
};
|
|
127
|
-
}
|
|
128
|
-
static getBelgianNationalNumberInputFormatter() {
|
|
129
|
-
return {
|
|
130
|
-
cleaner: (value) => {
|
|
131
|
-
return this.cleanBelgianNationalNumber(value);
|
|
132
|
-
},
|
|
133
|
-
formatter: (value) => {
|
|
134
|
-
return this.formatBelgianNationalNumber(value);
|
|
135
|
-
},
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
static formatBelgianNationalNumber(text) {
|
|
139
|
-
const trimmed = this.cleanBelgianNationalNumber(text);
|
|
140
|
-
// JJ.MM.DD-XXX.XX
|
|
141
|
-
return Formatter_js_1.Formatter.injectPattern(trimmed, [
|
|
142
|
-
{ length: 2 },
|
|
143
|
-
'.',
|
|
144
|
-
{ length: 2 },
|
|
145
|
-
'.',
|
|
146
|
-
{ length: 2 },
|
|
147
|
-
'-',
|
|
148
|
-
{ length: 3 },
|
|
149
|
-
'.',
|
|
150
|
-
{ length: 2 },
|
|
151
|
-
]);
|
|
152
|
-
}
|
|
153
|
-
static generateBelgianNationalNumber(date) {
|
|
154
|
-
// JJ.MM.DD-
|
|
155
|
-
const year = Formatter_js_1.Formatter.year(date).toFixed();
|
|
156
|
-
const month = Formatter_js_1.Formatter.monthNumber(date).toFixed();
|
|
157
|
-
const day = Formatter_js_1.Formatter.day(date);
|
|
158
|
-
return year.substring(2) + '.' + month.padStart(2, '0') + '.' + day.padStart(2, '0') + '-';
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
exports.DataValidator = DataValidator;
|
|
162
|
-
DataValidator.UITPAS_NUMBER_REGEX = /^\d{10,13}$/;
|
|
163
|
-
//# sourceMappingURL=DataValidator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DataValidator.js","sourceRoot":"","sources":["../../src/DataValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FiscalDocumentYearHelper.d.ts","sourceRoot":"","sources":["../../src/FiscalDocumentYearHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,qBAAa,wBAAwB;IACjC;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,GAAG,CACY;IAEhC;;MAEE;IACF,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAE/B;IAET;;OAEG;IACH,QAAQ,CAAC,IAAI,SAAiB;IAE9B;;OAEG;IACH,QAAQ,CAAC,KAAK,SAAkB;IAEhC;;OAEG;IACH,IAAI,qCAAqC,IAAI,OAAO,CAEnD;IAED;;OAEG;IACH,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ;IAKzD;;OAEG;IACH,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ;IAI1D;;OAEG;IACH,4BAA4B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;IAM3D;;OAEG;IACH,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO;CAIjD"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FiscalDocumentYearHelper = void 0;
|
|
4
|
-
const luxon_1 = require("luxon");
|
|
5
|
-
class FiscalDocumentYearHelper {
|
|
6
|
-
constructor() {
|
|
7
|
-
/**
|
|
8
|
-
* Current DateTime in Belgium
|
|
9
|
-
*/
|
|
10
|
-
this.now = luxon_1.DateTime.now()
|
|
11
|
-
.setZone('Europe/Brussels');
|
|
12
|
-
/**
|
|
13
|
-
* Allow to create fiscal document for current year if current month is after this month
|
|
14
|
-
*/
|
|
15
|
-
this.allowCreationAfterMonth = 10;
|
|
16
|
-
/**
|
|
17
|
-
* Current year in Belgium
|
|
18
|
-
*/
|
|
19
|
-
this.year = this.now.year;
|
|
20
|
-
/**
|
|
21
|
-
* Current month in Belgium (1-12)
|
|
22
|
-
*/
|
|
23
|
-
this.month = this.now.month;
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* Returns if a fiscal document for this year can be created.
|
|
27
|
-
*/
|
|
28
|
-
get canCreateFiscalDocumentForCurrentYear() {
|
|
29
|
-
return this.month > this.allowCreationAfterMonth;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Max publish date is before 1 march of next year.
|
|
33
|
-
*/
|
|
34
|
-
getPublishDeadlineForYear(calendarYear) {
|
|
35
|
-
// max publish date is before 1 march of next year
|
|
36
|
-
return luxon_1.DateTime.fromObject({ year: calendarYear + 1, month: 3, day: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }, { zone: 'Europe/Brussels' });
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Should at the very very last date download Belcotax by 1st of july
|
|
40
|
-
*/
|
|
41
|
-
getAbsoluteDeadlineForYear(calendarYear) {
|
|
42
|
-
return luxon_1.DateTime.fromObject({ year: calendarYear + 1, month: 7, day: 1, hour: 0, minute: 0, second: 0, millisecond: 0 }, { zone: 'Europe/Brussels' });
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Check if the fiscal document XML can be downloaded. It can be downloaded if the fiscal document was created after the max publish date or if now is before the max publish date.
|
|
46
|
-
*/
|
|
47
|
-
canDownloadFiscalDocumentXML(calendarYear) {
|
|
48
|
-
const deadline = this.getAbsoluteDeadlineForYear(calendarYear).toJSDate();
|
|
49
|
-
// if created after max publish date or if now is before max publish date
|
|
50
|
-
return new Date().getTime() < deadline.getTime();
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Check if the fiscal document XML can be downloaded. It can be downloaded if the fiscal document was created after the max publish date or if now is before the max publish date.
|
|
54
|
-
*/
|
|
55
|
-
isAfterDeadline(calendarYear) {
|
|
56
|
-
const deadline = this.getPublishDeadlineForYear(calendarYear).toJSDate();
|
|
57
|
-
return new Date().getTime() >= deadline.getTime();
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
exports.FiscalDocumentYearHelper = FiscalDocumentYearHelper;
|
|
61
|
-
//# sourceMappingURL=FiscalDocumentYearHelper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FiscalDocumentYearHelper.js","sourceRoot":"","sources":["../../src/FiscalDocumentYearHelper.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC,MAAa,wBAAwB;IAArC;QACI;;WAEG;QACc,QAAG,GAAG,gBAAQ,CAAC,GAAG,EAAE;aAChC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAEhC;;UAEE;QACe,4BAAuB,GAElC,EAAE,CAAC;QAET;;WAEG;QACM,SAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;QAE9B;;WAEG;QACM,UAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;IAwCpC,CAAC;IAtCG;;OAEG;IACH,IAAI,qCAAqC;QACrC,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,uBAAuB,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,yBAAyB,CAAC,YAAoB;QAC1C,kDAAkD;QAClD,OAAO,gBAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACzJ,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,YAAoB;QAC3C,OAAO,gBAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACzJ,CAAC;IAED;;OAEG;IACH,4BAA4B,CAAC,YAAoB;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC1E,yEAAyE;QACzE,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,YAAoB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;QACzE,OAAO,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;CACJ;AA9DD,4DA8DC"}
|
package/dist/src/Formatter.d.ts
DELETED
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
import { DateTime } from 'luxon';
|
|
2
|
-
export declare class Formatter {
|
|
3
|
-
static timezone: string;
|
|
4
|
-
static removeAccents(name: StringLike): string;
|
|
5
|
-
static emailSenderName(name: StringLike): string;
|
|
6
|
-
static iban(ibanRaw: string): string;
|
|
7
|
-
static slug(name: StringLike): string;
|
|
8
|
-
static slugEmail(name: StringLike): string;
|
|
9
|
-
static fileSlug(name: StringLike): string;
|
|
10
|
-
static sepaPaymentSlug(name: string): string;
|
|
11
|
-
static removeDuplicateSpaces(name: StringLike): string;
|
|
12
|
-
static spaceString(str: string, spaceLength?: number, spaceChar?: string): string;
|
|
13
|
-
static stringToNumber(str: string, maxInt?: number): number;
|
|
14
|
-
/**
|
|
15
|
-
* 1 = january
|
|
16
|
-
*/
|
|
17
|
-
static month(index: number | Date): string;
|
|
18
|
-
/**
|
|
19
|
-
* 1-31
|
|
20
|
-
*/
|
|
21
|
-
static day(date: Date): string;
|
|
22
|
-
static weekDay(date: Date): string;
|
|
23
|
-
/**
|
|
24
|
-
* 1 januari (2020). Year only in different year and in the future, if withYear is null (default)
|
|
25
|
-
*/
|
|
26
|
-
static date(date: Date, withYear?: boolean | null): string;
|
|
27
|
-
/**
|
|
28
|
-
* 5 = 5 dagen
|
|
29
|
-
* 7 = 1 week
|
|
30
|
-
* 8 = 8 dagen
|
|
31
|
-
* ...
|
|
32
|
-
*/
|
|
33
|
-
static days(days: number): string;
|
|
34
|
-
static relativeTime(date: Date, options?: {
|
|
35
|
-
days?: boolean;
|
|
36
|
-
hours?: boolean;
|
|
37
|
-
}): string;
|
|
38
|
-
/**
|
|
39
|
-
* januari 2020
|
|
40
|
-
*/
|
|
41
|
-
static dateWithoutDay(date: Date, options?: {
|
|
42
|
-
timezone?: string;
|
|
43
|
-
}): string;
|
|
44
|
-
/**
|
|
45
|
-
* 2020
|
|
46
|
-
*/
|
|
47
|
-
static year(date: Date): number;
|
|
48
|
-
static monthNumber(date: Date): number;
|
|
49
|
-
/**
|
|
50
|
-
* maandag, 1 januari (2020). Year only in different year
|
|
51
|
-
*/
|
|
52
|
-
static dateWithDay(date: Date, withYear?: boolean | null): string;
|
|
53
|
-
/**
|
|
54
|
-
* maandag, 1 januari (2020) om XX:XX. Year only in different year
|
|
55
|
-
*/
|
|
56
|
-
static dateTimeWithDay(date: Date, hideZero?: boolean, withYear?: boolean | null): string;
|
|
57
|
-
/**
|
|
58
|
-
* 01/01/2020
|
|
59
|
-
*/
|
|
60
|
-
static dateNumber(date: Date, withYear?: boolean): string;
|
|
61
|
-
/**
|
|
62
|
-
* 2020-01-31
|
|
63
|
-
*/
|
|
64
|
-
static dateIso(date: Date): string;
|
|
65
|
-
/**
|
|
66
|
-
* 2020-01-31 00:00:00
|
|
67
|
-
*/
|
|
68
|
-
static dateTimeIso(date: Date, timezone?: string): string;
|
|
69
|
-
static startDate(startDate: Date, includeDay?: boolean, withYear?: boolean | null, includeTime?: boolean | null): string;
|
|
70
|
-
static endDate(endDate: Date, includeDay?: boolean, withYear?: boolean | null, includeTime?: boolean | null): string;
|
|
71
|
-
static dateRange(startDate: Date, endDate: Date, join?: string, includeTime?: boolean | null): string;
|
|
72
|
-
/**
|
|
73
|
-
* 12:00
|
|
74
|
-
*/
|
|
75
|
-
static time(date: Date, timeZone?: string): string;
|
|
76
|
-
static luxon(date?: Date): DateTime;
|
|
77
|
-
/**
|
|
78
|
-
* 12:00
|
|
79
|
-
*/
|
|
80
|
-
static timeIso(date: Date): string;
|
|
81
|
-
static uniqueArray<T>(array: T[], removeNullOrUndefined?: true): NonNullable<T>[];
|
|
82
|
-
static uniqueArray<T>(array: T[], removeNullOrUndefined: false): T[];
|
|
83
|
-
/**
|
|
84
|
-
* 1 januari (2020) om 12:00. Year only in different year
|
|
85
|
-
*/
|
|
86
|
-
static dateTime(date: Date, hideZero?: boolean, withYear?: boolean | null): string;
|
|
87
|
-
static integer(value: number): string;
|
|
88
|
-
static float(value: number): string;
|
|
89
|
-
static percentage(value: number): string;
|
|
90
|
-
static price(value: number, removeZeroDecimals?: boolean): string;
|
|
91
|
-
static priceChange(value: number): string;
|
|
92
|
-
static capitalizeFirstLetter(string: StringLike): string;
|
|
93
|
-
static capitalizeWords(string: StringLike): string;
|
|
94
|
-
static fileSize(bytes: number): string;
|
|
95
|
-
static minutesPadded(minutes: number): string;
|
|
96
|
-
static timeIndex(minutes: number): string;
|
|
97
|
-
static minutes(minutes: number): string;
|
|
98
|
-
static escapeHtml(unsafe: string): string;
|
|
99
|
-
static escapeRegex(string: string): string;
|
|
100
|
-
static joinLast(array: (string | number)[], separator: string | undefined, lastSeparator: string | undefined): string;
|
|
101
|
-
static ordinalNumber(number: number): string;
|
|
102
|
-
static pluralText(num: number, singular: StringLike, plural: StringLike): string;
|
|
103
|
-
static groupNamesByFamily(names: {
|
|
104
|
-
firstName: string;
|
|
105
|
-
lastName: string;
|
|
106
|
-
}[]): string;
|
|
107
|
-
static firstLetters(str: StringLike, maxLength: number): string;
|
|
108
|
-
static injectPattern(value: string, parts: (string | {
|
|
109
|
-
length: number;
|
|
110
|
-
})[]): string;
|
|
111
|
-
}
|
|
112
|
-
//# sourceMappingURL=Formatter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Formatter.d.ts","sourceRoot":"","sources":["../../src/Formatter.ts"],"names":[],"mappings":"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"}
|