getEffectiveLightIntensity method
Get effective light intensity for a given state. Single argument version - assumes light mode for backward compatibility. Accepts either String ('rest', 'hover', 'pressed', 'disabled') or ComponentState enum.
Implementation
double getEffectiveLightIntensity(dynamic state, [bool isDarkMode = false]) {
final stateStr = _normalizeState(state);
final baseValue = isDarkMode ? 0.05 : 0.7;
switch (stateStr) {
case 'rest':
return restOverrideEnabled && restLightIntensityOverride != null
? restLightIntensityOverride!
: baseValue;
case 'hover':
return hoverOverrideEnabled && hoverLightIntensityOverride != null
? hoverLightIntensityOverride!
: baseValue;
case 'pressed':
return pressedOverrideEnabled && pressedLightIntensityOverride != null
? pressedLightIntensityOverride!
: baseValue;
case 'disabled':
return disabledOverrideEnabled && disabledLightIntensityOverride != null
? disabledLightIntensityOverride!
: (isDarkMode ? 0.03 : 0.5);
default:
return baseValue;
}
}