@logo-elements/component-base
Version:
A set of mixins used by Logo Elements which is extended from Vaadin components.
47 lines (42 loc) • 1.58 kB
TypeScript
/**
* @license
* Copyright LOGO YAZILIM SANAYİ VE TİCARET A.Ş.
*
* Save to the extent permitted by law, you may not use, copy, modify,
* distribute or create derivative works of this material or any part
* of it without the prior written consent of LOGO YAZILIM SANAYİ VE TİCARET A.Ş. Limited.
* Any reproduction of this material must contain this notice.
*/
// @ts-ignore
import { Constructor } from '@open-wc/dedupe-mixin';
import { DisabledMixinClass } from './disabled-mixin.js';
import { KeyboardMixinClass } from './keyboard-mixin.js';
/**
* A mixin to toggle the `active` attribute.
*
* The attribute is set whenever the user activates the element by a pointer
* or presses an activation key on the element from the keyboard.
*
* The attribute is removed as soon as the element is deactivated
* by the pointer or by releasing the activation key.
*/
export declare function ActiveMixin<T extends Constructor<HTMLElement>>(
base: T
): T & Constructor<ActiveMixinClass> & Constructor<DisabledMixinClass> & Constructor<KeyboardMixinClass>;
export declare class ActiveMixinClass {
/**
* An array of activation keys.
*
* See possible values here:
* https://developer.mozilla.org/ru/docs/Web/API/KeyboardEvent/key/Key_Values
*/
protected readonly _activeKeys: string[];
/**
* Override to define if the component needs to be activated.
*/
protected _shouldSetFocus(event: KeyboardEvent | MouseEvent): boolean;
/**
* Toggles the `active` attribute on the element.
*/
protected _setActive(active: boolean): void;
}