@leanix/components 0.4.531 → 0.4.532
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/leanix-components.mjs +365 -365
- package/fesm2022/leanix-components.mjs.map +1 -1
- package/lib/core-ui/tooltip/tooltip.directive.d.ts +1 -1
- package/lib/forms-ui/components/keyboard-select.directive.d.ts +1 -1
- package/lib/forms-ui/models/base-select.directive.d.ts +1 -1
- package/lib/tab-ui/components/tab-group/tab-group.component.d.ts +1 -1
- package/package.json +10 -14
- package/esm2022/index.mjs +0 -145
- package/esm2022/leanix-components.mjs +0 -5
- package/esm2022/lib/core-ui/components/avatar/avatar.component.mjs +0 -40
- package/esm2022/lib/core-ui/components/avatar/avatar.helpers.mjs +0 -49
- package/esm2022/lib/core-ui/components/avatar/avatar.model.mjs +0 -33
- package/esm2022/lib/core-ui/components/avatar-group/avatar-group.component.mjs +0 -75
- package/esm2022/lib/core-ui/components/badge/badge.component.mjs +0 -58
- package/esm2022/lib/core-ui/components/banner/banner.component.mjs +0 -68
- package/esm2022/lib/core-ui/components/banner/banner.models.mjs +0 -12
- package/esm2022/lib/core-ui/components/button/button.component.mjs +0 -179
- package/esm2022/lib/core-ui/components/button-group/button-group.component.mjs +0 -28
- package/esm2022/lib/core-ui/components/card/card.component.mjs +0 -26
- package/esm2022/lib/core-ui/components/collapsible/collapsible.component.mjs +0 -52
- package/esm2022/lib/core-ui/components/counter/counter.component.mjs +0 -30
- package/esm2022/lib/core-ui/components/ellipsis/ellipsis.component.mjs +0 -143
- package/esm2022/lib/core-ui/components/empty-state/empty-state.component.mjs +0 -41
- package/esm2022/lib/core-ui/components/icon-scale/icon-scale.component.mjs +0 -36
- package/esm2022/lib/core-ui/components/skeleton/skeleton.component.mjs +0 -44
- package/esm2022/lib/core-ui/components/spinner/spinner.component.mjs +0 -26
- package/esm2022/lib/core-ui/components/stepper/stepper.component.mjs +0 -70
- package/esm2022/lib/core-ui/components/table/table-header/table-header.component.mjs +0 -128
- package/esm2022/lib/core-ui/components/table/table.component.mjs +0 -77
- package/esm2022/lib/core-ui/components/tiny-spinner/tiny-spinner.component.mjs +0 -14
- package/esm2022/lib/core-ui/components/tokenizer/token/token.component.mjs +0 -20
- package/esm2022/lib/core-ui/components/tokenizer/tokenizer-overflow-popover/tokenizer-overflow-popover.component.mjs +0 -44
- package/esm2022/lib/core-ui/components/tokenizer/tokenizer.component.mjs +0 -149
- package/esm2022/lib/core-ui/core-ui.constants.mjs +0 -240
- package/esm2022/lib/core-ui/core-ui.module.mjs +0 -206
- package/esm2022/lib/core-ui/directives/after-view-init.directive.mjs +0 -33
- package/esm2022/lib/core-ui/directives/autoclose-group.service.mjs +0 -39
- package/esm2022/lib/core-ui/directives/autoclose.directive.mjs +0 -43
- package/esm2022/lib/core-ui/directives/autofocus.directive.mjs +0 -36
- package/esm2022/lib/core-ui/functions/core-css.helpers.mjs +0 -52
- package/esm2022/lib/core-ui/functions/highlight-text.function.mjs +0 -80
- package/esm2022/lib/core-ui/linkify/linkify.pipe.mjs +0 -146
- package/esm2022/lib/core-ui/linkify/unlinkify.pipe.mjs +0 -51
- package/esm2022/lib/core-ui/pipes/br.pipe.mjs +0 -24
- package/esm2022/lib/core-ui/pipes/contrast-color.pipe.mjs +0 -21
- package/esm2022/lib/core-ui/pipes/custom-date.pipe.mjs +0 -28
- package/esm2022/lib/core-ui/pipes/display-avatars.pipe.mjs +0 -37
- package/esm2022/lib/core-ui/pipes/highlight-range.pipe.mjs +0 -29
- package/esm2022/lib/core-ui/pipes/highlight-term.pipe.mjs +0 -57
- package/esm2022/lib/core-ui/pipes/lx-is-uuid.pipe.mjs +0 -22
- package/esm2022/lib/core-ui/pipes/lx-time-ago.pipe.mjs +0 -29
- package/esm2022/lib/core-ui/pipes/lx-translate.pipe.mjs +0 -50
- package/esm2022/lib/core-ui/pipes/markdown.pipe.mjs +0 -32
- package/esm2022/lib/core-ui/pipes/nbsp.pipe.mjs +0 -17
- package/esm2022/lib/core-ui/pipes/sort.pipe.mjs +0 -55
- package/esm2022/lib/core-ui/pipes/translation-after.pipe.mjs +0 -29
- package/esm2022/lib/core-ui/pipes/translation-before.pipe.mjs +0 -54
- package/esm2022/lib/core-ui/pipes/translation-between.pipe.mjs +0 -68
- package/esm2022/lib/core-ui/pipes/unescape-curly-braces.pipe.mjs +0 -17
- package/esm2022/lib/core-ui/services/resize-observer.service.mjs +0 -112
- package/esm2022/lib/core-ui/tooltip/to-cdk-position.function.mjs +0 -74
- package/esm2022/lib/core-ui/tooltip/tooltip-position.interface.mjs +0 -7
- package/esm2022/lib/core-ui/tooltip/tooltip.component.mjs +0 -26
- package/esm2022/lib/core-ui/tooltip/tooltip.directive.mjs +0 -117
- package/esm2022/lib/forms-ui/components/basic-dropdown/basic-dropdown.component.mjs +0 -139
- package/esm2022/lib/forms-ui/components/basic-dropdown-item/basic-dropdown-item.component.mjs +0 -38
- package/esm2022/lib/forms-ui/components/breadcrumb/breadcrumb.component.mjs +0 -55
- package/esm2022/lib/forms-ui/components/cdk-options-dropdown/cdk-options-dropdown.component.mjs +0 -215
- package/esm2022/lib/forms-ui/components/cdk-options-sub-dropdown/cdk-options-sub-dropdown.component.mjs +0 -135
- package/esm2022/lib/forms-ui/components/currency/currency-input.component.mjs +0 -159
- package/esm2022/lib/forms-ui/components/currency/currency-symbol-map.constant.mjs +0 -105
- package/esm2022/lib/forms-ui/components/currency/currency-symbol.component.mjs +0 -24
- package/esm2022/lib/forms-ui/components/date-input/date-input.component.mjs +0 -347
- package/esm2022/lib/forms-ui/components/date-picker-ui/date-formatter.mjs +0 -8
- package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker-inner.component.mjs +0 -312
- package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker-ui.module.mjs +0 -20
- package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker.component.mjs +0 -206
- package/esm2022/lib/forms-ui/components/date-picker-ui/datepicker.config.mjs +0 -29
- package/esm2022/lib/forms-ui/components/date-picker-ui/daypicker.component.mjs +0 -319
- package/esm2022/lib/forms-ui/components/date-picker-ui/isBs3.mjs +0 -2
- package/esm2022/lib/forms-ui/components/date-picker-ui/monthpicker.component.mjs +0 -149
- package/esm2022/lib/forms-ui/components/date-picker-ui/yearpicker.component.mjs +0 -151
- package/esm2022/lib/forms-ui/components/drag-and-drop-list/constants.mjs +0 -5
- package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list-item/drag-and-drop-list-item.component.mjs +0 -49
- package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.component.mjs +0 -120
- package/esm2022/lib/forms-ui/components/drag-and-drop-list/drag-and-drop-list.module.mjs +0 -39
- package/esm2022/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-item/keyboard-sortable-item.directive.mjs +0 -137
- package/esm2022/lib/forms-ui/components/drag-and-drop-list/keyboard-sortable-list/keyboard-sortable-list.directive.mjs +0 -38
- package/esm2022/lib/forms-ui/components/error-message/error-message.component.mjs +0 -16
- package/esm2022/lib/forms-ui/components/expanded-dropdown/expanded-dropdown.component.mjs +0 -26
- package/esm2022/lib/forms-ui/components/form-error/form-error.component.mjs +0 -44
- package/esm2022/lib/forms-ui/components/icon/icon.component.mjs +0 -45
- package/esm2022/lib/forms-ui/components/input/input.component.mjs +0 -48
- package/esm2022/lib/forms-ui/components/keyboard-select.directive.mjs +0 -126
- package/esm2022/lib/forms-ui/components/multi-select/multi-select-selection/multi-select-selection.component.mjs +0 -28
- package/esm2022/lib/forms-ui/components/multi-select/multi-select.component.mjs +0 -318
- package/esm2022/lib/forms-ui/components/option/option.component.mjs +0 -99
- package/esm2022/lib/forms-ui/components/option-group/option-group.component.mjs +0 -29
- package/esm2022/lib/forms-ui/components/option-group-dropdown/option-group-dropdown.component.mjs +0 -123
- package/esm2022/lib/forms-ui/components/options-dropdown/options-dropdown.component.mjs +0 -297
- package/esm2022/lib/forms-ui/components/options-sub-dropdown/options-sub-dropdown.component.mjs +0 -94
- package/esm2022/lib/forms-ui/components/picker/picker-trigger.directive.mjs +0 -47
- package/esm2022/lib/forms-ui/components/picker/picker.component.mjs +0 -218
- package/esm2022/lib/forms-ui/components/picker-option/picker-option.component.mjs +0 -118
- package/esm2022/lib/forms-ui/components/pill-item/pill-item.component.mjs +0 -33
- package/esm2022/lib/forms-ui/components/pill-list/pill-list.component.mjs +0 -58
- package/esm2022/lib/forms-ui/components/responsive-input/responsive-input.component.mjs +0 -101
- package/esm2022/lib/forms-ui/components/select-list/select-list.component.mjs +0 -178
- package/esm2022/lib/forms-ui/components/single-select/single-select.component.mjs +0 -290
- package/esm2022/lib/forms-ui/components/sorting-dropdown/sorting-dropdown.component.mjs +0 -71
- package/esm2022/lib/forms-ui/components/sorting-dropdown-trigger/sorting-dropdown-trigger.component.mjs +0 -21
- package/esm2022/lib/forms-ui/components/switch/switch.component.mjs +0 -51
- package/esm2022/lib/forms-ui/directives/contenteditable.directive.mjs +0 -130
- package/esm2022/lib/forms-ui/directives/form-error.directive.mjs +0 -121
- package/esm2022/lib/forms-ui/directives/form-submit.directive.mjs +0 -29
- package/esm2022/lib/forms-ui/directives/keyboard-action-source.directive.mjs +0 -63
- package/esm2022/lib/forms-ui/directives/mark-invalid.directive.mjs +0 -39
- package/esm2022/lib/forms-ui/directives/max-length-counter.directive.mjs +0 -131
- package/esm2022/lib/forms-ui/directives/select-dropdown.directive.mjs +0 -32
- package/esm2022/lib/forms-ui/directives/selectable-item.directive.mjs +0 -34
- package/esm2022/lib/forms-ui/directives/selected-option.directive.mjs +0 -27
- package/esm2022/lib/forms-ui/forms-ui.module.mjs +0 -270
- package/esm2022/lib/forms-ui/helpers/key-codes.constants.mjs +0 -13
- package/esm2022/lib/forms-ui/helpers/keyboard-navigation.helpers.mjs +0 -38
- package/esm2022/lib/forms-ui/models/base-select.directive.mjs +0 -183
- package/esm2022/lib/forms-ui/models/dropdown-item.interface.mjs +0 -2
- package/esm2022/lib/forms-ui/models/single-select-padding.interface.mjs +0 -2
- package/esm2022/lib/forms-ui/models/sorting.interface.mjs +0 -7
- package/esm2022/lib/forms-ui/pipes/filter-selection.pipe.mjs +0 -33
- package/esm2022/lib/forms-ui/pipes/filter-term.pipe.mjs +0 -29
- package/esm2022/lib/forms-ui/pipes/format-number.pipe.mjs +0 -66
- package/esm2022/lib/forms-ui/validators/date-in-foreseeable-future.validator.mjs +0 -26
- package/esm2022/lib/forms-ui/validators/string-not-in-array.validator.mjs +0 -30
- package/esm2022/lib/modal-ui/components/modal/modal.component.mjs +0 -264
- package/esm2022/lib/modal-ui/components/modal-footer/modal-footer.component.mjs +0 -16
- package/esm2022/lib/modal-ui/components/modal-header/modal-header.component.mjs +0 -19
- package/esm2022/lib/modal-ui/directives/modal-content.directive.mjs +0 -14
- package/esm2022/lib/modal-ui/modal.constants.mjs +0 -18
- package/esm2022/lib/modal-ui/modal.module.mjs +0 -47
- package/esm2022/lib/popover-ui/components/popover/popover.component.mjs +0 -228
- package/esm2022/lib/popover-ui/directives/popover-click.directive.mjs +0 -52
- package/esm2022/lib/popover-ui/directives/popover-content.directive.mjs +0 -17
- package/esm2022/lib/popover-ui/directives/popover-hover.directive.mjs +0 -88
- package/esm2022/lib/popover-ui/popover-ui.module.mjs +0 -21
- package/esm2022/lib/shared/date-helpers.mjs +0 -35
- package/esm2022/lib/shared/html-helpers.function.mjs +0 -34
- package/esm2022/lib/shared/misc-helpers.mjs +0 -24
- package/esm2022/lib/shared/observe.mjs +0 -40
- package/esm2022/lib/tab-ui/components/tab/tab.component.mjs +0 -118
- package/esm2022/lib/tab-ui/components/tab-group/tab-group-key-codes.enum.mjs +0 -12
- package/esm2022/lib/tab-ui/components/tab-group/tab-group.component.mjs +0 -150
- package/esm2022/lib/tab-ui/tab-ui.module.mjs +0 -20
- package/esm2022/ui5/icons/lx-icons.json +0 -177
- package/esm2022/ui5/icons/register-icons.mjs +0 -14
- package/esm2022/ui5/index.mjs +0 -8
- package/esm2022/ui5/leanix-components-ui5.mjs +0 -5
- package/esm2022/ui5/ui5.provider.mjs +0 -29
@@ -1,228 +0,0 @@
|
|
1
|
-
import { NgClass, NgIf, NgTemplateOutlet } from '@angular/common';
|
2
|
-
import { Component, ContentChild, EventEmitter, Input, Output, TemplateRef, ViewChild } from '@angular/core';
|
3
|
-
import { SatPopoverComponent, SatPopoverModule } from '@ncstate/sat-popover';
|
4
|
-
import { PopoverContentDirective } from '../../directives/popover-content.directive';
|
5
|
-
import * as i0 from "@angular/core";
|
6
|
-
import * as i1 from "@ncstate/sat-popover";
|
7
|
-
/**
|
8
|
-
* The Popover component is based on the [ncstate-sat/popover](https://github.com/ncstate-sat/popover) library.
|
9
|
-
*
|
10
|
-
* ## Examples
|
11
|
-
|
12
|
-
* This popover encapsulates this open source library: https://github.com/ncstate-sat/popover,
|
13
|
-
* make sure to also check out the docs over there.
|
14
|
-
*
|
15
|
-
* As of today they are two trigger strategies to display a popover.
|
16
|
-
* 1. Show on hovering the anchor and while hovering the popover body.
|
17
|
-
* 2. Show on click and while hovering the popover body.
|
18
|
-
*
|
19
|
-
* For use case 1. you would use the lxPopoverHover directive, which exports as hoverAnchor.
|
20
|
-
*
|
21
|
-
* ### Example:
|
22
|
-
* ```html
|
23
|
-
* <div lxPopoverHover
|
24
|
-
* hoverAnchor
|
25
|
-
* satPopoverAnchor
|
26
|
-
* #anchor="hoverAnchor"></div>
|
27
|
-
* <lx-popover [trigger]="anchor"
|
28
|
-
* horizontalAlign="after"
|
29
|
-
* verticalAlign="center">
|
30
|
-
* <p>Popover content</p>
|
31
|
-
* </lx-popover>
|
32
|
-
* ```
|
33
|
-
*
|
34
|
-
* For use case 2. you would use the lxPopoverClick directive, which exports as clickAnchor.
|
35
|
-
* Note: Since the only component where we use the lxPopoverClick directive (ReportComponent)
|
36
|
-
* needs to fetch some data before opening it, we do not register a click EventListener in this directive,
|
37
|
-
* but require the developer to implement that in the component, where the popover is used.
|
38
|
-
*
|
39
|
-
* ### Example:
|
40
|
-
* ```html
|
41
|
-
* <div lxPopoverClick
|
42
|
-
* clickAnchor
|
43
|
-
* satPopoverAnchor
|
44
|
-
* #anchor="clickAnchor"
|
45
|
-
* (click)="popover.open()">Click Me!</div>
|
46
|
-
* <lx-popover [trigger]="anchor"
|
47
|
-
* horizontalAlign="after"
|
48
|
-
* verticalAlign="center"
|
49
|
-
* #popover>
|
50
|
-
* <p>Popover content</p>
|
51
|
-
* </lx-popover>
|
52
|
-
* ```
|
53
|
-
*
|
54
|
-
* If this component is used with angularCompilerOptions strictTemplates=true,
|
55
|
-
* satPopoverAnchor must be set to the reference to the SatPopover inside lx-popover.
|
56
|
-
*
|
57
|
-
* ### Example:
|
58
|
-
* ```html
|
59
|
-
* <div [satPopoverAnchor]="popover.satPopover"></div>
|
60
|
-
* <lx-popover #popover>
|
61
|
-
* <p>Popover content</p>
|
62
|
-
* </lx-popover>
|
63
|
-
* ```
|
64
|
-
*/
|
65
|
-
export class PopoverComponent {
|
66
|
-
constructor() {
|
67
|
-
/** Whether to apply margins. */
|
68
|
-
this.noMargin = false;
|
69
|
-
/** Whether to allow the popover to overflow the viewport. */
|
70
|
-
this.allowOverflow = false;
|
71
|
-
/** Whether to focus the first focusable element in the popover when it is opened. */
|
72
|
-
this.autoFocus = false;
|
73
|
-
/** Whether to restore focus to the previously-focused element when the popover is closed. */
|
74
|
-
this.restoreFocus = true;
|
75
|
-
/** Whether the popover has a backdrop. */
|
76
|
-
this.hasBackdrop = false;
|
77
|
-
/**
|
78
|
-
* If you have a popover, that should usually be displayed above or below its anchor,
|
79
|
-
* and this anchor is in a scrollable container, you should set this to true.
|
80
|
-
* SatPopover will open this popover in the direction where there is enough space,
|
81
|
-
* so its position might differ from the horizontalAlign and verticalAlign values.
|
82
|
-
* In this case we rely on the SatPopover::_classList property to get the computed
|
83
|
-
* position of the popover after opening.
|
84
|
-
*/
|
85
|
-
this.adaptMarginsForViewportAlignChange = false;
|
86
|
-
/** Event emitted when the popover is opened. */
|
87
|
-
this.opened = new EventEmitter();
|
88
|
-
/** Event emitted when the popover is closed. */
|
89
|
-
this.closed = new EventEmitter();
|
90
|
-
this._isOpen = false;
|
91
|
-
}
|
92
|
-
get content() {
|
93
|
-
return this.explicitContent || this.implicitContent;
|
94
|
-
}
|
95
|
-
get isOpen() {
|
96
|
-
return this._isOpen;
|
97
|
-
}
|
98
|
-
ngOnChanges(changes) {
|
99
|
-
if (changes['horizontalAlign'] && changes['verticalAlign']) {
|
100
|
-
this.marginClasses = this.getDefaultMarginClasses(this.horizontalAlign, this.verticalAlign);
|
101
|
-
}
|
102
|
-
}
|
103
|
-
/** @internal */
|
104
|
-
open() {
|
105
|
-
this.satPopover.open();
|
106
|
-
}
|
107
|
-
/** @internal */
|
108
|
-
close() {
|
109
|
-
this.satPopover.close();
|
110
|
-
}
|
111
|
-
/** @internal */
|
112
|
-
onOpen() {
|
113
|
-
this._isOpen = true;
|
114
|
-
this.opened.emit();
|
115
|
-
}
|
116
|
-
/** @internal */
|
117
|
-
onAfterOpen() {
|
118
|
-
if (this.adaptMarginsForViewportAlignChange) {
|
119
|
-
this.marginClasses = this.getMarginClassesForClassList(this.satPopover._classList);
|
120
|
-
}
|
121
|
-
}
|
122
|
-
/** @internal */
|
123
|
-
onClose() {
|
124
|
-
this._isOpen = false;
|
125
|
-
this.closed.emit();
|
126
|
-
}
|
127
|
-
/**
|
128
|
-
* SatPopover::_classList will contain a map of alignment CSS classes, once the popover was opened.
|
129
|
-
* These alignment classes can be different from what you would expect from the horizontal- and verticalAlign inputs,
|
130
|
-
* because there might not be enough space above the anchor to meet the verticalAlign='above' criteria,
|
131
|
-
* so it will be displayed below the anchor instead.
|
132
|
-
*/
|
133
|
-
getMarginClassesForClassList(satPopoverClassList) {
|
134
|
-
if (this.noMargin) {
|
135
|
-
return '';
|
136
|
-
}
|
137
|
-
if (satPopoverClassList['sat-popover-above']) {
|
138
|
-
return this.marginClasses.includes('top') ? this.marginClasses : 'top';
|
139
|
-
}
|
140
|
-
if (satPopoverClassList['sat-popover-below']) {
|
141
|
-
return this.marginClasses.includes('bottom') ? this.marginClasses : 'bottom';
|
142
|
-
}
|
143
|
-
if (satPopoverClassList['sat-popover-before']) {
|
144
|
-
return this.marginClasses.includes('left') ? this.marginClasses : 'left';
|
145
|
-
}
|
146
|
-
if (satPopoverClassList['sat-popover-after']) {
|
147
|
-
return this.marginClasses.includes('right') ? this.marginClasses : 'right';
|
148
|
-
}
|
149
|
-
if (satPopoverClassList['sat-popover-center']) {
|
150
|
-
return '';
|
151
|
-
}
|
152
|
-
return '';
|
153
|
-
}
|
154
|
-
getDefaultMarginClasses(horizontalAlign, verticalAlign) {
|
155
|
-
if (this.noMargin) {
|
156
|
-
return '';
|
157
|
-
}
|
158
|
-
if (horizontalAlign === 'after') {
|
159
|
-
if (verticalAlign === 'center' || verticalAlign === 'start' || verticalAlign === 'end') {
|
160
|
-
return 'right';
|
161
|
-
}
|
162
|
-
else if (verticalAlign === 'above') {
|
163
|
-
return 'right top';
|
164
|
-
}
|
165
|
-
else if (verticalAlign === 'below') {
|
166
|
-
return 'right bottom';
|
167
|
-
}
|
168
|
-
}
|
169
|
-
if (horizontalAlign === 'before') {
|
170
|
-
if (verticalAlign === 'center' || verticalAlign === 'start' || verticalAlign === 'end') {
|
171
|
-
return 'left';
|
172
|
-
}
|
173
|
-
else if (verticalAlign === 'above') {
|
174
|
-
return 'left top';
|
175
|
-
}
|
176
|
-
else if (verticalAlign === 'below') {
|
177
|
-
return 'left bottom';
|
178
|
-
}
|
179
|
-
}
|
180
|
-
if (horizontalAlign === 'center' || horizontalAlign === 'start' || horizontalAlign === 'end') {
|
181
|
-
if (verticalAlign === 'above') {
|
182
|
-
return 'top';
|
183
|
-
}
|
184
|
-
else if (verticalAlign === 'below') {
|
185
|
-
return 'bottom';
|
186
|
-
}
|
187
|
-
}
|
188
|
-
return '';
|
189
|
-
}
|
190
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
191
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: PopoverComponent, isStandalone: true, selector: "lx-popover", inputs: { trigger: "trigger", horizontalAlign: "horizontalAlign", verticalAlign: "verticalAlign", noMargin: "noMargin", allowOverflow: "allowOverflow", autoFocus: "autoFocus", restoreFocus: "restoreFocus", hasBackdrop: "hasBackdrop", adaptMarginsForViewportAlignChange: "adaptMarginsForViewportAlignChange" }, outputs: { opened: "opened", closed: "closed" }, queries: [{ propertyName: "explicitContent", first: true, predicate: PopoverContentDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "satPopover", first: true, predicate: SatPopoverComponent, descendants: true, static: true }, { propertyName: "implicitContent", first: true, predicate: ["implicitContent"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<sat-popover\n [anchor]=\"trigger.anchor\"\n [horizontalAlign]=\"horizontalAlign\"\n [verticalAlign]=\"verticalAlign\"\n [restoreFocus]=\"restoreFocus\"\n [lockAlignment]=\"true\"\n [autoFocus]=\"autoFocus\"\n [hasBackdrop]=\"hasBackdrop\"\n openTransition=\"0ms\"\n closeTransition=\"0ms\"\n (opened)=\"onOpen()\"\n (afterOpen)=\"onAfterOpen()\"\n (closed)=\"onClose()\"\n>\n <div\n class=\"popoverContainer\"\n [ngClass]=\"marginClasses\"\n [class.overflowHidden]=\"!allowOverflow\"\n (mouseenter)=\"trigger.showPopover(true)\"\n (mouseleave)=\"!hasBackdrop && trigger.closePopover(true)\"\n (keydown.escape)=\"$event.stopPropagation(); trigger.closePopover(true)\"\n >\n <ng-container *ngIf=\"isOpen\">\n <ng-container *ngTemplateOutlet=\"content\" />\n </ng-container>\n </div>\n</sat-popover>\n<ng-template #implicitContent>\n <ng-content />\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.popoverContainer{position:relative;box-shadow:0 8px 12px 2px #00000026;max-width:600px;max-height:80vh;border-radius:3px;background-color:#fff;hyphens:auto;animation:subtleScaleUpKeyFrames .2s ease}.popoverContainer.overflowHidden{overflow:hidden}.right{margin-left:18px}.left{margin-right:18px}.bottom{margin-top:18px}.top{margin-bottom:18px}\n"], dependencies: [{ kind: "ngmodule", type: SatPopoverModule }, { kind: "component", type: i1.SatPopoverComponent, selector: "sat-popover", inputs: ["anchor", "horizontalAlign", "xAlign", "verticalAlign", "yAlign", "forceAlignment", "lockAlignment", "autoFocus", "restoreFocus", "scrollStrategy", "hasBackdrop", "interactiveClose", "openTransition", "closeTransition", "openAnimationStartAtScale", "closeAnimationEndAtScale", "backdropClass", "panelClass"], outputs: ["opened", "closed", "afterOpen", "afterClose", "backdropClicked", "overlayKeydown"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
192
|
-
}
|
193
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverComponent, decorators: [{
|
194
|
-
type: Component,
|
195
|
-
args: [{ selector: 'lx-popover', standalone: true, imports: [SatPopoverModule, NgClass, NgIf, NgTemplateOutlet], template: "<sat-popover\n [anchor]=\"trigger.anchor\"\n [horizontalAlign]=\"horizontalAlign\"\n [verticalAlign]=\"verticalAlign\"\n [restoreFocus]=\"restoreFocus\"\n [lockAlignment]=\"true\"\n [autoFocus]=\"autoFocus\"\n [hasBackdrop]=\"hasBackdrop\"\n openTransition=\"0ms\"\n closeTransition=\"0ms\"\n (opened)=\"onOpen()\"\n (afterOpen)=\"onAfterOpen()\"\n (closed)=\"onClose()\"\n>\n <div\n class=\"popoverContainer\"\n [ngClass]=\"marginClasses\"\n [class.overflowHidden]=\"!allowOverflow\"\n (mouseenter)=\"trigger.showPopover(true)\"\n (mouseleave)=\"!hasBackdrop && trigger.closePopover(true)\"\n (keydown.escape)=\"$event.stopPropagation(); trigger.closePopover(true)\"\n >\n <ng-container *ngIf=\"isOpen\">\n <ng-container *ngTemplateOutlet=\"content\" />\n </ng-container>\n </div>\n</sat-popover>\n<ng-template #implicitContent>\n <ng-content />\n</ng-template>\n", styles: ["@keyframes subtleScaleUpKeyFrames{0%{transform:scale(.95);opacity:0}}.popoverContainer{position:relative;box-shadow:0 8px 12px 2px #00000026;max-width:600px;max-height:80vh;border-radius:3px;background-color:#fff;hyphens:auto;animation:subtleScaleUpKeyFrames .2s ease}.popoverContainer.overflowHidden{overflow:hidden}.right{margin-left:18px}.left{margin-right:18px}.bottom{margin-top:18px}.top{margin-bottom:18px}\n"] }]
|
196
|
-
}], propDecorators: { trigger: [{
|
197
|
-
type: Input
|
198
|
-
}], horizontalAlign: [{
|
199
|
-
type: Input
|
200
|
-
}], verticalAlign: [{
|
201
|
-
type: Input
|
202
|
-
}], noMargin: [{
|
203
|
-
type: Input
|
204
|
-
}], allowOverflow: [{
|
205
|
-
type: Input
|
206
|
-
}], autoFocus: [{
|
207
|
-
type: Input
|
208
|
-
}], restoreFocus: [{
|
209
|
-
type: Input
|
210
|
-
}], hasBackdrop: [{
|
211
|
-
type: Input
|
212
|
-
}], adaptMarginsForViewportAlignChange: [{
|
213
|
-
type: Input
|
214
|
-
}], opened: [{
|
215
|
-
type: Output
|
216
|
-
}], closed: [{
|
217
|
-
type: Output
|
218
|
-
}], satPopover: [{
|
219
|
-
type: ViewChild,
|
220
|
-
args: [SatPopoverComponent, { static: true }]
|
221
|
-
}], implicitContent: [{
|
222
|
-
type: ViewChild,
|
223
|
-
args: ['implicitContent', { static: true }]
|
224
|
-
}], explicitContent: [{
|
225
|
-
type: ContentChild,
|
226
|
-
args: [PopoverContentDirective, { read: TemplateRef, static: true }]
|
227
|
-
}] } });
|
228
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wb3BvdmVyLXVpL2NvbXBvbmVudHMvcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXItdWkvY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBaUIsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2SSxPQUFPLEVBQUUsbUJBQW1CLEVBQTZCLGdCQUFnQixFQUEyQixNQUFNLHNCQUFzQixDQUFDO0FBQ2pJLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDOzs7QUFHckY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlERztBQVFILE1BQU0sT0FBTyxnQkFBZ0I7SUFQN0I7UUFjRSxnQ0FBZ0M7UUFDdkIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUMxQiw2REFBNkQ7UUFDcEQsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDL0IscUZBQXFGO1FBQzVFLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDM0IsNkZBQTZGO1FBQ3BGLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQzdCLDBDQUEwQztRQUNqQyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQUM3Qjs7Ozs7OztXQU9HO1FBQ00sdUNBQWtDLEdBQUcsS0FB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YUFBYSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUNyQyxPQUFPLFFBQVEsQ0FBQztZQUNsQixDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs4R0F6SlUsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsMGRBc0NiLHVCQUF1QiwyQkFBVSxXQUFXLHVGQUwvQyxtQkFBbUIsc01DeEdoQywrNEJBOEJBLHdkRHVDWSxnQkFBZ0IsMGdCQUFFLE9BQU8sb0ZBQUUsSUFBSSw2RkFBRSxnQkFBZ0I7OzJGQUVoRCxnQkFBZ0I7a0JBUDVCLFNBQVM7K0JBQ0UsWUFBWSxjQUdWLElBQUksV0FDUCxDQUFDLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLENBQUM7OEJBSW5ELE9BQU87c0JBQWYsS0FBSztnQkFFRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsWUFBWTtzQkFBcEIsS0FBSztnQkFFRyxXQUFXO3NCQUFuQixLQUFLO2dCQVNHLGtDQUFrQztzQkFBMUMsS0FBSztnQkFHSSxNQUFNO3NCQUFmLE1BQU07Z0JBRUcsTUFBTTtzQkFBZixNQUFNO2dCQUcyQyxVQUFVO3NCQUEzRCxTQUFTO3VCQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFQSxlQUFlO3NCQUE5RCxTQUFTO3VCQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFHOEIsZUFBZTtzQkFBMUYsWUFBWTt1QkFBQyx1QkFBdUIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MsIE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTYXRQb3BvdmVyQ29tcG9uZW50LCBTYXRQb3BvdmVySG9yaXpvbnRhbEFsaWduLCBTYXRQb3BvdmVyTW9kdWxlLCBTYXRQb3BvdmVyVmVydGljYWxBbGlnbiB9IGZyb20gJ0BuY3N0YXRlL3NhdC1wb3BvdmVyJztcbmltcG9ydCB7IFBvcG92ZXJDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wb3BvdmVyLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9wb3BvdmVyLWhvdmVyLmRpcmVjdGl2ZSc7XG5cbi8qKlxuICogVGhlIFBvcG92ZXIgY29tcG9uZW50IGlzIGJhc2VkIG9uIHRoZSBbbmNzdGF0ZS1zYXQvcG9wb3Zlcl0oaHR0cHM6Ly9naXRodWIuY29tL25jc3RhdGUtc2F0L3BvcG92ZXIpIGxpYnJhcnkuXG4gKlxuICogIyMgRXhhbXBsZXNcblxuICogVGhpcyBwb3BvdmVyIGVuY2Fwc3VsYXRlcyB0aGlzIG9wZW4gc291cmNlIGxpYnJhcnk6IGh0dHBzOi8vZ2l0aHViLmNvbS9uY3N0YXRlLXNhdC9wb3BvdmVyLFxuICogbWFrZSBzdXJlIHRvIGFsc28gY2hlY2sgb3V0IHRoZSBkb2NzIG92ZXIgdGhlcmUuXG4gKlxuICogQXMgb2YgdG9kYXkgdGhleSBhcmUgdHdvIHRyaWdnZXIgc3RyYXRlZ2llcyB0byBkaXNwbGF5IGEgcG9wb3Zlci5cbiAqIDEuIFNob3cgb24gaG92ZXJpbmcgdGhlIGFuY2hvciBhbmQgd2hpbGUgaG92ZXJpbmcgdGhlIHBvcG92ZXIgYm9keS5cbiAqIDIuIFNob3cgb24gY2xpY2sgYW5kIHdoaWxlIGhvdmVyaW5nIHRoZSBwb3BvdmVyIGJvZHkuXG4gKlxuICogRm9yIHVzZSBjYXNlIDEuIHlvdSB3b3VsZCB1c2UgdGhlIGx4UG9wb3ZlckhvdmVyIGRpcmVjdGl2ZSwgd2hpY2ggZXhwb3J0cyBhcyBob3ZlckFuY2hvci5cbiAqXG4gKiAjIyMgRXhhbXBsZTpcbiAqIGBgYGh0bWxcbiAqIDxkaXYgbHhQb3BvdmVySG92ZXJcbiAqICAgICAgaG92ZXJBbmNob3JcbiAqICAgICAgc2F0UG9wb3ZlckFuY2hvclxuICogICAgICAjYW5jaG9yPVwiaG92ZXJBbmNob3JcIj48L2Rpdj5cbiAqIDxseC1wb3BvdmVyIFt0cmlnZ2VyXT1cImFuY2hvclwiXG4gKiAgICAgICAgICAgICBob3Jpem9udGFsQWxpZ249XCJhZnRlclwiXG4gKiAgICAgICAgICAgICB2ZXJ0aWNhbEFsaWduPVwiY2VudGVyXCI+XG4gKiAgICA8cD5Qb3BvdmVyIGNvbnRlbnQ8L3A+XG4gKiA8L2x4LXBvcG92ZXI+XG4gKiBgYGBcbiAqXG4gKiBGb3IgdXNlIGNhc2UgMi4geW91IHdvdWxkIHVzZSB0aGUgbHhQb3BvdmVyQ2xpY2sgZGlyZWN0aXZlLCB3aGljaCBleHBvcnRzIGFzIGNsaWNrQW5jaG9yLlxuICogTm90ZTogU2luY2UgdGhlIG9ubHkgY29tcG9uZW50IHdoZXJlIHdlIHVzZSB0aGUgbHhQb3BvdmVyQ2xpY2sgZGlyZWN0aXZlIChSZXBvcnRDb21wb25lbnQpXG4gKiBuZWVkcyB0byBmZXRjaCBzb21lIGRhdGEgYmVmb3JlIG9wZW5pbmcgaXQsIHdlIGRvIG5vdCByZWdpc3RlciBhIGNsaWNrIEV2ZW50TGlzdGVuZXIgaW4gdGhpcyBkaXJlY3RpdmUsXG4gKiBidXQgcmVxdWlyZSB0aGUgZGV2ZWxvcGVyIHRvIGltcGxlbWVudCB0aGF0IGluIHRoZSBjb21wb25lbnQsIHdoZXJlIHRoZSBwb3BvdmVyIGlzIHVzZWQuXG4gKlxuICogIyMjIEV4YW1wbGU6XG4gKiBgYGBodG1sXG4gKiA8ZGl2IGx4UG9wb3ZlckNsaWNrXG4gKiAgICAgIGNsaWNrQW5jaG9yXG4gKiAgICAgIHNhdFBvcG92ZXJBbmNob3JcbiAqICAgICAgI2FuY2hvcj1cImNsaWNrQW5jaG9yXCJcbiAqICAgICAgKGNsaWNrKT1cInBvcG92ZXIub3BlbigpXCI+Q2xpY2sgTWUhPC9kaXY+XG4gKiA8bHgtcG9wb3ZlciBbdHJpZ2dlcl09XCJhbmNob3JcIlxuICogICAgICAgICAgICAgaG9yaXpvbnRhbEFsaWduPVwiYWZ0ZXJcIlxuICogICAgICAgICAgICAgdmVydGljYWxBbGlnbj1cImNlbnRlclwiXG4gKiAgICAgICAgICAgICAjcG9wb3Zlcj5cbiAqICAgIDxwPlBvcG92ZXIgY29udGVudDwvcD5cbiAqIDwvbHgtcG9wb3Zlcj5cbiAqIGBgYFxuICpcbiAqIElmIHRoaXMgY29tcG9uZW50IGlzIHVzZWQgd2l0aCBhbmd1bGFyQ29tcGlsZXJPcHRpb25zIHN0cmljdFRlbXBsYXRlcz10cnVlLFxuICogc2F0UG9wb3ZlckFuY2hvciBtdXN0IGJlIHNldCB0byB0aGUgcmVmZXJlbmNlIHRvIHRoZSBTYXRQb3BvdmVyIGluc2lkZSBseC1wb3BvdmVyLlxuICpcbiAqICMjIyBFeGFtcGxlOlxuICogYGBgaHRtbFxuICogPGRpdiBbc2F0UG9wb3ZlckFuY2hvcl09XCJwb3BvdmVyLnNhdFBvcG92ZXJcIj48L2Rpdj5cbiAqIDxseC1wb3BvdmVyICNwb3BvdmVyPlxuICogICAgPHA+UG9wb3ZlciBjb250ZW50PC9wPlxuICogPC9seC1wb3BvdmVyPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2x4LXBvcG92ZXInLFxuICB0ZW1wbGF0ZVVybDogJ3BvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsncG9wb3Zlci5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbU2F0UG9wb3Zlck1vZHVsZSwgTmdDbGFzcywgTmdJZiwgTmdUZW1wbGF0ZU91dGxldF1cbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIC8qKiBUaGUgdHJpZ2dlciBkaXJlY3RpdmUgdGhhdCB3aWxsIG9wZW4gdGhlIHBvcG92ZXIuIFRoaXMgaXMgYWxzbyB0aGUgYW5jaG9yIGZvciB0aGUgcG9wb3Zlci4gKi9cbiAgQElucHV0KCkgdHJpZ2dlciE6IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlO1xuICAvKiogVGhlIGhvcml6b250YWwgYWxpZ25tZW50IG9mIHRoZSBwb3BvdmVyIChgY2VudGVyYCBieSBkZWZhdWx0KS4gKi9cbiAgQElucHV0KCkgaG9yaXpvbnRhbEFsaWduITogU2F0UG9wb3Zlckhvcml6b250YWxBbGlnbjtcbiAgLyoqIFRoZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgdGhlIHBvcG92ZXIgKGBhYm92ZWAgYnkgZGVmYXVsdCkuICovXG4gIEBJbnB1dCgpIHZlcnRpY2FsQWxpZ24hOiBTYXRQb3BvdmVyVmVydGljYWxBbGlnbjtcbiAgLyoqIFdoZXRoZXIgdG8gYXBwbHkgbWFyZ2lucy4gKi9cbiAgQElucHV0KCkgbm9NYXJnaW4gPSBmYWxzZTtcbiAgLyoqIFdoZXRoZXIgdG8gYWxsb3cgdGhlIHBvcG92ZXIgdG8gb3ZlcmZsb3cgdGhlIHZpZXdwb3J0LiAqL1xuICBASW5wdXQoKSBhbGxvd092ZXJmbG93ID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRvIGZvY3VzIHRoZSBmaXJzdCBmb2N1c2FibGUgZWxlbWVudCBpbiB0aGUgcG9wb3ZlciB3aGVuIGl0IGlzIG9wZW5lZC4gKi9cbiAgQElucHV0KCkgYXV0b0ZvY3VzID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRvIHJlc3RvcmUgZm9jdXMgdG8gdGhlIHByZXZpb3VzbHktZm9jdXNlZCBlbGVtZW50IHdoZW4gdGhlIHBvcG92ZXIgaXMgY2xvc2VkLiAqL1xuICBASW5wdXQoKSByZXN0b3JlRm9jdXMgPSB0cnVlO1xuICAvKiogV2hldGhlciB0aGUgcG9wb3ZlciBoYXMgYSBiYWNrZHJvcC4gKi9cbiAgQElucHV0KCkgaGFzQmFja2Ryb3AgPSBmYWxzZTtcbiAgLyoqXG4gICAqIElmIHlvdSBoYXZlIGEgcG9wb3ZlciwgdGhhdCBzaG91bGQgdXN1YWxseSBiZSBkaXNwbGF5ZWQgYWJvdmUgb3IgYmVsb3cgaXRzIGFuY2hvcixcbiAgICogYW5kIHRoaXMgYW5jaG9yIGlzIGluIGEgc2Nyb2xsYWJsZSBjb250YWluZXIsIHlvdSBzaG91bGQgc2V0IHRoaXMgdG8gdHJ1ZS5cbiAgICogU2F0UG9wb3ZlciB3aWxsIG9wZW4gdGhpcyBwb3BvdmVyIGluIHRoZSBkaXJlY3Rpb24gd2hlcmUgdGhlcmUgaXMgZW5vdWdoIHNwYWNlLFxuICAgKiBzbyBpdHMgcG9zaXRpb24gbWlnaHQgZGlmZmVyIGZyb20gdGhlIGhvcml6b250YWxBbGlnbiBhbmQgdmVydGljYWxBbGlnbiB2YWx1ZXMuXG4gICAqIEluIHRoaXMgY2FzZSB3ZSByZWx5IG9uIHRoZSBTYXRQb3BvdmVyOjpfY2xhc3NMaXN0IHByb3BlcnR5IHRvIGdldCB0aGUgY29tcHV0ZWRcbiAgICogcG9zaXRpb24gb2YgdGhlIHBvcG92ZXIgYWZ0ZXIgb3BlbmluZy5cbiAgICovXG4gIEBJbnB1dCgpIGFkYXB0TWFyZ2luc0ZvclZpZXdwb3J0QWxpZ25DaGFuZ2UgPSBmYWxzZTtcblxuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBwb3BvdmVyIGlzIG9wZW5lZC4gKi9cbiAgQE91dHB1dCgpIG9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgcG9wb3ZlciBpcyBjbG9zZWQuICovXG4gIEBPdXRwdXQoKSBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBAVmlld0NoaWxkKFNhdFBvcG92ZXJDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIHNhdFBvcG92ZXIhOiBTYXRQb3BvdmVyQ29tcG9uZW50O1xuICAvKiogQGludGVybmFsICovXG4gIEBWaWV3Q2hpbGQoJ2ltcGxpY2l0Q29udGVudCcsIHsgc3RhdGljOiB0cnVlIH0pIGltcGxpY2l0Q29udGVudCE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBAQ29udGVudENoaWxkKFBvcG92ZXJDb250ZW50RGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IHRydWUgfSkgZXhwbGljaXRDb250ZW50PzogVGVtcGxhdGVSZWY8YW55PjtcblxuICAvKiogQGludGVybmFsICovXG4gIG1hcmdpbkNsYXNzZXMhOiBzdHJpbmc7XG5cbiAgZ2V0IGNvbnRlbnQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZXhwbGljaXRDb250ZW50IHx8IHRoaXMuaW1wbGljaXRDb250ZW50O1xuICB9XG5cbiAgZ2V0IGlzT3BlbigpIHtcbiAgICByZXR1cm4gdGhpcy5faXNPcGVuO1xuICB9XG4gIHByaXZhdGUgX2lzT3BlbiA9IGZhbHNlO1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snaG9yaXpvbnRhbEFsaWduJ10gJiYgY2hhbmdlc1sndmVydGljYWxBbGlnbiddKSB7XG4gICAgICB0aGlzLm1hcmdpbkNsYXNzZXMgPSB0aGlzLmdldERlZmF1bHRNYXJnaW5DbGFzc2VzKHRoaXMuaG9yaXpvbnRhbEFsaWduLCB0aGlzLnZlcnRpY2FsQWxpZ24pO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgb3BlbigpIHtcbiAgICB0aGlzLnNhdFBvcG92ZXIub3BlbigpO1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBjbG9zZSgpIHtcbiAgICB0aGlzLnNhdFBvcG92ZXIuY2xvc2UoKTtcbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgb25PcGVuKCkge1xuICAgIHRoaXMuX2lzT3BlbiA9IHRydWU7XG4gICAgdGhpcy5vcGVuZWQuZW1pdCgpO1xuICB9XG5cbiAgLyoqIEBpbnRlcm5hbCAqL1xuICBvbkFmdGVyT3BlbigpIHtcbiAgICBpZiAodGhpcy5hZGFwdE1hcmdpbnNGb3JWaWV3cG9ydEFsaWduQ2hhbmdlKSB7XG4gICAgICB0aGlzLm1hcmdpbkNsYXNzZXMgPSB0aGlzLmdldE1hcmdpbkNsYXNzZXNGb3JDbGFzc0xpc3QodGhpcy5zYXRQb3BvdmVyLl9jbGFzc0xpc3QpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW50ZXJuYWwgKi9cbiAgb25DbG9zZSgpIHtcbiAgICB0aGlzLl9pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KCk7XG4gIH1cblxuICAvKipcbiAgICogU2F0UG9wb3Zlcjo6X2NsYXNzTGlzdCB3aWxsIGNvbnRhaW4gYSBtYXAgb2YgYWxpZ25tZW50IENTUyBjbGFzc2VzLCBvbmNlIHRoZSBwb3BvdmVyIHdhcyBvcGVuZWQuXG4gICAqIFRoZXNlIGFsaWdubWVudCBjbGFzc2VzIGNhbiBiZSBkaWZmZXJlbnQgZnJvbSB3aGF0IHlvdSB3b3VsZCBleHBlY3QgZnJvbSB0aGUgaG9yaXpvbnRhbC0gYW5kIHZlcnRpY2FsQWxpZ24gaW5wdXRzLFxuICAgKiBiZWNhdXNlIHRoZXJlIG1pZ2h0IG5vdCBiZSBlbm91Z2ggc3BhY2UgYWJvdmUgdGhlIGFuY2hvciB0byBtZWV0IHRoZSB2ZXJ0aWNhbEFsaWduPSdhYm92ZScgY3JpdGVyaWEsXG4gICAqIHNvIGl0IHdpbGwgYmUgZGlzcGxheWVkIGJlbG93IHRoZSBhbmNob3IgaW5zdGVhZC5cbiAgICovXG4gIHByaXZhdGUgZ2V0TWFyZ2luQ2xhc3Nlc0ZvckNsYXNzTGlzdChzYXRQb3BvdmVyQ2xhc3NMaXN0OiB7IFtjbGFzc05hbWU6IHN0cmluZ106IGJvb2xlYW4gfSk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubm9NYXJnaW4pIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBpZiAoc2F0UG9wb3ZlckNsYXNzTGlzdFsnc2F0LXBvcG92ZXItYWJvdmUnXSkge1xuICAgICAgcmV0dXJuIHRoaXMubWFyZ2luQ2xhc3Nlcy5pbmNsdWRlcygndG9wJykgPyB0aGlzLm1hcmdpbkNsYXNzZXMgOiAndG9wJztcbiAgICB9XG5cbiAgICBpZiAoc2F0UG9wb3ZlckNsYXNzTGlzdFsnc2F0LXBvcG92ZXItYmVsb3cnXSkge1xuICAgICAgcmV0dXJuIHRoaXMubWFyZ2luQ2xhc3Nlcy5pbmNsdWRlcygnYm90dG9tJykgPyB0aGlzLm1hcmdpbkNsYXNzZXMgOiAnYm90dG9tJztcbiAgICB9XG5cbiAgICBpZiAoc2F0UG9wb3ZlckNsYXNzTGlzdFsnc2F0LXBvcG92ZXItYmVmb3JlJ10pIHtcbiAgICAgIHJldHVybiB0aGlzLm1hcmdpbkNsYXNzZXMuaW5jbHVkZXMoJ2xlZnQnKSA/IHRoaXMubWFyZ2luQ2xhc3NlcyA6ICdsZWZ0JztcbiAgICB9XG5cbiAgICBpZiAoc2F0UG9wb3ZlckNsYXNzTGlzdFsnc2F0LXBvcG92ZXItYWZ0ZXInXSkge1xuICAgICAgcmV0dXJuIHRoaXMubWFyZ2luQ2xhc3Nlcy5pbmNsdWRlcygncmlnaHQnKSA/IHRoaXMubWFyZ2luQ2xhc3NlcyA6ICdyaWdodCc7XG4gICAgfVxuXG4gICAgaWYgKHNhdFBvcG92ZXJDbGFzc0xpc3RbJ3NhdC1wb3BvdmVyLWNlbnRlciddKSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGVmYXVsdE1hcmdpbkNsYXNzZXMoaG9yaXpvbnRhbEFsaWduOiBTYXRQb3BvdmVySG9yaXpvbnRhbEFsaWduLCB2ZXJ0aWNhbEFsaWduOiBTYXRQb3BvdmVyVmVydGljYWxBbGlnbik6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMubm9NYXJnaW4pIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG5cbiAgICBpZiAoaG9yaXpvbnRhbEFsaWduID09PSAnYWZ0ZXInKSB7XG4gICAgICBpZiAodmVydGljYWxBbGlnbiA9PT0gJ2NlbnRlcicgfHwgdmVydGljYWxBbGlnbiA9PT0gJ3N0YXJ0JyB8fCB2ZXJ0aWNhbEFsaWduID09PSAnZW5kJykge1xuICAgICAgICByZXR1cm4gJ3JpZ2h0JztcbiAgICAgIH0gZWxzZSBpZiAodmVydGljYWxBbGlnbiA9PT0gJ2Fib3ZlJykge1xuICAgICAgICByZXR1cm4gJ3JpZ2h0IHRvcCc7XG4gICAgICB9IGVsc2UgaWYgKHZlcnRpY2FsQWxpZ24gPT09ICdiZWxvdycpIHtcbiAgICAgICAgcmV0dXJuICdyaWdodCBib3R0b20nO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChob3Jpem9udGFsQWxpZ24gPT09ICdiZWZvcmUnKSB7XG4gICAgICBpZiAodmVydGljYWxBbGlnbiA9PT0gJ2NlbnRlcicgfHwgdmVydGljYWxBbGlnbiA9PT0gJ3N0YXJ0JyB8fCB2ZXJ0aWNhbEFsaWduID09PSAnZW5kJykge1xuICAgICAgICByZXR1cm4gJ2xlZnQnO1xuICAgICAgfSBlbHNlIGlmICh2ZXJ0aWNhbEFsaWduID09PSAnYWJvdmUnKSB7XG4gICAgICAgIHJldHVybiAnbGVmdCB0b3AnO1xuICAgICAgfSBlbHNlIGlmICh2ZXJ0aWNhbEFsaWduID09PSAnYmVsb3cnKSB7XG4gICAgICAgIHJldHVybiAnbGVmdCBib3R0b20nO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChob3Jpem9udGFsQWxpZ24gPT09ICdjZW50ZXInIHx8IGhvcml6b250YWxBbGlnbiA9PT0gJ3N0YXJ0JyB8fCBob3Jpem9udGFsQWxpZ24gPT09ICdlbmQnKSB7XG4gICAgICBpZiAodmVydGljYWxBbGlnbiA9PT0gJ2Fib3ZlJykge1xuICAgICAgICByZXR1cm4gJ3RvcCc7XG4gICAgICB9IGVsc2UgaWYgKHZlcnRpY2FsQWxpZ24gPT09ICdiZWxvdycpIHtcbiAgICAgICAgcmV0dXJuICdib3R0b20nO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbiIsIjxzYXQtcG9wb3ZlclxuICBbYW5jaG9yXT1cInRyaWdnZXIuYW5jaG9yXCJcbiAgW2hvcml6b250YWxBbGlnbl09XCJob3Jpem9udGFsQWxpZ25cIlxuICBbdmVydGljYWxBbGlnbl09XCJ2ZXJ0aWNhbEFsaWduXCJcbiAgW3Jlc3RvcmVGb2N1c109XCJyZXN0b3JlRm9jdXNcIlxuICBbbG9ja0FsaWdubWVudF09XCJ0cnVlXCJcbiAgW2F1dG9Gb2N1c109XCJhdXRvRm9jdXNcIlxuICBbaGFzQmFja2Ryb3BdPVwiaGFzQmFja2Ryb3BcIlxuICBvcGVuVHJhbnNpdGlvbj1cIjBtc1wiXG4gIGNsb3NlVHJhbnNpdGlvbj1cIjBtc1wiXG4gIChvcGVuZWQpPVwib25PcGVuKClcIlxuICAoYWZ0ZXJPcGVuKT1cIm9uQWZ0ZXJPcGVuKClcIlxuICAoY2xvc2VkKT1cIm9uQ2xvc2UoKVwiXG4+XG4gIDxkaXZcbiAgICBjbGFzcz1cInBvcG92ZXJDb250YWluZXJcIlxuICAgIFtuZ0NsYXNzXT1cIm1hcmdpbkNsYXNzZXNcIlxuICAgIFtjbGFzcy5vdmVyZmxvd0hpZGRlbl09XCIhYWxsb3dPdmVyZmxvd1wiXG4gICAgKG1vdXNlZW50ZXIpPVwidHJpZ2dlci5zaG93UG9wb3Zlcih0cnVlKVwiXG4gICAgKG1vdXNlbGVhdmUpPVwiIWhhc0JhY2tkcm9wICYmIHRyaWdnZXIuY2xvc2VQb3BvdmVyKHRydWUpXCJcbiAgICAoa2V5ZG93bi5lc2NhcGUpPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyB0cmlnZ2VyLmNsb3NlUG9wb3Zlcih0cnVlKVwiXG4gID5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNPcGVuXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFwiIC8+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9zYXQtcG9wb3Zlcj5cbjxuZy10ZW1wbGF0ZSAjaW1wbGljaXRDb250ZW50PlxuICA8bmctY29udGVudCAvPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
@@ -1,52 +0,0 @@
|
|
1
|
-
import { __decorate } from "tslib";
|
2
|
-
import { Directive, HostListener, Input } from '@angular/core';
|
3
|
-
import { Subject, of } from 'rxjs';
|
4
|
-
import { delay, filter, switchMap, takeUntil } from 'rxjs/operators';
|
5
|
-
import { Observe } from '../../shared/observe';
|
6
|
-
import * as i0 from "@angular/core";
|
7
|
-
import * as i1 from "@ncstate/sat-popover";
|
8
|
-
/**
|
9
|
-
* @see PopoverComponent for usage documentation.
|
10
|
-
*/
|
11
|
-
export class PopoverClickDirective {
|
12
|
-
constructor(anchor) {
|
13
|
-
this.anchor = anchor;
|
14
|
-
this.lxPopoverPinned = false;
|
15
|
-
this.onPopoverShow = new Subject();
|
16
|
-
this.onMouseLeave = new Subject();
|
17
|
-
this.destroyed$ = new Subject();
|
18
|
-
}
|
19
|
-
ngAfterViewInit() {
|
20
|
-
this.onMouseLeave
|
21
|
-
.pipe(switchMap(() => this.pinned$), filter((pinned) => !pinned), switchMap(() => of(null).pipe(delay(300), takeUntil(this.onPopoverShow))), takeUntil(this.destroyed$))
|
22
|
-
.subscribe(() => this.anchor.popover.close());
|
23
|
-
}
|
24
|
-
ngOnDestroy() {
|
25
|
-
this.destroyed$.next();
|
26
|
-
}
|
27
|
-
showPopover() {
|
28
|
-
this.onPopoverShow.next();
|
29
|
-
}
|
30
|
-
closePopover() {
|
31
|
-
this.onMouseLeave.next();
|
32
|
-
}
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverClickDirective, deps: [{ token: i1.SatPopoverAnchorDirective }], target: i0.ɵɵFactoryTarget.Directive }); }
|
34
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: PopoverClickDirective, isStandalone: true, selector: "[lxPopoverClick]", inputs: { lxPopoverPinned: "lxPopoverPinned" }, host: { listeners: { "mouseleave": "closePopover()" } }, exportAs: ["clickAnchor"], ngImport: i0 }); }
|
35
|
-
}
|
36
|
-
__decorate([
|
37
|
-
Observe('lxPopoverPinned')
|
38
|
-
], PopoverClickDirective.prototype, "pinned$", void 0);
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverClickDirective, decorators: [{
|
40
|
-
type: Directive,
|
41
|
-
args: [{
|
42
|
-
exportAs: 'clickAnchor',
|
43
|
-
selector: '[lxPopoverClick]',
|
44
|
-
standalone: true
|
45
|
-
}]
|
46
|
-
}], ctorParameters: () => [{ type: i1.SatPopoverAnchorDirective }], propDecorators: { lxPopoverPinned: [{
|
47
|
-
type: Input
|
48
|
-
}], pinned$: [], closePopover: [{
|
49
|
-
type: HostListener,
|
50
|
-
args: ['mouseleave']
|
51
|
-
}] } });
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1jbGljay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wb3BvdmVyLXVpL2RpcmVjdGl2ZXMvcG9wb3Zlci1jbGljay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFekYsT0FBTyxFQUFjLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBRy9DOztHQUVHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQVVoQyxZQUFtQixNQUFpQztRQUFqQyxXQUFNLEdBQU4sTUFBTSxDQUEyQjtRQVQzQyxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUd6QixrQkFBYSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFFcEMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWxDLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRWEsQ0FBQztJQUV4RCxlQUFlO1FBQ2IsSUFBSSxDQUFDLFlBQVk7YUFDZCxJQUFJLENBQ0gsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFDN0IsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUMzQixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLEVBQ3pFLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQzNCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBR0QsWUFBWTtRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs4R0FsQ1UscUJBQXFCO2tHQUFyQixxQkFBcUI7O0FBRUo7SUFBM0IsT0FBTyxDQUFDLGlCQUFpQixDQUFDO3NEQUErQjsyRkFGL0MscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixVQUFVLEVBQUUsSUFBSTtpQkFDakI7OEZBRVUsZUFBZTtzQkFBdkIsS0FBSztnQkFDc0IsT0FBTyxNQThCbkMsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2F0UG9wb3ZlckFuY2hvckRpcmVjdGl2ZSB9IGZyb20gJ0BuY3N0YXRlL3NhdC1wb3BvdmVyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgZmlsdGVyLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IE9ic2VydmUgfSBmcm9tICcuLi8uLi9zaGFyZWQvb2JzZXJ2ZSc7XG5pbXBvcnQgeyBQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vcG9wb3Zlci1ob3Zlci5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEBzZWUgUG9wb3ZlckNvbXBvbmVudCBmb3IgdXNhZ2UgZG9jdW1lbnRhdGlvbi5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIGV4cG9ydEFzOiAnY2xpY2tBbmNob3InLFxuICBzZWxlY3RvcjogJ1tseFBvcG92ZXJDbGlja10nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJDbGlja0RpcmVjdGl2ZSBpbXBsZW1lbnRzIFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBseFBvcG92ZXJQaW5uZWQgPSBmYWxzZTtcbiAgQE9ic2VydmUoJ2x4UG9wb3ZlclBpbm5lZCcpIHBpbm5lZCQhOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHByaXZhdGUgb25Qb3BvdmVyU2hvdyA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBvbk1vdXNlTGVhdmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHJlYWRvbmx5IGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBhbmNob3I6IFNhdFBvcG92ZXJBbmNob3JEaXJlY3RpdmUpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMub25Nb3VzZUxlYXZlXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHRoaXMucGlubmVkJCksXG4gICAgICAgIGZpbHRlcigocGlubmVkKSA9PiAhcGlubmVkKSxcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IG9mKG51bGwpLnBpcGUoZGVsYXkoMzAwKSwgdGFrZVVudGlsKHRoaXMub25Qb3BvdmVyU2hvdykpKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJClcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5hbmNob3IucG9wb3Zlci5jbG9zZSgpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gIH1cblxuICBzaG93UG9wb3ZlcigpIHtcbiAgICB0aGlzLm9uUG9wb3ZlclNob3cubmV4dCgpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VsZWF2ZScpXG4gIGNsb3NlUG9wb3ZlcigpIHtcbiAgICB0aGlzLm9uTW91c2VMZWF2ZS5uZXh0KCk7XG4gIH1cbn1cbiJdfQ==
|
@@ -1,17 +0,0 @@
|
|
1
|
-
import { Directive } from '@angular/core';
|
2
|
-
import * as i0 from "@angular/core";
|
3
|
-
/**
|
4
|
-
* @see PopoverComponent for usage documentation.
|
5
|
-
*/
|
6
|
-
export class PopoverContentDirective {
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
8
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: PopoverContentDirective, isStandalone: true, selector: "[lxPopoverContent]", ngImport: i0 }); }
|
9
|
-
}
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverContentDirective, decorators: [{
|
11
|
-
type: Directive,
|
12
|
-
args: [{
|
13
|
-
selector: '[lxPopoverContent]',
|
14
|
-
standalone: true
|
15
|
-
}]
|
16
|
-
}] });
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXItdWkvZGlyZWN0aXZlcy9wb3BvdmVyLWNvbnRlbnQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDOztHQUVHO0FBS0gsTUFBTSxPQUFPLHVCQUF1Qjs4R0FBdkIsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBSm5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQHNlZSBQb3BvdmVyQ29tcG9uZW50IGZvciB1c2FnZSBkb2N1bWVudGF0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbHhQb3BvdmVyQ29udGVudF0nLFxuICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJDb250ZW50RGlyZWN0aXZlIHt9XG4iXX0=
|
@@ -1,88 +0,0 @@
|
|
1
|
-
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
2
|
-
import { Directive, HostListener, Input } from '@angular/core';
|
3
|
-
import { Subject, of } from 'rxjs';
|
4
|
-
import { delay, switchMap, takeUntil } from 'rxjs/operators';
|
5
|
-
import * as i0 from "@angular/core";
|
6
|
-
import * as i1 from "@ncstate/sat-popover";
|
7
|
-
/**
|
8
|
-
* @see PopoverComponent for usage documentation.
|
9
|
-
*/
|
10
|
-
export class PopoverHoverDirective {
|
11
|
-
/**
|
12
|
-
* Amount of time to delay (ms) after hovering starts before
|
13
|
-
* the popover opens.
|
14
|
-
*/
|
15
|
-
get lxPopoverHover() {
|
16
|
-
return this._lxPopoverHover;
|
17
|
-
}
|
18
|
-
set lxPopoverHover(val) {
|
19
|
-
this._lxPopoverHover = coerceNumberProperty(val, 200);
|
20
|
-
}
|
21
|
-
constructor(anchor) {
|
22
|
-
this.anchor = anchor;
|
23
|
-
/**
|
24
|
-
* Relevant for tooltip style.
|
25
|
-
*/
|
26
|
-
this.skipCloseDelay = false;
|
27
|
-
/** Emits when the user's mouse enters the element. */
|
28
|
-
this.onMouseEnter = new Subject();
|
29
|
-
/** Emits when the user's mouse leaves the element. */
|
30
|
-
this.onMouseLeave = new Subject();
|
31
|
-
this.destroyed$ = new Subject();
|
32
|
-
}
|
33
|
-
ngAfterViewInit() {
|
34
|
-
// Whenever the user hovers this host element, delay the configured
|
35
|
-
// amount of time and open the popover. Terminate if the mouse leaves
|
36
|
-
// the host element before the delay is complete.
|
37
|
-
this.onMouseEnter
|
38
|
-
.pipe(switchMap(({ skipDelay }) => of(null).pipe(delay(skipDelay ? 0 : this._lxPopoverHover), takeUntil(this.onMouseLeave))), takeUntil(this.destroyed$))
|
39
|
-
.subscribe(() => this.anchor.popover.open());
|
40
|
-
// Whenever the user leaves this host element, delay the closing of the popover by the configured delay.
|
41
|
-
// Abort closing if during this delay another mouseEnter event occurs, for example by the popover itself.
|
42
|
-
this.onMouseLeave
|
43
|
-
.pipe(switchMap(({ skipDelay }) => of(null).pipe(delay(skipDelay ? 0 : 300), takeUntil(this.onMouseEnter))), takeUntil(this.destroyed$))
|
44
|
-
.subscribe(() => {
|
45
|
-
if (this.anchor.popover.isOpen()) {
|
46
|
-
// This is the default case: the popover was shown, now we want to close it.
|
47
|
-
this.anchor.popover.close();
|
48
|
-
}
|
49
|
-
else {
|
50
|
-
// This can happen if we have delayed the opening of the popover, but the mouse left the anchor before
|
51
|
-
// the popover was shown. In this case, this.anchor.popover.close() would not generate a closed event,
|
52
|
-
// which is why we generate it manually here. This behavior supports cases where a "dummy" anchor is
|
53
|
-
// dynamically created, like the Fact Sheet detail popover in Reporting or the relations diagram.
|
54
|
-
this.anchor.popover.closed.emit();
|
55
|
-
}
|
56
|
-
});
|
57
|
-
}
|
58
|
-
ngOnDestroy() {
|
59
|
-
this.destroyed$.next();
|
60
|
-
}
|
61
|
-
showPopover(skipDelay = false) {
|
62
|
-
this.onMouseEnter.next({ skipDelay });
|
63
|
-
}
|
64
|
-
closePopover(skipDelay = this.skipCloseDelay) {
|
65
|
-
this.onMouseLeave.next({ skipDelay });
|
66
|
-
}
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverHoverDirective, deps: [{ token: i1.SatPopoverAnchorDirective }], target: i0.ɵɵFactoryTarget.Directive }); }
|
68
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.8", type: PopoverHoverDirective, isStandalone: true, selector: "[lxPopoverHover]", inputs: { lxPopoverHover: "lxPopoverHover", skipCloseDelay: "skipCloseDelay" }, host: { listeners: { "mouseenter": "showPopover()", "mouseleave": "closePopover()" } }, exportAs: ["hoverAnchor"], ngImport: i0 }); }
|
69
|
-
}
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: PopoverHoverDirective, decorators: [{
|
71
|
-
type: Directive,
|
72
|
-
args: [{
|
73
|
-
exportAs: 'hoverAnchor',
|
74
|
-
selector: '[lxPopoverHover]',
|
75
|
-
standalone: true
|
76
|
-
}]
|
77
|
-
}], ctorParameters: () => [{ type: i1.SatPopoverAnchorDirective }], propDecorators: { lxPopoverHover: [{
|
78
|
-
type: Input
|
79
|
-
}], skipCloseDelay: [{
|
80
|
-
type: Input
|
81
|
-
}], showPopover: [{
|
82
|
-
type: HostListener,
|
83
|
-
args: ['mouseenter']
|
84
|
-
}], closePopover: [{
|
85
|
-
type: HostListener,
|
86
|
-
args: ['mouseleave']
|
87
|
-
}] } });
|
88
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1ob3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wb3BvdmVyLXVpL2RpcmVjdGl2ZXMvcG9wb3Zlci1ob3Zlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFpQixTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUV6RixPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBUTdEOztHQUVHO0FBTUgsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQzs7O09BR0c7SUFDSCxJQUNJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxHQUFZO1FBQzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsb0JBQW9CLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFpQkQsWUFBbUIsTUFBaUM7UUFBakMsV0FBTSxHQUFOLE1BQU0sQ0FBMkI7UUFkcEQ7O1dBRUc7UUFFSCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUV2QixzREFBc0Q7UUFDOUMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBMEIsQ0FBQztRQUU3RCxzREFBc0Q7UUFDOUMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBMEIsQ0FBQztRQUVwRCxlQUFVLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUVhLENBQUM7SUFFeEQsZUFBZTtRQUNiLG1FQUFtRTtRQUNuRSxxRUFBcUU7UUFDckUsaURBQWlEO1FBQ2pELElBQUksQ0FBQyxZQUFZO2FBQ2QsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ3RILFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQzNCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFFL0Msd0dBQXdHO1FBQ3hHLHlHQUF5RztRQUN6RyxJQUFJLENBQUMsWUFBWTthQUNkLElBQUksQ0FDSCxTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQ3JHLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQzNCO2FBQ0EsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQztnQkFDakMsNEVBQTRFO2dCQUM1RSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM5QixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sc0dBQXNHO2dCQUN0RyxzR0FBc0c7Z0JBQ3RHLG9HQUFvRztnQkFDcEcsaUdBQWlHO2dCQUNqRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEMsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxXQUFXLENBQUMsU0FBUyxHQUFHLEtBQUs7UUFDM0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFHRCxZQUFZLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxjQUFjO1FBQzFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDOzhHQTFFVSxxQkFBcUI7a0dBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsYUFBYTtvQkFDdkIsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzhGQU9LLGNBQWM7c0JBRGpCLEtBQUs7Z0JBYU4sY0FBYztzQkFEYixLQUFLO2dCQWtETixXQUFXO3NCQURWLFlBQVk7dUJBQUMsWUFBWTtnQkFNMUIsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2VyY2VOdW1iZXJQcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2F0UG9wb3ZlckFuY2hvckRpcmVjdGl2ZSB9IGZyb20gJ0BuY3N0YXRlL3NhdC1wb3BvdmVyJztcbmltcG9ydCB7IFN1YmplY3QsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUge1xuICBhbmNob3I6IFNhdFBvcG92ZXJBbmNob3JEaXJlY3RpdmU7XG4gIHNob3dQb3BvdmVyKHNraXBEZWxheT86IGJvb2xlYW4pOiB2b2lkO1xuICBjbG9zZVBvcG92ZXIoc2tpcERlbGF5PzogYm9vbGVhbik6IHZvaWQ7XG59XG5cbi8qKlxuICogQHNlZSBQb3BvdmVyQ29tcG9uZW50IGZvciB1c2FnZSBkb2N1bWVudGF0aW9uLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgZXhwb3J0QXM6ICdob3ZlckFuY2hvcicsXG4gIHNlbGVjdG9yOiAnW2x4UG9wb3ZlckhvdmVyXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckhvdmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIEFtb3VudCBvZiB0aW1lIHRvIGRlbGF5IChtcykgYWZ0ZXIgaG92ZXJpbmcgc3RhcnRzIGJlZm9yZVxuICAgKiB0aGUgcG9wb3ZlciBvcGVucy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBseFBvcG92ZXJIb3ZlcigpIHtcbiAgICByZXR1cm4gdGhpcy5fbHhQb3BvdmVySG92ZXI7XG4gIH1cbiAgc2V0IGx4UG9wb3ZlckhvdmVyKHZhbDogdW5rbm93bikge1xuICAgIHRoaXMuX2x4UG9wb3ZlckhvdmVyID0gY29lcmNlTnVtYmVyUHJvcGVydHkodmFsLCAyMDApO1xuICB9XG4gIHByaXZhdGUgX2x4UG9wb3ZlckhvdmVyITogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBSZWxldmFudCBmb3IgdG9vbHRpcCBzdHlsZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHNraXBDbG9zZURlbGF5ID0gZmFsc2U7XG5cbiAgLyoqIEVtaXRzIHdoZW4gdGhlIHVzZXIncyBtb3VzZSBlbnRlcnMgdGhlIGVsZW1lbnQuICovXG4gIHByaXZhdGUgb25Nb3VzZUVudGVyID0gbmV3IFN1YmplY3Q8eyBza2lwRGVsYXk6IGJvb2xlYW4gfT4oKTtcblxuICAvKiogRW1pdHMgd2hlbiB0aGUgdXNlcidzIG1vdXNlIGxlYXZlcyB0aGUgZWxlbWVudC4gKi9cbiAgcHJpdmF0ZSBvbk1vdXNlTGVhdmUgPSBuZXcgU3ViamVjdDx7IHNraXBEZWxheTogYm9vbGVhbiB9PigpO1xuXG4gIHJlYWRvbmx5IGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBhbmNob3I6IFNhdFBvcG92ZXJBbmNob3JEaXJlY3RpdmUpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIC8vIFdoZW5ldmVyIHRoZSB1c2VyIGhvdmVycyB0aGlzIGhvc3QgZWxlbWVudCwgZGVsYXkgdGhlIGNvbmZpZ3VyZWRcbiAgICAvLyBhbW91bnQgb2YgdGltZSBhbmQgb3BlbiB0aGUgcG9wb3Zlci4gVGVybWluYXRlIGlmIHRoZSBtb3VzZSBsZWF2ZXNcbiAgICAvLyB0aGUgaG9zdCBlbGVtZW50IGJlZm9yZSB0aGUgZGVsYXkgaXMgY29tcGxldGUuXG4gICAgdGhpcy5vbk1vdXNlRW50ZXJcbiAgICAgIC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKHsgc2tpcERlbGF5IH0pID0+IG9mKG51bGwpLnBpcGUoZGVsYXkoc2tpcERlbGF5ID8gMCA6IHRoaXMuX2x4UG9wb3ZlckhvdmVyKSwgdGFrZVVudGlsKHRoaXMub25Nb3VzZUxlYXZlKSkpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQkKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmFuY2hvci5wb3BvdmVyLm9wZW4oKSk7XG5cbiAgICAvLyBXaGVuZXZlciB0aGUgdXNlciBsZWF2ZXMgdGhpcyBob3N0IGVsZW1lbnQsIGRlbGF5IHRoZSBjbG9zaW5nIG9mIHRoZSBwb3BvdmVyIGJ5IHRoZSBjb25maWd1cmVkIGRlbGF5LlxuICAgIC8vIEFib3J0IGNsb3NpbmcgaWYgZHVyaW5nIHRoaXMgZGVsYXkgYW5vdGhlciBtb3VzZUVudGVyIGV2ZW50IG9jY3VycywgZm9yIGV4YW1wbGUgYnkgdGhlIHBvcG92ZXIgaXRzZWxmLlxuICAgIHRoaXMub25Nb3VzZUxlYXZlXG4gICAgICAucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKCh7IHNraXBEZWxheSB9KSA9PiBvZihudWxsKS5waXBlKGRlbGF5KHNraXBEZWxheSA/IDAgOiAzMDApLCB0YWtlVW50aWwodGhpcy5vbk1vdXNlRW50ZXIpKSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCQpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgaWYgKHRoaXMuYW5jaG9yLnBvcG92ZXIuaXNPcGVuKCkpIHtcbiAgICAgICAgICAvLyBUaGlzIGlzIHRoZSBkZWZhdWx0IGNhc2U6IHRoZSBwb3BvdmVyIHdhcyBzaG93biwgbm93IHdlIHdhbnQgdG8gY2xvc2UgaXQuXG4gICAgICAgICAgdGhpcy5hbmNob3IucG9wb3Zlci5jbG9zZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIFRoaXMgY2FuIGhhcHBlbiBpZiB3ZSBoYXZlIGRlbGF5ZWQgdGhlIG9wZW5pbmcgb2YgdGhlIHBvcG92ZXIsIGJ1dCB0aGUgbW91c2UgbGVmdCB0aGUgYW5jaG9yIGJlZm9yZVxuICAgICAgICAgIC8vIHRoZSBwb3BvdmVyIHdhcyBzaG93bi4gSW4gdGhpcyBjYXNlLCB0aGlzLmFuY2hvci5wb3BvdmVyLmNsb3NlKCkgd291bGQgbm90IGdlbmVyYXRlIGEgY2xvc2VkIGV2ZW50LFxuICAgICAgICAgIC8vIHdoaWNoIGlzIHdoeSB3ZSBnZW5lcmF0ZSBpdCBtYW51YWxseSBoZXJlLiBUaGlzIGJlaGF2aW9yIHN1cHBvcnRzIGNhc2VzIHdoZXJlIGEgXCJkdW1teVwiIGFuY2hvciBpc1xuICAgICAgICAgIC8vIGR5bmFtaWNhbGx5IGNyZWF0ZWQsIGxpa2UgdGhlIEZhY3QgU2hlZXQgZGV0YWlsIHBvcG92ZXIgaW4gUmVwb3J0aW5nIG9yIHRoZSByZWxhdGlvbnMgZGlhZ3JhbS5cbiAgICAgICAgICB0aGlzLmFuY2hvci5wb3BvdmVyLmNsb3NlZC5lbWl0KCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlZW50ZXInKVxuICBzaG93UG9wb3Zlcihza2lwRGVsYXkgPSBmYWxzZSkge1xuICAgIHRoaXMub25Nb3VzZUVudGVyLm5leHQoeyBza2lwRGVsYXkgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgY2xvc2VQb3BvdmVyKHNraXBEZWxheSA9IHRoaXMuc2tpcENsb3NlRGVsYXkpIHtcbiAgICB0aGlzLm9uTW91c2VMZWF2ZS5uZXh0KHsgc2tpcERlbGF5IH0pO1xuICB9XG59XG4iXX0=
|
@@ -1,21 +0,0 @@
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
2
|
-
import { NgModule } from '@angular/core';
|
3
|
-
import { SatPopoverModule } from '@ncstate/sat-popover';
|
4
|
-
import { PopoverComponent } from './components/popover/popover.component';
|
5
|
-
import { PopoverClickDirective } from './directives/popover-click.directive';
|
6
|
-
import { PopoverContentDirective } from './directives/popover-content.directive';
|
7
|
-
import { PopoverHoverDirective } from './directives/popover-hover.directive';
|
8
|
-
import * as i0 from "@angular/core";
|
9
|
-
export class LxPopoverUiModule {
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LxPopoverUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
11
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.8", ngImport: i0, type: LxPopoverUiModule, imports: [CommonModule, SatPopoverModule, PopoverHoverDirective, PopoverClickDirective, PopoverComponent, PopoverContentDirective], exports: [SatPopoverModule, PopoverClickDirective, PopoverHoverDirective, PopoverComponent, PopoverContentDirective] }); }
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LxPopoverUiModule, imports: [CommonModule, SatPopoverModule, PopoverComponent, SatPopoverModule] }); }
|
13
|
-
}
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: LxPopoverUiModule, decorators: [{
|
15
|
-
type: NgModule,
|
16
|
-
args: [{
|
17
|
-
imports: [CommonModule, SatPopoverModule, PopoverHoverDirective, PopoverClickDirective, PopoverComponent, PopoverContentDirective],
|
18
|
-
exports: [SatPopoverModule, PopoverClickDirective, PopoverHoverDirective, PopoverComponent, PopoverContentDirective]
|
19
|
-
}]
|
20
|
-
}] });
|
21
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci11aS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvc3JjL2xpYi9wb3BvdmVyLXVpL3BvcG92ZXItdWkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOztBQU03RSxNQUFNLE9BQU8saUJBQWlCOzhHQUFqQixpQkFBaUI7K0dBQWpCLGlCQUFpQixZQUhsQixZQUFZLEVBQUUsZ0JBQWdCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsdUJBQXVCLGFBQ3ZILGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLGdCQUFnQixFQUFFLHVCQUF1QjsrR0FFeEcsaUJBQWlCLFlBSGxCLFlBQVksRUFBRSxnQkFBZ0IsRUFBZ0QsZ0JBQWdCLEVBQzlGLGdCQUFnQjs7MkZBRWYsaUJBQWlCO2tCQUo3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSx1QkFBdUIsQ0FBQztvQkFDbEksT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEVBQUUscUJBQXFCLEVBQUUscUJBQXFCLEVBQUUsZ0JBQWdCLEVBQUUsdUJBQXVCLENBQUM7aUJBQ3JIIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTYXRQb3BvdmVyTW9kdWxlIH0gZnJvbSAnQG5jc3RhdGUvc2F0LXBvcG92ZXInO1xuaW1wb3J0IHsgUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBvcG92ZXJDbGlja0RpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9wb3BvdmVyLWNsaWNrLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBQb3BvdmVyQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9wb3BvdmVyLWNvbnRlbnQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFBvcG92ZXJIb3ZlckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9wb3BvdmVyLWhvdmVyLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNhdFBvcG92ZXJNb2R1bGUsIFBvcG92ZXJIb3ZlckRpcmVjdGl2ZSwgUG9wb3ZlckNsaWNrRGlyZWN0aXZlLCBQb3BvdmVyQ29tcG9uZW50LCBQb3BvdmVyQ29udGVudERpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtTYXRQb3BvdmVyTW9kdWxlLCBQb3BvdmVyQ2xpY2tEaXJlY3RpdmUsIFBvcG92ZXJIb3ZlckRpcmVjdGl2ZSwgUG9wb3ZlckNvbXBvbmVudCwgUG9wb3ZlckNvbnRlbnREaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIEx4UG9wb3ZlclVpTW9kdWxlIHt9XG4iXX0=
|
@@ -1,35 +0,0 @@
|
|
1
|
-
import { isNaN as _isNaN, toString as _toString, padCharsStart, toNumber } from 'lodash/fp';
|
2
|
-
/**
|
3
|
-
* Converts a date into a string with format YYYY-MM-dd for the
|
4
|
-
* users current timezone.
|
5
|
-
*/
|
6
|
-
export function convertDateToLocaleDateString(date, separator = '-') {
|
7
|
-
const day = pad(date.getDate());
|
8
|
-
const currentMonth = date.getMonth() + 1;
|
9
|
-
const month = pad(currentMonth);
|
10
|
-
return `${date.getFullYear()}${separator}${month}${separator}${day}`;
|
11
|
-
}
|
12
|
-
// Pad to 2 digits
|
13
|
-
function pad(num) {
|
14
|
-
return padCharsStart('0', 2, _toString(num));
|
15
|
-
}
|
16
|
-
/**
|
17
|
-
* Use this whenever you want to create a Date instance from a dateString like "2017-12-06".
|
18
|
-
* Reason: When you call the Date Constructor like this `new Date("2017-12-06")`
|
19
|
-
* the date instance will be in the users current timezone (eg in EST GMT-0500 it will become "2017-12-05 19:00:00"),
|
20
|
-
* but at some places we handle the date only as date without time (e.g. date.getDate()) and there
|
21
|
-
* we would then get timezone issues, because `date.getDate()` returns day 5 instead of 6!
|
22
|
-
*
|
23
|
-
* So instead of doing `new Date("2017-12-06")` you should use this function instead!
|
24
|
-
*/
|
25
|
-
export function createDateFromDateString(dateString) {
|
26
|
-
if (!dateString || !isValidDateString(dateString)) {
|
27
|
-
return null;
|
28
|
-
}
|
29
|
-
const parts = dateString.split('-').map(toNumber);
|
30
|
-
return new Date(parts[0], parts[1] - 1, parts[2]);
|
31
|
-
}
|
32
|
-
export function isValidDateString(dateString) {
|
33
|
-
return dateString !== null && /^\d\d\d\d-\d\d-\d\d$/.test(dateString) && !_isNaN(Date.parse(dateString));
|
34
|
-
}
|
35
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2RhdGUtaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxJQUFJLE1BQU0sRUFBRSxRQUFRLElBQUksU0FBUyxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFNUY7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLDZCQUE2QixDQUFDLElBQVUsRUFBRSxZQUFvQixHQUFHO0lBQy9FLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUNoQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3pDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUVoQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxHQUFHLFNBQVMsR0FBRyxLQUFLLEdBQUcsU0FBUyxHQUFHLEdBQUcsRUFBRSxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxrQkFBa0I7QUFDbEIsU0FBUyxHQUFHLENBQUMsR0FBVztJQUN0QixPQUFPLGFBQWEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQy9DLENBQUM7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxVQUF5QjtJQUNoRSxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUNsRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNsRCxPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFFLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUUsQ0FBQyxDQUFDO0FBQ3ZELENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsVUFBeUI7SUFDekQsT0FBTyxVQUFVLEtBQUssSUFBSSxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7QUFDM0csQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzTmFOIGFzIF9pc05hTiwgdG9TdHJpbmcgYXMgX3RvU3RyaW5nLCBwYWRDaGFyc1N0YXJ0LCB0b051bWJlciB9IGZyb20gJ2xvZGFzaC9mcCc7XG5cbi8qKlxuICogQ29udmVydHMgYSBkYXRlIGludG8gYSBzdHJpbmcgd2l0aCBmb3JtYXQgWVlZWS1NTS1kZCBmb3IgdGhlXG4gKiB1c2VycyBjdXJyZW50IHRpbWV6b25lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY29udmVydERhdGVUb0xvY2FsZURhdGVTdHJpbmcoZGF0ZTogRGF0ZSwgc2VwYXJhdG9yOiBzdHJpbmcgPSAnLScpOiBzdHJpbmcge1xuICBjb25zdCBkYXkgPSBwYWQoZGF0ZS5nZXREYXRlKCkpO1xuICBjb25zdCBjdXJyZW50TW9udGggPSBkYXRlLmdldE1vbnRoKCkgKyAxO1xuICBjb25zdCBtb250aCA9IHBhZChjdXJyZW50TW9udGgpO1xuXG4gIHJldHVybiBgJHtkYXRlLmdldEZ1bGxZZWFyKCl9JHtzZXBhcmF0b3J9JHttb250aH0ke3NlcGFyYXRvcn0ke2RheX1gO1xufVxuXG4vLyBQYWQgdG8gMiBkaWdpdHNcbmZ1bmN0aW9uIHBhZChudW06IG51bWJlcik6IHN0cmluZyB7XG4gIHJldHVybiBwYWRDaGFyc1N0YXJ0KCcwJywgMiwgX3RvU3RyaW5nKG51bSkpO1xufVxuXG4vKipcbiAqIFVzZSB0aGlzIHdoZW5ldmVyIHlvdSB3YW50IHRvIGNyZWF0ZSBhIERhdGUgaW5zdGFuY2UgZnJvbSBhIGRhdGVTdHJpbmcgbGlrZSBcIjIwMTctMTItMDZcIi5cbiAqIFJlYXNvbjogV2hlbiB5b3UgY2FsbCB0aGUgRGF0ZSBDb25zdHJ1Y3RvciBsaWtlIHRoaXMgYG5ldyBEYXRlKFwiMjAxNy0xMi0wNlwiKWBcbiAqIHRoZSBkYXRlIGluc3RhbmNlIHdpbGwgYmUgaW4gdGhlIHVzZXJzIGN1cnJlbnQgdGltZXpvbmUgKGVnIGluIEVTVCBHTVQtMDUwMCBpdCB3aWxsIGJlY29tZSBcIjIwMTctMTItMDUgMTk6MDA6MDBcIiksXG4gKiBidXQgYXQgc29tZSBwbGFjZXMgd2UgaGFuZGxlIHRoZSBkYXRlIG9ubHkgYXMgZGF0ZSB3aXRob3V0IHRpbWUgKGUuZy4gZGF0ZS5nZXREYXRlKCkpIGFuZCB0aGVyZVxuICogd2Ugd291bGQgdGhlbiBnZXQgdGltZXpvbmUgaXNzdWVzLCBiZWNhdXNlIGBkYXRlLmdldERhdGUoKWAgcmV0dXJucyBkYXkgNSBpbnN0ZWFkIG9mIDYhXG4gKlxuICogU28gaW5zdGVhZCBvZiBkb2luZyBgbmV3IERhdGUoXCIyMDE3LTEyLTA2XCIpYCB5b3Ugc2hvdWxkIHVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQhXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEYXRlRnJvbURhdGVTdHJpbmcoZGF0ZVN0cmluZzogc3RyaW5nIHwgbnVsbCk6IERhdGUgfCBudWxsIHtcbiAgaWYgKCFkYXRlU3RyaW5nIHx8ICFpc1ZhbGlkRGF0ZVN0cmluZyhkYXRlU3RyaW5nKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG4gIGNvbnN0IHBhcnRzID0gZGF0ZVN0cmluZy5zcGxpdCgnLScpLm1hcCh0b051bWJlcik7XG4gIHJldHVybiBuZXcgRGF0ZShwYXJ0c1swXSEsIHBhcnRzWzFdISAtIDEsIHBhcnRzWzJdISk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1ZhbGlkRGF0ZVN0cmluZyhkYXRlU3RyaW5nOiBzdHJpbmcgfCBudWxsKTogYm9vbGVhbiB7XG4gIHJldHVybiBkYXRlU3RyaW5nICE9PSBudWxsICYmIC9eXFxkXFxkXFxkXFxkLVxcZFxcZC1cXGRcXGQkLy50ZXN0KGRhdGVTdHJpbmcpICYmICFfaXNOYU4oRGF0ZS5wYXJzZShkYXRlU3RyaW5nKSk7XG59XG4iXX0=
|
@@ -1,34 +0,0 @@
|
|
1
|
-
// /**
|
2
|
-
// * Converts HTML to text, preserving semantic newlines for block-level
|
3
|
-
// * elements. (Taken from https://stackoverflow.com/a/20384452/6813271)
|
4
|
-
// *
|
5
|
-
// * @param node - The HTML node to perform text extraction.
|
6
|
-
// */
|
7
|
-
// export function getNodeTextWithNewlines(node: Element, _inner = false): string {
|
8
|
-
// let result = '';
|
9
|
-
// if (node.nodeType === document.TEXT_NODE) {
|
10
|
-
// // Replace repeated spaces, newlines, and tabs with a single space.
|
11
|
-
// result = node.nodeValue.replace( /\s+/g, ' ' );
|
12
|
-
// } else {
|
13
|
-
// for (let i = 0, j = node.childNodes.length; i < j; i++ ) {
|
14
|
-
// result += this.getNodeTextWithNewlines(node.childNodes[i] as Element, true);
|
15
|
-
// }
|
16
|
-
// const d = node['currentStyle'] ?
|
17
|
-
// node['currentStyle']['display'] :
|
18
|
-
// document.defaultView.getComputedStyle(node, null).getPropertyValue('display');
|
19
|
-
// if (d.match(/^block/)) {
|
20
|
-
// result = '\n' + result + '\n';
|
21
|
-
// } else if (d.match(/list/) || d.match(/row/) || node.tagName === 'BR' || node.tagName === 'HR' ) {
|
22
|
-
// result += '\n';
|
23
|
-
// }
|
24
|
-
// }
|
25
|
-
// return _inner ? result : _.trim(result, '\n');
|
26
|
-
// }
|
27
|
-
/** Trim whitespaces from html */
|
28
|
-
export function trimHtml(str) {
|
29
|
-
return str
|
30
|
-
.replace(/(<\/?(br *\/?|p)>| |\s)*$/i, '')
|
31
|
-
.replace(/^(<\/?(br *\/?|p)>| |\s)*/i, '')
|
32
|
-
.replace(/^<(div|p)>(<\/?(br *\/?|p)>| |\s)*<\/ *(div|p)>$/i, '');
|
33
|
-
}
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1oZWxwZXJzLmZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL2h0bWwtaGVscGVycy5mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNO0FBQ04sd0VBQXdFO0FBQ3hFLHdFQUF3RTtBQUN4RSxJQUFJO0FBQ0osNERBQTREO0FBQzVELEtBQUs7QUFDTCxtRkFBbUY7QUFDbkYscUJBQXFCO0FBRXJCLGdEQUFnRDtBQUNoRCwwRUFBMEU7QUFDMUUsc0RBQXNEO0FBQ3RELGFBQWE7QUFDYixpRUFBaUU7QUFDakUscUZBQXFGO0FBQ3JGLFFBQVE7QUFDUix1Q0FBdUM7QUFDdkMsa0RBQWtEO0FBQ2xELCtGQUErRjtBQUMvRiwrQkFBK0I7QUFDL0IsdUNBQXVDO0FBQ3ZDLHlHQUF5RztBQUN6Ryx3QkFBd0I7QUFDeEIsUUFBUTtBQUNSLE1BQU07QUFFTixtREFBbUQ7QUFDbkQsSUFBSTtBQUVKLGlDQUFpQztBQUNqQyxNQUFNLFVBQVUsUUFBUSxDQUFDLEdBQVc7SUFDbEMsT0FBTyxHQUFHO1NBQ1AsT0FBTyxDQUFDLGlDQUFpQyxFQUFFLEVBQUUsQ0FBQztTQUM5QyxPQUFPLENBQUMsaUNBQWlDLEVBQUUsRUFBRSxDQUFDO1NBQzlDLE9BQU8sQ0FBQyx3REFBd0QsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUMzRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gLyoqXG4vLyAqIENvbnZlcnRzIEhUTUwgdG8gdGV4dCwgcHJlc2VydmluZyBzZW1hbnRpYyBuZXdsaW5lcyBmb3IgYmxvY2stbGV2ZWxcbi8vICogZWxlbWVudHMuIChUYWtlbiBmcm9tIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS8yMDM4NDQ1Mi82ODEzMjcxKVxuLy8gKlxuLy8gKiBAcGFyYW0gbm9kZSAtIFRoZSBIVE1MIG5vZGUgdG8gcGVyZm9ybSB0ZXh0IGV4dHJhY3Rpb24uXG4vLyAqL1xuLy8gZXhwb3J0IGZ1bmN0aW9uIGdldE5vZGVUZXh0V2l0aE5ld2xpbmVzKG5vZGU6IEVsZW1lbnQsIF9pbm5lciA9IGZhbHNlKTogc3RyaW5nIHtcbi8vICAgbGV0IHJlc3VsdCA9ICcnO1xuXG4vLyAgIGlmIChub2RlLm5vZGVUeXBlID09PSBkb2N1bWVudC5URVhUX05PREUpIHtcbi8vICAgICAvLyBSZXBsYWNlIHJlcGVhdGVkIHNwYWNlcywgbmV3bGluZXMsIGFuZCB0YWJzIHdpdGggYSBzaW5nbGUgc3BhY2UuXG4vLyAgICAgcmVzdWx0ID0gbm9kZS5ub2RlVmFsdWUucmVwbGFjZSggL1xccysvZywgJyAnICk7XG4vLyAgIH0gZWxzZSB7XG4vLyAgICAgZm9yIChsZXQgaSA9IDAsIGogPSBub2RlLmNoaWxkTm9kZXMubGVuZ3RoOyBpIDwgajsgaSsrICkge1xuLy8gICAgICAgcmVzdWx0ICs9IHRoaXMuZ2V0Tm9kZVRleHRXaXRoTmV3bGluZXMobm9kZS5jaGlsZE5vZGVzW2ldIGFzIEVsZW1lbnQsIHRydWUpO1xuLy8gICAgIH1cbi8vICAgICBjb25zdCBkID0gbm9kZVsnY3VycmVudFN0eWxlJ10gP1xuLy8gICAgICAgICAgICAgICBub2RlWydjdXJyZW50U3R5bGUnXVsnZGlzcGxheSddIDpcbi8vICAgICAgICAgICAgICAgZG9jdW1lbnQuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShub2RlLCBudWxsKS5nZXRQcm9wZXJ0eVZhbHVlKCdkaXNwbGF5Jyk7XG4vLyAgICAgaWYgKGQubWF0Y2goL15ibG9jay8pKSB7XG4vLyAgICAgICByZXN1bHQgPSAnXFxuJyArIHJlc3VsdCArICdcXG4nO1xuLy8gICAgIH0gZWxzZSBpZiAoZC5tYXRjaCgvbGlzdC8pIHx8IGQubWF0Y2goL3Jvdy8pIHx8IG5vZGUudGFnTmFtZSA9PT0gJ0JSJyB8fCBub2RlLnRhZ05hbWUgPT09ICdIUicgKSB7XG4vLyAgICAgICByZXN1bHQgKz0gJ1xcbic7XG4vLyAgICAgfVxuLy8gICB9XG5cbi8vICAgcmV0dXJuIF9pbm5lciA/IHJlc3VsdCA6IF8udHJpbShyZXN1bHQsICdcXG4nKTtcbi8vIH1cblxuLyoqIFRyaW0gd2hpdGVzcGFjZXMgZnJvbSBodG1sICovXG5leHBvcnQgZnVuY3Rpb24gdHJpbUh0bWwoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3RyXG4gICAgLnJlcGxhY2UoLyg8XFwvPyhiciAqXFwvP3xwKT58Jm5ic3A7fFxccykqJC9pLCAnJylcbiAgICAucmVwbGFjZSgvXig8XFwvPyhiciAqXFwvP3xwKT58Jm5ic3A7fFxccykqL2ksICcnKVxuICAgIC5yZXBsYWNlKC9ePChkaXZ8cCk+KDxcXC8/KGJyICpcXC8/fHApPnwmbmJzcDt8XFxzKSo8XFwvICooZGl2fHApPiQvaSwgJycpO1xufVxuIl19
|
@@ -1,24 +0,0 @@
|
|
1
|
-
/**
|
2
|
-
* Schedule and wait for another ZoneJS microTask.
|
3
|
-
* This should be preferred over setTimeout(), which
|
4
|
-
* schedules a macroTask & thus triggers full tree change detection.
|
5
|
-
*/
|
6
|
-
export function executeOnNextTick(fn) {
|
7
|
-
Promise.resolve(null).then(() => fn());
|
8
|
-
}
|
9
|
-
export function getCssVariable(cssVariableName) {
|
10
|
-
return getComputedStyle(document.documentElement).getPropertyValue(cssVariableName);
|
11
|
-
}
|
12
|
-
export function scrollTop(container, item) {
|
13
|
-
if (container && item) {
|
14
|
-
const scrollDownNeeded = item.offsetTop + item.clientHeight > container.clientHeight;
|
15
|
-
const scrollTopNeeded = item.offsetTop - item.clientHeight < container.scrollTop;
|
16
|
-
if (scrollDownNeeded || scrollTopNeeded) {
|
17
|
-
container.scrollTop = item.offsetTop - container.offsetTop;
|
18
|
-
}
|
19
|
-
}
|
20
|
-
else {
|
21
|
-
console.warn("Item or Container undefined, scrolling wasn't done.");
|
22
|
-
}
|
23
|
-
}
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlzYy1oZWxwZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL21pc2MtaGVscGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEVBQVk7SUFDNUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxlQUF1QjtJQUNwRCxPQUFPLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUN0RixDQUFDO0FBRUQsTUFBTSxVQUFVLFNBQVMsQ0FBQyxTQUFzQixFQUFFLElBQWlCO0lBQ2pFLElBQUksU0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3RCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUM7UUFDckYsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUM7UUFDakYsSUFBSSxnQkFBZ0IsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUN4QyxTQUFTLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLFNBQVMsQ0FBQztRQUM3RCxDQUFDO0lBQ0gsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLENBQUMsSUFBSSxDQUFDLHFEQUFxRCxDQUFDLENBQUM7SUFDdEUsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFNjaGVkdWxlIGFuZCB3YWl0IGZvciBhbm90aGVyIFpvbmVKUyBtaWNyb1Rhc2suXG4gKiBUaGlzIHNob3VsZCBiZSBwcmVmZXJyZWQgb3ZlciBzZXRUaW1lb3V0KCksIHdoaWNoXG4gKiBzY2hlZHVsZXMgYSBtYWNyb1Rhc2sgJiB0aHVzIHRyaWdnZXJzIGZ1bGwgdHJlZSBjaGFuZ2UgZGV0ZWN0aW9uLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZXhlY3V0ZU9uTmV4dFRpY2soZm46IEZ1bmN0aW9uKSB7XG4gIFByb21pc2UucmVzb2x2ZShudWxsKS50aGVuKCgpID0+IGZuKCkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q3NzVmFyaWFibGUoY3NzVmFyaWFibGVOYW1lOiBzdHJpbmcpIHtcbiAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50KS5nZXRQcm9wZXJ0eVZhbHVlKGNzc1ZhcmlhYmxlTmFtZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzY3JvbGxUb3AoY29udGFpbmVyOiBIVE1MRWxlbWVudCwgaXRlbTogSFRNTEVsZW1lbnQpIHtcbiAgaWYgKGNvbnRhaW5lciAmJiBpdGVtKSB7XG4gICAgY29uc3Qgc2Nyb2xsRG93bk5lZWRlZCA9IGl0ZW0ub2Zmc2V0VG9wICsgaXRlbS5jbGllbnRIZWlnaHQgPiBjb250YWluZXIuY2xpZW50SGVpZ2h0O1xuICAgIGNvbnN0IHNjcm9sbFRvcE5lZWRlZCA9IGl0ZW0ub2Zmc2V0VG9wIC0gaXRlbS5jbGllbnRIZWlnaHQgPCBjb250YWluZXIuc2Nyb2xsVG9wO1xuICAgIGlmIChzY3JvbGxEb3duTmVlZGVkIHx8IHNjcm9sbFRvcE5lZWRlZCkge1xuICAgICAgY29udGFpbmVyLnNjcm9sbFRvcCA9IGl0ZW0ub2Zmc2V0VG9wIC0gY29udGFpbmVyLm9mZnNldFRvcDtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgY29uc29sZS53YXJuKFwiSXRlbSBvciBDb250YWluZXIgdW5kZWZpbmVkLCBzY3JvbGxpbmcgd2Fzbid0IGRvbmUuXCIpO1xuICB9XG59XG4iXX0=
|