@file-viewer/core 2.0.10 → 2.1.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 (114) hide show
  1. package/README.en.md +2 -2
  2. package/README.md +2 -2
  3. package/dist/config/options.d.ts +1 -1
  4. package/dist/config/options.js +1 -1
  5. package/dist/contracts/types.d.ts +71 -1
  6. package/dist/headless.d.ts +2 -2
  7. package/dist/headless.js +1 -1
  8. package/dist/index.d.ts +9 -6
  9. package/dist/index.js +105 -48
  10. package/dist/platform/assets.d.ts +3 -1
  11. package/dist/platform/assets.js +18 -2
  12. package/dist/registry/capabilities.d.ts +2 -2
  13. package/dist/registry/capabilities.js +2 -1
  14. package/dist/registry/formats.d.ts +20 -7
  15. package/dist/registry/formats.js +14 -5
  16. package/dist/registry/registry.d.ts +8 -1
  17. package/dist/registry/registry.js +29 -0
  18. package/dist/renderers/image.js +1 -10
  19. package/dist/renderers/index.d.ts +320 -2
  20. package/dist/renderers/index.js +27 -157
  21. package/dist/viewer/createViewer.js +86 -3
  22. package/package.json +17 -44
  23. package/dist/renderers/archive.d.ts +0 -2
  24. package/dist/renderers/archive.js +0 -547
  25. package/dist/renderers/archiveCache.d.ts +0 -10
  26. package/dist/renderers/archiveCache.js +0 -96
  27. package/dist/renderers/archiveFallback.d.ts +0 -7
  28. package/dist/renderers/archiveFallback.js +0 -166
  29. package/dist/renderers/archiveShared.d.ts +0 -23
  30. package/dist/renderers/archiveShared.js +0 -71
  31. package/dist/renderers/audio.d.ts +0 -8
  32. package/dist/renderers/audio.js +0 -219
  33. package/dist/renderers/cad.d.ts +0 -2
  34. package/dist/renderers/cad.js +0 -446
  35. package/dist/renderers/code.d.ts +0 -11
  36. package/dist/renderers/code.js +0 -233
  37. package/dist/renderers/data.d.ts +0 -7
  38. package/dist/renderers/data.js +0 -370
  39. package/dist/renderers/drawing.d.ts +0 -10
  40. package/dist/renderers/drawing.js +0 -882
  41. package/dist/renderers/eda.d.ts +0 -2
  42. package/dist/renderers/eda.js +0 -434
  43. package/dist/renderers/edaParser.d.ts +0 -77
  44. package/dist/renderers/edaParser.js +0 -569
  45. package/dist/renderers/email.d.ts +0 -2
  46. package/dist/renderers/email.js +0 -463
  47. package/dist/renderers/epub.d.ts +0 -2
  48. package/dist/renderers/epub.js +0 -331
  49. package/dist/renderers/geo.d.ts +0 -2
  50. package/dist/renderers/geo.js +0 -284
  51. package/dist/renderers/markdown.d.ts +0 -2
  52. package/dist/renderers/markdown.js +0 -83
  53. package/dist/renderers/model.d.ts +0 -2
  54. package/dist/renderers/model.js +0 -567
  55. package/dist/renderers/ofd.d.ts +0 -2
  56. package/dist/renderers/ofd.js +0 -256
  57. package/dist/renderers/openDocument.d.ts +0 -2
  58. package/dist/renderers/openDocument.js +0 -122
  59. package/dist/renderers/pdf.d.ts +0 -3
  60. package/dist/renderers/pdf.js +0 -1001
  61. package/dist/renderers/pdfStyles.d.ts +0 -1
  62. package/dist/renderers/pdfStyles.js +0 -1
  63. package/dist/renderers/pptx.d.ts +0 -2
  64. package/dist/renderers/pptx.js +0 -217
  65. package/dist/renderers/spreadsheet/state.d.ts +0 -80
  66. package/dist/renderers/spreadsheet/state.js +0 -96
  67. package/dist/renderers/spreadsheet/view.d.ts +0 -25
  68. package/dist/renderers/spreadsheet/view.js +0 -833
  69. package/dist/renderers/spreadsheet/worker/index.d.ts +0 -2
  70. package/dist/renderers/spreadsheet/worker/index.js +0 -1
  71. package/dist/renderers/spreadsheet/worker/sheetjs/SheetJsModel.d.ts +0 -73
  72. package/dist/renderers/spreadsheet/worker/sheetjs/SheetJsModel.js +0 -623
  73. package/dist/renderers/spreadsheet/worker/sheetjs/color.d.ts +0 -2
  74. package/dist/renderers/spreadsheet/worker/sheetjs/color.js +0 -73
  75. package/dist/renderers/spreadsheet/worker/sheetjs/index.d.ts +0 -1
  76. package/dist/renderers/spreadsheet/worker/sheetjs/index.js +0 -1
  77. package/dist/renderers/spreadsheet/worker/sheetjs/parser.d.ts +0 -18
  78. package/dist/renderers/spreadsheet/worker/sheetjs/parser.js +0 -106
  79. package/dist/renderers/spreadsheet/worker/sheetjs/sheet.worker.d.ts +0 -1
  80. package/dist/renderers/spreadsheet/worker/sheetjs/sheet.worker.js +0 -11
  81. package/dist/renderers/spreadsheet/worker/type.d.ts +0 -57
  82. package/dist/renderers/spreadsheet/worker/type.js +0 -1
  83. package/dist/renderers/spreadsheet.d.ts +0 -3
  84. package/dist/renderers/spreadsheet.js +0 -929
  85. package/dist/renderers/typst.d.ts +0 -8
  86. package/dist/renderers/typst.js +0 -547
  87. package/dist/renderers/umd/parser.d.ts +0 -30
  88. package/dist/renderers/umd/parser.js +0 -408
  89. package/dist/renderers/umd.d.ts +0 -2
  90. package/dist/renderers/umd.js +0 -297
  91. package/dist/renderers/video.d.ts +0 -8
  92. package/dist/renderers/video.js +0 -108
  93. package/dist/renderers/wordDoc.d.ts +0 -5
  94. package/dist/renderers/wordDoc.js +0 -284
  95. package/dist/renderers/wordDocx.d.ts +0 -5
  96. package/dist/renderers/wordDocx.js +0 -985
  97. package/dist/renderers/wordDocx.worker.d.ts +0 -1
  98. package/dist/renderers/wordDocx.worker.js +0 -96
  99. package/vendor/ofd/dltech/jbig2/arithmetic_decoder.js +0 -183
  100. package/vendor/ofd/dltech/jbig2/ccitt.js +0 -1070
  101. package/vendor/ofd/dltech/jbig2/compatibility.js +0 -12
  102. package/vendor/ofd/dltech/jbig2/core_utils.js +0 -180
  103. package/vendor/ofd/dltech/jbig2/is_node.js +0 -27
  104. package/vendor/ofd/dltech/jbig2/jbig2.js +0 -2589
  105. package/vendor/ofd/dltech/jbig2/jbig2_stream.js +0 -81
  106. package/vendor/ofd/dltech/jbig2/primitives.js +0 -387
  107. package/vendor/ofd/dltech/jbig2/stream.js +0 -1348
  108. package/vendor/ofd/dltech/jbig2/util.js +0 -972
  109. package/vendor/ofd/dltech/ofd/ofd.d.ts +0 -11
  110. package/vendor/ofd/dltech/ofd/ofd.js +0 -100
  111. package/vendor/ofd/dltech/ofd/ofd_parser.js +0 -395
  112. package/vendor/ofd/dltech/ofd/ofd_render.js +0 -473
  113. package/vendor/ofd/dltech/ofd/ofd_util.js +0 -350
  114. package/vendor/ofd/dltech/ofd/pipeline.js +0 -26
