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.

75 lines 3.14 kB
export default TinyHtmlTimeInput; /** * TinyHtmlTimeInput is a helper class for managing `<input type="time">` elements. * It provides validated getters and setters for all relevant attributes such as * value, min, max, step, autocomplete, and more. * * @example * const timeInput = new TinyHtmlTimeInput({ * value: "12:30", * min: "08:00", * max: "18:00", * step: 60, * required: true, * name: "appointmentTime" * }); */ declare class TinyHtmlTimeInput extends TinyHtmlInput { /** * Creates a new TinyHtmlTimeInput instance. * @param {Object} config - Configuration object. * @param {string} [config.value] - Initial time value in "HH:MM" format. * @param {string} [config.min] - Minimum allowed time (e.g., "08:00"). * @param {string} [config.max] - Maximum allowed time (e.g., "18:00"). * @param {number|string} [config.step] - Granularity in seconds (or "any"). * @param {string} [config.name] - The name of the control. * @param {string} [config.placeholder] - Placeholder text. * @param {string} [config.autocomplete] - Autocomplete hint ("on", "off", or token list). * @param {string} [config.list] - The id of a `<datalist>`. * @param {boolean} [config.readonly=false] - Whether the input is read-only. * @param {boolean} [config.required=false] - Whether the input is required. * @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, min, max, step, name, readonly, required, placeholder, autocomplete, tags, mainClass, }?: { value?: string | undefined; min?: string | undefined; max?: string | undefined; step?: string | number | undefined; name?: string | undefined; placeholder?: string | undefined; autocomplete?: string | undefined; list?: string | undefined; readonly?: boolean | undefined; required?: boolean | undefined; tags?: string | string[] | Set<string> | undefined; mainClass?: string | undefined; }); /** @param {string|Date|number} value */ set value(value: string | Date | number); /** @returns {string|null} */ get value(): string | null; /** @param {string} min */ set min(min: string); /** @returns {string|null} */ get min(): string | null; /** @param {string} max */ set max(max: string); /** @returns {string|null} */ get max(): string | null; /** @param {number|string} step */ set step(step: number | string); /** @returns {string|null} */ get step(): string | null; /** @param {string} list */ set list(list: string); /** @returns {string|null} */ get list(): string | null; /** @param {string} autocomplete */ set autocomplete(autocomplete: string); /** @returns {string|null} */ get autocomplete(): string | null; } import TinyHtmlInput from '../../TinyHtmlInput.mjs'; //# sourceMappingURL=TinyHtmlTimeInput.d.mts.map