UNPKG

@luban-cli/cli-lib-service

Version:
42 lines 1.59 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.processor = void 0; const crypto_1 = __importDefault(require("crypto")); const babel_jest_1 = require("babel-jest"); const getBabelConfig_1 = require("./lib/getBabelConfig"); const share_1 = require("./lib/share"); const pkg = share_1.getProjectPackageJson(); exports.processor = { canInstrument: true, process(src, path, config, transformOptions) { const babelConfig = getBabelConfig_1.getBabelConfig(true, true); babelConfig.plugins = babelConfig.plugins || []; babelConfig.plugins.push([ require.resolve("babel-plugin-import"), { libraryName: pkg.name, libraryDirectory: "../src", }, ]); const babelSupport = path.endsWith(".ts") || path.endsWith(".tsx") || path.endsWith(".js") || path.endsWith(".jsx"); const babelJest = babel_jest_1.createTransformer(babelConfig); const fileName = babelSupport ? path : "file.js"; return babelJest.process(src, fileName, config, transformOptions); }, getCacheKey() { return crypto_1.default .createHash("md5") .update("\0", "utf8") .update("components") .update("\0", "utf8") .update(pkg.version) .digest("hex"); }, }; //# sourceMappingURL=preprocessor.js.map