UNPKG

tiny-essentials

Version:

Collection of small, essential scripts designed to be used across various projects. These simple utilities are crafted for speed, ease of use, and versatility.

91 lines 4.05 kB
export default TinyHtmlSearchInput; /** * TinyHtmlSearchInput is a helper class for managing <input type="search"> elements. * It provides validation and convenient getters/setters for common attributes * such as minlength, maxlength, autocomplete, autocapitalize, pattern, and more. * * @example * const searchInput = new TinyHtmlSearchInput({ * name: 'search', * placeholder: 'Search...', * minlength: 3, * maxlength: 100, * required: true, * autocomplete: 'on' * }); * * @extends TinyHtmlInput */ declare class TinyHtmlSearchInput extends TinyHtmlInput { /** * Creates a new TinyHtmlSearchInput instance. * @param {Object} config - Configuration object. * @param {string} [config.value] - Initial input value. * @param {number} [config.minlength] - Minimum number of characters allowed. * @param {number} [config.maxlength] - Maximum number of characters allowed. * @param {string} [config.name] - The name of the control. * @param {string} [config.pattern] - Regex pattern for validation. * @param {string} [config.autocomplete] - Autocomplete behavior. * @param {'none'|'sentences'|'words'|'characters'} [config.autocapitalize] - Auto-capitalization rule. * @param {string} [config.dirname] - Name for directionality field (text-based inputs). * @param {number} [config.size] - Width of the input in characters. * @param {string} [config.list] - ID of a <datalist> element. * @param {boolean} [config.readonly=false] - Whether the input is read-only. * @param {boolean} [config.required=false] - Whether the input is required. * @param {string} [config.placeholder] - Placeholder text. * @param {string|string[]|Set<string>} [config.tags=[]] - Initial CSS classes. * @param {string} [config.mainClass=''] - Main CSS class. * @throws {TypeError} If any attribute is of the wrong type. */ constructor({ value, list, placeholder, autocapitalize, autocomplete, pattern, minlength, maxlength, readonly, required, size, dirname, name, tags, mainClass, }?: { value?: string | undefined; minlength?: number | undefined; maxlength?: number | undefined; name?: string | undefined; pattern?: string | undefined; autocomplete?: string | undefined; autocapitalize?: "none" | "sentences" | "words" | "characters" | undefined; dirname?: string | undefined; size?: number | undefined; list?: string | undefined; readonly?: boolean | undefined; required?: boolean | undefined; placeholder?: string | undefined; tags?: string | string[] | Set<string> | undefined; mainClass?: string | undefined; }); /** @param {string} value */ set value(value: string); /** @returns {string} */ get value(): string; /** @param {string} list */ set list(list: string); /** @returns {string|null} */ get list(): string | null; /** @param {string} pattern */ set pattern(pattern: string); /** @returns {string|null} */ get pattern(): string | null; /** @param {'none'|'sentences'|'words'|'characters'} autocapitalize */ set autocapitalize(autocapitalize: "none" | "sentences" | "words" | "characters"); /** @returns {string|null} */ get autocapitalize(): string | null; /** @param {string} autocomplete */ set autocomplete(autocomplete: string); /** @returns {string|null} */ get autocomplete(): string | null; /** @param {string} dirname */ set dirname(dirname: string); /** @returns {string|null} */ get dirname(): string | null; /** @param {number} minlength */ set minlength(minlength: number); /** @returns {number|null} */ get minlength(): number | null; /** @param {number} maxlength */ set maxlength(maxlength: number); /** @returns {number|null} */ get maxlength(): number | null; } import TinyHtmlInput from '../../TinyHtmlInput.mjs'; //# sourceMappingURL=TinyHtmlSearchInput.d.mts.map