@syncfusion/ej2-pdfviewer 17.3.58-4568 → 17.3.60-4568

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 (77) hide show
  1. package/dist/ej2-pdfviewer.umd.min.js +1 -1
  2. package/dist/ej2-pdfviewer.umd.min.js.map +1 -1
  3. package/dist/es6/ej2-pdfviewer.es2015.js +64 -49
  4. package/dist/es6/ej2-pdfviewer.es2015.js.map +1 -1
  5. package/dist/es6/ej2-pdfviewer.es5.js +64 -49
  6. package/dist/es6/ej2-pdfviewer.es5.js.map +1 -1
  7. package/package.json +1 -1
  8. package/src/pdfviewer/annotation/annotation.js +3 -0
  9. package/src/pdfviewer/annotation/text-markup-annotation.js +8 -2
  10. package/src/pdfviewer/base/pdfviewer-base.d.ts +2 -0
  11. package/src/pdfviewer/base/pdfviewer-base.js +36 -10
  12. package/src/pdfviewer/magnification/magnification.d.ts +0 -1
  13. package/src/pdfviewer/magnification/magnification.js +14 -37
  14. package/src/pdfviewer/pdfviewer-model.d.ts +7 -0
  15. package/src/pdfviewer/pdfviewer.d.ts +6 -0
  16. package/src/pdfviewer/pdfviewer.js +3 -0
  17. package/styles/bootstrap-dark.css +10 -6
  18. package/styles/bootstrap-dark.scss +4 -1
  19. package/styles/bootstrap.css +10 -6
  20. package/styles/bootstrap.scss +4 -1
  21. package/styles/bootstrap4.css +10 -6
  22. package/styles/bootstrap4.scss +4 -1
  23. package/styles/bootstrap5-dark.css +15 -8
  24. package/styles/bootstrap5-dark.scss +4 -1
  25. package/styles/bootstrap5.css +15 -8
  26. package/styles/bootstrap5.scss +4 -1
  27. package/styles/fabric-dark.css +10 -6
  28. package/styles/fabric-dark.scss +4 -1
  29. package/styles/fabric.css +10 -6
  30. package/styles/fabric.scss +4 -1
  31. package/styles/fluent-dark.css +10 -6
  32. package/styles/fluent-dark.scss +4 -1
  33. package/styles/fluent.css +10 -6
  34. package/styles/fluent.scss +4 -1
  35. package/styles/fluent2.css +5008 -0
  36. package/styles/fluent2.scss +4 -0
  37. package/styles/highcontrast-light.css +10 -6
  38. package/styles/highcontrast-light.scss +4 -1
  39. package/styles/highcontrast.css +10 -6
  40. package/styles/highcontrast.scss +4 -1
  41. package/styles/material-dark.css +10 -6
  42. package/styles/material-dark.scss +4 -1
  43. package/styles/material.css +10 -6
  44. package/styles/material.scss +4 -1
  45. package/styles/material3-dark.css +12 -9
  46. package/styles/material3-dark.scss +4 -1
  47. package/styles/material3.css +12 -9
  48. package/styles/material3.scss +4 -1
  49. package/styles/pdfviewer/_bootstrap5.3-definition.scss +540 -0
  50. package/styles/pdfviewer/_fluent2-definition.scss +45 -44
  51. package/styles/pdfviewer/_theme.scss +461 -36
  52. package/styles/pdfviewer/bootstrap-dark.css +10 -6
  53. package/styles/pdfviewer/bootstrap.css +10 -6
  54. package/styles/pdfviewer/bootstrap4.css +10 -6
  55. package/styles/pdfviewer/bootstrap5-dark.css +15 -8
  56. package/styles/pdfviewer/bootstrap5.css +15 -8
  57. package/styles/pdfviewer/fabric-dark.css +10 -6
  58. package/styles/pdfviewer/fabric.css +10 -6
  59. package/styles/pdfviewer/fluent-dark.css +10 -6
  60. package/styles/pdfviewer/fluent.css +10 -6
  61. package/styles/pdfviewer/fluent2.css +5008 -0
  62. package/styles/pdfviewer/fluent2.scss +4 -0
  63. package/styles/pdfviewer/highcontrast-light.css +10 -6
  64. package/styles/pdfviewer/highcontrast.css +10 -6
  65. package/styles/pdfviewer/icons/_bootstrap5.3.scss +509 -0
  66. package/styles/pdfviewer/icons/_bootstrap5.scss +0 -2
  67. package/styles/pdfviewer/icons/_fluent2.scss +510 -0
  68. package/styles/pdfviewer/material-dark.css +10 -6
  69. package/styles/pdfviewer/material.css +10 -6
  70. package/styles/pdfviewer/material3-dark.css +12 -9
  71. package/styles/pdfviewer/material3.css +12 -9
  72. package/styles/pdfviewer/tailwind-dark.css +10 -6
  73. package/styles/pdfviewer/tailwind.css +10 -6
  74. package/styles/tailwind-dark.css +10 -6
  75. package/styles/tailwind-dark.scss +4 -1
  76. package/styles/tailwind.css +10 -6
  77. package/styles/tailwind.scss +4 -1
