@sdata/web-vue 3.8.0 → 3.10.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.
- package/dist/sd.css +53 -5
- package/dist/sd.min.css +1 -1
- package/es/auto-complete/auto-complete.js +10 -0
- package/es/file-previewer/file-previewer.vue.d.ts +5 -1
- package/es/file-previewer/file-previewer.vue_vue_type_script_setup_true_lang.js +117 -21
- package/es/file-previewer/index.d.ts +33 -3
- package/es/file-previewer/pdfjs-worker-url.d.ts +2 -0
- package/es/file-previewer/pdfjs-worker-url.js +4 -0
- package/es/file-previewer/pdfjs-worker.min.mjs +29 -0
- package/es/file-previewer/style/index.css +53 -5
- package/es/file-previewer/style/index.scss +58 -6
- package/es/file-previewer/style/token.scss +13 -0
- package/es/file-previewer/types.d.ts +55 -1
- package/es/file-previewer/use-pdf-js.d.ts +20 -0
- package/es/file-previewer/use-pdf-js.js +197 -0
- package/es/index.css +53 -5
- package/es/index.d.ts +1 -1
- package/es/tree/base-node.vue_vue_type_script_setup_true_lang.js +17 -10
- package/es/tree/interface.d.ts +1 -0
- package/es/tree/tree.vue.d.ts +9 -0
- package/es/tree/tree.vue_vue_type_script_setup_true_lang.js +8 -0
- package/json/vetur-attributes.json +4 -0
- package/json/vetur-tags.json +1 -0
- package/json/web-types.json +17 -1
- package/package.json +3 -1
|
@@ -137,6 +137,16 @@ var auto_complete_default = /* @__PURE__ */ defineComponent({
|
|
|
137
137
|
"dropdownReachBottom": (_ev) => true
|
|
138
138
|
},
|
|
139
139
|
/**
|
|
140
|
+
* @zh 前缀元素
|
|
141
|
+
* @en Prefix
|
|
142
|
+
* @slot prefix
|
|
143
|
+
*/
|
|
144
|
+
/**
|
|
145
|
+
* @zh 后缀元素
|
|
146
|
+
* @en Suffix
|
|
147
|
+
* @slot suffix
|
|
148
|
+
*/
|
|
149
|
+
/**
|
|
140
150
|
* @zh 弹出框的页脚
|
|
141
151
|
* @en The footer of the popup menu box
|
|
142
152
|
* @slot footer
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import type { PropType } from 'vue';
|
|
2
|
-
import type { FilePreviewerContentSlotProps, FilePreviewerImageProps, FilePreviewerMediaProps, FilePreviewerPdfProps, FilePreviewerType } from './types';
|
|
2
|
+
import type { FilePreviewerContentSlotProps, FilePreviewerImageProps, FilePreviewerImageSlotProps, FilePreviewerMediaProps, FilePreviewerMediaSlotProps, FilePreviewerPdfProps, FilePreviewerPdfSlotProps, FilePreviewerType } from './types';
|
|
3
3
|
type __VLS_Slots = {
|
|
4
4
|
title?: () => unknown;
|
|
5
5
|
content?: (_props: FilePreviewerContentSlotProps) => unknown;
|
|
6
|
+
image?: (_props: FilePreviewerImageSlotProps) => unknown;
|
|
7
|
+
video?: (_props: FilePreviewerMediaSlotProps) => unknown;
|
|
8
|
+
audio?: (_props: FilePreviewerMediaSlotProps) => unknown;
|
|
9
|
+
pdf?: (_props: FilePreviewerPdfSlotProps) => unknown;
|
|
6
10
|
};
|
|
7
11
|
declare function close(): void;
|
|
8
12
|
declare function onPreviewLoad(): void;
|
|
@@ -9,7 +9,8 @@ import usePopupManager from "../_hooks/use-popup-manager.js";
|
|
|
9
9
|
import usePopupContainer from "../_hooks/use-popup-container.js";
|
|
10
10
|
import usePopupOverflowHidden from "../_hooks/use-popup-overflow-hidden.js";
|
|
11
11
|
import Image from "../image/index.js";
|
|
12
|
-
import {
|
|
12
|
+
import { usePdfJs } from "./use-pdf-js.js";
|
|
13
|
+
import { Teleport, computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createVNode, defineComponent, guardReactiveProps, mergeProps, nextTick, normalizeClass, normalizeProps, normalizeStyle, onBeforeUnmount, openBlock, reactive, renderSlot, resolveDynamicComponent, shallowRef, toDisplayString, toRefs, unref, useSlots, watch, withCtx } from "vue";
|
|
13
14
|
//#region components/file-previewer/file-previewer.vue?vue&type=script&setup=true&lang.ts
|
|
14
15
|
var _hoisted_1 = ["tabindex"];
|
|
15
16
|
var _hoisted_2 = [
|
|
@@ -17,6 +18,8 @@ var _hoisted_2 = [
|
|
|
17
18
|
"aria-modal",
|
|
18
19
|
"aria-label"
|
|
19
20
|
];
|
|
21
|
+
var _hoisted_3 = ["disabled"];
|
|
22
|
+
var _hoisted_4 = ["disabled"];
|
|
20
23
|
var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ defineComponent(_objectSpread2(_objectSpread2({}, { name: "FilePreviewer" }), {}, {
|
|
21
24
|
__name: "file-previewer",
|
|
22
25
|
props: {
|
|
@@ -138,7 +141,7 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
138
141
|
return (_visible$value = visible === null || visible === void 0 ? void 0 : visible.value) !== null && _visible$value !== void 0 ? _visible$value : localVisible.value;
|
|
139
142
|
});
|
|
140
143
|
const shouldRender = computed(() => !fullscreen.value || mergedVisible.value);
|
|
141
|
-
const useImagePreview = computed(() => type.value === "image" && fullscreen.value && !slots.content);
|
|
144
|
+
const useImagePreview = computed(() => type.value === "image" && fullscreen.value && !slots.content && !slots.image);
|
|
142
145
|
const container = usePopupContainer(document.body, reactive({ popupContainer }));
|
|
143
146
|
const popupVisible = computed(() => fullscreen.value && mergedVisible.value);
|
|
144
147
|
const { zIndex } = usePopupManager("dialog", { visible: popupVisible });
|
|
@@ -246,25 +249,87 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
246
249
|
}
|
|
247
250
|
});
|
|
248
251
|
});
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
252
|
+
const { doc: pdfDoc, numPages: pdfNumPages, page: pdfCurrentPage, goto: pdfGoto, prev: pdfPrev, next: pdfNext, render: pdfRender, load: loadPdf, destroy: destroyPdf } = usePdfJs({
|
|
253
|
+
src: () => currentSrc.value,
|
|
254
|
+
pdfProps: () => pdfProps === null || pdfProps === void 0 ? void 0 : pdfProps.value,
|
|
255
|
+
onStatus: (next) => {
|
|
256
|
+
status.value = next;
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
const pdfCanvasRef = shallowRef();
|
|
260
|
+
const hasTypeSlot = computed(() => {
|
|
261
|
+
switch (type.value) {
|
|
262
|
+
case "image": return !!slots.image;
|
|
263
|
+
case "video": return !!slots.video;
|
|
264
|
+
case "audio": return !!slots.audio;
|
|
265
|
+
case "pdf": return !!slots.pdf;
|
|
266
|
+
default: return false;
|
|
267
|
+
}
|
|
263
268
|
});
|
|
269
|
+
const pdfSlotProps = computed(() => ({
|
|
270
|
+
src: currentSrc.value,
|
|
271
|
+
status: status.value,
|
|
272
|
+
loading: isLoading.value,
|
|
273
|
+
loaded: isLoaded.value,
|
|
274
|
+
error: isError.value,
|
|
275
|
+
doc: pdfDoc.value,
|
|
276
|
+
page: pdfCurrentPage.value,
|
|
277
|
+
numPages: pdfNumPages.value,
|
|
278
|
+
goto: pdfGoto,
|
|
279
|
+
prev: pdfPrev,
|
|
280
|
+
next: pdfNext,
|
|
281
|
+
render: pdfRender,
|
|
282
|
+
close,
|
|
283
|
+
onLoad: onPreviewLoad,
|
|
284
|
+
onError: onLoadError
|
|
285
|
+
}));
|
|
286
|
+
const mediaSlotProps = computed(() => ({
|
|
287
|
+
src: currentSrc.value,
|
|
288
|
+
status: status.value,
|
|
289
|
+
loading: isLoading.value,
|
|
290
|
+
loaded: isLoaded.value,
|
|
291
|
+
error: isError.value,
|
|
292
|
+
skin: mediaSkin.value,
|
|
293
|
+
useVideoJs: useVideoJsMediaSkin.value,
|
|
294
|
+
playerProps: mediaPlayerProps.value,
|
|
295
|
+
skinProps: mediaSkinProps.value,
|
|
296
|
+
close,
|
|
297
|
+
onLoad: onPreviewLoad,
|
|
298
|
+
onError: onLoadError
|
|
299
|
+
}));
|
|
300
|
+
const imageSlotProps = computed(() => ({
|
|
301
|
+
src: currentSrc.value,
|
|
302
|
+
status: status.value,
|
|
303
|
+
loading: isLoading.value,
|
|
304
|
+
loaded: isLoaded.value,
|
|
305
|
+
error: isError.value,
|
|
306
|
+
imageProps: mergedImageProps.value,
|
|
307
|
+
close,
|
|
308
|
+
onLoad: onPreviewLoad,
|
|
309
|
+
onError: onLoadError
|
|
310
|
+
}));
|
|
264
311
|
usePopupOverflowHidden(reactive({
|
|
265
312
|
container,
|
|
266
313
|
hidden: popupVisible
|
|
267
314
|
}));
|
|
315
|
+
watch([
|
|
316
|
+
pdfDoc,
|
|
317
|
+
pdfCurrentPage,
|
|
318
|
+
() => {
|
|
319
|
+
var _pdfProps$value;
|
|
320
|
+
return pdfProps === null || pdfProps === void 0 || (_pdfProps$value = pdfProps.value) === null || _pdfProps$value === void 0 ? void 0 : _pdfProps$value.scale;
|
|
321
|
+
},
|
|
322
|
+
() => {
|
|
323
|
+
var _pdfProps$value2;
|
|
324
|
+
return pdfProps === null || pdfProps === void 0 || (_pdfProps$value2 = pdfProps.value) === null || _pdfProps$value2 === void 0 ? void 0 : _pdfProps$value2.rotation;
|
|
325
|
+
}
|
|
326
|
+
], () => {
|
|
327
|
+
if (!pdfDoc.value || !pdfCanvasRef.value) return;
|
|
328
|
+
pdfRender(pdfCanvasRef.value, pdfCurrentPage.value);
|
|
329
|
+
}, { flush: "post" });
|
|
330
|
+
onBeforeUnmount(() => {
|
|
331
|
+
destroyPdf();
|
|
332
|
+
});
|
|
268
333
|
function resetPreviewState() {
|
|
269
334
|
status.value = "beforeLoad";
|
|
270
335
|
}
|
|
@@ -359,15 +424,23 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
359
424
|
return;
|
|
360
425
|
}
|
|
361
426
|
const currentRequestId = requestId.value;
|
|
427
|
+
if (type.value === "pdf") {
|
|
428
|
+
loadPdf();
|
|
429
|
+
return;
|
|
430
|
+
}
|
|
362
431
|
if (type.value === "video" || type.value === "audio") {
|
|
363
432
|
if (useVideoJsMediaSkin.value) {
|
|
364
433
|
prepareMedia(currentRequestId);
|
|
365
434
|
return;
|
|
366
435
|
}
|
|
436
|
+
if (hasTypeSlot.value) {
|
|
437
|
+
status.value = "loaded";
|
|
438
|
+
return;
|
|
439
|
+
}
|
|
367
440
|
status.value = "loading";
|
|
368
441
|
return;
|
|
369
442
|
}
|
|
370
|
-
if (
|
|
443
|
+
if (hasTypeSlot.value) {
|
|
371
444
|
status.value = "loaded";
|
|
372
445
|
return;
|
|
373
446
|
}
|
|
@@ -412,22 +485,45 @@ var file_previewer_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ d
|
|
|
412
485
|
}, [unref(title) || _ctx.$slots.title ? (openBlock(), createElementBlock("header", {
|
|
413
486
|
key: 0,
|
|
414
487
|
class: normalizeClass(`${unref(prefixCls)}-header`)
|
|
415
|
-
}, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", { class: normalizeClass(`${unref(prefixCls)}-title`) }, toDisplayString(unref(title)), 3)])], 2)) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(`${unref(prefixCls)}-body`) }, [renderSlot(_ctx.$slots, "content", normalizeProps(guardReactiveProps(contentSlotProps.value)), () => [unref(type) === "image" ? (openBlock(), createBlock(unref(Image), mergeProps({ key: currentSrc.value + "image" }, mergedImageProps.value, { class: `${unref(prefixCls)}-image` }), null, 16, ["class"])) : unref(type) === "video" ? (
|
|
488
|
+
}, [renderSlot(_ctx.$slots, "title", {}, () => [createElementVNode("span", { class: normalizeClass(`${unref(prefixCls)}-title`) }, toDisplayString(unref(title)), 3)])], 2)) : createCommentVNode("", true), createElementVNode("div", { class: normalizeClass(`${unref(prefixCls)}-body`) }, [renderSlot(_ctx.$slots, "content", normalizeProps(guardReactiveProps(contentSlotProps.value)), () => [unref(type) === "image" ? renderSlot(_ctx.$slots, "image", normalizeProps(mergeProps({ key: 0 }, imageSlotProps.value)), () => [(openBlock(), createBlock(unref(Image), mergeProps({ key: currentSrc.value + "image" }, mergedImageProps.value, { class: `${unref(prefixCls)}-image` }), null, 16, ["class"]))]) : unref(type) === "video" ? renderSlot(_ctx.$slots, "video", normalizeProps(mergeProps({ key: 1 }, mediaSlotProps.value)), () => [useVideoJsMediaSkin.value ? (openBlock(), createBlock(resolveDynamicComponent(mediaPlayerTag.value), mergeProps({ key: 0 }, mediaPlayerProps.value, { class: `${unref(prefixCls)}-video-player` }), {
|
|
416
489
|
default: withCtx(() => [(openBlock(), createBlock(resolveDynamicComponent(mediaSkinTag.value), mergeProps(mediaSkinProps.value, { class: mediaSkinClassNames.value }), {
|
|
417
490
|
default: withCtx(() => [(openBlock(), createElementBlock("video", mergeProps({ key: currentSrc.value + "video" }, mergedMediaProps.value, { class: `${unref(prefixCls)}-video` }), null, 16))]),
|
|
418
491
|
_: 1
|
|
419
492
|
}, 16, ["class"]))]),
|
|
420
493
|
_: 1
|
|
421
|
-
}, 16, ["class"])) : (openBlock(), createElementBlock("video", mergeProps({ key: currentSrc.value }, mergedMediaProps.value, { class: `${unref(prefixCls)}-video` }), null, 16))]
|
|
494
|
+
}, 16, ["class"])) : (openBlock(), createElementBlock("video", mergeProps({ key: currentSrc.value }, mergedMediaProps.value, { class: `${unref(prefixCls)}-video` }), null, 16))]) : unref(type) === "audio" ? (openBlock(), createElementBlock("div", {
|
|
422
495
|
key: 2,
|
|
423
496
|
class: normalizeClass(`${unref(prefixCls)}-audio-panel`)
|
|
424
|
-
}, [useVideoJsMediaSkin.value ? (openBlock(), createBlock(resolveDynamicComponent(mediaPlayerTag.value), mergeProps({ key: 0 }, mediaPlayerProps.value, { class: `${unref(prefixCls)}-audio-player` }), {
|
|
497
|
+
}, [renderSlot(_ctx.$slots, "audio", normalizeProps(guardReactiveProps(mediaSlotProps.value)), () => [useVideoJsMediaSkin.value ? (openBlock(), createBlock(resolveDynamicComponent(mediaPlayerTag.value), mergeProps({ key: 0 }, mediaPlayerProps.value, { class: `${unref(prefixCls)}-audio-player` }), {
|
|
425
498
|
default: withCtx(() => [(openBlock(), createBlock(resolveDynamicComponent(mediaSkinTag.value), mergeProps(mediaSkinProps.value, { class: mediaSkinClassNames.value }), {
|
|
426
499
|
default: withCtx(() => [(openBlock(), createElementBlock("audio", mergeProps({ key: currentSrc.value + "audio" }, mergedMediaProps.value, { class: `${unref(prefixCls)}-audio` }), null, 16))]),
|
|
427
500
|
_: 1
|
|
428
501
|
}, 16, ["class"]))]),
|
|
429
502
|
_: 1
|
|
430
|
-
}, 16, ["class"])) : (openBlock(), createElementBlock("audio", mergeProps({ key: currentSrc.value + "audio" }, mergedMediaProps.value, { class: `${unref(prefixCls)}-audio` }), null, 16))], 2)) : unref(type) === "pdf" ? (
|
|
503
|
+
}, 16, ["class"])) : (openBlock(), createElementBlock("audio", mergeProps({ key: currentSrc.value + "audio" }, mergedMediaProps.value, { class: `${unref(prefixCls)}-audio` }), null, 16))])], 2)) : unref(type) === "pdf" ? renderSlot(_ctx.$slots, "pdf", normalizeProps(mergeProps({ key: 3 }, pdfSlotProps.value)), () => [createElementVNode("div", { class: normalizeClass(`${unref(prefixCls)}-pdf`) }, [createElementVNode("div", { class: normalizeClass(`${unref(prefixCls)}-pdf-canvas-wrap`) }, [createElementVNode("canvas", {
|
|
504
|
+
ref_key: "pdfCanvasRef",
|
|
505
|
+
ref: pdfCanvasRef,
|
|
506
|
+
class: normalizeClass(`${unref(prefixCls)}-pdf-canvas`)
|
|
507
|
+
}, null, 2)], 2), unref(pdfNumPages) > 1 ? (openBlock(), createElementBlock("div", {
|
|
508
|
+
key: 0,
|
|
509
|
+
class: normalizeClass(`${unref(prefixCls)}-pdf-toolbar`)
|
|
510
|
+
}, [
|
|
511
|
+
createElementVNode("button", {
|
|
512
|
+
type: "button",
|
|
513
|
+
class: normalizeClass(`${unref(prefixCls)}-pdf-btn`),
|
|
514
|
+
disabled: unref(pdfCurrentPage) <= 1,
|
|
515
|
+
"aria-label": "上一页",
|
|
516
|
+
onClick: _cache[0] || (_cache[0] = (...args) => unref(pdfPrev) && unref(pdfPrev)(...args))
|
|
517
|
+
}, " ‹ ", 10, _hoisted_3),
|
|
518
|
+
createElementVNode("span", { class: normalizeClass(`${unref(prefixCls)}-pdf-page`) }, toDisplayString(unref(pdfCurrentPage)) + " / " + toDisplayString(unref(pdfNumPages)), 3),
|
|
519
|
+
createElementVNode("button", {
|
|
520
|
+
type: "button",
|
|
521
|
+
class: normalizeClass(`${unref(prefixCls)}-pdf-btn`),
|
|
522
|
+
disabled: unref(pdfCurrentPage) >= unref(pdfNumPages),
|
|
523
|
+
"aria-label": "下一页",
|
|
524
|
+
onClick: _cache[1] || (_cache[1] = (...args) => unref(pdfNext) && unref(pdfNext)(...args))
|
|
525
|
+
}, " › ", 10, _hoisted_4)
|
|
526
|
+
], 2)) : createCommentVNode("", true)], 2)]) : createCommentVNode("", true)])], 2)], 10, _hoisted_2),
|
|
431
527
|
unref(fullscreen) && unref(closable) ? (openBlock(), createElementBlock("button", {
|
|
432
528
|
key: 1,
|
|
433
529
|
type: "button",
|
|
@@ -80,7 +80,20 @@ declare const FilePreviewer: {
|
|
|
80
80
|
}>;
|
|
81
81
|
};
|
|
82
82
|
pdfProps: {
|
|
83
|
-
type: import("vue").PropType<
|
|
83
|
+
type: import("vue").PropType<{
|
|
84
|
+
[x: string]: unknown;
|
|
85
|
+
[x: number]: unknown;
|
|
86
|
+
[x: symbol]: unknown;
|
|
87
|
+
worker?: boolean | undefined;
|
|
88
|
+
workerSrc?: string | undefined;
|
|
89
|
+
workerPort?: Worker | undefined;
|
|
90
|
+
scale?: number | undefined;
|
|
91
|
+
rotation?: import("./types").FilePreviewerPdfRotation | undefined;
|
|
92
|
+
page?: number | undefined;
|
|
93
|
+
documentParams?: import("type-fest").UnknownRecord | undefined;
|
|
94
|
+
renderParams?: import("type-fest").UnknownRecord | undefined;
|
|
95
|
+
onDocumentLoad?: ((doc: import("pdfjs-dist").PDFDocumentProxy) => void) | undefined;
|
|
96
|
+
}>;
|
|
84
97
|
};
|
|
85
98
|
}>> & Readonly<{
|
|
86
99
|
onClose?: (() => any) | undefined;
|
|
@@ -191,7 +204,20 @@ declare const FilePreviewer: {
|
|
|
191
204
|
}>;
|
|
192
205
|
};
|
|
193
206
|
pdfProps: {
|
|
194
|
-
type: import("vue").PropType<
|
|
207
|
+
type: import("vue").PropType<{
|
|
208
|
+
[x: string]: unknown;
|
|
209
|
+
[x: number]: unknown;
|
|
210
|
+
[x: symbol]: unknown;
|
|
211
|
+
worker?: boolean | undefined;
|
|
212
|
+
workerSrc?: string | undefined;
|
|
213
|
+
workerPort?: Worker | undefined;
|
|
214
|
+
scale?: number | undefined;
|
|
215
|
+
rotation?: import("./types").FilePreviewerPdfRotation | undefined;
|
|
216
|
+
page?: number | undefined;
|
|
217
|
+
documentParams?: import("type-fest").UnknownRecord | undefined;
|
|
218
|
+
renderParams?: import("type-fest").UnknownRecord | undefined;
|
|
219
|
+
onDocumentLoad?: ((doc: import("pdfjs-dist").PDFDocumentProxy) => void) | undefined;
|
|
220
|
+
}>;
|
|
195
221
|
};
|
|
196
222
|
}>> & Readonly<{
|
|
197
223
|
onClose?: (() => any) | undefined;
|
|
@@ -296,10 +322,14 @@ declare const FilePreviewer: {
|
|
|
296
322
|
$slots: {
|
|
297
323
|
title?: () => unknown;
|
|
298
324
|
content?: (_props: import("./types").FilePreviewerContentSlotProps) => unknown;
|
|
325
|
+
image?: (_props: import("./types").FilePreviewerImageSlotProps) => unknown;
|
|
326
|
+
video?: (_props: import("./types").FilePreviewerMediaSlotProps) => unknown;
|
|
327
|
+
audio?: (_props: import("./types").FilePreviewerMediaSlotProps) => unknown;
|
|
328
|
+
pdf?: (_props: import("./types").FilePreviewerPdfSlotProps) => unknown;
|
|
299
329
|
};
|
|
300
330
|
}) & {
|
|
301
331
|
install: (app: App, options?: SDOptions) => void;
|
|
302
332
|
};
|
|
303
333
|
export type FilePreviewerInstance = InstanceType<typeof _FilePreviewer>;
|
|
304
|
-
export type { FilePreviewerContentSlotProps, FilePreviewerImageProps, FilePreviewerMediaProps, FilePreviewerMediaSkin, FilePreviewerPdfProps, FilePreviewerProps, FilePreviewerStatus, FilePreviewerType, } from './types';
|
|
334
|
+
export type { FilePreviewerContentSlotProps, FilePreviewerImageProps, FilePreviewerImageSlotProps, FilePreviewerMediaProps, FilePreviewerMediaSkin, FilePreviewerMediaSlotProps, FilePreviewerPdfProps, FilePreviewerPdfRotation, FilePreviewerPdfSlotProps, FilePreviewerProps, FilePreviewerStatus, FilePreviewerType, } from './types';
|
|
305
335
|
export default FilePreviewer;
|