@l1yp/file-viewer 0.1.4 → 0.1.6

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.
Files changed (177) hide show
  1. package/README.md +57 -6
  2. package/dist/assets/step.worker-CfDTYOf_.js.map +1 -0
  3. package/dist/components/AnsiText.d.ts +47 -0
  4. package/dist/components/AnsiText.js +41 -0
  5. package/dist/components/AnsiText.js.map +1 -0
  6. package/dist/components/CertViewer.js +1 -1
  7. package/dist/components/CertViewer.js.map +1 -1
  8. package/dist/components/CertViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  9. package/dist/components/CodeView.js +1 -1
  10. package/dist/components/CodeView.js.map +1 -1
  11. package/dist/components/CodeView.vue_vue_type_script_setup_true_lang.js +80 -71
  12. package/dist/components/CodeView.vue_vue_type_script_setup_true_lang.js.map +1 -1
  13. package/dist/components/DocxEmbeddedFiles.js +9 -0
  14. package/dist/components/DocxEmbeddedFiles.js.map +1 -0
  15. package/dist/components/DocxEmbeddedFiles.vue.d.ts +15 -0
  16. package/dist/components/DocxEmbeddedFiles.vue_vue_type_script_setup_true_lang.js +69 -0
  17. package/dist/components/DocxEmbeddedFiles.vue_vue_type_script_setup_true_lang.js.map +1 -0
  18. package/dist/components/DocxNavigationPane.js +1 -1
  19. package/dist/components/DocxNavigationPane.js.map +1 -1
  20. package/dist/components/DocxNavigationPane.vue_vue_type_script_setup_true_lang.js.map +1 -1
  21. package/dist/components/DocxViewer.js +1 -1
  22. package/dist/components/DocxViewer.js.map +1 -1
  23. package/dist/components/DocxViewer.vue.d.ts +1 -1
  24. package/dist/components/DocxViewer.vue_vue_type_script_setup_true_lang.js +182 -50
  25. package/dist/components/DocxViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  26. package/dist/components/EplViewer.js +1 -1
  27. package/dist/components/EplViewer.js.map +1 -1
  28. package/dist/components/EplViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  29. package/dist/components/FileViewerBody.js +1 -1
  30. package/dist/components/FileViewerBody.js.map +1 -1
  31. package/dist/components/FileViewerBody.vue.d.ts +1 -0
  32. package/dist/components/FileViewerBody.vue_vue_type_script_setup_true_lang.js +292 -281
  33. package/dist/components/FileViewerBody.vue_vue_type_script_setup_true_lang.js.map +1 -1
  34. package/dist/components/FileViewerPanel.js +1 -1
  35. package/dist/components/FileViewerPanel.js.map +1 -1
  36. package/dist/components/FileViewerPanel.vue.d.ts +6 -1
  37. package/dist/components/FileViewerPanel.vue_vue_type_script_setup_true_lang.js +53 -51
  38. package/dist/components/FileViewerPanel.vue_vue_type_script_setup_true_lang.js.map +1 -1
  39. package/dist/components/HarViewer.js +1 -1
  40. package/dist/components/HarViewer.js.map +1 -1
  41. package/dist/components/HarViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  42. package/dist/components/JksViewer.js +1 -1
  43. package/dist/components/JksViewer.js.map +1 -1
  44. package/dist/components/JksViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  45. package/dist/components/LogViewer.js +1 -1
  46. package/dist/components/LogViewer.js.map +1 -1
  47. package/dist/components/LogViewer.vue.d.ts +3 -1
  48. package/dist/components/LogViewer.vue_vue_type_script_setup_true_lang.js +284 -280
  49. package/dist/components/LogViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  50. package/dist/components/ModelViewModes.js +9 -0
  51. package/dist/components/ModelViewModes.js.map +1 -0
  52. package/dist/components/ModelViewModes.vue.d.ts +11 -0
  53. package/dist/components/ModelViewModes.vue_vue_type_script_setup_true_lang.js +49 -0
  54. package/dist/components/ModelViewModes.vue_vue_type_script_setup_true_lang.js.map +1 -0
  55. package/dist/components/ModelViewer.js +1 -1
  56. package/dist/components/ModelViewer.js.map +1 -1
  57. package/dist/components/ModelViewer.vue.d.ts +2 -1
  58. package/dist/components/ModelViewer.vue_vue_type_script_setup_true_lang.js +183 -96
  59. package/dist/components/ModelViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  60. package/dist/components/PdfNavigationPane.js +1 -1
  61. package/dist/components/PdfNavigationPane.js.map +1 -1
  62. package/dist/components/PdfNavigationPane.vue_vue_type_script_setup_true_lang.js.map +1 -1
  63. package/dist/components/PdfViewer.js +1 -1
  64. package/dist/components/PdfViewer.js.map +1 -1
  65. package/dist/components/PdfViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  66. package/dist/components/PptxNavigationPane.js +1 -1
  67. package/dist/components/PptxNavigationPane.js.map +1 -1
  68. package/dist/components/PptxNavigationPane.vue_vue_type_script_setup_true_lang.js.map +1 -1
  69. package/dist/components/PsdViewer.js +1 -1
  70. package/dist/components/PsdViewer.js.map +1 -1
  71. package/dist/components/PsdViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  72. package/dist/components/SqliteViewer.js +1 -1
  73. package/dist/components/SqliteViewer.js.map +1 -1
  74. package/dist/components/SqliteViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  75. package/dist/components/ViewerLoadError.js +9 -0
  76. package/dist/components/ViewerLoadError.js.map +1 -0
  77. package/dist/components/ViewerLoadError.vue.d.ts +17 -0
  78. package/dist/components/ViewerLoadError.vue_vue_type_script_setup_true_lang.js +58 -0
  79. package/dist/components/ViewerLoadError.vue_vue_type_script_setup_true_lang.js.map +1 -0
  80. package/dist/components/XlsxChart.js +1 -1
  81. package/dist/components/XlsxChart.js.map +1 -1
  82. package/dist/components/XlsxChart.vue_vue_type_script_setup_true_lang.js +9 -9
  83. package/dist/components/XlsxChart.vue_vue_type_script_setup_true_lang.js.map +1 -1
  84. package/dist/components/XlsxImageLayer.js +9 -0
  85. package/dist/components/XlsxImageLayer.js.map +1 -0
  86. package/dist/components/XlsxImageLayer.vue.d.ts +9 -0
  87. package/dist/components/XlsxImageLayer.vue_vue_type_script_setup_true_lang.js +46 -0
  88. package/dist/components/XlsxImageLayer.vue_vue_type_script_setup_true_lang.js.map +1 -0
  89. package/dist/components/XlsxViewer.js +1 -1
  90. package/dist/components/XlsxViewer.js.map +1 -1
  91. package/dist/components/XlsxViewer.vue_vue_type_script_setup_true_lang.js +230 -216
  92. package/dist/components/XlsxViewer.vue_vue_type_script_setup_true_lang.js.map +1 -1
  93. package/dist/components/epl/EplResource.js +1 -1
  94. package/dist/components/epl/EplResource.js.map +1 -1
  95. package/dist/components/epl/EplResource.vue_vue_type_script_setup_true_lang.js.map +1 -1
  96. package/dist/components/optionalViewer.d.ts +3 -2
  97. package/dist/components/optionalViewer.js +6 -3
  98. package/dist/components/optionalViewer.js.map +1 -1
  99. package/dist/composables/useFileViewer.d.ts +11 -3
  100. package/dist/composables/useFileViewer.js.map +1 -1
  101. package/dist/composables/useTeleportTheme.d.ts +7 -0
  102. package/dist/composables/useTeleportTheme.js +42 -0
  103. package/dist/composables/useTeleportTheme.js.map +1 -0
  104. package/dist/index.d.ts +1 -0
  105. package/dist/index.js +29 -28
  106. package/dist/lib/ansi.d.ts +44 -0
  107. package/dist/lib/ansi.js +224 -0
  108. package/dist/lib/ansi.js.map +1 -0
  109. package/dist/lib/cfb.d.ts +37 -0
  110. package/dist/lib/cfb.js +112 -0
  111. package/dist/lib/cfb.js.map +1 -0
  112. package/dist/lib/docxEmbeddedDom.d.ts +22 -0
  113. package/dist/lib/docxEmbeddedDom.js +128 -0
  114. package/dist/lib/docxEmbeddedDom.js.map +1 -0
  115. package/dist/lib/docxEmbeddings.d.ts +41 -0
  116. package/dist/lib/docxEmbeddings.js +226 -0
  117. package/dist/lib/docxEmbeddings.js.map +1 -0
  118. package/dist/lib/docxTheme.d.ts +6 -0
  119. package/dist/lib/docxTheme.js +64 -0
  120. package/dist/lib/docxTheme.js.map +1 -0
  121. package/dist/lib/epl/code/structures.js +82 -0
  122. package/dist/lib/epl/code/structures.js.map +1 -0
  123. package/dist/lib/epl/code/variable.js +16 -0
  124. package/dist/lib/epl/code/variable.js.map +1 -0
  125. package/dist/lib/epl/eplDocument.js +28 -22
  126. package/dist/lib/epl/eplDocument.js.map +1 -1
  127. package/dist/lib/epl/index.d.ts +2 -1
  128. package/dist/lib/epl/index.js.map +1 -1
  129. package/dist/lib/epl/sections/code.js +37 -0
  130. package/dist/lib/epl/sections/code.js.map +1 -0
  131. package/dist/lib/epl/sections/esystemInfo.js +29 -0
  132. package/dist/lib/epl/sections/esystemInfo.js.map +1 -0
  133. package/dist/lib/epl/sections/losable.js +33 -0
  134. package/dist/lib/epl/sections/losable.js.map +1 -0
  135. package/dist/lib/epl/sections/projectConfig.js +39 -0
  136. package/dist/lib/epl/sections/projectConfig.js.map +1 -0
  137. package/dist/lib/epl/sections/resource.js +84 -0
  138. package/dist/lib/epl/sections/resource.js.map +1 -0
  139. package/dist/lib/fileType.d.ts +3 -1
  140. package/dist/lib/fileType.js +150 -137
  141. package/dist/lib/fileType.js.map +1 -1
  142. package/dist/lib/modelAppearance.d.ts +7 -0
  143. package/dist/lib/modelAppearance.js +41 -0
  144. package/dist/lib/modelAppearance.js.map +1 -0
  145. package/dist/lib/msi.js +62 -154
  146. package/dist/lib/msi.js.map +1 -1
  147. package/dist/lib/olePackage.d.ts +8 -0
  148. package/dist/lib/olePackage.js +37 -0
  149. package/dist/lib/olePackage.js.map +1 -0
  150. package/dist/lib/pptxFirstSlide.d.ts +11 -0
  151. package/dist/lib/pptxFirstSlide.js +34 -0
  152. package/dist/lib/pptxFirstSlide.js.map +1 -0
  153. package/dist/lib/step.d.ts +10 -0
  154. package/dist/lib/step.js +35 -0
  155. package/dist/lib/step.js.map +1 -0
  156. package/dist/lib/step.worker.d.ts +1 -0
  157. package/dist/lib/step.worker.js +18 -0
  158. package/dist/lib/step.worker.js.map +1 -0
  159. package/dist/lib/stepObject.d.ts +4 -0
  160. package/dist/lib/stepObject.js +52 -0
  161. package/dist/lib/stepObject.js.map +1 -0
  162. package/dist/lib/stepTypes.d.ts +60 -0
  163. package/dist/lib/viewerKind.js +10 -5
  164. package/dist/lib/viewerKind.js.map +1 -1
  165. package/dist/lib/xlsx.d.ts +1 -1
  166. package/dist/lib/xlsx.js +106 -89
  167. package/dist/lib/xlsx.js.map +1 -1
  168. package/dist/lib/xlsxCharts.js +71 -119
  169. package/dist/lib/xlsxCharts.js.map +1 -1
  170. package/dist/lib/xlsxImages.d.ts +43 -0
  171. package/dist/lib/xlsxImages.js +114 -0
  172. package/dist/lib/xlsxImages.js.map +1 -0
  173. package/dist/lib/xlsxParts.d.ts +17 -0
  174. package/dist/lib/xlsxParts.js +86 -0
  175. package/dist/lib/xlsxParts.js.map +1 -0
  176. package/dist/style.css +1 -1
  177. package/package.json +8 -3
