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.

74 lines 3.02 kB
export default TinyHtmlWeekInput; /** * TinyHtmlWeekInput is a helper class for managing `<input type="week">` elements. * It provides getters and setters for all standard attributes, ensuring type safety * and validation for each property. * * @example * const weekInput = new TinyHtmlWeekInput({ * value: '2023-W15', * min: '2023-W01', * max: '2023-W52', * step: 1, * required: true * }); */ declare class TinyHtmlWeekInput extends TinyHtmlInput { /** * Creates a new TinyHtmlWeekInput instance. * @param {Object} config - Configuration object. * @param {string} [config.value] - Initial value (`YYYY-Www` format). * @param {string} [config.min] - Minimum allowed week (`YYYY-Www`). * @param {string} [config.max] - Maximum allowed week (`YYYY-Www`). * @param {number} [config.step] - Step interval in weeks. * @param {string} [config.name] - The name of the input. * @param {string} [config.placeholder] - Placeholder text. * @param {string} [config.autocomplete] - Autocomplete hint (e.g., "on", "off"). * @param {string} [config.list] - 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, min, max, step, name, placeholder, autocomplete, list, readonly, required, tags, mainClass, }?: { value?: string | undefined; min?: string | undefined; max?: string | undefined; step?: 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} value */ set value(value: string | Date); /** @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} step */ set step(step: number); /** @returns {number|null} */ get step(): number | 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=TinyHtmlWeekInput.d.mts.map