@tetacom/ng-components 1.0.55 → 1.0.56

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.
@@ -22,7 +22,7 @@ export declare class DragDropService<T> {
22
22
  private _preview;
23
23
  private _previewRef;
24
24
  private dropped$;
25
- constructor(_document: any, _rendererFactory: RendererFactory2);
25
+ constructor(_document: Document, _rendererFactory: RendererFactory2);
26
26
  setDropTarget(target: DropTarget<T>): void;
27
27
  setStartPosition(point: Point): void;
28
28
  setSelection(instance: DragInstance<T>, container: DragContainerInstance<T>): void;
@@ -4,6 +4,7 @@ import { DragContainerDirective } from './drag-container.directive';
4
4
  import { DragDropService } from './drag-drop.service';
5
5
  import { DropTarget } from './model/drop-target';
6
6
  import { DropEvent } from './model/drop-event';
7
+ import { DragSelection } from './model/drag-selection';
7
8
  import * as i0 from "@angular/core";
8
9
  export declare class DragDirective<T> implements OnInit, OnDestroy {
9
10
  private _container;
@@ -13,6 +14,7 @@ export declare class DragDirective<T> implements OnInit, OnDestroy {
13
14
  data: T;
14
15
  allowDrag: boolean;
15
16
  allowDrop: boolean;
17
+ allowDropPredicate: (data: DragSelection<T>, target: T) => boolean;
16
18
  tetaDragEnter: EventEmitter<DragInstance<T>>;
17
19
  tetaDrop: EventEmitter<DropEvent<T>>;
18
20
  dropTarget: DropTarget<T>;
@@ -27,5 +29,5 @@ export declare class DragDirective<T> implements OnInit, OnDestroy {
27
29
  ngOnInit(): void;
28
30
  ngOnDestroy(): void;
29
31
  static ɵfac: i0.ɵɵFactoryDeclaration<DragDirective<any>, [{ optional: true; skipSelf: true; }, null, null, null]>;
30
- static ɵdir: i0.ɵɵDirectiveDeclaration<DragDirective<any>, "[tetaDrag]", ["drag"], { "data": "tetaDrag"; "allowDrag": "allowDrag"; "allowDrop": "allowDrop"; }, { "tetaDragEnter": "tetaDragEnter"; "tetaDrop": "tetaDrop"; }, never, never, false>;
32
+ static ɵdir: i0.ɵɵDirectiveDeclaration<DragDirective<any>, "[tetaDrag]", ["drag"], { "data": "tetaDrag"; "allowDrag": "allowDrag"; "allowDrop": "allowDrop"; "allowDropPredicate": "allowDropPredicate"; }, { "tetaDragEnter": "tetaDragEnter"; "tetaDrop": "tetaDrop"; }, never, never, false>;
31
33
  }
@@ -85,10 +85,12 @@ export class DragDropService {
85
85
  this.dragProcess = {
86
86
  selection: this.selection
87
87
  };
88
+ this._document.body.style.cursor = 'copy';
88
89
  this._preview = this.createPreview();
89
90
  }
90
91
  stopProcess() {
91
92
  this.destroyPreview();
93
+ this._document.body.style.cursor = 'default';
92
94
  this.dragProcess = null;
93
95
  this.startPosition = null;
94
96
  }
@@ -133,8 +135,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
133
135
  args: [{
134
136
  providedIn: 'root'
135
137
  }]
136
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
138
+ }], ctorParameters: function () { return [{ type: Document, decorators: [{
137
139
  type: Inject,
138
140
  args: [DOCUMENT]
139
141
  }] }, { type: i0.RendererFactory2 }]; } });
