UNPKG

@lion/ui

Version:

A package of extendable web components

177 lines 7.6 kB
declare const LionSelectRich_base: typeof LionListbox & import("@open-wc/dedupe-mixin").Constructor<import("../../overlays/types/OverlayMixinTypes.js").OverlayHost> & Pick<typeof import("../../overlays/types/OverlayMixinTypes.js").OverlayHost, "prototype"> & Pick<typeof import("lit").LitElement, typeof Symbol.metadata | "prototype" | "_$litElement$" | "enabledWarnings" | "enableWarning" | "disableWarning" | "addInitializer" | "_initializers" | "elementProperties" | "properties" | "elementStyles" | "styles" | "observedAttributes" | "createProperty" | "getPropertyOptions" | "shadowRootOptions"> & import("@open-wc/dedupe-mixin").Constructor<import("@open-wc/scoped-elements/lit-element.js").ScopedElementsHost> & import("../../core/src/types.js").ScopedElementsHostV2Constructor & import("@open-wc/dedupe-mixin").Constructor<import("../../core/types/SlotMixinTypes.js").SlotHost> & Pick<typeof import("../../core/types/SlotMixinTypes.js").SlotHost, "prototype">; /** * LionSelectRich: wraps the <lion-listbox> element * * @customElement lion-field-with-select */ export class LionSelectRich extends LionSelectRich_base { static get scopedElements(): { 'lion-select-invoker': typeof LionSelectInvoker; }; /** @type {any} */ static get properties(): any; /** * @enhance FormControlMixin * @protected */ protected _inputGroupInputTemplate(): import("lit-html").TemplateResult<1>; /** * @protected * @type {LionSelectInvoker} */ protected get _invokerNode(): LionSelectInvoker; /** * @protected * @configure FocusMixin */ protected get _focusableNode(): LionSelectInvoker; /** * When invoker has focus, up and down arrow keys changes active state of listbox, * without opening overlay. * @type {Boolean} */ navigateWithinInvoker: boolean; /** * Aligns behavior for 'selectionFollowFocus' and 'navigateWithinInvoker' with * platform. When 'auto' (default), platform is automatically detected * @type {'windows/linux'|'mac'|'auto'} */ interactionMode: 'windows/linux' | 'mac' | 'auto'; singleOption: boolean; /** @protected */ protected _arrowWidth: number; /** * @param {KeyboardEvent} ev * @protected */ protected __onKeyUp(ev: KeyboardEvent): void; /** @private */ private __invokerOnBlur; /** @private */ private __overlayOnHide; /** @private */ private __overlayOnShow; /** @private */ private __invokerOnClick; /** @private */ private __overlayBeforeShow; /** @protected */ protected _listboxOnClick(): void; connectedCallback(): void; /** * @param {string} [name] * @param {unknown} [oldValue] * @param {import('lit').PropertyDeclaration} [options] * @returns {void} */ requestUpdate(name?: string | undefined, oldValue?: unknown, options?: import("lit").PropertyDeclaration<any, any> | undefined): void; /** * @param {import('lit').PropertyValues } changedProperties */ updated(changedProperties: import('lit').PropertyValues): void; /** * @enhance FprmRegistrarMixin make sure children have specific default states when added * @param {LionOption & FormControlHost} child * @param {Number} indexToInsertAt */ addFormElement(child: LionOption & FormControlHost, indexToInsertAt: number): void; __hasInitialSelectedFormElement: boolean | undefined; /** * In the select disabled options are still going to a possible value for example * when prefilling or programmatically setting it. * @override ChoiceGroupMixin * @protected */ protected override _getCheckedElements(): import("../../listbox/src/LionOption.js").LionOption[]; /** @protected */ protected _onFormElementsChanged(): void; /** @private */ private __initInteractionStates; /** @private */ private __toggleInvokerDisabled; /** @private */ private __syncInvokerElement; /** @private */ private __setupInvokerNode; /** @private */ private __setupInvokerNodeEventListener; /** @private */ private __teardownInvokerNode; /** * @configure OverlayMixin * @protected */ protected _defineOverlayConfig(): { visibilityTriggerFunction: undefined; placementMode?: "global" | "local" | undefined; popperConfig?: Partial<import("@popperjs/core/index.js").Options> | undefined; viewportConfig?: import("../../overlays/types/OverlayConfig.js").ViewportConfig | undefined; isBlocking?: boolean | undefined; inheritsReferenceWidth?: "none" | "max" | "full" | "min" | undefined; zIndex?: number | undefined; invokerNode?: HTMLElement | undefined; referenceNode?: HTMLElement | undefined; contentNode?: HTMLElement | undefined; contentWrapperNode?: HTMLElement | undefined; backdropNode?: HTMLElement | undefined; elementToFocusAfterHide?: HTMLElement | undefined; hasBackdrop?: boolean | undefined; preventsScroll?: boolean | undefined; trapsKeyboardFocus?: boolean | undefined; hidesOnEsc?: boolean | undefined; hidesOnOutsideClick?: boolean | undefined; hidesOnOutsideEsc?: boolean | undefined; handlesAccessibility?: boolean | undefined; isTooltip?: boolean | undefined; isAlertDialog?: boolean | undefined; invokerRelation?: "label" | "description" | undefined; _noDialogEl?: Boolean | undefined; }; /** * With no selected element, we should override the inheritsReferenceWidth in most cases. * By default, we will set it to 'min', and then set it back to what it was initially when * something is selected. * As a subclasser you can override this behavior. * @protected */ protected _noDefaultSelectedInheritsWidth(): void; _initialInheritsReferenceWidth: "none" | "max" | "full" | "min" | undefined; /** * Align invoker width with content width * Make sure display is not set to "none" while calculating the content width * @protected */ protected _alignInvokerWidth(): Promise<void>; /** * @configure FormControlMixin * @protected */ protected _onLabelClick(): void; /** * @configure OverlayMixin * @protected */ protected get _overlayInvokerNode(): LionSelectInvoker; /** * @configure OverlayMixin * @protected */ protected get _overlayContentNode(): import("../../listbox/src/LionOptions.js").LionOptions; _isHandlingUserInput: boolean | undefined; /** * Normally, when textbox gets focus or a char is typed, it opens listbox. * In transition phases (like clicking option) we prevent this. * @private */ private __blockListShowDuringTransition; __blockListShow: boolean | undefined; } export type LionOptions = import('../../listbox/src/LionOptions.js').LionOptions; export type LionOption = import('../../listbox/src/LionOption.js').LionOption; export type FormRegisteringHost = import('../../form-core/types/registration/FormRegisteringMixinTypes.js').FormRegisteringHost; export type FormControlHost = import('../../form-core/types/FormControlMixinTypes.js').FormControlHost; export type SlotsMap = import('../../core/types/SlotMixinTypes.js').SlotsMap; import { LionListbox } from "../../../exports/listbox.js"; import { LionSelectInvoker } from "./LionSelectInvoker.js"; export {}; //# sourceMappingURL=LionSelectRich.d.ts.map