@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.
Files changed (178) hide show
  1. package/README.md +28 -28
  2. package/{esm2015/kms-ngx-ui-presentational.js → esm2020/kms-ngx-ui-presentational.mjs} +4 -4
  3. package/esm2020/lib/directives/directives.module.mjs +40 -0
  4. package/{esm2015/lib/directives/mousewheel.directive.js → esm2020/lib/directives/mousewheel.directive.mjs} +56 -56
  5. package/{esm2015/lib/directives/sum-of-height.directive.js → esm2020/lib/directives/sum-of-height.directive.mjs} +74 -74
  6. package/{esm2015/lib/directives/swipe.directive.js → esm2020/lib/directives/swipe.directive.mjs} +183 -183
  7. package/esm2020/lib/directives/swipe.model.mjs +5 -0
  8. package/{esm2015/lib/directives/tooltip.directive.js → esm2020/lib/directives/tooltip.directive.mjs} +144 -144
  9. package/esm2020/lib/kms-ngx-ui-presentational.component.mjs +22 -0
  10. package/{esm2015/lib/kms-ngx-ui-presentational.module.js → esm2020/lib/kms-ngx-ui-presentational.module.mjs} +215 -217
  11. package/{esm2015/lib/kms-ngx-ui-presentational.service.js → esm2020/lib/kms-ngx-ui-presentational.service.mjs} +14 -14
  12. package/esm2020/lib/models/address.model.mjs +6 -0
  13. package/{esm2015/lib/models/iconSize.enum.js → esm2020/lib/models/iconSize.enum.mjs} +17 -17
  14. package/{esm2015/lib/models/image-snippet.model.js → esm2020/lib/models/image-snippet.model.mjs} +18 -18
  15. package/{esm2015/lib/models/index.js → esm2020/lib/models/index.mjs} +5 -5
  16. package/{esm2015/lib/models/is-value.function.js → esm2020/lib/models/is-value.function.mjs} +17 -17
  17. package/{esm2015/lib/models/salutation.enum.js → esm2020/lib/models/salutation.enum.mjs} +8 -8
  18. package/{esm2015/lib/models/types/attached-file-dto.model.js → esm2020/lib/models/types/attached-file-dto.model.mjs} +6 -6
  19. package/{esm2015/lib/models/types/nullable.type.js → esm2020/lib/models/types/nullable.type.mjs} +5 -5
  20. package/{esm2015/lib/parent-components/actions.component.js → esm2020/lib/parent-components/actions.component.mjs} +56 -56
  21. package/esm2020/lib/parent-components/form-control.component.mjs +75 -0
  22. package/esm2020/lib/parent-components/form.component.mjs +78 -0
  23. package/{esm2015/lib/pipes/custom-pipes.module.js → esm2020/lib/pipes/custom-pipes.module.mjs} +71 -71
  24. package/esm2020/lib/pipes/decode-uri.pipe.mjs +19 -0
  25. package/esm2020/lib/pipes/encode-uri.pipe.mjs +19 -0
  26. package/{esm2015/lib/pipes/integer-currency.pipe.js → esm2020/lib/pipes/integer-currency.pipe.mjs} +27 -27
  27. package/{esm2015/lib/pipes/safe-html.pipe.js → esm2020/lib/pipes/safe-html.pipe.mjs} +23 -23
  28. package/{esm2015/lib/pipes/safe-resource-url.pipe.js → esm2020/lib/pipes/safe-resource-url.pipe.mjs} +23 -23
  29. package/{esm2015/lib/pipes/safe-style.pipe.js → esm2020/lib/pipes/safe-style.pipe.mjs} +23 -23
  30. package/{esm2015/lib/pipes/safe-url.pipe.js → esm2020/lib/pipes/safe-url.pipe.mjs} +23 -23
  31. package/{esm2015/lib/pipes/to-number.pipe.js → esm2020/lib/pipes/to-number.pipe.mjs} +23 -23
  32. package/{esm2015/lib/pipes/trim.pipe.js → esm2020/lib/pipes/trim.pipe.mjs} +20 -20
  33. package/{esm2015/lib/pipes/typeof.pipe.js → esm2020/lib/pipes/typeof.pipe.mjs} +16 -16
  34. package/esm2020/lib/services/viewport.service.mjs +216 -0
  35. package/esm2020/lib/ui/back-to-top/back-to-top.component.mjs +49 -0
  36. 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
  37. package/esm2020/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.mjs +58 -0
  38. 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
  39. package/esm2020/lib/ui/checkbox/checkbox.component.mjs +71 -0
  40. package/esm2020/lib/ui/color-input/color-input.component.mjs +76 -0
  41. package/esm2020/lib/ui/dropdown-from-data/dropdown-from-data.component.mjs +165 -0
  42. package/esm2020/lib/ui/enum-radiogroup/enum-radiogroup.component.mjs +53 -0
  43. package/esm2020/lib/ui/file-input/file-input.component.mjs +232 -0
  44. package/esm2020/lib/ui/flyout/flyout.component.mjs +119 -0
  45. package/esm2020/lib/ui/generic-dialog/generic-dialog.component.mjs +54 -0
  46. package/esm2020/lib/ui/icon/icon.component.mjs +48 -0
  47. package/esm2020/lib/ui/icon/iconSize.enum.mjs +17 -0
  48. package/esm2020/lib/ui/image-slider/image-slider.component.mjs +189 -0
  49. package/esm2020/lib/ui/kms-accordion-item/kms-accordion-item.component.mjs +40 -0
  50. package/esm2020/lib/ui/loader/loader.component.mjs +21 -0
  51. package/esm2020/lib/ui/map/map.component.mjs +116 -0
  52. package/esm2020/lib/ui/radiobutton/radiobutton.component.mjs +73 -0
  53. package/esm2020/lib/ui/salutation-dropdown/salutation-dropdown.component.mjs +55 -0
  54. package/esm2020/lib/ui/salutation-radiogroup/salutation-radiogroup.component.mjs +49 -0
  55. package/esm2020/lib/ui/time-input/time-input.component.mjs +83 -0
  56. package/esm2020/lib/ui/tooltip/tooltip.component.mjs +16 -0
  57. package/esm2020/lib/ui/tooltip-icon/tooltip-icon.component.mjs +35 -0
  58. package/esm2020/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.mjs +82 -0
  59. package/esm2020/public-api.mjs +49 -0
  60. package/fesm2015/kms-ngx-ui-presentational.mjs +3013 -0
  61. package/fesm2015/kms-ngx-ui-presentational.mjs.map +1 -0
  62. package/{fesm2015/kms-ngx-ui-presentational.js → fesm2020/kms-ngx-ui-presentational.mjs} +2894 -3108
  63. package/fesm2020/kms-ngx-ui-presentational.mjs.map +1 -0
  64. package/{kms-ngx-ui-presentational.d.ts → index.d.ts} +5 -5
  65. package/lib/directives/directives.module.d.ts +11 -13
  66. package/lib/directives/mousewheel.directive.d.ts +15 -15
  67. package/lib/directives/sum-of-height.directive.d.ts +31 -31
  68. package/lib/directives/swipe.directive.d.ts +45 -45
  69. package/lib/directives/swipe.model.d.ts +49 -49
  70. package/lib/directives/tooltip.directive.d.ts +29 -29
  71. package/lib/kms-ngx-ui-presentational.component.d.ts +8 -8
  72. package/lib/kms-ngx-ui-presentational.module.d.ts +47 -47
  73. package/lib/kms-ngx-ui-presentational.service.d.ts +6 -6
  74. package/lib/models/address.model.d.ts +14 -14
  75. package/lib/models/iconSize.enum.d.ts +15 -15
  76. package/lib/models/image-snippet.model.d.ts +15 -15
  77. package/lib/models/index.d.ts +4 -4
  78. package/lib/models/is-value.function.d.ts +9 -9
  79. package/lib/models/salutation.enum.d.ts +5 -5
  80. package/lib/models/types/attached-file-dto.model.d.ts +11 -11
  81. package/lib/models/types/nullable.type.d.ts +4 -4
  82. package/lib/parent-components/actions.component.d.ts +31 -31
  83. package/lib/parent-components/form-control.component.d.ts +27 -27
  84. package/lib/parent-components/form.component.d.ts +34 -40
  85. package/lib/pipes/custom-pipes.module.d.ts +17 -17
  86. package/lib/pipes/decode-uri.pipe.d.ts +10 -10
  87. package/lib/pipes/encode-uri.pipe.d.ts +10 -10
  88. package/lib/pipes/integer-currency.pipe.d.ts +13 -13
  89. package/lib/pipes/safe-html.pipe.d.ts +13 -13
  90. package/lib/pipes/safe-resource-url.pipe.d.ts +13 -13
  91. package/lib/pipes/safe-style.pipe.d.ts +13 -13
  92. package/lib/pipes/safe-url.pipe.d.ts +13 -13
  93. package/lib/pipes/to-number.pipe.d.ts +10 -10
  94. package/lib/pipes/trim.pipe.d.ts +10 -10
  95. package/lib/pipes/typeof.pipe.d.ts +7 -7
  96. package/lib/services/viewport.service.d.ts +74 -83
  97. package/lib/ui/back-to-top/back-to-top.component.d.ts +10 -10
  98. package/lib/ui/button-with-confirm-dialog/button-response-types.enum.d.ts +4 -4
  99. package/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.d.ts +19 -19
  100. package/lib/ui/button-with-confirm-dialog/dialog-data.model.d.ts +9 -9
  101. package/lib/ui/checkbox/checkbox.component.d.ts +31 -31
  102. package/lib/ui/color-input/color-input.component.d.ts +19 -19
  103. package/lib/ui/dropdown-from-data/dropdown-from-data.component.d.ts +55 -55
  104. package/lib/ui/enum-radiogroup/enum-radiogroup.component.d.ts +17 -17
  105. package/lib/ui/file-input/file-input.component.d.ts +89 -89
  106. package/lib/ui/flyout/flyout.component.d.ts +32 -32
  107. package/lib/ui/generic-dialog/generic-dialog.component.d.ts +26 -26
  108. package/lib/ui/icon/icon.component.d.ts +42 -48
  109. package/lib/ui/icon/iconSize.enum.d.ts +15 -25
  110. package/lib/ui/image-slider/image-slider.component.d.ts +62 -62
  111. package/lib/ui/kms-accordion-item/kms-accordion-item.component.d.ts +22 -22
  112. package/lib/ui/loader/loader.component.d.ts +9 -9
  113. package/lib/ui/map/map.component.d.ts +70 -69
  114. package/lib/ui/radiobutton/radiobutton.component.d.ts +26 -27
  115. package/lib/ui/salutation-dropdown/salutation-dropdown.component.d.ts +17 -17
  116. package/lib/ui/salutation-radiogroup/salutation-radiogroup.component.d.ts +15 -15
  117. package/lib/ui/time-input/time-input.component.d.ts +22 -22
  118. package/lib/ui/tooltip/tooltip.component.d.ts +6 -6
  119. package/lib/ui/tooltip-icon/tooltip-icon.component.d.ts +13 -13
  120. package/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.d.ts +27 -27
  121. package/package.json +27 -14
  122. package/public-api.d.ts +45 -46
  123. package/src/lib/ui/back-to-top/back-to-top.component.scss +46 -45
  124. package/src/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.scss +2 -2
  125. package/src/lib/ui/checkbox/checkbox.component.scss +48 -48
  126. package/src/lib/ui/color-input/color-input.component.scss +38 -38
  127. package/src/lib/ui/file-input/file-input.component.scss +2 -2
  128. package/src/lib/ui/flyout/flyout.component.scss +34 -34
  129. package/src/lib/ui/generic-dialog/generic-dialog.component.scss +59 -59
  130. package/src/lib/ui/icon/icon.component.scss +148 -114
  131. package/src/lib/ui/image-slider/image-slider.component.scss +219 -219
  132. package/src/lib/ui/kms-accordion-item/kms-accordion-item.component.scss +95 -95
  133. package/src/lib/ui/radiobutton/radiobutton.component.scss +31 -31
  134. package/src/lib/ui/time-input/time-input.component.scss +10 -10
  135. package/src/lib/ui/tooltip/tooltip.component.scss +26 -26
  136. package/src/lib/ui/tooltip-icon/tooltip-icon.component.scss +2 -2
  137. package/src/styles/mixins.scss +8 -8
  138. package/src/styles/styles.scss +30 -31
  139. package/bundles/kms-ngx-ui-presentational.umd.js +0 -3751
  140. package/bundles/kms-ngx-ui-presentational.umd.js.map +0 -1
  141. package/esm2015/lib/directives/directives.module.js +0 -45
  142. package/esm2015/lib/directives/size.directive.js +0 -21
  143. package/esm2015/lib/directives/swipe.model.js +0 -5
  144. package/esm2015/lib/kms-ngx-ui-presentational.component.js +0 -26
  145. package/esm2015/lib/models/address.model.js +0 -6
  146. package/esm2015/lib/parent-components/colorable.component.js +0 -35
  147. package/esm2015/lib/parent-components/form-control.component.js +0 -76
  148. package/esm2015/lib/parent-components/form.component.js +0 -99
  149. package/esm2015/lib/pipes/decode-uri.pipe.js +0 -19
  150. package/esm2015/lib/pipes/encode-uri.pipe.js +0 -19
  151. package/esm2015/lib/services/viewport.service.js +0 -242
  152. package/esm2015/lib/ui/back-to-top/back-to-top.component.js +0 -52
  153. package/esm2015/lib/ui/button-with-confirm-dialog/button-with-confirm-dialog.component.js +0 -62
  154. package/esm2015/lib/ui/checkbox/checkbox.component.js +0 -76
  155. package/esm2015/lib/ui/color-input/color-input.component.js +0 -81
  156. package/esm2015/lib/ui/dropdown-from-data/dropdown-from-data.component.js +0 -169
  157. package/esm2015/lib/ui/enum-radiogroup/enum-radiogroup.component.js +0 -57
  158. package/esm2015/lib/ui/file-input/file-input.component.js +0 -237
  159. package/esm2015/lib/ui/flyout/flyout.component.js +0 -125
  160. package/esm2015/lib/ui/generic-dialog/generic-dialog.component.js +0 -58
  161. package/esm2015/lib/ui/icon/icon.component.js +0 -55
  162. package/esm2015/lib/ui/icon/iconSize.enum.js +0 -28
  163. package/esm2015/lib/ui/image-slider/image-slider.component.js +0 -193
  164. package/esm2015/lib/ui/kms-accordion-item/kms-accordion-item.component.js +0 -44
  165. package/esm2015/lib/ui/loader/loader.component.js +0 -25
  166. package/esm2015/lib/ui/map/map.component.js +0 -120
  167. package/esm2015/lib/ui/radiobutton/radiobutton.component.js +0 -82
  168. package/esm2015/lib/ui/salutation-dropdown/salutation-dropdown.component.js +0 -59
  169. package/esm2015/lib/ui/salutation-radiogroup/salutation-radiogroup.component.js +0 -53
  170. package/esm2015/lib/ui/time-input/time-input.component.js +0 -88
  171. package/esm2015/lib/ui/tooltip/tooltip.component.js +0 -20
  172. package/esm2015/lib/ui/tooltip-icon/tooltip-icon.component.js +0 -40
  173. package/esm2015/lib/ui/yes-no-radiogroup/yes-no-radiogroup.component.js +0 -86
  174. package/esm2015/public-api.js +0 -50
  175. package/fesm2015/kms-ngx-ui-presentational.js.map +0 -1
  176. package/lib/directives/size.directive.d.ts +0 -10
  177. package/lib/parent-components/colorable.component.d.ts +0 -10
  178. package/src/styles/animations.scss +0 -47
@@ -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: "12.2.16", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
104
- TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", 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: "12.2.16", 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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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