UNPKG

@duoduo-oba/ng-devui

Version:

DevUI components based on Angular

118 lines 9.35 kB
/** * @fileoverview added by tsickle * Generated from: directives/drag-preview.directive.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Directive, Input, TemplateRef, ComponentFactoryResolver } from '@angular/core'; import { OverlayContainerRef } from '@duoduo-oba/ng-devui/overlay-container'; import { DragPreviewComponent } from './drag-preview.component'; import { DragDropService } from '../services/drag-drop.service'; export class DragPreviewDirective { /** * @param {?} componentFactoryResolver * @param {?} overlayContainerRef * @param {?} dragDropService */ constructor(componentFactoryResolver, overlayContainerRef, dragDropService) { this.componentFactoryResolver = componentFactoryResolver; this.overlayContainerRef = overlayContainerRef; this.dragDropService = dragDropService; this.dragPreviewOptions = { skipBatchPreview: false }; } /** * @return {?} */ createPreview() { /** @type {?} */ const finalComponentFactoryResolver = this.componentFactoryResolver; /** @type {?} */ const previewRef = this.overlayContainerRef.createComponent(finalComponentFactoryResolver.resolveComponentFactory(DragPreviewComponent)); this.previewRef = previewRef; this.updateData(); return this.previewRef; } /** * @return {?} */ updateData() { Object.assign(this.previewRef.instance, { templateRef: this.dragPreviewTemplate, data: this.dragPreviewData, draggedEl: this.dragDropService.draggedEl, dragData: this.dragDropService.dragData, batchDragData: this.dragDropService.batchDragData && this.dragDropService.getBatchDragData(), dragSyncDOMElements: this.dragDropService.dragSyncGroupDirectives && this.getDragSyncDOMElements() }); this.previewRef.instance.updateTemplate(); } /** * @return {?} */ destroyPreview() { if (this.previewRef) { this.previewRef.hostView.destroy(); } } /** * @return {?} */ getPreviewElement() { return this.previewRef && this.previewRef.instance.element; } /** * @private * @return {?} */ getDragSyncDOMElements() { return this.dragDropService.dragSyncGroupDirectives.map((/** * @param {?} dir * @return {?} */ dir => dir.el.nativeElement)); } } DragPreviewDirective.decorators = [ { type: Directive, args: [{ selector: '[dDraggable][dDragPreview]', exportAs: 'dDragPreview' },] } ]; /** @nocollapse */ DragPreviewDirective.ctorParameters = () => [ { type: ComponentFactoryResolver }, { type: OverlayContainerRef }, { type: DragDropService } ]; DragPreviewDirective.propDecorators = { dragPreviewTemplate: [{ type: Input, args: ['dDragPreview',] }], dragPreviewData: [{ type: Input }], dragPreviewOptions: [{ type: Input }] }; if (false) { /** @type {?} */ DragPreviewDirective.prototype.dragPreviewTemplate; /** @type {?} */ DragPreviewDirective.prototype.dragPreviewData; /** @type {?} */ DragPreviewDirective.prototype.dragPreviewOptions; /** @type {?} */ DragPreviewDirective.prototype.previewRef; /** * @type {?} * @private */ DragPreviewDirective.prototype.componentFactoryResolver; /** * @type {?} * @private */ DragPreviewDirective.prototype.overlayContainerRef; /** * @type {?} * @private */ DragPreviewDirective.prototype.dragDropService; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1wcmV2aWV3LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLWRldnVpL2RyYWdkcm9wLyIsInNvdXJjZXMiOlsiZGlyZWN0aXZlcy9kcmFnLXByZXZpZXcuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQU9oRSxNQUFNLE9BQU8sb0JBQW9COzs7Ozs7SUFPL0IsWUFBb0Isd0JBQWtELEVBQzVELG1CQUF3QyxFQUFVLGVBQWdDO1FBRHhFLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDNUQsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUFVLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUxuRix1QkFBa0IsR0FBRztZQUM1QixnQkFBZ0IsRUFBRSxLQUFLO1NBQ3hCLENBQUM7SUFJRixDQUFDOzs7O0lBRU0sYUFBYTs7Y0FDWiw2QkFBNkIsR0FBRyxJQUFJLENBQUMsd0JBQXdCOztjQUU3RCxVQUFVLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsQ0FDekQsNkJBQTZCLENBQUMsdUJBQXVCLENBQUMsb0JBQW9CLENBQUMsQ0FDNUU7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7Ozs7SUFFTSxVQUFVO1FBQ2YsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRTtZQUN0QyxXQUFXLEVBQUUsSUFBSSxDQUFDLG1CQUFtQjtZQUNyQyxJQUFJLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDMUIsU0FBUyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUztZQUN6QyxRQUFRLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRO1lBQ3ZDLGFBQWEsRUFBRyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFO1lBQzdGLG1CQUFtQixFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsdUJBQXVCLElBQUksSUFBSSxDQUFDLHNCQUFzQixFQUFFO1NBQ25HLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzVDLENBQUM7Ozs7SUFFTSxjQUFjO1FBQ25CLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNuQixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNwQztJQUNILENBQUM7Ozs7SUFFTSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztJQUM3RCxDQUFDOzs7OztJQUNPLHNCQUFzQjtRQUM1QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsdUJBQXVCLENBQUMsR0FBRzs7OztRQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUMsQ0FBQztJQUN2RixDQUFDOzs7WUFsREYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSw0QkFBNEI7Z0JBQ3RDLFFBQVEsRUFBRSxjQUFjO2FBQ3pCOzs7O1lBUnVDLHdCQUF3QjtZQUN2RCxtQkFBbUI7WUFFbkIsZUFBZTs7O2tDQVFyQixLQUFLLFNBQUMsY0FBYzs4QkFDcEIsS0FBSztpQ0FDTCxLQUFLOzs7O0lBRk4sbURBQTZEOztJQUM3RCwrQ0FBeUI7O0lBQ3pCLGtEQUVFOztJQUNGLDBDQUFrQjs7Ozs7SUFDTix3REFBMEQ7Ozs7O0lBQ3BFLG1EQUFnRDs7Ozs7SUFBRSwrQ0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlDb250YWluZXJSZWYgfSBmcm9tICduZy1kZXZ1aS9vdmVybGF5LWNvbnRhaW5lcic7XHJcbmltcG9ydCB7IERyYWdQcmV2aWV3Q29tcG9uZW50IH0gZnJvbSAnLi9kcmFnLXByZXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRHJhZ0Ryb3BTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZHJhZy1kcm9wLnNlcnZpY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbZERyYWdnYWJsZV1bZERyYWdQcmV2aWV3XScsXHJcbiAgZXhwb3J0QXM6ICdkRHJhZ1ByZXZpZXcnXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgRHJhZ1ByZXZpZXdEaXJlY3RpdmUge1xyXG4gIEBJbnB1dCgnZERyYWdQcmV2aWV3JykgZHJhZ1ByZXZpZXdUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBASW5wdXQoKSBkcmFnUHJldmlld0RhdGE7XHJcbiAgQElucHV0KCkgZHJhZ1ByZXZpZXdPcHRpb25zID0ge1xyXG4gICAgc2tpcEJhdGNoUHJldmlldzogZmFsc2VcclxuICB9O1xyXG4gIHB1YmxpYyBwcmV2aWV3UmVmO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXHJcbiAgICBwcml2YXRlIG92ZXJsYXlDb250YWluZXJSZWY6IE92ZXJsYXlDb250YWluZXJSZWYsIHByaXZhdGUgZHJhZ0Ryb3BTZXJ2aWNlOiBEcmFnRHJvcFNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjcmVhdGVQcmV2aWV3KCkge1xyXG4gICAgY29uc3QgZmluYWxDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIgPSB0aGlzLmNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjtcclxuXHJcbiAgICBjb25zdCBwcmV2aWV3UmVmID0gdGhpcy5vdmVybGF5Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudChcclxuICAgICAgZmluYWxDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoRHJhZ1ByZXZpZXdDb21wb25lbnQpXHJcbiAgICApO1xyXG4gICAgdGhpcy5wcmV2aWV3UmVmID0gcHJldmlld1JlZjtcclxuICAgIHRoaXMudXBkYXRlRGF0YSgpO1xyXG4gICAgcmV0dXJuIHRoaXMucHJldmlld1JlZjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB1cGRhdGVEYXRhKCkge1xyXG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLnByZXZpZXdSZWYuaW5zdGFuY2UsIHtcclxuICAgICAgdGVtcGxhdGVSZWY6IHRoaXMuZHJhZ1ByZXZpZXdUZW1wbGF0ZSxcclxuICAgICAgZGF0YTogdGhpcy5kcmFnUHJldmlld0RhdGEsXHJcbiAgICAgIGRyYWdnZWRFbDogdGhpcy5kcmFnRHJvcFNlcnZpY2UuZHJhZ2dlZEVsLFxyXG4gICAgICBkcmFnRGF0YTogdGhpcy5kcmFnRHJvcFNlcnZpY2UuZHJhZ0RhdGEsXHJcbiAgICAgIGJhdGNoRHJhZ0RhdGE6ICB0aGlzLmRyYWdEcm9wU2VydmljZS5iYXRjaERyYWdEYXRhICYmIHRoaXMuZHJhZ0Ryb3BTZXJ2aWNlLmdldEJhdGNoRHJhZ0RhdGEoKSxcclxuICAgICAgZHJhZ1N5bmNET01FbGVtZW50czogdGhpcy5kcmFnRHJvcFNlcnZpY2UuZHJhZ1N5bmNHcm91cERpcmVjdGl2ZXMgJiYgdGhpcy5nZXREcmFnU3luY0RPTUVsZW1lbnRzKClcclxuICAgIH0pO1xyXG4gICAgdGhpcy5wcmV2aWV3UmVmLmluc3RhbmNlLnVwZGF0ZVRlbXBsYXRlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGVzdHJveVByZXZpZXcoKSB7XHJcbiAgICBpZiAodGhpcy5wcmV2aWV3UmVmKSB7XHJcbiAgICAgIHRoaXMucHJldmlld1JlZi5ob3N0Vmlldy5kZXN0cm95KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0UHJldmlld0VsZW1lbnQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5wcmV2aWV3UmVmICYmIHRoaXMucHJldmlld1JlZi5pbnN0YW5jZS5lbGVtZW50O1xyXG4gIH1cclxuICBwcml2YXRlIGdldERyYWdTeW5jRE9NRWxlbWVudHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kcmFnRHJvcFNlcnZpY2UuZHJhZ1N5bmNHcm91cERpcmVjdGl2ZXMubWFwKGRpciA9PiBkaXIuZWwubmF0aXZlRWxlbWVudCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==