@vaadin-component-factory/vcf-pdf-viewer 1.2.0 → 1.4.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.
@@ -245,6 +245,10 @@ class PdfViewerElement extends
245
245
  margin: 0;
246
246
  }
247
247
 
248
+ [part~="toolbar"].ready [part~="toolbar-zoom"].hide-zoom {
249
+ display: none;
250
+ }
251
+
248
252
  </style>
249
253
 
250
254
  <div id="outerContainer" part="outer-container" >
@@ -255,7 +259,7 @@ class PdfViewerElement extends
255
259
  </div>
256
260
  <div id="mainContainer" part="main-container">
257
261
  <div id="toolbar" part="toolbar">
258
- <vaadin-button id="sidebarToggle" part="toolbar-button toolbar-button-toogle-sidebar" theme="icon" on-click="__toogleSidebar">
262
+ <vaadin-button id="sidebarToggle" part="toolbar-button toolbar-button-toogle-sidebar" theme="icon" on-click="__toogleSidebar" aria-label="Sidebar toggle">
259
263
  <vaadin-icon part="toggle-button-icon" slot="prefix"></vaadin-icon>
260
264
  </vaadin-button>
261
265
  <span id="title" part="toolbar-text toolbar-title">{{__title}}</span>
@@ -279,10 +283,10 @@ class PdfViewerElement extends
279
283
  <vaadin-text-field id="currentPage" part="toolbar-current-page" value="{{currentPage}}" on-change="__pageChange"></vaadin-text-field>
280
284
  <span id="pageSeparator" part="toolbar-text toolbar-page-separator">/</span>
281
285
  <span id="totalPages" part="toolbar-text toolbar-total-pages">{{__totalPages}}</span>
282
- <vaadin-button id="previousPage" part="toolbar-button toolbar-button-previous-page" theme="icon" on-click="__previousPage">
286
+ <vaadin-button id="previousPage" part="toolbar-button toolbar-button-previous-page" theme="icon" on-click="__previousPage" aria-label="Previous page">
283
287
  <vaadin-icon part="previous-page-button-icon" slot="prefix"></vaadin-icon>
284
288
  </vaadin-button>
285
- <vaadin-button id="nextPage" part="toolbar-button toolbar-button-next-page" theme="icon" on-click="__nextPage">
289
+ <vaadin-button id="nextPage" part="toolbar-button toolbar-button-next-page" theme="icon" on-click="__nextPage" aria-label="Next page">
286
290
  <vaadin-icon part="next-page-button-icon" slot="prefix"></vaadin-icon>
287
291
  </vaadin-button>
288
292
  </div>
@@ -303,7 +307,7 @@ class PdfViewerElement extends
303
307
  }
304
308
 
305
309
  static get version() {
306
- return '1.2.0';
310
+ return '1.4.0';
307
311
  }
308
312
 
309
313
  static get properties() {
@@ -377,7 +381,7 @@ class PdfViewerElement extends
377
381
  * Total amount of pages in an opened document
378
382
  */
379
383
  __totalPages: Number,
380
-
384
+
381
385
  /**
382
386
  * Loading state
383
387
  */
@@ -425,12 +429,30 @@ class PdfViewerElement extends
425
429
  type: String,
426
430
  value: ""
427
431
  },
432
+
433
+ /**
434
+ * Renders interactive form elements in the annotation layer (html) if true,
435
+ * renders values of form elements directly onto the canvas if false
436
+ */
437
+ renderInteractiveForms: {
438
+ type: Boolean,
439
+ value: true
440
+ },
441
+
442
+ /**
443
+ * Allows to hide the zoom dropdown. By default it's always shown.
444
+ */
445
+ hideZoom: {
446
+ type: Boolean,
447
+ value: false
448
+ },
428
449
  };
429
450
  }
430
451
 
431
452
  static get observers() {
432
453
  return [
433
- '__setTitle(__pdfTitle, __filename)'
454
+ '__setTitle(__pdfTitle, __filename)',
455
+ '__updateZoomVisibility()'
434
456
  ];
435
457
  }
436
458
 
@@ -439,7 +461,7 @@ class PdfViewerElement extends
439
461
  this.__title = this.customTitle;
