UNPKG

@js-basics/vector

Version:

A 3D Vector lib including arithmetic operator overloading (+ - * / % **).

30 lines (26 loc) 596 B
export class CSS { constructor(name = undefined) { this.name = name; } get vars() { let prefix = ''; const { name } = this; if (name) { prefix = `${name}-`; } return Object.entries(this).reduce((res, [key, t]) => { if (key === 'name' || key === 'cssVars' || key === 'template') { return res; } if (t.toCSSVars) { t.toCSSVars(`${prefix}${key}`, res); } else { res[`--${prefix}${key}`] = t.valueOf(); } return res; }, {}); } } export function css(name = undefined) { return new CSS(name); }