@@ -2,68 +2,67 @@ import { fileExt as e } from "../lib/fileType.js";
2
2
  import { looksLikeMindMap as t } from "../lib/mindmap.js";
3
3
  import { skipsTextLoad as n } from "../lib/viewerKind.js";
4
4
  import { optionalViewer as r } from "./optionalViewer.js";
5
- import { VIEWER_FORMATTERS as i, applyFormatter as ee, findFormatter as te } from "../lib/viewerFormats.js";
6
- import { parseFrontmatter as ne } from "../lib/frontmatter.js";
7
- import { formatBytes as re } from "../lib/format.js";
8
- import a from "./icons/Icon.js";
9
- import ie from "./CodeView.js";
10
- import ae from "./MarkdownText.js";
11
- import oe from "./FrontmatterCard.js";
12
- import se from "./ZoomImage.js";
13
- import { Fragment as o, Teleport as ce, computed as s, createBlock as c, createCommentVNode as l, createElementBlock as u, createElementVNode as d, createVNode as f, defineAsyncComponent as p, defineComponent as m, normalizeClass as h, onBeforeUnmount as le, openBlock as g, ref as _, renderList as v, toDisplayString as y, unref as b, watch as x } from "vue";
5
+ import { useTeleportTheme as ee } from "../composables/useTeleportTheme.js";
6
+ import { VIEWER_FORMATTERS as i, applyFormatter as te, findFormatter as ne } from "../lib/viewerFormats.js";
7
+ import { parseFrontmatter as re } from "../lib/frontmatter.js";
8
+ import { formatBytes as ie } from "../lib/format.js";
9
+ import { ansiPlainText as a } from "../lib/ansi.js";
10
+ import o from "./icons/Icon.js";
11
+ import ae from "./CodeView.js";
12
+ import oe from "./MarkdownText.js";
13
+ import se from "./FrontmatterCard.js";
14
+ import ce from "./ZoomImage.js";
15
+ import { Fragment as s, Teleport as le, computed as c, createBlock as l, createCommentVNode as u, createElementBlock as d, createElementVNode as f, createVNode as p, defineAsyncComponent as m, defineComponent as h, normalizeClass as g, normalizeStyle as ue, onBeforeUnmount as de, openBlock as _, ref as v, renderList as y, toDisplayString as b, unref as x, useTemplateRef as S, watch as C } from "vue";
14
16
  //#region src/components/FileViewerBody.vue?vue&type=script&setup=true&lang.ts
