// SPDX-FileCopyrightText: 2025 Wesley Schwengle <wesleys@opperschaap.net>
//
// SPDX-License-Identifier: MIT
/**
* Normalize an HTML attribute value to a boolean.
*
* This function interprets a variety of string-like inputs as either `true` or `false`:
* - Empty string ("") becomes true (e.g. <input disabled>)
* - "false" and "0" become false
* - All other defined values become true
*
* @param {string | null | undefined} value - The attribute value to parse
* @returns {boolean} The normalized boolean result
*/
export function parseBoolean(value) {
if (value === null || value === undefined) return false;
const val = String(value).toLowerCase().trim();
return val !== 'false' && val !== '0';
}