@flyfish-group/file-viewer 1.0.8 → 1.0.9

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 (164) hide show
  1. package/README.md +16 -10
  2. package/dist/components/AudioViewer.js +1 -0
  3. package/dist/components/CadViewer.js +1 -1
  4. package/dist/components/CodeViewer.js +1 -1
  5. package/dist/components/DrawingViewer.js +1 -0
  6. package/dist/components/EpubViewer.js +1 -0
  7. package/dist/components/ImageViewer.js +1 -1
  8. package/dist/components/MarkdownViewer.js +1 -1
  9. package/dist/components/OfdViewer.js +1 -1
  10. package/dist/components/PdfView.js +31587 -1
  11. package/dist/components/PptxRender.js +1 -1
  12. package/dist/components/UmdViewer.js +2 -0
  13. package/dist/components/XlsxTable.js +1 -1
  14. package/dist/components/_commonjs-dynamic-modules.js +1 -0
  15. package/dist/components/_commonjsHelpers.js +1 -1
  16. package/dist/components/ar-SA-G6X2FPQ2.js +1 -0
  17. package/dist/components/arc.js +1 -0
  18. package/dist/components/architecture-7EHR7CIX.js +1 -0
  19. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -0
  20. package/dist/components/az-AZ-76LH7QW2.js +1 -0
  21. package/dist/components/bg-BG-XCXSNQG7.js +1 -0
  22. package/dist/components/blockDiagram-GPEHLZMM.js +1 -0
  23. package/dist/components/bn-BD-2XOGV67Q.js +1 -0
  24. package/dist/components/c4Diagram-AAUBKEIU.js +1 -0
  25. package/dist/components/ca-ES-6MX7JW3Y.js +1 -0
  26. package/dist/components/channel.js +1 -0
  27. package/dist/components/chunk-2J33WTMH.js +1 -0
  28. package/dist/components/chunk-4BX2VUAB.js +1 -0
  29. package/dist/components/chunk-55IACEB6.js +1 -0
  30. package/dist/components/chunk-727SXJPM.js +1 -0
  31. package/dist/components/chunk-AQP2D5EJ.js +1 -0
  32. package/dist/components/chunk-EIO257PC.js +1738 -0
  33. package/dist/components/chunk-FMBD7UC4.js +1 -0
  34. package/dist/components/chunk-ND2GUHAM.js +1 -0
  35. package/dist/components/chunk-QZHKN3VN.js +1 -0
  36. package/dist/components/classDiagram-4FO5ZUOK.js +1 -0
  37. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -0
  38. package/dist/components/cose-bilkent-S5V4N54A.js +1 -0
  39. package/dist/components/cs-CZ-2BRQDIVT.js +1 -0
  40. package/dist/components/cytoscape.esm.js +1 -0
  41. package/dist/components/da-DK-5WZEPLOC.js +1 -0
  42. package/dist/components/dagre-BM42HDAG.js +1 -0
  43. package/dist/components/de-DE-XR44H4JA.js +1 -0
  44. package/dist/components/defaultLocale.js +1 -0
  45. package/dist/components/diagram-2AECGRRQ.js +1 -0
  46. package/dist/components/diagram-5GNKFQAL.js +1 -0
  47. package/dist/components/diagram-KO2AKTUF.js +1 -0
  48. package/dist/components/diagram-LMA3HP47.js +1 -0
  49. package/dist/components/diagram-OG6HWLK6.js +1 -0
  50. package/dist/components/directory-open-01563666.js +1 -0
  51. package/dist/components/directory-open-4ed118d0.js +1 -0
  52. package/dist/components/docx-preview.js +2 -2
  53. package/dist/components/el-GR-BZB4AONW.js +1 -0
  54. package/dist/components/en-B4ZKOASM.js +1 -0
  55. package/dist/components/erDiagram-TEJ5UH35.js +1 -0
  56. package/dist/components/es-ES-U4NZUMDT.js +1 -0
  57. package/dist/components/eu-ES-A7QVB2H4.js +1 -0
  58. package/dist/components/eventmodeling-FCH6USID.js +1 -0
  59. package/dist/components/fa-IR-HGAKTJCU.js +1 -0
  60. package/dist/components/fi-FI-Z5N7JZ37.js +1 -0
  61. package/dist/components/file-open-002ab408.js +1 -0
  62. package/dist/components/file-open-7c801643.js +1 -0
  63. package/dist/components/file-save-3189631c.js +1 -0
  64. package/dist/components/file-save-745eba88.js +1 -0
  65. package/dist/components/flowDiagram-I6XJVG4X.js +1 -0
  66. package/dist/components/fr-FR-RHASNOE6.js +1 -0
  67. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -0
  68. package/dist/components/gitGraph-WXDBUCRP.js +1 -0
  69. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -0
  70. package/dist/components/gl-ES-HMX3MZ6V.js +1 -0
  71. package/dist/components/graph.js +1 -0
  72. package/dist/components/he-IL-6SHJWFNN.js +1 -0
  73. package/dist/components/hi-IN-IWLTKZ5I.js +1 -0
  74. package/dist/components/hu-HU-A5ZG7DT2.js +1 -0
  75. package/dist/components/id-ID-SAP4L64H.js +1 -0
  76. package/dist/components/image-GAAHSSAO.js +1 -0
  77. package/dist/components/image-blob-reduce.esm.js +2 -0
  78. package/dist/components/index.js +24558 -1
  79. package/dist/components/index2.js +2 -1
  80. package/dist/components/index3.js +1 -0
  81. package/dist/components/index4.js +1 -0
  82. package/dist/components/index5.js +1 -0
  83. package/dist/components/info-J43DQDTF.js +1 -0
  84. package/dist/components/infoDiagram-5YYISTIA.js +1 -0
  85. package/dist/components/init.js +1 -0
  86. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -0
  87. package/dist/components/it-IT-JPQ66NNP.js +1 -0
  88. package/dist/components/ja-JP-DBVTYXUO.js +1 -0
  89. package/dist/components/journeyDiagram-JHISSGLW.js +1 -0
  90. package/dist/components/jszip.min.js +1 -1
  91. package/dist/components/kaa-6HZHGXH3.js +1 -0
  92. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -0
  93. package/dist/components/kanban-definition-UN3LZRKU.js +1 -0
  94. package/dist/components/katex.js +1 -0
  95. package/dist/components/kk-KZ-P5N5QNE5.js +1 -0
  96. package/dist/components/km-KH-HSX4SM5Z.js +1 -0
  97. package/dist/components/ko-KR-MTYHY66A.js +1 -0
  98. package/dist/components/ku-TR-6OUDTVRD.js +1 -0
  99. package/dist/components/layout.js +1 -0
  100. package/dist/components/linear.js +1 -0
  101. package/dist/components/lt-LT-XHIRWOB4.js +1 -0
  102. package/dist/components/lv-LV-5QDEKY6T.js +1 -0
  103. package/dist/components/mermaid-parser.core.js +14 -0
  104. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -0
  105. package/dist/components/mr-IN-CRQNXWMA.js +1 -0
  106. package/dist/components/my-MM-5M5IBNSE.js +1 -0
  107. package/dist/components/nb-NO-T6EIAALU.js +1 -0
  108. package/dist/components/nl-NL-IS3SIHDZ.js +1 -0
  109. package/dist/components/nn-NO-6E72VCQL.js +1 -0
  110. package/dist/components/oc-FR-POXYY2M6.js +1 -0
  111. package/dist/components/ofd.js +1 -1
  112. package/dist/components/ordinal.js +1 -0
  113. package/dist/components/pa-IN-N4M65BXN.js +1 -0
  114. package/dist/components/packet-YPE3B663.js +1 -0
  115. package/dist/components/percentages-BXMCSKIN.js +1 -0
  116. package/dist/components/pica.js +1 -0
  117. package/dist/components/pie-LRSECV5Y.js +1 -0
  118. package/dist/components/pie.js +1 -0
  119. package/dist/components/pieDiagram-4H26LBE5.js +1 -0
  120. package/dist/components/pl-PL-T2D74RX3.js +1 -0
  121. package/dist/components/pt-BR-5N22H2LF.js +1 -0
  122. package/dist/components/pt-PT-UZXXM6DQ.js +1 -0
  123. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -0
  124. package/dist/components/radar-GUYGQ44K.js +1 -0
  125. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -0
  126. package/dist/components/ro-RO-JPDTUUEW.js +1 -0
  127. package/dist/components/roundRect.js +1 -0
  128. package/dist/components/ru-RU-B4JR7IUQ.js +1 -0
  129. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -0
  130. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -0
  131. package/dist/components/si-LK-N5RQ5JYF.js +1 -0
  132. package/dist/components/sk-SK-C5VTKIMK.js +1 -0
  133. package/dist/components/sl-SI-NN7IZMDC.js +1 -0
  134. package/dist/components/stateDiagram-AJRCARHV.js +1 -0
  135. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -0
  136. package/dist/components/subset-shared.chunk.js +1 -0
  137. package/dist/components/subset-worker.chunk.js +1 -0
  138. package/dist/components/sv-SE-XGPEYMSR.js +1 -0
  139. package/dist/components/ta-IN-2NMHFXQM.js +1 -0
  140. package/dist/components/th-TH-HPSO5L25.js +1 -0
  141. package/dist/components/time.js +1 -0
  142. package/dist/components/timeline-definition-PNZ67QCA.js +1 -0
  143. package/dist/components/tr-TR-DEFEU3FU.js +1 -0
  144. package/dist/components/transform.js +1 -0
  145. package/dist/components/treeView-BLDUP644.js +1 -0
  146. package/dist/components/treemap-LRROVOQU.js +1 -0
  147. package/dist/components/uk-UA-QMV73CPH.js +1 -0
  148. package/dist/components/vennDiagram-CIIHVFJN.js +1 -0
  149. package/dist/components/vi-VN-M7AON7JQ.js +1 -0
  150. package/dist/components/wardley-L42UT6IY.js +1 -0
  151. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -0
  152. package/dist/components/worker-ref.js +1 -1
  153. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -0
  154. package/dist/components/zh-CN-LNUGB5OW.js +1 -0
  155. package/dist/components/zh-HK-E62DVLB3.js +1 -0
  156. package/dist/components/zh-TW-RAJ6MFWO.js +1 -0
  157. package/dist/index.mjs +1 -1
  158. package/dist/index.umd.js +4973 -3
  159. package/dist/package/index.d.ts +10 -0
  160. package/dist/style.css +1 -1
  161. package/dist/worker/pdf.worker.js +55 -1
  162. package/dist/worker/pptx.worker.js +1 -1
  163. package/dist/worker/sheet.worker.js +1 -1
  164. package/package.json +9 -1
