@libresign/pdf-elements 0.4.0 → 1.0.1

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 +48 -21
  18. package/src/components/DraggableElement.vue +18 -15
  19. package/src/components/PDFElements.vue +87 -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 -31760
  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 -31772
  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
@@ -0,0 +1,552 @@
1
+ import { PropType } from 'vue';
2
+ import { PDFDocumentEntry, PDFElementObject } from '../types';
3
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
4
+ width: {
5
+ type: StringConstructor;
6
+ default: string;
7
+ };
8
+ height: {
9
+ type: StringConstructor;
10
+ default: string;
11
+ };
12
+ initFiles: {
13
+ type: PropType<(string | Blob | ArrayBuffer | ArrayBufferView | Record<string, unknown>)[]>;
14
+ default: () => any[];
15
+ };
16
+ initFileNames: {
17
+ type: PropType<string[]>;
18
+ default: () => any[];
19
+ };
20
+ initialScale: {
21
+ type: NumberConstructor;
22
+ default: number;
23
+ };
24
+ showPageFooter: {
25
+ type: BooleanConstructor;
26
+ default: boolean;
27
+ };
28
+ hideSelectionUI: {
29
+ type: BooleanConstructor;
30
+ default: boolean;
31
+ };
32
+ showSelectionHandles: {
33
+ type: BooleanConstructor;
34
+ default: boolean;
35
+ };
36
+ showElementActions: {
37
+ type: BooleanConstructor;
38
+ default: boolean;
39
+ };
40
+ readOnly: {
41
+ type: BooleanConstructor;
42
+ default: boolean;
43
+ };
44
+ emitObjectClick: {
45
+ type: BooleanConstructor;
46
+ default: boolean;
47
+ };
48
+ ignoreClickOutsideSelectors: {
49
+ type: PropType<string[]>;
50
+ default: () => any[];
51
+ };
52
+ pageCountFormat: {
53
+ type: StringConstructor;
54
+ default: string;
55
+ };
56
+ autoFitZoom: {
57
+ type: BooleanConstructor;
58
+ default: boolean;
59
+ };
60
+ pdfjsOptions: {
61
+ type: PropType<Record<string, unknown>>;
62
+ default: () => {};
63
+ };
64
+ }>, {}, {
65
+ scale: number;
66
+ pdfDocuments: PDFDocumentEntry[];
67
+ selectedDocIndex: number;
68
+ selectedPageIndex: number;
69
+ isAddingMode: boolean;
70
+ previewElement: PDFElementObject | null;
71
+ previewPosition: {
72
+ x: number;
73
+ y: number;
74
+ };
75
+ previewScale: {
76
+ x: number;
77
+ y: number;
78
+ };
79
+ previewPageDocIndex: number;
80
+ previewPageIndex: number;
81
+ previewVisible: boolean;
82
+ hoverRafId: number;
83
+ pendingHoverClientPos: {
84
+ x: number;
85
+ y: number;
86
+ } | null;
87
+ lastHoverRect: DOMRect | null;
88
+ addingListenersAttached: boolean;
89
+ dragRafId: number;
90
+ pendingDragClientPos: {
91
+ x: number;
92
+ y: number;
93
+ } | null;
94
+ pageBoundsVersion: number;
95
+ lastScrollTop: number;
96
+ lastClientWidth: number;
97
+ nextObjectCounter: number;
98
+ isDraggingElement: boolean;
99
+ draggingObject: PDFElementObject | null;
100
+ draggingDocIndex: number;
101
+ draggingPageIndex: number;
102
+ draggingClientPosition: {
103
+ x: number;
104
+ y: number;
105
+ };
106
+ draggingScale: number;
107
+ draggingInitialMouseOffset: {
108
+ x: number;
109
+ y: number;
110
+ };
111
+ draggingElementShift: {
112
+ x: number;
113
+ y: number;
114
+ };
115
+ lastMouseClientPos: {
116
+ x: number;
117
+ y: number;
118
+ };
119
+ viewportRafId: number;
120
+ objectIndexCache: Record<string, number>;
121
+ zoomRafId: number | null;
122
+ wheelZoomRafId: number | null;
123
+ boundHandleWheel: ((event: WheelEvent) => void) | null;
124
+ visualScale: number;
125
+ autoFitApplied: boolean;
126
+ lastContainerWidth: number;
127
+ _pagesBoundingRects: Record<string, {
128
+ docIndex: number;
129
+ pageIndex: number;
130
+ rect: DOMRect;
131
+ }>;
132
+ _pagesBoundingRectsList: {
133
+ docIndex: number;
134
+ pageIndex: number;
135
+ rect: DOMRect;
136
+ }[];
137
+ _pageMeasurementCache: Record<string, {
138
+ width: number;
139
+ height: number;
140
+ }>;
141
+ _lastPageBoundsScrollTop: number;
142
+ _lastPageBoundsClientHeight: number;
143
+ }, {}, {
144
+ init(): Promise<void>;
145
+ selectPage(docIndex: any, pageIndex: any): void;
146
+ startDraggingElement(docIndex: any, pageIndex: any, object: any, mouseX: any, mouseY: any, pointerOffset: any, dragShift: any): void;
147
+ updateDraggingPosition(clientX: any, clientY: any): void;
148
+ stopDraggingElement(): void;
149
+ startAddingElement(templateObject: any): void;
150
+ cachePageBounds(): void;
151
+ cachePageBoundsForPage(docIndex: any, pageIndex: any): void;
152
+ getPageBoundsMap(): any;
153
+ getPageBoundsList(): any;
154
+ getPageRect(docIndex: any, pageIndex: any): any;
155
+ getPointerPosition(event: any): {
156
+ x: any;
157
+ y: any;
158
+ };
159
+ getDisplayedPageScale(docIndex: any, pageIndex: any): number;
160
+ getPageComponent(docIndex: any, pageIndex: any): any;
161
+ getPageCanvasElement(docIndex: any, pageIndex: any): any;
162
+ onViewportScroll(): void;
163
+ handleMouseMove(event: any): void;
164
+ handleOverlayClick(docIndex: any, pageIndex: any, event: any): void;
165
+ handleKeyDown(event: any): void;
166
+ handleWheel(event: any): void;
167
+ commitZoom(): void;
168
+ finishAdding(): void;
169
+ cancelAdding(): void;
170
+ generateObjectId(): string;
171
+ attachAddingListeners(): void;
172
+ detachAddingListeners(): void;
173
+ addObjectToPage(object: any, pageIndex?: any, docIndex?: any): boolean;
174
+ objectIdExists(docIndex: any, objectId: any): boolean;
175
+ updateObjectInPage(docIndex: any, pageIndex: any, objectId: any, payload: any): void;
176
+ removeObjectFromPage(docIndex: any, pageIndex: any, objectId: any): void;
177
+ getAllObjects(docIndex?: any): any[];
178
+ updateObject(docIndex: any, objectId: any, payload: any): void;
179
+ deleteObject(docIndex: any, objectId: any): void;
180
+ duplicateObject(docIndex: any, objectId: any): void;
181
+ checkAndMoveObjectPage(docIndex: any, objectId: any, mouseX: any, mouseY: any): any;
182
+ onMeasure(e: any, docIndex: any, pageIndex: any): void;
183
+ formatPageNumber(currentPage: any, totalPages: any): any;
184
+ getPageWidth(docIndex: any, pageIndex: any): any;
185
+ getPageHeight(docIndex: any, pageIndex: any): any;
186
+ getPageSize(docIndex: any, pageIndex: any): {
187
+ width: any;
188
+ height: any;
189
+ };
190
+ getCachedMeasurement(docIndex: any, pageIndex: any, pageRef: any): import('../utils/measurements').PageMeasurement;
191
+ calculateOptimalScale(maxPageWidth: any): number;
192
+ scheduleAutoFitZoom(): void;
193
+ adjustZoomToFit(): void;
194
+ }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, ("pdf-elements:end-init" | "pdf-elements:delete-object" | "pdf-elements:object-click")[], "pdf-elements:end-init" | "pdf-elements:delete-object" | "pdf-elements:object-click", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
195
+ width: {
196
+ type: StringConstructor;
197
+ default: string;
198
+ };
199
+ height: {
200
+ type: StringConstructor;
201
+ default: string;
202
+ };
203
+ initFiles: {
204
+ type: PropType<(string | Blob | ArrayBuffer | ArrayBufferView | Record<string, unknown>)[]>;
205
+ default: () => any[];
206
+ };
207
+ initFileNames: {
208
+ type: PropType<string[]>;
209
+ default: () => any[];
210
+ };
211
+ initialScale: {
212
+ type: NumberConstructor;
213
+ default: number;
214
+ };
215
+ showPageFooter: {
216
+ type: BooleanConstructor;
217
+ default: boolean;
218
+ };
219
+ hideSelectionUI: {
220
+ type: BooleanConstructor;
221
+ default: boolean;
222
+ };
223
+ showSelectionHandles: {
224
+ type: BooleanConstructor;
225
+ default: boolean;
226
+ };
227
+ showElementActions: {
228
+ type: BooleanConstructor;
229
+ default: boolean;
230
+ };
231
+ readOnly: {
232
+ type: BooleanConstructor;
233
+ default: boolean;
234
+ };
235
+ emitObjectClick: {
236
+ type: BooleanConstructor;
237
+ default: boolean;
238
+ };
239
+ ignoreClickOutsideSelectors: {
240
+ type: PropType<string[]>;
241
+ default: () => any[];
242
+ };
243
+ pageCountFormat: {
244
+ type: StringConstructor;
245
+ default: string;
246
+ };
247
+ autoFitZoom: {
248
+ type: BooleanConstructor;
249
+ default: boolean;
250
+ };
251
+ pdfjsOptions: {
252
+ type: PropType<Record<string, unknown>>;
253
+ default: () => {};
254
+ };
255
+ }>> & Readonly<{
256
+ "onPdf-elements:end-init"?: (...args: any[]) => any;
257
+ "onPdf-elements:delete-object"?: (...args: any[]) => any;
258
+ "onPdf-elements:object-click"?: (...args: any[]) => any;
259
+ }>, {
260
+ width: string;
261
+ height: string;
262
+ readOnly: boolean;
263
+ ignoreClickOutsideSelectors: string[];
264
+ initFiles: (string | Record<string, unknown> | Blob | ArrayBuffer | ArrayBufferView<ArrayBufferLike>)[];
265
+ initFileNames: string[];
266
+ initialScale: number;
267
+ showPageFooter: boolean;
268
+ hideSelectionUI: boolean;
269
+ showSelectionHandles: boolean;
270
+ showElementActions: boolean;
271
+ emitObjectClick: boolean;
272
+ pageCountFormat: string;
273
+ autoFitZoom: boolean;
274
+ pdfjsOptions: Record<string, unknown>;
275
+ }, {}, {
276
+ PDFPage: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
277
+ page: {
278
+ type: PropType<Promise<unknown>>;
279
+ required: true;
280
+ };
281
+ scale: {
282
+ type: NumberConstructor;
283
+ default: number;
284
+ };
285
+ }>, {}, {
286
+ dynamicScale: number;
287
+ isRendering: boolean;
288
+ pendingRender: boolean;
289
+ renderTask: {
290
+ cancel: () => void;
291
+ promise: Promise<void>;
292
+ } | null;
293
+ }, {}, {
294
+ getCanvasMeasurement(): {
295
+ canvasWidth: any;
296
+ canvasHeight: any;
297
+ };
298
+ measure(): void;
299
+ render(): Promise<void>;
300
+ }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, "onMeasure"[], "onMeasure", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
301
+ page: {
302
+ type: PropType<Promise<unknown>>;
303
+ required: true;
304
+ };
305
+ scale: {
306
+ type: NumberConstructor;
307
+ default: number;
308
+ };
309
+ }>> & Readonly<{
310
+ onOnMeasure?: (...args: any[]) => any;
311
+ }>, {
312
+ scale: number;
313
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
314
+ DraggableElement: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
315
+ object: {
316
+ type: PropType<PDFElementObject>;
317
+ required: true;
318
+ };
319
+ pagesScale: {
320
+ type: NumberConstructor;
321
+ default: number;
322
+ };
323
+ pageWidth: {
324
+ type: NumberConstructor;
325
+ required: true;
326
+ };
327
+ pageHeight: {
328
+ type: NumberConstructor;
329
+ required: true;
330
+ };
331
+ onUpdate: {
332
+ type: PropType<(...args: any[]) => void>;
333
+ default: () => void;
334
+ };
335
+ onDelete: {
336
+ type: PropType<(...args: any[]) => void>;
337
+ default: () => void;
338
+ };
339
+ onDuplicate: {
340
+ type: PropType<(...args: any[]) => void>;
341
+ default: () => void;
342
+ };
343
+ onDragStart: {
344
+ type: PropType<(...args: any[]) => void>;
345
+ default: () => void;
346
+ };
347
+ onDragMove: {
348
+ type: PropType<(...args: any[]) => void>;
349
+ default: () => void;
350
+ };
351
+ onDragEnd: {
352
+ type: PropType<(...args: any[]) => void>;
353
+ default: () => void;
354
+ };
355
+ isBeingDraggedGlobally: {
356
+ type: BooleanConstructor;
357
+ default: boolean;
358
+ };
359
+ draggingClientPos: {
360
+ type: PropType<{
361
+ x: number;
362
+ y: number;
363
+ }>;
364
+ default: () => {
365
+ x: number;
366
+ y: number;
367
+ };
368
+ };
369
+ currentDocIndex: {
370
+ type: NumberConstructor;
371
+ default: number;
372
+ };
373
+ currentPageIndex: {
374
+ type: NumberConstructor;
375
+ default: number;
376
+ };
377
+ globalDragDocIndex: {
378
+ type: NumberConstructor;
379
+ default: number;
380
+ };
381
+ globalDragPageIndex: {
382
+ type: NumberConstructor;
383
+ default: number;
384
+ };
385
+ showSelectionUi: {
386
+ type: BooleanConstructor;
387
+ default: boolean;
388
+ };
389
+ showDefaultActions: {
390
+ type: BooleanConstructor;
391
+ default: boolean;
392
+ };
393
+ readOnly: {
394
+ type: BooleanConstructor;
395
+ default: boolean;
396
+ };
397
+ ignoreClickOutsideSelectors: {
398
+ type: PropType<string[]>;
399
+ default: () => any[];
400
+ };
401
+ }>, {}, {
402
+ isSelected: boolean;
403
+ mode: string;
404
+ direction: string;
405
+ startX: number;
406
+ startY: number;
407
+ startLeft: number;
408
+ startTop: number;
409
+ startWidth: number;
410
+ startHeight: number;
411
+ offsetX: number;
412
+ offsetY: number;
413
+ resizeOffsetX: number;
414
+ resizeOffsetY: number;
415
+ resizeOffsetW: number;
416
+ resizeOffsetH: number;
417
+ aspectRatio: number;
418
+ lastMouseX: number;
419
+ lastMouseY: number;
420
+ pointerOffsetDoc: {
421
+ x: number;
422
+ y: number;
423
+ };
424
+ currentPageRect: any;
425
+ rafId: any;
426
+ }, {
427
+ resizeDirections(): string[];
428
+ elementStyle(): import('vue').CSSProperties;
429
+ toolbarStyle(): import('vue').CSSProperties;
430
+ dragElementStyle(): import('vue').CSSProperties;
431
+ }, {
432
+ handleElementClick(event: any): void;
433
+ handleClickOutside(event: any): void;
434
+ startResizeFromSlot(direction: any, event: any): void;
435
+ startDrag(event: any): void;
436
+ startResize(direction: any, event: any): void;
437
+ handleMove(event: any): void;
438
+ stopInteraction(): void;
439
+ capturePageRect(): any;
440
+ resetResizeOffsets(): void;
441
+ resetOffsets(): void;
442
+ }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
443
+ object: {
444
+ type: PropType<PDFElementObject>;
445
+ required: true;
446
+ };
447
+ pagesScale: {
448
+ type: NumberConstructor;
449
+ default: number;
450
+ };
451
+ pageWidth: {
452
+ type: NumberConstructor;
453
+ required: true;
454
+ };
455
+ pageHeight: {
456
+ type: NumberConstructor;
457
+ required: true;
458
+ };
459
+ onUpdate: {
460
+ type: PropType<(...args: any[]) => void>;
461
+ default: () => void;
462
+ };
463
+ onDelete: {
464
+ type: PropType<(...args: any[]) => void>;
465
+ default: () => void;
466
+ };
467
+ onDuplicate: {
468
+ type: PropType<(...args: any[]) => void>;
469
+ default: () => void;
470
+ };
471
+ onDragStart: {
472
+ type: PropType<(...args: any[]) => void>;
473
+ default: () => void;
474
+ };
475
+ onDragMove: {
476
+ type: PropType<(...args: any[]) => void>;
477
+ default: () => void;
478
+ };
479
+ onDragEnd: {
480
+ type: PropType<(...args: any[]) => void>;
481
+ default: () => void;
482
+ };
483
+ isBeingDraggedGlobally: {
484
+ type: BooleanConstructor;
485
+ default: boolean;
486
+ };
487
+ draggingClientPos: {
488
+ type: PropType<{
489
+ x: number;
490
+ y: number;
491
+ }>;
492
+ default: () => {
493
+ x: number;
494
+ y: number;
495
+ };
496
+ };
497
+ currentDocIndex: {
498
+ type: NumberConstructor;
499
+ default: number;
500
+ };
501
+ currentPageIndex: {
502
+ type: NumberConstructor;
503
+ default: number;
504
+ };
505
+ globalDragDocIndex: {
506
+ type: NumberConstructor;
507
+ default: number;
508
+ };
509
+ globalDragPageIndex: {
510
+ type: NumberConstructor;
511
+ default: number;
512
+ };
513
+ showSelectionUi: {
514
+ type: BooleanConstructor;
515
+ default: boolean;
516
+ };
517
+ showDefaultActions: {
518
+ type: BooleanConstructor;
519
+ default: boolean;
520
+ };
521
+ readOnly: {
522
+ type: BooleanConstructor;
523
+ default: boolean;
524
+ };
525
+ ignoreClickOutsideSelectors: {
526
+ type: PropType<string[]>;
527
+ default: () => any[];
528
+ };
529
+ }>> & Readonly<{}>, {
530
+ pagesScale: number;
531
+ onUpdate: (...args: any[]) => void;
532
+ onDelete: (...args: any[]) => void;
533
+ onDuplicate: (...args: any[]) => void;
534
+ onDragStart: (...args: any[]) => void;
535
+ onDragMove: (...args: any[]) => void;
536
+ onDragEnd: (...args: any[]) => void;
537
+ isBeingDraggedGlobally: boolean;
538
+ draggingClientPos: {
539
+ x: number;
540
+ y: number;
541
+ };
542
+ currentDocIndex: number;
543
+ currentPageIndex: number;
544
+ globalDragDocIndex: number;
545
+ globalDragPageIndex: number;
546
+ showSelectionUi: boolean;
547
+ showDefaultActions: boolean;
548
+ readOnly: boolean;
549
+ ignoreClickOutsideSelectors: string[];
550
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
551
+ }, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
552
+ export default _default;
@@ -0,0 +1,40 @@
1
+ import { PropType } from 'vue';
2
+ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
3
+ page: {
4
+ type: PropType<Promise<unknown>>;
5
+ required: true;
6
+ };
7
+ scale: {
8
+ type: NumberConstructor;
9
+ default: number;
10
+ };
11
+ }>, {}, {
12
+ dynamicScale: number;
13
+ isRendering: boolean;
14
+ pendingRender: boolean;
15
+ renderTask: {
16
+ cancel: () => void;
17
+ promise: Promise<void>;
18
+ } | null;
19
+ }, {}, {
20
+ getCanvasMeasurement(): {
21
+ canvasWidth: any;
22
+ canvasHeight: any;
23
+ };
24
+ measure(): void;
25
+ render(): Promise<void>;
26
+ }, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, "onMeasure"[], "onMeasure", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
27
+ page: {
28
+ type: PropType<Promise<unknown>>;
29
+ required: true;
30
+ };
31
+ scale: {
32
+ type: NumberConstructor;
33
+ default: number;
34
+ };
35
+ }>> & Readonly<{
36
+ onOnMeasure?: (...args: any[]) => any;
37
+ }>, {
38
+ scale: number;
39
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
40
+ export default _default;
package/dist/index.css ADDED
@@ -0,0 +1 @@
1
+ canvas[data-v-2a60d679]{display:block}.draggable-wrapper[data-v-c700849e]{position:relative}.actions-toolbar[data-v-c700849e]{position:absolute;display:flex;gap:4px;background:#1f2937;border-radius:6px;padding:6px 8px;box-shadow:0 4px 12px -2px #00000026,0 2px 6px -2px #0000001a;z-index:5;white-space:nowrap}.action-btn[data-v-c700849e]{border:none;background:transparent;color:#fff;padding:4px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .12s ease}.action-btn[data-v-c700849e]:hover{background:#ffffff1a}.draggable-element[data-v-c700849e]{position:absolute;cursor:move;-webkit-user-select:none;user-select:none;border-radius:6px;overflow:visible}.draggable-element.selected[data-v-c700849e]{box-shadow:inset 0 0 0 2px #2563eb}.resize-handle[data-v-c700849e]{all:unset;position:absolute;width:12px;height:12px;min-width:0;min-height:0;background:#2563eb;border:1px solid #ffffff;border-radius:3px;padding:0;margin:0;line-height:0;font-size:0;box-sizing:border-box;display:block;appearance:none;cursor:pointer;z-index:5}.handle-top-left[data-v-c700849e]{top:-7px;left:-7px;cursor:nwse-resize}.handle-top-right[data-v-c700849e]{top:-7px;right:-7px;cursor:nesw-resize}.handle-bottom-left[data-v-c700849e]{bottom:-7px;left:-7px;cursor:nesw-resize}.handle-bottom-right[data-v-c700849e]{bottom:-7px;right:-7px;cursor:nwse-resize}.pdf-elements-root[data-v-eb792162]{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.pages-container[data-v-eb792162]{width:100%;padding:20px 0 0;text-align:center;background:#f7fafc;overflow:hidden}.page-slot[data-v-eb792162]{margin:0 auto}.page-wrapper[data-v-eb792162]{display:inline-block;margin-bottom:0}.page-canvas[data-v-eb792162]{position:relative;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a}.shadow-outline[data-v-eb792162]{box-shadow:0 0 0 3px #4299e17f}.preview-element[data-v-eb792162]{position:absolute;opacity:.7;pointer-events:none}.overlay[data-v-eb792162]{position:absolute;top:0;left:0;transform-origin:top left;width:100%;height:100%}.page-footer[data-v-eb792162]{display:flex;justify-content:space-between;align-items:center;padding:12px 20px 20px;color:#4b5563;font-size:14px}
@@ -0,0 +1,5 @@
1
+ import { default as PDFElements } from './components/PDFElements.vue';
2
+ export { setWorkerPath } from './utils/asyncReader';
3
+ export type { PDFDocumentEntry, PDFElementObject, PDFElementsPublicApi } from './types';
4
+ export default PDFElements;
5
+ export { PDFElements };