UNPKG

ngx-unused-css

Version:
55 lines 2.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var fs_1 = (0, tslib_1.__importDefault)(require("fs")); var unusedClassMapper_1 = (0, tslib_1.__importDefault)(require("../helpers/unusedClassMapper")); var findHtml_1 = (0, tslib_1.__importDefault)(require("./../helpers/findHtml")); var findUnusedCss_1 = (0, tslib_1.__importDefault)(require("./findUnusedCss")); var UnusedClasses = /** @class */ (function () { function UnusedClasses(_config) { this._config = _config; this.allHtmlContent = ''; this.config = _config; } UnusedClasses.prototype.getUnusedClasses = function (projectPath) { return (0, tslib_1.__awaiter)(this, void 0, void 0, function () { var list, result; return (0, tslib_1.__generator)(this, function (_a) { switch (_a.label) { case 0: list = (0, findHtml_1.default)(projectPath); return [4 /*yield*/, this.mapClasses(list)]; case 1: result = _a.sent(); return [2 /*return*/, result.filter(function (c) { var unusedCssClasses = (c === null || c === void 0 ? void 0 : c.length) ? c[0] : []; return unusedCssClasses && unusedCssClasses.length > 0; })]; } }); }); }; UnusedClasses.prototype.getGlobalUnusedClasses = function (globalStyles) { return (0, findUnusedCss_1.default)(this.allHtmlContent, globalStyles, this.config); }; /** * * @param list List of html files to be checked * @returns */ UnusedClasses.prototype.mapClasses = function (list) { var _this = this; var promiseArray = list.map(function (element) { var htmlPath = element; var htmlContent = fs_1.default.readFileSync(htmlPath, 'utf8'); // Expect same path as the template except different extension. var cssPath = htmlPath.replace('.html', ".".concat(_this.config.styleExt)); _this.allHtmlContent += htmlContent; return (0, unusedClassMapper_1.default)(cssPath, htmlContent, htmlPath, _this.config); }); return Promise.all(promiseArray); }; return UnusedClasses; }()); exports.default = UnusedClasses; //# sourceMappingURL=getUnusedClasses.js.map