@datarailsshared/datarailsshared 1.3.36 → 1.3.37
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/bundles/datarailsshared-datarailsshared.umd.js +21 -2
- package/bundles/datarailsshared-datarailsshared.umd.js.map +1 -1
- package/datarailsshared-datarailsshared-1.3.37.tgz +0 -0
- package/datarailsshared-datarailsshared.metadata.json +1 -1
- package/esm2015/lib/dr-dropdown/dr-dropdown.component.js +7 -2
- package/esm2015/lib/dr-dropdown/dr-dropdown.directive.js +16 -2
- package/esm2015/lib/models/dropdown.js +1 -1
- package/fesm2015/datarailsshared-datarailsshared.js +21 -2
- package/fesm2015/datarailsshared-datarailsshared.js.map +1 -1
- package/lib/dr-dropdown/dr-dropdown.component.d.ts +2 -0
- package/lib/dr-dropdown/dr-dropdown.directive.d.ts +4 -0
- package/lib/models/dropdown.d.ts +1 -0
- package/package.json +1 -1
- package/datarailsshared-datarailsshared-1.3.36.tgz +0 -0
|
@@ -10,6 +10,7 @@ export class DrDropdownComponent {
|
|
|
10
10
|
if (data) {
|
|
11
11
|
this.option = data.option;
|
|
12
12
|
this.position = data.position;
|
|
13
|
+
this.drDropdownInHover = data.drDropdownInHover;
|
|
13
14
|
this.containerClass = data.class;
|
|
14
15
|
this.list = data.list || [];
|
|
15
16
|
this.list.forEach(item => {
|
|
@@ -25,6 +26,10 @@ export class DrDropdownComponent {
|
|
|
25
26
|
this.cdr.markForCheck();
|
|
26
27
|
}
|
|
27
28
|
}
|
|
29
|
+
onMouseLeave() {
|
|
30
|
+
if (this.drDropdownInHover)
|
|
31
|
+
this.menuService.destroy();
|
|
32
|
+
}
|
|
28
33
|
onClickedOutside() {
|
|
29
34
|
if (this.firstInit) {
|
|
30
35
|
this.menuService.destroy();
|
|
@@ -88,7 +93,7 @@ export class DrDropdownComponent {
|
|
|
88
93
|
DrDropdownComponent.decorators = [
|
|
89
94
|
{ type: Component, args: [{
|
|
90
95
|
selector: 'dr-dropdown',
|
|
91
|
-
template: "<div #menuContainer\r\n (clickOutside)=\"onClickedOutside()\"\r\n [drDropdownPosition]=\"option\"\r\n #dropdownPosition=\"dropdownPosition\"\r\n [position]=\"position\"\r\n [class]=\"containerClass\"\r\n class=\"dr-dropdown\">\r\n <div class=\"dr-dropdown__container\">\r\n <div *ngFor=\"let act of list | drDropdownItemShowPipe\"\r\n (click)=\"action(act)\"\r\n [drTooltip]=\"tooltipToShow(act)\"\r\n [drTooltipPosition]=\"tooltipPosition(dropdownPosition.widthMoreRight)\"\r\n [drTooltipOptions]=\"{ withoutArrow: true }\"\r\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\r\n class=\"dr-dropdown__container__item\"\r\n [class.item-disabled]=\"disabled(act)\"\r\n [class.item-selected]=\"selected(act)\">\r\n <i *ngIf=\"act.icon\" [class]=\"act.icon\"></i>\r\n <span class=\"dr-dropdown__container__item__text\">{{act.title}}</span>\r\n <i *ngFor=\"let actionIcon of act.actionIcons\"\r\n [class]=\"actionIcon.icon\"\r\n [class.showOnHover]=\"actionIcon.showOnHover\"\r\n (click)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\r\n <i *ngIf=\"act.children?.length\" class=\"dr-icon-arrow-right\"></i>\r\n <dr-dropdown *ngIf=\"act.children?.length\" [options]=\"act.childOptions\"></dr-dropdown>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
96
|
+
template: "<div #menuContainer\r\n (mouseleave)=\"onMouseLeave()\"\r\n (clickOutside)=\"onClickedOutside()\"\r\n [drDropdownPosition]=\"option\"\r\n #dropdownPosition=\"dropdownPosition\"\r\n [position]=\"position\"\r\n [class]=\"containerClass\"\r\n class=\"dr-dropdown\">\r\n <div class=\"dr-dropdown__container\">\r\n <div *ngFor=\"let act of list | drDropdownItemShowPipe\"\r\n (click)=\"action(act)\"\r\n [drTooltip]=\"tooltipToShow(act)\"\r\n [drTooltipPosition]=\"tooltipPosition(dropdownPosition.widthMoreRight)\"\r\n [drTooltipOptions]=\"{ withoutArrow: true }\"\r\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\r\n class=\"dr-dropdown__container__item\"\r\n [class.item-disabled]=\"disabled(act)\"\r\n [class.item-selected]=\"selected(act)\">\r\n <i *ngIf=\"act.icon\" [class]=\"act.icon\"></i>\r\n <span class=\"dr-dropdown__container__item__text\">{{act.title}}</span>\r\n <i *ngFor=\"let actionIcon of act.actionIcons\"\r\n [class]=\"actionIcon.icon\"\r\n [class.showOnHover]=\"actionIcon.showOnHover\"\r\n (click)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\r\n <i *ngIf=\"act.children?.length\" class=\"dr-icon-arrow-right\"></i>\r\n <dr-dropdown *ngIf=\"act.children?.length\" [options]=\"act.childOptions\"></dr-dropdown>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
92
97
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
93
98
|
styles: ["::ng-deep .dr-dropdown__container__item .dr-dropdown{visibility:hidden}::ng-deep .dr-dropdown__container__item:hover .dr-dropdown{visibility:visible}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{position:absolute;z-index:-1;top:0;left:0;width:auto}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;border-radius:4px;box-shadow:0 4px 8px 1px #00000040;padding:8px 0;overflow-y:auto;max-height:60vh}.dr-dropdown__container__item{display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}.dr-dropdown__container__item:hover{background-color:#f6f7f8}.dr-dropdown__container__item:hover .showOnHover{visibility:visible}.dr-dropdown__container__item.item-selected{background:#F3F7FF}.dr-dropdown__container__item.item-disabled,.dr-dropdown__container__item.item-disabled i,.dr-dropdown__container__item.item-disabled .dr-dropdown__container__item__text{color:#bcbcbc}.dr-dropdown__container__item i:first-child{margin-right:8px}.dr-dropdown__container__item__text{margin-right:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dr-dropdown__container__item i,.dr-dropdown__container__item__text{color:#151b3f}.dr-dropdown__container__item .showOnHover{visibility:hidden}.dr-dropdown.content-top{transform:translate(-50%,-100%)}.dr-dropdown.content-top-left{transform:translate(-100%,-100%)}.dr-dropdown.content-bottom{transform:translate(-50%,50%)}.dr-dropdown.content-bottom-left{transform:translate(-90%,35%)}.dr-dropdown.content-bottom-right{transform:translateY(45%)}.dr-dropdown.content-left{transform:translate(-100%)}.dr-dropdown.content-left-center{transform:translate(-100%,-50%)}.dr-dropdown.content-right{transform:translate(5%)}\n"]
|
|
94
99
|
},] }
|
|
@@ -102,4 +107,4 @@ DrDropdownComponent.propDecorators = {
|
|
|
102
107
|
menuContainer: [{ type: ViewChild, args: ['menuContainer',] }],
|
|
103
108
|
options: [{ type: Input }]
|
|
104
109
|
};
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVExRCxNQUFNLE9BQU8sbUJBQW1CO0lBVzlCLFlBQXNCLFdBQThCLEVBQVUsR0FBc0I7UUFBOUQsZ0JBQVcsR0FBWCxXQUFXLENBQW1CO1FBQVUsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFOcEYsYUFBUSxHQUFxQyxNQUFNLENBQUM7SUFPcEQsQ0FBQztJQUVELElBQWEsT0FBTyxDQUFDLElBQW1DO1FBQ3RELElBQUksSUFBSSxFQUFFO1lBQ1IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUM5QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQ2hELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFOztnQkFDdkIsSUFBSSxNQUFBLElBQUksQ0FBQyxRQUFRLDBDQUFFLE1BQU0sRUFBRTtvQkFDekIsSUFBSSxDQUFDLFlBQVksR0FBRzt3QkFDbEIsSUFBSSxFQUFFLElBQUksQ0FB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SCxDQUFDOzs7WUF4R0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxhQUFhO2dCQUN2Qix3L0NBQTJDO2dCQUUzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQVBRLGlCQUFpQjtZQUZRLGlCQUFpQjs7O3VCQVloRCxTQUFTLFNBQUMsVUFBVTs0QkFDcEIsU0FBUyxTQUFDLGVBQWU7c0JBV3pCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJRHJvcGRvd25JdGVtLCBFbFBvc2l0aW9uLCBJRHJvcGRvd25BY3Rpb25JY29uLCBJRHJvcGRvd24sIElEcm9wZG93bkNvb3JkaW5hdGUgfSBmcm9tICcuLi9tb2RlbHMvZHJvcGRvd24nO1xyXG5pbXBvcnQgeyBEckRyb3Bkb3duU2VydmljZSB9IGZyb20gJy4vZHItZHJvcGRvd24uc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2RyLWRyb3Bkb3duJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZHItZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2RyLWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIERyRHJvcGRvd25Db21wb25lbnQge1xyXG5cclxuICBAVmlld0NoaWxkKCdsaXN0TWVudScpIHZpZXdNZW51OiBIVE1MRWxlbWVudDtcclxuICBAVmlld0NoaWxkKCdtZW51Q29udGFpbmVyJykgbWVudUNvbnRhaW5lcjogSFRNTEVsZW1lbnQ7XHJcbiAgb3B0aW9uOiBhbnk7XHJcbiAgcG9zaXRpb246IEVsUG9zaXRpb24gfCBJRHJvcGRvd25Db29yZGluYXRlID0gJ2xlZnQnO1xyXG4gIGRyRHJvcGRvd25JbkhvdmVyOiBib29sZWFuO1xyXG4gIGxpc3Q6IElEcm9wZG93bkl0ZW08dW5rbm93bj5bXTtcclxuICBjb250YWluZXJDbGFzczogc3RyaW5nO1xyXG4gIHByaXZhdGUgZmlyc3RJbml0OiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgbWVudVNlcnZpY2U6IERyRHJvcGRvd25TZXJ2aWNlLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHNldCBvcHRpb25zKGRhdGE6IElEcm9wZG93bjxJRHJvcGRvd25JdGVtPGFueT4+KSB7XHJcbiAgICBpZiAoZGF0YSkge1xyXG4gICAgICB0aGlzLm9wdGlvbiA9IGRhdGEub3B0aW9uO1xyXG4gICAgICB0aGlzLnBvc2l0aW9uID0gZGF0YS5wb3NpdGlvbjtcclxuICAgICAgdGhpcy5kckRyb3Bkb3duSW5Ib3ZlciA9IGRhdGEuZHJEcm9wZG93bkluSG92ZXI7XHJcbiAgICAgIHRoaXMuY29udGFpbmVyQ2xhc3MgPSBkYXRhLmNsYXNzO1xyXG4gICAgICB0aGlzLmxpc3QgPSBkYXRhLmxpc3QgfHwgW107XHJcbiAgICAgIHRoaXMubGlzdC5mb3JFYWNoKGl0ZW0gPT4ge1xyXG4gICAgICAgIGlmIChpdGVtLmNoaWxkcmVuPy5sZW5ndGgpIHtcclxuICAgICAgICAgIGl0ZW0uY2hpbGRPcHRpb25zID0ge1xyXG4gICAgICAgICAgICBsaXN0OiBpdGVtLmNoaWxkcmVuLFxyXG4gICAgICAgICAgICBjbGFzczogaXRlbT8uY2hpbGRPcHRpb25zPy5jbGFzcyB8fCAnJyxcclxuICAgICAgICAgICAgcG9zaXRpb246ICdjaGlsZCdcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbk1vdXNlTGVhdmUoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kckRyb3Bkb3duSW5Ib3ZlcikgdGhpcy5tZW51U2VydmljZS5kZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICBvbkNsaWNrZWRPdXRzaWRlKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZmlyc3RJbml0KSB7XHJcbiAgICAgIHRoaXMubWVudVNlcnZpY2UuZGVzdHJveSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5maXJzdEluaXQgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaGlkZSgpOiB2b2lkIHtcclxuICAgIHRoaXMubWVudVNlcnZpY2UuZGVzdHJveSgpO1xyXG4gIH1cclxuXHJcbiAgZGlzYWJsZWQoYWN0OiBJRHJvcGRvd25JdGVtPHVua25vd24+IHwgSURyb3Bkb3duQWN0aW9uSWNvbjxhbnk+KTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIWFjdC5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIGFjdC5kaXNhYmxlZCA9PT0gJ2Jvb2xlYW4nKSB7XHJcbiAgICAgIHJldHVybiBhY3QuZGlzYWJsZWQ7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gYWN0LmRpc2FibGVkKGFjdC5kYXRhKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlbGVjdGVkKGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCFhY3Quc2VsZWN0ZWQpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiBhY3Quc2VsZWN0ZWQgPT09ICdib29sZWFuJykge1xyXG4gICAgICByZXR1cm4gYWN0LnNlbGVjdGVkO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGFjdC5zZWxlY3RlZChhY3QuZGF0YSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0b29sdGlwVG9TaG93KGFjdDogSURyb3Bkb3duSXRlbTx1bmtub3duPik6IHN0cmluZyB7XHJcbiAgICBpZiAoYWN0LnRvb2xUaXBJZkRpc2FibGVkICYmICF0aGlzLmRpc2FibGVkKGFjdCkpIHJldHVybiAnJztcclxuICAgIHJldHVybiBhY3QudG9vbFRpcDtcclxuICB9XHJcblxyXG4gIHRvb2x0aXBQb3NpdGlvbih3aWR0aE1vcmVSaWdodDogYm9vbGVhbikge1xyXG4gICAgcmV0dXJuIHdpZHRoTW9yZVJpZ2h0ID8gJ3JpZ2h0JyA6ICdsZWZ0JztcclxuICB9XHJcblxyXG4gIGFjdGlvbihhY3Q6IElEcm9wZG93bkl0ZW08YW55Pikge1xyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKGFjdCkpIHtcclxuICAgICAgaWYgKGFjdC5hY3Rpb24pIHtcclxuICAgICAgICBhY3QuYWN0aW9uKGFjdC5kYXRhKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLmFjdGlvbkl0ZW0ubmV4dCh7ZXZlbnQ6IGFjdC5ldmVudCB8fCBhY3QudGl0bGUgfHwgJ2RlZmF1bHQnLCBkYXRhOiBhY3QuZGF0YX0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuaGlkZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25JY29uQ2xpY2soJGV2ZW50LCBhY3Rpb25JY29uOiBJRHJvcGRvd25BY3Rpb25JY29uPGFueT4sIGRhdGE6IGFueSkge1xyXG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKGFjdGlvbkljb24pKSB7XHJcbiAgICAgIGFjdGlvbkljb24uYWN0aW9uKGRhdGEpO1xyXG4gICAgICB0aGlzLmhpZGUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiJdfQ==
|
|
@@ -11,7 +11,18 @@ export class DrDropdownDirective {
|
|
|
11
11
|
this._document = _document;
|
|
12
12
|
this.position = 'left';
|
|
13
13
|
}
|
|
14
|
+
elementHover() {
|
|
15
|
+
if (!this.drDropdownInHover)
|
|
16
|
+
return;
|
|
17
|
+
this.openDropdown();
|
|
18
|
+
}
|
|
14
19
|
elementClick() {
|
|
20
|
+
this.openDropdown();
|
|
21
|
+
}
|
|
22
|
+
documentClick(e) {
|
|
23
|
+
this.closeDropdown(e);
|
|
24
|
+
}
|
|
25
|
+
openDropdown() {
|
|
15
26
|
const option = this.el.nativeElement.getBoundingClientRect();
|
|
16
27
|
this._document.querySelectorAll('dr-dropdown').forEach(item => item.remove());
|
|
17
28
|
if (this.contentCmpRef && this.contentCmpRef.destroyCbs) {
|
|
@@ -22,13 +33,14 @@ export class DrDropdownDirective {
|
|
|
22
33
|
this.service.destroy();
|
|
23
34
|
this.showMenu({
|
|
24
35
|
option,
|
|
36
|
+
drDropdownInHover: this.drDropdownInHover,
|
|
25
37
|
position: this.position,
|
|
26
38
|
list: this.drDropdown,
|
|
27
39
|
class: this.drDropdownClass
|
|
28
40
|
});
|
|
29
41
|
}
|
|
30
42
|
}
|
|
31
|
-
|
|
43
|
+
closeDropdown(e) {
|
|
32
44
|
const menuItem = e.target.classList;
|
|
33
45
|
if (menuItem.contains('dr-dropdown__container__item') || menuItem.contains('dr-dropdown__container__item__text')) {
|
|
34
46
|
return;
|
|
@@ -68,8 +80,10 @@ DrDropdownDirective.propDecorators = {
|
|
|
68
80
|
position: [{ type: Input }],
|
|
69
81
|
drDropdown: [{ type: Input }],
|
|
70
82
|
drDropdownClass: [{ type: Input }],
|
|
83
|
+
drDropdownInHover: [{ type: Input }],
|
|
71
84
|
contentCmpRef: [{ type: ViewChild, args: [DrDropdownComponent, { static: true, read: ViewContainerRef },] }],
|
|
85
|
+
elementHover: [{ type: HostListener, args: ['mouseenter',] }],
|
|
72
86
|
elementClick: [{ type: HostListener, args: ['click',] }],
|
|
73
87
|
documentClick: [{ type: HostListener, args: ['document:mouseup', ['$event'],] }]
|
|
74
88
|
};
|
|
75
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
89
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHItZHJvcGRvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZGF0YXJhaWxzc2hhcmVkL3NyYy9saWIvZHItZHJvcGRvd24vZHItZHJvcGRvd24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx3QkFBd0IsRUFDeEIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUzQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUsxRCxNQUFNLE9BQU8sbUJBQW1CO0lBUTlCLFlBQW9CLHdCQUFrRCxFQUNsRCxnQkFBa0MsRUFDbEMsT0FBMEIsRUFDMUIsRUFBYyxFQUNJLFNBQWM7UUFKaEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBQzFCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDSSxjQUFTLEdBQVQsU0FBUyxDQUFLO1FBVjNDLGFBQVEsR0FBZSxNQUFNLENBQUM7SUFXdkMsQ0FBQztJQUUyQixZQUFZO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCO1lBQUUsT0FBTztRQUNsQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVzQixZQUFZO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRTZDLGFBQWEsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3RCxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQzlFLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRTtZQUN2RCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1NBQzNCO2FBQU07WUFDTCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBQ1osTUFBTTtnQkFDTixpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCO2dCQUN6QyxRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7Z0JBQ3ZCLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtnQkFDckIsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlO2FBQzVCLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVPLGFBQWEsQ0FBQyxDQUFDO1FBQ3JCLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ3BDLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyw4QkFBOEIsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsb0NBQW9DLENBQUMsRUFBRTtZQUNoSCxPQUFPO1NBQ1I7UUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdELElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDaEksVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUM3RDtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsT0FBcUI7UUFDcEMsSUFBSSxnQkFBdUQsQ0FBQztRQUM1RCxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsd0JBQXdCLENBQUMsdUJBQXVCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUM5RixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQzFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNqRyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQ2hELENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQzs7O1lBekVGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsY0FBYzthQUN6Qjs7O1lBakJDLHdCQUF3QjtZQVF4QixnQkFBZ0I7WUFLVCxpQkFBaUI7WUFYeEIsVUFBVTs0Q0E0QkcsTUFBTSxTQUFDLFFBQVE7Ozt1QkFWM0IsS0FBSzt5QkFDTCxLQUFLOzhCQUNMLEtBQUs7Z0NBQ0wsS0FBSzs0QkFDTCxTQUFTLFNBQUMsbUJBQW1CLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBQzsyQkFTckUsWUFBWSxTQUFDLFlBQVk7MkJBS3pCLFlBQVksU0FBQyxPQUFPOzRCQUlwQixZQUFZLFNBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudEZhY3RvcnksXHJcbiAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxyXG4gIERpcmVjdGl2ZSxcclxuICBFbGVtZW50UmVmLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbmplY3QsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSURyb3Bkb3duSXRlbSwgRWxQb3NpdGlvbiwgSURyb3Bkb3duIH0gZnJvbSAnLi4vbW9kZWxzL2Ryb3Bkb3duJztcclxuaW1wb3J0IHsgRHJEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vZHItZHJvcGRvd24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHJEcm9wZG93blNlcnZpY2UgfSBmcm9tICcuL2RyLWRyb3Bkb3duLnNlcnZpY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbZHJEcm9wZG93bl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEckRyb3Bkb3duRGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgcG9zaXRpb246IEVsUG9zaXRpb24gPSAnbGVmdCc7XHJcbiAgQElucHV0KCkgZHJEcm9wZG93bjogSURyb3Bkb3duSXRlbTxUPltdO1xyXG4gIEBJbnB1dCgpIGRyRHJvcGRvd25DbGFzczogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRyRHJvcGRvd25JbkhvdmVyOiBib29sZWFuO1xyXG4gIEBWaWV3Q2hpbGQoRHJEcm9wZG93bkNvbXBvbmVudCwge3N0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZn0pIGNvbnRlbnRDbXBSZWY7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICAgICAgICAgIHByaXZhdGUgc2VydmljZTogRHJEcm9wZG93blNlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgICAgICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIF9kb2N1bWVudDogYW55KSB7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJykgZWxlbWVudEhvdmVyKCkge1xyXG4gICAgaWYgKCF0aGlzLmRyRHJvcGRvd25JbkhvdmVyKSByZXR1cm47XHJcbiAgICAgIHRoaXMub3BlbkRyb3Bkb3duKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdjbGljaycpIGVsZW1lbnRDbGljaygpIHtcclxuICAgIHRoaXMub3BlbkRyb3Bkb3duKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDptb3VzZXVwJywgWyckZXZlbnQnXSkgZG9jdW1lbnRDbGljayhlKSB7XHJcbiAgICB0aGlzLmNsb3NlRHJvcGRvd24oZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9wZW5Ecm9wZG93bigpOiB2b2lkIHtcclxuICAgIGNvbnN0IG9wdGlvbiA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMuX2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2RyLWRyb3Bkb3duJykuZm9yRWFjaChpdGVtID0+IGl0ZW0ucmVtb3ZlKCkpO1xyXG4gICAgaWYgKHRoaXMuY29udGVudENtcFJlZiAmJiB0aGlzLmNvbnRlbnRDbXBSZWYuZGVzdHJveUNicykge1xyXG4gICAgICB0aGlzLmNvbnRlbnRDbXBSZWYuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLmNvbnRlbnRDbXBSZWYgPSBudWxsO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZXJ2aWNlLmRlc3Ryb3koKTtcclxuICAgICAgdGhpcy5zaG93TWVudSh7XHJcbiAgICAgICAgb3B0aW9uLFxyXG4gICAgICAgIGRyRHJvcGRvd25JbkhvdmVyOiB0aGlzLmRyRHJvcGRvd25JbkhvdmVyLFxyXG4gICAgICAgIHBvc2l0aW9uOiB0aGlzLnBvc2l0aW9uLFxyXG4gICAgICAgIGxpc3Q6IHRoaXMuZHJEcm9wZG93bixcclxuICAgICAgICBjbGFzczogdGhpcy5kckRyb3Bkb3duQ2xhc3NcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNsb3NlRHJvcGRvd24oZSk6IHZvaWQge1xyXG4gICAgY29uc3QgbWVudUl0ZW0gPSBlLnRhcmdldC5jbGFzc0xpc3Q7XHJcbiAgICBpZiAobWVudUl0ZW0uY29udGFpbnMoJ2RyLWRyb3Bkb3duX19jb250YWluZXJfX2l0ZW0nKSB8fCBtZW51SXRlbS5jb250YWlucygnZHItZHJvcGRvd25fX2NvbnRhaW5lcl9faXRlbV9fdGV4dCcpKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IGVsZW1zID0gdGhpcy5fZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZHItZHJvcGRvd24nKTtcclxuICAgIGlmICghZS50YXJnZXQuY29udGFpbnModGhpcy5lbC5uYXRpdmVFbGVtZW50KSAmJiB0aGlzLmNvbnRlbnRDbXBSZWYgfHwgZWxlbXMubGVuZ3RoICYmICFlLnRhcmdldC5jb250YWlucyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpKSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gZWxlbXMuZm9yRWFjaChpdGVtID0+IGl0ZW0ucmVtb3ZlKCkpLCAxMDApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzaG93TWVudShvcHRpb25zOiBJRHJvcGRvd248VD4pIHtcclxuICAgIGxldCBjb21wb25lbnRGYWN0b3J5OiBDb21wb25lbnRGYWN0b3J5PERyRHJvcGRvd25Db21wb25lbnQ+O1xyXG4gICAgY29tcG9uZW50RmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KERyRHJvcGRvd25Db21wb25lbnQpO1xyXG4gICAgdGhpcy5jb250ZW50Q21wUmVmID0gdGhpcy52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChjb21wb25lbnRGYWN0b3J5KTtcclxuICAgIHRoaXMuc2VydmljZS5hZGRNZW51ID0gdGhpcy5jb250ZW50Q21wUmVmO1xyXG4gICAgdGhpcy5fZG9jdW1lbnQucXVlcnlTZWxlY3RvcignbmItbGF5b3V0JykuYXBwZW5kQ2hpbGQodGhpcy5jb250ZW50Q21wUmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgdGhpcy5jb250ZW50Q21wUmVmLmluc3RhbmNlLm9wdGlvbnMgPSBvcHRpb25zO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuY29udGVudENtcFJlZikge1xyXG4gICAgICB0aGlzLmNvbnRlbnRDbXBSZWYuZGVzdHJveSgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9tb2RlbHMvZHJvcGRvd24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEVsUG9zaXRpb24gPSAnbGVmdCcgfCAncmlnaHQnIHwgJ3RvcCcgfCAnYm90dG9tJyB8ICdjaGlsZCcgfCAndG9wLWxlZnQnIHwgJ2xlZnQtY2VudGVyJyB8ICdib3R0b20tbGVmdCcgfCAnb3ZlcicgfCAncmlnaHQtYm90dG9tJyB8ICdib3R0b20tcmlnaHQnO1xyXG5cclxuLy8gSUNvbnRleHRNZW51XHJcbmV4cG9ydCBpbnRlcmZhY2UgSURyb3Bkb3duPFQ+IHtcclxuICBvcHRpb24/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhcmFpbHNzaGFyZWQvc3JjL2xpYi9tb2RlbHMvZHJvcGRvd24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIEVsUG9zaXRpb24gPSAnbGVmdCcgfCAncmlnaHQnIHwgJ3RvcCcgfCAnYm90dG9tJyB8ICdjaGlsZCcgfCAndG9wLWxlZnQnIHwgJ2xlZnQtY2VudGVyJyB8ICdib3R0b20tbGVmdCcgfCAnb3ZlcicgfCAncmlnaHQtYm90dG9tJyB8ICdib3R0b20tcmlnaHQnO1xyXG5cclxuLy8gSUNvbnRleHRNZW51XHJcbmV4cG9ydCBpbnRlcmZhY2UgSURyb3Bkb3duPFQ+IHtcclxuICBvcHRpb24/OiBET01SZWN0O1xyXG4gIGRyRHJvcGRvd25JbkhvdmVyPzogYm9vbGVhbjtcclxuICBwb3NpdGlvbjogRWxQb3NpdGlvbiB8IElEcm9wZG93bkNvb3JkaW5hdGU7XHJcbiAgbGlzdDogSURyb3Bkb3duSXRlbTxUPltdO1xyXG4gIHRhZz86IHN0cmluZztcclxuICBjbGFzcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcclxufVxyXG5cclxuLy8gQWN0aW9uTWVudVxyXG5leHBvcnQgaW50ZXJmYWNlIElEcm9wZG93bkl0ZW08VD4ge1xyXG4gIHRpdGxlPzogc3RyaW5nO1xyXG4gIGljb24/OiBzdHJpbmc7XHJcbiAgY3VzdG9tVGl0bGU/OiAocDogYW55KSA9PiBzdHJpbmc7XHJcbiAgYWN0aW9uPzogKHA6IFQpID0+IHZvaWQ7XHJcbiAgZXZlbnQ/OiBzdHJpbmc7XHJcbiAgZGF0YT86IFQ7XHJcbiAgc2hvdz86IChwOiBhbnkpID0+IGJvb2xlYW47XHJcbiAgZGlzYWJsZWQ/OiAocDogVCkgPT4gYm9vbGVhbjtcclxuICB0b29sVGlwPzogc3RyaW5nO1xyXG4gIHRvb2xUaXBJZkRpc2FibGVkPzogYm9vbGVhbjtcclxuICBjaGlsZHJlbj86IFRbXTtcclxuICBjaGlsZE9wdGlvbnM/OiBJRHJvcGRvd248VD47XHJcbiAgYWN0aW9uSWNvbnM/OiBJRHJvcGRvd25BY3Rpb25JY29uPFQ+W107XHJcbiAgc2VsZWN0ZWQ/OiAocDogVCkgPT4gYm9vbGVhbjtcclxuICBjbGFzcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcclxufVxyXG5cclxuLy8gTWVudUFjdGlvbkljb25cclxuZXhwb3J0IGludGVyZmFjZSBJRHJvcGRvd25BY3Rpb25JY29uPFQ+IHtcclxuICBpY29uOiBzdHJpbmc7XHJcbiAgYWN0aW9uOiAocDogVCkgPT4gdm9pZDtcclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgZGF0YT86IGFueTtcclxuICBzaG93T25Ib3Zlcj86IGJvb2xlYW47XHJcbn1cclxuXHJcbi8vIElDb250ZXh0TWVudUNvb3JkaW5hdGVcclxuZXhwb3J0IGludGVyZmFjZSBJRHJvcGRvd25Db29yZGluYXRlIHtcclxuICB4OiBudW1iZXI7XHJcbiAgeTogbnVtYmVyO1xyXG4gIGNsaWVudFg/OiBudW1iZXI7XHJcbiAgY2xpZW50WT86IG51bWJlcjtcclxufVxyXG5cclxuLy8gSUdUQ0NvbnRleHRNZW51RXZlbnRcclxuZXhwb3J0IGludGVyZmFjZSBJRHJvcGRvd25DYWxsRXZlbnQge1xyXG4gIGlkOiBudW1iZXI7XHJcbiAgZXZlbnQ6IGFueTtcclxuICBpdGVtc0xpc3Q6IGFueVtdO1xyXG59XHJcblxyXG4vLyBDb250ZXh0TWVudUNsaWNrXHJcbmV4cG9ydCBpbnRlcmZhY2UgSURyb3Bkb3duQWN0aW9uPFQ+IHtcclxuICBldmVudDogc3RyaW5nO1xyXG4gIGRhdGE/OiBUO1xyXG59XHJcbiJdfQ==
|
|
@@ -2383,6 +2383,7 @@ class DrDropdownComponent {
|
|
|
2383
2383
|
if (data) {
|
|
2384
2384
|
this.option = data.option;
|
|
2385
2385
|
this.position = data.position;
|
|
2386
|
+
this.drDropdownInHover = data.drDropdownInHover;
|
|
2386
2387
|
this.containerClass = data.class;
|
|
2387
2388
|
this.list = data.list || [];
|
|
2388
2389
|
this.list.forEach(item => {
|
|
@@ -2398,6 +2399,10 @@ class DrDropdownComponent {
|
|
|
2398
2399
|
this.cdr.markForCheck();
|
|
2399
2400
|
}
|
|
2400
2401
|
}
|
|
2402
|
+
onMouseLeave() {
|
|
2403
|
+
if (this.drDropdownInHover)
|
|
2404
|
+
this.menuService.destroy();
|
|
2405
|
+
}
|
|
2401
2406
|
onClickedOutside() {
|
|
2402
2407
|
if (this.firstInit) {
|
|
2403
2408
|
this.menuService.destroy();
|
|
@@ -2461,7 +2466,7 @@ class DrDropdownComponent {
|
|
|
2461
2466
|
DrDropdownComponent.decorators = [
|
|
2462
2467
|
{ type: Component, args: [{
|
|
2463
2468
|
selector: 'dr-dropdown',
|
|
2464
|
-
template: "<div #menuContainer\r\n (clickOutside)=\"onClickedOutside()\"\r\n [drDropdownPosition]=\"option\"\r\n #dropdownPosition=\"dropdownPosition\"\r\n [position]=\"position\"\r\n [class]=\"containerClass\"\r\n class=\"dr-dropdown\">\r\n <div class=\"dr-dropdown__container\">\r\n <div *ngFor=\"let act of list | drDropdownItemShowPipe\"\r\n (click)=\"action(act)\"\r\n [drTooltip]=\"tooltipToShow(act)\"\r\n [drTooltipPosition]=\"tooltipPosition(dropdownPosition.widthMoreRight)\"\r\n [drTooltipOptions]=\"{ withoutArrow: true }\"\r\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\r\n class=\"dr-dropdown__container__item\"\r\n [class.item-disabled]=\"disabled(act)\"\r\n [class.item-selected]=\"selected(act)\">\r\n <i *ngIf=\"act.icon\" [class]=\"act.icon\"></i>\r\n <span class=\"dr-dropdown__container__item__text\">{{act.title}}</span>\r\n <i *ngFor=\"let actionIcon of act.actionIcons\"\r\n [class]=\"actionIcon.icon\"\r\n [class.showOnHover]=\"actionIcon.showOnHover\"\r\n (click)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\r\n <i *ngIf=\"act.children?.length\" class=\"dr-icon-arrow-right\"></i>\r\n <dr-dropdown *ngIf=\"act.children?.length\" [options]=\"act.childOptions\"></dr-dropdown>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
2469
|
+
template: "<div #menuContainer\r\n (mouseleave)=\"onMouseLeave()\"\r\n (clickOutside)=\"onClickedOutside()\"\r\n [drDropdownPosition]=\"option\"\r\n #dropdownPosition=\"dropdownPosition\"\r\n [position]=\"position\"\r\n [class]=\"containerClass\"\r\n class=\"dr-dropdown\">\r\n <div class=\"dr-dropdown__container\">\r\n <div *ngFor=\"let act of list | drDropdownItemShowPipe\"\r\n (click)=\"action(act)\"\r\n [drTooltip]=\"tooltipToShow(act)\"\r\n [drTooltipPosition]=\"tooltipPosition(dropdownPosition.widthMoreRight)\"\r\n [drTooltipOptions]=\"{ withoutArrow: true }\"\r\n [drTooltipClass]=\"'dr-dropdown__tooltip'\"\r\n class=\"dr-dropdown__container__item\"\r\n [class.item-disabled]=\"disabled(act)\"\r\n [class.item-selected]=\"selected(act)\">\r\n <i *ngIf=\"act.icon\" [class]=\"act.icon\"></i>\r\n <span class=\"dr-dropdown__container__item__text\">{{act.title}}</span>\r\n <i *ngFor=\"let actionIcon of act.actionIcons\"\r\n [class]=\"actionIcon.icon\"\r\n [class.showOnHover]=\"actionIcon.showOnHover\"\r\n (click)=\"onActionIconClick($event, actionIcon, act.data)\"></i>\r\n <i *ngIf=\"act.children?.length\" class=\"dr-icon-arrow-right\"></i>\r\n <dr-dropdown *ngIf=\"act.children?.length\" [options]=\"act.childOptions\"></dr-dropdown>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
2465
2470
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
2466
2471
|
styles: ["::ng-deep .dr-dropdown__container__item .dr-dropdown{visibility:hidden}::ng-deep .dr-dropdown__container__item:hover .dr-dropdown{visibility:visible}::ng-deep .dr-dropdown__tooltip>.default-content{max-width:300px;white-space:normal!important}.dr-dropdown{position:absolute;z-index:-1;top:0;left:0;width:auto}.dr-dropdown__container{display:flex;flex-direction:column;background:#fff;border-radius:4px;box-shadow:0 4px 8px 1px #00000040;padding:8px 0;overflow-y:auto;max-height:60vh}.dr-dropdown__container__item{display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}.dr-dropdown__container__item:hover{background-color:#f6f7f8}.dr-dropdown__container__item:hover .showOnHover{visibility:visible}.dr-dropdown__container__item.item-selected{background:#F3F7FF}.dr-dropdown__container__item.item-disabled,.dr-dropdown__container__item.item-disabled i,.dr-dropdown__container__item.item-disabled .dr-dropdown__container__item__text{color:#bcbcbc}.dr-dropdown__container__item i:first-child{margin-right:8px}.dr-dropdown__container__item__text{margin-right:auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dr-dropdown__container__item i,.dr-dropdown__container__item__text{color:#151b3f}.dr-dropdown__container__item .showOnHover{visibility:hidden}.dr-dropdown.content-top{transform:translate(-50%,-100%)}.dr-dropdown.content-top-left{transform:translate(-100%,-100%)}.dr-dropdown.content-bottom{transform:translate(-50%,50%)}.dr-dropdown.content-bottom-left{transform:translate(-90%,35%)}.dr-dropdown.content-bottom-right{transform:translateY(45%)}.dr-dropdown.content-left{transform:translate(-100%)}.dr-dropdown.content-left-center{transform:translate(-100%,-50%)}.dr-dropdown.content-right{transform:translate(5%)}\n"]
|
|
2467
2472
|
},] }
|
|
@@ -2485,7 +2490,18 @@ class DrDropdownDirective {
|
|
|
2485
2490
|
this._document = _document;
|
|
2486
2491
|
this.position = 'left';
|
|
2487
2492
|
}
|
|
2493
|
+
elementHover() {
|
|
2494
|
+
if (!this.drDropdownInHover)
|
|
2495
|
+
return;
|
|
2496
|
+
this.openDropdown();
|
|
2497
|
+
}
|
|
2488
2498
|
elementClick() {
|
|
2499
|
+
this.openDropdown();
|
|
2500
|
+
}
|
|
2501
|
+
documentClick(e) {
|
|
2502
|
+
this.closeDropdown(e);
|
|
2503
|
+
}
|
|
2504
|
+
openDropdown() {
|
|
2489
2505
|
const option = this.el.nativeElement.getBoundingClientRect();
|
|
2490
2506
|
this._document.querySelectorAll('dr-dropdown').forEach(item => item.remove());
|
|
2491
2507
|
if (this.contentCmpRef && this.contentCmpRef.destroyCbs) {
|
|
@@ -2496,13 +2512,14 @@ class DrDropdownDirective {
|
|
|
2496
2512
|
this.service.destroy();
|
|
2497
2513
|
this.showMenu({
|
|
2498
2514
|
option,
|
|
2515
|
+
drDropdownInHover: this.drDropdownInHover,
|
|
2499
2516
|
position: this.position,
|
|
2500
2517
|
list: this.drDropdown,
|
|
2501
2518
|
class: this.drDropdownClass
|
|
2502
2519
|
});
|
|
2503
2520
|
}
|
|
2504
2521
|
}
|
|
2505
|
-
|
|
2522
|
+
closeDropdown(e) {
|
|
2506
2523
|
const menuItem = e.target.classList;
|
|
2507
2524
|
if (menuItem.contains('dr-dropdown__container__item') || menuItem.contains('dr-dropdown__container__item__text')) {
|
|
2508
2525
|
return;
|
|
@@ -2542,7 +2559,9 @@ DrDropdownDirective.propDecorators = {
|
|
|
2542
2559
|
position: [{ type: Input }],
|
|
2543
2560
|
drDropdown: [{ type: Input }],
|
|
2544
2561
|
drDropdownClass: [{ type: Input }],
|
|
2562
|
+
drDropdownInHover: [{ type: Input }],
|
|
2545
2563
|
contentCmpRef: [{ type: ViewChild, args: [DrDropdownComponent, { static: true, read: ViewContainerRef },] }],
|
|
2564
|
+
elementHover: [{ type: HostListener, args: ['mouseenter',] }],
|
|
2546
2565
|
elementClick: [{ type: HostListener, args: ['click',] }],
|
|
2547
2566
|
documentClick: [{ type: HostListener, args: ['document:mouseup', ['$event'],] }]
|
|
2548
2567
|
};
|