UNPKG

playable

Version:

Video player based on HTML5Video

29 lines (23 loc) 642 B
const SHORTHAND_HEX_COLOR_PATTERN = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; const HEX_COLOR_PATTERN = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i; type IRGB = { r: number; g: number; b: number; }; function hexToRgb(hex: string): IRGB { hex = hex.replace( SHORTHAND_HEX_COLOR_PATTERN, (_, r, g, b) => r + r + g + g + b + b, ); const result = hex.match(HEX_COLOR_PATTERN); if (result) { return { r: parseInt(result[1], 16), g: parseInt(result[2], 16), b: parseInt(result[3], 16), }; } throw new Error('Playable.js: Color passed to theme should be in HEX format'); } export default hexToRgb;