@vaadin-component-factory/vcf-pdf-viewer 0.9.0 → 0.9.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.
Files changed (174) hide show
  1. package/README.md +1 -1
  2. package/package.json +33 -18
  3. package/{src/display → pdfjs/dist}/display_utils.js +344 -139
  4. package/{src/display → pdfjs/dist}/fetch_stream.js +115 -97
  5. package/pdfjs/dist/get.js +1857 -0
  6. package/pdfjs/dist/index.js +767 -0
  7. package/pdfjs/dist/l10n_utils.js +140 -0
  8. package/{src/shared → pdfjs/dist}/message_handler.js +243 -259
  9. package/{src/display → pdfjs/dist}/network.js +149 -87
  10. package/{src/display/content_disposition.js → pdfjs/dist/network_utils.js} +167 -55
  11. package/{src/display → pdfjs/dist}/node_stream.js +133 -98
  12. package/pdfjs/dist/pdf.js +12778 -0
  13. package/pdfjs/dist/pdf_link_service.js +638 -0
  14. package/pdfjs/dist/pdf_rendering_queue.js +199 -0
  15. package/pdfjs/dist/pdf_thumbnail_viewer.js +819 -0
  16. package/pdfjs/dist/pdf_viewer.js +3598 -0
  17. package/pdfjs/dist/typeof.js +100 -0
  18. package/pdfjs/dist/ui_utils.js +1033 -0
  19. package/{src/shared → pdfjs/dist}/util.js +301 -287
  20. package/pdfjs/dist/worker.js +62813 -0
  21. package/src/vcf-pdf-viewer.js +77 -27
  22. package/theme/lumo/vcf-pdf-viewer-styles.js +1 -1
  23. package/theme/material/vcf-pdf-viewer.js +2 -2
  24. package/src/core/.eslintrc +0 -13
  25. package/src/core/annotation.js +0 -2948
  26. package/src/core/arithmetic_decoder.js +0 -182
  27. package/src/core/ascii_85_stream.js +0 -98
  28. package/src/core/ascii_hex_stream.js +0 -79
  29. package/src/core/base_stream.js +0 -110
  30. package/src/core/bidi.js +0 -438
  31. package/src/core/calibri_factors.js +0 -308
  32. package/src/core/catalog.js +0 -1459
  33. package/src/core/ccitt.js +0 -1062
  34. package/src/core/ccitt_stream.js +0 -60
  35. package/src/core/cff_font.js +0 -116
  36. package/src/core/cff_parser.js +0 -1949
  37. package/src/core/charsets.js +0 -119
  38. package/src/core/chunked_stream.js +0 -557
  39. package/src/core/cmap.js +0 -1039
  40. package/src/core/colorspace.js +0 -1533
  41. package/src/core/core_utils.js +0 -464
  42. package/src/core/crypto.js +0 -1900
  43. package/src/core/decode_stream.js +0 -170
  44. package/src/core/decrypt_stream.js +0 -59
  45. package/src/core/default_appearance.js +0 -99
  46. package/src/core/document.js +0 -1456
  47. package/src/core/encodings.js +0 -301
  48. package/src/core/evaluator.js +0 -4601
  49. package/src/core/file_spec.js +0 -108
  50. package/src/core/flate_stream.js +0 -402
  51. package/src/core/font_renderer.js +0 -882
  52. package/src/core/fonts.js +0 -3260
  53. package/src/core/fonts_utils.js +0 -221
  54. package/src/core/function.js +0 -1257
  55. package/src/core/glyf.js +0 -706
  56. package/src/core/glyphlist.js +0 -4558
  57. package/src/core/helvetica_factors.js +0 -353
  58. package/src/core/image.js +0 -802
  59. package/src/core/image_utils.js +0 -291
  60. package/src/core/jbig2.js +0 -2572
  61. package/src/core/jbig2_stream.js +0 -73
  62. package/src/core/jpeg_stream.js +0 -105
  63. package/src/core/jpg.js +0 -1416
  64. package/src/core/jpx.js +0 -2343
  65. package/src/core/jpx_stream.js +0 -87
  66. package/src/core/liberationsans_widths.js +0 -221
  67. package/src/core/lzw_stream.js +0 -150
  68. package/src/core/metadata_parser.js +0 -146
  69. package/src/core/metrics.js +0 -2970
  70. package/src/core/murmurhash3.js +0 -139
  71. package/src/core/myriadpro_factors.js +0 -290
  72. package/src/core/name_number_tree.js +0 -153
  73. package/src/core/object_loader.js +0 -149
  74. package/src/core/opentype_file_builder.js +0 -154
  75. package/src/core/operator_list.js +0 -734
  76. package/src/core/parser.js +0 -1416
  77. package/src/core/pattern.js +0 -985
  78. package/src/core/pdf_manager.js +0 -217
  79. package/src/core/predictor_stream.js +0 -238
  80. package/src/core/primitives.js +0 -402
  81. package/src/core/ps_parser.js +0 -272
  82. package/src/core/run_length_stream.js +0 -61
  83. package/src/core/segoeui_factors.js +0 -308
  84. package/src/core/standard_fonts.js +0 -817
  85. package/src/core/stream.js +0 -103
  86. package/src/core/struct_tree.js +0 -335
  87. package/src/core/to_unicode_map.js +0 -103
  88. package/src/core/type1_font.js +0 -421
  89. package/src/core/type1_parser.js +0 -776
  90. package/src/core/unicode.js +0 -1649
  91. package/src/core/worker.js +0 -848
  92. package/src/core/worker_stream.js +0 -135
  93. package/src/core/writer.js +0 -278
  94. package/src/core/xfa/bind.js +0 -652
  95. package/src/core/xfa/builder.js +0 -207
  96. package/src/core/xfa/config.js +0 -1926
  97. package/src/core/xfa/connection_set.js +0 -202
  98. package/src/core/xfa/data.js +0 -82
  99. package/src/core/xfa/datasets.js +0 -76
  100. package/src/core/xfa/factory.js +0 -111
  101. package/src/core/xfa/fonts.js +0 -181
  102. package/src/core/xfa/formcalc_lexer.js +0 -385
  103. package/src/core/xfa/formcalc_parser.js +0 -1340
  104. package/src/core/xfa/html_utils.js +0 -639
  105. package/src/core/xfa/layout.js +0 -383
  106. package/src/core/xfa/locale_set.js +0 -345
  107. package/src/core/xfa/namespaces.js +0 -81
  108. package/src/core/xfa/parser.js +0 -184
  109. package/src/core/xfa/setup.js +0 -38
  110. package/src/core/xfa/signature.js +0 -40
  111. package/src/core/xfa/som.js +0 -338
  112. package/src/core/xfa/stylesheet.js +0 -40
  113. package/src/core/xfa/template.js +0 -6260
  114. package/src/core/xfa/text.js +0 -290
  115. package/src/core/xfa/unknown.js +0 -29
  116. package/src/core/xfa/utils.js +0 -217
  117. package/src/core/xfa/xdp.js +0 -59
  118. package/src/core/xfa/xfa_object.js +0 -1130
  119. package/src/core/xfa/xhtml.js +0 -543
  120. package/src/core/xfa_fonts.js +0 -208
  121. package/src/core/xml_parser.js +0 -507
  122. package/src/core/xref.js +0 -899
  123. package/src/display/annotation_layer.js +0 -2107
  124. package/src/display/annotation_storage.js +0 -113
  125. package/src/display/api.js +0 -3292
  126. package/src/display/base_factory.js +0 -180
  127. package/src/display/canvas.js +0 -2828
  128. package/src/display/font_loader.js +0 -484
  129. package/src/display/metadata.js +0 -41
  130. package/src/display/network_utils.js +0 -100
  131. package/src/display/node_utils.js +0 -83
  132. package/src/display/optional_content_config.js +0 -189
  133. package/src/display/pattern_helper.js +0 -659
  134. package/src/display/svg.js +0 -1709
  135. package/src/display/text_layer.js +0 -847
  136. package/src/display/transport_stream.js +0 -303
  137. package/src/display/worker_options.js +0 -40
  138. package/src/display/xfa_layer.js +0 -204
  139. package/src/doc_helper.js +0 -25
  140. package/src/images/logo.svg +0 -41
  141. package/src/interfaces.js +0 -169
  142. package/src/license_header.js +0 -14
  143. package/src/license_header_libre.js +0 -21
  144. package/src/pdf.image_decoders.js +0 -46
  145. package/src/pdf.js +0 -146
  146. package/src/pdf.sandbox.external.js +0 -181
  147. package/src/pdf.sandbox.js +0 -151
  148. package/src/pdf.scripting.js +0 -25
  149. package/src/pdf.worker.entry.js +0 -19
  150. package/src/pdf.worker.js +0 -23
  151. package/src/scripting_api/aform.js +0 -608
  152. package/src/scripting_api/app.js +0 -621
  153. package/src/scripting_api/color.js +0 -129
  154. package/src/scripting_api/common.js +0 -58
  155. package/src/scripting_api/console.js +0 -38
  156. package/src/scripting_api/constants.js +0 -208
  157. package/src/scripting_api/doc.js +0 -1195
  158. package/src/scripting_api/error.js +0 -23
  159. package/src/scripting_api/event.js +0 -232
  160. package/src/scripting_api/field.js +0 -620
  161. package/src/scripting_api/fullscreen.js +0 -145
  162. package/src/scripting_api/initialization.js +0 -223
  163. package/src/scripting_api/pdf_object.js +0 -24
  164. package/src/scripting_api/print_params.js +0 -146
  165. package/src/scripting_api/proxy.js +0 -139
  166. package/src/scripting_api/thermometer.js +0 -69
  167. package/src/scripting_api/util.js +0 -581
  168. package/src/shared/.eslintrc +0 -13
  169. package/src/shared/cffStandardStrings.js +0 -311
  170. package/src/shared/compatibility.js +0 -114
  171. package/src/shared/fonts_utils.js +0 -429
  172. package/src/shared/is_node.js +0 -27
  173. package/src/shared/scripting_utils.js +0 -85
  174. package/src/worker_loader.js +0 -32
