@jt-home/mfe-components 1.0.22 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,11 @@
1
- import { defineComponent as k, openBlock as O, createElementBlock as I, createElementVNode as J, ref as D, watch as V, onBeforeUnmount as T, h as n, computed as x, onMounted as W, nextTick as ae, render as A } from "vue";
2
- import { ElIcon as N } from "element-plus";
1
+ import { defineComponent as D, openBlock as O, createElementBlock as I, createElementVNode as J, ref as x, watch as F, onBeforeUnmount as T, h as n, computed as E, onMounted as K, nextTick as re, render as C } from "vue";
2
+ import { ElIcon as P } from "element-plus";
3
3
  /*! Element Plus Icons Vue v2.3.2 */
4
- var re = /* @__PURE__ */ k({
4
+ var ie = /* @__PURE__ */ D({
5
5
  name: "Download",
6
6
  __name: "download",
7
7
  setup(e) {
8
- return (t, a) => (O(), I("svg", {
8
+ return (a, t) => (O(), I("svg", {
9
9
  xmlns: "http://www.w3.org/2000/svg",
10
10
  viewBox: "0 0 1024 1024"
11
11
  }, [
@@ -15,11 +15,11 @@ var re = /* @__PURE__ */ k({
15
15
  })
16
16
  ]));
17
17
  }
18
- }), ie = re, oe = /* @__PURE__ */ k({
18
+ }), oe = ie, ce = /* @__PURE__ */ D({
19
19
  name: "RefreshLeft",
20
20
  __name: "refresh-left",
21
21
  setup(e) {
22
- return (t, a) => (O(), I("svg", {
22
+ return (a, t) => (O(), I("svg", {
23
23
  xmlns: "http://www.w3.org/2000/svg",
24
24
  viewBox: "0 0 1024 1024"
25
25
  }, [
@@ -29,11 +29,11 @@ var re = /* @__PURE__ */ k({
29
29
  })
30
30
  ]));
31
31
  }
32
- }), ce = oe, se = /* @__PURE__ */ k({
32
+ }), se = ce, le = /* @__PURE__ */ D({
33
33
  name: "ZoomIn",
34
34
  __name: "zoom-in",
35
35
  setup(e) {
36
- return (t, a) => (O(), I("svg", {
36
+ return (a, t) => (O(), I("svg", {
37
37
  xmlns: "http://www.w3.org/2000/svg",
38
38
  viewBox: "0 0 1024 1024"
39
39
  }, [
@@ -43,11 +43,11 @@ var re = /* @__PURE__ */ k({
43
43
  })
44
44
  ]));
45
45
  }
46
- }), le = se, ue = /* @__PURE__ */ k({
46
+ }), ue = le, de = /* @__PURE__ */ D({
47
47
  name: "ZoomOut",
48
48
  __name: "zoom-out",
49
49
  setup(e) {
50
- return (t, a) => (O(), I("svg", {
50
+ return (a, t) => (O(), I("svg", {
51
51
  xmlns: "http://www.w3.org/2000/svg",
52
52
  viewBox: "0 0 1024 1024"
53
53
  }, [
@@ -57,8 +57,8 @@ var re = /* @__PURE__ */ k({
57
57
  })
58
58
  ]));
59
59
  }
60
- }), de = ue;
61
- const ve = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAMAAAC+/t3fAAAAaVBMVEUAAABWapNVapKeqsLJztx3hKnGzN2yu8////9XapWcqMGps8lXapVYa5RWaZWps8lfcJjS1+KjrsVXapWapr////9sfaKrtMrV2uWBj7B4iKqWob1wgaXr7fOBj6/Ax9dhc5yhq8OKl7Wba+6tAAAAE3RSTlMAgGDuDyVLoYDe2XuXRb68cy6e4BCQEAAAAyZJREFUeNrt29tyokAUheGOQjIoeMhuCQ4e0Pd/yCE1STU4mGq7bXqzZ/23ufoqYblTqkIIIYQQQggNlM42Lzctf5nMD22bKQYVOQ30sTPt6dEO74mKXLoiCgDTi1RFbUMUBhZXluQUDKbnWxWtjMLB2pYqUjmFg8WUzSg0TL+rCKVZeJheRJj9DYWHRRnHbBSYnr+qcSsoKCyeLKcfK/emc2UqH4LFGMcVWVftTC4w/TbmhGQjwvR6RBmNAbMYx4nD7k/I1GF3ZZOH3RtHAbDhcZQAG5SJgOn1Vt0mAzYwIUJgvjJ/2OVo2pcmcoQZWehxpBGue5sJEQTryyTBeuMoCtadEFmwjkwYzIyjNJief02IONj3OAqE/ZVJhJnZj3RS1c4nld04ijiC/5EJhbUyobBWJhT2OY5CYa1MKKyVCYXpdSIUphdbobB2HIXCWplQmJGFhZUn07kyNaFgbUsx1/1tb1Jh+i1hDmu0Y+uEN4xqV9ki5Q27atfmKWtYqd1lW84wqj1kr5xhB+3RkjGMrl4yxrCm9pG984V5ytZJINjpY7hmLNki5XjdP0fGFkZ0qL1kfGEt7erzgsYY1lYefrtWsIZ5NAMMMBNg9gEGmD3sejbVnRpyjAvs5rr3DzDAAOsEmH2AAQZYJ8Ds4wJrSlN1NE3+CDYJu+5NgNkHGGCAdQLMPsAAA0zuEQyYbYABBlgnwOwDDDDAOvVhl5NJ1Fu1O6lHMGA/xQl2rPodpcBq6gfYYIABBpgJsAdiBDvX/cTAxF4egNkEWGDY5Q5s8v9onoZdR3KNC4yOg7AzOccFNvi36POJIy4wqgZgF/KIC6yporuCwNrq/nNW7ckzLjCi/bO//MEF9mCAAQYYYDwCDDAmAQYYkwADjEmAAcYkwABjEmCAMQkwwJgEGGBMAgwwJgEGGJMAA4xJgAHGJMD+B1hGE6hwgK1oAqUOsJz4lymHCuJfrpTM9SicYC/EvUw5lRD3Psde4lP29YSJG8bse+ulvZZ5uFTCV5YZl6hpXKXKs5TlL22jnlCaM7uHV7NEPam02LwwaVYkCiGEEEIIITTUH1Fqd5V0WMtQAAAAAElFTkSuQmCC", me = "data:image/png;base64,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", fe = /* @__PURE__ */ new Set(["jpg", "jpeg", "png", "gif", "webp", "bmp", "svg", "avif", "ico"]), we = /* @__PURE__ */ new Set(["mp4", "webm", "ogg", "ogv", "mov", "m4v"]), pe = /* @__PURE__ */ new Set(["mp3", "wav", "ogg", "oga", "m4a", "aac", "flac"]), he = /* @__PURE__ */ new Set(["html", "htm", "txt", "json", "xml", "csv", "md", "log"]), ge = /* @__PURE__ */ new Set([
60
+ }), ve = de;
61
+ const me = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAMAAAC+/t3fAAAAaVBMVEUAAABWapNVapKeqsLJztx3hKnGzN2yu8////9XapWcqMGps8lXapVYa5RWaZWps8lfcJjS1+KjrsVXapWapr////9sfaKrtMrV2uWBj7B4iKqWob1wgaXr7fOBj6/Ax9dhc5yhq8OKl7Wba+6tAAAAE3RSTlMAgGDuDyVLoYDe2XuXRb68cy6e4BCQEAAAAyZJREFUeNrt29tyokAUheGOQjIoeMhuCQ4e0Pd/yCE1STU4mGq7bXqzZ/23ufoqYblTqkIIIYQQQggNlM42Lzctf5nMD22bKQYVOQ30sTPt6dEO74mKXLoiCgDTi1RFbUMUBhZXluQUDKbnWxWtjMLB2pYqUjmFg8WUzSg0TL+rCKVZeJheRJj9DYWHRRnHbBSYnr+qcSsoKCyeLKcfK/emc2UqH4LFGMcVWVftTC4w/TbmhGQjwvR6RBmNAbMYx4nD7k/I1GF3ZZOH3RtHAbDhcZQAG5SJgOn1Vt0mAzYwIUJgvjJ/2OVo2pcmcoQZWehxpBGue5sJEQTryyTBeuMoCtadEFmwjkwYzIyjNJief02IONj3OAqE/ZVJhJnZj3RS1c4nld04ijiC/5EJhbUyobBWJhT2OY5CYa1MKKyVCYXpdSIUphdbobB2HIXCWplQmJGFhZUn07kyNaFgbUsx1/1tb1Jh+i1hDmu0Y+uEN4xqV9ki5Q27atfmKWtYqd1lW84wqj1kr5xhB+3RkjGMrl4yxrCm9pG984V5ytZJINjpY7hmLNki5XjdP0fGFkZ0qL1kfGEt7erzgsYY1lYefrtWsIZ5NAMMMBNg9gEGmD3sejbVnRpyjAvs5rr3DzDAAOsEmH2AAQZYJ8Ds4wJrSlN1NE3+CDYJu+5NgNkHGGCAdQLMPsAAA0zuEQyYbYABBlgnwOwDDDDAOvVhl5NJ1Fu1O6lHMGA/xQl2rPodpcBq6gfYYIABBpgJsAdiBDvX/cTAxF4egNkEWGDY5Q5s8v9onoZdR3KNC4yOg7AzOccFNvi36POJIy4wqgZgF/KIC6yporuCwNrq/nNW7ckzLjCi/bO//MEF9mCAAQYYYDwCDDAmAQYYkwADjEmAAcYkwABjEmCAMQkwwJgEGGBMAgwwJgEGGJMAA4xJgAHGJMD+B1hGE6hwgK1oAqUOsJz4lymHCuJfrpTM9SicYC/EvUw5lRD3Psde4lP29YSJG8bse+ulvZZ5uFTCV5YZl6hpXKXKs5TlL22jnlCaM7uHV7NEPam02LwwaVYkCiGEEEIIITTUH1Fqd5V0WMtQAAAAAElFTkSuQmCC", fe = "data:image/png;base64,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", we = /* @__PURE__ */ new Set(["jpg", "jpeg", "png", "gif", "webp", "bmp", "svg", "avif", "ico"]), pe = /* @__PURE__ */ new Set(["mp4", "webm", "ogg", "ogv", "mov", "m4v"]), he = /* @__PURE__ */ new Set(["mp3", "wav", "ogg", "oga", "m4a", "aac", "flac"]), ge = /* @__PURE__ */ new Set(["html", "htm", "txt", "json", "xml", "csv", "md", "log"]), ye = /* @__PURE__ */ new Set([
62
62
  "doc",
63
63
  "docx",
64
64
  "xls",
@@ -69,93 +69,93 @@ const ve = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANgAAADYCAMAAAC+/t3fAA
69
69
  "rar",
70
70
  "7z"
71
71
  ]);
72
- let _ = null, U = null, P = null;
73
- async function ye() {
72
+ let A = null, U = null, N = null;
73
+ async function Ae() {
74
74
  return U || (U = Promise.all([
75
75
  import("../pdf-BmBuG7of.js"),
76
76
  import("../pdf.worker.min-4PI-nNLo.js")
77
- ]).then(([e, t]) => (e.GlobalWorkerOptions.workerSrc = t.default, e))), U;
77
+ ]).then(([e, a]) => (e.GlobalWorkerOptions.workerSrc = a.default, e))), U;
78
78
  }
79
- function Ae(e) {
79
+ function _e(e) {
80
80
  return typeof e == "string" ? { url: e } : e;
81
81
  }
82
- function F(e) {
83
- const [t] = e.split(/[?#]/);
84
- return t ?? "";
82
+ function X(e) {
83
+ const [a] = e.split(/[?#]/);
84
+ return a ?? "";
85
85
  }
86
- function K(e, t) {
87
- if (t?.trim()) return t.trim();
88
- const a = F(e).split("/").filter(Boolean).pop();
89
- if (!a) return "附件预览";
86
+ function Q(e, a) {
87
+ if (a?.trim()) return a.trim();
88
+ const t = X(e).split("/").filter(Boolean).pop();
89
+ if (!t) return "附件预览";
90
90
  try {
91
- return decodeURIComponent(a);
91
+ return decodeURIComponent(t);
92
92
  } catch {
93
- return a;
93
+ return t;
94
94
  }
95
95
  }
96
- function z(e) {
97
- return F(e).match(/\.([a-z0-9]+)$/i)?.[1]?.toLowerCase() ?? "";
96
+ function R(e) {
97
+ return X(e).match(/\.([a-z0-9]+)$/i)?.[1]?.toLowerCase() ?? "";
98
98
  }
99
- function _e(e) {
99
+ function be(e) {
100
100
  return e?.trim().replace(/^\./, "").toLowerCase() ?? "";
101
101
  }
102
- function be(e) {
103
- const t = _e(e);
104
- return fe.has(t) ? "image" : t === "pdf" ? "pdf" : we.has(t) ? "video" : pe.has(t) ? "audio" : he.has(t) ? "iframe" : ge.has(t) ? "unsupported" : "unknown";
102
+ function je(e) {
103
+ const a = be(e);
104
+ return we.has(a) ? "image" : a === "pdf" ? "pdf" : pe.has(a) ? "video" : he.has(a) ? "audio" : ge.has(a) ? "iframe" : ye.has(a) ? "unsupported" : "unknown";
105
105
  }
106
- function Q(e) {
107
- const t = e.toLowerCase().split(";")[0]?.trim() ?? "";
108
- return t.startsWith("image/") ? "image" : t === "application/pdf" ? "pdf" : t.startsWith("video/") ? "video" : t.startsWith("audio/") ? "audio" : t.startsWith("text/") ? "iframe" : "unknown";
106
+ function q(e) {
107
+ const a = e.toLowerCase().split(";")[0]?.trim() ?? "";
108
+ return a.startsWith("image/") ? "image" : a === "application/pdf" ? "pdf" : a.startsWith("video/") ? "video" : a.startsWith("audio/") ? "audio" : a.startsWith("text/") ? "iframe" : "unknown";
109
109
  }
110
- function X(e) {
110
+ function Z(e) {
111
111
  if (!e.url.trim()) return "empty";
112
112
  if (e.mode && e.mode !== "auto") return e.mode;
113
113
  if (e.mimeType) {
114
- const a = Q(e.mimeType);
115
- if (a !== "unknown") return a;
114
+ const t = q(e.mimeType);
115
+ if (t !== "unknown") return t;
116
116
  }
117
- const t = be(
118
- e.extension || z(e.name || "") || z(e.url)
117
+ const a = je(
118
+ e.extension || R(e.name || "") || R(e.url)
119
119
  );
120
- return t !== "unknown" ? t : "unknown";
120
+ return a !== "unknown" ? a : "unknown";
121
121
  }
122
- async function je(e) {
122
+ async function Ee(e) {
123
123
  try {
124
- const a = (await fetch(e, { method: "HEAD" })).headers.get("content-type") ?? "";
125
- return Q(a);
124
+ const t = (await fetch(e, { method: "HEAD" })).headers.get("content-type") ?? "";
125
+ return q(t);
126
126
  } catch {
127
127
  return "unknown";
128
128
  }
129
129
  }
130
- async function Z(e) {
131
- const t = await fetch(e);
132
- if (!t.ok) throw new Error(`fetch failed: ${t.status}`);
133
- return t.blob();
130
+ async function $(e) {
131
+ const a = await fetch(e);
132
+ if (!a.ok) throw new Error(`fetch failed: ${a.status}`);
133
+ return a.blob();
134
134
  }
135
- function Ee(e, t) {
136
- const a = z(t);
137
- return a === "doc" || a === "docx" ? "W" : a === "xls" || a === "xlsx" ? "X" : a === "ppt" || a === "pptx" ? "P" : a === "zip" || a === "rar" || a === "7z" ? "ZIP" : e === "pdf" ? "PDF" : "FILE";
135
+ function xe(e, a) {
136
+ const t = R(a);
137
+ return t === "doc" || t === "docx" ? "W" : t === "xls" || t === "xlsx" ? "X" : t === "ppt" || t === "pptx" ? "P" : t === "zip" || t === "rar" || t === "7z" ? "ZIP" : e === "pdf" ? "PDF" : "FILE";
138
138
  }
139
- function $(e, t, a) {
139
+ function ee(e, a, t) {
140
140
  return n(
141
141
  "button",
142
142
  {
143
- class: a,
143
+ class: t,
144
144
  type: "button",
145
145
  onClick: () => {
146
- te(e, t);
146
+ ne(e, a);
147
147
  }
148
148
  },
149
149
  [
150
- n(N, { class: "jt-attachment-preview-service__download-icon" }, () => n(ie)),
150
+ n(P, { class: "jt-attachment-preview-service__download-icon" }, () => n(oe)),
151
151
  n("span", { class: "jt-attachment-preview-service__download-text" }, "下载")
152
152
  ]
153
153
  );
154
154
  }
155
- function R(e) {
155
+ function H(e) {
156
156
  return e === "image" || e === "pdf";
157
157
  }
158
- function ee(e) {
158
+ function te(e) {
159
159
  return n("div", { class: "jt-attachment-preview-service__preview-fallback" }, [
160
160
  n("img", {
161
161
  class: "jt-attachment-preview-service__preview-fallback-icon",
@@ -166,19 +166,19 @@ function ee(e) {
166
166
  n("div", { class: "jt-attachment-preview-service__file-name", title: e.name }, e.name)
167
167
  ]);
168
168
  }
169
- function H(e, t) {
170
- const a = document.createElement("a");
171
- a.href = e, a.download = t, a.style.display = "none", document.body.appendChild(a), a.click(), a.remove();
169
+ function z(e, a) {
170
+ const t = document.createElement("a");
171
+ t.href = e, t.download = a, t.style.display = "none", document.body.appendChild(t), t.click(), t.remove();
172
172
  }
173
- async function te(e, t) {
173
+ async function ne(e, a) {
174
174
  try {
175
- const a = await Z(e), i = URL.createObjectURL(a);
176
- H(i, t), URL.revokeObjectURL(i);
175
+ const t = await $(e), c = URL.createObjectURL(t);
176
+ z(c, a), URL.revokeObjectURL(c);
177
177
  } catch {
178
- H(e, t);
178
+ z(e, a);
179
179
  }
180
180
  }
181
- const xe = k({
181
+ const De = D({
182
182
  name: "JtAttachmentPreviewPdfCanvas",
183
183
  props: {
184
184
  url: {
@@ -202,77 +202,77 @@ const xe = k({
202
202
  previewLoad: (e) => e instanceof Event,
203
203
  previewError: (e) => e instanceof Event
204
204
  },
205
- setup(e, { emit: t }) {
206
- const a = D("loading"), i = D([]), r = D([]), s = /* @__PURE__ */ new Map(), l = D("");
207
- let d = null, h = [], v = 0;
208
- async function m(o, u) {
209
- if (!u) return null;
210
- const w = typeof u == "string" ? await o.getDestination(u) : u;
211
- return !Array.isArray(w) || !w[0] ? null : await o.getPageIndex(w[0]) + 1;
205
+ setup(e, { emit: a }) {
206
+ const t = x("loading"), c = x([]), i = x([]), o = /* @__PURE__ */ new Map(), u = x("");
207
+ let d = null, w = [], m = 0;
208
+ async function v(r, l) {
209
+ if (!l) return null;
210
+ const f = typeof l == "string" ? await r.getDestination(l) : l;
211
+ return !Array.isArray(f) || !f[0] ? null : await r.getPageIndex(f[0]) + 1;
212
212
  }
213
- async function L(o, u, w = 0) {
214
- if (!u?.length) return [];
215
- const j = [];
216
- for (const E of u) {
217
- const C = await m(o, E.dest);
218
- j.push({
219
- title: E.title || "未命名标题",
220
- pageNumber: C,
221
- level: w
213
+ async function _(r, l, f = 0) {
214
+ if (!l?.length) return [];
215
+ const b = [];
216
+ for (const j of l) {
217
+ const k = await v(r, j.dest);
218
+ b.push({
219
+ title: j.title || "未命名标题",
220
+ pageNumber: k,
221
+ level: f
222
222
  });
223
- const g = await L(o, E.items, w + 1);
224
- j.push(...g);
223
+ const g = await _(r, j.items, f + 1);
224
+ b.push(...g);
225
225
  }
226
- return j;
226
+ return b;
227
227
  }
228
- function p() {
229
- v += 1;
230
- for (const o of h)
231
- o.cancel();
232
- h = [], d?.destroy(), d = null, s.clear();
228
+ function h() {
229
+ m += 1;
230
+ for (const r of w)
231
+ r.cancel();
232
+ w = [], d?.destroy(), d = null, o.clear();
233
233
  }
234
- async function b() {
235
- p();
236
- const o = v;
237
- a.value = "loading", l.value = "", i.value = [], r.value = [];
234
+ async function M() {
235
+ h();
236
+ const r = m;
237
+ t.value = "loading", u.value = "", c.value = [], i.value = [];
238
238
  try {
239
- const u = await ye();
240
- if (o !== v) return;
241
- d = u.getDocument({ url: e.url });
242
- const w = await d.promise;
243
- if (o !== v) return;
244
- i.value = Array.from({ length: w.numPages }, (C, g) => g + 1), r.value = await L(w, await w.getOutline()), await ae();
245
- const j = s.values().next().value, E = Math.max((j?.parentElement?.clientWidth ?? 800) - 32, 320);
246
- for (const C of i.value) {
247
- if (o !== v) return;
248
- const g = await w.getPage(C), y = s.get(C), M = y?.getContext("2d");
249
- if (!y || !M) continue;
250
- const G = g.getViewport({ scale: 1 }), S = Math.min(E / G.width, 2), c = g.getViewport({ scale: S }), B = window.devicePixelRatio || 1;
251
- y.width = Math.floor(c.width * B), y.height = Math.floor(c.height * B), y.style.width = `${Math.floor(c.width)}px`, y.style.height = `${Math.floor(c.height)}px`, M.setTransform(B, 0, 0, B, 0, 0);
252
- const q = g.render({
239
+ const l = await Ae();
240
+ if (r !== m) return;
241
+ d = l.getDocument({ url: e.url });
242
+ const f = await d.promise;
243
+ if (r !== m) return;
244
+ c.value = Array.from({ length: f.numPages }, (k, g) => g + 1), i.value = await _(f, await f.getOutline()), await re();
245
+ const b = o.values().next().value, j = Math.max((b?.parentElement?.clientWidth ?? 800) - 32, 320);
246
+ for (const k of c.value) {
247
+ if (r !== m) return;
248
+ const g = await f.getPage(k), y = o.get(k), L = y?.getContext("2d");
249
+ if (!y || !L) continue;
250
+ const G = g.getViewport({ scale: 1 }), S = Math.min(j / G.width, 2), s = g.getViewport({ scale: S }), B = window.devicePixelRatio || 1;
251
+ y.width = Math.floor(s.width * B), y.height = Math.floor(s.height * B), y.style.width = `${Math.floor(s.width)}px`, y.style.height = `${Math.floor(s.height)}px`, L.setTransform(B, 0, 0, B, 0, 0);
252
+ const V = g.render({
253
253
  canvas: y,
254
- canvasContext: M,
255
- viewport: c
254
+ canvasContext: L,
255
+ viewport: s
256
256
  });
257
- h.push(q), await q.promise;
257
+ w.push(V), await V.promise;
258
258
  }
259
- if (o !== v) return;
260
- a.value = "ready", t("previewLoad", new Event("load"));
261
- } catch (u) {
262
- if (o !== v) return;
263
- a.value = "error", l.value = u instanceof Error ? u.message : "PDF 加载失败", t("previewError", new Event("error"));
259
+ if (r !== m) return;
260
+ t.value = "ready", a("previewLoad", new Event("load"));
261
+ } catch (l) {
262
+ if (r !== m) return;
263
+ t.value = "error", u.value = l instanceof Error ? l.message : "PDF 加载失败", a("previewError", new Event("error"));
264
264
  }
265
265
  }
266
- V(() => e.url, b, { immediate: !0 }), T(p);
267
- function f(o) {
268
- if (!o) return;
269
- s.get(o)?.scrollIntoView({ behavior: "smooth", block: "start" });
266
+ F(() => e.url, M, { immediate: !0 }), T(h);
267
+ function p(r) {
268
+ if (!r) return;
269
+ o.get(r)?.scrollIntoView({ behavior: "smooth", block: "start" });
270
270
  }
271
271
  return () => n("div", { class: "jt-attachment-preview-service__pdf-viewer" }, [
272
- a.value === "loading" ? n("div", { class: "jt-attachment-preview-service__pdf-state" }, "PDF 加载中...") : null,
273
- a.value === "error" ? n("div", { class: "jt-attachment-preview-service__pdf-state" }, [
274
- ee({
275
- icon: me,
272
+ t.value === "loading" ? n("div", { class: "jt-attachment-preview-service__pdf-state" }, "PDF 加载中...") : null,
273
+ t.value === "error" ? n("div", { class: "jt-attachment-preview-service__pdf-state" }, [
274
+ te({
275
+ icon: fe,
276
276
  name: e.name
277
277
  })
278
278
  ]) : null,
@@ -283,28 +283,28 @@ const xe = k({
283
283
  {
284
284
  class: [
285
285
  "jt-attachment-preview-service__pdf-layout",
286
- a.value !== "ready" ? "jt-attachment-preview-service__pdf-layout--hidden" : ""
286
+ t.value !== "ready" ? "jt-attachment-preview-service__pdf-layout--hidden" : ""
287
287
  ]
288
288
  },
289
289
  [
290
- r.value.length ? n("aside", { class: "jt-attachment-preview-service__pdf-outline" }, [
290
+ i.value.length ? n("aside", { class: "jt-attachment-preview-service__pdf-outline" }, [
291
291
  n("div", { class: "jt-attachment-preview-service__pdf-outline-title" }, "目录"),
292
292
  n(
293
293
  "div",
294
294
  { class: "jt-attachment-preview-service__pdf-outline-list" },
295
- r.value.map(
296
- (o, u) => n(
295
+ i.value.map(
296
+ (r, l) => n(
297
297
  "button",
298
298
  {
299
- key: `${o.title}-${u}`,
299
+ key: `${r.title}-${l}`,
300
300
  class: "jt-attachment-preview-service__pdf-outline-item",
301
- style: { paddingLeft: `${12 + o.level * 14}px` },
301
+ style: { paddingLeft: `${12 + r.level * 14}px` },
302
302
  type: "button",
303
- disabled: !o.pageNumber,
304
- title: o.title,
305
- onClick: () => f(o.pageNumber)
303
+ disabled: !r.pageNumber,
304
+ title: r.title,
305
+ onClick: () => p(r.pageNumber)
306
306
  },
307
- o.title
307
+ r.title
308
308
  )
309
309
  )
310
310
  )
@@ -312,11 +312,11 @@ const xe = k({
312
312
  n(
313
313
  "div",
314
314
  { class: "jt-attachment-preview-service__pdf-pages" },
315
- i.value.map(
316
- (o) => n("canvas", {
317
- key: o,
318
- ref: (u) => {
319
- u instanceof HTMLCanvasElement && s.set(o, u);
315
+ c.value.map(
316
+ (r) => n("canvas", {
317
+ key: r,
318
+ ref: (l) => {
319
+ l instanceof HTMLCanvasElement && o.set(r, l);
320
320
  },
321
321
  class: "jt-attachment-preview-service__pdf-page"
322
322
  })
@@ -326,7 +326,7 @@ const xe = k({
326
326
  )
327
327
  ]);
328
328
  }
329
- }), De = k({
329
+ }), ke = D({
330
330
  name: "JtAttachmentPreviewImageTransform",
331
331
  props: {
332
332
  url: {
@@ -354,76 +354,76 @@ const xe = k({
354
354
  previewLoad: (e) => e instanceof Event,
355
355
  previewError: (e) => e instanceof Event
356
356
  },
357
- setup(e, { emit: t }) {
358
- const a = D(null), i = D("ready"), r = D(1), s = D(!1);
359
- let l = 0, d = 0, h = 0, v = 0, m = 0, L = 0, p = 0;
360
- const b = x(() => ({
357
+ setup(e, { emit: a }) {
358
+ const t = x(null), c = x("ready"), i = x(1), o = x(!1);
359
+ let u = 0, d = 0, w = 0, m = 0, v = 0, _ = 0, h = 0;
360
+ const M = E(() => ({
361
361
  "--jt-attachment-preview-service-image-fit": e.fit,
362
- transform: `translate(${l}px, ${d}px) scale(${r.value})`
362
+ transform: `translate(${u}px, ${d}px) scale(${i.value})`
363
363
  }));
364
- function f() {
365
- a.value && (a.value.style.transform = `translate(${l}px, ${d}px) scale(${r.value})`);
364
+ function p() {
365
+ t.value && (t.value.style.transform = `translate(${u}px, ${d}px) scale(${i.value})`);
366
366
  }
367
- function o() {
368
- p || (p = window.requestAnimationFrame(() => {
369
- p = 0, f();
367
+ function r() {
368
+ h || (h = window.requestAnimationFrame(() => {
369
+ h = 0, p();
370
370
  }));
371
371
  }
372
- function u(c) {
373
- r.value = Math.min(Math.max(Number(c.toFixed(2)), 0.2), 5), r.value <= 1 && (l = 0, d = 0), f();
372
+ function l(s) {
373
+ i.value = Math.min(Math.max(Number(s.toFixed(2)), 0.2), 5), i.value <= 1 && (u = 0, d = 0), p();
374
374
  }
375
- function w() {
376
- u(r.value + 0.2);
375
+ function f() {
376
+ l(i.value + 0.2);
377
377
  }
378
- function j() {
379
- const c = Math.max(Number((r.value - 0.2).toFixed(2)), 0.2);
380
- r.value = c, c <= 1 && (l = 0, d = 0), f();
378
+ function b() {
379
+ const s = Math.max(Number((i.value - 0.2).toFixed(2)), 0.2);
380
+ i.value = s, s <= 1 && (u = 0, d = 0), p();
381
381
  }
382
- function E() {
383
- l = 0, d = 0, u(1);
382
+ function j() {
383
+ u = 0, d = 0, l(1);
384
384
  }
385
- function C(c) {
386
- i.value = "ready", t("previewLoad", c);
385
+ function k(s) {
386
+ c.value = "ready", a("previewLoad", s);
387
387
  }
388
- function g(c) {
389
- i.value = "error", t("previewError", c);
388
+ function g(s) {
389
+ c.value = "error", a("previewError", s);
390
390
  }
391
- function y(c) {
392
- r.value <= 1 || (c.preventDefault(), s.value = !0, h = c.clientX, v = c.clientY, m = l, L = d, window.addEventListener("pointermove", M), window.addEventListener("pointerup", G, { once: !0 }));
391
+ function y(s) {
392
+ i.value <= 1 || (s.preventDefault(), o.value = !0, w = s.clientX, m = s.clientY, v = u, _ = d, window.addEventListener("pointermove", L), window.addEventListener("pointerup", G, { once: !0 }));
393
393
  }
394
- function M(c) {
395
- s.value && (l = m + c.clientX - h, d = L + c.clientY - v, o());
394
+ function L(s) {
395
+ o.value && (u = v + s.clientX - w, d = _ + s.clientY - m, r());
396
396
  }
397
397
  function G() {
398
- s.value = !1, window.removeEventListener("pointermove", M);
398
+ o.value = !1, window.removeEventListener("pointermove", L);
399
399
  }
400
- function S(c) {
401
- c.preventDefault(), u(r.value + (c.deltaY < 0 ? 0.1 : -0.1));
400
+ function S(s) {
401
+ s.preventDefault(), l(i.value + (s.deltaY < 0 ? 0.1 : -0.1));
402
402
  }
403
- return W(f), V(() => e.url, () => {
404
- i.value = "ready", E();
403
+ return K(p), F(() => e.url, () => {
404
+ c.value = "ready", j();
405
405
  }), T(() => {
406
- window.removeEventListener("pointermove", M), p && window.cancelAnimationFrame(p);
407
- }), () => n("div", { class: "jt-attachment-preview-service__image-viewer" }, i.value === "error" ? ee({
408
- icon: ve,
406
+ window.removeEventListener("pointermove", L), h && window.cancelAnimationFrame(h);
407
+ }), () => n("div", { class: "jt-attachment-preview-service__image-viewer" }, c.value === "error" ? te({
408
+ icon: me,
409
409
  name: e.name
410
410
  }) : [
411
411
  n("img", {
412
- ref: a,
412
+ ref: t,
413
413
  class: [
414
414
  "jt-attachment-preview-service__media",
415
415
  "jt-attachment-preview-service__image",
416
- r.value > 1 ? "jt-attachment-preview-service__image--draggable" : "",
417
- s.value ? "jt-attachment-preview-service__image--dragging" : ""
416
+ i.value > 1 ? "jt-attachment-preview-service__image--draggable" : "",
417
+ o.value ? "jt-attachment-preview-service__image--dragging" : ""
418
418
  ],
419
419
  src: e.url,
420
420
  alt: e.name,
421
- style: b.value,
422
- onLoad: C,
421
+ style: M.value,
422
+ onLoad: k,
423
423
  onError: g,
424
424
  onPointerdown: y,
425
425
  onWheel: S,
426
- onDragstart: (c) => c.preventDefault(),
426
+ onDragstart: (s) => s.preventDefault(),
427
427
  draggable: !1
428
428
  }),
429
429
  n("div", { class: "jt-attachment-preview-service__image-toolbar" }, [
@@ -433,20 +433,20 @@ const xe = k({
433
433
  class: "jt-attachment-preview-service__image-tool",
434
434
  type: "button",
435
435
  title: "缩小",
436
- onClick: j
436
+ onClick: b
437
437
  },
438
- [n(N, () => n(de))]
438
+ [n(P, () => n(ve))]
439
439
  ),
440
- n("span", { class: "jt-attachment-preview-service__image-scale" }, `${Math.round(r.value * 100)}%`),
440
+ n("span", { class: "jt-attachment-preview-service__image-scale" }, `${Math.round(i.value * 100)}%`),
441
441
  n(
442
442
  "button",
443
443
  {
444
444
  class: "jt-attachment-preview-service__image-tool",
445
445
  type: "button",
446
446
  title: "放大",
447
- onClick: w
447
+ onClick: f
448
448
  },
449
- [n(N, () => n(le))]
449
+ [n(P, () => n(ue))]
450
450
  ),
451
451
  n(
452
452
  "button",
@@ -454,14 +454,14 @@ const xe = k({
454
454
  class: "jt-attachment-preview-service__image-tool",
455
455
  type: "button",
456
456
  title: "复位",
457
- onClick: E
457
+ onClick: j
458
458
  },
459
- [n(N, () => n(ce))]
459
+ [n(P, () => n(se))]
460
460
  )
461
461
  ])
462
462
  ]);
463
463
  }
464
- }), ke = k({
464
+ }), Le = D({
465
465
  name: "JtAttachmentPreviewService",
466
466
  props: {
467
467
  options: {
@@ -474,64 +474,64 @@ const xe = k({
474
474
  }
475
475
  },
476
476
  setup(e) {
477
- const t = x(() => K(e.options.url, e.options.name)), a = x(() => e.options.downloadName || t.value), i = x(() => X(e.options)), r = x(() => Ee(i.value, e.options.url)), s = x(() => ({
477
+ const a = E(() => Q(e.options.url, e.options.name)), t = E(() => e.options.downloadName || a.value), c = E(() => Z(e.options)), i = E(() => xe(c.value, e.options.url)), o = E(() => ({
478
478
  zIndex: e.options.zIndex ?? 3e3,
479
479
  "--jt-attachment-preview-service-image-fit": e.options.fit ?? "contain"
480
480
  }));
481
- function l() {
481
+ function u() {
482
482
  e.options.onClose?.(), e.onDestroy();
483
483
  }
484
- function d(m) {
485
- m.key === "Escape" && e.options.closeOnPressEscape !== !1 && l();
484
+ function d(v) {
485
+ v.key === "Escape" && e.options.closeOnPressEscape !== !1 && u();
486
486
  }
487
- function h(m) {
488
- e.options.onLoad?.(m);
487
+ function w(v) {
488
+ e.options.onLoad?.(v);
489
489
  }
490
- function v(m) {
491
- e.options.onError?.(m);
490
+ function m(v) {
491
+ e.options.onError?.(v);
492
492
  }
493
- return W(() => {
493
+ return K(() => {
494
494
  document.addEventListener("keydown", d), document.body.classList.add("jt-attachment-preview-service-lock");
495
495
  }), T(() => {
496
496
  document.removeEventListener("keydown", d), document.body.classList.remove("jt-attachment-preview-service-lock");
497
497
  }), () => {
498
- const m = e.options.downloadable === !1 ? [] : [$(e.options.url, a.value, "jt-attachment-preview-service__top-download")];
499
- return n("div", { class: "jt-attachment-preview-service", style: s.value }, [
498
+ const v = e.options.downloadable === !1 ? [] : [ee(e.options.url, t.value, "jt-attachment-preview-service__top-download")];
499
+ return n("div", { class: "jt-attachment-preview-service", style: o.value }, [
500
500
  n("div", { class: "jt-attachment-preview-service__modal" }, [
501
501
  n("div", { class: "jt-attachment-preview-service__header" }, [
502
- n("div", { class: "jt-attachment-preview-service__filename", title: t.value }, t.value),
502
+ n("div", { class: "jt-attachment-preview-service__filename", title: a.value }, a.value),
503
503
  n("div", { class: "jt-attachment-preview-service__header-actions" }, [
504
- ...m,
504
+ ...v,
505
505
  n(
506
506
  "button",
507
507
  {
508
508
  class: "jt-attachment-preview-service__close",
509
509
  type: "button",
510
510
  "aria-label": "关闭",
511
- onClick: l
511
+ onClick: u
512
512
  },
513
513
  "×"
514
514
  )
515
515
  ])
516
516
  ]),
517
517
  n("div", { class: "jt-attachment-preview-service__body" }, [
518
- Le({
519
- type: i.value,
518
+ Ce({
519
+ type: c.value,
520
520
  url: e.options.url,
521
- name: t.value,
522
- downloadName: a.value,
521
+ name: a.value,
522
+ downloadName: t.value,
523
523
  sandbox: e.options.sandbox,
524
- iconText: r.value,
524
+ iconText: i.value,
525
525
  downloadable: e.options.downloadable !== !1,
526
- onLoad: h,
527
- onError: v
526
+ onLoad: w,
527
+ onError: m
528
528
  })
529
529
  ])
530
530
  ])
531
531
  ]);
532
532
  };
533
533
  }
534
- }), Y = k({
534
+ }), Y = D({
535
535
  name: "JtAttachmentPreviewDetectingService",
536
536
  props: {
537
537
  options: {
@@ -556,23 +556,23 @@ const xe = k({
556
556
  }
557
557
  },
558
558
  setup(e) {
559
- const t = x(() => K(e.options.url, e.options.name)), a = x(() => ({
559
+ const a = E(() => Q(e.options.url, e.options.name)), t = E(() => ({
560
560
  zIndex: e.options.zIndex ?? 3e3
561
561
  }));
562
- function i() {
562
+ function c() {
563
563
  e.options.onClose?.(), e.onDestroy();
564
564
  }
565
- function r(s) {
566
- s.key === "Escape" && e.options.closeOnPressEscape !== !1 && i();
565
+ function i(o) {
566
+ o.key === "Escape" && e.options.closeOnPressEscape !== !1 && c();
567
567
  }
568
- return W(() => {
569
- document.addEventListener("keydown", r), document.body.classList.add("jt-attachment-preview-service-lock");
568
+ return K(() => {
569
+ document.addEventListener("keydown", i), document.body.classList.add("jt-attachment-preview-service-lock");
570
570
  }), T(() => {
571
- document.removeEventListener("keydown", r), document.body.classList.remove("jt-attachment-preview-service-lock");
572
- }), () => n("div", { class: "jt-attachment-preview-service", style: a.value }, [
571
+ document.removeEventListener("keydown", i), document.body.classList.remove("jt-attachment-preview-service-lock");
572
+ }), () => n("div", { class: "jt-attachment-preview-service", style: t.value }, [
573
573
  n("div", { class: "jt-attachment-preview-service__modal" }, [
574
574
  n("div", { class: "jt-attachment-preview-service__header" }, [
575
- n("div", { class: "jt-attachment-preview-service__filename", title: t.value }, t.value),
575
+ n("div", { class: "jt-attachment-preview-service__filename", title: a.value }, a.value),
576
576
  n("div", { class: "jt-attachment-preview-service__header-actions" }, [
577
577
  n(
578
578
  "button",
@@ -580,7 +580,7 @@ const xe = k({
580
580
  class: "jt-attachment-preview-service__close",
581
581
  type: "button",
582
582
  "aria-label": "关闭",
583
- onClick: i
583
+ onClick: c
584
584
  },
585
585
  "×"
586
586
  )
@@ -597,8 +597,8 @@ const xe = k({
597
597
  ]);
598
598
  }
599
599
  });
600
- function Le(e) {
601
- return e.type === "empty" ? n("div", { class: "jt-attachment-preview-service__empty" }, "暂无附件") : e.type === "image" ? n(De, {
600
+ function Ce(e) {
601
+ return e.type === "empty" ? n("div", { class: "jt-attachment-preview-service__empty" }, "暂无附件") : e.type === "image" ? n(ke, {
602
602
  url: e.url,
603
603
  name: e.name,
604
604
  downloadName: e.downloadName,
@@ -617,7 +617,7 @@ function Le(e) {
617
617
  controls: !0,
618
618
  onLoadeddata: e.onLoad,
619
619
  onError: e.onError
620
- }) : e.type === "pdf" ? n(xe, {
620
+ }) : e.type === "pdf" ? n(De, {
621
621
  url: e.url,
622
622
  name: e.name,
623
623
  downloadName: e.downloadName,
@@ -636,125 +636,136 @@ function Le(e) {
636
636
  n("div", { class: "jt-attachment-preview-service__unsupported-text" }, "暂不支持预览此类型的文件")
637
637
  ]),
638
638
  n("div", { class: "jt-attachment-preview-service__file-name", title: e.name }, e.name),
639
- e.downloadable ? $(e.url, e.downloadName, "jt-attachment-preview-service__primary-download") : null
639
+ e.downloadable ? ee(e.url, e.downloadName, "jt-attachment-preview-service__primary-download") : null
640
640
  ]);
641
641
  }
642
- function ne(e) {
643
- if (typeof document > "u")
644
- return { close: () => {
645
- } };
646
- _?.close();
647
- const t = Ae(e), a = t.downloadName || K(t.url, t.name);
648
- let i = !1, r = null, s = null;
649
- const l = () => {
650
- i = !0, r && (A(null, r), r.remove(), r = null), s && (URL.revokeObjectURL(s), s = null), _?.close === l && (_ = null);
642
+ function W(e) {
643
+ C(null, e), queueMicrotask(() => {
644
+ e.remove();
645
+ });
646
+ }
647
+ function ae(e, a) {
648
+ const t = _e(e), c = t.downloadName || Q(t.url, t.name);
649
+ let i = !1, o = a?.container ?? null, u = null;
650
+ const d = () => {
651
+ i || (i = !0, o && (W(o), o = null), u && (URL.revokeObjectURL(u), u = null), a?.onClose?.(), A?.close === d && (A = null));
651
652
  };
652
- function d() {
653
- i || (r || (r = document.createElement("div"), document.body.appendChild(r)), A(n(ke, { options: t, onDestroy: l }), r));
653
+ function w() {
654
+ i || (o || (o = document.createElement("div"), document.body.appendChild(o)), C(n(Le, { options: t, onDestroy: d }), o));
654
655
  }
655
- function h() {
656
- i || (r || (r = document.createElement("div"), document.body.appendChild(r)), A(n(Y, { options: t, onDestroy: l }), r));
656
+ function m() {
657
+ i || (o || (o = document.createElement("div"), document.body.appendChild(o)), C(n(Y, { options: t, onDestroy: d }), o));
657
658
  }
658
659
  function v() {
659
- r && (A(null, r), r.remove(), r = null);
660
+ o && (W(o), o = null, a?.onClose?.());
660
661
  }
661
- function m() {
662
- i || te(t.url, a);
662
+ function _() {
663
+ i || ne(t.url, c);
663
664
  }
664
- function L(b) {
665
+ function h(p) {
665
666
  if (i) return;
666
- const f = URL.createObjectURL(b);
667
- H(f, a), URL.revokeObjectURL(f);
667
+ const r = URL.createObjectURL(p);
668
+ z(r, c), URL.revokeObjectURL(r);
668
669
  }
669
- const p = X(t);
670
- return R(p) ? d() : p === "unknown" ? (h(), je(t.url).then(async (b) => {
670
+ const M = Z(t);
671
+ return H(M) ? w() : M === "unknown" ? (m(), Ee(t.url).then(async (p) => {
671
672
  if (!i) {
672
- if (R(b)) {
673
- t.mode = b, d();
673
+ if (H(p)) {
674
+ t.mode = p, w();
674
675
  return;
675
676
  }
676
677
  try {
677
- const f = await Z(t.url), o = Q(f.type);
678
- if (R(o)) {
679
- s = URL.createObjectURL(f), t.url = s, t.mode = o, d();
678
+ const r = await $(t.url), l = q(r.type);
679
+ if (H(l)) {
680
+ u = URL.createObjectURL(r), t.url = u, t.mode = l, w();
680
681
  return;
681
682
  }
682
- v(), L(f);
683
+ v(), h(r);
683
684
  } catch {
684
- v(), m();
685
+ v(), _();
685
686
  }
686
687
  }
687
- })) : m(), _ = { close: l }, _;
688
- }
689
- function Ce(e) {
690
- P = e;
688
+ })) : (v(), _()), A = { close: d }, A;
691
689
  }
692
690
  function Me(e) {
691
+ return typeof document > "u" ? { close: () => {
692
+ } } : (A?.close(), ae(e));
693
+ }
694
+ function Ye(e) {
695
+ N = e;
696
+ }
697
+ function Be(e) {
693
698
  if (typeof document > "u")
694
699
  return { close: () => {
695
700
  } };
696
- _?.close();
697
- let t = !1, a = document.createElement("div");
698
- document.body.appendChild(a);
699
- const i = () => {
700
- t = !0, a && (A(null, a), a.remove(), a = null), _?.close === i && (_ = null);
701
- }, r = { close: i };
702
- return _ = r, P ? (A(
701
+ A?.close();
702
+ let a = !1, t = document.createElement("div");
703
+ document.body.appendChild(t);
704
+ const c = () => {
705
+ a || (a = !0, t && (W(t), t = null), A?.close === c && (A = null));
706
+ }, i = { close: c };
707
+ return A = i, N ? (C(
703
708
  n(Y, {
704
709
  options: { url: "", name: "附件预览" },
705
710
  title: "正在获取文件信息",
706
711
  desc: "请稍候,获取完成后将自动预览或下载",
707
712
  spinning: !0,
708
- onDestroy: i
713
+ onDestroy: c
709
714
  }),
710
- a
711
- ), P.request(e).then((s) => {
712
- if (t) return;
713
- const l = P?.mapResponse(s, e);
714
- if (!l?.url) {
715
- A(
715
+ t
716
+ ), N.request(e).then((o) => {
717
+ if (a) return;
718
+ const u = N?.mapResponse(o, e);
719
+ if (!u?.url) {
720
+ C(
716
721
  n(Y, {
717
722
  options: { url: "", name: "附件预览" },
718
723
  title: "文件信息缺少 URL",
719
724
  desc: "请检查 mapResponse 是否返回了 url 字段",
720
725
  spinning: !1,
721
- onDestroy: i
726
+ onDestroy: c
722
727
  }),
723
- a
728
+ t
724
729
  );
725
730
  return;
726
731
  }
727
- ne(l);
728
- }).catch((s) => {
729
- if (t) return;
730
- const l = s instanceof Error ? s.message : "接口请求失败";
731
- A(
732
+ const d = ae(u, {
733
+ container: t,
734
+ onClose: () => {
735
+ a = !0, t = null;
736
+ }
737
+ });
738
+ i.close = d.close;
739
+ }).catch((o) => {
740
+ if (a) return;
741
+ const u = o instanceof Error ? o.message : "接口请求失败";
742
+ C(
732
743
  n(Y, {
733
744
  options: { url: "", name: "附件预览" },
734
745
  title: "文件信息获取失败",
735
- desc: l,
746
+ desc: u,
736
747
  spinning: !1,
737
- onDestroy: i
748
+ onDestroy: c
738
749
  }),
739
- a
750
+ t
740
751
  );
741
- }), r) : (A(
752
+ }), i) : (C(
742
753
  n(Y, {
743
754
  options: { url: "", name: "附件预览" },
744
755
  title: "附件预览未初始化",
745
756
  desc: "请先调用 setupJtAttachmentPreview 注册请求配置",
746
757
  spinning: !1,
747
- onDestroy: i
758
+ onDestroy: c
748
759
  }),
749
- a
750
- ), r);
760
+ t
761
+ ), i);
751
762
  }
752
- const Ne = Object.assign(ne, {
753
- openByParams: Me,
754
- setup: Ce
763
+ const Oe = Object.assign(Me, {
764
+ openByParams: Be,
765
+ setup: Ye
755
766
  });
756
767
  export {
757
- Ne as JtAttachmentPreview,
758
- Me as JtAttachmentPreviewByParams,
759
- Ce as setupJtAttachmentPreview
768
+ Oe as JtAttachmentPreview,
769
+ Be as JtAttachmentPreviewByParams,
770
+ Ye as setupJtAttachmentPreview
760
771
  };