@flyfish-group/file-viewer 1.0.0

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 (62) hide show
  1. package/README.md +111 -0
  2. package/dist/components/ImageViewer.js +1679 -0
  3. package/dist/components/MarkdownViewer.js +1459 -0
  4. package/dist/components/PdfView.js +22460 -0
  5. package/dist/components/PptxRender.js +21744 -0
  6. package/dist/components/XlsxTable.js +49412 -0
  7. package/dist/components/_commonjs-dynamic-modules.js +6 -0
  8. package/dist/components/_commonjsHelpers.js +30 -0
  9. package/dist/components/docx-preview.min.js +5354 -0
  10. package/dist/components/index.js +1787 -0
  11. package/dist/components/utils.d.ts +3 -0
  12. package/dist/components/worker-ref.js +21 -0
  13. package/dist/index.mjs +6 -0
  14. package/dist/index.umd.js +325 -0
  15. package/dist/main.d.ts +0 -0
  16. package/dist/package/common/type.d.ts +30 -0
  17. package/dist/package/common/util.d.ts +5 -0
  18. package/dist/package/common/worker-ref.d.ts +12 -0
  19. package/dist/package/components/FileViewer/FileViewer.vue.d.ts +18 -0
  20. package/dist/package/components/FileViewer/index.d.ts +2 -0
  21. package/dist/package/components/FileViewer/util.d.ts +2 -0
  22. package/dist/package/index.d.ts +11 -0
  23. package/dist/package/use/index.d.ts +1 -0
  24. package/dist/package/use/worker.d.ts +24 -0
  25. package/dist/package/vendors/docx/index.d.ts +4 -0
  26. package/dist/package/vendors/image/ImageViewer.vue.d.ts +15 -0
  27. package/dist/package/vendors/image/index.d.ts +5 -0
  28. package/dist/package/vendors/md/MarkdownViewer.vue.d.ts +15 -0
  29. package/dist/package/vendors/md/index.d.ts +5 -0
  30. package/dist/package/vendors/mp4/index.d.ts +4 -0
  31. package/dist/package/vendors/pdf/PdfView.vue.d.ts +15 -0
  32. package/dist/package/vendors/pdf/index.d.ts +2 -0
  33. package/dist/package/vendors/pdf/worker/index.d.ts +4 -0
  34. package/dist/package/vendors/pptx/PptxRender.vue.d.ts +87 -0
  35. package/dist/package/vendors/pptx/index.d.ts +7 -0
  36. package/dist/package/vendors/pptx/options.d.ts +39 -0
  37. package/dist/package/vendors/pptx/support/chart.d.ts +4 -0
  38. package/dist/package/vendors/pptx/worker/index.d.ts +4 -0
  39. package/dist/package/vendors/renders.d.ts +3 -0
  40. package/dist/package/vendors/text/CodeViewer.vue.d.ts +15 -0
  41. package/dist/package/vendors/text/index.d.ts +7 -0
  42. package/dist/package/vendors/xlsx/XlsxTable.vue.d.ts +17 -0
  43. package/dist/package/vendors/xlsx/index.d.ts +5 -0
  44. package/dist/package/vendors/xlsx/render.d.ts +6 -0
  45. package/dist/package/vendors/xlsx/util.d.ts +8 -0
  46. package/dist/package/vendors/xlsx/worker/index.d.ts +6 -0
  47. package/dist/package/vendors/xlsx/worker/xls/SheetJsModel.d.ts +36 -0
  48. package/dist/package/vendors/xlsx/worker/xls/index.d.ts +4 -0
  49. package/dist/package/vendors/xlsx/worker/xls/sheet.worker.d.ts +1 -0
  50. package/dist/package/vendors/xlsx/worker/xlsx/ExcelJsModel.d.ts +39 -0
  51. package/dist/package/vendors/xlsx/worker/xlsx/color.d.ts +2 -0
  52. package/dist/package/vendors/xlsx/worker/xlsx/context.d.ts +7 -0
  53. package/dist/package/vendors/xlsx/worker/xlsx/index.d.ts +4 -0
  54. package/dist/package/vendors/xlsx/worker/xlsx/util.d.ts +10 -0
  55. package/dist/package/vendors/xlsx/worker/xlsx/xlsx.worker.d.ts +2 -0
  56. package/dist/style.css +57 -0
  57. package/dist/vite.svg +1 -0
  58. package/dist/worker/pdf.worker.js +58 -0
  59. package/dist/worker/pptx.worker.js +21 -0
  60. package/dist/worker/sheet.worker.js +38 -0
  61. package/dist/worker/xlsx.worker.js +62 -0
  62. package/package.json +76 -0
