UNPKG

ts-transform-css-modules-next

Version:

Transforms styleName to atomic CSS className using compile time CSS module resolution.

17 lines (16 loc) 702 B
"use strict"; // Credits // https://github.com/rofrischmann/fela/blob/master/packages/fela/src/generateClassName.js Object.defineProperty(exports, "__esModule", { value: true }); var chars = 'abcdefghijklmnopqrstuvwxyz'; var charLength = chars.length; function generateUniqueClassName(id, className) { if (className === void 0) { className = ''; } if (id <= charLength) { return chars[id - 1] + className; } // Bitwise floor as safari performs much faster // https://jsperf.com/math-floor-vs-math-round-vs-parseint/55 return generateUniqueClassName((id / charLength) | 0, chars[id % charLength] + className); } exports.default = generateUniqueClassName;