@@ -16,3 +16,13 @@ declare class Installer implements FileViewerInstaller {
16
16
  declare const _default: Installer;
17
17
  export default _default;
18
18
  export { FileViewer };
19
+
20
+ declare global {
21
+ interface Window {
22
+ GraphViewer?: {
23
+ createViewerForElement: (element: HTMLElement, callback?: (viewer: unknown) => void) => unknown;
24
+ processElements: (className?: string) => void;
25
+ };
26
+ }
27
+ }
28
+
package/dist/style.css CHANGED
@@ -23,4 +23,4 @@
23
23
 
24
24
  Outdated base version: https://github.com/primer/github-syntax-dark
25
25
  Current colors taken from GitHub's CSS
26
- */.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.code-viewer[data-v-b59da2ad]{min-height:100%;background:#0d1117;color:#e6edf3}.code-toolbar[data-v-b59da2ad]{position:sticky;top:0;z-index:1;display:flex;height:42px;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;border-bottom:1px solid rgba(139,148,158,.24);background:rgba(13,17,23,.92);backdrop-filter:blur(12px)}.code-toolbar span[data-v-b59da2ad],.code-toolbar strong[data-v-b59da2ad]{color:#8b949e;font-size:12px;font-weight:700;letter-spacing:0}.code-area[data-v-b59da2ad]{display:block;min-width:min-content;margin:0;padding:18px 20px 28px;overflow:auto;background:transparent}.code-area code[data-v-b59da2ad]{display:block;padding:0;overflow:visible;background:transparent;color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.7;tab-size:2;white-space:pre}.ofd-viewer[data-v-e746c457]{position:relative;min-height:100%;background:#e9edf2}.ofd-stage[data-v-e746c457]{min-height:100%;padding:18px 0 28px;overflow:auto}.ofd-state[data-v-e746c457]{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;background:rgba(246,248,250,.92);color:#64748b;font-size:14px}.ofd-state.error[data-v-e746c457]{color:#b42318}.ofd-page{box-shadow:0 10px 26px #0f172a1f}.cad-viewer[data-v-cf49f0f1]{display:flex;height:100%;min-height:100%;flex-direction:column;background:#f8fafc;color:#142335}.cad-toolbar[data-v-cf49f0f1]{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:16px;padding:0 12px;border-bottom:1px solid rgba(15,23,42,.08);background:#ffffff}.cad-toolbar span[data-v-cf49f0f1]{color:#64748b;font-size:12px;font-weight:800;letter-spacing:0}.cad-tools[data-v-cf49f0f1]{display:flex;gap:6px}.cad-tools button[data-v-cf49f0f1],.cad-layers button[data-v-cf49f0f1]{border:0;cursor:pointer;transition:background-color .18s ease,color .18s ease}.cad-tools button[data-v-cf49f0f1]{min-height:30px;padding:0 10px;border-radius:8px;background:rgba(15,23,42,.06);color:#475569;font-size:12px;font-weight:700}.cad-tools button.active[data-v-cf49f0f1],.cad-tools button[data-v-cf49f0f1]:hover{background:rgba(33,163,102,.14);color:#16804f}.cad-body[data-v-cf49f0f1]{flex:1;min-height:0;display:grid;grid-template-columns:minmax(132px,180px) minmax(0,1fr)}.cad-layers[data-v-cf49f0f1]{min-height:0;overflow:auto;padding:10px;border-right:1px solid rgba(15,23,42,.08);background:#ffffff}.cad-layers button[data-v-cf49f0f1]{display:block;width:100%;min-height:30px;margin-bottom:6px;padding:0 8px;border-radius:7px;background:rgba(15,23,42,.05);color:#334155;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.cad-layers button.muted[data-v-cf49f0f1]{color:#94a3b8;text-decoration:line-through}.cad-canvas-wrap[data-v-cf49f0f1]{position:relative;min-width:0;min-height:0;overflow:hidden}.cad-canvas-wrap canvas[data-v-cf49f0f1]{display:block;width:100%;height:100%}.cad-state[data-v-cf49f0f1]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(248,250,252,.9);color:#64748b;text-align:center;line-height:1.7}.cad-state.error[data-v-cf49f0f1]{color:#b42318}@media (max-width: 720px){.cad-body[data-v-cf49f0f1]{grid-template-columns:1fr}.cad-layers[data-v-cf49f0f1]{display:none}}
26
+ */.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.code-viewer[data-v-b59da2ad]{min-height:100%;background:#0d1117;color:#e6edf3}.code-toolbar[data-v-b59da2ad]{position:sticky;top:0;z-index:1;display:flex;height:42px;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;border-bottom:1px solid rgba(139,148,158,.24);background:rgba(13,17,23,.92);backdrop-filter:blur(12px)}.code-toolbar span[data-v-b59da2ad],.code-toolbar strong[data-v-b59da2ad]{color:#8b949e;font-size:12px;font-weight:700;letter-spacing:0}.code-area[data-v-b59da2ad]{display:block;min-width:min-content;margin:0;padding:18px 20px 28px;overflow:auto;background:transparent}.code-area code[data-v-b59da2ad]{display:block;padding:0;overflow:visible;background:transparent;color:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.7;tab-size:2;white-space:pre}.audio-viewer[data-v-608bd328]{width:100%;min-height:100%;display:flex;align-items:center;justify-content:center;padding:28px;background:linear-gradient(135deg,rgba(14,116,144,.1),transparent 34%),linear-gradient(180deg,#f5f8fb 0%,#edf2f7 100%)}.audio-card[data-v-608bd328]{width:min(100%,640px);display:grid;grid-template-columns:86px minmax(0,1fr);gap:18px;align-items:center;padding:24px;border-radius:8px;border:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.92);box-shadow:0 20px 52px #0f172a21}.audio-art[data-v-608bd328]{position:relative;width:86px;height:86px;border-radius:8px;background:linear-gradient(135deg,#0f766e,#2dd4bf);box-shadow:inset 0 0 0 1px #ffffff3d}.audio-art span[data-v-608bd328]{position:absolute;inset:18px;border-radius:999px;border:8px solid rgba(255,255,255,.88)}.audio-art i[data-v-608bd328]{position:absolute;right:18px;bottom:20px;width:18px;height:36px;border-radius:10px 10px 4px 4px;background:rgba(255,255,255,.9)}.audio-copy[data-v-608bd328]{min-width:0}.audio-kicker[data-v-608bd328]{color:#0f766e;font-size:12px;font-weight:800;letter-spacing:0}.audio-copy strong[data-v-608bd328]{display:block;margin-top:5px;color:#132235;font-size:23px;line-height:1.15}.audio-copy p[data-v-608bd328]{margin:8px 0 0;color:#64748b;font-size:13px;line-height:1.7}.audio-meter[data-v-608bd328]{grid-column:1 / -1;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:10px;color:#64748b;font-size:12px;font-variant-numeric:tabular-nums}.audio-progress[data-v-608bd328]{height:6px;overflow:hidden;border-radius:999px;background:rgba(15,118,110,.12)}.audio-progress i[data-v-608bd328]{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0f766e,#2dd4bf);transition:width .18s ease}.audio-control[data-v-608bd328]{grid-column:1 / -1;width:100%;height:42px}@media (max-width: 560px){.audio-viewer[data-v-608bd328]{padding:16px}.audio-card[data-v-608bd328]{grid-template-columns:1fr}.audio-art[data-v-608bd328]{width:72px;height:72px}}.ofd-viewer[data-v-e746c457]{position:relative;min-height:100%;background:#e9edf2}.ofd-stage[data-v-e746c457]{min-height:100%;padding:18px 0 28px;overflow:auto}.ofd-state[data-v-e746c457]{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;background:rgba(246,248,250,.92);color:#64748b;font-size:14px}.ofd-state.error[data-v-e746c457]{color:#b42318}.ofd-page{box-shadow:0 10px 26px #0f172a1f}.cad-viewer[data-v-cf49f0f1]{display:flex;height:100%;min-height:100%;flex-direction:column;background:#f8fafc;color:#142335}.cad-toolbar[data-v-cf49f0f1]{display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:16px;padding:0 12px;border-bottom:1px solid rgba(15,23,42,.08);background:#ffffff}.cad-toolbar span[data-v-cf49f0f1]{color:#64748b;font-size:12px;font-weight:800;letter-spacing:0}.cad-tools[data-v-cf49f0f1]{display:flex;gap:6px}.cad-tools button[data-v-cf49f0f1],.cad-layers button[data-v-cf49f0f1]{border:0;cursor:pointer;transition:background-color .18s ease,color .18s ease}.cad-tools button[data-v-cf49f0f1]{min-height:30px;padding:0 10px;border-radius:8px;background:rgba(15,23,42,.06);color:#475569;font-size:12px;font-weight:700}.cad-tools button.active[data-v-cf49f0f1],.cad-tools button[data-v-cf49f0f1]:hover{background:rgba(33,163,102,.14);color:#16804f}.cad-body[data-v-cf49f0f1]{flex:1;min-height:0;display:grid;grid-template-columns:minmax(132px,180px) minmax(0,1fr)}.cad-layers[data-v-cf49f0f1]{min-height:0;overflow:auto;padding:10px;border-right:1px solid rgba(15,23,42,.08);background:#ffffff}.cad-layers button[data-v-cf49f0f1]{display:block;width:100%;min-height:30px;margin-bottom:6px;padding:0 8px;border-radius:7px;background:rgba(15,23,42,.05);color:#334155;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.cad-layers button.muted[data-v-cf49f0f1]{color:#94a3b8;text-decoration:line-through}.cad-canvas-wrap[data-v-cf49f0f1]{position:relative;min-width:0;min-height:0;overflow:hidden}.cad-canvas-wrap canvas[data-v-cf49f0f1]{display:block;width:100%;height:100%}.cad-state[data-v-cf49f0f1]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(248,250,252,.9);color:#64748b;text-align:center;line-height:1.7}.cad-state.error[data-v-cf49f0f1]{color:#b42318}@media (max-width: 720px){.cad-body[data-v-cf49f0f1]{grid-template-columns:1fr}.cad-layers[data-v-cf49f0f1]{display:none}}.drawing-viewer[data-v-460957d7]{display:flex;height:100%;min-height:360px;flex-direction:column;background:#edf2f7;color:#172033}.drawing-toolbar[data-v-460957d7]{position:sticky;top:0;z-index:2;display:flex;min-height:46px;align-items:center;justify-content:space-between;gap:16px;padding:8px 14px;border-bottom:1px solid rgba(148,163,184,.35);background:rgba(248,250,252,.92);backdrop-filter:blur(12px)}.drawing-title[data-v-460957d7]{display:flex;min-width:0;align-items:center;gap:10px}.drawing-title span[data-v-460957d7]{display:inline-flex;height:24px;align-items:center;justify-content:center;border-radius:6px;padding:0 8px;background:#0f766e;color:#fff;font-size:11px;font-weight:800;letter-spacing:0}.drawing-title strong[data-v-460957d7]{overflow:hidden;color:#172033;font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.drawing-actions[data-v-460957d7]{display:flex;flex-shrink:0;align-items:center;gap:6px}.drawing-actions button[data-v-460957d7]{min-width:32px;height:28px;border:1px solid rgba(100,116,139,.28);border-radius:6px;background:#ffffff;color:#0f172a;cursor:pointer;font-size:12px;font-weight:800}.drawing-actions button[data-v-460957d7]:hover{border-color:#0f766e80;color:#0f766e}.drawing-actions span[data-v-460957d7]{min-width:48px;color:#64748b;font-size:12px;font-weight:800;text-align:center}.drawing-stage[data-v-460957d7]{position:relative;min-height:0;flex:1;overflow:hidden}.drawing-scroll[data-v-460957d7]{height:100%;overflow:auto;padding:22px}.drawing-canvas[data-v-460957d7]{width:100%;min-height:420px;transition:transform .18s ease,zoom .18s ease}.drawing-canvas[data-v-460957d7] .drawing-svg,.drawing-canvas[data-v-460957d7] svg{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:10px;background:#ffffff;box-shadow:0 18px 42px #0f172a1f}.drawing-canvas[data-v-460957d7] .drawing-mxgraph{min-height:420px;overflow:hidden;border-radius:10px;background:#ffffff;box-shadow:0 18px 42px #0f172a1f}.drawing-state[data-v-460957d7]{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:24px;color:#64748b;font-size:14px;font-weight:700;text-align:center}.drawing-state.error[data-v-460957d7]{color:#b42318}@media (max-width: 720px){.drawing-toolbar[data-v-460957d7]{align-items:flex-start;flex-direction:column}.drawing-actions[data-v-460957d7]{width:100%;justify-content:space-between}.drawing-scroll[data-v-460957d7]{padding:12px}}.epub-viewer[data-v-8f8a2b3b]{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#eef1f4;color:#172033}.epub-toolbar[data-v-8f8a2b3b]{flex-shrink:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.92)}.epub-title[data-v-8f8a2b3b]{min-width:0;display:flex;flex-direction:column;gap:3px}.epub-title strong[data-v-8f8a2b3b],.epub-title span[data-v-8f8a2b3b]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.epub-title strong[data-v-8f8a2b3b]{font-size:14px}.epub-title span[data-v-8f8a2b3b]{color:#64748b;font-size:12px}.epub-icon-button[data-v-8f8a2b3b],.epub-button[data-v-8f8a2b3b]{height:36px;border:1px solid rgba(15,23,42,.08);background:#ffffff;color:#172033;font:inherit;cursor:pointer}.epub-icon-button[data-v-8f8a2b3b]{width:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.epub-icon-button span[data-v-8f8a2b3b],.epub-icon-button span[data-v-8f8a2b3b]:before,.epub-icon-button span[data-v-8f8a2b3b]:after{width:16px;height:2px;display:block;border-radius:999px;background:currentColor}.epub-icon-button span[data-v-8f8a2b3b]{position:relative}.epub-icon-button span[data-v-8f8a2b3b]:before,.epub-icon-button span[data-v-8f8a2b3b]:after{content:"";position:absolute;left:0}.epub-icon-button span[data-v-8f8a2b3b]:before{top:-5px}.epub-icon-button span[data-v-8f8a2b3b]:after{top:5px}.epub-icon-button.active[data-v-8f8a2b3b]{border-color:#2563eb3d;background:rgba(37,99,235,.08);color:#1d4ed8}.epub-actions[data-v-8f8a2b3b]{display:flex;align-items:center;gap:8px}.epub-button[data-v-8f8a2b3b]{min-width:68px;padding:0 12px;border-radius:8px;font-size:13px;font-weight:700}.epub-button[data-v-8f8a2b3b]:disabled{color:#94a3b8;cursor:not-allowed}.epub-progress[data-v-8f8a2b3b]{min-width:58px;color:#64748b;font-size:12px;text-align:center}.epub-body[data-v-8f8a2b3b]{flex:1;min-height:0;display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr)}.epub-viewer--toc-hidden .epub-body[data-v-8f8a2b3b]{grid-template-columns:minmax(0,1fr)}.epub-toc[data-v-8f8a2b3b]{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.8)}.epub-toc-head[data-v-8f8a2b3b]{flex-shrink:0;display:flex;justify-content:space-between;gap:8px;padding:12px;color:#172033;font-size:13px}.epub-toc-head span[data-v-8f8a2b3b]{color:#64748b}.epub-toc-list[data-v-8f8a2b3b]{flex:1;min-height:0;overflow:auto;padding:0 8px 10px}.epub-toc-item[data-v-8f8a2b3b]{width:100%;min-height:34px;border:0;border-radius:8px;background:transparent;color:#475569;font:inherit;font-size:12px;text-align:left;cursor:pointer}.epub-toc-item[data-v-8f8a2b3b]:hover,.epub-toc-item.active[data-v-8f8a2b3b]{background:rgba(37,99,235,.08);color:#1d4ed8}.epub-stage-wrap[data-v-8f8a2b3b]{position:relative;min-width:0;min-height:0;padding:18px;overflow:hidden}.epub-stage[data-v-8f8a2b3b]{width:100%;height:100%;overflow-x:hidden;overflow-y:auto;border-radius:8px;background:#ffffff;box-shadow:0 18px 45px #0f172a1f,inset 0 0 0 1px #0f172a0f}.epub-stage[data-v-8f8a2b3b] .epub-container{width:100%!important;max-width:100%;overflow-x:hidden!important;overflow-y:auto!important}.epub-stage[data-v-8f8a2b3b] iframe{max-width:100%}.epub-state[data-v-8f8a2b3b]{position:absolute;inset:18px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.92);color:#64748b;font-size:14px}.epub-state.error[data-v-8f8a2b3b]{color:#b42318}@media (max-width: 720px){.epub-toolbar[data-v-8f8a2b3b]{grid-template-columns:40px minmax(0,1fr)}.epub-actions[data-v-8f8a2b3b]{grid-column:1 / -1;justify-content:space-between}.epub-body[data-v-8f8a2b3b]{position:relative;grid-template-columns:minmax(0,1fr)}.epub-toc[data-v-8f8a2b3b]{position:absolute;z-index:5;top:0;bottom:0;left:0;width:min(82vw,280px);box-shadow:18px 0 40px #0f172a29}.epub-stage-wrap[data-v-8f8a2b3b]{padding:12px}}.umd-viewer[data-v-c855ba56]{width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#eef1f4;color:#172033}.umd-toolbar[data-v-c855ba56]{flex-shrink:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.94)}.umd-title[data-v-c855ba56]{min-width:0;display:flex;flex-direction:column;gap:3px}.umd-title strong[data-v-c855ba56],.umd-title span[data-v-c855ba56]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.umd-title strong[data-v-c855ba56]{font-size:14px}.umd-title span[data-v-c855ba56]{color:#64748b;font-size:12px}.umd-icon-button[data-v-c855ba56],.umd-button[data-v-c855ba56]{height:36px;border:1px solid rgba(15,23,42,.08);background:#ffffff;color:#172033;font:inherit;cursor:pointer}.umd-icon-button[data-v-c855ba56]{width:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.umd-icon-button span[data-v-c855ba56],.umd-icon-button span[data-v-c855ba56]:before,.umd-icon-button span[data-v-c855ba56]:after{width:16px;height:2px;display:block;border-radius:999px;background:currentColor}.umd-icon-button span[data-v-c855ba56]{position:relative}.umd-icon-button span[data-v-c855ba56]:before,.umd-icon-button span[data-v-c855ba56]:after{content:"";position:absolute;left:0}.umd-icon-button span[data-v-c855ba56]:before{top:-5px}.umd-icon-button span[data-v-c855ba56]:after{top:5px}.umd-icon-button.active[data-v-c855ba56]{border-color:#0284c73d;background:rgba(2,132,199,.08);color:#0369a1}.umd-actions[data-v-c855ba56]{display:flex;align-items:center;gap:8px}.umd-button[data-v-c855ba56]{min-width:68px;padding:0 12px;border-radius:8px;font-size:13px;font-weight:700}.umd-button[data-v-c855ba56]:disabled{color:#94a3b8;cursor:not-allowed}.umd-progress[data-v-c855ba56]{min-width:58px;color:#64748b;font-size:12px;text-align:center}.umd-body[data-v-c855ba56]{flex:1;min-height:0;display:grid;grid-template-columns:minmax(180px,240px) minmax(0,1fr)}.umd-viewer--toc-hidden .umd-body[data-v-c855ba56]{grid-template-columns:minmax(0,1fr)}.umd-toc[data-v-c855ba56]{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.82)}.umd-toc-head[data-v-c855ba56]{flex-shrink:0;display:flex;justify-content:space-between;gap:8px;padding:12px;color:#172033;font-size:13px}.umd-toc-head span[data-v-c855ba56]{color:#64748b}.umd-toc-list[data-v-c855ba56]{flex:1;min-height:0;overflow:auto;padding:0 8px 10px}.umd-toc-item[data-v-c855ba56]{width:100%;min-height:34px;padding:7px 10px;border:0;border-radius:8px;background:transparent;color:#475569;font:inherit;font-size:12px;text-align:left;cursor:pointer}.umd-toc-item[data-v-c855ba56]:hover,.umd-toc-item.active[data-v-c855ba56]{background:rgba(2,132,199,.08);color:#0369a1}.umd-stage-wrap[data-v-c855ba56]{position:relative;min-width:0;min-height:0;padding:18px;overflow:hidden}.umd-stage[data-v-c855ba56]{width:100%;height:100%;overflow:auto;border-radius:8px;background:#fffef8;box-shadow:0 18px 45px #0f172a1f,inset 0 0 0 1px #0f172a0f}.umd-book-head[data-v-c855ba56]{display:flex;gap:20px;max-width:820px;margin:0 auto;padding:32px 34px 8px}.umd-book-head img[data-v-c855ba56]{width:96px;max-height:136px;object-fit:cover;border-radius:6px;box-shadow:0 12px 26px #0f172a29}.umd-book-head div[data-v-c855ba56]{min-width:0}.umd-book-head h1[data-v-c855ba56]{margin:0;color:#111827;font-size:24px;line-height:1.3}.umd-book-head p[data-v-c855ba56]{margin:8px 0 0;color:#64748b;font-size:13px;line-height:1.6}.umd-chapter[data-v-c855ba56]{max-width:820px;margin:0 auto;padding:28px 34px 56px}.umd-chapter h2[data-v-c855ba56]{margin:0 0 22px;color:#111827;font-size:22px;line-height:1.35}.umd-text[data-v-c855ba56]{color:#1f2937;font-family:Georgia,Times New Roman,Songti SC,SimSun,serif;font-size:17px;line-height:1.86;white-space:pre-wrap;word-break:break-word}.umd-image-list[data-v-c855ba56]{display:grid;gap:18px}.umd-image-list figure[data-v-c855ba56]{margin:0;text-align:center}.umd-image-list img[data-v-c855ba56]{max-width:100%;height:auto;border-radius:6px;box-shadow:0 10px 24px #0f172a1f}.umd-empty[data-v-c855ba56],.umd-warning[data-v-c855ba56]{color:#64748b;font-size:14px;line-height:1.7}.umd-warning[data-v-c855ba56]{max-width:820px;margin:-28px auto 36px;padding:0 34px;color:#b45309}.umd-state[data-v-c855ba56]{position:absolute;inset:18px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,.92);color:#64748b;font-size:14px}.umd-state.error[data-v-c855ba56]{color:#b42318}@media (max-width: 720px){.umd-toolbar[data-v-c855ba56]{grid-template-columns:40px minmax(0,1fr)}.umd-actions[data-v-c855ba56]{grid-column:1 / -1;justify-content:space-between}.umd-body[data-v-c855ba56]{position:relative;grid-template-columns:minmax(0,1fr)}.umd-toc[data-v-c855ba56]{position:absolute;z-index:5;top:0;bottom:0;left:0;width:min(82vw,280px);box-shadow:18px 0 40px #0f172a29}.umd-stage-wrap[data-v-c855ba56]{padding:12px}.umd-book-head[data-v-c855ba56]{padding:24px 20px 0}.umd-chapter[data-v-c855ba56]{padding:24px 20px 42px}}