dotjs-loader
Version:
doT.js module loader for webpack
37 lines (36 loc) • 1.01 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = _default;
var _dot = _interopRequireDefault(require("dot"));
var _schemaUtils = require("schema-utils");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const schema = {
type: 'object',
properties: {
varname: {
type: 'string'
},
strip: {
type: 'boolean'
},
append: {
type: 'boolean'
}
}
};
function _default(source) {
const options = this.getOptions();
(0, _schemaUtils.validate)(schema, options, {
name: 'dotjs-loader',
baseDataPath: 'options'
});
['evaluate', 'interpolate', 'encode', 'use', 'define', 'conditional', 'iterate', 'varname', 'strip', 'append'].forEach(option => {
if (options[option]) {
_dot.default.templateSettings[option] = options[option];
}
});
_dot.default.templateSettings.selfcontained = true;
return 'export default ' + _dot.default.template(source);
}