UNPKG

@polyfill-io-aot/builder

Version:

This is the builder module for polyfill-io-aot.

35 lines 1.13 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const common_1 = require("@polyfill-io-aot/common"); const md5Hash_1 = require("@polyfill-io-aot/common/src/fns/md5Hash"); const fs = require("fs-extra"); const noop = require("lodash/noop"); const path_1 = require("path"); const wp = require("workerpool"); const Serialiser_1 = require("../Serialiser"); const emptyHash = md5Hash_1.md5Array([]); /** @internal */ function generate(excludes, features$, uaString, unknown, outDir, hash) { let polyStr$; if (hash === emptyHash) { polyStr$ = Promise.resolve(''); } else { const features = JSON.parse(features$, Serialiser_1.reviver); polyStr$ = common_1.getPolyfillString({ excludes, features, minify: false, uaString, unknown }); } return polyStr$ .then((polyStr) => fs.writeFile(path_1.join(outDir, `${hash}.js`), polyStr)) .then(noop); } exports.generate = generate; if (!wp.isMainThread) { wp.worker({ generate }); } //# sourceMappingURL=polyfill-string-generator.js.map