@eternalheart/react-file-preview 1.1.2 → 1.1.5

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.
@@ -0,0 +1,19 @@
1
+ export interface TocItem {
2
+ label: string;
3
+ href: string;
4
+ subitems?: TocItem[];
5
+ }
6
+ export interface EpubRendererHandle {
7
+ prevChapter: () => void;
8
+ nextChapter: () => void;
9
+ toggleFullWidth: () => void;
10
+ toggleToc: () => void;
11
+ }
12
+ interface EpubRendererProps {
13
+ url: string;
14
+ onChapterChange?: (current: number, total: number) => void;
15
+ onFullWidthChange?: (isFullWidth: boolean) => void;
16
+ }
17
+ export declare const EpubRenderer: import("react").ForwardRefExoticComponent<EpubRendererProps & import("react").RefAttributes<EpubRendererHandle>>;
18
+ export {};
19
+ //# sourceMappingURL=EpubRenderer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EpubRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/EpubRenderer.tsx"],"names":[],"mappings":"AAmBA,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,kBAAkB;IACjC,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB;AAED,UAAU,iBAAiB;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;CACpD;AA8BD,eAAO,MAAM,YAAY,kHA+VxB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ImageRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/ImageRenderer.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAmLtD,CAAC"}
1
+ {"version":3,"file":"ImageRenderer.d.ts","sourceRoot":"","sources":["../../src/renderers/ImageRenderer.tsx"],"names":[],"mappings":"AAGA,UAAU,kBAAkB;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAClD;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyLtD,CAAC"}
package/lib/types.d.ts CHANGED
@@ -1,31 +1,11 @@
1
- export interface PreviewFileLink {
2
- id?: string;
3
- name: string;
4
- url: string;
5
- type: string;
6
- size?: number;
7
- }
8
- export interface PreviewFile {
9
- id: string;
10
- name: string;
11
- url: string;
12
- type: string;
13
- size?: number;
14
- }
15
- export type PreviewFileInput = File | PreviewFileLink | string;
16
- export type FileType = 'image' | 'pdf' | 'docx' | 'xlsx' | 'pptx' | 'msg' | 'video' | 'audio' | 'markdown' | 'text' | 'unsupported';
1
+ export type { PreviewFile, PreviewFileLink, PreviewFileInput, FileType, PreviewState, } from '@eternalheart/file-preview-core';
2
+ import type { PreviewFile } from '@eternalheart/file-preview-core';
17
3
  export interface ToolbarAction {
18
4
  icon: React.ReactNode;
19
5
  label: string;
20
6
  onClick: () => void;
21
7
  disabled?: boolean;
22
8
  }
23
- export interface PreviewState {
24
- zoom: number;
25
- rotation: number;
26
- currentPage: number;
27
- totalPages: number;
28
- }
29
9
  export interface CustomRenderer {
30
10
  test: (file: PreviewFile) => boolean;
31
11
  render: (file: PreviewFile) => React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,eAAe;IAC9B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAGD,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,eAAe,GAAG,MAAM,CAAC;AAE/D,MAAM,MAAM,QAAQ,GAChB,OAAO,GACP,KAAK,GACL,MAAM,GACN,MAAM,GACN,MAAM,GACN,KAAK,GACL,OAAO,GACP,OAAO,GACP,UAAU,GACV,MAAM,GACN,aAAa,CAAC;AAElB,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,cAAc;IAE7B,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC;IAErC,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CAChD"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,YAAY,EACV,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,YAAY,GACb,MAAM,iCAAiC,CAAC;AAEzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAGnE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAGD,MAAM,WAAW,cAAc;IAE7B,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC;IAErC,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,KAAK,CAAC,SAAS,CAAC;CAChD"}
