UNPKG

coffee-loader

Version:
39 lines (37 loc) • 1.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = loader; var _coffeescript = require("coffeescript"); var _CoffeeScriptError = _interopRequireDefault(require("./CoffeeScriptError")); var _options = _interopRequireDefault(require("./options.json")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } /* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ function loader(source) { const options = this.getOptions(_options.default); const callback = this.async(); const useSourceMap = typeof options.sourceMap === "boolean" ? options.sourceMap : this.sourceMap; let result; try { result = (0, _coffeescript.compile)(source, { sourceMap: useSourceMap, bare: true, ...options, filename: this.resourcePath }); } catch (error) { callback(new _CoffeeScriptError.default(error)); return; } let map; if (useSourceMap && result.v3SourceMap) { map = JSON.parse(result.v3SourceMap); delete map.file; result = result.js; } callback(null, result, map); }