wxParse.js 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. function e(e) {
  2. return e && e.__esModule ? e : {
  3. default: e
  4. };
  5. }
  6. function t(e, t, a) {
  7. return t in e ? Object.defineProperty(e, t, {
  8. value: a,
  9. enumerable: !0,
  10. configurable: !0,
  11. writable: !0
  12. }) : e[t] = a, e;
  13. }
  14. function a(e) {
  15. var t = this, a = e.target.dataset.src, i = e.target.dataset.from;
  16. void 0 !== i && i.length > 0 && wx.previewImage({
  17. current: a,
  18. urls: t.data[i].imageUrls
  19. });
  20. }
  21. function i(e, t) {
  22. return e && e.length ? e.map(function(e) {
  23. if ("img" === e.tag || "image" === e.tag) {
  24. var a = e.attr.src;
  25. var sysInfo = wx.getSystemInfoSync();
  26. e.attr.src = a + "?imageView2/2/w/" + Math.ceil(sysInfo.windowWidth * sysInfo.pixelRatio) + "/ignore-error/1";
  27. }
  28. return e.nodes && e.nodes.length && (e.nodes = i(e.nodes, t)), e;
  29. }) : [];
  30. }
  31. function r(e) {
  32. var t = this, a = e.target.dataset.from, i = e.target.dataset.idx;
  33. void 0 !== a && a.length > 0 && n(e, i, t, a);
  34. }
  35. function n(e, a, i, r) {
  36. var n, d = i.data[r];
  37. if (d && 0 != d.images.length) {
  38. var s = d.images, g = o(e.detail.width, e.detail.height, i, r), l = s[a].index, h = "" + r, m = !0, u = !1, v = void 0;
  39. try {
  40. for (var f, w = l.split(".")[Symbol.iterator](); !(m = (f = w.next()).done); m = !0) h += ".nodes[" + f.value + "]";
  41. } catch (e) {
  42. u = !0, v = e;
  43. } finally {
  44. try {
  45. !m && w.return && w.return();
  46. } finally {
  47. if (u) throw v;
  48. }
  49. }
  50. var c = h + ".width", x = h + ".height";
  51. i.setData((n = {}, t(n, c, g.imageWidth), t(n, x, g.imageheight), n));
  52. }
  53. }
  54. function o(e, t, a, i) {
  55. var r = 0, n = 0, o = 0, d = {}, s = a.data[i].view.imagePadding;
  56. return r = g - 2 * s, l, e > r ? (o = (n = r) * t / e, d.imageWidth = n, d.imageheight = o) : (d.imageWidth = e,
  57. d.imageheight = t), d;
  58. }
  59. var d = e(require("./showdown.js")), s = e(require("./html2json.js")), g = 0, l = 0;
  60. wx.getSystemInfo({
  61. success: function(e) {
  62. g = e.windowWidth, l = e.windowHeight;
  63. }
  64. }), module.exports = {
  65. wxParse: function() {
  66. var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "wxParseData", t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "html", n = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : '', o = arguments[3], g = arguments[4], l = arguments[5], h = o, m = {};
  67. if ("html" == t) m = s.default.html2json(n, e); else if ("md" == t || "markdown" == t) {
  68. var u = new d.default.Converter().makeHtml(n);
  69. m = s.default.html2json(u, e);
  70. }
  71. m.nodes = i(m.nodes, l), m.view = {}, m.view.imagePadding = 0, void 0 !== g && (m.view.imagePadding = g);
  72. var v = {};
  73. v[e] = m, h.setData(v), h.wxParseImgLoad = r, h.wxParseImgTap = a;
  74. },
  75. wxParseTemArray: function(e, t, a, i) {
  76. for (var r = [], n = i.data, o = null, d = 0; d < a; d++) {
  77. var s = n[t + d].nodes;
  78. r.push(s);
  79. }
  80. e = e || "wxParseTemArray", (o = JSON.parse('{"' + e + '":""}'))[e] = r, i.setData(o);
  81. },
  82. emojisInit: function() {
  83. var e = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : "", t = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : "/wxParse/emojis/", a = arguments[2];
  84. s.default.emojisInit(e, t, a);
  85. }
  86. };