@@ -1,46 +1,2 @@
1
- import type { Workbook } from 'exceljs';
2
- interface XCellStyle {
3
- align?: 'left' | 'center' | 'right';
4
- valign?: 'top' | 'middle' | 'bottom';
5
- font?: {
6
- name?: string;
7
- size?: number;
8
- bold?: boolean;
9
- italic?: boolean;
10
- };
11
- bgcolor?: string;
12
- textwrap?: boolean;
13
- color?: string;
14
- strike?: boolean;
15
- underline?: boolean;
16
- border?: {
17
- top?: string[];
18
- right?: string[];
19
- bottom?: string[];
20
- left?: string[];
21
- };
22
- }
23
- interface XCellData {
24
- text: string;
25
- style?: number;
26
- merge?: [number, number];
27
- }
28
- interface XRowData {
29
- height?: number;
30
- cells: Record<string, XCellData>;
31
- }
32
- interface XSheetData {
33
- name: string;
34
- styles?: XCellStyle[];
35
- merges?: string[];
36
- rows?: Record<string, XRowData>;
37
- cols?: Record<string, {
38
- width?: number;
39
- } | number>;
40
- }
41
- /**
42
- * 将 exceljs Workbook 转换为 x-data-spreadsheet 数据格式
43
- */
44
- export declare function convertWorkbookToSpreadsheetData(workbook: Workbook): XSheetData[];
45
- export {};
1
+ export { convertWorkbookToSpreadsheetData } from '@eternalheart/file-preview-core';
46
2
  //# sourceMappingURL=excelDataConverter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"excelDataConverter.d.ts","sourceRoot":"","sources":["../../src/utils/excelDataConverter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAgD,MAAM,SAAS,CAAC;AAGtF,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACrC,IAAI,CAAC,EAAE;QACL,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE;QACP,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;CACH;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1B;AAED,UAAU,QAAQ;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;CAClC;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAC,CAAC;CACpD;AAmTD;;GAEG;AACH,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,QAAQ,GACjB,UAAU,EAAE,CA4Ed"}
1
+ {"version":3,"file":"excelDataConverter.d.ts","sourceRoot":"","sources":["../../src/utils/excelDataConverter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC"}
@@ -1,18 +1,2 @@
1
- import { PreviewFile, PreviewFileInput } from '../types';
2
- /**
3
- * 从 URL 字符串中提取文件名
4
- */
5
- export declare function getFileNameFromUrl(url: string): string;
6
- /**
7
- * 标准化文件输入为 PreviewFile 格式
8
- * 支持三种输入类型:
9
- * 1. File 对象(原生浏览器 File)
10
- * 2. PreviewFileLink 对象(包含 name, url, type 等属性)
11
- * 3. string(HTTP URL)
12
- */
13
- export declare function normalizeFile(input: PreviewFileInput, index?: number): PreviewFile;
14
- /**
15
- * 批量标准化文件输入
16
- */
17
- export declare function normalizeFiles(inputs: PreviewFileInput[]): PreviewFile[];
1
+ export { normalizeFile, normalizeFiles, getFileNameFromUrl, } from '@eternalheart/file-preview-core';
18
2
  //# sourceMappingURL=fileNormalizer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fileNormalizer.d.ts","sourceRoot":"","sources":["../../src/utils/fileNormalizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEzD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAWtD;AA0ED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,GAAE,MAAU,GAAG,WAAW,CA+BrF;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,WAAW,EAAE,CAExE"}
1
+ {"version":3,"file":"fileNormalizer.d.ts","sourceRoot":"","sources":["../../src/utils/fileNormalizer.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EACb,cAAc,EACd,kBAAkB,GACnB,MAAM,iCAAiC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eternalheart/react-file-preview",
3
- "version": "1.1.2",
3
+ "version": "1.1.5",
4
4
  "description": "A modern, feature-rich file preview component for React with support for images, videos, audio, PDFs, Office documents (Word, Excel, PowerPoint), Markdown, and code files.",
5
5
  "type": "module",
6
6
  "main": "./lib/index.cjs",
@@ -38,14 +38,14 @@
38
38
  "markdown-viewer",
39
39
  "code-viewer"
40
40
  ],
41
- "homepage": "https://wh131462.github.io/react-file-preview",
41
+ "homepage": "https://wh131462.github.io/file-preview",
42
42
  "repository": {
43
43
  "type": "git",
44
- "url": "git+https://github.com/wh131462/react-file-preview.git",
44
+ "url": "git+https://github.com/wh131462/file-preview.git",
45
45
  "directory": "packages/react-file-preview"
46
46
  },
47
47
  "bugs": {
48
- "url": "https://github.com/wh131462/react-file-preview/issues"
48
+ "url": "https://github.com/wh131462/file-preview/issues"
49
49
  },
50
50
  "license": "MIT",
51
51
  "publishConfig": {
@@ -74,6 +74,7 @@
74
74
  },
75
75
  "dependencies": {
76
76
  "@kenjiuno/msgreader": "^1.28.0",
77
+ "@likecoin/epub-ts": "^0.6.0",
77
78
  "@types/react-syntax-highlighter": "^15.5.13",
78
79
  "@videojs-player/react": "^1.0.0",
79
80
  "docx-preview": "^0.3.2",
@@ -103,6 +104,7 @@
103
104
  "typescript": "^5.6.3",
104
105
  "vite": "^5.4.11",
105
106
  "vite-plugin-static-copy": "^3.1.4",
106
- "x-data-spreadsheet": "^1.1.9"
107
+ "x-data-spreadsheet": "^1.1.9",
108
+ "@eternalheart/file-preview-core": "workspace:*"
107
109
  }
108
110
  }