@annalib/anna-core 0.0.7 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.mjs +6 -6
- package/esm2020/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.mjs +35 -0
- package/esm2020/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.mjs +6 -6
- package/esm2020/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.mjs +6 -6
- package/esm2020/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.mjs +6 -6
- package/esm2020/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.mjs +4 -4
- package/esm2020/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.mjs +6 -6
- package/esm2020/lib/anna-core-shared-lib/constants/shared.constant.mjs +3 -2
- package/esm2020/lib/anna-core-shared-lib/directives/digits-only/digits-only.directive.mjs +281 -0
- package/esm2020/lib/anna-core-shared-lib/directives/show-ellipsis-text/show-ellipsis-text.directive.mjs +27 -0
- package/esm2020/lib/anna-core-shared-lib/models/anna-generic-data-type.model.mjs +1 -1
- package/esm2020/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.mjs +1 -1
- package/esm2020/lib/anna-core-shared-lib/models/anna-manage-users.model.mjs +8 -0
- package/esm2020/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +11 -3
- package/esm2020/lib/anna-core-shared-lib/models/anna-sort.model.mjs +7 -0
- package/esm2020/lib/anna-core-shared-lib/models/anna-tooltip.model.mjs +9 -5
- package/esm2020/lib/anna-core-shared-lib/pipes/annaConvertZeroOrNullOrUndefined.pipe.mjs +26 -0
- package/esm2020/lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe.mjs +23 -8
- package/esm2020/lib/anna-core-shared-lib/pipes/annaReplaceChar.pipe.mjs +25 -0
- package/esm2020/lib/anna-core-shared-lib/pipes/annaTypeOfData.pipe.mjs +16 -0
- package/esm2020/lib/anna-core-shared-lib/services/anna-date-time-format.service.mjs +52 -34
- package/esm2020/lib/anna-core-shared-lib/services/anna-filter.service.mjs +238 -281
- package/esm2020/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs +98 -15
- package/esm2020/lib/anna-core-shared-lib/services/anna-global-config.service.mjs +4 -5
- package/esm2020/lib/anna-core-shared-lib/services/anna-number-format.service.mjs +41 -0
- package/esm2020/lib/anna-core-shared-lib/services/anna-persisting-filter.service.mjs +60 -0
- package/esm2020/lib/anna-core-shared-lib/services/anna-sort.service.mjs +91 -125
- package/esm2020/lib/anna-core.module.mjs +178 -0
- package/esm2020/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +38 -13
- package/esm2020/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.mjs +27 -23
- package/esm2020/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +1419 -499
- package/esm2020/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +46 -107
- package/esm2020/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +7 -7
- package/esm2020/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.mjs +5 -5
- package/esm2020/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.mjs +3 -3
- package/esm2020/public-api.mjs +48 -4
- package/fesm2015/annalib-anna-core.mjs +4498 -3079
- package/fesm2015/annalib-anna-core.mjs.map +1 -1
- package/fesm2020/annalib-anna-core.mjs +4694 -3279
- package/fesm2020/annalib-anna-core.mjs.map +1 -1
- package/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.d.ts +16 -0
- package/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/constants/shared.constant.d.ts +2 -1
- package/lib/anna-core-shared-lib/directives/digits-only/digits-only.directive.d.ts +34 -0
- package/lib/anna-core-shared-lib/directives/show-ellipsis-text/show-ellipsis-text.directive.d.ts +9 -0
- package/lib/anna-core-shared-lib/models/anna-generic-data-type.model.d.ts +8 -0
- package/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.d.ts +1 -0
- package/lib/anna-core-shared-lib/models/anna-manage-users.model.d.ts +6 -0
- package/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +52 -10
- package/lib/anna-core-shared-lib/models/anna-sort.model.d.ts +11 -0
- package/lib/anna-core-shared-lib/models/anna-tooltip.model.d.ts +8 -4
- package/lib/anna-core-shared-lib/pipes/annaConvertZeroOrNullOrUndefined.pipe.d.ts +9 -0
- package/lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe.d.ts +1 -1
- package/lib/anna-core-shared-lib/pipes/annaReplaceChar.pipe.d.ts +9 -0
- package/lib/anna-core-shared-lib/pipes/annaTypeOfData.pipe.d.ts +7 -0
- package/lib/anna-core-shared-lib/services/anna-date-time-format.service.d.ts +2 -0
- package/lib/anna-core-shared-lib/services/anna-filter.service.d.ts +26 -20
- package/lib/anna-core-shared-lib/services/anna-generic-table.service.d.ts +21 -5
- package/lib/anna-core-shared-lib/services/anna-number-format.service.d.ts +7 -0
- package/lib/anna-core-shared-lib/services/anna-persisting-filter.service.d.ts +8 -0
- package/lib/anna-core-shared-lib/services/anna-sort.service.d.ts +7 -14
- package/lib/anna-core.module.d.ts +36 -0
- package/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.d.ts +12 -7
- package/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.d.ts +5 -2
- package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +165 -40
- package/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.d.ts +12 -22
- package/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.d.ts +3 -3
- package/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.d.ts +1 -1
- package/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.d.ts +1 -1
- package/package.json +11 -34
- package/public-api.d.ts +35 -3
- package/src/lib/anna-assets/images/bg-heads.png +0 -0
- package/src/lib/anna-common-scss/_animate.scss +27 -0
- package/src/lib/anna-common-scss/_application-spacing.scss +6 -0
- package/src/lib/anna-common-scss/_bootstrap-tooltip.scss +25 -0
- package/src/lib/anna-common-scss/_colors.scss +107 -0
- package/src/lib/anna-common-scss/_customDropdown.scss +129 -0
- package/src/lib/anna-common-scss/_dashboard-partials.scss +104 -0
- package/src/lib/anna-common-scss/_date-picker-form.scss +87 -0
- package/src/lib/anna-common-scss/_filters.scss +641 -0
- package/src/lib/anna-common-scss/_font.scss +10 -0
- package/src/lib/anna-common-scss/_fonts.scss +86 -0
- package/src/lib/anna-common-scss/_generic-table-common.scss +112 -0
- package/src/lib/anna-common-scss/_legend.scss +11 -0
- package/src/lib/anna-common-scss/_mixins.scss +188 -0
- package/src/lib/anna-common-scss/_modal.scss +37 -0
- package/src/lib/anna-common-scss/_ng-select.scss +176 -0
- package/src/lib/anna-common-scss/_sort.scss +30 -0
- package/src/lib/anna-common-scss/_toggle.scss +84 -0
- package/src/lib/anna-common-scss/style.scss +1 -0
- package/esm2020/lib/anna-core-shared-lib/anna-core-shared-lib.module.mjs +0 -59
- package/esm2020/lib/anna-core-shared-lib/index.mjs +0 -2
- package/esm2020/lib/anna-core-shared-lib/public-api.mjs +0 -25
- package/esm2020/lib/anna-dropdown-lib/anna-dropdown-lib.module.mjs +0 -43
- package/esm2020/lib/anna-dropdown-lib/index.mjs +0 -2
- package/esm2020/lib/anna-dropdown-lib/public-api.mjs +0 -6
- package/esm2020/lib/anna-generic-table-lib/anna-generic-table-lib.module.mjs +0 -86
- package/esm2020/lib/anna-generic-table-lib/index.mjs +0 -2
- package/esm2020/lib/anna-generic-table-lib/public-api.mjs +0 -10
- package/esm2020/src/lib/anna-core-shared-lib/anna-core-shared-lib.module.mjs +0 -59
- package/esm2020/src/lib/anna-core-shared-lib/annalib-anna-core-src-lib-anna-core-shared-lib.mjs +0 -5
- package/esm2020/src/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.mjs +0 -15
- package/esm2020/src/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.mjs +0 -15
- package/esm2020/src/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.mjs +0 -22
- package/esm2020/src/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.mjs +0 -15
- package/esm2020/src/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.mjs +0 -21
- package/esm2020/src/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.mjs +0 -15
- package/esm2020/src/lib/anna-core-shared-lib/constants/shared.constant.mjs +0 -34
- package/esm2020/src/lib/anna-core-shared-lib/models/anna-generic-data-type.model.mjs +0 -2
- package/esm2020/src/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.mjs +0 -2
- package/esm2020/src/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +0 -3
- package/esm2020/src/lib/anna-core-shared-lib/models/anna-tooltip.model.mjs +0 -26
- package/esm2020/src/lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe.mjs +0 -31
- package/esm2020/src/lib/anna-core-shared-lib/public-api.mjs +0 -25
- package/esm2020/src/lib/anna-core-shared-lib/services/anna-date-time-format.service.mjs +0 -180
- package/esm2020/src/lib/anna-core-shared-lib/services/anna-filter.service.mjs +0 -536
- package/esm2020/src/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs +0 -52
- package/esm2020/src/lib/anna-core-shared-lib/services/anna-global-config.service.mjs +0 -133
- package/esm2020/src/lib/anna-core-shared-lib/services/anna-sort.service.mjs +0 -185
- package/esm2020/src/lib/anna-dropdown-lib/anna-dropdown-lib.module.mjs +0 -43
- package/esm2020/src/lib/anna-dropdown-lib/annalib-anna-core-src-lib-anna-dropdown-lib.mjs +0 -5
- package/esm2020/src/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +0 -76
- package/esm2020/src/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.mjs +0 -360
- package/esm2020/src/lib/anna-dropdown-lib/public-api.mjs +0 -6
- package/esm2020/src/lib/anna-generic-table-lib/anna-generic-table-lib.module.mjs +0 -86
- package/esm2020/src/lib/anna-generic-table-lib/annalib-anna-core-src-lib-anna-generic-table-lib.mjs +0 -5
- package/esm2020/src/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +0 -997
- package/esm2020/src/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +0 -125
- package/esm2020/src/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +0 -357
- package/esm2020/src/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.mjs +0 -189
- package/esm2020/src/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/index.mjs +0 -2
- package/esm2020/src/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.mjs +0 -178
- package/esm2020/src/lib/anna-generic-table-lib/directives/anna-virtual-table/index.mjs +0 -2
- package/esm2020/src/lib/anna-generic-table-lib/public-api.mjs +0 -10
- package/fesm2015/annalib-anna-core-src-lib-anna-core-shared-lib.mjs +0 -1294
- package/fesm2015/annalib-anna-core-src-lib-anna-core-shared-lib.mjs.map +0 -1
- package/fesm2015/annalib-anna-core-src-lib-anna-dropdown-lib.mjs +0 -474
- package/fesm2015/annalib-anna-core-src-lib-anna-dropdown-lib.mjs.map +0 -1
- package/fesm2015/annalib-anna-core-src-lib-anna-generic-table-lib.mjs +0 -1895
- package/fesm2015/annalib-anna-core-src-lib-anna-generic-table-lib.mjs.map +0 -1
- package/fesm2020/annalib-anna-core-src-lib-anna-core-shared-lib.mjs +0 -1294
- package/fesm2020/annalib-anna-core-src-lib-anna-core-shared-lib.mjs.map +0 -1
- package/fesm2020/annalib-anna-core-src-lib-anna-dropdown-lib.mjs +0 -472
- package/fesm2020/annalib-anna-core-src-lib-anna-dropdown-lib.mjs.map +0 -1
- package/fesm2020/annalib-anna-core-src-lib-anna-generic-table-lib.mjs +0 -1894
- package/fesm2020/annalib-anna-core-src-lib-anna-generic-table-lib.mjs.map +0 -1
- package/lib/anna-core-shared-lib/anna-core-shared-lib.module.d.ts +0 -14
- package/lib/anna-core-shared-lib/index.d.ts +0 -1
- package/lib/anna-core-shared-lib/public-api.d.ts +0 -18
- package/lib/anna-dropdown-lib/anna-dropdown-lib.module.d.ts +0 -11
- package/lib/anna-dropdown-lib/index.d.ts +0 -1
- package/lib/anna-dropdown-lib/public-api.d.ts +0 -3
- package/lib/anna-generic-table-lib/anna-generic-table-lib.module.d.ts +0 -21
- package/lib/anna-generic-table-lib/index.d.ts +0 -1
- package/lib/anna-generic-table-lib/public-api.d.ts +0 -6
- package/src/lib/anna-core-shared-lib/anna-core-shared-lib.module.d.ts +0 -14
- package/src/lib/anna-core-shared-lib/annalib-anna-core-src-lib-anna-core-shared-lib.d.ts +0 -5
- package/src/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.d.ts +0 -8
- package/src/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.d.ts +0 -8
- package/src/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.d.ts +0 -11
- package/src/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.d.ts +0 -8
- package/src/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.d.ts +0 -11
- package/src/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.d.ts +0 -8
- package/src/lib/anna-core-shared-lib/constants/shared.constant.d.ts +0 -32
- package/src/lib/anna-core-shared-lib/models/anna-generic-data-type.model.d.ts +0 -8
- package/src/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.d.ts +0 -95
- package/src/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +0 -70
- package/src/lib/anna-core-shared-lib/models/anna-tooltip.model.d.ts +0 -21
- package/src/lib/anna-core-shared-lib/package.json +0 -10
- package/src/lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe.d.ts +0 -9
- package/src/lib/anna-core-shared-lib/public-api.d.ts +0 -18
- package/src/lib/anna-core-shared-lib/services/anna-date-time-format.service.d.ts +0 -25
- package/src/lib/anna-core-shared-lib/services/anna-filter.service.d.ts +0 -68
- package/src/lib/anna-core-shared-lib/services/anna-generic-table.service.d.ts +0 -14
- package/src/lib/anna-core-shared-lib/services/anna-global-config.service.d.ts +0 -21
- package/src/lib/anna-core-shared-lib/services/anna-sort.service.d.ts +0 -23
- package/src/lib/anna-dropdown-lib/anna-dropdown-lib.module.d.ts +0 -11
- package/src/lib/anna-dropdown-lib/annalib-anna-core-src-lib-anna-dropdown-lib.d.ts +0 -5
- package/src/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.d.ts +0 -29
- package/src/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.d.ts +0 -67
- package/src/lib/anna-dropdown-lib/package.json +0 -10
- package/src/lib/anna-dropdown-lib/public-api.d.ts +0 -3
- package/src/lib/anna-generic-table-lib/anna-generic-table-lib.module.d.ts +0 -21
- package/src/lib/anna-generic-table-lib/annalib-anna-core-src-lib-anna-generic-table-lib.d.ts +0 -5
- package/src/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +0 -173
- package/src/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.d.ts +0 -27
- package/src/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.d.ts +0 -141
- package/src/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.d.ts +0 -89
- package/src/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/index.d.ts +0 -1
- package/src/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.d.ts +0 -45
- package/src/lib/anna-generic-table-lib/directives/anna-virtual-table/index.d.ts +0 -1
- package/src/lib/anna-generic-table-lib/package.json +0 -10
- package/src/lib/anna-generic-table-lib/public-api.d.ts +0 -6
- /package/{annalib-anna-core.d.ts → index.d.ts} +0 -0
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import { Directive, ElementRef, HostListener, Input, } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class DigitOnlyDirective {
|
|
4
|
+
constructor(el) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
this.hasDecimalPoint = false;
|
|
7
|
+
this.hasNegativeSign = false;
|
|
8
|
+
this.navigationKeys = [
|
|
9
|
+
'Backspace',
|
|
10
|
+
'Delete',
|
|
11
|
+
'Tab',
|
|
12
|
+
'Escape',
|
|
13
|
+
'Enter',
|
|
14
|
+
'Home',
|
|
15
|
+
'End',
|
|
16
|
+
'ArrowLeft',
|
|
17
|
+
'ArrowRight',
|
|
18
|
+
'Clear',
|
|
19
|
+
'Copy',
|
|
20
|
+
'Paste',
|
|
21
|
+
];
|
|
22
|
+
this.decimal = false;
|
|
23
|
+
this.decimalSeparator = '.';
|
|
24
|
+
this.allowNegatives = false;
|
|
25
|
+
this.allowPaste = true;
|
|
26
|
+
this.negativeSign = '-';
|
|
27
|
+
this.min = -Infinity;
|
|
28
|
+
this.max = Infinity;
|
|
29
|
+
this.regex = null;
|
|
30
|
+
this.inputElement = el.nativeElement;
|
|
31
|
+
}
|
|
32
|
+
ngOnChanges(changes) {
|
|
33
|
+
if (changes['pattern']) {
|
|
34
|
+
this.regex = this.pattern ? RegExp(this.pattern) : null;
|
|
35
|
+
}
|
|
36
|
+
if (changes['min']) {
|
|
37
|
+
const maybeMin = Number(this.min);
|
|
38
|
+
this.min = isNaN(maybeMin) ? -Infinity : maybeMin;
|
|
39
|
+
}
|
|
40
|
+
if (changes['max']) {
|
|
41
|
+
const maybeMax = Number(this.max);
|
|
42
|
+
this.max = isNaN(maybeMax) ? Infinity : maybeMax;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
onBeforeInput(e) {
|
|
46
|
+
if (isNaN(Number(e.data))) {
|
|
47
|
+
if (e.data === this.decimalSeparator ||
|
|
48
|
+
(e.data === this.negativeSign && this.allowNegatives)) {
|
|
49
|
+
return; // go on
|
|
50
|
+
}
|
|
51
|
+
e.preventDefault();
|
|
52
|
+
e.stopPropagation();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
onKeyDown(e) {
|
|
56
|
+
if (this.navigationKeys.indexOf(e.key) > -1 || // Allow: navigation keys: backspace, delete, arrows etc.
|
|
57
|
+
((e.key === 'a' || e.code === 'KeyA') && e.ctrlKey === true) || // Allow: Ctrl+A
|
|
58
|
+
((e.key === 'c' || e.code === 'KeyC') && e.ctrlKey === true) || // Allow: Ctrl+C
|
|
59
|
+
((e.key === 'v' || e.code === 'KeyV') && e.ctrlKey === true) || // Allow: Ctrl+V
|
|
60
|
+
((e.key === 'x' || e.code === 'KeyX') && e.ctrlKey === true) || // Allow: Ctrl+X
|
|
61
|
+
((e.key === 'a' || e.code === 'KeyA') && e.metaKey === true) || // Allow: Cmd+A (Mac)
|
|
62
|
+
((e.key === 'c' || e.code === 'KeyC') && e.metaKey === true) || // Allow: Cmd+C (Mac)
|
|
63
|
+
((e.key === 'v' || e.code === 'KeyV') && e.metaKey === true) || // Allow: Cmd+V (Mac)
|
|
64
|
+
((e.key === 'x' || e.code === 'KeyX') && e.metaKey === true) // Allow: Cmd+X (Mac)
|
|
65
|
+
) {
|
|
66
|
+
// let it happen, don't do anything
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
let newValue = '';
|
|
70
|
+
if (this.decimal && e.key === this.decimalSeparator) {
|
|
71
|
+
newValue = this.forecastValue(e.key);
|
|
72
|
+
if (newValue.split(this.decimalSeparator).length > 2) {
|
|
73
|
+
// has two or more decimal points
|
|
74
|
+
e.preventDefault();
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
this.hasDecimalPoint = newValue.indexOf(this.decimalSeparator) > -1;
|
|
79
|
+
return; // Allow: only one decimal point
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
if (e.key === this.negativeSign && this.allowNegatives) {
|
|
83
|
+
newValue = this.forecastValue(e.key);
|
|
84
|
+
if (newValue.charAt(0) !== this.negativeSign ||
|
|
85
|
+
newValue.split(this.negativeSign).length > 2) {
|
|
86
|
+
e.preventDefault();
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
this.hasNegativeSign = newValue.split(this.negativeSign).length > -1;
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
// Ensure that it is a number and stop the keypress
|
|
95
|
+
if (e.key === ' ' || isNaN(Number(e.key))) {
|
|
96
|
+
e.preventDefault();
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
newValue = newValue || this.forecastValue(e.key);
|
|
100
|
+
// check the input pattern RegExp
|
|
101
|
+
if (this.regex) {
|
|
102
|
+
if (!this.regex.test(newValue)) {
|
|
103
|
+
e.preventDefault();
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
const newNumber = Number(newValue);
|
|
108
|
+
if (newNumber > this.max || newNumber < this.min) {
|
|
109
|
+
e.preventDefault();
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
onPaste(event) {
|
|
113
|
+
if (this.allowPaste === true) {
|
|
114
|
+
let pastedInput = '';
|
|
115
|
+
if (window['clipboardData']) {
|
|
116
|
+
// Browser is IE
|
|
117
|
+
pastedInput = window['clipboardData'].getData('text');
|
|
118
|
+
}
|
|
119
|
+
else if (event.clipboardData && event.clipboardData.getData) {
|
|
120
|
+
// Other browsers
|
|
121
|
+
pastedInput = event.clipboardData.getData('text/plain');
|
|
122
|
+
}
|
|
123
|
+
this.pasteData(pastedInput);
|
|
124
|
+
event.preventDefault();
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
// this prevents the paste
|
|
128
|
+
event.preventDefault();
|
|
129
|
+
event.stopPropagation();
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
onDrop(event) {
|
|
133
|
+
const textData = event.dataTransfer?.getData('text') ?? '';
|
|
134
|
+
this.inputElement.focus();
|
|
135
|
+
this.pasteData(textData);
|
|
136
|
+
event.preventDefault();
|
|
137
|
+
}
|
|
138
|
+
pasteData(pastedContent) {
|
|
139
|
+
const sanitizedContent = this.sanitizeInput(pastedContent);
|
|
140
|
+
if (sanitizedContent.includes(this.negativeSign) &&
|
|
141
|
+
this.hasNegativeSign &&
|
|
142
|
+
!this.getSelection().includes(this.negativeSign)) {
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
const pasted = document.execCommand('insertText', false, sanitizedContent);
|
|
146
|
+
if (!pasted) {
|
|
147
|
+
if (this.inputElement.setRangeText) {
|
|
148
|
+
const { selectionStart: start, selectionEnd: end } = this.inputElement;
|
|
149
|
+
this.inputElement.setRangeText(sanitizedContent, start ?? 0, end ?? 0, 'end');
|
|
150
|
+
// Angular's Reactive Form relies on "input" event, but on Firefox, the setRangeText method doesn't trigger it
|
|
151
|
+
// so we have to trigger it ourself.
|
|
152
|
+
if (typeof window['InstallTrigger'] !==
|
|
153
|
+
'undefined') {
|
|
154
|
+
this.inputElement.dispatchEvent(new Event('input', { cancelable: true }));
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
// Browser does not support setRangeText, e.g. IE
|
|
159
|
+
this.insertAtCursor(this.inputElement, sanitizedContent);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
if (this.decimal) {
|
|
163
|
+
this.hasDecimalPoint =
|
|
164
|
+
this.inputElement.value.indexOf(this.decimalSeparator) > -1;
|
|
165
|
+
}
|
|
166
|
+
this.hasNegativeSign =
|
|
167
|
+
this.inputElement.value.indexOf(this.negativeSign) > -1;
|
|
168
|
+
}
|
|
169
|
+
// The following 2 methods were added from the below article for browsers that do not support setRangeText
|
|
170
|
+
// https://stackoverflow.com/questions/11076975/how-to-insert-text-into-the-textarea-at-the-current-cursor-position
|
|
171
|
+
insertAtCursor(myField, myValue) {
|
|
172
|
+
const startPos = myField.selectionStart ?? 0;
|
|
173
|
+
const endPos = myField.selectionEnd ?? 0;
|
|
174
|
+
myField.value =
|
|
175
|
+
myField.value.substring(0, startPos) +
|
|
176
|
+
myValue +
|
|
177
|
+
myField.value.substring(endPos, myField.value.length);
|
|
178
|
+
const pos = startPos + myValue.length;
|
|
179
|
+
myField.focus();
|
|
180
|
+
myField.setSelectionRange(pos, pos);
|
|
181
|
+
this.triggerEvent(myField, 'input');
|
|
182
|
+
}
|
|
183
|
+
triggerEvent(el, type) {
|
|
184
|
+
if ('createEvent' in document) {
|
|
185
|
+
// modern browsers, IE9+
|
|
186
|
+
const e = document.createEvent('HTMLEvents');
|
|
187
|
+
e.initEvent(type, false, true);
|
|
188
|
+
el.dispatchEvent(e);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
// end stack overflow code
|
|
192
|
+
sanitizeInput(input) {
|
|
193
|
+
let result = '';
|
|
194
|
+
let regex;
|
|
195
|
+
if (this.decimal && this.isValidDecimal(input)) {
|
|
196
|
+
regex = new RegExp(`${this.getNegativeSignRegExp()}[^0-9${this.decimalSeparator}]`, 'g');
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
regex = new RegExp(`${this.getNegativeSignRegExp()}[^0-9]`, 'g');
|
|
200
|
+
}
|
|
201
|
+
result = input.replace(regex, '');
|
|
202
|
+
const maxLength = this.inputElement.maxLength;
|
|
203
|
+
if (maxLength > 0) {
|
|
204
|
+
// the input element has maxLength limit
|
|
205
|
+
const allowedLength = maxLength -
|
|
206
|
+
this.inputElement.value.length +
|
|
207
|
+
(result.includes(`${this.negativeSign}`) ? 1 : 0);
|
|
208
|
+
result = allowedLength > 0 ? result.substring(0, allowedLength) : '';
|
|
209
|
+
}
|
|
210
|
+
return result;
|
|
211
|
+
}
|
|
212
|
+
getNegativeSignRegExp() {
|
|
213
|
+
return this.allowNegatives &&
|
|
214
|
+
(!this.hasNegativeSign || this.getSelection().includes(this.negativeSign))
|
|
215
|
+
? `(?!^${this.negativeSign})`
|
|
216
|
+
: '';
|
|
217
|
+
}
|
|
218
|
+
isValidDecimal(string) {
|
|
219
|
+
if (!this.hasDecimalPoint) {
|
|
220
|
+
return string.split(this.decimalSeparator).length <= 2;
|
|
221
|
+
}
|
|
222
|
+
else {
|
|
223
|
+
// the input element already has a decimal separator
|
|
224
|
+
const selectedText = this.getSelection();
|
|
225
|
+
if (selectedText && selectedText.indexOf(this.decimalSeparator) > -1) {
|
|
226
|
+
return string.split(this.decimalSeparator).length <= 2;
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
return string.indexOf(this.decimalSeparator) < 0;
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
getSelection() {
|
|
234
|
+
return this.inputElement.value.substring(this.inputElement.selectionStart ?? 0, this.inputElement.selectionEnd ?? 0);
|
|
235
|
+
}
|
|
236
|
+
forecastValue(key) {
|
|
237
|
+
const selectionStart = this.inputElement.selectionStart ?? 0;
|
|
238
|
+
const selectionEnd = this.inputElement.selectionEnd ?? 0;
|
|
239
|
+
const oldValue = this.inputElement.value;
|
|
240
|
+
return (oldValue.substring(0, selectionStart) +
|
|
241
|
+
key +
|
|
242
|
+
oldValue.substring(selectionEnd));
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
DigitOnlyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DigitOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
246
|
+
DigitOnlyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: DigitOnlyDirective, selector: "[digitOnly]", inputs: { decimal: "decimal", decimalSeparator: "decimalSeparator", allowNegatives: "allowNegatives", allowPaste: "allowPaste", negativeSign: "negativeSign", min: "min", max: "max", pattern: "pattern" }, host: { listeners: { "beforeinput": "onBeforeInput($event)", "keydown": "onKeyDown($event)", "paste": "onPaste($event)", "drop": "onDrop($event)" } }, usesOnChanges: true, ngImport: i0 });
|
|
247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DigitOnlyDirective, decorators: [{
|
|
248
|
+
type: Directive,
|
|
249
|
+
args: [{
|
|
250
|
+
selector: '[digitOnly]',
|
|
251
|
+
}]
|
|
252
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { decimal: [{
|
|
253
|
+
type: Input
|
|
254
|
+
}], decimalSeparator: [{
|
|
255
|
+
type: Input
|
|
256
|
+
}], allowNegatives: [{
|
|
257
|
+
type: Input
|
|
258
|
+
}], allowPaste: [{
|
|
259
|
+
type: Input
|
|
260
|
+
}], negativeSign: [{
|
|
261
|
+
type: Input
|
|
262
|
+
}], min: [{
|
|
263
|
+
type: Input
|
|
264
|
+
}], max: [{
|
|
265
|
+
type: Input
|
|
266
|
+
}], pattern: [{
|
|
267
|
+
type: Input
|
|
268
|
+
}], onBeforeInput: [{
|
|
269
|
+
type: HostListener,
|
|
270
|
+
args: ['beforeinput', ['$event']]
|
|
271
|
+
}], onKeyDown: [{
|
|
272
|
+
type: HostListener,
|
|
273
|
+
args: ['keydown', ['$event']]
|
|
274
|
+
}], onPaste: [{
|
|
275
|
+
type: HostListener,
|
|
276
|
+
args: ['paste', ['$event']]
|
|
277
|
+
}], onDrop: [{
|
|
278
|
+
type: HostListener,
|
|
279
|
+
args: ['drop', ['$event']]
|
|
280
|
+
}] } });
|
|
281
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlnaXRzLW9ubHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvZGlyZWN0aXZlcy9kaWdpdHMtb25seS9kaWdpdHMtb25seS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssR0FHTixNQUFNLGVBQWUsQ0FBQzs7QUFLdkIsTUFBTSxPQUFPLGtCQUFrQjtJQTZCN0IsWUFBbUIsRUFBYztRQUFkLE9BQUUsR0FBRixFQUFFLENBQVk7UUE1QnpCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLG1CQUFjLEdBQUc7WUFDdkIsV0FBVztZQUNYLFFBQVE7WUFDUixLQUFLO1lBQ0wsUUFBUTtZQUNSLE9BQU87WUFDUCxNQUFNO1lBQ04sS0FBSztZQUNMLFdBQVc7WUFDWCxZQUFZO1lBQ1osT0FBTztZQUNQLE1BQU07WUFDTixPQUFPO1NBQ1IsQ0FBQztRQUVPLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDaEIscUJBQWdCLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFDbEIsaUJBQVksR0FBRyxHQUFHLENBQUM7UUFDbkIsUUFBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ2hCLFFBQUcsR0FBRyxRQUFRLENBQUM7UUFFaEIsVUFBSyxHQUFrQixJQUFJLENBQUM7UUFJbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFFLENBQUMsYUFBYSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7U0FDekQ7UUFFRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQixNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2xDLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDO1NBQ25EO1FBRUQsSUFBSSxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbEIsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQyxJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7U0FDbEQ7SUFDSCxDQUFDO0lBR0QsYUFBYSxDQUFDLENBQWE7UUFDekIsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUFFO1lBQ3pCLElBQ0UsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsZ0JBQWdCO2dCQUNoQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQ3JEO2dCQUNBLE9BQU8sQ0FBQyxRQUFRO2FBQ2pCO1lBQ0QsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25CLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7SUFHRCxTQUFTLENBQUMsQ0FBZ0I7UUFDeEIsSUFDRSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUkseURBQXlEO1lBQ3BHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUksZ0JBQWdCO1lBQ2hGLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUksZ0JBQWdCO1lBQ2hGLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUksZ0JBQWdCO1lBQ2hGLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUksZ0JBQWdCO1lBQ2hGLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUkscUJBQXFCO1lBQ3JGLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUkscUJBQXFCO1lBQ3JGLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLElBQUkscUJBQXFCO1lBQ3JGLENBQUMsQ0FBQyxDQUFDLENB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QUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQXlCTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsYUFBYSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWV2QyxTQUFTO3NCQURSLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQW1FbkMsT0FBTztzQkFETixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF3QmpDLE1BQU07c0JBREwsWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgRGlyZWN0aXZlLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEhvc3RMaXN0ZW5lcixcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgU2ltcGxlQ2hhbmdlcyxcclxuICB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG4gIFxyXG4gIEBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbZGlnaXRPbmx5XScsXHJcbiAgfSlcclxuICBleHBvcnQgY2xhc3MgRGlnaXRPbmx5RGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICAgIHByaXZhdGUgaGFzRGVjaW1hbFBvaW50ID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIGhhc05lZ2F0aXZlU2lnbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBuYXZpZ2F0aW9uS2V5cyA9IFtcclxuICAgICAgJ0JhY2tzcGFjZScsXHJcbiAgICAgICdEZWxldGUnLFxyXG4gICAgICAnVGFiJyxcclxuICAgICAgJ0VzY2FwZScsXHJcbiAgICAgICdFbnRlcicsXHJcbiAgICAgICdIb21lJyxcclxuICAgICAgJ0VuZCcsXHJcbiAgICAgICdBcnJvd0xlZnQnLFxyXG4gICAgICAnQXJyb3dSaWdodCcsXHJcbiAgICAgICdDbGVhcicsXHJcbiAgICAgICdDb3B5JyxcclxuICAgICAgJ1Bhc3RlJyxcclxuICAgIF07XHJcbiAgXHJcbiAgICBASW5wdXQoKSBkZWNpbWFsID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBkZWNpbWFsU2VwYXJhdG9yID0gJy4nO1xyXG4gICAgQElucHV0KCkgYWxsb3dOZWdhdGl2ZXMgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIGFsbG93UGFzdGUgPSB0cnVlO1xyXG4gICAgQElucHV0KCkgbmVnYXRpdmVTaWduID0gJy0nO1xyXG4gICAgQElucHV0KCkgbWluID0gLUluZmluaXR5O1xyXG4gICAgQElucHV0KCkgbWF4ID0gSW5maW5pdHk7XHJcbiAgICBASW5wdXQoKSBwYXR0ZXJuPzogc3RyaW5nIHwgUmVnRXhwO1xyXG4gICAgcHJpdmF0ZSByZWdleDogUmVnRXhwIHwgbnVsbCA9IG51bGw7XHJcbiAgICBpbnB1dEVsZW1lbnQ6IEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgXHJcbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWw6IEVsZW1lbnRSZWYpIHtcclxuICAgICAgdGhpcy5pbnB1dEVsZW1lbnQgPSBlbC5uYXRpdmVFbGVtZW50O1xyXG4gICAgfVxyXG4gIFxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICBpZiAoY2hhbmdlc1sncGF0dGVybiddKSB7XHJcbiAgICAgICAgdGhpcy5yZWdleCA9IHRoaXMucGF0dGVybiA/IFJlZ0V4cCh0aGlzLnBhdHRlcm4pIDogbnVsbDtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICBpZiAoY2hhbmdlc1snbWluJ10pIHtcclxuICAgICAgICBjb25zdCBtYXliZU1pbiA9IE51bWJlcih0aGlzLm1pbik7XHJcbiAgICAgICAgdGhpcy5taW4gPSBpc05hTihtYXliZU1pbikgPyAtSW5maW5pdHkgOiBtYXliZU1pbjtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICBpZiAoY2hhbmdlc1snbWF4J10pIHtcclxuICAgICAgICBjb25zdCBtYXliZU1heCA9IE51bWJlcih0aGlzLm1heCk7XHJcbiAgICAgICAgdGhpcy5tYXggPSBpc05hTihtYXliZU1heCkgPyBJbmZpbml0eSA6IG1heWJlTWF4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICBASG9zdExpc3RlbmVyKCdiZWZvcmVpbnB1dCcsIFsnJGV2ZW50J10pXHJcbiAgICBvbkJlZm9yZUlucHV0KGU6IElucHV0RXZlbnQpOiBhbnkge1xyXG4gICAgICBpZiAoaXNOYU4oTnVtYmVyKGUuZGF0YSkpKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZS5kYXRhID09PSB0aGlzLmRlY2ltYWxTZXBhcmF0b3IgfHxcclxuICAgICAgICAgIChlLmRhdGEgPT09IHRoaXMubmVnYXRpdmVTaWduICYmIHRoaXMuYWxsb3dOZWdhdGl2ZXMpXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICByZXR1cm47IC8vIGdvIG9uXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcclxuICAgIG9uS2V5RG93bihlOiBLZXlib2FyZEV2ZW50KTogYW55IHtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIHRoaXMubmF2aWdhdGlvbktleXMuaW5kZXhPZihlLmtleSkgPiAtMSB8fCAvLyBBbGxvdzogbmF2aWdhdGlvbiBrZXlzOiBiYWNrc3BhY2UsIGRlbGV0ZSwgYXJyb3dzIGV0Yy5cclxuICAgICAgICAoKGUua2V5ID09PSAnYScgfHwgZS5jb2RlID09PSAnS2V5QScpICYmIGUuY3RybEtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IEN0cmwrQVxyXG4gICAgICAgICgoZS5rZXkgPT09ICdjJyB8fCBlLmNvZGUgPT09ICdLZXlDJykgJiYgZS5jdHJsS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ3RybCtDXHJcbiAgICAgICAgKChlLmtleSA9PT0gJ3YnIHx8IGUuY29kZSA9PT0gJ0tleVYnKSAmJiBlLmN0cmxLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDdHJsK1ZcclxuICAgICAgICAoKGUua2V5ID09PSAneCcgfHwgZS5jb2RlID09PSAnS2V5WCcpICYmIGUuY3RybEtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IEN0cmwrWFxyXG4gICAgICAgICgoZS5rZXkgPT09ICdhJyB8fCBlLmNvZGUgPT09ICdLZXlBJykgJiYgZS5tZXRhS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ21kK0EgKE1hYylcclxuICAgICAgICAoKGUua2V5ID09PSAnYycgfHwgZS5jb2RlID09PSAnS2V5QycpICYmIGUubWV0YUtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IENtZCtDIChNYWMpXHJcbiAgICAgICAgKChlLmtleSA9PT0gJ3YnIHx8IGUuY29kZSA9PT0gJ0tleVYnKSAmJiBlLm1ldGFLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDbWQrViAoTWFjKVxyXG4gICAgICAgICgoZS5rZXkgPT09ICd4JyB8fCBlLmNvZGUgPT09ICdLZXlYJykgJiYgZS5tZXRhS2V5ID09PSB0cnVlKSAvLyBBbGxvdzogQ21kK1ggKE1hYylcclxuICAgICAgKSB7XHJcbiAgICAgICAgLy8gbGV0IGl0IGhhcHBlbiwgZG9uJ3QgZG8gYW55dGhpbmdcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgbGV0IG5ld1ZhbHVlID0gJyc7XHJcbiAgXHJcbiAgICAgIGlmICh0aGlzLmRlY2ltYWwgJiYgZS5rZXkgPT09IHRoaXMuZGVjaW1hbFNlcGFyYXRvcikge1xyXG4gICAgICAgIG5ld1ZhbHVlID0gdGhpcy5mb3JlY2FzdFZhbHVlKGUua2V5KTtcclxuICAgICAgICBpZiAobmV3VmFsdWUuc3BsaXQodGhpcy5kZWNpbWFsU2VwYXJhdG9yKS5sZW5ndGggPiAyKSB7XHJcbiAgICAgICAgICAvLyBoYXMgdHdvIG9yIG1vcmUgZGVjaW1hbCBwb2ludHNcclxuICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5oYXNEZWNpbWFsUG9pbnQgPSBuZXdWYWx1ZS5pbmRleE9mKHRoaXMuZGVjaW1hbFNlcGFyYXRvcikgPiAtMTtcclxuICAgICAgICAgIHJldHVybjsgLy8gQWxsb3c6IG9ubHkgb25lIGRlY2ltYWwgcG9pbnRcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICBcclxuICAgICAgaWYgKGUua2V5ID09PSB0aGlzLm5lZ2F0aXZlU2lnbiAmJiB0aGlzLmFsbG93TmVnYXRpdmVzKSB7XHJcbiAgICAgICAgbmV3VmFsdWUgPSB0aGlzLmZvcmVjYXN0VmFsdWUoZS5rZXkpO1xyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIG5ld1ZhbHVlLmNoYXJBdCgwKSAhPT0gdGhpcy5uZWdhdGl2ZVNpZ24gfHxcclxuICAgICAgICAgIG5ld1ZhbHVlLnNwbGl0KHRoaXMubmVnYXRpdmVTaWduKS5sZW5ndGggPiAyXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuaGFzTmVnYXRpdmVTaWduID0gbmV3VmFsdWUuc3BsaXQodGhpcy5uZWdhdGl2ZVNpZ24pLmxlbmd0aCA+IC0xO1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gIFxyXG4gICAgICAvLyBFbnN1cmUgdGhhdCBpdCBpcyBhIG51bWJlciBhbmQgc3RvcCB0aGUga2V5cHJlc3NcclxuICAgICAgaWYgKGUua2V5ID09PSAnICcgfHwgaXNOYU4oTnVtYmVyKGUua2V5KSkpIHtcclxuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIG5ld1ZhbHVlID0gbmV3VmFsdWUgfHwgdGhpcy5mb3JlY2FzdFZhbHVlKGUua2V5KTtcclxuICAgICAgLy8gY2hlY2sgdGhlIGlucHV0IHBhdHRlcm4gUmVnRXhwXHJcbiAgICAgIGlmICh0aGlzLnJlZ2V4KSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnJlZ2V4LnRlc3QobmV3VmFsdWUpKSB7XHJcbiAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIGNvbnN0IG5ld051bWJlciA9IE51bWJlcihuZXdWYWx1ZSk7XHJcbiAgICAgIGlmIChuZXdOdW1iZXIgPiB0aGlzLm1heCB8fCBuZXdOdW1iZXIgPCB0aGlzLm1pbikge1xyXG4gICAgICAgIGUucHJldmVudERlZmF1bHQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgQEhvc3RMaXN0ZW5lcigncGFzdGUnLCBbJyRldmVudCddKVxyXG4gICAgb25QYXN0ZShldmVudDogYW55KTogdm9pZCB7XHJcbiAgICAgIGlmICh0aGlzLmFsbG93UGFzdGUgPT09IHRydWUpIHtcclxuICAgICAgICBsZXQgcGFzdGVkSW5wdXQ6IHN0cmluZyA9ICcnO1xyXG4gICAgICAgIGlmICgod2luZG93IGFzIHsgW2tleTogc3RyaW5nXTogYW55IH0pWydjbGlwYm9hcmREYXRhJ10pIHtcclxuICAgICAgICAgIC8vIEJyb3dzZXIgaXMgSUVcclxuICAgICAgICAgIHBhc3RlZElucHV0ID0gKHdpbmRvdyBhcyB7IFtrZXk6IHN0cmluZ106IGFueSB9KVtcclxuICAgICAgICAgICAgJ2NsaXBib2FyZERhdGEnXHJcbiAgICAgICAgICBdLmdldERhdGEoJ3RleHQnKTtcclxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmNsaXBib2FyZERhdGEgJiYgZXZlbnQuY2xpcGJvYXJkRGF0YS5nZXREYXRhKSB7XHJcbiAgICAgICAgICAvLyBPdGhlciBicm93c2Vyc1xyXG4gICAgICAgICAgcGFzdGVkSW5wdXQgPSBldmVudC5jbGlwYm9hcmREYXRhLmdldERhdGEoJ3RleHQvcGxhaW4nKTtcclxuICAgICAgICB9XHJcbiAgXHJcbiAgICAgICAgdGhpcy5wYXN0ZURhdGEocGFzdGVkSW5wdXQpO1xyXG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgLy8gdGhpcyBwcmV2ZW50cyB0aGUgcGFzdGVcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICBASG9zdExpc3RlbmVyKCdkcm9wJywgWyckZXZlbnQnXSlcclxuICAgIG9uRHJvcChldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XHJcbiAgICAgIGNvbnN0IHRleHREYXRhID0gZXZlbnQuZGF0YVRyYW5zZmVyPy5nZXREYXRhKCd0ZXh0JykgPz8gJyc7XHJcbiAgICAgIHRoaXMuaW5wdXRFbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgIHRoaXMucGFzdGVEYXRhKHRleHREYXRhKTtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICBcclxuICAgIHByaXZhdGUgcGFzdGVEYXRhKHBhc3RlZENvbnRlbnQ6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICBjb25zdCBzYW5pdGl6ZWRDb250ZW50ID0gdGhpcy5zYW5pdGl6ZUlucHV0KHBhc3RlZENvbnRlbnQpO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgc2FuaXRpemVkQ29udGVudC5pbmNsdWRlcyh0aGlzLm5lZ2F0aXZlU2lnbikgJiZcclxuICAgICAgICB0aGlzLmhhc05lZ2F0aXZlU2lnbiAmJlxyXG4gICAgICAgICF0aGlzLmdldFNlbGVjdGlvbigpLmluY2x1ZGVzKHRoaXMubmVnYXRpdmVTaWduKVxyXG4gICAgICApIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgcGFzdGVkID0gZG9jdW1lbnQuZXhlY0NvbW1hbmQoJ2luc2VydFRleHQnLCBmYWxzZSwgc2FuaXRpemVkQ29udGVudCk7XHJcbiAgICAgIGlmICghcGFzdGVkKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaW5wdXRFbGVtZW50LnNldFJhbmdlVGV4dCkge1xyXG4gICAgICAgICAgY29uc3QgeyBzZWxlY3Rpb25TdGFydDogc3RhcnQsIHNlbGVjdGlvbkVuZDogZW5kIH0gPSB0aGlzLmlucHV0RWxlbWVudDtcclxuICAgICAgICAgIHRoaXMuaW5wdXRFbGVtZW50LnNldFJhbmdlVGV4dChcclxuICAgICAgICAgICAgc2FuaXRpemVkQ29udGVudCxcclxuICAgICAgICAgICAgc3RhcnQgPz8gMCxcclxuICAgICAgICAgICAgZW5kID8/IDAsXHJcbiAgICAgICAgICAgICdlbmQnXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgICAgLy8gQW5ndWxhcidzIFJlYWN0aXZlIEZvcm0gcmVsaWVzIG9uIFwiaW5wdXRcIiBldmVudCwgYnV0IG9uIEZpcmVmb3gsIHRoZSBzZXRSYW5nZVRleHQgbWV0aG9kIGRvZXNuJ3QgdHJpZ2dlciBpdFxyXG4gICAgICAgICAgLy8gc28gd2UgaGF2ZSB0byB0cmlnZ2VyIGl0IG91cnNlbGYuXHJcbiAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIHR5cGVvZiAod2luZG93IGFzIHsgW2tleTogc3RyaW5nXTogYW55IH0pWydJbnN0YWxsVHJpZ2dlciddICE9PVxyXG4gICAgICAgICAgICAndW5kZWZpbmVkJ1xyXG4gICAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaW5wdXRFbGVtZW50LmRpc3BhdGNoRXZlbnQoXHJcbiAgICAgICAgICAgICAgbmV3IEV2ZW50KCdpbnB1dCcsIHsgY2FuY2VsYWJsZTogdHJ1ZSB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBCcm93c2VyIGRvZXMgbm90IHN1cHBvcnQgc2V0UmFuZ2VUZXh0LCBlLmcuIElFXHJcbiAgICAgICAgICB0aGlzLmluc2VydEF0Q3Vyc29yKHRoaXMuaW5wdXRFbGVtZW50LCBzYW5pdGl6ZWRDb250ZW50KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuZGVjaW1hbCkge1xyXG4gICAgICAgIHRoaXMuaGFzRGVjaW1hbFBvaW50ID1cclxuICAgICAgICAgIHRoaXMuaW5wdXRFbGVtZW50LnZhbHVlLmluZGV4T2YodGhpcy5kZWNpbWFsU2VwYXJhdG9yKSA+IC0xO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaGFzTmVnYXRpdmVTaWduID1cclxuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC52YWx1ZS5pbmRleE9mKHRoaXMubmVnYXRpdmVTaWduKSA+IC0xO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgLy8gVGhlIGZvbGxvd2luZyAyIG1ldGhvZHMgd2VyZSBhZGRlZCBmcm9tIHRoZSBiZWxvdyBhcnRpY2xlIGZvciBicm93c2VycyB0aGF0IGRvIG5vdCBzdXBwb3J0IHNldFJhbmdlVGV4dFxyXG4gICAgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMTEwNzY5NzUvaG93LXRvLWluc2VydC10ZXh0LWludG8tdGhlLXRleHRhcmVhLWF0LXRoZS1jdXJyZW50LWN1cnNvci1wb3NpdGlvblxyXG4gICAgcHJpdmF0ZSBpbnNlcnRBdEN1cnNvcihteUZpZWxkOiBIVE1MSW5wdXRFbGVtZW50LCBteVZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgY29uc3Qgc3RhcnRQb3MgPSBteUZpZWxkLnNlbGVjdGlvblN0YXJ0ID8/IDA7XHJcbiAgICAgIGNvbnN0IGVuZFBvcyA9IG15RmllbGQuc2VsZWN0aW9uRW5kID8/IDA7XHJcbiAgXHJcbiAgICAgIG15RmllbGQudmFsdWUgPVxyXG4gICAgICAgIG15RmllbGQudmFsdWUuc3Vic3RyaW5nKDAsIHN0YXJ0UG9zKSArXHJcbiAgICAgICAgbXlWYWx1ZSArXHJcbiAgICAgICAgbXlGaWVsZC52YWx1ZS5zdWJzdHJpbmcoZW5kUG9zLCBteUZpZWxkLnZhbHVlLmxlbmd0aCk7XHJcbiAgXHJcbiAgICAgIGNvbnN0IHBvcyA9IHN0YXJ0UG9zICsgbXlWYWx1ZS5sZW5ndGg7XHJcbiAgICAgIG15RmllbGQuZm9jdXMoKTtcclxuICAgICAgbXlGaWVsZC5zZXRTZWxlY3Rpb25SYW5nZShwb3MsIHBvcyk7XHJcbiAgXHJcbiAgICAgIHRoaXMudHJpZ2dlckV2ZW50KG15RmllbGQsICdpbnB1dCcpO1xyXG4gICAgfVxyXG4gIFxyXG4gICAgcHJpdmF0ZSB0cmlnZ2VyRXZlbnQoZWw6IEhUTUxJbnB1dEVsZW1lbnQsIHR5cGU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICBpZiAoJ2NyZWF0ZUV2ZW50JyBpbiBkb2N1bWVudCkge1xyXG4gICAgICAgIC8vIG1vZGVybiBicm93c2VycywgSUU5K1xyXG4gICAgICAgIGNvbnN0IGUgPSBkb2N1bWVudC5jcmVhdGVFdmVudCgnSFRNTEV2ZW50cycpO1xyXG4gICAgICAgIGUuaW5pdEV2ZW50KHR5cGUsIGZhbHNlLCB0cnVlKTtcclxuICAgICAgICBlbC5kaXNwYXRjaEV2ZW50KGUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBlbmQgc3RhY2sgb3ZlcmZsb3cgY29kZVxyXG4gIFxyXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZUlucHV0KGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICBsZXQgcmVzdWx0ID0gJyc7XHJcbiAgICAgIGxldCByZWdleDtcclxuICAgICAgaWYgKHRoaXMuZGVjaW1hbCAmJiB0aGlzLmlzVmFsaWREZWNpbWFsKGlucHV0KSkge1xyXG4gICAgICAgIHJlZ2V4ID0gbmV3IFJlZ0V4cChcclxuICAgICAgICAgIGAke3RoaXMuZ2V0TmVnYXRpdmVTaWduUmVnRXhwKCl9W14wLTkke3RoaXMuZGVjaW1hbFNlcGFyYXRvcn1dYCxcclxuICAgICAgICAgICdnJ1xyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmVnZXggPSBuZXcgUmVnRXhwKGAke3RoaXMuZ2V0TmVnYXRpdmVTaWduUmVnRXhwKCl9W14wLTldYCwgJ2cnKTtcclxuICAgICAgfVxyXG4gICAgICByZXN1bHQgPSBpbnB1dC5yZXBsYWNlKHJlZ2V4LCAnJyk7XHJcbiAgXHJcbiAgICAgIGNvbnN0IG1heExlbmd0aCA9IHRoaXMuaW5wdXRFbGVtZW50Lm1heExlbmd0aDtcclxuICAgICAgaWYgKG1heExlbmd0aCA+IDApIHtcclxuICAgICAgICAvLyB0aGUgaW5wdXQgZWxlbWVudCBoYXMgbWF4TGVuZ3RoIGxpbWl0XHJcbiAgICAgICAgY29uc3QgYWxsb3dlZExlbmd0aCA9XHJcbiAgICAgICAgICBtYXhMZW5ndGggLVxyXG4gICAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQudmFsdWUubGVuZ3RoICtcclxuICAgICAgICAgIChyZXN1bHQuaW5jbHVkZXMoYCR7dGhpcy5uZWdhdGl2ZVNpZ259YCkgPyAxIDogMCk7XHJcbiAgICAgICAgcmVzdWx0ID0gYWxsb3dlZExlbmd0aCA+IDAgPyByZXN1bHQuc3Vic3RyaW5nKDAsIGFsbG93ZWRMZW5ndGgpIDogJyc7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH1cclxuICBcclxuICAgIHByaXZhdGUgZ2V0TmVnYXRpdmVTaWduUmVnRXhwKCk6IHN0cmluZyB7XHJcbiAgICAgIHJldHVybiB0aGlzLmFsbG93TmVnYXRpdmVzICYmXHJcbiAgICAgICAgKCF0aGlzLmhhc05lZ2F0aXZlU2lnbiB8fCB0aGlzLmdldFNlbGVjdGlvbigpLmluY2x1ZGVzKHRoaXMubmVnYXRpdmVTaWduKSlcclxuICAgICAgICA/IGAoPyFeJHt0aGlzLm5lZ2F0aXZlU2lnbn0pYFxyXG4gICAgICAgIDogJyc7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBwcml2YXRlIGlzVmFsaWREZWNpbWFsKHN0cmluZzogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgIGlmICghdGhpcy5oYXNEZWNpbWFsUG9pbnQpIHtcclxuICAgICAgICByZXR1cm4gc3RyaW5nLnNwbGl0KHRoaXMuZGVjaW1hbFNlcGFyYXRvcikubGVuZ3RoIDw9IDI7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgLy8gdGhlIGlucHV0IGVsZW1lbnQgYWxyZWFkeSBoYXMgYSBkZWNpbWFsIHNlcGFyYXRvclxyXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkVGV4dCA9IHRoaXMuZ2V0U2VsZWN0aW9uKCk7XHJcbiAgICAgICAgaWYgKHNlbGVjdGVkVGV4dCAmJiBzZWxlY3RlZFRleHQuaW5kZXhPZih0aGlzLmRlY2ltYWxTZXBhcmF0b3IpID4gLTEpIHtcclxuICAgICAgICAgIHJldHVybiBzdHJpbmcuc3BsaXQodGhpcy5kZWNpbWFsU2VwYXJhdG9yKS5sZW5ndGggPD0gMjtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmV0dXJuIHN0cmluZy5pbmRleE9mKHRoaXMuZGVjaW1hbFNlcGFyYXRvcikgPCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgcHJpdmF0ZSBnZXRTZWxlY3Rpb24oKTogc3RyaW5nIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaW5wdXRFbGVtZW50LnZhbHVlLnN1YnN0cmluZyhcclxuICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5zZWxlY3Rpb25TdGFydCA/PyAwLFxyXG4gICAgICAgIHRoaXMuaW5wdXRFbGVtZW50LnNlbGVjdGlvbkVuZCA/PyAwXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgXHJcbiAgICBwcml2YXRlIGZvcmVjYXN0VmFsdWUoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICBjb25zdCBzZWxlY3Rpb25TdGFydCA9IHRoaXMuaW5wdXRFbGVtZW50LnNlbGVjdGlvblN0YXJ0ID8/IDA7XHJcbiAgICAgIGNvbnN0IHNlbGVjdGlvbkVuZCA9IHRoaXMuaW5wdXRFbGVtZW50LnNlbGVjdGlvbkVuZCA/PyAwO1xyXG4gICAgICBjb25zdCBvbGRWYWx1ZSA9IHRoaXMuaW5wdXRFbGVtZW50LnZhbHVlO1xyXG4gICAgICByZXR1cm4gKFxyXG4gICAgICAgIG9sZFZhbHVlLnN1YnN0cmluZygwLCBzZWxlY3Rpb25TdGFydCkgK1xyXG4gICAgICAgIGtleSArXHJcbiAgICAgICAgb2xkVmFsdWUuc3Vic3RyaW5nKHNlbGVjdGlvbkVuZClcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9Il19
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Directive, ElementRef, HostListener } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class showEllipsisTextOnHoverDirective {
|
|
4
|
+
constructor(elementRef) {
|
|
5
|
+
this.elementRef = elementRef;
|
|
6
|
+
}
|
|
7
|
+
onMouseEnter() {
|
|
8
|
+
const element = this.elementRef.nativeElement;
|
|
9
|
+
if (element.offsetWidth < element.scrollWidth) {
|
|
10
|
+
element.title = element.textContent;
|
|
11
|
+
}
|
|
12
|
+
else if (element.title)
|
|
13
|
+
element.removeAttribute('title');
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
showEllipsisTextOnHoverDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: showEllipsisTextOnHoverDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
17
|
+
showEllipsisTextOnHoverDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: showEllipsisTextOnHoverDirective, selector: "[showEllipsisTextOnHover]", host: { listeners: { "mouseenter": "onMouseEnter()" } }, ngImport: i0 });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: showEllipsisTextOnHoverDirective, decorators: [{
|
|
19
|
+
type: Directive,
|
|
20
|
+
args: [{
|
|
21
|
+
selector: '[showEllipsisTextOnHover]'
|
|
22
|
+
}]
|
|
23
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { onMouseEnter: [{
|
|
24
|
+
type: HostListener,
|
|
25
|
+
args: ['mouseenter']
|
|
26
|
+
}] } });
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hvdy1lbGxpcHNpcy10ZXh0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29yZS9zcmMvbGliL2FubmEtY29yZS1zaGFyZWQtbGliL2RpcmVjdGl2ZXMvc2hvdy1lbGxpcHNpcy10ZXh0L3Nob3ctZWxsaXBzaXMtdGV4dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1wRSxNQUFNLE9BQU8sZ0NBQWdDO0lBRTNDLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBRyxDQUFDO0lBRzlDLFlBQVk7UUFDUixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQztRQUM5QyxJQUFJLE9BQU8sQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsRUFBRTtZQUM3QyxPQUFPLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7U0FDckM7YUFDSSxJQUFJLE9BQU8sQ0FBQyxLQUFLO1lBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3RCxDQUFDOzs2SEFYVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQzsyRkFBaEMsZ0NBQWdDO2tCQUo1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7aUJBQ3RDO2lHQU9DLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3Nob3dFbGxpcHNpc1RleHRPbkhvdmVyXSdcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBzaG93RWxsaXBzaXNUZXh0T25Ib3ZlckRpcmVjdGl2ZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXHJcbiAgb25Nb3VzZUVudGVyKCk6IHZvaWQge1xyXG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIGlmIChlbGVtZW50Lm9mZnNldFdpZHRoIDwgZWxlbWVudC5zY3JvbGxXaWR0aCkge1xyXG4gICAgICAgIGVsZW1lbnQudGl0bGUgPSBlbGVtZW50LnRleHRDb250ZW50O1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2UgaWYgKGVsZW1lbnQudGl0bGUpIGVsZW1lbnQucmVtb3ZlQXR0cmlidXRlKCd0aXRsZScpOyBcclxuICB9XHJcbn0iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1nZW5lcmljLWRhdGEtdHlwZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29yZS9zcmMvbGliL2FubmEtY29yZS1zaGFyZWQtbGliL21vZGVscy9hbm5hLWdlbmVyaWMtZGF0YS10eXBlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFdlZWtPYmplY3Qge1xyXG4gIHN0YXJ0RGF0ZTogc3RyaW5nO1xyXG4gIGVuZERhdGU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZWxsZXJHcm91cEhpZXJhcmNoeSB7XHJcbiAgaW52ZW50b3J5Q29kZTogc3RyaW5nO1xyXG4gIHByb2dyYW06IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBSYXRpbmdTZWxsZXJHcm91cEhpZXJhcmNoeXtcclxuICBJbnZlbnRvcnlDb2RlOiBzdHJpbmc7XHJcbiAgUHJvZ3JhbTogc3RyaW5nO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgR3RDb2x1bW5JY29uRW1pdHRlZERhdGF7XHJcbiAgZGF0YTogYW55O1xyXG4gIGtleTogc3RyaW5nO1xyXG59XHJcblxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1nbG9iYWwtZHJvcGRvd24tY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvbW9kZWxzL2FubmEtZ2xvYmFsLWRyb3Bkb3duLWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJUmFkaW9CdXR0b24ge1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgaXNEaXNhYmxlZDogYm9vbGVhbjtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUFuZ3VsYXIyTXVsdGlTZWxlY3RTZXR0aW5ncyB7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBzZWxlY3RBbGxUZXh0OiBzdHJpbmc7XHJcbiAgICB1blNlbGVjdEFsbFRleHQ6IHN0cmluZztcclxuICAgIGJhZGdlU2hvd0xpbWl0OiBudW1iZXI7XHJcbiAgICBzaW5nbGVTZWxlY3Rpb246IGJvb2xlYW47XHJcbiAgICBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgICBlbmFibGVTZWFyY2hGaWx0ZXI6IGJvb2xlYW47XHJcbiAgICBlbmFibGVDaGVja0FsbDogYm9vbGVhbjtcclxuICAgIGF1dG9Qb3NpdGlvbjogYm9vbGVhbjtcclxuICAgIHBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgICBsYXp5TG9hZGluZzogYm9vbGVhbjtcclxuICAgIGRpc2FibGVkOiBib29sZWFuO1xyXG4gICAgc2hvd0NoZWNrYm94OiBib29sZWFuO1xyXG4gICAgZW5hYmxlRmlsdGVyU2VsZWN0QWxsOiBib29sZWFuO1xyXG4gICAgbWF4SGVpZ2h0OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5neEFzaWRlU2V0dGluZ3Mge1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGNhbmNlbEJ1dHRvblRpdGxlOiBzdHJpbmc7XHJcbiAgICBzdWJtaXRCdXR0b25UaXRsZTogc3RyaW5nO1xyXG4gICAgY2xvc2VPbkVzY2FwZTogYm9vbGVhbjtcclxuICAgIHNob3dPdmVybGF5OiBib29sZWFuO1xyXG4gICAgc2hvd0RlZmF1bHRGb290ZXI6IGJvb2xlYW47XHJcbiAgICBzaG93RGVmYXVsdEhlYWRlcjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJTmdiRGF0ZVBpY2tlclNldHRpbmdzIHtcclxuICAgIGF1dG9DbG9zZTogYm9vbGVhbjtcclxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgICBkaXNwbGF5TW9udGhzOiBudW1iZXI7XHJcbiAgICBmaXJzdERheU9mV2VlazogbnVtYmVyO1xyXG4gICAgc2hvd1dlZWtOdW1iZXJzOiBib29sZWFuO1xyXG4gICAgcmVhZG9ubHk6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5nU2VsZWN0U2V0dGluZ3Mge1xyXG4gICAgYWxsb3dDbGVhcjogYm9vbGVhbjtcclxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5neEluZmluaXRlU2Nyb2xsU2V0dGluZ3Mge1xyXG4gICAgaW5maW5pdGVTY3JvbGxEaXN0YW5jZTogbnVtYmVyO1xyXG4gICAgaW5maW5pdGVTY3JvbGxVcERpc3RhbmNlOiBudW1iZXI7XHJcbiAgICBpbmZpbml0ZVNjcm9sbFRocm90dGxlOiBudW1iZXI7XHJcbiAgICBzY3JvbGxXaW5kb3c6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5neFNrZWxldG9uTG9hZGVyU2V0dGluZ3Mge1xyXG4gICAgbnVtYmVyT2ZTa2VsZXRvblJvd3M6IG51bWJlcltdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElSYWRpb0J1dHRvbkNvbXBvbmVudENvbmZpZyB7XHJcbiAgICBoZWFkaW5nPzogc3RyaW5nO1xyXG4gICAgcmFkaW9CdXR0b25zOiBJUmFkaW9CdXR0b25bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ29uZmlybWF0aW9uUG9wdXBDb25maWcge1xyXG4gICAgc2hvd0NhbmNlbEJ1dHRvbjogYm9vbGVhbjtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBzaG93Q29uZmlybUJ1dHRvbjogYm9vbGVhbjtcclxuICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmc7XHJcbiAgICBjb25maXJtQnV0dG9uTGFiZWw6IHN0cmluZztcclxuICAgIHNob3dDbG9zZUljb246IGJvb2xlYW47XHJcbiAgICB3aW5kb3dDbGFzczogc3RyaW5nO1xyXG4gICAgYmFja2Ryb3A6IFwic3RhdGljXCIgfCBib29sZWFuO1xyXG4gICAgc2l6ZTogXCJzbVwiIHwgXCJsZ1wiO1xyXG4gICAga2V5Ym9hcmQ6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVdlZWtDYWxlbmRhciB7XHJcbiAgICBmaXJzdERheU9mV2Vlaz86IG51bWJlcjtcclxuICAgIG51bWJlck9mTW9udGhzVG9FbmFibGVJblBhc3Q6IG51bWJlcjtcclxuICAgIHNlbGVjdE11bHRpcGxlV2Vla3M6IGJvb2xlYW47XHJcbiAgICBzaG93V2Vla051bWJlcnM/OiBib29sZWFuO1xyXG4gICAgZGF0ZUZvcm1hdFRvRGlzcGxheT86IHN0cmluZztcclxuICAgIG1heFdlZWtzVG9TaG93V2l0aFJlbWFpbmluZ0NvdW50PzogbnVtYmVyO1xyXG4gICAgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XHJcbiAgICBlbWl0TXVsdGlwbGVXZWVrT2JqZWN0cz86IGJvb2xlYW47XHJcbiAgICBkYXRlRm9ybWF0Rm9yUmVxdWVzdD86IHN0cmluZztcclxuICAgIG1heFdlZWtzVG9TZWxlY3Q/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1nbG9iYWwtZHJvcGRvd24tY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvbW9kZWxzL2FubmEtZ2xvYmFsLWRyb3Bkb3duLWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJUmFkaW9CdXR0b24ge1xyXG4gIHZhbHVlOiBzdHJpbmc7XHJcbiAgaXNEaXNhYmxlZDogYm9vbGVhbjtcclxuICBsYWJlbDogc3RyaW5nO1xyXG4gIGNsYXNzOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUFuZ3VsYXIyTXVsdGlTZWxlY3RTZXR0aW5ncyB7XHJcbiAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICBzZWxlY3RBbGxUZXh0OiBzdHJpbmc7XHJcbiAgICB1blNlbGVjdEFsbFRleHQ6IHN0cmluZztcclxuICAgIGJhZGdlU2hvd0xpbWl0OiBudW1iZXI7XHJcbiAgICBzaW5nbGVTZWxlY3Rpb246IGJvb2xlYW47XHJcbiAgICBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgICBlbmFibGVTZWFyY2hGaWx0ZXI6IGJvb2xlYW47XHJcbiAgICBlbmFibGVDaGVja0FsbDogYm9vbGVhbjtcclxuICAgIGF1dG9Qb3NpdGlvbjogYm9vbGVhbjtcclxuICAgIHBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgICBsYXp5TG9hZGluZzogYm9vbGVhbjtcclxuICAgIGRpc2FibGVkOiBib29sZWFuO1xyXG4gICAgc2hvd0NoZWNrYm94OiBib29sZWFuO1xyXG4gICAgZW5hYmxlRmlsdGVyU2VsZWN0QWxsOiBib29sZWFuO1xyXG4gICAgbWF4SGVpZ2h0OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5neEFzaWRlU2V0dGluZ3Mge1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGNhbmNlbEJ1dHRvblRpdGxlOiBzdHJpbmc7XHJcbiAgICBzdWJtaXRCdXR0b25UaXRsZTogc3RyaW5nO1xyXG4gICAgY2xvc2VPbkVzY2FwZTogYm9vbGVhbjtcclxuICAgIHNob3dPdmVybGF5OiBib29sZWFuO1xyXG4gICAgc2hvd0RlZmF1bHRGb290ZXI6IGJvb2xlYW47XHJcbiAgICBzaG93RGVmYXVsdEhlYWRlcjogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJTmdiRGF0ZVBpY2tlclNldHRpbmdzIHtcclxuICAgIGF1dG9DbG9zZTogYm9vbGVhbjtcclxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgICBkaXNwbGF5TW9udGhzOiBudW1iZXI7XHJcbiAgICBmaXJzdERheU9mV2VlazogbnVtYmVyO1xyXG4gICAgc2hvd1dlZWtOdW1iZXJzOiBib29sZWFuO1xyXG4gICAgcmVhZG9ubHk6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5nU2VsZWN0U2V0dGluZ3Mge1xyXG4gICAgYWxsb3dDbGVhcjogYm9vbGVhbjtcclxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5neEluZmluaXRlU2Nyb2xsU2V0dGluZ3Mge1xyXG4gICAgaW5maW5pdGVTY3JvbGxEaXN0YW5jZTogbnVtYmVyO1xyXG4gICAgaW5maW5pdGVTY3JvbGxVcERpc3RhbmNlOiBudW1iZXI7XHJcbiAgICBpbmZpbml0ZVNjcm9sbFRocm90dGxlOiBudW1iZXI7XHJcbiAgICBzY3JvbGxXaW5kb3c6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSU5neFNrZWxldG9uTG9hZGVyU2V0dGluZ3Mge1xyXG4gICAgbnVtYmVyT2ZTa2VsZXRvblJvd3M6IG51bWJlcltdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElSYWRpb0J1dHRvbkNvbXBvbmVudENvbmZpZyB7XHJcbiAgICBoZWFkaW5nPzogc3RyaW5nO1xyXG4gICAgcmFkaW9CdXR0b25zOiBJUmFkaW9CdXR0b25bXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ29uZmlybWF0aW9uUG9wdXBDb25maWcge1xyXG4gICAgc2hvd0NhbmNlbEJ1dHRvbjogYm9vbGVhbjtcclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcbiAgICBzaG93Q29uZmlybUJ1dHRvbjogYm9vbGVhbjtcclxuICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiBzdHJpbmc7XHJcbiAgICBjb25maXJtQnV0dG9uTGFiZWw6IHN0cmluZztcclxuICAgIHNob3dDbG9zZUljb246IGJvb2xlYW47XHJcbiAgICB3aW5kb3dDbGFzczogc3RyaW5nO1xyXG4gICAgYmFja2Ryb3A6IFwic3RhdGljXCIgfCBib29sZWFuO1xyXG4gICAgc2l6ZTogXCJzbVwiIHwgXCJsZ1wiO1xyXG4gICAga2V5Ym9hcmQ6IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVdlZWtDYWxlbmRhciB7XHJcbiAgICBmaXJzdERheU9mV2Vlaz86IG51bWJlcjtcclxuICAgIG51bWJlck9mTW9udGhzVG9FbmFibGVJblBhc3Q6IG51bWJlcjtcclxuICAgIHNlbGVjdE11bHRpcGxlV2Vla3M6IGJvb2xlYW47XHJcbiAgICBzaG93V2Vla051bWJlcnM/OiBib29sZWFuO1xyXG4gICAgZGF0ZUZvcm1hdFRvRGlzcGxheT86IHN0cmluZztcclxuICAgIG1heFdlZWtzVG9TaG93V2l0aFJlbWFpbmluZ0NvdW50PzogbnVtYmVyO1xyXG4gICAgY3VzdG9tQ2xhc3M/OiBzdHJpbmc7XHJcbiAgICBlbWl0TXVsdGlwbGVXZWVrT2JqZWN0cz86IGJvb2xlYW47XHJcbiAgICBkYXRlRm9ybWF0Rm9yUmVxdWVzdD86IHN0cmluZztcclxuICAgIG1heFdlZWtzVG9TZWxlY3Q/OiBudW1iZXI7XHJcbiAgICBzaG93QXNEcm9wZG93bjogYm9vbGVhbjtcclxuICAgIHNlbGVjdEN1cnJlbnRXZWVrOiBib29sZWFuO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ3VzdG9tU2luZ2xlU2VsZWN0e1xyXG4gICAgc2hvd1NlYXJjaEJhcjogYm9vbGVhbjtcclxuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgICBjbGFzc2VzOiBzdHJpbmc7XHJcbiAgICBwb3NpdGlvbjogUG9zaXRpb247XHJcbiAgICBtYXhIZWlnaHRPZkxpc3Q6IG51bWJlcjsgLy9weCB2YWx1ZVxyXG4gICAgbWluSGVpZ2h0T2ZMaXN0PzogbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElDdXN0b21NdWx0aVNlbGVjdCBleHRlbmRzIElDdXN0b21TaW5nbGVTZWxlY3R7XHJcbiAgICBzaG93RXJyb3JXaGVuTm9PcHRpb25TZWxlY3RlZDogYm9vbGVhbjtcclxufVxyXG5cclxudHlwZSBQb3NpdGlvbiA9IFwiVE9QXCJ8IFwiQk9UVE9NXCI7Il19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export var UserActivationStatus;
|
|
2
|
+
(function (UserActivationStatus) {
|
|
3
|
+
UserActivationStatus["activationEmailSent"] = "ActivationEmailSent";
|
|
4
|
+
UserActivationStatus["activationEmailReSent"] = "ActivationEmailResent";
|
|
5
|
+
UserActivationStatus["ResendActivationEmail"] = "ResendActivationEmail";
|
|
6
|
+
UserActivationStatus["lastSignedIn"] = "LastSignedIn";
|
|
7
|
+
})(UserActivationStatus || (UserActivationStatus = {}));
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1tYW5hZ2UtdXNlcnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9tb2RlbHMvYW5uYS1tYW5hZ2UtdXNlcnMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksb0JBS1g7QUFMRCxXQUFZLG9CQUFvQjtJQUM5QixtRUFBMkMsQ0FBQTtJQUMzQyx1RUFBK0MsQ0FBQTtJQUMvQyx1RUFBK0MsQ0FBQTtJQUMvQyxxREFBNkIsQ0FBQTtBQUMvQixDQUFDLEVBTFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUsvQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFVzZXJBY3RpdmF0aW9uU3RhdHVzIHtcclxuICBhY3RpdmF0aW9uRW1haWxTZW50ID0gJ0FjdGl2YXRpb25FbWFpbFNlbnQnICxcclxuICBhY3RpdmF0aW9uRW1haWxSZVNlbnQgPSAnQWN0aXZhdGlvbkVtYWlsUmVzZW50JyAsXHJcbiAgUmVzZW5kQWN0aXZhdGlvbkVtYWlsID0gJ1Jlc2VuZEFjdGl2YXRpb25FbWFpbCcgLFxyXG4gIGxhc3RTaWduZWRJbiA9ICdMYXN0U2lnbmVkSW4nLFxyXG59Il19
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
export class ClickableItem {
|
|
2
|
+
constructor(typeOfActionLinkForGt, name, className, showTooltip, tooltipData) {
|
|
3
|
+
this.id = typeOfActionLinkForGt;
|
|
4
|
+
this.name = name;
|
|
5
|
+
this.class = className;
|
|
6
|
+
this.showTooltip = showTooltip;
|
|
7
|
+
this.tooltipData = tooltipData;
|
|
8
|
+
this.enableTooltipForAdditionalText = false;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1ub24tZWRpdGFibGUtZ3QtbW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvbW9kZWxzL2FubmEtbm9uLWVkaXRhYmxlLWd0LW1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUF3RkEsTUFBTSxPQUFPLGFBQWE7SUFTeEIsWUFBWSxxQkFBMkIsRUFBRSxJQUFZLEVBQUUsU0FBaUIsRUFBRSxXQUFvQixFQUFFLFdBQXlDO1FBQ3ZJLElBQUksQ0FBQyxFQUFFLEdBQUcscUJBQXFCLENBQUM7UUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7UUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLDhCQUE4QixHQUFHLEtBQUssQ0FBQztJQUM5QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUb29sdGlwUG9zaXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcFwiO1xyXG5pbXBvcnQgeyBJV2Vla0NhbGVuZGFyIH0gZnJvbSBcIi4vYW5uYS1nbG9iYWwtZHJvcGRvd24tY29uZmlnLm1vZGVsXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElHdFRhYmxlSGVhZGVyIHtcclxuICAgIGhlYWRlckluZm86IElIZWFkZXJJbmZvW107XHJcbiAgICB2aXNpYmxlOiBib29sZWFuO1xyXG4gICAgd2lkdGg6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJSGVhZGVySW5mbyB7XHJcbiAgICBuYW1lOiBzdHJpbmc7XHJcbiAgICBvYmplY3RLZXk6IHN0cmluZztcclxuICAgIGFjdGlvbktleT86IHN0cmluZztcclxuICAgIHRvb2x0aXBLZXk/OiBzdHJpbmc7XHJcbiAgICBpc0Rpc2FibGVkS2V5Pzogc3RyaW5nO1xyXG4gICAgdHlwZU9mSGVhZGVyRGF0YTogREFUQVRZUEU7XHJcbiAgICB0eXBlT2ZCb2R5RGF0YTogREFUQVRZUEU7XHJcbiAgICBmaWx0ZXI/OiBGSUxURVJUWVBFO1xyXG4gICAgZmlsdGVyU29ydE9iamVjdEtleXM/OiBzdHJpbmdbXTtcclxuICAgIGlzU29ydFJlcXVpcmVkPzogYm9vbGVhbltdO1xyXG4gICAgaXNGaWx0ZXJSZXF1aXJlZD86IGJvb2xlYW5bXTtcclxuICAgIHNob3dUb29sdGlwSWNvbjogYm9vbGVhbjtcclxuICAgIGRpc2FibGVUb29sdGlwSWNvbj86IGJvb2xlYW47XHJcbiAgICB0b29sdGlwPzogSVRvb2x0aXA7XHJcbiAgICBqb2luZWRGaWx0ZXJTb3J0T2JqZWN0S2V5cz86IHN0cmluZztcclxufVxyXG5cclxudHlwZSBEQVRBVFlQRSA9IFwiQ0hFQ0tCT1hcIiB8IFwiSUNPTlwiIHwgXCJTVFJJTkdcIiB8IFwiUkFESU9cIiB8IFwiXCIgfCBcIlNWR19JQ09OXCIgfCBcIlRFWFRfQUNUSU9OU1wiIHwgXCJDTElDS0FCTEVfREFUQVwiIHwgXCJTVFJJTkdfX1RFWFRfQUNUSU9OXCIgfCBcIlNUUklOR19fSUNPTl9BQ1RJT05cIiB8IFwiU1RSSU5HX19fSUNPTl9PUl9URVhUX0FDVElPTlwiIHwgXCJIVE1MXCIgfCBcIkhUTUxfU1RSSU5HXCIgfCBcIklDT05fQ0VMTFwiO1xyXG50eXBlIEZJTFRFUlRZUEUgPSBcIkNIRUNLQk9YXCIgfCBcIlNMSURFUlwiIHwgXCJEQVRFXCIgfCBcIlRJTUVcIiB8IFwiV0VFS1wiO1xyXG50eXBlIFRPT0xUSVBPU0lUSU9OID0gXCJsZWZ0XCIgfCBcInJpZ2h0XCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElUb3RhbFJvd0luZm8ge1xyXG4gICAgY29sc3BhbjogbnVtYmVyO1xyXG4gICAgZGF0YTogc3RyaW5nO1xyXG4gICAgbG93ZXJEYXRhPzogc3RyaW5nO1xyXG4gICAgY29sTmFtZTogc3RyaW5nO1xyXG4gICAgY2xhc3M/OiBzdHJpbmc7XHJcbiAgICB0b29sdGlwTWVzc2FnZT86IHN0cmluZztcclxuICAgIGlzQWN0aW9uQ29sdW1uPzogYm9vbGVhbjtcclxuICAgIGFjdGlvbkRhdGE/OiBDbGlja2FibGVJdGVtW107XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUd0SGVhZGVyQ29uZmlnIHtcclxuICAgIGljb25Db2x1bW46IGJvb2xlYW47XHJcbiAgICBjaGVja2JveENvbHVtbjogYm9vbGVhbjtcclxuICAgIGxhc3RDb2x1bW5LZXlzOiBzdHJpbmdbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJR3RHZW5lcmFsQ29uZmlnIGV4dGVuZHMgSVNwb3RUYWJsZUNvbmZpZ3tcclxuICAgIGNvbXBvbmVudDogQ09NUE9ORU5UTkFNRTtcclxuICAgIHRvdGFsUm93OiBib29sZWFuO1xyXG4gICAgaXNIZWFkZXJDaGVja2VkPzogYm9vbGVhbjtcclxuICAgIGRpc2FibGVIZWFkZXJDaGVja2JveD86IGJvb2xlYW47XHJcbiAgICBtdWx0aVdlZWtQaWNrZXJDb25maWc/OiBJV2Vla0NhbGVuZGFyO1xyXG4gICAgdmVydGljYWxTY3JvbGxPZmZzZXRGb3JGaWx0ZXJUb29sdGlwPzogbnVtYmVyO1xyXG4gICAgdGFibGVDb250YWluZXJOYW1lPzogc3RyaW5nO1xyXG4gICAgdGFibGVPdXRlckNvbnRhaW5lck5hbWU/OiBzdHJpbmc7XHJcbiAgICBzaG93QWxsQ29sdW1uRmlsdGVyOiBib29sZWFuO1xyXG4gICAgYnVmZmVyU2l6ZTogbnVtYmVyO1xyXG4gICAgcGFnZTogc3RyaW5nO1xyXG59XHJcblxyXG50eXBlIENPTVBPTkVOVE5BTUUgPSBcIlNQT1RERVRBSUxTXCIgfCBcIkVYQ0xVREVJTlZFTlRPUllQT1BVUFwiIHwgXCJFWENMVURFSU5WRU5UT1JZXCIgfCBcIkRSUkxJU1RJTkdcIiB8IFwiRFJSXCIgfCBcIlwiIHwgXCJSQVRJTkdcIiB8IFwiT1JERVJfTElTVElOR19JTkZMSUdIVFwiIHwgXCJPUkRFUl9MSVNUSU5HX0NPTVBMRVRFRFwiIHwgXCJPUkRFUl9MSVNUSU5HX0JMQU5LXCIgfCBcIkxVUl9WSU9MQVRJT05TXCIgfCBcIkFDVElWSVRZTE9HXCIgfCBcIk5PVElGSUNBVElPTlNcIjtcclxuaW50ZXJmYWNlIElTcG90VGFibGVDb25maWcge1xyXG4gICAgaXNHcm91cGVkOiBib29sZWFuO1xyXG59XHJcblxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJVG9vbHRpcHtcclxuICAgIGljb25Qb3NpdGlvbjogVG9vbHRpcFBvc2l0aW9uO1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgdG9vbHRpcFBvc2l0aW9uOiBzdHJpbmc7XHJcbiAgICBpY29uQ2xhc3M6IHN0cmluZztcclxuICAgIHRvb2x0aXBDbGFzczogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEljb25EYXRhe1x0XHJcbiAgICBkYXRhOiBhbnk7XHRcclxuICAgIGljb25DbGFzczogc3RyaW5nO1x0XHJcbn1cdFxyXG5leHBvcnQgaW50ZXJmYWNlIFRleHRBY3Rpb257XHRcclxuICAgIGlkOiBudW1iZXI7XHRcclxuICAgIG5hbWU6IHN0cmluZztcdFxyXG4gICAgY2xhc3M6IHN0cmluZztcdFxyXG4gICAgaXNEaXNhYmxlZDogYm9vbGVhbjtcdFxyXG59XHJcblxyXG5cclxuZXhwb3J0IGNsYXNzIENsaWNrYWJsZUl0ZW0ge1xyXG4gIGlkIDogYW55OyBcclxuICBuYW1lOiBzdHJpbmc7XHJcbiAgaXNEaXNhYmxlZDogYm9vbGVhbjsgXHJcbiAgY2xhc3M6IHN0cmluZztcclxuICBzaG93VG9vbHRpcDogYm9vbGVhbjtcclxuICB0b29sdGlwRGF0YToge2tleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nfTtcclxuICBlbmFibGVUb29sdGlwRm9yQWRkaXRpb25hbFRleHQ6IGJvb2xlYW47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHR5cGVPZkFjdGlvbkxpbmtGb3JHdDogIGFueSwgbmFtZTogc3RyaW5nLCBjbGFzc05hbWU6IHN0cmluZywgc2hvd1Rvb2x0aXA6IGJvb2xlYW4sIHRvb2x0aXBEYXRhOiB7a2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmd9KXtcclxuICAgIHRoaXMuaWQgPSB0eXBlT2ZBY3Rpb25MaW5rRm9yR3Q7XHJcbiAgICB0aGlzLm5hbWUgPSBuYW1lO1xyXG4gICAgdGhpcy5jbGFzcyA9IGNsYXNzTmFtZTtcclxuICAgIHRoaXMuc2hvd1Rvb2x0aXAgPSBzaG93VG9vbHRpcDtcclxuICAgIHRoaXMudG9vbHRpcERhdGEgPSB0b29sdGlwRGF0YTtcclxuICAgIHRoaXMuZW5hYmxlVG9vbHRpcEZvckFkZGl0aW9uYWxUZXh0ID0gZmFsc2U7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElBY3Rpb25JdGVtVHlwZVNUUklOR19fSUNPTl9PUl9URVhUX0FDVElPTiB7XHJcbiAgaWQ6IGFueTtcclxuICBkYXRhOiBzdHJpbmc7XHJcblxyXG4gIGljb25DbGFzczogc3RyaW5nOyBcclxuICBzaG93SWNvbjogYm9vbGVhbjsgXHJcbiAgZGlzYWJsZWRJY29uOiBib29sZWFuO1xyXG5cclxuICBsaW5rQ2xhc3M6IHN0cmluZztcclxuICBzaG93TGluazogYm9vbGVhbjtcclxuICBkaXNhYmxlZExpbms6IGJvb2xlYW47IFxyXG5cclxuICBzaG93VG9vbHRpcDogYm9vbGVhbjtcclxuXHJcbiAgdG9vbHRpcERhdGE6IHsga2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfVtdO1xyXG4gIHRvb2x0aXBDbGFzcz86IHN0cmluZztcclxuICB0b29sdGlwUGxhY2VtZW50OiBzdHJpbmc7XHJcblxyXG4gIHR5cGVPZkRhdGE6ICdTVFJJTkcnIHwgJ0lDT05fVEVYVF9BQ1RJT04nO1xyXG4gIGFkZGl0aW9uYWxUZXh0QmVmb3JlTGluazogc3RyaW5nO1xyXG4gIGVuYWJsZVRvb2x0aXBGb3JBZGRpdGlvbmFsVGV4dDogYm9vbGVhbiA7XHJcbn0iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var SortTypeEnum;
|
|
2
|
+
(function (SortTypeEnum) {
|
|
3
|
+
SortTypeEnum["DEFAULT"] = "DEFAULT";
|
|
4
|
+
SortTypeEnum["ASC"] = "ASC";
|
|
5
|
+
SortTypeEnum["DESC"] = "DESC";
|
|
6
|
+
})(SortTypeEnum || (SortTypeEnum = {}));
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1zb3J0Lm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvbW9kZWxzL2FubmEtc29ydC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3RCLG1DQUFtQixDQUFBO0lBQ25CLDJCQUFXLENBQUE7SUFDWCw2QkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgU29ydFR5cGUgPSBcIkRFRkFVTFRcIiB8IFwiQVNDXCIgfCBcIkRFU0NcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU29ydE9wdGlvbntcclxuICAgIHNvcnRUeXBlOiBTb3J0VHlwZSxcclxuICAgIGlzT3B0aW9uQWN0aXZlOiBib29sZWFuLFxyXG4gICAgdGV4dDogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFNvcnRUeXBlRW51bSB7XHJcbiAgREVGQVVMVCA9IFwiREVGQVVMVFwiLFxyXG4gIEFTQyA9IFwiQVNDXCIsXHJcbiAgREVTQyA9IFwiREVTQ1wiXHJcbn0iXX0=
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
export class
|
|
2
|
-
constructor(obj) {
|
|
3
|
-
this.
|
|
1
|
+
export class TooltipModel {
|
|
2
|
+
constructor(obj, id) {
|
|
3
|
+
this.label = obj != null ? obj.toString() : null;
|
|
4
|
+
this.value = obj;
|
|
4
5
|
this.isSelected = false;
|
|
6
|
+
this.id = id;
|
|
5
7
|
}
|
|
6
8
|
}
|
|
7
9
|
export class tooltipModelForColumnLevelFiltering {
|
|
@@ -12,9 +14,11 @@ export class tooltipModelForColumnLevelFiltering {
|
|
|
12
14
|
}
|
|
13
15
|
}
|
|
14
16
|
export class radioButtonModel {
|
|
15
|
-
constructor(key, value) {
|
|
17
|
+
constructor(key, value, sort, filter) {
|
|
16
18
|
this.key = key;
|
|
17
19
|
this.label = value;
|
|
20
|
+
this.isSortRequired = sort;
|
|
21
|
+
this.isFilterRequired = filter;
|
|
18
22
|
}
|
|
19
23
|
}
|
|
20
24
|
export var AllSelectedStatus;
|
|
@@ -23,4 +27,4 @@ export var AllSelectedStatus;
|
|
|
23
27
|
AllSelectedStatus[AllSelectedStatus["allSelected"] = 1] = "allSelected";
|
|
24
28
|
AllSelectedStatus[AllSelectedStatus["fewSelected"] = 2] = "fewSelected";
|
|
25
29
|
})(AllSelectedStatus || (AllSelectedStatus = {}));
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS10b29sdGlwLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvbW9kZWxzL2FubmEtdG9vbHRpcC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sWUFBWTtJQU1yQixZQUFZLEdBQVcsRUFBQyxFQUFVO1FBQzlCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDakQsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUM7SUFDakIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLG1DQUFtQztJQUk1QyxZQUFZLElBQVk7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztDQUNKO0FBRUQsTUFBTSxPQUFPLGdCQUFnQjtJQU16QixZQUFZLEdBQVcsRUFBRSxLQUFhLEVBQUMsSUFBYSxFQUFFLE1BQWU7UUFDakUsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDO0lBQ25DLENBQUM7Q0FDSjtBQUVELE1BQU0sQ0FBTixJQUFZLGlCQUlYO0FBSkQsV0FBWSxpQkFBaUI7SUFDekIseURBQVEsQ0FBQTtJQUNSLHVFQUFlLENBQUE7SUFDZix1RUFBZSxDQUFBO0FBQ25CLENBQUMsRUFKVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBSTVCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIFRvb2x0aXBNb2RlbCB7XHJcbiAgICBpc1NlbGVjdGVkOiBib29sZWFuO1xyXG4gICAgbGFiZWw6IHN0cmluZztcclxuICAgIGlkOiBudW1iZXI7XHJcbiAgICB2YWx1ZTogc3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKG9iajogc3RyaW5nLGlkOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLmxhYmVsID0gb2JqICE9IG51bGwgPyBvYmoudG9TdHJpbmcoKSA6IG51bGw7XHJcbiAgICAgICAgdGhpcy52YWx1ZSA9IG9iajtcclxuICAgICAgICB0aGlzLmlzU2VsZWN0ZWQgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmlkID0gaWQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyB0b29sdGlwTW9kZWxGb3JDb2x1bW5MZXZlbEZpbHRlcmluZyB7XHJcbiAgICBpc0hpZGRlbjtcclxuICAgIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XHJcbiAgICBkYXRhOiBzdHJpbmc7XHJcbiAgICBjb25zdHJ1Y3RvcihkYXRhOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmRhdGEgPSBkYXRhO1xyXG4gICAgICAgIHRoaXMuaXNTZWxlY3RlZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5pc0hpZGRlbiA9IGZhbHNlO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgcmFkaW9CdXR0b25Nb2RlbCB7XHJcbiAgICBrZXk6IHN0cmluZztcclxuICAgIGxhYmVsOiBzdHJpbmc7XHJcbiAgICBpc1NvcnRSZXF1aXJlZDogYm9vbGVhbjtcclxuICAgIGlzRmlsdGVyUmVxdWlyZWQ6IGJvb2xlYW47XHJcblxyXG4gICAgY29uc3RydWN0b3Ioa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsc29ydDogYm9vbGVhbiwgZmlsdGVyOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5rZXkgPSBrZXk7XHJcbiAgICAgICAgdGhpcy5sYWJlbCA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuaXNTb3J0UmVxdWlyZWQgPSBzb3J0O1xyXG4gICAgICAgIHRoaXMuaXNGaWx0ZXJSZXF1aXJlZCA9IGZpbHRlcjtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGVudW0gQWxsU2VsZWN0ZWRTdGF0dXMge1xyXG4gICAgbm9uZSA9IDAsXHJcbiAgICBhbGxTZWxlY3RlZCA9IDEsXHJcbiAgICBmZXdTZWxlY3RlZCA9IDIsXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { memoize } from "lodash-es";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class AnnaConvertZeroOrNullOrUndefinedPipe {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.transformer = memoize(this.replace, (...args) => this.replace(args[0], args[1]));
|
|
7
|
+
}
|
|
8
|
+
transform(value, convertTo) {
|
|
9
|
+
return this.transformer(value, convertTo);
|
|
10
|
+
}
|
|
11
|
+
replace(value, convertTo) {
|
|
12
|
+
if (value === "undefined" || value === null || value === "" || Number(value) === 0) {
|
|
13
|
+
return convertTo;
|
|
14
|
+
}
|
|
15
|
+
return value;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
AnnaConvertZeroOrNullOrUndefinedPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AnnaConvertZeroOrNullOrUndefinedPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
19
|
+
AnnaConvertZeroOrNullOrUndefinedPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: AnnaConvertZeroOrNullOrUndefinedPipe, name: "AnnaConvertZeroOrNullOrUndefined" });
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AnnaConvertZeroOrNullOrUndefinedPipe, decorators: [{
|
|
21
|
+
type: Pipe,
|
|
22
|
+
args: [{
|
|
23
|
+
name: "AnnaConvertZeroOrNullOrUndefined",
|
|
24
|
+
}]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYUNvbnZlcnRaZXJvT3JOdWxsT3JVbmRlZmluZWQucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29yZS9zcmMvbGliL2FubmEtY29yZS1zaGFyZWQtbGliL3BpcGVzL2FubmFDb252ZXJ0WmVyb09yTnVsbE9yVW5kZWZpbmVkLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFLcEMsTUFBTSxPQUFPLG9DQUFvQztJQUhqRDtRQUlJLGdCQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQVlwRjtJQVZHLFNBQVMsQ0FBQyxLQUFTLEVBQUUsU0FBYTtRQUM5QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBUyxFQUFFLFNBQWE7UUFDNUIsSUFBSSxLQUFLLEtBQUssV0FBVyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2hGLE9BQU8sU0FBUyxDQUFDO1NBQ3BCO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQzs7aUlBWlEsb0NBQW9DOytIQUFwQyxvQ0FBb0M7MkZBQXBDLG9DQUFvQztrQkFIaEQsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsa0NBQWtDO2lCQUMzQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBtZW1vaXplIH0gZnJvbSBcImxvZGFzaC1lc1wiO1xyXG5cclxuQFBpcGUoe1xyXG4gICAgbmFtZTogXCJBbm5hQ29udmVydFplcm9Pck51bGxPclVuZGVmaW5lZFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5uYUNvbnZlcnRaZXJvT3JOdWxsT3JVbmRlZmluZWRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICB0cmFuc2Zvcm1lciA9IG1lbW9pemUodGhpcy5yZXBsYWNlLCAoLi4uYXJncykgPT4gdGhpcy5yZXBsYWNlKGFyZ3NbMF0sIGFyZ3NbMV0pKTtcclxuXHJcbiAgICB0cmFuc2Zvcm0odmFsdWU6YW55LCBjb252ZXJ0VG86YW55KTogbnVtYmVyIHwgc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm1lcih2YWx1ZSwgY29udmVydFRvKTtcclxuICAgIH1cclxuXHJcbiAgICByZXBsYWNlKHZhbHVlOmFueSwgY29udmVydFRvOmFueSk6IG51bWJlciB8IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBcInVuZGVmaW5lZFwiIHx8IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSBcIlwiIHx8IE51bWJlcih2YWx1ZSkgPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRUbztcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -14,18 +14,33 @@ export class AnnaFilterSearchedTextPipe {
|
|
|
14
14
|
if (!searchText)
|
|
15
15
|
return items;
|
|
16
16
|
searchText = searchText.toString().toLowerCase();
|
|
17
|
-
//if keyName is
|
|
18
|
-
if (
|
|
19
|
-
|
|
20
|
-
|
|
17
|
+
// if keyName is an array then loop through all the keynames
|
|
18
|
+
if (typeof (keyName) == 'object') {
|
|
19
|
+
let isFoundAtleastOnce = false;
|
|
20
|
+
let isFound;
|
|
21
|
+
for (const key of keyName) {
|
|
22
|
+
isFound = items.filter((item) => item[key].toString().toLowerCase().includes(searchText));
|
|
23
|
+
if (isFound.length) {
|
|
24
|
+
isFoundAtleastOnce = true;
|
|
25
|
+
break;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return isFoundAtleastOnce ? isFound : [];
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
//if keyName is undefined every key will be considered for filtering.
|
|
32
|
+
if (!keyName)
|
|
33
|
+
return items.filter((item) => Object.values(item).filter((n) => n ? n.toString().toLowerCase().includes(searchText) : false).length > 0);
|
|
34
|
+
return items.filter((item) => item[keyName] ? item[keyName].toString().toLowerCase().includes(searchText) : false);
|
|
35
|
+
}
|
|
21
36
|
}
|
|
22
37
|
}
|
|
23
|
-
AnnaFilterSearchedTextPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
24
|
-
AnnaFilterSearchedTextPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
+
AnnaFilterSearchedTextPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AnnaFilterSearchedTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
39
|
+
AnnaFilterSearchedTextPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: AnnaFilterSearchedTextPipe, name: "AnnafilterSearchedText" });
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AnnaFilterSearchedTextPipe, decorators: [{
|
|
26
41
|
type: Pipe,
|
|
27
42
|
args: [{
|
|
28
43
|
name: "AnnafilterSearchedText",
|
|
29
44
|
}]
|
|
30
45
|
}] });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYUZpbHRlclNlYXJjaGVkVGV4dC5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb3JlL3NyYy9saWIvYW5uYS1jb3JlLXNoYXJlZC1saWIvcGlwZXMvYW5uYUZpbHRlclNlYXJjaGVkVGV4dC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBS3BDLE1BQU0sT0FBTywwQkFBMEI7SUFIdkM7UUFJSSxlQUFVLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FtQzFGO0lBakNHLFNBQVMsQ0FBQyxLQUFZLEVBQUUsVUFBZSxFQUFFLE9BQWE7UUFDbEQsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFZLEVBQUUsVUFBa0IsRUFBRSxPQUFhO1FBQ2xELElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUM5QixVQUFVLEdBQUcsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBR2pELDREQUE0RDtRQUM1RCxJQUFHLE9BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxRQUFRLEVBQUM7WUFDN0IsSUFBSSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7WUFDL0IsSUFBSSxPQUFhLENBQUM7WUFFbEIsS0FBSSxNQUFNLEdBQUcsSUFBSSxPQUFPLEVBQUM7Z0JBQ3ZCLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQzFGLElBQUcsT0FBTyxDQUFDLE1BQU0sRUFBQztvQkFDaEIsa0JBQWtCLEdBQUcsSUFBSSxDQUFDO29CQUMxQixNQUFNO2lCQUNQO2FBQ0Y7WUFDRCxPQUFPLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztTQUMxQzthQUNJO1lBQ0wscUVBQXFFO1lBQ25FLElBQUksQ0FBQyxPQUFPO2dCQUNWLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FDakIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQ2xILENBQUM7WUFDTixPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDcEg7SUFDTCxDQUFDOzt1SEFuQ1EsMEJBQTBCO3FIQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFIdEMsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsd0JBQXdCO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBtZW1vaXplIH0gZnJvbSBcImxvZGFzaC1lc1wiO1xyXG5cclxuQFBpcGUoe1xyXG4gICAgbmFtZTogXCJBbm5hZmlsdGVyU2VhcmNoZWRUZXh0XCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbm5hRmlsdGVyU2VhcmNoZWRUZXh0UGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgY2FsbEZpbHRlciA9IG1lbW9pemUodGhpcy5maWx0ZXIsICguLi5hcmdzKSA9PiB0aGlzLmZpbHRlcihhcmdzWzBdLCBhcmdzWzFdLCBhcmdzWzJdKSk7XHJcblxyXG4gICAgdHJhbnNmb3JtKGl0ZW1zOiBhbnlbXSwgc2VhcmNoVGV4dDogYW55LCBrZXlOYW1lPzogYW55KTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNhbGxGaWx0ZXIoaXRlbXMsIHNlYXJjaFRleHQsIGtleU5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGZpbHRlcihpdGVtczogYW55W10sIHNlYXJjaFRleHQ6IHN0cmluZywga2V5TmFtZT86IGFueSk6IGFueVtdIHtcclxuICAgICAgICBpZiAoIWl0ZW1zKSByZXR1cm4gW107XHJcbiAgICAgICAgaWYgKCFzZWFyY2hUZXh0KSByZXR1cm4gaXRlbXM7XHJcbiAgICAgICAgc2VhcmNoVGV4dCA9IHNlYXJjaFRleHQudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpO1xyXG5cclxuXHJcbiAgICAgICAgLy8gaWYga2V5TmFtZSBpcyBhbiBhcnJheSB0aGVuIGxvb3AgdGhyb3VnaCBhbGwgdGhlIGtleW5hbWVzXHJcbiAgICAgICAgaWYodHlwZW9mKGtleU5hbWUpID09ICdvYmplY3QnKXtcclxuICAgICAgICAgIGxldCBpc0ZvdW5kQXRsZWFzdE9uY2UgPSBmYWxzZTtcclxuICAgICAgICAgIGxldCBpc0ZvdW5kOmFueVtdO1xyXG5cclxuICAgICAgICAgIGZvcihjb25zdCBrZXkgb2Yga2V5TmFtZSl7XHJcbiAgICAgICAgICAgIGlzRm91bmQgPSBpdGVtcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW1ba2V5XS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGV4dCkpO1xyXG4gICAgICAgICAgICBpZihpc0ZvdW5kLmxlbmd0aCl7XHJcbiAgICAgICAgICAgICAgaXNGb3VuZEF0bGVhc3RPbmNlID0gdHJ1ZTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIGlzRm91bmRBdGxlYXN0T25jZSA/IGlzRm91bmQgOiBbXTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgLy9pZiBrZXlOYW1lIGlzIHVuZGVmaW5lZCBldmVyeSBrZXkgd2lsbCBiZSBjb25zaWRlcmVkIGZvciBmaWx0ZXJpbmcuXHJcbiAgICAgICAgICBpZiAoIWtleU5hbWUpXHJcbiAgICAgICAgICAgIHJldHVybiBpdGVtcy5maWx0ZXIoXHJcbiAgICAgICAgICAgICAgKGl0ZW0pID0+IE9iamVjdC52YWx1ZXMoaXRlbSkuZmlsdGVyKChuKSA9PiBuID8gbi50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGV4dCkgOiBmYWxzZSkubGVuZ3RoID4gMFxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChpdGVtKSA9PiBpdGVtW2tleU5hbWVdID8gaXRlbVtrZXlOYW1lXS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoVGV4dCkgOiBmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Pipe } from "@angular/core";
|
|
2
|
+
import { memoize } from "lodash-es";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class AnnaReplaceCharPipe {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.converter = memoize(this.replace, (...args) => this.replace(args[0], args[1], args[2]));
|
|
7
|
+
}
|
|
8
|
+
transform(value, charToBeReplaced, replaceBy) {
|
|
9
|
+
if (value !== undefined || value != null) {
|
|
10
|
+
return this.converter(value, charToBeReplaced, replaceBy);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
replace(value, from, to) {
|
|
14
|
+
return value.replace(new RegExp(from, "g"), to);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
AnnaReplaceCharPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AnnaReplaceCharPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
18
|
+
AnnaReplaceCharPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: AnnaReplaceCharPipe, name: "annaReplaceChar" });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: AnnaReplaceCharPipe, decorators: [{
|
|
20
|
+
type: Pipe,
|
|
21
|
+
args: [{
|
|
22
|
+
name: "annaReplaceChar",
|
|
23
|
+
}]
|
|
24
|
+
}] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYVJlcGxhY2VDaGFyLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9waXBlcy9hbm5hUmVwbGFjZUNoYXIucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDOztBQUtwQyxNQUFNLE9BQU8sbUJBQW1CO0lBSGhDO1FBSUksY0FBUyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBVzNGO0lBVEcsU0FBUyxDQUFDLEtBQWEsRUFBRSxnQkFBd0IsRUFBRSxTQUFpQjtRQUNoRSxJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxJQUFJLElBQUksRUFBRTtZQUN0QyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQzdEO0lBQ0wsQ0FBQztJQUVELE9BQU8sQ0FBQyxLQUFhLEVBQUUsSUFBWSxFQUFFLEVBQVU7UUFDM0MsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDOztnSEFYUSxtQkFBbUI7OEdBQW5CLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQUgvQixJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxpQkFBaUI7aUJBQzFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IG1lbW9pemUgfSBmcm9tIFwibG9kYXNoLWVzXCI7XHJcblxyXG5AUGlwZSh7XHJcbiAgICBuYW1lOiBcImFubmFSZXBsYWNlQ2hhclwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5uYVJlcGxhY2VDaGFyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICAgY29udmVydGVyID0gbWVtb2l6ZSh0aGlzLnJlcGxhY2UsICguLi5hcmdzKSA9PiB0aGlzLnJlcGxhY2UoYXJnc1swXSwgYXJnc1sxXSwgYXJnc1syXSkpO1xyXG5cclxuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nLCBjaGFyVG9CZVJlcGxhY2VkOiBzdHJpbmcsIHJlcGxhY2VCeTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCB8fCB2YWx1ZSAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbnZlcnRlcih2YWx1ZSwgY2hhclRvQmVSZXBsYWNlZCwgcmVwbGFjZUJ5KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmVwbGFjZSh2YWx1ZTogc3RyaW5nLCBmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKG5ldyBSZWdFeHAoZnJvbSwgXCJnXCIpLCB0byk7XHJcbiAgICB9XHJcbn1cclxuIl19
|