UNPKG

@progress/kendo-angular-utils

Version:

Kendo UI Angular utils component

89 lines (88 loc) 3.56 kB
/**----------------------------------------------------------------------------------------- * 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 %}). * Use this directive to make multiple elements drop targets inside a container. * * @example * ```html * <div kendoDropTargetContainer dropTargetFilter=".my-droptarget"> * <div class="my-droptarget"> * Drop here * </div> * </div> * ``` */ export declare class DropTargetContainerDirective implements AfterViewInit { private service; private element; private ngZone; private cdr; /** * Sets a selector for elements in the container to make them drop targets. [See example]({% slug drop_target_container %}). */ 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 drag target enters a drop target. */ onDragEnter: EventEmitter<DropTargetEvent>; /** * Fires when a drag target is dragged over a drop target. */ onDragOver: EventEmitter<DropTargetEvent>; /** * Fires when a drag target leaves a drop target. */ onDragLeave: EventEmitter<DropTargetEvent>; /** * Fires when a drag target is dropped over a drop target. */ onDrop: EventEmitter<DropTargetEvent>; /** * Notifies 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>; }