@@ -4298,6 +4298,9 @@ var Annotation = /** @class */ (function () {
4298
4298
  // tslint:disable-next-line
4299
4299
  var sessionSize = Math.round(JSON.stringify(window.sessionStorage).length / 1024);
4300
4300
  var maxSessionSize = 4500;
4301
+ if (this.pdfViewerBase.isDeviceiOS || this.pdfViewerBase.isMacSafari) {
4302
+ maxSessionSize = 2000;
4303
+ }
4301
4304
  if (sessionSize > maxSessionSize) {
4302
4305
  var storageLength = window.sessionStorage.length;
4303
4306
  // tslint:disable-next-line
@@ -9797,8 +9800,14 @@ var TextMarkupAnnotation = /** @class */ (function () {
9797
9800
  }
9798
9801
  annotCanvas.style.width = '';
9799
9802
  annotCanvas.style.height = '';
9800
- annotCanvas.width = this.pdfViewerBase.pageSize[pageNumber].width * this.pdfViewerBase.getZoomFactor();
9801
- annotCanvas.height = this.pdfViewerBase.pageSize[pageNumber].height * this.pdfViewerBase.getZoomFactor();
9803
+ if (this.pdfViewer.restrictZoomRequest) {
9804
+ annotCanvas.style.width = this.pdfViewerBase.pageSize[pageNumber].width * this.pdfViewerBase.getZoomFactor() + 'px';
9805
+ annotCanvas.style.height = this.pdfViewerBase.pageSize[pageNumber].height * this.pdfViewerBase.getZoomFactor() + 'px';
9806
+ }
9807
+ else {
9808
+ annotCanvas.width = this.pdfViewerBase.pageSize[pageNumber].width * this.pdfViewerBase.getZoomFactor();
9809
+ annotCanvas.height = this.pdfViewerBase.pageSize[pageNumber].height * this.pdfViewerBase.getZoomFactor();
9810
+ }
9802
9811
  this.renderTextMarkupAnnotations(null, pageNumber, annotCanvas, this.pdfViewerBase.getZoomFactor());
9803
9812
  }
9804
9813
  };
@@ -18003,12 +18012,12 @@ var PdfViewerBase = /** @class */ (function () {
18003
18012
  * @private
18004
18013
  */
18005
18014
  // eslint-disable-next-line
18006
- this.isDeviceiOS = (['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || (navigator.userAgent.includes("Mac") && "ontouchend" in document));
18015
+ this.isDeviceiOS = false;
18007
18016
  /**
18008
18017
  * @private
18009
18018
  */
18010
18019
  // eslint-disable-next-line
18011
- this.isMacSafari = navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") === -1 && !this.isDeviceiOS;
18020
+ this.isMacSafari = false;
18012
18021
  /**
18013
18022
  * @private
18014
18023
  */
@@ -18017,6 +18026,8 @@ var PdfViewerBase = /** @class */ (function () {
18017
18026
  this.isGotoPageEnabled = false;
18018
18027
  this.taggedTextHandler = null;
18019
18028
  this.taggedCollection = [];
18029
+ this.isScrollerMoving = false;
18030
+ this.isScrollerMovingTimer = null;
18020
18031
  this.clearSessionStorage = function () {
18021
18032
  var documentId = window.sessionStorage.getItem('hashId');
18022
18033
  var documentLiveCount = window.sessionStorage.getItem('documentLiveCount');
@@ -19009,9 +19020,21 @@ var PdfViewerBase = /** @class */ (function () {
19009
19020
  if (_this.isThumb) {
19010
19021
  _this.ispageMoved = true;
19011
19022
  event.preventDefault();
19023
+ _this.isScrollerMoving = true;
19012
19024
  _this.mobilePageNoContainer.style.display = 'block';
19013
19025
  scrollposX = event.touches[0].pageX - _this.scrollX;
19014
19026
  scrollposY = event.touches[0].pageY - _this.viewerContainer.offsetTop;
19027
+ if (isNullOrUndefined(_this.isScrollerMovingTimer)) {
19028
+ _this.isScrollerMovingTimer = setTimeout(function () {
19029
+ _this.isScrollerMoving = false;
19030
+ _this.pageViewScrollChanged(_this.currentPageNumber);
19031
+ }, 300);
19032
+ }
19033
+ var differenceY = Math.abs(_this.viewerContainer.scrollTop - (scrollposY * ratio));
19034
+ if (differenceY > 10) {
19035
+ clearTimeout(_this.isScrollerMovingTimer);
19036
+ _this.isScrollerMovingTimer = null;
19037
+ }
19015
19038
  _this.viewerContainer.scrollTop = scrollposY * ratio;
19016
19039
  // tslint:disable-next-line
19017
19040
  var containerValue = event.touches[0].pageY;
@@ -19126,8 +19149,6 @@ var PdfViewerBase = /** @class */ (function () {
19126
19149
  this.textLayer = new TextLayer(this.pdfViewer, this);
19127
19150
  this.taggedPdf = new TaggedPDF(this.pdfViewer, this);
19128
19151
  this.signatureModule = new Signature(this.pdfViewer, this);
19129
- // tslint:disable-next-line:max-line-length
19130
- this.isWebkitMobile = /Chrome/.test(navigator.userAgent) || /Google Inc/.test(navigator.vendor) || (navigator.userAgent.indexOf('Safari') !== -1);
19131
19152
  }
19132
19153
  /**
19133
19154
  * @private
@@ -19272,6 +19293,7 @@ var PdfViewerBase = /** @class */ (function () {
19272
19293
  PdfViewerBase.prototype.mobileScrollContainerDown = function (event) {
19273
19294
  this.ispageMoved = false;
19274
19295
  this.isThumb = true;
19296
+ this.isScrollerMoving = false;
19275
19297
  if (this.isTextMarkupAnnotationModule()) {
19276
19298
  if (this.pdfViewer.annotationModule.textMarkupAnnotationModule.selectTextMarkupCurrentPage != null && Browser.isDevice) {
19277
19299
  var pageNumber = this.pdfViewer.annotationModule.textMarkupAnnotationModule.selectTextMarkupCurrentPage;
@@ -19345,6 +19367,8 @@ var PdfViewerBase = /** @class */ (function () {
19345
19367
  }
19346
19368
  this.isThumb = false;
19347
19369
  this.ispageMoved = false;
19370
+ this.isScrollerMoving = false;
19371
+ this.pageViewScrollChanged(this.currentPageNumber);
19348
19372
  this.mobileScrollerContainer.removeEventListener('touchmove', this.viewerContainerOnScroll.bind(this), true);
19349
19373
  this.mobilePageNoContainer.style.display = 'none';
19350
19374
  };
@@ -20386,6 +20410,9 @@ var PdfViewerBase = /** @class */ (function () {
20386
20410
  };
20387
20411
  PdfViewerBase.prototype.wireEvents = function () {
20388
20412
  var _this = this;
20413
+ this.isDeviceiOS = (['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || (navigator.userAgent.includes("Mac") && "ontouchend" in document));
20414
+ this.isMacSafari = navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") === -1 && !this.isDeviceiOS;
20415
+ this.isWebkitMobile = /Chrome/.test(navigator.userAgent) || /Google Inc/.test(navigator.vendor) || (navigator.userAgent.indexOf('Safari') !== -1) || (navigator.userAgent.indexOf('WebKit') !== -1);
20389
20416
  this.viewerContainer.addEventListener('scroll', this.viewerContainerOnScroll, true);
20390
20417
  if (Browser.isDevice) {
20391
20418
  this.viewerContainer.addEventListener('touchmove', this.viewerContainerOnScroll, true);
@@ -21653,7 +21680,7 @@ var PdfViewerBase = /** @class */ (function () {
21653
21680
  if (this.isDataExits && !this.getStoredData(currentPageIndex)) {
21654
21681
  isSkip = true;
21655
21682
  }
21656
- if (this.renderedPagesList.indexOf(currentPageIndex) === -1 && !this.getMagnified() && !isSkip) {
21683
+ if (this.renderedPagesList.indexOf(currentPageIndex) === -1 && !this.getMagnified() && !isSkip && !this.isScrollerMoving) {
21657
21684
  this.createRequestForRender(currentPageIndex);
21658
21685
  this.renderCountIncrement();
21659
21686
  }
@@ -21666,7 +21693,7 @@ var PdfViewerBase = /** @class */ (function () {
21666
21693
  isSkip = true;
21667
21694
  }
21668
21695
  if (canvas !== null && !isSkip) {
21669
- if (this.renderedPagesList.indexOf(previous) === -1 && !this.getMagnified()) {
21696
+ if (this.renderedPagesList.indexOf(previous) === -1 && !this.getMagnified() && !this.isScrollerMoving) {
21670
21697
  this.createRequestForRender(previous);
21671
21698
  this.renderCountIncrement();
21672
21699
  }
@@ -21678,7 +21705,7 @@ var PdfViewerBase = /** @class */ (function () {
21678
21705
  var pageHeight = 0;
21679
21706
  if (next < this.pageCount) {
21680
21707
  pageHeight = this.getPageHeight(next);
21681
- if ((this.renderedPagesList.indexOf(next) === -1 || this.isMinimumZoom) && !this.getMagnified()) {
21708
+ if ((this.renderedPagesList.indexOf(next) === -1 || this.isMinimumZoom) && !this.getMagnified() && !this.isScrollerMoving) {
21682
21709
  if (this.renderedPagesList.indexOf(next) === -1) {
21683
21710
  this.createRequestForRender(next);
21684
21711
  this.renderCountIncrement();
@@ -22355,6 +22382,9 @@ var PdfViewerBase = /** @class */ (function () {
22355
22382
  // tslint:disable-next-line
22356
22383
  PdfViewerBase.prototype.getStoredData = function (pageIndex) {
22357
22384
  var zoomFactor = this.retrieveCurrentZoomFactor();
22385
+ if (this.pdfViewer.restrictZoomRequest && !this.pdfViewer.tileRenderingSettings.enableTileRendering) {
22386
+ zoomFactor = 1;
22387
+ }
22358
22388
  // tslint:disable-next-line
22359
22389
  var storedData = this.getWindowSessionStorage(pageIndex, zoomFactor) ? this.getWindowSessionStorage(pageIndex, zoomFactor) : this.getPinchZoomPage(pageIndex);
22360
22390
  // tslint:disable-next-line
@@ -22475,6 +22505,11 @@ var PdfViewerBase = /** @class */ (function () {
22475
22505
  // tslint:disable-next-line
22476
22506
  var sessionSize = Math.round(JSON.stringify(window.sessionStorage).length / 1024);
22477
22507
  var maxSessionSize = 5000;
22508
+ var maxSessionLength = 200;
22509
+ if (this.isDeviceiOS || this.isMacSafari) {
22510
+ maxSessionSize = 2000;
22511
+ maxSessionLength = 80;
22512
+ }
22478
22513
  if (sessionSize >= maxSessionSize) {
22479
22514
  if (!this.isStorageExceed) {
22480
22515
  // tslint:disable-next-line
@@ -22496,10 +22531,10 @@ var PdfViewerBase = /** @class */ (function () {
22496
22531
  }
22497
22532
  this.isStorageExceed = true;
22498
22533
  sessionSize = Math.round(JSON.stringify(window.sessionStorage).length / 1024);
22499
- if (sessionSize >= 5000) {
22534
+ if (sessionSize >= maxSessionSize) {
22500
22535
  var storageLength = window.sessionStorage.length;
22501
- if (storageLength > 200) {
22502
- storageLength = 200;
22536
+ if (storageLength > maxSessionLength) {
22537
+ storageLength = maxSessionLength;
22503
22538
  }
22504
22539
  for (var i = 0; i < storageLength; i++) {
22505
22540
  if (window.sessionStorage.key(i) && window.sessionStorage.key(i).split('_')[3]) {
@@ -26489,12 +26524,9 @@ var Magnification = /** @class */ (function () {
26489
26524
  * @private
26490
26525
  */
26491
26526
  this.isDoubleTapZoom = false;
26492
- this.isWebkitMobile = false;
26493
26527
  this.pdfViewer = pdfViewer;
26494
26528
  this.pdfViewerBase = viewerBase;
26495
26529
  this.zoomLevel = 2;
26496
- // tslint:disable-next-line:max-line-length
26497
- this.isWebkitMobile = /Chrome/.test(navigator.userAgent) || /Google Inc/.test(navigator.vendor) || (navigator.userAgent.indexOf('Safari') !== -1);
26498
26530
  }
26499
26531
  /**
26500
26532
  * Zoom the PDF document to the given zoom value
@@ -26587,7 +26619,7 @@ var Magnification = /** @class */ (function () {
26587
26619
  this.isAutoZoom = false;
26588
26620
  this.onZoomChanged(zoomValue);
26589
26621
  if (Browser.isDevice) {
26590
- if (this.isWebkitMobile) {
26622
+ if (this.pdfViewerBase.isWebkitMobile) {
26591
26623
  this.pdfViewerBase.viewerContainer.style.overflowY = 'auto';
26592
26624
  }
26593
26625
  else {
@@ -26749,7 +26781,7 @@ var Magnification = /** @class */ (function () {
26749
26781
  this.pdfViewerBase.isMinimumZoom = false;
26750
26782
  }
26751
26783
  if (Browser.isDevice) {
26752
- if (this.isWebkitMobile) {
26784
+ if (this.pdfViewerBase.isWebkitMobile) {
26753
26785
  this.pdfViewerBase.viewerContainer.style.overflowY = 'auto';
26754
26786
  }
26755
26787
  else {
@@ -27024,9 +27056,16 @@ var Magnification = /** @class */ (function () {
27024
27056
  var pageNumber = parseInt(pageDivs[i].id.split('_pageCanvas_')[1]);
27025
27057
  var pageWidth = this.pdfViewerBase.pageSize[pageNumber].width;
27026
27058
  if ((viewPortWidth < pageWidth) && this.pdfViewer.tileRenderingSettings.enableTileRendering) {
27027
- pageDivs[i].width = pageWidth * this.pdfViewerBase.getZoomFactor();
27028
- // tslint:disable-next-line:max-line-length
27029
- pageDivs[i].height = this.pdfViewerBase.pageSize[pageNumber].height * this.pdfViewerBase.getZoomFactor();
27059
+ if (this.pdfViewer.restrictZoomRequest) {
27060
+ pageDivs[i].style.width = pageWidth * this.pdfViewerBase.getZoomFactor() + 'px';
27061
+ // eslint-disable-next-line max-len
27062
+ pageDivs[i].style.height = this.pdfViewerBase.pageSize[pageNumber].height * this.pdfViewerBase.getZoomFactor() + 'px';
27063
+ }
27064
+ else {
27065
+ pageDivs[i].width = pageWidth * this.pdfViewerBase.getZoomFactor();
27066
+ // eslint-disable-next-line max-len
27067
+ pageDivs[i].height = this.pdfViewerBase.pageSize[pageNumber].height * this.pdfViewerBase.getZoomFactor();
27068
+ }
27030
27069
  }
27031
27070
  }
27032
27071
  if (this.pdfViewerBase.textLayer) {
@@ -27129,11 +27168,11 @@ var Magnification = /** @class */ (function () {
27129
27168
  var canvas = this.pdfViewerBase.getElement('_pageCanvas_' + i);
27130
27169
  var width = this.pdfViewerBase.pageSize[i].width * this.zoomFactor;
27131
27170
  var height = this.pdfViewerBase.pageSize[i].height * this.zoomFactor;
27132
- if (canvas) {
27171
+ if (canvas && !this.pdfViewer.restrictZoomRequest) {
27133
27172
  // tslint:disable-next-line:max-line-length
27134
27173
  this.pdfViewerBase.renderPageCanvas(this.pdfViewerBase.getElement('_pageDiv_' + i), width, height, i, 'none');
27135
27174
  }
27136
- else {
27175
+ else if (!this.pdfViewer.restrictZoomRequest) {
27137
27176
  this.pdfViewerBase.renderPageElement(i);
27138
27177
  }
27139
27178
  }
@@ -27316,33 +27355,6 @@ var Magnification = /** @class */ (function () {
27316
27355
  aElement[index].parentNode.removeChild(aElement[index]);
27317
27356
  }
27318
27357
  }
27319
- if (textLayer) {
27320
- textLayer.style.width = width + 'px';
27321
- textLayer.style.height = height + 'px';
27322
- if (this.pdfViewer.textSelectionModule) {
27323
- if (this.isPinchZoomed) {
27324
- textLayer.style.display = 'none';
27325
- }
27326
- else if (this.isMagnified) {
27327
- var lowerValue = ((pageNumber - 2) === 0) ? 0 : (pageNumber - 2);
27328
- // eslint-disable-next-line max-len
27329
- var higherValue = ((pageNumber) === (this.pdfViewerBase.pageCount)) ? (this.pdfViewerBase.pageCount - 1) : (pageNumber + 1);
27330
- if ((lowerValue <= i) && (i <= higherValue) && ((this.pdfViewer.textSelectionModule.isTextSelection && isSelectionAvailable) || this.pdfViewerBase.textLayer.getTextSearchStatus() || this.pdfViewerBase.isInitialPageMode)) {
27331
- this.pdfViewerBase.textLayer.resizeTextContentsOnZoom(i);
27332
- if (this.pdfViewer.textSelectionModule.isTextSelection && isSelectionAvailable) {
27333
- this.pdfViewer.textSelectionModule.applySelectionRangeOnScroll(i);
27334
- }
27335
- }
27336
- else {
27337
- textLayer.style.display = 'none';
27338
- }
27339
- }
27340
- else {
27341
- textLayer.style.display = 'none';
27342
- }
27343
- }
27344
- this.pdfViewerBase.applyElementStyles(textLayer, i);
27345
- }
27346
27358
  var adornerSvg = getDiagramElement(this.pdfViewer.element.id + '_textLayer_' + i);
27347
27359
  if (adornerSvg) {
27348
27360
  var adonerLayer = getDiagramElement(this.pdfViewer.element.id + i + '_diagramAdorner_svg');
@@ -37224,6 +37236,9 @@ var PdfViewer = /** @class */ (function (_super) {
37224
37236
  __decorate$2([
37225
37237
  Property(true)
37226
37238
  ], PdfViewer.prototype, "enableHandwrittenSignature", void 0);
37239
+ __decorate$2([
37240
+ Property(false)
37241
+ ], PdfViewer.prototype, "restrictZoomRequest", void 0);
37227
37242
  __decorate$2([
37228
37243
  Property('CurrentTab')
37229
37244
  ], PdfViewer.prototype, "hyperlinkOpenState", void 0);