108 lines
3.1 KiB
JavaScript
108 lines
3.1 KiB
JavaScript
var t;
|
|
(t = (function () {
|
|
function t(t, e) {
|
|
for (var n = 0; n < e.length; n++) {
|
|
var i = e[n];
|
|
(i.enumerable = i.enumerable || !1),
|
|
(i.configurable = !0),
|
|
"value" in i && (i.writable = !0),
|
|
Object.defineProperty(t, i.key, i);
|
|
}
|
|
}
|
|
return function (e, n, i) {
|
|
return n && t(e.prototype, n), i && t(e, i), e;
|
|
};
|
|
})()),
|
|
new ((function () {
|
|
function e(t) {
|
|
!(function (t, e) {
|
|
if (!(t instanceof e))
|
|
throw new TypeError("Cannot call a class as a function");
|
|
})(this, e);
|
|
var n = this;
|
|
for (var i in ((n.config = {}), (t = t || {}))) n.config[i] = t[i];
|
|
var a = require("./main");
|
|
n.m = { fs: require("fs"), path: require("path"), towxml: new a() };
|
|
}
|
|
return (
|
|
t(e, [
|
|
{
|
|
key: "init",
|
|
value: function () {
|
|
var t = this;
|
|
t.outtag();
|
|
var e = t.outwxml();
|
|
t.m.fs.writeFileSync("./renderTemplate.wxml", e);
|
|
},
|
|
},
|
|
{
|
|
key: "outtag",
|
|
value: function (t) {
|
|
var e = "",
|
|
n = this.outattr();
|
|
return (
|
|
this.m.towxml.wxmlTag.forEach(function (i, a) {
|
|
var r = "";
|
|
"image" === i && (r = 'mode="widthFix"'),
|
|
(e +=
|
|
"\n <" +
|
|
i +
|
|
" wx:if=\"{{item.node === 'element' && item.tag === '" +
|
|
i +
|
|
"'}}\" " +
|
|
n +
|
|
" " +
|
|
r +
|
|
'>\n <block wx:for="{{item.child}}" wx:key="{{item}}">\n <template is="m' +
|
|
t +
|
|
'" data="{{item}}"/>\n </block>\n </' +
|
|
i +
|
|
">\n ");
|
|
}),
|
|
e
|
|
);
|
|
},
|
|
},
|
|
{
|
|
key: "outattr",
|
|
value: function () {
|
|
var t = "";
|
|
return (
|
|
[
|
|
"class",
|
|
"width",
|
|
"height",
|
|
"data",
|
|
"src",
|
|
"id",
|
|
"style",
|
|
].forEach(function (e, n) {
|
|
t +=
|
|
"class" === e
|
|
? e + '="{{item.attr.className}}"'
|
|
: e + '="{{item.attr.' + e + '}}"';
|
|
}),
|
|
t
|
|
);
|
|
},
|
|
},
|
|
{
|
|
key: "outwxml",
|
|
value: function () {
|
|
for (var t = "", e = 0, n = this.config.depth; e < n; e++) {
|
|
var i = e < n - 1 ? e + 1 : e;
|
|
t +=
|
|
'<template name="m' +
|
|
e +
|
|
'"><block wx:if="{{item.node === \'text\'}}">{{item.text}}</block>' +
|
|
this.outtag(i) +
|
|
"</template>";
|
|
}
|
|
return t;
|
|
},
|
|
},
|
|
]),
|
|
e
|
|
);
|
|
})())({ depth: 10 }).init();
|