/** Datei: plugins/rest/assets.OLD/js/generator/helpers/colorize.js **/ /** * generator/helpers/colorize.js * * Spaltengenerator für Status-Anzeigen mit Farb- und Icon-Unterstützung. * * @author Sparky * @copyright 2025 ARUNOX * @version 1.0.0 * */ import { generator } from 'plugins/rest/core/generator'; generator.extend( 'helpers/colorize', ( cellColorConfig, optionColorConfig, container, iconContainer ) => { if( typeof cellColorConfig === 'string' ) cellColorConfig = { color: cellColorConfig } if( typeof optionColorConfig === 'string' ) optionColorConfig = { color: optionColorConfig } let colorConfig = Object.assign( { target : 'background', prefix : false, }, cellColorConfig, optionColorConfig ); if( container && ['button'].includes( colorConfig.target ) ) { container.classList.add( `${colorConfig.prefix || 'button'}--colored-${colorConfig.color || 'default'}` ); container.style.backgroundColor = colorConfig.value; } if( container && ['background'].includes( colorConfig.target ) ) { container.classList.add( `${colorConfig.prefix || 'bg'}--colored-${colorConfig.color || 'default'}` ); container.style.backgroundColor = colorConfig.value; } if( iconContainer && ['icon','both'].includes( colorConfig.target ) ) { iconContainer.classList.add( `${colorConfig.prefix || 'text'}--colored-${colorConfig.color || 'default'}` ); iconContainer.style.color = colorConfig.value; } if( container && ['text','both'].includes( colorConfig.target ) ) { container.classList.add( `${colorConfig.prefix || 'text'}--colored-${colorConfig.color || 'default'}` ); container.style.color = colorConfig.value; } });