15
- var ue = { class: "fvb" }, de = {
17
+ var fe = {
16
18
  key: 0,
17
19
  class: "fvb__fmtbar"
18
- }, fe = ["onClick"], pe = {
20
+ }, pe = ["onClick"], me = {
19
21
  key: 35,
20
22
  class: "fvb__imagezoom"
21
- }, me = {
23
+ }, he = {
22
24
  key: 36,
23
25
  class: "fvb__video"
24
- }, he = ["src"], ge = {
26
+ }, ge = ["src"], _e = {
25
27
  key: 37,
26
28
  class: "fvb__binary"
27
- }, _e = {
29
+ }, ve = {
28
30
  key: 0,
29
31
  class: "fvb__binary-sub"
30
- }, ve = ["href", "download"], ye = { class: "fvb__openas" }, be = { class: "fvb__openas-grid" }, xe = ["onClick"], Se = {
32
+ }, ye = ["href", "download"], be = { class: "fvb__openas" }, xe = { class: "fvb__openas-grid" }, Se = ["onClick"], Ce = {
31
33
  key: 38,
32
34
  class: "fvb__msg"
33
- }, Ce = {
35
+ }, we = {
34
36
  key: 39,
35
37
  class: "fvb__msg fvb__msg--error"
36
- }, S = {
38
+ }, w = {
37
39
  key: 40,
38
40
  class: "fvb__scroll fvb__scroll--doc"
39
- }, C = { class: "fvb__markdown" }, w = {
41
+ }, T = { class: "fvb__markdown" }, E = {
40
42
  key: 41,
41
43
  class: "fvb__html"
42
- }, T = { class: "fvb__htmlbar" }, E = ["title"], D = ["src", "sandbox"], O = {
43
- key: 0,
44
- class: "fvb__fs"
45
- }, k = { class: "fvb__fsbar" }, A = ["title"], we = ["src", "sandbox"], Te = {
44
+ }, D = { class: "fvb__htmlbar" }, O = ["title"], k = ["src", "sandbox"], Te = { class: "fvb__fsbar" }, Ee = ["title"], De = ["src", "sandbox"], Oe = {
46
45
  key: 42,
47
46
  class: "fvb__svg"
48
- }, Ee = ["src", "alt"], De = {
47
+ }, ke = ["src", "alt"], Ae = {
49
48
  key: 43,
50
49
  class: "fvb__fill"
51
- }, Oe = {
50
+ }, je = {
52
51
  key: 44,
53
52
  class: "fvb__fill"
54
- }, ke = {
53
+ }, Me = {
55
54
  key: 45,
56
55
  class: "fvb__fill"
57
- }, Ae = {
56
+ }, Ne = {
58
57
  key: 46,
59
58
  class: "fvb__fill"
60
- }, je = {
59
+ }, Pe = {
61
60
  key: 47,
62
61
  class: "fvb__fill"
63
- }, Me = {
62
+ }, Fe = {
64
63
  key: 48,
65
64
  class: "fvb__fill"
66
- }, Ne = "<meta http-equiv=\"Content-Security-Policy\" content=\"script-src 'none'; object-src 'none'; base-uri 'none'; form-action 'none'\">", Pe = "<meta http-equiv=\"Content-Security-Policy\" content=\"default-src 'unsafe-inline' 'unsafe-eval' data: blob: https: http:; connect-src data: blob: https: http: ws: wss:; object-src 'none'; base-uri 'none'\">", j = /*@__PURE__*/ m({
65
+ }, Ie = "<meta http-equiv=\"Content-Security-Policy\" content=\"script-src 'none'; object-src 'none'; base-uri 'none'; form-action 'none'\">", Le = "<meta http-equiv=\"Content-Security-Policy\" content=\"default-src 'unsafe-inline' 'unsafe-eval' data: blob: https: http:; connect-src data: blob: https: http: ws: wss:; object-src 'none'; base-uri 'none'\">", A = /*@__PURE__*/ h({
67
66
  __name: "FileViewerBody",
68
67
  props: {
69
68
  file: {},
@@ -79,24 +78,24 @@ var ue = { class: "fvb" }, de = {
79
78
  "formatchange",
80
79
  "formatpick"
81
80
  ],
82
- setup(m, { expose: j, emit: Fe }) {
83
- let M = m, N = Fe, Ie = p(() => import("./ZipBrowser.js")), Le = p(() => import("./SevenZipBrowser.js")), Re = p(() => import("./ArchiveBrowser.js")), ze = p(() => import("./BinObjBrowser.js")), Be = p(() => import("./EplViewer.js")), Ve = p(() => import("./ClassViewer.js")), He = p(() => import("./HprofViewer.js")), Ue = p(() => import("./MsiViewer.js")), We = p(() => import("./AppxViewer.js")), Ge = r(() => import("./DicomViewer.js"), "dicom-parser", "DICOM 影像"), Ke = r(() => import("./DocxViewer.js"), "docx-preview", "Word 文档"), qe = r(() => import("./XlsxViewer.js"), ["exceljs", "numfmt"], "Excel 表格"), Je = r(() => import("./PptxViewer.js"), ["@aiden0z/pptx-renderer", "pdfjs-dist"], "PowerPoint"), Ye = p(() => import("./RtfViewer.js")), Xe = r(() => import("./PdfViewer.js"), "pdfjs-dist", "PDF"), Ze = p(() => import("./MindMapView.js")), Qe = p(() => import("./XmindViewer.js")), $e = p(() => import("./EmlViewer.js")), P = p(() => import("./MhtViewer.js")), et = p(() => import("./HarViewer.js")), tt = r(() => import("./SqliteViewer.js"), "sql.js", "SQLite 数据库"), nt = p(() => import("./SubtitleViewer.js")), rt = p(() => import("./FontViewer.js")), it = p(() => import("./NotebookViewer.js")), at = p(() => import("./GeoViewer.js")), ot = p(() => import("./CsvViewer.js")), st = p(() => import("./JsonlViewer.js")), ct = p(() => import("./CertViewer.js")), lt = p(() => import("./JksViewer.js")), ut = p(() => import("./AudioViewer.js")), dt = p(() => import("./QmcAudioViewer.js")), ft = p(() => import("./LrcViewer.js")), pt = p(() => import("./LogViewer.js")), mt = r(() => import("./ModelViewer.js"), "three", "3D 模型"), ht = p(() => import("./RasterViewer.js")), gt = p(() => import("./PsdViewer.js")), _t = p(() => import("./EbookViewer.js")), vt = p(() => import("./DrawioViewer.js")), yt = p(() => import("./DxfViewer.js")), bt = p(() => import("./HexViewer.js")), F = _(""), I = _(null), L = s(() => I.value ?? M.file);
84
- function R(e) {
85
- F.value = e.key, I.value = ee(M.file, e);
81
+ setup(h, { expose: A, emit: Re }) {
82
+ let j = h, M = Re, ze = m(() => import("./ZipBrowser.js")), Be = m(() => import("./SevenZipBrowser.js")), Ve = m(() => import("./ArchiveBrowser.js")), He = m(() => import("./BinObjBrowser.js")), Ue = m(() => import("./EplViewer.js")), We = m(() => import("./ClassViewer.js")), Ge = m(() => import("./HprofViewer.js")), Ke = m(() => import("./MsiViewer.js")), qe = m(() => import("./AppxViewer.js")), Je = r(() => import("./DicomViewer.js"), "dicom-parser", "DICOM 影像"), N = r(() => import("./DocxViewer.js"), "docx-preview", "Word 文档"), Ye = r(() => import("./XlsxViewer.js"), ["exceljs", "numfmt"], "Excel 表格"), Xe = r(() => import("./PptxViewer.js"), ["@aiden0z/pptx-renderer", "pdfjs-dist"], "PowerPoint"), Ze = m(() => import("./RtfViewer.js")), Qe = r(() => import("./PdfViewer.js"), "pdfjs-dist", "PDF"), $e = m(() => import("./MindMapView.js")), et = m(() => import("./XmindViewer.js")), tt = m(() => import("./EmlViewer.js")), nt = m(() => import("./MhtViewer.js")), rt = m(() => import("./HarViewer.js")), it = r(() => import("./SqliteViewer.js"), "sql.js", "SQLite 数据库"), at = m(() => import("./SubtitleViewer.js")), ot = m(() => import("./FontViewer.js")), st = m(() => import("./NotebookViewer.js")), ct = m(() => import("./GeoViewer.js")), lt = m(() => import("./CsvViewer.js")), ut = m(() => import("./JsonlViewer.js")), dt = m(() => import("./CertViewer.js")), ft = m(() => import("./JksViewer.js")), pt = m(() => import("./AudioViewer.js")), mt = m(() => import("./QmcAudioViewer.js")), ht = m(() => import("./LrcViewer.js")), gt = m(() => import("./LogViewer.js")), _t = r(() => import("./ModelViewer.js"), "three", "3D 模型"), vt = m(() => import("./RasterViewer.js")), yt = m(() => import("./PsdViewer.js")), bt = m(() => import("./EbookViewer.js")), xt = m(() => import("./DrawioViewer.js")), St = m(() => import("./DxfViewer.js")), Ct = m(() => import("./HexViewer.js")), wt = S("logViewer"), P = v(""), F = v(null), I = c(() => F.value ?? j.file);
83
+ function L(e) {
84
+ P.value = e.key, F.value = te(j.file, e);
86
85
  }
87
- function xt(e) {
88
- let t = te(e);
89
- t && R(t);
86
+ function Tt(e) {
87
+ let t = ne(e);
88
+ t && L(t);
90
89
  }
91
- function St() {
92
- F.value = "", I.value = null;
90
+ function Et() {
91
+ P.value = "", F.value = null;
93
92
  }
94
- x(F, (e) => N("formatpick", e));
95
- let z = _("loading"), B = _(""), V = _(""), Ct = s(() => L.value.mindmap === !0 && z.value === "ready" && t(B.value, e(L.value.name))), H = s(() => L.value.lang === "markdown" ? ne(B.value) : {
93
+ C(P, (e) => M("formatpick", e));
94
+ let R = v("loading"), z = v(""), B = v(""), Dt = c(() => I.value.mindmap === !0 && R.value === "ready" && t(z.value, e(I.value.name))), V = c(() => I.value.lang === "markdown" ? re(z.value) : {
96
95
  data: {},
97
- body: B.value
98
- }), wt = s(() => Object.keys(H.value.data).length > 0), Tt = s(() => B.value.replace(/\n$/, "")), Et = s(() => B.value ? `data:image/svg+xml,${encodeURIComponent(B.value)}` : "");
99
- function U(e, t) {
96
+ body: z.value
97
+ }), Ot = c(() => Object.keys(V.value.data).length > 0), kt = c(() => z.value.replace(/\n$/, "")), At = c(() => z.value ? `data:image/svg+xml,${encodeURIComponent(z.value)}` : "");
98
+ function H(e, t) {
100
99
  let n = e.match(/<head[^>]*>/i);
101
100
  if (n) {
102
101
  let r = (n.index ?? 0) + n[0].length;
@@ -104,499 +103,511 @@ var ue = { class: "fvb" }, de = {
104
103
  }
105
104
  return `<!doctype html><html><head><meta charset="utf-8">${t}</head><body>${e}</body></html>`;
106
105
  }
107
- let W = _(""), G = _(""), K = _(!1), q = _(!1), J = s(() => K.value ? G.value : W.value), Y = s(() => M.htmlPreview ?? B.value);
106
+ let U = v(""), W = v(""), G = v(!1), K = v(!1), q = S("viewerElement"), jt = ee(q, K), J = c(() => G.value ? W.value : U.value), Y = c(() => j.htmlPreview ?? z.value);
108
107
  function X() {
109
- W.value &&= (URL.revokeObjectURL(W.value), ""), G.value &&= (URL.revokeObjectURL(G.value), "");
108
+ U.value &&= (URL.revokeObjectURL(U.value), ""), W.value &&= (URL.revokeObjectURL(W.value), "");
110
109
  }
111
- x([() => L.value.html, Y], ([e, t]) => {
112
- X(), K.value = !1, q.value = !1, e && typeof URL < "u" && URL.createObjectURL && (W.value = URL.createObjectURL(new Blob([U(t, Ne)], { type: "text/html" })));
110
+ C([() => I.value.html, Y], ([e, t]) => {
111
+ X(), G.value = !1, K.value = !1, e && typeof URL < "u" && URL.createObjectURL && (U.value = URL.createObjectURL(new Blob([H(t, Ie)], { type: "text/html" })));
113
112
  });
114
113
  function Z() {
115
- if (K.value) {
116
- K.value = !1;
114
+ if (G.value) {
115
+ G.value = !1;
117
116
  return;
118
117
  }
119
- typeof URL < "u" && URL.createObjectURL && !G.value && (G.value = URL.createObjectURL(new Blob([U(Y.value, Pe)], { type: "text/html" }))), K.value = !0;
118
+ typeof URL < "u" && URL.createObjectURL && !W.value && (W.value = URL.createObjectURL(new Blob([H(Y.value, Le)], { type: "text/html" }))), G.value = !0;
120
119
  }
121
120
  function Q(e) {
122
- e.key === "Escape" && (q.value = !1);
121
+ e.key === "Escape" && (K.value = !1);
123
122
  }
124
- x(q, (e) => {
123
+ C(K, (e) => {
125
124
  typeof window > "u" || (e ? (window.addEventListener("keydown", Q), document.body.style.overflow = "hidden") : (window.removeEventListener("keydown", Q), document.body.style.overflow = ""));
126
125
  });
127
126
  async function $(e = !1) {
128
- let t = L.value;
127
+ let t = I.value;
129
128
  if (n(t)) {
130
- B.value = "", z.value = "ready";
129
+ z.value = "", R.value = "ready";
131
130
  return;
132
131
  }
133
132
  if (t.content != null) {
134
- B.value = t.content, z.value = "ready", N("loaded", t.content);
133
+ z.value = t.content, R.value = "ready", M("loaded", a(t.content));
135
134
  return;
136
135
  }
137
136
  if (!t.url) {
138
- B.value = "", z.value = "ready";
137
+ z.value = "", R.value = "ready";
139
138
  return;
140
139
  }
141
- z.value = "loading", V.value = "";
140
+ R.value = "loading", B.value = "";
142
141
  try {
143
142
  let n = await fetch(t.url, e ? { cache: "no-store" } : {});
144
143
  if (!n.ok) throw Error(`HTTP ${n.status}`);
145
144
  let r = await n.text();
146
- B.value = r, z.value = "ready", N("loaded", r);
145
+ z.value = r, R.value = "ready", M("loaded", a(r));
147
146
  } catch (e) {
148
- V.value = String(e), z.value = "error";
147
+ B.value = String(e), R.value = "error";
149
148
  }
150
149
  }
151
- return x(() => M.file, () => {
152
- I.value = null, F.value = "";
153
- }), x(L, (e) => {
154
- N("formatchange", e), $();
155
- }, { immediate: !0 }), le(() => {
150
+ return C(() => j.file, () => {
151
+ F.value = null, P.value = "";
152
+ }), C(I, (e) => {
153
+ M("formatchange", e), $();
154
+ }, { immediate: !0 }), de(() => {
156
155
  X(), typeof window < "u" && (window.removeEventListener("keydown", Q), document.body.style.overflow = "");
157
- }), j({
156
+ }), A({
158
157
  reload: () => $(!0),
159
- pickFormat: xt,
160
- resetFormat: St
161
- }), (e, t) => (g(), u("div", ue, [I.value && !m.hostChooser ? (g(), u("div", de, [t[3] ||= d("span", { class: "fvb__fmtbar-label" }, "格式", -1), (g(!0), u(o, null, v(b(i), (e) => (g(), u("button", {
158
+ pickFormat: Tt,
159
+ resetFormat: Et,
160
+ copyText: () => I.value.log ? wt.value?.copyText() ?? "" : a(z.value)
161
+ }), (e, t) => (_(), d("div", {
162
+ ref_key: "viewerElement",
163
+ ref: q,
164
+ class: "fvb"
165
+ }, [F.value && !h.hostChooser ? (_(), d("div", fe, [t[3] ||= f("span", { class: "fvb__fmtbar-label" }, "格式", -1), (_(!0), d(s, null, y(x(i), (e) => (_(), d("button", {
162
166
  key: e.key,
163
167
  type: "button",
164
- class: h(["fvb__fmtchip", { "fvb__fmtchip--on": F.value === e.key }]),
165
- onClick: (t) => R(e)
166
- }, [f(a, {
168
+ class: g(["fvb__fmtchip", { "fvb__fmtchip--on": P.value === e.key }]),
169
+ onClick: (t) => L(e)
170
+ }, [p(o, {
167
171
  name: e.icon,
168
172
  size: 13
169
- }, null, 8, ["name"]), d("span", null, y(e.label), 1)], 10, fe))), 128))])) : l("", !0), L.value.zip ? (g(), c(b(Ie), {
173
+ }, null, 8, ["name"]), f("span", null, b(e.label), 1)], 10, pe))), 128))])) : u("", !0), I.value.zip ? (_(), l(x(ze), {
170
174
  key: 1,
171
- url: L.value.url ?? "",
172
- name: L.value.name
173
- }, null, 8, ["url", "name"])) : L.value.sevenZip ? (g(), c(b(Le), {
175
+ url: I.value.url ?? "",
176
+ name: I.value.name
177
+ }, null, 8, ["url", "name"])) : I.value.sevenZip ? (_(), l(x(Be), {
174
178
  key: 2,
175
- url: L.value.url ?? "",
176
- name: L.value.name
177
- }, null, 8, ["url", "name"])) : L.value.archive ? (g(), c(b(Re), {
179
+ url: I.value.url ?? "",
180
+ name: I.value.name
181
+ }, null, 8, ["url", "name"])) : I.value.archive ? (_(), l(x(Ve), {
178
182
  key: 3,
179
- url: L.value.url ?? "",
180
- name: L.value.name,
181
- kind: L.value.archive
183
+ url: I.value.url ?? "",
184
+ name: I.value.name,
185
+ kind: I.value.archive
182
186
  }, null, 8, [
183
187
  "url",
184
188
  "name",
185
189
  "kind"
186
- ])) : L.value.binobj ? (g(), c(b(ze), {
190
+ ])) : I.value.binobj ? (_(), l(x(He), {
187
191
  key: 4,
188
- url: L.value.url ?? "",
189
- name: L.value.name,
190
- size: L.value.size
192
+ url: I.value.url ?? "",
193
+ name: I.value.name,
194
+ size: I.value.size
191
195
  }, null, 8, [
192
196
  "url",
193
197
  "name",
194
198
  "size"
195
- ])) : L.value.epl ? (g(), c(b(Be), {
199
+ ])) : I.value.epl ? (_(), l(x(Ue), {
196
200
  key: 5,
197
- url: L.value.url ?? "",
198
- name: L.value.name,
199
- size: L.value.size
201
+ url: I.value.url ?? "",
202
+ name: I.value.name,
203
+ size: I.value.size
200
204
  }, null, 8, [
201
205
  "url",
202
206
  "name",
203
207
  "size"
204
- ])) : L.value.javaClass ? (g(), c(b(Ve), {
208
+ ])) : I.value.javaClass ? (_(), l(x(We), {
205
209
  key: 6,
206
- url: L.value.url ?? "",
207
- name: L.value.name,
208
- size: L.value.size
210
+ url: I.value.url ?? "",
211
+ name: I.value.name,
212
+ size: I.value.size
209
213
  }, null, 8, [
210
214
  "url",
211
215
  "name",
212
216
  "size"
213
- ])) : L.value.hprof ? (g(), c(b(He), {
217
+ ])) : I.value.hprof ? (_(), l(x(Ge), {
214
218
  key: 7,
215
- url: L.value.url ?? "",
216
- name: L.value.name,
217
- size: L.value.size
219
+ url: I.value.url ?? "",
220
+ name: I.value.name,
221
+ size: I.value.size
218
222
  }, null, 8, [
219
223
  "url",
220
224
  "name",
221
225
  "size"
222
- ])) : L.value.msi ? (g(), c(b(Ue), {
226
+ ])) : I.value.msi ? (_(), l(x(Ke), {
223
227
  key: 8,
224
- url: L.value.url ?? "",
225
- name: L.value.name,
226
- size: L.value.size
228
+ url: I.value.url ?? "",
229
+ name: I.value.name,
230
+ size: I.value.size
227
231
  }, null, 8, [
228
232
  "url",
229
233
  "name",
230
234
  "size"
231
- ])) : L.value.appx ? (g(), c(b(We), {
235
+ ])) : I.value.appx ? (_(), l(x(qe), {
232
236
  key: 9,
233
- url: L.value.url ?? "",
234
- name: L.value.name,
235
- size: L.value.size
237
+ url: I.value.url ?? "",
238
+ name: I.value.name,
239
+ size: I.value.size
236
240
  }, null, 8, [
237
241
  "url",
238
242
  "name",
239
243
  "size"
240
- ])) : L.value.xmind ? (g(), c(b(Qe), {
244
+ ])) : I.value.xmind ? (_(), l(x(et), {
241
245
  key: 10,
242
- url: L.value.url ?? "",
243
- name: L.value.name,
244
- size: L.value.size
246
+ url: I.value.url ?? "",
247
+ name: I.value.name,
248
+ size: I.value.size
245
249
  }, null, 8, [
246
250
  "url",
247
251
  "name",
248
252
  "size"
249
- ])) : L.value.dxf ? (g(), c(b(yt), {
253
+ ])) : I.value.dxf ? (_(), l(x(St), {
250
254
  key: 11,
251
- url: L.value.url ?? "",
252
- name: L.value.name,
253
- size: L.value.size
255
+ url: I.value.url ?? "",
256
+ name: I.value.name,
257
+ size: I.value.size
254
258
  }, null, 8, [
255
259
  "url",
256
260
  "name",
257
261
  "size"
258
- ])) : L.value.dicom ? (g(), c(b(Ge), {
262
+ ])) : I.value.dicom ? (_(), l(x(Je), {
259
263
  key: 12,
260
- url: L.value.url ?? "",
261
- name: L.value.name,
262
- size: L.value.size
264
+ url: I.value.url ?? "",
265
+ name: I.value.name,
266
+ size: I.value.size
263
267
  }, null, 8, [
264
268
  "url",
265
269
  "name",
266
270
  "size"
267
- ])) : L.value.docx ? (g(), c(b(Ke), {
271
+ ])) : I.value.docx ? (_(), l(x(N), {
268
272
  key: 13,
269
- url: L.value.url ?? "",
270
- name: L.value.name,
271
- size: L.value.size
273
+ url: I.value.url ?? "",
274
+ name: I.value.name,
275
+ size: I.value.size
272
276
  }, null, 8, [
273
277
  "url",
274
278
  "name",
275
279
  "size"
276
- ])) : L.value.xlsx ? (g(), c(b(qe), {
280
+ ])) : I.value.xlsx ? (_(), l(x(Ye), {
277
281
  key: 14,
278
- url: L.value.url ?? "",
279
- name: L.value.name,
280
- size: L.value.size
282
+ url: I.value.url ?? "",
283
+ name: I.value.name,
284
+ size: I.value.size
281
285
  }, null, 8, [
282
286
  "url",
283
287
  "name",
284
288
  "size"
285
- ])) : L.value.pptx ? (g(), c(b(Je), {
289
+ ])) : I.value.pptx ? (_(), l(x(Xe), {
286
290
  key: 15,
287
- url: L.value.url ?? "",
288
- name: L.value.name,
289
- size: L.value.size
291
+ url: I.value.url ?? "",
292
+ name: I.value.name,
293
+ size: I.value.size
290
294
  }, null, 8, [
291
295
  "url",
292
296
  "name",
293
297
  "size"
294
- ])) : L.value.rtf ? (g(), c(b(Ye), {
298
+ ])) : I.value.rtf ? (_(), l(x(Ze), {
295
299
  key: 16,
296
- url: L.value.url ?? "",
297
- name: L.value.name,
298
- size: L.value.size
300
+ url: I.value.url ?? "",
301
+ name: I.value.name,
302
+ size: I.value.size
299
303
  }, null, 8, [
300
304
  "url",
301
305
  "name",
302
306
  "size"
303
- ])) : L.value.pdf ? (g(), c(b(Xe), {
307
+ ])) : I.value.pdf ? (_(), l(x(Qe), {
304
308
  key: 17,
305
- url: L.value.url ?? "",
306
- name: L.value.name,
307
- size: L.value.size
309
+ url: I.value.url ?? "",
310
+ name: I.value.name,
311
+ size: I.value.size
308
312
  }, null, 8, [
309
313
  "url",
310
314
  "name",
311
315
  "size"
312
- ])) : L.value.eml ? (g(), c(b($e), {
316
+ ])) : I.value.eml ? (_(), l(x(tt), {
313
317
  key: 18,
314
- url: L.value.url ?? "",
315
- name: L.value.name,
316
- size: L.value.size
318
+ url: I.value.url ?? "",
319
+ name: I.value.name,
320
+ size: I.value.size
317
321
  }, null, 8, [
318
322
  "url",
319
323
  "name",
320
324
  "size"
321
- ])) : L.value.mht ? (g(), c(b(P), {
325
+ ])) : I.value.mht ? (_(), l(x(nt), {
322
326
  key: 19,
323
- url: L.value.url ?? "",
324
- name: L.value.name,
325
- size: L.value.size
327
+ url: I.value.url ?? "",
328
+ name: I.value.name,
329
+ size: I.value.size
326
330
  }, null, 8, [
327
331
  "url",
328
332
  "name",
329
333
  "size"
330
- ])) : L.value.har ? (g(), c(b(et), {
334
+ ])) : I.value.har ? (_(), l(x(rt), {
331
335
  key: 20,
332
- url: L.value.url ?? "",
333
- name: L.value.name,
334
- size: L.value.size
336
+ url: I.value.url ?? "",
337
+ name: I.value.name,
338
+ size: I.value.size
335
339
  }, null, 8, [
336
340
  "url",
337
341
  "name",
338
342
  "size"
339
- ])) : L.value.sqlite ? (g(), c(b(tt), {
343
+ ])) : I.value.sqlite ? (_(), l(x(it), {
340
344
  key: 21,
341
- url: L.value.url ?? "",
342
- name: L.value.name,
343
- size: L.value.size
345
+ url: I.value.url ?? "",
346
+ name: I.value.name,
347
+ size: I.value.size
344
348
  }, null, 8, [
345
349
  "url",
346
350
  "name",
347
351
  "size"
348
- ])) : L.value.cert ? (g(), c(b(ct), {
352
+ ])) : I.value.cert ? (_(), l(x(dt), {
349
353
  key: 22,
350
- url: L.value.url ?? "",
351
- name: L.value.name,
352
- size: L.value.size
354
+ url: I.value.url ?? "",
355
+ name: I.value.name,
356
+ size: I.value.size
353
357
  }, null, 8, [
354
358
  "url",
355
359
  "name",
356
360
  "size"
357
- ])) : L.value.jks ? (g(), c(b(lt), {
361
+ ])) : I.value.jks ? (_(), l(x(ft), {
358
362
  key: 23,
359
- url: L.value.url ?? "",
360
- name: L.value.name,
361
- size: L.value.size
363
+ url: I.value.url ?? "",
364
+ name: I.value.name,
365
+ size: I.value.size
362
366
  }, null, 8, [
363
367
  "url",
364
368
  "name",
365
369
  "size"
366
- ])) : L.value.font ? (g(), c(b(rt), {
370
+ ])) : I.value.font ? (_(), l(x(ot), {
367
371
  key: 24,
368
- url: L.value.url ?? "",
369
- name: L.value.name,
370
- size: L.value.size
372
+ url: I.value.url ?? "",
373
+ name: I.value.name,
374
+ size: I.value.size
371
375
  }, null, 8, [
372
376
  "url",
373
377
  "name",
374
378
  "size"
375
- ])) : L.value.ipynb ? (g(), c(b(it), {
379
+ ])) : I.value.ipynb ? (_(), l(x(st), {
376
380
  key: 25,
377
- url: L.value.url ?? "",
378
- name: L.value.name,
379
- size: L.value.size
381
+ url: I.value.url ?? "",
382
+ name: I.value.name,
383
+ size: I.value.size
380
384
  }, null, 8, [
381
385
  "url",
382
386
  "name",
383
387
  "size"
384
- ])) : L.value.audio ? (g(), c(b(ut), {
388
+ ])) : I.value.audio ? (_(), l(x(pt), {
385
389
  key: 26,
386
- url: L.value.url ?? "",
387
- name: L.value.name,
388
- size: L.value.size
390
+ url: I.value.url ?? "",
391
+ name: I.value.name,
392
+ size: I.value.size
389
393
  }, null, 8, [
390
394
  "url",
391
395
  "name",
392
396
  "size"
393
- ])) : L.value.qmc ? (g(), c(b(dt), {
397
+ ])) : I.value.qmc ? (_(), l(x(mt), {
394
398
  key: 27,
395
- url: L.value.url ?? "",
396
- name: L.value.name,
397
- size: L.value.size
399
+ url: I.value.url ?? "",
400
+ name: I.value.name,
401
+ size: I.value.size
398
402
  }, null, 8, [
399
403
  "url",
400
404
  "name",
401
405
  "size"
402
- ])) : L.value.lrc ? (g(), c(b(ft), {
406
+ ])) : I.value.lrc ? (_(), l(x(ht), {
403
407
  key: 28,
404
- url: L.value.url ?? "",
405
- name: L.value.name,
406
- size: L.value.size
408
+ url: I.value.url ?? "",
409
+ name: I.value.name,
410
+ size: I.value.size
407
411
  }, null, 8, [
408
412
  "url",
409
413
  "name",
410
414
  "size"
411
- ])) : L.value.log ? (g(), c(b(pt), {
415
+ ])) : I.value.log ? (_(), l(x(gt), {
412
416
  key: 29,
413
- url: L.value.url ?? "",
414
- name: L.value.name,
415
- size: L.value.size
417
+ ref: "logViewer",
418
+ url: I.value.url ?? "",
419
+ name: I.value.name,
420
+ size: I.value.size
416
421
  }, null, 8, [
417
422
  "url",
418
423
  "name",
419
424
  "size"
420
- ])) : L.value.model ? (g(), c(b(mt), {
425
+ ])) : I.value.model ? (_(), l(x(_t), {
421
426
  key: 30,
422
- url: L.value.url ?? "",
423
- name: L.value.name,
424
- size: L.value.size
427
+ url: I.value.url ?? "",
428
+ name: I.value.name,
429
+ size: I.value.size,
430
+ format: I.value.modelFormat
425
431
  }, null, 8, [
426
432
  "url",
427
433
  "name",
428
- "size"
429
- ])) : L.value.raster === "psd" ? (g(), c(b(gt), {
434
+ "size",
435
+ "format"
436
+ ])) : I.value.raster === "psd" ? (_(), l(x(yt), {
430
437
  key: 31,
431
- url: L.value.url ?? "",
432
- name: L.value.name,
433
- size: L.value.size
438
+ url: I.value.url ?? "",
439
+ name: I.value.name,
440
+ size: I.value.size
434
441
  }, null, 8, [
435
442
  "url",
436
443
  "name",
437
444
  "size"
438
- ])) : L.value.raster ? (g(), c(b(ht), {
445
+ ])) : I.value.raster ? (_(), l(x(vt), {
439
446
  key: 32,
440
- url: L.value.url ?? "",
441
- name: L.value.name,
442
- size: L.value.size,
443
- kind: L.value.raster
447
+ url: I.value.url ?? "",
448
+ name: I.value.name,
449
+ size: I.value.size,
450
+ kind: I.value.raster
444
451
  }, null, 8, [
445
452
  "url",
446
453
  "name",
447
454
  "size",
448
455
  "kind"
449
- ])) : L.value.ebook ? (g(), c(b(_t), {
456
+ ])) : I.value.ebook ? (_(), l(x(bt), {
450
457
  key: 33,
451
- url: L.value.url ?? "",
452
- name: L.value.name,
453
- size: L.value.size,
454
- kind: L.value.ebook
458
+ url: I.value.url ?? "",
459
+ name: I.value.name,
460
+ size: I.value.size,
461
+ kind: I.value.ebook
455
462
  }, null, 8, [
456
463
  "url",
457
464
  "name",
458
465
  "size",
459
466
  "kind"
460
- ])) : L.value.hex ? (g(), c(b(bt), {
467
+ ])) : I.value.hex ? (_(), l(x(Ct), {
461
468
  key: 34,
462
- url: L.value.url ?? "",
463
- name: L.value.name,
464
- size: L.value.size
469
+ url: I.value.url ?? "",
470
+ name: I.value.name,
471
+ size: I.value.size
465
472
  }, null, 8, [
466
473
  "url",
467
474
  "name",
468
475
  "size"
469
- ])) : L.value.image ? (g(), u("div", pe, [f(se, {
470
- src: L.value.url ?? "",
471
- alt: L.value.name
472
- }, null, 8, ["src", "alt"])])) : L.value.video ? (g(), u("div", me, [d("video", {
476
+ ])) : I.value.image ? (_(), d("div", me, [p(ce, {
477
+ src: I.value.url ?? "",
478
+ alt: I.value.name
479
+ }, null, 8, ["src", "alt"])])) : I.value.video ? (_(), d("div", he, [f("video", {
473
480
  class: "fvb__videoel",
474
- src: L.value.url ?? "",
481
+ src: I.value.url ?? "",
475
482
  controls: "",
476
483
  preload: "metadata"
477
- }, null, 8, he)])) : L.value.binary ? (g(), u("div", ge, [
478
- f(a, {
484
+ }, null, 8, ge)])) : I.value.binary ? (_(), d("div", _e, [
485
+ p(o, {
479
486
  name: "archive",
480
487
  size: 34
481
488
  }),
482
- t[5] ||= d("p", null, "无法预览的二进制文件", -1),
483
- L.value.size ? (g(), u("p", _e, y(b(re)(L.value.size)), 1)) : l("", !0),
484
- d("a", {
489
+ t[5] ||= f("p", null, "无法预览的二进制文件", -1),
490
+ I.value.size ? (_(), d("p", ve, b(x(ie)(I.value.size)), 1)) : u("", !0),
491
+ f("a", {
485
492
  class: "fvb__dlbtn",
486
- href: L.value.url,
487
- download: L.value.name
488
- }, "下载", 8, ve),
489
- d("div", ye, [t[4] ||= d("span", { class: "fvb__openas-label" }, "用查看器打开:", -1), d("div", be, [(g(!0), u(o, null, v(b(i), (e) => (g(), u("button", {
493
+ href: I.value.url,
494
+ download: I.value.name
495
+ }, "下载", 8, ye),
496
+ f("div", be, [t[4] ||= f("span", { class: "fvb__openas-label" }, "用查看器打开:", -1), f("div", xe, [(_(!0), d(s, null, y(x(i), (e) => (_(), d("button", {
490
497
  key: e.key,
491
498
  type: "button",
492
499
  class: "fvb__fmtchip",
493
- onClick: (t) => R(e)
494
- }, [f(a, {
500
+ onClick: (t) => L(e)
501
+ }, [p(o, {
495
502
  name: e.icon,
496
503
  size: 13
497
- }, null, 8, ["name"]), d("span", null, y(e.label), 1)], 8, xe))), 128))])])
498
- ])) : z.value === "loading" ? (g(), u("p", Se, "加载文件中…")) : z.value === "error" ? (g(), u("div", Ce, [d("p", null, "加载失败:" + y(V.value), 1), d("button", {
504
+ }, null, 8, ["name"]), f("span", null, b(e.label), 1)], 8, Se))), 128))])])
505
+ ])) : R.value === "loading" ? (_(), d("p", Ce, "加载文件中…")) : R.value === "error" ? (_(), d("div", we, [f("p", null, "加载失败:" + b(B.value), 1), f("button", {
499
506
  type: "button",
500
507
  class: "fvb__retry",
501
508
  onClick: t[0] ||= (e) => $(!0)
502
- }, "重试")])) : L.value.lang === "markdown" && m.mode === "render" ? (g(), u("div", S, [d("div", C, [wt.value ? (g(), c(oe, {
509
+ }, "重试")])) : I.value.lang === "markdown" && h.mode === "render" ? (_(), d("div", w, [f("div", T, [Ot.value ? (_(), l(se, {
503
510
  key: 0,
504
- data: H.value.data
505
- }, null, 8, ["data"])) : l("", !0), f(b(ae), {
506
- text: H.value.body,
511
+ data: V.value.data
512
+ }, null, 8, ["data"])) : u("", !0), p(x(oe), {
513
+ text: V.value.body,
507
514
  kp: "fv"
508
- }, null, 8, ["text"])])])) : L.value.html && m.mode === "render" ? (g(), u("div", w, [
509
- d("div", T, [d("button", {
515
+ }, null, 8, ["text"])])])) : I.value.html && h.mode === "render" ? (_(), d("div", E, [
516
+ f("div", D, [f("button", {
510
517
  type: "button",
511
- class: h(["fvb__htmlbtn", { "fvb__htmlbtn--on": K.value }]),
512
- title: K.value ? "交互脚本已启用(点击禁用)—— 隔离沙箱内运行:可加载外部 CDN 并发起网络请求(fetch/XHR/WebSocket),但无法访问本站会话 / cookie(不透明源隔离)" : "启用交互脚本(隔离沙箱执行:可加载 CDN、可联网,但无法访问本站会话 / cookie;建议先切到源码视图审查再启用)",
518
+ class: g(["fvb__htmlbtn", { "fvb__htmlbtn--on": G.value }]),
519
+ title: G.value ? "交互脚本已启用(点击禁用)—— 隔离沙箱内运行:可加载外部 CDN 并发起网络请求(fetch/XHR/WebSocket),但无法访问本站会话 / cookie(不透明源隔离)" : "启用交互脚本(隔离沙箱执行:可加载 CDN、可联网,但无法访问本站会话 / cookie;建议先切到源码视图审查再启用)",
513
520
  onClick: Z
514
- }, [f(a, {
521
+ }, [p(o, {
515
522
  name: "play",
516
523
  size: 13
517
- })], 10, E), d("button", {
524
+ })], 10, O), f("button", {
518
525
  type: "button",
519
526
  class: "fvb__htmlbtn",
520
527
  title: "全屏预览(在应用内放大查看;可在全屏内开启交互脚本)",
521
- onClick: t[1] ||= (e) => q.value = !0
522
- }, [f(a, {
528
+ onClick: t[1] ||= (e) => K.value = !0
529
+ }, [p(o, {
523
530
  name: "maximize",
524
531
  size: 13
525
532
  })])]),
526
- (g(), u("iframe", {
527
- key: K.value ? "interactive" : "inert",
533
+ (_(), d("iframe", {
534
+ key: G.value ? "interactive" : "inert",
528
535
  class: "fvb__frame",
529
536
  src: J.value,
530
537
  title: "HTML 预览",
531
- sandbox: K.value ? "allow-scripts" : "",
538
+ sandbox: G.value ? "allow-scripts" : "",
532
539
  loading: "lazy",
533
540
  referrerpolicy: "no-referrer"
534
- }, null, 8, D)),
535
- (g(), c(ce, { to: "body" }, [q.value ? (g(), u("div", O, [d("div", k, [d("button", {
541
+ }, null, 8, k)),
542
+ (_(), l(le, { to: "body" }, [K.value ? (_(), d("div", {
543
+ key: 0,
544
+ class: "fv-root fvb__fs",
545
+ style: ue(x(jt))
546
+ }, [f("div", Te, [f("button", {
536
547
  type: "button",
537
- class: h(["fvb__htmlbtn", { "fvb__htmlbtn--on": K.value }]),
538
- title: K.value ? "交互脚本已启用(点击禁用)—— 隔离沙箱内运行,可联网但访问不到本站会话 / cookie" : "启用交互脚本(隔离沙箱执行:可加载 CDN、可联网,访问不到本站会话 / cookie)",
548
+ class: g(["fvb__htmlbtn", { "fvb__htmlbtn--on": G.value }]),
549
+ title: G.value ? "交互脚本已启用(点击禁用)—— 隔离沙箱内运行,可联网但访问不到本站会话 / cookie" : "启用交互脚本(隔离沙箱执行:可加载 CDN、可联网,访问不到本站会话 / cookie)",
539
550
  onClick: Z
540
- }, [f(a, {
551
+ }, [p(o, {
541
552
  name: "play",
542
553
  size: 15
543
- })], 10, A), d("button", {
554
+ })], 10, Ee), f("button", {
544
555
  type: "button",
545
556
  class: "fvb__htmlbtn",
546
557
  title: "关闭全屏 (Esc)",
547
- onClick: t[2] ||= (e) => q.value = !1
548
- }, [f(a, {
558
+ onClick: t[2] ||= (e) => K.value = !1
559
+ }, [p(o, {
549
560
  name: "close",
550
561
  size: 15,
551
562
  "stroke-width": 2.2
552
- })])]), (g(), u("iframe", {
553
- key: K.value ? "fs-interactive" : "fs-inert",
563
+ })])]), (_(), d("iframe", {
564
+ key: G.value ? "fs-interactive" : "fs-inert",
554
565
  class: "fvb__fsframe",
555
566
  src: J.value,
556
567
  title: "HTML 全屏预览",
557
- sandbox: K.value ? "allow-scripts" : "",
568
+ sandbox: G.value ? "allow-scripts" : "",
558
569
  referrerpolicy: "no-referrer"
559
- }, null, 8, we))])) : l("", !0)]))
560
- ])) : L.value.svg && m.mode === "render" ? (g(), u("div", Te, [d("img", {
570
+ }, null, 8, De))], 4)) : u("", !0)]))
571
+ ])) : I.value.svg && h.mode === "render" ? (_(), d("div", Oe, [f("img", {
561
572
  class: "fvb__svgimg",
562
- src: Et.value,
563
- alt: L.value.name
564
- }, null, 8, Ee)])) : Ct.value && m.mode === "render" ? (g(), u("div", De, [f(b(Ze), {
565
- text: B.value,
566
- name: L.value.name
567
- }, null, 8, ["text", "name"])])) : L.value.subtitle && m.mode === "render" ? (g(), u("div", Oe, [f(b(nt), {
568
- text: B.value,
569
- name: L.value.name
570
- }, null, 8, ["text", "name"])])) : L.value.geo && m.mode === "render" ? (g(), u("div", ke, [f(b(at), {
571
- text: B.value,
572
- name: L.value.name
573
- }, null, 8, ["text", "name"])])) : L.value.csv && m.mode === "render" ? (g(), u("div", Ae, [f(b(ot), {
574
- text: B.value,
575
- name: L.value.name
576
- }, null, 8, ["text", "name"])])) : L.value.jsonl && m.mode === "render" ? (g(), u("div", je, [f(b(st), {
577
- text: B.value,
578
- name: L.value.name
579
- }, null, 8, ["text", "name"])])) : L.value.diagram && m.mode === "render" ? (g(), u("div", Me, [f(b(vt), {
580
- text: B.value,
581
- name: L.value.name,
582
- kind: L.value.diagram
573
+ src: At.value,
574
+ alt: I.value.name
575
+ }, null, 8, ke)])) : Dt.value && h.mode === "render" ? (_(), d("div", Ae, [p(x($e), {
576
+ text: z.value,
577
+ name: I.value.name
578
+ }, null, 8, ["text", "name"])])) : I.value.subtitle && h.mode === "render" ? (_(), d("div", je, [p(x(at), {
579
+ text: z.value,
580
+ name: I.value.name
581
+ }, null, 8, ["text", "name"])])) : I.value.geo && h.mode === "render" ? (_(), d("div", Me, [p(x(ct), {
582
+ text: z.value,
583
+ name: I.value.name
584
+ }, null, 8, ["text", "name"])])) : I.value.csv && h.mode === "render" ? (_(), d("div", Ne, [p(x(lt), {
585
+ text: z.value,
586
+ name: I.value.name
587
+ }, null, 8, ["text", "name"])])) : I.value.jsonl && h.mode === "render" ? (_(), d("div", Pe, [p(x(ut), {
588
+ text: z.value,
589
+ name: I.value.name
590
+ }, null, 8, ["text", "name"])])) : I.value.diagram && h.mode === "render" ? (_(), d("div", Fe, [p(x(xt), {
591
+ text: z.value,
592
+ name: I.value.name,
593
+ kind: I.value.diagram
583
594
  }, null, 8, [
584
595
  "text",
585
596
  "name",
586
597
  "kind"
587
- ])])) : (g(), c(ie, {
598
+ ])])) : (_(), l(ae, {
588
599
  key: 49,
589
- code: Tt.value,
590
- lang: L.value.lang ?? "",
591
- name: L.value.name
600
+ code: kt.value,
601
+ lang: I.value.lang ?? "",
602
+ name: I.value.name
592
603
  }, null, 8, [
593
604
  "code",
594
605
  "lang",
595
606
  "name"
596
- ]))]));
607
+ ]))], 512));
597
608
  }
598
609
  });
599
610
  //#endregion
600
- export { j as default };
611
+ export { A as default };
601
612
 
602
613
  //# sourceMappingURL=FileViewerBody.vue_vue_type_script_setup_true_lang.js.map