@ptsecurity/mosaic 17.0.0 → 17.2.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 (201) hide show
  1. package/autocomplete/_autocomplete-theme.scss +2 -1
  2. package/autocomplete/autocomplete-trigger.directive.d.ts +7 -1
  3. package/autocomplete/autocomplete.scss +7 -11
  4. package/button/_button-base.scss +10 -10
  5. package/button/_button-theme.scss +32 -32
  6. package/button/button.scss +9 -15
  7. package/button-toggle/_button-toggle-theme.scss +32 -24
  8. package/button-toggle/button-toggle.scss +18 -57
  9. package/card/_card-theme.scss +23 -20
  10. package/card/card.component.scss +2 -1
  11. package/checkbox/_checkbox-theme.scss +33 -29
  12. package/checkbox/checkbox.scss +7 -6
  13. package/code-block/_code-block-theme.scss +201 -113
  14. package/code-block/actionbar.component.scss +5 -7
  15. package/code-block/code-block.scss +5 -6
  16. package/core/forms/_forms-theme.scss +17 -46
  17. package/core/option/_optgroup-theme.scss +5 -5
  18. package/core/option/_option-action-theme.scss +1 -4
  19. package/core/option/_option-theme.scss +8 -10
  20. package/core/option/option.scss +5 -4
  21. package/core/pop-up/pop-up-trigger.d.ts +3 -1
  22. package/core/styles/_mosaic-theme.scss +3 -3
  23. package/core/styles/common/_popup.scss +4 -3
  24. package/core/styles/common/_tokens.scss +39 -0
  25. package/core/styles/theming/_alerts.scss +16 -24
  26. package/core/styles/theming/_badges.scss +7 -8
  27. package/core/styles/theming/_components-theming.scss +4 -2
  28. package/core/styles/theming/_scrollbars.scss +17 -2
  29. package/datepicker/_datepicker-theme.scss +18 -19
  30. package/datepicker/calendar-body.scss +6 -9
  31. package/datepicker/calendar-header.scss +9 -26
  32. package/datepicker/calendar.scss +5 -16
  33. package/datepicker/datepicker-content.scss +2 -4
  34. package/datepicker/datepicker-input.scss +2 -1
  35. package/datepicker/datepicker-toggle.scss +3 -2
  36. package/divider/_divider-theme.scss +4 -2
  37. package/divider/divider.scss +5 -4
  38. package/dl/_dl-theme.scss +12 -36
  39. package/dl/dl.scss +13 -46
  40. package/dropdown/_dropdown-theme.scss +19 -17
  41. package/dropdown/dropdown-item.scss +7 -6
  42. package/dropdown/dropdown.scss +11 -26
  43. package/ellipsis-center/ellipsis-center.directive.d.ts +3 -2
  44. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +14 -2
  45. package/esm2022/button/button.component.mjs +2 -2
  46. package/esm2022/code-block/actionbar.component.mjs +2 -2
  47. package/esm2022/code-block/code-block.component.mjs +2 -2
  48. package/esm2022/core/pop-up/pop-up-trigger.mjs +19 -11
  49. package/esm2022/core/version.mjs +2 -2
  50. package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
  51. package/esm2022/dropdown/dropdown.component.mjs +3 -3
  52. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +7 -5
  53. package/esm2022/file-upload/file-upload.module.mjs +8 -4
  54. package/esm2022/file-upload/multiple-file-upload.component.mjs +15 -34
  55. package/esm2022/file-upload/single-file-upload.component.mjs +15 -34
  56. package/esm2022/form-field/form-field.mjs +2 -2
  57. package/esm2022/input/input-password.mjs +2 -3
  58. package/esm2022/loader-overlay/loader-overlay.component.mjs +2 -2
  59. package/esm2022/markdown/markdown.component.mjs +2 -2
  60. package/esm2022/modal/modal.component.mjs +6 -6
  61. package/esm2022/navbar/navbar-item.component.mjs +9 -9
  62. package/esm2022/progress-spinner/progress-spinner.component.mjs +2 -2
  63. package/esm2022/radio/radio.component.mjs +2 -2
  64. package/esm2022/select/select-option.directive.mjs +7 -5
  65. package/esm2022/select/select.component.mjs +16 -9
  66. package/esm2022/tabs/tab-header.component.mjs +2 -2
  67. package/esm2022/tabs/tab-nav-bar/tab-nav-bar.mjs +2 -2
  68. package/esm2022/tags/tag-input.mjs +28 -8
  69. package/esm2022/timezone/timezone-option.directive.mjs +7 -5
  70. package/esm2022/timezone/timezone-select.component.mjs +2 -2
  71. package/esm2022/title/title.directive.mjs +2 -3
  72. package/esm2022/tooltip/tooltip.component.mjs +27 -12
  73. package/esm2022/tree-select/tree-select.component.mjs +21 -8
  74. package/fesm2022/ptsecurity-mosaic-autocomplete.mjs +13 -1
  75. package/fesm2022/ptsecurity-mosaic-autocomplete.mjs.map +1 -1
  76. package/fesm2022/ptsecurity-mosaic-button.mjs +2 -2
  77. package/fesm2022/ptsecurity-mosaic-button.mjs.map +1 -1
  78. package/fesm2022/ptsecurity-mosaic-code-block.mjs +4 -4
  79. package/fesm2022/ptsecurity-mosaic-code-block.mjs.map +1 -1
  80. package/fesm2022/ptsecurity-mosaic-core.mjs +19 -11
  81. package/fesm2022/ptsecurity-mosaic-core.mjs.map +1 -1
  82. package/fesm2022/ptsecurity-mosaic-dropdown.mjs +4 -4
  83. package/fesm2022/ptsecurity-mosaic-dropdown.mjs.map +1 -1
  84. package/fesm2022/ptsecurity-mosaic-ellipsis-center.mjs +5 -4
  85. package/fesm2022/ptsecurity-mosaic-ellipsis-center.mjs.map +1 -1
  86. package/fesm2022/ptsecurity-mosaic-file-upload.mjs +26 -58
  87. package/fesm2022/ptsecurity-mosaic-file-upload.mjs.map +1 -1
  88. package/fesm2022/ptsecurity-mosaic-form-field.mjs +2 -2
  89. package/fesm2022/ptsecurity-mosaic-form-field.mjs.map +1 -1
  90. package/fesm2022/ptsecurity-mosaic-input.mjs +1 -2
  91. package/fesm2022/ptsecurity-mosaic-input.mjs.map +1 -1
  92. package/fesm2022/ptsecurity-mosaic-loader-overlay.mjs +2 -2
  93. package/fesm2022/ptsecurity-mosaic-loader-overlay.mjs.map +1 -1
  94. package/fesm2022/ptsecurity-mosaic-markdown.mjs +2 -2
  95. package/fesm2022/ptsecurity-mosaic-markdown.mjs.map +1 -1
  96. package/fesm2022/ptsecurity-mosaic-modal.mjs +5 -5
  97. package/fesm2022/ptsecurity-mosaic-modal.mjs.map +1 -1
  98. package/fesm2022/ptsecurity-mosaic-navbar.mjs +8 -8
  99. package/fesm2022/ptsecurity-mosaic-navbar.mjs.map +1 -1
  100. package/fesm2022/ptsecurity-mosaic-progress-spinner.mjs +1 -1
  101. package/fesm2022/ptsecurity-mosaic-progress-spinner.mjs.map +1 -1
  102. package/fesm2022/ptsecurity-mosaic-radio.mjs +2 -2
  103. package/fesm2022/ptsecurity-mosaic-radio.mjs.map +1 -1
  104. package/fesm2022/ptsecurity-mosaic-select.mjs +25 -17
  105. package/fesm2022/ptsecurity-mosaic-select.mjs.map +1 -1
  106. package/fesm2022/ptsecurity-mosaic-tabs.mjs +4 -4
  107. package/fesm2022/ptsecurity-mosaic-tabs.mjs.map +1 -1
  108. package/fesm2022/ptsecurity-mosaic-tags.mjs +26 -7
  109. package/fesm2022/ptsecurity-mosaic-tags.mjs.map +1 -1
  110. package/fesm2022/ptsecurity-mosaic-timezone.mjs +7 -6
  111. package/fesm2022/ptsecurity-mosaic-timezone.mjs.map +1 -1
  112. package/fesm2022/ptsecurity-mosaic-title.mjs +1 -2
  113. package/fesm2022/ptsecurity-mosaic-title.mjs.map +1 -1
  114. package/fesm2022/ptsecurity-mosaic-tooltip.mjs +25 -11
  115. package/fesm2022/ptsecurity-mosaic-tooltip.mjs.map +1 -1
  116. package/fesm2022/ptsecurity-mosaic-tree-select.mjs +20 -7
  117. package/fesm2022/ptsecurity-mosaic-tree-select.mjs.map +1 -1
  118. package/file-upload/_file-upload-theme.scss +87 -54
  119. package/file-upload/file-upload.module.d.ts +2 -1
  120. package/file-upload/file-upload.scss +0 -15
  121. package/file-upload/multiple-file-upload.component.d.ts +4 -12
  122. package/file-upload/multiple-file-upload.component.scss +58 -54
  123. package/file-upload/single-file-upload.component.d.ts +4 -12
  124. package/file-upload/single-file-upload.component.scss +15 -24
  125. package/form-field/_form-field-theme.scss +43 -34
  126. package/form-field/form-field.scss +14 -13
  127. package/icon/_icon-theme.scss +26 -25
  128. package/input/_input-base.scss +3 -2
  129. package/input/_input-theme.scss +14 -14
  130. package/input/input-password.d.ts +0 -1
  131. package/input/input.scss +3 -4
  132. package/link/_link-theme.scss +36 -32
  133. package/list/_list-base.scss +4 -3
  134. package/list/_list-theme.scss +8 -8
  135. package/list/list.scss +2 -1
  136. package/loader-overlay/_loader-overlay-theme.scss +8 -8
  137. package/loader-overlay/loader-overlay.scss +7 -12
  138. package/markdown/_markdown-theme.scss +61 -43
  139. package/markdown/markdown.scss +39 -80
  140. package/modal/_modal-confirm.scss +3 -2
  141. package/modal/_modal-theme.scss +20 -21
  142. package/modal/modal.scss +18 -15
  143. package/navbar/_navbar-theme.scss +19 -18
  144. package/navbar/navbar-brand.scss +7 -9
  145. package/navbar/navbar-item.component.d.ts +4 -4
  146. package/navbar/navbar-item.scss +8 -7
  147. package/navbar/vertical-navbar.scss +4 -12
  148. package/package.json +25 -25
  149. package/popover/_popover-theme.scss +35 -35
  150. package/popover/popover.scss +15 -14
  151. package/prebuilt-themes/dark-theme.css +1 -1
  152. package/prebuilt-themes/default-theme.css +1 -1
  153. package/progress-bar/_progress-bar-theme.scss +6 -5
  154. package/progress-bar/progress-bar.scss +2 -1
  155. package/progress-spinner/_progress-spinner-theme.scss +4 -3
  156. package/progress-spinner/progress-spinner.scss +7 -12
  157. package/radio/_radio-theme.scss +32 -24
  158. package/radio/radio.scss +8 -11
  159. package/select/_select-theme.scss +13 -13
  160. package/select/select-option.directive.d.ts +3 -2
  161. package/select/select.component.d.ts +1 -0
  162. package/select/select.scss +19 -42
  163. package/sidepanel/_sidepanel-theme.scss +9 -9
  164. package/sidepanel/sidepanel.scss +11 -10
  165. package/splitter/_splitter-theme.scss +5 -3
  166. package/table/_table-theme.scss +9 -9
  167. package/table/table.scss +11 -14
  168. package/tabs/_tabs-common.scss +15 -14
  169. package/tabs/_tabs-theme.scss +67 -55
  170. package/tabs/tab-group.scss +2 -1
  171. package/tabs/tab-header.scss +16 -3
  172. package/tabs/tab-nav-bar/tab-nav-bar.scss +15 -2
  173. package/tags/_tag-theme.scss +30 -27
  174. package/tags/tag-input.d.ts +9 -4
  175. package/tags/tag-list.scss +4 -3
  176. package/tags/tag.scss +9 -8
  177. package/textarea/_textarea-base.scss +2 -4
  178. package/textarea/_textarea-theme.scss +8 -8
  179. package/textarea/textarea.scss +2 -4
  180. package/timepicker/timepicker.scss +2 -7
  181. package/timezone/_timezone-option-theme.scss +7 -7
  182. package/timezone/timezone-option.component.scss +5 -4
  183. package/timezone/timezone-option.directive.d.ts +3 -2
  184. package/title/title.directive.d.ts +0 -1
  185. package/toast/_toast-theme.scss +13 -16
  186. package/toast/toast-container.component.scss +2 -5
  187. package/toast/toast.component.scss +15 -17
  188. package/toggle/_toggle-theme.scss +22 -21
  189. package/toggle/toggle.scss +19 -21
  190. package/tooltip/_tooltip-theme.scss +26 -31
  191. package/tooltip/tooltip.component.d.ts +12 -8
  192. package/tooltip/tooltip.scss +13 -17
  193. package/tree/_tree-theme.scss +8 -8
  194. package/tree/toggle.scss +3 -5
  195. package/tree/tree-option.scss +5 -4
  196. package/tree-select/_tree-select-theme.scss +9 -9
  197. package/tree-select/tree-select.component.d.ts +1 -0
  198. package/tree-select/tree-select.scss +17 -35
  199. package/_theming.scss +0 -10827
  200. package/_visual.scss +0 -3541
  201. package/prebuilt-visual/default-visual.css +0 -1