@@ -14,34 +14,6 @@ const createWrapper = (el) => ({
14
14
  },
15
15
  });
16
16
  export const coreBrowserRendererHandlers = [
17
- {
18
- rendererId: 'code',
19
- handler: async (buffer, target, type) => {
20
- const { default: renderCode } = await import('./code.js');
21
- return renderCode(buffer, target, type);
22
- },
23
- },
24
- {
25
- rendererId: 'markdown',
26
- handler: async (buffer, target) => {
27
- const { default: renderMarkdown } = await import('./markdown.js');
28
- return renderMarkdown(buffer, target);
29
- },
30
- },
31
- {
32
- rendererId: 'video',
33
- handler: async (buffer, target, type, context) => {
34
- const { default: renderVideo } = await import('./video.js');
35
- return renderVideo(buffer, target, type, context);
36
- },
37
- },
38
- {
39
- rendererId: 'audio',
40
- handler: async (buffer, target, type) => {
41
- const { default: renderAudio } = await import('./audio.js');
42
- return renderAudio(buffer, target, type);
43
- },
44
- },
45
17
  {
46
18
  rendererId: 'image',
47
19
  handler: async (buffer, target, type) => {
@@ -49,133 +21,30 @@ export const coreBrowserRendererHandlers = [
49
21
  return renderImage(buffer, target, type);
50
22
  },
51
23
  },
52
- {
53
- rendererId: 'umd',
54
- handler: async (buffer, target) => {
55
- const { default: renderUmd } = await import('./umd.js');
56
- return renderUmd(buffer, target);
57
- },
58
- },
59
- {
60
- rendererId: 'geo',
61
- handler: async (buffer, target, type) => {
62
- const { default: renderGeo } = await import('./geo.js');
63
- return renderGeo(buffer, target, type);
64
- },
65
- },
66
- {
67
- rendererId: 'open-document',
68
- handler: async (buffer, target, type) => {
69
- const { default: renderOpenDocument } = await import('./openDocument.js');
70
- return renderOpenDocument(buffer, target, type);
71
- },
72
- },
73
- {
74
- rendererId: 'ofd',
75
- handler: async (buffer, target, _type, context) => {
76
- const { default: renderOfd } = await import('./ofd.js');
77
- return renderOfd(buffer, target, context);
78
- },
79
- },
80
- {
81
- rendererId: 'pdf',
82
- handler: async (buffer, target, _type, context) => {
83
- const { default: renderPdf } = await import('./pdf.js');
84
- return renderPdf(buffer, target, context);
85
- },
86
- },
87
- {
88
- rendererId: 'office-word-openxml',
89
- handler: async (buffer, target, _type, context) => {
90
- const { default: renderWordDocx } = await import('./wordDocx.js');
91
- return renderWordDocx(buffer, target, context);
92
- },
93
- },
94
- {
95
- rendererId: 'office-word-binary',
96
- handler: async (buffer, target, _type, context) => {
97
- const { default: renderWordDoc } = await import('./wordDoc.js');
98
- return renderWordDoc(buffer, target, context);
99
- },
100
- },
101
- {
102
- rendererId: 'spreadsheet-openxml',
103
- handler: async (buffer, target, type, context) => {
104
- const { default: renderSpreadsheet } = await import('./spreadsheet.js');
105
- return renderSpreadsheet(buffer, target, type, context);
106
- },
107
- },
108
- {
109
- rendererId: 'email',
110
- handler: async (buffer, target, type, context) => {
111
- const { default: renderEmail } = await import('./email.js');
112
- return renderEmail(buffer, target, type, context);
113
- },
114
- },
115
- {
116
- rendererId: 'eda',
117
- handler: async (buffer, target, type, context) => {
118
- const { default: renderEda } = await import('./eda.js');
119
- return renderEda(buffer, target, type, context);
120
- },
121
- },
122
- {
123
- rendererId: 'cad',
124
- handler: async (buffer, target, type, context) => {
125
- const { default: renderCad } = await import('./cad.js');
126
- return renderCad(buffer, target, type, context);
127
- },
128
- },
129
- {
130
- rendererId: 'typst',
131
- handler: async (buffer, target, type, context) => {
132
- const { default: renderTypst } = await import('./typst.js');
133
- return renderTypst(buffer, target, type, context);
134
- },
135
- },
136
- {
137
- rendererId: 'office-presentation',
138
- handler: async (buffer, target, type, context) => {
139
- const { default: renderPptx } = await import('./pptx.js');
140
- return renderPptx(buffer, target, type, context);
141
- },
142
- },
143
- {
144
- rendererId: 'epub',
145
- handler: async (buffer, target) => {
146
- const { default: renderEpub } = await import('./epub.js');
147
- return renderEpub(buffer, target);
148
- },
149
- },
150
- {
151
- rendererId: 'model',
152
- handler: async (buffer, target, type, context) => {
153
- const { default: renderModel } = await import('./model.js');
154
- return renderModel(buffer, target, type, context);
155
- },
156
- },
157
- {
158
- rendererId: 'drawing',
159
- handler: async (buffer, target, type, context) => {
160
- const { default: renderDrawing } = await import('./drawing.js');
161
- return renderDrawing(buffer, target, type, context);
162
- },
163
- },
164
- {
165
- rendererId: 'data-asset',
166
- handler: async (buffer, target, type, context) => {
167
- const { default: renderDataAsset } = await import('./data.js');
168
- return renderDataAsset(buffer, target, type, context);
169
- },
170
- },
171
- {
172
- rendererId: 'archive',
173
- handler: async (buffer, target, type, context) => {
174
- const { default: renderArchive } = await import('./archive.js');
175
- return renderArchive(buffer, target, type, context);
176
- },
177
- },
178
24
  ];
25
+ export const CORE_LITE_RENDERER_IDS = [
26
+ 'image',
27
+ ];
28
+ export const coreLiteBrowserRendererHandlers = coreBrowserRendererHandlers.filter(handler => CORE_LITE_RENDERER_IDS.includes(handler.rendererId));
29
+ export const coreLiteRendererDefinitions = DEFAULT_RENDERER_DEFINITIONS.filter(definition => CORE_LITE_RENDERER_IDS.includes(definition.id));
30
+ const resolveCoreRendererDefinitions = (preset) => {
31
+ if (preset === 'none') {
32
+ return [];
33
+ }
34
+ if (preset === 'lite') {
35
+ return coreLiteRendererDefinitions;
36
+ }
37
+ return DEFAULT_RENDERER_DEFINITIONS;
38
+ };
39
+ const resolveCoreRendererHandlers = (preset) => {
40
+ if (preset === 'none') {
41
+ return [];
42
+ }
43
+ if (preset === 'lite') {
44
+ return coreLiteBrowserRendererHandlers;
45
+ }
46
+ return coreBrowserRendererHandlers;
47
+ };
179
48
  const renderUnsupported = async (_buffer, target, type) => {
180
49
  const state = createFileViewerUnsupportedState(type);
181
50
  const wrapper = document.createElement('div');
@@ -192,10 +61,11 @@ const renderUnsupported = async (_buffer, target, type) => {
192
61
  target.replaceChildren(wrapper);
193
62
  return createWrapper(target);
194
63
  };
195
- export const createFileViewerCoreRendererRegistry = () => {
64
+ export const createFileViewerCoreRendererRegistry = (options = {}) => {
65
+ const preset = options.builtinRenderers || 'all';
196
66
  const bridge = createFileRenderHandlerRegistry({
197
- definitions: DEFAULT_RENDERER_DEFINITIONS,
198
- handlers: coreBrowserRendererHandlers,
67
+ definitions: resolveCoreRendererDefinitions(preset),
68
+ handlers: resolveCoreRendererHandlers(preset),
199
69
  });
200
70
  return {
201
71
  ...bridge,
@@ -10,11 +10,13 @@ import { createFileViewerZoomController } from '../features/document/zoom.js';
10
10
  import { DEFAULT_FILE_VIEWER_DOWNLOAD_FILENAME, DEFAULT_FILE_VIEWER_EXPORT_FILENAME, DEFAULT_FILE_VIEWER_PREVIEW_TITLE, createFileViewerOriginalSourceStateFromNormalizedSource, executeFileViewerDownloadOperation, executeFileViewerExportHtmlOperation, executeFileViewerPrintOperation, resolveFileViewerDisplayFilename, resolveFileViewerOperationFilename, } from './operations.js';
11
11
  import { getRendererAvailability, createUnsupportedAvailability } from '../registry/capabilities.js';
12
12
  import { buildFileViewerLifecycleContextFromNormalizedSource, buildFileViewerOperationContext, runFileViewerBeforeOperation, runFileViewerLifecycleHook, } from '../lifecycle/operations.js';
13
- import { createRendererRegistry } from '../registry/registry.js';
14
- import { applyFileViewerRenderSurfaceState, createFileViewerRenderSurfaceState, } from '../rendering/handler.js';
13
+ import { collectFileViewerRendererPlugins, createRendererRegistry, installFileViewerRendererPlugins, } from '../registry/registry.js';
14
+ import { createFileRenderHandlerLoader, applyFileViewerRenderSurfaceState, createFileViewerRenderSurfaceState, } from '../rendering/handler.js';
15
+ import { createFileViewerCoreRendererRegistry } from '../renderers/index.js';
15
16
  import { createFileViewerRequestScope } from '../source/loading.js';
16
17
  import { normalizeSource } from '../source/index.js';
17
18
  import { buildFileViewerWatermarkInlineStyle } from '../features/watermark.js';
19
+ import { createFileViewerUnsupportedState } from './state.js';
18
20
  const emitLifecycle = async (options, onEvent, phase, source, version, startedAt, reason) => {
19
21
  const now = Date.now();
20
22
  const context = buildFileViewerLifecycleContextFromNormalizedSource({
@@ -30,9 +32,52 @@ const emitLifecycle = async (options, onEvent, phase, source, version, startedAt
30
32
  });
31
33
  onEvent === null || onEvent === void 0 ? void 0 : onEvent({ type: phase, payload: context });
32
34
  };
35
+ const createBaseRendererRegistry = (createOptions, options) => {
36
+ if (options.rendererMode === 'replace') {
37
+ return createRendererRegistry([]);
38
+ }
39
+ if (createOptions.registry) {
40
+ return createOptions.registry;
41
+ }
42
+ return createFileViewerCoreRendererRegistry({
43
+ builtinRenderers: options.builtinRenderers,
44
+ }).registry;
45
+ };
46
+ const renderMissingRendererState = (container, type) => {
47
+ const documentRef = container.ownerDocument;
48
+ const state = createFileViewerUnsupportedState(type);
49
+ const wrapper = documentRef.createElement('div');
50
+ wrapper.className = 'file-viewer-missing-renderer';
51
+ wrapper.style.cssText = [
52
+ 'display:flex',
53
+ 'min-height:260px',
54
+ 'height:100%',
55
+ 'align-items:center',
56
+ 'justify-content:center',
57
+ 'padding:32px',
58
+ 'box-sizing:border-box',
59
+ 'text-align:center',
60
+ 'color:#64748b',
61
+ 'font:14px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif',
62
+ ].join(';');
63
+ const content = documentRef.createElement('div');
64
+ const title = documentRef.createElement('strong');
65
+ title.textContent = state.message;
66
+ title.style.cssText = 'display:block;margin-bottom:8px;color:#172033;font-size:16px;';
67
+ const description = documentRef.createElement('p');
68
+ description.textContent = state.description ||
69
+ '当前内置 renderer 配置没有加载该格式。请安装并传入对应 @file-viewer/renderer-* 包,或使用 @file-viewer/preset-all。';
70
+ description.style.cssText = 'max-width:520px;margin:0;';
71
+ content.append(title, description);
72
+ wrapper.append(content);
73
+ container.replaceChildren(wrapper);
74
+ };
33
75
  export const createViewer = (container, createOptions = {}) => {
34
- const registry = createOptions.registry || createRendererRegistry();
35
76
  let options = createOptions.options || {};
77
+ let registry = createBaseRendererRegistry(createOptions, options);
78
+ let installedRendererInput = undefined;
79
+ let installedRendererMode = options.rendererMode || 'extend';
80
+ let installedBuiltinRenderers = options.builtinRenderers || 'all';
36
81
  let currentSource = null;
37
82
  const renderSurfaceState = createFileViewerRenderSurfaceState();
38
83
  const requestScope = createFileViewerRequestScope();
@@ -40,6 +85,42 @@ export const createViewer = (container, createOptions = {}) => {
40
85
  anchors: { value: [] },
41
86
  state: createEmptyFileViewerSearchState(),
42
87
  };
88
+ const ensureRendererPluginsInstalled = async () => {
89
+ const nextMode = options.rendererMode || 'extend';
90
+ const nextRendererInput = options.renderers;
91
+ const nextBuiltinRenderers = options.builtinRenderers || 'all';
92
+ if (nextMode === installedRendererMode &&
93
+ nextRendererInput === installedRendererInput &&
94
+ nextBuiltinRenderers === installedBuiltinRenderers) {
95
+ return;
96
+ }
97
+ registry = createBaseRendererRegistry(createOptions, options);
98
+ installedRendererMode = nextMode;
99
+ installedRendererInput = nextRendererInput;
100
+ installedBuiltinRenderers = nextBuiltinRenderers;
101
+ const plugins = collectFileViewerRendererPlugins(nextRendererInput);
102
+ if (!plugins.length) {
103
+ return;
104
+ }
105
+ const registerHandler = (registration) => {
106
+ const definition = registry.getById(registration.rendererId);
107
+ if (!definition) {
108
+ return;
109
+ }
110
+ registry.register({
111
+ ...definition,
112
+ load: createFileRenderHandlerLoader({
113
+ handler: registration.handler,
114
+ getTarget: context => context.surface.container,
115
+ }),
116
+ });
117
+ };
118
+ await installFileViewerRendererPlugins({
119
+ registry,
120
+ plugins,
121
+ registerHandler,
122
+ });
123
+ };
43
124
  const buildCurrentLifecycleContext = () => {
44
125
  const source = currentSource || normalizeSource({});
45
126
  return buildFileViewerLifecycleContextFromNormalizedSource({
@@ -139,6 +220,7 @@ export const createViewer = (container, createOptions = {}) => {
139
220
  container,
140
221
  async load(source) {
141
222
  await destroyCurrent('replace');
223
+ await ensureRendererPluginsInstalled();
142
224
  const normalized = normalizeSource(source);
143
225
  currentSource = normalized;
144
226
  const version = requestScope.requestController.createVersion();
@@ -146,6 +228,7 @@ export const createViewer = (container, createOptions = {}) => {
146
228
  const startedAt = Date.now();
147
229
  await emitLifecycle(options, createOptions.onEvent, 'load-start', normalized, version, startedAt);
148
230
  if (!(renderer === null || renderer === void 0 ? void 0 : renderer.load)) {
231
+ renderMissingRendererState(container, normalized.extension);
149
232
  applyFileViewerRenderSurfaceState(renderSurfaceState, { session: null });
150
233
  emitOperationAvailabilityChange();
151
234
  emitZoomChange();
package/package.json CHANGED
@@ -1,14 +1,21 @@
1
1
  {
2
2
  "name": "@file-viewer/core",
3
- "version": "2.0.10",
3
+ "version": "2.1.0",
4
4
  "private": false,
5
5
  "type": "module",
6
- "description": "Framework-neutral TypeScript core for Flyfish File Viewer",
6
+ "description": "Framework-neutral modular TypeScript core for Flyfish File Viewer renderer orchestration, lifecycle APIs, search, zoom, print, and export",
7
7
  "keywords": [
8
8
  "file-viewer",
9
9
  "document-preview",
10
10
  "typescript",
11
- "core"
11
+ "core",
12
+ "document-viewer",
13
+ "file-preview",
14
+ "self-hosted",
15
+ "browser",
16
+ "wasm",
17
+ "office-viewer",
18
+ "pdf-viewer"
12
19
  ],
13
20
  "publishConfig": {
14
21
  "access": "public",
@@ -23,6 +30,13 @@
23
30
  "url": "git+https://github.com/flyfish-dev/file-viewer-core.git",
24
31
  "directory": "packages/core"
25
32
  },
33
+ "bugs": {
34
+ "url": "https://github.com/flyfish-dev/file-viewer-core/issues"
35
+ },
36
+ "funding": {
37
+ "type": "individual",
38
+ "url": "https://dev.flyfish.group/shop"
39
+ },
26
40
  "homepage": "https://doc.file-viewer.app/",
27
41
  "main": "./dist/index.js",
28
42
  "module": "./dist/index.js",
@@ -57,48 +71,7 @@
57
71
  "README.en.md",
58
72
  "LICENSE"
59
73
  ],
60
- "dependencies": {
61
- "@excalidraw/excalidraw": "^0.18.1",
62
- "@file-viewer/docx": "^0.3.10",
63
- "@file-viewer/pptx": "^2.0.10",
64
- "@flyfish-dev/cad-viewer": "^0.6.4",
65
- "@kenjiuno/msgreader": "^1.28.0",
66
- "@myriaddreamin/typst-ts-renderer": "0.7.0",
67
- "@myriaddreamin/typst-ts-web-compiler": "0.7.0",
68
- "@myriaddreamin/typst.ts": "0.7.0",
69
- "@tmcw/togeojson": "^7.1.2",
70
- "@tonejs/midi": "^2.0.28",
71
- "@xmldom/xmldom": "^0.9.10",
72
- "ag-psd": "^30.1.1",
73
- "avsc": "^5.7.9",
74
- "cfb": "^1.2.2",
75
- "e-virt-table": "^1.3.26",
76
- "epubjs": "^0.3.93",
77
- "heic2any": "^0.0.4",
78
- "highlight.js": "^11.11.1",
79
- "hls.js": "^1.6.16",
80
- "hyparquet": "^1.26.0",
81
- "jszip": "^3.10.1",
82
- "libarchive.js": "^2.0.2",
83
- "linkedom": "^0.18.12",
84
- "marked": "^18.0.5",
85
- "msdoc-viewer": "^0.2.0",
86
- "ofd-xml-parser": "^0.0.6",
87
- "pako": "^2.1.0",
88
- "pdfjs-dist": "^6.0.227",
89
- "postal-mime": "^2.7.4",
90
- "roughjs": "^4.6.6",
91
- "rtf.js": "^3.0.9",
92
- "shpjs": "^6.2.0",
93
- "sql.js": "^1.14.1",
94
- "styled-exceljs": "0.21.1",
95
- "three": "^0.184.0",
96
- "tinycolor2": "^1.6.0"
97
- },
98
74
  "devDependencies": {
99
- "@types/pako": "^2.0.4",
100
- "@types/three": "^0.184.1",
101
- "@types/tinycolor2": "^1.4.6",
102
75
  "typescript": "^6.0.3"
103
76
  },
104
77
  "license": "Apache-2.0",
@@ -1,2 +0,0 @@
1
- import type { FileRenderContext, FileViewerRenderedInstance } from '../contracts/types';
2
- export default function renderArchive(buffer: ArrayBuffer, target: HTMLDivElement, _type?: string, context?: FileRenderContext): Promise<FileViewerRenderedInstance>;