440
462
  } else if(this.__viewer && this.toolbarOnlyFilename && filename) {
441
463
  this.__title = filename;
442
- } else if (pdfTitle && filename) {
464
+ } else if (pdfTitle && filename) {
443
465
  this.__title = pdfTitle + ' - ' + filename;
444
466
  } else if (pdfTitle) {
445
467
  this.__title = pdfTitle;
@@ -450,6 +472,14 @@ class PdfViewerElement extends
450
472
  }
451
473
  }
452
474
 
475
+ __updateZoomVisibility() {
476
+ if(this.hideZoom) {
477
+ this.$.zoom.classList.add('hide-zoom');
478
+ } else {
479
+ this.$.zoom.classList.remove('hide-zoom');
480
+ }
481
+ }
482
+
453
483
  ready() {
454
484
  super.ready();
455
485
  this.$.viewerContainer.addEventListener('focus', e => this.__setFocused(true), true);
@@ -479,12 +509,13 @@ class PdfViewerElement extends
479
509
  eventBus: eventBus,
480
510
  linkService: this.__linkService,
481
511
  renderingQueue: pdfRenderingQueue,
482
- l10n: l10n
512
+ l10n: l10n,
513
+ renderInteractiveForms: this.renderInteractiveForms
483
514
  });
484
-
515
+
485
516
  this.__linkService.setViewer(this.__viewer);
486
517
  pdfRenderingQueue.setViewer(this.__viewer);
487
-
518
+
488
519
  // thumbnailViewer
489
520
  this.__thumbnailViewer = new pdfjsThumbnailViewer.PDFThumbnailViewer({
490
521
  container: this.$.thumbnailView,
@@ -494,7 +525,7 @@ class PdfViewerElement extends
494
525
  l10n: l10n
495
526
  })
496
527
 
497
- pdfRenderingQueue.setThumbnailViewer(this.__thumbnailViewer);
528
+ pdfRenderingQueue.setThumbnailViewer(this.__thumbnailViewer);
498
529
 
499
530
  // listeners
500
531
  eventBus.on('pagesinit', () => {
@@ -505,7 +536,7 @@ class PdfViewerElement extends
505
536
  this.__openSidebar();
506
537
  } else {
507
538
  this.__closeSidebar();
508
- }
539
+ }
509
540
  this.__viewer.currentPage = this.setCurrentPage();
510
541
  });
511
542
  eventBus.on('pagechanging', (event) => {
@@ -524,7 +555,7 @@ class PdfViewerElement extends
524
555
 
525
556
  connectedCallback() {
526
557
  super.connectedCallback();
527
- this.__recalculateSizes();
558
+ this.__recalculateSizes();
528
559
  }
529
560
 
530
561
  __updateCurrentPageValue(pageNumber){
@@ -701,7 +732,7 @@ class PdfViewerElement extends
701
732
  }
702
733
 
703
734
  __toogleSidebar() {
704
- if (this.$.outerContainer.classList.length == 0) {
735
+ if (this.$.outerContainer.classList.length == 0) {
705
736
  this.__openSidebar();
706
737
  } else {
707
738
  this.__closeSidebar();
@@ -743,7 +774,7 @@ class PdfViewerElement extends
743
774
  const thumbnailView = this.__thumbnailViewer.getThumbnail(i);
744
775
  thumbnailView.anchor.onclick = function () {
745
776
  const id = thumbnailView.id;
746
- thumbnailView.linkService.goToPage(id);
777
+ thumbnailView.linkService.goToPage(id);
747
778
  component.dispatchEvent(new CustomEvent('thumbnail-clicked', {
748
779
  detail: {
749
780
  source: component,
@@ -752,10 +783,10 @@ class PdfViewerElement extends
752
783
  }));
753
784
  return false;
754
785
  };
755
- }
786
+ }
756
787
  if(this.__thumbnailViewer && this.__thumbnailViewer.renderingQueue.isThumbnailViewEnabled){
757
788
  this.__thumbnailViewer.scrollThumbnailIntoView(this.currentPage);
758
- }
789
+ }
759
790
  }
760
791
  }
761
792