@@ -2,6 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { Pipe, forwardRef, Component, ViewEncapsulation, ChangeDetectionStrategy, ViewChild, Input, Directive, Inject, Optional, ContentChild, NgModule } from '@angular/core';
3
3
  import * as i1 from '@ptsecurity/mosaic/core';
4
4
  import { McOption, PopUpPlacements, MC_OPTION_PARENT_COMPONENT, McOptionModule, McHighlightModule } from '@ptsecurity/mosaic/core';
5
+ import * as i4 from '@angular/cdk/a11y';
5
6
  import * as i3 from '@angular/cdk/bidi';
6
7
  import * as i2 from '@angular/cdk/overlay';
7
8
  import { OverlayModule } from '@angular/cdk/overlay';
@@ -164,8 +165,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImpor
164
165
 
165
166
  const TOOLTIP_VISIBLE_ROWS_COUNT = 3;
166
167
  class McTimezoneOptionTooltip extends McTooltipTrigger {
167
- constructor(changeDetectorRef, option, overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction) {
168
- super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
168
+ constructor(changeDetectorRef, option, overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor) {
169
+ super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);
169
170
  this.changeDetectorRef = changeDetectorRef;
170
171
  this.option = option;
171
172
  this.tooltipPlacement = PopUpPlacements.Right;
@@ -193,7 +194,7 @@ class McTimezoneOptionTooltip extends McTooltipTrigger {
193
194
  this.disabled = count <= TOOLTIP_VISIBLE_ROWS_COUNT;
194
195
  this.changeDetectorRef.detectChanges();
195
196
  }
196
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTimezoneOptionTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: McTimezoneOption }, { token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
197
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTimezoneOptionTooltip, deps: [{ token: i0.ChangeDetectorRef }, { token: McTimezoneOption }, { token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }, { token: i4.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
197
198
  /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.0", type: McTimezoneOptionTooltip, selector: "mc-timezone-option", host: { listeners: { "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, usesInheritance: true, ngImport: i0 }); }
198
199
  }
199
200
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTimezoneOptionTooltip, decorators: [{
@@ -210,7 +211,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImpor
210
211
  args: [MC_TOOLTIP_SCROLL_STRATEGY]
211
212
  }] }, { type: i3.Directionality, decorators: [{
212
213
  type: Optional
213
- }] }] });
214
+ }] }, { type: i4.FocusMonitor }] });
214
215
 
215
216
  class McTimezoneSelectTrigger {
216
217
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTimezoneSelectTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
@@ -225,14 +226,14 @@ class McTimezoneSelect extends McSelect {
225
226
  /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.0", type: McTimezoneSelect, selector: "mc-timezone-select", providers: [
226
227
  { provide: McFormFieldControl, useExisting: McTimezoneSelect },
227
228
  { provide: MC_OPTION_PARENT_COMPONENT, useExisting: McTimezoneSelect }
228
- ], queries: [{ propertyName: "customTrigger", first: true, predicate: McTimezoneSelectTrigger, descendants: true }, { propertyName: "cleaner", first: true, predicate: ["mcSelectCleaner"], descendants: true }, { propertyName: "search", first: true, predicate: McSelectSearch, descendants: true }], exportAs: ["mcTimezoneSelect"], usesInheritance: true, ngImport: i0, template: "<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".mc-select__matcher{display:flex;align-items:center;width:100%;overflow:hidden;white-space:nowrap}.mc-select__matcher>span{flex:1;overflow:hidden}.mc-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.mc-select__match-container .mc-select__match-hidden-text{flex:0 0 70px;align-self:center;padding:0 8px;text-align:right}.mc-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.mc-select .mc-select__trigger{display:flex;box-sizing:border-box;position:relative;height:calc(var(--mc-form-field-size-height, 32px) - var(--mc-form-field-size-border-width, 1px) * 2);cursor:pointer}.mc-select .mc-select__trigger .mc-select__matcher{padding-left:calc(var(--mc-select-size-left-padding, 12px) - var(--mc-form-field-size-border-width, 1px));padding-right:calc(var(--mc-select-size-right-padding, 6px) - var(--mc-form-field-size-border-width, 1px))}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher{padding-left:calc(var(--mc-select-size-left-padding-multiple, 12px) - var(--mc-form-field-size-border-width, 1px))}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-select__match-container{display:flex}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-tag.mc-disabled .mc-tag__text{margin-right:7px}.mc-select.mc-disabled .mc-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mc-select__no-options-message{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--mc-option-size-height, 32px);cursor:default;outline:none;padding-left:var(--mc-option-size-horizontal-padding, 10px);padding-right:var(--mc-option-size-horizontal-padding, 10px);border:var(--mc-option-size-border-width, 2px) solid transparent}.mc-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;max-height:calc(var(--mc-form-field-size-height, 32px) - 4px);height:calc(var(--mc-form-field-size-height, 32px) - 4px)}.mc-select__match-list .mc-tag{margin-right:4px}.mc-select__arrow-wrapper{display:flex;align-self:center}.mc-form-field-appearance-fill .mc-select__arrow-wrapper,.mc-form-field-appearance-standard .mc-select__arrow-wrapper{transform:translateY(-50%)}.mc-form-field-appearance-outline .mc-select__arrow-wrapper{transform:translateY(-25%)}.mc-select__panel{min-width:100%;max-width:var(--mc-select-panel-size-max-width, 640px);overflow:hidden;border-width:var(--mc-select-panel-size-border-width, 1px);border-style:solid;border-bottom-left-radius:var(--mc-select-panel-size-border-radius, 4px);border-bottom-right-radius:var(--mc-select-panel-size-border-radius, 4px)}.mc-select__panel .mc-optgroup-label,.mc-select__panel .mc-option{font-size:inherit;line-height:var(--mc-option-size-height, 32px);height:var(--mc-option-size-height, 32px)}.mc-select__panel .mc-select__footer{display:flex;align-items:center;box-sizing:border-box;padding:4px 12px;border-top-width:1px;border-top-style:solid;min-height:var(--mc-list-size-footer-min-height, 48px)}.mc-select__content{max-height:var(--mc-select-panel-size-max-height, 232px);padding:var(--mc-select-panel-size-vertical-padding, 4px) 0;overflow:hidden auto}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport{min-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px);max-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px)}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{max-width:100%}.mc-form-field-type-select:not(.mc-disabled) .mc-form-field-flex{cursor:pointer}.mc-select__search-container{border-bottom-width:1px;border-bottom-style:solid}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: i3$1.McIcon, selector: "[mc-icon]", inputs: ["color"] }, { kind: "directive", type: i3$1.McIconCSSStyler, selector: "[mc-icon]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
229
+ ], queries: [{ propertyName: "customTrigger", first: true, predicate: McTimezoneSelectTrigger, descendants: true }, { propertyName: "cleaner", first: true, predicate: ["mcSelectCleaner"], descendants: true }, { propertyName: "search", first: true, predicate: McSelectSearch, descendants: true }], exportAs: ["mcTimezoneSelect"], usesInheritance: true, ngImport: i0, template: "<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".mc-select__matcher{display:flex;align-items:center;width:100%;overflow:hidden;white-space:nowrap}.mc-select__matcher>span{flex:1;overflow:hidden}.mc-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.mc-select__match-container .mc-select__match-hidden-text{flex:0 0 70px;align-self:center;padding:0 8px;text-align:right}.mc-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.mc-select .mc-select__trigger{display:flex;box-sizing:border-box;position:relative;height:calc(var(--mc-form-field-size-height, 32px) - var(--mc-form-field-size-border-width, 1px) * 2);cursor:pointer}.mc-select .mc-select__trigger .mc-select__matcher{padding-left:var(--mc-select-size-left-padding, 12px);padding-right:var(--mc-select-size-right-padding, 6px)}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher{padding-left:var(--mc-select-size-left-padding-multiple, 12px)}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-select__match-container{display:flex}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-tag.mc-disabled .mc-tag__text{margin-right:7px}.mc-select.mc-disabled .mc-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mc-select__no-options-message{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--mc-option-size-height, 32px);cursor:default;outline:none;padding-left:var(--mc-option-size-horizontal-padding, 10px);padding-right:var(--mc-option-size-horizontal-padding, 10px);border:var(--mc-option-size-border-width, 2px) solid transparent}.mc-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;max-height:calc(var(--mc-form-field-size-height, 32px) - 4px);height:calc(var(--mc-form-field-size-height, 32px) - 4px)}.mc-select__match-list .mc-tag{margin-right:4px}.mc-select__arrow-wrapper{display:flex;align-self:center}.mc-form-field-appearance-fill .mc-select__arrow-wrapper,.mc-form-field-appearance-standard .mc-select__arrow-wrapper{transform:translateY(-50%)}.mc-form-field-appearance-outline .mc-select__arrow-wrapper{transform:translateY(-25%)}.mc-select__panel{min-width:100%;max-width:var(--mc-select-panel-size-max-width, 640px);overflow:hidden;border-width:var(--mc-select-panel-size-border-width, 1px);border-style:solid;border-bottom-left-radius:var(--mc-select-panel-size-border-radius, 4px);border-bottom-right-radius:var(--mc-select-panel-size-border-radius, 4px)}.mc-select__panel .mc-optgroup-label,.mc-select__panel .mc-option{font-size:inherit;line-height:var(--mc-option-size-height, 32px);height:var(--mc-option-size-height, 32px)}.mc-select__panel .mc-select__footer{display:flex;align-items:center;box-sizing:border-box;padding:4px 12px;border-top-width:1px;border-top-style:solid;min-height:var(--mc-list-size-footer-min-height, 48px)}.mc-select__content{max-height:var(--mc-select-panel-size-max-height, 232px);padding:var(--mc-select-panel-size-vertical-padding, 4px) 0;overflow:hidden auto}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport{min-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px);max-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px)}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{max-width:100%}.mc-form-field-type-select:not(.mc-disabled) .mc-form-field-flex{cursor:pointer}.mc-select__search-container{border-bottom-width:1px;border-bottom-style:solid}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i2.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "component", type: i3$1.McIcon, selector: "[mc-icon]", inputs: ["color"] }, { kind: "directive", type: i3$1.McIconCSSStyler, selector: "[mc-icon]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
229
230
  }
