@simpleangularcontrols/sac-common 16.0.0-rc.8 → 16.0.0-rc.9
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/common/baseinputcontrol.d.ts +1 -5
- package/common/baseinputcontrol.d.ts.map +1 -1
- package/common/basemodelcontrol.d.ts +26 -2
- package/common/basemodelcontrol.d.ts.map +1 -1
- package/common/baseuploadcontrol.d.ts +0 -5
- package/common/baseuploadcontrol.d.ts.map +1 -1
- package/controls/checkbox/checkbox.d.ts +13 -4
- package/controls/checkbox/checkbox.d.ts.map +1 -1
- package/controls/datetime/date.d.ts +0 -4
- package/controls/datetime/date.d.ts.map +1 -1
- package/controls/datetime/datetime.d.ts +0 -4
- package/controls/datetime/datetime.d.ts.map +1 -1
- package/controls/datetime/time.d.ts +0 -4
- package/controls/datetime/time.d.ts.map +1 -1
- package/controls/grid/grid.d.ts +38 -36
- package/controls/grid/grid.d.ts.map +1 -1
- package/controls/grid/gridbutton.d.ts +14 -14
- package/controls/grid/gridbutton.d.ts.map +1 -1
- package/controls/grid/gridcolumn.d.ts +8 -8
- package/controls/grid/gridcolumn.d.ts.map +1 -1
- package/controls/grid/gridcolumnaction.d.ts +3 -3
- package/controls/grid/gridcolumnaction.d.ts.map +1 -1
- package/controls/grid/gridcolumnbase.d.ts +38 -38
- package/controls/grid/gridcolumnbase.d.ts.map +1 -1
- package/controls/grid/gridimage.d.ts +2 -2
- package/controls/grid/gridimage.d.ts.map +1 -1
- package/controls/grid/model.d.ts +51 -42
- package/controls/grid/model.d.ts.map +1 -1
- package/controls/grid/paging.d.ts +41 -43
- package/controls/grid/paging.d.ts.map +1 -1
- package/controls/input/inputsearch.d.ts +14 -5
- package/controls/input/inputsearch.d.ts.map +1 -1
- package/controls/layout/formlayout.d.ts +13 -1
- package/controls/layout/formlayout.d.ts.map +1 -1
- package/controls/static/formcontainer.d.ts +3 -7
- package/controls/static/formcontainer.d.ts.map +1 -1
- package/controls/tooltip/tooltip.d.ts +88 -63
- package/controls/tooltip/tooltip.d.ts.map +1 -1
- package/esm2022/common/baseinputcontrol.mjs +8 -10
- package/esm2022/common/basemodelcontrol.mjs +66 -57
- package/esm2022/common/baseuploadcontrol.mjs +42 -42
- package/esm2022/controls/checkbox/checkbox.mjs +12 -6
- package/esm2022/controls/datetime/date.mjs +16 -15
- package/esm2022/controls/datetime/datetime.mjs +16 -15
- package/esm2022/controls/datetime/time.mjs +16 -15
- package/esm2022/controls/grid/grid.mjs +23 -23
- package/esm2022/controls/grid/gridbutton.mjs +20 -15
- package/esm2022/controls/grid/gridcolumn.mjs +20 -13
- package/esm2022/controls/grid/gridcolumnaction.mjs +8 -7
- package/esm2022/controls/grid/gridcolumnbase.mjs +31 -30
- package/esm2022/controls/grid/gridimage.mjs +5 -5
- package/esm2022/controls/grid/model.mjs +53 -35
- package/esm2022/controls/grid/paging.mjs +42 -44
- package/esm2022/controls/input/inputsearch.mjs +14 -7
- package/esm2022/controls/layout/formlayout.mjs +16 -12
- package/esm2022/controls/static/formcontainer.mjs +13 -10
- package/esm2022/controls/tooltip/tooltip.mjs +101 -76
- package/esm2022/interfaces/ISacConfigurationService.mjs +3 -3
- package/esm2022/interfaces/ISacIconService.mjs +3 -3
- package/esm2022/services/sac-configuration.service.mjs +18 -12
- package/esm2022/services/sac-icon.service.mjs +15 -11
- package/fesm2022/simpleangularcontrols-sac-common.mjs +1293 -1198
- package/fesm2022/simpleangularcontrols-sac-common.mjs.map +1 -1
- package/interfaces/ISacConfigurationService.d.ts +12 -0
- package/interfaces/ISacConfigurationService.d.ts.map +1 -1
- package/interfaces/ISacIconService.d.ts +8 -0
- package/interfaces/ISacIconService.d.ts.map +1 -1
- package/package.json +1 -1
- package/services/sac-configuration.service.d.ts +24 -0
- package/services/sac-configuration.service.d.ts.map +1 -1
- package/services/sac-icon.service.d.ts +16 -0
- package/services/sac-icon.service.d.ts.map +1 -1
- package/simpleangularcontrols-sac-common-16.0.0-rc.9.tgz +0 -0
- package/simpleangularcontrols-sac-common-16.0.0-rc.8.tgz +0 -0
|
@@ -1,141 +1,166 @@
|
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
1
|
+
import { AfterViewChecked, ChangeDetectorRef, DoCheck, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { TooltipPosition } from '../../utilities/enums';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
5
5
|
* Tooltip Component
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
* - container: Container
|
|
9
|
-
* - tooltip: Container
|
|
7
|
+
* Requires the following identifiers in the HTML markup
|
|
8
|
+
* - container: Container for ng-content in which the element is displayed where the tooltip is attached.
|
|
9
|
+
* - tooltip: Container for tooltip
|
|
10
10
|
*
|
|
11
|
-
* Tooltip
|
|
12
|
-
*
|
|
11
|
+
* Tooltip must be displayed in 2 steps. In a first step the tooltip markup is created with (ngIf). In a 2nd step
|
|
12
|
+
* the tooltip can then be displayed via the CSS visibility. If this is not done, it can lead to a flickering effect in certain browsers.
|
|
13
13
|
*
|
|
14
14
|
*/
|
|
15
|
-
export declare class SacTooltipCommon implements OnInit, OnDestroy {
|
|
16
|
-
private cdRef;
|
|
17
|
-
private ref;
|
|
15
|
+
export declare abstract class SacTooltipCommon implements OnInit, OnDestroy, AfterViewChecked, DoCheck {
|
|
16
|
+
private readonly cdRef;
|
|
17
|
+
private readonly ref;
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
19
|
+
* Inline mode for tooltip
|
|
20
20
|
*/
|
|
21
|
-
|
|
21
|
+
private _inlinemode;
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
23
|
+
* Defines whether the tooltip is visible
|
|
24
24
|
*/
|
|
25
25
|
private _isTooltipVisible;
|
|
26
26
|
/**
|
|
27
|
-
*
|
|
27
|
+
* method if content has changed and proportions need to be reset in the UI.
|
|
28
28
|
*/
|
|
29
|
-
|
|
29
|
+
private readonly onContentChange;
|
|
30
30
|
/**
|
|
31
|
-
*
|
|
31
|
+
* Containers for the tooltip
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
private tooltipcontainer;
|
|
34
34
|
/**
|
|
35
|
-
* Position
|
|
35
|
+
* Position of the tooltip. Values: left|top|right|bottom|auto
|
|
36
36
|
*
|
|
37
|
-
*
|
|
37
|
+
* Value 'auto' can be combined with another value.
|
|
38
38
|
*/
|
|
39
39
|
position: string;
|
|
40
40
|
/**
|
|
41
|
-
* Text
|
|
41
|
+
* Text for ToolTip
|
|
42
42
|
*/
|
|
43
43
|
tooltiptext: string;
|
|
44
44
|
/**
|
|
45
|
-
*
|
|
45
|
+
* Name of the container for content (e.g. icon) on which the tooltip is displayed.
|
|
46
46
|
*/
|
|
47
|
-
|
|
47
|
+
content: ElementRef<HTMLElement>;
|
|
48
48
|
/**
|
|
49
|
-
*
|
|
49
|
+
* Position of the tooltip on the left
|
|
50
50
|
*/
|
|
51
51
|
IsTooltipContentVisible: boolean;
|
|
52
52
|
/**
|
|
53
|
-
*
|
|
53
|
+
* Position des Tooltips links
|
|
54
54
|
*/
|
|
55
|
-
|
|
55
|
+
LeftPos: number;
|
|
56
56
|
/**
|
|
57
|
-
*
|
|
57
|
+
* Property for enum in Angular HTML template
|
|
58
58
|
*/
|
|
59
|
-
|
|
59
|
+
TooltipPosition: typeof TooltipPosition;
|
|
60
60
|
/**
|
|
61
|
-
*
|
|
61
|
+
* Position of the tooltip at the top
|
|
62
62
|
*/
|
|
63
|
-
|
|
63
|
+
TopPos: number;
|
|
64
64
|
/**
|
|
65
|
-
*
|
|
65
|
+
* Konstruktor
|
|
66
|
+
* @param ref Element Referenz
|
|
66
67
|
*/
|
|
67
|
-
|
|
68
|
+
constructor(cdRef: ChangeDetectorRef, ref: ElementRef);
|
|
68
69
|
/**
|
|
69
|
-
* Setter
|
|
70
|
+
* Setter for inline mode for tooltip
|
|
70
71
|
*/
|
|
71
|
-
set
|
|
72
|
+
set inlinemode(value: boolean);
|
|
72
73
|
/**
|
|
73
|
-
*
|
|
74
|
-
* @param ref Element Referenz
|
|
74
|
+
* Setter for the name of the container for the tooltip. Is required as the tooltip can be hidden via ngIf.
|
|
75
75
|
*/
|
|
76
|
-
|
|
76
|
+
set tooltip(content: ElementRef);
|
|
77
77
|
/**
|
|
78
|
-
*
|
|
78
|
+
* Property for inline mode for tooltip. Sets the display mode on the wrapper element to `inline`
|
|
79
79
|
*/
|
|
80
|
-
|
|
80
|
+
get inlinemode(): boolean;
|
|
81
|
+
get tooltop(): ElementRef;
|
|
81
82
|
/**
|
|
82
|
-
*
|
|
83
|
+
* Returns the position of the tooltip
|
|
83
84
|
*/
|
|
84
|
-
|
|
85
|
+
GetTooltipPosition(): TooltipPosition;
|
|
85
86
|
/**
|
|
86
|
-
*
|
|
87
|
+
* Hide tooltip
|
|
87
88
|
*/
|
|
88
|
-
|
|
89
|
+
HideTooltip(): void;
|
|
89
90
|
/**
|
|
90
|
-
*
|
|
91
|
+
* Defines whether the tooltip is present in the markup
|
|
91
92
|
*/
|
|
92
|
-
|
|
93
|
+
IsTooltipVisible(): boolean;
|
|
93
94
|
/**
|
|
94
|
-
*
|
|
95
|
+
* Show tooltip
|
|
95
96
|
*/
|
|
96
|
-
|
|
97
|
+
ShowTooltip(): void;
|
|
97
98
|
/**
|
|
98
|
-
*
|
|
99
|
+
* Calculates the height of the tooltip
|
|
99
100
|
*/
|
|
100
|
-
|
|
101
|
+
getToolTipHeight(): number;
|
|
101
102
|
/**
|
|
102
|
-
*
|
|
103
|
+
* Calculates the width of the tooltips
|
|
103
104
|
*/
|
|
104
|
-
|
|
105
|
+
getToolTipWidth(): number;
|
|
105
106
|
/**
|
|
106
|
-
*
|
|
107
|
+
* Detect Changes after view checked. Prevent ExpressionChangedAfterItHasBeenCheckedError error
|
|
107
108
|
*/
|
|
108
|
-
|
|
109
|
+
ngAfterViewChecked(): void;
|
|
109
110
|
/**
|
|
110
|
-
* Tooltip
|
|
111
|
+
* Detect UI Changes to Calculate Tooltip correct
|
|
111
112
|
*/
|
|
112
|
-
|
|
113
|
+
ngDoCheck(): void;
|
|
113
114
|
/**
|
|
114
|
-
*
|
|
115
|
+
* Event when the control is destroyed.
|
|
115
116
|
*/
|
|
116
|
-
|
|
117
|
+
ngOnDestroy(): void;
|
|
117
118
|
/**
|
|
118
|
-
*
|
|
119
|
+
* Event when the control is initialized
|
|
119
120
|
*/
|
|
120
|
-
|
|
121
|
+
ngOnInit(): void;
|
|
121
122
|
/**
|
|
122
|
-
*
|
|
123
|
+
* Offset for Tooltip. Required for BS4/BS5 to create padding
|
|
123
124
|
*/
|
|
124
|
-
|
|
125
|
+
protected abstract getTooltipOffset(): number;
|
|
125
126
|
/**
|
|
126
|
-
*
|
|
127
|
+
* Returns the defined position for the tooltip
|
|
127
128
|
*/
|
|
128
129
|
private GetPosition;
|
|
129
130
|
/**
|
|
130
|
-
*
|
|
131
|
+
* Returns whether the position has been configured
|
|
131
132
|
*
|
|
132
|
-
* @param position Position
|
|
133
|
+
* @param position Position to be checked
|
|
133
134
|
*/
|
|
134
135
|
private HasPosition;
|
|
135
136
|
/**
|
|
136
|
-
*
|
|
137
|
+
* Defines whether AutoPosition is active
|
|
138
|
+
*/
|
|
139
|
+
private IsAutoPosition;
|
|
140
|
+
/**
|
|
141
|
+
* Checks whether the position is valid or whether the tooltip on the position has space
|
|
137
142
|
*/
|
|
138
143
|
private ValidatePositions;
|
|
144
|
+
/**
|
|
145
|
+
* Calculates the position of the tooltip from links
|
|
146
|
+
*/
|
|
147
|
+
private getLeftPosition;
|
|
148
|
+
/**
|
|
149
|
+
* Calculates the position of the tooltip from the top
|
|
150
|
+
*/
|
|
151
|
+
private getTopPosition;
|
|
152
|
+
/**
|
|
153
|
+
* Calculates the top of the page inside all elements
|
|
154
|
+
* @param element HTML Element
|
|
155
|
+
* @returns summarized top value for absolute position
|
|
156
|
+
*/
|
|
157
|
+
private getOffsetTopParent;
|
|
158
|
+
/**
|
|
159
|
+
* Caclulate Scrollbars inside tree
|
|
160
|
+
* @param element HTML Element
|
|
161
|
+
* @returns Scroll top value of element with all childs
|
|
162
|
+
*/
|
|
163
|
+
private getScrollTopParent;
|
|
139
164
|
static ɵfac: i0.ɵɵFactoryDeclaration<SacTooltipCommon, never>;
|
|
140
165
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SacTooltipCommon, never, never, { "position": { "alias": "position"; "required": false; }; "tooltiptext": { "alias": "tooltiptext"; "required": false; }; "inlinemode": { "alias": "inlinemode"; "required": false; }; }, {}, never, never, false, never>;
|
|
141
166
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../projects/sac-common/src/controls/tooltip/tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../projects/sac-common/src/controls/tooltip/tooltip.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAEjB,OAAO,EACP,UAAU,EAEV,SAAS,EACT,MAAM,EAEP,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;;AAExD;;;;;;;;;;GAUG;AACH,8BACsB,gBAAiB,YAAW,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO;IAyEhF,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAqB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAtE3E;;OAEG;IACH,OAAO,CAAC,WAAW,CAAU;IAC7B;;OAEG;IACH,OAAO,CAAC,iBAAiB,CAAkB;IAC3C;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAU9B;IACF;;OAEG;IACH,OAAO,CAAC,gBAAgB,CAA0B;IAElD;;;;OAIG;IAEI,QAAQ,EAAE,MAAM,CAAgB;IACvC;;OAEG;IAEI,WAAW,EAAE,MAAM,CAAC;IAC3B;;OAEG;IAEI,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAExC;;OAEG;IACI,uBAAuB,EAAE,OAAO,CAAS;IAChD;;OAEG;IACI,OAAO,EAAE,MAAM,CAAK;IAC3B;;OAEG;IACI,eAAe,yBAAmB;IACzC;;OAEG;IACI,MAAM,EAAE,MAAM,CAAK;IAM1B;;;OAGG;gBAC0B,KAAK,EAAE,iBAAiB,EAAmB,GAAG,EAAE,UAAU;IAMvF;;OAEG;IACH,IACW,UAAU,CAAC,KAAK,EAAE,OAAO,EAEnC;IAED;;OAEG;IACH,IACW,OAAO,CAAC,OAAO,EAAE,UAAU,EAQrC;IAED;;OAEG;IACH,IAAW,UAAU,IAAI,OAAO,CAE/B;IAED,IAAW,OAAO,IAAI,UAAU,CAE/B;IAMD;;OAEG;IACI,kBAAkB,IAAI,eAAe;IA+D5C;;OAEG;IACI,WAAW,IAAI,IAAI;IAK1B;;OAEG;IACI,gBAAgB,IAAI,OAAO;IAIlC;;OAEG;IACI,WAAW,IAAI,IAAI;IAW1B;;OAEG;IACI,gBAAgB,IAAI,MAAM;IAQjC;;OAEG;IACI,eAAe,IAAI,MAAM;IAQhC;;OAEG;IACI,kBAAkB,IAAI,IAAI;IASjC;;OAEG;IACI,SAAS,IAAI,IAAI;IAUxB;;OAEG;IACI,WAAW;IAUlB;;OAEG;IACI,QAAQ;IAcf;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,MAAM;IAM7C;;OAEG;IACH,OAAO,CAAC,WAAW;IAuBnB;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAyBnB;;OAEG;IACH,OAAO,CAAC,cAAc;IAKtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2CzB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiCvB;;OAEG;IACH,OAAO,CAAC,cAAc;IAmCtB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;yCArfN,gBAAgB;2CAAhB,gBAAgB;CAigBrC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function cov_1jbakzt3dx(){var path="C:\\Projekte\\simpleangularcontrols-ng16\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2022\\common\\baseinputcontrol.mjs";var hash="
|
|
1
|
+
function cov_1jbakzt3dx(){var path="C:\\Projekte\\simpleangularcontrols-ng16\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2022\\common\\baseinputcontrol.mjs";var hash="19f559e48f98ba5bfe46ee8ad78a82ee2af3d833";var global=new Function("return this")();var gcv="__coverage__";var coverageData={path:"C:\\Projekte\\simpleangularcontrols-ng16\\ch.jnetwork.sac-controls\\dist\\sac-common\\esm2022\\common\\baseinputcontrol.mjs",statementMap:{"0":{start:{line:9,column:8},end:{line:9,column:28}},"1":{start:{line:14,column:8},end:{line:14,column:31}},"2":{start:{line:18,column:8},end:{line:18,column:41}},"3":{start:{line:22,column:8},end:{line:22,column:32}},"4":{start:{line:26,column:8},end:{line:26,column:32}},"5":{start:{line:30,column:8},end:{line:30,column:30}},"6":{start:{line:39,column:8},end:{line:41,column:9}},"7":{start:{line:40,column:12},end:{line:40,column:24}},"8":{start:{line:43,column:26},end:{line:43,column:35}},"9":{start:{line:45,column:8},end:{line:47,column:9}},"10":{start:{line:46,column:12},end:{line:46,column:35}},"11":{start:{line:48,column:29},end:{line:48,column:41}},"12":{start:{line:49,column:8},end:{line:51,column:9}},"13":{start:{line:50,column:12},end:{line:50,column:35}},"14":{start:{line:59,column:8},end:{line:59,column:20}},"15":{start:{line:61,column:13},end:{line:61,column:177}},"16":{start:{line:62,column:13},end:{line:62,column:350}},"17":{start:{line:65,column:0},end:{line:79,column:20}}},fnMap:{"0":{name:"(anonymous_0)",decl:{start:{line:8,column:4},end:{line:8,column:5}},loc:{start:{line:8,column:18},end:{line:31,column:5}},line:8},"1":{name:"(anonymous_1)",decl:{start:{line:37,column:4},end:{line:37,column:5}},loc:{start:{line:37,column:22},end:{line:52,column:5}},line:37},"2":{name:"(anonymous_2)",decl:{start:{line:58,column:4},end:{line:58,column:5}},loc:{start:{line:58,column:46},end:{line:60,column:5}},line:58}},branchMap:{"0":{loc:{start:{line:39,column:8},end:{line:41,column:9}},type:"if",locations:[{start:{line:39,column:8},end:{line:41,column:9}},{start:{line:39,column:8},end:{line:41,column:9}}],line:39},"1":{loc:{start:{line:45,column:8},end:{line:47,column:9}},type:"if",locations:[{start:{line:45,column:8},end:{line:47,column:9}},{start:{line:45,column:8},end:{line:47,column:9}}],line:45},"2":{loc:{start:{line:49,column:8},end:{line:51,column:9}},type:"if",locations:[{start:{line:49,column:8},end:{line:51,column:9}},{start:{line:49,column:8},end:{line:51,column:9}}],line:49}},s:{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},f:{"0":0,"1":0,"2":0},b:{"0":[0,0],"1":[0,0],"2":[0,0]},inputSourceMap:{version:3,file:"baseinputcontrol.js",sourceRoot:"",sources:["../../../../projects/sac-common/src/common/baseinputcontrol.ts"],names:[],mappings:"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;;AAEzD;;GAEG;AACH,MACsB,YAAoB,SAAQ,mBAA0B;IAD5E;;QAEE,qBAAqB;QAErB;;WAEG;QACa,iBAAY,GAAW,EAAE,CAAC;QAC1C;;WAEG;QACa,wBAAmB,GAAY,KAAK,CAAC;QACrD;;WAEG;QACa,eAAU,GAAY,KAAK,CAAC;QAC5C;;WAEG;QACa,gBAAW,GAAW,IAAI,CAAC;QAC3C;;WAEG;QACa,aAAQ,GAAY,KAAK,CAAC;KA6C3C;IAvCC,wBAAwB;IAExB,yBAAyB;IAEzB;;OAEG;IACI,UAAU,CAAC,KAAoB;QACpC,sCAAsC;QACtC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,OAAO,IAAI,CAAC;SACb;QAED,iBAAiB;QACjB,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC;QAC5B,mEAAmE;QACnE,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YAC5C,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,MAA0B,CAAC;QAEtD,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,cAAc,EAAE,SAAS,CAAC,EAAE;YACtE,KAAK,CAAC,cAAc,EAAE,CAAC;SACxB;IACH,CAAC;IAED,4BAA4B;IAE5B,4BAA4B;IAE5B;;OAEG;IACO,oBAAoB,CAAC,QAAgB,EAAE,SAAiB;QAChE,OAAO,IAAI,CAAC;IACd,CAAC;+GAhEmB,YAAY;mGAAZ,YAAY;;SAAZ,YAAY;4FAAZ,YAAY;kBADjC,SAAS;8BAOQ,YAAY;sBAA3B,KAAK;gBAIU,mBAAmB;sBAAlC,KAAK;gBAIU,UAAU;sBAAzB,KAAK;gBAIU,WAAW;sBAA1B,KAAK;gBAIU,QAAQ;sBAAvB,KAAK;gBAIU,eAAe;sBAA9B,KAAK",sourcesContent:["import { Directive, Input } from '@angular/core';\r\nimport { SacBaseModelControl } from './basemodelcontrol';\r\n\r\n/**\r\n * Abstract Klasse f\xFCr SacInputBase. Extendes SacBaseModelControl\r\n */\r\n@Directive()\r\nexport abstract class SacInputBase<VALUE> extends SacBaseModelControl<VALUE> {\r\n // #region Properties\r\n\r\n /**\r\n * Erlaubte Zeichen bei der Eingabe\r\n */\r\n @Input() public allowedchars: string = '';\r\n /**\r\n * Autofill aktivieren oder deaktivieren\r\n */\r\n @Input() public disableautocomplete: boolean = false;\r\n /**\r\n * Definiert das Control als Required\r\n */\r\n @Input() public isrequired: boolean = false;\r\n /**\r\n * TextBox Placeholder\r\n */\r\n @Input() public placeholder: string = null;\r\n /**\r\n * Macht das Input readonly\r\n */\r\n @Input() public readonly: boolean = false;\r\n /**\r\n * Definiert das Feld als valid/invalid von eingegebenen regex-pattern\r\n */\r\n @Input() public regexvalidation: string;\r\n\r\n // #endregion Properties\r\n\r\n // #region Public Methods\r\n\r\n /**\r\n * Methode validiert Input wenn KeyPress-Event passiert\r\n */\r\n public onKeyPress(event: KeyboardEvent): Boolean {\r\n // Cancel wenn _allowedChars leer ist.\r\n if (this.allowedchars.length === 0) {\r\n return true;\r\n }\r\n\r\n // Validate Input\r\n const character = event.key;\r\n // Zeichen in Allowed Chars nicht gefunden, Event nicht weitergeben\r\n if (this.allowedchars.indexOf(character) < 0) {\r\n event.preventDefault();\r\n }\r\n\r\n const inputControl = event.target as HTMLInputElement;\r\n\r\n if (!this.OnKeyPressValidation(inputControl.selectionStart, character)) {\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n // #endregion Public Methods\r\n\r\n // #region Protected Methods\r\n\r\n /**\r\n * Methode validiert wenn ein Dr\xFCck-Event passiert\r\n */\r\n protected OnKeyPressValidation(position: number, character: string): boolean {\r\n return true;\r\n }\r\n\r\n // #endregion Protected Methods\r\n}\r\n"]},_coverageSchema:"1a1c01bbd47fc00a2c39e90264f33305004495a9",hash:"19f559e48f98ba5bfe46ee8ad78a82ee2af3d833"};var coverage=global[gcv]||(global[gcv]={});if(!coverage[path]||coverage[path].hash!==hash){coverage[path]=coverageData;}var actualCoverage=coverage[path];{// @ts-ignore
|
|
2
2
|
cov_1jbakzt3dx=function(){return actualCoverage;};}return actualCoverage;}cov_1jbakzt3dx();import{Directive,Input}from'@angular/core';import{SacBaseModelControl}from'./basemodelcontrol';import*as i0 from"@angular/core";/**
|
|
3
3
|
* Abstract Klasse für SacInputBase. Extendes SacBaseModelControl
|
|
4
4
|
*/class SacInputBase extends SacBaseModelControl{constructor(){cov_1jbakzt3dx().f[0]++;cov_1jbakzt3dx().s[0]++;super(...arguments);// #region Properties
|
|
@@ -12,18 +12,16 @@ cov_1jbakzt3dx=function(){return actualCoverage;};}return actualCoverage;}cov_1j
|
|
|
12
12
|
* TextBox Placeholder
|
|
13
13
|
*/cov_1jbakzt3dx().s[4]++;this.placeholder=null;/**
|
|
14
14
|
* Macht das Input readonly
|
|
15
|
-
*/cov_1jbakzt3dx().s[5]++;this.readonly=false
|
|
16
|
-
* Text welcher als Tooltip angezeigt wird.
|
|
17
|
-
*/cov_1jbakzt3dx().s[6]++;this.tooltiptext='';}// #endregion Properties
|
|
15
|
+
*/cov_1jbakzt3dx().s[5]++;this.readonly=false;}// #endregion Properties
|
|
18
16
|
// #region Public Methods
|
|
19
17
|
/**
|
|
20
18
|
* Methode validiert Input wenn KeyPress-Event passiert
|
|
21
|
-
*/onKeyPress(event){cov_1jbakzt3dx().f[1]++;cov_1jbakzt3dx().s[
|
|
22
|
-
if(this.allowedchars.length===0){cov_1jbakzt3dx().b[0][0]++;cov_1jbakzt3dx().s[
|
|
23
|
-
const character=(cov_1jbakzt3dx().s[
|
|
24
|
-
cov_1jbakzt3dx().s[
|
|
19
|
+
*/onKeyPress(event){cov_1jbakzt3dx().f[1]++;cov_1jbakzt3dx().s[6]++;// Cancel wenn _allowedChars leer ist.
|
|
20
|
+
if(this.allowedchars.length===0){cov_1jbakzt3dx().b[0][0]++;cov_1jbakzt3dx().s[7]++;return true;}else{cov_1jbakzt3dx().b[0][1]++;}// Validate Input
|
|
21
|
+
const character=(cov_1jbakzt3dx().s[8]++,event.key);// Zeichen in Allowed Chars nicht gefunden, Event nicht weitergeben
|
|
22
|
+
cov_1jbakzt3dx().s[9]++;if(this.allowedchars.indexOf(character)<0){cov_1jbakzt3dx().b[1][0]++;cov_1jbakzt3dx().s[10]++;event.preventDefault();}else{cov_1jbakzt3dx().b[1][1]++;}const inputControl=(cov_1jbakzt3dx().s[11]++,event.target);cov_1jbakzt3dx().s[12]++;if(!this.OnKeyPressValidation(inputControl.selectionStart,character)){cov_1jbakzt3dx().b[2][0]++;cov_1jbakzt3dx().s[13]++;event.preventDefault();}else{cov_1jbakzt3dx().b[2][1]++;}}// #endregion Public Methods
|
|
25
23
|
// #region Protected Methods
|
|
26
24
|
/**
|
|
27
25
|
* Methode validiert wenn ein Drück-Event passiert
|
|
28
|
-
*/OnKeyPressValidation(position,character){cov_1jbakzt3dx().f[2]++;cov_1jbakzt3dx().s[
|
|
29
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
26
|
+
*/OnKeyPressValidation(position,character){cov_1jbakzt3dx().f[2]++;cov_1jbakzt3dx().s[14]++;return true;}static{cov_1jbakzt3dx().s[15]++;this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacInputBase,deps:null,target:i0.ɵɵFactoryTarget.Directive});}static{cov_1jbakzt3dx().s[16]++;this.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"16.2.12",type:SacInputBase,inputs:{allowedchars:"allowedchars",disableautocomplete:"disableautocomplete",isrequired:"isrequired",placeholder:"placeholder",readonly:"readonly",regexvalidation:"regexvalidation"},usesInheritance:true,ngImport:i0});}}export{SacInputBase};cov_1jbakzt3dx().s[17]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacInputBase,decorators:[{type:Directive}],propDecorators:{allowedchars:[{type:Input}],disableautocomplete:[{type:Input}],isrequired:[{type:Input}],placeholder:[{type:Input}],readonly:[{type:Input}],regexvalidation:[{type:Input}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZWlucHV0Y29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbW1vbi9iYXNlaW5wdXRjb250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUV6RDs7R0FFRztBQUNILE1BQ3NCLFlBQW9CLFNBQVEsbUJBQTBCO0lBRDVFOztRQUVFLHFCQUFxQjtRQUVyQjs7V0FFRztRQUNhLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQzFDOztXQUVHO1FBQ2Esd0JBQW1CLEdBQVksS0FBSyxDQUFDO1FBQ3JEOztXQUVHO1FBQ2EsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1Qzs7V0FFRztRQUNhLGdCQUFXLEdBQVcsSUFBSSxDQUFDO1FBQzNDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLEtBQUssQ0FBQztLQTZDM0M7SUF2Q0Msd0JBQXdCO0lBRXhCLHlCQUF5QjtJQUV6Qjs7T0FFRztJQUNJLFVBQVUsQ0FBQyxLQUFvQjtRQUNwQyxzQ0FBc0M7UUFDdEMsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDbEMsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELGlCQUFpQjtRQUNqQixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQzVCLG1FQUFtRTtRQUNuRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM1QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDeEI7UUFFRCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsTUFBMEIsQ0FBQztRQUV0RCxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLEVBQUU7WUFDdEUsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVELDRCQUE0QjtJQUU1Qiw0QkFBNEI7SUFFNUI7O09BRUc7SUFDTyxvQkFBb0IsQ0FBQyxRQUFnQixFQUFFLFNBQWlCO1FBQ2hFLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzsrR0FoRW1CLFlBQVk7bUdBQVosWUFBWTs7U0FBWixZQUFZOzRGQUFaLFlBQVk7a0JBRGpDLFNBQVM7OEJBT1EsWUFBWTtzQkFBM0IsS0FBSztnQkFJVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBSVUsVUFBVTtzQkFBekIsS0FBSztnQkFJVSxXQUFXO3NCQUExQixLQUFLO2dCQUlVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBSVUsZUFBZTtzQkFBOUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2FjQmFzZU1vZGVsQ29udHJvbCB9IGZyb20gJy4vYmFzZW1vZGVsY29udHJvbCc7XHJcblxyXG4vKipcclxuICogQWJzdHJhY3QgS2xhc3NlIGbDvHIgU2FjSW5wdXRCYXNlLiBFeHRlbmRlcyBTYWNCYXNlTW9kZWxDb250cm9sXHJcbiAqL1xyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNhY0lucHV0QmFzZTxWQUxVRT4gZXh0ZW5kcyBTYWNCYXNlTW9kZWxDb250cm9sPFZBTFVFPiB7XHJcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8qKlxyXG4gICAqIEVybGF1YnRlIFplaWNoZW4gYmVpIGRlciBFaW5nYWJlXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGFsbG93ZWRjaGFyczogc3RyaW5nID0gJyc7XHJcbiAgLyoqXHJcbiAgICogQXV0b2ZpbGwgYWt0aXZpZXJlbiBvZGVyIGRlYWt0aXZpZXJlblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlYXV0b2NvbXBsZXRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogRGVmaW5pZXJ0IGRhcyBDb250cm9sIGFscyBSZXF1aXJlZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpc3JlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogVGV4dEJveCBQbGFjZWhvbGRlclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nID0gbnVsbDtcclxuICAvKipcclxuICAgKiBNYWNodCBkYXMgSW5wdXQgcmVhZG9ubHlcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAvKipcclxuICAgKiBEZWZpbmllcnQgZGFzIEZlbGQgYWxzIHZhbGlkL2ludmFsaWQgdm9uIGVpbmdlZ2ViZW5lbiByZWdleC1wYXR0ZXJuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHJlZ2V4dmFsaWRhdGlvbjogc3RyaW5nO1xyXG5cclxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHZhbGlkaWVydCBJbnB1dCB3ZW5uIEtleVByZXNzLUV2ZW50IHBhc3NpZXJ0XHJcbiAgICovXHJcbiAgcHVibGljIG9uS2V5UHJlc3MoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiBCb29sZWFuIHtcclxuICAgIC8vIENhbmNlbCB3ZW5uIF9hbGxvd2VkQ2hhcnMgbGVlciBpc3QuXHJcbiAgICBpZiAodGhpcy5hbGxvd2VkY2hhcnMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFZhbGlkYXRlIElucHV0XHJcbiAgICBjb25zdCBjaGFyYWN0ZXIgPSBldmVudC5rZXk7XHJcbiAgICAvLyBaZWljaGVuIGluIEFsbG93ZWQgQ2hhcnMgbmljaHQgZ2VmdW5kZW4sIEV2ZW50IG5pY2h0IHdlaXRlcmdlYmVuXHJcbiAgICBpZiAodGhpcy5hbGxvd2VkY2hhcnMuaW5kZXhPZihjaGFyYWN0ZXIpIDwgMCkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGlucHV0Q29udHJvbCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG5cclxuICAgIGlmICghdGhpcy5PbktleVByZXNzVmFsaWRhdGlvbihpbnB1dENvbnRyb2wuc2VsZWN0aW9uU3RhcnQsIGNoYXJhY3RlcikpIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcclxuXHJcbiAgLy8gI3JlZ2lvbiBQcm90ZWN0ZWQgTWV0aG9kc1xyXG5cclxuICAvKipcclxuICAgKiBNZXRob2RlIHZhbGlkaWVydCB3ZW5uIGVpbiBEcsO8Y2stRXZlbnQgcGFzc2llcnRcclxuICAgKi9cclxuICBwcm90ZWN0ZWQgT25LZXlQcmVzc1ZhbGlkYXRpb24ocG9zaXRpb246IG51bWJlciwgY2hhcmFjdGVyOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcm90ZWN0ZWQgTWV0aG9kc1xyXG59XHJcbiJdfQ==
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEaXJlY3RpdmUiLCJJbnB1dCIsIlNhY0Jhc2VNb2RlbENvbnRyb2wiLCJTYWNJbnB1dEJhc2UiLCJjb25zdHJ1Y3RvciIsImNvdl8xamJha3p0M2R4IiwiZiIsInMiLCJhbGxvd2VkY2hhcnMiLCJkaXNhYmxlYXV0b2NvbXBsZXRlIiwiaXNyZXF1aXJlZCIsInBsYWNlaG9sZGVyIiwicmVhZG9ubHkiLCJvbktleVByZXNzIiwiZXZlbnQiLCJsZW5ndGgiLCJiIiwiY2hhcmFjdGVyIiwia2V5IiwiaW5kZXhPZiIsInByZXZlbnREZWZhdWx0IiwiaW5wdXRDb250cm9sIiwidGFyZ2V0IiwiT25LZXlQcmVzc1ZhbGlkYXRpb24iLCJzZWxlY3Rpb25TdGFydCIsInBvc2l0aW9uIiwiZGVwcyIsImkwIiwiybXJtUZhY3RvcnlUYXJnZXQiLCJpbnB1dHMiLCJyZWdleHZhbGlkYXRpb24iLCJ1c2VzSW5oZXJpdGFuY2UiLCJuZ0ltcG9ydCIsImRlY29yYXRvcnMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21tb24vYmFzZWlucHV0Y29udHJvbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNhY0Jhc2VNb2RlbENvbnRyb2wgfSBmcm9tICcuL2Jhc2Vtb2RlbGNvbnRyb2wnO1xyXG5cclxuLyoqXHJcbiAqIEFic3RyYWN0IEtsYXNzZSBmw7xyIFNhY0lucHV0QmFzZS4gRXh0ZW5kZXMgU2FjQmFzZU1vZGVsQ29udHJvbFxyXG4gKi9cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYWNJbnB1dEJhc2U8VkFMVUU+IGV4dGVuZHMgU2FjQmFzZU1vZGVsQ29udHJvbDxWQUxVRT4ge1xyXG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xyXG5cclxuICAvKipcclxuICAgKiBFcmxhdWJ0ZSBaZWljaGVuIGJlaSBkZXIgRWluZ2FiZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhbGxvd2VkY2hhcnM6IHN0cmluZyA9ICcnO1xyXG4gIC8qKlxyXG4gICAqIEF1dG9maWxsIGFrdGl2aWVyZW4gb2RlciBkZWFrdGl2aWVyZW5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWF1dG9jb21wbGV0ZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIERlZmluaWVydCBkYXMgQ29udHJvbCBhbHMgUmVxdWlyZWRcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaXNyZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8qKlxyXG4gICAqIFRleHRCb3ggUGxhY2Vob2xkZXJcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyA9IG51bGw7XHJcbiAgLyoqXHJcbiAgICogTWFjaHQgZGFzIElucHV0IHJlYWRvbmx5XHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcbiAgLyoqXHJcbiAgICogRGVmaW5pZXJ0IGRhcyBGZWxkIGFscyB2YWxpZC9pbnZhbGlkIHZvbiBlaW5nZWdlYmVuZW4gcmVnZXgtcGF0dGVyblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWdleHZhbGlkYXRpb246IHN0cmluZztcclxuXHJcbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXHJcblxyXG4gIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcclxuXHJcbiAgLyoqXHJcbiAgICogTWV0aG9kZSB2YWxpZGllcnQgSW5wdXQgd2VubiBLZXlQcmVzcy1FdmVudCBwYXNzaWVydFxyXG4gICAqL1xyXG4gIHB1YmxpYyBvbktleVByZXNzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogQm9vbGVhbiB7XHJcbiAgICAvLyBDYW5jZWwgd2VubiBfYWxsb3dlZENoYXJzIGxlZXIgaXN0LlxyXG4gICAgaWYgKHRoaXMuYWxsb3dlZGNoYXJzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBWYWxpZGF0ZSBJbnB1dFxyXG4gICAgY29uc3QgY2hhcmFjdGVyID0gZXZlbnQua2V5O1xyXG4gICAgLy8gWmVpY2hlbiBpbiBBbGxvd2VkIENoYXJzIG5pY2h0IGdlZnVuZGVuLCBFdmVudCBuaWNodCB3ZWl0ZXJnZWJlblxyXG4gICAgaWYgKHRoaXMuYWxsb3dlZGNoYXJzLmluZGV4T2YoY2hhcmFjdGVyKSA8IDApIHtcclxuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBpbnB1dENvbnRyb2wgPSBldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudDtcclxuXHJcbiAgICBpZiAoIXRoaXMuT25LZXlQcmVzc1ZhbGlkYXRpb24oaW5wdXRDb250cm9sLnNlbGVjdGlvblN0YXJ0LCBjaGFyYWN0ZXIpKSB7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXHJcblxyXG4gIC8vICNyZWdpb24gUHJvdGVjdGVkIE1ldGhvZHNcclxuXHJcbiAgLyoqXHJcbiAgICogTWV0aG9kZSB2YWxpZGllcnQgd2VubiBlaW4gRHLDvGNrLUV2ZW50IHBhc3NpZXJ0XHJcbiAgICovXHJcbiAgcHJvdGVjdGVkIE9uS2V5UHJlc3NWYWxpZGF0aW9uKHBvc2l0aW9uOiBudW1iZXIsIGNoYXJhY3Rlcjogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8vICNlbmRyZWdpb24gUHJvdGVjdGVkIE1ldGhvZHNcclxufVxyXG4iXSwibWFwcGluZ3MiOiI7MkZBQUEsT0FBU0EsU0FBUyxDQUFFQyxLQUFLLEtBQVEsZUFBZSxDQUNoRCxPQUFTQyxtQkFB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
|