@syncfusion/ej2-pdfviewer 17.3.48-4568 → 17.3.49-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.
package/package.json CHANGED
@@ -1,26 +1,50 @@
1
1
  {
2
-
2
+ "_from": "@syncfusion/ej2-pdfviewer@17.3.48-4568",
3
+ "_id": "@syncfusion/ej2-pdfviewer@17.3.48-4568",
4
+ "_inBundle": false,
5
+ "_integrity": "sha512-Cw4UApaqGOrXL96j7UUbFY9ph9rV4wg9Q5ahgvaDykId7tb2OzdgzQZuxU5RVWRU6uPqVSNFfiO8wxcGgjBfmg==",
6
+ "_location": "/@syncfusion/ej2-pdfviewer",
7
+ "_phantomChildren": {},
8
+ "_requested": {
9
+ "type": "version",
10
+ "registry": true,
11
+ "raw": "@syncfusion/ej2-pdfviewer@17.3.48-4568",
12
+ "name": "@syncfusion/ej2-pdfviewer",
13
+ "escapedName": "@syncfusion%2fej2-pdfviewer",
14
+ "scope": "@syncfusion",
15
+ "rawSpec": "17.3.48-4568",
16
+ "saveSpec": null,
17
+ "fetchSpec": "17.3.48-4568"
18
+ },
19
+ "_requiredBy": [
20
+ "#USER",
21
+ "/"
22
+ ],
23
+ "_resolved": "https://registry.npmjs.org/@syncfusion/ej2-pdfviewer/-/ej2-pdfviewer-17.3.48-4568.tgz",
24
+ "_shasum": "e4d7d8aa526d5ded9260c431fb667e186623e53f",
25
+ "_spec": "@syncfusion/ej2-pdfviewer@17.3.48-4568",
26
+ "_where": "E:\\New folder",
3
27
  "author": {
4
- "name": "Syncfusion Inc."
28
+ "name": "Syncfusion Inc."
5
29
  },
6
30
  "bugs": {
7
- "url": "https://github.com/syncfusion/ej2-pdfviewer/issues"
31
+ "url": "https://github.com/syncfusion/ej2-pdfviewer/issues"
8
32
  },
9
33
  "bundleDependencies": false,
10
34
  "dependencies": {
11
- "@syncfusion/ej2-base": "~17.3.27",
12
- "@syncfusion/ej2-buttons": "~17.3.27",
13
- "@syncfusion/ej2-calendars": "~17.3.28",
14
- "@syncfusion/ej2-data": "~17.3.30",
15
- "@syncfusion/ej2-drawings": "~17.3.27",
16
- "@syncfusion/ej2-dropdowns": "~17.3.34",
17
- "@syncfusion/ej2-inplace-editor": "~17.3.29",
18
- "@syncfusion/ej2-inputs": "~17.3.29",
19
- "@syncfusion/ej2-lists": "~17.3.27",
20
- "@syncfusion/ej2-navigations": "~17.3.34",
21
- "@syncfusion/ej2-notifications": "~17.3.30",
22
- "@syncfusion/ej2-popups": "~17.3.34",
23
- "@syncfusion/ej2-richtexteditor": "~17.3.29"
35
+ "@syncfusion/ej2-base": "~17.3.27",
36
+ "@syncfusion/ej2-buttons": "~17.3.27",
37
+ "@syncfusion/ej2-calendars": "~17.3.28",
38
+ "@syncfusion/ej2-data": "~17.3.30",
39
+ "@syncfusion/ej2-drawings": "~17.3.27",
40
+ "@syncfusion/ej2-dropdowns": "~17.3.34",
41
+ "@syncfusion/ej2-inplace-editor": "~17.3.29",
42
+ "@syncfusion/ej2-inputs": "~17.3.29",
43
+ "@syncfusion/ej2-lists": "~17.3.27",
44
+ "@syncfusion/ej2-navigations": "~17.3.34",
45
+ "@syncfusion/ej2-notifications": "~17.3.30",
46
+ "@syncfusion/ej2-popups": "~17.3.34",
47
+ "@syncfusion/ej2-richtexteditor": "~17.3.29"
24
48
  },
25
49
  "deprecated": false,
26
50
  "description": "Essential JS 2 PDF viewer Component",
@@ -28,24 +52,25 @@
28
52
  "es2015": "./dist/es6/ej2-pdfviewer.es2015.js",
29
53
  "homepage": "https://github.com/syncfusion/ej2-pdfviewer#readme",
30
54
  "keywords": [
31
- "ej2",
32
- "syncfusion",
33
- "ej2-pdfviewer",
34
- "web-components",
35
- "JavaScript",
36
- "TypeScript",
37
- "viewer",
38
- "annotation"
55
+ "ej2",
56
+ "syncfusion",
57
+ "ej2-pdfviewer",
58
+ "web-components",
59
+ "JavaScript",
60
+ "TypeScript",
61
+ "viewer",
62
+ "annotation"
39
63
  ],
40
64
  "license": "SEE LICENSE IN license",
41
65
  "main": "./dist/ej2-pdfviewer.umd.min.js",
42
66
  "module": "./index.js",
43
67
  "name": "@syncfusion/ej2-pdfviewer",
44
68
  "repository": {
45
- "type": "git",
46
- "url": "git+https://github.com/syncfusion/ej2-pdfviewer.git"
69
+ "type": "git",
70
+ "url": "git+https://github.com/syncfusion/ej2-pdfviewer.git"
47
71
  },
72
+ "sideEffects": false,
48
73
  "typings": "index.d.ts",
49
- "version": "17.3.48-4568",
50
- "sideEffects": false
51
- }
74
+ "version": "17.3.49-4568"
75
+ }
76
+
@@ -34,6 +34,7 @@ export declare class AjaxHandler {
34
34
  private pdfViewer;
35
35
  private retryCount;
36
36
  private retryStatusCodes;
37
+ private retryTimeout;
37
38
  /**
38
39
  * Constructor for Ajax class
39
40
  * @param {PdfViewer} pdfviewer
@@ -26,9 +26,11 @@ var AjaxHandler = /** @class */ (function () {
26
26
  * @private
27
27
  */
28
28
  this.contentType = 'application/json;charset=UTF-8';
29
+ this.retryTimeout = 0;
29
30
  this.pdfViewer = pdfviewer;
30
31
  this.retryCount = pdfviewer.retryCount;
31
32
  this.retryStatusCodes = pdfviewer.retryStatusCodes;
33
+ this.retryTimeout = 1000 * pdfviewer.retryTimeout;
32
34
  }
33
35
  /**
34
36
  * Send the request to server
@@ -38,6 +40,7 @@ var AjaxHandler = /** @class */ (function () {
38
40
  AjaxHandler.prototype.send = function (jsonObj) {
39
41
  var _this = this;
40
42
  this.httpRequest = new XMLHttpRequest();
43
+ this.httpRequest.timeout = this.retryTimeout;
41
44
  if (!this.mode) {
42
45
  setTimeout(function () { _this.sendRequest(jsonObj); });
43
46
  }
@@ -53,7 +56,22 @@ var AjaxHandler = /** @class */ (function () {
53
56
  _this.retryCount = 0;
54
57
  }
55
58
  if (_this.retryCount > 0) {
56
- isSkip = _this.resendRequest(_this, jsonObj);
59
+ isSkip = _this.resendRequest(_this, jsonObj, false);
60
+ }
61
+ if (!isSkip) {
62
+ _this.stateChange(_this);
63
+ }
64
+ };
65
+ this.httpRequest.ontimeout = function () {
66
+ var isSkip = false;
67
+ // tslint:disable-next-line
68
+ var viewerBase = _this.pdfViewer.viewerBase;
69
+ if (viewerBase && viewerBase.isPasswordAvailable && viewerBase.passwordData === '') {
70
+ isSkip = true;
71
+ _this.retryCount = 0;
72
+ }
73
+ if (_this.retryCount > 0) {
74
+ isSkip = _this.resendRequest(_this, jsonObj, true);
57
75
  }
58
76
  if (!isSkip) {
59
77
  _this.stateChange(_this);
@@ -62,7 +80,7 @@ var AjaxHandler = /** @class */ (function () {
62
80
  this.httpRequest.onerror = function () { _this.error(_this); };
63
81
  };
64
82
  // tslint:disable-next-line
65
- AjaxHandler.prototype.resendRequest = function (proxy, jsonObj) {
83
+ AjaxHandler.prototype.resendRequest = function (proxy, jsonObj, isTimeout) {
66
84
  var isSkip = false;
67
85
  var status = proxy.httpRequest.status;
68
86
  var statusString = this.retryStatusCodes.indexOf(status) !== -1;
@@ -89,7 +107,7 @@ var AjaxHandler = /** @class */ (function () {
89
107
  }
90
108
  }
91
109
  }
92
- if (statusString || isSkip) {
110
+ if (statusString || isSkip || isTimeout) {
93
111
  isSkip = true;
94
112
  this.retryCount--;
95
113
  proxy.send(jsonObj);
@@ -1,4 +1,4 @@
1
- import { PdfViewer, TextLayer, ContextMenu, Signature, TaggedPDF } from '../index';
1
+ import { PdfViewer, TextLayer, ContextMenu, Signature } from '../index';
2
2
  import { NavigationPane } from './navigation-pane';
3
3
  import { TextMarkupAnnotation } from '../annotation';
4
4
  import { DrawingElement, PointModel, Matrix } from '@syncfusion/ej2-drawings';
@@ -76,10 +76,6 @@ export declare class PdfViewerBase {
76
76
  * @private
77
77
  */
78
78
  textLayer: TextLayer;
79
- /**
80
- * @private
81
- */
82
- taggedPdf: TaggedPDF;
83
79
  private pdfViewer;
84
80
  private unload;
85
81
  /**
@@ -441,13 +437,39 @@ export declare class PdfViewerBase {
441
437
  * @private
442
438
  */
443
439
  isReRenderRequired: boolean;
440
+ /**
441
+ * @private
442
+ */
443
+ isTouchPad: boolean;
444
+ /**
445
+ * @private
446
+ */
447
+ isMacGestureActive: boolean;
448
+ /**
449
+ * @private
450
+ */
451
+ macGestureStartScale: number;
452
+ /**
453
+ * @private
454
+ */
455
+ zoomInterval: number;
456
+ /**
457
+ * @private
458
+ */
459
+ /**
460
+ * EJ2CORE-813 - This flag is represent current device is 'iPad' or 'iPhone' or'iPod' device.
461
+ * @private
462
+ */
463
+ isDeviceiOS: Boolean;
464
+ /**
465
+ * @private
466
+ */
467
+ isMacSafari: boolean;
444
468
  /**
445
469
  * @private
446
470
  */
447
471
  previousContainerHeight: number;
448
472
  private isGotoPageEnabled;
449
- private taggedTextHandler;
450
- private taggedCollection;
451
473
  constructor(viewer: PdfViewer);
452
474
  /**
453
475
  * @private
@@ -598,6 +620,26 @@ export declare class PdfViewerBase {
598
620
  */
599
621
  checkIsNormalText(): boolean;
600
622
  private viewerContainerOnMouseup;
623
+ /**
624
+ * @param {any} event - The Wheel event.
625
+ * @returns {void}
626
+ */
627
+ private detectTouchPad;
628
+ /**
629
+ * @param {any} event - The Wheel event.
630
+ * @returns {void}
631
+ */
632
+ private handleMacGestureStart;
633
+ /**
634
+ * @param {any} event - The Wheel event.
635
+ * @returns {void}
636
+ */
637
+ private handleMacGestureChange;
638
+ /**
639
+ * @param {any} event - The Wheel event.
640
+ * @returns {void}
641
+ */
642
+ private handleMacGestureEnd;
601
643
  private viewerContainerOnMouseWheel;
602
644
  private viewerContainerOnKeyDown;
603
645
  private viewerContainerOnMousemove;
@@ -651,8 +693,6 @@ export declare class PdfViewerBase {
651
693
  */
652
694
  renderAnnotations(pageIndex: number): void;
653
695
  private renderTextContent;
654
- private renderTaggedTextContentsFromServer;
655
- private createRequestForTaggedText;
656
696
  private renderPageContainer;
657
697
  private orderPageDivElements;
658
698
  /**
@@ -35,7 +35,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  };
36
36
  import { createElement, Browser, isNullOrUndefined } from '@syncfusion/ej2-base';
37
37
  import { Dialog, createSpinner, showSpinner, hideSpinner } from '@syncfusion/ej2-popups';
38
- import { TextLayer, ContextMenu, Signature, TaggedPDF } from '../index';
38
+ import { TextLayer, ContextMenu, Signature } from '../index';
39
39
  import { NavigationPane } from './navigation-pane';
40
40
  import { NumericTextBox } from '@syncfusion/ej2-inputs';
41
41
  import { AjaxHandler } from '../index';
@@ -337,14 +337,46 @@ var PdfViewerBase = /** @class */ (function () {
337
337
  * @private
338
338
  */
339
339
  this.isReRenderRequired = true;
340
+ /**
341
+ * @private
342
+ */
343
+ // eslint-disable-next-line
344
+ this.isTouchPad = false;
345
+ /**
346
+ * @private
347
+ */
348
+ // eslint-disable-next-line
349
+ this.isMacGestureActive = false;
350
+ /**
351
+ * @private
352
+ */
353
+ // eslint-disable-next-line
354
+ this.macGestureStartScale = 0;
355
+ /**
356
+ * @private
357
+ */
358
+ // eslint-disable-next-line
359
+ this.zoomInterval = 5;
360
+ /**
361
+ * @private
362
+ */
363
+ /**
364
+ * EJ2CORE-813 - This flag is represent current device is 'iPad' or 'iPhone' or'iPod' device.
365
+ * @private
366
+ */
367
+ // eslint-disable-next-line
368
+ this.isDeviceiOS = (['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || (navigator.userAgent.includes("Mac") && "ontouchend" in document));
369
+ /**
370
+ * @private
371
+ */
372
+ // eslint-disable-next-line
373
+ this.isMacSafari = navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") === -1 && !this.isDeviceiOS;
340
374
  /**
341
375
  * @private
342
376
  */
343
377
  // tslint:disable-next-line
344
378
  this.previousContainerHeight = 0;
345
379
  this.isGotoPageEnabled = false;
346
- this.taggedTextHandler = null;
347
- this.taggedCollection = [];
348
380
  this.clearSessionStorage = function () {
349
381
  var documentId = window.sessionStorage.getItem('hashId');
350
382
  var documentLiveCount = window.sessionStorage.getItem('documentLiveCount');
@@ -617,6 +649,49 @@ var PdfViewerBase = /** @class */ (function () {
617
649
  _this.isViewerMouseDown = false;
618
650
  }
619
651
  };
652
+ /**
653
+ * @param {any} event - The Wheel event.
654
+ * @returns {void}
655
+ */
656
+ this.detectTouchPad = function (event) {
657
+ // eslint-disable-next-line max-len
658
+ _this.isTouchPad = event.wheelDeltaY ? (event.wheelDeltaY === (event.deltaY * -3) ? true : Math.abs(event.deltaY) < 60) : (event.deltaMode === 0);
659
+ };
660
+ /**
661
+ * @param {any} event - The Wheel event.
662
+ * @returns {void}
663
+ */
664
+ this.handleMacGestureStart = function (event) {
665
+ event.preventDefault();
666
+ event.stopPropagation();
667
+ _this.macGestureStartScale = _this.pdfViewer.magnification.zoomFactor;
668
+ };
669
+ /**
670
+ * @param {any} event - The Wheel event.
671
+ * @returns {void}
672
+ */
673
+ this.handleMacGestureChange = function (event) {
674
+ event.preventDefault();
675
+ event.stopPropagation();
676
+ var macX = event.clientX;
677
+ var macY = event.clientY;
678
+ var scale = Number((_this.macGestureStartScale * event.scale).toFixed(2));
679
+ if (!_this.isMacGestureActive) {
680
+ _this.isMacGestureActive = true;
681
+ _this.pdfViewer.magnification.initiateMouseZoom(macX, macY, scale * 100);
682
+ setTimeout(function () {
683
+ _this.isMacGestureActive = false;
684
+ }, 70);
685
+ }
686
+ };
687
+ /**
688
+ * @param {any} event - The Wheel event.
689
+ * @returns {void}
690
+ */
691
+ this.handleMacGestureEnd = function (event) {
692
+ event.preventDefault();
693
+ event.stopPropagation();
694
+ };
620
695
  this.viewerContainerOnMouseWheel = function (event) {
621
696
  _this.isViewerMouseWheel = true;
622
697
  if (_this.getRerenderCanvasCreated()) {
@@ -630,13 +705,17 @@ var PdfViewerBase = /** @class */ (function () {
630
705
  if (_this.pdfViewer.magnification.zoomFactor >= 2) {
631
706
  zoomDifference = 50;
632
707
  }
708
+ if (_this.isTouchPad && !_this.isMacSafari) {
709
+ zoomDifference = zoomDifference / _this.zoomInterval;
710
+ }
633
711
  // eslint-disable-next-line
634
712
  if (event.wheelDelta > 0) {
635
- _this.pdfViewer.magnification.zoomTo((_this.pdfViewer.magnification.zoomFactor * 100) + zoomDifference);
713
+ _this.pdfViewer.magnification.initiateMouseZoom(event.x, event.y, (_this.pdfViewer.magnification.zoomFactor * 100) + zoomDifference);
636
714
  }
637
715
  else {
638
- _this.pdfViewer.magnification.zoomTo((_this.pdfViewer.magnification.zoomFactor * 100) - zoomDifference);
716
+ _this.pdfViewer.magnification.initiateMouseZoom(event.x, event.y, (_this.pdfViewer.magnification.zoomFactor * 100) - zoomDifference);
639
717
  }
718
+ _this.isTouchPad = false;
640
719
  }
641
720
  if (_this.pdfViewer.magnificationModule) {
642
721
  _this.pdfViewer.magnificationModule.pageRerenderOnMouseWheel();
@@ -1125,8 +1204,8 @@ var PdfViewerBase = /** @class */ (function () {
1125
1204
  _this.previousTime = new Date().getTime();
1126
1205
  // tslint:disable-next-line:max-line-length
1127
1206
  if (touchPoints.length === 1 && !(event.target.classList.contains('e-pv-touch-select-drop') || event.target.classList.contains('e-pv-touch-ellipse'))) {
1128
- if (Browser.isDevice && _this.pageCount > 0 && !_this.isThumb && !(event.target.classList.contains('e-pv-hyperlink'))) {
1129
- _this.handleTaps(touchPoints);
1207
+ if ((Browser.isDevice || (typeof navigator !== 'undefined' && navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1 && Browser.isTouch === true)) && _this.pageCount > 0 && !_this.isThumb && !(event.target.classList.contains('e-pv-hyperlink'))) {
1208
+ _this.handleTaps(touchPoints, event);
1130
1209
  }
1131
1210
  else if (!Browser.isDevice) {
1132
1211
  _this.handleTextBoxTaps(touchPoints);
@@ -1155,7 +1234,6 @@ var PdfViewerBase = /** @class */ (function () {
1155
1234
  _this.pdfViewer.textSelectionModule.initiateTouchSelection(event, _this.touchClientX, _this.touchClientY);
1156
1235
  if (Browser.isDevice) {
1157
1236
  clearTimeout(_this.singleTapTimer);
1158
- _this.singleTapTimer = null;
1159
1237
  _this.tapCount = 0;
1160
1238
  }
1161
1239
  }
@@ -1405,7 +1483,6 @@ var PdfViewerBase = /** @class */ (function () {
1405
1483
  this.pdfViewer = viewer;
1406
1484
  this.navigationPane = new NavigationPane(this.pdfViewer, this);
1407
1485
  this.textLayer = new TextLayer(this.pdfViewer, this);
1408
- this.taggedPdf = new TaggedPDF(this.pdfViewer, this);
1409
1486
  this.signatureModule = new Signature(this.pdfViewer, this);
1410
1487
  // tslint:disable-next-line:max-line-length
1411
1488
  this.isWebkitMobile = /Chrome/.test(navigator.userAgent) || /Google Inc/.test(navigator.vendor) || (navigator.userAgent.indexOf('Safari') !== -1);
@@ -2236,9 +2313,6 @@ var PdfViewerBase = /** @class */ (function () {
2236
2313
  if (this.renderedPagesList) {
2237
2314
  this.renderedPagesList = [];
2238
2315
  }
2239
- if (this.taggedCollection) {
2240
- this.taggedCollection = [];
2241
- }
2242
2316
  if (this.pageContainer) {
2243
2317
  while (this.pageContainer.hasChildNodes()) {
2244
2318
  this.pageContainer.removeChild(this.pageContainer.lastChild);
@@ -2676,7 +2750,16 @@ var PdfViewerBase = /** @class */ (function () {
2676
2750
  }
2677
2751
  this.viewerContainer.addEventListener('mousedown', this.viewerContainerOnMousedown);
2678
2752
  this.viewerContainer.addEventListener('mouseup', this.viewerContainerOnMouseup);
2753
+ this.viewerContainer.addEventListener("wheel", this.detectTouchPad, false);
2679
2754
  this.viewerContainer.addEventListener('wheel', this.viewerContainerOnMouseWheel);
2755
+ if (this.isMacSafari) {
2756
+ window.addEventListener('gesturestart', function (e) { return e.preventDefault(); });
2757
+ window.addEventListener('gesturechange', function (e) { return e.preventDefault(); });
2758
+ window.addEventListener('gestureend', function (e) { return e.preventDefault(); });
2759
+ this.viewerContainer.addEventListener('gesturestart', this.handleMacGestureStart, false);
2760
+ this.viewerContainer.addEventListener('gesturechange', this.handleMacGestureChange, false);
2761
+ this.viewerContainer.addEventListener('gestureend', this.handleMacGestureEnd, false);
2762
+ }
2680
2763
  this.viewerContainer.addEventListener('mousemove', this.viewerContainerOnMousemove);
2681
2764
  this.viewerContainer.addEventListener('mouseleave', this.viewerContainerOnMouseLeave);
2682
2765
  this.viewerContainer.addEventListener('mouseenter', this.viewerContainerOnMouseEnter);
@@ -2700,6 +2783,12 @@ var PdfViewerBase = /** @class */ (function () {
2700
2783
  }
2701
2784
  else {
2702
2785
  this.viewerContainer.addEventListener('touchstart', this.viewerContainerOnTouchStart);
2786
+ if (this.isWebkitMobile && this.isDeviceiOS) {
2787
+ // eslint-disable-next-line max-len
2788
+ this.viewerContainer.addEventListener("touchmove", function (e) { if (e.scale !== 1) {
2789
+ e.preventDefault();
2790
+ } }, { passive: false });
2791
+ }
2703
2792
  this.viewerContainer.addEventListener('touchmove', this.viewerContainerOnTouchMove);
2704
2793
  this.viewerContainer.addEventListener('touchend', this.viewerContainerOnTouchEnd);
2705
2794
  this.viewerContainer.addEventListener('touchleave', this.viewerContainerOnTouchEnd);
@@ -2713,7 +2802,16 @@ var PdfViewerBase = /** @class */ (function () {
2713
2802
  }
2714
2803
  this.viewerContainer.removeEventListener('mousedown', this.viewerContainerOnMousedown);
2715
2804
  this.viewerContainer.removeEventListener('mouseup', this.viewerContainerOnMouseup);
2805
+ this.viewerContainer.removeEventListener("wheel", this.detectTouchPad, false);
2716
2806
  this.viewerContainer.removeEventListener('wheel', this.viewerContainerOnMouseWheel);
2807
+ if (this.isMacSafari) {
2808
+ window.removeEventListener('gesturestart', function (e) { return e.preventDefault(); });
2809
+ window.removeEventListener('gesturechange', function (e) { return e.preventDefault(); });
2810
+ window.removeEventListener('gestureend', function (e) { return e.preventDefault(); });
2811
+ this.viewerContainer.removeEventListener('gesturestart', this.handleMacGestureStart, false);
2812
+ this.viewerContainer.removeEventListener('gesturechange', this.handleMacGestureChange, false);
2813
+ this.viewerContainer.removeEventListener('gestureend', this.handleMacGestureEnd, false);
2814
+ }
2717
2815
  this.viewerContainer.removeEventListener('mousemove', this.viewerContainerOnMousemove);
2718
2816
  this.viewerContainer.removeEventListener('mouseleave', this.viewerContainerOnMouseLeave);
2719
2817
  this.viewerContainer.removeEventListener('mouseenter', this.viewerContainerOnMouseEnter);
@@ -2734,6 +2832,12 @@ var PdfViewerBase = /** @class */ (function () {
2734
2832
  }
2735
2833
  else {
2736
2834
  this.viewerContainer.removeEventListener('touchstart', this.viewerContainerOnTouchStart);
2835
+ if (this.isWebkitMobile && this.isDeviceiOS) {
2836
+ // eslint-disable-next-line max-len
2837
+ this.viewerContainer.removeEventListener("touchmove", function (e) { if (e.scale !== 1) {
2838
+ e.preventDefault();
2839
+ } }, false);
2840
+ }
2737
2841
  this.viewerContainer.removeEventListener('touchmove', this.viewerContainerOnTouchMove);
2738
2842
  this.viewerContainer.removeEventListener('touchend', this.viewerContainerOnTouchEnd);
2739
2843
  this.viewerContainer.removeEventListener('touchleave', this.viewerContainerOnTouchEnd);
@@ -2849,30 +2953,66 @@ var PdfViewerBase = /** @class */ (function () {
2849
2953
  }
2850
2954
  this.isViewerContainerDoubleClick = false;
2851
2955
  };
2852
- PdfViewerBase.prototype.handleTaps = function (touchPoints) {
2956
+ PdfViewerBase.prototype.handleTaps = function (touchPoints, event) {
2853
2957
  var _this = this;
2854
- if (!this.singleTapTimer) {
2855
- this.singleTapTimer = setTimeout(function () {
2856
- _this.onSingleTap(touchPoints);
2857
- // tslint:disable-next-line
2858
- }, 300);
2859
- this.tapCount++;
2958
+ //EJ2CORE-813 - Implemented focus removing logic for iOS devices
2959
+ if (this.isDeviceiOS) {
2960
+ var obj = findActiveElement(event, this, this.pdfViewer);
2961
+ // eslint-disable-next-line
2962
+ var isRemoveFocus_1 = !this.pdfViewer.annotation.freeTextAnnotationModule.isNewFreeTextAnnot && (obj && this.pdfViewer.selectedItems.annotations[0] ? obj.id !== this.pdfViewer.selectedItems.annotations[0].id : true) && document.activeElement.classList.contains('free-text-input') && this.isFreeTextAnnotation(this.pdfViewer.selectedItems.annotations);
2963
+ if (!this.singleTapTimer) {
2964
+ this.singleTapTimer = setTimeout(function () {
2965
+ if (isRemoveFocus_1) {
2966
+ _this.pdfViewer.clearSelection(_this.pdfViewer.selectedItems.annotations[0].pageIndex);
2967
+ _this.focusViewerContainer();
2968
+ }
2969
+ _this.onSingleTap(touchPoints);
2970
+ // eslint-disable-next-line
2971
+ }, 300);
2972
+ this.tapCount++;
2973
+ }
2974
+ else {
2975
+ if (this.pdfViewer.enablePinchZoom) {
2976
+ this.tapCount++;
2977
+ clearTimeout(this.singleTapTimer);
2978
+ this.singleTapTimer = null;
2979
+ this.onDoubleTap(touchPoints);
2980
+ }
2981
+ }
2860
2982
  }
2861
2983
  else {
2862
- if (this.pdfViewer.enablePinchZoom) {
2984
+ if (!this.singleTapTimer) {
2985
+ this.singleTapTimer = setTimeout(function () {
2986
+ _this.onSingleTap(touchPoints);
2987
+ // eslint-disable-next-line
2988
+ }, 300);
2863
2989
  this.tapCount++;
2864
- clearTimeout(this.singleTapTimer);
2865
- this.singleTapTimer = null;
2866
- this.onDoubleTap(touchPoints);
2990
+ }
2991
+ else {
2992
+ if (this.pdfViewer.enablePinchZoom) {
2993
+ this.tapCount++;
2994
+ clearTimeout(this.singleTapTimer);
2995
+ this.singleTapTimer = null;
2996
+ this.onDoubleTap(touchPoints);
2997
+ }
2867
2998
  }
2868
2999
  }
2869
3000
  };
2870
3001
  PdfViewerBase.prototype.handleTextBoxTaps = function (touchPoints) {
2871
3002
  var _this = this;
2872
- setTimeout(function () { _this.inputTapCount = 0; }, 300);
3003
+ setTimeout(function () {
3004
+ _this.inputTapCount = 0;
3005
+ }, 300);
2873
3006
  this.inputTapCount++;
2874
- // tslint:disable-next-line
2875
- var timer = setTimeout(function () { _this.onTextBoxDoubleTap(touchPoints); }, 200);
3007
+ if (this.isDeviceiOS) {
3008
+ // eslint-disable-next-line
3009
+ this.onTextBoxDoubleTap(touchPoints);
3010
+ }
3011
+ else {
3012
+ var timer = setTimeout(function () {
3013
+ _this.onTextBoxDoubleTap(touchPoints);
3014
+ }, 200);
3015
+ }
2876
3016
  if (this.inputTapCount > 2) {
2877
3017
  this.inputTapCount = 0;
2878
3018
  }
@@ -2971,7 +3111,7 @@ var PdfViewerBase = /** @class */ (function () {
2971
3111
  if (this.pdfViewer.textSelectionModule) {
2972
3112
  // tslint:disable-next-line:max-line-length
2973
3113
  if (!this.isPanMode && this.pdfViewer.enableTextSelection && !this.isTextSelectionDisabled && this.getSelectTextMarkupCurrentPage() == null) {
2974
- if (!(this.isWebkitMobile && Browser.isDevice)) {
3114
+ if (!(this.isWebkitMobile && (Browser.isDevice || (typeof navigator !== 'undefined' && navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1 && Browser.isTouch === true)))) {
2975
3115
  event.preventDefault();
2976
3116
  event.stopPropagation();
2977
3117
  }
@@ -3420,14 +3560,6 @@ var PdfViewerBase = /** @class */ (function () {
3420
3560
  if (this.pdfViewer.textSelectionModule && !this.isTextSelectionDisabled) {
3421
3561
  this.pdfViewer.textSelectionModule.applySelectionRangeOnScroll(pageIndex);
3422
3562
  }
3423
- if (this.pdfViewer.taggedPDFModule && this.pdfViewer.enableTaggedPDF) {
3424
- if (this.taggedCollection[pageIndex.toString()]) {
3425
- this.renderTaggedTextContentsFromServer(pageIndex, this.taggedCollection[pageIndex.toString()]);
3426
- }
3427
- else {
3428
- this.createRequestForTaggedText(pageIndex);
3429
- }
3430
- }
3431
3563
  if (this.documentAnnotationCollections) {
3432
3564
  var isAnnotationAdded = false;
3433
3565
  for (var i = 0; i < this.annotationRenderredList.length; i++) {
@@ -3622,33 +3754,6 @@ var PdfViewerBase = /** @class */ (function () {
3622
3754
  }
3623
3755
  }
3624
3756
  };
3625
- PdfViewerBase.prototype.renderTaggedTextContentsFromServer = function (pageIndex, taggedTextResponse) {
3626
- this.taggedPdf.renderTaggedTextContentsFromServer(pageIndex, taggedTextResponse);
3627
- };
3628
- PdfViewerBase.prototype.createRequestForTaggedText = function (pageIndex) {
3629
- var jsonObject;
3630
- var proxy = this;
3631
- jsonObject = { action: 'RenderTaggedContent', elementId: this.pdfViewer.element.id, hashId: this.hashId, uniqueId: this.documentId, pageIndex: pageIndex };
3632
- if (this.jsonDocumentId) {
3633
- jsonObject.document = this.jsonDocumentId;
3634
- }
3635
- var url = this.pdfViewer.serviceUrl + '/' + "RenderTaggedContent";
3636
- this.taggedTextHandler = new AjaxHandler(this.pdfViewer);
3637
- this.taggedTextHandler.url = url;
3638
- this.taggedTextHandler.mode = true;
3639
- this.taggedTextHandler.responseType = 'text';
3640
- this.taggedTextHandler.send(jsonObject);
3641
- this.taggedTextHandler.onSuccess = function (result) {
3642
- var data = JSON.parse(result.data);
3643
- var pageData = data.filter(function (item) { return (item.PageNumber).toString() === pageIndex.toString(); });
3644
- proxy.taggedCollection[pageIndex.toString()] = pageData;
3645
- proxy.renderTaggedTextContentsFromServer(pageIndex, pageData);
3646
- };
3647
- this.taggedTextHandler.onFailure = function (result) {
3648
- console.log("error");
3649
- };
3650
- };
3651
- ;
3652
3757
  PdfViewerBase.prototype.renderPageContainer = function (pageNumber, pageWidth, pageHeight, topValue) {
3653
3758
  // tslint:disable-next-line:max-line-length
3654
3759
  var pageDiv = createElement('div', { id: this.pdfViewer.element.id + '_pageDiv_' + pageNumber, className: 'e-pv-page-div', attrs: { 'tabindex': '0' } });
@@ -33,9 +33,6 @@ var TextLayer = /** @class */ (function () {
33
33
  textLayer = createElement('div', { id: this.pdfViewer.element.id + '_textLayer_' + pageNumber, className: 'e-pv-text-layer' });
34
34
  textLayer.style.width = pageWidth + 'px';
35
35
  textLayer.style.height = pageHeight + 'px';
36
- if (this.pdfViewer.taggedPDFModule && this.pdfViewer.enableTaggedPDF) {
37
- textLayer.setAttribute('aria-hidden', 'true');
38
- }
39
36
  pageDiv.appendChild(textLayer);
40
37
  }
41
38
  this.pdfViewerBase.applyElementStyles(textLayer, pageNumber);
@@ -14,4 +14,3 @@ export * from './text-selection/index';
14
14
  export * from './text-search/index';
15
15
  export * from './print/index';
16
16
  export * from './form-fields/index';
17
- export * from './tagged-pdf/index';
@@ -13,4 +13,3 @@ export * from './text-selection/index';
13
13
  export * from './text-search/index';
14
14
  export * from './print/index';
15
15
  export * from './form-fields/index';
16
- export * from './tagged-pdf/index';