overlaypackage.src.vaadin-overlay-position-mixin.d.ts Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of vaadin-webcomponents Show documentation
Show all versions of vaadin-webcomponents Show documentation
Mvnpm composite: Vaadin webcomponents
The newest version!
/**
* @license
* Copyright (c) 2017 - 2024 Vaadin Ltd.
* This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
*/
import type { Constructor } from '@open-wc/dedupe-mixin';
export declare function PositionMixin>(base: T): Constructor & T;
export declare class PositionMixinClass {
/**
* The element next to which this overlay should be aligned.
* The position of the overlay relative to the positionTarget can be adjusted
* with properties `horizontalAlign`, `verticalAlign`, `noHorizontalOverlap`
* and `noVerticalOverlap`.
*/
positionTarget: HTMLElement;
/**
* When `positionTarget` is set, this property defines whether to align the overlay's
* left or right side to the target element by default.
* Possible values are `start` and `end`.
* RTL is taken into account when interpreting the value.
* The overlay is automatically flipped to the opposite side when it doesn't fit into
* the default side defined by this property.
*
* @attr {start|end} horizontal-align
*/
horizontalAlign: 'end' | 'start';
/**
* When `positionTarget` is set, this property defines whether to align the overlay's
* top or bottom side to the target element by default.
* Possible values are `top` and `bottom`.
* The overlay is automatically flipped to the opposite side when it doesn't fit into
* the default side defined by this property.
*
* @attr {top|bottom} vertical-align
*/
verticalAlign: 'bottom' | 'top';
/**
* When `positionTarget` is set, this property defines whether the overlay should overlap
* the target element in the x-axis, or be positioned right next to it.
*
* @attr {boolean} no-horizontal-overlap
*/
noHorizontalOverlap: boolean;
/**
* When `positionTarget` is set, this property defines whether the overlay should overlap
* the target element in the y-axis, or be positioned right above/below it.
*
* @attr {boolean} no-vertical-overlap
*/
noVerticalOverlap: boolean;
/**
* If the overlay content has no intrinsic height, this property can be used to set
* the minimum vertical space (in pixels) required by the overlay. Setting a value to
* the property effectively disables the content measurement in favor of using this
* fixed value for determining the open direction.
*
* @attr {number} required-vertical-space
*/
requiredVerticalSpace: number;
}