pdf-tsx 0.1.5 → 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.
Files changed (40) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +263 -202
  3. package/dist/cjs/components/PDFSidebar.module.cjs +1 -1
  4. package/dist/cjs/components/PDFViewer.cjs +1 -1
  5. package/dist/cjs/components/PDFViewer.module.cjs +1 -1
  6. package/dist/cjs/components/features/PDFAnnotations.module.cjs +1 -1
  7. package/dist/cjs/components/features/PDFNavigation.module.cjs +1 -1
  8. package/dist/cjs/components/features/PDFOutline.module.cjs +1 -1
  9. package/dist/cjs/components/features/PDFSearch.module.cjs +1 -1
  10. package/dist/cjs/components/features/PDFSignatures.module.cjs +1 -1
  11. package/dist/cjs/components/features/PDFThumbnails.module.cjs +1 -1
  12. package/dist/cjs/components/features/PDFZoomControls.module.cjs +1 -1
  13. package/dist/cjs/components/ui/ToolbarButton.module.cjs +1 -1
  14. package/dist/cjs/context/ThemeContext.cjs +1 -1
  15. package/dist/cjs/hooks/useTextLayer.cjs +1 -1
  16. package/dist/cjs/index.cjs +1 -2
  17. package/dist/cjs/pdf-tsx.css +2 -0
  18. package/dist/components/PDFViewer.d.ts +5 -0
  19. package/dist/context/ThemeContext.d.ts +7 -2
  20. package/dist/es/components/PDFSidebar.module.js +7 -7
  21. package/dist/es/components/PDFViewer.js +165 -162
  22. package/dist/es/components/PDFViewer.module.js +15 -12
  23. package/dist/es/components/features/PDFAnnotations.module.js +10 -10
  24. package/dist/es/components/features/PDFNavigation.module.js +3 -3
  25. package/dist/es/components/features/PDFOutline.module.js +5 -5
  26. package/dist/es/components/features/PDFSearch.module.js +4 -4
  27. package/dist/es/components/features/PDFSignatures.module.js +14 -14
  28. package/dist/es/components/features/PDFThumbnails.module.js +7 -7
  29. package/dist/es/components/features/PDFZoomControls.module.js +1 -1
  30. package/dist/es/components/ui/ToolbarButton.module.js +2 -2
  31. package/dist/es/context/ThemeContext.js +31 -24
  32. package/dist/es/hooks/useTextLayer.js +0 -1
  33. package/dist/es/index.js +17 -17
  34. package/dist/es/pdf-tsx.css +2 -0
  35. package/dist/index.d.ts +2 -0
  36. package/package.json +61 -62
  37. package/dist/pdf-tsx.cjs.js +0 -5
  38. package/dist/pdf-tsx.css +0 -2
  39. package/dist/pdf-tsx.es.js +0 -2637
  40. package/dist/vite.svg +0 -1