@@ -7,14 +7,14 @@ import '@vaadin/vaadin-text-field';
7
7
  import '@vaadin/vaadin-select';
8
8
  import '@vaadin/vaadin-item';
9
9
 
10
- import * as pdfjsLib from './pdf';
11
- import * as pdfjsViewer from '../web/pdf_viewer';
12
- import * as pdfUtils from '../web/ui_utils'
13
- import * as pdfjsLinkService from '../web/pdf_link_service';
14
- import * as pdfjsThumbnailViewer from '../web/pdf_thumbnail_viewer';
15
- import * as pdfjsRenderingQueue from '../web/pdf_rendering_queue';
16
- import { NullL10n } from '../web/l10n_utils';
17
- import * as pdfjsWorker from './core/worker';
10
+ import * as pdfjsLib from '../pdfjs/dist/pdf';
11
+ import * as pdfjsViewer from '../pdfjs/dist/pdf_viewer';
12
+ import * as pdfUtils from '../pdfjs/dist/ui_utils'
13
+ import * as pdfjsLinkService from '../pdfjs/dist/pdf_link_service';
14
+ import * as pdfjsThumbnailViewer from '../pdfjs/dist/pdf_thumbnail_viewer';
15
+ import * as pdfjsRenderingQueue from '../pdfjs/dist/pdf_rendering_queue';
16
+ import { NullL10n } from '../pdfjs/dist/l10n_utils';
17
+ import * as pdfjsWorker from '../pdfjs/dist/worker';
18
18
  pdfjsLib.GlobalWorkerOptions.workerSrc = pdfjsWorker;
19
19
 
20
20
  /**
@@ -268,12 +268,13 @@ class PdfViewerElement extends
268
268
  </template>
269
269
  </vaadin-select>
270
270
  <div part="toolbar-pages">
271
- <vaadin-text-field id="currentPage" part="toolbar-current-page" value="{{__currentPage}}" on-change="__pageChange"></vaadin-text-field>
271
+ <vaadin-text-field id="currentPage" part="toolbar-current-page" value="{{currentPage}}" on-change="__pageChange"></vaadin-text-field>
272
272
  <span id="pageSeparator" part="toolbar-text toolbar-page-separator">/</span>
273
273
  <span id="totalPages" part="toolbar-text toolbar-total-pages">{{__totalPages}}</span>
274
274
  <button id="previousPage" part="toolbar-button toolbar-button-previous-page" on-click="__previousPage"></button>
275
275
  <button id="nextPage" part="toolbar-button toolbar-button-next-page" on-click="__nextPage"></button>
276
276
  </div>
277
+ <slot></slot>
277
278
  </div>
278
279
 
279
280
  <div id="viewerContainer" part="viewer-container" tabindex="0">
@@ -356,7 +357,7 @@ class PdfViewerElement extends
356
357
  /**
357
358
  * The current page visible viewed right now
358
359
  */
359
- __currentPage: {
360
+ currentPage: {
360
361
  type: Number,
361
362
  value: 1
362
363
  },
@@ -364,10 +365,22 @@ class PdfViewerElement extends
364
365
  * Total amount of pages in an opened document
365
366
  */
366
367
  __totalPages: Number,
368
+
369
+ /**
370
+ * Loading state
371
+ */
367
372
  __loading: {
368
373
  type: Boolean,
369
374
  value: true
370
375
  },
376
+
377
+ /**
378
+ * Whether sidebar is open after loading or not
379
+ */
380
+ __sidebarOpen: {
381
+ type: Boolean,
382
+ value: false
383
+ },
371
384
  };
372
385
  }
373
386
 
@@ -423,33 +436,45 @@ class PdfViewerElement extends
423
436
 
424
437
  this.__linkService.setViewer(this.__viewer);
425
438
  pdfRenderingQueue.setViewer(this.__viewer);
439
+
440
+ // thumbnailViewer
441
+ this.__thumbnailViewer = new pdfjsThumbnailViewer.PDFThumbnailViewer({
442
+ container: this.$.thumbnailView,
443
+ eventBus: eventBus,
444
+ linkService: this.__linkService,
445
+ renderingQueue: pdfRenderingQueue,
446
+ l10n: l10n
447
+ })
448
+
449
+ pdfRenderingQueue.setThumbnailViewer(this.__thumbnailViewer);
426
450
 
427
451
  // listeners
428
452
  eventBus.on('pagesinit', () => {
429
453
  this.__viewer.currentScaleValue = this.zoom;
430
454
  this.__loading = false;
455
+ this.__updateThumbnailViewer();
456
+ if(this.__sidebarOpen){
457
+ this.__openSidebar();
458
+ } else {
459
+ this.__closeSidebar();
460
+ }
461
+ this.__viewer.currentPage = this.setCurrentPage();
431
462
  });
432
463
  eventBus.on('pagechanging', (event) => {
433
- this.__currentPage = event.pageNumber;
464
+ this.__updateCurrentPageValue(event.pageNumber);
434
465
  this.__updatePageNumberStates();
435
466
  if(this.__thumbnailViewer && this.__thumbnailViewer.renderingQueue.isThumbnailViewEnabled){
436
- this.__thumbnailViewer.scrollThumbnailIntoView(this.__currentPage);
467
+ this.__thumbnailViewer.scrollThumbnailIntoView(this.currentPage);
437
468
  }
438
469
  });
439
470
 
440
471
  this.addEventListener('iron-resize', this.__recalculateSizes);
441
472
  this.__recalculateSizes();
473
+ }
442
474
 
443
- // thumbnailViewer
444
- this.__thumbnailViewer = new pdfjsThumbnailViewer.PDFThumbnailViewer({
445
- container: this.$.thumbnailView,
446
- eventBus: eventBus,
447
- linkService: this.__linkService,
448
- renderingQueue: pdfRenderingQueue,
449
- l10n: l10n
450
- })
451
-
452
- pdfRenderingQueue.setThumbnailViewer(this.__thumbnailViewer);
475
+ __updateCurrentPageValue(pageNumber){
476
+ this.currentPage = pageNumber;
477
+ this.dispatchEvent(new CustomEvent('currentPage-changed'));
453
478
  }
454
479
 
455
480
  __recalculateSizes() {
@@ -490,13 +515,12 @@ class PdfViewerElement extends
490
515
  this.__document = pdfjsLib.getDocument(src);
491
516
  return this.__document.promise.then((pdfDocument) => {
492
517
  // Document loaded, specifying document for the viewer.
493
- this.__viewer.setDocument(pdfDocument);
494
518
  this.__thumbnailViewer.setDocument(pdfDocument);
519
+ this.__viewer.setDocument(pdfDocument);
495
520
  this.__linkService.setDocument(pdfDocument);
496
521
 
497
522
  this.$.toolbar.classList.add('ready');
498
523
  this.__totalPages = pdfDocument.numPages;
499
- this.__currentPage = 1;
500
524
  this.__updatePageNumberStates();
501
525
  this.__setPdfTitleFromMetadata(pdfDocument).then(() => {
502
526
  this.dispatchEvent(new CustomEvent('document-loaded', {
@@ -569,8 +593,8 @@ class PdfViewerElement extends
569
593
  }
570
594
 
571
595
  __updatePageNumberStates() {
572
- this.$.previousPage.disabled = (this.__currentPage === 1);
573
- this.$.nextPage.disabled = (this.__currentPage === this.__totalPages);
596
+ this.$.previousPage.disabled = (this.currentPage === 1);
597
+ this.$.nextPage.disabled = (this.currentPage === this.__totalPages);
574
598
  }
575
599
 
576
600
  __zoomChanged(value) {
@@ -602,6 +626,13 @@ class PdfViewerElement extends
602
626
  this.__viewer.currentPageNumber = page;
603
627
  }
604
628
 
629
+ setCurrentPage(value) {
630
+ if (value != undefined) {
631
+ this.$.currentPage.value = value;
632
+ }
633
+ this.__pageChange();
634
+ }
635
+
605
636
  _getPage() {
606
637
  return this.__viewer.currentPageNumber;
607
638
  }
@@ -616,9 +647,25 @@ class PdfViewerElement extends
616
647
 
617
648
  __toogleSidebar() {
618
649
  if (this.$.outerContainer.classList.length == 0) {
650
+ this.__openSidebar();
651
+ } else {
652
+ this.__closeSidebar();
653
+ }
654
+ }
655
+
656
+ __openSidebar() {
657
+ if(!this.__thumbnailViewer ||this.__loading){
658
+ this.__sidebarOpen = true;
659
+ } else {
619
660
  this.__thumbnailViewer.renderingQueue.isThumbnailViewEnabled = true;
620
661
  this.__updateThumbnailViewer();
621
662
  this.$.outerContainer.classList.add('sidebarOpen');
663
+ }
664
+ }
665
+
666
+ __closeSidebar() {
667
+ if(!this.__thumbnailViewer || this.__loading){
668
+ this.__sidebarOpen = false;
622
669
  } else {
623
670
  this.__thumbnailViewer.renderingQueue.isThumbnailViewEnabled = false;
624
671
  this.$.outerContainer.classList.remove('sidebarOpen');
@@ -650,7 +697,10 @@ class PdfViewerElement extends
650
697
  }));
651
698
  return false;
652
699
  };
653
- }
700
+ }
701
+ if(this.__thumbnailViewer && this.__thumbnailViewer.renderingQueue.isThumbnailViewEnabled){
702
+ this.__thumbnailViewer.scrollThumbnailIntoView(this.currentPage);
703
+ }
654
704
  }
655
705
  }
656
706
 
@@ -78,7 +78,7 @@ registerStyles(
78
78
  margin: var(--lumo-space-xs);
79
79
  background: transparent;
80
80
  border: none;
81
- padding-top: 0.3em;
81
+ padding-top: 0.2em;
82
82
  }
83
83
 
84
84
  [part~="toolbar-button"]:disabled {
@@ -1,2 +1,2 @@
1
- import './theme/material/vcf-pdf-viewer.js';
2
- export * from './src/vcf-pdf-viewer.js';
1
+ import '../../src/vcf-pdf-viewer.js';
2
+ import './vcf-pdf-viewer-styles.js';
@@ -1,13 +0,0 @@
1
- {
2
- "parserOptions": {
3
- "ecmaVersion": 2017,
4
- },
5
-
6
- "extends": [
7
- "../../.eslintrc"
8
- ],
9
-
10
- "env": {
11
- "es2017": true,
12
- },
13
- }