140
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1kcm9wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlyZWN0aXZlL2RyYWctZHJvcC9kcmFnLWRyb3Auc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLE1BQU0sRUFBRSxVQUFVLEVBQThCLE1BQU0sZUFBZSxDQUFDO0FBSy9GLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFNLE1BQU0sTUFBTSxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUXRELE1BQU0sT0FBTyxlQUFlO0lBYTFCLFlBQXNDLFNBQWMsRUFDaEMsZ0JBQWtDO1FBRGhCLGNBQVMsR0FBVCxTQUFTLENBQUs7UUFDaEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQVI5QyxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFnQixJQUFJLENBQUMsQ0FBQztRQUN2RCxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBSVosYUFBUSxHQUFHLElBQUksT0FBTyxFQUFnQixDQUFDO1FBSTdDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1QyxLQUFLLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLEVBQ3RDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUN2QyxDQUFDLElBQUksQ0FDSixNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1YsT0FBTyxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FDSCxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQWlCLEVBQUUsRUFBRTtZQUNoQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQzNELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQzthQUNyQjtZQUNELElBQUksSUFBSSxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNyQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3pCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQ0gsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLEVBQ3BDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUN0QyxDQUFDLElBQUksQ0FDSixjQUFjLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUNoQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQWlDLEVBQUUsRUFBRTtZQUNoRCxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQztZQUM3QixJQUFJLE1BQU0sRUFBRTtnQkFDVixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztvQkFDakIsTUFBTTtvQkFDTixTQUFTLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsU0FBUztvQkFDL0MsSUFBSSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7aUJBQzVDLENBQUMsQ0FBQztnQkFDSCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDbkI7WUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7UUFFSCxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsa0JBQWtCLENBQUMsRUFBRSxTQUFTLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQzVFLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDZCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsYUFBYSxDQUFDLE1BQXFCO1FBQ2pDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxLQUFZO1FBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO0lBQzdCLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBeUIsRUFBRSxTQUFtQztRQUN6RSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsU0FBUyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzVGLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxTQUFTLEdBQUc7WUFDZixTQUFTO1lBQ1QsS0FBSyxFQUFFLENBQUMsUUFBUSxDQUFDO1NBQ2xCLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBWSxDQUFDLFFBQXlCLEVBQUUsU0FBbUM7UUFDekUsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDdkMsT0FBTztTQUNSO1FBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRTtZQUM1RCxPQUFPO1NBQ1I7UUFFRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1lBQ2IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3JDO2FBQU07WUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3ZDO0lBQ0gsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBRUQsVUFBVTtRQUNSLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxXQUFXLEdBQUc7WUFDakIsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTO1NBQzFCLENBQUM7UUFDRixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztJQUM1QixDQUFDO0lBRU8sUUFBUSxDQUFDLEtBQWlCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLGVBQWUsRUFBRTtZQUN4RCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQ3RGLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxlQUFlLEVBQUU7Z0JBQ3BELFNBQVMsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxLQUFLO2dCQUMzQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsS0FBSzthQUN2QyxDQUFDLENBQUM7WUFDTCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDOUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNuRCxPQUFPLE9BQU8sQ0FBQztTQUNoQjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFdBQVcsQ0FBQyxLQUFpQjtRQUNuQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsYUFBYSxLQUFLLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlGO0lBQ0gsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxXQUFXLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDL0QsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7U0FDekM7SUFDSCxDQUFDOzs0R0ExSlUsZUFBZSxrQkFhTixRQUFRO2dIQWJqQixlQUFlLGNBRmQsTUFBTTsyRkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBY2MsTUFBTTsyQkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFbWJlZGRlZFZpZXdSZWYsIEluamVjdCwgSW5qZWN0YWJsZSwgUmVuZGVyZXIyLCBSZW5kZXJlckZhY3RvcnkyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7RHJhZ0luc3RhbmNlfSBmcm9tICcuL21vZGVsL2RyYWctaW5zdGFuY2UnO1xuaW1wb3J0IHtEcmFnU2VsZWN0aW9ufSBmcm9tICcuL21vZGVsL2RyYWctc2VsZWN0aW9uJztcbmltcG9ydCB7RHJhZ0NvbnRhaW5lckluc3RhbmNlfSBmcm9tICcuL21vZGVsL2RyYWctY29udGFpbmVyLWluc3RhbmNlJztcbmltcG9ydCB7UG9pbnR9IGZyb20gJy4vbW9kZWwvcG9pbnQnO1xuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBmcm9tRXZlbnQsIG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0LCB0YXB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtmaWx0ZXIsIHdpdGhMYXRlc3RGcm9tfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0RyYWdQcm9jZXNzfSBmcm9tICcuL21vZGVsL2RyYWctcHJvY2Vzcyc7XG5pbXBvcnQge0Ryb3BUYXJnZXR9IGZyb20gJy4vbW9kZWwvZHJvcC10YXJnZXQnO1xuaW1wb3J0IHtEcm9wRXZlbnR9IGZyb20gJy4vbW9kZWwvZHJvcC1ldmVudCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERyYWdEcm9wU2VydmljZTxUPiB7XG4gIHNlbGVjdGlvbjogRHJhZ1NlbGVjdGlvbjxUPjtcbiAgc3RhcnRQb3NpdGlvbjogUG9pbnQ7XG4gIGRyYWdQcm9jZXNzOiBEcmFnUHJvY2VzczxUPjtcbiAgZHJvcFRhcmdldDogT2JzZXJ2YWJsZTxEcm9wVGFyZ2V0PFQ+PjtcbiAgZHJvcHBlZDogT2JzZXJ2YWJsZTxEcm9wRXZlbnQ8VD4+O1xuICBwcml2YXRlIGRyb3BUYXJnZXQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxEcm9wVGFyZ2V0PFQ+PihudWxsKTtcbiAgcHJpdmF0ZSBfZGVsdGEgPSAxMDtcbiAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMjtcbiAgcHJpdmF0ZSBfcHJldmlldzogSFRNTEVsZW1lbnQ7XG4gIHByaXZhdGUgX3ByZXZpZXdSZWY6IEVtYmVkZGVkVmlld1JlZjxhbnk+O1xuICBwcml2YXRlIGRyb3BwZWQkID0gbmV3IFN1YmplY3Q8RHJvcEV2ZW50PFQ+PigpO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBhbnksXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5Mikge1xuICAgIHRoaXMuX3JlbmRlcmVyID0gdGhpcy5fcmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICAgIHRoaXMuZHJvcFRhcmdldCA9IHRoaXMuZHJvcFRhcmdldCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5kcm9wcGVkID0gdGhpcy5kcm9wcGVkJC5hc09ic2VydmFibGUoKTtcbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLl9kb2N1bWVudCwgJ21vdXNlbW92ZScpLFxuICAgICAgZnJvbUV2ZW50KHRoaXMuX2RvY3VtZW50LCAndG91Y2htb3ZlJylcbiAgICApLnBpcGUoXG4gICAgICBmaWx0ZXIoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGFydFBvc2l0aW9uICE9IG51bGw7XG4gICAgICB9KVxuICAgICkuc3Vic2NyaWJlKChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLmRyYWdQcm9jZXNzICYmIHRoaXMuZ2V0RGVsdGEoZXZlbnQpID4gdGhpcy5fZGVsdGEpIHtcbiAgICAgICAgdGhpcy5zdGFydFByb2Nlc3MoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmRyYWdQcm9jZXNzICYmIHRoaXMuX3ByZXZpZXcpIHtcbiAgICAgICAgdGhpcy5tb3ZlUHJldmlldyhldmVudCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLl9kb2N1bWVudCwgJ21vdXNldXAnKSxcbiAgICAgIGZyb21FdmVudCh0aGlzLl9kb2N1bWVudCwgJ3RvdWNoZW5kJylcbiAgICApLnBpcGUoXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLmRyb3BUYXJnZXQpXG4gICAgKS5zdWJzY3JpYmUoKGRhdGE6IFtNb3VzZUV2ZW50LCBEcm9wVGFyZ2V0PFQ+XSkgPT4ge1xuICAgICAgY29uc3QgW2V2ZW50LCB0YXJnZXRdID0gZGF0YTtcbiAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgdGhpcy5kcm9wcGVkJC5uZXh0KHtcbiAgICAgICAgICB0YXJnZXQsXG4gICAgICAgICAgY29udGFpbmVyOiB0aGlzLmRyYWdQcm9jZXNzLnNlbGVjdGlvbi5jb250YWluZXIsXG4gICAgICAgICAgZGF0YTogWy4uLnRoaXMuZHJhZ1Byb2Nlc3Muc2VsZWN0aW9uLml0ZW1zXVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jYW5jZWxEcmFnKCk7XG4gICAgICB9XG4gICAgICB0aGlzLnN0b3BQcm9jZXNzKCk7XG4gICAgfSk7XG5cbiAgICBtZXJnZShmcm9tRXZlbnQodGhpcy5fZG9jdW1lbnQsICd2aXNpYmlsaXR5Y2hhbmdlJyksIGZyb21FdmVudCh3aW5kb3csICdibHVyJykpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jYW5jZWxEcmFnKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHNldERyb3BUYXJnZXQodGFyZ2V0OiBEcm9wVGFyZ2V0PFQ+KSB7XG4gICAgaWYgKHRoaXMuZHJhZ1Byb2Nlc3MpIHtcbiAgICAgIHRoaXMuZHJvcFRhcmdldCQubmV4dCh0YXJnZXQpO1xuICAgIH1cbiAgfVxuXG4gIHNldFN0YXJ0UG9zaXRpb24ocG9pbnQ6IFBvaW50KSB7XG4gICAgdGhpcy5zdGFydFBvc2l0aW9uID0gcG9pbnQ7XG4gIH1cblxuICBzZXRTZWxlY3Rpb24oaW5zdGFuY2U6IERyYWdJbnN0YW5jZTxUPiwgY29udGFpbmVyOiBEcmFnQ29udGFpbmVySW5zdGFuY2U8VD4pIHtcbiAgICBpZiAodGhpcy5zZWxlY3Rpb24/LmNvbnRhaW5lciA9PT0gY29udGFpbmVyICYmIHRoaXMuc2VsZWN0aW9uPy5pdGVtcz8uaW5kZXhPZihpbnN0YW5jZSkgPj0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGlvbiA9IHtcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGl0ZW1zOiBbaW5zdGFuY2VdXG4gICAgfTtcbiAgfVxuXG4gIGFkZFNlbGVjdGlvbihpbnN0YW5jZTogRHJhZ0luc3RhbmNlPFQ+LCBjb250YWluZXI6IERyYWdDb250YWluZXJJbnN0YW5jZTxUPikge1xuICAgIGlmICghdGhpcy5zZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMuc2V0U2VsZWN0aW9uKGluc3RhbmNlLCBjb250YWluZXIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGhpcy5zZWxlY3Rpb24gJiYgdGhpcy5zZWxlY3Rpb24uY29udGFpbmVyICE9PSBjb250YWluZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0aW9uLml0ZW1zLmluZGV4T2YoaW5zdGFuY2UpO1xuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLml0ZW1zLnB1c2goaW5zdGFuY2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbi5pdGVtcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuXG4gIGNsZWFyU2VsZWN0aW9uKCkge1xuICAgIHRoaXMuc2VsZWN0aW9uID0gbnVsbDtcbiAgfVxuXG4gIGNhbmNlbERyYWcoKSB7XG4gICAgdGhpcy5zZXREcm9wVGFyZ2V0KG51bGwpO1xuICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24oKTtcbiAgICB0aGlzLnN0b3BQcm9jZXNzKCk7XG4gIH1cblxuICBzdGFydFByb2Nlc3MoKSB7XG4gICAgdGhpcy5kcmFnUHJvY2VzcyA9IHtcbiAgICAgIHNlbGVjdGlvbjogdGhpcy5zZWxlY3Rpb25cbiAgICB9O1xuICAgIHRoaXMuX3ByZXZpZXcgPSB0aGlzLmNyZWF0ZVByZXZpZXcoKTtcbiAgfVxuXG4gIHN0b3BQcm9jZXNzKCkge1xuICAgIHRoaXMuZGVzdHJveVByZXZpZXcoKTtcbiAgICB0aGlzLmRyYWdQcm9jZXNzID0gbnVsbDtcbiAgICB0aGlzLnN0YXJ0UG9zaXRpb24gPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREZWx0YShldmVudDogTW91c2VFdmVudCkge1xuICAgIHJldHVybiBNYXRoLm1heChNYXRoLmFicyh0aGlzLnN0YXJ0UG9zaXRpb24ueCAtIGV2ZW50LngpLCBNYXRoLmFicyh0aGlzLnN0YXJ0UG9zaXRpb24ueSAtIGV2ZW50LnkpKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUHJldmlldygpIHtcbiAgICBpZiAodGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uY29udGFpbmVyLnByZXZpZXdUZW1wbGF0ZSkge1xuICAgICAgdGhpcy5fcHJldmlld1JlZiA9IHRoaXMuZHJhZ1Byb2Nlc3Muc2VsZWN0aW9uLmNvbnRhaW5lci52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhcbiAgICAgICAgdGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uY29udGFpbmVyLnByZXZpZXdUZW1wbGF0ZSwge1xuICAgICAgICAgICRpbXBsaWNpdDogdGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uaXRlbXMsXG4gICAgICAgICAgZGF0YTogdGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uaXRlbXNcbiAgICAgICAgfSk7XG4gICAgICBjb25zdCBwcmV2aWV3ID0gdGhpcy5fcmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShwcmV2aWV3LCAncG9zaXRpb24nLCAnZml4ZWQnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHByZXZpZXcsICdwb2ludGVyLWV2ZW50cycsICdub25lJyk7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShwcmV2aWV3LCAndG9wJywgJzAnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHByZXZpZXcsICdsZWZ0JywgJzAnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFwcGVuZENoaWxkKHByZXZpZXcsIHRoaXMuX3ByZXZpZXdSZWYucm9vdE5vZGVzWzBdKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHksIHByZXZpZXcpO1xuICAgICAgcmV0dXJuIHByZXZpZXc7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBtb3ZlUHJldmlldyhldmVudDogTW91c2VFdmVudCkge1xuICAgIGlmICh0aGlzLl9wcmV2aWV3KSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLl9wcmV2aWV3LCAndHJhbnNmb3JtJywgYHRyYW5zbGF0ZSgke2V2ZW50Lnh9cHgsICR7ZXZlbnQueX1weClgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lQcmV2aWV3KCkge1xuICAgIGlmICh0aGlzLl9wcmV2aWV3KSB7XG4gICAgICB0aGlzLmRyYWdQcm9jZXNzPy5zZWxlY3Rpb24/LmNvbnRhaW5lcj8udmlld0NvbnRhaW5lcj8uY2xlYXIoKTtcbiAgICAgIHRoaXMuX3ByZXZpZXc/LnJlbW92ZSgpO1xuICAgICAgdGhpcy5fcHJldmlld1JlZj8uZGVzdHJveSgpO1xuICAgICAgdGhpcy5fcHJldmlldyA9IHRoaXMuX3ByZXZpZXdSZWYgPSBudWxsO1xuICAgIH1cbiAgfVxufVxuIl19
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1kcm9wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlyZWN0aXZlL2RyYWctZHJvcC9kcmFnLWRyb3Auc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLE1BQU0sRUFBRSxVQUFVLEVBQThCLE1BQU0sZUFBZSxDQUFDO0FBSy9GLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFNLE1BQU0sTUFBTSxDQUFDO0FBQ2pGLE9BQU8sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7O0FBUXRELE1BQU0sT0FBTyxlQUFlO0lBYTFCLFlBQXNDLFNBQW1CLEVBQ3JDLGdCQUFrQztRQURoQixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ3JDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFSOUMsZ0JBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBZ0IsSUFBSSxDQUFDLENBQUM7UUFDdkQsV0FBTSxHQUFHLEVBQUUsQ0FBQztRQUlaLGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBZ0IsQ0FBQztRQUk3QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNsRCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUMsS0FBSyxDQUNILFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxFQUN0QyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMs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LElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkQsT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTyxXQUFXLENBQUMsS0FBaUI7UUFDbkMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsV0FBVyxFQUFFLGFBQWEsS0FBSyxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM5RjtJQUNILENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJQUFJLENBQUMsV0FBVyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQy9ELElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQzs7NEdBNUpVLGVBQWUsa0JBYU4sUUFBUTtnSEFiakIsZUFBZSxjQUZkLE1BQU07MkZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7MERBY2tELFFBQVE7MEJBQTVDLE1BQU07MkJBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RW1iZWRkZWRWaWV3UmVmLCBJbmplY3QsIEluamVjdGFibGUsIFJlbmRlcmVyMiwgUmVuZGVyZXJGYWN0b3J5Mn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RyYWdJbnN0YW5jZX0gZnJvbSAnLi9tb2RlbC9kcmFnLWluc3RhbmNlJztcbmltcG9ydCB7RHJhZ1NlbGVjdGlvbn0gZnJvbSAnLi9tb2RlbC9kcmFnLXNlbGVjdGlvbic7XG5pbXBvcnQge0RyYWdDb250YWluZXJJbnN0YW5jZX0gZnJvbSAnLi9tb2RlbC9kcmFnLWNvbnRhaW5lci1pbnN0YW5jZSc7XG5pbXBvcnQge1BvaW50fSBmcm9tICcuL21vZGVsL3BvaW50JztcbmltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGFwfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCB3aXRoTGF0ZXN0RnJvbX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtEcmFnUHJvY2Vzc30gZnJvbSAnLi9tb2RlbC9kcmFnLXByb2Nlc3MnO1xuaW1wb3J0IHtEcm9wVGFyZ2V0fSBmcm9tICcuL21vZGVsL2Ryb3AtdGFyZ2V0JztcbmltcG9ydCB7RHJvcEV2ZW50fSBmcm9tICcuL21vZGVsL2Ryb3AtZXZlbnQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEcmFnRHJvcFNlcnZpY2U8VD4ge1xuICBzZWxlY3Rpb246IERyYWdTZWxlY3Rpb248VD47XG4gIHN0YXJ0UG9zaXRpb246IFBvaW50O1xuICBkcmFnUHJvY2VzczogRHJhZ1Byb2Nlc3M8VD47XG4gIGRyb3BUYXJnZXQ6IE9ic2VydmFibGU8RHJvcFRhcmdldDxUPj47XG4gIGRyb3BwZWQ6IE9ic2VydmFibGU8RHJvcEV2ZW50PFQ+PjtcbiAgcHJpdmF0ZSBkcm9wVGFyZ2V0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RHJvcFRhcmdldDxUPj4obnVsbCk7XG4gIHByaXZhdGUgX2RlbHRhID0gMTA7XG4gIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjI7XG4gIHByaXZhdGUgX3ByZXZpZXc6IEhUTUxFbGVtZW50O1xuICBwcml2YXRlIF9wcmV2aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8YW55PjtcbiAgcHJpdmF0ZSBkcm9wcGVkJCA9IG5ldyBTdWJqZWN0PERyb3BFdmVudDxUPj4oKTtcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQsXG4gICAgICAgICAgICAgIHByaXZhdGUgX3JlbmRlcmVyRmFjdG9yeTogUmVuZGVyZXJGYWN0b3J5Mikge1xuICAgIHRoaXMuX3JlbmRlcmVyID0gdGhpcy5fcmVuZGVyZXJGYWN0b3J5LmNyZWF0ZVJlbmRlcmVyKG51bGwsIG51bGwpO1xuICAgIHRoaXMuZHJvcFRhcmdldCA9IHRoaXMuZHJvcFRhcmdldCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgdGhpcy5kcm9wcGVkID0gdGhpcy5kcm9wcGVkJC5hc09ic2VydmFibGUoKTtcbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLl9kb2N1bWVudCwgJ21vdXNlbW92ZScpLFxuICAgICAgZnJvbUV2ZW50KHRoaXMuX2RvY3VtZW50LCAndG91Y2htb3ZlJylcbiAgICApLnBpcGUoXG4gICAgICBmaWx0ZXIoKCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGFydFBvc2l0aW9uICE9IG51bGw7XG4gICAgICB9KVxuICAgICkuc3Vic2NyaWJlKChldmVudDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLmRyYWdQcm9jZXNzICYmIHRoaXMuZ2V0RGVsdGEoZXZlbnQpID4gdGhpcy5fZGVsdGEpIHtcbiAgICAgICAgdGhpcy5zdGFydFByb2Nlc3MoKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmRyYWdQcm9jZXNzICYmIHRoaXMuX3ByZXZpZXcpIHtcbiAgICAgICAgdGhpcy5tb3ZlUHJldmlldyhldmVudCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudCh0aGlzLl9kb2N1bWVudCwgJ21vdXNldXAnKSxcbiAgICAgIGZyb21FdmVudCh0aGlzLl9kb2N1bWVudCwgJ3RvdWNoZW5kJylcbiAgICApLnBpcGUoXG4gICAgICB3aXRoTGF0ZXN0RnJvbSh0aGlzLmRyb3BUYXJnZXQpXG4gICAgKS5zdWJzY3JpYmUoKGRhdGE6IFtNb3VzZUV2ZW50LCBEcm9wVGFyZ2V0PFQ+XSkgPT4ge1xuICAgICAgY29uc3QgW2V2ZW50LCB0YXJnZXRdID0gZGF0YTtcbiAgICAgIGlmICh0YXJnZXQpIHtcbiAgICAgICAgdGhpcy5kcm9wcGVkJC5uZXh0KHtcbiAgICAgICAgICB0YXJnZXQsXG4gICAgICAgICAgY29udGFpbmVyOiB0aGlzLmRyYWdQcm9jZXNzLnNlbGVjdGlvbi5jb250YWluZXIsXG4gICAgICAgICAgZGF0YTogWy4uLnRoaXMuZHJhZ1Byb2Nlc3Muc2VsZWN0aW9uLml0ZW1zXVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jYW5jZWxEcmFnKCk7XG4gICAgICB9XG4gICAgICB0aGlzLnN0b3BQcm9jZXNzKCk7XG4gICAgfSk7XG5cbiAgICBtZXJnZShmcm9tRXZlbnQodGhpcy5fZG9jdW1lbnQsICd2aXNpYmlsaXR5Y2hhbmdlJyksIGZyb21FdmVudCh3aW5kb3csICdibHVyJykpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5jYW5jZWxEcmFnKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHNldERyb3BUYXJnZXQodGFyZ2V0OiBEcm9wVGFyZ2V0PFQ+KSB7XG4gICAgaWYgKHRoaXMuZHJhZ1Byb2Nlc3MpIHtcbiAgICAgIHRoaXMuZHJvcFRhcmdldCQubmV4dCh0YXJnZXQpO1xuICAgIH1cbiAgfVxuXG4gIHNldFN0YXJ0UG9zaXRpb24ocG9pbnQ6IFBvaW50KSB7XG4gICAgdGhpcy5zdGFydFBvc2l0aW9uID0gcG9pbnQ7XG4gIH1cblxuICBzZXRTZWxlY3Rpb24oaW5zdGFuY2U6IERyYWdJbnN0YW5jZTxUPiwgY29udGFpbmVyOiBEcmFnQ29udGFpbmVySW5zdGFuY2U8VD4pIHtcbiAgICBpZiAodGhpcy5zZWxlY3Rpb24/LmNvbnRhaW5lciA9PT0gY29udGFpbmVyICYmIHRoaXMuc2VsZWN0aW9uPy5pdGVtcz8uaW5kZXhPZihpbnN0YW5jZSkgPj0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNlbGVjdGlvbiA9IHtcbiAgICAgIGNvbnRhaW5lcixcbiAgICAgIGl0ZW1zOiBbaW5zdGFuY2VdXG4gICAgfTtcbiAgfVxuXG4gIGFkZFNlbGVjdGlvbihpbnN0YW5jZTogRHJhZ0luc3RhbmNlPFQ+LCBjb250YWluZXI6IERyYWdDb250YWluZXJJbnN0YW5jZTxUPikge1xuICAgIGlmICghdGhpcy5zZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMuc2V0U2VsZWN0aW9uKGluc3RhbmNlLCBjb250YWluZXIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGhpcy5zZWxlY3Rpb24gJiYgdGhpcy5zZWxlY3Rpb24uY29udGFpbmVyICE9PSBjb250YWluZXIpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0aW9uLml0ZW1zLmluZGV4T2YoaW5zdGFuY2UpO1xuICAgIGlmIChpbmRleCA8IDApIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uLml0ZW1zLnB1c2goaW5zdGFuY2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbi5pdGVtcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuXG4gIGNsZWFyU2VsZWN0aW9uKCkge1xuICAgIHRoaXMuc2VsZWN0aW9uID0gbnVsbDtcbiAgfVxuXG4gIGNhbmNlbERyYWcoKSB7XG4gICAgdGhpcy5zZXREcm9wVGFyZ2V0KG51bGwpO1xuICAgIHRoaXMuY2xlYXJTZWxlY3Rpb24oKTtcbiAgICB0aGlzLnN0b3BQcm9jZXNzKCk7XG4gIH1cblxuICBzdGFydFByb2Nlc3MoKSB7XG4gICAgdGhpcy5kcmFnUHJvY2VzcyA9IHtcbiAgICAgIHNlbGVjdGlvbjogdGhpcy5zZWxlY3Rpb25cbiAgICB9O1xuICAgIHRoaXMuX2RvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yID0gJ2NvcHknO1xuICAgIHRoaXMuX3ByZXZpZXcgPSB0aGlzLmNyZWF0ZVByZXZpZXcoKTtcbiAgfVxuXG4gIHN0b3BQcm9jZXNzKCkge1xuICAgIHRoaXMuZGVzdHJveVByZXZpZXcoKTtcbiAgICB0aGlzLl9kb2N1bWVudC5ib2R5LnN0eWxlLmN1cnNvciA9ICdkZWZhdWx0JztcbiAgICB0aGlzLmRyYWdQcm9jZXNzID0gbnVsbDtcbiAgICB0aGlzLnN0YXJ0UG9zaXRpb24gPSBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREZWx0YShldmVudDogTW91c2VFdmVudCkge1xuICAgIHJldHVybiBNYXRoLm1heChNYXRoLmFicyh0aGlzLnN0YXJ0UG9zaXRpb24ueCAtIGV2ZW50LngpLCBNYXRoLmFicyh0aGlzLnN0YXJ0UG9zaXRpb24ueSAtIGV2ZW50LnkpKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUHJldmlldygpIHtcbiAgICBpZiAodGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uY29udGFpbmVyLnByZXZpZXdUZW1wbGF0ZSkge1xuICAgICAgdGhpcy5fcHJldmlld1JlZiA9IHRoaXMuZHJhZ1Byb2Nlc3Muc2VsZWN0aW9uLmNvbnRhaW5lci52aWV3Q29udGFpbmVyLmNyZWF0ZUVtYmVkZGVkVmlldyhcbiAgICAgICAgdGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uY29udGFpbmVyLnByZXZpZXdUZW1wbGF0ZSwge1xuICAgICAgICAgICRpbXBsaWNpdDogdGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uaXRlbXMsXG4gICAgICAgICAgZGF0YTogdGhpcy5kcmFnUHJvY2Vzcy5zZWxlY3Rpb24uaXRlbXNcbiAgICAgICAgfSk7XG4gICAgICBjb25zdCBwcmV2aWV3ID0gdGhpcy5fcmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShwcmV2aWV3LCAncG9zaXRpb24nLCAnZml4ZWQnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHByZXZpZXcsICdwb2ludGVyLWV2ZW50cycsICdub25lJyk7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZShwcmV2aWV3LCAndG9wJywgJzAnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNldFN0eWxlKHByZXZpZXcsICdsZWZ0JywgJzAnKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFwcGVuZENoaWxkKHByZXZpZXcsIHRoaXMuX3ByZXZpZXdSZWYucm9vdE5vZGVzWzBdKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHksIHByZXZpZXcpO1xuICAgICAgcmV0dXJuIHByZXZpZXc7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBtb3ZlUHJldmlldyhldmVudDogTW91c2VFdmVudCkge1xuICAgIGlmICh0aGlzLl9wcmV2aWV3KSB7XG4gICAgICB0aGlzLl9yZW5kZXJlci5zZXRTdHlsZSh0aGlzLl9wcmV2aWV3LCAndHJhbnNmb3JtJywgYHRyYW5zbGF0ZSgke2V2ZW50Lnh9cHgsICR7ZXZlbnQueX1weClgKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lQcmV2aWV3KCkge1xuICAgIGlmICh0aGlzLl9wcmV2aWV3KSB7XG4gICAgICB0aGlzLmRyYWdQcm9jZXNzPy5zZWxlY3Rpb24/LmNvbnRhaW5lcj8udmlld0NvbnRhaW5lcj8uY2xlYXIoKTtcbiAgICAgIHRoaXMuX3ByZXZpZXc/LnJlbW92ZSgpO1xuICAgICAgdGhpcy5fcHJldmlld1JlZj8uZGVzdHJveSgpO1xuICAgICAgdGhpcy5fcHJldmlldyA9IHRoaXMuX3ByZXZpZXdSZWYgPSBudWxsO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -21,7 +21,7 @@ export class DragDirective {
21
21
  return this._dragService?.selection?.items?.indexOf(this.instance) >= 0;
22
22
  }
