@aroobajaved/shared-ui 1.0.14 → 1.0.16
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive,
|
|
2
|
+
import { Directive, forwardRef, numberAttribute, Input, HostListener, Component } from '@angular/core';
|
|
3
3
|
import { NG_VALIDATORS } from '@angular/forms';
|
|
4
4
|
import * as i1 from '@angular/common';
|
|
5
5
|
import { CommonModule } from '@angular/common';
|
|
@@ -43,22 +43,19 @@ class AlphaOnly {
|
|
|
43
43
|
pattern = /^[A-Za-z]+$/;
|
|
44
44
|
validate(control) {
|
|
45
45
|
const value = control.value;
|
|
46
|
-
if (value === null || value === undefined) {
|
|
46
|
+
if (value === null || value === undefined || value === '') {
|
|
47
47
|
return null;
|
|
48
48
|
}
|
|
49
49
|
if (typeof value !== 'string') {
|
|
50
50
|
return null;
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
return { alphaOnly: true };
|
|
54
|
-
}
|
|
55
|
-
return null;
|
|
52
|
+
return this.pattern.test(value) ? null : { alphaOnly: true };
|
|
56
53
|
}
|
|
57
54
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: AlphaOnly, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
58
55
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: AlphaOnly, isStandalone: true, selector: "[alphaOnly]", providers: [
|
|
59
56
|
{
|
|
60
57
|
provide: NG_VALIDATORS,
|
|
61
|
-
useExisting: AlphaOnly,
|
|
58
|
+
useExisting: forwardRef(() => AlphaOnly),
|
|
62
59
|
multi: true,
|
|
63
60
|
},
|
|
64
61
|
], ngImport: i0 });
|
|
@@ -71,7 +68,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
71
68
|
providers: [
|
|
72
69
|
{
|
|
73
70
|
provide: NG_VALIDATORS,
|
|
74
|
-
useExisting: AlphaOnly,
|
|
71
|
+
useExisting: forwardRef(() => AlphaOnly),
|
|
75
72
|
multi: true,
|
|
76
73
|
},
|
|
77
74
|
],
|
|
@@ -82,22 +79,19 @@ class AlphaNumeric {
|
|
|
82
79
|
pattern = /^[A-Za-z0-9]+$/;
|
|
83
80
|
validate(control) {
|
|
84
81
|
const value = control.value;
|
|
85
|
-
if (value === null || value === undefined) {
|
|
82
|
+
if (value === null || value === undefined || value === '') {
|
|
86
83
|
return null;
|
|
87
84
|
}
|
|
88
85
|
if (typeof value !== 'string') {
|
|
89
86
|
return null;
|
|
90
87
|
}
|
|
91
|
-
|
|
92
|
-
return { alphaNumeric: true };
|
|
93
|
-
}
|
|
94
|
-
return null;
|
|
88
|
+
return this.pattern.test(value) ? null : { alphaNumeric: true };
|
|
95
89
|
}
|
|
96
90
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: AlphaNumeric, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
97
91
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: AlphaNumeric, isStandalone: true, selector: "[alphaNumeric]", providers: [
|
|
98
92
|
{
|
|
99
93
|
provide: NG_VALIDATORS,
|
|
100
|
-
useExisting: AlphaNumeric,
|
|
94
|
+
useExisting: forwardRef(() => AlphaNumeric),
|
|
101
95
|
multi: true,
|
|
102
96
|
},
|
|
103
97
|
], ngImport: i0 });
|
|
@@ -110,7 +104,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
110
104
|
providers: [
|
|
111
105
|
{
|
|
112
106
|
provide: NG_VALIDATORS,
|
|
113
|
-
useExisting: AlphaNumeric,
|
|
107
|
+
useExisting: forwardRef(() => AlphaNumeric),
|
|
114
108
|
multi: true,
|
|
115
109
|
},
|
|
116
110
|
],
|
|
@@ -118,41 +112,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
118
112
|
}] });
|
|
119
113
|
|
|
120
114
|
class MaxDigits {
|
|
121
|
-
el;
|
|
122
115
|
maxDigits = 0;
|
|
123
|
-
constructor(el) {
|
|
124
|
-
this.el = el;
|
|
125
|
-
}
|
|
126
|
-
onInput() {
|
|
127
|
-
let value = this.el.nativeElement.value;
|
|
128
|
-
value = value.replace(/[^0-9]/g, '');
|
|
129
|
-
const limit = Number(this.maxDigits);
|
|
130
|
-
if (limit > 0 && value.length > limit) {
|
|
131
|
-
value = value.slice(0, limit);
|
|
132
|
-
}
|
|
133
|
-
this.el.nativeElement.value = value;
|
|
134
|
-
}
|
|
135
116
|
validate(control) {
|
|
136
|
-
const value =
|
|
137
|
-
|
|
138
|
-
if (!value || limit <= 0)
|
|
117
|
+
const value = control.value;
|
|
118
|
+
if (!value || this.maxDigits <= 0)
|
|
139
119
|
return null;
|
|
140
|
-
const digitCount = value.replace(/\D/g, '').length;
|
|
141
|
-
|
|
142
|
-
return {
|
|
143
|
-
maxDigits: {
|
|
144
|
-
required: limit,
|
|
145
|
-
actual: digitCount,
|
|
146
|
-
},
|
|
147
|
-
};
|
|
148
|
-
}
|
|
149
|
-
return null;
|
|
120
|
+
const digitCount = String(value).replace(/\D/g, '').length;
|
|
121
|
+
return digitCount > this.maxDigits ? { maxDigits: true } : null;
|
|
150
122
|
}
|
|
151
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: MaxDigits, deps: [
|
|
152
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.6", type: MaxDigits, isStandalone: true, selector: "[maxDigits]", inputs: { maxDigits: ["maxDigits", "maxDigits", numberAttribute] },
|
|
123
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: MaxDigits, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
124
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.6", type: MaxDigits, isStandalone: true, selector: "[maxDigits]", inputs: { maxDigits: ["maxDigits", "maxDigits", numberAttribute] }, providers: [
|
|
153
125
|
{
|
|
154
126
|
provide: NG_VALIDATORS,
|
|
155
|
-
useExisting: MaxDigits,
|
|
127
|
+
useExisting: forwardRef(() => MaxDigits),
|
|
156
128
|
multi: true,
|
|
157
129
|
},
|
|
158
130
|
], ngImport: i0 });
|
|
@@ -165,62 +137,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
165
137
|
providers: [
|
|
166
138
|
{
|
|
167
139
|
provide: NG_VALIDATORS,
|
|
168
|
-
useExisting: MaxDigits,
|
|
140
|
+
useExisting: forwardRef(() => MaxDigits),
|
|
169
141
|
multi: true,
|
|
170
142
|
},
|
|
171
143
|
],
|
|
172
144
|
}]
|
|
173
|
-
}],
|
|
145
|
+
}], propDecorators: { maxDigits: [{
|
|
174
146
|
type: Input,
|
|
175
147
|
args: [{ transform: numberAttribute }]
|
|
176
|
-
}], onInput: [{
|
|
177
|
-
type: HostListener,
|
|
178
|
-
args: ['input']
|
|
179
148
|
}] } });
|
|
180
149
|
|
|
181
150
|
class DecimalLimit {
|
|
182
|
-
el;
|
|
183
151
|
decimalDigits = 0;
|
|
184
|
-
constructor(el) {
|
|
185
|
-
this.el = el;
|
|
186
|
-
}
|
|
187
|
-
onInput() {
|
|
188
|
-
let value = this.el.nativeElement.value;
|
|
189
|
-
value = value.replace(/[^0-9.]/g, '');
|
|
190
|
-
const parts = value.split('.');
|
|
191
|
-
if (parts.length > 2) {
|
|
192
|
-
value = parts[0] + '.' + parts.slice(1).join('');
|
|
193
|
-
}
|
|
194
|
-
const limit = Number(this.decimalDigits);
|
|
195
|
-
if (limit > 0 && value.includes('.')) {
|
|
196
|
-
const [int, dec] = value.split('.');
|
|
197
|
-
value = int + '.' + dec.slice(0, limit);
|
|
198
|
-
}
|
|
199
|
-
this.el.nativeElement.value = value;
|
|
200
|
-
}
|
|
201
152
|
validate(control) {
|
|
202
|
-
const value =
|
|
203
|
-
|
|
204
|
-
if (!value || limit <= 0)
|
|
205
|
-
return null;
|
|
206
|
-
if (!value.includes('.'))
|
|
153
|
+
const value = control.value;
|
|
154
|
+
if (!value || this.decimalDigits <= 0)
|
|
207
155
|
return null;
|
|
208
|
-
const
|
|
209
|
-
if (
|
|
210
|
-
return {
|
|
211
|
-
decimalDigits: {
|
|
212
|
-
required: limit,
|
|
213
|
-
actual: decimalPart.length,
|
|
214
|
-
},
|
|
215
|
-
};
|
|
156
|
+
const [, decimal] = String(value).split('.');
|
|
157
|
+
if (decimal && decimal.length > this.decimalDigits) {
|
|
158
|
+
return { decimalDigits: true };
|
|
216
159
|
}
|
|
217
160
|
return null;
|
|
218
161
|
}
|
|
219
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DecimalLimit, deps: [
|
|
220
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.6", type: DecimalLimit, isStandalone: true, selector: "[decimalDigits]", inputs: { decimalDigits: ["decimalDigits", "decimalDigits", numberAttribute] },
|
|
162
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DecimalLimit, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
163
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.0.6", type: DecimalLimit, isStandalone: true, selector: "[decimalDigits]", inputs: { decimalDigits: ["decimalDigits", "decimalDigits", numberAttribute] }, providers: [
|
|
221
164
|
{
|
|
222
165
|
provide: NG_VALIDATORS,
|
|
223
|
-
useExisting: DecimalLimit,
|
|
166
|
+
useExisting: forwardRef(() => DecimalLimit),
|
|
224
167
|
multi: true,
|
|
225
168
|
},
|
|
226
169
|
], ngImport: i0 });
|
|
@@ -233,17 +176,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
233
176
|
providers: [
|
|
234
177
|
{
|
|
235
178
|
provide: NG_VALIDATORS,
|
|
236
|
-
useExisting: DecimalLimit,
|
|
179
|
+
useExisting: forwardRef(() => DecimalLimit),
|
|
237
180
|
multi: true,
|
|
238
181
|
},
|
|
239
182
|
],
|
|
240
183
|
}]
|
|
241
|
-
}],
|
|
184
|
+
}], propDecorators: { decimalDigits: [{
|
|
242
185
|
type: Input,
|
|
243
186
|
args: [{ transform: numberAttribute }]
|
|
244
|
-
}], onInput: [{
|
|
245
|
-
type: HostListener,
|
|
246
|
-
args: ['input']
|
|
247
187
|
}] } });
|
|
248
188
|
|
|
249
189
|
class EmailCheck {
|
|
@@ -375,22 +315,19 @@ class ContainsUppercase {
|
|
|
375
315
|
pattern = /[A-Z]/;
|
|
376
316
|
validate(control) {
|
|
377
317
|
const value = control.value;
|
|
378
|
-
if (value === null || value === undefined) {
|
|
318
|
+
if (value === null || value === undefined || value === '') {
|
|
379
319
|
return null;
|
|
380
320
|
}
|
|
381
321
|
if (typeof value !== 'string') {
|
|
382
322
|
return null;
|
|
383
323
|
}
|
|
384
|
-
|
|
385
|
-
return { containsUppercase: true };
|
|
386
|
-
}
|
|
387
|
-
return null;
|
|
324
|
+
return this.pattern.test(value) ? null : { containsUppercase: true };
|
|
388
325
|
}
|
|
389
326
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ContainsUppercase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
390
327
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: ContainsUppercase, isStandalone: true, selector: "[containsUppercase]", providers: [
|
|
391
328
|
{
|
|
392
329
|
provide: NG_VALIDATORS,
|
|
393
|
-
useExisting: ContainsUppercase,
|
|
330
|
+
useExisting: forwardRef(() => ContainsUppercase),
|
|
394
331
|
multi: true,
|
|
395
332
|
},
|
|
396
333
|
], ngImport: i0 });
|
|
@@ -403,7 +340,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
403
340
|
providers: [
|
|
404
341
|
{
|
|
405
342
|
provide: NG_VALIDATORS,
|
|
406
|
-
useExisting: ContainsUppercase,
|
|
343
|
+
useExisting: forwardRef(() => ContainsUppercase),
|
|
407
344
|
multi: true,
|
|
408
345
|
},
|
|
409
346
|
],
|
|
@@ -414,22 +351,19 @@ class ContainsLowercase {
|
|
|
414
351
|
pattern = /[a-z]/;
|
|
415
352
|
validate(control) {
|
|
416
353
|
const value = control.value;
|
|
417
|
-
if (value === null || value === undefined) {
|
|
354
|
+
if (value === null || value === undefined || value === '') {
|
|
418
355
|
return null;
|
|
419
356
|
}
|
|
420
357
|
if (typeof value !== 'string') {
|
|
421
358
|
return null;
|
|
422
359
|
}
|
|
423
|
-
|
|
424
|
-
return { containsLowercase: true };
|
|
425
|
-
}
|
|
426
|
-
return null;
|
|
360
|
+
return this.pattern.test(value) ? null : { containsLowercase: true };
|
|
427
361
|
}
|
|
428
362
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: ContainsLowercase, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
429
363
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: ContainsLowercase, isStandalone: true, selector: "[containsLowercase]", providers: [
|
|
430
364
|
{
|
|
431
365
|
provide: NG_VALIDATORS,
|
|
432
|
-
useExisting: ContainsLowercase,
|
|
366
|
+
useExisting: forwardRef(() => ContainsLowercase),
|
|
433
367
|
multi: true,
|
|
434
368
|
},
|
|
435
369
|
], ngImport: i0 });
|
|
@@ -442,7 +376,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
442
376
|
providers: [
|
|
443
377
|
{
|
|
444
378
|
provide: NG_VALIDATORS,
|
|
445
|
-
useExisting: ContainsLowercase,
|
|
379
|
+
useExisting: forwardRef(() => ContainsLowercase),
|
|
446
380
|
multi: true,
|
|
447
381
|
},
|
|
448
382
|
],
|
|
@@ -492,29 +426,28 @@ class DateRange {
|
|
|
492
426
|
startControlName;
|
|
493
427
|
endControlName;
|
|
494
428
|
validate(control) {
|
|
495
|
-
if (!control ||
|
|
429
|
+
if (!control || typeof control.get !== 'function') {
|
|
496
430
|
return null;
|
|
431
|
+
}
|
|
497
432
|
const start = control.get(this.startControlName)?.value;
|
|
498
433
|
const end = control.get(this.endControlName)?.value;
|
|
499
|
-
if (!start || !end)
|
|
434
|
+
if (!start || !end) {
|
|
500
435
|
return null;
|
|
436
|
+
}
|
|
501
437
|
const startDate = new Date(start);
|
|
502
438
|
const endDate = new Date(end);
|
|
503
439
|
if (isNaN(startDate.getTime()) || isNaN(endDate.getTime())) {
|
|
504
440
|
return null;
|
|
505
441
|
}
|
|
506
|
-
|
|
507
|
-
return { dateRange: true };
|
|
508
|
-
}
|
|
509
|
-
return null;
|
|
442
|
+
return endDate < startDate ? { dateRange: true } : null;
|
|
510
443
|
}
|
|
511
444
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DateRange, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
512
445
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: DateRange, isStandalone: true, selector: "[dateRange]", inputs: { startControlName: ["dateRangeStart", "startControlName"], endControlName: ["dateRangeEnd", "endControlName"] }, providers: [
|
|
513
446
|
{
|
|
514
447
|
provide: NG_VALIDATORS,
|
|
515
|
-
useExisting: DateRange,
|
|
516
|
-
multi: true
|
|
517
|
-
}
|
|
448
|
+
useExisting: forwardRef(() => DateRange),
|
|
449
|
+
multi: true,
|
|
450
|
+
},
|
|
518
451
|
], ngImport: i0 });
|
|
519
452
|
}
|
|
520
453
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: DateRange, decorators: [{
|
|
@@ -525,10 +458,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
525
458
|
providers: [
|
|
526
459
|
{
|
|
527
460
|
provide: NG_VALIDATORS,
|
|
528
|
-
useExisting: DateRange,
|
|
529
|
-
multi: true
|
|
530
|
-
}
|
|
531
|
-
]
|
|
461
|
+
useExisting: forwardRef(() => DateRange),
|
|
462
|
+
multi: true,
|
|
463
|
+
},
|
|
464
|
+
],
|
|
532
465
|
}]
|
|
533
466
|
}], propDecorators: { startControlName: [{
|
|
534
467
|
type: Input,
|
|
@@ -540,24 +473,36 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
540
473
|
|
|
541
474
|
class CommaFormat {
|
|
542
475
|
el;
|
|
543
|
-
|
|
476
|
+
MAX_DIGITS = 10;
|
|
477
|
+
DECIMAL_DIGITS = 2;
|
|
544
478
|
constructor(el) {
|
|
545
479
|
this.el = el;
|
|
546
480
|
}
|
|
547
481
|
onInput() {
|
|
548
|
-
|
|
482
|
+
const input = this.el.nativeElement;
|
|
483
|
+
let value = input.value;
|
|
549
484
|
value = value.replace(/,/g, '');
|
|
550
|
-
|
|
551
|
-
value = value.replace(regex, '');
|
|
485
|
+
value = value.replace(/[^0-9.]/g, '');
|
|
552
486
|
const parts = value.split('.');
|
|
553
487
|
let integerPart = parts[0];
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
488
|
+
let decimalPart = parts[1] ?? '';
|
|
489
|
+
decimalPart = decimalPart.slice(0, this.DECIMAL_DIGITS);
|
|
490
|
+
const totalDigits = (integerPart + decimalPart).length;
|
|
491
|
+
if (totalDigits > this.MAX_DIGITS) {
|
|
492
|
+
const allowed = this.MAX_DIGITS - decimalPart.length;
|
|
493
|
+
integerPart = integerPart.slice(0, allowed);
|
|
494
|
+
}
|
|
495
|
+
const formattedInteger = integerPart.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
|
|
496
|
+
const formattedValue = decimalPart.length > 0
|
|
497
|
+
? `${formattedInteger}.${decimalPart}`
|
|
498
|
+
: formattedInteger;
|
|
499
|
+
if (input.value !== formattedValue) {
|
|
500
|
+
input.value = formattedValue;
|
|
501
|
+
input.dispatchEvent(new Event('input', { bubbles: true }));
|
|
502
|
+
}
|
|
558
503
|
}
|
|
559
504
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: CommaFormat, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
560
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: CommaFormat, isStandalone: true, selector: "[CommaFormat]",
|
|
505
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.0.6", type: CommaFormat, isStandalone: true, selector: "[CommaFormat]", host: { listeners: { "input": "onInput()" } }, ngImport: i0 });
|
|
561
506
|
}
|
|
562
507
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: CommaFormat, decorators: [{
|
|
563
508
|
type: Directive,
|
|
@@ -565,9 +510,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
565
510
|
selector: '[CommaFormat]',
|
|
566
511
|
standalone: true,
|
|
567
512
|
}]
|
|
568
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: {
|
|
569
|
-
type: Input
|
|
570
|
-
}], onInput: [{
|
|
513
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { onInput: [{
|
|
571
514
|
type: HostListener,
|
|
572
515
|
args: ['input']
|
|
573
516
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aroobajaved-shared-ui.mjs","sources":["../../../projects/shared-ui/src/lib/validations/required-trimmed/required-trimmed.ts","../../../projects/shared-ui/src/lib/validations/alpha-only/alpha-only.ts","../../../projects/shared-ui/src/lib/validations/alpha-numeric/alpha-numeric.ts","../../../projects/shared-ui/src/lib/validations/max-digits/max-digits.ts","../../../projects/shared-ui/src/lib/validations/decimal-limit/decimal-limit.ts","../../../projects/shared-ui/src/lib/validations/email-check/email-check.ts","../../../projects/shared-ui/src/lib/validations/phone-number/phone-number.ts","../../../projects/shared-ui/src/lib/validations/password-check/password-check.ts","../../../projects/shared-ui/src/lib/validations/contains-uppercase/contains-uppercase.ts","../../../projects/shared-ui/src/lib/validations/contains-lowercase/contains-lowercase.ts","../../../projects/shared-ui/src/lib/validations/contains-special-character/contains-special-character.ts","../../../projects/shared-ui/src/lib/validations/date-range/date-range.ts","../../../projects/shared-ui/src/lib/validations/comma-format/comma-format.ts","../../../projects/shared-ui/src/lib/shared-ui.ts","../../../projects/shared-ui/src/lib/core/error-message/error-message.ts","../../../projects/shared-ui/src/lib/core/form-error/form-error.ts","../../../projects/shared-ui/src/lib/core/form-error/form-error.html","../../../projects/shared-ui/src/public-api.ts","../../../projects/shared-ui/src/aroobajaved-shared-ui.ts"],"sourcesContent":["import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[requiredTrimmed]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: RequiredTrimmed,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class RequiredTrimmed implements Validator {\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return { requiredTrimmed: true };\r\n }\r\n\r\n if (typeof value === 'string' && value.trim().length === 0) {\r\n return { requiredTrimmed: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[alphaOnly]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: AlphaOnly,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AlphaOnly implements Validator {\r\n private readonly pattern = /^[A-Za-z]+$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { alphaOnly: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[alphaNumeric]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: AlphaNumeric,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AlphaNumeric implements Validator {\r\n private readonly pattern = /^[A-Za-z0-9]+$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { alphaNumeric: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostListener, Input, numberAttribute } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[maxDigits]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: MaxDigits,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MaxDigits implements Validator {\r\n @Input({ transform: numberAttribute })\r\n maxDigits: string | number = 0;\r\n\r\n constructor(private el: ElementRef<HTMLInputElement>) {}\r\n\r\n\r\n @HostListener('input')\r\n onInput(): void {\r\n let value = this.el.nativeElement.value;\r\n\r\n value = value.replace(/[^0-9]/g, '');\r\n\r\n const limit = Number(this.maxDigits);\r\n\r\n if (limit > 0 && value.length > limit) {\r\n value = value.slice(0, limit);\r\n }\r\n\r\n this.el.nativeElement.value = value;\r\n }\r\n\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = String(control.value ?? '');\r\n const limit = Number(this.maxDigits);\r\n\r\n if (!value || limit <= 0) return null;\r\n\r\n const digitCount = value.replace(/\\D/g, '').length;\r\n\r\n if (digitCount > limit) {\r\n return {\r\n maxDigits: {\r\n required: limit,\r\n actual: digitCount,\r\n },\r\n };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostListener, Input, numberAttribute } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[decimalDigits]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: DecimalLimit,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class DecimalLimit implements Validator {\r\n @Input({ transform: numberAttribute })\r\n decimalDigits: string | number = 0;\r\n\r\n constructor(private el: ElementRef<HTMLInputElement>) {}\r\n\r\n @HostListener('input')\r\n onInput(): void {\r\n let value = this.el.nativeElement.value;\r\n value = value.replace(/[^0-9.]/g, '');\r\n const parts = value.split('.');\r\n if (parts.length > 2) {\r\n value = parts[0] + '.' + parts.slice(1).join('');\r\n }\r\n\r\n const limit = Number(this.decimalDigits);\r\n\r\n if (limit > 0 && value.includes('.')) {\r\n const [int, dec] = value.split('.');\r\n value = int + '.' + dec.slice(0, limit);\r\n }\r\n\r\n this.el.nativeElement.value = value;\r\n }\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = String(control.value ?? '');\r\n const limit = Number(this.decimalDigits);\r\n\r\n if (!value || limit <= 0) return null;\r\n\r\n if (!value.includes('.')) return null;\r\n\r\n const decimalPart = value.split('.')[1] ?? '';\r\n\r\n if (decimalPart.length > limit) {\r\n return {\r\n decimalDigits: {\r\n required: limit,\r\n actual: decimalPart.length,\r\n },\r\n };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[emailCheck]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => EmailCheck),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class EmailCheck implements Validator {\r\n private readonly emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return { emailCheck: true };\r\n }\r\n\r\n return this.emailRegex.test(value) ? null : { emailCheck: true };\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[phoneNumber]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: PhoneNumber,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class PhoneNumber implements Validator {\r\n\r\n private readonly pattern = /^\\+?[0-9]{7,15}$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (!value) return null;\r\n\r\n if (typeof value !== 'string') {\r\n return { phoneNumber: true };\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { phoneNumber: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[passwordCheck]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => PasswordCheck),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class PasswordCheck implements Validator {\r\n private readonly passwordRegex = /^(?=.*[A-Za-z])(?=.*\\d).{8,}$/;\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return {\r\n passwordCheck: {\r\n minLength: 8,\r\n requiresLetter: true,\r\n requiresNumber: true,\r\n },\r\n };\r\n }\r\n\r\n if (!this.passwordRegex.test(value)) {\r\n return {\r\n passwordCheck: {\r\n minLength: 8,\r\n requiresLetter: true,\r\n requiresNumber: true,\r\n },\r\n };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[containsUppercase]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: ContainsUppercase,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ContainsUppercase implements Validator {\r\n private readonly pattern = /[A-Z]/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { containsUppercase: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[containsLowercase]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: ContainsLowercase,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ContainsLowercase implements Validator {\r\n private readonly pattern = /[a-z]/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { containsLowercase: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[containsSpecialCharacter]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: ContainsSpecialCharacter,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ContainsSpecialCharacter implements Validator {\r\n\r\n private readonly pattern = /[^A-Za-z0-9]/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { containsSpecialCharacter: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[dateRange]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: DateRange,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class DateRange implements Validator {\r\n\r\n @Input('dateRangeStart') startControlName!: string;\r\n @Input('dateRangeEnd') endControlName!: string;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n if (!control || !control.get) return null;\r\n\r\n const start = control.get(this.startControlName)?.value;\r\n const end = control.get(this.endControlName)?.value;\r\n\r\n if (!start || !end) return null;\r\n\r\n const startDate = new Date(start);\r\n const endDate = new Date(end);\r\n\r\n if (isNaN(startDate.getTime()) || isNaN(endDate.getTime())) {\r\n return null;\r\n }\r\n\r\n if (endDate < startDate) {\r\n return { dateRange: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostListener, Input } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[CommaFormat]',\r\n standalone: true,\r\n})\r\nexport class CommaFormat {\r\n @Input() allowDecimal = false;\r\n\r\n constructor(private el: ElementRef<HTMLInputElement>) {}\r\n\r\n @HostListener('input')\r\n onInput(): void {\r\n let value = this.el.nativeElement.value;\r\n\r\n value = value.replace(/,/g, '');\r\n\r\n const regex = this.allowDecimal ? /[^0-9.]/g : /[^0-9]/g;\r\n value = value.replace(regex, '');\r\n\r\n const parts = value.split('.');\r\n let integerPart = parts[0];\r\n const decimalPart = parts[1];\r\n\r\n integerPart = integerPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\r\n this.el.nativeElement.value =\r\n decimalPart !== undefined ? `${integerPart}.${decimalPart}` : integerPart;\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { RequiredTrimmed } from './validations/required-trimmed/required-trimmed';\r\nimport { AlphaOnly } from './validations/alpha-only/alpha-only';\r\nimport { AlphaNumeric } from './validations/alpha-numeric/alpha-numeric';\r\nimport { MaxDigits } from './validations/max-digits/max-digits';\r\nimport { DecimalLimit } from './validations/decimal-limit/decimal-limit';\r\nimport { EmailCheck } from './validations/email-check/email-check';\r\nimport { PhoneNumber } from './validations/phone-number/phone-number';\r\nimport { PasswordCheck } from './validations/password-check/password-check';\r\nimport { ContainsUppercase } from './validations/contains-uppercase/contains-uppercase';\r\nimport { ContainsLowercase } from './validations/contains-lowercase/contains-lowercase';\r\nimport { ContainsSpecialCharacter } from './validations/contains-special-character/contains-special-character';\r\nimport { DateRange } from './validations/date-range/date-range';\r\nimport { FormError } from './core/form-error/form-error';\r\nimport { CommaFormat } from './validations/comma-format/comma-format';\r\n\r\n\r\n\r\n\r\nexport const SharedUiValidators = [\r\n RequiredTrimmed,\r\n AlphaOnly,\r\n AlphaNumeric,\r\n MaxDigits,\r\n DecimalLimit,\r\n EmailCheck,\r\n PhoneNumber,\r\n PasswordCheck,\r\n ContainsUppercase,\r\n ContainsLowercase,\r\n ContainsSpecialCharacter,\r\n DateRange,\r\n CommaFormat\r\n\r\n] as const; \r\n\r\n\r\n@Component({\r\n selector: 'lib-shared-ui',\r\n imports: [],\r\n template: `\r\n <p>\r\n shared-ui works!\r\n </p>\r\n `,\r\n styles: ``,\r\n})\r\n\r\n\r\n\r\nexport class SharedUi {\r\n\r\n}\r\n","\r\nexport const ERROR_MESSAGES: Record<string, (e?: any) => string> = {\r\n required: () => 'This field is required',\r\n requiredTrimmed: () => 'This field cannot be empty',\r\n email: () => 'Invalid email address',\r\n phoneNumber: () => 'Invalid phone number',\r\n\r\n alphaOnly: () => 'Only alphabetic characters are allowed',\r\n alphaNumeric: () => 'Only alphanumeric characters are allowed',\r\n\r\n maxDigits: e => `Maximum ${e.required} digits allowed`,\r\n decimalLimit: e => `Maximum ${e.limit} decimal places allowed`,\r\n\r\n containsLowercase: () => 'At least one lowercase letter is required',\r\n containsUppercase: () => 'At least one uppercase letter is required',\r\n containsSpecialChar: () => 'At least one special character is required',\r\n\r\n passwordCheck: () => 'Password does not meet strength requirements',\r\n passwordMismatch: () => 'Passwords do not match',\r\n dateRange: () => 'End date must be after start date'\r\n};","import { Component, Input } from '@angular/core';\r\nimport { AbstractControl, ValidationErrors } from '@angular/forms';\r\nimport { ERROR_MESSAGES } from '../error-message/error-message';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-form-error',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './form-error.html',\r\n styleUrls: ['./form-error.css'],\r\n})\r\nexport class FormError {\r\n\r\n @Input() control!: AbstractControl | null;\r\n\r\n get errorMessage(): string | null {\r\n if (!this.control || !this.control.touched || !this.control.errors) {\r\n return null;\r\n }\r\n\r\n return this.resolveError(this.control.errors);\r\n }\r\n\r\n private resolveError(errors: ValidationErrors): string {\r\n const key = Object.keys(errors)[0];\r\n const resolver = ERROR_MESSAGES[key];\r\n\r\n return resolver ? resolver(errors[key]) : 'Invalid value';\r\n }\r\n}\r\n","<span class=\"lib-error\" *ngIf=\"errorMessage\">\r\n {{ errorMessage }}\r\n</span>\r\n","/*\r\n * Public API Surface of shared-ui\r\n */\r\n\r\nexport * from './lib/shared-ui';\r\nexport * from './lib/validations/required-trimmed/required-trimmed';\r\nexport * from './lib/validations/alpha-only/alpha-only';\r\nexport * from './lib/validations/alpha-numeric/alpha-numeric';\r\nexport * from './lib/validations/max-digits/max-digits';\r\nexport * from './lib/validations/decimal-limit/decimal-limit';\r\nexport * from './lib/validations/email-check/email-check';\r\nexport * from './lib/validations/phone-number/phone-number';\r\nexport * from './lib/validations/password-check/password-check';\r\nexport * from './lib/validations/contains-uppercase/contains-uppercase';\r\nexport * from './lib/validations/contains-lowercase/contains-lowercase';\r\nexport * from './lib/validations/contains-special-character/contains-special-character';\r\nexport * from './lib/validations/date-range/date-range';\r\nexport * from './lib/core/error-message/error-message';\r\nexport * from './lib/core/form-error/form-error'\r\nexport * from './lib/validations/comma-format/comma-format';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aroobajaved-shared-ui.mjs","sources":["../../../projects/shared-ui/src/lib/validations/required-trimmed/required-trimmed.ts","../../../projects/shared-ui/src/lib/validations/alpha-only/alpha-only.ts","../../../projects/shared-ui/src/lib/validations/alpha-numeric/alpha-numeric.ts","../../../projects/shared-ui/src/lib/validations/max-digits/max-digits.ts","../../../projects/shared-ui/src/lib/validations/decimal-limit/decimal-limit.ts","../../../projects/shared-ui/src/lib/validations/email-check/email-check.ts","../../../projects/shared-ui/src/lib/validations/phone-number/phone-number.ts","../../../projects/shared-ui/src/lib/validations/password-check/password-check.ts","../../../projects/shared-ui/src/lib/validations/contains-uppercase/contains-uppercase.ts","../../../projects/shared-ui/src/lib/validations/contains-lowercase/contains-lowercase.ts","../../../projects/shared-ui/src/lib/validations/contains-special-character/contains-special-character.ts","../../../projects/shared-ui/src/lib/validations/date-range/date-range.ts","../../../projects/shared-ui/src/lib/validations/comma-format/comma-format.ts","../../../projects/shared-ui/src/lib/shared-ui.ts","../../../projects/shared-ui/src/lib/core/error-message/error-message.ts","../../../projects/shared-ui/src/lib/core/form-error/form-error.ts","../../../projects/shared-ui/src/lib/core/form-error/form-error.html","../../../projects/shared-ui/src/public-api.ts","../../../projects/shared-ui/src/aroobajaved-shared-ui.ts"],"sourcesContent":["import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[requiredTrimmed]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: RequiredTrimmed,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class RequiredTrimmed implements Validator {\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return { requiredTrimmed: true };\r\n }\r\n\r\n if (typeof value === 'string' && value.trim().length === 0) {\r\n return { requiredTrimmed: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[alphaOnly]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => AlphaOnly),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AlphaOnly implements Validator {\r\n private readonly pattern = /^[A-Za-z]+$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n return this.pattern.test(value) ? null : { alphaOnly: true };\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[alphaNumeric]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => AlphaNumeric),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class AlphaNumeric implements Validator {\r\n private readonly pattern = /^[A-Za-z0-9]+$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n return this.pattern.test(value) ? null : { alphaNumeric: true };\r\n }\r\n}\r\n","import { Directive, Input, forwardRef, numberAttribute } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[maxDigits]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => MaxDigits),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class MaxDigits implements Validator {\r\n @Input({ transform: numberAttribute })\r\n maxDigits = 0;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (!value || this.maxDigits <= 0) return null;\r\n\r\n const digitCount = String(value).replace(/\\D/g, '').length;\r\n\r\n return digitCount > this.maxDigits ? { maxDigits: true } : null;\r\n }\r\n}\r\n","import { Directive, Input, forwardRef, numberAttribute } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[decimalDigits]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => DecimalLimit),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class DecimalLimit implements Validator {\r\n @Input({ transform: numberAttribute })\r\n decimalDigits = 0;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (!value || this.decimalDigits <= 0) return null;\r\n\r\n const [, decimal] = String(value).split('.');\r\n\r\n if (decimal && decimal.length > this.decimalDigits) {\r\n return { decimalDigits: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[emailCheck]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => EmailCheck),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class EmailCheck implements Validator {\r\n private readonly emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return { emailCheck: true };\r\n }\r\n\r\n return this.emailRegex.test(value) ? null : { emailCheck: true };\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[phoneNumber]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: PhoneNumber,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class PhoneNumber implements Validator {\r\n\r\n private readonly pattern = /^\\+?[0-9]{7,15}$/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (!value) return null;\r\n\r\n if (typeof value !== 'string') {\r\n return { phoneNumber: true };\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { phoneNumber: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[passwordCheck]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => PasswordCheck),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class PasswordCheck implements Validator {\r\n private readonly passwordRegex = /^(?=.*[A-Za-z])(?=.*\\d).{8,}$/;\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return {\r\n passwordCheck: {\r\n minLength: 8,\r\n requiresLetter: true,\r\n requiresNumber: true,\r\n },\r\n };\r\n }\r\n\r\n if (!this.passwordRegex.test(value)) {\r\n return {\r\n passwordCheck: {\r\n minLength: 8,\r\n requiresLetter: true,\r\n requiresNumber: true,\r\n },\r\n };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[containsUppercase]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => ContainsUppercase),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ContainsUppercase implements Validator {\r\n private readonly pattern = /[A-Z]/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n return this.pattern.test(value) ? null : { containsUppercase: true };\r\n }\r\n}\r\n","import { Directive, forwardRef } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[containsLowercase]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => ContainsLowercase),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ContainsLowercase implements Validator {\r\n private readonly pattern = /[a-z]/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined || value === '') {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n return this.pattern.test(value) ? null : { containsLowercase: true };\r\n }\r\n}\r\n","import { Directive } from '@angular/core';\r\nimport { AbstractControl, NG_VALIDATORS, ValidationErrors, Validator } from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[containsSpecialCharacter]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: ContainsSpecialCharacter,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ContainsSpecialCharacter implements Validator {\r\n\r\n private readonly pattern = /[^A-Za-z0-9]/;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n const value = control.value;\r\n\r\n if (value === null || value === undefined) {\r\n return null;\r\n }\r\n\r\n if (typeof value !== 'string') {\r\n return null;\r\n }\r\n\r\n if (!this.pattern.test(value)) {\r\n return { containsSpecialCharacter: true };\r\n }\r\n\r\n return null;\r\n }\r\n}\r\n","import { Directive, Input, forwardRef } from '@angular/core';\r\nimport {\r\n AbstractControl,\r\n NG_VALIDATORS,\r\n ValidationErrors,\r\n Validator,\r\n} from '@angular/forms';\r\n\r\n@Directive({\r\n selector: '[dateRange]',\r\n standalone: true,\r\n providers: [\r\n {\r\n provide: NG_VALIDATORS,\r\n useExisting: forwardRef(() => DateRange),\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class DateRange implements Validator {\r\n @Input('dateRangeStart') startControlName!: string;\r\n @Input('dateRangeEnd') endControlName!: string;\r\n\r\n validate(control: AbstractControl): ValidationErrors | null {\r\n if (!control || typeof (control as any).get !== 'function') {\r\n return null;\r\n }\r\n\r\n const start = control.get(this.startControlName)?.value;\r\n const end = control.get(this.endControlName)?.value;\r\n\r\n if (!start || !end) {\r\n return null;\r\n }\r\n\r\n const startDate = new Date(start);\r\n const endDate = new Date(end);\r\n\r\n if (isNaN(startDate.getTime()) || isNaN(endDate.getTime())) {\r\n return null;\r\n }\r\n\r\n return endDate < startDate ? { dateRange: true } : null;\r\n }\r\n}\r\n","import { Directive, ElementRef, HostListener } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[CommaFormat]',\r\n standalone: true,\r\n})\r\nexport class CommaFormat {\r\n private readonly MAX_DIGITS = 10;\r\n private readonly DECIMAL_DIGITS = 2;\r\n\r\n constructor(private el: ElementRef<HTMLInputElement>) {}\r\n\r\n @HostListener('input')\r\n onInput(): void {\r\n const input = this.el.nativeElement;\r\n let value = input.value;\r\n\r\n value = value.replace(/,/g, '');\r\n value = value.replace(/[^0-9.]/g, '');\r\n\r\n const parts = value.split('.');\r\n let integerPart = parts[0];\r\n let decimalPart = parts[1] ?? '';\r\n\r\n decimalPart = decimalPart.slice(0, this.DECIMAL_DIGITS);\r\n\r\n const totalDigits = (integerPart + decimalPart).length;\r\n if (totalDigits > this.MAX_DIGITS) {\r\n const allowed = this.MAX_DIGITS - decimalPart.length;\r\n integerPart = integerPart.slice(0, allowed);\r\n }\r\n\r\n const formattedInteger =\r\n integerPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, ',');\r\n\r\n const formattedValue =\r\n decimalPart.length > 0\r\n ? `${formattedInteger}.${decimalPart}`\r\n : formattedInteger;\r\n\r\n if (input.value !== formattedValue) {\r\n input.value = formattedValue;\r\n input.dispatchEvent(new Event('input', { bubbles: true }));\r\n }\r\n }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { RequiredTrimmed } from './validations/required-trimmed/required-trimmed';\r\nimport { AlphaOnly } from './validations/alpha-only/alpha-only';\r\nimport { AlphaNumeric } from './validations/alpha-numeric/alpha-numeric';\r\nimport { MaxDigits } from './validations/max-digits/max-digits';\r\nimport { DecimalLimit } from './validations/decimal-limit/decimal-limit';\r\nimport { EmailCheck } from './validations/email-check/email-check';\r\nimport { PhoneNumber } from './validations/phone-number/phone-number';\r\nimport { PasswordCheck } from './validations/password-check/password-check';\r\nimport { ContainsUppercase } from './validations/contains-uppercase/contains-uppercase';\r\nimport { ContainsLowercase } from './validations/contains-lowercase/contains-lowercase';\r\nimport { ContainsSpecialCharacter } from './validations/contains-special-character/contains-special-character';\r\nimport { DateRange } from './validations/date-range/date-range';\r\nimport { FormError } from './core/form-error/form-error';\r\nimport { CommaFormat } from './validations/comma-format/comma-format';\r\n\r\n\r\n\r\n\r\nexport const SharedUiValidators = [\r\n RequiredTrimmed,\r\n AlphaOnly,\r\n AlphaNumeric,\r\n MaxDigits,\r\n DecimalLimit,\r\n EmailCheck,\r\n PhoneNumber,\r\n PasswordCheck,\r\n ContainsUppercase,\r\n ContainsLowercase,\r\n ContainsSpecialCharacter,\r\n DateRange,\r\n CommaFormat\r\n\r\n] as const; \r\n\r\n\r\n@Component({\r\n selector: 'lib-shared-ui',\r\n imports: [],\r\n template: `\r\n <p>\r\n shared-ui works!\r\n </p>\r\n `,\r\n styles: ``,\r\n})\r\n\r\n\r\n\r\nexport class SharedUi {\r\n\r\n}\r\n","\r\nexport const ERROR_MESSAGES: Record<string, (e?: any) => string> = {\r\n required: () => 'This field is required',\r\n requiredTrimmed: () => 'This field cannot be empty',\r\n email: () => 'Invalid email address',\r\n phoneNumber: () => 'Invalid phone number',\r\n\r\n alphaOnly: () => 'Only alphabetic characters are allowed',\r\n alphaNumeric: () => 'Only alphanumeric characters are allowed',\r\n\r\n maxDigits: e => `Maximum ${e.required} digits allowed`,\r\n decimalLimit: e => `Maximum ${e.limit} decimal places allowed`,\r\n\r\n containsLowercase: () => 'At least one lowercase letter is required',\r\n containsUppercase: () => 'At least one uppercase letter is required',\r\n containsSpecialChar: () => 'At least one special character is required',\r\n\r\n passwordCheck: () => 'Password does not meet strength requirements',\r\n passwordMismatch: () => 'Passwords do not match',\r\n dateRange: () => 'End date must be after start date'\r\n};","import { Component, Input } from '@angular/core';\r\nimport { AbstractControl, ValidationErrors } from '@angular/forms';\r\nimport { ERROR_MESSAGES } from '../error-message/error-message';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-form-error',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './form-error.html',\r\n styleUrls: ['./form-error.css'],\r\n})\r\nexport class FormError {\r\n\r\n @Input() control!: AbstractControl | null;\r\n\r\n get errorMessage(): string | null {\r\n if (!this.control || !this.control.touched || !this.control.errors) {\r\n return null;\r\n }\r\n\r\n return this.resolveError(this.control.errors);\r\n }\r\n\r\n private resolveError(errors: ValidationErrors): string {\r\n const key = Object.keys(errors)[0];\r\n const resolver = ERROR_MESSAGES[key];\r\n\r\n return resolver ? resolver(errors[key]) : 'Invalid value';\r\n }\r\n}\r\n","<span class=\"lib-error\" *ngIf=\"errorMessage\">\r\n {{ errorMessage }}\r\n</span>\r\n","/*\r\n * Public API Surface of shared-ui\r\n */\r\n\r\nexport * from './lib/shared-ui';\r\nexport * from './lib/validations/required-trimmed/required-trimmed';\r\nexport * from './lib/validations/alpha-only/alpha-only';\r\nexport * from './lib/validations/alpha-numeric/alpha-numeric';\r\nexport * from './lib/validations/max-digits/max-digits';\r\nexport * from './lib/validations/decimal-limit/decimal-limit';\r\nexport * from './lib/validations/email-check/email-check';\r\nexport * from './lib/validations/phone-number/phone-number';\r\nexport * from './lib/validations/password-check/password-check';\r\nexport * from './lib/validations/contains-uppercase/contains-uppercase';\r\nexport * from './lib/validations/contains-lowercase/contains-lowercase';\r\nexport * from './lib/validations/contains-special-character/contains-special-character';\r\nexport * from './lib/validations/date-range/date-range';\r\nexport * from './lib/core/error-message/error-message';\r\nexport * from './lib/core/form-error/form-error'\r\nexport * from './lib/validations/comma-format/comma-format';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -23,10 +23,7 @@ declare class AlphaNumeric implements Validator {
|
|
|
23
23
|
}
|
|
24
24
|
|
|
25
25
|
declare class MaxDigits implements Validator {
|
|
26
|
-
|
|
27
|
-
maxDigits: string | number;
|
|
28
|
-
constructor(el: ElementRef<HTMLInputElement>);
|
|
29
|
-
onInput(): void;
|
|
26
|
+
maxDigits: number;
|
|
30
27
|
validate(control: AbstractControl): ValidationErrors | null;
|
|
31
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<MaxDigits, never>;
|
|
32
29
|
static ɵdir: i0.ɵɵDirectiveDeclaration<MaxDigits, "[maxDigits]", never, { "maxDigits": { "alias": "maxDigits"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -34,10 +31,7 @@ declare class MaxDigits implements Validator {
|
|
|
34
31
|
}
|
|
35
32
|
|
|
36
33
|
declare class DecimalLimit implements Validator {
|
|
37
|
-
|
|
38
|
-
decimalDigits: string | number;
|
|
39
|
-
constructor(el: ElementRef<HTMLInputElement>);
|
|
40
|
-
onInput(): void;
|
|
34
|
+
decimalDigits: number;
|
|
41
35
|
validate(control: AbstractControl): ValidationErrors | null;
|
|
42
36
|
static ɵfac: i0.ɵɵFactoryDeclaration<DecimalLimit, never>;
|
|
43
37
|
static ɵdir: i0.ɵɵDirectiveDeclaration<DecimalLimit, "[decimalDigits]", never, { "decimalDigits": { "alias": "decimalDigits"; "required": false; }; }, {}, never, never, true, never>;
|
|
@@ -96,11 +90,12 @@ declare class DateRange implements Validator {
|
|
|
96
90
|
|
|
97
91
|
declare class CommaFormat {
|
|
98
92
|
private el;
|
|
99
|
-
|
|
93
|
+
private readonly MAX_DIGITS;
|
|
94
|
+
private readonly DECIMAL_DIGITS;
|
|
100
95
|
constructor(el: ElementRef<HTMLInputElement>);
|
|
101
96
|
onInput(): void;
|
|
102
97
|
static ɵfac: i0.ɵɵFactoryDeclaration<CommaFormat, never>;
|
|
103
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<CommaFormat, "[CommaFormat]", never, {
|
|
98
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<CommaFormat, "[CommaFormat]", never, {}, {}, never, never, true, never>;
|
|
104
99
|
}
|
|
105
100
|
|
|
106
101
|
declare const SharedUiValidators: readonly [typeof RequiredTrimmed, typeof AlphaOnly, typeof AlphaNumeric, typeof MaxDigits, typeof DecimalLimit, typeof EmailCheck, typeof PhoneNumber, typeof PasswordCheck, typeof ContainsUppercase, typeof ContainsLowercase, typeof ContainsSpecialCharacter, typeof DateRange, typeof CommaFormat];
|