package/README.md ADDED
@@ -0,0 +1,111 @@
1
+ # 基于Vue2实现的文件在线预览 file-viewer
2
+ 本项目是本人基于实际工作共享的第一个小项目,诞生于2022年上旬。目前实现了基本格式的预览。
3
+ 本项目作为vue3版本的子项目,不再进行更新,使用Vite+Vue2.7+Ts实现了Composition Api的兼容。
4
+
5
+ 已支持Vue3+Vite+TypeScript,请拉取v3分支进行体验。
6
+
7
+ 后续将持续优化pptx和word模块。
8
+
9
+ 目前已有计划支持旧版本的文档格式,基于Web Assembly技术和java的poi。
10
+
11
+ 欢迎各位友友们提交工单和P/R,感谢大家!
12
+
13
+ ## 快速开始
14
+
15
+ 本项目最低Node版本为18.0,请各位友友们使用匹配的版本运行。
16
+
17
+ ### 1. 项目安装
18
+
19
+ ```
20
+ npm install
21
+ ```
22
+
23
+ ### 2. 项目编译以及支持热加载的开发模式
24
+ ```
25
+ npm run serve
26
+ ```
27
+
28
+ ### 3. 编译生产包并最小化文件资源
29
+ ```
30
+ npm run build
31
+ ```
32
+
33
+ ### 4. 检测并修复 JavaScript 代码中的问题
34
+ ```
35
+ npm run lint
36
+ ```
37
+
38
+
39
+
40
+ ## 集成指南
41
+
42
+ ### 1. 项目引用集成
43
+
44
+ > Tips: 本集成方式将会全量引入本项目的所有代码和依赖,所以可能会在您的项目中产生依赖版本冲突,请注意甄别。如果发生很多的依赖冲突,建议立即更换iframe集成方式,更轻量级,且日后能够无缝升级。
45
+
46
+ 如果您使用了flyfish的私库,请使用以下命令安装依赖即可。
47
+
48
+ ```
49
+ npm install --save file-viewer
50
+ ```
51
+
52
+ 常规情况下,请使用`npm link`的方式进行集成。
53
+
54
+ 假设您将本项目clone到了`D:\Works\file-viewer`下,接下来请按照下面的步骤进行安装。
55
+
56
+ 首先,打开命令行工具,`cd [你的项目位置]`,然后执行`npm link D:\Works\file-viewer `。最后,在您的项目中引用即可。
57
+
58
+ ```javascript
59
+ import FileViewer from "file-viewer";
60
+
61
+ Vue.use(FileViewer)
62
+ ```
63
+
64
+ 然后,只需要在您的项目中直接使用组件即可。示例如下:
65
+
66
+ ```html
67
+ <template>
68
+ <file-viewer :url="url" />
69
+ </template>
70
+
71
+ <script>
72
+ export default {
73
+ name: "SimpleExample",
74
+ data() {
75
+ return {
76
+ url: 'http://flyfish.group/%E6%95%B0%E6%8D%AE%E4%B8%AD%E5%8F%B0%E7%AC%94%E8%AE%B0(1).docx',
77
+ }
78
+ },
79
+ }
80
+ </script>
81
+
82
+ <style scoped>
83
+
84
+ </style>
85
+
86
+ ```
87
+
88
+ 此外,组件还支持直接传入文件或者二进制进行展示。
89
+
90
+ ### 2. 使用iframe集成(推荐)
91
+
92
+ #### 开发集成:
93
+
94
+ 1. 请按照“快速开始”章节运行您的示例项目
95
+ 2. 打开`example`文件夹中的`embedded.html`,修改目标地址为本地调试地址
96
+
97
+ ```javascript
98
+ var context = {
99
+ // 查看器的源,当前示例为在线,本地测试请改为 http://localhost:8900
100
+ origin: 'http://localhost:8900',
101
+ // 目标frame
102
+ frame: null,
103
+ // 文件url
104
+ url: './word.docx'
105
+ };
106
+ ```
107
+
108
+ 3. 直接打开该文件或者使用本地web服务访问。
109
+ 4. 具体请参考demo代码,原理是基于`iframe`跨域通信机制。
110
+
111
+ ![image-20230228161454443](/Users/wangyu/Library/Application Support/typora-user-images/image-20230228161454443.png)