@duoduo-oba/ng-devui
Version:
DevUI components based on Angular
132 lines • 9.95 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: directives/drag-sync.directive.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Directive, Input, Self, Optional, ElementRef } from '@angular/core';
import { Subscription } from 'rxjs';
import { DragDropSyncService } from '../services/drag-drop-sync.service';
import { DragDropService } from '../services/drag-drop.service';
import { DraggableDirective } from './draggable.directive';
var DragSyncDirective = /** @class */ (function () {
function DragSyncDirective(el, draggable, dragDropSyncService, dragDropService) {
var _this = this;
this.el = el;
this.draggable = draggable;
this.dragDropSyncService = dragDropSyncService;
this.dragDropService = dragDropService;
this.dragSyncGroup = '';
this.subscription = new Subscription();
this.subDragElEvent = (/**
* @param {?} bool
* @return {?}
*/
function (bool) {
_this.syncGroupDirectives.forEach((/**
* @param {?} dir
* @return {?}
*/
function (dir) { return _this.renderDisplay(dir.el.nativeElement, bool); }));
});
}
/**
* @return {?}
*/
DragSyncDirective.prototype.ngOnInit = /**
* @return {?}
*/
function () {
var _this = this;
if (this.draggable) {
this.subscription.add(this.draggable.dragElShowHideEvent.subscribe(this.subDragElEvent));
this.subscription.add(this.draggable.beforeDragStartEvent.subscribe((/**
* @return {?}
*/
function () {
_this.syncGroupDirectives = _this.dragDropSyncService.getDragSyncByGroup(_this.dragSyncGroup).filter((/**
* @param {?} directive
* @return {?}
*/
function (directive) { return directive !== _this; }));
_this.dragDropService.dragSyncGroupDirectives = _this.syncGroupDirectives;
})));
this.subscription.add(this.draggable.dropEndEvent.subscribe((/**
* @return {?}
*/
function () {
_this.dragDropService.dragSyncGroupDirectives = undefined;
_this.syncGroupDirectives = undefined;
})));
}
};
/**
* @return {?}
*/
DragSyncDirective.prototype.ngOnDestroy = /**
* @return {?}
*/
function () {
if (this.subscription) {
this.subscription.unsubscribe();
}
};
/**
* @param {?} nativeEl
* @param {?} bool
* @return {?}
*/
DragSyncDirective.prototype.renderDisplay = /**
* @param {?} nativeEl
* @param {?} bool
* @return {?}
*/
function (nativeEl, bool) {
nativeEl.style.display = bool ? '' : 'none';
};
DragSyncDirective.decorators = [
{ type: Directive, args: [{
selector: '[dDragSync]',
exportAs: 'dDragSync'
},] }
];
/** @nocollapse */
DragSyncDirective.ctorParameters = function () { return [
{ type: ElementRef },
{ type: DraggableDirective, decorators: [{ type: Optional }, { type: Self }] },
{ type: DragDropSyncService },
{ type: DragDropService }
]; };
DragSyncDirective.propDecorators = {
dragSyncGroup: [{ type: Input, args: ['dDragSync',] }]
};
return DragSyncDirective;
}());
export { DragSyncDirective };
if (false) {
/** @type {?} */
DragSyncDirective.prototype.dragSyncGroup;
/** @type {?} */
DragSyncDirective.prototype.subscription;
/** @type {?} */
DragSyncDirective.prototype.syncGroupDirectives;
/** @type {?} */
DragSyncDirective.prototype.subDragElEvent;
/** @type {?} */
DragSyncDirective.prototype.el;
/**
* @type {?}
* @private
*/
DragSyncDirective.prototype.draggable;
/**
* @type {?}
* @private
*/
DragSyncDirective.prototype.dragDropSyncService;
/**
* @type {?}
* @private
*/
DragSyncDirective.prototype.dragDropService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1zeW5jLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLWRldnVpL2RyYWdkcm9wLyIsInNvdXJjZXMiOlsiZGlyZWN0aXZlcy9kcmFnLXN5bmMuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFVLFFBQVEsRUFBYSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFM0Q7SUFTRSwyQkFBbUIsRUFBYyxFQUErQixTQUE2QixFQUNyRixtQkFBd0MsRUFBVSxlQUFnQztRQUQxRixpQkFDOEY7UUFEM0UsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUErQixjQUFTLEdBQVQsU0FBUyxDQUFvQjtRQUNyRix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQVUsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBTHRFLGtCQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3ZDLGlCQUFZLEdBQWlCLElBQUksWUFBWSxFQUFFLENBQUM7UUEwQmhELG1CQUFjOzs7O1FBQUcsVUFBQyxJQUFhO1lBQzdCLEtBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPOzs7O1lBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxLQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLElBQUksQ0FBQyxFQUE5QyxDQUE4QyxFQUFDLENBQUM7UUFDMUYsQ0FBQyxFQUFBO0lBeEI0RixDQUFDOzs7O0lBRTlGLG9DQUFROzs7SUFBUjtRQUFBLGlCQVlDO1FBWEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ2xCLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQ3pGLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsb0JBQW9CLENBQUMsU0FBUzs7O1lBQUM7Z0JBQ2xFLEtBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLENBQUMsS0FBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE1BQU07Ozs7Z0JBQUMsVUFBQSxTQUFTLElBQUksT0FBQSxTQUFTLEtBQUssS0FBSSxFQUFsQixDQUFrQixFQUFDLENBQUM7Z0JBQ25JLEtBQUksQ0FBQyxlQUFlLENBQUMsdUJBQXVCLEdBQUcsS0FBSSxDQUFDLG1CQUFtQixDQUFDO1lBQzFFLENBQUMsRUFBQyxDQUFDLENBQUM7WUFDSixJQUFJLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxTQUFTOzs7WUFBQztnQkFDMUQsS0FBSSxDQUFDLGVBQWUsQ0FBQyx1QkFBdUIsR0FBRyxTQUFTLENBQUM7Z0JBQ3pELEtBQUksQ0FBQyxtQkFBbUIsR0FBRyxTQUFTLENBQUM7WUFDdkMsQ0FBQyxFQUFDLENBQUMsQ0FBQztTQUNMO0lBQ0gsQ0FBQzs7OztJQUVELHVDQUFXOzs7SUFBWDtRQUNFLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNyQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQzs7Ozs7O0lBTUQseUNBQWE7Ozs7O0lBQWIsVUFBYyxRQUFxQixFQUFFLElBQWE7UUFDaEQsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUM5QyxDQUFDOztnQkF0Q0YsU0FBUyxTQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixRQUFRLEVBQUUsV0FBVztpQkFDdEI7Ozs7Z0JBVDZELFVBQVU7Z0JBSS9ELGtCQUFrQix1QkFXWSxRQUFRLFlBQUksSUFBSTtnQkFiOUMsbUJBQW1CO2dCQUNuQixlQUFlOzs7Z0NBUXJCLEtBQUssU0FBQyxXQUFXOztJQW1DcEIsd0JBQUM7Q0FBQSxBQXhDRCxJQXdDQztTQXBDWSxpQkFBaUI7OztJQUM1QiwwQ0FBdUM7O0lBQ3ZDLHlDQUFnRDs7SUFDaEQsZ0RBQThDOztJQXlCOUMsMkNBRUM7O0lBekJXLCtCQUFxQjs7Ozs7SUFBRyxzQ0FBeUQ7Ozs7O0lBQzdGLGdEQUFnRDs7Ozs7SUFBRSw0Q0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBTZWxmLCBPbkluaXQsIE9wdGlvbmFsLCBPbkRlc3Ryb3ksIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IERyYWdEcm9wU3luY1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9kcmFnLWRyb3Atc3luYy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRHJhZ0Ryb3BTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZHJhZy1kcm9wLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEcmFnZ2FibGVEaXJlY3RpdmUgfSBmcm9tICcuL2RyYWdnYWJsZS5kaXJlY3RpdmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbZERyYWdTeW5jXScsXHJcbiAgZXhwb3J0QXM6ICdkRHJhZ1N5bmMnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEcmFnU3luY0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoJ2REcmFnU3luYycpIGRyYWdTeW5jR3JvdXAgPSAnJztcclxuICBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICBzeW5jR3JvdXBEaXJlY3RpdmVzOiBBcnJheTxEcmFnU3luY0RpcmVjdGl2ZT47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBlbDogRWxlbWVudFJlZiAsIEBPcHRpb25hbCgpIEBTZWxmKCkgcHJpdmF0ZSBkcmFnZ2FibGU6IERyYWdnYWJsZURpcmVjdGl2ZSxcclxuICBwcml2YXRlIGRyYWdEcm9wU3luY1NlcnZpY2U6IERyYWdEcm9wU3luY1NlcnZpY2UsIHByaXZhdGUgZHJhZ0Ryb3BTZXJ2aWNlOiBEcmFnRHJvcFNlcnZpY2UpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKHRoaXMuZHJhZ2dhYmxlKSB7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmRyYWdnYWJsZS5kcmFnRWxTaG93SGlkZUV2ZW50LnN1YnNjcmliZSh0aGlzLnN1YkRyYWdFbEV2ZW50KSk7XHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLmFkZCh0aGlzLmRyYWdnYWJsZS5iZWZvcmVEcmFnU3RhcnRFdmVudC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuc3luY0dyb3VwRGlyZWN0aXZlcyA9IHRoaXMuZHJhZ0Ryb3BTeW5jU2VydmljZS5nZXREcmFnU3luY0J5R3JvdXAodGhpcy5kcmFnU3luY0dyb3VwKS5maWx0ZXIoZGlyZWN0aXZlID0+IGRpcmVjdGl2ZSAhPT0gdGhpcyk7XHJcbiAgICAgICAgdGhpcy5kcmFnRHJvcFNlcnZpY2UuZHJhZ1N5bmNHcm91cERpcmVjdGl2ZXMgPSB0aGlzLnN5bmNHcm91cERpcmVjdGl2ZXM7XHJcbiAgICAgIH0pKTtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24uYWRkKHRoaXMuZHJhZ2dhYmxlLmRyb3BFbmRFdmVudC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZHJhZ0Ryb3BTZXJ2aWNlLmRyYWdTeW5jR3JvdXBEaXJlY3RpdmVzID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIHRoaXMuc3luY0dyb3VwRGlyZWN0aXZlcyA9IHVuZGVmaW5lZDtcclxuICAgICAgfSkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICBpZiAodGhpcy5zdWJzY3JpcHRpb24pIHtcclxuICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHN1YkRyYWdFbEV2ZW50ID0gKGJvb2w6IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMuc3luY0dyb3VwRGlyZWN0aXZlcy5mb3JFYWNoKGRpciA9PiB0aGlzLnJlbmRlckRpc3BsYXkoZGlyLmVsLm5hdGl2ZUVsZW1lbnQsIGJvb2wpKTtcclxuICB9XHJcblxyXG4gIHJlbmRlckRpc3BsYXkobmF0aXZlRWw6IEhUTUxFbGVtZW50LCBib29sOiBib29sZWFuKSB7XHJcbiAgICBuYXRpdmVFbC5zdHlsZS5kaXNwbGF5ID0gYm9vbCA/ICcnIDogJ25vbmUnO1xyXG4gIH1cclxuXHJcbn1cclxuIl19