23
23
  get isDropTarget() {
24
- return this.dropTarget === this.instance;
24
+ return this.dropTarget === this.instance && this.allowDrop;
25
25
  }
26
26
  mousedown(event) {
27
27
  if (!this.allowDrag) {
@@ -41,7 +41,9 @@ export class DragDirective {
41
41
  mouseenter(event) {
42
42
  if (this.allowDrop) {
43
43
  event.stopPropagation();
44
- this._dragService.setDropTarget(this.instance);
44
+ if (this.allowDropPredicate === undefined || this.allowDropPredicate(this._dragService.selection, this.data)) {
45
+ this._dragService.setDropTarget(this.instance);
46
+ }
45
47
  }
46
48
  }
47
49
  mouseleave(event) {
@@ -74,7 +76,7 @@ export class DragDirective {
74
76
  }
75
77
  }
76
78
  DragDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DragDirective, deps: [{ token: DragContainerDirective, optional: true, skipSelf: true }, { token: i1.DragDropService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
77
- DragDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: DragDirective, selector: "[tetaDrag]", inputs: { data: ["tetaDrag", "data"], allowDrag: "allowDrag", allowDrop: "allowDrop" }, outputs: { tetaDragEnter: "tetaDragEnter", tetaDrop: "tetaDrop" }, host: { listeners: { "mousedown": "mousedown($event)", "touchstart": "mousedown($event)", "mouseenter": "mouseenter($event)", "mouseleave": "mouseleave($event)" }, properties: { "style.userSelect": "\"none\"", "class.teta-drag-item": "\"true\"", "class.teta_draggable_item": "this.allowDrag", "class.teta_droppable_item": "this.allowDrop", "class.teta-drag-selection": "this.selection", "class.teta-drop-target": "this.isDropTarget" } }, exportAs: ["drag"], ngImport: i0 });
79
+ DragDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: DragDirective, selector: "[tetaDrag]", inputs: { data: ["tetaDrag", "data"], allowDrag: "allowDrag", allowDrop: "allowDrop", allowDropPredicate: "allowDropPredicate" }, outputs: { tetaDragEnter: "tetaDragEnter", tetaDrop: "tetaDrop" }, host: { listeners: { "mousedown": "mousedown($event)", "touchstart": "mousedown($event)", "mouseenter": "mouseenter($event)", "mouseleave": "mouseleave($event)" }, properties: { "style.userSelect": "\"none\"", "class.teta-drag-item": "\"true\"", "class.teta_draggable_item": "this.allowDrag", "class.teta_droppable_item": "this.allowDrop", "class.teta-drag-selection": "this.selection", "class.teta-drop-target": "this.isDropTarget" } }, exportAs: ["drag"], ngImport: i0 });
78
80
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DragDirective, decorators: [{
79
81
  type: Directive,
80
82
  args: [{
@@ -105,6 +107,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
105
107
  args: ['class.teta_droppable_item']
106
108
  }, {
107
109
  type: Input
110
+ }], allowDropPredicate: [{
111
+ type: Input
108
112
  }], tetaDragEnter: [{
109
113
  type: Output
110
114
  }], tetaDrop: [{
@@ -128,4 +132,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
128
132
  type: HostListener,
129
133
  args: ['mouseleave', ['$event']]
130
134
  }] } });
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlyZWN0aXZlL2RyYWctZHJvcC9kcmFnLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsUUFBUSxFQUNSLE1BQU0sRUFDTixRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBR2xFLE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFXakQsTUFBTSxPQUFPLGFBQWE7SUF3RHhCLFlBQTRFLFVBQXFDLEVBQzdGLFlBQWdDLEVBQ2hDLEtBQWEsRUFDYixJQUF1QjtRQUhpQyxlQUFVLEdBQVYsVUFBVSxDQUEyQjtRQUM3RixpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUFDaEMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLFNBQUksR0FBSixJQUFJLENBQW1CO1FBdkRsQyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBR2pCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFaEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUNwRCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFlOUMsV0FBTSxHQUFHLElBQUksQ0FBQztJQW1DdEIsQ0FBQztJQTdDRCxJQUNJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFDSSxZQUFZO1FBQ2Qs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LFFBQVE7d0JBQzlCLHdCQUF3QixFQUFFLFFBQVE7cUJBQ25DO2lCQUNGOzswQkF5RGMsTUFBTTsyQkFBQyxzQkFBc0I7OzBCQUFHLFFBQVE7OzBCQUFJLFFBQVE7K0hBdkQ5QyxJQUFJO3NCQUF0QixLQUFLO3VCQUFDLFVBQVU7Z0JBR1IsU0FBUztzQkFEakIsV0FBVzt1QkFBQywyQkFBMkI7O3NCQUN2QyxLQUFLO2dCQUdHLFNBQVM7c0JBRGpCLFdBQVc7dUJBQUMsMkJBQTJCOztzQkFDdkMsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBTUgsU0FBUztzQkFEWixXQUFXO3VCQUFDLDJCQUEyQjtnQkFNcEMsWUFBWTtzQkFEZixXQUFXO3VCQUFDLHdCQUF3QjtnQkFTckMsU0FBUztzQkFGUixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ3BDLFlBQVk7dUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWlCdEMsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFRRSxVQUFVO3NCQUFqRCxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2tpcFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RyYWdJbnN0YW5jZX0gZnJvbSAnLi9tb2RlbC9kcmFnLWluc3RhbmNlJztcbmltcG9ydCB7RHJhZ0NvbnRhaW5lckRpcmVjdGl2ZX0gZnJvbSAnLi9kcmFnLWNvbnRhaW5lci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtEcmFnRHJvcFNlcnZpY2V9IGZyb20gJy4vZHJhZy1kcm9wLnNlcnZpY2UnO1xuaW1wb3J0IHtEcm9wVGFyZ2V0fSBmcm9tICcuL21vZGVsL2Ryb3AtdGFyZ2V0JztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlV2hpbGV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RHJvcEV2ZW50fSBmcm9tICcuL21vZGVsL2Ryb3AtZXZlbnQnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbdGV0YURyYWddJyxcbiAgZXhwb3J0QXM6ICdkcmFnJyxcbiAgaG9zdDoge1xuICAgICdbc3R5bGUudXNlclNlbGVjdF0nOiAnXCJub25lXCInLFxuICAgICdbY2xhc3MudGV0YS1kcmFnLWl0ZW1dJzogJ1widHJ1ZVwiJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIERyYWdEaXJlY3RpdmU8VD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgndGV0YURyYWcnKSBkYXRhOiBUO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudGV0YV9kcmFnZ2FibGVfaXRlbScpXG4gIEBJbnB1dCgpIGFsbG93RHJhZyA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZXRhX2Ryb3BwYWJsZV9pdGVtJylcbiAgQElucHV0KCkgYWxsb3dEcm9wID0gdHJ1ZTtcblxuICBAT3V0cHV0KCkgdGV0YURyYWdFbnRlciA9IG5ldyBFdmVudEVtaXR0ZXI8RHJhZ0luc3RhbmNlPFQ+PigpO1xuICBAT3V0cHV0KCkgdGV0YURyb3AgPSBuZXcgRXZlbnRFbWl0dGVyPERyb3BFdmVudDxUPj4oKTtcblxuICBkcm9wVGFyZ2V0OiBEcm9wVGFyZ2V0PFQ+O1xuICBpbnN0YW5jZTogRHJhZ0luc3RhbmNlPFQ+O1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudGV0YS1kcmFnLXNlbGVjdGlvbicpXG4gIGdldCBzZWxlY3Rpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RyYWdTZXJ2aWNlPy5zZWxlY3Rpb24/Lml0ZW1zPy5pbmRleE9mKHRoaXMuaW5zdGFuY2UpID49IDA7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRldGEtZHJvcC10YXJnZXQnKVxuICBnZXQgaXNEcm9wVGFyZ2V0KCkge1xuICAgIHJldHVybiB0aGlzLmRyb3BUYXJnZXQgPT09IHRoaXMuaW5zdGFuY2U7XG4gIH1cblxuICBwcml2YXRlIF9hbGl2ZSA9IHRydWU7XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnXSlcbiAgQEhvc3RMaXN0ZW5lcigndG91Y2hzdGFydCcsIFsnJGV2ZW50J10pXG4gIG1vdXNlZG93bihldmVudCkge1xuICAgIGlmKCF0aGlzLmFsbG93RHJhZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoZXZlbnQuY3RybEtleSAmJiB0aGlzLl9jb250YWluZXI/Lm11bHRpcGxlKSB7XG4gICAgICB0aGlzLl9kcmFnU2VydmljZS5hZGRTZWxlY3Rpb24odGhpcy5pbnN0YW5jZSwgdGhpcy5fY29udGFpbmVyPy5pbnN0YW5jZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2RyYWdTZXJ2aWNlLnNldFNlbGVjdGlvbih0aGlzLmluc3RhbmNlLCB0aGlzLl9jb250YWluZXI/Lmluc3RhbmNlKTtcbiAgICB9XG4gICAgdGhpcy5fZHJhZ1NlcnZpY2Uuc2V0U3RhcnRQb3NpdGlvbih7XG4gICAgICB4OiBldmVudC54LFxuICAgICAgeTogZXZlbnQueVxuICAgIH0pO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicsIFsnJGV2ZW50J10pXG4gIG1vdXNlZW50ZXIoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICBpZiAodGhpcy5hbGxvd0Ryb3ApIHtcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgdGhpcy5fZHJhZ1NlcnZpY2Uuc2V0RHJvcFRhcmdldCh0aGlzLmluc3RhbmNlKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJywgWyckZXZlbnQnXSkgbW91c2VsZWF2ZShldmVudCkge1xuICAgIHRoaXMuX2RyYWdTZXJ2aWNlLnNldERyb3BUYXJnZXQobnVsbCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KERyYWdDb250YWluZXJEaXJlY3RpdmUpIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIHByaXZhdGUgX2NvbnRhaW5lcjogRHJhZ0NvbnRhaW5lckRpcmVjdGl2ZTxUPixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfZHJhZ1NlcnZpY2U6IERyYWdEcm9wU2VydmljZTxUPixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfem9uZTogTmdab25lLFxuICAgICAgICAgICAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluc3RhbmNlID0gbmV3IERyYWdJbnN0YW5jZSh7XG4gICAgICBjb250YWluZXI6IHRoaXMuX2NvbnRhaW5lcj8uaW5zdGFuY2UsXG4gICAgICBkYXRhOiB0aGlzLmRhdGFcbiAgICB9KTtcbiAgICB0aGlzLl9kcmFnU2VydmljZS5kcm9wVGFyZ2V0LnBpcGUodGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSlcbiAgICAgIC5zdWJzY3JpYmUoKHRhcmdldCkgPT4ge1xuICAgICAgICB0aGlzLmRyb3BUYXJnZXQgPSB0YXJnZXQ7XG4gICAgICAgIGlmICh0YXJnZXQgPT09IHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgICAgICB0aGlzLnRldGFEcmFnRW50ZXIuZW1pdCh0aGlzLmluc3RhbmNlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9KTtcbiAgICB0aGlzLl9kcmFnU2VydmljZS5kcm9wcGVkLnBpcGUodGFrZVdoaWxlKCgpID0+IHRoaXMuX2FsaXZlKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBmaWx0ZXIoKGV2ZW50OiBEcm9wRXZlbnQ8VD4pID0+IHtcbiAgICAgICAgICByZXR1cm4gZXZlbnQudGFyZ2V0ID09PSB0aGlzLmluc3RhbmNlO1xuICAgICAgICB9KSlcbiAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMudGV0YURyb3AuZW1pdChldmVudCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2FsaXZlID0gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
135
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGlyZWN0aXZlL2RyYWctZHJvcC9kcmFnLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsUUFBUSxFQUNSLE1BQU0sRUFDTixRQUFRLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHVCQUF1QixDQUFDO0FBQ25ELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBR2xFLE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFZakQsTUFBTSxPQUFPLGFBQWE7SUE0RHhCLFlBQTRFLFVBQXFDLEVBQzdGLFlBQWdDLEVBQ2hDLEtBQWEsRUFDYixJQUF1QjtRQUhpQyxlQUFVLEdBQVYsVUFBVSxDQUEyQjtRQUM3RixpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUFDaEMsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLFNBQUksR0FBSixJQUFJLENBQW1CO1FBM0RsQyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBR2pCLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFJaEIsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUNwRCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFlOUMsV0FBTSxHQUFHLElBQUksQ0FBQztJQXFDdEIsQ0FBQztJQS9DRCxJQUNJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQsSUFDSSxZQUFZO1FBQ2Qs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OzBHQTVGVSxhQUFhLGtCQTRESixzQkFBc0I7OEZBNUQvQixhQUFhOzJGQUFiLGFBQWE7a0JBUnpCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFFBQVEsRUFBRSxNQUFNO29CQUNoQixJQUFJLEVBQUU7d0JBQ0osb0JBQW9CLEVBQUUsUUFBUTt3QkFDOUIsd0JBQXdCLEVBQUUsUUFBUTtxQkFDbkM7aUJBQ0Y7OzBCQTZEYyxNQUFNOzJCQUFDLHNCQUFzQjs7MEJBQUcsUUFBUTs7MEJBQUksUUFBUTsrSEEzRDlDLElBQUk7c0JBQXRCLEtBQUs7dUJBQUMsVUFBVTtnQkFHUixTQUFTO3NCQURqQixXQUFXO3VCQUFDLDJCQUEyQjs7c0JBQ3ZDLEtBQUs7Z0JBR0csU0FBUztzQkFEakIsV0FBVzt1QkFBQywyQkFBMkI7O3NCQUN2QyxLQUFLO2dCQUVHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFFSSxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBTUgsU0FBUztzQkFEWixXQUFXO3VCQUFDLDJCQUEyQjtnQkFNcEMsWUFBWTtzQkFEZixXQUFXO3VCQUFDLHdCQUF3QjtnQkFTckMsU0FBUztzQkFGUixZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7c0JBQ3BDLFlBQVk7dUJBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWlCdEMsVUFBVTtzQkFEVCxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFVRSxVQUFVO3NCQUFqRCxZQUFZO3VCQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBJbnB1dCwgTmdab25lLCBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgU2tpcFNlbGZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0RyYWdJbnN0YW5jZX0gZnJvbSAnLi9tb2RlbC9kcmFnLWluc3RhbmNlJztcbmltcG9ydCB7RHJhZ0NvbnRhaW5lckRpcmVjdGl2ZX0gZnJvbSAnLi9kcmFnLWNvbnRhaW5lci5kaXJlY3RpdmUnO1xuaW1wb3J0IHtEcmFnRHJvcFNlcnZpY2V9IGZyb20gJy4vZHJhZy1kcm9wLnNlcnZpY2UnO1xuaW1wb3J0IHtEcm9wVGFyZ2V0fSBmcm9tICcuL21vZGVsL2Ryb3AtdGFyZ2V0JztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlV2hpbGV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RHJvcEV2ZW50fSBmcm9tICcuL21vZGVsL2Ryb3AtZXZlbnQnO1xuaW1wb3J0IHtEcmFnU2VsZWN0aW9ufSBmcm9tICcuL21vZGVsL2RyYWctc2VsZWN0aW9uJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RldGFEcmFnXScsXG4gIGV4cG9ydEFzOiAnZHJhZycsXG4gIGhvc3Q6IHtcbiAgICAnW3N0eWxlLnVzZXJTZWxlY3RdJzogJ1wibm9uZVwiJyxcbiAgICAnW2NsYXNzLnRldGEtZHJhZy1pdGVtXSc6ICdcInRydWVcIidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBEcmFnRGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoJ3RldGFEcmFnJykgZGF0YTogVDtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRldGFfZHJhZ2dhYmxlX2l0ZW0nKVxuICBASW5wdXQoKSBhbGxvd0RyYWcgPSB0cnVlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudGV0YV9kcm9wcGFibGVfaXRlbScpXG4gIEBJbnB1dCgpIGFsbG93RHJvcCA9IHRydWU7XG5cbiAgQElucHV0KCkgYWxsb3dEcm9wUHJlZGljYXRlOiAoZGF0YTogRHJhZ1NlbGVjdGlvbjxUPiwgdGFyZ2V0OiBUKSA9PiBib29sZWFuO1xuXG4gIEBPdXRwdXQoKSB0ZXRhRHJhZ0VudGVyID0gbmV3IEV2ZW50RW1pdHRlcjxEcmFnSW5zdGFuY2U8VD4+KCk7XG4gIEBPdXRwdXQoKSB0ZXRhRHJvcCA9IG5ldyBFdmVudEVtaXR0ZXI8RHJvcEV2ZW50PFQ+PigpO1xuXG4gIGRyb3BUYXJnZXQ6IERyb3BUYXJnZXQ8VD47XG4gIGluc3RhbmNlOiBEcmFnSW5zdGFuY2U8VD47XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50ZXRhLWRyYWctc2VsZWN0aW9uJylcbiAgZ2V0IHNlbGVjdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5fZHJhZ1NlcnZpY2U/LnNlbGVjdGlvbj8uaXRlbXM/LmluZGV4T2YodGhpcy5pbnN0YW5jZSkgPj0gMDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MudGV0YS1kcm9wLXRhcmdldCcpXG4gIGdldCBpc0Ryb3BUYXJnZXQoKSB7XG4gICAgcmV0dXJuIHRoaXMuZHJvcFRhcmdldCA9PT0gdGhpcy5pbnN0YW5jZSAmJiB0aGlzLmFsbG93RHJvcDtcbiAgfVxuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWRvd24nLCBbJyRldmVudCddKVxuICBASG9zdExpc3RlbmVyKCd0b3VjaHN0YXJ0JywgWyckZXZlbnQnXSlcbiAgbW91c2Vkb3duKGV2ZW50KSB7XG4gICAgaWYoIXRoaXMuYWxsb3dEcmFnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChldmVudC5jdHJsS2V5ICYmIHRoaXMuX2NvbnRhaW5lcj8ubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuX2RyYWdTZXJ2aWNlLmFkZFNlbGVjdGlvbih0aGlzLmluc3RhbmNlLCB0aGlzLl9jb250YWluZXI/Lmluc3RhbmNlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5fZHJhZ1NlcnZpY2Uuc2V0U2VsZWN0aW9uKHRoaXMuaW5zdGFuY2UsIHRoaXMuX2NvbnRhaW5lcj8uaW5zdGFuY2UpO1xuICAgIH1cbiAgICB0aGlzLl9kcmFnU2VydmljZS5zZXRTdGFydFBvc2l0aW9uKHtcbiAgICAgIHg6IGV2ZW50LngsXG4gICAgICB5OiBldmVudC55XG4gICAgfSk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWVudGVyJywgWyckZXZlbnQnXSlcbiAgbW91c2VlbnRlcihldmVudDogTW91c2VFdmVudCkge1xuICAgIGlmICh0aGlzLmFsbG93RHJvcCkge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBpZih0aGlzLmFsbG93RHJvcFByZWRpY2F0ZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuYWxsb3dEcm9wUHJlZGljYXRlKHRoaXMuX2RyYWdTZXJ2aWNlLnNlbGVjdGlvbiwgdGhpcy5kYXRhKSkge1xuICAgICAgICB0aGlzLl9kcmFnU2VydmljZS5zZXREcm9wVGFyZ2V0KHRoaXMuaW5zdGFuY2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ21vdXNlbGVhdmUnLCBbJyRldmVudCddKSBtb3VzZWxlYXZlKGV2ZW50KSB7XG4gICAgdGhpcy5fZHJhZ1NlcnZpY2Uuc2V0RHJvcFRhcmdldChudWxsKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoRHJhZ0NvbnRhaW5lckRpcmVjdGl2ZSkgQE9wdGlvbmFsKCkgQFNraXBTZWxmKCkgcHJpdmF0ZSBfY29udGFpbmVyOiBEcmFnQ29udGFpbmVyRGlyZWN0aXZlPFQ+LFxuICAgICAgICAgICAgICBwcml2YXRlIF9kcmFnU2VydmljZTogRHJhZ0Ryb3BTZXJ2aWNlPFQ+LFxuICAgICAgICAgICAgICBwcml2YXRlIF96b25lOiBOZ1pvbmUsXG4gICAgICAgICAgICAgIHByaXZhdGUgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5zdGFuY2UgPSBuZXcgRHJhZ0luc3RhbmNlKHtcbiAgICAgIGNvbnRhaW5lcjogdGhpcy5fY29udGFpbmVyPy5pbnN0YW5jZSxcbiAgICAgIGRhdGE6IHRoaXMuZGF0YVxuICAgIH0pO1xuICAgIHRoaXMuX2RyYWdTZXJ2aWNlLmRyb3BUYXJnZXQucGlwZSh0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnN1YnNjcmliZSgodGFyZ2V0KSA9PiB7XG4gICAgICAgIHRoaXMuZHJvcFRhcmdldCA9IHRhcmdldDtcbiAgICAgICAgaWYgKHRhcmdldCA9PT0gdGhpcy5pbnN0YW5jZSkge1xuICAgICAgICAgIHRoaXMudGV0YURyYWdFbnRlci5lbWl0KHRoaXMuaW5zdGFuY2UpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuICAgIHRoaXMuX2RyYWdTZXJ2aWNlLmRyb3BwZWQucGlwZSh0YWtlV2hpbGUoKCkgPT4gdGhpcy5fYWxpdmUpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIGZpbHRlcigoZXZlbnQ6IERyb3BFdmVudDxUPikgPT4ge1xuICAgICAgICAgIHJldHVybiBldmVudC50YXJnZXQgPT09IHRoaXMuaW5zdGFuY2U7XG4gICAgICAgIH0pKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy50ZXRhRHJvcC5lbWl0KGV2ZW50KTtcbiAgICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fYWxpdmUgPSBmYWxzZTtcbiAgfVxufVxuIl19
@@ -11364,10 +11364,12 @@ class DragDropService {
11364
11364
  this.dragProcess = {
11365
11365
  selection: this.selection
11366
11366
  };
11367
+ this._document.body.style.cursor = 'copy';
11367
11368
  this._preview = this.createPreview();
11368
11369
  }
