{"version":3,"file":"utils.cjs","sources":["assert.js","classname.js","colorObjectGenerators.js","compose.js","debounce.js","delayedCallback.js","htmlReactParser.js","mergeStyleProps.js","responsive.js","ssr.js","string.js","toPascalCase.js","stylePropsClassesGenerator.js"],"sourcesContent":["export const isNullish = (value) => value == null;\nexport const isEmptyString = (value) => typeof value === 'string' && value.trim() === '';\nexport const isEmptyArray = (value) => Array.isArray(value) && value.length === 0;\nexport const isEmptyObject = (value) => typeof value === 'object' && value !== null && Object.keys(value).length === 0;\nexport const isEnumerable = (value) => {\n    if (typeof value === 'object' && value !== null) {\n        for (const key in value) {\n            if (Object.hasOwnProperty.call(value, key)) {\n                return true;\n            }\n        }\n    }\n    return false;\n};\nexport const isEmpty = (value) => {\n    if (isNullish(value)) {\n        return true;\n    }\n    if (isEmptyString(value)) {\n        return true;\n    }\n    if (isEmptyArray(value)) {\n        return true;\n    }\n    if (isEmptyObject(value)) {\n        return true;\n    }\n    if (isEnumerable(value)) {\n        return false;\n    }\n    return false;\n};\n//# sourceMappingURL=assert.js.map","export const applyClassNamePrefix = (prefix) => (className) => prefix != null && prefix !== '' ? `${prefix}-${className}` : className;\nexport const applyColor = (color) => (className) => `${className}--${color}`;\nexport const applySize = (size) => (className) => `${className}--${size}`;\nexport const applyTheme = (theme) => (className) => `${className}--${theme}`;\n//# sourceMappingURL=classname.js.map","import { accentColors, emotionColors, textColors } from '@lmc-eu/spirit-design-tokens';\nexport const generateColorsObject = (colors, type, prefix) => {\n    const result = {};\n    for (const [key, properties] of Object.entries(colors)) {\n        for (const [property] of Object.entries(properties)) {\n            if (property.startsWith(type)) {\n                const formattedValue = `${prefix}-${key}-${property.replace(type, '').toLowerCase()}`;\n                const formattedKey = formattedValue.replace(/-/g, '_').toUpperCase();\n                result[formattedKey] = formattedValue;\n            }\n        }\n    }\n    return result;\n};\nexport const getAccentTextColors = () => generateColorsObject(accentColors, 'content', 'accent');\nexport const getEmotionTextColors = () => generateColorsObject(emotionColors, 'content', 'emotion');\nexport const getAccentBackgroundColors = () => generateColorsObject(accentColors, 'background', 'accent');\nexport const getEmotionBackgroundColors = () => generateColorsObject(emotionColors, 'background', 'emotion');\nexport const getAccentBorderColors = () => generateColorsObject(accentColors, 'border', 'accent');\nexport const getEmotionBorderColors = () => generateColorsObject(emotionColors, 'border', 'emotion');\nexport const getNeutralTextColors = () => ({\n    NEUTRAL_BASIC: 'neutral-basic',\n    NEUTRAL_SUBTLE: 'neutral-subtle',\n});\nexport const getNeutralBackgroundColors = () => ({\n    NEUTRAL_BASIC: 'neutral-basic',\n    NEUTRAL_SUBTLE: 'neutral-subtle',\n});\nexport const getAccentColorNames = () => Object.keys(accentColors);\nexport const getEmotionColorNames = () => Object.keys(emotionColors);\nexport const getTextColorNames = () => Object.keys(textColors);\n//# sourceMappingURL=colorObjectGenerators.js.map","export const compose = (...functions) => functions.reduceRight((prevFunction, nextFunction) => (...args) => nextFunction(prevFunction(...args)), (value) => value);\n//# sourceMappingURL=compose.js.map","export const debounce = (callback, delay) => {\n    let timeout;\n    let isThrottled = false;\n    return (args) => {\n        if (!isThrottled) {\n            isThrottled = true;\n            if (timeout) {\n                clearTimeout(timeout);\n            }\n            timeout = setTimeout(() => {\n                callback(args);\n                isThrottled = false;\n            }, delay);\n        }\n    };\n};\n//# sourceMappingURL=debounce.js.map","export const delayedCallback = (callback, interval) => {\n    const timeoutId = setTimeout(() => {\n        callback();\n        clearTimeout(timeoutId);\n    }, interval);\n};\n//# sourceMappingURL=delayedCallback.js.map","import htmlDomParser from 'html-dom-parser';\nimport domToReactLib from 'html-react-parser/lib/dom-to-react';\nexport const htmlReactParser = (html) => {\n    if (typeof html !== 'string') {\n        throw new TypeError('First argument must be a string');\n    }\n    if (!html) {\n        return [];\n    }\n    const htmlToDOM = typeof htmlDomParser.default === 'function' ? htmlDomParser.default : htmlDomParser;\n    const domToReact = typeof domToReactLib.default === 'function' ? domToReactLib.default : domToReactLib;\n    return domToReact(htmlToDOM(html));\n};\n//# sourceMappingURL=htmlReactParser.js.map","export function mergeStyleProps(ElementTag, styleProps) {\n    const isSpiritComponent = typeof ElementTag !== 'string' && !!(ElementTag === null || ElementTag === void 0 ? void 0 : ElementTag.spiritComponent);\n    const isNonNullableObject = (styleProp) => typeof styleProp === 'object' && styleProp !== null;\n    const extractClassNames = (styleProp) => {\n        if (typeof styleProp === 'string') {\n            return [styleProp];\n        }\n        if (isNonNullableObject(styleProp)) {\n            return [styleProp.className, styleProp.UNSAFE_className].filter(Boolean);\n        }\n        return [];\n    };\n    const extractCssVariables = (styleProp) => isNonNullableObject(styleProp)\n        ? Object.entries(styleProp)\n            .filter(([key]) => key.startsWith('--'))\n            .reduce((extractedCssVariable, [key, value]) => (Object.assign(Object.assign({}, extractedCssVariable), { [key]: value })), {})\n        : {};\n    const extractCssStylesAndVariables = (cssProperties, styleProp) => {\n        if (!isNonNullableObject(styleProp)) {\n            return cssProperties;\n        }\n        const typedStyleProp = styleProp;\n        const styles = typedStyleProp.style || typedStyleProp.UNSAFE_style || {};\n        const cssVariables = extractCssVariables(styleProp);\n        return Object.assign(Object.assign(Object.assign({}, cssProperties), styles), cssVariables);\n    };\n    const mergedClasses = Object.values(styleProps).flatMap(extractClassNames).filter(Boolean).join(' ');\n    const mergedStyles = Object.values(styleProps)\n        .filter(isNonNullableObject)\n        .reduce(extractCssStylesAndVariables, {});\n    return isSpiritComponent\n        ? { UNSAFE_className: mergedClasses, UNSAFE_style: mergedStyles }\n        : { className: mergedClasses, style: mergedStyles };\n}\n//# sourceMappingURL=mergeStyleProps.js.map","export function isResponsive(value) {\n    return typeof value === 'object' && value !== null && !Array.isArray(value);\n}\nexport function generateResponsiveClassNames(componentClass, value) {\n    if (!value) {\n        return [];\n    }\n    if (isResponsive(value)) {\n        return Object.entries(value)\n            .map(([breakpoint, breakpointValue]) => {\n            if (breakpointValue === undefined) {\n                return '';\n            }\n            if (breakpoint === 'mobile') {\n                return `${componentClass}--${breakpointValue}`;\n            }\n            return `${componentClass}--${breakpoint}--${breakpointValue}`;\n        })\n            .filter((className) => className !== '');\n    }\n    return [`${componentClass}--${value}`];\n}\n//# sourceMappingURL=responsive.js.map","export const isSSR = typeof window === 'undefined';\n//# sourceMappingURL=ssr.js.map","export const camelCaseToKebabCase = (input) => input.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\nexport const kebabCaseToCamelCase = (input) => input.replace(/-([a-z])/g, (g) => g[1].toUpperCase());\nexport const kebabCaseToCamelCaseValues = (input) => {\n    if (typeof input === 'object' && input !== null) {\n        const result = {};\n        for (const [key, value] of Object.entries(input)) {\n            result[key] = typeof value === 'string' ? kebabCaseToCamelCase(value) : value;\n        }\n        return result;\n    }\n    return input;\n};\nexport const stringOrObjectKebabCaseToCamelCase = (input) => {\n    if (typeof input === 'string') {\n        return kebabCaseToCamelCase(input);\n    }\n    if (typeof input === 'object' && input !== null) {\n        return kebabCaseToCamelCaseValues(input);\n    }\n    return input;\n};\n//# sourceMappingURL=string.js.map","export function toPascalCase(str) {\n    if (typeof str !== 'string') {\n        return str;\n    }\n    return str\n        .split('-')\n        .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n        .join('');\n}\n//# sourceMappingURL=toPascalCase.js.map","import { toPascalCase } from \"./toPascalCase.js\";\nexport function generateStaticStylePropsClasses(componentClass, property, type) {\n    return `${componentClass}--${type || ''}${type ? toPascalCase(property) : property}`;\n}\nexport function generateResponsiveStylePropsClasses(componentClass, property, type) {\n    return Object.keys(property)\n        .map((key) => {\n        const infix = key === 'mobile' ? '' : `--${key}`;\n        const responsiveProperty = property[key];\n        return `${componentClass}${infix}--${type || ''}${type ? toPascalCase(responsiveProperty) : responsiveProperty}`;\n    })\n        .join(' ');\n}\nfunction isResponsiveProperty(property) {\n    return property && typeof property === 'object';\n}\nexport function generateStylePropsClassNames(componentClass, property, type) {\n    const generate = isResponsiveProperty(property)\n        ? generateResponsiveStylePropsClasses\n        : generateStaticStylePropsClasses;\n    return generate(componentClass, property, type);\n}\n//# sourceMappingURL=stylePropsClassesGenerator.js.map"],"names":["accentColors","emotionColors","textColors"],"mappings":"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"}