230
231
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTimezoneSelect, decorators: [{
231
232
  type: Component,
232
233
  args: [{ selector: 'mc-timezone-select', exportAs: 'mcTimezoneSelect', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
233
234
  { provide: McFormFieldControl, useExisting: McTimezoneSelect },
234
235
  { provide: MC_OPTION_PARENT_COMPONENT, useExisting: McTimezoneSelect }
235
- ], template: "<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".mc-select__matcher{display:flex;align-items:center;width:100%;overflow:hidden;white-space:nowrap}.mc-select__matcher>span{flex:1;overflow:hidden}.mc-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.mc-select__match-container .mc-select__match-hidden-text{flex:0 0 70px;align-self:center;padding:0 8px;text-align:right}.mc-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.mc-select .mc-select__trigger{display:flex;box-sizing:border-box;position:relative;height:calc(var(--mc-form-field-size-height, 32px) - var(--mc-form-field-size-border-width, 1px) * 2);cursor:pointer}.mc-select .mc-select__trigger .mc-select__matcher{padding-left:calc(var(--mc-select-size-left-padding, 12px) - var(--mc-form-field-size-border-width, 1px));padding-right:calc(var(--mc-select-size-right-padding, 6px) - var(--mc-form-field-size-border-width, 1px))}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher{padding-left:calc(var(--mc-select-size-left-padding-multiple, 12px) - var(--mc-form-field-size-border-width, 1px))}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-select__match-container{display:flex}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-tag.mc-disabled .mc-tag__text{margin-right:7px}.mc-select.mc-disabled .mc-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mc-select__no-options-message{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--mc-option-size-height, 32px);cursor:default;outline:none;padding-left:var(--mc-option-size-horizontal-padding, 10px);padding-right:var(--mc-option-size-horizontal-padding, 10px);border:var(--mc-option-size-border-width, 2px) solid transparent}.mc-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;max-height:calc(var(--mc-form-field-size-height, 32px) - 4px);height:calc(var(--mc-form-field-size-height, 32px) - 4px)}.mc-select__match-list .mc-tag{margin-right:4px}.mc-select__arrow-wrapper{display:flex;align-self:center}.mc-form-field-appearance-fill .mc-select__arrow-wrapper,.mc-form-field-appearance-standard .mc-select__arrow-wrapper{transform:translateY(-50%)}.mc-form-field-appearance-outline .mc-select__arrow-wrapper{transform:translateY(-25%)}.mc-select__panel{min-width:100%;max-width:var(--mc-select-panel-size-max-width, 640px);overflow:hidden;border-width:var(--mc-select-panel-size-border-width, 1px);border-style:solid;border-bottom-left-radius:var(--mc-select-panel-size-border-radius, 4px);border-bottom-right-radius:var(--mc-select-panel-size-border-radius, 4px)}.mc-select__panel .mc-optgroup-label,.mc-select__panel .mc-option{font-size:inherit;line-height:var(--mc-option-size-height, 32px);height:var(--mc-option-size-height, 32px)}.mc-select__panel .mc-select__footer{display:flex;align-items:center;box-sizing:border-box;padding:4px 12px;border-top-width:1px;border-top-style:solid;min-height:var(--mc-list-size-footer-min-height, 48px)}.mc-select__content{max-height:var(--mc-select-panel-size-max-height, 232px);padding:var(--mc-select-panel-size-vertical-padding, 4px) 0;overflow:hidden auto}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport{min-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px);max-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px)}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{max-width:100%}.mc-form-field-type-select:not(.mc-disabled) .mc-form-field-flex{cursor:pointer}.mc-select__search-container{border-bottom-width:1px;border-bottom-style:solid}\n"] }]
236
+ ], template: "<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".mc-select__matcher{display:flex;align-items:center;width:100%;overflow:hidden;white-space:nowrap}.mc-select__matcher>span{flex:1;overflow:hidden}.mc-select__match-container{width:100%;text-overflow:ellipsis;overflow:hidden}.mc-select__match-container .mc-select__match-hidden-text{flex:0 0 70px;align-self:center;padding:0 8px;text-align:right}.mc-select{box-sizing:border-box;display:inline-block;width:100%;outline:none}.mc-select .mc-select__trigger{display:flex;box-sizing:border-box;position:relative;height:calc(var(--mc-form-field-size-height, 32px) - var(--mc-form-field-size-border-width, 1px) * 2);cursor:pointer}.mc-select .mc-select__trigger .mc-select__matcher{padding-left:var(--mc-select-size-left-padding, 12px);padding-right:var(--mc-select-size-right-padding, 6px)}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher{padding-left:var(--mc-select-size-left-padding-multiple, 12px)}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-select__match-container{display:flex}.mc-select .mc-select__trigger.mc-select__trigger_multiple .mc-select__matcher .mc-tag.mc-disabled .mc-tag__text{margin-right:7px}.mc-select.mc-disabled .mc-select__trigger{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.mc-select__no-options-message{display:flex;flex-direction:row;align-items:center;box-sizing:border-box;position:relative;max-width:100%;height:var(--mc-option-size-height, 32px);cursor:default;outline:none;padding-left:var(--mc-option-size-horizontal-padding, 10px);padding-right:var(--mc-option-size-horizontal-padding, 10px);border:var(--mc-option-size-border-width, 2px) solid transparent}.mc-select__match-list{display:flex;flex-wrap:wrap;overflow:hidden;max-height:calc(var(--mc-form-field-size-height, 32px) - 4px);height:calc(var(--mc-form-field-size-height, 32px) - 4px)}.mc-select__match-list .mc-tag{margin-right:4px}.mc-select__arrow-wrapper{display:flex;align-self:center}.mc-form-field-appearance-fill .mc-select__arrow-wrapper,.mc-form-field-appearance-standard .mc-select__arrow-wrapper{transform:translateY(-50%)}.mc-form-field-appearance-outline .mc-select__arrow-wrapper{transform:translateY(-25%)}.mc-select__panel{min-width:100%;max-width:var(--mc-select-panel-size-max-width, 640px);overflow:hidden;border-width:var(--mc-select-panel-size-border-width, 1px);border-style:solid;border-bottom-left-radius:var(--mc-select-panel-size-border-radius, 4px);border-bottom-right-radius:var(--mc-select-panel-size-border-radius, 4px)}.mc-select__panel .mc-optgroup-label,.mc-select__panel .mc-option{font-size:inherit;line-height:var(--mc-option-size-height, 32px);height:var(--mc-option-size-height, 32px)}.mc-select__panel .mc-select__footer{display:flex;align-items:center;box-sizing:border-box;padding:4px 12px;border-top-width:1px;border-top-style:solid;min-height:var(--mc-list-size-footer-min-height, 48px)}.mc-select__content{max-height:var(--mc-select-panel-size-max-height, 232px);padding:var(--mc-select-panel-size-vertical-padding, 4px) 0;overflow:hidden auto}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport{min-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px);max-height:calc(var(--mc-select-panel-size-max-height, 232px) - 8px)}.mc-select__content:not(:has(>.mc-select__no-options-message)) .cdk-virtual-scroll-viewport.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{max-width:100%}.mc-form-field-type-select:not(.mc-disabled) .mc-form-field-flex{cursor:pointer}.mc-select__search-container{border-bottom-width:1px;border-bottom-style:solid}\n"] }]
236
237
  }], propDecorators: { customTrigger: [{
237
238
  type: ContentChild,
238
239
  args: [McTimezoneSelectTrigger, { static: false }]
@@ -1 +1 @@
1
- {"version":3,"file":"ptsecurity-mosaic-timezone.mjs","sources":["../../../packages/mosaic/timezone/timezone.utils.ts","../../../packages/mosaic/timezone/utc-offset.pipe.ts","../../../packages/mosaic/timezone/cities-by-filter.pipe.ts","../../../packages/mosaic/timezone/timezone-option.component.ts","../../../packages/mosaic/timezone/timezone-option.component.html","../../../packages/mosaic/timezone/timezone-option.directive.ts","../../../packages/mosaic/timezone/timezone-select.component.ts","../../../packages/mosaic/timezone/timezone-select.component.html","../../../packages/mosaic/timezone/timezone.models.ts","../../../packages/mosaic/timezone/timezone.module.ts","../../../packages/mosaic/timezone/ptsecurity-mosaic-timezone.ts"],"sourcesContent":["import { McTimezoneZone, McTimezonesByCountry, McTimezoneGroup } from './timezone.models';\n\n\nconst minusUnicode = 0x2212; // Minus Sign U+2212\n\n/**\n * Convert string timezone offset (formatted offset) to number (minutes)\n */\nexport function parseOffset(offset: string): number {\n const minutesPerHour = 60;\n const [hours, minutes] = offset.split(':')\n .map((part: string) => parseInt(part, 10));\n\n return (hours * minutesPerHour) + (hours >= 0 ? minutes : minutes * -1);\n}\n\n/**\n * Grouping timezones by countries\n */\nexport function getZonesGroupedByCountry(\n data: McTimezoneZone[],\n otherCountriesLabel: string = 'Other',\n priorityCountry?: string\n): McTimezoneGroup[] {\n const systemTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const countryCode: string | undefined = priorityCountry\n ? priorityCountry\n : data.find((item: McTimezoneZone) => item.id === systemTimezone)?.countryCode;\n\n // collect data by countries\n const dataByCountries: McTimezonesByCountry = data.reduce<McTimezonesByCountry>(\n (result: McTimezonesByCountry, zone: McTimezoneZone) => {\n const countryName: string = zone.countryCode.toLowerCase() === countryCode?.toLowerCase()\n ? zone.countryName\n : otherCountriesLabel;\n\n if (!Array.isArray(result[countryName])) {\n result[countryName] = [];\n }\n\n result[countryName].push({ ...zone, countryName });\n\n return result;\n },\n {}\n );\n\n // make data groups\n const groups: McTimezoneGroup[] = Object.values(dataByCountries)\n .map<McTimezoneGroup>((zones: McTimezoneZone[]) => ({\n countryCode: zones[0].countryCode,\n countryName: zones[0].countryName,\n zones: zones.sort(timezonesSortComparator)\n }));\n\n // sort by priority country\n const priorityGroupIndex = groups.findIndex(\n (group) => group.countryCode.toLowerCase() === countryCode?.toLowerCase()\n );\n\n if (priorityGroupIndex > -1) {\n const priorityGroup = groups[priorityGroupIndex];\n\n groups.splice(priorityGroupIndex, 1);\n groups.unshift(priorityGroup);\n }\n\n return groups;\n}\n\nexport function offsetFormatter(value: string): string {\n const [hours, minutes] = value.split(':');\n const isPositiveOffset = /^\\d$/.test(hours.charAt(0));\n const preparedHours: string = !isPositiveOffset\n ? `${String.fromCharCode(minusUnicode)}${hours.substring(1)}`\n : parseInt(hours, 10) > 0 || parseInt(minutes, 10) > 0\n ? `+${hours}`\n : hours;\n\n const offset = [preparedHours, minutes].join(':');\n\n return `UTC ${offset}`;\n}\n\n/**\n * Comparator for timezone sorting. Sort by offset and country name\n */\nexport function timezonesSortComparator(first: McTimezoneZone, second: McTimezoneZone): number {\n return first.offset !== second.offset\n ? parseOffset(first.offset)\n : first.countryName.localeCompare(second.countryName);\n}\n\n/**\n * Filtering timezone cities by search string\n */\nexport function filterCitiesBySearchString(cities: string, searchPattern?: string): string {\n const onlyUTC: boolean = /^\\\\?(-|—|−|\\+)?(\\d{1,2}:?(\\d{1,2})?)?$/.test(searchPattern ?? '');\n\n if (!searchPattern || onlyUTC) {\n return cities;\n }\n\n const regex: RegExp = RegExp(`(${searchPattern})`, 'gi');\n\n return cities\n .split(',')\n .filter((city: string) => regex.test(city))\n .join(',');\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Pipe({\n name: 'utcOffset'\n})\nexport class UtcOffsetPipe implements PipeTransform {\n transform(value: string): string {\n return offsetFormatter(value);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { filterCitiesBySearchString } from './timezone.utils';\n\n\n@Pipe({\n name: 'citiesByFilter'\n})\nexport class CitiesByFilterPipe implements PipeTransform {\n transform(value: string, searchPattern?: string): string {\n return filterCitiesBySearchString(value, searchPattern);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n ElementRef,\n Input,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { McOption } from '@ptsecurity/mosaic/core';\n\nimport { McTimezoneZone } from './timezone.models';\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Component({\n selector: 'mc-timezone-option',\n exportAs: 'mcTimezoneOption',\n host: {\n class: 'mc-timezone-option'\n },\n templateUrl: 'timezone-option.component.html',\n styleUrls: ['../core/option/option.scss', 'timezone-option.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{\n provide: McOption,\n useExisting: forwardRef(() => McTimezoneOption)\n }]\n})\nexport class McTimezoneOption extends McOption {\n @ViewChild('tooltipContentWrapper', { static: false }) tooltipContentWrapper: ElementRef<HTMLElement>;\n @ViewChild('tooltipContent', { static: false }) tooltipContent: ElementRef<HTMLElement>;\n\n @Input() highlightText: string;\n\n @Input()\n get timezone(): McTimezoneZone {\n return this._timezone;\n }\n\n set timezone(zone: McTimezoneZone) {\n this._timezone = zone;\n this.value = zone.id;\n }\n\n private _timezone: McTimezoneZone;\n\n get viewValue(): string {\n const cities: string = [this.timezone.city, this.timezone.cities]\n .filter(Boolean)\n .join(', ');\n\n return [offsetFormatter(this.timezone.offset), cities]\n .join(' ');\n }\n}\n","<span class=\"mc-timezone-option__offset\"\n [innerHTML]=\"timezone.offset | utcOffset | mcHighlight:highlightText\">\n</span>\n\n<div class=\"mc-timezone-option__label\">\n <span class=\"mc-timezone-option__city\" [innerHTML]=\"timezone.city | mcHighlight:highlightText\"></span>\n <div #tooltipContentWrapper class=\"mc-timezone-option__cities\">\n <span #tooltipContent\n [innerHTML]=\"timezone.cities | citiesByFilter:highlightText | mcHighlight:highlightText\">\n </span>\n </div>\n</div>\n\n<div class=\"mc-option-overlay\"></div>\n","import { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n Directive,\n ElementRef,\n Inject,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef, ChangeDetectorRef\n} from '@angular/core';\nimport { PopUpPlacements } from '@ptsecurity/mosaic/core';\nimport { McTooltipTrigger, MC_TOOLTIP_SCROLL_STRATEGY } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTimezoneOption } from './timezone-option.component';\n\n\nexport const TOOLTIP_VISIBLE_ROWS_COUNT = 3;\n\n\n@Directive({\n selector: 'mc-timezone-option',\n host: {\n '(mouseenter)': 'onMouseEnter()',\n '(mouseleave)': 'onMouseLeave()'\n }\n})\nexport class McTimezoneOptionTooltip extends McTooltipTrigger implements AfterViewInit, OnDestroy {\n private resizeObserver: ResizeObserver;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n private option: McTimezoneOption,\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n this.tooltipPlacement = PopUpPlacements.Right;\n }\n\n ngAfterViewInit(): void {\n this.content = this.option.viewValue;\n this.option.tooltipContentWrapper.nativeElement.style.webkitLineClamp = TOOLTIP_VISIBLE_ROWS_COUNT.toString();\n\n this.resizeObserver = new ResizeObserver(() => this.checkTooltipDisabled());\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n this.resizeObserver?.unobserve(this.option.tooltipContentWrapper.nativeElement);\n }\n\n onMouseEnter(): void {\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n this.checkTooltipDisabled();\n }\n\n onMouseLeave(): void {\n this.resizeObserver.unobserve(this.option.tooltipContentWrapper.nativeElement);\n\n this.disabled = true;\n }\n\n private checkTooltipDisabled(): void {\n const count: number = this.option.tooltipContent.nativeElement.getClientRects().length;\n\n this.disabled = count <= TOOLTIP_VISIBLE_ROWS_COUNT;\n\n this.changeDetectorRef.detectChanges();\n }\n}\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, Directive, ContentChild } from '@angular/core';\nimport { MC_OPTION_PARENT_COMPONENT } from '@ptsecurity/mosaic/core';\nimport { McFormFieldControl, McCleaner } from '@ptsecurity/mosaic/form-field';\nimport { McSelect, McSelectSearch } from '@ptsecurity/mosaic/select';\n\n\n@Directive({ selector: 'mc-timezone-select-trigger' })\nexport class McTimezoneSelectTrigger {}\n\n@Component({\n selector: 'mc-timezone-select',\n exportAs: 'mcTimezoneSelect',\n templateUrl: 'timezone-select.component.html',\n styleUrls: ['../select/select.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: McFormFieldControl, useExisting: McTimezoneSelect },\n { provide: MC_OPTION_PARENT_COMPONENT, useExisting: McTimezoneSelect }\n ]\n})\nexport class McTimezoneSelect extends McSelect {\n @ContentChild(McTimezoneSelectTrigger, { static: false }) customTrigger: McTimezoneSelectTrigger;\n\n @ContentChild('mcSelectCleaner', { static: false }) cleaner: McCleaner;\n\n @ContentChild(McSelectSearch, { static: false }) search: McSelectSearch;\n}\n","<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n","/* tslint:disable:naming-convention */\n\nexport interface McTimezoneZone {\n id: string;\n offset: string;\n city: string;\n countryCode: string;\n countryName: string;\n cities: string;\n}\n\nexport interface McTimezoneGroup {\n countryName: string;\n countryCode: string;\n zones: McTimezoneZone[];\n}\n\nexport interface McTimezonesByCountry {\n [countryName: string]: McTimezoneZone[];\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McHighlightModule, McOptionModule } from '@ptsecurity/mosaic/core';\nimport { McFormFieldModule } from '@ptsecurity/mosaic/form-field';\nimport { McIconModule } from '@ptsecurity/mosaic/icon';\nimport { McSelectModule } from '@ptsecurity/mosaic/select';\nimport { McTagsModule } from '@ptsecurity/mosaic/tags';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { CitiesByFilterPipe } from './cities-by-filter.pipe';\nimport { McTimezoneOption } from './timezone-option.component';\nimport { McTimezoneOptionTooltip } from './timezone-option.directive';\nimport { McTimezoneSelect, McTimezoneSelectTrigger } from './timezone-select.component';\nimport { UtcOffsetPipe } from './utc-offset.pipe';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n McFormFieldModule,\n McOptionModule,\n McSelectModule,\n McIconModule,\n McTagsModule,\n McToolTipModule,\n McHighlightModule\n ],\n declarations: [\n UtcOffsetPipe,\n CitiesByFilterPipe,\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ],\n exports: [\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ]\n})\nexport class McTimezoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.UtcOffsetPipe","i3.CitiesByFilterPipe","i1","i3"],"mappings":";;;;;;;;;;;;;;;;AAGA,MAAM,YAAY,GAAG,MAAM,CAAC;AAE5B;;AAEG;AACG,SAAU,WAAW,CAAC,MAAc,EAAA;IACtC,MAAM,cAAc,GAAG,EAAE,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC;AACrC,SAAA,GAAG,CAAC,CAAC,IAAY,KAAK,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAE/C,OAAO,CAAC,KAAK,GAAG,cAAc,KAAK,KAAK,IAAI,CAAC,GAAG,OAAO,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED;;AAEG;AACG,SAAU,wBAAwB,CACpC,IAAsB,EACtB,mBAA8B,GAAA,OAAO,EACrC,eAAwB,EAAA;IAExB,MAAM,cAAc,GAAW,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;IAChF,MAAM,WAAW,GAAuB,eAAe;AACnD,UAAE,eAAe;AACjB,UAAE,IAAI,CAAC,IAAI,CAAC,CAAC,IAAoB,KAAK,IAAI,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,WAAW,CAAC;;IAGnF,MAAM,eAAe,GAAyB,IAAI,CAAC,MAAM,CACrD,CAAC,MAA4B,EAAE,IAAoB,KAAI;AACnD,QAAA,MAAM,WAAW,GAAW,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,WAAW,EAAE,WAAW,EAAE;cACnF,IAAI,CAAC,WAAW;cAChB,mBAAmB,CAAC;QAE1B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE;AACrC,YAAA,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;SAC5B;AAED,QAAA,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AAEnD,QAAA,OAAO,MAAM,CAAC;KACjB,EACD,EAAE,CACL,CAAC;;AAGF,IAAA,MAAM,MAAM,GAAsB,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC;AAC3D,SAAA,GAAG,CAAkB,CAAC,KAAuB,MAAM;AAChD,QAAA,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW;AACjC,QAAA,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW;AACjC,QAAA,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC;AAC7C,KAAA,CAAC,CAAC,CAAC;;IAGR,MAAM,kBAAkB,GAAG,MAAM,CAAC,SAAS,CACvC,CAAC,KAAK,KAAK,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,WAAW,EAAE,WAAW,EAAE,CAC5E,CAAC;AAEF,IAAA,IAAI,kBAAkB,GAAG,CAAC,CAAC,EAAE;AACzB,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAEjD,QAAA,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;AACrC,QAAA,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;KACjC;AAED,IAAA,OAAO,MAAM,CAAC;AAClB,CAAC;AAEK,SAAU,eAAe,CAAC,KAAa,EAAA;AACzC,IAAA,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC1C,IAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,aAAa,GAAW,CAAC,gBAAgB;AAC3C,UAAE,CAAA,EAAG,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,CAAA,EAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAE,CAAA;AAC7D,UAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC;cAChD,CAAI,CAAA,EAAA,KAAK,CAAE,CAAA;cACX,KAAK,CAAC;AAEhB,IAAA,MAAM,MAAM,GAAG,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAElD,OAAO,CAAA,IAAA,EAAO,MAAM,CAAA,CAAE,CAAC;AAC3B,CAAC;AAED;;AAEG;AACa,SAAA,uBAAuB,CAAC,KAAqB,EAAE,MAAsB,EAAA;AACjF,IAAA,OAAO,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;AACjC,UAAE,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC;UACzB,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AAC9D,CAAC;AAED;;AAEG;AACa,SAAA,0BAA0B,CAAC,MAAc,EAAE,aAAsB,EAAA;IAC7E,MAAM,OAAO,GAAY,wCAAwC,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;AAE5F,IAAA,IAAI,CAAC,aAAa,IAAI,OAAO,EAAE;AAC3B,QAAA,OAAO,MAAM,CAAC;KACjB;IAED,MAAM,KAAK,GAAW,MAAM,CAAC,CAAA,CAAA,EAAI,aAAa,CAAG,CAAA,CAAA,EAAE,IAAI,CAAC,CAAC;AAEzD,IAAA,OAAO,MAAM;SACR,KAAK,CAAC,GAAG,CAAC;AACV,SAAA,MAAM,CAAC,CAAC,IAAY,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC1C,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB;;MCrGa,aAAa,CAAA;AACtB,IAAA,SAAS,CAAC,KAAa,EAAA;AACnB,QAAA,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;KACjC;iIAHQ,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;+HAAb,aAAa,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,CAAA,EAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,WAAW;AACpB,iBAAA,CAAA;;;MCCY,kBAAkB,CAAA;IAC3B,SAAS,CAAC,KAAa,EAAE,aAAsB,EAAA;AAC3C,QAAA,OAAO,0BAA0B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;KAC3D;iIAHQ,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;+HAAlB,kBAAkB,EAAA,IAAA,EAAA,gBAAA,EAAA,CAAA,CAAA,EAAA;;2FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAH9B,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,IAAI,EAAE,gBAAgB;AACzB,iBAAA,CAAA;;;ACuBK,MAAO,gBAAiB,SAAQ,QAAQ,CAAA;AAM1C,IAAA,IACI,QAAQ,GAAA;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;KACzB;IAED,IAAI,QAAQ,CAAC,IAAoB,EAAA;AAC7B,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC;KACxB;AAID,IAAA,IAAI,SAAS,GAAA;AACT,QAAA,MAAM,MAAM,GAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;aAC5D,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhB,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;aACjD,IAAI,CAAC,GAAG,CAAC,CAAC;KAClB;iIAzBQ,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,+JALd,CAAC;AACR,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,WAAW,EAAE,UAAU,EAAC,MAAM,gBAAgB,EAAC;AAClD,aAAA,CAAC,oTC5BN,qkBAcA,EAAA,MAAA,EAAA,CAAA,85BAAA,EAAA,qiBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAC,kBAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDgBa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAf5B,SAAS;+BACI,oBAAoB,EAAA,QAAA,EACpB,kBAAkB,EACtB,IAAA,EAAA;AACF,wBAAA,KAAK,EAAE,oBAAoB;qBAC9B,EAGc,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,aACpC,CAAC;AACR,4BAAA,OAAO,EAAE,QAAQ;AACjB,4BAAA,WAAW,EAAE,UAAU,EAAC,sBAAsB,EAAC;yBAClD,CAAC,EAAA,QAAA,EAAA,qkBAAA,EAAA,MAAA,EAAA,CAAA,85BAAA,EAAA,qiBAAA,CAAA,EAAA,CAAA;8BAGqD,qBAAqB,EAAA,CAAA;sBAA3E,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;gBACL,cAAc,EAAA,CAAA;sBAA7D,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,gBAAgB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;gBAErC,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAGF,QAAQ,EAAA,CAAA;sBADX,KAAK;;;AElBH,MAAM,0BAA0B,GAAG,EAAE;AAUtC,MAAO,uBAAwB,SAAQ,gBAAgB,CAAA;AAGzD,IAAA,WAAA,CACY,iBAAoC,EACpC,MAAwB,EAChC,OAAgB,EAChB,UAAsB,EACtB,MAAc,EACd,gBAAkC,EAClC,QAA0B,EACU,cAAc,EACtC,SAAyB,EAAA;AAErC,QAAA,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,SAAS,CAAC,CAAC;QAVlF,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB,CAAmB;QACpC,IAAM,CAAA,MAAA,GAAN,MAAM,CAAkB;AAUhC,QAAA,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC,KAAK,CAAC;KACjD;IAED,eAAe,GAAA;QACX,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;AACrC,QAAA,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,KAAK,CAAC,eAAe,GAAG,0BAA0B,CAAC,QAAQ,EAAE,CAAC;AAE9G,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;AAC5E,QAAA,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;KAChF;IAED,WAAW,GAAA;QACP,KAAK,CAAC,WAAW,EAAE,CAAC;AACpB,QAAA,IAAI,CAAC,cAAc,EAAE,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;KACnF;IAED,YAAY,GAAA;AACR,QAAA,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;QAC7E,IAAI,CAAC,oBAAoB,EAAE,CAAC;KAC/B;IAED,YAAY,GAAA;AACR,QAAA,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;AAE/E,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;KACxB;IAEO,oBAAoB,GAAA;AACxB,QAAA,MAAM,KAAK,GAAW,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC;AAEvF,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,IAAI,0BAA0B,CAAC;AAEpD,QAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;KAC1C;AAhDQ,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,uBAAuB,uNAWpB,0BAA0B,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAX7B,uBAAuB,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAPnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACF,wBAAA,cAAc,EAAE,gBAAgB;AAChC,wBAAA,cAAc,EAAE,gBAAgB;AACnC,qBAAA;AACH,iBAAA,CAAA;;0BAYQ,MAAM;2BAAC,0BAA0B,CAAA;;0BACjC,QAAQ;;;MCjCJ,uBAAuB,CAAA;iIAAvB,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;qHAAvB,uBAAuB,EAAA,QAAA,EAAA,4BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC,SAAS;mBAAC,EAAE,QAAQ,EAAE,4BAA4B,EAAE,CAAA;;AAe/C,MAAO,gBAAiB,SAAQ,QAAQ,CAAA;iIAAjC,gBAAgB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EALd,QAAA,EAAA,oBAAA,EAAA,SAAA,EAAA;AACP,YAAA,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,gBAAgB,EAAE;AAC9D,YAAA,EAAE,OAAO,EAAE,0BAA0B,EAAE,WAAW,EAAE,gBAAgB,EAAE;AACzE,SAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGa,uBAAuB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAIvB,cAAc,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC1BhC,k8EA8DA,EAAA,MAAA,EAAA,CAAA,2vHAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,qEAAA,EAAA,MAAA,EAAA,CAAA,2BAAA,EAAA,8BAAA,EAAA,qCAAA,EAAA,4BAAA,EAAA,4BAAA,EAAA,0BAAA,EAAA,2BAAA,EAAA,6BAAA,EAAA,8BAAA,EAAA,kCAAA,EAAA,+BAAA,EAAA,mCAAA,EAAA,mCAAA,EAAA,yBAAA,EAAA,iCAAA,EAAA,sCAAA,EAAA,gCAAA,EAAA,iCAAA,EAAA,uCAAA,EAAA,kCAAA,EAAA,yBAAA,EAAA,wCAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,4DAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,MAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,eAAA,EAAA,QAAA,EAAA,WAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA,EAAA;;2FDzCa,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAZ5B,SAAS;+BACI,oBAAoB,EAAA,QAAA,EACpB,kBAAkB,EAAA,aAAA,EAGb,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA;AACP,wBAAA,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,kBAAkB,EAAE;AAC9D,wBAAA,EAAE,OAAO,EAAE,0BAA0B,EAAE,WAAW,kBAAkB,EAAE;AACzE,qBAAA,EAAA,QAAA,EAAA,k8EAAA,EAAA,MAAA,EAAA,CAAA,2vHAAA,CAAA,EAAA,CAAA;8BAGyD,aAAa,EAAA,CAAA;sBAAtE,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;gBAEJ,OAAO,EAAA,CAAA;sBAA1D,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,iBAAiB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;gBAED,MAAM,EAAA,CAAA;sBAAtD,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,cAAc,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;;;AE1BnD;;MC4Ca,gBAAgB,CAAA;iIAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAhB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,iBAdrB,aAAa;YACb,kBAAkB;YAClB,gBAAgB;YAChB,gBAAgB;YAChB,uBAAuB;AACvB,YAAA,uBAAuB,aAhBvB,YAAY;YACZ,aAAa;YACb,iBAAiB;YACjB,cAAc;YACd,cAAc;YACd,YAAY;YACZ,YAAY;YACZ,eAAe;AACf,YAAA,iBAAiB,aAWjB,gBAAgB;YAChB,gBAAgB;YAChB,uBAAuB;YACvB,uBAAuB,CAAA,EAAA,CAAA,CAAA,EAAA;AAGlB,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAzBrB,YAAY;YACZ,aAAa;YACb,iBAAiB;YACjB,cAAc;YACd,cAAc;YACd,YAAY;YACZ,YAAY;YACZ,eAAe;YACf,iBAAiB,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAiBZ,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBA3B5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,aAAa;wBACb,iBAAiB;wBACjB,cAAc;wBACd,cAAc;wBACd,YAAY;wBACZ,YAAY;wBACZ,eAAe;wBACf,iBAAiB;AACpB,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACV,aAAa;wBACb,kBAAkB;wBAClB,gBAAgB;wBAChB,gBAAgB;wBAChB,uBAAuB;wBACvB,uBAAuB;AAC1B,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,gBAAgB;wBAChB,gBAAgB;wBAChB,uBAAuB;wBACvB,uBAAuB;AAC1B,qBAAA;AACJ,iBAAA,CAAA;;;AC3CD;;AAEG;;;;"}
1
+ {"version":3,"file":"ptsecurity-mosaic-timezone.mjs","sources":["../../../packages/mosaic/timezone/timezone.utils.ts","../../../packages/mosaic/timezone/utc-offset.pipe.ts","../../../packages/mosaic/timezone/cities-by-filter.pipe.ts","../../../packages/mosaic/timezone/timezone-option.component.ts","../../../packages/mosaic/timezone/timezone-option.component.html","../../../packages/mosaic/timezone/timezone-option.directive.ts","../../../packages/mosaic/timezone/timezone-select.component.ts","../../../packages/mosaic/timezone/timezone-select.component.html","../../../packages/mosaic/timezone/timezone.models.ts","../../../packages/mosaic/timezone/timezone.module.ts","../../../packages/mosaic/timezone/ptsecurity-mosaic-timezone.ts"],"sourcesContent":["import { McTimezoneZone, McTimezonesByCountry, McTimezoneGroup } from './timezone.models';\n\n\nconst minusUnicode = 0x2212; // Minus Sign U+2212\n\n/**\n * Convert string timezone offset (formatted offset) to number (minutes)\n */\nexport function parseOffset(offset: string): number {\n const minutesPerHour = 60;\n const [hours, minutes] = offset.split(':')\n .map((part: string) => parseInt(part, 10));\n\n return (hours * minutesPerHour) + (hours >= 0 ? minutes : minutes * -1);\n}\n\n/**\n * Grouping timezones by countries\n */\nexport function getZonesGroupedByCountry(\n data: McTimezoneZone[],\n otherCountriesLabel: string = 'Other',\n priorityCountry?: string\n): McTimezoneGroup[] {\n const systemTimezone: string = Intl.DateTimeFormat().resolvedOptions().timeZone;\n const countryCode: string | undefined = priorityCountry\n ? priorityCountry\n : data.find((item: McTimezoneZone) => item.id === systemTimezone)?.countryCode;\n\n // collect data by countries\n const dataByCountries: McTimezonesByCountry = data.reduce<McTimezonesByCountry>(\n (result: McTimezonesByCountry, zone: McTimezoneZone) => {\n const countryName: string = zone.countryCode.toLowerCase() === countryCode?.toLowerCase()\n ? zone.countryName\n : otherCountriesLabel;\n\n if (!Array.isArray(result[countryName])) {\n result[countryName] = [];\n }\n\n result[countryName].push({ ...zone, countryName });\n\n return result;\n },\n {}\n );\n\n // make data groups\n const groups: McTimezoneGroup[] = Object.values(dataByCountries)\n .map<McTimezoneGroup>((zones: McTimezoneZone[]) => ({\n countryCode: zones[0].countryCode,\n countryName: zones[0].countryName,\n zones: zones.sort(timezonesSortComparator)\n }));\n\n // sort by priority country\n const priorityGroupIndex = groups.findIndex(\n (group) => group.countryCode.toLowerCase() === countryCode?.toLowerCase()\n );\n\n if (priorityGroupIndex > -1) {\n const priorityGroup = groups[priorityGroupIndex];\n\n groups.splice(priorityGroupIndex, 1);\n groups.unshift(priorityGroup);\n }\n\n return groups;\n}\n\nexport function offsetFormatter(value: string): string {\n const [hours, minutes] = value.split(':');\n const isPositiveOffset = /^\\d$/.test(hours.charAt(0));\n const preparedHours: string = !isPositiveOffset\n ? `${String.fromCharCode(minusUnicode)}${hours.substring(1)}`\n : parseInt(hours, 10) > 0 || parseInt(minutes, 10) > 0\n ? `+${hours}`\n : hours;\n\n const offset = [preparedHours, minutes].join(':');\n\n return `UTC ${offset}`;\n}\n\n/**\n * Comparator for timezone sorting. Sort by offset and country name\n */\nexport function timezonesSortComparator(first: McTimezoneZone, second: McTimezoneZone): number {\n return first.offset !== second.offset\n ? parseOffset(first.offset)\n : first.countryName.localeCompare(second.countryName);\n}\n\n/**\n * Filtering timezone cities by search string\n */\nexport function filterCitiesBySearchString(cities: string, searchPattern?: string): string {\n const onlyUTC: boolean = /^\\\\?(-|—|−|\\+)?(\\d{1,2}:?(\\d{1,2})?)?$/.test(searchPattern ?? '');\n\n if (!searchPattern || onlyUTC) {\n return cities;\n }\n\n const regex: RegExp = RegExp(`(${searchPattern})`, 'gi');\n\n return cities\n .split(',')\n .filter((city: string) => regex.test(city))\n .join(',');\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Pipe({\n name: 'utcOffset'\n})\nexport class UtcOffsetPipe implements PipeTransform {\n transform(value: string): string {\n return offsetFormatter(value);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport { filterCitiesBySearchString } from './timezone.utils';\n\n\n@Pipe({\n name: 'citiesByFilter'\n})\nexport class CitiesByFilterPipe implements PipeTransform {\n transform(value: string, searchPattern?: string): string {\n return filterCitiesBySearchString(value, searchPattern);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n ElementRef,\n Input,\n ViewEncapsulation,\n forwardRef\n} from '@angular/core';\nimport { McOption } from '@ptsecurity/mosaic/core';\n\nimport { McTimezoneZone } from './timezone.models';\nimport { offsetFormatter } from './timezone.utils';\n\n\n@Component({\n selector: 'mc-timezone-option',\n exportAs: 'mcTimezoneOption',\n host: {\n class: 'mc-timezone-option'\n },\n templateUrl: 'timezone-option.component.html',\n styleUrls: ['../core/option/option.scss', 'timezone-option.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [{\n provide: McOption,\n useExisting: forwardRef(() => McTimezoneOption)\n }]\n})\nexport class McTimezoneOption extends McOption {\n @ViewChild('tooltipContentWrapper', { static: false }) tooltipContentWrapper: ElementRef<HTMLElement>;\n @ViewChild('tooltipContent', { static: false }) tooltipContent: ElementRef<HTMLElement>;\n\n @Input() highlightText: string;\n\n @Input()\n get timezone(): McTimezoneZone {\n return this._timezone;\n }\n\n set timezone(zone: McTimezoneZone) {\n this._timezone = zone;\n this.value = zone.id;\n }\n\n private _timezone: McTimezoneZone;\n\n get viewValue(): string {\n const cities: string = [this.timezone.city, this.timezone.cities]\n .filter(Boolean)\n .join(', ');\n\n return [offsetFormatter(this.timezone.offset), cities]\n .join(' ');\n }\n}\n","<span class=\"mc-timezone-option__offset\"\n [innerHTML]=\"timezone.offset | utcOffset | mcHighlight:highlightText\">\n</span>\n\n<div class=\"mc-timezone-option__label\">\n <span class=\"mc-timezone-option__city\" [innerHTML]=\"timezone.city | mcHighlight:highlightText\"></span>\n <div #tooltipContentWrapper class=\"mc-timezone-option__cities\">\n <span #tooltipContent\n [innerHTML]=\"timezone.cities | citiesByFilter:highlightText | mcHighlight:highlightText\">\n </span>\n </div>\n</div>\n\n<div class=\"mc-option-overlay\"></div>\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n Directive,\n ElementRef,\n Inject,\n NgZone,\n OnDestroy,\n Optional,\n ViewContainerRef, ChangeDetectorRef\n} from '@angular/core';\nimport { PopUpPlacements } from '@ptsecurity/mosaic/core';\nimport { McTooltipTrigger, MC_TOOLTIP_SCROLL_STRATEGY } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTimezoneOption } from './timezone-option.component';\n\n\nexport const TOOLTIP_VISIBLE_ROWS_COUNT = 3;\n\n\n@Directive({\n selector: 'mc-timezone-option',\n host: {\n '(mouseenter)': 'onMouseEnter()',\n '(mouseleave)': 'onMouseLeave()'\n }\n})\nexport class McTimezoneOptionTooltip extends McTooltipTrigger implements AfterViewInit, OnDestroy {\n private resizeObserver: ResizeObserver;\n\n constructor(\n private changeDetectorRef: ChangeDetectorRef,\n private option: McTimezoneOption,\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n focusMonitor: FocusMonitor\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);\n this.tooltipPlacement = PopUpPlacements.Right;\n }\n\n ngAfterViewInit(): void {\n this.content = this.option.viewValue;\n this.option.tooltipContentWrapper.nativeElement.style.webkitLineClamp = TOOLTIP_VISIBLE_ROWS_COUNT.toString();\n\n this.resizeObserver = new ResizeObserver(() => this.checkTooltipDisabled());\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n this.resizeObserver?.unobserve(this.option.tooltipContentWrapper.nativeElement);\n }\n\n onMouseEnter(): void {\n this.resizeObserver.observe(this.option.tooltipContentWrapper.nativeElement);\n this.checkTooltipDisabled();\n }\n\n onMouseLeave(): void {\n this.resizeObserver.unobserve(this.option.tooltipContentWrapper.nativeElement);\n\n this.disabled = true;\n }\n\n private checkTooltipDisabled(): void {\n const count: number = this.option.tooltipContent.nativeElement.getClientRects().length;\n\n this.disabled = count <= TOOLTIP_VISIBLE_ROWS_COUNT;\n\n this.changeDetectorRef.detectChanges();\n }\n}\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, Directive, ContentChild } from '@angular/core';\nimport { MC_OPTION_PARENT_COMPONENT } from '@ptsecurity/mosaic/core';\nimport { McFormFieldControl, McCleaner } from '@ptsecurity/mosaic/form-field';\nimport { McSelect, McSelectSearch } from '@ptsecurity/mosaic/select';\n\n\n@Directive({ selector: 'mc-timezone-select-trigger' })\nexport class McTimezoneSelectTrigger {}\n\n@Component({\n selector: 'mc-timezone-select',\n exportAs: 'mcTimezoneSelect',\n templateUrl: 'timezone-select.component.html',\n styleUrls: ['../select/select.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n { provide: McFormFieldControl, useExisting: McTimezoneSelect },\n { provide: MC_OPTION_PARENT_COMPONENT, useExisting: McTimezoneSelect }\n ]\n})\nexport class McTimezoneSelect extends McSelect {\n @ContentChild(McTimezoneSelectTrigger, { static: false }) customTrigger: McTimezoneSelectTrigger;\n\n @ContentChild('mcSelectCleaner', { static: false }) cleaner: McCleaner;\n\n @ContentChild(McSelectSearch, { static: false }) search: McSelectSearch;\n}\n","<div cdk-overlay-origin\n class=\"mc-select__trigger\"\n #origin=\"cdkOverlayOrigin\"\n #trigger>\n\n <div class=\"mc-select__matcher\" [ngSwitch]=\"empty\">\n <span class=\"mc-select__placeholder\" *ngSwitchCase=\"true\">{{ placeholder || '\\u00A0' }}</span>\n <span *ngSwitchCase=\"false\" [ngSwitch]=\"!!customTrigger\">\n <div *ngSwitchCase=\"false\" class=\"mc-select__match-container\">\n <span class=\"mc-select__matcher-text\">{{ triggerValue }}</span>\n </div>\n <ng-content select=\"mc-timezone-select-trigger\" *ngSwitchCase=\"true\"></ng-content>\n </span>\n\n <div class=\"mc-select__cleaner\" *ngIf=\"canShowCleaner\" (click)=\"clearValue($event)\">\n <ng-content select=\"mc-cleaner\"></ng-content>\n </div>\n\n <div class=\"mc-select__arrow-wrapper\">\n <i class=\"mc-select__arrow\" mc-icon=\"mc-angle-down-S_16\"></i>\n </div>\n </div>\n</div>\n\n<ng-template\n cdk-connected-overlay\n cdkConnectedOverlayLockPosition\n [cdkConnectedOverlayHasBackdrop]=\"hasBackdrop\"\n [cdkConnectedOverlayBackdropClass]=\"backdropClass\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"panelOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayMinWidth]=\"triggerRect?.width!\"\n [cdkConnectedOverlayOffsetY]=\"offsetY\"\n (backdropClick)=\"close()\"\n (attach)=\"onAttached()\"\n (detach)=\"close()\">\n\n <div #panel\n class=\"mc-select__panel {{ getPanelTheme() }}\"\n [ngClass]=\"panelClass\"\n [style.transformOrigin]=\"transformOrigin\"\n [style.font-size.px]=\"triggerFontSize\"\n (keydown)=\"handleKeydown($event)\">\n\n <div *ngIf=\"search\" class=\"mc-select__search-container\">\n <ng-content select=\"[mcSelectSearch]\"></ng-content>\n </div>\n\n <div #optionsContainer\n class=\"mc-select__content\"\n [@fadeInContent]=\"'showing'\"\n (@fadeInContent.done)=\"panelDoneAnimatingStream.next($event.toState)\">\n\n <div *ngIf=\"isEmptySearchResult\" class=\"mc-select__no-options-message\">\n <ng-content select=\"[mc-select-search-empty-result]\"></ng-content>\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n","/* tslint:disable:naming-convention */\n\nexport interface McTimezoneZone {\n id: string;\n offset: string;\n city: string;\n countryCode: string;\n countryName: string;\n cities: string;\n}\n\nexport interface McTimezoneGroup {\n countryName: string;\n countryCode: string;\n zones: McTimezoneZone[];\n}\n\nexport interface McTimezonesByCountry {\n [countryName: string]: McTimezoneZone[];\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { McHighlightModule, McOptionModule } from '@ptsecurity/mosaic/core';\nimport { McFormFieldModule } from '@ptsecurity/mosaic/form-field';\nimport { McIconModule } from '@ptsecurity/mosaic/icon';\nimport { McSelectModule } from '@ptsecurity/mosaic/select';\nimport { McTagsModule } from '@ptsecurity/mosaic/tags';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { CitiesByFilterPipe } from './cities-by-filter.pipe';\nimport { McTimezoneOption } from './timezone-option.component';\nimport { McTimezoneOptionTooltip } from './timezone-option.directive';\nimport { McTimezoneSelect, McTimezoneSelectTrigger } from './timezone-select.component';\nimport { UtcOffsetPipe } from './utc-offset.pipe';\n\n\n@NgModule({\n imports: [\n CommonModule,\n OverlayModule,\n McFormFieldModule,\n McOptionModule,\n McSelectModule,\n McIconModule,\n McTagsModule,\n McToolTipModule,\n McHighlightModule\n ],\n declarations: [\n UtcOffsetPipe,\n CitiesByFilterPipe,\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ],\n exports: [\n McTimezoneSelect,\n McTimezoneOption,\n McTimezoneOptionTooltip,\n McTimezoneSelectTrigger\n ]\n})\nexport class McTimezoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.UtcOffsetPipe","i3.CitiesByFilterPipe","i1","i3"],"mappings":"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"}
@@ -22,8 +22,7 @@ class McTitleDirective extends McTooltipTrigger {
22
22
  return this.childContainer.nativeElement || this.childContainer;
23
23
  }
24
24
  constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, focusMonitor, scrollStrategy, direction, componentInstance) {
25
- super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
26
- this.focusMonitor = focusMonitor;
25
+ super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);
27
26
  this.componentInstance = componentInstance;
28
27
  this.resizeStream = new Subject();
29
28
  this.debounceInterval = 100;
@@ -1 +1 @@
1
- {"version":3,"file":"ptsecurity-mosaic-title.mjs","sources":["../../../packages/mosaic/title/title.directive.ts","../../../packages/mosaic/title/title.module.ts","../../../packages/mosaic/title/ptsecurity-mosaic-title.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n Host,\n Inject,\n NgZone,\n Optional,\n ViewContainerRef\n} from '@angular/core';\nimport { MC_TITLE_TEXT_REF, McTitleTextRef } from '@ptsecurity/mosaic/core';\nimport { MC_TOOLTIP_SCROLL_STRATEGY, McTooltipTrigger } from '@ptsecurity/mosaic/tooltip';\nimport { Observable, Subject, Subscription, throttleTime } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\n\n@Directive({\n selector: '[mc-title]',\n exportAs: 'mcTitle',\n host: {\n '(mouseenter)': 'handleElementEnter()',\n '(mouseleave)': 'hideTooltip()',\n '(window:resize)': 'resizeStream.next($event)'\n }\n})\nexport class McTitleDirective extends McTooltipTrigger implements AfterViewInit {\n get isOverflown(): boolean {\n return this.parent.clientWidth < this.child.scrollWidth || this.parent.clientHeight < this.child.scrollHeight;\n }\n\n get viewValue(): string {\n return (this.parent.textContent || '').trim();\n }\n\n get parent(): HTMLElement {\n return this.parentContainer.nativeElement || this.parentContainer;\n }\n\n get child(): HTMLElement {\n return this.childContainer.nativeElement || this.childContainer;\n }\n\n readonly resizeStream = new Subject<Event>();\n\n private readonly debounceInterval: number = 100;\n\n private resizeSubscription = Subscription.EMPTY;\n private mutationSubscription = Subscription.EMPTY;\n private focusMonitorSubscription = Subscription.EMPTY;\n\n @ContentChild('mcTitleText', { descendants: true, static: true })\n private childContainer: ElementRef;\n\n @ContentChild('mcTitleContainer')\n private parentContainer: ElementRef;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n private focusMonitor: FocusMonitor,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n @Host() @Optional() @Inject(MC_TITLE_TEXT_REF) private componentInstance?: McTitleTextRef\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n }\n\n ngAfterViewInit() {\n this.parentContainer = this.parentContainer || this.componentInstance?.parentTextElement || this.elementRef;\n this.childContainer = this.childContainer || this.componentInstance?.textElement || this.elementRef;\n this.content = this.viewValue;\n\n this.resizeSubscription = this.resizeStream\n .pipe(debounceTime(this.debounceInterval))\n .subscribe(() => this.disabled = !this.isOverflown);\n\n this.mutationSubscription = this.createMutationObserver()\n .pipe(throttleTime(this.debounceInterval))\n .subscribe(() => {\n this.disabled = !this.isOverflown;\n this.content = this.viewValue;\n });\n\n this.focusMonitorSubscription = this.focusMonitor.monitor(this.elementRef).subscribe(\n (origin) => (origin === 'keyboard')\n ? this.handleElementEnter() : this.hideTooltip()\n );\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n\n this.resizeSubscription.unsubscribe();\n this.mutationSubscription.unsubscribe();\n this.focusMonitorSubscription.unsubscribe();\n this.focusMonitor.stopMonitoring(this.elementRef);\n }\n\n handleElementEnter() {\n this.disabled = !this.isOverflown;\n }\n\n hideTooltip() {\n this.disabled = true;\n }\n\n private createMutationObserver(): Observable<MutationRecord[]> {\n return new Observable((observer) => {\n const mutationObserver = new MutationObserver(\n (mutations) => observer.next(mutations)\n );\n mutationObserver.observe(this.parent, {\n characterData: true, attributes: false, childList: true, subtree: true\n });\n\n return () => mutationObserver.disconnect();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTitleDirective } from './title.directive';\n\n\n@NgModule({\n imports: [McToolTipModule],\n declarations: [McTitleDirective],\n exports: [McTitleDirective]\n})\nexport class McTitleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ptsecurity-mosaic-title.mjs","sources":["../../../packages/mosaic/title/title.directive.ts","../../../packages/mosaic/title/title.module.ts","../../../packages/mosaic/title/ptsecurity-mosaic-title.ts"],"sourcesContent":["import { FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';\nimport {\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n Host,\n Inject,\n NgZone,\n Optional,\n ViewContainerRef\n} from '@angular/core';\nimport { MC_TITLE_TEXT_REF, McTitleTextRef } from '@ptsecurity/mosaic/core';\nimport { MC_TOOLTIP_SCROLL_STRATEGY, McTooltipTrigger } from '@ptsecurity/mosaic/tooltip';\nimport { Observable, Subject, Subscription, throttleTime } from 'rxjs';\nimport { debounceTime } from 'rxjs/operators';\n\n\n@Directive({\n selector: '[mc-title]',\n exportAs: 'mcTitle',\n host: {\n '(mouseenter)': 'handleElementEnter()',\n '(mouseleave)': 'hideTooltip()',\n '(window:resize)': 'resizeStream.next($event)'\n }\n})\nexport class McTitleDirective extends McTooltipTrigger implements AfterViewInit {\n get isOverflown(): boolean {\n return this.parent.clientWidth < this.child.scrollWidth || this.parent.clientHeight < this.child.scrollHeight;\n }\n\n get viewValue(): string {\n return (this.parent.textContent || '').trim();\n }\n\n get parent(): HTMLElement {\n return this.parentContainer.nativeElement || this.parentContainer;\n }\n\n get child(): HTMLElement {\n return this.childContainer.nativeElement || this.childContainer;\n }\n\n readonly resizeStream = new Subject<Event>();\n\n private readonly debounceInterval: number = 100;\n\n private resizeSubscription = Subscription.EMPTY;\n private mutationSubscription = Subscription.EMPTY;\n private focusMonitorSubscription = Subscription.EMPTY;\n\n @ContentChild('mcTitleText', { descendants: true, static: true })\n private childContainer: ElementRef;\n\n @ContentChild('mcTitleContainer')\n private parentContainer: ElementRef;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n focusMonitor: FocusMonitor,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n @Host() @Optional() @Inject(MC_TITLE_TEXT_REF) private componentInstance?: McTitleTextRef\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);\n }\n\n ngAfterViewInit() {\n this.parentContainer = this.parentContainer || this.componentInstance?.parentTextElement || this.elementRef;\n this.childContainer = this.childContainer || this.componentInstance?.textElement || this.elementRef;\n this.content = this.viewValue;\n\n this.resizeSubscription = this.resizeStream\n .pipe(debounceTime(this.debounceInterval))\n .subscribe(() => this.disabled = !this.isOverflown);\n\n this.mutationSubscription = this.createMutationObserver()\n .pipe(throttleTime(this.debounceInterval))\n .subscribe(() => {\n this.disabled = !this.isOverflown;\n this.content = this.viewValue;\n });\n\n this.focusMonitorSubscription = this.focusMonitor.monitor(this.elementRef).subscribe(\n (origin) => (origin === 'keyboard')\n ? this.handleElementEnter() : this.hideTooltip()\n );\n }\n\n ngOnDestroy() {\n super.ngOnDestroy();\n\n this.resizeSubscription.unsubscribe();\n this.mutationSubscription.unsubscribe();\n this.focusMonitorSubscription.unsubscribe();\n this.focusMonitor.stopMonitoring(this.elementRef);\n }\n\n handleElementEnter() {\n this.disabled = !this.isOverflown;\n }\n\n hideTooltip() {\n this.disabled = true;\n }\n\n private createMutationObserver(): Observable<MutationRecord[]> {\n return new Observable((observer) => {\n const mutationObserver = new MutationObserver(\n (mutations) => observer.next(mutations)\n );\n mutationObserver.observe(this.parent, {\n characterData: true, attributes: false, childList: true, subtree: true\n });\n\n return () => mutationObserver.disconnect();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { McToolTipModule } from '@ptsecurity/mosaic/tooltip';\n\nimport { McTitleDirective } from './title.directive';\n\n\n@NgModule({\n imports: [McToolTipModule],\n declarations: [McTitleDirective],\n exports: [McTitleDirective]\n})\nexport class McTitleModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import * as i1 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import * as i0 from '@angular/core';
6
6
  import { InjectionToken, Component, ViewEncapsulation, ChangeDetectionStrategy, Inject, EventEmitter, Directive, Optional, Input, Output, NgModule } from '@angular/core';
7
+ import * as i4 from '@angular/cdk/a11y';
7
8
  import * as i3 from '@angular/cdk/bidi';
8
9
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
9
10
  import { McPopUp, McPopUpTrigger, PopUpTriggers, POSITION_TO_CSS_MAP } from '@ptsecurity/mosaic/core';
@@ -148,8 +149,9 @@ class McTooltipTrigger extends McPopUpTrigger {
148
149
  get hasClickInTrigger() {
149
150
  return this.trigger.includes(PopUpTriggers.Click);
150
151
  }
151
- constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction) {
152
+ constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor) {
152
153
  super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
154
+ this.focusMonitor = focusMonitor;
153
155
  this.enterDelay = 400;
154
156
  this.leaveDelay = 0;
155
157
  // tslint:disable-next-line:naming-convention
@@ -162,6 +164,18 @@ class McTooltipTrigger extends McPopUpTrigger {
162
164
  panelClass: 'mc-tooltip-panel'
163
165
  };
164
166
  this.modifier = TooltipModifier.Default;
167
+ this.focusMonitor?.monitor(this.elementRef.nativeElement);
168
+ }
169
+ ngOnDestroy() {
170
+ this.focusMonitor?.stopMonitoring(this.elementRef.nativeElement);
171
+ super.ngOnDestroy();
172
+ }
173
+ show(delay = this.enterDelay) {
174
+ // tslint:disable-next-line:no-string-literal
175
+ if (this.triggerName === 'focus' && this.focusMonitor['_lastFocusOrigin'] !== 'keyboard') {
176
+ return;
177
+ }
178
+ super.show(delay);
165
179
  }
166
180
  updateData() {
167
181
  if (!this.instance) {
@@ -184,7 +198,7 @@ class McTooltipTrigger extends McPopUpTrigger {
184
198
  this.instance.updateClassMap(POSITION_TO_CSS_MAP[newPlacement], this.customClass, { modifier: this.modifier });
185
199
  this.instance.markForCheck();
186
200
  }
187
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTooltipTrigger, deps: [{ token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
201
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTooltipTrigger, deps: [{ token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }, { token: i4.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
188
202
  /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.0", type: McTooltipTrigger, selector: "[mcTooltip]", inputs: { tooltipVisible: ["mcVisible", "tooltipVisible"], tooltipPlacement: ["mcPlacement", "tooltipPlacement"], tooltipPlacementPriority: ["mcPlacementPriority", "tooltipPlacementPriority"], content: ["mcTooltip", "content"], disabled: ["mcTooltipDisabled", "disabled"], enterDelay: ["mcEnterDelay", "enterDelay"], leaveDelay: ["mcLeaveDelay", "leaveDelay"], trigger: ["mcTrigger", "trigger"], customClass: ["mcTooltipClass", "customClass"], context: ["mcTooltipContext", "context"] }, outputs: { placementChange: "mcPlacementChange", visibleChange: "mcVisibleChange" }, host: { listeners: { "keydown": "handleKeydown($event)", "touchend": "handleTouchend()" }, properties: { "class.mc-tooltip_open": "isOpen" } }, exportAs: ["mcTooltip"], usesInheritance: true, ngImport: i0 }); }
189
203
  }
190
204
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McTooltipTrigger, decorators: [{
@@ -203,7 +217,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImpor
203
217
  args: [MC_TOOLTIP_SCROLL_STRATEGY]
204
218
  }] }, { type: i3.Directionality, decorators: [{
205
219
  type: Optional
206
- }] }], propDecorators: { tooltipVisible: [{
220
+ }] }, { type: i4.FocusMonitor }], propDecorators: { tooltipVisible: [{
207
221
  type: Input,
208
222
  args: ['mcVisible']
209
223
  }], tooltipPlacement: [{
@@ -248,11 +262,11 @@ class McWarningTooltipTrigger extends McTooltipTrigger {
248
262
  this._content = content;
249
263
  this.updateData();
250
264
  }
251
- constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction) {
252
- super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
265
+ constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor) {
266
+ super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);
253
267
  this.modifier = TooltipModifier.Warning;
254
268
  }
255
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McWarningTooltipTrigger, deps: [{ token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
269
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McWarningTooltipTrigger, deps: [{ token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }, { token: i4.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
256
270
  /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.0", type: McWarningTooltipTrigger, selector: "[mcWarningTooltip]", inputs: { content: ["mcWarningTooltip", "content"] }, host: { listeners: { "keydown": "handleKeydown($event)", "touchend": "handleTouchend()" }, properties: { "class.mc-tooltip_open": "isOpen" } }, exportAs: ["mcWarningTooltip"], usesInheritance: true, ngImport: i0 }); }
257
271
  }
258
272
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McWarningTooltipTrigger, decorators: [{
@@ -271,7 +285,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImpor
271
285
  args: [MC_TOOLTIP_SCROLL_STRATEGY]
272
286
  }] }, { type: i3.Directionality, decorators: [{
273
287
  type: Optional
274
- }] }], propDecorators: { content: [{
288
+ }] }, { type: i4.FocusMonitor }], propDecorators: { content: [{
275
289
  type: Input,
276
290
  args: ['mcWarningTooltip']
277
291
  }] } });
@@ -290,8 +304,8 @@ class McExtendedTooltipTrigger extends McTooltipTrigger {
290
304
  this._header = header;
291
305
  this.updateData();
292
306
  }
293
- constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction) {
294
- super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);
307
+ constructor(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor) {
308
+ super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);
295
309
  this.modifier = TooltipModifier.Extended;
296
310
  }
297
311
  updateData() {
@@ -301,7 +315,7 @@ class McExtendedTooltipTrigger extends McTooltipTrigger {
301
315
  super.updateData();
302
316
  this.instance.header = this.header;
303
317
  }
304
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McExtendedTooltipTrigger, deps: [{ token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
318
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McExtendedTooltipTrigger, deps: [{ token: i2.Overlay }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: i2.ScrollDispatcher }, { token: i0.ViewContainerRef }, { token: MC_TOOLTIP_SCROLL_STRATEGY }, { token: i3.Directionality, optional: true }, { token: i4.FocusMonitor }], target: i0.ɵɵFactoryTarget.Directive }); }
305
319
  /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.0", type: McExtendedTooltipTrigger, selector: "[mcExtendedTooltip]", inputs: { content: ["mcExtendedTooltip", "content"], header: ["mcTooltipHeader", "header"] }, host: { listeners: { "keydown": "handleKeydown($event)", "touchend": "handleTouchend()" }, properties: { "class.mc-tooltip_open": "isOpen" } }, exportAs: ["mcExtendedTooltip"], usesInheritance: true, ngImport: i0 }); }
306
320
  }
307
321
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImport: i0, type: McExtendedTooltipTrigger, decorators: [{
@@ -320,7 +334,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.0", ngImpor
320
334
  args: [MC_TOOLTIP_SCROLL_STRATEGY]
321
335
  }] }, { type: i3.Directionality, decorators: [{
322
336
  type: Optional
323
- }] }], propDecorators: { content: [{
337
+ }] }, { type: i4.FocusMonitor }], propDecorators: { content: [{
324
338
  type: Input,
325
339
  args: ['mcExtendedTooltip']
326
340
  }], header: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ptsecurity-mosaic-tooltip.mjs","sources":["../../../packages/mosaic/tooltip/tooltip.animations.ts","../../../packages/mosaic/tooltip/tooltip.component.ts","../../../packages/mosaic/tooltip/tooltip.component.html","../../../packages/mosaic/tooltip/tooltip.module.ts","../../../packages/mosaic/tooltip/ptsecurity-mosaic-tooltip.ts"],"sourcesContent":["import {\n animate,\n AnimationTriggerMetadata,\n keyframes,\n state,\n style,\n transition,\n trigger\n} from '@angular/animations';\n\n\n/**\n * Animations used by McTooltip.\n * @docs-private\n */\nexport const mcTooltipAnimations: {\n readonly tooltipState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n tooltipState: trigger('state', [\n state('initial, void, hidden', style({ opacity: 0, transform: 'scale(0)' })),\n state('visible', style({ transform: 'scale(0.99)' })),\n transition('* => visible', animate('200ms cubic-bezier(0, 0, 0.2, 1)', keyframes([\n style({ opacity: 0, transform: 'scale(0)', offset: 0 }),\n style({ opacity: 0.5, transform: 'scale(0.9)', offset: 0.5 }),\n style({ opacity: 1, transform: 'scale(0.99)', offset: 1 })\n ]))),\n transition('* => hidden', animate('100ms cubic-bezier(0, 0, 0.2, 1)', style({ opacity: 0 })))\n ])\n};\n","import { Directionality } from '@angular/cdk/bidi';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n Overlay,\n ScrollDispatcher,\n ScrollStrategy,\n OverlayConfig\n} from '@angular/cdk/overlay';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n EventEmitter,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n Optional,\n Output,\n TemplateRef,\n Type,\n ViewContainerRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { McPopUp, McPopUpTrigger, PopUpPlacements, PopUpTriggers, POSITION_TO_CSS_MAP } from '@ptsecurity/mosaic/core';\nimport { EMPTY, merge } from 'rxjs';\n\nimport { mcTooltipAnimations } from './tooltip.animations';\n\n\nexport enum TooltipModifier {\n Default = 'default',\n Warning = 'warning',\n Extended = 'extended'\n}\n\nexport const MC_TOOLTIP_OPEN_TIME = new InjectionToken<() => ScrollStrategy>('mc-tooltip-open-time');\n\n/** @docs-private */\nexport const MC_TOOLTIP_OPEN_TIME_PROVIDER = {\n provide: MC_TOOLTIP_OPEN_TIME,\n useValue: { value: 0 }\n};\n\nexport const MIN_TIME_FOR_DELAY = 2000;\n\n\n@Component({\n selector: 'mc-tooltip-component',\n animations: [mcTooltipAnimations.tooltipState],\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MC_TOOLTIP_OPEN_TIME_PROVIDER]\n})\nexport class McTooltipComponent extends McPopUp {\n prefix = 'mc-tooltip';\n\n constructor(\n changeDetectorRef: ChangeDetectorRef,\n @Inject(MC_TOOLTIP_OPEN_TIME) private openTime\n ) {\n super(changeDetectorRef);\n }\n\n show(delay: number) {\n if (!this.content) {\n return;\n }\n\n // tslint:disable-next-line:no-magic-numbers\n super.show(Date.now() - this.openTime.value < MIN_TIME_FOR_DELAY ? 0 : delay);\n\n this.openTime.value = Date.now();\n }\n\n updateClassMap(placement: string, customClass: string, { modifier }) {\n const classMap = {\n [`${this.prefix}_${modifier}`]: true\n };\n\n super.updateClassMap(placement, customClass, classMap);\n }\n}\n\nexport const MC_TOOLTIP_SCROLL_STRATEGY =\n new InjectionToken<() => ScrollStrategy>('mc-tooltip-scroll-strategy');\n\n/** @docs-private */\nexport function mcTooltipScrollStrategyFactory(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.close();\n}\n\n/** @docs-private */\nexport const MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: MC_TOOLTIP_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: mcTooltipScrollStrategyFactory\n};\n\n@Directive({\n selector: '[mcTooltip]',\n exportAs: 'mcTooltip',\n host: {\n '[class.mc-tooltip_open]': 'isOpen',\n\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class McTooltipTrigger extends McPopUpTrigger<McTooltipComponent> {\n @Input('mcVisible')\n get tooltipVisible(): boolean {\n return this.visible;\n }\n\n set tooltipVisible(value: boolean) {\n super.updateVisible(value);\n }\n\n @Input('mcPlacement')\n get tooltipPlacement(): PopUpPlacements {\n return this.placement;\n }\n\n set tooltipPlacement(value: PopUpPlacements) {\n super.updatePlacement(value);\n }\n\n @Input('mcPlacementPriority')\n get tooltipPlacementPriority() {\n return this.placementPriority;\n }\n\n set tooltipPlacementPriority(value) {\n super.updatePlacementPriority(value);\n }\n\n @Input('mcTooltip')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(content: string | TemplateRef<any>) {\n this._content = content;\n\n this.updateData();\n }\n\n @Input('mcTooltipDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n }\n\n @Input('mcEnterDelay') enterDelay = 400;\n @Input('mcLeaveDelay') leaveDelay = 0;\n\n @Input('mcTrigger')\n get trigger(): string {\n return this._trigger;\n }\n\n set trigger(value: string) {\n if (value) {\n this._trigger = value;\n } else {\n this._trigger = `${PopUpTriggers.Hover}, ${PopUpTriggers.Focus}`;\n }\n\n this.initListeners();\n }\n\n // tslint:disable-next-line:naming-convention\n protected _trigger = `${PopUpTriggers.Hover}, ${PopUpTriggers.Focus}`;\n\n @Input('mcTooltipClass')\n get customClass(): string {\n return this._customClass;\n }\n\n set customClass(value: string) {\n if (value) {\n this._customClass = value;\n\n this.updateClassMap();\n } else {\n this._customClass = '';\n }\n }\n\n @Input('mcTooltipContext')\n get context() {\n return this._context;\n }\n\n set context(ctx) {\n this._context = ctx;\n this.updateData();\n }\n\n private _context: any = null;\n\n\n @Output('mcPlacementChange') placementChange = new EventEmitter();\n\n @Output('mcVisibleChange') visibleChange = new EventEmitter<boolean>();\n\n private get hasClickInTrigger(): boolean {\n return this.trigger.includes(PopUpTriggers.Click);\n }\n\n protected originSelector = '.mc-tooltip';\n\n protected overlayConfig: OverlayConfig = {\n panelClass: 'mc-tooltip-panel'\n };\n\n protected modifier: TooltipModifier = TooltipModifier.Default;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n }\n\n updateData() {\n if (!this.instance) { return; }\n\n this.instance.content = this.content;\n this.instance.context = this.context && { $implicit: this.context };\n this.instance.detectChanges();\n }\n\n closingActions() {\n return merge(\n this.hasClickInTrigger ? this.overlayRef!.outsidePointerEvents() : EMPTY,\n this.overlayRef!.detachments()\n );\n }\n\n getOverlayHandleComponentType(): Type<McTooltipComponent> {\n return McTooltipComponent;\n }\n\n updateClassMap(newPlacement: string = this.placement) {\n if (!this.instance) { return; }\n\n this.instance.updateClassMap(\n POSITION_TO_CSS_MAP[newPlacement],\n this.customClass,\n { modifier: this.modifier }\n );\n this.instance.markForCheck();\n }\n}\n\n\n@Directive({\n selector: '[mcWarningTooltip]',\n exportAs: 'mcWarningTooltip',\n host: {\n '[class.mc-tooltip_open]': 'isOpen',\n\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class McWarningTooltipTrigger extends McTooltipTrigger {\n @Input('mcWarningTooltip')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(content: string | TemplateRef<any>) {\n this._content = content;\n\n this.updateData();\n }\n\n protected modifier: TooltipModifier = TooltipModifier.Warning;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n }\n}\n\n@Directive({\n selector: '[mcExtendedTooltip]',\n exportAs: 'mcExtendedTooltip',\n host: {\n '[class.mc-tooltip_open]': 'isOpen',\n\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class McExtendedTooltipTrigger extends McTooltipTrigger {\n @Input('mcExtendedTooltip')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(content: string | TemplateRef<any>) {\n this._content = content;\n\n this.updateData();\n }\n\n @Input('mcTooltipHeader')\n get header(): string | TemplateRef<any> {\n return this._header;\n }\n\n set header(header: string | TemplateRef<any>) {\n this._header = header;\n\n this.updateData();\n }\n\n private _header: string | TemplateRef<any>;\n\n protected modifier: TooltipModifier = TooltipModifier.Extended;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n }\n\n updateData() {\n if (!this.instance) { return; }\n\n super.updateData();\n this.instance.header = this.header;\n }\n}\n","<div class=\"mc-tooltip\"\n [ngClass]=\"classMap\"\n [@state]=\"visibility\"\n (@state.start)=\"animationStart()\"\n (@state.done)=\"animationDone($event)\">\n\n <div class=\"mc-tooltip__inner\">\n <div class=\"mc-tooltip__arrow\"></div>\n\n <div class=\"mc-tooltip__header\" *ngIf=\"header\">\n <ng-container *ngIf=\"isTemplateRef(header)\" [ngTemplateOutlet]=\"$any(header)\" [ngTemplateOutletContext]=\"context\"></ng-container>\n <ng-container *ngIf=\"!isTemplateRef(header)\">\n <div>{{ header }}</div>\n </ng-container>\n </div>\n <div class=\"mc-tooltip__content\">\n <ng-container *ngIf=\"isTemplateRef(content)\" [ngTemplateOutlet]=\"$any(content)\" [ngTemplateOutletContext]=\"context\"></ng-container>\n <ng-container *ngIf=\"!isTemplateRef(content)\">\n <div>{{ content }}</div>\n </ng-container>\n </div>\n </div>\n</div>\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport {\n McTooltipComponent,\n McTooltipTrigger,\n McExtendedTooltipTrigger,\n McWarningTooltipTrigger,\n MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\n MC_TOOLTIP_OPEN_TIME_PROVIDER\n} from './tooltip.component';\n\n\n@NgModule({\r\n declarations: [\r\n McTooltipComponent,\r\n McTooltipTrigger,\r\n McExtendedTooltipTrigger,\r\n McWarningTooltipTrigger\r\n ],\r\n exports: [\r\n McTooltipComponent,\r\n McTooltipTrigger,\r\n McExtendedTooltipTrigger,\r\n McWarningTooltipTrigger\r\n ],\r\n imports: [CommonModule, OverlayModule],\r\n providers: [\r\n MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\r\n MC_TOOLTIP_OPEN_TIME_PROVIDER\r\n ]\r\n})\nexport class McToolTipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ptsecurity-mosaic-tooltip.mjs","sources":["../../../packages/mosaic/tooltip/tooltip.animations.ts","../../../packages/mosaic/tooltip/tooltip.component.ts","../../../packages/mosaic/tooltip/tooltip.component.html","../../../packages/mosaic/tooltip/tooltip.module.ts","../../../packages/mosaic/tooltip/ptsecurity-mosaic-tooltip.ts"],"sourcesContent":["import {\n animate,\n AnimationTriggerMetadata,\n keyframes,\n state,\n style,\n transition,\n trigger\n} from '@angular/animations';\n\n\n/**\n * Animations used by McTooltip.\n * @docs-private\n */\nexport const mcTooltipAnimations: {\n readonly tooltipState: AnimationTriggerMetadata;\n} = {\n /** Animation that transitions a tooltip in and out. */\n tooltipState: trigger('state', [\n state('initial, void, hidden', style({ opacity: 0, transform: 'scale(0)' })),\n state('visible', style({ transform: 'scale(0.99)' })),\n transition('* => visible', animate('200ms cubic-bezier(0, 0, 0.2, 1)', keyframes([\n style({ opacity: 0, transform: 'scale(0)', offset: 0 }),\n style({ opacity: 0.5, transform: 'scale(0.9)', offset: 0.5 }),\n style({ opacity: 1, transform: 'scale(0.99)', offset: 1 })\n ]))),\n transition('* => hidden', animate('100ms cubic-bezier(0, 0, 0.2, 1)', style({ opacity: 0 })))\n ])\n};\n","import { FocusMonitor } from '@angular/cdk/a11y';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport {\n Overlay,\n ScrollDispatcher,\n ScrollStrategy,\n OverlayConfig\n} from '@angular/cdk/overlay';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n EventEmitter,\n Inject,\n InjectionToken,\n Input,\n NgZone,\n OnDestroy,\n Optional,\n Output,\n TemplateRef,\n Type,\n ViewContainerRef,\n ViewEncapsulation\n} from '@angular/core';\nimport { McPopUp, McPopUpTrigger, PopUpPlacements, PopUpTriggers, POSITION_TO_CSS_MAP } from '@ptsecurity/mosaic/core';\nimport { EMPTY, merge } from 'rxjs';\n\nimport { mcTooltipAnimations } from './tooltip.animations';\n\n\nexport enum TooltipModifier {\n Default = 'default',\n Warning = 'warning',\n Extended = 'extended'\n}\n\nexport const MC_TOOLTIP_OPEN_TIME = new InjectionToken<() => ScrollStrategy>('mc-tooltip-open-time');\n\n/** @docs-private */\nexport const MC_TOOLTIP_OPEN_TIME_PROVIDER = {\n provide: MC_TOOLTIP_OPEN_TIME,\n useValue: { value: 0 }\n};\n\nexport const MIN_TIME_FOR_DELAY = 2000;\n\n\n@Component({\n selector: 'mc-tooltip-component',\n animations: [mcTooltipAnimations.tooltipState],\n templateUrl: './tooltip.component.html',\n styleUrls: ['./tooltip.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [MC_TOOLTIP_OPEN_TIME_PROVIDER]\n})\nexport class McTooltipComponent extends McPopUp {\n prefix = 'mc-tooltip';\n\n constructor(\n changeDetectorRef: ChangeDetectorRef,\n @Inject(MC_TOOLTIP_OPEN_TIME) private openTime\n ) {\n super(changeDetectorRef);\n }\n\n show(delay: number) {\n if (!this.content) {\n return;\n }\n\n // tslint:disable-next-line:no-magic-numbers\n super.show(Date.now() - this.openTime.value < MIN_TIME_FOR_DELAY ? 0 : delay);\n\n this.openTime.value = Date.now();\n }\n\n updateClassMap(placement: string, customClass: string, { modifier }) {\n const classMap = {\n [`${this.prefix}_${modifier}`]: true\n };\n\n super.updateClassMap(placement, customClass, classMap);\n }\n}\n\nexport const MC_TOOLTIP_SCROLL_STRATEGY =\n new InjectionToken<() => ScrollStrategy>('mc-tooltip-scroll-strategy');\n\n/** @docs-private */\nexport function mcTooltipScrollStrategyFactory(overlay: Overlay): () => ScrollStrategy {\n return () => overlay.scrollStrategies.close();\n}\n\n/** @docs-private */\nexport const MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER = {\n provide: MC_TOOLTIP_SCROLL_STRATEGY,\n deps: [Overlay],\n useFactory: mcTooltipScrollStrategyFactory\n};\n\n@Directive({\n selector: '[mcTooltip]',\n exportAs: 'mcTooltip',\n host: {\n '[class.mc-tooltip_open]': 'isOpen',\n\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class McTooltipTrigger extends McPopUpTrigger<McTooltipComponent> implements OnDestroy {\n @Input('mcVisible')\n get tooltipVisible(): boolean {\n return this.visible;\n }\n\n set tooltipVisible(value: boolean) {\n super.updateVisible(value);\n }\n\n @Input('mcPlacement')\n get tooltipPlacement(): PopUpPlacements {\n return this.placement;\n }\n\n set tooltipPlacement(value: PopUpPlacements) {\n super.updatePlacement(value);\n }\n\n @Input('mcPlacementPriority')\n get tooltipPlacementPriority() {\n return this.placementPriority;\n }\n\n set tooltipPlacementPriority(value) {\n super.updatePlacementPriority(value);\n }\n\n @Input('mcTooltip')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(content: string | TemplateRef<any>) {\n this._content = content;\n\n this.updateData();\n }\n\n @Input('mcTooltipDisabled')\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value) {\n this._disabled = coerceBooleanProperty(value);\n }\n\n @Input('mcEnterDelay') enterDelay = 400;\n @Input('mcLeaveDelay') leaveDelay = 0;\n\n @Input('mcTrigger')\n get trigger(): string {\n return this._trigger;\n }\n\n set trigger(value: string) {\n if (value) {\n this._trigger = value;\n } else {\n this._trigger = `${PopUpTriggers.Hover}, ${PopUpTriggers.Focus}`;\n }\n\n this.initListeners();\n }\n\n // tslint:disable-next-line:naming-convention\n protected _trigger = `${PopUpTriggers.Hover}, ${PopUpTriggers.Focus}`;\n\n @Input('mcTooltipClass')\n get customClass(): string {\n return this._customClass;\n }\n\n set customClass(value: string) {\n if (value) {\n this._customClass = value;\n\n this.updateClassMap();\n } else {\n this._customClass = '';\n }\n }\n\n @Input('mcTooltipContext')\n get context() {\n return this._context;\n }\n\n set context(ctx) {\n this._context = ctx;\n this.updateData();\n }\n\n private _context: any = null;\n\n\n @Output('mcPlacementChange') placementChange = new EventEmitter();\n\n @Output('mcVisibleChange') visibleChange = new EventEmitter<boolean>();\n\n private get hasClickInTrigger(): boolean {\n return this.trigger.includes(PopUpTriggers.Click);\n }\n\n protected originSelector = '.mc-tooltip';\n\n protected overlayConfig: OverlayConfig = {\n panelClass: 'mc-tooltip-panel'\n };\n\n protected modifier: TooltipModifier = TooltipModifier.Default;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n protected focusMonitor: FocusMonitor\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction);\n\n this.focusMonitor?.monitor(this.elementRef.nativeElement);\n }\n\n ngOnDestroy() {\n this.focusMonitor?.stopMonitoring(this.elementRef.nativeElement);\n\n super.ngOnDestroy();\n }\n\n show(delay: number = this.enterDelay) {\n // tslint:disable-next-line:no-string-literal\n if (this.triggerName === 'focus' && this.focusMonitor['_lastFocusOrigin'] !== 'keyboard') { return; }\n\n super.show(delay);\n }\n\n updateData() {\n if (!this.instance) { return; }\n\n this.instance.content = this.content;\n this.instance.context = this.context && { $implicit: this.context };\n this.instance.detectChanges();\n }\n\n closingActions() {\n return merge(\n this.hasClickInTrigger ? this.overlayRef!.outsidePointerEvents() : EMPTY,\n this.overlayRef!.detachments()\n );\n }\n\n getOverlayHandleComponentType(): Type<McTooltipComponent> {\n return McTooltipComponent;\n }\n\n updateClassMap(newPlacement: string = this.placement) {\n if (!this.instance) { return; }\n\n this.instance.updateClassMap(\n POSITION_TO_CSS_MAP[newPlacement],\n this.customClass,\n { modifier: this.modifier }\n );\n this.instance.markForCheck();\n }\n}\n\n\n@Directive({\n selector: '[mcWarningTooltip]',\n exportAs: 'mcWarningTooltip',\n host: {\n '[class.mc-tooltip_open]': 'isOpen',\n\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class McWarningTooltipTrigger extends McTooltipTrigger {\n @Input('mcWarningTooltip')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(content: string | TemplateRef<any>) {\n this._content = content;\n\n this.updateData();\n }\n\n protected modifier: TooltipModifier = TooltipModifier.Warning;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n focusMonitor: FocusMonitor\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);\n }\n}\n\n@Directive({\n selector: '[mcExtendedTooltip]',\n exportAs: 'mcExtendedTooltip',\n host: {\n '[class.mc-tooltip_open]': 'isOpen',\n\n '(keydown)': 'handleKeydown($event)',\n '(touchend)': 'handleTouchend()'\n }\n})\nexport class McExtendedTooltipTrigger extends McTooltipTrigger {\n @Input('mcExtendedTooltip')\n get content(): string | TemplateRef<any> {\n return this._content;\n }\n\n set content(content: string | TemplateRef<any>) {\n this._content = content;\n\n this.updateData();\n }\n\n @Input('mcTooltipHeader')\n get header(): string | TemplateRef<any> {\n return this._header;\n }\n\n set header(header: string | TemplateRef<any>) {\n this._header = header;\n\n this.updateData();\n }\n\n private _header: string | TemplateRef<any>;\n\n protected modifier: TooltipModifier = TooltipModifier.Extended;\n\n constructor(\n overlay: Overlay,\n elementRef: ElementRef,\n ngZone: NgZone,\n scrollDispatcher: ScrollDispatcher,\n hostView: ViewContainerRef,\n @Inject(MC_TOOLTIP_SCROLL_STRATEGY) scrollStrategy,\n @Optional() direction: Directionality,\n focusMonitor: FocusMonitor\n ) {\n super(overlay, elementRef, ngZone, scrollDispatcher, hostView, scrollStrategy, direction, focusMonitor);\n }\n\n updateData() {\n if (!this.instance) { return; }\n\n super.updateData();\n this.instance.header = this.header;\n }\n}\n","<div class=\"mc-tooltip\"\n [ngClass]=\"classMap\"\n [@state]=\"visibility\"\n (@state.start)=\"animationStart()\"\n (@state.done)=\"animationDone($event)\">\n\n <div class=\"mc-tooltip__inner\">\n <div class=\"mc-tooltip__arrow\"></div>\n\n <div class=\"mc-tooltip__header\" *ngIf=\"header\">\n <ng-container *ngIf=\"isTemplateRef(header)\" [ngTemplateOutlet]=\"$any(header)\" [ngTemplateOutletContext]=\"context\"></ng-container>\n <ng-container *ngIf=\"!isTemplateRef(header)\">\n <div>{{ header }}</div>\n </ng-container>\n </div>\n <div class=\"mc-tooltip__content\">\n <ng-container *ngIf=\"isTemplateRef(content)\" [ngTemplateOutlet]=\"$any(content)\" [ngTemplateOutletContext]=\"context\"></ng-container>\n <ng-container *ngIf=\"!isTemplateRef(content)\">\n <div>{{ content }}</div>\n </ng-container>\n </div>\n </div>\n</div>\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport {\n McTooltipComponent,\n McTooltipTrigger,\n McExtendedTooltipTrigger,\n McWarningTooltipTrigger,\n MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\n MC_TOOLTIP_OPEN_TIME_PROVIDER\n} from './tooltip.component';\n\n\n@NgModule({\r\n declarations: [\r\n McTooltipComponent,\r\n McTooltipTrigger,\r\n McExtendedTooltipTrigger,\r\n McWarningTooltipTrigger\r\n ],\r\n exports: [\r\n McTooltipComponent,\r\n McTooltipTrigger,\r\n McExtendedTooltipTrigger,\r\n McWarningTooltipTrigger\r\n ],\r\n imports: [CommonModule, OverlayModule],\r\n providers: [\r\n MC_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER,\r\n MC_TOOLTIP_OPEN_TIME_PROVIDER\r\n ]\r\n})\nexport class McToolTipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}