html-to-article-json
Version:
Converting HTML to article-json
42 lines (29 loc) • 1.1 kB
JavaScript
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _generateFunction = require('generate-function');
var _generateFunction2 = _interopRequireDefault(_generateFunction);
var _textFormattings = require('../text-formattings');
var _textFormattings2 = _interopRequireDefault(_textFormattings);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.default = function (opts) {
var textFormattings = (0, _textFormattings2.default)(opts);
var fn = (0, _generateFunction2.default)();
var renderTextOpts = textFormattings.reduce(function (opts, row) {
opts[row.property] = row.get;
if (row.classProperty) {
opts[row.classProperty] = row.getClass;
}
return opts;
}, {});
fn = fn('function text (opts, elm) {')('return {');
fn = fn(' type: \'text\',');
Object.keys(renderTextOpts).forEach(function (key) {
fn = fn(' %s: opts[\'%s\'] || renderTextOpts[\'%s\'](elm),', key, key, key);
});
fn = fn('};')('}');
return fn.toFunction({
renderTextOpts: renderTextOpts
});
};