UNPKG

@spectrum-web-components/picker

Version:

An `<sp-picker>` is an alternative to HTML's `<select>` element. Use [`<sp-menu-item>`](../menu-item) elements to outline the options that will be made available to the user when interacting with the `<sp-picker>` element.

45 lines (44 loc) 1.54 kB
import { ReactiveController, TemplateResult } from '@spectrum-web-components/base'; import { AbstractOverlay } from '@spectrum-web-components/overlay/src/AbstractOverlay'; import { Overlay } from '@spectrum-web-components/overlay/src/Overlay.js'; import { PickerBase } from './Picker.js'; export declare enum InteractionTypes { 'desktop' = 0, 'mobile' = 1 } export declare const SAFARI_FOCUS_RING_CLASS = "remove-focus-ring-safari-hack"; export declare class InteractionController implements ReactiveController { target: HTMLElement; host: PickerBase; abortController: AbortController; preventNextToggle: 'no' | 'maybe' | 'yes'; pointerdownState: boolean; enterKeydownOn: EventTarget | null; container: TemplateResult; get activelyOpening(): boolean; private _open; get open(): boolean; /** * Set `open` */ set open(open: boolean); private _overlay; get overlay(): AbstractOverlay; set overlay(overlay: AbstractOverlay | undefined); type: InteractionTypes; constructor(target: HTMLElement, host: PickerBase); releaseDescription(): void; protected handleBeforetoggle(event: Event & { target: Overlay; newState: 'open' | 'closed'; }): void; initOverlay(): void; handlePointerdown(_event: PointerEvent): void; handleButtonFocus(event: FocusEvent): void; handleActivate(_event: Event): void; init(): void; abort(): void; hostConnected(): void; hostDisconnected(): void; hostUpdated(): void; }