UNPKG

igniteui-webcomponents

Version:

Ignite UI for Web Components is a complete library of UI components, giving you the ability to build modern web applications using encapsulation and the concept of reusable components in a dependency-free approach.

25 lines (24 loc) 1.29 kB
import { nothing, type TemplateResult } from 'lit'; import type { IgcFormControl } from '../mixins/forms/types.js'; /** Returns a unique id for native input elements rendered by input components. */ export declare function nextInputId(): string; export interface InputShellOptions { /** Active theme name. The `material` theme uses the notch layout. */ theme: string; /** The label text. Empty string skips label rendering. */ label: string; /** The id of the input element used by the label `for` attribute. */ labelId: string; /** Resolved part-name map for the container element. */ containerParts: Record<string, boolean>; /** Renders the native `<input>` element. */ renderInput: () => TemplateResult; /** Optional renderer for components that need extra parts inside the container (e.g. file-input). */ renderFileParts?: () => TemplateResult | typeof nothing; } /** * Renders the shared input chrome (label, prefix, suffix, validator container) * around a leaf-provided input template, switching layouts between the * material notch and the standard flow. */ export declare function renderInputShell(host: IgcFormControl, { containerParts, renderFileParts, renderInput, theme, label, labelId, }: InputShellOptions): TemplateResult;