@kms-ngx-ui/presentational 0.0.24 → 14.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -28
- package/{esm2015/kms-ngx-ui-presentational.js → esm2020/kms-ngx-ui-presentational.mjs} +4 -4
- package/esm2020/lib/directives/directives.module.mjs +40 -0
- package/{esm2015/lib/directives/mousewheel.directive.js → esm2020/lib/directives/mousewheel.directive.mjs} +56 -56
- package/{esm2015/lib/directives/sum-of-height.directive.js → esm2020/lib/directives/sum-of-height.directive.mjs} +74 -74
- package/{esm2015/lib/directives/swipe.directive.js → esm2020/lib/directives/swipe.directive.mjs} +183 -183
- package/esm2020/lib/directives/swipe.model.mjs +5 -0
- package/{esm2015/lib/directives/tooltip.directive.js → esm2020/lib/directives/tooltip.directive.mjs} +144 -144
- package/esm2020/lib/kms-ngx-ui-presentational.component.mjs +22 -0
- package/{esm2015/lib/kms-ngx-ui-presentational.module.js → esm2020/lib/kms-ngx-ui-presentational.module.mjs} +215 -217
- package/{esm2015/lib/kms-ngx-ui-presentational.service.js → esm2020/lib/kms-ngx-ui-presentational.service.mjs} +14 -14
- package/esm2020/lib/models/address.model.mjs +6 -0
- package/{esm2015/lib/models/iconSize.enum.js → esm2020/lib/models/iconSize.enum.mjs} +17 -17
- package/{esm2015/lib/models/image-snippet.model.js → esm2020/lib/models/image-snippet.model.mjs} +18 -18
- package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +5 -5
- package/{esm2015/lib/models/is-value.function.js → esm2020/lib/models/is-value.function.mjs} +17 -17
- package/{esm2015/lib/models/salutation.enum.js → esm2020/lib/models/salutation.enum.mjs} +8 -8
- package/{esm2015/lib/models/types/attached-file-dto.model.js → esm2020/lib/models/types/attached-file-dto.model.mjs} +6 -6
- package/{esm2015/lib/models/types/nullable.type.js → esm2020/lib/models/types/nullable.type.mjs} +5 -5
- package/{esm2015/lib/parent-components/actions.component.js → esm2020/lib/parent-components/actions.component.mjs} +56 -56
- package/esm2020/lib/parent-components/form-control.component.mjs +75 -0
- package/esm2020/lib/parent-components/form.component.mjs +78 -0
- package/{esm2015/lib/pipes/custom-pipes.module.js → esm2020/lib/pipes/custom-pipes.module.mjs} +71 -71
- package/esm2020/lib/pipes/decode-uri.pipe.mjs +19 -0
- package/esm2020/lib/pipes/encode-uri.pipe.mjs +19 -0
- package/{esm2015/lib/pipes/integer-currency.pipe.js → esm2020/lib/pipes/integer-currency.pipe.mjs} +27 -27
- package/{esm2015/lib/pipes/safe-html.pipe.js → esm2020/lib/pipes/safe-html.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/safe-resource-url.pipe.js → esm2020/lib/pipes/safe-resource-url.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/safe-style.pipe.js → esm2020/lib/pipes/safe-style.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/safe-url.pipe.js → esm2020/lib/pipes/safe-url.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/to-number.pipe.js → esm2020/lib/pipes/to-number.pipe.mjs} +23 -23
- package/{esm2015/lib/pipes/trim.pipe.js → esm2020/lib/pipes/trim.pipe.mjs} +20 -20
- package/{esm2015/lib/pipes/typeof.pipe.js → esm2020/lib/pipes/typeof.pipe.mjs} +16 -16
- package/esm2020/lib/services/viewport.service.mjs +216 -0
- package/esm2020/lib/ui/back-to-top/back-to-top.component.mjs +49 -0
- package/{esm2015/lib/ui/button-with-confirm-dialog/button-response-types.enum.js → esm2020/lib/ui/button-with-confirm-dialog/button-response-types.enum.mjs} +6 -6
- package/esm2020/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.mjs +58 -0
- package/{esm2015/lib/ui/button-with-confirm-dialog/dialog-data.model.js → esm2020/lib/ui/button-with-confirm-dialog/dialog-data.model.mjs} +2 -2
- package/esm2020/lib/ui/checkbox/checkbox.component.mjs +71 -0
- package/esm2020/lib/ui/color-input/color-input.component.mjs +76 -0
- package/esm2020/lib/ui/dropdown-from-data/dropdown-from-data.component.mjs +165 -0
- package/esm2020/lib/ui/enum-radiogroup/enum-radiogroup.component.mjs +53 -0
- package/esm2020/lib/ui/file-input/file-input.component.mjs +232 -0
- package/esm2020/lib/ui/flyout/flyout.component.mjs +119 -0
- package/esm2020/lib/ui/generic-dialog/generic-dialog.component.mjs +54 -0
- package/esm2020/lib/ui/icon/icon.component.mjs +48 -0
- package/esm2020/lib/ui/icon/iconSize.enum.mjs +17 -0
- package/esm2020/lib/ui/image-slider/image-slider.component.mjs +189 -0
- package/esm2020/lib/ui/kms-accordion-item/kms-accordion-item.component.mjs +40 -0
- package/esm2020/lib/ui/loader/loader.component.mjs +21 -0
- package/esm2020/lib/ui/map/map.component.mjs +116 -0
- package/esm2020/lib/ui/radiobutton/radiobutton.component.mjs +73 -0
- package/esm2020/lib/ui/salutation-dropdown/salutation-dropdown.component.mjs +55 -0
- package/esm2020/lib/ui/salutation-radiogroup/salutation-radiogroup.component.mjs +49 -0
- package/esm2020/lib/ui/time-input/time-input.component.mjs +83 -0
- package/esm2020/lib/ui/tooltip/tooltip.component.mjs +16 -0
- package/esm2020/lib/ui/tooltip-icon/tooltip-icon.component.mjs +35 -0
- package/esm2020/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.mjs +82 -0
- package/esm2020/public-api.mjs +49 -0
- package/fesm2015/kms-ngx-ui-presentational.mjs +3013 -0
- package/fesm2015/kms-ngx-ui-presentational.mjs.map +1 -0
- package/{fesm2015/kms-ngx-ui-presentational.js → fesm2020/kms-ngx-ui-presentational.mjs} +2894 -3108
- package/fesm2020/kms-ngx-ui-presentational.mjs.map +1 -0
- package/{kms-ngx-ui-presentational.d.ts → index.d.ts} +5 -5
- package/lib/directives/directives.module.d.ts +11 -13
- package/lib/directives/mousewheel.directive.d.ts +15 -15
- package/lib/directives/sum-of-height.directive.d.ts +31 -31
- package/lib/directives/swipe.directive.d.ts +45 -45
- package/lib/directives/swipe.model.d.ts +49 -49
- package/lib/directives/tooltip.directive.d.ts +29 -29
- package/lib/kms-ngx-ui-presentational.component.d.ts +8 -8
- package/lib/kms-ngx-ui-presentational.module.d.ts +47 -47
- package/lib/kms-ngx-ui-presentational.service.d.ts +6 -6
- package/lib/models/address.model.d.ts +14 -14
- package/lib/models/iconSize.enum.d.ts +15 -15
- package/lib/models/image-snippet.model.d.ts +15 -15
- package/lib/models/index.d.ts +4 -4
- package/lib/models/is-value.function.d.ts +9 -9
- package/lib/models/salutation.enum.d.ts +5 -5
- package/lib/models/types/attached-file-dto.model.d.ts +11 -11
- package/lib/models/types/nullable.type.d.ts +4 -4
- package/lib/parent-components/actions.component.d.ts +31 -31
- package/lib/parent-components/form-control.component.d.ts +27 -27
- package/lib/parent-components/form.component.d.ts +34 -40
- package/lib/pipes/custom-pipes.module.d.ts +17 -17
- package/lib/pipes/decode-uri.pipe.d.ts +10 -10
- package/lib/pipes/encode-uri.pipe.d.ts +10 -10
- package/lib/pipes/integer-currency.pipe.d.ts +13 -13
- package/lib/pipes/safe-html.pipe.d.ts +13 -13
- package/lib/pipes/safe-resource-url.pipe.d.ts +13 -13
- package/lib/pipes/safe-style.pipe.d.ts +13 -13
- package/lib/pipes/safe-url.pipe.d.ts +13 -13
- package/lib/pipes/to-number.pipe.d.ts +10 -10
- package/lib/pipes/trim.pipe.d.ts +10 -10
- package/lib/pipes/typeof.pipe.d.ts +7 -7
- package/lib/services/viewport.service.d.ts +74 -83
- package/lib/ui/back-to-top/back-to-top.component.d.ts +10 -10
- package/lib/ui/button-with-confirm-dialog/button-response-types.enum.d.ts +4 -4
- package/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.d.ts +19 -19
- package/lib/ui/button-with-confirm-dialog/dialog-data.model.d.ts +9 -9
- package/lib/ui/checkbox/checkbox.component.d.ts +31 -31
- package/lib/ui/color-input/color-input.component.d.ts +19 -19
- package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +55 -55
- package/lib/ui/enum-radiogroup/enum-radiogroup.component.d.ts +17 -17
- package/lib/ui/file-input/file-input.component.d.ts +89 -89
- package/lib/ui/flyout/flyout.component.d.ts +32 -32
- package/lib/ui/generic-dialog/generic-dialog.component.d.ts +26 -26
- package/lib/ui/icon/icon.component.d.ts +42 -48
- package/lib/ui/icon/iconSize.enum.d.ts +15 -25
- package/lib/ui/image-slider/image-slider.component.d.ts +62 -62
- package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +22 -22
- package/lib/ui/loader/loader.component.d.ts +9 -9
- package/lib/ui/map/map.component.d.ts +70 -69
- package/lib/ui/radiobutton/radiobutton.component.d.ts +26 -27
- package/lib/ui/salutation-dropdown/salutation-dropdown.component.d.ts +17 -17
- package/lib/ui/salutation-radiogroup/salutation-radiogroup.component.d.ts +15 -15
- package/lib/ui/time-input/time-input.component.d.ts +22 -22
- package/lib/ui/tooltip/tooltip.component.d.ts +6 -6
- package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +13 -13
- package/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.d.ts +27 -27
- package/package.json +27 -14
- package/public-api.d.ts +45 -46
- package/src/lib/ui/back-to-top/back-to-top.component.scss +46 -45
- package/src/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.scss +2 -2
- package/src/lib/ui/checkbox/checkbox.component.scss +48 -48
- package/src/lib/ui/color-input/color-input.component.scss +38 -38
- package/src/lib/ui/file-input/file-input.component.scss +2 -2
- package/src/lib/ui/flyout/flyout.component.scss +34 -34
- package/src/lib/ui/generic-dialog/generic-dialog.component.scss +59 -59
- package/src/lib/ui/icon/icon.component.scss +148 -114
- package/src/lib/ui/image-slider/image-slider.component.scss +219 -219
- package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.scss +95 -95
- package/src/lib/ui/radiobutton/radiobutton.component.scss +31 -31
- package/src/lib/ui/time-input/time-input.component.scss +10 -10
- package/src/lib/ui/tooltip/tooltip.component.scss +26 -26
- package/src/lib/ui/tooltip-icon/tooltip-icon.component.scss +2 -2
- package/src/styles/mixins.scss +8 -8
- package/src/styles/styles.scss +30 -31
- package/bundles/kms-ngx-ui-presentational.umd.js +0 -3751
- package/bundles/kms-ngx-ui-presentational.umd.js.map +0 -1
- package/esm2015/lib/directives/directives.module.js +0 -45
- package/esm2015/lib/directives/size.directive.js +0 -21
- package/esm2015/lib/directives/swipe.model.js +0 -5
- package/esm2015/lib/kms-ngx-ui-presentational.component.js +0 -26
- package/esm2015/lib/models/address.model.js +0 -6
- package/esm2015/lib/parent-components/colorable.component.js +0 -35
- package/esm2015/lib/parent-components/form-control.component.js +0 -76
- package/esm2015/lib/parent-components/form.component.js +0 -99
- package/esm2015/lib/pipes/decode-uri.pipe.js +0 -19
- package/esm2015/lib/pipes/encode-uri.pipe.js +0 -19
- package/esm2015/lib/services/viewport.service.js +0 -242
- package/esm2015/lib/ui/back-to-top/back-to-top.component.js +0 -52
- package/esm2015/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.js +0 -62
- package/esm2015/lib/ui/checkbox/checkbox.component.js +0 -76
- package/esm2015/lib/ui/color-input/color-input.component.js +0 -81
- package/esm2015/lib/ui/dropdown-from-data/dropdown-from-data.component.js +0 -169
- package/esm2015/lib/ui/enum-radiogroup/enum-radiogroup.component.js +0 -57
- package/esm2015/lib/ui/file-input/file-input.component.js +0 -237
- package/esm2015/lib/ui/flyout/flyout.component.js +0 -125
- package/esm2015/lib/ui/generic-dialog/generic-dialog.component.js +0 -58
- package/esm2015/lib/ui/icon/icon.component.js +0 -55
- package/esm2015/lib/ui/icon/iconSize.enum.js +0 -28
- package/esm2015/lib/ui/image-slider/image-slider.component.js +0 -193
- package/esm2015/lib/ui/kms-accordion-item/kms-accordion-item.component.js +0 -44
- package/esm2015/lib/ui/loader/loader.component.js +0 -25
- package/esm2015/lib/ui/map/map.component.js +0 -120
- package/esm2015/lib/ui/radiobutton/radiobutton.component.js +0 -82
- package/esm2015/lib/ui/salutation-dropdown/salutation-dropdown.component.js +0 -59
- package/esm2015/lib/ui/salutation-radiogroup/salutation-radiogroup.component.js +0 -53
- package/esm2015/lib/ui/time-input/time-input.component.js +0 -88
- package/esm2015/lib/ui/tooltip/tooltip.component.js +0 -20
- package/esm2015/lib/ui/tooltip-icon/tooltip-icon.component.js +0 -40
- package/esm2015/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.js +0 -86
- package/esm2015/public-api.js +0 -50
- package/fesm2015/kms-ngx-ui-presentational.js.map +0 -1
- package/lib/directives/size.directive.d.ts +0 -10
- package/lib/parent-components/colorable.component.d.ts +0 -10
- package/src/styles/animations.scss +0 -47
package/{esm2015/lib/directives/tooltip.directive.js → esm2020/lib/directives/tooltip.directive.mjs}
RENAMED
|
@@ -1,144 +1,144 @@
|
|
|
1
|
-
import { Directive, Input, HostListener } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class TooltipDirective {
|
|
4
|
-
constructor(el, renderer) {
|
|
5
|
-
this.el = el;
|
|
6
|
-
this.renderer = renderer;
|
|
7
|
-
this.tooltipTitle = "";
|
|
8
|
-
this.tooltipText = "";
|
|
9
|
-
this.tooltipLinkText = "";
|
|
10
|
-
this.tooltipLinkUrl = "";
|
|
11
|
-
this.tooltipPlacement = "bottom";
|
|
12
|
-
this.tooltipDelay = 1000;
|
|
13
|
-
this.tooltipPlaceIntoHost = false;
|
|
14
|
-
this.tooltipOnlyonclick = false;
|
|
15
|
-
this.offset = 0;
|
|
16
|
-
}
|
|
17
|
-
onMouseEnter() {
|
|
18
|
-
if (!this.tooltipOnlyonclick) {
|
|
19
|
-
this.show();
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
onClick() {
|
|
23
|
-
if (this.tooltipOnlyonclick) {
|
|
24
|
-
this.show();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
onMouseLeave() {
|
|
28
|
-
if (this.tooltipElem) {
|
|
29
|
-
this.hide();
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
show() {
|
|
33
|
-
if (!this.tooltipElem) {
|
|
34
|
-
this.create();
|
|
35
|
-
this.setPosition();
|
|
36
|
-
}
|
|
37
|
-
this.renderer.addClass(this.tooltipElem, 'tooltip-show');
|
|
38
|
-
}
|
|
39
|
-
hide() {
|
|
40
|
-
this.renderer.removeClass(this.tooltipElem, 'tooltip-show');
|
|
41
|
-
window.setTimeout(() => {
|
|
42
|
-
}, this.tooltipDelay);
|
|
43
|
-
}
|
|
44
|
-
create() {
|
|
45
|
-
this.tooltipElem = this.renderer.createElement('kms-tooltip-element');
|
|
46
|
-
this.tooltipTitleElem = this.renderer.createElement('b');
|
|
47
|
-
this.renderer.appendChild(this.tooltipTitleElem, this.renderer.createText(this.tooltipTitle));
|
|
48
|
-
this.renderer.appendChild(this.tooltipElem, this.tooltipTitleElem);
|
|
49
|
-
this.tooltipTextElem = this.renderer.createElement('div');
|
|
50
|
-
this.renderer.appendChild(this.tooltipTextElem, this.renderer.createText(this.tooltipText));
|
|
51
|
-
this.renderer.appendChild(this.tooltipElem, this.tooltipTextElem);
|
|
52
|
-
this.tooltipLinkElem = this.renderer.createElement('a');
|
|
53
|
-
this.renderer.setAttribute(this.tooltipLinkElem, 'href', this.tooltipLinkUrl);
|
|
54
|
-
this.renderer.appendChild(this.tooltipLinkElem, this.renderer.createText(this.tooltipLinkText));
|
|
55
|
-
this.renderer.appendChild(this.tooltipElem, this.tooltipLinkElem);
|
|
56
|
-
if (this.tooltipPlaceIntoHost) {
|
|
57
|
-
this.renderer.appendChild(this.el.nativeElement, this.tooltipElem);
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
this.renderer.appendChild(document.body, this.tooltipElem);
|
|
61
|
-
}
|
|
62
|
-
this.renderer.addClass(this.tooltipElem, 'tooltip');
|
|
63
|
-
this.renderer.addClass(this.tooltipElem, `tooltip-${this.tooltipPlacement}`);
|
|
64
|
-
this.renderer.setStyle(this.tooltipElem, '-webkit-transition', `opacity ${this.tooltipDelay}ms`);
|
|
65
|
-
this.renderer.setStyle(this.tooltipElem, '-moz-transition', `opacity ${this.tooltipDelay}ms`);
|
|
66
|
-
this.renderer.setStyle(this.tooltipElem, '-o-transition', `opacity ${this.tooltipDelay}ms`);
|
|
67
|
-
this.renderer.setStyle(this.tooltipElem, 'transition', `opacity ${this.tooltipDelay}ms`);
|
|
68
|
-
}
|
|
69
|
-
setPosition() {
|
|
70
|
-
if (this.tooltipElem) {
|
|
71
|
-
const hostPos = this.el.nativeElement.getBoundingClientRect();
|
|
72
|
-
const tooltipPos = this.tooltipElem.getBoundingClientRect();
|
|
73
|
-
let top, left;
|
|
74
|
-
if (this.tooltipPlaceIntoHost) {
|
|
75
|
-
left = 0;
|
|
76
|
-
top = hostPos.height;
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
const scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
|
80
|
-
if (this.tooltipPlacement === 'top') {
|
|
81
|
-
top = hostPos.top - tooltipPos.height - this.offset;
|
|
82
|
-
left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
|
|
83
|
-
}
|
|
84
|
-
if (!this.tooltipPlacement || this.tooltipPlacement === 'bottom') {
|
|
85
|
-
top = hostPos.bottom + this.offset;
|
|
86
|
-
left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
|
|
87
|
-
}
|
|
88
|
-
if (this.tooltipPlacement === 'left') {
|
|
89
|
-
top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
|
|
90
|
-
left = hostPos.left - tooltipPos.width - this.offset;
|
|
91
|
-
}
|
|
92
|
-
if (this.tooltipPlacement === 'right') {
|
|
93
|
-
top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
|
|
94
|
-
left = hostPos.right + this.offset;
|
|
95
|
-
}
|
|
96
|
-
top += scrollPos;
|
|
97
|
-
}
|
|
98
|
-
this.renderer.setStyle(this.tooltipElem, 'top', `${top}px`);
|
|
99
|
-
this.renderer.setStyle(this.tooltipElem, 'left', `${left}px`);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
104
|
-
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
105
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
106
|
-
type: Directive,
|
|
107
|
-
args: [{
|
|
108
|
-
selector: '[kmsTooltip]'
|
|
109
|
-
}]
|
|
110
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { tooltipTitle: [{
|
|
111
|
-
type: Input,
|
|
112
|
-
args: ['tooltipTitle']
|
|
113
|
-
}], tooltipText: [{
|
|
114
|
-
type: Input,
|
|
115
|
-
args: ['tooltipText']
|
|
116
|
-
}], tooltipLinkText: [{
|
|
117
|
-
type: Input,
|
|
118
|
-
args: ['tooltipLinkText']
|
|
119
|
-
}], tooltipLinkUrl: [{
|
|
120
|
-
type: Input,
|
|
121
|
-
args: ['tooltipLinkUrl']
|
|
122
|
-
}], tooltipPlacement: [{
|
|
123
|
-
type: Input,
|
|
124
|
-
args: ['tooltipPlacement']
|
|
125
|
-
}], tooltipDelay: [{
|
|
126
|
-
type: Input,
|
|
127
|
-
args: ['tooltipDelay']
|
|
128
|
-
}], tooltipPlaceIntoHost: [{
|
|
129
|
-
type: Input,
|
|
130
|
-
args: ['tooltipPlaceIntoHost']
|
|
131
|
-
}], tooltipOnlyonclick: [{
|
|
132
|
-
type: Input,
|
|
133
|
-
args: ['tooltipOnlyonclick']
|
|
134
|
-
}], onMouseEnter: [{
|
|
135
|
-
type: HostListener,
|
|
136
|
-
args: ['mouseenter']
|
|
137
|
-
}], onClick: [{
|
|
138
|
-
type: HostListener,
|
|
139
|
-
args: ['click']
|
|
140
|
-
}], onMouseLeave: [{
|
|
141
|
-
type: HostListener,
|
|
142
|
-
args: ['mouseleave']
|
|
143
|
-
}] } });
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxZQUFZLEVBQWEsTUFBTSxlQUFlLENBQUM7O0FBS3RGLE1BQU0sT0FBTyxnQkFBZ0I7SUFnQnpCLFlBQW9CLEVBQWMsRUFBVSxRQUFtQjtRQUEzQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWZ4QyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNuQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNiLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHFCQUFnQixHQUFHLFFBQVEsQ0FBQztRQUNoQyxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNaLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUMvQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFNeEQsV0FBTSxHQUFHLENBQUMsQ0FBQztJQUlYLENBQUM7SUFFMkIsWUFBWTtRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQUU7SUFDbEQsQ0FBQztJQUVzQixPQUFPO1FBQzFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQUU7SUFDakQsQ0FBQztJQUUyQixZQUFZO1FBQ3BDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUFFO0lBQzFDLENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxD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QUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQztTQUNqRTtJQUNMLENBQUM7OzhHQWxIUSxnQkFBZ0I7a0dBQWhCLGdCQUFnQjs0RkFBaEIsZ0JBQWdCO2tCQUg1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO2lCQUMzQjt5SEFFMEIsWUFBWTtzQkFBbEMsS0FBSzt1QkFBQyxjQUFjO2dCQUNDLFdBQVc7c0JBQWhDLEtBQUs7dUJBQUMsYUFBYTtnQkFDTSxlQUFlO3NCQUF4QyxLQUFLO3VCQUFDLGlCQUFpQjtnQkFDQyxjQUFjO3NCQUF0QyxLQUFLO3VCQUFDLGdCQUFnQjtnQkFDSSxnQkFBZ0I7c0JBQTFDLEtBQUs7dUJBQUMsa0JBQWtCO2dCQUNGLFlBQVk7c0JBQWxDLEtBQUs7dUJBQUMsY0FBYztnQkFDVSxvQkFBb0I7c0JBQWxELEtBQUs7dUJBQUMsc0JBQXNCO2dCQUNBLGtCQUFrQjtzQkFBOUMsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBWUMsWUFBWTtzQkFBdkMsWUFBWTt1QkFBQyxZQUFZO2dCQUlILE9BQU87c0JBQTdCLFlBQVk7dUJBQUMsT0FBTztnQkFJTyxZQUFZO3NCQUF2QyxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1trbXNUb29sdGlwXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFRvb2x0aXBEaXJlY3RpdmUge1xyXG4gICAgQElucHV0KCd0b29sdGlwVGl0bGUnKSB0b29sdGlwVGl0bGUgPSBcIlwiO1xyXG4gICAgQElucHV0KCd0b29sdGlwVGV4dCcpIHRvb2x0aXBUZXh0ID0gXCJcIjtcclxuICAgIEBJbnB1dCgndG9vbHRpcExpbmtUZXh0JykgdG9vbHRpcExpbmtUZXh0ID0gXCJcIjtcclxuICAgIEBJbnB1dCgndG9vbHRpcExpbmtVcmwnKSB0b29sdGlwTGlua1VybCA9IFwiXCI7XHJcbiAgICBASW5wdXQoJ3Rvb2x0aXBQbGFjZW1lbnQnKSB0b29sdGlwUGxhY2VtZW50ID0gXCJib3R0b21cIjtcclxuICAgIEBJbnB1dCgndG9vbHRpcERlbGF5JykgdG9vbHRpcERlbGF5ID0gMTAwMDtcclxuICAgIEBJbnB1dCgndG9vbHRpcFBsYWNlSW50b0hvc3QnKSB0b29sdGlwUGxhY2VJbnRvSG9zdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCd0b29sdGlwT25seW9uY2xpY2snKSB0b29sdGlwT25seW9uY2xpY2sgPSBmYWxzZTtcclxuXHJcbiAgICB0b29sdGlwRWxlbT86IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xyXG4gICAgdG9vbHRpcExpbmtFbGVtPzogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQ7XHJcbiAgICB0b29sdGlwVGl0bGVFbGVtPzogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQ7XHJcbiAgICB0b29sdGlwVGV4dEVsZW0/OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcclxuICAgIG9mZnNldCA9IDA7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKSBvbk1vdXNlRW50ZXIoKSB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnRvb2x0aXBPbmx5b25jbGljaykgeyB0aGlzLnNob3coKTsgfVxyXG4gICAgfVxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJykgb25DbGljaygpIHtcclxuICAgICAgICBpZiAodGhpcy50b29sdGlwT25seW9uY2xpY2spIHsgdGhpcy5zaG93KCk7IH1cclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgb25Nb3VzZUxlYXZlKCkge1xyXG4gICAgICAgIGlmICh0aGlzLnRvb2x0aXBFbGVtKSB7IHRoaXMuaGlkZSgpOyB9XHJcbiAgICB9XHJcblxyXG4gICAgc2hvdygpIHtcclxuICAgICAgICBpZiAoIXRoaXMudG9vbHRpcEVsZW0pe1xyXG4gICAgICAgICAgICB0aGlzLmNyZWF0ZSgpO1xyXG4gICAgICAgICAgICB0aGlzLnNldFBvc2l0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwRWxlbSwgJ3Rvb2x0aXAtc2hvdycpO1xyXG4gICAgfVxyXG5cclxuICAgIGhpZGUoKSB7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLnRvb2x0aXBFbGVtLCAndG9vbHRpcC1zaG93Jyk7XHJcbiAgICAgICAgd2luZG93LnNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIH0sIHRoaXMudG9vbHRpcERlbGF5KTtcclxuICAgIH1cclxuXHJcbiAgICBjcmVhdGUoKSB7XHJcbiAgICAgICAgdGhpcy50b29sdGlwRWxlbSA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgna21zLXRvb2x0aXAtZWxlbWVudCcpO1xyXG5cclxuICAgICAgICB0aGlzLnRvb2x0aXBUaXRsZUVsZW0gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2InKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudG9vbHRpcFRpdGxlRWxlbSwgdGhpcy5yZW5kZXJlci5jcmVhdGVUZXh0KHRoaXMudG9vbHRpcFRpdGxlKSk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnRvb2x0aXBFbGVtLCB0aGlzLnRvb2x0aXBUaXRsZUVsZW0pO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMudG9vbHRpcFRleHRFbGVtID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudG9vbHRpcFRleHRFbGVtLCB0aGlzLnJlbmRlcmVyLmNyZWF0ZVRleHQodGhpcy50b29sdGlwVGV4dCkpO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy50b29sdGlwRWxlbSwgdGhpcy50b29sdGlwVGV4dEVsZW0pO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMudG9vbHRpcExpbmtFbGVtID0gdGhpcy5yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdhJyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy50b29sdGlwTGlua0VsZW0sICdocmVmJywgdGhpcy50b29sdGlwTGlua1VybCk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnRvb2x0aXBMaW5rRWxlbSwgdGhpcy5yZW5kZXJlci5jcmVhdGVUZXh0KHRoaXMudG9vbHRpcExpbmtUZXh0KSk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnRvb2x0aXBFbGVtLCB0aGlzLnRvb2x0aXBMaW5rRWxlbSk7XHJcblxyXG4gICAgICAgIGlmKHRoaXMudG9vbHRpcFBsYWNlSW50b0hvc3Qpe1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgdGhpcy50b29sdGlwRWxlbSk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuYm9keSwgdGhpcy50b29sdGlwRWxlbSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudG9vbHRpcEVsZW0sICd0b29sdGlwJyk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLnRvb2x0aXBFbGVtLCBgdG9vbHRpcC0ke3RoaXMudG9vbHRpcFBsYWNlbWVudH1gKTtcclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW0sICctd2Via2l0LXRyYW5zaXRpb24nLCBgb3BhY2l0eSAke3RoaXMudG9vbHRpcERlbGF5fW1zYCk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtLCAnLW1vei10cmFuc2l0aW9uJywgYG9wYWNpdHkgJHt0aGlzLnRvb2x0aXBEZWxheX1tc2ApO1xyXG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbSwgJy1vLXRyYW5zaXRpb24nLCBgb3BhY2l0eSAke3RoaXMudG9vbHRpcERlbGF5fW1zYCk7XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtLCAndHJhbnNpdGlvbicsIGBvcGFjaXR5ICR7dGhpcy50b29sdGlwRGVsYXl9bXNgKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRQb3NpdGlvbigpIHtcclxuICAgICAgICBpZih0aGlzLnRvb2x0aXBFbGVtKXtcclxuICAgICAgICAgICAgY29uc3QgaG9zdFBvcyA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICAgICAgY29uc3QgdG9vbHRpcFBvcyA9IHRoaXMudG9vbHRpcEVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcblxyXG4gICAgICAgICAgICBsZXQgdG9wLCBsZWZ0O1xyXG5cclxuICAgICAgICAgICAgaWYodGhpcy50b29sdGlwUGxhY2VJbnRvSG9zdCl7XHJcbiAgICAgICAgICAgICAgICBsZWZ0ID0gMDtcclxuICAgICAgICAgICAgICAgIHRvcCA9IGhvc3RQb3MuaGVpZ2h0OyBcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbFBvcyA9IHdpbmRvdy5wYWdlWU9mZnNldCB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIHx8IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudG9vbHRpcFBsYWNlbWVudCA9PT0gJ3RvcCcpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3N0UG9zLnRvcCAtIHRvb2x0aXBQb3MuaGVpZ2h0IC0gdGhpcy5vZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvc3RQb3MubGVmdCArIChob3N0UG9zLndpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCkgLyAyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy50b29sdGlwUGxhY2VtZW50IHx8IHRoaXMudG9vbHRpcFBsYWNlbWVudCA9PT0gJ2JvdHRvbScpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3N0UG9zLmJvdHRvbSArIHRoaXMub2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3N0UG9zLmxlZnQgKyAoaG9zdFBvcy53aWR0aCAtIHRvb2x0aXBQb3Mud2lkdGgpIC8gMjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50b29sdGlwUGxhY2VtZW50ID09PSAnbGVmdCcpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvc3RQb3MubGVmdCAtIHRvb2x0aXBQb3Mud2lkdGggLSB0aGlzLm9mZnNldDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50b29sdGlwUGxhY2VtZW50ID09PSAncmlnaHQnKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9zdFBvcy50b3AgKyAoaG9zdFBvcy5oZWlnaHQgLSB0b29sdGlwUG9zLmhlaWdodCkgLyAyO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3N0UG9zLnJpZ2h0ICsgdGhpcy5vZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0b3AgKz0gc2Nyb2xsUG9zO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW0sICd0b3AnLCBgJHt0b3B9cHhgKTtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtLCAnbGVmdCcsIGAke2xlZnR9cHhgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iXX0=
|
|
1
|
+
import { Directive, Input, HostListener } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TooltipDirective {
|
|
4
|
+
constructor(el, renderer) {
|
|
5
|
+
this.el = el;
|
|
6
|
+
this.renderer = renderer;
|
|
7
|
+
this.tooltipTitle = "";
|
|
8
|
+
this.tooltipText = "";
|
|
9
|
+
this.tooltipLinkText = "";
|
|
10
|
+
this.tooltipLinkUrl = "";
|
|
11
|
+
this.tooltipPlacement = "bottom";
|
|
12
|
+
this.tooltipDelay = 1000;
|
|
13
|
+
this.tooltipPlaceIntoHost = false;
|
|
14
|
+
this.tooltipOnlyonclick = false;
|
|
15
|
+
this.offset = 0;
|
|
16
|
+
}
|
|
17
|
+
onMouseEnter() {
|
|
18
|
+
if (!this.tooltipOnlyonclick) {
|
|
19
|
+
this.show();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
onClick() {
|
|
23
|
+
if (this.tooltipOnlyonclick) {
|
|
24
|
+
this.show();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
onMouseLeave() {
|
|
28
|
+
if (this.tooltipElem) {
|
|
29
|
+
this.hide();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
show() {
|
|
33
|
+
if (!this.tooltipElem) {
|
|
34
|
+
this.create();
|
|
35
|
+
this.setPosition();
|
|
36
|
+
}
|
|
37
|
+
this.renderer.addClass(this.tooltipElem, 'tooltip-show');
|
|
38
|
+
}
|
|
39
|
+
hide() {
|
|
40
|
+
this.renderer.removeClass(this.tooltipElem, 'tooltip-show');
|
|
41
|
+
window.setTimeout(() => {
|
|
42
|
+
}, this.tooltipDelay);
|
|
43
|
+
}
|
|
44
|
+
create() {
|
|
45
|
+
this.tooltipElem = this.renderer.createElement('kms-tooltip-element');
|
|
46
|
+
this.tooltipTitleElem = this.renderer.createElement('b');
|
|
47
|
+
this.renderer.appendChild(this.tooltipTitleElem, this.renderer.createText(this.tooltipTitle));
|
|
48
|
+
this.renderer.appendChild(this.tooltipElem, this.tooltipTitleElem);
|
|
49
|
+
this.tooltipTextElem = this.renderer.createElement('div');
|
|
50
|
+
this.renderer.appendChild(this.tooltipTextElem, this.renderer.createText(this.tooltipText));
|
|
51
|
+
this.renderer.appendChild(this.tooltipElem, this.tooltipTextElem);
|
|
52
|
+
this.tooltipLinkElem = this.renderer.createElement('a');
|
|
53
|
+
this.renderer.setAttribute(this.tooltipLinkElem, 'href', this.tooltipLinkUrl);
|
|
54
|
+
this.renderer.appendChild(this.tooltipLinkElem, this.renderer.createText(this.tooltipLinkText));
|
|
55
|
+
this.renderer.appendChild(this.tooltipElem, this.tooltipLinkElem);
|
|
56
|
+
if (this.tooltipPlaceIntoHost) {
|
|
57
|
+
this.renderer.appendChild(this.el.nativeElement, this.tooltipElem);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
this.renderer.appendChild(document.body, this.tooltipElem);
|
|
61
|
+
}
|
|
62
|
+
this.renderer.addClass(this.tooltipElem, 'tooltip');
|
|
63
|
+
this.renderer.addClass(this.tooltipElem, `tooltip-${this.tooltipPlacement}`);
|
|
64
|
+
this.renderer.setStyle(this.tooltipElem, '-webkit-transition', `opacity ${this.tooltipDelay}ms`);
|
|
65
|
+
this.renderer.setStyle(this.tooltipElem, '-moz-transition', `opacity ${this.tooltipDelay}ms`);
|
|
66
|
+
this.renderer.setStyle(this.tooltipElem, '-o-transition', `opacity ${this.tooltipDelay}ms`);
|
|
67
|
+
this.renderer.setStyle(this.tooltipElem, 'transition', `opacity ${this.tooltipDelay}ms`);
|
|
68
|
+
}
|
|
69
|
+
setPosition() {
|
|
70
|
+
if (this.tooltipElem) {
|
|
71
|
+
const hostPos = this.el.nativeElement.getBoundingClientRect();
|
|
72
|
+
const tooltipPos = this.tooltipElem.getBoundingClientRect();
|
|
73
|
+
let top, left;
|
|
74
|
+
if (this.tooltipPlaceIntoHost) {
|
|
75
|
+
left = 0;
|
|
76
|
+
top = hostPos.height;
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
const scrollPos = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
|
80
|
+
if (this.tooltipPlacement === 'top') {
|
|
81
|
+
top = hostPos.top - tooltipPos.height - this.offset;
|
|
82
|
+
left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
|
|
83
|
+
}
|
|
84
|
+
if (!this.tooltipPlacement || this.tooltipPlacement === 'bottom') {
|
|
85
|
+
top = hostPos.bottom + this.offset;
|
|
86
|
+
left = hostPos.left + (hostPos.width - tooltipPos.width) / 2;
|
|
87
|
+
}
|
|
88
|
+
if (this.tooltipPlacement === 'left') {
|
|
89
|
+
top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
|
|
90
|
+
left = hostPos.left - tooltipPos.width - this.offset;
|
|
91
|
+
}
|
|
92
|
+
if (this.tooltipPlacement === 'right') {
|
|
93
|
+
top = hostPos.top + (hostPos.height - tooltipPos.height) / 2;
|
|
94
|
+
left = hostPos.right + this.offset;
|
|
95
|
+
}
|
|
96
|
+
top += scrollPos;
|
|
97
|
+
}
|
|
98
|
+
this.renderer.setStyle(this.tooltipElem, 'top', `${top}px`);
|
|
99
|
+
this.renderer.setStyle(this.tooltipElem, 'left', `${left}px`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
104
|
+
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: TooltipDirective, selector: "[kmsTooltip]", inputs: { tooltipTitle: "tooltipTitle", tooltipText: "tooltipText", tooltipLinkText: "tooltipLinkText", tooltipLinkUrl: "tooltipLinkUrl", tooltipPlacement: "tooltipPlacement", tooltipDelay: "tooltipDelay", tooltipPlaceIntoHost: "tooltipPlaceIntoHost", tooltipOnlyonclick: "tooltipOnlyonclick" }, host: { listeners: { "mouseenter": "onMouseEnter()", "click": "onClick()", "mouseleave": "onMouseLeave()" } }, ngImport: i0 });
|
|
105
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TooltipDirective, decorators: [{
|
|
106
|
+
type: Directive,
|
|
107
|
+
args: [{
|
|
108
|
+
selector: '[kmsTooltip]'
|
|
109
|
+
}]
|
|
110
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { tooltipTitle: [{
|
|
111
|
+
type: Input,
|
|
112
|
+
args: ['tooltipTitle']
|
|
113
|
+
}], tooltipText: [{
|
|
114
|
+
type: Input,
|
|
115
|
+
args: ['tooltipText']
|
|
116
|
+
}], tooltipLinkText: [{
|
|
117
|
+
type: Input,
|
|
118
|
+
args: ['tooltipLinkText']
|
|
119
|
+
}], tooltipLinkUrl: [{
|
|
120
|
+
type: Input,
|
|
121
|
+
args: ['tooltipLinkUrl']
|
|
122
|
+
}], tooltipPlacement: [{
|
|
123
|
+
type: Input,
|
|
124
|
+
args: ['tooltipPlacement']
|
|
125
|
+
}], tooltipDelay: [{
|
|
126
|
+
type: Input,
|
|
127
|
+
args: ['tooltipDelay']
|
|
128
|
+
}], tooltipPlaceIntoHost: [{
|
|
129
|
+
type: Input,
|
|
130
|
+
args: ['tooltipPlaceIntoHost']
|
|
131
|
+
}], tooltipOnlyonclick: [{
|
|
132
|
+
type: Input,
|
|
133
|
+
args: ['tooltipOnlyonclick']
|
|
134
|
+
}], onMouseEnter: [{
|
|
135
|
+
type: HostListener,
|
|
136
|
+
args: ['mouseenter']
|
|
137
|
+
}], onClick: [{
|
|
138
|
+
type: HostListener,
|
|
139
|
+
args: ['click']
|
|
140
|
+
}], onMouseLeave: [{
|
|
141
|
+
type: HostListener,
|
|
142
|
+
args: ['mouseleave']
|
|
143
|
+
}] } });
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIvZGlyZWN0aXZlcy90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBYyxZQUFZLEVBQWEsTUFBTSxlQUFlLENBQUM7O0FBS3RGLE1BQU0sT0FBTyxnQkFBZ0I7SUFnQnpCLFlBQW9CLEVBQWMsRUFBVSxRQUFtQjtRQUEzQyxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWZ4QyxpQkFBWSxHQUFHLEVBQUUsQ0FBQztRQUNuQixnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNiLG9CQUFlLEdBQUcsRUFBRSxDQUFDO1FBQ3RCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHFCQUFnQixHQUFHLFFBQVEsQ0FBQztRQUNoQyxpQkFBWSxHQUFHLElBQUksQ0FBQztRQUNaLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUMvQix1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFNeEQsV0FBTSxHQUFHLENBQUMsQ0FBQztJQUlYLENBQUM7SUFFMkIsWUFBWTtRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQUU7SUFDbEQsQ0FBQztJQUVzQixPQUFPO1FBQzFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1NBQUU7SUFDakQsQ0FBQztJQUUyQixZQUFZO1FBQ3BDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUFFO0lBQzFDLENBQUM7SUFFRCxJQUFJO1FBQ0EsSUFBSSxD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QUUsTUFBTSxFQUFFLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQztTQUNqRTtJQUNMLENBQUM7OzZHQWxIUSxnQkFBZ0I7aUdBQWhCLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUg1QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxjQUFjO2lCQUMzQjt5SEFFMEIsWUFBWTtzQkFBbEMsS0FBSzt1QkFBQyxjQUFjO2dCQUNDLFdBQVc7c0JBQWhDLEtBQUs7dUJBQUMsYUFBYTtnQkFDTSxlQUFlO3NCQUF4QyxLQUFLO3VCQUFDLGlCQUFpQjtnQkFDQyxjQUFjO3NCQUF0QyxLQUFLO3VCQUFDLGdCQUFnQjtnQkFDSSxnQkFBZ0I7c0JBQTFDLEtBQUs7dUJBQUMsa0JBQWtCO2dCQUNGLFlBQVk7c0JBQWxDLEtBQUs7dUJBQUMsY0FBYztnQkFDVSxvQkFBb0I7c0JBQWxELEtBQUs7dUJBQUMsc0JBQXNCO2dCQUNBLGtCQUFrQjtzQkFBOUMsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBWUMsWUFBWTtzQkFBdkMsWUFBWTt1QkFBQyxZQUFZO2dCQUlILE9BQU87c0JBQTdCLFlBQVk7dUJBQUMsT0FBTztnQkFJTyxZQUFZO3NCQUF2QyxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1trbXNUb29sdGlwXSdcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSB7XG4gICAgQElucHV0KCd0b29sdGlwVGl0bGUnKSB0b29sdGlwVGl0bGUgPSBcIlwiO1xuICAgIEBJbnB1dCgndG9vbHRpcFRleHQnKSB0b29sdGlwVGV4dCA9IFwiXCI7XG4gICAgQElucHV0KCd0b29sdGlwTGlua1RleHQnKSB0b29sdGlwTGlua1RleHQgPSBcIlwiO1xuICAgIEBJbnB1dCgndG9vbHRpcExpbmtVcmwnKSB0b29sdGlwTGlua1VybCA9IFwiXCI7XG4gICAgQElucHV0KCd0b29sdGlwUGxhY2VtZW50JykgdG9vbHRpcFBsYWNlbWVudCA9IFwiYm90dG9tXCI7XG4gICAgQElucHV0KCd0b29sdGlwRGVsYXknKSB0b29sdGlwRGVsYXkgPSAxMDAwO1xuICAgIEBJbnB1dCgndG9vbHRpcFBsYWNlSW50b0hvc3QnKSB0b29sdGlwUGxhY2VJbnRvSG9zdCA9IGZhbHNlO1xuICAgIEBJbnB1dCgndG9vbHRpcE9ubHlvbmNsaWNrJykgdG9vbHRpcE9ubHlvbmNsaWNrID0gZmFsc2U7XG5cbiAgICB0b29sdGlwRWxlbT86IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuICAgIHRvb2x0aXBMaW5rRWxlbT86IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkO1xuICAgIHRvb2x0aXBUaXRsZUVsZW0/OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICB0b29sdGlwVGV4dEVsZW0/OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgICBvZmZzZXQgPSAwO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XG5cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgb25Nb3VzZUVudGVyKCkge1xuICAgICAgICBpZiAoIXRoaXMudG9vbHRpcE9ubHlvbmNsaWNrKSB7IHRoaXMuc2hvdygpOyB9XG4gICAgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snKSBvbkNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy50b29sdGlwT25seW9uY2xpY2spIHsgdGhpcy5zaG93KCk7IH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgb25Nb3VzZUxlYXZlKCkge1xuICAgICAgICBpZiAodGhpcy50b29sdGlwRWxlbSkgeyB0aGlzLmhpZGUoKTsgfVxuICAgIH1cblxuICAgIHNob3coKSB7XG4gICAgICAgIGlmICghdGhpcy50b29sdGlwRWxlbSl7XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZSgpO1xuICAgICAgICAgICAgdGhpcy5zZXRQb3NpdGlvbigpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwRWxlbSwgJ3Rvb2x0aXAtc2hvdycpO1xuICAgIH1cblxuICAgIGhpZGUoKSB7XG4gICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2xhc3ModGhpcy50b29sdGlwRWxlbSwgJ3Rvb2x0aXAtc2hvdycpO1xuICAgICAgICB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIH0sIHRoaXMudG9vbHRpcERlbGF5KTtcbiAgICB9XG5cbiAgICBjcmVhdGUoKSB7XG4gICAgICAgIHRoaXMudG9vbHRpcEVsZW0gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2ttcy10b29sdGlwLWVsZW1lbnQnKTtcblxuICAgICAgICB0aGlzLnRvb2x0aXBUaXRsZUVsZW0gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2InKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnRvb2x0aXBUaXRsZUVsZW0sIHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLnRvb2x0aXBUaXRsZSkpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudG9vbHRpcEVsZW0sIHRoaXMudG9vbHRpcFRpdGxlRWxlbSk7XG4gICAgICAgIFxuICAgICAgICB0aGlzLnRvb2x0aXBUZXh0RWxlbSA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy50b29sdGlwVGV4dEVsZW0sIHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLnRvb2x0aXBUZXh0KSk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy50b29sdGlwRWxlbSwgdGhpcy50b29sdGlwVGV4dEVsZW0pO1xuICAgICAgICBcbiAgICAgICAgdGhpcy50b29sdGlwTGlua0VsZW0gPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy50b29sdGlwTGlua0VsZW0sICdocmVmJywgdGhpcy50b29sdGlwTGlua1VybCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy50b29sdGlwTGlua0VsZW0sIHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLnRvb2x0aXBMaW5rVGV4dCkpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudG9vbHRpcEVsZW0sIHRoaXMudG9vbHRpcExpbmtFbGVtKTtcblxuICAgICAgICBpZih0aGlzLnRvb2x0aXBQbGFjZUludG9Ib3N0KXtcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLnRvb2x0aXBFbGVtKTtcbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHksIHRoaXMudG9vbHRpcEVsZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLnRvb2x0aXBFbGVtLCAndG9vbHRpcCcpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudG9vbHRpcEVsZW0sIGB0b29sdGlwLSR7dGhpcy50b29sdGlwUGxhY2VtZW50fWApO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcEVsZW0sICctd2Via2l0LXRyYW5zaXRpb24nLCBgb3BhY2l0eSAke3RoaXMudG9vbHRpcERlbGF5fW1zYCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbSwgJy1tb3otdHJhbnNpdGlvbicsIGBvcGFjaXR5ICR7dGhpcy50b29sdGlwRGVsYXl9bXNgKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtLCAnLW8tdHJhbnNpdGlvbicsIGBvcGFjaXR5ICR7dGhpcy50b29sdGlwRGVsYXl9bXNgKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtLCAndHJhbnNpdGlvbicsIGBvcGFjaXR5ICR7dGhpcy50b29sdGlwRGVsYXl9bXNgKTtcbiAgICB9XG5cbiAgICBzZXRQb3NpdGlvbigpIHtcbiAgICAgICAgaWYodGhpcy50b29sdGlwRWxlbSl7XG4gICAgICAgICAgICBjb25zdCBob3N0UG9zID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgY29uc3QgdG9vbHRpcFBvcyA9IHRoaXMudG9vbHRpcEVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgICAgIGxldCB0b3AsIGxlZnQ7XG5cbiAgICAgICAgICAgIGlmKHRoaXMudG9vbHRpcFBsYWNlSW50b0hvc3Qpe1xuICAgICAgICAgICAgICAgIGxlZnQgPSAwO1xuICAgICAgICAgICAgICAgIHRvcCA9IGhvc3RQb3MuaGVpZ2h0OyBcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsUG9zID0gd2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgfHwgMDtcblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnRvb2x0aXBQbGFjZW1lbnQgPT09ICd0b3AnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRvcCA9IGhvc3RQb3MudG9wIC0gdG9vbHRpcFBvcy5oZWlnaHQgLSB0aGlzLm9mZnNldDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvc3RQb3MubGVmdCArIChob3N0UG9zLndpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCkgLyAyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICghdGhpcy50b29sdGlwUGxhY2VtZW50IHx8IHRoaXMudG9vbHRpcFBsYWNlbWVudCA9PT0gJ2JvdHRvbScpIHtcbiAgICAgICAgICAgICAgICAgICAgdG9wID0gaG9zdFBvcy5ib3R0b20gKyB0aGlzLm9mZnNldDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdCA9IGhvc3RQb3MubGVmdCArIChob3N0UG9zLndpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCkgLyAyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLnRvb2x0aXBQbGFjZW1lbnQgPT09ICdsZWZ0Jykge1xuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3N0UG9zLmxlZnQgLSB0b29sdGlwUG9zLndpZHRoIC0gdGhpcy5vZmZzZXQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMudG9vbHRpcFBsYWNlbWVudCA9PT0gJ3JpZ2h0Jykge1xuICAgICAgICAgICAgICAgICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQgPSBob3N0UG9zLnJpZ2h0ICsgdGhpcy5vZmZzZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRvcCArPSBzY3JvbGxQb3M7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwRWxlbSwgJ3RvcCcsIGAke3RvcH1weGApO1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXBFbGVtLCAnbGVmdCcsIGAke2xlZnR9cHhgKTtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class KmsUiPresentationalComponent {
|
|
4
|
+
constructor() { }
|
|
5
|
+
ngOnInit() {
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
KmsUiPresentationalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KmsUiPresentationalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9
|
+
KmsUiPresentationalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: KmsUiPresentationalComponent, selector: "lib-kms-ngx-ui-presentational", ngImport: i0, template: `
|
|
10
|
+
<p>
|
|
11
|
+
kms-ngx-ui-presentational works!
|
|
12
|
+
</p>
|
|
13
|
+
`, isInline: true });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: KmsUiPresentationalComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'lib-kms-ngx-ui-presentational', template: `
|
|
17
|
+
<p>
|
|
18
|
+
kms-ngx-ui-presentational works!
|
|
19
|
+
</p>
|
|
20
|
+
` }]
|
|
21
|
+
}], ctorParameters: function () { return []; } });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia21zLW5neC11aS1wcmVzZW50YXRpb25hbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rbXMtbmd4LXVpLXByZXNlbnRhdGlvbmFsL3NyYy9saWIva21zLW5neC11aS1wcmVzZW50YXRpb25hbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQzs7QUFZbEQsTUFBTSxPQUFPLDRCQUE0QjtJQUV2QyxnQkFBZ0IsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7eUhBTFUsNEJBQTRCOzZHQUE1Qiw0QkFBNEIscUVBUjdCOzs7O0dBSVQ7MkZBSVUsNEJBQTRCO2tCQVZ4QyxTQUFTOytCQUNFLCtCQUErQixZQUMvQjs7OztHQUlUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWttcy1uZ3gtdWktcHJlc2VudGF0aW9uYWwnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxwPlxuICAgICAga21zLW5neC11aS1wcmVzZW50YXRpb25hbCB3b3JrcyFcbiAgICA8L3A+XG4gIGAsXG4gIHN0eWxlczogW1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIEttc1VpUHJlc2VudGF0aW9uYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxufVxuIl19
|