motion
Version:
motion - moving development forward
127 lines (89 loc) • 3.73 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.checkInternals = exports.internals = undefined;
let internals = exports.internals = function () {
var ref = _asyncToGenerator(function* () {
let opts = arguments.length <= 0 || arguments[0] === undefined ? {} : arguments[0];
try {
_fns.log.internals('internals');
yield (0, _install.finishedInstalling)();
if (opts.force || _disk2.default.internalsIn.hasChanged()) {
yield _disk2.default.internalsIn.write(function (current, write) {
write((0, _requireString2.default)(_cache2.default.getExported(), {
prefix: './internal/',
removeExt: true
}));
});
yield packInternals();
(0, _messages.onInternalInstalled)();
}
} catch (e) {
(0, _fns.handleError)(e);
}
});
return function internals(_x) {
return ref.apply(this, arguments);
};
}();
let checkInternals = exports.checkInternals = function () {
var ref = _asyncToGenerator(function* (file) {
if ((0, _opts2.default)('hasRunInitialBuild') && _cache2.default.isInternal(file) && !runningBundle) {
clearTimeout(runningBundle);
runningBundle = setTimeout(_asyncToGenerator(function* () {
yield internals();
runningBundle = null;
}), 100);
}
});
return function checkInternals(_x3) {
return ref.apply(this, arguments);
};
}();
// let internals use externals
exports.webpackUserExternals = webpackUserExternals;
var _install = require('./install');
var _webpack = require('webpack');
var _webpack2 = _interopRequireDefault(_webpack);
var _messages = require('./lib/messages');
var _webpackConfig = require('./lib/webpackConfig');
var _webpackConfig2 = _interopRequireDefault(_webpackConfig);
var _getWebpackErrors = require('./lib/getWebpackErrors');
var _getWebpackErrors2 = _interopRequireDefault(_getWebpackErrors);
var _requireString = require('./lib/requireString');
var _requireString2 = _interopRequireDefault(_requireString);
var _bridge = require('../bridge');
var _bridge2 = _interopRequireDefault(_bridge);
var _disk = require('../disk');
var _disk2 = _interopRequireDefault(_disk);
var _cache = require('../cache');
var _cache2 = _interopRequireDefault(_cache);
var _opts = require('../opts');
var _opts2 = _interopRequireDefault(_opts);
var _fns = require('../lib/fns');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { return step("next", value); }, function (err) { return step("throw", err); }); } } return step("next"); }); }; }
let runningBundle = null;
function webpackUserExternals() {
const imports = _cache2.default.getExternals();
const externalsObj = imports.reduce((acc, cur) => {
acc[cur] = cur;
return acc;
}, {});
return externalsObj;
}
function packInternals() {
_fns.log.internals('packInternals');
return new Promise((resolve, reject) => {
const conf = (0, _webpackConfig2.default)('internals.js', {
entry: (0, _opts2.default)('deps').internalsIn,
externals: webpackUserExternals()
});
(0, _webpack2.default)(conf, (err, stats) => {
(0, _fns.logError)((0, _getWebpackErrors2.default)('internals', err, stats));
resolve();
});
});
}
//# sourceMappingURL=internals.js.map