tsds-build
Version:
Development stack for TypeScript libraries
44 lines • 1.94 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
Object.defineProperty(exports, "default", {
enumerable: true,
get: function() {
return build;
}
});
var _fsremovecompat = require("fs-remove-compat");
var _path = /*#__PURE__*/ _interop_require_default(require("path"));
var _queuecb = /*#__PURE__*/ _interop_require_default(require("queue-cb"));
var _tsdslib = require("tsds-lib");
var _constantsts = require("./constants.js");
var _filests = /*#__PURE__*/ _interop_require_default(require("./lib/files.js"));
var _umdts = /*#__PURE__*/ _interop_require_default(require("./lib/umd.js"));
function _interop_require_default(obj) {
return obj && obj.__esModule ? obj : {
default: obj
};
}
function build(args, options, callback) {
var config = (0, _tsdslib.loadConfig)(options);
if (!config) {
console.log('tsds: no config. Skipping');
return callback();
}
var cwd = options.cwd || process.cwd();
var targets = config.targets || _constantsts.DEFAULT_TARGETS;
var clean = options.clean === undefined ? true : options.clean;
var dest = _path.default.join(cwd, 'dist');
var queue = new _queuecb.default(1);
if (clean) queue.defer(function(cb) {
return (0, _fsremovecompat.safeRm)(dest, function(err) {
return cb(err);
});
});
targets.indexOf('cjs') < 0 || queue.defer(_filests.default.bind(null, args, 'cjs', options));
targets.indexOf('esm') < 0 || queue.defer(_filests.default.bind(null, args, 'esm', options));
targets.indexOf('umd') < 0 || queue.defer(_umdts.default.bind(null, args, options));
queue.await(callback);
}
/* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }