@progress/kendo-angular-utils
Version:
Kendo UI Angular utils component
89 lines (88 loc) • 3.65 kB
TypeScript
/**-----------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the project root for more information
*-------------------------------------------------------------------------------------------*/
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone } from '@angular/core';
import { NormalizedDragEvent } from '@progress/kendo-draggable-common';
import { DragStateService } from './drag-state.service';
import { DropTargetEvent } from './events/drop-target-event';
import * as i0 from "@angular/core";
/**
* Represents the [Kendo UI DropTargetContainer directive for Angular]({% slug api_utils_droptargetcontainerdirective %}).
* Used to configure multiple elements as drop targets.
*
* @example
* ```ts-no-run
* <div kendoDropTargetContainer dropTargetFilter=".my-droptarget">
* <div class="my-droptarget">foo</div>
* </div>
* ```
*/
export declare class DropTargetContainerDirective implements AfterViewInit {
private service;
private element;
private ngZone;
private cdr;
/**
* Specifies a selector for elements within a container which will be configured as drop targets
* ([see example]({% slug drop_target_container %})). The possible values include any
* DOM `selector`.
*/
set dropTargetFilter(value: string);
get dropTargetFilter(): string;
/**
* Specifies whether the Drop Targets within the container will emit the corresponding events upon interaction with a Drag Target.
*/
set dropDisabled(value: boolean);
get dropDisabled(): boolean;
/**
* Fires when a DragTarget element enters the DropTarget.
*/
onDragEnter: EventEmitter<DropTargetEvent>;
/**
* Fires when a DragTarget element is being dragged over the DropTarget.
*/
onDragOver: EventEmitter<DropTargetEvent>;
/**
* Fires when a DragTarget element leaves the DropTarget.
*/
onDragLeave: EventEmitter<DropTargetEvent>;
/**
* Fires when a DragTarget element is dropped over the DropTarget.
*/
onDrop: EventEmitter<DropTargetEvent>;
/**
* Used for notifying the DropTargetContainer that its content has changed.
*/
notify(): void;
constructor(service: DragStateService, element: ElementRef, ngZone: NgZone, cdr: ChangeDetectorRef);
private currentDropTargetElement;
private previousDropTargets;
private _dropTargetFilter;
private _dropDisabled;
private get nativeElement();
ngAfterViewInit(): void;
private get allDropTargets();
/**
* @hidden
*/
handleDragEnter(event: NormalizedDragEvent): void;
/**
* @hidden
*/
handleDragLeave(event: NormalizedDragEvent): void;
/**
* @hidden
*/
handleDragOver(event: NormalizedDragEvent): void;
/**
* @hidden
*/
handleDrop(event: NormalizedDragEvent): void;
private initializeDropTargets;
private emitZoneAwareEvent;
private getDropIndex;
private clearPreviousTargets;
static ɵfac: i0.ɵɵFactoryDeclaration<DropTargetContainerDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<DropTargetContainerDirective, "[kendoDropTargetContainer]", ["kendoDropTargetContainer"], { "dropTargetFilter": { "alias": "dropTargetFilter"; "required": false; }; "dropDisabled": { "alias": "dropDisabled"; "required": false; }; }, { "onDragEnter": "onDragEnter"; "onDragOver": "onDragOver"; "onDragLeave": "onDragLeave"; "onDrop": "onDrop"; }, never, never, true, never>;
}