@sdata/web-vue 3.9.0 → 3.11.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 +257 -5
- package/dist/sd.min.css +1 -1
- package/es/components.d.ts +1 -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 +257 -5
- package/es/index.d.ts +3 -1
- package/es/index.js +2 -1
- package/es/index.scss +1 -0
- package/es/sd-vue.js +2 -0
- package/es/selectable-card/index.d.ts +88 -0
- package/es/selectable-card/index.js +10 -0
- package/es/selectable-card/selectable-card.js +5 -0
- package/es/selectable-card/selectable-card.vue.d.ts +39 -0
- package/es/selectable-card/selectable-card.vue_vue_type_script_setup_true_lang.js +115 -0
- package/es/selectable-card/style/css.js +2 -0
- package/es/selectable-card/style/index.css +220 -0
- package/es/selectable-card/style/index.d.ts +2 -0
- package/es/selectable-card/style/index.js +2 -0
- package/es/selectable-card/style/index.scss +202 -0
- package/es/selectable-card/style/token.scss +27 -0
- package/es/selectable-card/types.d.ts +7 -0
- 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 +4 -0
- package/json/web-types.json +15 -1
- package/package.json +3 -1
package/es/components.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ declare module 'vue' {
|
|
|
23
23
|
SdCard: SDVue['Card'];
|
|
24
24
|
SdCardMeta: SDVue['CardMeta'];
|
|
25
25
|
SdCardGrid: SDVue['CardGrid'];
|
|
26
|
+
SdSelectableCard: SDVue['SelectableCard'];
|
|
26
27
|
SdCarousel: SDVue['Carousel'];
|
|
27
28
|
SdCarouselItem: SDVue['CarouselItem'];
|
|
28
29
|
SdCascader: SDVue['Cascader'];
|
|
@@ -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;
|