pdfjs-viewer-element 2.6.3 → 2.6.4
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/README.md +5 -12
- package/dist/pdfjs-viewer-element.js +8 -8
- package/package.json +7 -7
package/README.md
CHANGED
|
@@ -12,14 +12,7 @@ See [live examples](https://alekswebnet.github.io/pdfjs-viewer-element/#demo) of
|
|
|
12
12
|
|
|
13
13
|
⚠️ `pdfjs-viewer-element` requires PDF.js [prebuilt](http://mozilla.github.io/pdf.js/getting_started/), that includes the generic build of PDF.js and the viewer.
|
|
14
14
|
|
|
15
|
-
The prebuilt comes with each PDF.js release. Supported releases:
|
|
16
|
-
|
|
17
|
-
✅ [v4.0.379](https://github.com/mozilla/pdf.js/releases/tag/v4.0.379)
|
|
18
|
-
|
|
19
|
-
✅ [v4.0.269](https://github.com/mozilla/pdf.js/releases/tag/v4.0.269)
|
|
20
|
-
|
|
21
|
-
✅ [v4.0.189](https://github.com/mozilla/pdf.js/releases/tag/v4.0.189)
|
|
22
|
-
|
|
15
|
+
The prebuilt comes with each PDF.js release. Supported all v4 and v3 [releases](https://github.com/mozilla/pdf.js/releases):
|
|
23
16
|
|
|
24
17
|
To use the package you should download and **place the prebuilt** files in the project.
|
|
25
18
|
|
|
@@ -67,7 +60,7 @@ Using browser:
|
|
|
67
60
|
## Usage
|
|
68
61
|
|
|
69
62
|
```html
|
|
70
|
-
<pdfjs-viewer-element src="/file.pdf" viewer-path="/pdfjs-4.
|
|
63
|
+
<pdfjs-viewer-element src="/file.pdf" viewer-path="/pdfjs-4.1.392-dist"></pdfjs-viewer-element>
|
|
71
64
|
```
|
|
72
65
|
|
|
73
66
|
## Attributes
|
|
@@ -107,7 +100,7 @@ Use `viewer-css-theme` attribute to set light or dark theme manually:
|
|
|
107
100
|
```html
|
|
108
101
|
<pdfjs-viewer-element
|
|
109
102
|
src="/file.pdf"
|
|
110
|
-
viewer-path="/pdfjs-4.
|
|
103
|
+
viewer-path="/pdfjs-4.1.392-dist"
|
|
111
104
|
viewer-css-theme="DARK">
|
|
112
105
|
</pdfjs-viewer-element>
|
|
113
106
|
```
|
|
@@ -119,7 +112,7 @@ You can add your own CSS rules to the viewer application using `viewer-extra-sty
|
|
|
119
112
|
```html
|
|
120
113
|
<pdfjs-viewer-element
|
|
121
114
|
src="/file.pdf"
|
|
122
|
-
viewer-path="/pdfjs-4.
|
|
115
|
+
viewer-path="/pdfjs-4.1.392-dist"
|
|
123
116
|
viewer-extra-styles="#toolbarViewerMiddle { display: none; }"
|
|
124
117
|
viewer-extra-styles-urls="['/demo/viewer-custom-theme.css']">
|
|
125
118
|
</pdfjs-viewer-element>
|
|
@@ -152,7 +145,7 @@ Build your own theme with viewer's custom variables and `viewer-extra-styles-url
|
|
|
152
145
|
`initialize` - using this method you can access PDFViewerApplication and use methods and events of PDF.js default viewer
|
|
153
146
|
|
|
154
147
|
```html
|
|
155
|
-
<pdfjs-viewer-element viewer-path="/pdfjs-4.
|
|
148
|
+
<pdfjs-viewer-element viewer-path="/pdfjs-4.1.392-dist"></pdfjs-viewer-element>
|
|
156
149
|
```
|
|
157
150
|
|
|
158
151
|
```javascript
|
|
@@ -30,9 +30,9 @@ function v(m, e = 25, s = {}) {
|
|
|
30
30
|
const u = !n && s.leading;
|
|
31
31
|
clearTimeout(n), n = setTimeout(() => {
|
|
32
32
|
n = null;
|
|
33
|
-
const
|
|
33
|
+
const d = s.leading ? r : o(this, l);
|
|
34
34
|
for (const y of t)
|
|
35
|
-
y(
|
|
35
|
+
y(d);
|
|
36
36
|
t = [];
|
|
37
37
|
}, e), u ? (r = o(this, l), h(r)) : t.push(h);
|
|
38
38
|
});
|
|
@@ -56,7 +56,7 @@ const c = {
|
|
|
56
56
|
viewerExtraStyles: "",
|
|
57
57
|
viewerExtraStylesUrls: "",
|
|
58
58
|
nameddest: ""
|
|
59
|
-
},
|
|
59
|
+
}, w = {
|
|
60
60
|
AUTOMATIC: 0,
|
|
61
61
|
// Default value.
|
|
62
62
|
LIGHT: 1,
|
|
@@ -118,8 +118,8 @@ class p extends HTMLElement {
|
|
|
118
118
|
this.onIframeReady(() => this.mountViewer(this.getIframeSrc()));
|
|
119
119
|
}
|
|
120
120
|
getIframeSrc() {
|
|
121
|
-
const e = this.getFullPath(this.getAttribute("src") || c.src), s = this.getFullPath(this.getAttribute("viewer-path") || c.viewerPath), r = this.getAttribute("page") || c.page, n = this.getAttribute("search") || c.search, t = this.getAttribute("phrase") || c.phrase, i = this.getAttribute("zoom") || c.zoom, a = this.getAttribute("pagemode") || c.pagemode, o = this.getAttribute("locale") || c.locale, l = this.getAttribute("text-layer") || c.textLayer, h = this.getAttribute("viewer-css-theme") || c.viewerCssTheme, u = !!(this.getAttribute("viewer-extra-styles") || c.viewerExtraStyles),
|
|
122
|
-
return `${s}${c.viewerEntry}?file=${encodeURIComponent(e)}#page=${r}&zoom=${i}&pagemode=${a}&search=${n}&phrase=${t}&textLayer=${l}${o ? "&locale=" + o : ""}&viewerCssTheme=${h}&viewerExtraStyles=${u}&nameddest
|
|
121
|
+
const e = this.getFullPath(this.getAttribute("src") || c.src), s = this.getFullPath(this.getAttribute("viewer-path") || c.viewerPath), r = this.getAttribute("page") || c.page, n = this.getAttribute("search") || c.search, t = this.getAttribute("phrase") || c.phrase, i = this.getAttribute("zoom") || c.zoom, a = this.getAttribute("pagemode") || c.pagemode, o = this.getAttribute("locale") || c.locale, l = this.getAttribute("text-layer") || c.textLayer, h = this.getAttribute("viewer-css-theme") || c.viewerCssTheme, u = !!(this.getAttribute("viewer-extra-styles") || c.viewerExtraStyles), d = this.getAttribute("nameddest") || c.nameddest;
|
|
122
|
+
return `${s}${c.viewerEntry}?file=${encodeURIComponent(e)}#page=${r}&zoom=${i}&pagemode=${a}&search=${n}&phrase=${t}&textLayer=${l}${o ? "&locale=" + o : ""}&viewerCssTheme=${h}&viewerExtraStyles=${u}${d ? "&nameddest=" + d : ""}`;
|
|
123
123
|
}
|
|
124
124
|
mountViewer(e) {
|
|
125
125
|
!e || !this.iframe || (this.shadowRoot.replaceChild(this.iframe.cloneNode(), this.iframe), this.iframe = this.shadowRoot.querySelector("iframe"), this.iframe.src = e);
|
|
@@ -129,11 +129,11 @@ class p extends HTMLElement {
|
|
|
129
129
|
}
|
|
130
130
|
getCssThemeOption() {
|
|
131
131
|
const e = this.getAttribute("viewer-css-theme");
|
|
132
|
-
return Object.keys(
|
|
132
|
+
return Object.keys(w).includes(e) ? w[e] : w[c.viewerCssTheme];
|
|
133
133
|
}
|
|
134
134
|
setCssTheme(e) {
|
|
135
135
|
var s, r, n;
|
|
136
|
-
if (e ===
|
|
136
|
+
if (e === w.DARK) {
|
|
137
137
|
const t = (s = this.iframe.contentDocument) == null ? void 0 : s.styleSheets[0], i = (t == null ? void 0 : t.cssRules) || [], a = Object.keys(i).filter((o) => {
|
|
138
138
|
var l;
|
|
139
139
|
return ((l = i[Number(o)]) == null ? void 0 : l.conditionText) === "(prefers-color-scheme: dark)";
|
|
@@ -148,7 +148,7 @@ class p extends HTMLElement {
|
|
|
148
148
|
window.customElements.get("pdfjs-viewer-element") || (window.PdfjsViewerElement = p, window.customElements.define("pdfjs-viewer-element", p));
|
|
149
149
|
export {
|
|
150
150
|
p as PdfjsViewerElement,
|
|
151
|
-
|
|
151
|
+
w as ViewerCssTheme,
|
|
152
152
|
p as default,
|
|
153
153
|
A as hardRefreshAttributes
|
|
154
154
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pdfjs-viewer-element",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.4",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Oleksandr Shevchuk",
|
|
@@ -30,14 +30,14 @@
|
|
|
30
30
|
"types"
|
|
31
31
|
],
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"@types/node": "^18.
|
|
34
|
-
"@vitest/browser": "^1.
|
|
33
|
+
"@types/node": "^18.19.31",
|
|
34
|
+
"@vitest/browser": "^1.5.0",
|
|
35
35
|
"jsdom": "^22.1.0",
|
|
36
36
|
"perfect-debounce": "^1.0.0",
|
|
37
|
-
"typescript": "^4.
|
|
38
|
-
"vite": "^5.
|
|
39
|
-
"vitest": "^1.
|
|
40
|
-
"webdriverio": "^8.
|
|
37
|
+
"typescript": "^4.9.5",
|
|
38
|
+
"vite": "^5.2.9",
|
|
39
|
+
"vitest": "^1.5.0",
|
|
40
|
+
"webdriverio": "^8.36.1"
|
|
41
41
|
},
|
|
42
42
|
"scripts": {
|
|
43
43
|
"dev": "vite",
|