Fix allowTransparency in lib and demo

Fixes #5558
Fixes #5560
This commit is contained in:
Daniel Imms
2025-12-31 05:00:33 -08:00
parent 982f5e15ff
commit d143340b60
7 changed files with 100 additions and 64 deletions
+3
View File
@@ -303,6 +303,9 @@ describe('Color', () => {
assert.deepEqual(css.toColor('rgba(0, 0, 80, 0.5)'), { css: '#00005080', rgba: 0x00005080 });
assert.deepEqual(css.toColor('rgba(255, 255, 255, 1)'), { css: '#ffffffff', rgba: 0xffffffff });
});
it('should convert "transparent" to an IColor', () => {
assert.deepEqual(css.toColor('transparent'), { css: 'transparent', rgba: 0x00000000 });
});
});
});
+8
View File
@@ -184,6 +184,14 @@ export namespace css {
return channels.toColor($r, $g, $b, $a);
}
// Handle the "transparent" keyword
if (css === 'transparent') {
return {
css: 'transparent',
rgba: 0x00000000
};
}
// Validate the context is available for canvas-based color parsing
if (!$ctx || !$litmusColor) {
throw new Error('css.toColor: Unsupported css format');