electron-compile
Version:
Electron supporting package to compile JS and CSS in Electron applications
136 lines (115 loc) • 6.18 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _regenerator = require("babel-runtime/regenerator");
var _regenerator2 = _interopRequireDefault(_regenerator);
var _asyncToGenerator2 = require("babel-runtime/helpers/asyncToGenerator");
var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2);
var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require("babel-runtime/helpers/createClass");
var _createClass3 = _interopRequireDefault(_createClass2);
var _lodash = require("lodash");
var _lodash2 = _interopRequireDefault(_lodash);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* ReadOnlyCompiler is a compiler which allows the host to inject all of the compiler
* metadata information so that {@link CompileCache} et al are able to recreate the
* hash without having two separate code paths.
*/
var ReadOnlyCompiler = function () {
/**
* Creates a ReadOnlyCompiler instance
*
* @private
*/
function ReadOnlyCompiler(name, compilerVersion, compilerOptions, inputMimeTypes) {
(0, _classCallCheck3.default)(this, ReadOnlyCompiler);
_lodash2.default.assign(this, { name: name, compilerVersion: compilerVersion, compilerOptions: compilerOptions, inputMimeTypes: inputMimeTypes });
}
(0, _createClass3.default)(ReadOnlyCompiler, [{
key: "shouldCompileFile",
value: function () {
var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee() {
return _regenerator2.default.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
return _context.abrupt("return", true);
case 1:
case "end":
return _context.stop();
}
}
}, _callee, this);
}));
return function shouldCompileFile() {
return ref.apply(this, arguments);
};
}()
}, {
key: "determineDependentFiles",
value: function () {
var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee2() {
return _regenerator2.default.wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
return _context2.abrupt("return", []);
case 1:
case "end":
return _context2.stop();
}
}
}, _callee2, this);
}));
return function determineDependentFiles() {
return ref.apply(this, arguments);
};
}()
}, {
key: "compile",
value: function () {
var ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee3() {
return _regenerator2.default.wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
throw new Error("Read-only compilers can't compile");
case 1:
case "end":
return _context3.stop();
}
}
}, _callee3, this);
}));
return function compile() {
return ref.apply(this, arguments);
};
}()
}, {
key: "shouldCompileFileSync",
value: function shouldCompileFileSync() {
return true;
}
}, {
key: "determineDependentFilesSync",
value: function determineDependentFilesSync() {
return [];
}
}, {
key: "compileSync",
value: function compileSync() {
throw new Error("Read-only compilers can't compile");
}
}, {
key: "getCompilerVersion",
value: function getCompilerVersion() {
return this.compilerVersion;
}
}]);
return ReadOnlyCompiler;
}();
exports.default = ReadOnlyCompiler;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9yZWFkLW9ubHktY29tcGlsZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQVFxQjs7Ozs7OztBQU1uQixXQU5tQixnQkFNbkIsQ0FBWSxJQUFaLEVBQWtCLGVBQWxCLEVBQW1DLGVBQW5DLEVBQW9ELGNBQXBELEVBQW9FO3dDQU5qRCxrQkFNaUQ7O0FBQ2xFLHFCQUFFLE1BQUYsQ0FBUyxJQUFULEVBQWUsRUFBRSxVQUFGLEVBQVEsZ0NBQVIsRUFBeUIsZ0NBQXpCLEVBQTBDLDhCQUExQyxFQUFmLEVBRGtFO0dBQXBFOzs2QkFObUI7Ozs7Ozs7O2lEQVVnQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2tEQUNNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7c0JBR2pDLElBQUksS0FBSixDQUFVLG1DQUFWOzs7Ozs7Ozs7Ozs7Ozs7NENBR2dCO0FBQUUsYUFBTyxJQUFQLENBQUY7Ozs7a0RBQ007QUFBRSxhQUFPLEVBQVAsQ0FBRjs7OztrQ0FFaEI7QUFDWixZQUFNLElBQUksS0FBSixDQUFVLG1DQUFWLENBQU4sQ0FEWTs7Ozt5Q0FJTztBQUNuQixhQUFPLEtBQUssZUFBTCxDQURZOzs7U0F4QkYiLCJmaWxlIjoicmVhZC1vbmx5LWNvbXBpbGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuXG4vKipcbiAqIFJlYWRPbmx5Q29tcGlsZXIgaXMgYSBjb21waWxlciB3aGljaCBhbGxvd3MgdGhlIGhvc3QgdG8gaW5qZWN0IGFsbCBvZiB0aGUgY29tcGlsZXJcbiAqIG1ldGFkYXRhIGluZm9ybWF0aW9uIHNvIHRoYXQge0BsaW5rIENvbXBpbGVDYWNoZX0gZXQgYWwgYXJlIGFibGUgdG8gcmVjcmVhdGUgdGhlXG4gKiBoYXNoIHdpdGhvdXQgaGF2aW5nIHR3byBzZXBhcmF0ZSBjb2RlIHBhdGhzLlxuICovIFxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgUmVhZE9ubHlDb21waWxlciB7XG4gIC8qKiAgXG4gICAqIENyZWF0ZXMgYSBSZWFkT25seUNvbXBpbGVyIGluc3RhbmNlXG4gICAqICAgIFxuICAgKiBAcHJpdmF0ZVxuICAgKi8gICBcbiAgY29uc3RydWN0b3IobmFtZSwgY29tcGlsZXJWZXJzaW9uLCBjb21waWxlck9wdGlvbnMsIGlucHV0TWltZVR5cGVzKSB7XG4gICAgXy5hc3NpZ24odGhpcywgeyBuYW1lLCBjb21waWxlclZlcnNpb24sIGNvbXBpbGVyT3B0aW9ucywgaW5wdXRNaW1lVHlwZXMgfSk7XG4gIH1cbiAgXG4gIGFzeW5jIHNob3VsZENvbXBpbGVGaWxlKCkgeyByZXR1cm4gdHJ1ZTsgfVxuICBhc3luYyBkZXRlcm1pbmVEZXBlbmRlbnRGaWxlcygpIHsgcmV0dXJuIFtdOyB9XG5cbiAgYXN5bmMgY29tcGlsZSgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZWFkLW9ubHkgY29tcGlsZXJzIGNhbid0IGNvbXBpbGVcIik7XG4gIH1cblxuICBzaG91bGRDb21waWxlRmlsZVN5bmMoKSB7IHJldHVybiB0cnVlOyB9XG4gIGRldGVybWluZURlcGVuZGVudEZpbGVzU3luYygpIHsgcmV0dXJuIFtdOyB9XG5cbiAgY29tcGlsZVN5bmMoKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFwiUmVhZC1vbmx5IGNvbXBpbGVycyBjYW4ndCBjb21waWxlXCIpO1xuICB9XG5cbiAgZ2V0Q29tcGlsZXJWZXJzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLmNvbXBpbGVyVmVyc2lvbjtcbiAgfVxufVxuIl19