@libresign/pdf-elements 0.3.1 → 1.0.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 (39) hide show
  1. package/README.md +24 -1
  2. package/dist/components/DraggableElement.vue.d.ts +240 -0
  3. package/dist/components/PDFElements.vue.d.ts +552 -0
  4. package/dist/components/PDFPage.vue.d.ts +40 -0
  5. package/dist/index.css +1 -0
  6. package/dist/index.d.ts +5 -0
  7. package/dist/index.mjs +1293 -0
  8. package/dist/pdf-uHvE5neP.mjs +17593 -0
  9. package/dist/pdf.worker.min-DmO9Xdfo.mjs +4 -0
  10. package/dist/types.d.ts +30 -0
  11. package/dist/utils/asyncReader.d.ts +10 -0
  12. package/dist/utils/geometry.d.ts +5 -0
  13. package/dist/utils/measurements.d.ts +12 -0
  14. package/dist/utils/objectStore.d.ts +5 -0
  15. package/dist/utils/pageBounds.d.ts +5 -0
  16. package/dist/utils/zoom.d.ts +2 -0
  17. package/package.json +46 -21
  18. package/src/components/DraggableElement.vue +18 -15
  19. package/src/components/PDFElements.vue +135 -60
  20. package/src/components/PDFPage.vue +11 -7
  21. package/src/index.ts +18 -0
  22. package/src/types.ts +35 -0
  23. package/src/utils/asyncReader.ts +103 -0
  24. package/src/utils/{geometry.js → geometry.ts} +16 -2
  25. package/src/utils/{measurements.js → measurements.ts} +20 -1
  26. package/src/utils/{objectStore.js → objectStore.ts} +15 -4
  27. package/src/utils/{pageBounds.js → pageBounds.ts} +2 -2
  28. package/src/utils/{zoom.js → zoom.ts} +3 -1
  29. package/dist/demo.html +0 -1
  30. package/dist/pdf-elements.common.js +0 -31698
  31. package/dist/pdf-elements.common.js.map +0 -1
  32. package/dist/pdf-elements.css +0 -1
  33. package/dist/pdf-elements.umd.js +0 -31710
  34. package/dist/pdf-elements.umd.js.map +0 -1
  35. package/dist/pdf-elements.umd.min.js +0 -2
  36. package/dist/pdf-elements.umd.min.js.map +0 -1
  37. package/dist/pdf.worker.min.mjs +0 -22
  38. package/src/index.js +0 -17
  39. package/src/utils/asyncReader.js +0 -44
package/src/index.js DELETED
@@ -1,17 +0,0 @@
1
- // SPDX-FileCopyrightText: 2026 LibreCode coop and contributors
2
- // SPDX-License-Identifier: AGPL-3.0-or-later
3
-
4
- import PDFElements from './components/PDFElements.vue'
5
- export { setWorkerPath } from './utils/asyncReader.js'
6
-
7
- PDFElements.install = function(Vue) {
8
- if (PDFElements.install.installed) return
9
- Vue.component(PDFElements.name, PDFElements)
10
- }
11
-
12
- if (typeof window !== 'undefined' && window.Vue) {
13
- PDFElements.install(window.Vue)
14
- }
15
-
16
- export default PDFElements
17
- export { PDFElements }
@@ -1,44 +0,0 @@
1
- // SPDX-FileCopyrightText: 2026 LibreCode coop and contributors
2
- // SPDX-License-Identifier: AGPL-3.0-or-later
3
-
4
- import { getDocument, GlobalWorkerOptions, PDFWorker } from 'pdfjs-dist'
5
- import pdfWorkerCode from 'pdfjs-dist/build/pdf.worker.min.mjs'
6
-
7
- GlobalWorkerOptions.workerSrc = pdfWorkerCode
8
-
9
- let sharedWorker = null
10
-
11
- function getSharedWorker() {
12
- if (!sharedWorker) {
13
- sharedWorker = new PDFWorker({ name: 'libresign-pdf-worker' })
14
- }
15
- return sharedWorker
16
- }
17
-
18
- export function setWorkerPath(path) {
19
- GlobalWorkerOptions.workerSrc = path
20
- }
21
-
22
- export function readAsArrayBuffer(file) {
23
- return new Promise((resolve, reject) => {
24
- const reader = new FileReader()
25
- reader.onload = () => resolve(reader.result)
26
- reader.onerror = reject
27
- reader.readAsArrayBuffer(file)
28
- })
29
- }
30
-
31
- export function readAsPDF(file) {
32
- const worker = getSharedWorker()
33
- const isArrayBuffer = file instanceof ArrayBuffer
34
- const isView = ArrayBuffer.isView(file)
35
- const isBlob = typeof Blob !== 'undefined' && file instanceof Blob
36
-
37
- if (file && typeof file === 'object' && !isArrayBuffer && !isView && !isBlob) {
38
- return getDocument({ ...file, worker }).promise
39
- }
40
- if (typeof file === 'string') {
41
- return getDocument({ url: file, worker }).promise
42
- }
43
- return getDocument({ data: file, worker }).promise
44
- }