11369
11370
  stopProcess() {
11370
11371
  this.destroyPreview();
11372
+ this._document.body.style.cursor = 'default';
11371
11373
  this.dragProcess = null;
11372
11374
  this.startPosition = null;
11373
11375
  }
@@ -11414,7 +11416,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
11414
11416
  providedIn: 'root'
11415
11417
  }]
11416
11418
  }], ctorParameters: function () {
11417
- return [{ type: undefined, decorators: [{
11419
+ return [{ type: Document, decorators: [{
11418
11420
  type: Inject,
11419
11421
  args: [DOCUMENT]
11420
11422
  }] }, { type: i0.RendererFactory2 }];
@@ -11524,7 +11526,7 @@ class DragDirective {
11524
11526
  return ((_c = (_b = (_a = this._dragService) === null || _a === void 0 ? void 0 : _a.selection) === null || _b === void 0 ? void 0 : _b.items) === null || _c === void 0 ? void 0 : _c.indexOf(this.instance)) >= 0;
11525
11527
  }
11526
11528
  get isDropTarget() {
11527
- return this.dropTarget === this.instance;
11529
+ return this.dropTarget === this.instance && this.allowDrop;
11528
11530
  }
11529
11531
  mousedown(event) {
11530
11532
  var _a, _b, _c;
@@ -11545,7 +11547,9 @@ class DragDirective {
11545
11547
  mouseenter(event) {
11546
11548
  if (this.allowDrop) {
11547
11549
  event.stopPropagation();
11548
- this._dragService.setDropTarget(this.instance);
11550
+ if (this.allowDropPredicate === undefined || this.allowDropPredicate(this._dragService.selection, this.data)) {
11551
+ this._dragService.setDropTarget(this.instance);
11552
+ }
11549
11553
  }
11550
11554
  }
11551
11555
  mouseleave(event) {
@@ -11579,7 +11583,7 @@ class DragDirective {
11579
11583
  }
11580
11584
  }
11581
11585
  DragDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DragDirective, deps: [{ token: DragContainerDirective, optional: true, skipSelf: true }, { token: DragDropService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
11582
- DragDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: DragDirective, selector: "[tetaDrag]", inputs: { data: ["tetaDrag", "data"], allowDrag: "allowDrag", allowDrop: "allowDrop" }, outputs: { tetaDragEnter: "tetaDragEnter", tetaDrop: "tetaDrop" }, host: { listeners: { "mousedown": "mousedown($event)", "touchstart": "mousedown($event)", "mouseenter": "mouseenter($event)", "mouseleave": "mouseleave($event)" }, properties: { "style.userSelect": "\"none\"", "class.teta-drag-item": "\"true\"", "class.teta_draggable_item": "this.allowDrag", "class.teta_droppable_item": "this.allowDrop", "class.teta-drag-selection": "this.selection", "class.teta-drop-target": "this.isDropTarget" } }, exportAs: ["drag"], ngImport: i0 });
11586
+ DragDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: DragDirective, selector: "[tetaDrag]", inputs: { data: ["tetaDrag", "data"], allowDrag: "allowDrag", allowDrop: "allowDrop", allowDropPredicate: "allowDropPredicate" }, outputs: { tetaDragEnter: "tetaDragEnter", tetaDrop: "tetaDrop" }, host: { listeners: { "mousedown": "mousedown($event)", "touchstart": "mousedown($event)", "mouseenter": "mouseenter($event)", "mouseleave": "mouseleave($event)" }, properties: { "style.userSelect": "\"none\"", "class.teta-drag-item": "\"true\"", "class.teta_draggable_item": "this.allowDrag", "class.teta_droppable_item": "this.allowDrop", "class.teta-drag-selection": "this.selection", "class.teta-drop-target": "this.isDropTarget" } }, exportAs: ["drag"], ngImport: i0 });
11583
11587
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: DragDirective, decorators: [{
11584
11588
  type: Directive,
11585
11589
  args: [{
@@ -11612,6 +11616,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
11612
11616
  args: ['class.teta_droppable_item']
11613
11617
  }, {
11614
11618
  type: Input
11619
+ }], allowDropPredicate: [{
11620
+ type: Input
11615
11621
  }], tetaDragEnter: [{
11616
11622
  type: Output
11617
11623
  }], tetaDrop: [{