UNPKG

css-kits

Version:

Parse css to javascript object. Support change class and id

43 lines (42 loc) 1.76 kB
var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; (function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "strkits", "./detector", "./helpful"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.transformClassAndID = void 0; const strkits_1 = __importDefault(require("strkits")); const detector_1 = require("./detector"); const helpful_1 = require("./helpful"); function transformClassAndID(styleSheetList, transformFunc) { const classOrIDList = {}; const transform = (oldClassOrID) => { if (oldClassOrID in classOrIDList === false) { classOrIDList[oldClassOrID] = transformFunc(oldClassOrID); } return classOrIDList[oldClassOrID]; }; const newStyleSheetList = (0, helpful_1.selectorsMap)(styleSheetList, (selector) => { return strkits_1.default.replaceRange(selector, (0, detector_1.detectAllClassAndId)(selector).map(({ start, end }) => { return { start, end, value: transform(selector.slice(start, end)), }; })); }); return { newStyleSheetList, classOrIDList, }; } exports.transformClassAndID = transformClassAndID; });