@@ -0,0 +1,2 @@
1
+ ._wrapper_184n8_1{border-right:1px solid var(--pdf-border);height:100%;display:flex}._buttonBar_184n8_13{background-color:var(--pdf-bg);flex-direction:column;flex-shrink:0;gap:2px;width:48px;padding-top:4px;display:flex}._panelButton_184n8_33{cursor:pointer;width:44px;height:44px;color:var(--pdf-text-muted);background-color:#0000;border:none;border-radius:6px;justify-content:center;align-items:center;margin:0 2px;transition:background-color .15s,color .15s;display:flex}._panelButton_184n8_33:hover{background-color:var(--pdf-surface);color:var(--pdf-text-secondary)}._panelButtonActive_184n8_73{background-color:var(--pdf-surface);color:var(--pdf-accent-light)}._panelButtonActive_184n8_73:hover{color:var(--pdf-accent-light)}._contentPanel_184n8_91{background-color:var(--pdf-panel-bg);border-right:1px solid var(--pdf-panel-border);flex-direction:column;width:260px;display:flex}._panelHeader_184n8_107{color:var(--pdf-text-muted);text-transform:uppercase;letter-spacing:.6px;border-bottom:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-header-bg);flex-shrink:0;padding:10px 14px;font-size:11px;font-weight:600}._panelBody_184n8_131{flex:1;overflow-y:auto}._appLayout_nel8e_1{width:100%;height:100%;display:flex;overflow:hidden}._mainContent_nel8e_15{flex-direction:column;flex:1;min-width:0;display:flex}._toolbar_nel8e_29{border-bottom:1px solid var(--pdf-border);background-color:var(--pdf-bg);z-index:10;flex-shrink:0;align-items:center;gap:2px;height:44px;padding:0 12px;display:flex}._scrollContainer_nel8e_53{background-color:var(--pdf-scroll-area);flex-direction:column;flex:1;align-items:center;padding:10px 20px;display:flex;overflow-y:auto}._pageWrapper_nel8e_73{margin-bottom:25px;position:relative}._pageCanvas_nel8e_83{box-shadow:0 5px 20px var(--pdf-shadow-page);pointer-events:none;background-color:#fff;display:block}._textLayer_nel8e_97{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only;text-align:initial;opacity:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:canvastext;z-index:0;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size));line-height:1;position:absolute;inset:0;overflow:clip}._textLayer_nel8e_97 :is(span,br){color:#0000;white-space:pre;cursor:text;transform-origin:0 0;position:absolute}._textLayer_nel8e_97>:not(._markedContent_nel8e_149),._textLayer_nel8e_97 ._markedContent_nel8e_149 span:not(._markedContent_nel8e_149){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}._textLayer_nel8e_97 ._markedContent_nel8e_149{display:contents}._textLayer_nel8e_97 ._endOfContent_nel8e_177{z-index:0;cursor:default;-webkit-user-select:none;user-select:none;display:block;position:absolute;inset:100% 0 0}._textLayer_nel8e_97._selecting_nel8e_195 ._endOfContent_nel8e_177{top:0}._textLayer_nel8e_97 ::selection{background:#0000ff40}._textLayer_nel8e_97 br::selection{background:0 0}._pageSkeleton_nel8e_235{background:linear-gradient(90deg,#3f3f46 25%,#52525b 50%,#3f3f46 75%) 0 0/200% 100%;border-radius:1px;animation:1.4s infinite _shimmer_nel8e_1}@keyframes _shimmer_nel8e_1{0%{background-position:200% 0}to{background-position:-200% 0}}._highlightOverlay_nel8e_267{pointer-events:none;background-color:#ffdc0059;border:2px solid #ffa000e6;border-radius:2px;position:absolute}._linkOverlay_nel8e_283{pointer-events:all;cursor:pointer;position:absolute}._searchMatchOverlay_nel8e_295{pointer-events:none;background-color:#fde0474d;border-bottom:2px solid #eab308cc;position:absolute}._list_173qc_1{flex-direction:column;display:flex}._emptyState_173qc_11{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._pageHeader_173qc_23{color:var(--pdf-text-secondary);text-transform:uppercase;letter-spacing:.5px;background-color:var(--pdf-panel-header-bg);border-bottom:1px solid var(--pdf-panel-border);padding:5px 12px;font-size:10px;font-weight:600}._card_173qc_45{border:1px solid var(--pdf-panel-border);background-color:var(--pdf-panel-bg);border-radius:6px;margin:8px;padding:10px 12px;font-size:12px;transition:box-shadow .12s}._cardClickable_173qc_65{cursor:pointer}._cardClickable_173qc_65:hover{box-shadow:0 1px 6px var(--pdf-shadow-page)}._cardHeader_173qc_81{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}._cardLabel_173qc_95{color:var(--pdf-text-secondary);font-size:11px;font-weight:600}._cardPage_173qc_107{color:var(--pdf-text-secondary);font-size:10px}._cardAuthor_173qc_117{color:var(--pdf-text-muted);margin-bottom:3px;font-size:11px}._cardContent_173qc_129{color:var(--pdf-text-primary);font-size:12px;line-height:1.5}._btn_12ml0_1{color:var(--pdf-text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-family:inherit;font-size:13px;line-height:1;transition:background .12s,color .12s;display:flex}._btn_12ml0_1:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._btn_12ml0_1:disabled{color:var(--pdf-border);cursor:default}._primary_12ml0_57{background:var(--pdf-accent);color:#fff;padding:6px 14px}._primary_12ml0_57:hover:not(:disabled){background:var(--pdf-accent-hover);color:#fff}._navWrapper_6ysgx_1{align-items:center;gap:2px;margin-left:auto;display:flex}._pageInput_6ysgx_15{background:var(--pdf-surface);width:32px;color:var(--pdf-text-primary);font-variant-numeric:tabular-nums;text-align:center;border:1px solid #0000;border-radius:4px;outline:none;padding:3px 4px;font-family:inherit;font-size:12px}._pageInput_6ysgx_15:focus{border-color:var(--pdf-accent);background:var(--pdf-bg)}._pageInput_6ysgx_15::-webkit-outer-spin-button{-webkit-appearance:none}._pageInput_6ysgx_15::-webkit-inner-spin-button{-webkit-appearance:none}._pageInput_6ysgx_15{-moz-appearance:textfield}._pageTotal_6ysgx_71{color:var(--pdf-text-placeholder);font-variant-numeric:tabular-nums;font-size:12px}._emptyState_1w4ic_1{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._tree_1w4ic_13{flex-direction:column;padding:4px 0;display:flex}._row_1w4ic_25{color:var(--pdf-text-secondary);cursor:pointer;border-radius:4px;align-items:center;gap:4px;margin:0 4px;padding:5px 12px;font-size:12px;line-height:1.4;display:flex}._row_1w4ic_25:hover{background-color:var(--pdf-surface-hover);color:var(--pdf-text-primary)}._chevronBtn_1w4ic_61{cursor:pointer;color:var(--pdf-text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:flex}._chevronBtn_1w4ic_61:hover{color:var(--pdf-text-muted)}._title_1w4ic_91{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}._wrapper_yinyt_1{align-items:center;gap:4px;display:flex}._searchInput_yinyt_13{background:var(--pdf-surface);border:1px solid var(--pdf-border);color:var(--pdf-text-primary);border-radius:4px;outline:none;width:180px;padding:4px 8px;font-family:inherit;font-size:13px}._searchInput_yinyt_13:focus{border-color:var(--pdf-accent)}._searchInput_yinyt_13::placeholder{color:var(--pdf-text-placeholder)}._navButton_yinyt_53{color:var(--pdf-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px 5px;display:flex}._navButton_yinyt_53:hover:not(:disabled){background:var(--pdf-surface);color:var(--pdf-text-primary)}._navButton_yinyt_53:disabled{color:var(--pdf-border);cursor:default}._counter_yinyt_95{color:var(--pdf-text-muted);text-align:center;min-width:36px;font-size:11px}._list_1xon0_1{flex-direction:column;display:flex}._emptyState_1xon0_11{color:var(--pdf-text-secondary);padding:20px 14px;font-size:12px}._card_1xon0_23{border:1px solid var(--pdf-border);background-color:var(--pdf-panel-bg);cursor:default;border-radius:6px;margin:8px;padding:12px;font-size:12px;transition:box-shadow .12s}._cardClickable_1xon0_45{cursor:pointer}._cardClickable_1xon0_45:hover{box-shadow:0 1px 6px var(--pdf-shadow-page)}._cardSigned_1xon0_61{background-color:#f0fdf4;border-color:#bbf7d0}._cardHeader_1xon0_71{align-items:center;gap:7px;margin-bottom:8px;display:flex}._statusDot_1xon0_85{background-color:var(--pdf-border-light);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;line-height:1;display:flex}._statusDotSigned_1xon0_113{background-color:#22c55e}._statusLabel_1xon0_121{color:var(--pdf-text-secondary);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:600}._statusLabelSigned_1xon0_137{color:#16a34a}._fieldList_1xon0_145{flex-direction:column;gap:3px;display:flex}._fieldRow_1xon0_157{color:var(--pdf-text-secondary);font-size:12px}._fieldLabel_1xon0_167{color:var(--pdf-text-secondary)}._disclaimer_1xon0_175{color:#a16207;background-color:#fefce8;border:1px solid #fef08a;border-radius:4px;margin:0 8px 12px;padding:8px 10px;font-size:10px;line-height:1.5}._thumbnailList_116om_1{background-color:var(--pdf-panel-bg);padding-bottom:8px}._thumbnailItem_116om_11{cursor:pointer;text-align:center;background-color:#0000;border-left:2px solid #0000;padding:12px 16px;transition:background-color .15s}._thumbnailItem_116om_11:hover{background-color:var(--pdf-surface-hover)}._thumbnailItemActive_116om_37{background-color:var(--pdf-accent-subtle);border-left-color:var(--pdf-accent)}._thumbnailItemActive_116om_37:hover{background-color:var(--pdf-accent-subtle)}._thumbnailImg_116om_55{width:120px;box-shadow:0 1px 4px var(--pdf-shadow-page);border-radius:2px}._thumbnailImgActive_116om_67{box-shadow:0 0 0 2px var(--pdf-accent), 0 2px 8px var(--pdf-shadow-page)}._thumbnailLabel_116om_75{color:var(--pdf-text-muted);margin-top:6px;font-size:11px;font-weight:400}._thumbnailLabelActive_116om_89{color:var(--pdf-accent-hover);font-weight:600}._zoomLabel_1r6if_1{text-align:center;min-width:42px;color:var(--pdf-text-muted);font-variant-numeric:tabular-nums;font-size:12px}
2
+ /*$vite$:1*/
package/dist/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export { default as PDFViewer } from './components/PDFViewer';
2
+ export type { Theme } from './theme';
3
+ export { darkTheme, lightTheme } from './theme';
2
4
  export { PDFSidebar } from './components/PDFSidebar';
3
5
  export { PDFAnnotations } from './components/features/PDFAnnotations';
4
6
  export { PDFChangeFile } from './components/features/PDFChangeFile';
package/package.json CHANGED
@@ -1,62 +1,61 @@
1
- {
2
- "name": "pdf-tsx",
3
- "version": "0.1.5",
4
- "description": "A fully-featured, composable PDF viewer component for React",
5
- "type": "module",
6
- "main": "./dist/cjs/index.cjs",
7
- "module": "./dist/es/index.js",
8
- "types": "./dist/index.d.ts",
9
- "sideEffects": false,
10
- "exports": {
11
- ".": {
12
- "types": "./dist/index.d.ts",
13
- "import": "./dist/es/index.js",
14
- "require": "./dist/cjs/index.cjs"
15
- },
16
- "./dist/*": "./dist/*"
17
- },
18
- "keywords": [
19
- "pdf",
20
- "pdf-viewer",
21
- "react",
22
- "pdfjs",
23
- "typescript"
24
- ],
25
- "license": "MIT",
26
- "files": [
27
- "dist",
28
- "LICENSE",
29
- "README.md"
30
- ],
31
- "scripts": {
32
- "dev": "vite",
33
- "watch": "tsc -b --watch",
34
- "build": "vite build",
35
- "lint": "eslint .",
36
- "preview": "vite preview"
37
- },
38
- "peerDependencies": {
39
- "pdfjs-dist": ">=5",
40
- "react": ">=18",
41
- "react-dom": ">=18"
42
- },
43
- "devDependencies": {
44
- "@eslint/js": "^9.39.4",
45
- "@rolldown/plugin-babel": "^0.2.2",
46
- "@types/node": "^25.6.0",
47
- "@types/react": "^19.2.14",
48
- "@types/react-dom": "^19.2.3",
49
- "@vitejs/plugin-react": "^6.0.1",
50
- "babel-plugin-react-compiler": "^1.0.0",
51
- "eslint": "^9.39.4",
52
- "eslint-plugin-react-hooks": "^7.0.1",
53
- "eslint-plugin-react-refresh": "^0.5.2",
54
- "globals": "^16.5.0",
55
- "react-icons": "^5.6.0",
56
- "typescript": "~5.9.3",
57
- "typescript-eslint": "^8.58.1",
58
- "vite": "^8.0.8",
59
- "vite-plugin-css-injected-by-js": "^4.0.1",
60
- "vite-plugin-dts": "^4.5.4"
61
- }
62
- }
1
+ {
2
+ "name": "pdf-tsx",
3
+ "version": "0.2.0",
4
+ "description": "A fully-featured, composable PDF viewer component for React",
5
+ "type": "module",
6
+ "main": "./dist/cjs/index.cjs",
7
+ "module": "./dist/es/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "sideEffects": false,
10
+ "exports": {
11
+ ".": {
12
+ "types": "./dist/index.d.ts",
13
+ "import": "./dist/es/index.js",
14
+ "require": "./dist/cjs/index.cjs"
15
+ },
16
+ "./dist/*": "./dist/*"
17
+ },
18
+ "keywords": [
19
+ "pdf",
20
+ "pdf-viewer",
21
+ "react",
22
+ "pdfjs",
23
+ "typescript"
24
+ ],
25
+ "license": "MIT",
26
+ "files": [
27
+ "dist",
28
+ "LICENSE",
29
+ "README.md"
30
+ ],
31
+ "scripts": {
32
+ "dev": "vite",
33
+ "watch": "tsc -b --watch",
34
+ "build": "vite build",
35
+ "lint": "eslint .",
36
+ "preview": "vite preview"
37
+ },
38
+ "peerDependencies": {
39
+ "pdfjs-dist": ">=5",
40
+ "react": ">=18",
41
+ "react-dom": ">=18"
42
+ },
43
+ "devDependencies": {
44
+ "@eslint/js": "^9.39.4",
45
+ "@rolldown/plugin-babel": "^0.2.2",
46
+ "@types/node": "^25.6.0",
47
+ "@types/react": "^19.2.14",
48
+ "@types/react-dom": "^19.2.3",
49
+ "@vitejs/plugin-react": "^6.0.1",
50
+ "babel-plugin-react-compiler": "^1.0.0",
51
+ "eslint": "^9.39.4",
52
+ "eslint-plugin-react-hooks": "^7.0.1",
53
+ "eslint-plugin-react-refresh": "^0.5.2",
54
+ "globals": "^16.5.0",
55
+ "react-icons": "^5.6.0",
56
+ "typescript": "~5.9.3",
57
+ "typescript-eslint": "^8.58.1",
58
+ "vite": "^8.0.8",
59
+ "vite-plugin-dts": "^4.5.4"
60
+ }
61
+ }