pdfjs-annotation-extension-for-react 0.1.4 → 0.2.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/index.cjs.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-rsibqSCw.cjs");exports.PdfAnnotator=e.PdfAnnotator;exports.PdfViewer=e.PdfViewer;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-D3SubjD7.cjs");exports.PdfAnnotator=e.PdfAnnotator;exports.PdfViewer=e.PdfViewer;
package/dist/index.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { default as default_2 } from 'react';
2
2
  import { EventBus } from 'pdfjs-dist/types/web/pdf_viewer';
3
3
  import { IRect } from 'konva/lib/types';
4
+ import { PDFDocumentProxy } from 'pdfjs-dist/types/web/pdf_viewer';
4
5
  import { PDFViewer } from 'pdfjs-dist/types/web/pdf_viewer';
5
6
 
6
7
  declare enum AnnotationType {
@@ -257,6 +258,11 @@ export declare interface PdfAnnotatorProps extends PdfBaseProps {
257
258
  * 已有的批注列表,用于在初始化时显示已存在的批注
258
259
  */
259
260
  initialAnnotations?: IAnnotationStore[];
261
+ /**
262
+ * 是否默认显示批注侧边栏
263
+ * @default false
264
+ */
265
+ defaultShowAnnotationsSidebar?: boolean;
260
266
  /**
261
267
  * 自定义额外按钮区域组件
262
268
  * 可以是一个 React 组件或者 React 元素
@@ -340,10 +346,6 @@ export declare interface PdfBaseProps {
340
346
  * @default { width: '100vw', height: '100vh' }
341
347
  */
342
348
  layoutStyle?: React.CSSProperties;
343
- /**
344
- * 控制侧边栏是否折叠
345
- */
346
- isSidebarCollapsed?: boolean;
347
349
  /**
348
350
  * 是否开启流式加载模式, auto 为自动判断
349
351
  * @default auto
@@ -388,10 +390,25 @@ declare type PdfScale = 'auto' | 'page-actual' | 'page-fit' | 'page-width' | str
388
390
 
389
391
  export declare const PdfViewer: default_2.FC<PdfViewerProps>;
390
392
 
393
+ /**
394
+ * 定义通过 Context 提供给所有子组件的值
395
+ */
391
396
  declare interface PdfViewerContextValue {
397
+ /** PDF 文档对象 */
398
+ pdfDocument: PDFDocumentProxy | null;
399
+ /** PDFViewer 实例 */
392
400
  pdfViewer: PDFViewer | null;
393
- setSidebarCollapsed: (collapsed: boolean) => void;
401
+ /** EventBus 实例 */
402
+ eventBus: EventBus | null;
403
+ /** PDF 渲染容器的 DOM 引用,供扩展使用 */
404
+ viewerContainerRef: default_2.RefObject<HTMLDivElement>;
405
+ /** PDF 核心实例是否都已准备就绪,可以安全地进行交互 */
406
+ isReady: boolean;
407
+ activeSidebarPanel: SidebarPanelKey | null;
394
408
  toggleSidebar: () => void;
409
+ openSidebar: (key: SidebarPanelKey) => void;
410
+ closeSidebar: () => void;
411
+ isSidebarCollapsed: boolean;
395
412
  }
396
413
 
397
414
  export declare interface PdfViewerProps extends PdfBaseProps {
@@ -402,25 +419,23 @@ export declare interface PdfViewerProps extends PdfBaseProps {
402
419
  actions?: default_2.ReactNode | ((context: PdfViewerContextValue) => default_2.ReactNode);
403
420
  /**
404
421
  * 自定义侧边栏组件
405
- * 可以是一个 React 组件或者 React 元素
406
422
  */
407
- sidebar?: default_2.ReactNode | ((context: PdfViewerContextValue) => default_2.ReactNode);
423
+ sidebar?: SidebarPanel[];
408
424
  /**
409
425
  * 自定义工具栏组件
410
426
  * 可以是一个 React 组件或者 React 元素
411
427
  * 默认显示 ZoomTool 组件
412
428
  */
413
429
  toolbar?: default_2.ReactNode | ((context: PdfViewerContextValue) => default_2.ReactNode);
414
- /**
415
- * 是否显示侧边栏触发按钮
416
- * @default false
417
- */
418
- showSidebarTrigger?: boolean;
419
430
  /**
420
431
  * 是否显示文本层(用于选择和搜索文本)
421
432
  * @default true
422
433
  */
423
434
  showTextLayer?: boolean;
435
+ /**
436
+ * 默认选中的侧边栏项 key
437
+ */
438
+ defaultActiveSidebarKey?: SidebarPanelKey | null;
424
439
  /**
425
440
  * 文档加载完成回调
426
441
  * @param pdfViewer
@@ -435,6 +450,15 @@ export declare interface PdfViewerProps extends PdfBaseProps {
435
450
  onEventBusReady?: (eventBus: EventBus | null) => void;
436
451
  }
437
452
 
453
+ declare interface SidebarPanel {
454
+ key: string;
455
+ title: default_2.ReactNode;
456
+ icon: default_2.ReactNode;
457
+ render: (context: PdfViewerContextValue) => default_2.ReactNode;
458
+ }
459
+
460
+ declare type SidebarPanelKey = string;
461
+
438
462
  export declare interface User {
439
463
  id: string;
440
464
  name: string;
package/dist/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { P as r, a as e } from "./index-CFQdWq34.js";
1
+ import { P as r, a as e } from "./index-CzUW2GJH.js";
2
2
  export {
3
3
  r as PdfAnnotator,
4
4
  e as PdfViewer