@mescius/wijmo.viewer 5.20252.44 → 5.20261.45-nightly.d20260105.t014601
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/es2015-commonjs.js +2 -2
- package/es2015-esm.js +2 -2
- package/es5-esm.js +2 -2
- package/index.d.ts +388 -407
- package/index.js +2 -2
- package/package.json +4 -4
package/es2015-esm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
*
|
|
3
|
-
* Wijmo Library 5.
|
|
3
|
+
* Wijmo Library 5.20261.45-nightly.d20260105.t014601
|
|
4
4
|
* https://developer.mescius.com/wijmo
|
|
5
5
|
*
|
|
6
6
|
* Copyright(c) MESCIUS inc. All rights reserved.
|
|
@@ -11,4 +11,4 @@
|
|
|
11
11
|
*
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
|
-
import{isObject,isString,_addCultureInfo,EventArgs,isFunction,isMobile,Event,PrintDocument,saveFile,isArray,isNumber,culture,isIE,Control,Point,ControlClsNames,httpRequest,setInnerHTMLSafe,addClass,removeClass,ControlStateClsNames,hasClass,InputFormElementsClsNames,UtilitesClsNames,Rect,changeType,DataType,assert,getElement,getElementRect,Key,enable,GlyphClsNames,Globalize,showPopup,_deprecated,asBoolean,asEnum,isBoolean,isDate,isInt,_registerModule}from"@mescius/wijmo";import{ComboBox,InputNumber,Popup,PopupTrigger,Menu,ListBox,MultiSelect,InputDate,InputDateTime,InputTime}from"@mescius/wijmo.input";import{FlexGrid,AllowResizing,HeadersVisibility,SelectedState}from"@mescius/wijmo.grid";import*as selfModule from"@mescius/wijmo.viewer";export class _MultiSelectEx{constructor(e){this._selectedAll=!1;this._innerCheckedItemsChanged=!1;this.checkedItemsChanged=new Event;var t=this,i=new MultiSelect(e,{keyActionPrintCharacters:0,keyActionTab:0});t._multiSelect=i;i.checkedItemsChanged.addHandler(t.onCheckedItemsChanged,t);i.isDroppedDownChanged.addHandler(t.onIsDroppedDownChanged,t);i.headerFormatter=()=>t._updateHeader();t._lostFocus=t._multiSelect.lostFocus}_updateHeader(){var e=this.checkedItems||[],t=[],i=this.displayMemberPath;if(!e.length)return culture.Viewer.parameterNoneItemsSelected;if(this._selectedAll)return culture.Viewer.parameterAllItemsSelected;if(i){for(var r=0;r<e.length;r++)t[r]=e[r][i];return t.join(", ")}return e.join(", ")}onIsDroppedDownChanged(){this._multiSelect.isDroppedDown&&this._updateSelectedAll()}onCheckedItemsChanged(e,t){if(!this._innerCheckedItemsChanged)if(this._selectAllItem){this._updateSelectedAll();this.checkedItemsChanged.raise(this,t)}else this.checkedItemsChanged.raise(this,t)}get isEditable(){return this._multiSelect.isEditable}set isEditable(e){this._multiSelect.isEditable=e}get isDisabled(){return this._multiSelect.isDisabled}set isDisabled(e){this._multiSelect.isDisabled=e}get displayMemberPath(){return this._multiSelect.displayMemberPath}set displayMemberPath(e){this._multiSelect.displayMemberPath=e}get selectedValuePath(){return this._multiSelect.selectedValuePath}set selectedValuePath(e){this._multiSelect.selectedValuePath=e}get itemsSource(){return this._itemsSource}set itemsSource(e){var t=this.displayMemberPath||"name";this._itemsSource=e;var i=[];if(e){if(e.length>1){this._selectAllItem={};this._selectAllItem[t]=culture.Viewer.parameterSelectAllItemText;i.push(this._selectAllItem)}else this._selectAllItem=null;i=i.concat(e)}this._multiSelect.itemsSource=i}get checkedItems(){var e=[];this._multiSelect.checkedItems&&(e=this._multiSelect.checkedItems.slice());var t=e.indexOf(this._selectAllItem);t>-1&&e.splice(t,1);return e}set checkedItems(e){this._multiSelect.checkedItems=e;this._selectedAll=!1;this._updateSelectedAll()}get lostFocus(){return this._lostFocus}_updateSelectedAll(){if(this._selectAllItem){var e=this._multiSelect.checkedItems||[],t=e.indexOf(this._selectAllItem),i=t>-1;if(this._selectedAll!==i){this._selectedAll=i;this._innerCheckedItemsChanged=!0;this._selectedAll?this._multiSelect.checkedItems=this._multiSelect.itemsSource.slice():this._multiSelect.checkedItems=[];this._innerCheckedItemsChanged=!1}else{this._selectedAll=e&&this._itemsSource&&e.length-(i?1:0)===this._itemsSource.length;if(this._selectedAll!==i){this._innerCheckedItemsChanged=!0;if(this._selectedAll)this._multiSelect.checkedItems=e.concat(this._selectAllItem);else{(e=e.slice()).splice(t,1);this._multiSelect.checkedItems=e}this._innerCheckedItemsChanged=!1}}}}}export var parametersIcon='<path d="M24,11.9v-2h-4V7h0V5h0h-1h-5V2h0V0h0h-1H1H0h0v2h0v11h0v1h0h1h5v4h0v1h0h1h3v4h0v1h0h1h2.1v-1H11V12h2.1v-2H11h-1h0v2h0v6H7V7h12v2.9h-1v2h5V23h-4.9v1H23h1h0v-1h0L24,11.9L24,11.9z M6,5L6,5l0,2h0v6H1V2h12v3H7H6z"/><path d="M20,20v-3v-1h-1h-1v-1v-1h-1h-3h-1v1v3v1h1h1v2h0h1h3h1h0L20,20L20,20z M14,18v-3h3v1h-1h-1v1v1H14z M17,17v1h-1v-1H17z M16,20v-1h1h1v-1v-1h1v3H16z"/>';export var icons={paginated:'<rect x="16" y= "1" width="1" height="1" /><rect x="17" y= "2" width="1" height="1" /><rect x="18" y= "3" width="1" height="1" /><path d= "M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M5,22.1V2h8v5h1h1h3v15.1H5z" /><rect x="6" y= "8" width="10" height="1" /><rect x="6" y= "5" width="5" height="1" /><rect x="6" y= "11" width="10" height="1" /><rect x="6" y= "14" width="10" height="1" /><rect x="6" y= "17" width="10" height="1" /><rect x="6" y= "20" width="10" height="1" />',print:'<rect x="5" y= "1" width="14" height="4" /><polygon points= "22,8 22,7 19,7 19,6 5,6 5,7 2,7 2,8 1,8 1,11 1,20 2,20 2,21 5,21 5,11 19,11 19,21 22,21 22,20 23,20 23, 11 23, 8 "/><path d="M6,12v11h12V12H6z M16,21H8v-1h8V21z M16,18H8v-1h8V18z M16,15H8v-1h8V15z" />',exports:'<path d="M19.6,23"/><polyline points="5,19 5,2 13,2 13,7 14.3,7 15,7 18,7 18,9 20,9 20,7 20,6.4 20,5 20,4 19,4 19,5 15,5 15,2 15,1 16,1 16,0 15,0 5,0 3,0 3,2 3,19 3,21 5,21 "/><rect x="18" y="3" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="16" y="1" width="1" height="1"/><polygon points="17,16.6 20,14.1 17,11.6 17,13.6 13,13.6 13,14.6 17,14.6 "/><rect x="3" y="20.9" width="2" height="3.1"/><rect x="4.5" y="22" width="15.6" height="2"/><rect x="18" y="8.4" width="2" height="1.6"/><rect x="18" y="18" width="2.1" height="6"/>',portrait:'<path d="M19,0L19,0L5,0v0H3v24h0.1H5h14h1.7H21V0H19z M12.5,23h-1v-1h1V23z M19,21H5V2h14V21z"/>',landscape:'<path d="M24,19L24,19l0-14h0V3H0v0.1V5v14v1.7V21h24V19z M1,12.5v-1h1v1H1z M3,19V5h19v14H3z"/>',pageSetup:'<rect x="18" y="1" width="1" height="1"/><rect x="19" y="2" width="1" height="1"/><rect x="20" y="3" width="1" height="1"/><polygon points="22,5 22,4 21,4 21,5 20.4,5 20,5 17,5 17,2 17,1.3 17,1 18,1 18,0 17,0 17,0 7,0 6,0 5,0 5,5 7,5 7,2 15,2 15,7 16,7 17,7 20,7 20,22.1 7,22.1 7,19 5,19 5,24 5.9,24 7,24 20,24 21.1,24 22,24 22,5 "/><rect x="5" y="7" width="2" height="2"/><rect x="5" y="11" width="2" height="2"/><rect x="5" y="15" width="2" height="2"/><rect x="9" y="11" width="2" height="2"/><rect x="1" y="11" width="2" height="2"/><polygon points="9,8 9,8 8,8 8,9 9,9 9,10 10,10 10,8 "/><polygon points="2,9 2,9 2,10 3,10 3,9 4,9 4,8 2,8 "/><polygon points="3,16 3,16 4,16 4,15 3,15 3,14 2,14 2,16 "/><polygon points="10,15 10,15 10,14 9,14 9,15 8,15 8,16 10,16 "/>',previousPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="5.6,10.7 12,4.4 18.4,10.7 18.4,15 13.5,10.1 13.5,19.6 10.4,19.6 10.4,10.1 5.6,15 " />',nextPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="18.4,13.3 12,19.6 5.6,13.3 5.6,9 10.5,13.9 10.5,4.4 13.6,4.4 13.6,13.9 18.4,9 " />',firstPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="6.5,13.1 12,7.8 17.5,13.1 17.5,17.5 13.5,13.5 13.5,19.6 10.4,19.6 10.4,13.5 6.5,17.5 " /><rect x="6.5" y= "4.4" width="10.9" height="2.2" />',lastPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="17.5,10.9 12,16.2 6.5,10.9 6.5,6.5 10.5,10.5 10.5,4.4 13.6,4.4 13.6,10.5 17.5,6.5 " /><rect x="6.5" y= "17.5" transform="matrix(-1 -8.987357e-011 8.987357e-011 -1 24 37.0909)" width="10.9" height="2.2" />',backwardHistory:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="10.7,18.4 4.4,12 10.7,5.6 15,5.6 10.1,10.5 19.6,10.5 19.6,13.6 10.1,13.6 15,18.4 " />',forwardHistory:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="13.3,5.6 19.6,12 13.3,18.4 9,18.4 13.9,13.5 4.4,13.5 4.4,10.4 13.9,10.4 9,5.6 " />',selectTool:'<polygon points="19.9,13.4 5.6,1.1 5.3,19.9 10.5,14.7 14.3,23.3 16.4,22.4 12.6,13.8 "/>',moveTool:'<polygon points="12.5,3 14.5,3 12,0 9.5,3 11.5,3 11.5,21 11.5,21 9.6,21 12,24 14.5,21 12.5,21 "/><polygon points="21,12.5 21,14.5 24,12 21,9.5 21,11.5 3,11.5 3,11.5 3,9.6 0,12 3,14.5 3,12.5 "/>',continuousView:'<polygon points="22,0 22,5 9,5 9,0 7,0 7,5 7,7 7,7 24,7 24,7 24,5 24,0 "/><polygon points="23,15 19,15 19,11 20,11 20,10 19,10 18,10 17,10 9,10 7.4,10 7,10 7,24 9,24 9,12 17,12 17,15 17,16.6 17,17 22,17 22,24 24,24 24,17 24,15.1 24,15 24,15 24,14 23,14 "/><rect x="22" y="13" width="1" height="1"/><polygon points="20.9,12 20.9,13 22,13 22,12 21,12 21,11 20,11 20,12 "/><polygon points="4.9,5.2 2.5,2.2 0,5.2 2,5.2 2,9.2 3,9.2 3,5.2 "/><polygon points="2.9,19.2 2.9,15.2 1.9,15.2 1.9,19.2 0,19.2 2.5,22.1 4.9,19.2 "/>',singleView:'<rect x="16" y="1" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="18" y="3" width="1" height="1"/><path d="M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M5,22.1V2h8v5h1h1h3v15.1H5z"/>',fitWholePage:'<rect x="16" y="1" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="18" y="3" width="1" height="1"/><path d="M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M18,22.1H5V2h8v5h1h1h3V22.1z"/><polygon points="17,13.5 15,11 15,13 13,13 13,14 15,14 15,16 "/><polygon points="6,13.5 8,16 8,14 10,14 10,13 8,13 8,11 "/><polygon points="11.5,7 9,9 11,9 11,11 12,11 12,9 14,9 "/><polygon points="11.5,20 14,18 12,18 12,16 11,16 11,18 9,18 "/>',fitPageWidth:'<rect x="16" y="1" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="18" y="3" width="1" height="1"/><path d="M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M5,22.1V2h8v5h1h1h3v15.1H5z"/><polygon points="14,15.5 17,13 14,10.6 14,12.6 13,12.6 13,13.6 14,13.6 "/><polyline points="6,13.1 9,15.6 9,13.6 10,13.6 10,12.6 9,12.6 9,10.6 6,13.1 "/>',zoomOut:'<circle opacity=".25" cx="12" cy="12" r="12"/><rect opacity=".75" x="5" y="10" width="14" height="3"/>',zoomIn:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon opacity=".75" points="19,10 13.5,10 13.5,4.5 10.5,4.5 10.5,10 5,10 5,13 10.5,13 10.5,18.5 13.5,18.5 13.5,13 19,13 " />',fullScreen:'<path d="M22,0H0v2.8V4v20h1.5H2h20h0.7H24V4V0H22z M7,1h1v1H7V1z M5,1h1v1H5V1z M3,1h1v1H3V1z M22,22H2L2,4h20L22,22z" /><polygon points="19.6,9.9 20,6 16.1,6.4 17.6,7.8 14.7,10.6 15.4,11.3 18.3,8.5"/><polygon points="4.4,16.2 4,20 7.9,19.7 6.5,18.3 9.3,15.5 8.6,14.8 5.8,17.6"/>',exitFullScreen:'<path d="M22,0H0v2.8V4v20h1.5H2h20h0.7H24V4V0H22z M7,1h1v1H7V1z M5,1h1v1H5V1z M3,1h1v1H3V1z M22,22H2L2,4h20L22,22z" /><polygon points="9.2,18.6 9.6,14.7 5.7,15.1 7.2,16.5 4.3,19.3 5,20 7.9,17.2"/><polygon points="14.8,7.5 14.4,11.3 18.3,11 16.9,9.6 19.7,6.8 19,6.1 16.2,8.9"/>',thumbnails:'<path d="M20,2h-5h-2v2v5v2v0h2v0h5v0h2v0V9V4V2H20z M20,9h-5V4h5V9z"/><path d="M20,13h-5h-2v2v5v2v0h2v0h5v0h2v0v-2v-5v-2H20z M20,20h-5v-5h5V20z"/><path d="M9,13H4H2v2v5v2v0h2v0h5v0h2v0v-2v-5v-2H9z M9,20H4v-5h5V20z"/><rect x="2" y="2" width="9" height="9"/>',outlines:'<path d="M22,0H2H0v2v20v2h2h20h2v-2V2V0H22z M2,2h12v20H2V2z M22,22h-6V2h6V22z"/><rect x="17.5" y="5" width="3" height="1" /><rect x="17.5" y="8" width="3" height="1"/><rect x="17.5" y="11" width="3" height="1"/>',search:'<circle stroke-width="2" fill="none" cx="9.5" cy="9.5" r="8.5"/><rect x="16.9" y="13.7" transform="matrix(-0.7193 0.6947 -0.6947 -0.7193 44.3315 18.4942)" width="3" height="9"/>',searchNext:'<polygon points="12,12.6 4,4.5 4,11.4 12,19.5 20,11.4 20,4.5 "/>',searchPrevious:'<polygon points="12,11.4 20,19.5 20,12.6 12,4.5 4,12.6 4,19.5 "/>',hamburgerMenu:'<rect x="2" y="4.875" width="20" height="1.5"/><rect x="2" y="11.25" width="20" height="1.5"/><rect x="2" y="17.625" width="20" height="1.5"/>',viewMenu:'<path transform="scale(1.5)" d="M8,2.9c-4.4,0-8,2.2-8,5s3.6,5,8,5s8-2.2,8-5S12.4,2.9,8,2.9z M8,11.8c-2.2,0-4-1.8-4-4c0-2.2,1.8-4,4-4s4, 1.8,4,4C12, 10,10.2,11.8,8,11.8z"/><circle class="st0" cx="12" cy="11.85" r="3.45"/>',searchOptions:'<polygon points="12,12.6 4,4.5 4,11.4 12,19.5 20,11.4 20,4.5 "/>',searchLeft:'<polygon points="11.4,12 19.5,20 12.6,20 4.5,12 12.6,4 19.5,4 "/>',searchRight:'<polygon points="12.6,12 4.5,4 11.4,4 19.5,12 11.4,20 4.5,20 "/>',showZoomBar:'<path d="M22.8,20.7l-4.4-4.4c1.1-1.6,1.8-3.5,1.8-5.6c0-5.2-4.3-9.5-9.5-9.5s-9.5,4.3-9.5,9.5s4.3,9.5,9.5,9.5 c2.1,0,4-0.7,5.6-1.8l4.4,4.4L22.8,20.7z M4.2,10.7c0-3.6,2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5s-2.9,6.5-6.5,6.5S4.2,14.3,4.2,10.7z"/><polygon points="7.2,9.2 7.2,7.2 9.2,7.2 9.2,6.2 6.2,6.2 6.2,9.2 "/><polygon points="12.2,7.2 14.2,7.2 14.2,9.2 15.2,9.2 15.2,6.2 12.2,6.2 "/><polygon points="9.2,14.2 7.2,14.2 7.2,12.2 6.2,12.2 6.2,15.2 9.2,15.2 "/><polygon points="14.2,12.2 14.2,14.2 12.2,14.2 12.2,15.2 15.2,15.2 15.2,12.2"/>',rubberbandTool:'\n <g>\n <polygon points="11.5,2 4,2 2,2 2,4 2,11.5 4,11.5 4,4 11.5,4 \t"/>\n <path d="M16,10V8h-2h-4H8v2v4v2h2h4h2v-2V10z M14,14h-4v-4h4V14z"/>\n <polygon points="20,12 20,19 19,19 19,20 12,20 12,22 20,22 22,22 22,20 22,12"/>\n <rect x="16" y="16" class="st0" width="1" height="1"/>\n <rect x="17" y="17" class="st0" width="1" height="1"/>\n <rect x="18" y="18" class="st0" width="1" height="1"/>\n </g>',magnifierTool:'\n <circle fill="none" stroke-width="2" stroke-miterlimit="10" cx="9.5" cy="9.5" r="7.5"/>\n <rect x="17" y="13.7" transform="matrix(0.7193 -0.6947 0.6947 0.7193 -7.4537 17.9238)" class="st1" width="3" height="9"/>\n <polygon points="14,8.5 10.5,8.5 10.5,5 8.5,5 8.5,8.5 5,8.5 5,10.5 8.5,10.5 8.5,14 10.5,14 10.5,10.5 14,10.5"/>\n ',rotateDocument:'\n <g>\n <path d="M18,0H5H3v4v18v2h2h13h2v-2V4V0H18z M18,22H5V4h13V22z"/>\n <polygon points="9,12 13,12 13,14 15,11.5 13,9 13,11 9,11 8,11 8,12 8,17 9,17"/>\n </g>',rotatePage:'\n <g>\n <rect x="16" y="1" width="1" height="1"/>\n <rect x="17" y="2" width="1" height="1"/>\n <rect x="18" y="3" width="1" height="1"/>\n <path class="st0" d="M19,4v1h-0.6H18h-3V2V1.3V1h1V0h-1H5H4H3v24h2h13h1.1H20V5V4H19z M18,22.1H5V2h8v5h1h1h3V22.1z"/>\n <polygon points="13,11 9,11 8,11 8,12 8,17 9,17 9,12 13,12 13,14 15,11.5 13,9"/>\n </g>'};export class PageLoadedEventArgs extends EventArgs{constructor(e,t){super();this._pageIndex=e;this._pageElement=t}get pageIndex(){return this._pageIndex}set pageIndex(e){this._pageIndex=e}get pageElement(){return this._pageElement}set pageElement(e){this._pageElement=e}}export class _ActionQueue{constructor(){this._actions=[];this._isStarted=!1}_any(){return this._actions.length>0}queue(e){var t=this._any();this._actions.push(()=>{e();this._continue()});this.isStarted&&!t&&this._continue()}_continue(){var e=this._actions.shift();e&&e()}start(){if(!this._isStarted){this._isStarted=!0;this._continue()}}get isStarted(){return this._isStarted}}if("undefined"!=typeof window){window.TouchEvent=window.TouchEvent||(()=>{});window.PointerEvent=window.PointerEvent||(()=>{});window.Touch=window.Touch||(()=>{})}const _eventSeparator=",",_touchEventsMap={startName:"touchstart",moveName:"touchmove",endName:["touchend","touchcancel","touchleave"].join(",")},_pointerEventsMap={startName:["pointerdown","pointerenter"].join(","),moveName:"pointermove",endName:["pointerup","pointercancel","pointerleave"].join(",")};export function _getTouchEventMap(){return"ontouchstart"in window?_touchEventsMap:_pointerEventsMap}export var _TouchDirection;!function(e){e[e.None=0]="None";e[e.Left=1]="Left";e[e.Up=2]="Up";e[e.Right=3]="Right";e[e.Down=4]="Down"}(_TouchDirection||(_TouchDirection={}));export class _TouchInfo{static getCenter(e,t){return new Point(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2)}static getCenterClient(e,t){return _TouchInfo.getCenter(new Point(e.clientX,e.clientY),new Point(t.clientX,t.clientY))}static getCenterScreen(e,t){return _TouchInfo.getCenter(new Point(e.screenX,e.screenY),new Point(t.screenX,t.screenY))}static getDistance(e,t){var i=Math.abs(e.clientX-t.clientX),r=Math.abs(e.clientY-t.clientY);return Math.sqrt(i*i+r*r)}static _getDirection(e,t){var i=t.clientX-e.clientX,r=t.clientY-e.clientY;return Math.abs(i)>=Math.abs(r)?i>0?_TouchDirection.Right:i<0?_TouchDirection.Left:_TouchDirection.None:r>0?_TouchDirection.Down:r<0?_TouchDirection.Up:_TouchDirection.None}constructor(e){this._systemTouchInfo=e;e instanceof Touch?this._id=e.identifier:this._id=e.pointerId;this._target=e.target;this._screenX=e.screenX;this._screenY=e.screenY;this._clientX=e.clientX;this._clientY=e.clientY}get id(){return this._id}get systemTouchInfo(){return this._systemTouchInfo}get screenX(){return this._screenX}get screenY(){return this._screenY}get clientX(){return this._clientX}get clientY(){return this._clientY}}export class _SpeedReducer{constructor(){this._timeInterval=50;this._speedInterval=5}get timeInterval(){return this._timeInterval}set timeInterval(e){this._timeInterval=e}get speedInterval(){return this._speedInterval}set speedInterval(e){this._speedInterval=e}stop(){if(null!=this._timer){clearInterval(this._timer);this._timer=null}}start(e,t,i){this.stop();if(i){var r=e>=0?1:-1,a=t>=0?1:-1,s=Math.abs(e*this._timeInterval),o=Math.abs(t*this._timeInterval),n=Math.max(s,o),h=Math.floor(n/this.speedInterval),l=Math.floor(s/h),c=Math.floor(o/h);this._timer=setInterval(()=>{s-=l;o-=c;s=Math.max(0,s);o=Math.max(0,o);s&&o?i(s*r,o*a):this.stop()},this._timeInterval)}}}export class _Scroller extends Control{static getScrollbarWidth(e){var t,i;if(!_Scroller._scrollbarWidth||e){(t=document.createElement("div")).style.width="50px";t.style.height="50px";t.style.overflow="auto";document.body.appendChild(t);(i=document.createElement("div")).style.height="60px";t.appendChild(i);_Scroller._scrollbarWidth=t.offsetWidth-t.clientWidth;document.body.removeChild(t)}return _Scroller._scrollbarWidth}}_Scroller._scrollbarWidth=null;export function _enumToArray(e){var t=[];for(var i in e)i&&i.length&&"_"!=i[0]&&!isNaN(parseInt(i))&&t.push({text:e[i],value:i});return t}export class _RubberbandOnAppliedEventArgs extends EventArgs{constructor(e){super();this._rect=e}get rect(){return this._rect}}export class _LinkClickedEventArgs extends EventArgs{constructor(e){super();this._a=e}get element(){return this._a}}export var _ParameterType;!function(e){e[e.Boolean=0]="Boolean";e[e.DateTime=1]="DateTime";e[e.Time=2]="Time";e[e.Date=3]="Date";e[e.Integer=4]="Integer";e[e.Float=5]="Float";e[e.String=6]="String"}(_ParameterType||(_ParameterType={}));export var CatalogItemType;!function(e){e[e.Folder=0]="Folder";e[e.File=1]="File";e[e.Report=2]="Report"}(CatalogItemType||(CatalogItemType={}));export class QueryLoadingDataEventArgs extends EventArgs{constructor(e){super();this._data=e||{}}get data(){return this._data}}export class _ExecutionStatus{}_ExecutionStatus.loaded="Loaded";_ExecutionStatus.rendering="Rendering";_ExecutionStatus.completed="Completed";_ExecutionStatus.stopped="Stopped";_ExecutionStatus.cleared="Cleared";_ExecutionStatus.notFound="NotFound";export var _ActionKind;!function(e){e[e.Bookmark=0]="Bookmark";e[e.Custom=1]="Custom"}(_ActionKind||(_ActionKind={}));export var MouseMode;!function(e){e[e.SelectTool=0]="SelectTool";e[e.MoveTool=1]="MoveTool";e[e.RubberbandTool=2]="RubberbandTool";e[e.MagnifierTool=3]="MagnifierTool"}(MouseMode||(MouseMode={}));export var ViewMode;!function(e){e[e.Single=0]="Single";e[e.Continuous=1]="Continuous"}(ViewMode||(ViewMode={}));export var ZoomMode;!function(e){e[e.Custom=0]="Custom";e[e.PageWidth=1]="PageWidth";e[e.WholePage=2]="WholePage"}(ZoomMode||(ZoomMode={}));export var _ViewerActionType;!function(e){e[e.TogglePaginated=0]="TogglePaginated";e[e.Print=1]="Print";e[e.Portrait=2]="Portrait";e[e.Landscape=3]="Landscape";e[e.ShowPageSetupDialog=4]="ShowPageSetupDialog";e[e.FirstPage=5]="FirstPage";e[e.PrePage=6]="PrePage";e[e.NextPage=7]="NextPage";e[e.LastPage=8]="LastPage";e[e.PageNumber=9]="PageNumber";e[e.PageCountLabel=10]="PageCountLabel";e[e.Backward=11]="Backward";e[e.Forward=12]="Forward";e[e.SelectTool=13]="SelectTool";e[e.MoveTool=14]="MoveTool";e[e.Continuous=15]="Continuous";e[e.Single=16]="Single";e[e.ZoomOut=17]="ZoomOut";e[e.ZoomIn=18]="ZoomIn";e[e.ZoomValue=19]="ZoomValue";e[e.FitWholePage=20]="FitWholePage";e[e.FitPageWidth=21]="FitPageWidth";e[e.ToggleFullScreen=22]="ToggleFullScreen";e[e.ShowHamburgerMenu=23]="ShowHamburgerMenu";e[e.ShowViewMenu=24]="ShowViewMenu";e[e.ShowSearchBar=25]="ShowSearchBar";e[e.ShowThumbnails=26]="ShowThumbnails";e[e.ShowOutlines=27]="ShowOutlines";e[e.ShowExportsPanel=28]="ShowExportsPanel";e[e.ShowPageSetupPanel=29]="ShowPageSetupPanel";e[e.ShowZoomBar=30]="ShowZoomBar";e[e.ShowSearchOptions=31]="ShowSearchOptions";e[e.SearchPrev=32]="SearchPrev";e[e.SearchNext=33]="SearchNext";e[e.SearchMatchCase=34]="SearchMatchCase";e[e.SearchMatchWholeWord=35]="SearchMatchWholeWord";e[e.RubberbandTool=36]="RubberbandTool";e[e.MagnifierTool=37]="MagnifierTool";e[e.RotateDocument=38]="RotateDocument";e[e.RotatePage=39]="RotatePage"}(_ViewerActionType||(_ViewerActionType={}));export var _RotateAngle;!function(e){e[e.NoRotate=0]="NoRotate";e[e.Rotation90=1]="Rotation90";e[e.Rotation180=2]="Rotation180";e[e.Rotation270=3]="Rotation270"}(_RotateAngle||(_RotateAngle={}));export var _PaperKind;!function(e){e[e.Custom=0]="Custom";e[e.Letter=1]="Letter";e[e.LetterSmall=2]="LetterSmall";e[e.Tabloid=3]="Tabloid";e[e.Ledger=4]="Ledger";e[e.Legal=5]="Legal";e[e.Statement=6]="Statement";e[e.Executive=7]="Executive";e[e.A3=8]="A3";e[e.A4=9]="A4";e[e.A4Small=10]="A4Small";e[e.A5=11]="A5";e[e.B4=12]="B4";e[e.B5=13]="B5";e[e.Folio=14]="Folio";e[e.Quarto=15]="Quarto";e[e.Standard10x14=16]="Standard10x14";e[e.Standard11x17=17]="Standard11x17";e[e.Note=18]="Note";e[e.Number9Envelope=19]="Number9Envelope";e[e.Number10Envelope=20]="Number10Envelope";e[e.Number11Envelope=21]="Number11Envelope";e[e.Number12Envelope=22]="Number12Envelope";e[e.Number14Envelope=23]="Number14Envelope";e[e.CSheet=24]="CSheet";e[e.DSheet=25]="DSheet";e[e.ESheet=26]="ESheet";e[e.DLEnvelope=27]="DLEnvelope";e[e.C5Envelope=28]="C5Envelope";e[e.C3Envelope=29]="C3Envelope";e[e.C4Envelope=30]="C4Envelope";e[e.C6Envelope=31]="C6Envelope";e[e.C65Envelope=32]="C65Envelope";e[e.B4Envelope=33]="B4Envelope";e[e.B5Envelope=34]="B5Envelope";e[e.B6Envelope=35]="B6Envelope";e[e.ItalyEnvelope=36]="ItalyEnvelope";e[e.MonarchEnvelope=37]="MonarchEnvelope";e[e.PersonalEnvelope=38]="PersonalEnvelope";e[e.USStandardFanfold=39]="USStandardFanfold";e[e.GermanStandardFanfold=40]="GermanStandardFanfold";e[e.GermanLegalFanfold=41]="GermanLegalFanfold";e[e.IsoB4=42]="IsoB4";e[e.JapanesePostcard=43]="JapanesePostcard";e[e.Standard9x11=44]="Standard9x11";e[e.Standard10x11=45]="Standard10x11";e[e.Standard15x11=46]="Standard15x11";e[e.InviteEnvelope=47]="InviteEnvelope";e[e.LetterExtra=50]="LetterExtra";e[e.LegalExtra=51]="LegalExtra";e[e.TabloidExtra=52]="TabloidExtra";e[e.A4Extra=53]="A4Extra";e[e.LetterTransverse=54]="LetterTransverse";e[e.A4Transverse=55]="A4Transverse";e[e.LetterExtraTransverse=56]="LetterExtraTransverse";e[e.APlus=57]="APlus";e[e.BPlus=58]="BPlus";e[e.LetterPlus=59]="LetterPlus";e[e.A4Plus=60]="A4Plus";e[e.A5Transverse=61]="A5Transverse";e[e.B5Transverse=62]="B5Transverse";e[e.A3Extra=63]="A3Extra";e[e.A5Extra=64]="A5Extra";e[e.B5Extra=65]="B5Extra";e[e.A2=66]="A2";e[e.A3Transverse=67]="A3Transverse";e[e.A3ExtraTransverse=68]="A3ExtraTransverse";e[e.JapaneseDoublePostcard=69]="JapaneseDoublePostcard";e[e.A6=70]="A6";e[e.JapaneseEnvelopeKakuNumber2=71]="JapaneseEnvelopeKakuNumber2";e[e.JapaneseEnvelopeKakuNumber3=72]="JapaneseEnvelopeKakuNumber3";e[e.JapaneseEnvelopeChouNumber3=73]="JapaneseEnvelopeChouNumber3";e[e.JapaneseEnvelopeChouNumber4=74]="JapaneseEnvelopeChouNumber4";e[e.LetterRotated=75]="LetterRotated";e[e.A3Rotated=76]="A3Rotated";e[e.A4Rotated=77]="A4Rotated";e[e.A5Rotated=78]="A5Rotated";e[e.B4JisRotated=79]="B4JisRotated";e[e.B5JisRotated=80]="B5JisRotated";e[e.JapanesePostcardRotated=81]="JapanesePostcardRotated";e[e.JapaneseDoublePostcardRotated=82]="JapaneseDoublePostcardRotated";e[e.A6Rotated=83]="A6Rotated";e[e.JapaneseEnvelopeKakuNumber2Rotated=84]="JapaneseEnvelopeKakuNumber2Rotated";e[e.JapaneseEnvelopeKakuNumber3Rotated=85]="JapaneseEnvelopeKakuNumber3Rotated";e[e.JapaneseEnvelopeChouNumber3Rotated=86]="JapaneseEnvelopeChouNumber3Rotated";e[e.JapaneseEnvelopeChouNumber4Rotated=87]="JapaneseEnvelopeChouNumber4Rotated";e[e.B6Jis=88]="B6Jis";e[e.B6JisRotated=89]="B6JisRotated";e[e.Standard12x11=90]="Standard12x11";e[e.JapaneseEnvelopeYouNumber4=91]="JapaneseEnvelopeYouNumber4";e[e.JapaneseEnvelopeYouNumber4Rotated=92]="JapaneseEnvelopeYouNumber4Rotated";e[e.Prc16K=93]="Prc16K";e[e.Prc32K=94]="Prc32K";e[e.Prc32KBig=95]="Prc32KBig";e[e.PrcEnvelopeNumber1=96]="PrcEnvelopeNumber1";e[e.PrcEnvelopeNumber2=97]="PrcEnvelopeNumber2";e[e.PrcEnvelopeNumber3=98]="PrcEnvelopeNumber3";e[e.PrcEnvelopeNumber4=99]="PrcEnvelopeNumber4";e[e.PrcEnvelopeNumber5=100]="PrcEnvelopeNumber5";e[e.PrcEnvelopeNumber6=101]="PrcEnvelopeNumber6";e[e.PrcEnvelopeNumber7=102]="PrcEnvelopeNumber7";e[e.PrcEnvelopeNumber8=103]="PrcEnvelopeNumber8";e[e.PrcEnvelopeNumber9=104]="PrcEnvelopeNumber9";e[e.PrcEnvelopeNumber10=105]="PrcEnvelopeNumber10";e[e.Prc16KRotated=106]="Prc16KRotated";e[e.Prc32KRotated=107]="Prc32KRotated";e[e.Prc32KBigRotated=108]="Prc32KBigRotated";e[e.PrcEnvelopeNumber1Rotated=109]="PrcEnvelopeNumber1Rotated";e[e.PrcEnvelopeNumber2Rotated=110]="PrcEnvelopeNumber2Rotated";e[e.PrcEnvelopeNumber3Rotated=111]="PrcEnvelopeNumber3Rotated";e[e.PrcEnvelopeNumber4Rotated=112]="PrcEnvelopeNumber4Rotated";e[e.PrcEnvelopeNumber5Rotated=113]="PrcEnvelopeNumber5Rotated";e[e.PrcEnvelopeNumber6Rotated=114]="PrcEnvelopeNumber6Rotated";e[e.PrcEnvelopeNumber7Rotated=115]="PrcEnvelopeNumber7Rotated";e[e.PrcEnvelopeNumber8Rotated=116]="PrcEnvelopeNumber8Rotated";e[e.PrcEnvelopeNumber9Rotated=117]="PrcEnvelopeNumber9Rotated";e[e.PrcEnvelopeNumber10Rotated=118]="PrcEnvelopeNumber10Rotated"}(_PaperKind||(_PaperKind={}));export class RequestEventArgs extends EventArgs{constructor(e,t){super();this._url=e;this._settings=t}get url(){return this._url}set url(e){this._url=e}get settings(){return this._settings}set settings(e){this._settings=e}}_addCultureInfo("Viewer",{cancel:"Cancel",ok:"OK",bottom:"Bottom:",top:"Top:",right:"Right:",left:"Left:",margins:"Margins(inches)",orientation:"Orientation:",paperKind:"Paper Kind:",pageSetup:"Page Setup",landscape:"Landscape",portrait:"Portrait",pageNumber:"Page Number",zoomFactor:"Zoom Factor",paginated:"Paginated",print:"Print",search:"Search",matchCase:"Match case",wholeWord:"Match whole word only",searchResults:"Search Results",previousPage:"Previous Page",nextPage:"Next Page",firstPage:"First Page",lastPage:"Last Page",backwardHistory:"Backward",forwardHistory:"Forward",pageCount:"Page Count",selectTool:"Select Tool",moveTool:"Move Tool",continuousMode:"Continuous Page View",singleMode:"Single Page View",wholePage:"Fit Whole Page",pageWidth:"Fit Page Width",zoomOut:"Zoom Out",zoomIn:"Zoom In",rubberbandTool:"Zoom by Selection",magnifierTool:"Magnifier",rotatePage:"Rotate Page",rotateDocument:"Rotate Document",exports:"Export",fullScreen:"Full Screen",exitFullScreen:"Exit Full Screen",hamburgerMenu:"Tools",showSearchBar:"Show Search Bar",viewMenu:"Layout Options",searchOptions:"Search Options",matchCaseMenuItem:"Match Case",wholeWordMenuItem:"Match Whole Word",thumbnails:"Page Thumbnails",outlines:"Document Map",loading:"Loading...",pdfExportName:"Adobe PDF",docxExportName:"Open XML Word",xlsxExportName:"Open XML Excel",docExportName:"Microsoft Word",xlsExportName:"Microsoft Excel",mhtmlExportName:"Web archive (MHTML)",htmlExportName:"HTML document",rtfExportName:"RTF document",metafileExportName:"Compressed metafiles",csvExportName:"CSV",tiffExportName:"Tiff images",bmpExportName:"BMP images",emfExportName:"Enhanced metafile",gifExportName:"GIF images",jpgExportName:"JPEG images",jpegExportName:"JPEG images",pngExportName:"PNG images",abstractMethodException:"It is an abstract method, please implement it.",cannotRenderPageNoViewPage:"Cannot render page without document source and view page.",cannotRenderPageNoDoc:"Cannot render page without document source and view page.",exportFormat:"Export format:",exportOptionTitle:"Export options",documentRestrictionsGroup:"Document restrictions",passwordSecurityGroup:"Password security",outputRangeGroup:"Output range",documentInfoGroup:"Document info",generalGroup:"General",docInfoTitle:"Title",docInfoAuthor:"Author",docInfoManager:"Manager",docInfoOperator:"Operator",docInfoCompany:"Company",docInfoSubject:"Subject",docInfoComment:"Comment",docInfoCreator:"Creator",docInfoProducer:"Producer",docInfoCreationTime:"Creation time",docInfoRevisionTime:"Revision time",docInfoKeywords:"Keywords",embedFonts:"Embed TrueType fonts",pdfACompatible:"PDF/A compatible (level 2B)",useCompression:"Use compression",useOutlines:"Generate outlines",allowCopyContent:"Allow content copying or extraction",allowEditAnnotations:"Allow annotations editing",allowEditContent:"Allow content editing",allowPrint:"Allow printing",ownerPassword:"Permissions (owner) password:",userPassword:"Document open (user) password:",encryptionType:"Encryption level:",paged:"Paged",showNavigator:"Show Navigator",navigatorPosition:"Navigator Position",singleFile:"Single File",tolerance:"Tolerance when detecting text bounds (points):",pictureLayer:"Use separate picture layer",metafileType:"Metafile Type:",monochrome:"Monochrome",resolution:"Resolution:",outputRange:"Page range:",outputRangeInverted:"Inverted",showZoomBar:"Zoom Bar",searchPrev:"Search Previous",searchNext:"Search Next",checkMark:"✓",exportOk:"Export...",cannotSearch:"Search requires a document source to be specified.",parameters:"Parameters",requiringParameters:"Please input parameters.",nullParameterError:"Value cannot be null.",invalidParameterError:"Invalid input.",parameterNoneItemsSelected:"(none)",parameterAllItemsSelected:"(all)",parameterSelectAllItemText:"(Select All)",selectParameterValue:"(select value)",apply:"Apply",errorOccured:"An error has occured."});export const ViewerBaseClsNames={applyButton:"wj-applybutton",btnSearch:"wj-btn-search",container:"wj-viewer-container",contents:"wj-contents",dialogFooter:"wj-dialog-footer",dialogHeader:"wj-dialog-header",exportContainer:"wj-exportcontainer",exportEditor:"wj-export-editor",exportFormat:"wj-exportformat",exportFormats:"wj-exportformats",exportFormatsFooter:"wj-exportformats-footer",exportFormatsGroup:"wj-exportformats-group",exportFormatsWrapper:"wj-exportformats-wrapper",footer:"wj-viewer-footer",headers:"wj-headers",hostElement:"wj-viewer",inputZoom:"wj-input-zoom",leftpanel:"wj-viewer-leftpanel",loading:"wj-loading",magnifier:"wj-magnifier",miniToolbar:"wj-mini-toolbar",nav:"wj-nav",outer:"wj-viewer-outer",outlinesTree:"wj-outlines-tree",pageCount:"wj-pagecount",pageNumber:"wj-pagenumber",pageSetupContainer:"wj-pagesetupcontainer",pageSetupFooter:"wj-pagesetup-footer",pageThumbnail:"wj-pagethumbnail",pageViewContinuous:"wj-pageview-continuous",pageViewPagesContainer:"wj-pageview-pagescontainer",pageViewSingle:"wj-pageview-single",pageViewVScroller:"wj-pageview-vscroller",pagesWrapper:"wj-pages-wrapper",pageview:"wj-pageview",parameterContainer:"wj-parametercontainer",parameterControl:"wj-parametercontrol",parameterErrorshidden:"wj-parametererrors-hidden",parameterHead:"wj-parameterhead",parameterHidden:"wj-parametererrors-hidden",parametersContainer:"wj-parameterscontainer",rubberBand:"wj-rubberband",searchBar:"wj-searchbar",searchBox:"wj-searchbox",searchContainer:"wj-searchcontainer",searchItem:"wj-search-item",searchNext:"wj-btn-searchnext",searchOption:"wj-searchoption",searchPage:"wj-search-page",searchPre:"wj-btn-searchpre",searchResult:"wj-searchresult",searchResultList:"wj-searchresultlist",searchText:"wj-search-text",searchWrapper:"search-wrapper",searchbtnGroups:"wj-searchbtn-groups",separator:"wj-separator",splitter:"wj-viewer-splitter",tabContent:"wj-tabcontent",tabContentInner:"wj-tabcontent-inner",tabContentWrapper:"wj-tabcontent-wrapper",tabPane:"wj-tabpane",tabTitle:"wj-tabtitle",tabTitleWrapper:"wj-tabtitle-wrapper",tabsleft:"wj-viewer-tabsleft",tabtitle:"wj-tabtitle",tabtitleWrapper:"wj-tabtitle-wrapper",thumbnailItem:"wj-thumbnail-item",thumbnailList:"wj-thumbnaillist",toolbar:"wj-toolbar",toolbarContainer:"wj-toolbarcontainer",toolbarMove:"wj-toolbar-move",toolbarWrapper:"wj-toolbarwrapper",vScrollerWrapper:"wj-vscroller-wrapper",viewPage:"wj-view-page",viewPanelContainer:"wj-viewpanel-container",viewerLoading:"wj-viewer-loading",viewerMenu:"wj-viewer-menu",zoomBar:"wj-zoombar"};export class _VScroller extends _Scroller{constructor(e){super(e);this._height=100;this._max=100;this._desiredValue=0;this.valueChanged=new Event;var t;t=this.getTemplate();this.applyTemplate(null,t,{_wrapper:"wrapper"});this.hostElement.style.width=_Scroller.getScrollbarWidth()+1+"px";this.addEventListener(this.hostElement,"scroll",()=>{this.onValueChanged()})}static get controlTemplate(){_VScroller._ctrlTemplate||(_VScroller._ctrlTemplate=`<div class="${ViewerBaseClsNames.vScrollerWrapper}" wj-part="wrapper"></div>`);return _VScroller._ctrlTemplate}static set controlTemplate(e){_VScroller._ctrlTemplate=e}onValueChanged(){this._desiredValue!=this.value&&this.valueChanged.raise(this)}preventScrollEvent(){this._desiredValue=this.hostElement.scrollTop}get height(){return this._height}set height(e){if(e!==this._height){this._height=e;this.invalidate()}}get value(){return this.hostElement.scrollTop}set value(e){this.hostElement.scrollTop=e;this.preventScrollEvent()}get max(){return this._max}set max(e){if(this._max!==e){this._max=e;this.invalidate()}}refresh(e=!0){super.refresh(e);var t=this._height+"px";this.hostElement.style.height!==t&&(this.hostElement.style.height=t);var i=this._max+this.hostElement.clientHeight+"px";this._wrapper.style.height!==i&&(this._wrapper.style.height=i);this.preventScrollEvent()}}_VScroller._ctrlTemplate="";export var _UnitType;!function(e){e[e.Document=0]="Document";e[e.Inch=1]="Inch";e[e.Mm=2]="Mm";e[e.Pica=3]="Pica";e[e.Point=4]="Point";e[e.Twip=5]="Twip";e[e.InHs=6]="InHs";e[e.Display=7]="Display";e[e.Cm=8]="Cm";e[e.Dip=9]="Dip"}(_UnitType||(_UnitType={}));export class _Unit{constructor(e,t=_UnitType.Dip){_Unit._initUnitTypeDic();if(isObject(e)){var i=e;e=i.value;t=i.units}else if(isString(e)){var r=parseFloat(e);if(!isNaN(r)){t=_Unit._unitTypeDic[e.substr(r.toString().length)];e=r}}this._value=e;this._units=t;this._valueInPixel=_Unit.convertValue(e,t,_UnitType.Dip)}static _initUnitTypeDic(){if(!_Unit._unitTypeDic){_Unit._unitTypeDic={};for(var e in _Unit._unitTypes)_Unit._unitTypeDic[_Unit._unitTypeDic[e]=_Unit._unitTypes[e]]=e}}get value(){return this._value}get units(){return this._units}get valueInPixel(){return this._valueInPixel}toString(){return _Unit.toString(this)}static toString(e){return null==e.value?"":e.value+_Unit._unitTypeDic[e.units]}static convertValue(e,t,i){if(t===i)return e;var r;switch(t){case _UnitType.Document:r=e/_Unit._DocumentUnitsPerInch;break;case _UnitType.Inch:r=e;break;case _UnitType.Mm:r=e/_Unit._MmPerInch;break;case _UnitType.Pica:r=e/_Unit._PicaPerInch;break;case _UnitType.Point:r=e/_Unit._PointsPerInch;break;case _UnitType.Twip:r=e/_Unit._TwipsPerInch;break;case _UnitType.InHs:r=e/100;break;case _UnitType.Display:r=e/_Unit._DisplayPerInch;break;case _UnitType.Cm:r=e/_Unit._CmPerInch;break;case _UnitType.Dip:r=e/_Unit._DipPerInch;break;default:throw"Invalid from _UnitType: "+t}switch(i){case _UnitType.Document:return r*_Unit._DocumentUnitsPerInch;case _UnitType.Inch:return r;case _UnitType.Mm:return r*_Unit._MmPerInch;case _UnitType.Pica:return r*_Unit._PicaPerInch;case _UnitType.Point:return r*_Unit._PointsPerInch;case _UnitType.Twip:return r*_Unit._TwipsPerInch;case _UnitType.InHs:return 100*r;case _UnitType.Display:return r*_Unit._DisplayPerInch;case _UnitType.Cm:return r*_Unit._CmPerInch;case _UnitType.Dip:return r*_Unit._DipPerInch;default:throw"Invalid to _UnitType: "+i}}}_Unit._MmPerInch=25.4;_Unit._DocumentUnitsPerInch=300;_Unit._PointsPerInch=72;_Unit._TwipsPerInch=1440;_Unit._PicaPerInch=6;_Unit._CmPerInch=_Unit._MmPerInch/10;_Unit._DisplayPerInch=75;_Unit._DipPerInch=96;_Unit._unitTypes={doc:_UnitType.Document,in:_UnitType.Inch,mm:_UnitType.Mm,pc:_UnitType.Pica,pt:_UnitType.Point,tw:_UnitType.Twip,inhs:_UnitType.InHs,dsp:_UnitType.Display,cm:_UnitType.Cm,dip:_UnitType.Dip,px:_UnitType.Dip};export class _Promise{constructor(){this._callbacks=[];this._finished=!1}get isFinished(){return this._finished}cancel(){this._finished=!0}then(e,t){this._callbacks.push({onFulfilled:e,onRejected:t});return this}catch(e){return this.then(null,e)}resolve(e){setTimeout(()=>{try{this.onFulfilled(e)}catch(e){this.onRejected(e)}},0);return this}reject(e){setTimeout(()=>{this.onRejected(e)},0);return this}onFulfilled(e){if(!this._finished){this._finished=!0;for(var t;t=this._callbacks.shift();)if(t.onFulfilled){var i=t.onFulfilled(e);void 0!==i&&(e=i)}}}onRejected(e){if(!this._finished){this._finished=!0;for(var t;t=this._callbacks.shift();)if(t.onRejected){var i=t.onRejected(e);this.onFulfilled(i);return}throw e}}}export class _CompositedPromise extends _Promise{constructor(e){super();this._promises=e;this._init()}_init(){if(this._promises&&this._promises.length){var e=this._promises.length,t=0,i=[],r=!1;this._promises.some(a=>{a.then(a=>{if(!r){i.push(a);++t>=e&&this.resolve(i)}}).catch(e=>{r=!0;this.reject(e)});return r})}else this.reject("No promises in current composited promise.")}}const _wjEventsName="__wjEvents";export const _abstractMethodExceptionText="It is an abstract method, please implement it.";export const _hiddenCss="hidden";export function _pointMove(e,t,i,r){var a,s=e?1:-1;if(i instanceof Point){a=i.x;r=i.y}else{a=i;r=r||0}return new Point(t.x+s*a,t.y+s*r)}export function _disableCache(e){return e+(-1==e.indexOf("?")?"?":"&")+"_="+(new Date).getTime()}export function _removeChildren(e,t){if(e&&e.children)for(var i=e.children,r=i.length-1;r>-1;r--){var a=i[r];if(null==t||t(a)){var s=a.querySelector("."+ControlClsNames.hostElement);s&&(s=Control.getControl(s))&&s.dispose();e.removeChild(a)}}}export function _toDOMs(e){var t,i=document.createElement("div"),r=document.createDocumentFragment();i.innerHTML=e;for(;t=i.firstChild;)r.appendChild(t);return r}export function _addEvent(e,t,i,r){for(var a,s=t.split(","),o=0;o<s.length;o++){a=s[o].trim();e.addEventListener?e.addEventListener(a,i,r):e.attachEvent?e.attachEvent("on"+a,i):e["on"+a]=i}}export function _removeEvent(e,t,i){for(var r,a=t.split(","),s=0;s<a.length;s++){r=a[s].trim();e.removeEventListener?e.removeEventListener(r,i):e.detachEvent?e.detachEvent("on"+r,i):e["on"+r]=null}}export function _addWjHandler(e,t,i,r){if(e){var a=t.__wjEvents;a||(a=t.__wjEvents={});var s=a[e];s||(s=a[e]=[]);s.push(i)}t.addHandler(i,r)}export function _removeAllWjHandlers(e,t){if(e){var i=t.__wjEvents;if(i){var r=i[e];r&&r.forEach(e=>t.removeHandler(e))}}}export function _getErrorMessage(e){var t;if(_ArReportService.IsError(e))t=e.json.Error.Description;else{t=e;if(e.Message){t=e.Message;e.ExceptionMessage&&(t+="<br/>"+e.ExceptionMessage)}}return t||culture.Viewer.errorOccured}export function _twipToPixel(e){return _Unit.convertValue(e,_UnitType.Twip,_UnitType.Dip)}export function _pixelToTwip(e){return _Unit.convertValue(e,_UnitType.Dip,_UnitType.Twip)}export function _transformSvg(e,t,i,r,a){r=null==r?1:r;var s=e.querySelector("g");if(s){var o="scale("+r+")";if(null!=a)switch(a){case _RotateAngle.Rotation90:o+=" rotate(90)";o+=" translate(0 "+-i+")";break;case _RotateAngle.Rotation180:o+=" rotate(180)";o+=" translate("+-t+" "+-i+")";break;case _RotateAngle.Rotation270:o+=" rotate(270)";o+=" translate("+-t+" 0)"}s.setAttribute("transform",o);if(isIE){(e=s.parentNode).removeChild(s);e.appendChild(s)}}return e}export function _getTransformedPosition(e,t,i,r){var a,s,o={x:_twipToPixel(e.x),y:_twipToPixel(e.y),width:_twipToPixel(e.width),height:_twipToPixel(e.height)};switch(i){case _RotateAngle.NoRotate:a=o.y;s=o.x;break;case _RotateAngle.Rotation90:a=o.x;s=t.height.valueInPixel-o.y-o.height;break;case _RotateAngle.Rotation180:a=t.height.valueInPixel-o.y-o.height;s=t.width.valueInPixel-o.x-o.width;break;case _RotateAngle.Rotation270:a=t.width.valueInPixel-o.x-o.width;s=o.y}return new Point(s*r,a*r)}export function _getRotatedSize(e,t){return t===_RotateAngle.NoRotate||t===_RotateAngle.Rotation180?e:{width:e.height,height:e.width}}export function _strEndsWith(e,t,i=!1){return i?e.slice(-t.length).toLowerCase()===t.toLowerCase():e.slice(-t.length)===t}export function _isEqual(e,t){return e&&t&&isFunction(e.valueOf)&&isFunction(t.valueOf)?e.valueOf()===t.valueOf():e===t}export class _ParametersEditor extends Control{constructor(e){super(e);this._parameters={};this._errors=[];this._errorsVisible=!1;this._savingParam=!1;this.commit=new Event;this.validate=new Event;addClass(this.hostElement,ViewerBaseClsNames.parametersContainer);this._updateErrorsVisible()}_setErrors(e){this._errors=e;this._updateErrorDiv()}get parameters(){return this._parameters}get itemsSource(){return this._itemSources}set itemsSource(e){this._itemSources=e;this._parameters={};this._render();var t=[];(e||[]).forEach(e=>{e.error&&t.push({key:e.name,value:e.error})});this._setErrors(t)}set savingParam(e){this._savingParam=e}_reset(){this._lastEditedParam=null}_setErrorsVisible(e){this._errorsVisible=e;this._updateErrorsVisible()}_updateErrorsVisible(){this._errorsVisible?removeClass(this.hostElement,_ParametersEditor._errorsHiddenCss):addClass(this.hostElement,_ParametersEditor._errorsHiddenCss)}onCommit(){this.commit.raise(this)}onValidate(){this.validate.raise(this);this._setErrorsVisible(!1)}_deferValidate(e,t,i){if(null!=this._validateTimer){clearTimeout(this._validateTimer);this._validateTimer=null}this._savingParam=!0;this._validateTimer=setTimeout(()=>{null!=t&&t();this.onValidate();null!=i&&i();this._lastEditedParam=e;this._validateTimer=null},500)}_updateErrorDiv(){for(var e=this._errors||[],t=this.hostElement.querySelectorAll(".error"),i=0;i<t.length;i++)t[i].parentNode.removeChild(t[i]);for(i=0;i<e.length;i++){var r,a=this.hostElement.querySelector("*["+_ParametersEditor._paramIdAttr+'="'+e[i].key+'"]'),s=e[i].value;if(a){(r=document.createElement("div")).innerHTML=s;r.className="error";a.appendChild(r)}}}_render(){var e;_removeChildren(this.hostElement,t=>{if(!this._lastEditedParam||t.getAttribute(_ParametersEditor._paramIdAttr)!==this._lastEditedParam)return!0;e=t});if(!this._itemSources)return;this._itemSources.forEach(t=>{if(this._lastEditedParam!==t.name){if(!t.hidden){var i=document.createElement("div"),r=document.createElement("span"),a=null;i.className=ViewerBaseClsNames.parameterContainer;r.className=ViewerBaseClsNames.parameterHead;r.innerHTML=t.prompt||t.name;if(isArray(t.allowedValues))a=this._generateComboEditor(t);else switch(t.dataType){case _ParameterType.Boolean:a=this._generateBoolEditor(t);break;case _ParameterType.DateTime:case _ParameterType.Time:case _ParameterType.Date:a=this._generateDateTimeEditor(t);break;case _ParameterType.Integer:case _ParameterType.Float:a=this._generateNumberEditor(t);break;case _ParameterType.String:a=this._generateStringEditor(t)}if(a){a.className+=" "+ViewerBaseClsNames.parameterControl;i.setAttribute(_ParametersEditor._paramIdAttr,t.name);i.appendChild(r);i.appendChild(a);e?this.hostElement.insertBefore(i,e):this.hostElement.appendChild(i)}}}else{this._lastEditedParam=null;e=null}});var t=document.createElement("input");t.type="button";t.value=culture.Viewer.apply;t.className=ViewerBaseClsNames.applyButton;const clickHandler=()=>{if(this._savingParam)setTimeout(clickHandler,100);else{if(this._validateParameters()){this._errors=[];this.onCommit()}this._setErrorsVisible(!0)}};this.addEventListener(t,"click",clickHandler);this.hostElement.appendChild(t)}refresh(e=!0){super.refresh(e);if(e){this._reset();this._render()}}_validateParameters(){for(var e,t=this.hostElement.querySelectorAll("textarea"),i=[],r=this.itemsSource,a=0;a<r.length;a++){var s=r[a];e=this.hostElement.querySelector("["+_ParametersEditor._paramIdAttr+'="'+s.name+'"]');null!=s.value&&""!==s.value||s.nullable||s.dataType===_ParameterType.String&&s.allowBlank||this.parameters.hasOwnProperty(s.name)||this.parameters[s.name]||e&&i.push({key:s.name,value:culture.Viewer.nullParameterError})}for(a=0;a<t.length;a++){var o=t.item(a),n=!0;switch(parseInt(o.getAttribute("data-type"))){case _ParameterType.Date:case _ParameterType.DateTime:case _ParameterType.Time:n=_ParametersEditor._checkValueType(o.value,isDate);break;case _ParameterType.Float:n=_ParametersEditor._checkValueType(o.value,_ParametersEditor._isFloat);break;case _ParameterType.Integer:n=_ParametersEditor._checkValueType(o.value,isInt)}n||i.push({key:o.parentElement.id,value:culture.Viewer.invalidParameterError})}this._setErrors(i);return i.length<=0}static _isFloat(e){return!isNaN(parseFloat(e))}static _checkValueType(e,t){for(var i=e.split("\n"),r=0;r<i.length;r++)if(!(i[r].trim().length<=0||t(i[r].trim())))return!1;return!0}_generateComboEditor(e){var t,i,r,a=[],s=document.createElement("div"),o=[],n=e.allowedValues&&e.allowedValues.length>0,h=n&&e.allowedValues.filter(t=>_isEqual(t.value,e.value)).length>0;if(e.multiValue)t=new _MultiSelectEx(s);else{t=new ComboBox(s,{keyActionPrintCharacters:0,keyActionTab:0});e.nullable?a.push({name:culture.Viewer.parameterNoneItemsSelected,value:null}):!n||null!=e.value&&h||a.push({name:culture.Viewer.selectParameterValue,value:null})}t.isEditable=!1;t.displayMemberPath="name";t.selectedValuePath="value";t.isDisabled=!n;for(var l=0;l<e.allowedValues.length;l++)a.push({name:e.allowedValues[l].key,value:e.allowedValues[l].value});t.itemsSource=a;if(e.multiValue){i=t;if(n){if(e.value){for(l=0;l<e.value.length;l++)for(var c=0;c<i.itemsSource.length;c++)if(_isEqual(i.itemsSource[c].value,e.value[l])){o.push(i.itemsSource[c]);break}i.checkedItems=o}}else i.checkedItems=[];i.lostFocus.addHandler(()=>{let t=i.checkedItems.length===(e.value||[]).length;if(t)for(let r=0;r<i.checkedItems.length;r++)i.checkedItems[r].value!==e.value[r]&&(t=!1);t||this._deferValidate(e.name,()=>{r=[];for(var t=0;t<i.checkedItems.length;t++)r.push(i.checkedItems[t].value);this._updateParameters(e,r)},()=>{r.length>0&&!e.nullable&&this._validateNullValueOfParameter(s)})})}else{t.selectedValue=n&&h?e.value:null;var d=!1;t.selectedIndexChanged.addHandler(t=>{e.value!==t.selectedValue&&this._deferValidate(e.name,()=>{if(!d){this._updateParameters(e,t.selectedValue);t.selectedValue&&t.itemsSource[0].name===culture.Viewer.selectParameterValue&&setTimeout(()=>{d=!0;var e=t.selectedValue,i=t.selectedIndex;t.itemsSource.shift();t.collectionView.refresh();t.selectedValue=e;t.selectedIndex=i-1;d=!1})}},()=>this._validateNullValueOfParameter(s))})}return s}_updateParameters(e,t){var i;this.itemsSource.some(t=>{if(t.name===e.name){i=t;return!0}return!1});this._parameters[e.name]=i.value=e.value=((e,t)=>t&&isString(e)?e.split(/[\r\n]+/):e)(t,e.multiValue)}_generateBoolEditor(e){var t,i,r=[];if(e.nullable){i=document.createElement("div");(t=new ComboBox(i,{keyActionPrintCharacters:0,keyActionTab:0})).isEditable=!1;t.displayMemberPath="name";t.selectedValuePath="value";r.push({name:"None",value:null});r.push({name:"True",value:!0});r.push({name:"False",value:!1});t.itemsSource=r;t.selectedValue=e.value;t.lostFocus.addHandler(t=>{e.value!==t.selectedValue&&this._deferValidate(e.name,()=>this._updateParameters(e,t.selectedValue))})}else{(i=document.createElement("input")).type="checkbox";i.checked=e.value;this.addEventListener(i,"click",()=>{this._deferValidate(e.name,()=>this._updateParameters(e,i.checked))})}return i}_generateStringEditor(e){var t;if(e.multiValue){t=this._createTextarea(e.value,e.dataType);e.maxLength>0&&(t.maxLength=e.maxLength)}else{(t=document.createElement("input")).type="text";e.value&&(t.value=e.value);e.maxLength>0&&(t.maxLength=e.maxLength)}this._bindTextChangedEvent(t,e,"focusout");return t}_createTextarea(e,t){var i,r=document.createElement("textarea"),a=[];t!==_ParameterType.DateTime&&t!==_ParameterType.Time&&t!==_ParameterType.Date||(i=_ParametersEditor._dateTimeFormat);if(e&&e.length>0)if(i){for(var s=0;s<e.length;s++)a.push(Globalize.formatDate(new Date(e[s]),i));r.value=a.join("\n")}else r.value=e.join("\n");r.wrap="off";r.setAttribute("data-type",t.toString());return r}_bindTextChangedEvent(e,t,i="change,keyup,paste,input"){this.addEventListener(e,i,i=>{if(i.target&&i.target.disabled)return;let r=!1;if(isArray(t.value)){const i=e.value.split("\n");let a=0;for(let e=0;e<i.length;e++)t.value[e]!=i[e]&&(a+=1);r=0===a}t.value===e.value||r||this._deferValidate(t.name,()=>this._updateParameters(t,e.value),()=>{e.value&&!t.nullable&&this._validateNullValueOfParameter(e)})})}_generateNumberEditor(e){var t,i;if(e.multiValue){t=this._createTextarea(e.value,e.dataType);this._bindTextChangedEvent(t,e,"focusout")}else{t=document.createElement("div");(i=new InputNumber(t)).format=e.dataType===_ParameterType.Integer?"n0":"n2";i.isRequired=!e.nullable;e.value&&(i.value=e.dataType===_ParameterType.Integer?parseInt(e.value):parseFloat(e.value));i.lostFocus.addHandler(()=>{e.value!==i.value&&this._deferValidate(e.name,()=>this._updateParameters(e,i.value))})}return t}_generateDateTimeEditor(e){var t,i;if(e.multiValue){(t=this._createTextarea(e.value,e.dataType)).title=_ParametersEditor._dateTimeFormat;this._bindTextChangedEvent(t,e,"focusout")}else{t=document.createElement("div");e.dataType==_ParameterType.Date?i=new InputDate(t):e.dataType==_ParameterType.DateTime?(i=new InputDateTime(t)).timeStep=60:(i=new InputTime(t,{keyActionPrintCharacters:0,keyActionTab:0})).step=60;i.isRequired=!1;null!=e.value?i.value=new Date(e.value):i.value=null;i.isRequired=!e.nullable;i.valueChanged.addHandler(()=>{this._deferValidate(e.name,()=>this._updateParameters(e,i.value))})}return t}_validateNullValueOfParameter(e){var t=this._errors;if(t&&t.length)for(var i=0;i<t.length;i++)if(t[i].key===e.parentElement.getAttribute(_ParametersEditor._paramIdAttr)){var r=e.parentElement.querySelector(".error");if(r){e.parentElement.removeChild(r);t.splice(i,1);break}}}}_ParametersEditor._paramIdAttr="param-id";_ParametersEditor._errorsHiddenCss=ViewerBaseClsNames.parameterHidden;_ParametersEditor._dateTimeFormat="MM/dd/yyyy HH:mm";export function _statusJsonReviver(e,t){if(isString(t)){if(_strEndsWith(e,"DateTime"))return new Date(t);if("width"===e||"height"===e||_strEndsWith(e,"Margin"))return new _Unit(t)}return t}export function _pageSettingsJsonReviver(e,t){return isString(t)&&("width"===e||"height"===e||_strEndsWith(e,"Margin"))?new _Unit(t):t}export function _appendQueryString(e,t){t=t||{};var i=[];for(var r in t)i.push(r+"="+encodeURIComponent(t[r]));if(i.length){var a=e.indexOf("?")<0?"?":"&";e+=a+i.join("&")}return e}export function _joinUrl(...e){for(var t=[],i=0,r=e.length;i<r;i++){var a=e[i];a&&("string"!=typeof a?t=t.concat(_joinStringUrl(a)):t.push(_prepareStringUrl(a).join("/")))}return t.join("/")}export function _joinStringUrl(e){if(null==e)return null;for(var t=[],i=0,r=e.length;i<r;i++)t=t.concat(_prepareStringUrl(e[i]));return t}export function _prepareStringUrl(e){var t=e.split("/");t.length>0&&!t[t.length-1].length&&t.splice(t.length-1);return t}export function _parseReportExecutionInfo(e){return JSON.parse(e,_statusJsonReviver)}export var _TouchEventType;!function(e){e[e.Start=0]="Start";e[e.Move=1]="Move";e[e.End=2]="End"}(_TouchEventType||(_TouchEventType={}));export class _TouchEventArgs extends EventArgs{constructor(e){super();if(e instanceof _TouchEventArgs){this._systemEvent=e.systemEvent;this._type=e.type;this._touchInfos=e.touchInfos}else{this._systemEvent=e;_TouchManager._registerTouchInfo(e);this._type=_TouchManager._isTouchStart(e.type)?_TouchEventType.Start:_TouchManager._isTouchEnd(e.type)?_TouchEventType.End:_TouchEventType.Move;this._touchInfos=_TouchManager._allTouchInfos?_TouchManager._allTouchInfos.slice():[]}}get timeStamp(){return this.systemEvent.timeStamp}get touchInfos(){return this._touchInfos}get systemEvent(){return this._systemEvent}get target(){return this.systemEvent.target}get currentTarget(){return this.systemEvent.currentTarget}get type(){return this._type}get pointersCount(){return this.touchInfos.length}get cancelBubble(){return this._systemEvent.cancelBubble}set cancelBubble(e){this._systemEvent.cancelBubble=e}preventDefault(){this._systemEvent.preventDefault()}}export class _TouchEvent extends Event{raise(e,t){super.raise(e,t)}}export class _TouchTrigger{constructor(e){this.touchMove=new _TouchEvent;this.touchStart=new _TouchEvent;this.touchEnd=new _TouchEvent;var t=getElement(e);this._element=t;var i=_TouchTrigger.getTrigger(t);if(i){var r=this._onTouchEvent.bind(this);i.touchMove.addHandler(r);i.touchStart.addHandler(r);i.touchEnd.addHandler(r);this._disposeAction=()=>{i.touchMove.removeHandler(r);i.touchStart.removeHandler(r);i.touchEnd.removeHandler(r);this._disposeAction=null}}else{var a=_getTouchEventMap(),s=this._onSystemTouchEvent.bind(this);_addEvent(t,a.startName,s);_addEvent(t,a.moveName,s);_addEvent(t,a.endName,s);_TouchTrigger.bindElement(t,this);this._disposeAction=()=>{_removeEvent(t,a.startName,s);_removeEvent(t,a.moveName,s);_removeEvent(t,a.endName,s);_TouchTrigger.unbindElement(t);this._disposeAction=null}}}static bindElement(e,t){if(e[_TouchTrigger._elementDataName])throw"Cannot bind multi _TouchTrigger on the same element.";e[_TouchTrigger._elementDataName]=t}static unbindElement(e){e[_TouchTrigger._elementDataName]=null}static getTrigger(e){return e[_TouchTrigger._elementDataName]}_onSystemTouchEvent(e){var t=this._createTouchEventArgs(e);t&&this._onTouchEvent(this,t)}_createTouchEventArgs(e){return _TouchManager._isTouchEvent(e)?new _TouchEventArgs(e):null}dispose(){this._disposeAction&&this._disposeAction()}get hostElement(){return this._element}_onTouchEvent(e,t){switch(t.type){case _TouchEventType.Start:this.onTouchStart(t);return;case _TouchEventType.Move:this.onTouchMove(t);return;case _TouchEventType.End:this.onTouchEnd(t)}}onTouchEnd(e){this.touchEnd.raise(this,e)}onTouchStart(e){this.touchStart.raise(this,e)}onTouchMove(e){this.touchMove.raise(this,e)}}_TouchTrigger._elementDataName="__wjTouchTrigger";export class _PinchEventArgs extends _TouchEventArgs{constructor(e,t,i){super(e);this._zoom=1;this._pinchType=t;this._pre=i||{};if(this.type!=_TouchEventType.End){this._pinchDistance=_TouchInfo.getDistance(this.touchInfos[0],this.touchInfos[1]);this._centerClient=_TouchInfo.getCenterClient(this.touchInfos[0],this.touchInfos[1]);this._centerScreen=_TouchInfo.getCenterScreen(this.touchInfos[0],this.touchInfos[1]);if(this.type!=_TouchEventType.Start){this._zoom=this.pinchDistance/this.prePinchDistance;this._centerClientDelta=new Point(this.centerClient.x-this.preCenterClient.x,this.centerClient.y-this.preCenterClient.y);this._centerScreenDelta=new Point(this.centerScreen.x-this.preCenterScreen.x,this.centerScreen.y-this.preCenterScreen.y)}}}get zoom(){return this._zoom}get pointersCount(){return this.type==_TouchEventType.End?0:2}get prePinchDistance(){return this._pre.pinchDistance}get pinchDistance(){return this._pinchDistance}get centerScreenDelta(){return this._centerScreenDelta}get centerClientDelta(){return this._centerClientDelta}get centerClient(){return this._centerClient}get preCenterClient(){return this._pre.centerClient}get centerScreen(){return this._centerScreen}get preCenterScreen(){return this._pre.centerScreen}get type(){return this._pinchType}}export class _PinchEvent extends _TouchEvent{raise(e,t){super.raise(e,t)}}export class _PinchTrigger extends _TouchTrigger{constructor(){super(...arguments);this.pinch=new _PinchEvent}onPinch(e){this.pinch.raise(this,e)}onTouchStart(e){this._process(e)}onTouchend(e){this._process(e)}onTouchMove(e){this._process(e)}_onPinching(e){var t=new _PinchEventArgs(e,this._preEventArgs?_TouchEventType.Move:_TouchEventType.Start,this._preEventArgs);this.onPinch(t);this._preEventArgs=t}_onPinchEnd(e){if(this._preEventArgs){var t=new _PinchEventArgs(e,_TouchEventType.End,this._preEventArgs);this.onPinch(t);this._preEventArgs=null}}_process(e){if(2==e.pointersCount)switch(e.type){case _TouchEventType.Start:case _TouchEventType.Move:this._onPinching(e);return;case _TouchEventType.End:this._onPinchEnd(e);return}else this._onPinchEnd(e)}}export class _PanEventArgs extends _TouchEventArgs{constructor(e,t,i){super(e);this._panType=null==i?e.type:i;this._client=new Point(this.touchInfo.clientX,this.touchInfo.clientY);this._screen=new Point(this.touchInfo.screenX,this.touchInfo.screenY);if(t){this._clientDelta=new Point(this.client.x-t.client.x,this.client.y-t.client.y);this._screenDelta=new Point(this.screen.x-t.screen.x,this.screen.y-t.screen.y)}}get type(){return this._panType}get clientDelta(){return this._clientDelta}get screenDelta(){return this._screenDelta}get client(){return this._client}get screen(){return this._screen}get pointersCount(){return this.type==_TouchEventType.End?0:1}get touchInfo(){return this.touchInfos[0]||{}}}export class _PanEvent extends _TouchEvent{raise(e,t){super.raise(e,t)}}export class _PanTrigger extends _TouchTrigger{constructor(){super(...arguments);this.panMove=new _PanEvent;this.panStart=new _PanEvent;this.panEnd=new _PanEvent}onPanEnd(e){this.panEnd.raise(this,e)}onPanStart(e){this.panStart.raise(this,e)}onPanMove(e){this.panMove.raise(this,e)}_prepareMove(e){this._prePanEventArgs=e;this._panEvents.queue(()=>{this.onPanMove(e)})}_prepareStart(e){this._prePanEventArgs=e;this._panEvents.queue(()=>{this.onPanStart(e)});this._clearPanStartTimer();this._panStartTimer=setTimeout(()=>{this._panEvents&&this._panEvents.start();this._clearPanStartTimer()},_PanTrigger._threhold)}_prepareEnd(e){this._prePanEventArgs=null;this._panEvents.queue(()=>{var t=e instanceof _PanEventArgs?e:new _PanEventArgs(e,null,_TouchEventType.End);this.onPanEnd(t);this._stopPan()})}_clearPanStartTimer(){if(null!=this._panStartTimer){clearTimeout(this._panStartTimer);this._panStartTimer=null}}_tryStopPan(e){this._panEvents&&this._panEvents.isStarted?this._prepareEnd(e):this._stopPan()}_stopPan(){this._clearPanStartTimer();this._panEvents=null;this._prePanEventArgs=null}_processPan(e){var t=this._createPanEventArgs(e);if(t)switch(t.type){case _TouchEventType.Start:this._prepareStart(t);return;case _TouchEventType.Move:this._prepareMove(t);return;case _TouchEventType.End:this._prepareEnd(t);return}else this._tryStopPan(e)}onTouchStart(e){super.onTouchStart(e);this._processPan(e)}onTouchMove(e){super.onTouchMove(e);this._processPan(e)}onTouchEnd(e){super.onTouchEnd(e);var t=this._createPanEventArgs(e);t?this._prepareEnd(t):this._tryStopPan(e)}_createPanEventArgs(e){if(e.type==_TouchEventType.End&&0!=e.pointersCount||e.type!=_TouchEventType.End&&1!=e.pointersCount)return null;var t=new _PanEventArgs(e,this._prePanEventArgs);if(t.type!=_TouchEventType.Start){if(!this._panEvents)return null}else this._panEvents=new _ActionQueue;return t}}_PanTrigger._threhold=10;export class _SwipeEventArgs extends _PanEventArgs{constructor(e,t,i,r){super(i);this._duration=r;this._startTouchInfo=e;this._endTouchInfo=t;var a=_pointMove(!1,new Point(this.endTouchInfo.clientX,this.endTouchInfo.clientY),new Point(this.startTouchInfo.clientX,this.startTouchInfo.clientY));this._speed=new Point(_SwipeTrigger.getSpeed(a.x,this.duration),_SwipeTrigger.getSpeed(a.y,this.duration));this._direction=_TouchInfo._getDirection(this.startTouchInfo,this.endTouchInfo)}get duration(){return this._duration}get startTouchInfo(){return this._startTouchInfo}get endTouchInfo(){return this._endTouchInfo}get speed(){return this._speed}get pointersCount(){return 1}get direction(){return this._direction}}export class _SwipeEvent extends _PanEvent{raise(e,t){super.raise(e,t)}}export class _SwipeTrigger extends _PanTrigger{constructor(){super(...arguments);this.swipe=new _SwipeEvent}static getSpeed(e,t){return e/t}onPanStart(e){super.onPanStart(e);this._panStartEventArgs=e}onPanMove(e){super.onPanMove(e);this._prePanMoveEventArgs=e}onPanEnd(e){super.onPanEnd(e);var t=this._createSwipeEventArgs(e);t&&this.onSwipe(t);this._panStartEventArgs=null;this._prePanMoveEventArgs=null}onSwipe(e){this.swipe.raise(this,e)}_createSwipeEventArgs(e){if(!this._panStartEventArgs||!this._prePanMoveEventArgs)return null;var t=e.timeStamp-this._panStartEventArgs.timeStamp;return t>_SwipeTrigger.maxDuration||_TouchInfo.getDistance(this._panStartEventArgs.touchInfo,this._prePanMoveEventArgs.touchInfo)<_SwipeTrigger.minDistance?null:new _SwipeEventArgs(this._panStartEventArgs.touchInfo,this._prePanMoveEventArgs.touchInfo,e,t)}}_SwipeTrigger.minDistance=50;_SwipeTrigger.maxDuration=300;export class _TouchManager{constructor(e,t=!0){this.touchMove=new _TouchEvent;this.touchStart=new _TouchEvent;this.touchEnd=new _TouchEvent;this.panMove=new _PanEvent;this.panStart=new _PanEvent;this.panEnd=new _PanEvent;this.swipe=new _SwipeEvent;this.pinch=new _PinchEvent;this._trigger=new _SwipeTrigger(e);this._trigger.touchStart.addHandler((e,t)=>this.onTouchStart(t));this._trigger.touchMove.addHandler((e,t)=>this.onTouchMove(t));this._trigger.touchEnd.addHandler((e,t)=>this.onTouchEnd(t));this._trigger.panStart.addHandler((e,t)=>this.onPanStart(t));this._trigger.panMove.addHandler((e,t)=>this.onPanMove(t));this._trigger.panEnd.addHandler((e,t)=>this.onPanEnd(t));this._trigger.swipe.addHandler((e,t)=>this.onSwipe(t));this._pinchTrigger=new _PinchTrigger(e);this._pinchTrigger.pinch.addHandler((e,t)=>this.onPinch(t));this.removeDefaultTouch=t}static _isTouchEvent(e){return e instanceof TouchEvent||(e.pointerType||"").toLowerCase()===_TouchManager._touchPointerName}static _isTouchStart(e){return _TouchManager._eventTypeContains(e,_getTouchEventMap().startName)}static _isTouchEnd(e){return _TouchManager._eventTypeContains(e,_getTouchEventMap().endName)}static _isTouchMove(e){return _TouchManager._eventTypeContains(e,_getTouchEventMap().moveName)}static _eventTypeContains(e,t){var i=t.split(",");e=e.toLowerCase();for(var r=0,a=i.length;r<a;r++){var s=i[r].trim().toLowerCase();if(e.indexOf(s)>-1)return!0}return!1}static _registerTouchInfo(e){if(_TouchManager._isTouchEvent(e))if(e instanceof TouchEvent){_TouchManager._allTouchInfos=[];for(var t=0,i=e.touches.length;t<i;t++)_TouchManager._allTouchInfos.push(new _TouchInfo(e.touches.item(t)))}else if(e instanceof PointerEvent){_TouchManager._allTouchInfos=_TouchManager._allTouchInfos||[];if(_TouchManager._isTouchEnd(e.type)){var r=0;for(i=_TouchManager._allTouchInfos.length;r<i;r++)if(_TouchManager._allTouchInfos[r].id==e.pointerId){_TouchManager._allTouchInfos.splice(r,1);return}return}for(r=0,i=_TouchManager._allTouchInfos.length;r<i;r++)if(_TouchManager._allTouchInfos[r].id==e.pointerId){_TouchManager._allTouchInfos[r]=new _TouchInfo(e);return}_TouchManager._allTouchInfos.push(new _TouchInfo(e))}}onPinch(e){this.pinch.raise(this,e)}onSwipe(e){this.swipe.raise(this,e)}onTouchEnd(e){this.touchEnd.raise(this,e)}onTouchStart(e){this.touchStart.raise(this,e)}onTouchMove(e){this.touchMove.raise(this,e)}onPanEnd(e){this.panEnd.raise(this,e)}onPanStart(e){this.panStart.raise(this,e)}onPanMove(e){this.panMove.raise(this,e)}get removeDefaultTouch(){return this._removeDefaultTouch}set removeDefaultTouch(e){this._removeDefaultTouch=e;var t=this.hostElement.style;if(e){t.touchAction="none";t.msTouchAction="none"}else{t.touchAction=this._defaultTouchAction;t.msTouchAction=this._defaultMsTouchAction}}get hostElement(){return this._pinchTrigger.hostElement}get contentElement(){return this.hostElement.children.length?this.hostElement.children[0]:null}dispose(){this._pinchTrigger&&this._pinchTrigger.dispose();this._trigger&&this._trigger.dispose();this.removeDefaultTouch&&(this.removeDefaultTouch=!1)}}_TouchManager._touchPointerName="touch";_TouchManager._allTouchInfos=[];export class _ExportOptionEditor extends Control{constructor(e){super(e);this._options={};this._optionLabels=null;this._groupTitleField=null;addClass(e,ViewerBaseClsNames.exportEditor)}get options(){return this._options}get exportDescription(){return this._exportDescription}set exportDescription(e){this._exportDescription=e;this._options={};if(e){this._options.format=this.exportDescription.format;this._render()}}_skipOption(e){return _ExportOptionEditor._skippedOptions.indexOf(e)>=0}_render(){_removeChildren(this.hostElement);if(this.exportDescription){var e=this.exportDescription.optionDescriptions,t={};if(e)for(var i=0;i<e.length;i++){var r=e[i];if(!this._skipOption(r.name))if(r.group){t[r.group]||(t[r.group]=[]);t[r.group].push(r)}else{t[_ExportOptionEditor._generalGroupName]||(t[_ExportOptionEditor._generalGroupName]=[]);r.group=_ExportOptionEditor._generalGroupName;t[_ExportOptionEditor._generalGroupName].push(r)}}for(var a in t)this.hostElement.appendChild(this._generateGroup(t[a]));this._updateEditors()}}_generateEditor(e){var t;if(isArray(e.allowedValues))t=this._generateComboEditor(e);else switch(e.type){case"bool":t=this._generateBoolEditor(e);break;case"int":case"float":t=this._generateNumberEditor(e);break;case"unit":e.defaultValue=new _Unit(e.defaultValue);case"string":default:t=this._generateStringEditor(e)}t.setAttribute(_ExportOptionEditor._optionIdAttr,e.name);return t}_generateComboEditor(e){for(var t,i=[],r=document.createElement("div"),a=0;a<e.allowedValues.length;a++)i.push(e.allowedValues[a]);(t=this._comboBox=new ComboBox(r,{keyActionPrintCharacters:0,keyActionTab:0})).isEditable=!1;t.itemsSource=i;t.selectedValue=e.defaultValue;t.selectedIndexChanged.addHandler(t=>{this._setOptionValue(e.name,t.selectedValue.toString())});return r}_generateBoolEditor(e){var t;if(e.nullable){t=document.createElement("div");var i=this._boolComboBox=new ComboBox(t,{keyActionPrintCharacters:0,keyActionTab:0}),r=[];i.isEditable=!1;i.displayMemberPath="name";i.selectedValuePath="value";r.push({name:"None",value:null});r.push({name:"True",value:!0});r.push({name:"False",value:!1});i.itemsSource=r;i.selectedValue=e.defaultValue;const selectedHandler=t=>{this._setOptionValue(e.name,t.selectedValue);this._updateEditors(e.name)};i.selectedIndexChanged.addHandler(selectedHandler);this._selectedHandlerTimer=setTimeout(()=>selectedHandler(i))}else{(t=document.createElement("input")).type="checkbox";var a=changeType(e.defaultValue,DataType.Boolean,null);t.checked=a;const clickHandler=()=>{this._setOptionValue(e.name,t.checked);this._updateEditors(e.name)};this.addEventListener(t,"click",clickHandler);this._clickHandlerTimer=setTimeout(clickHandler)}return t}_generateNumberEditor(e){var t,i,r="int"===e.type;t=document.createElement("div");(i=this._inputNumber=new InputNumber(t)).format=r?"n0":"n2";i.isRequired=!e.nullable;i.value=e.defaultValue;i.valueChanged.addHandler(t=>{this._setOptionValue(e.name,t.value)});return t}_generateStringEditor(e){var t;t=document.createElement("input");e.name.match(/password/i)?t.type="password":t.type="text";t.value=e.defaultValue;["change","keyup","paste","input"].forEach(i=>{this.addEventListener(t,i,()=>{this._setOptionValue(e.name,t.value)})});return t}_generateGroup(e){var t=document.createElement("fieldset"),i=document.createElement("legend"),r=e[0].group;addClass(t,ViewerBaseClsNames.exportFormatsGroup);i.innerHTML=this._groupTitle[r];i.setAttribute(_ExportOptionEditor._optionNameAttr,r);t.appendChild(i);for(var a=document.createElement("table"),s=0;s<e.length;s++){var o=e[s],n=document.createElement("tr"),h=document.createElement("td"),l=document.createElement("td");h.innerHTML=this._getOptionLabel(o.name);h.setAttribute(_ExportOptionEditor._optionNameAttr,o.name);l.appendChild(this._generateEditor(o));n.appendChild(h);n.appendChild(l);a.appendChild(n)}t.appendChild(a);return t}_updateEditors(e){if("pdfACompatible"!==e&&e){if("paged"===e||!e){var t=this.hostElement.querySelector("["+_ExportOptionEditor._optionIdAttr+'="showNavigator"]');if(t){var i=changeType(this._getOptionValue("paged"),DataType.Boolean,null);if(i){t.checked=this._previousShowNavigator;this._setOptionValue("showNavigator",this._previousShowNavigator)}else{this._previousShowNavigator=t.checked;t.checked=!1;this._setOptionValue("showNavigator",!1)}t.disabled=!i}}}else{var r=this.hostElement.querySelector("["+_ExportOptionEditor._optionIdAttr+'="embedFonts"]');if(r){var a=changeType(this._getOptionValue("pdfACompatible"),DataType.Boolean,null);if(a){this._previousEmbedFonts=r.checked;r.checked=!0;this._setOptionValue("embedFonts",!0)}else{r.checked=this._previousEmbedFonts;this._setOptionValue("embedFonts",this._previousEmbedFonts)}r.disabled=a}}}_getOptionLabel(e){var t=this._optionLabelsText[e];return t||e[0].toUpperCase()+e.substring(1)}_getOptionDescByName(e){var t=null;this._exportDescription.optionDescriptions.some(i=>{if(i.name===e){t=i;return!0}return!1});return t}_getOptionValue(e){return void 0!==this._options[e]?this._options[e]:this._getOptionDescByName(e).defaultValue}_setOptionValue(e,t){var i=this._getOptionDescByName(e),r=i.defaultValue;"unit"===i.type&&(r=i.defaultValue.toString());t!==r?this._options[e]=t:void 0!==this._options[e]&&delete this._options[e]}get _optionLabelsText(){if(!this._optionLabels){let e=culture.Viewer;this._optionLabels={title:e.docInfoTitle,author:e.docInfoAuthor,manager:e.docInfoManager,operator:e.docInfoOperator,company:e.docInfoCompany,subject:e.docInfoSubject,comment:e.docInfoComment,creator:e.docInfoCreator,producer:e.docInfoProducer,creationTime:e.docInfoCreationTime,revisionTime:e.docInfoRevisionTime,keywords:e.docInfoKeywords,embedFonts:e.embedFonts,pdfACompatible:e.pdfACompatible,useCompression:e.useCompression,useOutlines:e.useOutlines,allowCopyContent:e.allowCopyContent,allowEditAnnotations:e.allowEditAnnotations,allowEditContent:e.allowEditContent,allowPrint:e.allowPrint,ownerPassword:e.ownerPassword,userPassword:e.userPassword,encryptionType:e.encryptionType,paged:e.paged,showNavigator:e.showNavigator,navigatorPosition:e.navigatorPosition,singleFile:e.singleFile,tolerance:e.tolerance,pictureLayer:e.pictureLayer,metafileType:e.metafileType,monochrome:e.monochrome,resolution:e.resolution,outputRange:e.outputRange,outputRangeInverted:e.outputRangeInverted}}return this._optionLabels}get _groupTitle(){this._groupTitleField||(this._groupTitleField={documentRestrictions:culture.Viewer.documentRestrictionsGroup,passwordSecurity:culture.Viewer.passwordSecurityGroup,outputRange:culture.Viewer.outputRangeGroup,documentInfo:culture.Viewer.documentInfoGroup,general:culture.Viewer.generalGroup});return this._groupTitleField}_globalize(){for(var e=this.hostElement.querySelectorAll("["+_ExportOptionEditor._optionNameAttr+"]"),t=0;t<e.length;t++){var i=e[t];i instanceof HTMLLegendElement?i.innerHTML=this._groupTitle[i.getAttribute(_ExportOptionEditor._optionNameAttr)]:i.innerHTML=this._getOptionLabel(i.getAttribute(_ExportOptionEditor._optionNameAttr))}}dispose(){if(this._clickHandlerTimer){clearTimeout(this._clickHandlerTimer);this._clickHandlerTimer=null}if(this._selectedHandlerTimer){clearTimeout(this._selectedHandlerTimer);this._selectedHandlerTimer=null}if(this._comboBox){this._comboBox.dispose();this._comboBox=null}if(this._boolComboBox){this._boolComboBox.dispose();this._boolComboBox=null}if(this._inputNumber){this._inputNumber.dispose();this._inputNumber=null}super.dispose()}refresh(e=!0){super.refresh(e);if(e){this._optionLabels=null;this._groupTitleField=null;this._globalize()}}}_ExportOptionEditor._optionIdAttr="option-id";_ExportOptionEditor._optionNameAttr="option-name";_ExportOptionEditor._skippedOptions=["shapesWord2007Compatible","sheetName","navigatorPositions"];_ExportOptionEditor._generalGroupName="general";export function _httpRequest(e,t,i){i&&i.cache||(e=_disableCache(e));if(i){if("GET"!==(i.method||"GET").toUpperCase()){if(i.data&&!1!==i.urlEncode){var r=_objToParams(i.data);null!=r&&(i.data=r)}!1!==i.urlEncode&&(i.requestHeaders?i.requestHeaders["Content-Type"]||(i.requestHeaders["Content-Type"]="application/x-www-form-urlencoded"):i.requestHeaders={"Content-Type":"application/x-www-form-urlencoded"})}}if(t&&t.requestHeaders){(i=i||{}).requestHeaders=i.requestHeaders||{};Object.keys(t.requestHeaders).forEach(e=>{i.requestHeaders[e]=t.requestHeaders[e]})}var a=new RequestEventArgs(e,i);t&&t.beforeSend&&t.beforeSend(a);return httpRequest(a.url,a.settings)}function _objToParams(e){var t=[];e=e||{};for(var i in e)if(null!==e[i]&&void 0!==e[i])if(isArray(e[i]))if(e[i].length>0)for(var r=0;r<e[i].length;r++)t.push(i+"="+encodeURIComponent(e[i][r]));else t.push(i+"=");else t.push(i+"="+encodeURIComponent(e[i]));return t.join("&")}export class _HistoryManager{constructor(){this._items=[{}];this._position=0;this.statusChanged=new Event}_onStatusChanged(){this.statusChanged.raise(this)}get current(){return this._items[this._position]}clear(){this._items=[{}];this._position=0;this._onStatusChanged()}add(){this._items.splice(++this._position);this._items.push({});this._onStatusChanged()}forward(){if(!this.canForward())return null;var e=this._items[++this._position];this._onStatusChanged();return e}backward(){if(!this.canBackward())return null;var e=this._items[--this._position];this._onStatusChanged();return e}canForward(){return this._position<this._items.length-1}canBackward(){return this._position>0}}export var _ArActionKind;!function(e){e.Hyperlink="hyperlink";e.Bookmark="bookmark";e.Drillthrough="drillthrough";e.Sort="sort";e.Toggle="toggle"}(_ArActionKind||(_ArActionKind={}));export var _ArParameterType;!function(e){e[e.String=0]="String";e[e.DateTime=1]="DateTime";e[e.Boolean=2]="Boolean";e[e.Integer=3]="Integer";e[e.Float=4]="Float"}(_ArParameterType||(_ArParameterType={}));export var _ArParameterState;!function(e){e[e.OK=0]="OK";e[e.ExpectValue=1]="ExpectValue";e[e.HasOutstandingDependencies=2]="HasOutstandingDependencies";e[e.ValuesValidationFailed=3]="ValuesValidationFailed";e[e.DynamicValuesUnavailable=4]="DynamicValuesUnavailable"}(_ArParameterState||(_ArParameterState={}));export class _DocumentService{constructor(e,t){this._url="";this._url=e.serviceUrl||"";this._documentPath=e.filePath;this._httpHandler=t}get serviceUrl(){return this._url}get filePath(){return this._documentPath}getStatus(){throw _abstractMethodExceptionText}setPageSettings(e){throw _abstractMethodExceptionText}getBookmark(e){throw _abstractMethodExceptionText}executeCustomAction(e){throw _abstractMethodExceptionText}load(e){throw _abstractMethodExceptionText}dispose(){throw _abstractMethodExceptionText}getOutlines(){throw _abstractMethodExceptionText}renderToFilter(e){throw _abstractMethodExceptionText}search(e){throw _abstractMethodExceptionText}getRenderToFilterUrl(e){throw _abstractMethodExceptionText}getExportedUrl(e){throw _abstractMethodExceptionText}getSupportedExportDescriptions(){throw _abstractMethodExceptionText}getFeatures(){throw _abstractMethodExceptionText}getPingTimeout(){return 100}getFileName(){var e=/([^\\/]+)$/.exec(this.filePath)[1];return e.lastIndexOf(".")>=0?e.substr(0,e.lastIndexOf(".")):e}downloadDataUrl(e){var t=new _Promise;this.downloadBlob(e).then(e=>{var i=new FileReader;i.onloadend=e=>{t.resolve(i.result)};i.readAsDataURL(e)});return t}downloadBlob(e){var t=new _Promise;this.httpRequest(e,{beforeSend:e=>{e.responseType="blob"}}).then(e=>{t.resolve(e.response)});return t}httpRequest(e,t){t=t||{};var i=new _Promise,r=t.error,a=t.success;t.error=e=>{isFunction(r)&&r.call(this,e);i.reject(e)};t.success=e=>{isFunction(a)&&a.call(this,e);i.resolve(e)};_httpRequest(e,this._httpHandler,t);return i}}export class _ReportServiceBase extends _DocumentService{render(){throw _abstractMethodExceptionText}}export class _ReportService extends _ReportServiceBase{constructor(e,t){super(e,t);this._reportName=e.reportName}get isCleared(){return!this._instanceId&&this._status==_ExecutionStatus.cleared}static getReportNames(e,t,i){return _ReportService.getReports(e,t,null,i).then(e=>{if(!e)return null;var t=[];e.items.forEach(e=>{e.type===CatalogItemType.Report&&t.push(e.name)});return t})}static getReports(e,t,i,r){var a=new _Promise;_httpRequest(_joinUrl(e,t),r,{data:i,success:e=>{a.resolve(JSON.parse(e.responseText))},error:e=>a.reject(e)});return a}get reportName(){return this._reportName}getBookmark(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.httpRequest(this._getReportInstancesUrl(_ReportService._bookmarkAction,e)).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}executeCustomAction(e){var t={};t[_ReportService._customActionParam]=e.data;return this.render(t)}getStatus(){var e=new _Promise;this.httpRequest(this._statusLocation).then(t=>{e.resolve(JSON.parse(t.responseText,_statusJsonReviver))});return e}getDocumentStatus(){return this._getReportCache()}_getReportCache(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl()).then(t=>{e.resolve(_parseReportExecutionInfo(t.responseText))});return e}getParameters(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl(_ReportService._parametersAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}_getUrlMainPart(){return _joinUrl(this.serviceUrl,this.filePath,this.reportName)}_getReportUrl(...e){return _joinUrl(this._getUrlMainPart(),_ReportService._reportCommand,e)}_getReportInstancesUrl(...e){return _joinUrl(this._getUrlMainPart(),_ReportService._instancesCommand,this._instanceId,e)}_checkReportController(e){if(null!=this.serviceUrl&&this.filePath){if(!(_strEndsWith(this.filePath,".flxr",!0)||_strEndsWith(this.filePath,".xml",!0))||this.reportName)return!0}e&&e.reject(_ReportService._invalidReportControllerError);return!1}_checkReportInstanceController(e){if(this._checkReportController(e)&&this._instanceId)return!0;e&&e.reject(_ReportService._invalidReportCacheControllerError);return!1}_getError(e){var t=e.responseText;try{t&&(t=JSON.parse(t))}finally{return t}}render(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.httpRequest(this._getReportInstancesUrl(_ReportService._renderAction),{method:"POST",data:e}).then(e=>{var i=202===e.status?{status:_ExecutionStatus.rendering}:_parseReportExecutionInfo(e.responseText);this._status=i.status;t.resolve(i)},e=>{t.reject(this._getError(e))});return t}renderToFilter(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.getRenderToFilterUrl(e).then(e=>{this.httpRequest(e,{cache:!0}).then(e=>{t.resolve(e)},e=>{t.reject(this._getError(e))})});return t}load(e){var t=new _Promise;if(!this._checkReportController(t))return t;this.httpRequest(this._getReportInstancesUrl(),{method:"POST",data:e}).then(e=>{var i=_parseReportExecutionInfo(e.responseText);this._instanceId=i.id;this._status=_ExecutionStatus.loaded;this._outlinesLocation=i.outlinesLocation;this._statusLocation=i.statusLocation;this._pageSettingsLocation=i.pageSettingsLocation;this._featuresLocation=i.featuresLocation;this._parametersLocation=i.parametersLocation;t.resolve(i)},e=>{t.reject(this._getError(e))});return t}cancel(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;if(this._status!==_ExecutionStatus.rendering){e.reject("Cannot execute cancel when the report is not rendering.");return e}this.httpRequest(this._getReportInstancesUrl(_ReportService._cancelAction),{method:"POST"}).then(t=>{var i=_parseReportExecutionInfo(t.responseText);this._status=i.status.status;e.resolve(i)});return e}dispose(){var e=new _Promise;if(!this._checkReportInstanceController())return e;this.httpRequest(this._getReportInstancesUrl(),{method:"DELETE"}).then(t=>{this._status=_ExecutionStatus.cleared;this._instanceId="";e.resolve()});return e}getOutlines(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl(_ReportService._outlinesAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}getRenderToFilterUrl(e){var t=new _Promise,i=null;if(this._checkReportInstanceController()){i=_appendQueryString(i=_disableCache(i=this._getReportInstancesUrl(_ReportService._exportAction)),e);t.resolve(i)}t.resolve(i);return t}getExportedUrl(e){return this.getRenderToFilterUrl(e)}search(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.httpRequest(this._getReportInstancesUrl(_ReportService._searchAction),{data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}setPageSettings(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;var i=this._getReportInstancesUrl(_ReportService._pageSettingsAction);this.httpRequest(i,{method:"PUT",data:e}).then(e=>{t.resolve(JSON.parse(e.responseText,_pageSettingsJsonReviver))},e=>{t.reject(this._getError(e))});return t}setParameters(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;Object.keys(e).forEach(t=>{null===e[t]&&(e[t]="");e[t]instanceof Date&&(e[t]=Globalize.formatDate(e[t],"yyyy/MM/dd HH:mm:ss"))});var i=this._getReportInstancesUrl(_ReportService._parametersAction);this.httpRequest(i,{method:"PATCH",data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))},e=>{t.reject(this._getError(e))});return t}getSupportedExportDescriptions(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl(_ReportService._supportedFormatsAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}getFeatures(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._featuresLocation).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}}_ReportService._reportCommand="$report";_ReportService._instancesCommand="$instances";_ReportService._customActionParam="actionString";_ReportService._renderAction="render";_ReportService._searchAction="search";_ReportService._cancelAction="stop";_ReportService._outlinesAction="outlines";_ReportService._exportAction="export";_ReportService._parametersAction="parameters";_ReportService._bookmarkAction="bookmarks";_ReportService._pageSettingsAction="pagesettings";_ReportService._supportedFormatsAction="supportedformats";_ReportService._invalidReportControllerError="Cannot call the service without service url, document path or report name.";_ReportService._invalidReportCacheControllerError="Cannot call the service when service url is not set or the report is not loaded.";export class _DocumentSource{constructor(e,t){this._hasOutlines=!1;this._pageCount=0;this._supportedExportDescriptions=[];this._isLoadCompleted=!1;this._isInstanceCreated=!1;this._isDisposed=!1;this._errors=[];this.pageCountChanged=new Event;this.disposed=new Event;this.pageSettingsChanged=new Event;this.loading=new Event;this.loadCompleted=new Event;this.queryLoadingData=new Event;this._httpHandler=t;this._service=this._createDocumentService(e);this._paginated=e.paginated}onQueryLoadingData(e){this.queryLoadingData.raise(this,e)}_updateIsLoadCompleted(e){if(this._isLoadCompleted!==e){this._isLoadCompleted=e;e&&this.onLoadCompleted()}}_updateIsDisposed(e){if(this._isDisposed!==e){this._isDisposed=e;this.onDisposed()}}_getIsDisposed(){return this._isDisposed}_checkHasOutlines(e){return e.hasOutlines}_checkIsLoadCompleted(e){return e.status===_ExecutionStatus.completed||e.status===_ExecutionStatus.stopped||e.status===_ExecutionStatus.loaded}get encodeRequestParams(){return!0}get executionDateTime(){return this._executionDateTime}get expiredDateTime(){return this._expiredDateTime}get errors(){return this._errors}get isLoadCompleted(){return this._isLoadCompleted}get isInstanceCreated(){return this._isInstanceCreated}get isDisposed(){return this._getIsDisposed()}get features(){return this._features}get pageSettings(){return this._pageSettings}onPageSettingsChanged(e){this.pageSettingsChanged.raise(this,e||new EventArgs)}onLoadCompleted(e){this.loadCompleted.raise(this,e||new EventArgs)}onLoading(e){this.loading.raise(this,e||new EventArgs)}onDisposed(e){this.disposed.raise(this,e||new EventArgs)}setPageSettings(e){return this._innerService.setPageSettings(e).then(e=>this._updatePageSettings(e))}_updatePageSettings(e){this._pageSettings=e;this.onPageSettingsChanged()}get _innerService(){return this._service}get paginated(){return this.pageSettings?this.pageSettings.paginated:this._paginated}get hasThumbnails(){return!0}get hasOutlines(){return this._hasOutlines}get pageCount(){return this._pageCount}get initialPosition(){return this._initialPosition}set initialPosition(e){this._initialPosition=e}get service(){return this._service}getSupportedExportDescriptions(){return this._innerService.getSupportedExportDescriptions()}getBookmark(e){return this._innerService.getBookmark(e)}executeCustomAction(e){return this._innerService.executeCustomAction(e)}getOutlines(){return this._innerService.getOutlines()}getFeatures(){return this._innerService.getFeatures().then(e=>{this._features=e})}dispose(){return this._innerService.dispose().then(()=>this._updateIsDisposed(!0))}load(){this.onLoading();var e={};null!=this._paginated&&(e["pageSettings.paginated"]=this.paginated);var t=new QueryLoadingDataEventArgs(e);this.onQueryLoadingData(t);return this._innerService.load(t.data).then(e=>{this._updateExecutionInfo(e)})}_updateExecutionInfo(e){if(null!=e){this._executionDateTime=this._getExecutionDateTime(e);this._expiredDateTime=this._getExpiredDateTime(e);this._updatePageSettings(e.pageSettings);this._features=e.features;this._isInstanceCreated=null!=e.status&&e.status.status!==_ExecutionStatus.notFound&&e.status.status!==_ExecutionStatus.cleared;this._updateDocumentStatus(e.status)}}_updateDocumentStatus(e){if(e){this._errors=e.errorList;this._initialPosition=e.initialPosition;this._updatePageCount(this._getPageCount(e));this._expiredDateTime=this._getExpiredDateTime(e);this._hasOutlines=this._checkHasOutlines(e);this._updateIsLoadCompleted(this._checkIsLoadCompleted(e))}}_getExecutionDateTime(e){return e.loadedDateTime}_getExpiredDateTime(e){return e.expiredDateTime}_getPageCount(e){return e.pageCount}_updatePageCount(e){if(this._pageCount!==e){this._pageCount=e;this.onPageCountChanged()}}getStatus(){return this._innerService.getStatus().then(e=>{this._updateDocumentStatus(e)})}_createDocumentService(e){throw _DocumentSource._abstractMethodException}onPageCountChanged(e){this.pageCountChanged.raise(this,e||new EventArgs)}export(e){this.getExportedUrl(e).then(t=>{this._innerService.downloadBlob(t).then(t=>{let i=e.format;i.match("bmp|emf|gif|html|jpeg|jpg|png|tif|tiff")&&"application/zip"===t.type&&(i="zip");"zip"===i&&"application/x-emf"===t.type&&(i="emf");saveFile(t,`${this._innerService.getFileName()}.${i}`)})})}print(e){if(isMobile())this.export({format:"pdf"});else{var t=new PrintDocument({title:"Document"});this.renderToFilter({format:"html"}).then(i=>{t.append(i.responseText);t._getDocument().close();window.setTimeout(()=>{this._removeScript(t);this._rotate(t,e);t.print()},100)})}}get httpHandler(){return this._httpHandler}_removeScript(e){for(var t=e._getDocument().querySelectorAll("script"),i=0;i<t.length;i++){var r=t.item(i);r.parentElement.removeChild(r)}}_rotate(e,t){if(t&&t.length)for(var i=e._getDocument().querySelectorAll("svg"),r=0;r<i.length;r++){var a=t[r];if(a){for(var s=i[r],o=document.createElementNS("http://www.w3.org/2000/svg","g");s.hasChildNodes();)o.appendChild(s.firstChild);s.appendChild(o);var n={width:new _Unit(s.width.baseVal.value),height:new _Unit(s.height.baseVal.value)},h=_getRotatedSize(n,a),l=s.parentNode;l.style.width=h.width.valueInPixel+"px";l.style.height=h.height.valueInPixel+"px";s.setAttribute("width",h.width.valueInPixel.toString()+"px");s.setAttribute("height",h.height.valueInPixel.toString()+"px");_transformSvg(i[r],n.width.valueInPixel,n.height.valueInPixel,1,a)}}}renderToFilter(e){return this._innerService.renderToFilter(e)}getRenderToFilterUrl(e){return this._innerService.getRenderToFilterUrl(e)}getExportedUrl(e,t=!1){var i=new _Promise;this._innerService.getExportedUrl(e).then(e=>{var r=new RequestEventArgs(e,null);t&&this.httpHandler.beforeSend(r);i.resolve(r.url)});return i}search(e){return this._innerService.search(e)}}_DocumentSource._abstractMethodException="It is an abstract method, please implement it.";export class _ReportSourceBase extends _DocumentSource{constructor(e,t){super(e,t);this._status=_ExecutionStatus.notFound;this.statusChanged=new Event}get autoRun(){return!0}get hasParameters(){throw _DocumentSource._abstractMethodException}get status(){return this._status}set status(e){if(e!==this._status){this._status=e;this.onStatusChanged()}}getParameters(){throw _DocumentSource._abstractMethodException}setParameters(e){throw _DocumentSource._abstractMethodException}render(){return this._innerService.render().then(e=>this._updateDocumentStatus(e))}executeCustomAction(e){return this._innerService.executeCustomAction(e).then(e=>this._updateDocumentStatus(e))}onStatusChanged(e){this.statusChanged.raise(this,e)}get _innerService(){return this.service}_updateDocumentStatus(e){e&&(this.status=e.status);super._updateDocumentStatus(e)}}export class _Report extends _ReportSourceBase{constructor(e,t){super(e,t);this._hasParameters=!1}static getReportNames(e,t,i){return _ReportService.getReportNames(e,t,i)}static getReports(e,t,i,r){isBoolean(i)&&(i={recursive:i});return _ReportService.getReports(e,t,i,r)}get reportName(){return this._innerService?this._innerService.reportName:null}get hasParameters(){return this._hasParameters}load(){return super.load()}cancel(){return this._innerService.cancel().then(e=>this._updateDocumentStatus(e))}dispose(){return super.dispose()}setParameters(e){return this._innerService.setParameters(e).then(e=>{this._parameters=e})}getParameters(){return this._innerService.getParameters().then(e=>{this._parameters=e})}_getIsDisposed(){return super._getIsDisposed()||this._innerService.isCleared}_updateExecutionInfo(e){if(null!=e&&!this.isDisposed){this._hasParameters=!!e.hasParameters;super._updateExecutionInfo(e)}}_checkIsLoadCompleted(e){return e.status===_ExecutionStatus.completed||e.status===_ExecutionStatus.stopped}_createDocumentService(e){return new _ReportService(e,this.httpHandler)}get _innerService(){return this.service}}export class _PdfDocumentSource extends _DocumentSource{constructor(e,t){super(e,t);this._status=_ExecutionStatus.notFound}get status(){return this._status}get _innerService(){return this.service}_createDocumentService(e){return new _PdfDocumentService(e,this.httpHandler)}load(){return super.load()}_updateStatus(e){this._status!==e&&(this._status=e)}getStatus(){var e=new QueryLoadingDataEventArgs;this.onQueryLoadingData(e);return this._innerService.getStatus(e.data).then(e=>this._updateDocumentStatus(e))}renderToFilter(e){var t=new QueryLoadingDataEventArgs;this.onQueryLoadingData(t);return this._innerService.renderToFilter(e,t.data)}_updateDocumentStatus(e){if(null!=e){this._updateStatus(e.status);super._updateDocumentStatus(e)}}}export class _PdfDocumentService extends _DocumentService{_getPdfUrl(...e){return _joinUrl(this.serviceUrl,this.filePath,_PdfDocumentService._pdfCommand,e)}_getPdfStatus(e){var t=new _Promise;if(!this._checkPdfController(t))return t;this.httpRequest(this._getPdfUrl(),{data:e}).then(e=>{var i=_parseExecutionInfo(e.responseText);this._status=_ExecutionStatus.loaded;this._statusLocation=i.statusLocation;this._featuresLocation=i.featuresLocation;t.resolve(i)},e=>{t.reject(e.statusText)});return t}_checkPdfController(e){if(null!=this.serviceUrl&&this.filePath)return!0;e&&e.reject(_PdfDocumentService._invalidPdfControllerError);return!1}dispose(){var e=new _Promise;e.resolve();return e}load(e){return this._getPdfStatus(e)}getStatus(e){var t=new _Promise;this.httpRequest(this._statusLocation,{data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}renderToFilter(e,t){var i=new _Promise;if(!this._checkPdfController(i))return i;this.getRenderToFilterUrl(e).then(e=>{this.httpRequest(e,{data:t,cache:!0}).then(e=>{i.resolve(e)})});return i}getRenderToFilterUrl(e){var t=new _Promise,i=null;this._checkPdfController()&&(i=_appendQueryString(i=_disableCache(i=this._getPdfUrl(_PdfDocumentService._exportAction)),e));t.resolve(i);return t}getExportedUrl(e){return this.getRenderToFilterUrl(e)}getSupportedExportDescriptions(){var e=new _Promise;if(!this._checkPdfController(e))return e;this.httpRequest(this._getPdfUrl(_PdfDocumentService._supportedFormatsAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}getFeatures(){var e=new _Promise;if(!this._checkPdfController(e))return e;this.httpRequest(this._featuresLocation).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}search(e){var t=new _Promise;if(!this._checkPdfController(t))return t;this.httpRequest(this._getPdfUrl(_PdfDocumentService._searchAction),{data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}}_PdfDocumentService._pdfCommand="$pdf";_PdfDocumentService._exportAction="export";_PdfDocumentService._supportedFormatsAction="supportedformats";_PdfDocumentService._searchAction="search";_PdfDocumentService._invalidPdfControllerError="Cannot call the service when service url is not set or the pdf is not loaded.";export function _parseExecutionInfo(e){return JSON.parse(e,_statusJsonReviver)}export class _SearchManager{constructor(){this._currentIndex=-1;this.currentChanged=new Event;this.searchStarted=new Event;this.searchCompleted=new Event;this.resultsCleared=new Event;this.textChanged=new Event}get current(){return this._currentIndex<0?null:this._searchResult[this._currentIndex]}get currentIndex(){return this._currentIndex}set currentIndex(e){e!==this._currentIndex&&this._getSearchResults().then(t=>{this._currentIndex=e;this._onCurrentChanged()})}get documentSource(){return this._documentSource}set documentSource(e){this._documentSource=e;this.clear()}get matchCase(){return this._matchCase}set matchCase(e){if(this._matchCase!==e){this._matchCase=e;this._clearResults()}}get searchResult(){return this._searchResult}get text(){return this._text}set text(e){if(this._text!==e){this._text=e;this._onTextChanged();this._clearResults()}}get wholeWord(){return this._wholeWord}set wholeWord(e){if(this._wholeWord!==e){this._wholeWord=e;this._clearResults()}}clear(){this._matchCase=!1;this._wholeWord=!1;this._currentIndex=-1;this.text=null}search(e){this._getSearchResults().then(t=>{var i=this._searchResult.length;if(e){this._currentIndex--;this._currentIndex<0&&(this._currentIndex=i-1)}else{this._currentIndex++;this._currentIndex>=i&&(this._currentIndex=0)}this._currentIndex=Math.max(Math.min(this._currentIndex,i-1),0);this._onCurrentChanged()})}_clearResults(){this._currentIndex=-1;this._searchResult=null;this._onResultsCleared()}_getSearchResults(){var e=new _Promise;if(this._searchResult){e.resolve(this._searchResult);return e}if(!this.documentSource){e.reject(culture.Viewer.cannotSearch);return e}if(null==this._text||0===this._text.length)return e;this._onSearchStarted();return this.documentSource.search({text:this.documentSource.encodeRequestParams?encodeURIComponent(this.text):this.text,matchCase:this.matchCase,wholeWord:this.wholeWord}).then(e=>{this._searchResult=e;this._onSearchCompleted()})}_onCurrentChanged(){this.currentChanged.raise(this)}_onSearchStarted(){this.searchStarted.raise(this)}_onSearchCompleted(){this.searchCompleted.raise(this)}_onResultsCleared(){this.resultsCleared.raise(this)}_onTextChanged(){this.textChanged.raise(this)}dispose(){this._documentSource=null;this._searchResult=null}}export class _Page{constructor(e,t,i){this._content=null;this._rotateAngle=_RotateAngle.NoRotate;this._pendingContent=!1;this.linkClicked=new Event;this._documentSource=e;this._index=t;this._size=i}get index(){return this._index}get size(){return this._size}get rotateAngle(){return this._rotateAngle}set rotateAngle(e){this._rotateAngle=e}get content(){return this._content}get pendingContent(){return this._pendingContent}getContent(){let e=this._contentPromise;if(e&&!e.isFinished)return e;this._contentPromise=e=new _Promise;var t=this._documentSource;if(!t){e.reject(culture.Viewer.cannotRenderPageNoDoc);return e}if(this._content){e.resolve(this._content);return e}this._pendingContent=!0;t.renderToFilter({format:"html",paged:t.paginated,outputRange:(this.index+1).toString()}).then(i=>{if(this._documentSource===t){var r=document.createElement("div");setInnerHTMLSafe(r,this._processSvgResponse(this._addGlobalUniqueId(i.responseText)));for(var a=r.querySelector("svg"),s=document.createElementNS("http://www.w3.org/2000/svg","g");a.hasChildNodes();)s.appendChild(a.firstChild);a.appendChild(s);this._size={width:new _Unit(a.width.baseVal.value),height:new _Unit(a.height.baseVal.value)};this._content=a;this._processActionLinks(a,e=>{_addEvent(e,"click",()=>{this._onLinkClicked(new _LinkClickedEventArgs(e))})});this._pendingContent=!1;e.resolve(this._content)}}).catch(()=>{this._pendingContent=!1});return e}_processSvgResponse(e){return e}_extractSize(e){if(e){var t=e.querySelector("svg");if(t)return{width:new _Unit(t.width.baseVal.value),height:new _Unit(t.height.baseVal.value)}}return null}_onLinkClicked(e){this.linkClicked.raise(this,e)}_processActionLinks(e,t){for(var i=e.querySelectorAll("a"),r=0;r<i.length;r++){var a=i.item(r),s=a.href?a.href.baseVal:"";if(s.indexOf("navigate")>0){var o=_Page._bookmarkReg.exec(s);if(o)if(o[1]&&o[1].length>0){a.href.baseVal=_Page._invalidHref;a.setAttribute(_Page._bookmarkAttr,o[1]);t(a)}else a.removeAttribute("xlink:href")}else if(_Page._customActionReg.test(s)){a.href.baseVal=_Page._invalidHref;a.setAttribute(_Page._customActionAttr,s.substr(3));t(a)}}}_addGlobalUniqueId(e){var t=(new Date).getTime().toString();return e=(e=e.replace(_Page._idReg,"$1$2"+t+"$3$4")).replace(_Page._idReferReg,"$1$2"+t+"$3$4")}}_Page._bookmarkReg=/javascript\:navigate\(['|"](.*)['|"]\)/;_Page._bookmarkAttr="bookmark";_Page._customActionReg=/^CA\:/;_Page._customActionAttr="customAction";_Page._idReg=/(\<[^\>]+)(id=['|"])(\w+)(['|"])/g;_Page._idReferReg=/(\<[^\>]+)(url\(#)(\w+)(\))/g;_Page._invalidHref="javascript:void(0)";export class _ArPage extends _Page{_processSvgResponse(e){e=super._processSvgResponse(e);var t=(new DOMParser).parseFromString(e,"text/xml");return e=(new XMLSerializer).serializeToString(t)}_processActionLinks(e,t){for(var i=e.querySelectorAll("rect[arsvg\\:data-action-type]"),r=0;r<i.length;r++)t(i[r])}}export class _PageViewBase extends Control{constructor(e){super(e);this._autoHeightCalculated=!1;this._startX=null;this._startY=null;this._panMode=!1;this._pageIndex=-1;this._zoomFactor=1;this._zoomMode=ZoomMode.Custom;this._zoomModeUpdating=!1;this._movingPromise=new _Promise;this.pageIndexChanged=new Event;this.zoomFactorChanged=new Event;this.zoomModeChanged=new Event;this.positionChanged=new Event;this.rotateAngleChanged=new Event;this.pageLoaded=new Event;this._zoomFactorChangeInitiated=!1;this._zoomModeChangeInitiated=!1;var t;t=this.getTemplate();this.applyTemplate(ViewerBaseClsNames.pageview,t,this._getTemplateParts());this._fBorderBoxMode="border-box"===getComputedStyle(e).boxSizing;this._init()}static get controlTemplate(){_PageViewBase._ctrlTemplate||(_PageViewBase._ctrlTemplate=`<div class="${ViewerBaseClsNames.pagesWrapper}" wj-part="pages-wrapper"></div>`);return _PageViewBase._ctrlTemplate}static set controlTemplate(e){_PageViewBase._ctrlTemplate=e}_getTemplateParts(){return{_pagesWrapper:"pages-wrapper"}}_getPagesContainer(){return this.hostElement}_init(){this._bindEvents()}dispose(){this._touchManager&&this._touchManager.dispose();super.dispose()}_bindTouchEvents(e){e.touchStart.addHandler(()=>{this.hostElement.focus()});e.panMove.addHandler((t,i)=>{e.hostElement.scrollTop-=i.clientDelta.y;e.hostElement.scrollLeft-=i.clientDelta.x});e.pinch.addHandler(this._zoomByPinch,this)}_initTouchEvents(){var e=this._pagesWrapper.parentElement,t=new _TouchManager(e);this._touchManager=t;this._bindTouchEvents(t)}get _borderBoxMode(){return this._fBorderBoxMode}_zoomByPinch(e,t){t.preventDefault();if(t.type==_TouchEventType.Move){var i=getElementRect(e.contentElement),r=getComputedStyle(e.contentElement),a=parseInt(r.marginTop),s=parseInt(r.marginLeft),o=_pointMove(!1,t.preCenterClient,i.left-s,i.top-a);this._zoom(e.hostElement,t.zoom,o,t.centerClientDelta)}}_getFixedPosition(e){return new Point(_PageViewBase._pageMargin,_PageViewBase._pageMargin+this._getAbovePageCount(e.y)*_PageViewBase._pageMargin)}_getAbovePageCount(e){return 0}_zoom(e,t,i,r){var a=_pointMove(!1,i,e.scrollLeft,e.scrollTop),s=this._getFixedPosition(i),o=this.zoomFactor;this.zoomFactor=this.zoomFactor*t;var n=this.zoomFactor/o,h=new Point((i.x-s.x)*n+s.x,(i.y-s.y)*n+s.y),l=_pointMove(!0,a,r),c=_pointMove(!1,h,l);e.scrollTop=Math.round(c.y);e.scrollLeft=Math.round(c.x)}get pageIndex(){return this._pageIndex}get pages(){return this._pages}set pages(e){this._pages=e;this._reserveViewPage()}get scrollTop(){return this.hostElement.scrollTop}get scrollLeft(){return this.hostElement.scrollLeft}get zoomFactor(){return this._zoomFactor}set zoomFactor(e){e=Math.round(100*Math.max(.05,Math.min(10,e)))/100;if(this._zoomFactor!=e){this._zoomModeChangeInitiated||(this._zoomFactorChangeInitiated=!0);var t=this._zoomFactor,i=this._zoomMode;this._zoomFactor=e;this._updatePageViewTransform();this._zoomModeUpdating||(this._zoomFactor===Math.round(100*this._calcZoomToViewFactor())/100?this.zoomMode=ZoomMode.WholePage:this._zoomFactor===Math.round(100*this._calcZoomToViewWidthFactor())/100?this.zoomMode=ZoomMode.PageWidth:this.zoomMode=ZoomMode.Custom);if(this._zoomFactorChangeInitiated){this._onZoomFactorChanged(t,this.zoomFactor);i!==this.zoomMode&&this._onZoomModeChanged(i,this.zoomMode);this._zoomFactorChangeInitiated=!1}}}get zoomMode(){return this._zoomMode}set zoomMode(e){if(this._zoomMode!=e){this._zoomModeUpdating=!0;this._zoomFactorChangeInitiated||(this._zoomModeChangeInitiated=!0);var t=this._zoomMode,i=this._zoomFactor;this._zoomMode=e;this._calcZoomModeZoom(e);this._zoomModeUpdating=!1;if(this._zoomModeChangeInitiated){this._onZoomModeChanged(t,this.zoomMode);i!==this.zoomFactor&&this._onZoomFactorChanged(i,this.zoomFactor);this._zoomModeChangeInitiated=!1}}}get panMode(){return this._panMode}set panMode(e){this._panMode!=e&&(this._panMode=e)}_bindEvents(){this.addEventListener(document,"mousemove",e=>{null!==this._startX&&null!==this._startY&&this._panning(e)});this.addEventListener(document,"mouseup",e=>{this._stopPanning()});this._initTouchEvents()}_startPanning(e){this._startX=e.screenX;this._startY=e.screenY}_panning(e){var t=this._getPagesContainer();t.scrollLeft+=this._startX-e.screenX;t.scrollTop+=this._startY-e.screenY;this._startX=e.screenX;this._startY=e.screenY}_stopPanning(){this._startX=null;this._startY=null}_onPageIndexChanged(){this.pageIndexChanged.raise(this)}_onZoomFactorChanged(e,t){this.zoomFactorChanged.raise(this,{oldValue:e,newValue:t})}_onZoomModeChanged(e,t){this.zoomModeChanged.raise(this,{oldValue:e,newValue:t})}_onPositionChanged(){this.positionChanged.raise(this)}_onRotateAngleChanged(){this.rotateAngleChanged.raise(this)}_onPageLoaded(e,t){this.pageLoaded.raise(this,new PageLoadedEventArgs(e,t))}_renderViewPage(e,t,i){var r,a=new _Promise;t=t<0?0:t;this._targetRenderPageIndex=t;if(!e){a.reject(culture.Viewer.cannotRenderPageNoViewPage);return a}_removeChildren(e);if(this._pages[t].content){var s=this._pages[t].content;e.appendChild(s);this._setPageTransform(e,t);a.resolve(t);return a}(r=document.createElement("div")).className=ViewerBaseClsNames.loading;r.style.height=e.style.height;r.style.lineHeight=e.style.height;r.innerHTML=culture.Viewer.loading;e.appendChild(r);this._pages[t].pendingContent?a.resolve(t):this._pages[t].getContent().then(r=>{if(this.pages){if(i||this._targetRenderPageIndex===t){var s=r;_removeChildren(e);e.appendChild(s);this._setPageTransform(e,t);this._onPageLoaded(t,e)}a.resolve(t)}}).catch(e=>{r.innerHTML=_getErrorMessage(e)});return a}_reserveViewPage(){throw culture.Viewer.abstractMethodException}_getViewPortHeight(){var e=this._pagesWrapper.currentStyle||window.getComputedStyle(this._pagesWrapper);return this.hostElement.offsetHeight-parseFloat(e.marginBottom)-parseFloat(e.marginTop)}_getViewPortWidth(){var e=this._pagesWrapper.currentStyle||window.getComputedStyle(this._pagesWrapper);return this.hostElement.offsetWidth-parseFloat(e.marginLeft)-parseFloat(e.marginRight)}_setPageTransform(e,t){var i;if(e&&!(t<0)){var r=this._getPageSize(t),a=this._pages[t].rotateAngle;e.style.height=r.height.valueInPixel*this._zoomFactor+"px";e.style.width=r.width.valueInPixel*this._zoomFactor+"px";if(i=e.querySelector("g")){i.parentNode.setAttribute("height",r.height.valueInPixel*this._zoomFactor+"px");i.parentNode.setAttribute("width",r.width.valueInPixel*this._zoomFactor+"px");_transformSvg(i.parentNode,this._pages[t].size.width.valueInPixel,this._pages[t].size.height.valueInPixel,this._zoomFactor,a)}}}_addViewPage(){var e=document.createElement("div");e.className=ViewerBaseClsNames.viewPage;this.addEventListener(e,"mousedown",e=>{this._panMode&&this._startPanning(e)});this.addEventListener(e,"dragstart",e=>{this._panMode&&e.preventDefault()});this._pagesWrapper.appendChild(e);return e}_getPageSize(e){if(e<0||e>=this._pages.length)return{width:new _Unit(1),height:new _Unit(1)};var t=this._pages[e];return _getRotatedSize(t.size,t.rotateAngle)}_render(e){throw culture.Viewer.abstractMethodException}_moveToPagePosition(e){throw culture.Viewer.abstractMethodException}_updatePageViewTransform(){throw culture.Viewer.abstractMethodException}_updatePageIndex(e){if(this.pages){e=this.resolvePageIndex(e);if(this._pageIndex!==e){this._pageIndex=e;this._onPageIndexChanged()}}}moveToPage(e){return this.moveToPosition({pageIndex:e})}resolvePageIndex(e){return Math.min((this.pages||[]).length-1,Math.max(e,0))}moveToPosition(e){this._movingPromise.isFinished||this._movingPromise.cancel();this._movingPromise=new _Promise;var t=e.pageIndex||0,i=this.pageIndex;if(!this.pages||t<0){this._movingPromise.resolve(t);return this._movingPromise}t=this.resolvePageIndex(t);e.pageIndex=t;if(t!==i){this._updatePageIndex(t);this._movingPromise=this._render(t)}else this._movingPromise.resolve(t);return this._movingPromise.then(()=>{if(this.pages){e.samePage=t===i;this._moveToPagePosition(e)}}).then(e=>t).then(()=>{this._calcZoomModeZoom();this._onPositionChanged()})}_calcZoomModeZoom(e){this._zoomModeUpdating=!0;switch(e=null==e?this.zoomMode:e){case ZoomMode.PageWidth:this._zoomToViewWidth();break;case ZoomMode.WholePage:this._zoomToView()}this._zoomModeUpdating=!1}_zoomToView(){this._getPageSize(this.pageIndex)&&(this.zoomFactor=this._calcZoomToViewFactor())}_calcZoomToViewFactor(){const e=this._getViewPortHeight(),t=this._getViewPortWidth(),i=this._getPageSize(this.pageIndex);return Math.min(e/i.height.valueInPixel,t/i.width.valueInPixel)}_zoomToViewWidth(){throw culture.Viewer.abstractMethodException}_calcZoomToViewWidthFactor(){throw culture.Viewer.abstractMethodException}_getTransformedPoint(e,t,i){t/=this.zoomFactor;i/=this.zoomFactor;var r=this.pages[e],a=r.size;switch(r.rotateAngle){case _RotateAngle.Rotation90:var s=t;t=a.height.valueInPixel-i;i=s;break;case _RotateAngle.Rotation180:t=a.height.valueInPixel-t;i=a.width.valueInPixel-i;break;case _RotateAngle.Rotation270:s=t;t=i;i=a.width.valueInPixel-s}return new Point(i,t)}_hitTestPagePosition(e){if(!e||e.pageIndex<0)return null;var t=e.y,i=e.x,r=e.pageIndex;t-=_PageViewBase._pageMargin+_PageViewBase._pageBorderWidth;i-=_PageViewBase._pageMargin+_PageViewBase._pageBorderWidth;var a=this._getTransformedPoint(e.pageIndex,t,i);t=a.y;i=a.x;var s=_pixelToTwip(t),o=_pixelToTwip(i),n=this.pages[r].size;return{pageIndex:r,x:o,y:s,hitWorkingArea:t>=0&&t<=n.height.valueInPixel&&i>=0&&i<=n.width.valueInPixel}}rotatePageTo(e,t){this._pages[e].rotateAngle=t;this._updatePageViewTransform();this._onRotateAngleChanged()}hitTest(e,t){if(this._pointInViewPanelClientArea(e,t)){var i=this._panelViewPntToPageView(e,t);return this._hitTestPagePosition(i)}return null}resetPages(){this._pageIndex=-1;this._pages=null;_removeChildren(this._pagesWrapper);this._addViewPage();this.invalidate()}refresh(e=!0){super.refresh(e);this._autoHeightCalculated=!1;if(!(!this.pages||0==this.pages.length||this.pageIndex<0||this.pageIndex>=this.pages.length)){this._render(this.pageIndex);this._calcZoomModeZoom()}}isPageContentLoaded(e){var t=this.pages;return!!t&&e>=0&&e<t.length&&!!t[e].content}_hitTestPageIndex(e){throw culture.Viewer.abstractMethodException}_pointInViewPanelClientArea(e,t){throw culture.Viewer.abstractMethodException}_panelViewPntToPageView(e,t){throw culture.Viewer.abstractMethodException}}_PageViewBase._pageMargin=30;_PageViewBase._pageBorderWidth=1;_PageViewBase._ctrlTemplate="";export class _ContinuousPageView extends _PageViewBase{constructor(e){super(e);addClass(e,ViewerBaseClsNames.pageViewContinuous)}static get controlTemplate(){_ContinuousPageView._ctrlTemplate||(_ContinuousPageView._ctrlTemplate=_PageViewBase.controlTemplate);return _ContinuousPageView._ctrlTemplate}static set controlTemplate(e){_ContinuousPageView._ctrlTemplate=e}_init(){super._init();this.addEventListener(this.hostElement,"click",e=>{this.hostElement.focus()});this.addEventListener(this.hostElement,"scroll",()=>{this._onPositionChanged();clearTimeout(this._scrollingTimer);this._scrollingTimer=setTimeout(()=>{this._ensurePageIndexPosition()},200)});this.zoomFactorChanged.addHandler(()=>{clearTimeout(this._zoomFactorTimer);this._zoomFactorTimer=setTimeout(()=>{this._ensurePageIndexPosition()},200)})}dispose(){clearTimeout(this._scrollingTimer);clearTimeout(this._zoomFactorTimer);this._disposeBodyStopSwipe&&this._disposeBodyStopSwipe();super.dispose()}_stopSwip(){this._swipeSpeedReducer&&this._swipeSpeedReducer.stop()}_bindTouchEvents(e){super._bindTouchEvents(e);e.touchStart.addHandler(this._stopSwip,this);e.swipe.addHandler((t,i)=>{this._swipeSpeedReducer||(this._swipeSpeedReducer=new _SpeedReducer);this._swipeSpeedReducer.start(i.speed.x,i.speed.y,(t,i)=>{var r=e.hostElement.scrollLeft,a=e.hostElement.scrollTop;e.hostElement.scrollLeft-=t;e.hostElement.scrollTop-=i;r==e.hostElement.scrollLeft&&a==e.hostElement.scrollTop&&this._stopSwip()})});var t=new _TouchManager(document.body,!1),i=this._stopSwip.bind(this);this.addEventListener(document.body,"mousedown",i,!0);t.touchStart.addHandler(i);this._disposeBodyStopSwipe=()=>{this._stopSwip();_removeEvent(document.body,"mousedown",i);t.touchStart.removeHandler(i);t.dispose();this._disposeBodyStopSwipe=null}}_getAbovePageCount(e){return this._hitTestPageIndex(e)}refresh(e){this._stopSwip();super.refresh(e)}_hitTestPageIndex(e){if(!this.pages)return this.pageIndex;for(var t=0,i=0;t<this.pages.length;t++)if(e<(i+=this._getPageSize(t).height.valueInPixel*this.zoomFactor+_PageViewBase._pageMargin)){if(i-e<1)continue;break}return Math.min(t,this.pages.length-1)}_guessPageIndex(){const e=Math.abs(this.hostElement.scrollHeight-this.hostElement.clientHeight-this.hostElement.scrollTop)<=1;return this.pages&&e?this.pages.length-1:this._hitTestPageIndex(this.hostElement.scrollTop)}_render(e){var t=this.pages.length,i=e-_ContinuousPageView._preFetchPageCount,r=e+_ContinuousPageView._preFetchPageCount,a=[];r=r>t-1?t-1:r;for(var s=i=i<0?0:i;s<=r;s++)a.push(this._renderViewPage(this._pagesWrapper.querySelectorAll("."+ViewerBaseClsNames.viewPage).item(s),s,!0));return new _CompositedPromise(a)}_moveToPagePosition(e){this._stopSwip();for(var t=0,i=0,r=!e.pageBounds,a=e.pageBounds||{x:0,y:0,width:0,height:0},s=r?0:_PageViewBase._pageMargin,o=this.pages[this.pageIndex],n=0;n<e.pageIndex;n++){t+=this._getPageSize(n).height.valueInPixel*this.zoomFactor+_PageViewBase._pageMargin;this._borderBoxMode||(t+=2*_PageViewBase._pageBorderWidth)}var h=_getTransformedPosition(a,o.size,r?_RotateAngle.NoRotate:o.rotateAngle,this.zoomFactor);t+=h.y+s+1;i+=h.x+s;i+=this._getPageViewOffsetLeft(e.pageIndex);this.hostElement.scrollTop=t;this.hostElement.scrollLeft=i}_pointInViewPanelClientArea(e,t){return e>=0&&t>=0&&e<this.hostElement.clientWidth&&t<this.hostElement.clientHeight}_panelViewPntToPageView(e,t){var i=this.hostElement.scrollTop+t,r=0;if(this.hostElement.scrollLeft>0)r=this.hostElement.scrollLeft+e;else{var a=this.hostElement.getBoundingClientRect();r=e-(this._pagesWrapper.getBoundingClientRect().left-a.left)+_PageViewBase._pageMargin}var s=this._hitTestPageIndex(i);if(s<0)return null;r-=this._getPageViewOffsetLeft(s);for(var o=0;o<s;o++){i-=this._getPageSize(o).height.valueInPixel*this.zoomFactor+_PageViewBase._pageMargin;this._borderBoxMode||(i-=2*_PageViewBase._pageBorderWidth)}return{x:r,y:i,pageIndex:s}}_reserveViewPage(){_removeChildren(this._pagesWrapper);for(var e=0;e<(this.pages||[]).length;e++){var t=this._addViewPage(),i=this._getPageSize(e);t.style.height=i.height.valueInPixel*this.zoomFactor+"px";t.style.width=i.width.valueInPixel*this.zoomFactor+"px"}}_updatePageViewTransform(){if(this.pages&&this.pages.length){var e;e=this._pagesWrapper.querySelectorAll("."+ViewerBaseClsNames.viewPage);for(var t=0;t<e.length;t++)this._setPageTransform(e.item(t),t)}}_zoomToViewWidth(){this.pages&&0!=this.pages.length&&(this.zoomFactor=this._calcZoomToViewWidthFactor())}_calcZoomToViewWidthFactor(){if(!this.pages||0==this.pages.length)return;let e=this._getViewPortHeight(),t=this._getViewPortWidth(),i=0,r=0;for(let e=0;e<this.pages.length;e++){let t=this._getPageSize(e);t.width.valueInPixel>i&&(i=t.width.valueInPixel);r+=t.height.valueInPixel}t/i>e/r&&(t-=_Scroller.getScrollbarWidth());return t/i}_ensurePageIndexPosition(){var e=this._guessPageIndex();if(this.pageIndex!==e){this._render(e);this._updatePageIndex(e)}}_getPageViewOffsetLeft(e){var t=this._pagesWrapper.querySelectorAll("."+ViewerBaseClsNames.viewPage).item(e);return t?t.offsetLeft-this._pagesWrapper.offsetLeft:0}}_ContinuousPageView._preFetchPageCount=3;_ContinuousPageView._ctrlTemplate="";export class _SinglePageView extends _PageViewBase{constructor(e){super(e);this._innerNavigating=!1;this._virtualScrollMode=!0;addClass(e,ViewerBaseClsNames.pageViewSingle)}static get controlTemplate(){_SinglePageView._ctrlTemplate||(_SinglePageView._ctrlTemplate=`<div class="${ViewerBaseClsNames.pageViewPagesContainer}" wj-part="pages-container" tabindex="0"> <div class="${ViewerBaseClsNames.pagesWrapper}" wj-part="pages-wrapper"></div></div><div class="${ViewerBaseClsNames.pageViewVScroller}" wj-part="vscroller" tabindex="-1"></div> `);return _SinglePageView._ctrlTemplate}static set controlTemplate(e){_SinglePageView._ctrlTemplate=e}_init(){super._init();this._initScroller();this._initEvents()}_initScroller(){new _VScroller(this._vscroller).valueChanged.addHandler(()=>{this._timeoutId=setTimeout(()=>this._doScrollerValueChanged())})}_initEvents(){this.addEventListener(this._pagesContainer,"wheel",e=>{this._doContainerWheel(e)});this.addEventListener(this._pagesContainer,"scroll",e=>{this._doContainerScroll()});this.addEventListener(this._pagesContainer,"keydown",e=>{this._doContainerKeyDown()});this.addEventListener(this._pagesContainer,"click",e=>{this._pagesContainer.focus()})}_bindTouchEvents(e){super._bindTouchEvents(e);this._touchManager=e;this._swipeHandler=(e,t)=>{switch(t.direction){case _TouchDirection.Down:var i=this.resolvePageIndex(this.pageIndex-1);i!=this.pageIndex&&this.moveToPage(i);break;case _TouchDirection.Up:var r=this.resolvePageIndex(this.pageIndex+1);r!=this.pageIndex&&this.moveToPage(r)}};e.swipe.addHandler(this._swipeHandler)}_getTemplateParts(){return{_pagesWrapper:"pages-wrapper",_pagesContainer:"pages-container",_vscroller:"vscroller"}}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(var a in i){var s=i[a];this[a]=r.querySelector('[wj-part="'+s+'"]');null==this[a]&&r.getAttribute("wj-part")==s&&(this[a]=t);if(null==this[a])throw'Missing template part: "'+s+'"'}return r}get virtualScrollMode(){return this._virtualScrollMode}set virtualScrollMode(e){if(this._virtualScrollMode!==e){this._virtualScrollMode=e;this.invalidate()}}get _isScrollerVisible(){return this._virtualScrollMode&&this.pages&&this.pages.length>1}get _scroller(){return Control.getControl(this._vscroller)}get _hasPageVScrollBar(){return this._hasScrollbar(this._pagesContainer)}get _hasPageHScrollBar(){return this._hasScrollbar(this._pagesContainer,!0)}_getPagesContainer(){return this._pagesContainer}_getPageHeightWithoutZoom(e){var t=this._pagesContainer.clientHeight,i=this._getPageSize(e).height.valueInPixel+2*_PageViewBase._pageMargin;return Math.max(i,t)}_hasScrollbar(e,t){return t?e.scrollWidth>e.clientWidth:e.scrollHeight>e.clientHeight}_updateScroller(){if(this._isScrollerVisible){var e=this._scroller;e.height=this._pagesContainer.clientHeight;for(var t=0,i=0;i<this.pages.length;i++)t+=this._getPageHeightWithoutZoom(i);e.max=t;this._updateScrollerValue()}}_updateScrollerValue(){if(this._isScrollerVisible){var e=this.pageIndex;if(!(e<0)){var t=0;this._pagesContainer.scrollTop>0&&(t=this._pagesContainer.scrollTop/(this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight));for(var i=this._scroller,r=this.pages.length,a=0,s=0;s<e;s++)a+=this._getPageHeightWithoutZoom(s);a+=this._getPageHeightWithoutZoom(e)*t;e>=r-1&&!this._hasPageVScrollBar&&(a=i.max);i.value=a}}}_doScrollerValueChanged(){if(this._isScrollerVisible){for(var e=this._scroller,t=this.pages.length,i=e.value,r=0,a=1;r<t;r++){var s=this._getPageHeightWithoutZoom(r);if(!(i>s)){a=i/s;break}i-=s}r>=t&&(r=t-1);this._innerMoveToPage(r,a)}}_doContainerWheel(e){if(this._isScrollerVisible&&0!=e.deltaY){var t=e.deltaY<0;if(this._hasPageVScrollBar)if(t){if(this._pagesContainer.scrollTop>0)return}else if(this._pagesContainer.scrollTop<this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight)return;t?this._innerMoveToPreviousPageAtBottom(e):this._innerMoveToNextPageAtTop(e)}}_doContainerScroll(){if(this._isScrollerVisible&&this._pagesContainer.scrollTop!=this._desiredPageScrollTop){this._updateScrollerValue();this._onPositionChanged()}}_doContainerKeyDown(){if(this._isScrollerVisible){var e=event;if(this._hasPageVScrollBar)switch(e.keyCode){case Key.PageDown:this._pagesContainer.scrollTop>=this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight&&this._innerMoveToNextPageAtTop(e);break;case Key.PageUp:0==this._pagesContainer.scrollTop&&this._innerMoveToPreviousPageAtBottom(e)}else switch(e.keyCode){case Key.Down:case Key.PageDown:this._innerMoveToNextPageAtTop(e);break;case Key.Up:case Key.PageUp:this._innerMoveToPreviousPageAtBottom(e)}}}_preventContainerScroll(){this._desiredPageScrollTop=this._pagesContainer.scrollTop}_innerMoveToPreviousPageAtBottom(e){if(this.pageIndex>0){e&&e.preventDefault();this._innerMoveToPage(this.pageIndex-1,1);this._updateScrollerValue()}}_innerMoveToNextPageAtTop(e){if(this.pageIndex<this.pages.length-1){e&&e.preventDefault();this._innerMoveToPage(this.pageIndex+1,0);this._updateScrollerValue()}}_innerMoveToPage(e,t){this._innerNavigating=!0;var i={pageIndex:e};this.moveToPosition(i).then(e=>{this._innerMoveToPagePosition(t);this._innerNavigating=!1})}_innerMoveToPagePosition(e){if(this._hasPageVScrollBar){var t=(this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight)*e;this._pagesContainer.scrollTop=t;this._preventContainerScroll()}}moveToPosition(e){var t=super.moveToPosition(e);this._innerNavigating||this._updateScrollerValue();return t}_moveToPagePosition(e){var t=e.pageBounds||{x:0,y:0,width:0,height:0},i=e.pageBounds?_PageViewBase._pageMargin:0,r=this.pages[this.pageIndex],a=_getTransformedPosition(t,r.size,r.rotateAngle,this.zoomFactor);if(!e.samePage){this._pagesContainer.scrollTop=a.y+i;this._pagesContainer.scrollLeft=a.x+i}}_hitTestPageIndex(e){return this.pageIndex}_pointInViewPanelClientArea(e,t){return e>=0&&t>=0&&e<this._pagesContainer.clientWidth&&t<this._pagesContainer.clientHeight}_panelViewPntToPageView(e,t){if(this.pageIndex<0)return null;var i=this._pagesContainer.scrollTop+t,r=0;if(this._pagesContainer.scrollLeft>0)r=this._pagesContainer.scrollLeft+e;else{var a=this._pagesContainer.getBoundingClientRect();r=e-(this._pagesWrapper.getBoundingClientRect().left-a.left)+_PageViewBase._pageMargin}return{x:r,y:i,pageIndex:this.pageIndex}}_render(e){return this._renderViewPage(this._pagesWrapper.querySelector("."+ViewerBaseClsNames.viewPage),e,!1)}_guessPageIndex(){return this.pageIndex}_reserveViewPage(){_removeChildren(this._pagesWrapper);this._addViewPage();this.invalidate()}_updatePageViewTransform(){var e;e=this._pagesWrapper.querySelector("."+ViewerBaseClsNames.viewPage);this._setPageTransform(e,this.pageIndex)}_onPageLoaded(e,t){super._onPageLoaded(e,t);this._updateScroller()}_onZoomFactorChanged(e,t){super._onZoomFactorChanged(e,t);this._updateScroller()}_zoomToViewWidth(){if(!this.pages||0==this.pages.length)return;this._getPageSize(this.pageIndex)&&(this.zoomFactor=this._calcZoomToViewWidthFactor())}_calcZoomToViewWidthFactor(){if(!this.pages||0==this.pages.length)return;let e=this._getViewPortHeight(),t=this._getViewPortWidth();const i=this._getPageSize(this.pageIndex),r=i.height.valueInPixel,a=i.width.valueInPixel;t/a>e/r&&(t-=_Scroller.getScrollbarWidth());return t/a}refresh(e=!0){super.refresh(e);this._isScrollerVisible?addClass(this.hostElement,"virtual"):removeClass(this.hostElement,"virtual");this._updateScroller()}dispose(){if(this._vscroller&&Control.getControl(this._vscroller)){const e=Control.getControl(this._vscroller);e.valueChanged.removeHandler(this._doScrollerValueChanged);e.dispose()}if(this._timeoutId){clearTimeout(this._timeoutId);this._timeoutId=null}this._touchManager&&this._touchManager.swipe.removeHandler(this._swipeHandler);this._pagesContainer=null;this._vscroller=null;this._touchManager=null;super.dispose()}}_SinglePageView._ctrlTemplate="";export class _CompositePageView extends Control{constructor(e){super(e);this._viewMode=ViewMode.Single;this.pageIndexChanged=new Event;this.zoomFactorChanged=new Event;this.zoomModeChanged=new Event;this.positionChanged=new Event;this.rotateAngleChanged=new Event;this.pageLoaded=new Event;this._handlerPageIndexChanged=()=>this.onPageIndexChanged();this._handlerZoomFactorChanged=(e,t)=>this.onZoomFactorChanged(t.oldValue,t.newValue);this._handlerZoomModeChanged=(e,t)=>this.onZoomModeChanged(t.oldValue,t.newValue);this._handlerPositionChanged=()=>this.onPositionChanged();this._handlerRotateAngleChanged=()=>this.onRotateAngleChanged();this._handlerPageLoaded=(e,t)=>this.onPageLoaded(t);var t;t=this.getTemplate();this.applyTemplate(ViewerBaseClsNames.container,t,{_singlePageView:"single-pageview",_continuousPageView:"continuous-pageview"});this._initPageView()}static get controlTemplate(){_CompositePageView._ctrlTemplate||(_CompositePageView._ctrlTemplate=`<div class="${ViewerBaseClsNames.pageview}" wj-part="single-pageview"></div><div class="${ViewerBaseClsNames.pageview}" wj-part="continuous-pageview"></div>`);return _CompositePageView._ctrlTemplate}static set controlTemplate(e){_CompositePageView._ctrlTemplate=e}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(var a in i){var s=i[a];this[a]=r.querySelector('[wj-part="'+s+'"]');null==this[a]&&r.getAttribute("wj-part")==s&&(this[a]=t);if(null==this[a])throw'Missing template part: "'+s+'"'}return r}get pageIndex(){return this._activePageView.pageIndex}get pages(){return this._activePageView.pages}set pages(e){this._activePageView.pages=e}get zoomMode(){return this._activePageView.zoomMode}set zoomMode(e){this._activePageView.zoomMode=e}get zoomFactor(){return this._activePageView.zoomFactor}set zoomFactor(e){this._activePageView.zoomFactor=e}get panMode(){return this._activePageView.panMode}set panMode(e){this._activePageView.panMode=e}get viewMode(){return this._viewMode}set viewMode(e){if(this._viewMode!==e){this._viewMode=e;this._updateActivePageView()}}get scrollTop(){return this._activePageView.scrollTop}get scrollLeft(){return this._activePageView.scrollLeft}get _activePageViewElement(){return this.viewMode===ViewMode.Single?this._singlePageView:this._continuousPageView}onPageIndexChanged(){this.pageIndexChanged.raise(this)}onZoomFactorChanged(e,t){this.zoomFactorChanged.raise(this,{oldValue:e,newValue:t})}onZoomModeChanged(e,t){this.zoomModeChanged.raise(this,{oldValue:e,newValue:t})}onPositionChanged(){this.positionChanged.raise(this)}onRotateAngleChanged(){this.rotateAngleChanged.raise(this)}onPageLoaded(e){this.pageLoaded.raise(this,e)}_updateActivePageView(){var e=this._activePageView.pageIndex,t=this._activePageView.pages,i=this._activePageView.zoomFactor,r=this._activePageView.zoomMode,a=this._activePageView.panMode;this._removePageViewHandlers(this._activePageView);this._activePageView=Control.getControl(this._activePageViewElement);this._activePageView.pages||(this._activePageView.pages=t);this._activePageView.invalidate();this._updatePageViewsVisible();this._activePageView.moveToPage(e);this._activePageView.zoomFactor=i;this._activePageView.zoomMode=r;this._activePageView.panMode=a;this._addPageViewHandlers(this._activePageView)}_initPageView(){this._activePageView=new _SinglePageView(this._singlePageView);this._addPageViewHandlers(this._activePageView);new _ContinuousPageView(this._continuousPageView);this._updatePageViewsVisible()}_addPageViewHandlers(e){this._activePageView.pageIndexChanged.addHandler(this._handlerPageIndexChanged);this._activePageView.zoomFactorChanged.addHandler(this._handlerZoomFactorChanged);this._activePageView.zoomModeChanged.addHandler(this._handlerZoomModeChanged);this._activePageView.positionChanged.addHandler(this._handlerPositionChanged);this._activePageView.rotateAngleChanged.addHandler(this._handlerRotateAngleChanged);this._activePageView.pageLoaded.addHandler(this._handlerPageLoaded)}_removePageViewHandlers(e){e.pageIndexChanged.removeHandler(this._handlerPageIndexChanged);e.zoomFactorChanged.removeHandler(this._handlerZoomFactorChanged);e.zoomModeChanged.removeHandler(this._handlerZoomModeChanged);e.positionChanged.removeHandler(this._handlerPositionChanged);e.rotateAngleChanged.removeHandler(this._handlerRotateAngleChanged);e.pageLoaded.removeHandler(this._handlerPageLoaded)}_updatePageViewsVisible(){if(this.viewMode===ViewMode.Single){removeClass(this._singlePageView,"hidden");hasClass(this._continuousPageView,"hidden")||addClass(this._continuousPageView,"hidden")}else{removeClass(this._continuousPageView,"hidden");hasClass(this._singlePageView,"hidden")||addClass(this._singlePageView,"hidden")}}moveToPage(e){return this._activePageView.moveToPage(e)}moveToPosition(e){return this._activePageView.moveToPosition(e)}rotatePageTo(e,t){this._activePageView.rotatePageTo(e,t)}hitTest(e,t){return this._activePageView.hitTest(e,t)}resetPages(){Control.getControl(this._singlePageView).resetPages();Control.getControl(this._continuousPageView).resetPages()}refresh(e=!0){super.refresh(e);Control.getControl(this._activePageViewElement).invalidate();this._activePageView.refresh()}isPageContentLoaded(e){return this._activePageView.isPageContentLoaded(e)}dispose(){this._removePageViewHandlers(this._activePageView);Control.getControl(this._singlePageView)&&Control.getControl(this._singlePageView).dispose();Control.getControl(this._continuousPageView)&&Control.getControl(this._continuousPageView).dispose();Control.getControl(this._activePageView)&&Control.getControl(this._activePageView).dispose();this._activePageView=null;this._singlePageView=null;this._continuousPageView=null;super.dispose()}}_CompositePageView._ctrlTemplate="";const _isIOS="undefined"!=typeof navigator&&null!=navigator.userAgent.match(/iPhone|iPad|iPod/i),_svgStart='<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 24 24" xml:space="preserve">',_svgEnd="</svg>",_checkedCss=ControlStateClsNames.active,_disabledCss=ControlStateClsNames.disabled;export const _commandTagAttr="command-tag";export function isIOS(){return _isIOS}export function _createSvgBtn(e){var t=_toDOM(_svgStart+e+_svgEnd);addClass(t,InputFormElementsClsNames.svgBtn);var i=document.createElement("a");i.appendChild(t);addClass(i,InputFormElementsClsNames.btn);i.tabIndex=0;return i}export function _checkImageButton(e,t){t?addClass(e,_checkedCss):removeClass(e,_checkedCss)}export function _checkSeparatorShown(e){for(var t,i,r,a,s=!0,o=0;o<e.children.length;o++){i=e.children[o];t=hasClass(i,UtilitesClsNames.separator);r=hasClass(i,"hidden");if(t||r){if(t){if(s)r||addClass(i,"hidden");else{r&&removeClass(i,"hidden");a=i}s=!0}}else s=!1}s&&a&&addClass(a,"hidden")}export function _disableImageButton(e,t){if(t)addClass(e,_disabledCss);else{removeClass(e,_disabledCss);if(e instanceof HTMLElement){const t=e.querySelectorAll("input[disabled]");for(let e=0;e<t.length;e++)t[e].disabled=!1;const i=e.querySelectorAll("button[disabled]");for(let e=0;e<i.length;e++)i[e].disabled=!1}}}export function _getPositionByHitTestInfo(e){return e?{pageIndex:e.pageIndex,pageBounds:{x:e.x,y:e.y,width:0,height:0}}:{pageIndex:0,pageBounds:{x:0,y:0,width:0,height:0}}}export function _setLandscape(e,t){if(e.landscape!==t){e.landscape=t;var i=e.width;e.width=e.height;e.height=i;var r=e.leftMargin;if(t){e.leftMargin=e.bottomMargin;e.bottomMargin=e.rightMargin;e.rightMargin=e.topMargin;e.topMargin=r}else{e.leftMargin=e.topMargin;e.topMargin=e.rightMargin;e.rightMargin=e.bottomMargin;e.bottomMargin=r}}}export function _showImageButton(e,t){t?removeClass(e,"hidden"):addClass(e,"hidden")}export function _isDisabledImageButton(e){return hasClass(e,_disabledCss)}export function _isCheckedImageButton(e){return hasClass(e,_checkedCss)}export function _toDOM(e){return _toDOMs(e).firstChild}export class _Toolbar extends Control{constructor(e){super(e);this._disposed=!1;this.svgButtonClicked=new Event;var t;t=this.getTemplate();this.applyTemplate(ViewerBaseClsNames.toolbar,t,{_toolbarWrapper:"toolbar-wrapper",_toolbarContainer:"toolbar-container",_toolbarLeft:"toolbar-left",_toolbarRight:"toolbar-right"});this.addEventListener(this._toolbarLeft,"mouseover",()=>{this._scrollLeft()});this.addEventListener(this._toolbarLeft,"mouseout",()=>{this._clearToolbarMoveTimer()});this.addEventListener(this._toolbarRight,"mouseover",()=>{this._scrollRight()});this.addEventListener(this._toolbarRight,"mouseout",()=>{this._clearToolbarMoveTimer()})}static get controlTemplate(){_Toolbar._ctrlTemplate||(_Toolbar._ctrlTemplate=`<div class="${ViewerBaseClsNames.toolbarMove} left" wj-part="toolbar-left"><span class=${GlyphClsNames.left}></span></div><div class="${ViewerBaseClsNames.toolbarContainer}" wj-part="toolbar-container"><div class="${ViewerBaseClsNames.toolbarWrapper} ${InputFormElementsClsNames.btnGroup}" wj-part="toolbar-wrapper"></div></div><div class="${ViewerBaseClsNames.toolbarMove} right" wj-part="toolbar-right"><span class=${GlyphClsNames.right}></span></div>`);return _Toolbar._ctrlTemplate}static set controlTemplate(e){_Toolbar._ctrlTemplate=e}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(var a in i){var s=i[a];this[a]=r.querySelector('[wj-part="'+s+'"]');null==this[a]&&r.getAttribute("wj-part")==s&&(this[a]=t);if(null==this[a])throw'Missing template part: "'+s+'"'}return r}dispose(){this._disposed=!0;super.dispose()}_clearToolbarMoveTimer(){if(null!=this._toolbarMoveTimer){clearTimeout(this._toolbarMoveTimer);this._toolbarMoveTimer=null}}_scrollRight(){var e=this._toolbarContainer.offsetWidth-this._toolbarWrapper.offsetWidth,t=this._toolbarWrapper.style,i=(t.left?parseInt(t.left):0)-_Toolbar._moveStep;this._checkMoveButtonEnabled();if(!(i<e)){t.left=i+"px";this._toolbarMoveTimer=setTimeout(()=>this._scrollRight(),_Toolbar._moveInterval)}}_scrollLeft(){var e=this._toolbarWrapper.style,t=(e.left?parseInt(e.left):0)+_Toolbar._moveStep;this._checkMoveButtonEnabled();if(!(t>0)){e.left=t+"px";this._toolbarMoveTimer=setTimeout(()=>this._scrollLeft(),_Toolbar._moveInterval)}}_checkMoveButtonEnabled(){var e=this._toolbarLeft.getBoundingClientRect().width,t=this._toolbarWrapper.offsetLeft-e+_Toolbar._moveStep<=0,i=hasClass(this._toolbarLeft,_Toolbar._enabledCss);t?i||addClass(this._toolbarLeft,_Toolbar._enabledCss):i&&removeClass(this._toolbarLeft,_Toolbar._enabledCss);var r=this._toolbarRight.getBoundingClientRect().width,a=this._toolbarContainer.getBoundingClientRect().width-this._toolbarWrapper.getBoundingClientRect().width,s=this._toolbarWrapper.offsetLeft-r-_Toolbar._moveStep>=a,o=hasClass(this._toolbarRight,_Toolbar._enabledCss);s?o||addClass(this._toolbarRight,_Toolbar._enabledCss):o&&removeClass(this._toolbarRight,_Toolbar._enabledCss)}_showToolbarMoveButton(e){var t=e?"visible":"hidden";this._toolbarLeft.style.visibility=t;this._toolbarRight.style.visibility=t;this._checkMoveButtonEnabled()}_globalize(){}resetWidth(){var e=this._toolbarLeft.getBoundingClientRect().width,t=this._toolbarRight.getBoundingClientRect().width,i=this.hostElement.getBoundingClientRect().width;this._toolbarContainer.style.width="1500px";this._toolbarWrapper.style.width="auto";var r=this._toolbarWrapper.getBoundingClientRect().width+2;this._toolbarWrapper.style.width=r+"px";this._toolbarContainer.style.width=i-e-t+"px";var a=e+t+r>i;this._showToolbarMoveButton(a);a||(this._toolbarWrapper.style.left="0px")}addSeparator(){var e=document.createElement("span");e.className=UtilitesClsNames.separator;this._toolbarWrapper.appendChild(e);return e}onSvgButtonClicked(e){this.svgButtonClicked.raise(this,e)}addCustomItem(e,t){isString(e)&&(e=_toDOM(e));null!=t&&e.setAttribute("command-tag",t.toString());this._toolbarWrapper.appendChild(e)}addSvgButton(e,t,i,r){var a=_createSvgBtn(t);a.title=e;a.setAttribute("command-tag",i.toString());this._toolbarWrapper.appendChild(a);["click","keydown"].forEach(e=>{this.addEventListener(a,e,e=>{var t=e||window.event;("keydown"!==t.type||t.keyCode!==Key.Enter)&&"click"!==t.type||_isDisabledImageButton(a)||!r&&_isCheckedImageButton(a)||this.onSvgButtonClicked({commandTag:i})})});return a}refresh(e=!0){super.refresh(e);e&&this._globalize()}}_Toolbar._moveStep=4;_Toolbar._moveInterval=5;_Toolbar._enabledCss="enabled";_Toolbar._ctrlTemplate="";export class _ViewerToolbarBase extends _Toolbar{constructor(e,t){super(e);this._viewer=t;this._initToolbarItems();var update=()=>this.isDisabled=!this._viewer._getDocumentSource();this._viewer._documentSourceChanged.addHandler(update);update();this._viewer._viewerActionStatusChanged.addHandler((e,t)=>{var i=t.action,r=this.hostElement.querySelector('[command-tag="'+i.actionType.toString()+'"]');_checkImageButton(r,i.checked);_disableImageButton(r,i.disabled);_showImageButton(r,i.shown);_checkSeparatorShown(this._toolbarWrapper)})}static get controlTemplate(){_ViewerToolbarBase._ctrlTemplate||(_ViewerToolbarBase._ctrlTemplate=_Toolbar.controlTemplate);return _ViewerToolbarBase._ctrlTemplate}static set controlTemplate(e){_ViewerToolbarBase._ctrlTemplate=e}_initToolbarItems(){throw culture.Viewer.abstractMethodException}onSvgButtonClicked(e){super.onSvgButtonClicked(e);this._viewer._executeAction(parseInt(e.commandTag))}get viewer(){return this._viewer}static _initToolbarZoomValue(e,t){var i,r,a,s,o=Control.getControl(e),n=document.createElement("div"),h=ViewerBase._defaultZoomValues;n.className=ViewerBaseClsNames.inputZoom;o.addCustomItem(n,_ViewerActionType.ZoomValue);(i=new ComboBox(n,{keyActionPrintCharacters:0,keyActionTab:0})).deferUpdate(()=>{for(a=0;a<h.length;a++)for(s=a+1;s<h.length;s++)if(h[a].value>h[s].value){r=h[a];h[a]=h[s];h[s]=r}i.itemsSource=h;i.isEditable=!0;i.displayMemberPath="name";i.selectedValuePath="value";i.selectedValue=1});i.selectedIndexChanged.addHandler(()=>{if(i.isDroppedDown){var e=i.selectedValue;if(null==e){var r=i.text.replace(",","");e=parseFloat(r);isNaN(e)&&(e=100);e*=.01}t.zoomFactor=e}});i.textChanged.addHandler(()=>{var e,r=i.text;if(r.length>0){e=ViewerBase._zoomValuesParser(r);isNaN(e)||(t.zoomFactor=.01*e)}});let l=[t.zoomFactor];const selectZoomRange=e=>{const t=h.length;if(!t)return[e,e];let i=-1;for(let r=0;r<t;r++)if(h[r].value>e){i=r-1;break}if(-1===i){const e=h[0].value;return[e,e]}if(i===t-1){const e=h[i].value;return[e,e]}return[h[i].value,h[i+1].value]};i.addEventListener(i.hostElement,"wheel",e=>{if(i.containsFocus()&&i.selectedIndex<0){const i=selectZoomRange(t.zoomFactor);t.zoomFactor=i[e.deltaY<0?0:1];e.preventDefault()}});i.addEventListener(i.hostElement,"keydown",e=>{if(i.containsFocus())switch(e.keyCode){case Key.Up:h.map(e=>e.value).indexOf(l[1])<0&&(t.zoomFactor=selectZoomRange(l[1])[0]);break;case Key.Down:h.map(e=>e.value).indexOf(l[0])<0&&(t.zoomFactor=selectZoomRange(l[0])[1]);break;case Key.PageUp:t.zoomFactor=h[0].value;break;case Key.PageDown:t.zoomFactor=h[h.length-1].value}});const c=n.querySelector("."+InputFormElementsClsNames.formControl);i.addEventListener(c,"blur",e=>{i.text=ViewerBase._zoomValuesFormatter(t.zoomFactor)});i.addEventListener(c,"keypress",e=>{["1","2","3","4","5","6","7","8","9","0"].indexOf(e.key)<0&&e.preventDefault()});t.zoomFactorChanged.addHandler((e,r)=>{l.push(t.zoomFactor);l.length>2&&l.splice(0,1);i.text=ViewerBase._zoomValuesFormatter(t.zoomFactor);i.isDroppedDown=!1})}static _initToolbarPageNumberInput(e,t){var i,r=Control.getControl(e),a=document.createElement("div"),s=document.createElement("span"),updatePageNumber=()=>{var e=t._getDocumentSource();e&&null!=e.pageCount&&(i.value=t.pageIndex+1)},updatePageCount=()=>{var e=t._getDocumentSource();if(e&&null!=e.pageCount){s.innerHTML=e.pageCount.toString();i.max=e.pageCount;i.min=Math.min(e.pageCount,1);updatePageNumber()}},sourceChanged=()=>{var e=t._getDocumentSource();if(e){updatePageCount();_addWjHandler(t._documentEventKey,e.pageCountChanged,updatePageCount);_addWjHandler(t._documentEventKey,e.loadCompleted,updatePageCount)}};a.className=ViewerBaseClsNames.pageNumber;r.addCustomItem(a,_ViewerActionType.PageNumber);(i=new InputNumber(a)).format="n0";i.addEventListener(a,"keyup",e=>{(e||window.event).keyCode===Key.Enter&&t.moveToPage(i.value-1)});i.addEventListener(i.inputElement,"blur",e=>{t.moveToPage(i.value-1)});r.addCustomItem('<span class="slash">/</span>');s.className=ViewerBaseClsNames.pageCount;r.addCustomItem(s,_ViewerActionType.PageCountLabel);t.pageIndexChanged.addHandler(updatePageNumber);t._getDocumentSource()&&sourceChanged();t._documentSourceChanged.addHandler(sourceChanged)}}_ViewerToolbarBase._ctrlTemplate="";export class _SideTabs extends Control{constructor(e){super(e);this._idCounter=0;this._tabPages=[];this._tabPageDic={};this.tabPageActived=new Event;this.tabPageVisibilityChanged=new Event;this.expanded=new Event;this.collapsed=new Event;var t=this.getTemplate();this.applyTemplate(ControlClsNames.hostElement,t,{_headersContainer:ViewerBaseClsNames.headers,_contentsContainer:ViewerBaseClsNames.contents})}static get controlTemplate(){_SideTabs._ctrlTemplate||(_SideTabs._ctrlTemplate=`<ul class="${ViewerBaseClsNames.nav} ${InputFormElementsClsNames.btnGroup}" wj-part="wj-headers"></ul><div class="${ViewerBaseClsNames.tabContent}" wj-part="wj-contents"></div>`);return _SideTabs._ctrlTemplate}static set controlTemplate(e){_SideTabs._ctrlTemplate=e}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(var a in i){var s=i[a];this[a]=r.querySelector('[wj-part="'+s+'"]');null==this[a]&&r.getAttribute("wj-part")==s&&(this[a]=t);if(null==this[a])throw'Missing template part: "'+s+'"'}return r}get tabPages(){return this._tabPages}getTabPage(e){return this._tabPageDic[e]}getFirstShownTabPage(e){var t;this._tabPages.some(i=>{if(!i.isHidden&&i!==e){t=i;return!0}return!1});return t}get visibleTabPagesCount(){var e=0;this._tabPages.forEach(t=>{t.isHidden||e++});return e}get activedTabPage(){var e;this._tabPages.some(t=>{if(t.isActived){e=t;return!0}return!1});return e}removePage(e){var t;if(t="string"==typeof e?this.getTabPage(e):e){var i=t.id,r=this._tabPages.indexOf(t);if(!(r<0)){this._tabPages.splice(r,1);this._tabPageDic[i]=void 0;if(!this.isCollapsed&&t.isActived){var a=this.getFirstShownTabPage();a?this.active(a):this.collapse()}this._headersContainer.removeChild(t.header);this._contentsContainer.removeChild(t.outContent)}}}addPage(e,t,i){var r=this._getNewTabPageId(),a=document.createElement("li"),s=_toDOM(`<div class="${ViewerBaseClsNames.tabPane}"><div class="${ViewerBaseClsNames.tabTitleWrapper}"><h3 class="${ViewerBaseClsNames.tabtitle}">`+e+`</h3><span class="${UtilitesClsNames.close}">×</span></div>`+`<div class="${ViewerBaseClsNames.tabContentWrapper}"><div class="${ViewerBaseClsNames.tabContentInner}"></div></div></div>`),o=_createSvgBtn(t);a.appendChild(o);i=null==i?this._tabPages.length:i;if((i=Math.min(Math.max(i,0),this._tabPages.length))>=this._tabPages.length){this._headersContainer.appendChild(a);this._contentsContainer.appendChild(s)}else{this._headersContainer.insertBefore(a,this._tabPages[i].header);this._contentsContainer.insertBefore(s,this._tabPages[i].outContent)}this.addEventListener(s.querySelector("."+UtilitesClsNames.close),"click",()=>{this.collapse()});["click","keydown"].forEach(e=>{this.addEventListener(a.querySelector("a"),e,e=>{var t=this.getTabPage(r);if(t){("keydown"===e.type&&e.keyCode===Key.Enter||"click"===e.type)&&this.active(t)}})});var n=new _TabPage(s,a,r);i>=this._tabPages.length?this._tabPages.push(n):this._tabPages.splice(i,0,n);this._tabPageDic[r]=n;if(!this.isCollapsed){this.activedTabPage||this.active(n)}return n}get isCollapsed(){return hasClass(this.hostElement,_SideTabs._collapsedCss)}hide(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&!hasClass(t.header,"hidden")){addClass(t.header,"hidden");this.onTabPageVisibilityChanged(t);this.deactive(t)}}show(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&hasClass(t.header,"hidden")){removeClass(t.header,"hidden");this.onTabPageVisibilityChanged(t);if(!this.isCollapsed){this.activedTabPage||this.active(t)}}}deactive(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&t.isActived){removeClass(t.outContent,_SideTabs._activedCss);_checkImageButton(t.header.querySelector("a"),!1);var i=this.getFirstShownTabPage(t);i?this.active(i):this.collapse()}}active(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&!t.isActived){this._clearActiveStyles();this.show(t);addClass(t.outContent,_SideTabs._activedCss);_checkImageButton(t.header.querySelector("a"),!0);this.expand();this.onTabPageActived()}}enable(e,t=!0){var i="string"==typeof e?this.getTabPage(e):e;i&&i.enable(t)}enableAll(e=!0){this._tabPages.forEach(t=>{t.enable(e)})}onTabPageActived(){this.tabPageActived.raise(this)}onTabPageVisibilityChanged(e){this.tabPageVisibilityChanged.raise(this,{tabPage:e})}onExpanded(){this.expanded.raise(this)}onCollapsed(){this.collapsed.raise(this)}collapse(){if(!this.isCollapsed){this._clearActiveStyles();addClass(this.hostElement,_SideTabs._collapsedCss);this.onCollapsed()}}expand(){if(this.isCollapsed){removeClass(this.hostElement,_SideTabs._collapsedCss);if(!this.activedTabPage){var e=this.getFirstShownTabPage();e&&this.active(e)}this.onExpanded()}}toggle(){this.isCollapsed?this.expand():this.collapse()}_clearActiveStyles(){this._tabPages.forEach(e=>{removeClass(e.outContent,_SideTabs._activedCss);_checkImageButton(e.header.querySelector("a"),!1)})}_getNewTabPageId(){for(;this._tabPageDic[(this._idCounter++).toString()];);return this._idCounter.toString()}}_SideTabs._activedCss="active";_SideTabs._collapsedCss="collapsed";_SideTabs._ctrlTemplate="";export class _TabPage{constructor(e,t,i){this._header=t;this._outContent=e;this._content=e.querySelector("."+ViewerBaseClsNames.tabContentInner);this._id=i}get isActived(){return hasClass(this.outContent,_SideTabs._activedCss)}get isHidden(){return hasClass(this.header,"hidden")}get id(){return this._id}get header(){return this._header}get content(){return this._content}get outContent(){return this._outContent}enable(e=!0){enable(this._header,e);enable(this._content,e)}format(e){e(this)}}export class _PageSetupEditor extends Control{constructor(e){super(e);this._uiUpdating=!1;var t;assert(null!=ComboBox,"Missing dependency: _PageSetupEditor requires wijmo.input.");t=this.getTemplate();this.applyTemplate(ControlClsNames.hostElement,t,{_divPaperKind:"div-paper-kind",_divOrientation:"div-page-orientation",_divMarginsLeft:"div-margins-left",_divMarginsRight:"div-margins-right",_divMarginsTop:"div-margins-top",_divMarginsBottom:"div-margins-bottom",_gPaperKind:"g-paperkind",_gOrientation:"g-orientation",_gMargins:"g-margins",_gLeft:"g-left",_gRight:"g-right",_gTop:"g-top",_gBottom:"g-bottom"});let i={format:"n2",min:0,max:4,step:.25,valueChanged:this._updateValue.bind(this)};this._numMarginsLeft=new InputNumber(this._divMarginsLeft,i);this._numMarginsRight=new InputNumber(this._divMarginsRight,i);this._numMarginsTop=new InputNumber(this._divMarginsTop,i);this._numMarginsBottom=new InputNumber(this._divMarginsBottom,i);this._cmbPaperKind=new ComboBox(this._divPaperKind,{itemsSource:_enumToArray(_PaperKind),displayMemberPath:"text",selectedValuePath:"value",isEditable:!1,keyActionPrintCharacters:0,keyActionTab:0});this._cmbPaperKind.selectedIndexChanged.addHandler(this._updateValue,this);this._cmbOrientation=new ComboBox(this._divOrientation,{itemsSource:[culture.Viewer.portrait,culture.Viewer.landscape],isEditable:!1,keyActionPrintCharacters:0,keyActionTab:0});this._cmbOrientation.selectedIndexChanged.addHandler(this._updateValue,this);this._globalize()}static get controlTemplate(){_PageSetupEditor._ctrlTemplate||(_PageSetupEditor._ctrlTemplate='<div><div style="padding:12px;"><table style="table-layout:fixed"><tr><td wj-part="g-paperkind"></td><td><div wj-part="div-paper-kind"></div></td></tr><tr><td wj-part="g-orientation"></td><td><div wj-part="div-page-orientation"></div></td></tr></table><fieldset style="margin-top: 12px"><legend wj-part="g-margins"></legend><table style="table-layout:fixed"><tr><td wj-part="g-left"></td><td><div wj-part="div-margins-left"></div></td></tr><tr><td wj-part="g-right"></td><td><div wj-part="div-margins-right"></div></td></tr><tr><td wj-part="g-top"></td><td><div wj-part="div-margins-top"></div></td></tr><tr><td wj-part="g-bottom"></td><td><div wj-part="div-margins-bottom"></div></td></tr></table></fieldset></div></div>');return _PageSetupEditor._ctrlTemplate}static set controlTemplate(e){_PageSetupEditor._ctrlTemplate=e}get pageSettings(){return this._pageSettings}set pageSettings(e){var t=this._clonePageSettings(e);this._pageSettings=t;this._updateUI();this._cmbPaperKind.focus()}_globalize(){var e=culture.Viewer;this._gPaperKind.textContent=e.paperKind;this._gOrientation.textContent=e.orientation;this._gMargins.textContent=e.margins;this._gLeft.textContent=e.left;this._gRight.textContent=e.right;this._gTop.textContent=e.top;this._gBottom.textContent=e.bottom;var t=this._cmbOrientation.selectedIndex;this._cmbOrientation.itemsSource=[culture.Viewer.portrait,culture.Viewer.landscape];this._cmbOrientation.selectedIndex=t}_updateValue(){if(!this._uiUpdating){var e=this.pageSettings;if(e){e.bottomMargin=new _Unit(this._numMarginsBottom.value,_UnitType.Inch);e.leftMargin=new _Unit(this._numMarginsLeft.value,_UnitType.Inch);e.rightMargin=new _Unit(this._numMarginsRight.value,_UnitType.Inch);e.topMargin=new _Unit(this._numMarginsTop.value,_UnitType.Inch);e.paperSize=this._cmbPaperKind.selectedValue;_setLandscape(e,this._cmbOrientation.text===culture.Viewer.landscape);this._updateUI()}}}_clonePageSettings(e){if(!e)return null;var t={};t.height=e.height?new _Unit(e.height):null;t.width=e.width?new _Unit(e.width):null;t.bottomMargin=e.bottomMargin?new _Unit(e.bottomMargin):null;t.leftMargin=e.leftMargin?new _Unit(e.leftMargin):null;t.rightMargin=e.rightMargin?new _Unit(e.rightMargin):null;t.topMargin=e.topMargin?new _Unit(e.topMargin):null;t.landscape=e.landscape;t.paperSize=e.paperSize;return t}_updateUI(){this._uiUpdating=!0;var e=this.pageSettings,setMargin=(e,t)=>{e.value=_Unit.convertValue(t.value,t.units,_UnitType.Inch)};if(e){this._cmbPaperKind.selectedIndex=this._findIndex(this._cmbPaperKind.itemsSource,t=>t.value==e.paperSize);this._cmbOrientation.text=e.landscape?culture.Viewer.landscape:culture.Viewer.portrait;setMargin(this._numMarginsLeft,e.leftMargin);setMargin(this._numMarginsRight,e.rightMargin);setMargin(this._numMarginsTop,e.topMargin);setMargin(this._numMarginsBottom,e.bottomMargin)}this._uiUpdating=!1}_findIndex(e,t){e.length;for(let i=0;i<e.length;i++)if(t(e[i]))return i;return-1}refresh(e=!0){super.refresh(e);e&&this._globalize()}dispose(){this._cmbPaperKind&&this._cmbPaperKind.selectedIndexChanged.removeHandler(this._updateValue,this);this._cmbOrientation&&this._cmbOrientation.selectedIndexChanged.removeHandler(this._updateValue,this);this._numMarginsLeft&&this._numMarginsLeft.dispose();this._numMarginsRight&&this._numMarginsRight.dispose();this._numMarginsTop&&this._numMarginsTop.dispose();this._numMarginsBottom&&this._numMarginsBottom.dispose();this._cmbPaperKind&&this._cmbPaperKind.dispose();this._cmbOrientation&&this._cmbOrientation.dispose();super.dispose()}}_PageSetupEditor._ctrlTemplate="";export class _PageSetupDialog extends Popup{constructor(e){super(e);this.applied=new Event;var t;this.modal=!0;this.hideTrigger=PopupTrigger.None;t=this.getTemplate();this.applyTemplate(`${ControlClsNames.hostElement} ${ControlClsNames.content}`,t,{_gHeader:"g-header",_pageSetupEditorElement:"pagesetup-editor",_btnApply:"btn-apply",_btnCancel:"btn-cancel",_btnClose:"a-close"});this._pageSetupEditor=new _PageSetupEditor(this._pageSetupEditorElement);this._globalize();this._addEvents()}static get controlTemplate(){_PageSetupDialog._ctrlTemplate||(_PageSetupDialog._ctrlTemplate=`<div><div wj-part="g-header" class="${ViewerBaseClsNames.dialogHeader}"><a class="${UtilitesClsNames.hide}" wj-part="a-close" style="float:right;outline:none;text-decoration:none;padding:0px 6px" href="" tabindex="-1" draggable="false">×</a></div><div style="padding:12px;"><div wj-part="pagesetup-editor"></div></div><div class="${ViewerBaseClsNames.dialogFooter}"><a wj-part="btn-apply" class="${UtilitesClsNames.hide} ${InputFormElementsClsNames.btn}" tabindex="-1"></a> <a wj-part="btn-cancel" class="${UtilitesClsNames.hide} ${InputFormElementsClsNames.btn}" tabindex="-1"></a></div></div>`);return _PageSetupDialog._ctrlTemplate}static set controlTemplate(e){_PageSetupDialog._ctrlTemplate=e}get pageSettings(){return this._pageSetupEditor.pageSettings}_globalize(){var e=culture.Viewer;this._gHeader.textContent=e.pageSetup;this._btnApply.textContent=e.ok;this._btnCancel.textContent=e.cancel}_addEvents(){var e=this;e.addEventListener(e._btnClose,"click",()=>{e.hide()});e.addEventListener(e._btnCancel,"click",()=>{e.hide()});e.addEventListener(e._btnApply,"click",()=>{e._apply();e.hide()})}_apply(){this.onApplied()}onApplied(){this.applied.raise(this)}showWithValue(e){this._pageSetupEditor.pageSettings=e;super.show()}refresh(e=!0){super.refresh(e);if(e){this._globalize();this._pageSetupEditor.refresh()}}dispose(){this._pageSetupEditor.dispose();this._pageSetupEditor=null;super.dispose()}}_PageSetupDialog._ctrlTemplate="";export class _MouseTool extends Control{constructor(e,t,i,r,a,s,o){super(e);this._stopOnClientOut=r;this._css=a;this._activeCss=s;this._visibleCss=o;this._pageView=i;this._viewPanelContainer=t;this._initElement();this._bindEvents()}activate(){if(!this._isActive){this._isActive=!0;addClass(this._viewPanelContainer,this._activeCss)}}deactivate(){if(this._isActive){this._isActive=!1;removeClass(this._viewPanelContainer,this._activeCss)}}reset(){this._innerStop(null)}get isActive(){return this._isActive}get startPnt(){return this._startPnt}get pageView(){return this._pageView}get viewPanelContainer(){return this._viewPanelContainer}_initElement(){this.applyTemplate(this._css,this.getTemplate(),this._getTemplateParts());this._viewPanelContainer.appendChild(this.hostElement)}_innerStop(e){try{this._stop(e)}finally{this._isStarted=!1;this._startPnt=null}}_getTemplateParts(){return null}_onMouseDown(e){var t=this._toClientPoint(e),i=this._testPageWorkingAreaHit(t);if(i&&this.pageView.isPageContentLoaded(i.pageIndex)){void 0!==window.getSelection&&getSelection().removeAllRanges();this._isStarted=!0;this._startPnt=t;this._start(i)}}_onMouseMove(e){if(this._isStarted){var t=this._toClientPoint(e),i=this._testPageWorkingAreaHit(t);i&&this.pageView.isPageContentLoaded(i.pageIndex)?this._move(t,i):this._stopOnClientOut&&this._stop(t)}}_onMouseUp(e){this._isStarted&&this._innerStop(this._toClientPoint(e))}_start(e){addClass(this.hostElement,this._visibleCss)}_move(e,t){}_stop(e){removeClass(this.hostElement,this._visibleCss)}_bindEvents(){this.addEventListener(this._viewPanelContainer,"mousedown",e=>{this._isActive&&this._onMouseDown(e)});this.addEventListener(this._viewPanelContainer,"mousemove",e=>{this._isActive&&this._onMouseMove(e)});this.addEventListener(document,"mouseup",e=>{this._isActive&&this._onMouseUp(e)})}_toClientPoint(e){var t=this._viewPanelContainer.getBoundingClientRect();return new Point(e.clientX-t.left,e.clientY-t.top)}_testPageWorkingAreaHit(e){var t=this._pageView.hitTest(e.x,e.y);return t&&t.hitWorkingArea?t:null}}export class _Rubberband extends _MouseTool{constructor(e,t,i){super(e,t,i,!1,ViewerBaseClsNames.rubberBand,"rubberband-actived","show");this.applied=new Event}_start(e){super._start(e);this.hostElement.style.left=this.startPnt.x+"px";this.hostElement.style.top=this.startPnt.y+"px"}_move(e,t){if(this.startPnt){this.viewPanelContainer.getBoundingClientRect();this.hostElement.style.width=e.x-this.startPnt.x+"px";this.hostElement.style.height=e.y-this.startPnt.y+"px"}}_stop(e){if(e){var t=this.hostElement.getBoundingClientRect();t.width>5&&t.height>5&&this._onApplied(new _RubberbandOnAppliedEventArgs(new Rect(this.startPnt.x,this.startPnt.y,t.width,t.height)))}this.hostElement.style.width="0px";this.hostElement.style.height="0px";super._stop(e)}_onApplied(e){this.applied.raise(this,e)}}export class _Magnifier extends _MouseTool{constructor(e,t,i){super(e,t,i,!0,ViewerBaseClsNames.magnifier,"magnifier-actived","show");this._Magnification=2;this._currentPageIndex=-1}static get controlTemplate(){_Magnifier._ctrlTemplate||(_Magnifier._ctrlTemplate=`<div wj-part="view-page-div" class="${ViewerBaseClsNames.viewPage}"></div>`);return _Magnifier._ctrlTemplate}static set controlTemplate(e){_Magnifier._ctrlTemplate=e}deactivate(){super.deactivate();this._currentPageIndex=-1}reset(){super.reset();this._currentPageIndex=-1}_getTemplateParts(){return{_viewPageDiv:"view-page-div"}}_bindEvents(){super._bindEvents();var updateViewPage=()=>{if(!(this._currentPageIndex<0)){var e=this.pageView.pages[this._currentPageIndex],t=_getRotatedSize(e.size,e.rotateAngle),i=this._viewPageDiv.querySelector("svg");this._viewPageDiv.style.height=t.height.valueInPixel*this.pageView.zoomFactor*this._Magnification+"px";this._viewPageDiv.style.width=t.width.valueInPixel*this.pageView.zoomFactor*this._Magnification+"px";i.setAttribute("width",this._viewPageDiv.style.width);i.setAttribute("height",this._viewPageDiv.style.height);_transformSvg(i,e.size.width.valueInPixel,e.size.height.valueInPixel,this._Magnification*this.pageView.zoomFactor,e.rotateAngle)}};this.pageView.zoomFactorChanged.addHandler(()=>{updateViewPage()});this.pageView.rotateAngleChanged.addHandler(()=>{updateViewPage()})}_start(e){super._start(e);this._showMagnifer(this.startPnt,e)}_move(e,t){this._showMagnifer(e,t)}_showMagnifer(e,t){var i=this.hostElement.getBoundingClientRect(),r=_getPositionByHitTestInfo(t);this.hostElement.style.left=e.x-i.width/2+"px";this.hostElement.style.top=e.y-i.height/2+"px";this._fillPage(r);this._showHitPosition(r)}_fillPage(e){if(e.pageIndex!==this._currentPageIndex){this._currentPageIndex=e.pageIndex;this.pageView.pages[this._currentPageIndex].getContent().then(e=>{var t=e.cloneNode(!0);this._viewPageDiv.innerHTML="";this._viewPageDiv.appendChild(t);t.setAttribute("width",new _Unit(t.getAttribute("width")).valueInPixel*this._Magnification+"px");t.setAttribute("height",new _Unit(t.getAttribute("height")).valueInPixel*this._Magnification+"px");var i=this.pageView.pages[this._currentPageIndex].size;_transformSvg(t,i.width.valueInPixel,i.height.valueInPixel,this._Magnification*this.pageView.zoomFactor,this.pageView.pages[this._currentPageIndex].rotateAngle);this._viewPageDiv.style.width=t.getAttribute("width");this._viewPageDiv.style.height=t.getAttribute("height")})}}_showHitPosition(e){var t=this.hostElement.getBoundingClientRect(),i=this.pageView.pages[this._currentPageIndex],r=_getTransformedPosition(e.pageBounds,i.size,i.rotateAngle,this.pageView.zoomFactor);this._viewPageDiv.style.left=-r.x*this._Magnification+t.width/2+"px";this._viewPageDiv.style.top=-r.y*this._Magnification+t.height/2+"px"}}_Magnifier._ctrlTemplate="";export class ViewerBase extends Control{constructor(e,t){super(e,t,!0);this._pages=[];this._pageIndex=0;this._mouseMode=MouseMode.SelectTool;this._viewMode=ViewMode.Single;this._needBind=!1;this._historyManager=new _HistoryManager;this._fullScreen=!1;this._miniToolbarPinnedTimer=null;this._autoHeightCalculated=!1;this._searchManager=new _SearchManager;this._thresholdWidth=767;this._historyMoving=!1;this._prohibitAddHistory=!1;this._initialScroll=!1;this._pageMoving=!1;this._devicePixelRatio=window.devicePixelRatio;this._documentSourceChanged=new Event;this.pageIndexChanged=new Event;this.viewModeChanged=new Event;this.mouseModeChanged=new Event;this.fullScreenChanged=new Event;this.zoomFactorChanged=new Event;this.zoomModeChanged=new Event;this.queryLoadingData=new Event;this.beforeSendRequest=new Event;this.pageLoaded=new Event;this._viewerActionStatusChanged=new Event;this._documentEventKey=(new Date).getTime().toString();this._init(t)}static get controlTemplate(){ViewerBase._ctrlTemplate||(ViewerBase._ctrlTemplate=`<div class="${ViewerBaseClsNames.outer} ${ControlClsNames.content} with-footer"><div wj-part="toolbar" tabindex="-1"></div><div wj-part="mobile-toolbar"></div><div class="${ViewerBaseClsNames.container}" wj-part="viewer-container"><div class="${ViewerBaseClsNames.leftpanel}" wj-part="viewer-left-panel"><div class="${ViewerBaseClsNames.tabsleft}" wj-part="side-panel"></div></div><div class="${ViewerBaseClsNames.splitter}" wj-part="splitter"><button class="${InputFormElementsClsNames.btn} ${InputFormElementsClsNames.btnDefault}"><span class=${GlyphClsNames.right}></span></button></div><div class="${ViewerBaseClsNames.viewPanelContainer}" wj-part="viewpanel-container"></div></div><div wj-part="mini-toolbar"></div><div class="${ViewerBaseClsNames.searchBar} mobile" wj-part="search-bar"></div><div class="${ViewerBaseClsNames.footer} mobile" class="${ViewerBaseClsNames.footer}" wj-part="viewer-footer"><div wj-part="zoom-bar"></div><span class="${UtilitesClsNames.close}">×</span></div></div>`);return ViewerBase._ctrlTemplate}static set controlTemplate(e){ViewerBase._ctrlTemplate=e}_getProductInfo(){return"QNI5,ViewerBase"}get serviceUrl(){return this._serviceUrl}set serviceUrl(e){if(e!=this._serviceUrl){this._serviceUrl=e;this._needBindDocumentSource();this.invalidate()}}get filePath(){return this._filePath}set filePath(e){if(e!=this._filePath){this._filePath=e;this._needBindDocumentSource();this.invalidate()}}get requestHeaders(){return this._requestHeaders}set requestHeaders(e){this._requestHeaders=e}get thresholdWidth(){return this._thresholdWidth}set thresholdWidth(e){if(e!=this._thresholdWidth){this._thresholdWidth=e;this.invalidate()}}get _innerPaginated(){return this._documentSource&&!this._needBind?this._documentSource.paginated:this._paginated}set _innerPaginated(e){this._documentSource&&!this._needBind?this._setPaginated(e):this._paginated=null==e?null:asBoolean(e);this._setViewerAction(_ViewerActionType.TogglePaginated,!0)}_setTabOrder(e){super._setTabOrder(e);this._updateInnerElementsTabIndex()}_setIsDisabled(e){if((e=asBoolean(e,!0))!=this.isDisabled){let t=this._e;if(t){enable(t,!e);t.tabIndex=this.isDisabled||t.querySelector("input")?-1:this._orgTabIndex;this._updateInnerElementsTabIndex()}}}_updateInnerElementsTabIndex(){const e=this.isDisabled?-1:this._orgTabIndex,t=this._e.querySelectorAll("input, [tabindex], ."+ViewerBaseClsNames.pageview);for(let i=0;i<t.length;i++)t[i].tabIndex=e}invalidate(e=!0){super.invalidate(e);ViewerBase._exportItems=null;this._updateExportTab()}reload(){this._needBindDocumentSource();this.invalidate()}refresh(e=!0){super.refresh(e);if(this._needBind){this._setDocumentSource(this._getSource());this._needBind=!1}if(e){var t=Control.getControl(this._toolbar);t&&t.refresh();var i=Control.getControl(this._miniToolbar);i&&i.refresh();var r=Control.getControl(this._mobileToolbar);r&&r.refresh();var a=Control.getControl(this._zoomBar);a&&a.refresh();var s=Control.getControl(this._searchBar);s&&s.refresh();this._hamburgerMenu&&this._hamburgerMenu.refresh();this._viewMenu&&this._viewMenu.refresh();this._searchOptionsMenu&&this._searchOptionsMenu.refresh();ViewerBase._exportItems=null;this._updateExportTab(!0);this._globalize();this._updateLayout()}this._resetMiniToolbarPosition();this._resetToolbarWidth();this._resetViewPanelContainerWidth();this._autoHeightCalculated=!1}_updateLayout(){this._switchTemplate(this._isMobileTemplate())}_switchTemplate(e){var t=this.hostElement.querySelector("."+ViewerBaseClsNames.outer),i=Control.getControl(this._sidePanel),r=i.getTabPage(this._pageSetupPageId);if(e){addClass(t,"mobile");i.show(r)}else{removeClass(t,"mobile");i.hide(r)}}_getSource(){return this.filePath?new _DocumentSource({serviceUrl:this._serviceUrl,filePath:this._filePath},this):null}_needBindDocumentSource(){this._needBind=!0}_supportsPageSettingActions(){return!1}_isMobileTemplate(){return this.thresholdWidth>this.hostElement.getBoundingClientRect().width}_init(e){this._createChildren();this._autoCalculateHeight();this._resetToolbarWidth();this._resetViewPanelContainerWidth();this._bindEvents();this._initTools();this.deferUpdate(()=>{this.initialize(e)})}_initTools(){this._rubberband=new _Rubberband(document.createElement("div"),this._viewpanelContainer,this._pageView);this._rubberband.applied.addHandler((e,t)=>{var i=t.rect,r=this._pageView.hitTest(i.left,i.top),a=this._viewpanelContainer.getBoundingClientRect();i.width>i.height?this._pageView.zoomFactor*=a.width/i.width:this._pageView.zoomFactor*=a.height/i.height;this._pageView.moveToPosition(_getPositionByHitTestInfo(r))});this._magnifier=new _Magnifier(document.createElement("div"),this._viewpanelContainer,this._pageView)}_globalize(){var e=culture.Viewer;this._gSearchTitle.textContent=e.search;this._gMatchCase.innerHTML=" "+e.matchCase;this._gWholeWord.innerHTML=" "+e.wholeWord;this._gSearchResults.textContent=e.searchResults;this._gThumbnailsTitle.textContent=e.thumbnails;this._gOutlinesTitle.textContent=e.outlines;this._gPageSetupTitle.textContent=e.pageSetup;this._gPageSetupApplyBtn.textContent=e.ok;this._gExportsPageTitle.textContent=e.exports;this._gExportsPageApplyBtn.textContent=e.exportOk;this._gExportFormatTitle.textContent=e.exportFormat}_autoCalculateHeight(){if(this._shouldAutoHeight()){var e=this._viewpanelContainer.style.height;this._viewpanelContainer.style.height="100%";this._viewerContainer.style.height=Math.max(this._viewpanelContainer.getBoundingClientRect().height,ViewerBase._viewpanelContainerMinHeight)+"px";this._viewpanelContainer.style.height=e}}_bindEvents(){this.addEventListener(window,"unload",()=>{this._documentSource&&this._documentSource.dispose()});this.addEventListener(window,"resize",()=>{const e=window.devicePixelRatio;if(this._devicePixelRatio!==e){this._devicePixelRatio=e;this._resetViewPanelContainerWidth()}});this.addEventListener(document,"mousemove",e=>{if(this.fullScreen&&this._miniToolbar){var t=this._checkMiniToolbarVisible(e);if(null!=this._miniToolbarPinnedTimer&&t){clearTimeout(this._miniToolbarPinnedTimer);this._miniToolbarPinnedTimer=null;this._showMiniToolbar(t)}else null==this._miniToolbarPinnedTimer&&this._showMiniToolbar(t)}});this.addEventListener(document,"keydown",e=>{e.keyCode===Key.Escape&&(this.fullScreen=!1)});this._historyManager.statusChanged.addHandler(this._onHistoryManagerStatusUpdated,this);this._onHistoryManagerStatusUpdated();this._pageView.pageIndexChanged.addHandler(()=>{this._initialScroll?this._initialScroll=!1:this._addHistory(!1,!0);this._updatePageIndex(this._pageView.pageIndex)});this._pageView.zoomFactorChanged.addHandler((e,t)=>{this.zoomMode===ZoomMode.Custom&&this._addHistory(!1,!0,{zoomFactor:t.oldValue});this.onZoomFactorChanged(t)});this._pageView.zoomModeChanged.addHandler((e,t)=>{this._addHistory(!1,!0,{zoomMode:t.oldValue});this.onZoomModeChanged(t)});this.viewModeChanged.addHandler((e,t)=>{this._addHistory(!1,!0,{viewMode:t.oldValue,zoomMode:this.zoomMode,zoomFactor:this.zoomFactor},!0)});this._positionChangedTimeout=null;let e=null;this._pageView.positionChanged.addHandler(()=>{if(!this._pageMoving){this._positionChangedTimeout||(e=this._pageIndex);clearTimeout(this._positionChangedTimeout);this._positionChangedTimeout=setTimeout(()=>{e!==this._pageIndex?this._addHistory(!1,!0):this._updateHistoryCurrent(!0);this._positionChangedTimeout=null},ViewerBase._historyTimeout)}});this._pageView.pageLoaded.addHandler((e,t)=>{this.onPageLoaded(t)})}_checkMiniToolbarVisible(e){var t=e.clientX,i=e.clientY,r=this._miniToolbar.getBoundingClientRect(),a=r.left-60,s=r.right+60,o=r.top-60,n=r.bottom+60;return t>=a&&t<=s&&i>=o&&i<=n}_showMiniToolbar(e){var t,i=parseFloat(getComputedStyle(this._miniToolbar,"").opacity),r=this._miniToolbar;t=e?setInterval((function(){if(i>=.8)window.clearInterval(t);else{i+=.01;r.style.opacity=i.toString()}}),1):setInterval((function(){if(i<0)window.clearInterval(t);else{i-=.01;r.style.opacity=i.toString()}}),1)}_goToBookmark(e){this._documentSource&&e.data&&this._documentSource.getBookmark(e.data).then(e=>{e&&this._scrollToPosition(e,!0)})}_executeCustomAction(e){if(this._documentSource&&e.data){this._initialPosition={pageIndex:this._pageIndex,pageBounds:{x:0,y:0,width:0,height:0}};this._resetDocument();this._showViewPanelMessage();this._setDocumentRendering();var t=this._documentSource;this._documentSource.executeCustomAction(e).then(e=>{this._initialPosition=e||this._initialPosition;this._getStatusUtilCompleted(t)}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))})}}_getStatusUtilCompleted(e){!e||e.isLoadCompleted||e.isDisposed||e.getStatus().then(t=>{this._documentSource===e&&setTimeout(()=>this._getStatusUtilCompleted(e),e._innerService.getPingTimeout())}).catch(e=>{this._showViewPanelErrorMessage(e)})}_initChildren(){this._initPageView();this._initToolbar();this._initSidePanel();this._initSplitter();this._initFooter();this._initSearchBar();this._initMiniToolbar()}_initSearchBar(){this._searchBarInstance=new _SearchBar(this._searchBar,this);this._showSearchBar(!1)}_showSearchBar(e){var t=this.hostElement.querySelector("."+ViewerBaseClsNames.outer);if(e){removeClass(this._searchBar,"hidden");addClass(t,"with-searchbar")}else{addClass(this._searchBar,"hidden");removeClass(t,"with-searchbar")}}_initFooter(){this._viewerZoomBarInstance=new _ViewerZoomBar(this._zoomBar,this);this.addEventListener(this._footer.querySelector("."+UtilitesClsNames.close),"click",()=>{this._showFooter(!1)})}_showFooter(e){var t=this.hostElement.querySelector("."+ViewerBaseClsNames.outer);if(e){removeClass(this._footer,"hidden");addClass(t,"with-footer")}else{addClass(this._footer,"hidden");removeClass(t,"with-footer")}this._pageView.refresh()}_createChildren(){var e=this.getTemplate();this.applyTemplate(`${ViewerBaseClsNames.hostElement} ${ControlClsNames.hostElement}`,e,{_viewpanelContainer:"viewpanel-container",_toolbar:"toolbar",_mobileToolbar:"mobile-toolbar",_miniToolbar:"mini-toolbar",_leftPanel:"viewer-left-panel",_sidePanel:"side-panel",_viewerContainer:"viewer-container",_splitter:"splitter",_footer:"viewer-footer",_zoomBar:"zoom-bar",_searchBar:"search-bar"});this._initChildren()}_initPageView(){this._compositePageViewInstance=new _CompositePageView(this._viewpanelContainer);this._compositePageViewInstance.viewMode=this.viewMode}get _pageView(){return Control.getControl(this._viewpanelContainer)}_initSplitter(){this.addEventListener(this._splitter,"click",()=>this._toggleSplitter())}_toggleSplitter(e){var t=GlyphClsNames.left,i=GlyphClsNames.right,r=this._splitter.querySelector("span"),a=Control.getControl(this._sidePanel);if(!0===e){if(hasClass(r,i))return}else if(!1===e){if(hasClass(r,t))return}else e=hasClass(r,t);if(e){a.collapse();r.className=i}else{if(0===a.visibleTabPagesCount)return;r.className=t;a.expand()}this._resetViewPanelContainerWidth()}_resetMiniToolbarPosition(){if(this._miniToolbar){var e=this.hostElement.getBoundingClientRect().width,t=this._miniToolbar.getBoundingClientRect().width;this._miniToolbar.style.left=(e-t)/2+"px"}}_resetToolbarWidth(){Control.getControl(this._toolbar).resetWidth()}_resetViewPanelContainerWidth(){!this._isMobileTemplate()&&this.hostElement.getBoundingClientRect().width<=ViewerBase._narrowWidthThreshold?addClass(this.hostElement,ViewerBase._narrowCss):removeClass(this.hostElement,ViewerBase._narrowCss);var e=this._splitter?this._splitter.getBoundingClientRect().width:0,t=this._leftPanel?this._leftPanel.getBoundingClientRect().width:0;this._viewpanelContainer.style.width=this._viewerContainer.getBoundingClientRect().width-e-t+"px";this._pageView.invalidate()}_shouldAutoHeight(){return("100%"===this.hostElement.style.height||"auto"===this.hostElement.style.height)&&!this.fullScreen}_initSidePanel(){var e=new _SideTabs(this._sidePanel);e.collapse();e.collapsed.addHandler(()=>{this._toggleSplitter(!0)});e.expanded.addHandler(()=>{this._toggleSplitter(!1);var e=this._splitter?this._splitter.getBoundingClientRect().width:0;this._sidePanel.getBoundingClientRect().width+e>this._viewerContainer.getBoundingClientRect().width&&addClass(this._sidePanel,"collapsed")});e.tabPageVisibilityChanged.addHandler((t,i)=>{(!i.tabPage.isHidden&&1==e.visibleTabPagesCount||i.tabPage.isHidden&&0==e.visibleTabPagesCount)&&this._resetViewPanelContainerWidth()});this._initSidePanelThumbnails();this._initSidePanelOutlines();this._initSidePanelSearch();this._initSidePanelExports();this._initSidePanelPageSetup()}_clearPreHightLights(){this._pages.forEach(e=>{var t;if(e.content){t=e.content.querySelectorAll(".highlight");for(var i=0;i<t.length;i++)t.item(i).parentNode.removeChild(t.item(i))}})}_highlightPosition(e,t){this._pageIndex,this._pageView.scrollTop,this._pageView.scrollLeft;var i,r={pageIndex:e,pageBounds:t.length>0?t[0]:null};this._scrollToPosition(r,!0).then(e=>{this._clearPreHightLights();this._pages[this.pageIndex].getContent().then(e=>{i=e.querySelector("g");for(var r=0;r<t.length;r++){var a=document.createElementNS("http://www.w3.org/2000/svg","rect");a.setAttributeNS(null,"x",_twipToPixel(t[r].x).toString());a.setAttributeNS(null,"y",_twipToPixel(t[r].y).toString());a.setAttributeNS(null,"height",_twipToPixel(t[r].height).toString());a.setAttributeNS(null,"width",_twipToPixel(t[r].width).toString());a.setAttributeNS(null,"class","highlight");i.appendChild(a)}})})}_scrollToPosition(e,t){!0===t&&this._addHistory(!0,!1);e.pageIndex=e.pageIndex||0;return this._pageView.moveToPosition(e)}_initSidePanelSearch(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.search,icons.search);this._gSearchTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);const getTabCheckboxes=e=>e.outContent.querySelectorAll('input[type="checkbox"]'),getTabTextInputs=e=>e.outContent.querySelectorAll('input[type="text"]');e.tabPageActived.addHandler(e=>{if(e.activedTabPage===t){const e=getTabCheckboxes(t);e[0].checked=this._searchManager.matchCase;e[1].checked=this._searchManager.wholeWord;getTabTextInputs(t)[0].value=this._searchManager.text}});t.format(i=>{var r=_toDOMs(`<div class="${ViewerBaseClsNames.searchContainer}"><input class="${ViewerBaseClsNames.searchBox}" wj-part="search-box" type="text"/><div class="${InputFormElementsClsNames.btnGroup}"><button class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.searchPre}">`+_createSvgBtn(icons.searchPrevious).innerHTML+"</button>"+`<button class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.searchNext}">`+_createSvgBtn(icons.searchNext).innerHTML+"</button></div></div>"+`<div class="${ViewerBaseClsNames.searchOption}"><label><span wj-part="g-matchCase"> `+culture.Viewer.matchCase+'</span><input type="checkbox" wj-part="match-case" /></label></div>'+`<div class="${ViewerBaseClsNames.searchOption}"><label><span wj-part="g-wholeWord"> `+culture.Viewer.wholeWord+'</span><input type="checkbox" wj-part="whole-word" /></label></div>'+`<h3 wj-part="g-searchResults" class="${ViewerBaseClsNames.searchResult}">`+culture.Viewer.searchResults+"</h3>");this._gMatchCase=r.querySelector('[wj-part="g-matchCase"]');this._gWholeWord=r.querySelector('[wj-part="g-wholeWord"]');this._gSearchResults=r.querySelector('[wj-part="g-searchResults"]');i.outContent.querySelector("."+ViewerBaseClsNames.tabtitleWrapper).appendChild(r);const a=getTabCheckboxes(i);var s=a[0],o=a[1],n=getTabTextInputs(i)[0],h=i.outContent.querySelector("."+ViewerBaseClsNames.searchPre),l=i.outContent.querySelector("."+ViewerBaseClsNames.searchNext);addClass(i.content.parentElement,"search-wrapper");addClass(i.content,ViewerBaseClsNames.searchResultList);var c=new ListBox(i.content),d=!1,u=!1;c.formatItem.addHandler((e,t)=>{var i=t.item,r=t.data,a=document.createElement("div"),s=document.createElement("div");i.innerHTML="";s.innerHTML=r.nearText;s.className=ViewerBaseClsNames.searchText;a.innerHTML="Page "+(r.pageIndex+1);a.className=ViewerBaseClsNames.searchPage;addClass(i,ViewerBaseClsNames.searchItem);i.setAttribute("tabIndex","-1");i.appendChild(s);i.appendChild(a)});c.selectedIndexChanged.addHandler(()=>this._searchManager.currentIndex=c.selectedIndex);var enableInputs=(e=!0)=>{for(var i=t.outContent.querySelectorAll("input"),r=0;r<i.length;r++)i.item(r).disabled=!e};const p=t.outContent.querySelectorAll("input[type=text]")[0];this._searchManager.searchStarted.addHandler(()=>{p&&p.value!==this._searchManager.text&&(p.value=this._searchManager.text);enableInputs(!1)});this._searchManager.searchCompleted.addHandler(()=>{d=!0;this._clearPreHightLights();c.itemsSource=this._searchManager.searchResult;d=!1;enableInputs(!0);this._updateHistoryCurrent()});this._searchManager.currentChanged.addHandler(()=>{if(!d&&!u){var e=this._searchManager.current;if(e){u=!0;c.selectedIndex=this._searchManager.currentIndex;this._highlightPosition(e.pageIndex,e.boundsList);u=!1}}});this._searchManager.resultsCleared.addHandler(()=>{c.itemsSource=null;this._clearPreHightLights()});var update=()=>{this._searchManager.clear();c.itemsSource=null;s.checked=!1;o.checked=!1;n.value="";this._documentSource&&this._documentSource.features&&(!this._documentSource.paginated||this._documentSource.features.textSearchInPaginatedMode)?e.show(i):e.hide(i)};this._documentSourceChanged.addHandler(()=>{this._documentSource&&_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,update);update()});this.addEventListener(s,"click",()=>{this._searchManager.matchCase=s.checked});this.addEventListener(o,"click",()=>{this._searchManager.wholeWord=o.checked});this.addEventListener(n,"input",()=>{this._searchManager.text=n.value});this.addEventListener(n,"keyup",e=>{var t=e||window.event;t.keyCode===Key.Enter&&this._searchManager.search(t.shiftKey)});this.addEventListener(l,"click",()=>this._searchManager.search());this.addEventListener(h,"click",()=>this._searchManager.search(!0))})}_initSidePanelOutlines(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.outlines,icons.outlines);this._gOutlinesTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._outlinesPageId=t.id;t.format(t=>{addClass(t.content,ViewerBaseClsNames.outlinesTree);var i=new FlexGrid(t.content);i.initialize({autoGenerateColumns:!1,columns:[{binding:"caption",width:"*"}],isReadOnly:!0,childItemsPath:"children",allowResizing:AllowResizing.None,headersVisibility:HeadersVisibility.None});i.itemFormatter=function(e,t,i,r){var a;a=r.firstElementChild?r.firstElementChild.outerHTML:" ";var s=e.rows[t].dataItem;r.innerHTML=a+"<a>"+s.caption+"</a>"};var r=!0;i.selectionChanged.addHandler((t,i)=>{if(!r){var a=i.getRow();if(a){var s=a.dataItem;if(s.position)this._scrollToPosition(s.position,!1);else if(s.target){if(!this._documentSource)return;this._documentSource.getBookmark(s.target).then(e=>{s.position=e;t.getSelectedState(i.row,i.col)!=SelectedState.None&&this._scrollToPosition(e,!1)},e=>{})}this._isMobileTemplate()&&e.collapse()}}});var a=!1,refreshTree=()=>{if(!a&&!e.isCollapsed&&t.isActived&&!t.isHidden){i.refresh();a=!0}},toggleTab=()=>{if(this._documentSource){_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,()=>{if(this._documentSource.hasOutlines)this._documentSource.getOutlines().then(s=>{r=!0;a=!1;i.itemsSource=s;e.show(t);refreshTree();r=!1});else{i.itemsSource=null;e.hide(t)}})}else{i.itemsSource=null;e.hide(t)}};this._documentSourceChanged.addHandler(toggleTab);e.tabPageActived.addHandler(refreshTree);toggleTab()})}_initSidePanelThumbnails(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.thumbnails,icons.thumbnails);this._gThumbnailsTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._thumbnailsPageId=t.id;t.format(t=>{addClass(t.content,ViewerBaseClsNames.thumbnailList);var i=new ListBox(t.content),r=null,a=!1;i.formatItem.addHandler((e,t)=>{var i=t.item,r=t.data;i.innerHTML="";if(this._pageView.pages){var a=document.createElement("div"),s=_toDOM('<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml: space = "preserve" ></svg>'),o=document.createElementNS("http://www.w3.org/2000/svg","g"),n=document.createElementNS("http://www.w3.org/2000/svg","image"),h=document.createElement("div"),l=this._pageView.pages[t.index],c=l.size.height.valueInPixel*ViewerBase._thumbnailWidth/l.size.width.valueInPixel;addClass(i,ViewerBaseClsNames.thumbnailItem);r().then(e=>{n.setAttributeNS("http://www.w3.org/1999/xlink","href",e)});n.setAttribute("x","0");n.setAttribute("y","0");n.setAttribute("width",ViewerBase._thumbnailWidth.toString());n.setAttribute("height",c.toString());addClass(a,ViewerBaseClsNames.pageThumbnail);a.setAttribute("tabIndex","-1");o.appendChild(n);s.appendChild(o);a.appendChild(s);i.appendChild(a);rotateThumb(s,l);h.className="page-index";h.innerHTML=(t.index+1).toString();i.appendChild(h)}});i.selectedIndexChanged.addHandler(()=>{if(!(a||i.selectedIndex<0||i.selectedIndex==this._pageIndex)){this.moveToPage(i.selectedIndex);this._isMobileTemplate()&&e.collapse()}});this.pageIndexChanged.addHandler(()=>i.selectedIndex=this._pageIndex);var rotateThumb=(e,t)=>{var i=ViewerBase._thumbnailWidth,r=t.size.height.valueInPixel*i/t.size.width.valueInPixel,a=e.parentNode;_transformSvg(e,i,r,1,t.rotateAngle);switch(t.rotateAngle){case _RotateAngle.Rotation90:case _RotateAngle.Rotation270:var s=r;r=i;i=s}a.style.width=i+"px";a.style.height=r+"px";e.setAttribute("width",i.toString());e.setAttribute("height",r.toString())},createThumbnails=()=>{if(!this._documentSource||!this._documentSource.isLoadCompleted||!this._documentSource.pageCount)return null;for(var e=[],t=0;t<this._documentSource.pageCount;t++)(t=>{e.push(()=>{var e=new _Promise;this._documentSource.getExportedUrl({format:"png",resolution:50,outputRange:t+1}).then(t=>{this._documentSource&&this._documentSource._innerService&&!this._documentSource.isDisposed||e.resolve(null);this._documentSource._innerService.downloadDataUrl(t).then(t=>{e.resolve(t)},t=>e.resolve(null))},t=>e.resolve(null));return e})})(t);return e},updateItems=()=>{if(!e.isCollapsed&&t.isActived){r=r||createThumbnails();(()=>{t.isActived&&i.itemsSource!==r&&i.deferUpdate(()=>{a=!0;i.itemsSource=r;i.selectedIndex=this._pageIndex;a=!1})})()}},update=()=>{if(this._documentSource&&this._documentSource.hasThumbnails){e.show(t);r=null;updateItems()}else{e.hide(t);i.itemsSource=null}},bindEvents=()=>{if(this._documentSource&&this._documentSource.hasThumbnails){_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,update);_addWjHandler(this._documentEventKey,this._documentSource.pageCountChanged,update);_addWjHandler(this._documentEventKey,this._documentSource.pageSettingsChanged,update);update()}else{e.hide(t);i.itemsSource=null}};this._documentSourceChanged.addHandler(bindEvents);bindEvents();e.tabPageActived.addHandler(()=>{e.activedTabPage.id===this._thumbnailsPageId&&updateItems()});updateItems();this._pageView.rotateAngleChanged.addHandler(()=>{for(var e=i.hostElement.querySelectorAll("svg"),t=0;t<e.length;t++)rotateThumb(e.item(t),this._pageView.pages[t])})})}_initSidePanelExports(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.exports,icons.exports);this._gExportsPageTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._exportsPageId=t.id;t.format(t=>{var i=_toDOMs(`<div class="${ViewerBaseClsNames.exportContainer}"><label wj-part="g-wj-exportformat">`+culture.Viewer.exportFormat+"</label>"+`<div class="${ViewerBaseClsNames.exportFormats}"></div></div>`);t.outContent.querySelector("."+ViewerBaseClsNames.tabtitleWrapper).appendChild(i);this._gExportFormatTitle=t.outContent.querySelector('[wj-part="g-wj-exportformat"]');var r=t.outContent.querySelector("."+ViewerBaseClsNames.exportFormats);new ComboBox(r,{keyActionPrintCharacters:0,keyActionTab:0});addClass(t.content.parentElement,ViewerBaseClsNames.exportFormatsWrapper);var a=document.createElement("div");this._exportOptionEditor=new _ExportOptionEditor(a);t.content.appendChild(a);var s=_toDOMs(`<div class="${ViewerBaseClsNames.exportFormatsFooter}"><a wj-part="btn-apply" class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.applyButton}" tabindex="-1">`+culture.Viewer.exportOk+"</a></div>");t.content.appendChild(s);var o=t.content.querySelector('[wj-part="btn-apply"]');this._gExportsPageApplyBtn=o;this.addEventListener(o,"click",()=>{this._documentSource.export(this._exportOptionEditor.options);e.collapse()})});var i=!0;this._documentSourceChanged.addHandler(()=>{i=!0;this._documentSource&&_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,()=>{i&&this._ensureExportFormatsLoaded().then(()=>{this._updateExportTab();i=null==this._exportFormats})})});e.tabPageActived.addHandler(()=>{i&&e.activedTabPage.id===this._exportsPageId&&this._ensureExportFormatsLoaded().then(()=>{this._updateExportTab();i=null==this._exportFormats})})}_ensureExportFormatsLoaded(){if(!this._exportFormats&&this._documentSource&&!this._documentSource.isDisposed&&this._documentSource.isInstanceCreated)return this._documentSource.getSupportedExportDescriptions().then(e=>{this._exportFormats=e;this._setViewerAction(_ViewerActionType.ShowExportsPanel)});var e=new _Promise;e.resolve();return e}_updateExportTab(e){if(this._exportFormats){var t=Control.getControl(this._sidePanel).getTabPage(this._exportsPageId),i=Control.getControl(t.outContent.querySelector("."+ViewerBaseClsNames.exportFormats)),r=Control.getControl(t.content.firstElementChild);if(e){r.refresh();i.itemsSource&&i.itemsSource.forEach(e=>{e.name=this._exportItemDescriptions[e.format].name});i.refresh()}else{var a=[];this._exportFormats.forEach(e=>{var t=this._exportItemDescriptions[e.format];if(!isIOS()||t.supportIOS){e.name=t.name;a.push(e)}});i.selectedIndexChanged.addHandler(()=>{r.exportDescription=i.selectedItem});i.itemsSource=a;i.displayMemberPath="name";i.selectedValuePath="format";i.selectedIndex=-1}}}_initSidePanelPageSetup(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.pageSetup,icons.pageSetup);this._gPageSetupTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._pageSetupPageId=t.id;t.format(t=>{var i=document.createElement("div"),r=new _PageSetupEditor(i);t.content.appendChild(i);addClass(i,ViewerBaseClsNames.pageSetupContainer);var a=_toDOMs(`<div class="${ViewerBaseClsNames.pageSetupFooter}"><a wj-part="btn-apply" class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.applyButton}" tabindex="-1">`+culture.Viewer.ok+"</a></div>");t.content.appendChild(a);var s=t.content.querySelector('[wj-part="btn-apply"]');this._gPageSetupApplyBtn=s;this.addEventListener(s,"click",()=>{this._setPageSettings(r.pageSettings);e.collapse()});var updatePageSettings=()=>{r.pageSettings=this._documentSource.pageSettings},update=()=>{if(this._documentSource){_addWjHandler(this._documentEventKey,this._documentSource.pageSettingsChanged,updatePageSettings);updatePageSettings()}};this._documentSourceChanged.addHandler(update);update()})}_executeAction(e){if(!this._actionIsDisabled(e))switch(e){case _ViewerActionType.TogglePaginated:this._innerPaginated=!this._innerPaginated;break;case _ViewerActionType.Print:this._documentSource&&this._documentSource.print(this._pages.map(e=>e.rotateAngle));break;case _ViewerActionType.ShowExportsPanel:Control.getControl(this._sidePanel).active(this._exportsPageId);break;case _ViewerActionType.Portrait:this._setPageLandscape(!1);break;case _ViewerActionType.Landscape:this._setPageLandscape(!0);break;case _ViewerActionType.ShowPageSetupDialog:this.showPageSetupDialog();break;case _ViewerActionType.FirstPage:this.moveToPage(0);break;case _ViewerActionType.LastPage:this._moveToLastPage();break;case _ViewerActionType.PrePage:this.moveToPage(this._pageIndex-1);break;case _ViewerActionType.NextPage:this.moveToPage(this._pageIndex+1);break;case _ViewerActionType.Backward:this._moveBackwardHistory();break;case _ViewerActionType.Forward:this._moveForwardHistory();break;case _ViewerActionType.SelectTool:this.mouseMode=MouseMode.SelectTool;break;case _ViewerActionType.MoveTool:this.mouseMode=MouseMode.MoveTool;break;case _ViewerActionType.Continuous:this.viewMode=ViewMode.Continuous;break;case _ViewerActionType.Single:this.viewMode=ViewMode.Single;break;case _ViewerActionType.FitPageWidth:this.zoomMode=ZoomMode.PageWidth;break;case _ViewerActionType.FitWholePage:this.zoomMode=ZoomMode.WholePage;break;case _ViewerActionType.ZoomOut:this._zoomBtnClicked(!1,ViewerBase._defaultZoomValues);break;case _ViewerActionType.ZoomIn:this._zoomBtnClicked(!0,ViewerBase._defaultZoomValues);break;case _ViewerActionType.ToggleFullScreen:this.fullScreen=!this.fullScreen;break;case _ViewerActionType.ShowHamburgerMenu:this._hamburgerMenu.showMenu();break;case _ViewerActionType.ShowViewMenu:this._viewMenu.showMenu();break;case _ViewerActionType.ShowSearchBar:this._showSearchBar(hasClass(this._searchBar,"hidden"));this._setViewerAction(_ViewerActionType.ShowSearchBar);break;case _ViewerActionType.ShowThumbnails:Control.getControl(this._sidePanel).active(this._thumbnailsPageId);break;case _ViewerActionType.ShowOutlines:Control.getControl(this._sidePanel).active(this._outlinesPageId);break;case _ViewerActionType.ShowPageSetupPanel:Control.getControl(this._sidePanel).active(this._pageSetupPageId);break;case _ViewerActionType.ShowZoomBar:this._showFooter(!0);break;case _ViewerActionType.SearchPrev:this._searchManager.search(!0);break;case _ViewerActionType.SearchNext:this._searchManager.search();break;case _ViewerActionType.ShowSearchOptions:this._searchOptionsMenu.showMenu(!0);break;case _ViewerActionType.SearchMatchCase:this._searchManager.matchCase=!this._searchManager.matchCase;break;case _ViewerActionType.SearchMatchWholeWord:this._searchManager.wholeWord=!this._searchManager.wholeWord;break;case _ViewerActionType.RubberbandTool:this.mouseMode=MouseMode.RubberbandTool;break;case _ViewerActionType.MagnifierTool:this.mouseMode=MouseMode.MagnifierTool;break;case _ViewerActionType.RotateDocument:this._rotateDocument();break;case _ViewerActionType.RotatePage:this._rotatePage()}}_initSearchOptionsMenu(e){this._searchOptionsMenu=new _SearchOptionsMenu(this,e)}_initHamburgerMenu(e){this._hamburgerMenu=new _HamburgerMenu(this,e)}_initViewMenu(e){this._viewMenu=new _ViewMenu(this,e)}_initToolbar(){new _ViewerToolbar(this._toolbar,this);new _ViewerMobileToolbar(this._mobileToolbar,this)}_clearExportFormats(){this._exportFormats=null}get _exportItemDescriptions(){ViewerBase._exportItems||(ViewerBase._exportItems={pdf:{name:culture.Viewer.pdfExportName,supportIOS:!0},doc:{name:culture.Viewer.docExportName,supportIOS:!1},docx:{name:culture.Viewer.docxExportName,supportIOS:!1},rtf:{name:culture.Viewer.rtfExportName,supportIOS:!1},xlsx:{name:culture.Viewer.xlsxExportName,supportIOS:!0},xls:{name:culture.Viewer.xlsExportName,supportIOS:!0},mhtml:{name:culture.Viewer.mhtmlExportName,supportIOS:!0},html:{name:culture.Viewer.htmlExportName,supportIOS:!0},zip:{name:culture.Viewer.metafileExportName,supportIOS:!1},csv:{name:culture.Viewer.csvExportName,supportIOS:!0},tiff:{name:culture.Viewer.tiffExportName,supportIOS:!0},bmp:{name:culture.Viewer.bmpExportName,supportIOS:!1},emf:{name:culture.Viewer.emfExportName,supportIOS:!1},gif:{name:culture.Viewer.gifExportName,supportIOS:!1},jpeg:{name:culture.Viewer.jpegExportName,suportIOS:!1},jpg:{name:culture.Viewer.jpegExportName,supportIOS:!1},png:{name:culture.Viewer.pngExportName,supportIOS:!1},xml:{name:"XML document",supportIOS:!1}});return ViewerBase._exportItems}_actionIsChecked(e){switch(e){case _ViewerActionType.TogglePaginated:return!0===this._innerPaginated;case _ViewerActionType.Landscape:return!(!this._documentSource||!this._documentSource.pageSettings)&&this._documentSource.pageSettings.landscape;case _ViewerActionType.Portrait:return!(!this._documentSource||!this._documentSource.pageSettings)&&!this._documentSource.pageSettings.landscape;case _ViewerActionType.SelectTool:return this.mouseMode===MouseMode.SelectTool;case _ViewerActionType.MoveTool:return this.mouseMode===MouseMode.MoveTool;case _ViewerActionType.RubberbandTool:return this.mouseMode===MouseMode.RubberbandTool;case _ViewerActionType.MagnifierTool:return this.mouseMode===MouseMode.MagnifierTool;case _ViewerActionType.Continuous:return this.viewMode==ViewMode.Continuous;case _ViewerActionType.Single:return this.viewMode==ViewMode.Single;case _ViewerActionType.ToggleFullScreen:return this.fullScreen;case _ViewerActionType.FitPageWidth:return this.zoomMode==ZoomMode.PageWidth;case _ViewerActionType.FitWholePage:return this.zoomMode==ZoomMode.WholePage;case _ViewerActionType.SearchMatchCase:return this._searchManager.matchCase;case _ViewerActionType.SearchMatchWholeWord:return this._searchManager.wholeWord;case _ViewerActionType.ShowSearchBar:return!hasClass(this._searchBar,"hidden")}return!1}_isDocumentSourceLoaded(){return this._documentSource&&this._documentSource.isLoadCompleted}_actionIsDisabled(e){if(!(this._isDocumentSourceLoaded()&&this._documentSource.pageCount>0))return!0;switch(e){case _ViewerActionType.TogglePaginated:return null==this._innerPaginated;case _ViewerActionType.ShowExportsPanel:return!this._exportFormats||0===this._exportFormats.length;case _ViewerActionType.Landscape:case _ViewerActionType.Portrait:case _ViewerActionType.ShowPageSetupDialog:case _ViewerActionType.ShowPageSetupPanel:return!this._documentSource||!this._documentSource.pageSettings||!this._documentSource.paginated;case _ViewerActionType.FirstPage:case _ViewerActionType.PrePage:return this._pageIndex<=0;case _ViewerActionType.LastPage:case _ViewerActionType.NextPage:return this._pageIndex>=this._documentSource.pageCount-1;case _ViewerActionType.Backward:return!this._historyManager.canBackward();case _ViewerActionType.Forward:return!this._historyManager.canForward();case _ViewerActionType.Continuous:case _ViewerActionType.Single:return!this._documentSource||!this._documentSource.paginated;case _ViewerActionType.ZoomOut:return this.zoomFactor<=ViewerBase._defaultZoomValues[0].value;case _ViewerActionType.ZoomIn:var t=ViewerBase._defaultZoomValues;return this.zoomFactor>=t[t.length-1].value}return!1}_actionIsShown(e){var t=this._documentSource?this._documentSource.features:null;switch(e){case _ViewerActionType.TogglePaginated:return t&&t.paginated&&t.nonPaginated;case _ViewerActionType.Landscape:case _ViewerActionType.Portrait:case _ViewerActionType.ShowPageSetupDialog:case _ViewerActionType.ShowPageSetupPanel:return t?t.pageSettings:this._supportsPageSettingActions();case _ViewerActionType.SelectTool:case _ViewerActionType.MoveTool:case _ViewerActionType.MagnifierTool:case _ViewerActionType.RubberbandTool:return!isMobile();case _ViewerActionType.ShowSearchBar:return t&&(!this._documentSource.paginated||t.textSearchInPaginatedMode);case _ViewerActionType.ShowOutlines:return this._documentSource&&this._documentSource.hasOutlines;case _ViewerActionType.ShowThumbnails:return this._documentSource&&this._documentSource.hasThumbnails}return!0}_onViewerActionStatusChanged(e){this._viewerActionStatusChanged.raise(this,e)}_setViewerAction(e,t,i,r){var a={actionType:e,disabled:t||this._actionIsDisabled(e),checked:i||this._actionIsChecked(e),shown:r||this._actionIsShown(e)};this._onViewerActionStatusChanged({action:a})}_updateViewerActions(){this._updatePageSettingsActions();this._updateViewModeActions();this._updateMouseModeActions();this._setViewerAction(_ViewerActionType.ShowExportsPanel)}_updateViewModeActions(){this._setViewerAction(_ViewerActionType.Continuous);this._setViewerAction(_ViewerActionType.Single)}_updatePageSettingsActions(){this._setViewerAction(_ViewerActionType.TogglePaginated);this._setViewerAction(_ViewerActionType.Landscape);this._setViewerAction(_ViewerActionType.Portrait);this._setViewerAction(_ViewerActionType.ShowPageSetupDialog)}_updateMouseModeActions(){this._setViewerAction(_ViewerActionType.SelectTool);this._setViewerAction(_ViewerActionType.MoveTool);this._setViewerAction(_ViewerActionType.MagnifierTool);this._setViewerAction(_ViewerActionType.RubberbandTool)}_updateZoomModeActions(){this._setViewerAction(_ViewerActionType.FitPageWidth);this._setViewerAction(_ViewerActionType.FitWholePage)}_updateZoomFactorActions(){this._setViewerAction(_ViewerActionType.ZoomOut);this._setViewerAction(_ViewerActionType.ZoomIn)}_onPageSettingsUpdated(){this._updatePageSettingsActions();this._updateViewModeActions();this._resetToolbarWidth()}_onPageCountUpdated(){this._updatePageNavActions();this._resetToolbarWidth()}_updatePageNavActions(){this._setViewerAction(_ViewerActionType.FirstPage);this._setViewerAction(_ViewerActionType.LastPage);this._setViewerAction(_ViewerActionType.PrePage);this._setViewerAction(_ViewerActionType.NextPage)}_onHistoryManagerStatusUpdated(){this._setViewerAction(_ViewerActionType.Backward);this._setViewerAction(_ViewerActionType.Forward)}_updateUI(){Object.keys(_ViewerActionType).forEach(e=>{isNaN(e)||this._setViewerAction(_ViewerActionType[_ViewerActionType[e]])});var e=Control.getControl(this._sidePanel);e&&e.enableAll(this._isDocumentSourceLoaded())}_updateViewContainerCursor(){this.mouseMode===MouseMode.MoveTool?hasClass(this._viewpanelContainer,"move")||addClass(this._viewpanelContainer,"move"):hasClass(this._viewpanelContainer,"move")&&removeClass(this._viewpanelContainer,"move")}_updateFullScreenStyle(){var e=document.body;if(this.fullScreen){this._bodyOriginScrollLeft=document.documentElement&&document.documentElement.scrollLeft||e.scrollLeft;this._bodyOriginScrollTop=document.documentElement&&document.documentElement.scrollTop||e.scrollTop;addClass(this.hostElement,"full-screen");addClass(e,"full-screen");this._hostOriginWidth=this.hostElement.style.width;this._hostOriginHeight=this.hostElement.style.height;this.hostElement.style.width="100%";this.hostElement.style.height="100%";window.scrollTo(0,0)}else{removeClass(this.hostElement,"full-screen");removeClass(e,"full-screen");this.hostElement.style.width=this._hostOriginWidth;this.hostElement.style.height=this._hostOriginHeight;if(isNumber(this._bodyOriginScrollLeft)){document.documentElement&&(document.documentElement.scrollLeft=this._bodyOriginScrollLeft);e.scrollLeft=this._bodyOriginScrollLeft}if(isNumber(this._bodyOriginScrollTop)){document.documentElement&&(document.documentElement.scrollTop=this._bodyOriginScrollTop);e.scrollTop=this._bodyOriginScrollTop}}this.refresh()}showPageSetupDialog(){this._pageSetupDialog||this._createPageSetupDialog();this._pageSetupDialog.showWithValue(this._documentSource.pageSettings)}_createPageSetupDialog(){var e=this,t=document.createElement("div");t.style.display="none";e.hostElement.appendChild(t);e._pageSetupDialog=new _PageSetupDialog(t);e._pageSetupDialog.applied.addHandler(()=>e._setPageSettings(e._pageSetupDialog.pageSettings))}zoomToView(){_deprecated("zoomToView","zoomMode");this._documentSource&&(this.zoomMode=ZoomMode.WholePage)}zoomToViewWidth(){_deprecated("zoomToViewWidth","zoomMode");this._documentSource&&(this.zoomMode=ZoomMode.PageWidth)}_setPageLandscape(e){var t=this._documentSource.pageSettings;_setLandscape(t,e);this._setPageSettings(t)}_setPaginated(e){var t=this._documentSource.features,i=this._documentSource.pageSettings;if(t&&i&&e!=i.paginated)if(e&&t.paginated){i.paginated=!0;this._setPageSettings(i);this._showSearchBar(!1)}else if(!e&&t.nonPaginated){i.paginated=!1;this._setPageSettings(i)}}_setPageSettings(e){this._showViewPanelMessage();this._setDocumentRendering();return this._documentSource.setPageSettings(e).then(e=>{this._resetDocument();this._reRenderDocument()}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))})}_showViewPanelErrorMessage(e){this._showViewPanelMessage(e,"errormessage")}_showViewPanelMessage(e,t){var i=this._viewpanelContainer.querySelector("."+ViewerBaseClsNames.viewerLoading);if(!i){(i=document.createElement("div")).innerHTML='<span class="verticalalign"></span><span class="textspan"></span>';this._viewpanelContainer.appendChild(i)}i.className=ViewerBaseClsNames.viewerLoading;t&&addClass(i,t);var r=i.querySelector(".textspan");r&&(r.innerHTML=e||culture.Viewer.loading)}_removeViewPanelMessage(){var e=this._viewpanelContainer.querySelector("."+ViewerBaseClsNames.viewerLoading);e&&this._viewpanelContainer.removeChild(e)}_reRenderDocument(){if(this._documentSource){this._showViewPanelMessage();this._documentSource.load()}}_zoomBtnClicked(e,t){var i,r;for(i=0;i<t.length;i++){if(t[i].value>this.zoomFactor){r=i-.5;break}if(t[i].value===this.zoomFactor){r=i;break}}null==r&&(r=t.length-.5);if((!(r<=0)||e)&&!(r>=t.length-1&&e)){r=e?Math.floor(r)+1:Math.ceil(r)-1;this.zoomFactor=t[r].value}}_getDocumentSource(){return this._documentSource}_setDocumentSource(e){this._loadDocument(e).then(t=>{this._documentSource==e&&this._ensureExportFormatsLoaded()})}_loadDocument(e,t=!1,i=!0){var r=new _Promise;if(this._documentSource===e&&!t)return r;this._disposeDocument(i);this._documentSource=e;if(e){_addWjHandler(this._documentEventKey,e.loading,()=>{this._updateUI()},this);_addWjHandler(this._documentEventKey,e.loadCompleted,this._onDocumentSourceLoadCompleted,this);_addWjHandler(this._documentEventKey,e.queryLoadingData,(e,t)=>{this.onQueryLoadingData(t)},this);if(e.isLoadCompleted){this._onDocumentSourceLoadCompleted();this._keepServiceConnection();r.resolve()}else{this._showViewPanelMessage();e.load().then(e=>{this._keepServiceConnection();r.resolve(e)}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))})}}this._onDocumentSourceChanged();return r}_actionElementClicked(e){var t=this._getActionInfo(e);t&&(t.kind===_ActionKind.Bookmark?this._goToBookmark(t):t.kind===_ActionKind.Custom&&this._executeCustomAction(t))}_getActionInfo(e){var t=e.getAttribute(_Page._bookmarkAttr);return t?{kind:_ActionKind.Bookmark,data:t}:(t=e.getAttribute(_Page._customActionAttr))?{kind:_ActionKind.Custom,data:t}:null}_onDocumentSourceLoadCompleted(){var e=this._documentSource.errors;if(this._documentSource.isLoadCompleted){this._removeViewPanelMessage();this._pages.length=0;if(this._documentSource.pageCount<=0){this._updateUI();return}for(var t={width:this._documentSource.pageSettings.width,height:this._documentSource.pageSettings.height},i=0;i<this._documentSource.pageCount;i++){var r=this._createPage(i,t);r.linkClicked.addHandler((e,t)=>{this._magnifier&&this._magnifier.isActive||this._rubberband&&this._rubberband.isActive||this._actionElementClicked(t.element)});this._pages.push(r)}this._pageView.pages=this._pages;if(!this._autoHeightCalculated){this._autoCalculateHeight();this._autoHeightCalculated=!0}var a=this._documentSource.initialPosition||this._initialPosition;this._documentSource.initialPosition=null;this._initialPosition=null;if(!a||0==a.pageIndex){this._pageIndex=0;a={pageIndex:0}}this._documentSource.paginated||(this.viewMode=ViewMode.Single);this._initialScroll=!0;this._scrollToPosition(a);this._updateHistoryCurrent();if(e&&e.length>0)for(i=0;i<e.length;i++)e[i]+"\r\n";this._updateUI()}}_createPage(e,t){return new _Page(this._documentSource,e,t)}_clearKeepSerConnTimer(){if(null!=this._keepSerConnTimer){clearTimeout(this._keepSerConnTimer);this._keepSerConnTimer=null}}_keepServiceConnection(){this._clearKeepSerConnTimer();var e=this._documentSource;e&&(this._keepSerConnTimer=setTimeout(()=>{this._documentSource===e&&this._documentSource.getStatus().then(e=>this._keepServiceConnection())},this._getExpiredTime()))}_getExpiredTime(){if(this._expiredTime)return this._expiredTime;var e=this._documentSource;if(!e||!e.expiredDateTime||!e.executionDateTime)return 6e3;this._expiredTime=e.expiredDateTime.getTime()-e.executionDateTime.getTime();this._expiredTime=Math.max(this._expiredTime-12e4,0);return this._expiredTime}_disposeDocument(e=!0){if(this._documentSource){_removeAllWjHandlers(this._documentEventKey,this._documentSource.disposed);_removeAllWjHandlers(this._documentEventKey,this._documentSource.pageCountChanged);_removeAllWjHandlers(this._documentEventKey,this._documentSource.pageSettingsChanged);_removeAllWjHandlers(this._documentEventKey,this._documentSource.loadCompleted);_removeAllWjHandlers(this._documentEventKey,this._documentSource.queryLoadingData);e&&this._documentSource.dispose()}this._resetDocument()}_resetDocument(){this._pages.length=0;this._pageView.resetPages();this._pageIndex=0;clearTimeout(this._historyTimer);this._historyManager.clear();this._rubberband&&this._rubberband.reset();this._magnifier&&this._magnifier.reset()}_setDocumentRendering(){this._documentSource._updateIsLoadCompleted(!1)}moveToPage(e){return this._innerMoveToPage(e)}_getCurrentPosition(){return _getPositionByHitTestInfo(this._pageView.hitTest(0,0))}_resolvePageIndex(e){return Math.min(this._documentSource.pageCount-1,Math.max(e,0))}_innerMoveToPage(e){if(this._resolvePageIndex(e)!=this.pageIndex){this._pageMoving=!0;this._addHistory(!1,!0)}this._updatePageIndex(e);return this._pageView.moveToPage(this.pageIndex).then(()=>{this._pageMoving=!1})}_moveToLastPage(){var e=new _Promise;return this._ensureDocumentLoadCompleted(e)?this._innerMoveToPage(this._documentSource.pageCount-1):e}_moveBackwardHistory(){if(this._ensureDocumentLoadCompleted()&&this._historyManager.canBackward()){var e=this._historyManager.backward();this._moveToHistory(e)}}_moveForwardHistory(){if(this._ensureDocumentLoadCompleted()&&this._historyManager.canForward()){var e=this._historyManager.forward();this._moveToHistory(e)}}_moveToHistory(e){if(e){this._historyMoving=!0;this.viewMode=e.viewMode;e.zoomMode===ZoomMode.Custom?this.zoomFactor=e.zoomFactor:this.zoomMode=e.zoomMode;this._scrollToPosition(e.position).then(e=>{this._historyMoving=!1});for(var t=0;t<e.pageAngles.length;t++)this._pageView.rotatePageTo(t,e.pageAngles[t])}}_isPositionEquals(e,t,i){return!this._pageMoving&&(e.pageIndex===t.pageIndex&&(!i||(e.pageBounds==t.pageBounds||null!=e.pageBounds&&null!=t.pageBounds&&(e.pageBounds.x===t.pageBounds.x&&e.pageBounds.y===t.pageBounds.y))))}_isPageAnglesChanged(e){if(e.length!=this._pageView.pages.length)return!0;for(var t=e.length,i=0;i<t;i++)if(e[i]!==this._pageView.pages[i].rotateAngle)return!0;return!1}_updateHistoryCurrent(e=!1){this._historyManager.current.position=this._getCurrentPosition();if(!e){this._historyManager.current.zoomMode=this.zoomMode;this._historyManager.current.zoomFactor=this.zoomFactor;this._historyManager.current.viewMode=this.viewMode;this._updateCurrentPageAngles(this._historyManager.current)}}_innerAddHistory(e){var t=this._getCurrentPosition(),i=this._historyManager.current;if(!this._isPositionEquals(t,i.position,e)||this.viewMode!==i.viewMode||this.zoomMode!==i.zoomMode||this.zoomFactor!==i.zoomFactor||this._isPageAnglesChanged(i.pageAngles)){i.position=i.position||this._getCurrentPosition();i.viewMode=null==i.viewMode?this.viewMode:i.viewMode;i.zoomMode=null==i.zoomMode?this.zoomMode:i.zoomMode;i.zoomFactor=null==i.zoomFactor?this.zoomFactor:i.zoomFactor;i.pageAngles||this._updateCurrentPageAngles(i);this._historyManager.add();this._updateHistoryCurrent()}}_addHistory(e,t,i,r=!1){if(!(this._prohibitAddHistory||this.isUpdating||this._historyMoving)&&this._isDocumentSourceLoaded()){r&&(this._prohibitAddHistory=!0);if(t){this._mergeHistory(i);null!=this._historyTimer&&clearTimeout(this._historyTimer);this._historyTimer=setTimeout(()=>{this._historyTimer=null;this._innerAddHistory(e);this._prohibitAddHistory=!1},ViewerBase._historyTimeout)}else{this._innerAddHistory(e);this._prohibitAddHistory=!1}}}_updateCurrentPageAngles(e){e.pageAngles||(e.pageAngles=new Array);for(var t=this._pageView.pages.length,i=0;i<t;i++)e.pageAngles[i]=this._pageView.pages[i].rotateAngle}_mergeHistory(e){var t=this._historyManager.current;if(e){null!=e.viewMode&&(t.viewMode=e.viewMode);null!=e.zoomMode&&(t.zoomMode=e.zoomMode);null!=e.zoomFactor&&(t.zoomFactor=e.zoomFactor);if(e.pageAngles){t.pageAngles=new Array;for(var i=this._pageView.pages.length,r=0;r<i;r++)t.pageAngles[r]=e.pageAngles[r]}}else{t.viewMode=this.viewMode;t.zoomMode=this.zoomMode;t.zoomFactor=this.zoomFactor;this._updateCurrentPageAngles(t)}}_ensureDocumentLoadCompleted(e){if(!this._documentSource){e&&e.reject("Cannot set page index without document source.");return!1}if(!this._documentSource.isLoadCompleted){e&&e.reject("Cannot set page index when document source is not loaded completely.");return!1}return!0}_updatePageIndex(e){if(this._documentSource){e=Math.min(this._documentSource.pageCount-1,Math.max(e,0));if(this._pageIndex!==e){this._pageIndex=e;this.onPageIndexChanged()}}}_getRotatedAngle(e){switch(e){case _RotateAngle.NoRotate:return _RotateAngle.Rotation90;case _RotateAngle.Rotation90:return _RotateAngle.Rotation180;case _RotateAngle.Rotation180:return _RotateAngle.Rotation270;case _RotateAngle.Rotation270:return _RotateAngle.NoRotate}return _RotateAngle.NoRotate}_rotateDocument(){this._addHistory(!1,!0);for(var e=this._pageView.pages.length,t=0;t<e;t++)this._pageView.rotatePageTo(t,this._getRotatedAngle(this._pageView.pages[t].rotateAngle))}_rotatePage(){this._addHistory(!1,!0);var e=this._pageView.pages[this._pageIndex];this._pageView.rotatePageTo(this._pageIndex,this._getRotatedAngle(e.rotateAngle))}get zoomMode(){return this._pageView.zoomMode}set zoomMode(e){this._pageView.zoomMode=asEnum(e,ZoomMode)}get zoomFactor(){return this._pageView.zoomFactor}set zoomFactor(e){this._pageView.zoomFactor=e}get viewMode(){return this._viewMode}set viewMode(e){e=asEnum(e,ViewMode);if(this._viewMode!==e){const t=this._viewMode;this._viewMode=e;this.onViewModeChanged(t,e)}}get mouseMode(){return this._mouseMode}set mouseMode(e){if(this._mouseMode!==(e=asEnum(e,MouseMode))){this._mouseMode=e;switch(this._mouseMode){case MouseMode.RubberbandTool:this._rubberband.activate();this._magnifier.deactivate();break;case MouseMode.MagnifierTool:this._magnifier.activate();this._rubberband.deactivate();break;default:this._magnifier.deactivate();this._rubberband.deactivate()}this.onMouseModeChanged()}}get fullScreen(){return this._fullScreen}set fullScreen(e){if(this._fullScreen!==e){this._fullScreen=e;this.onFullScreenChanged()}}get pageIndex(){return this._pageIndex}_initMiniToolbar(){if(!Control.getControl(this._miniToolbar)){new _ViewerMiniToolbar(this._miniToolbar,this);addClass(this._miniToolbar,ViewerBaseClsNames.miniToolbar)}}_pinMiniToolbar(){this._showMiniToolbar(!0);this._miniToolbarPinnedTimer=setTimeout(()=>{this._showMiniToolbar(!1);this._miniToolbarPinnedTimer=null},ViewerBase._miniToolbarPinnedTime)}_onDocumentSourceChanged(e){this._clearExportFormats();this._documentSourceChanged.raise(this);this._updateViewerActions();this._onPageSettingsUpdated();this._onPageCountUpdated();this._updateViewModeActions();this._searchManager.documentSource=this._documentSource;if(this._documentSource){_addWjHandler(this._documentEventKey,this._documentSource.pageSettingsChanged,this._onPageSettingsUpdated,this);_addWjHandler(this._documentEventKey,this._documentSource.pageCountChanged,this._onPageCountUpdated,this);_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,this._onPageCountUpdated,this)}}onPageIndexChanged(e){this.pageIndexChanged.raise(this);this._updatePageNavActions()}onViewModeChanged(e,t){this.viewModeChanged.raise(this,{oldValue:e,newValue:t});this._updateViewModeActions();this._pageView.viewMode=this.viewMode}onMouseModeChanged(e){this.mouseModeChanged.raise(this);if(this.mouseMode!==MouseMode.MoveTool&&this.mouseMode!==MouseMode.SelectTool||!isMobile()){this._updateMouseModeActions();this._updateViewContainerCursor();this._pageView.panMode=this.mouseMode===MouseMode.MoveTool}}onFullScreenChanged(e){this.fullScreenChanged.raise(this);this._setViewerAction(_ViewerActionType.ToggleFullScreen);this._updateFullScreenStyle();this.fullScreen&&this._pinMiniToolbar()}onZoomFactorChanged(e){this.zoomFactorChanged.raise(this,e);this._updateZoomFactorActions();this._updateZoomModeActions()}onZoomModeChanged(e){this.zoomModeChanged.raise(this,e);this._updateZoomModeActions();this._updateZoomFactorActions()}onQueryLoadingData(e){this.queryLoadingData.raise(this,e)}onBeforeSendRequest(e){this.beforeSendRequest.raise(this,e)}onPageLoaded(e){this.pageLoaded.raise(this,e)}beforeSend(e){this.onBeforeSendRequest(e)}dispose(){this._disposeDocument();if(this._rubberband){this._rubberband.dispose();this._rubberband=null}this._clearKeepSerConnTimer();if(this._historyTimer){clearTimeout(this._historyTimer);this._historyTimer=null}if(this._positionChangedTimeout){clearTimeout(this._positionChangedTimeout);this._positionChangedTimeout=null}if(null!=this._historyTimer){clearTimeout(this._historyTimer);this._historyTimer=null}if(this._searchOptionsMenu){this._searchOptionsMenu.dispose();this._searchOptionsMenu=null}if(this._magnifier){this._magnifier.dispose();this._magnifier=null}if(this._pageSetupDialog){this._pageSetupDialog.dispose();this._pageSetupDialog=null}if(this._searchManager){this._searchManager.dispose();this._searchManager=null}if(this._exportOptionEditor){this._exportOptionEditor.dispose();this._exportOptionEditor=null}if(this._compositePageViewInstance){this._compositePageViewInstance.dispose();this._compositePageViewInstance=null}if(this._searchBarInstance){this._searchBarInstance.dispose();this._searchBarInstance=null}if(this._viewerZoomBarInstance){this._viewerZoomBarInstance.dispose();this._viewerZoomBarInstance=null}super.dispose()}}ViewerBase._seperatorHtml=`<div class="${UtilitesClsNames.separator}" style='width:100%;height: 1px;margin: 3px 0;background-color:rgba(0,0,0,.2)'></div>`;ViewerBase._viewpanelContainerMinHeight=300;ViewerBase._miniToolbarPinnedTime=3e3;ViewerBase._narrowCss="narrow";ViewerBase._narrowWidthThreshold=400;ViewerBase._thumbnailWidth=100;ViewerBase._historyTimeout=300;ViewerBase._zoomValuesFormatter=e=>Math.floor(100*e+.5)+" %";ViewerBase._zoomValuesParser=e=>parseFloat(e.replace(" %",""));ViewerBase._defaultZoomValues=[.05,.25,.5,.75,1,2,3,4,8,10].map(e=>({value:e,name:ViewerBase._zoomValuesFormatter(e)}));ViewerBase._ctrlTemplate="";export class PdfViewer extends ViewerBase{constructor(e,t){super(e,t)}static get controlTemplate(){PdfViewer._ctrlTemplate||(PdfViewer._ctrlTemplate=ViewerBase.controlTemplate);return PdfViewer._ctrlTemplate}static set controlTemplate(e){PdfViewer._ctrlTemplate=e}_getProductInfo(){return"QNI5,PdfViewer"}get _innerDocumentSource(){return this._getDocumentSource()}_getSource(){return this.filePath?new _PdfDocumentSource({serviceUrl:this.serviceUrl,filePath:this.filePath},this):null}}PdfViewer._ctrlTemplate="";export class _ViewerMiniToolbar extends _ViewerToolbarBase{constructor(e,t){super(e,t)}static get controlTemplate(){_ViewerMiniToolbar._ctrlTemplate||(_ViewerMiniToolbar._ctrlTemplate=_ViewerToolbarBase.controlTemplate);return _ViewerMiniToolbar._ctrlTemplate}static set controlTemplate(e){_ViewerMiniToolbar._ctrlTemplate=e}_initToolbarItems(){let e=culture.Viewer;this._gPrint=this.addSvgButton(e.print,icons.print,_ViewerActionType.Print);this.addSeparator();this._gPreviousPage=this.addSvgButton(e.previousPage,icons.previousPage,_ViewerActionType.PrePage);this._gNextPage=this.addSvgButton(e.nextPage,icons.nextPage,_ViewerActionType.NextPage);_ViewerToolbarBase._initToolbarPageNumberInput(this.hostElement,this.viewer);this.addSeparator();this._gZoomOut=this.addSvgButton(e.zoomOut,icons.zoomOut,_ViewerActionType.ZoomOut);this._gZoomIn=this.addSvgButton(e.zoomIn,icons.zoomIn,_ViewerActionType.ZoomIn);this._gExitFullScreen=this.addSvgButton(e.exitFullScreen,icons.exitFullScreen,_ViewerActionType.ToggleFullScreen,!0)}_globalize(){var e=culture.Viewer;this._gPrint.title=e.print;this._gPreviousPage.title=e.previousPage;this._gNextPage.title=e.nextPage;this._gZoomOut.title=e.zoomOut;this._gZoomIn.title=e.zoomIn;this._gExitFullScreen.title=e.exitFullScreen}}_ViewerMiniToolbar._ctrlTemplate="";export class _ViewerToolbar extends _ViewerToolbarBase{constructor(e,t){super(e,t)}static get controlTemplate(){_ViewerToolbar._ctrlTemplate||(_ViewerToolbar._ctrlTemplate=_ViewerToolbarBase.controlTemplate);return _ViewerToolbar._ctrlTemplate}static set controlTemplate(e){_ViewerToolbar._ctrlTemplate=e}_globalize(){let e=culture.Viewer;this._gPaginated.title=e.paginated;this._gPrint.title=e.print;this._gExports.title=e.exports;this._gPortrait.title=e.portrait;this._gLandscape.title=e.landscape;this._gPageSetup.title=e.pageSetup;this._gFirstPage.title=e.firstPage;this._gPreviousPage.title=e.previousPage;this._gNextPage.title=e.nextPage;this._gLastPage.title=e.lastPage;this._gBackwardHistory.title=e.backwardHistory;this._gForwardHistory.title=e.forwardHistory;this._gSelectTool.title=e.selectTool;this._gMoveTool.title=e.moveTool;this._gContinuousMode.title=e.continuousMode;this._gSingleMode.title=e.singleMode;this._gWholePage.title=e.wholePage;this._gPageWidth.title=e.pageWidth;this._gZoomOut.title=e.zoomOut;this._gZoomIn.title=e.zoomIn;this._gRubberbandTool.title=e.rubberbandTool;this._gMagnifierTool.title=e.magnifierTool;this._gRotateDocument.title=e.rotateDocument;this._gRotatePage.title=e.rotatePage;this._gFullScreen.title=e.fullScreen}_initToolbarItems(){let e=culture.Viewer;this._gPaginated=this.addSvgButton(e.paginated,icons.paginated,_ViewerActionType.TogglePaginated,!0);this._gPrint=this.addSvgButton(e.print,icons.print,_ViewerActionType.Print);this._gExports=this.addSvgButton(e.exports,icons.exports,_ViewerActionType.ShowExportsPanel);this.addSeparator();this._gPortrait=this.addSvgButton(e.portrait,icons.portrait,_ViewerActionType.Portrait);this._gLandscape=this.addSvgButton(e.landscape,icons.landscape,_ViewerActionType.Landscape);this._gPageSetup=this.addSvgButton(e.pageSetup,icons.pageSetup,_ViewerActionType.ShowPageSetupDialog);this.addSeparator();this._gFirstPage=this.addSvgButton(e.firstPage,icons.firstPage,_ViewerActionType.FirstPage);this._gPreviousPage=this.addSvgButton(e.previousPage,icons.previousPage,_ViewerActionType.PrePage);this._gNextPage=this.addSvgButton(e.nextPage,icons.nextPage,_ViewerActionType.NextPage);this._gLastPage=this.addSvgButton(e.lastPage,icons.lastPage,_ViewerActionType.LastPage);_ViewerToolbarBase._initToolbarPageNumberInput(this.hostElement,this.viewer);this.addSeparator();this._gBackwardHistory=this.addSvgButton(e.backwardHistory,icons.backwardHistory,_ViewerActionType.Backward);this._gForwardHistory=this.addSvgButton(e.forwardHistory,icons.forwardHistory,_ViewerActionType.Forward);this.addSeparator();this._gSelectTool=this.addSvgButton(e.selectTool,icons.selectTool,_ViewerActionType.SelectTool);this._gMoveTool=this.addSvgButton(e.moveTool,icons.moveTool,_ViewerActionType.MoveTool);this._gContinuousMode=this.addSvgButton(e.continuousMode,icons.continuousView,_ViewerActionType.Continuous);this._gSingleMode=this.addSvgButton(e.singleMode,icons.singleView,_ViewerActionType.Single);this.addSeparator();this._gWholePage=this.addSvgButton(e.wholePage,icons.fitWholePage,_ViewerActionType.FitWholePage);this._gPageWidth=this.addSvgButton(e.pageWidth,icons.fitPageWidth,_ViewerActionType.FitPageWidth);this._gZoomOut=this.addSvgButton(e.zoomOut,icons.zoomOut,_ViewerActionType.ZoomOut);this._gZoomIn=this.addSvgButton(e.zoomIn,icons.zoomIn,_ViewerActionType.ZoomIn);this._gRubberbandTool=this.addSvgButton(e.rubberbandTool,icons.rubberbandTool,_ViewerActionType.RubberbandTool);this._gMagnifierTool=this.addSvgButton(e.magnifierTool,icons.magnifierTool,_ViewerActionType.MagnifierTool);this._gRotateDocument=this.addSvgButton(e.rotateDocument,icons.rotateDocument,_ViewerActionType.RotateDocument);this._gRotatePage=this.addSvgButton(e.rotatePage,icons.rotatePage,_ViewerActionType.RotatePage);_ViewerToolbarBase._initToolbarZoomValue(this.hostElement,this.viewer);this._gFullScreen=this.addSvgButton(e.fullScreen,icons.fullScreen,_ViewerActionType.ToggleFullScreen,!0)}}_ViewerToolbar._ctrlTemplate="";export class _ViewerMobileToolbarBase extends _ViewerToolbarBase{constructor(e,t){super(e,t);addClass(this.hostElement,"mobile")}static get controlTemplate(){_ViewerMobileToolbarBase._ctrlTemplate||(_ViewerMobileToolbarBase._ctrlTemplate=_ViewerToolbarBase.controlTemplate);return _ViewerMobileToolbarBase._ctrlTemplate}static set controlTemplate(e){_ViewerMobileToolbarBase._ctrlTemplate=e}}_ViewerMobileToolbarBase._ctrlTemplate="";export class _ViewerZoomBar extends _ViewerMobileToolbarBase{constructor(e,t){super(e,t);addClass(this.hostElement,ViewerBaseClsNames.zoomBar)}static get controlTemplate(){_ViewerZoomBar._ctrlTemplate||(_ViewerZoomBar._ctrlTemplate=_ViewerMobileToolbarBase.controlTemplate);return _ViewerZoomBar._ctrlTemplate}static set controlTemplate(e){_ViewerZoomBar._ctrlTemplate=e}_initToolbarItems(){let e=culture.Viewer;this._gZoomOut=this.addSvgButton(e.zoomOut,icons.zoomOut,_ViewerActionType.ZoomOut);_ViewerToolbarBase._initToolbarZoomValue(this.hostElement,this.viewer);this._gZoomIn=this.addSvgButton(e.zoomIn,icons.zoomIn,_ViewerActionType.ZoomIn)}_globalize(){let e=culture.Viewer;this._gZoomOut.title=e.zoomOut;this._gZoomIn.title=e.zoomIn}}_ViewerZoomBar._ctrlTemplate="";export class _ViewerMobileToolbar extends _ViewerMobileToolbarBase{constructor(e,t){super(e,t)}static get controlTemplate(){_ViewerMobileToolbar._ctrlTemplate||(_ViewerMobileToolbar._ctrlTemplate=_ViewerMobileToolbarBase.controlTemplate);return _ViewerMobileToolbar._ctrlTemplate}static set controlTemplate(e){_ViewerMobileToolbar._ctrlTemplate=e}_initToolbarItems(){let e=culture.Viewer;this._gShowHamburgerMenu=this.addSvgButton(e.hamburgerMenu,icons.hamburgerMenu,_ViewerActionType.ShowHamburgerMenu);this.viewer._initHamburgerMenu(this._gShowHamburgerMenu);this._gPrevPage=this.addSvgButton(e.previousPage,icons.previousPage,_ViewerActionType.PrePage);this._gNextPage=this.addSvgButton(e.nextPage,icons.nextPage,_ViewerActionType.NextPage);_ViewerToolbarBase._initToolbarPageNumberInput(this.hostElement,this.viewer);this._gShowViewMenu=this.addSvgButton(e.viewMenu,icons.viewMenu,_ViewerActionType.ShowViewMenu);this.viewer._initViewMenu(this._gShowViewMenu);this._gShowSearchBar=this.addSvgButton(e.showSearchBar,icons.search,_ViewerActionType.ShowSearchBar,!0);this._gFullScreen=this.addSvgButton(e.fullScreen,icons.fullScreen,_ViewerActionType.ToggleFullScreen,!0)}_globalize(){let e=culture.Viewer;this._gShowHamburgerMenu.title=e.hamburgerMenu;this._gPrevPage.title=e.previousPage;this._gNextPage.title=e.nextPage;this._gShowViewMenu.title=e.viewMenu;this._gShowSearchBar.title=e.showSearchBar;this._gFullScreen.title=e.fullScreen}}_ViewerMobileToolbar._ctrlTemplate="";export class _SearchBar extends _ViewerMobileToolbarBase{constructor(e,t){super(e,t)}static get controlTemplate(){_SearchBar._ctrlTemplate||(_SearchBar._ctrlTemplate=_ViewerMobileToolbarBase.controlTemplate);return _SearchBar._ctrlTemplate}static set controlTemplate(e){_SearchBar._ctrlTemplate=e}_initToolbarItems(){let e=culture.Viewer;this._gSearchOptions=this.addSvgButton(e.searchOptions,icons.searchOptions,_ViewerActionType.ShowSearchOptions);this.viewer._initSearchOptionsMenu(this._gSearchOptions);this._initSearchInput();this._initSearchBtnGroups()}_initSearchInput(){var e=_toDOM(`<div class="${ViewerBaseClsNames.searchContainer}"><input class="${ViewerBaseClsNames.searchBox}" wj-part="search-box" type="text"/><div class="${InputFormElementsClsNames.btnGroup}"><button class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.btnSearch}">`+_createSvgBtn(icons.search).innerHTML+"</button></div></div>"),t=e.querySelector('input[type="text"]'),i=e.querySelector("."+ViewerBaseClsNames.btnSearch);this.addEventListener(t,"input",()=>{this.viewer._searchManager.text=t.value});this.addEventListener(i,"click",()=>{this.viewer._searchManager.search()});this.viewer._searchManager.searchStarted.addHandler(()=>{t.value!==this.viewer._searchManager.text&&(t.value=this.viewer._searchManager.text);t.disabled=!0});this.viewer._searchManager.searchCompleted.addHandler(()=>{t.disabled=!1});this.viewer._searchManager.textChanged.addHandler(()=>{t.value=this.viewer._searchManager.text});this.addCustomItem(e)}_initSearchBtnGroups(){var e=_toDOM(`<div class="${ViewerBaseClsNames.searchbtnGroups} ${InputFormElementsClsNames.btnGroup} ${ViewerBaseClsNames.toolbarWrapper}"></div>`);let t=culture.Viewer;this._gSearchPrev=this.addSvgButton(t.searchPrev,icons.searchLeft,_ViewerActionType.SearchPrev);this._gSearchNext=this.addSvgButton(t.searchNext,icons.searchRight,_ViewerActionType.SearchNext);e.appendChild(this._gSearchPrev);e.appendChild(this._gSearchNext);this.addCustomItem(e)}_globalize(){let e=culture.Viewer;this._gSearchOptions.title=e.searchOptions;this._gSearchPrev.title=e.searchPrev;this._gSearchNext.title=e.searchNext}}_SearchBar._ctrlTemplate="";export class _ViewerMenuBase extends Menu{constructor(e,t,i){super(document.createElement("div"),i);this.owner=t;this.hostElement.style.display="none";this.owner.appendChild(this.hostElement);this.showDropDownButton=!1;this.itemClicked.addHandler(this._onItemClicked,this);this.formatItem.addHandler(this._formatItem,this);this._viewer=e;this._bindMenuItems();this.displayMemberPath="title";this.selectedValuePath="commandTag";this._viewer._viewerActionStatusChanged.addHandler((e,t)=>{var i=this.dropDown.querySelector('[command-tag="'+t.action.actionType.toString()+'"]');this._updateActionStatusCore(i,t.action)})}static get controlTemplate(){_ViewerMenuBase._ctrlTemplate||(_ViewerMenuBase._ctrlTemplate=Menu.controlTemplate);return _ViewerMenuBase._ctrlTemplate}static set controlTemplate(e){_ViewerMenuBase._ctrlTemplate=e}get viewer(){return this._viewer}_bindMenuItems(){this.itemsSource=this._initItems()}_initItems(){throw culture.Viewer.abstractMethodException}_internalFormatItem(e,t){if(e&&void 0!==e.commandTag){_removeChildren(t);if(e.icon){var i=document.createElement("span");i.appendChild(_createSvgBtn(e.icon));t.insertBefore(i,t.firstChild)}t.setAttribute("command-tag",e.commandTag.toString());this._updateActionStatus(t,e.commandTag)}}_formatItem(e,t){this._internalFormatItem(this.itemsSource[t.index],t.item)}_onItemClicked(e){this._viewer._executeAction(parseInt(e.selectedItem.commandTag))}_updateActionStatus(e,t){this._updateActionStatusCore(e,{actionType:t,checked:this._viewer._actionIsChecked(t),disabled:this._viewer._actionIsDisabled(t),shown:this._viewer._actionIsShown(t)})}_updateActionStatusCore(e,t){_checkImageButton(e,t.checked);_disableImageButton(e,t.disabled);_showImageButton(e,t.shown)}_updateItemsStatus(){for(var e=this.dropDown.querySelectorAll("[command-tag]"),t=0;t<e.length;t++){var i=e[t],r=i.getAttribute("command-tag");null!=r&&this._updateActionStatus(i,parseInt(r))}_checkSeparatorShown(this.dropDown)}refresh(e=!0){super.refresh(e);e&&this._bindMenuItems();this.isDroppedDown&&this.showMenu()}showMenu(e){this.selectedIndex=-1;showPopup(this.dropDown,this.owner,e,!1,!1);this.dropDown.style.color=this._viewer.hostElement.style.color;addClass(this.dropDown,InputFormElementsClsNames.btnGroupVertical);addClass(this.dropDown,ViewerBaseClsNames.viewerMenu);this._updateItemsStatus();this.dropDown.focus()}}_ViewerMenuBase._ctrlTemplate="";export class _SearchOptionsMenu extends _ViewerMenuBase{constructor(e,t,i){super(e,t,i)}static get controlTemplate(){_SearchOptionsMenu._ctrlTemplate||(_SearchOptionsMenu._ctrlTemplate=_ViewerMenuBase.controlTemplate);return _SearchOptionsMenu._ctrlTemplate}static set controlTemplate(e){_SearchOptionsMenu._ctrlTemplate=e}_initItems(){var e=[];e.push({title:culture.Viewer.matchCaseMenuItem,commandTag:_ViewerActionType.SearchMatchCase});e.push({title:culture.Viewer.wholeWordMenuItem,commandTag:_ViewerActionType.SearchMatchWholeWord});return e}_internalFormatItem(e,t){super._internalFormatItem(e,t);if(e&&void 0!==e.commandTag){var i=document.createElement("span");i.innerHTML=culture.Viewer.checkMark;addClass(i,"checkIcon");t.insertBefore(i,t.firstChild)}}_updateActionStatus(e,t){super._updateActionStatus(e,t);this.viewer._actionIsChecked(t)?addClass(e,"checked"):removeClass(e,"checked")}}_SearchOptionsMenu._ctrlTemplate="";export class _HamburgerMenu extends _ViewerMenuBase{constructor(e,t,i){super(e,t,i)}static get controlTemplate(){_HamburgerMenu._ctrlTemplate||(_HamburgerMenu._ctrlTemplate=_ViewerMenuBase.controlTemplate);return _HamburgerMenu._ctrlTemplate}static set controlTemplate(e){_HamburgerMenu._ctrlTemplate=e}_initItems(){let e=[],t=culture.Viewer;e.push({title:t.thumbnails,icon:icons.thumbnails,commandTag:_ViewerActionType.ShowThumbnails});e.push({title:t.outlines,icon:icons.outlines,commandTag:_ViewerActionType.ShowOutlines});e.push({title:t.exports,icon:icons.exports,commandTag:_ViewerActionType.ShowExportsPanel});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.portrait,icon:icons.portrait,commandTag:_ViewerActionType.Portrait});e.push({title:t.landscape,icon:icons.landscape,commandTag:_ViewerActionType.Landscape});e.push({title:t.pageSetup,icon:icons.pageSetup,commandTag:_ViewerActionType.ShowPageSetupPanel});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.showZoomBar,icon:icons.showZoomBar,commandTag:_ViewerActionType.ShowZoomBar});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.paginated,icon:icons.paginated,commandTag:_ViewerActionType.TogglePaginated});e.push({title:t.print,icon:icons.print,commandTag:_ViewerActionType.Print});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.backwardHistory,icon:icons.backwardHistory,commandTag:_ViewerActionType.Backward});e.push({title:t.forwardHistory,icon:icons.forwardHistory,commandTag:_ViewerActionType.Forward});return e}}_HamburgerMenu._ctrlTemplate="";export class _ViewMenu extends _ViewerMenuBase{constructor(e,t,i){super(e,t,i)}static get controlTemplate(){_ViewMenu._ctrlTemplate||(_ViewMenu._ctrlTemplate=_ViewerMenuBase.controlTemplate);return _ViewMenu._ctrlTemplate}static set controlTemplate(e){_ViewMenu._ctrlTemplate=e}_initItems(){var e=[];e.push({title:culture.Viewer.singleMode,icon:icons.singleView,commandTag:_ViewerActionType.Single});e.push({title:culture.Viewer.continuousMode,icon:icons.continuousView,commandTag:_ViewerActionType.Continuous});e.push({title:ViewerBase._seperatorHtml});e.push({title:culture.Viewer.wholePage,icon:icons.fitWholePage,commandTag:_ViewerActionType.FitWholePage});e.push({title:culture.Viewer.pageWidth,icon:icons.fitPageWidth,commandTag:_ViewerActionType.FitPageWidth});return e}}_ViewMenu._ctrlTemplate="";export class _ReportHamburgerMenu extends _HamburgerMenu{constructor(e,t,i){super(e,t,i)}static get controlTemplate(){_ReportHamburgerMenu._ctrlTemplate||(_ReportHamburgerMenu._ctrlTemplate=_HamburgerMenu.controlTemplate);return _ReportHamburgerMenu._ctrlTemplate}static set controlTemplate(e){_ReportHamburgerMenu._ctrlTemplate=e}_initItems(){var e=super._initItems();e.splice(2,0,{title:culture.Viewer.parameters,icon:parametersIcon,commandTag:ReportViewer._parameterCommandTag});return e}}_ReportHamburgerMenu._ctrlTemplate="";var _ArReportFormat;!function(e){e[e.Rpx=0]="Rpx";e[e.Rdf=1]="Rdf";e[e.Rdlx=2]="Rdlx"}(_ArReportFormat||(_ArReportFormat={}));export var _ArDocumentFormat;!function(e){e[e.Image=3]="Image";e[e.Pdf=4]="Pdf";e[e.Html=5]="Html";e[e.Word=6]="Word";e[e.Xls=7]="Xls";e[e.Xml=8]="Xml";e[e.Svg=9]="Svg"}(_ArDocumentFormat||(_ArDocumentFormat={}));export var _ArLoadState;!function(e){e[e.NotStarted=0]="NotStarted";e[e.Rendering=1]="Rendering";e[e.Rendered=2]="Rendered";e[e.Cancelling=3]="Cancelling";e[e.Cancelled=4]="Cancelled";e[e.Error=5]="Error"}(_ArLoadState||(_ArLoadState={}));export var _ArErrorCode;!function(e){e[e.InvalidCulture=0]="InvalidCulture";e[e.InvalidVersion=1]="InvalidVersion";e[e.UnknownReportType=2]="UnknownReportType";e[e.NoSuchReport=3]="NoSuchReport";e[e.ParametersNotSet=4]="ParametersNotSet";e[e.RuntimeIsBusy=5]="RuntimeIsBusy";e[e.InternalError=6]="InternalError";e[e.ParameterNotExists=7]="ParameterNotExists";e[e.NoAcceptableFormats=8]="NoAcceptableFormats";e[e.InvalidToken=9]="InvalidToken";e[e.UnsupportedFormat=10]="UnsupportedFormat";e[e.InvalidSetOfParameters=11]="InvalidSetOfParameters";e[e.MethodNotSupported=12]="MethodNotSupported";e[e.NoValidLicenseFound=13]="NoValidLicenseFound"}(_ArErrorCode||(_ArErrorCode={}));var ticksOffsetFromUnixEpoch=621355968e9,ticksInMillisecond=1e4,millisecondsInMinute=6e4;export class _ArReportService extends _DocumentService{constructor(){super(...arguments);this._lifeTime=6e5;this._drillthroughData=null;this._canChangeRenderMode=!1;this._uid=(new Date).getTime().toString();this._isDisposed=!1;this._hasOutlines=void 0}static StateToStatus(e){switch(e){case _ArLoadState.NotStarted:return _ExecutionStatus.notFound;case _ArLoadState.Rendered:return _ExecutionStatus.completed;case _ArLoadState.Rendering:return _ExecutionStatus.rendering;case _ArLoadState.Cancelled:return _ExecutionStatus.stopped;default:throw"Not supported state: "+e}}static ConvertFormat(e){switch(e){case"doc":case"docx":return _ArDocumentFormat.Word;case"html":return _ArDocumentFormat.Svg;case"mhtml":return _ArDocumentFormat.Html;case"pdf":return _ArDocumentFormat.Pdf;case"svg":return _ArDocumentFormat.Svg;case"tiff":case"png":return _ArDocumentFormat.Image;case"xml":return _ArDocumentFormat.Xml;case"xlsx":case"xls":return _ArDocumentFormat.Xls;default:throw"Not supported format: "+e}}static IsError(e){return!!(e&&e.json&&e.json.Error)}get isDisposed(){return this._isDisposed}get autoRun(){return this._autoRun}get canChangeRenderMode(){return this._canChangeRenderMode}get parameters(){return this._parameters||[]}getStatus(){var e=new _Promise;if(this._isDisposed)return e.resolve({status:_ExecutionStatus.cleared});if(!this._token)return e.resolve({status:_ExecutionStatus.notFound});this._ajax(this.serviceUrl+"/GetStatus",{method:"POST",data:{token:this._token}}).then(t=>{let i=_ArReportService.StateToStatus(t.json.LoadState),r={errorList:t.json.Error?[t.json.Error.Description]:[],pageCount:t.json.AvailablePages,hasOutlines:!!this._hasOutlines,progress:0,status:i};i===_ExecutionStatus.completed&&null==this._hasOutlines?this.getOutlines(!0).then(t=>{r.hasOutlines=this._hasOutlines=(t||[]).length>0;e.resolve(r)}):e.resolve(r)},t=>{e.reject(this._getError(t))});return e}setPageSettings(e){throw _DocumentSource._abstractMethodException}getBookmark(e){let t=new _Promise,i=e.split("|");return t.resolve({pageIndex:parseInt(i[0],10)-1,pageBounds:(e=>{if(e){let t=e.split(" ");return{x:_Unit.convertValue(parseFloat(t[0]),_UnitType.Dip,_UnitType.Twip),y:_Unit.convertValue(parseFloat(t[1]),_UnitType.Dip,_UnitType.Twip)}}})(i[1])})}executeCustomAction(e){switch(e.arKind){case _ArActionKind.Drillthrough:var t=JSON.parse(e.data);return(new _Promise).resolve(t);case _ArActionKind.Toggle:return this.processOnClick(e.data);default:return(new _Promise).reject("Not implemented action: "+e.arKind)}}load(e){var t=[];if(e){let i="parameters.";Object.keys(e).forEach(r=>{if(0===r.indexOf(i)){t.push({Name:r.substring(i.length),Value:e[r]});delete e[r]}})}if(this._drillthroughData){t.length&&this._mergeParameters(t,this._drillthroughData.Parameters||[]);return this.loadDrillthroughReport(this._drillthroughData)}var i=new _Promise;this._ajax(this.serviceUrl+"/OpenReport",{method:"POST",data:this._merge(e,{acceptedFormats:[_ArDocumentFormat.Svg],culture:"en-US",lifeTime:this._lifeTime/1e3,reportPath:this.filePath,version:4})}).then(e=>{this._hasDelayedContent=e.json.HasDelayedContent;this._autoRun=!!e.json.AutoRun;this._documentFormat=e.json.DocumentFormat;this._parameters=(e.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e));this._token=e.json.Token;this._isDisposed=!1;let t=new Date,i=new Date(t.getTime()+this._lifeTime);return{expiredDateTime:i,loadedDateTime:t,features:{nonPaginated:!1,paginated:!0,pageSettings:!1,textSearchInPaginatedMode:!0},pageSettings:{height:new _Unit(1056,_UnitType.Dip),width:new _Unit(816,_UnitType.Dip),leftMargin:new _Unit(48,_UnitType.Dip),rightMargin:new _Unit(48,_UnitType.Dip),topMargin:new _Unit(48,_UnitType.Dip),bottomMargin:new _Unit(48,_UnitType.Dip),paginated:!0},status:{errorList:e.json.Error?[e.json.Error.Description]:[],expiredDateTime:i,pageCount:0,progress:0,status:_ExecutionStatus.loaded}}}).then(e=>{this.getReportProperty("ChangeRenderModeSupported").then(r=>{this._canChangeRenderMode=!!r;if(t&&t.length){var a=this._mergeParameters(t,this._parameters);this.setParameters(a).then(t=>{i.resolve(e)})}else i.resolve(e)})}).catch(e=>{i.reject(this._getError(e))});return i}loadDrillthroughReport(e){var t=new _Promise;this._ajax(this.serviceUrl+"/OpenDrillthroughReport",{method:"POST",data:{token:this._token,lifeTime:this._lifeTime/1e3,reportPath:e.ReportName}}).then(i=>{this.dispose(!1).then(()=>{this._hasDelayedContent=i.json.HasDelayedContent;this._autoRun=!!i.json.AutoRun;this._documentFormat=i.json.DocumentFormat;this._parameters=(i.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e));this._token=i.json.Token;this._isDisposed=!1;let r=new Date,a=new Date(r.getTime()+this._lifeTime);var s={expiredDateTime:a,loadedDateTime:r,features:{nonPaginated:!1,paginated:!0,pageSettings:!1,textSearchInPaginatedMode:!0},pageSettings:{height:new _Unit(1056,_UnitType.Dip),width:new _Unit(816,_UnitType.Dip),leftMargin:new _Unit(48,_UnitType.Dip),rightMargin:new _Unit(48,_UnitType.Dip),topMargin:new _Unit(48,_UnitType.Dip),bottomMargin:new _Unit(48,_UnitType.Dip),paginated:!0},status:{errorList:i.json.Error?[i.json.Error.Description]:[],expiredDateTime:a,pageCount:0,progress:0,status:_ExecutionStatus.loaded}};this.getReportProperty("ChangeRenderModeSupported").then(i=>{this._canChangeRenderMode=!!i;isArray(e.Parameters)&&e.Parameters.length?this.setParameters(e.Parameters).then(e=>{t.resolve(s)}):t.resolve(s)})})},e=>{t.reject(this._getError(e))});return t}processOnClick(e){var t=new _Promise;this._ajax(this.serviceUrl+"/ProcessOnClick",{method:"POST",data:{token:this._token,data:{Action:"toggle",Data:e}}}).then(e=>{t.resolve({status:_ExecutionStatus.rendering})},e=>{t.reject(this._getError(e))});return t}getReportProperty(e){return this._ajax(this.serviceUrl+"/GetReportProperty",{method:"POST",data:{token:this._token,propertyName:e}}).then(e=>e.json.Error?null:e.json.PropertyValue).catch(e=>null)}render(e){return this._ajax(this.serviceUrl+"/RunReport",{method:"POST",data:{token:this._token}}).then(e=>{this._isDisposed=!1;return{errorList:e.json.Error?[e.json.Error.Description]:[],status:_ExecutionStatus.rendering}})}setDrillthroughData(e){this._drillthroughData=e}dispose(e=!0){return this._token?this._ajax(this.serviceUrl+"/CloseReport",{method:"POST",async:e,data:{token:this._token}}).then(()=>{this._isDisposed=!0;this._token=null;this._hasOutlines=void 0;return{status:_ExecutionStatus.cleared}}):new _Promise}getOutlines(e=!1){return this._getBookmarks(-1,0,e?1:100,!e)}_getError(e){var t=e;return _ArReportService.IsError(t)?`ErrorCode: "${t.json.Error.ErrorCode}". Description: "${t.json.Error.Description}"`:e.responseText}_getBookmarks(e,t,i,r=!0){var a=new _Promise;this._ajax(this.serviceUrl+"/GetBookmarks",{method:"POST",data:{token:this._token,parentId:e,fromChild:t,count:i}}).then(s=>{var o=(s.json.Bookmarks||[]).map(e=>({caption:e.Name,children:e.ChildrenCount>0?()=>this._getBookmarks(e.ID,0,i):null,position:{pageBounds:{height:_Unit.convertValue(e.Size.Width||0,_UnitType.Inch,_UnitType.Twip),width:_Unit.convertValue(e.Size.Height||0,_UnitType.Inch,_UnitType.Twip),x:_Unit.convertValue(e.Location.X||0,_UnitType.Inch,_UnitType.Twip),y:_Unit.convertValue(e.Location.Y||0,_UnitType.Inch,_UnitType.Twip)},pageIndex:e.Page},target:""})),n=t+o.length;!r||n>=s.json.ChildrenCount||n>=1e5?a.resolve(o):this._getBookmarks(e,n,i).then(e=>{a.resolve(o.concat(e))})});return a}renderToFilter(e){var t=new _Promise;this.getRenderToFilterUrl(e).then(i=>{this._ajax(i+"&WebViewerControlClientId="+this._uid+(e.outputRange?"&Page="+e.outputRange:""),{method:"GET",parseResponse:!1}).then(e=>{t.resolve(e.xhr)},i=>{_ArReportService.IsError(i)&&i.json.Error.ErrorCode==_ArErrorCode.RuntimeIsBusy?setTimeout(()=>this.renderToFilter(e),this.getPingTimeout()):t.reject(i)})});return t}search(e){var t=new _Promise;this._ajax(this.serviceUrl+"/Search",{method:"POST",data:{token:this._token,options:{Text:e.text,MatchCase:e.matchCase,WholeWord:e.wholeWord},startFrom:{PageIndex:-1},numberOfResults:100}}).then(e=>{var i=e.json.SearchResults.map(e=>({nearText:e.DisplayText,positionInNearText:e.TextStart,pageIndex:e.PageIndex,boundsList:[{height:_Unit.convertValue(e.ItemArea.Height||0,_UnitType.Inch,_UnitType.Twip),width:_Unit.convertValue(e.ItemArea.Width||0,_UnitType.Inch,_UnitType.Twip),x:_Unit.convertValue(e.ItemArea.Left||0,_UnitType.Inch,_UnitType.Twip),y:_Unit.convertValue(e.ItemArea.Top||0,_UnitType.Inch,_UnitType.Twip)}]}));t.resolve(i)},e=>t.reject(e));return t}setParameters(e){var t=new _Promise;this._ajax(this.serviceUrl+"/SetParameters",{method:"POST",data:{token:this._token,parametersSetAtClient:(e||[]).map(e=>this._convertToServiceParameter(e))}}).then(e=>{t.resolve(this._parameters=(e.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e)))}).catch(e=>{_ArReportService.IsError(e)&&e.json.Error.ErrorCode==_ArErrorCode.ParametersNotSet?t.resolve(this._parameters=(e.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e))):t.reject(e)});return t}validateParameter(e){return this._ajax(this.serviceUrl+"/ValidateParameter",{method:"POST",data:{token:this._token,parametersSetAtClient:this._convertToServiceParameter(e)}}).then(e=>null)}getRenderToFilterUrl(e){var t=new _Promise;this._ajax(this.serviceUrl+"/GetRenderedReportLink",{method:"POST",data:{token:this._token}}).then(e=>{t.resolve(e.json.ReportLink.Uri)},i=>{_ArReportService.IsError(i)&&i.json.Error.ErrorCode==_ArErrorCode.RuntimeIsBusy?setTimeout(()=>this.getRenderToFilterUrl(e),this.getPingTimeout()):t.reject(i)});return t}getExportedUrl(e){var t=_ArReportService.ConvertFormat(e.format),i=(()=>{var i={FileName:this.getFileName()};t==_ArDocumentFormat.Pdf&&(i.EmbedFonts="All");if(t==_ArDocumentFormat.Image){"png"===e.format&&(i.ImageType="PNG");if(e.outputRange){i.StartPage=e.outputRange.toString();i.EndPage=e.outputRange.toString()}if(e.resolution){i.DpiX=e.resolution.toString();i.DpiY=e.resolution.toString()}}e.printing&&t==_ArDocumentFormat.Pdf&&(i.PrintOnOpen=!0);return i})(),r=new _Promise;this._ajax(this.serviceUrl+"/GetExportedReportLink",{method:"POST",data:{token:this._token,format:t,exportingParameters:i,pageRange:null}}).then(t=>{r.resolve(t.json.ReportLink.Uri+(isNumber(e.outputRange)?"&outputRange="+e.outputRange:"")+(e.printing?"":"&Attachment=1"))},t=>{_ArReportService.IsError(t)&&t.json.Error.ErrorCode==_ArErrorCode.RuntimeIsBusy?setTimeout(()=>this.getExportedUrl(e),this.getPingTimeout()):r.reject(t)});return r}getPingTimeout(){return 1e3}getSupportedExportDescriptions(){var e=new _Promise;e.resolve([{name:"TIFF image",format:"tiff"},{name:"Adobe PDF",format:"pdf"},{name:"Web archive (MHTML)",format:"mhtml"},{name:"Microsoft Word",format:"doc"},{name:"Open XML Excel",format:"xlsx"},{name:"XML document",format:"xml"}]);return e}getFeatures(){throw _DocumentSource._abstractMethodException}_ajax(e,t){let i=new _Promise;(t=t||{}).urlEncode=!1;this.httpRequest(e,t).then(e=>{let r={xhr:e};try{e.responseText&&!1!==t.parseResponse&&(r.json=JSON.parse(e.responseText).d);if(r.json&&r.json.Error)throw"";i.resolve(r)}catch(e){i.reject(r)}},e=>{i.reject(e)});return i}_convertFromServiceParameter(e){var cnvrt=(e,t)=>{null!=e&&_ArParameterType.DateTime;return e};e.Value=cnvrt(e.Value,e.ParameterType);e.AvailableValues=(e.AvailableValues||[]).map(t=>({Label:t.Label,Value:cnvrt(t.Value,e.ParameterType)}));return e}_convertToServiceParameter(e){var cnvrt=(e,t)=>{null!=e&&_ArParameterType.DateTime;return e};e.Value=cnvrt(e.Value,e.ParameterType);e.Values&&e.Values.forEach(t=>{t.Value=cnvrt(t.Value,e.ParameterType)});return e}_merge(e,t){if(e&&t){for(let i in e)t[i]=e[i];return t}}_mergeParameters(e,t){var i=[],r=t.map(t=>{var r=t.Name.toLowerCase();i.push(r);var a=e.filter(e=>r===e.Name.toLowerCase());return a.length?(()=>{t.Value=a[0].Value;return t})():t});r.push.apply(r,e.filter(e=>i.indexOf(e.Name.toLowerCase())<0));return r}_parseXml(e){return(new DOMParser).parseFromString(e,"text/xml")}}export class _ArReportSource extends _ReportSourceBase{constructor(e,t){super(e,t)}get autoRun(){return this._innerService.autoRun}get encodeRequestParams(){return!1}get hasParameters(){var e=this._innerService.parameters;return e&&e.length>0}get hasThumbnails(){return!1}get _innerService(){return this.service}getParameters(){var e=new _Promise,t=this._convertParameters(this._innerService.parameters);return e.resolve(t)}setParameters(e){var t=new _Promise,i=[],r={};this._innerService.parameters.forEach(e=>{r[e.Name]=e});Object.keys(e).forEach(t=>{var a;i.push(a={AllowEmpty:r[t].AllowEmpty,DateOnly:r[t].DateOnly,MultiLine:r[t].MultiLine,MultiValue:r[t].MultiValue,Name:t,Nullable:r[t].Nullable,ParameterType:r[t].ParameterType});a.MultiValue&&isArray(e[t])?a.Values=e[t].map(e=>({Value:e})):a.Value=e[t]});this._innerService.setParameters(i).then(e=>{this._convertParameters(e.filter(e=>e.State!==_ArParameterState.OK));t.resolve(this._convertParameters(e))});return t}print(e){this.getExportedUrl({format:"pdf",printing:!0},!0).then(e=>{if(e)try{var t=window.open(e,"_blank");t&&t.focus()}catch(t){window.location.assign(e+"&Attachment=1")}})}_createDocumentService(e){return new _ArReportService(e,this.httpHandler)}_getIsDisposed(){return super._getIsDisposed()||this._innerService.isDisposed}_updateExecutionInfo(e){super._updateExecutionInfo(e)}_checkIsLoadCompleted(e){return e.status===_ExecutionStatus.completed||e.status===_ExecutionStatus.stopped}_convertParameters(e){return e.map(e=>({allowedValues:e.AvailableValues&&e.AvailableValues.length?e.AvailableValues.map(e=>({key:e.Label,value:e.Value})):void 0,allowBlank:e.AllowEmpty,dataType:e.ParameterType===_ArParameterType.Boolean?_ParameterType.Boolean:e.ParameterType===_ArParameterType.DateTime?_ParameterType.DateTime:e.ParameterType===_ArParameterType.Float?_ParameterType.Float:e.ParameterType===_ArParameterType.Integer?_ParameterType.Integer:_ParameterType.String,error:e.ExtendedErrorInfo,hidden:!1,name:e.Name,nullable:!!e.Nullable,maxLength:0,multiValue:e.MultiValue,prompt:e.Prompt,value:e.MultiValue&&e.Values&&e.Values.length?e.Values.map(e=>e.Value):e.Value}))}}export class ReportViewer extends ViewerBase{constructor(e,t){super(e,t);this._initSidePanelParameters()}static get controlTemplate(){ReportViewer._ctrlTemplate||(ReportViewer._ctrlTemplate=ViewerBase.controlTemplate);return ReportViewer._ctrlTemplate}static set controlTemplate(e){ReportViewer._ctrlTemplate=e}_getProductInfo(){return"QNI5,ReportViewer"}get reportName(){return this._reportName}set reportName(e){if(e!=this._reportName){this._reportName=e;this._needBindDocumentSource();this.invalidate()}}get paginated(){return this._innerPaginated}set paginated(e){this._innerPaginated=e}get parameters(){return this._clientParameters}set parameters(e){if(e!=this._clientParameters){this._clientParameters=e;this._needBindDocumentSource();this.invalidate()}}static getReportNames(e,t,i){return _Report.getReportNames(e,t,i)}static getReports(e,t,i,r){return _Report.getReports(e,t,i,r)}onQueryLoadingData(e){this.parameters&&Object.keys(this.parameters).forEach(t=>e.data["parameters."+t]=this.parameters[t]);super.onQueryLoadingData(e)}_globalize(){super._globalize();var e=culture.Viewer;this._gParameterTitle&&(this._gParameterTitle.textContent=e.parameters)}_executeAction(e){super._executeAction(e);if(!this._actionIsDisabled(e))switch(e){case ReportViewer._parameterCommandTag:Control.getControl(this._sidePanel).active(this._parametersPageId)}}_executeCustomAction(e){if(this._isArReport()&&e.arKind===_ArActionKind.Drillthrough){var t=JSON.parse(e.data),i=this._getDocumentSource();i._innerService.setDrillthroughData(t);i._updateIsLoadCompleted(!1);this._loadDocument(i,!0,!1)}else super._executeCustomAction(e)}_actionIsDisabled(e){switch(e){case ReportViewer._parameterCommandTag:return!this._innerDocumentSource||!this._innerDocumentSource.hasParameters}return super._actionIsDisabled(e)}_initHamburgerMenu(e){this._hamburgerMenu=new _ReportHamburgerMenu(this,e)}_initSidePanelParameters(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.parameters,parametersIcon,2);this._parametersPageId=t.id;this._gParameterTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);t.format(t=>{this._paramsEditor=new _ParametersEditor(t.content);this._paramsEditor.commit.addHandler(()=>{if(this._innerDocumentSource&&this._innerDocumentSource.hasParameters){this._showViewPanelMessage();this._innerDocumentSource.setParameters(this._paramsEditor.parameters).then(e=>{var t=e||[],i=t.some(e=>!!e.error);this._paramsEditor._reset();if(i)this._paramsEditor.itemsSource=t;else{this._resetDocument();this._paramsEditor.isDisabled=!0;this._renderDocumentSource()}}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))});this._isMobileTemplate()&&e.collapse()}});this._paramsEditor.validate.addHandler(()=>{if(this._innerDocumentSource&&this._innerDocumentSource.hasParameters){this._paramsEditor.isDisabled=!0;this._innerDocumentSource.setParameters(this._paramsEditor.parameters).then(e=>{this._paramsEditor.itemsSource=e;this._paramsEditor.isDisabled=!1;this._paramsEditor.savingParam=!1},e=>{this._paramsEditor.isDisabled=!1;this._paramsEditor.savingParam=!1})}});var updateParametersPanel=()=>{var i=this._innerDocumentSource;i.status===_ExecutionStatus.cleared||i.status===_ExecutionStatus.notFound?_removeChildren(t.content):i.status===_ExecutionStatus.rendering?this._paramsEditor.isDisabled=!0:i.status===_ExecutionStatus.completed&&(this._paramsEditor.isDisabled=!1);const r=i.status===_ExecutionStatus.loaded;(i.status===_ExecutionStatus.completed||r)&&(i.hasParameters?i.getParameters().then(a=>{if(a.filter(e=>!e.hidden).length){e.show(t);e.active(t)}else e.hide(t);if(this._innerDocumentSource==i&&!i.isDisposed){this._paramsEditor.itemsSource=a;if(a.filter(e=>null==e.value&&!e.nullable&&!e.hidden).length){this._showViewPanelMessage(culture.Viewer.requiringParameters);this._updateUI();Control.getControl(this._sidePanel).enable(this._parametersPageId)}else if(r){this._paramsEditor.isDisabled=!0;this._renderDocumentSource()}}}):e.hide(t))},update=()=>{if(this._innerDocumentSource){_addWjHandler(this._documentEventKey,this._innerDocumentSource.statusChanged,updateParametersPanel);updateParametersPanel()}};this._documentSourceChanged.addHandler(update);update()})}get _innerDocumentSource(){return this._getDocumentSource()}_loadDocument(e,t=!1,i=!0){var r=this._innerDocumentSource!==e&&!t,a=super._loadDocument(e,t,i);e&&r&&_addWjHandler(this._documentEventKey,e.statusChanged,this._onDocumentStatusChanged,this);return a}_reRenderDocument(){this._renderDocumentSource()}_onDocumentStatusChanged(){this._innerDocumentSource&&this._innerDocumentSource.status===_ExecutionStatus.loaded&&!this._innerDocumentSource.hasParameters&&this._innerDocumentSource.autoRun&&this._renderDocumentSource()}_renderDocumentSource(){if(this._innerDocumentSource){this._setDocumentRendering();var e=this._innerDocumentSource;e.render().then(t=>this._getStatusUtilCompleted(e))}}_disposeDocument(e=!0){this._innerDocumentSource&&_removeAllWjHandlers(this._documentEventKey,this._innerDocumentSource.statusChanged);super._disposeDocument(e)}_setDocumentRendering(){this._innerDocumentSource.status=_ExecutionStatus.rendering;super._setDocumentRendering()}_getSource(){return this.filePath?this._isArReport()?new _ArReportSource({serviceUrl:this.serviceUrl,filePath:this.filePath},this):new _Report({serviceUrl:this.serviceUrl,filePath:this.filePath,reportName:this.reportName,paginated:this.paginated},this):null}_supportsPageSettingActions(){return!0}refresh(e=!0){super.refresh(e);e&&this._paramsEditor&&this._paramsEditor.refresh()}_isArReport(){return!!this.filePath&&_strEndsWith(this.filePath,".rdlx",!0)}_createPage(e,t){return this._isArReport()?new _ArPage(this._getDocumentSource(),e,t):super._createPage(e,t)}_actionElementClicked(e){if(this._isArReport()){var t=this._getActionInfo(e);t&&t.arKind===_ArActionKind.Hyperlink?window.open(t.data,"_blank"):super._actionElementClicked(e)}else super._actionElementClicked(e)}_getActionInfo(e){if(!this._isArReport())return super._getActionInfo(e);var t=e.attributes["arsvg:data-action-type"].value,i=e.attributes["arsvg:data-action-data"].value.replace(/"/g,'"'),r=e.attributes["arsvg:data-action-page"].value;if(t)switch(t){case _ArActionKind.Bookmark:return{kind:_ActionKind.Bookmark,data:i?`${r}|${i}`:r,arKind:t};default:return{kind:_ActionKind.Custom,data:i,arKind:t}}return null}dispose(){this._innerDocumentSource&&_removeAllWjHandlers(this._documentEventKey,this._innerDocumentSource.statusChanged);this._documentSourceChanged.removeHandler(this._initSidePanelParameters);if(this._paramsEditor&&this._paramsEditor.dispose){this._paramsEditor.dispose();this._paramsEditor=null}this._gParameterTitle=null;super.dispose()}}ReportViewer._parameterCommandTag=99;ReportViewer._ctrlTemplate="";_registerModule("wijmo.viewer",selfModule);
|
|
14
|
+
import{isObject,isString,_addCultureInfo,EventArgs,isFunction,isMobile,Event,PrintDocument,saveFile,isArray,isNumber,culture,isIE,Control,Point,ControlClsNames,httpRequest,setInnerHTMLSafe,addClass,removeClass,ControlStateClsNames,hasClass,InputFormElementsClsNames,UtilitesClsNames,Rect,changeType,DataType,assert,getElement,getElementRect,Key,enable,GlyphClsNames,showPopup,_deprecated,asBoolean,asEnum,Globalize,isBoolean,isDate,isInt,_registerModule}from"@mescius/wijmo";import{ComboBox,InputNumber,Popup,PopupTrigger,Menu,ListBox,MultiSelect,InputDate,InputDateTime,InputTime}from"@mescius/wijmo.input";import{FlexGrid,AllowResizing,HeadersVisibility,SelectedState}from"@mescius/wijmo.grid";import*as selfModule from"@mescius/wijmo.viewer";export class _MultiSelectEx{constructor(e){this._selectedAll=!1;this._innerCheckedItemsChanged=!1;this.checkedItemsChanged=new Event;var t=new MultiSelect(e,{keyActionPrintCharacters:0,keyActionTab:0});this._multiSelect=t;t.checkedItemsChanged.addHandler(this.onCheckedItemsChanged,this);t.isDroppedDownChanged.addHandler(this.onIsDroppedDownChanged,this);t.headerFormatter=()=>this._updateHeader();this._lostFocus=this._multiSelect.lostFocus}_updateHeader(){var e=this.checkedItems||[],t=[],i=this.displayMemberPath;if(!e.length)return culture.Viewer.parameterNoneItemsSelected;if(this._selectedAll)return culture.Viewer.parameterAllItemsSelected;if(i){for(let r=0;r<e.length;r++)t[r]=e[r][i];return t.join(", ")}return e.join(", ")}onIsDroppedDownChanged(){this._multiSelect.isDroppedDown&&this._updateSelectedAll()}onCheckedItemsChanged(e,t){if(!this._innerCheckedItemsChanged)if(this._selectAllItem){this._updateSelectedAll();this.checkedItemsChanged.raise(this,t)}else this.checkedItemsChanged.raise(this,t)}get isEditable(){return this._multiSelect.isEditable}set isEditable(e){this._multiSelect.isEditable=e}get isDisabled(){return this._multiSelect.isDisabled}set isDisabled(e){this._multiSelect.isDisabled=e}get displayMemberPath(){return this._multiSelect.displayMemberPath}set displayMemberPath(e){this._multiSelect.displayMemberPath=e}get selectedValuePath(){return this._multiSelect.selectedValuePath}set selectedValuePath(e){this._multiSelect.selectedValuePath=e}get itemsSource(){return this._itemsSource}set itemsSource(e){var t=this.displayMemberPath||"name";this._itemsSource=e;var i=[];if(e){if(e.length>1){this._selectAllItem={};this._selectAllItem[t]=culture.Viewer.parameterSelectAllItemText;i.push(this._selectAllItem)}else this._selectAllItem=null;i=i.concat(e)}this._multiSelect.itemsSource=i}get checkedItems(){var e=[];this._multiSelect.checkedItems&&(e=this._multiSelect.checkedItems.slice());var t=e.indexOf(this._selectAllItem);t>-1&&e.splice(t,1);return e}set checkedItems(e){this._multiSelect.checkedItems=e;this._selectedAll=!1;this._updateSelectedAll()}get lostFocus(){return this._lostFocus}_updateSelectedAll(){if(this._selectAllItem){var e=this._multiSelect.checkedItems||[],t=e.indexOf(this._selectAllItem),i=t>-1;if(this._selectedAll!==i){this._selectedAll=i;this._innerCheckedItemsChanged=!0;this._selectedAll?this._multiSelect.checkedItems=this._multiSelect.itemsSource.slice():this._multiSelect.checkedItems=[];this._innerCheckedItemsChanged=!1}else{this._selectedAll=e&&this._itemsSource&&e.length-(i?1:0)===this._itemsSource.length;if(this._selectedAll!==i){this._innerCheckedItemsChanged=!0;if(this._selectedAll)this._multiSelect.checkedItems=e.concat(this._selectAllItem);else{(e=e.slice()).splice(t,1);this._multiSelect.checkedItems=e}this._innerCheckedItemsChanged=!1}}}}}export var parametersIcon='<path d="M24,11.9v-2h-4V7h0V5h0h-1h-5V2h0V0h0h-1H1H0h0v2h0v11h0v1h0h1h5v4h0v1h0h1h3v4h0v1h0h1h2.1v-1H11V12h2.1v-2H11h-1h0v2h0v6H7V7h12v2.9h-1v2h5V23h-4.9v1H23h1h0v-1h0L24,11.9L24,11.9z M6,5L6,5l0,2h0v6H1V2h12v3H7H6z"/><path d="M20,20v-3v-1h-1h-1v-1v-1h-1h-3h-1v1v3v1h1h1v2h0h1h3h1h0L20,20L20,20z M14,18v-3h3v1h-1h-1v1v1H14z M17,17v1h-1v-1H17z M16,20v-1h1h1v-1v-1h1v3H16z"/>';export var icons={paginated:'<rect x="16" y= "1" width="1" height="1" /><rect x="17" y= "2" width="1" height="1" /><rect x="18" y= "3" width="1" height="1" /><path d= "M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M5,22.1V2h8v5h1h1h3v15.1H5z" /><rect x="6" y= "8" width="10" height="1" /><rect x="6" y= "5" width="5" height="1" /><rect x="6" y= "11" width="10" height="1" /><rect x="6" y= "14" width="10" height="1" /><rect x="6" y= "17" width="10" height="1" /><rect x="6" y= "20" width="10" height="1" />',print:'<rect x="5" y= "1" width="14" height="4" /><polygon points= "22,8 22,7 19,7 19,6 5,6 5,7 2,7 2,8 1,8 1,11 1,20 2,20 2,21 5,21 5,11 19,11 19,21 22,21 22,20 23,20 23, 11 23, 8 "/><path d="M6,12v11h12V12H6z M16,21H8v-1h8V21z M16,18H8v-1h8V18z M16,15H8v-1h8V15z" />',exports:'<path d="M19.6,23"/><polyline points="5,19 5,2 13,2 13,7 14.3,7 15,7 18,7 18,9 20,9 20,7 20,6.4 20,5 20,4 19,4 19,5 15,5 15,2 15,1 16,1 16,0 15,0 5,0 3,0 3,2 3,19 3,21 5,21 "/><rect x="18" y="3" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="16" y="1" width="1" height="1"/><polygon points="17,16.6 20,14.1 17,11.6 17,13.6 13,13.6 13,14.6 17,14.6 "/><rect x="3" y="20.9" width="2" height="3.1"/><rect x="4.5" y="22" width="15.6" height="2"/><rect x="18" y="8.4" width="2" height="1.6"/><rect x="18" y="18" width="2.1" height="6"/>',portrait:'<path d="M19,0L19,0L5,0v0H3v24h0.1H5h14h1.7H21V0H19z M12.5,23h-1v-1h1V23z M19,21H5V2h14V21z"/>',landscape:'<path d="M24,19L24,19l0-14h0V3H0v0.1V5v14v1.7V21h24V19z M1,12.5v-1h1v1H1z M3,19V5h19v14H3z"/>',pageSetup:'<rect x="18" y="1" width="1" height="1"/><rect x="19" y="2" width="1" height="1"/><rect x="20" y="3" width="1" height="1"/><polygon points="22,5 22,4 21,4 21,5 20.4,5 20,5 17,5 17,2 17,1.3 17,1 18,1 18,0 17,0 17,0 7,0 6,0 5,0 5,5 7,5 7,2 15,2 15,7 16,7 17,7 20,7 20,22.1 7,22.1 7,19 5,19 5,24 5.9,24 7,24 20,24 21.1,24 22,24 22,5 "/><rect x="5" y="7" width="2" height="2"/><rect x="5" y="11" width="2" height="2"/><rect x="5" y="15" width="2" height="2"/><rect x="9" y="11" width="2" height="2"/><rect x="1" y="11" width="2" height="2"/><polygon points="9,8 9,8 8,8 8,9 9,9 9,10 10,10 10,8 "/><polygon points="2,9 2,9 2,10 3,10 3,9 4,9 4,8 2,8 "/><polygon points="3,16 3,16 4,16 4,15 3,15 3,14 2,14 2,16 "/><polygon points="10,15 10,15 10,14 9,14 9,15 8,15 8,16 10,16 "/>',previousPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="5.6,10.7 12,4.4 18.4,10.7 18.4,15 13.5,10.1 13.5,19.6 10.4,19.6 10.4,10.1 5.6,15 " />',nextPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="18.4,13.3 12,19.6 5.6,13.3 5.6,9 10.5,13.9 10.5,4.4 13.6,4.4 13.6,13.9 18.4,9 " />',firstPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="6.5,13.1 12,7.8 17.5,13.1 17.5,17.5 13.5,13.5 13.5,19.6 10.4,19.6 10.4,13.5 6.5,17.5 " /><rect x="6.5" y= "4.4" width="10.9" height="2.2" />',lastPage:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="17.5,10.9 12,16.2 6.5,10.9 6.5,6.5 10.5,10.5 10.5,4.4 13.6,4.4 13.6,10.5 17.5,6.5 " /><rect x="6.5" y= "17.5" transform="matrix(-1 -8.987357e-011 8.987357e-011 -1 24 37.0909)" width="10.9" height="2.2" />',backwardHistory:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="10.7,18.4 4.4,12 10.7,5.6 15,5.6 10.1,10.5 19.6,10.5 19.6,13.6 10.1,13.6 15,18.4 " />',forwardHistory:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon points="13.3,5.6 19.6,12 13.3,18.4 9,18.4 13.9,13.5 4.4,13.5 4.4,10.4 13.9,10.4 9,5.6 " />',selectTool:'<polygon points="19.9,13.4 5.6,1.1 5.3,19.9 10.5,14.7 14.3,23.3 16.4,22.4 12.6,13.8 "/>',moveTool:'<polygon points="12.5,3 14.5,3 12,0 9.5,3 11.5,3 11.5,21 11.5,21 9.6,21 12,24 14.5,21 12.5,21 "/><polygon points="21,12.5 21,14.5 24,12 21,9.5 21,11.5 3,11.5 3,11.5 3,9.6 0,12 3,14.5 3,12.5 "/>',continuousView:'<polygon points="22,0 22,5 9,5 9,0 7,0 7,5 7,7 7,7 24,7 24,7 24,5 24,0 "/><polygon points="23,15 19,15 19,11 20,11 20,10 19,10 18,10 17,10 9,10 7.4,10 7,10 7,24 9,24 9,12 17,12 17,15 17,16.6 17,17 22,17 22,24 24,24 24,17 24,15.1 24,15 24,15 24,14 23,14 "/><rect x="22" y="13" width="1" height="1"/><polygon points="20.9,12 20.9,13 22,13 22,12 21,12 21,11 20,11 20,12 "/><polygon points="4.9,5.2 2.5,2.2 0,5.2 2,5.2 2,9.2 3,9.2 3,5.2 "/><polygon points="2.9,19.2 2.9,15.2 1.9,15.2 1.9,19.2 0,19.2 2.5,22.1 4.9,19.2 "/>',singleView:'<rect x="16" y="1" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="18" y="3" width="1" height="1"/><path d="M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M5,22.1V2h8v5h1h1h3v15.1H5z"/>',fitWholePage:'<rect x="16" y="1" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="18" y="3" width="1" height="1"/><path d="M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M18,22.1H5V2h8v5h1h1h3V22.1z"/><polygon points="17,13.5 15,11 15,13 13,13 13,14 15,14 15,16 "/><polygon points="6,13.5 8,16 8,14 10,14 10,13 8,13 8,11 "/><polygon points="11.5,7 9,9 11,9 11,11 12,11 12,9 14,9 "/><polygon points="11.5,20 14,18 12,18 12,16 11,16 11,18 9,18 "/>',fitPageWidth:'<rect x="16" y="1" width="1" height="1"/><rect x="17" y="2" width="1" height="1"/><rect x="18" y="3" width="1" height="1"/><path d="M20,5V4h-1v1h-0.6H18h-3V2V1.3V1h1V0h-1h0H5H4H3v24h2v0h13h1.1H20L20,5L20,5z M5,22.1V2h8v5h1h1h3v15.1H5z"/><polygon points="14,15.5 17,13 14,10.6 14,12.6 13,12.6 13,13.6 14,13.6 "/><polyline points="6,13.1 9,15.6 9,13.6 10,13.6 10,12.6 9,12.6 9,10.6 6,13.1 "/>',zoomOut:'<circle opacity=".25" cx="12" cy="12" r="12"/><rect opacity=".75" x="5" y="10" width="14" height="3"/>',zoomIn:'<circle opacity=".25" cx="12" cy="12" r="12"/><polygon opacity=".75" points="19,10 13.5,10 13.5,4.5 10.5,4.5 10.5,10 5,10 5,13 10.5,13 10.5,18.5 13.5,18.5 13.5,13 19,13 " />',fullScreen:'<path d="M22,0H0v2.8V4v20h1.5H2h20h0.7H24V4V0H22z M7,1h1v1H7V1z M5,1h1v1H5V1z M3,1h1v1H3V1z M22,22H2L2,4h20L22,22z" /><polygon points="19.6,9.9 20,6 16.1,6.4 17.6,7.8 14.7,10.6 15.4,11.3 18.3,8.5"/><polygon points="4.4,16.2 4,20 7.9,19.7 6.5,18.3 9.3,15.5 8.6,14.8 5.8,17.6"/>',exitFullScreen:'<path d="M22,0H0v2.8V4v20h1.5H2h20h0.7H24V4V0H22z M7,1h1v1H7V1z M5,1h1v1H5V1z M3,1h1v1H3V1z M22,22H2L2,4h20L22,22z" /><polygon points="9.2,18.6 9.6,14.7 5.7,15.1 7.2,16.5 4.3,19.3 5,20 7.9,17.2"/><polygon points="14.8,7.5 14.4,11.3 18.3,11 16.9,9.6 19.7,6.8 19,6.1 16.2,8.9"/>',thumbnails:'<path d="M20,2h-5h-2v2v5v2v0h2v0h5v0h2v0V9V4V2H20z M20,9h-5V4h5V9z"/><path d="M20,13h-5h-2v2v5v2v0h2v0h5v0h2v0v-2v-5v-2H20z M20,20h-5v-5h5V20z"/><path d="M9,13H4H2v2v5v2v0h2v0h5v0h2v0v-2v-5v-2H9z M9,20H4v-5h5V20z"/><rect x="2" y="2" width="9" height="9"/>',outlines:'<path d="M22,0H2H0v2v20v2h2h20h2v-2V2V0H22z M2,2h12v20H2V2z M22,22h-6V2h6V22z"/><rect x="17.5" y="5" width="3" height="1" /><rect x="17.5" y="8" width="3" height="1"/><rect x="17.5" y="11" width="3" height="1"/>',search:'<circle stroke-width="2" fill="none" cx="9.5" cy="9.5" r="8.5"/><rect x="16.9" y="13.7" transform="matrix(-0.7193 0.6947 -0.6947 -0.7193 44.3315 18.4942)" width="3" height="9"/>',searchNext:'<polygon points="12,12.6 4,4.5 4,11.4 12,19.5 20,11.4 20,4.5 "/>',searchPrevious:'<polygon points="12,11.4 20,19.5 20,12.6 12,4.5 4,12.6 4,19.5 "/>',hamburgerMenu:'<rect x="2" y="4.875" width="20" height="1.5"/><rect x="2" y="11.25" width="20" height="1.5"/><rect x="2" y="17.625" width="20" height="1.5"/>',viewMenu:'<path transform="scale(1.5)" d="M8,2.9c-4.4,0-8,2.2-8,5s3.6,5,8,5s8-2.2,8-5S12.4,2.9,8,2.9z M8,11.8c-2.2,0-4-1.8-4-4c0-2.2,1.8-4,4-4s4, 1.8,4,4C12, 10,10.2,11.8,8,11.8z"/><circle class="st0" cx="12" cy="11.85" r="3.45"/>',searchOptions:'<polygon points="12,12.6 4,4.5 4,11.4 12,19.5 20,11.4 20,4.5 "/>',searchLeft:'<polygon points="11.4,12 19.5,20 12.6,20 4.5,12 12.6,4 19.5,4 "/>',searchRight:'<polygon points="12.6,12 4.5,4 11.4,4 19.5,12 11.4,20 4.5,20 "/>',showZoomBar:'<path d="M22.8,20.7l-4.4-4.4c1.1-1.6,1.8-3.5,1.8-5.6c0-5.2-4.3-9.5-9.5-9.5s-9.5,4.3-9.5,9.5s4.3,9.5,9.5,9.5 c2.1,0,4-0.7,5.6-1.8l4.4,4.4L22.8,20.7z M4.2,10.7c0-3.6,2.9-6.5,6.5-6.5s6.5,2.9,6.5,6.5s-2.9,6.5-6.5,6.5S4.2,14.3,4.2,10.7z"/><polygon points="7.2,9.2 7.2,7.2 9.2,7.2 9.2,6.2 6.2,6.2 6.2,9.2 "/><polygon points="12.2,7.2 14.2,7.2 14.2,9.2 15.2,9.2 15.2,6.2 12.2,6.2 "/><polygon points="9.2,14.2 7.2,14.2 7.2,12.2 6.2,12.2 6.2,15.2 9.2,15.2 "/><polygon points="14.2,12.2 14.2,14.2 12.2,14.2 12.2,15.2 15.2,15.2 15.2,12.2"/>',rubberbandTool:'\n <g>\n <polygon points="11.5,2 4,2 2,2 2,4 2,11.5 4,11.5 4,4 11.5,4 \t"/>\n <path d="M16,10V8h-2h-4H8v2v4v2h2h4h2v-2V10z M14,14h-4v-4h4V14z"/>\n <polygon points="20,12 20,19 19,19 19,20 12,20 12,22 20,22 22,22 22,20 22,12"/>\n <rect x="16" y="16" class="st0" width="1" height="1"/>\n <rect x="17" y="17" class="st0" width="1" height="1"/>\n <rect x="18" y="18" class="st0" width="1" height="1"/>\n </g>',magnifierTool:'\n <circle fill="none" stroke-width="2" stroke-miterlimit="10" cx="9.5" cy="9.5" r="7.5"/>\n <rect x="17" y="13.7" transform="matrix(0.7193 -0.6947 0.6947 0.7193 -7.4537 17.9238)" class="st1" width="3" height="9"/>\n <polygon points="14,8.5 10.5,8.5 10.5,5 8.5,5 8.5,8.5 5,8.5 5,10.5 8.5,10.5 8.5,14 10.5,14 10.5,10.5 14,10.5"/>\n ',rotateDocument:'\n <g>\n <path d="M18,0H5H3v4v18v2h2h13h2v-2V4V0H18z M18,22H5V4h13V22z"/>\n <polygon points="9,12 13,12 13,14 15,11.5 13,9 13,11 9,11 8,11 8,12 8,17 9,17"/>\n </g>',rotatePage:'\n <g>\n <rect x="16" y="1" width="1" height="1"/>\n <rect x="17" y="2" width="1" height="1"/>\n <rect x="18" y="3" width="1" height="1"/>\n <path class="st0" d="M19,4v1h-0.6H18h-3V2V1.3V1h1V0h-1H5H4H3v24h2h13h1.1H20V5V4H19z M18,22.1H5V2h8v5h1h1h3V22.1z"/>\n <polygon points="13,11 9,11 8,11 8,12 8,17 9,17 9,12 13,12 13,14 15,11.5 13,9"/>\n </g>'};export class PageLoadedEventArgs extends EventArgs{constructor(e,t){super();this._pageIndex=e;this._pageElement=t}get pageIndex(){return this._pageIndex}set pageIndex(e){this._pageIndex=e}get pageElement(){return this._pageElement}set pageElement(e){this._pageElement=e}}export class _ActionQueue{constructor(){this._actions=[];this._isStarted=!1}_any(){return this._actions.length>0}queue(e){var t=this._any();this._actions.push(()=>{e();this._continue()});this.isStarted&&!t&&this._continue()}_continue(){var e=this._actions.shift();e&&e()}start(){if(!this._isStarted){this._isStarted=!0;this._continue()}}get isStarted(){return this._isStarted}}if("undefined"!=typeof window){window.TouchEvent=window.TouchEvent||(()=>{});window.PointerEvent=window.PointerEvent||(()=>{});window.Touch=window.Touch||(()=>{})}const _eventSeparator=",",_touchEventsMap={startName:"touchstart",moveName:"touchmove",endName:["touchend","touchcancel","touchleave"].join(",")},_pointerEventsMap={startName:["pointerdown","pointerenter"].join(","),moveName:"pointermove",endName:["pointerup","pointercancel","pointerleave"].join(",")};export function _getTouchEventMap(){return"ontouchstart"in window?_touchEventsMap:_pointerEventsMap}export var _TouchDirection;!function(e){e[e.None=0]="None";e[e.Left=1]="Left";e[e.Up=2]="Up";e[e.Right=3]="Right";e[e.Down=4]="Down"}(_TouchDirection||(_TouchDirection={}));export class _TouchInfo{static getCenter(e,t){return new Point(e.x+(t.x-e.x)/2,e.y+(t.y-e.y)/2)}static getCenterClient(e,t){return _TouchInfo.getCenter(new Point(e.clientX,e.clientY),new Point(t.clientX,t.clientY))}static getCenterScreen(e,t){return _TouchInfo.getCenter(new Point(e.screenX,e.screenY),new Point(t.screenX,t.screenY))}static getDistance(e,t){var i=Math.abs(e.clientX-t.clientX),r=Math.abs(e.clientY-t.clientY);return Math.sqrt(i*i+r*r)}static _getDirection(e,t){var i=t.clientX-e.clientX,r=t.clientY-e.clientY;return Math.abs(i)>=Math.abs(r)?i>0?_TouchDirection.Right:i<0?_TouchDirection.Left:_TouchDirection.None:r>0?_TouchDirection.Down:r<0?_TouchDirection.Up:_TouchDirection.None}constructor(e){this._systemTouchInfo=e;e instanceof Touch?this._id=e.identifier:this._id=e.pointerId;this._target=e.target;this._screenX=e.screenX;this._screenY=e.screenY;this._clientX=e.clientX;this._clientY=e.clientY}get id(){return this._id}get systemTouchInfo(){return this._systemTouchInfo}get screenX(){return this._screenX}get screenY(){return this._screenY}get clientX(){return this._clientX}get clientY(){return this._clientY}}export class _SpeedReducer{constructor(){this._timeInterval=50;this._speedInterval=5}get timeInterval(){return this._timeInterval}set timeInterval(e){this._timeInterval=e}get speedInterval(){return this._speedInterval}set speedInterval(e){this._speedInterval=e}stop(){if(null!=this._timer){clearInterval(this._timer);this._timer=null}}start(e,t,i){this.stop();if(i){var r=e>=0?1:-1,s=t>=0?1:-1,a=Math.abs(e*this._timeInterval),o=Math.abs(t*this._timeInterval),n=Math.max(a,o),h=Math.floor(n/this.speedInterval),l=Math.floor(a/h),c=Math.floor(o/h);this._timer=setInterval(()=>{a-=l;o-=c;a=Math.max(0,a);o=Math.max(0,o);a&&o?i(a*r,o*s):this.stop()},this._timeInterval)}}}export class _Scroller extends Control{static getScrollbarWidth(e){var t,i;if(!_Scroller._scrollbarWidth||e){(t=document.createElement("div")).style.width="50px";t.style.height="50px";t.style.overflow="auto";document.body.appendChild(t);(i=document.createElement("div")).style.height="60px";t.appendChild(i);_Scroller._scrollbarWidth=t.offsetWidth-t.clientWidth;document.body.removeChild(t)}return _Scroller._scrollbarWidth}}_Scroller._scrollbarWidth=null;export function _enumToArray(e){var t=[];for(var i in e)i&&i.length&&"_"!=i[0]&&!isNaN(parseInt(i))&&t.push({text:e[i],value:i});return t}export class _RubberbandOnAppliedEventArgs extends EventArgs{constructor(e){super();this._rect=e}get rect(){return this._rect}}export class _LinkClickedEventArgs extends EventArgs{constructor(e){super();this._a=e}get element(){return this._a}}export var _ParameterType;!function(e){e[e.Boolean=0]="Boolean";e[e.DateTime=1]="DateTime";e[e.Time=2]="Time";e[e.Date=3]="Date";e[e.Integer=4]="Integer";e[e.Float=5]="Float";e[e.String=6]="String"}(_ParameterType||(_ParameterType={}));export var CatalogItemType;!function(e){e[e.Folder=0]="Folder";e[e.File=1]="File";e[e.Report=2]="Report"}(CatalogItemType||(CatalogItemType={}));export class QueryLoadingDataEventArgs extends EventArgs{constructor(e){super();this._data=e||{}}get data(){return this._data}}export class _ExecutionStatus{}_ExecutionStatus.loaded="Loaded";_ExecutionStatus.rendering="Rendering";_ExecutionStatus.completed="Completed";_ExecutionStatus.stopped="Stopped";_ExecutionStatus.cleared="Cleared";_ExecutionStatus.notFound="NotFound";export var _ActionKind;!function(e){e[e.Bookmark=0]="Bookmark";e[e.Custom=1]="Custom"}(_ActionKind||(_ActionKind={}));export var MouseMode;!function(e){e[e.SelectTool=0]="SelectTool";e[e.MoveTool=1]="MoveTool";e[e.RubberbandTool=2]="RubberbandTool";e[e.MagnifierTool=3]="MagnifierTool"}(MouseMode||(MouseMode={}));export var ViewMode;!function(e){e[e.Single=0]="Single";e[e.Continuous=1]="Continuous"}(ViewMode||(ViewMode={}));export var ZoomMode;!function(e){e[e.Custom=0]="Custom";e[e.PageWidth=1]="PageWidth";e[e.WholePage=2]="WholePage"}(ZoomMode||(ZoomMode={}));export var _ViewerActionType;!function(e){e[e.TogglePaginated=0]="TogglePaginated";e[e.Print=1]="Print";e[e.Portrait=2]="Portrait";e[e.Landscape=3]="Landscape";e[e.ShowPageSetupDialog=4]="ShowPageSetupDialog";e[e.FirstPage=5]="FirstPage";e[e.PrePage=6]="PrePage";e[e.NextPage=7]="NextPage";e[e.LastPage=8]="LastPage";e[e.PageNumber=9]="PageNumber";e[e.PageCountLabel=10]="PageCountLabel";e[e.Backward=11]="Backward";e[e.Forward=12]="Forward";e[e.SelectTool=13]="SelectTool";e[e.MoveTool=14]="MoveTool";e[e.Continuous=15]="Continuous";e[e.Single=16]="Single";e[e.ZoomOut=17]="ZoomOut";e[e.ZoomIn=18]="ZoomIn";e[e.ZoomValue=19]="ZoomValue";e[e.FitWholePage=20]="FitWholePage";e[e.FitPageWidth=21]="FitPageWidth";e[e.ToggleFullScreen=22]="ToggleFullScreen";e[e.ShowHamburgerMenu=23]="ShowHamburgerMenu";e[e.ShowViewMenu=24]="ShowViewMenu";e[e.ShowSearchBar=25]="ShowSearchBar";e[e.ShowThumbnails=26]="ShowThumbnails";e[e.ShowOutlines=27]="ShowOutlines";e[e.ShowExportsPanel=28]="ShowExportsPanel";e[e.ShowPageSetupPanel=29]="ShowPageSetupPanel";e[e.ShowZoomBar=30]="ShowZoomBar";e[e.ShowSearchOptions=31]="ShowSearchOptions";e[e.SearchPrev=32]="SearchPrev";e[e.SearchNext=33]="SearchNext";e[e.SearchMatchCase=34]="SearchMatchCase";e[e.SearchMatchWholeWord=35]="SearchMatchWholeWord";e[e.RubberbandTool=36]="RubberbandTool";e[e.MagnifierTool=37]="MagnifierTool";e[e.RotateDocument=38]="RotateDocument";e[e.RotatePage=39]="RotatePage"}(_ViewerActionType||(_ViewerActionType={}));export var _PaperKind;!function(e){e[e.Custom=0]="Custom";e[e.Letter=1]="Letter";e[e.LetterSmall=2]="LetterSmall";e[e.Tabloid=3]="Tabloid";e[e.Ledger=4]="Ledger";e[e.Legal=5]="Legal";e[e.Statement=6]="Statement";e[e.Executive=7]="Executive";e[e.A3=8]="A3";e[e.A4=9]="A4";e[e.A4Small=10]="A4Small";e[e.A5=11]="A5";e[e.B4=12]="B4";e[e.B5=13]="B5";e[e.Folio=14]="Folio";e[e.Quarto=15]="Quarto";e[e.Standard10x14=16]="Standard10x14";e[e.Standard11x17=17]="Standard11x17";e[e.Note=18]="Note";e[e.Number9Envelope=19]="Number9Envelope";e[e.Number10Envelope=20]="Number10Envelope";e[e.Number11Envelope=21]="Number11Envelope";e[e.Number12Envelope=22]="Number12Envelope";e[e.Number14Envelope=23]="Number14Envelope";e[e.CSheet=24]="CSheet";e[e.DSheet=25]="DSheet";e[e.ESheet=26]="ESheet";e[e.DLEnvelope=27]="DLEnvelope";e[e.C5Envelope=28]="C5Envelope";e[e.C3Envelope=29]="C3Envelope";e[e.C4Envelope=30]="C4Envelope";e[e.C6Envelope=31]="C6Envelope";e[e.C65Envelope=32]="C65Envelope";e[e.B4Envelope=33]="B4Envelope";e[e.B5Envelope=34]="B5Envelope";e[e.B6Envelope=35]="B6Envelope";e[e.ItalyEnvelope=36]="ItalyEnvelope";e[e.MonarchEnvelope=37]="MonarchEnvelope";e[e.PersonalEnvelope=38]="PersonalEnvelope";e[e.USStandardFanfold=39]="USStandardFanfold";e[e.GermanStandardFanfold=40]="GermanStandardFanfold";e[e.GermanLegalFanfold=41]="GermanLegalFanfold";e[e.IsoB4=42]="IsoB4";e[e.JapanesePostcard=43]="JapanesePostcard";e[e.Standard9x11=44]="Standard9x11";e[e.Standard10x11=45]="Standard10x11";e[e.Standard15x11=46]="Standard15x11";e[e.InviteEnvelope=47]="InviteEnvelope";e[e.LetterExtra=50]="LetterExtra";e[e.LegalExtra=51]="LegalExtra";e[e.TabloidExtra=52]="TabloidExtra";e[e.A4Extra=53]="A4Extra";e[e.LetterTransverse=54]="LetterTransverse";e[e.A4Transverse=55]="A4Transverse";e[e.LetterExtraTransverse=56]="LetterExtraTransverse";e[e.APlus=57]="APlus";e[e.BPlus=58]="BPlus";e[e.LetterPlus=59]="LetterPlus";e[e.A4Plus=60]="A4Plus";e[e.A5Transverse=61]="A5Transverse";e[e.B5Transverse=62]="B5Transverse";e[e.A3Extra=63]="A3Extra";e[e.A5Extra=64]="A5Extra";e[e.B5Extra=65]="B5Extra";e[e.A2=66]="A2";e[e.A3Transverse=67]="A3Transverse";e[e.A3ExtraTransverse=68]="A3ExtraTransverse";e[e.JapaneseDoublePostcard=69]="JapaneseDoublePostcard";e[e.A6=70]="A6";e[e.JapaneseEnvelopeKakuNumber2=71]="JapaneseEnvelopeKakuNumber2";e[e.JapaneseEnvelopeKakuNumber3=72]="JapaneseEnvelopeKakuNumber3";e[e.JapaneseEnvelopeChouNumber3=73]="JapaneseEnvelopeChouNumber3";e[e.JapaneseEnvelopeChouNumber4=74]="JapaneseEnvelopeChouNumber4";e[e.LetterRotated=75]="LetterRotated";e[e.A3Rotated=76]="A3Rotated";e[e.A4Rotated=77]="A4Rotated";e[e.A5Rotated=78]="A5Rotated";e[e.B4JisRotated=79]="B4JisRotated";e[e.B5JisRotated=80]="B5JisRotated";e[e.JapanesePostcardRotated=81]="JapanesePostcardRotated";e[e.JapaneseDoublePostcardRotated=82]="JapaneseDoublePostcardRotated";e[e.A6Rotated=83]="A6Rotated";e[e.JapaneseEnvelopeKakuNumber2Rotated=84]="JapaneseEnvelopeKakuNumber2Rotated";e[e.JapaneseEnvelopeKakuNumber3Rotated=85]="JapaneseEnvelopeKakuNumber3Rotated";e[e.JapaneseEnvelopeChouNumber3Rotated=86]="JapaneseEnvelopeChouNumber3Rotated";e[e.JapaneseEnvelopeChouNumber4Rotated=87]="JapaneseEnvelopeChouNumber4Rotated";e[e.B6Jis=88]="B6Jis";e[e.B6JisRotated=89]="B6JisRotated";e[e.Standard12x11=90]="Standard12x11";e[e.JapaneseEnvelopeYouNumber4=91]="JapaneseEnvelopeYouNumber4";e[e.JapaneseEnvelopeYouNumber4Rotated=92]="JapaneseEnvelopeYouNumber4Rotated";e[e.Prc16K=93]="Prc16K";e[e.Prc32K=94]="Prc32K";e[e.Prc32KBig=95]="Prc32KBig";e[e.PrcEnvelopeNumber1=96]="PrcEnvelopeNumber1";e[e.PrcEnvelopeNumber2=97]="PrcEnvelopeNumber2";e[e.PrcEnvelopeNumber3=98]="PrcEnvelopeNumber3";e[e.PrcEnvelopeNumber4=99]="PrcEnvelopeNumber4";e[e.PrcEnvelopeNumber5=100]="PrcEnvelopeNumber5";e[e.PrcEnvelopeNumber6=101]="PrcEnvelopeNumber6";e[e.PrcEnvelopeNumber7=102]="PrcEnvelopeNumber7";e[e.PrcEnvelopeNumber8=103]="PrcEnvelopeNumber8";e[e.PrcEnvelopeNumber9=104]="PrcEnvelopeNumber9";e[e.PrcEnvelopeNumber10=105]="PrcEnvelopeNumber10";e[e.Prc16KRotated=106]="Prc16KRotated";e[e.Prc32KRotated=107]="Prc32KRotated";e[e.Prc32KBigRotated=108]="Prc32KBigRotated";e[e.PrcEnvelopeNumber1Rotated=109]="PrcEnvelopeNumber1Rotated";e[e.PrcEnvelopeNumber2Rotated=110]="PrcEnvelopeNumber2Rotated";e[e.PrcEnvelopeNumber3Rotated=111]="PrcEnvelopeNumber3Rotated";e[e.PrcEnvelopeNumber4Rotated=112]="PrcEnvelopeNumber4Rotated";e[e.PrcEnvelopeNumber5Rotated=113]="PrcEnvelopeNumber5Rotated";e[e.PrcEnvelopeNumber6Rotated=114]="PrcEnvelopeNumber6Rotated";e[e.PrcEnvelopeNumber7Rotated=115]="PrcEnvelopeNumber7Rotated";e[e.PrcEnvelopeNumber8Rotated=116]="PrcEnvelopeNumber8Rotated";e[e.PrcEnvelopeNumber9Rotated=117]="PrcEnvelopeNumber9Rotated";e[e.PrcEnvelopeNumber10Rotated=118]="PrcEnvelopeNumber10Rotated"}(_PaperKind||(_PaperKind={}));export var _RotateAngle;!function(e){e[e.NoRotate=0]="NoRotate";e[e.Rotation90=1]="Rotation90";e[e.Rotation180=2]="Rotation180";e[e.Rotation270=3]="Rotation270"}(_RotateAngle||(_RotateAngle={}));export class RequestEventArgs extends EventArgs{constructor(e,t){super();this._url=e;this._settings=t}get url(){return this._url}set url(e){this._url=e}get settings(){return this._settings}set settings(e){this._settings=e}}_addCultureInfo("Viewer",{cancel:"Cancel",ok:"OK",bottom:"Bottom:",top:"Top:",right:"Right:",left:"Left:",margins:"Margins(inches)",orientation:"Orientation:",paperKind:"Paper Kind:",pageSetup:"Page Setup",landscape:"Landscape",portrait:"Portrait",pageNumber:"Page Number",zoomFactor:"Zoom Factor",paginated:"Paginated",print:"Print",search:"Search",matchCase:"Match case",wholeWord:"Match whole word only",searchResults:"Search Results",previousPage:"Previous Page",nextPage:"Next Page",firstPage:"First Page",lastPage:"Last Page",backwardHistory:"Backward",forwardHistory:"Forward",pageCount:"Page Count",selectTool:"Select Tool",moveTool:"Move Tool",continuousMode:"Continuous Page View",singleMode:"Single Page View",wholePage:"Fit Whole Page",pageWidth:"Fit Page Width",zoomOut:"Zoom Out",zoomIn:"Zoom In",rubberbandTool:"Zoom by Selection",magnifierTool:"Magnifier",rotatePage:"Rotate Page",rotateDocument:"Rotate Document",exports:"Export",fullScreen:"Full Screen",exitFullScreen:"Exit Full Screen",hamburgerMenu:"Tools",showSearchBar:"Show Search Bar",viewMenu:"Layout Options",searchOptions:"Search Options",matchCaseMenuItem:"Match Case",wholeWordMenuItem:"Match Whole Word",thumbnails:"Page Thumbnails",outlines:"Document Map",loading:"Loading...",pdfExportName:"Adobe PDF",docxExportName:"Open XML Word",xlsxExportName:"Open XML Excel",docExportName:"Microsoft Word",xlsExportName:"Microsoft Excel",mhtmlExportName:"Web archive (MHTML)",htmlExportName:"HTML document",rtfExportName:"RTF document",metafileExportName:"Compressed metafiles",csvExportName:"CSV",tiffExportName:"Tiff images",bmpExportName:"BMP images",emfExportName:"Enhanced metafile",gifExportName:"GIF images",jpgExportName:"JPEG images",jpegExportName:"JPEG images",pngExportName:"PNG images",abstractMethodException:"It is an abstract method, please implement it.",cannotRenderPageNoViewPage:"Cannot render page without document source and view page.",cannotRenderPageNoDoc:"Cannot render page without document source and view page.",exportFormat:"Export format:",exportOptionTitle:"Export options",documentRestrictionsGroup:"Document restrictions",passwordSecurityGroup:"Password security",outputRangeGroup:"Output range",documentInfoGroup:"Document info",generalGroup:"General",docInfoTitle:"Title",docInfoAuthor:"Author",docInfoManager:"Manager",docInfoOperator:"Operator",docInfoCompany:"Company",docInfoSubject:"Subject",docInfoComment:"Comment",docInfoCreator:"Creator",docInfoProducer:"Producer",docInfoCreationTime:"Creation time",docInfoRevisionTime:"Revision time",docInfoKeywords:"Keywords",embedFonts:"Embed TrueType fonts",pdfACompatible:"PDF/A compatible (level 2B)",useCompression:"Use compression",useOutlines:"Generate outlines",allowCopyContent:"Allow content copying or extraction",allowEditAnnotations:"Allow annotations editing",allowEditContent:"Allow content editing",allowPrint:"Allow printing",ownerPassword:"Permissions (owner) password:",userPassword:"Document open (user) password:",encryptionType:"Encryption level:",paged:"Paged",showNavigator:"Show Navigator",navigatorPosition:"Navigator Position",singleFile:"Single File",tolerance:"Tolerance when detecting text bounds (points):",pictureLayer:"Use separate picture layer",metafileType:"Metafile Type:",monochrome:"Monochrome",resolution:"Resolution:",outputRange:"Page range:",outputRangeInverted:"Inverted",showZoomBar:"Zoom Bar",searchPrev:"Search Previous",searchNext:"Search Next",checkMark:"✓",exportOk:"Export...",cannotSearch:"Search requires a document source to be specified.",parameters:"Parameters",requiringParameters:"Please input parameters.",nullParameterError:"Value cannot be null.",invalidParameterError:"Invalid input.",parameterNoneItemsSelected:"(none)",parameterAllItemsSelected:"(all)",parameterSelectAllItemText:"(Select All)",selectParameterValue:"(select value)",apply:"Apply",errorOccured:"An error has occured."});export const ViewerBaseClsNames={applyButton:"wj-applybutton",btnSearch:"wj-btn-search",container:"wj-viewer-container",contents:"wj-contents",dialogFooter:"wj-dialog-footer",dialogHeader:"wj-dialog-header",exportContainer:"wj-exportcontainer",exportEditor:"wj-export-editor",exportFormat:"wj-exportformat",exportFormats:"wj-exportformats",exportFormatsFooter:"wj-exportformats-footer",exportFormatsGroup:"wj-exportformats-group",exportFormatsWrapper:"wj-exportformats-wrapper",footer:"wj-viewer-footer",headers:"wj-headers",hostElement:"wj-viewer",inputZoom:"wj-input-zoom",leftpanel:"wj-viewer-leftpanel",loading:"wj-loading",magnifier:"wj-magnifier",miniToolbar:"wj-mini-toolbar",nav:"wj-nav",outer:"wj-viewer-outer",outlinesTree:"wj-outlines-tree",pageCount:"wj-pagecount",pageNumber:"wj-pagenumber",pageSetupContainer:"wj-pagesetupcontainer",pageSetupFooter:"wj-pagesetup-footer",pageThumbnail:"wj-pagethumbnail",pageViewContinuous:"wj-pageview-continuous",pageViewPagesContainer:"wj-pageview-pagescontainer",pageViewSingle:"wj-pageview-single",pageViewVScroller:"wj-pageview-vscroller",pagesWrapper:"wj-pages-wrapper",pageview:"wj-pageview",parameterContainer:"wj-parametercontainer",parameterControl:"wj-parametercontrol",parameterErrorshidden:"wj-parametererrors-hidden",parameterHead:"wj-parameterhead",parameterHidden:"wj-parametererrors-hidden",parametersContainer:"wj-parameterscontainer",rubberBand:"wj-rubberband",searchBar:"wj-searchbar",searchBox:"wj-searchbox",searchContainer:"wj-searchcontainer",searchItem:"wj-search-item",searchNext:"wj-btn-searchnext",searchOption:"wj-searchoption",searchPage:"wj-search-page",searchPre:"wj-btn-searchpre",searchResult:"wj-searchresult",searchResultList:"wj-searchresultlist",searchText:"wj-search-text",searchWrapper:"search-wrapper",searchbtnGroups:"wj-searchbtn-groups",separator:"wj-separator",splitter:"wj-viewer-splitter",tabContent:"wj-tabcontent",tabContentInner:"wj-tabcontent-inner",tabContentWrapper:"wj-tabcontent-wrapper",tabPane:"wj-tabpane",tabTitle:"wj-tabtitle",tabTitleWrapper:"wj-tabtitle-wrapper",tabsleft:"wj-viewer-tabsleft",tabtitle:"wj-tabtitle",tabtitleWrapper:"wj-tabtitle-wrapper",thumbnailItem:"wj-thumbnail-item",thumbnailList:"wj-thumbnaillist",toolbar:"wj-toolbar",toolbarContainer:"wj-toolbarcontainer",toolbarMove:"wj-toolbar-move",toolbarWrapper:"wj-toolbarwrapper",vScrollerWrapper:"wj-vscroller-wrapper",viewPage:"wj-view-page",viewPanelContainer:"wj-viewpanel-container",viewerLoading:"wj-viewer-loading",viewerMenu:"wj-viewer-menu",zoomBar:"wj-zoombar"};export class _VScroller extends _Scroller{constructor(e){super(e);this._height=100;this._max=100;this._desiredValue=0;this.valueChanged=new Event;var t;t=this.getTemplate();this.applyTemplate(null,t,{_wrapper:"wrapper"});this.hostElement.style.width=_Scroller.getScrollbarWidth()+1+"px";this.addEventListener(this.hostElement,"scroll",()=>{this.onValueChanged()})}static get controlTemplate(){_VScroller._ctrlTemplate||(_VScroller._ctrlTemplate=`<div class="${ViewerBaseClsNames.vScrollerWrapper}" wj-part="wrapper"></div>`);return _VScroller._ctrlTemplate}static set controlTemplate(e){_VScroller._ctrlTemplate=e}onValueChanged(){this._desiredValue!=this.value&&this.valueChanged.raise(this)}preventScrollEvent(){this._desiredValue=this.hostElement.scrollTop}get height(){return this._height}set height(e){if(e!==this._height){this._height=e;this.invalidate()}}get value(){return this.hostElement.scrollTop}set value(e){this.hostElement.scrollTop=e;this.preventScrollEvent()}get max(){return this._max}set max(e){if(this._max!==e){this._max=e;this.invalidate()}}refresh(e=!0){super.refresh(e);var t=this._height+"px";this.hostElement.style.height!==t&&(this.hostElement.style.height=t);var i=this._max+this.hostElement.clientHeight+"px";this._wrapper.style.height!==i&&(this._wrapper.style.height=i);this.preventScrollEvent()}}_VScroller._ctrlTemplate="";export var _UnitType;!function(e){e[e.Document=0]="Document";e[e.Inch=1]="Inch";e[e.Mm=2]="Mm";e[e.Pica=3]="Pica";e[e.Point=4]="Point";e[e.Twip=5]="Twip";e[e.InHs=6]="InHs";e[e.Display=7]="Display";e[e.Cm=8]="Cm";e[e.Dip=9]="Dip"}(_UnitType||(_UnitType={}));export class _Unit{constructor(e,t=_UnitType.Dip){_Unit._initUnitTypeDic();if(isObject(e)){const i=e;e=i.value;t=i.units}else if(isString(e)){const i=parseFloat(e);if(!isNaN(i)){t=_Unit._unitTypeDic[e.substr(i.toString().length)];e=i}}this._value=e;this._units=t;this._valueInPixel=_Unit.convertValue(e,t,_UnitType.Dip)}static _initUnitTypeDic(){if(!_Unit._unitTypeDic){_Unit._unitTypeDic={};for(const e in _Unit._unitTypes){const t=_Unit._unitTypes[e];_Unit._unitTypeDic[e]=t;_Unit._unitTypeDic[t]=e}}}get value(){return this._value}get units(){return this._units}get valueInPixel(){return this._valueInPixel}toString(){return _Unit.toString(this)}static toString(e){return null==e.value?"":e.value+_Unit._unitTypeDic[e.units]}static convertValue(e,t,i){if(t===i)return e;let r;switch(t){case _UnitType.Document:r=e/_Unit._DocumentUnitsPerInch;break;case _UnitType.Inch:r=e;break;case _UnitType.Mm:r=e/_Unit._MmPerInch;break;case _UnitType.Pica:r=e/_Unit._PicaPerInch;break;case _UnitType.Point:r=e/_Unit._PointsPerInch;break;case _UnitType.Twip:r=e/_Unit._TwipsPerInch;break;case _UnitType.InHs:r=e/100;break;case _UnitType.Display:r=e/_Unit._DisplayPerInch;break;case _UnitType.Cm:r=e/_Unit._CmPerInch;break;case _UnitType.Dip:r=e/_Unit._DipPerInch;break;default:throw"Invalid from _UnitType: "+t}switch(i){case _UnitType.Document:return r*_Unit._DocumentUnitsPerInch;case _UnitType.Inch:return r;case _UnitType.Mm:return r*_Unit._MmPerInch;case _UnitType.Pica:return r*_Unit._PicaPerInch;case _UnitType.Point:return r*_Unit._PointsPerInch;case _UnitType.Twip:return r*_Unit._TwipsPerInch;case _UnitType.InHs:return 100*r;case _UnitType.Display:return r*_Unit._DisplayPerInch;case _UnitType.Cm:return r*_Unit._CmPerInch;case _UnitType.Dip:return r*_Unit._DipPerInch;default:throw"Invalid to _UnitType: "+i}}}_Unit._MmPerInch=25.4;_Unit._DocumentUnitsPerInch=300;_Unit._PointsPerInch=72;_Unit._TwipsPerInch=1440;_Unit._PicaPerInch=6;_Unit._CmPerInch=_Unit._MmPerInch/10;_Unit._DisplayPerInch=75;_Unit._DipPerInch=96;_Unit._unitTypes={doc:_UnitType.Document,in:_UnitType.Inch,mm:_UnitType.Mm,pc:_UnitType.Pica,pt:_UnitType.Point,tw:_UnitType.Twip,inhs:_UnitType.InHs,dsp:_UnitType.Display,cm:_UnitType.Cm,dip:_UnitType.Dip,px:_UnitType.Dip};const _wjEventsName="__wjEvents";export const _abstractMethodExceptionText="It is an abstract method, please implement it.";export const _hiddenCss="hidden";export function _pointMove(e,t,i,r){var s,a=e?1:-1;if(i instanceof Point){s=i.x;r=i.y}else{s=i;r=r||0}return new Point(t.x+a*s,t.y+a*r)}export function _disableCache(e){return`${e+(-1==e.indexOf("?")?"?":"&")}_=${Date.now()}`}export function _removeChildren(e,t){if(!e||!e.children)return;const i=e.children;for(let r=i.length-1;r>-1;r--){const s=i[r];if(null==t||t(s)){const t=s.querySelector("."+ControlClsNames.hostElement),i=t?Control.getControl(t):null;i&&i.dispose();e.removeChild(s)}}}export function _toDOMs(e){const t=document.createElement("div"),i=document.createDocumentFragment();t.innerHTML=e;let r=t.firstChild;for(;r;){i.appendChild(r);r=t.firstChild}return i}export function _addEvent(e,t,i,r){const s=t.split(",");for(let t=0;t<s.length;t++){const a=s[t].trim();e.addEventListener?e.addEventListener(a,i,r):e.attachEvent?e.attachEvent("on"+a,i):e["on"+a]=i}}export function _removeEvent(e,t,i){const r=t.split(",");for(let t=0;t<r.length;t++){const s=r[t].trim();e.removeEventListener?e.removeEventListener(s,i):e.detachEvent?e.detachEvent("on"+s,i):e["on"+s]=null}}export function _addWjHandler(e,t,i,r){if(e){let r=t.__wjEvents;r||(r=t.__wjEvents={});let s=r[e];s||(s=r[e]=[]);s.push(i)}t.addHandler(i,r)}export function _removeAllWjHandlers(e,t){if(e){var i=t.__wjEvents;if(i){var r=i[e];r&&r.forEach(e=>{t.removeHandler(e)})}}}export function _getErrorMessage(e){var t;if(_ArReportService.IsError(e))t=e.json.Error.Description;else{t=e;if(e.Message){t=e.Message;e.ExceptionMessage&&(t+="<br/>"+e.ExceptionMessage)}}return t||culture.Viewer.errorOccured}export function _twipToPixel(e){return _Unit.convertValue(e,_UnitType.Twip,_UnitType.Dip)}export function _pixelToTwip(e){return _Unit.convertValue(e,_UnitType.Dip,_UnitType.Twip)}export function _transformSvg(e,t,i,r,s){r=null==r?1:r;const a=e.querySelector("g");if(a){let o=`scale(${r})`;if(null!=s)switch(s){case _RotateAngle.Rotation90:o+=" rotate(90)";o+=` translate(0 ${-i})`;break;case _RotateAngle.Rotation180:o+=" rotate(180)";o+=` translate(${-t} ${-i})`;break;case _RotateAngle.Rotation270:o+=" rotate(270)";o+=` translate(${-t} 0)`}a.setAttribute("transform",o);if(isIE){(e=a.parentNode).removeChild(a);e.appendChild(a)}}return e}export function _getTransformedPosition(e,t,i,r){var s,a,o={x:_twipToPixel(e.x),y:_twipToPixel(e.y),width:_twipToPixel(e.width),height:_twipToPixel(e.height)};switch(i){case _RotateAngle.NoRotate:s=o.y;a=o.x;break;case _RotateAngle.Rotation90:s=o.x;a=t.height.valueInPixel-o.y-o.height;break;case _RotateAngle.Rotation180:s=t.height.valueInPixel-o.y-o.height;a=t.width.valueInPixel-o.x-o.width;break;case _RotateAngle.Rotation270:s=t.width.valueInPixel-o.x-o.width;a=o.y}return new Point(a*r,s*r)}export function _getRotatedSize(e,t){return t===_RotateAngle.NoRotate||t===_RotateAngle.Rotation180?e:{width:e.height,height:e.width}}export function _strEndsWith(e,t,i=!1){return i?e.slice(-t.length).toLowerCase()===t.toLowerCase():e.slice(-t.length)===t}export function _isEqual(e,t){return e&&t&&isFunction(e.valueOf)&&isFunction(t.valueOf)?e.valueOf()===t.valueOf():e===t}export function _statusJsonReviver(e,t){if(isString(t)){if(_strEndsWith(e,"DateTime"))return new Date(t);if("width"===e||"height"===e||_strEndsWith(e,"Margin"))return new _Unit(t)}return t}export function _pageSettingsJsonReviver(e,t){return isString(t)&&("width"===e||"height"===e||_strEndsWith(e,"Margin"))?new _Unit(t):t}export function _appendQueryString(e,t){t=t||{};var i,r,s=[];for(i in t)s.push(`${i}=${encodeURIComponent(t[i])}`);if(s.length){r=e.indexOf("?")<0?"?":"&";e+=r+s.join("&")}return e}export function _joinUrl(...e){var t,i,r,s=[];for(t=0,i=e.length;t<i;t++)(r=e[t])&&("string"!=typeof r?s=s.concat(_joinStringUrl(r)):s.push(_prepareStringUrl(r).join("/")));return s.join("/")}export function _joinStringUrl(e){if(null==e)return null;var t,i,r=[];for(t=0,i=e.length;t<i;t++)r=r.concat(_prepareStringUrl(e[t]));return r}export function _prepareStringUrl(e){var t=e.split("/");t.length>0&&!t[t.length-1].length&&t.splice(t.length-1);return t}export var _TouchEventType;!function(e){e[e.Start=0]="Start";e[e.Move=1]="Move";e[e.End=2]="End"}(_TouchEventType||(_TouchEventType={}));export class _TouchEventArgs extends EventArgs{constructor(e){super();if(e instanceof _TouchEventArgs){this._systemEvent=e.systemEvent;this._type=e.type;this._touchInfos=e.touchInfos}else{this._systemEvent=e;_TouchManager._registerTouchInfo(e);this._type=_TouchManager._isTouchStart(e.type)?_TouchEventType.Start:_TouchManager._isTouchEnd(e.type)?_TouchEventType.End:_TouchEventType.Move;this._touchInfos=_TouchManager._allTouchInfos?_TouchManager._allTouchInfos.slice():[]}}get timeStamp(){return this.systemEvent.timeStamp}get touchInfos(){return this._touchInfos}get systemEvent(){return this._systemEvent}get target(){return this.systemEvent.target}get currentTarget(){return this.systemEvent.currentTarget}get type(){return this._type}get pointersCount(){return this.touchInfos.length}get cancelBubble(){return this._systemEvent.cancelBubble}set cancelBubble(e){this._systemEvent.cancelBubble=e}preventDefault(){this._systemEvent.preventDefault()}}export class _TouchEvent extends Event{raise(e,t){super.raise(e,t)}}export class _TouchTrigger{constructor(e){this.touchMove=new _TouchEvent;this.touchStart=new _TouchEvent;this.touchEnd=new _TouchEvent;var t=getElement(e);this._element=t;var i,r=_TouchTrigger.getTrigger(t);if(r){i=this._onTouchEvent.bind(this);r.touchMove.addHandler(i);r.touchStart.addHandler(i);r.touchEnd.addHandler(i);this._disposeAction=()=>{r.touchMove.removeHandler(i);r.touchStart.removeHandler(i);r.touchEnd.removeHandler(i);this._disposeAction=null}}else{var s=_getTouchEventMap(),a=this._onSystemTouchEvent.bind(this);_addEvent(t,s.startName,a);_addEvent(t,s.moveName,a);_addEvent(t,s.endName,a);_TouchTrigger.bindElement(t,this);this._disposeAction=()=>{_removeEvent(t,s.startName,a);_removeEvent(t,s.moveName,a);_removeEvent(t,s.endName,a);_TouchTrigger.unbindElement(t);this._disposeAction=null}}}static bindElement(e,t){if(e[_TouchTrigger._elementDataName])throw"Cannot bind multi _TouchTrigger on the same element.";e[_TouchTrigger._elementDataName]=t}static unbindElement(e){e[_TouchTrigger._elementDataName]=null}static getTrigger(e){return e[_TouchTrigger._elementDataName]}_onSystemTouchEvent(e){var t=this._createTouchEventArgs(e);t&&this._onTouchEvent(this,t)}_createTouchEventArgs(e){return _TouchManager._isTouchEvent(e)?new _TouchEventArgs(e):null}dispose(){this._disposeAction&&this._disposeAction()}get hostElement(){return this._element}_onTouchEvent(e,t){switch(t.type){case _TouchEventType.Start:this.onTouchStart(t);return;case _TouchEventType.Move:this.onTouchMove(t);return;case _TouchEventType.End:this.onTouchEnd(t)}}onTouchEnd(e){this.touchEnd.raise(this,e)}onTouchStart(e){this.touchStart.raise(this,e)}onTouchMove(e){this.touchMove.raise(this,e)}}_TouchTrigger._elementDataName="__wjTouchTrigger";export class _PinchEventArgs extends _TouchEventArgs{constructor(e,t,i){super(e);this._zoom=1;this._pinchType=t;this._pre=i||{};if(this.type!=_TouchEventType.End){this._pinchDistance=_TouchInfo.getDistance(this.touchInfos[0],this.touchInfos[1]);this._centerClient=_TouchInfo.getCenterClient(this.touchInfos[0],this.touchInfos[1]);this._centerScreen=_TouchInfo.getCenterScreen(this.touchInfos[0],this.touchInfos[1]);if(this.type!=_TouchEventType.Start){this._zoom=this.pinchDistance/this.prePinchDistance;this._centerClientDelta=new Point(this.centerClient.x-this.preCenterClient.x,this.centerClient.y-this.preCenterClient.y);this._centerScreenDelta=new Point(this.centerScreen.x-this.preCenterScreen.x,this.centerScreen.y-this.preCenterScreen.y)}}}get zoom(){return this._zoom}get pointersCount(){return this.type==_TouchEventType.End?0:2}get prePinchDistance(){return this._pre.pinchDistance}get pinchDistance(){return this._pinchDistance}get centerScreenDelta(){return this._centerScreenDelta}get centerClientDelta(){return this._centerClientDelta}get centerClient(){return this._centerClient}get preCenterClient(){return this._pre.centerClient}get centerScreen(){return this._centerScreen}get preCenterScreen(){return this._pre.centerScreen}get type(){return this._pinchType}}export class _PinchEvent extends _TouchEvent{raise(e,t){super.raise(e,t)}}export class _PinchTrigger extends _TouchTrigger{constructor(){super(...arguments);this.pinch=new _PinchEvent}onPinch(e){this.pinch.raise(this,e)}onTouchStart(e){this._process(e)}onTouchend(e){this._process(e)}onTouchMove(e){this._process(e)}_onPinching(e){var t=new _PinchEventArgs(e,this._preEventArgs?_TouchEventType.Move:_TouchEventType.Start,this._preEventArgs);this.onPinch(t);this._preEventArgs=t}_onPinchEnd(e){var t;if(this._preEventArgs){t=new _PinchEventArgs(e,_TouchEventType.End,this._preEventArgs);this.onPinch(t);this._preEventArgs=null}}_process(e){if(2==e.pointersCount)switch(e.type){case _TouchEventType.Start:case _TouchEventType.Move:this._onPinching(e);return;case _TouchEventType.End:this._onPinchEnd(e);return}else this._onPinchEnd(e)}}export class _PanEventArgs extends _TouchEventArgs{constructor(e,t,i){super(e);this._panType=null==i?e.type:i;this._client=new Point(this.touchInfo.clientX,this.touchInfo.clientY);this._screen=new Point(this.touchInfo.screenX,this.touchInfo.screenY);if(t){this._clientDelta=new Point(this.client.x-t.client.x,this.client.y-t.client.y);this._screenDelta=new Point(this.screen.x-t.screen.x,this.screen.y-t.screen.y)}}get type(){return this._panType}get clientDelta(){return this._clientDelta}get screenDelta(){return this._screenDelta}get client(){return this._client}get screen(){return this._screen}get pointersCount(){return this.type==_TouchEventType.End?0:1}get touchInfo(){return this.touchInfos[0]||{}}}export class _PanEvent extends _TouchEvent{raise(e,t){super.raise(e,t)}}export class _PanTrigger extends _TouchTrigger{constructor(){super(...arguments);this.panMove=new _PanEvent;this.panStart=new _PanEvent;this.panEnd=new _PanEvent}onPanEnd(e){this.panEnd.raise(this,e)}onPanStart(e){this.panStart.raise(this,e)}onPanMove(e){this.panMove.raise(this,e)}_prepareMove(e){this._prePanEventArgs=e;this._panEvents.queue(()=>{this.onPanMove(e)})}_prepareStart(e){this._prePanEventArgs=e;this._panEvents.queue(()=>{this.onPanStart(e)});this._clearPanStartTimer();this._panStartTimer=setTimeout(()=>{this._panEvents&&this._panEvents.start();this._clearPanStartTimer()},_PanTrigger._threhold)}_prepareEnd(e){this._prePanEventArgs=null;this._panEvents.queue(()=>{var t=e instanceof _PanEventArgs?e:new _PanEventArgs(e,null,_TouchEventType.End);this.onPanEnd(t);this._stopPan()})}_clearPanStartTimer(){if(null!=this._panStartTimer){clearTimeout(this._panStartTimer);this._panStartTimer=null}}_tryStopPan(e){this._panEvents&&this._panEvents.isStarted?this._prepareEnd(e):this._stopPan()}_stopPan(){this._clearPanStartTimer();this._panEvents=null;this._prePanEventArgs=null}_processPan(e){var t=this._createPanEventArgs(e);if(t)switch(t.type){case _TouchEventType.Start:this._prepareStart(t);return;case _TouchEventType.Move:this._prepareMove(t);return;case _TouchEventType.End:this._prepareEnd(t);return}else this._tryStopPan(e)}onTouchStart(e){super.onTouchStart(e);this._processPan(e)}onTouchMove(e){super.onTouchMove(e);this._processPan(e)}onTouchEnd(e){super.onTouchEnd(e);var t=this._createPanEventArgs(e);t?this._prepareEnd(t):this._tryStopPan(e)}_createPanEventArgs(e){if(e.type==_TouchEventType.End&&0!=e.pointersCount||e.type!=_TouchEventType.End&&1!=e.pointersCount)return null;var t=new _PanEventArgs(e,this._prePanEventArgs);if(t.type!=_TouchEventType.Start){if(!this._panEvents)return null}else this._panEvents=new _ActionQueue;return t}}_PanTrigger._threhold=10;export class _SwipeEventArgs extends _PanEventArgs{constructor(e,t,i,r){super(i);this._duration=r;this._startTouchInfo=e;this._endTouchInfo=t;var s=_pointMove(!1,new Point(this.endTouchInfo.clientX,this.endTouchInfo.clientY),new Point(this.startTouchInfo.clientX,this.startTouchInfo.clientY));this._speed=new Point(_SwipeTrigger.getSpeed(s.x,this.duration),_SwipeTrigger.getSpeed(s.y,this.duration));this._direction=_TouchInfo._getDirection(this.startTouchInfo,this.endTouchInfo)}get duration(){return this._duration}get startTouchInfo(){return this._startTouchInfo}get endTouchInfo(){return this._endTouchInfo}get speed(){return this._speed}get pointersCount(){return 1}get direction(){return this._direction}}export class _SwipeEvent extends _PanEvent{raise(e,t){super.raise(e,t)}}export class _SwipeTrigger extends _PanTrigger{constructor(){super(...arguments);this.swipe=new _SwipeEvent}static getSpeed(e,t){return e/t}onPanStart(e){super.onPanStart(e);this._panStartEventArgs=e}onPanMove(e){super.onPanMove(e);this._prePanMoveEventArgs=e}onPanEnd(e){super.onPanEnd(e);var t=this._createSwipeEventArgs(e);t&&this.onSwipe(t);this._panStartEventArgs=null;this._prePanMoveEventArgs=null}onSwipe(e){this.swipe.raise(this,e)}_createSwipeEventArgs(e){if(!this._panStartEventArgs||!this._prePanMoveEventArgs)return null;var t=e.timeStamp-this._panStartEventArgs.timeStamp;return t>_SwipeTrigger.maxDuration||_TouchInfo.getDistance(this._panStartEventArgs.touchInfo,this._prePanMoveEventArgs.touchInfo)<_SwipeTrigger.minDistance?null:new _SwipeEventArgs(this._panStartEventArgs.touchInfo,this._prePanMoveEventArgs.touchInfo,e,t)}}_SwipeTrigger.minDistance=50;_SwipeTrigger.maxDuration=300;export class _TouchManager{constructor(e,t=!0){this.touchMove=new _TouchEvent;this.touchStart=new _TouchEvent;this.touchEnd=new _TouchEvent;this.panMove=new _PanEvent;this.panStart=new _PanEvent;this.panEnd=new _PanEvent;this.swipe=new _SwipeEvent;this.pinch=new _PinchEvent;this._trigger=new _SwipeTrigger(e);this._trigger.touchStart.addHandler((e,t)=>this.onTouchStart(t));this._trigger.touchMove.addHandler((e,t)=>this.onTouchMove(t));this._trigger.touchEnd.addHandler((e,t)=>this.onTouchEnd(t));this._trigger.panStart.addHandler((e,t)=>this.onPanStart(t));this._trigger.panMove.addHandler((e,t)=>this.onPanMove(t));this._trigger.panEnd.addHandler((e,t)=>this.onPanEnd(t));this._trigger.swipe.addHandler((e,t)=>this.onSwipe(t));this._pinchTrigger=new _PinchTrigger(e);this._pinchTrigger.pinch.addHandler((e,t)=>this.onPinch(t));this.removeDefaultTouch=t}static _isTouchEvent(e){return e instanceof TouchEvent||(e.pointerType||"").toLowerCase()===_TouchManager._touchPointerName}static _isTouchStart(e){return _TouchManager._eventTypeContains(e,_getTouchEventMap().startName)}static _isTouchEnd(e){return _TouchManager._eventTypeContains(e,_getTouchEventMap().endName)}static _isTouchMove(e){return _TouchManager._eventTypeContains(e,_getTouchEventMap().moveName)}static _eventTypeContains(e,t){var i,r,s,a=t.split(",");e=e.toLowerCase();for(i=0,r=a.length;i<r;i++){s=a[i].trim().toLowerCase();if(e.indexOf(s)>-1)return!0}return!1}static _registerTouchInfo(e){if(_TouchManager._isTouchEvent(e)){var t,i,r;if(e instanceof TouchEvent){_TouchManager._allTouchInfos=[];for(t=0,i=e.touches.length;t<i;t++)_TouchManager._allTouchInfos.push(new _TouchInfo(e.touches.item(t)))}else if(e instanceof PointerEvent){_TouchManager._allTouchInfos=_TouchManager._allTouchInfos||[];if(_TouchManager._isTouchEnd(e.type)){for(r=0,i=_TouchManager._allTouchInfos.length;r<i;r++)if(_TouchManager._allTouchInfos[r].id==e.pointerId){_TouchManager._allTouchInfos.splice(r,1);return}return}for(r=0,i=_TouchManager._allTouchInfos.length;r<i;r++)if(_TouchManager._allTouchInfos[r].id==e.pointerId){_TouchManager._allTouchInfos[r]=new _TouchInfo(e);return}_TouchManager._allTouchInfos.push(new _TouchInfo(e))}}}onPinch(e){this.pinch.raise(this,e)}onSwipe(e){this.swipe.raise(this,e)}onTouchEnd(e){this.touchEnd.raise(this,e)}onTouchStart(e){this.touchStart.raise(this,e)}onTouchMove(e){this.touchMove.raise(this,e)}onPanEnd(e){this.panEnd.raise(this,e)}onPanStart(e){this.panStart.raise(this,e)}onPanMove(e){this.panMove.raise(this,e)}get removeDefaultTouch(){return this._removeDefaultTouch}set removeDefaultTouch(e){this._removeDefaultTouch=e;var t=this.hostElement.style;if(e){t.touchAction="none";t.msTouchAction="none"}else{t.touchAction=this._defaultTouchAction;t.msTouchAction=this._defaultMsTouchAction}}get hostElement(){return this._pinchTrigger.hostElement}get contentElement(){return this.hostElement.children.length?this.hostElement.children[0]:null}dispose(){this._pinchTrigger&&this._pinchTrigger.dispose();this._trigger&&this._trigger.dispose();this.removeDefaultTouch&&(this.removeDefaultTouch=!1)}}_TouchManager._touchPointerName="touch";_TouchManager._allTouchInfos=[];export function _httpRequest(e,t,i){i&&i.cache||(e=_disableCache(e));var r;if(i&&"GET"!==(i.method||"GET").toUpperCase()){i.data&&!1!==i.urlEncode&&null!=(r=_objToParams(i.data))&&(i.data=r);!1!==i.urlEncode&&(i.requestHeaders?i.requestHeaders["Content-Type"]||(i.requestHeaders["Content-Type"]="application/x-www-form-urlencoded"):i.requestHeaders={"Content-Type":"application/x-www-form-urlencoded"})}if(t&&t.requestHeaders){(i=i||{}).requestHeaders=i.requestHeaders||{};Object.keys(t.requestHeaders).forEach(e=>{i.requestHeaders[e]=t.requestHeaders[e]})}var s=new RequestEventArgs(e,i);t&&t.beforeSend&&t.beforeSend(s);return httpRequest(s.url,s.settings)}function _objToParams(e){var t,i,r=[];e=e||{};for(t in e)if(null!==e[t]&&void 0!==e[t])if(isArray(e[t]))if(e[t].length>0)for(i=0;i<e[t].length;i++)r.push(`${t}=${encodeURIComponent(e[t][i])}`);else r.push(t+"=");else r.push(`${t}=${encodeURIComponent(e[t])}`);return r.join("&")}export class _Promise{constructor(){this._callbacks=[];this._finished=!1}get isFinished(){return this._finished}cancel(){this._finished=!0}then(e,t){this._callbacks.push({onFulfilled:e,onRejected:t});return this}catch(e){return this.then(null,e)}resolve(e){setTimeout(()=>{try{this.onFulfilled(e)}catch(e){this.onRejected(e)}},0);return this}reject(e){setTimeout(()=>{this.onRejected(e)},0);return this}onFulfilled(e){if(!this._finished){this._finished=!0;var t,i;t=this._callbacks.shift();for(;t;){t.onFulfilled&&void 0!==(i=t.onFulfilled(e))&&(e=i);t=this._callbacks.shift()}}}onRejected(e){if(!this._finished){this._finished=!0;var t,i;t=this._callbacks.shift();for(;t;){if(t.onRejected){i=t.onRejected(e);this.onFulfilled(i);return}t=this._callbacks.shift()}throw e}}}export class _CompositedPromise extends _Promise{constructor(e){super();this._promises=e;this._init()}_init(){if(this._promises&&this._promises.length){var e=this._promises.length,t=0,i=[],r=!1;this._promises.some(s=>{s.then(s=>{if(!r){i.push(s);++t>=e&&this.resolve(i)}}).catch(e=>{r=!0;this.reject(e)});return r})}else this.reject("No promises in current composited promise.")}}export class _ExportOptionEditor extends Control{constructor(e){super(e);this._options={};this._optionLabels=null;this._groupTitleField=null;addClass(e,ViewerBaseClsNames.exportEditor)}get options(){return this._options}get exportDescription(){return this._exportDescription}set exportDescription(e){this._exportDescription=e;this._options={};if(e){this._options.format=this.exportDescription.format;this._render()}}_skipOption(e){return _ExportOptionEditor._skippedOptions.indexOf(e)>=0}_render(){_removeChildren(this.hostElement);if(this.exportDescription){var e=this.exportDescription.optionDescriptions,t={};if(e)for(let i=0;i<e.length;i++){const r=e[i];if(!this._skipOption(r.name))if(r.group){t[r.group]||(t[r.group]=[]);t[r.group].push(r)}else{t[_ExportOptionEditor._generalGroupName]||(t[_ExportOptionEditor._generalGroupName]=[]);r.group=_ExportOptionEditor._generalGroupName;t[_ExportOptionEditor._generalGroupName].push(r)}}for(var i in t)this.hostElement.appendChild(this._generateGroup(t[i]));this._updateEditors()}}_generateEditor(e){var t;if(isArray(e.allowedValues))t=this._generateComboEditor(e);else switch(e.type){case"bool":t=this._generateBoolEditor(e);break;case"int":case"float":t=this._generateNumberEditor(e);break;case"unit":e.defaultValue=new _Unit(e.defaultValue);t=this._generateStringEditor(e);break;default:t=this._generateStringEditor(e)}t.setAttribute(_ExportOptionEditor._optionIdAttr,e.name);return t}_generateComboEditor(e){const t=[],i=document.createElement("div");for(let i=0;i<e.allowedValues.length;i++)t.push(e.allowedValues[i]);const r=new ComboBox(i,{keyActionPrintCharacters:0,keyActionTab:0});this._comboBox=r;r.isEditable=!1;r.itemsSource=t;r.selectedValue=e.defaultValue;r.selectedIndexChanged.addHandler(t=>{this._setOptionValue(e.name,t.selectedValue.toString())});return i}_generateBoolEditor(e){let t;if(e.nullable){t=document.createElement("div");const i=[],r=new ComboBox(t,{keyActionPrintCharacters:0,keyActionTab:0});this._boolComboBox=r;r.isEditable=!1;r.displayMemberPath="name";r.selectedValuePath="value";i.push({name:"None",value:null});i.push({name:"True",value:!0});i.push({name:"False",value:!1});r.itemsSource=i;r.selectedValue=e.defaultValue;const selectedHandler=t=>{this._setOptionValue(e.name,t.selectedValue);this._updateEditors(e.name)};r.selectedIndexChanged.addHandler(selectedHandler);this._selectedHandlerTimer=setTimeout(()=>selectedHandler(r))}else{t=document.createElement("input");t.type="checkbox";const i=changeType(e.defaultValue,DataType.Boolean,null);t.checked=i;const clickHandler=()=>{this._setOptionValue(e.name,t.checked);this._updateEditors(e.name)};this.addEventListener(t,"click",clickHandler);this._clickHandlerTimer=setTimeout(clickHandler)}return t}_generateNumberEditor(e){var t,i,r="int"===e.type;t=document.createElement("div");(i=this._inputNumber=new InputNumber(t)).format=r?"n0":"n2";i.isRequired=!e.nullable;i.value=e.defaultValue;i.valueChanged.addHandler(t=>{this._setOptionValue(e.name,t.value)});return t}_generateStringEditor(e){var t;t=document.createElement("input");e.name.match(/password/i)?t.type="password":t.type="text";t.value=e.defaultValue;["change","keyup","paste","input"].forEach(i=>{this.addEventListener(t,i,()=>{this._setOptionValue(e.name,t.value)})});return t}_generateGroup(e){const t=document.createElement("fieldset"),i=document.createElement("legend"),r=e[0].group;addClass(t,ViewerBaseClsNames.exportFormatsGroup);i.innerHTML=this._groupTitle[r];i.setAttribute(_ExportOptionEditor._optionNameAttr,r);t.appendChild(i);const s=document.createElement("table");for(let t=0;t<e.length;t++){const i=e[t],r=document.createElement("tr"),a=document.createElement("td"),o=document.createElement("td");a.innerHTML=this._getOptionLabel(i.name);a.setAttribute(_ExportOptionEditor._optionNameAttr,i.name);o.appendChild(this._generateEditor(i));r.appendChild(a);r.appendChild(o);s.appendChild(r)}t.appendChild(s);return t}_updateEditors(e){if("pdfACompatible"!==e&&e){if("paged"===e||!e){const e=this.hostElement.querySelector(`[${_ExportOptionEditor._optionIdAttr}="showNavigator"]`);if(e){const t=changeType(this._getOptionValue("paged"),DataType.Boolean,null);if(t){e.checked=this._previousShowNavigator;this._setOptionValue("showNavigator",this._previousShowNavigator)}else{this._previousShowNavigator=e.checked;e.checked=!1;this._setOptionValue("showNavigator",!1)}e.disabled=!t}}}else{const e=this.hostElement.querySelector(`[${_ExportOptionEditor._optionIdAttr}="embedFonts"]`);if(e){const t=changeType(this._getOptionValue("pdfACompatible"),DataType.Boolean,null);if(t){this._previousEmbedFonts=e.checked;e.checked=!0;this._setOptionValue("embedFonts",!0)}else{e.checked=this._previousEmbedFonts;this._setOptionValue("embedFonts",this._previousEmbedFonts)}e.disabled=t}}}_getOptionLabel(e){var t=this._optionLabelsText[e];return t||e[0].toUpperCase()+e.substring(1)}_getOptionDescByName(e){var t=null;this._exportDescription.optionDescriptions.some(i=>{if(i.name===e){t=i;return!0}return!1});return t}_getOptionValue(e){return void 0!==this._options[e]?this._options[e]:this._getOptionDescByName(e).defaultValue}_setOptionValue(e,t){var i=this._getOptionDescByName(e),r=i.defaultValue;"unit"===i.type&&(r=i.defaultValue.toString());t!==r?this._options[e]=t:void 0!==this._options[e]&&delete this._options[e]}get _optionLabelsText(){if(!this._optionLabels){const e=culture.Viewer;this._optionLabels={title:e.docInfoTitle,author:e.docInfoAuthor,manager:e.docInfoManager,operator:e.docInfoOperator,company:e.docInfoCompany,subject:e.docInfoSubject,comment:e.docInfoComment,creator:e.docInfoCreator,producer:e.docInfoProducer,creationTime:e.docInfoCreationTime,revisionTime:e.docInfoRevisionTime,keywords:e.docInfoKeywords,embedFonts:e.embedFonts,pdfACompatible:e.pdfACompatible,useCompression:e.useCompression,useOutlines:e.useOutlines,allowCopyContent:e.allowCopyContent,allowEditAnnotations:e.allowEditAnnotations,allowEditContent:e.allowEditContent,allowPrint:e.allowPrint,ownerPassword:e.ownerPassword,userPassword:e.userPassword,encryptionType:e.encryptionType,paged:e.paged,showNavigator:e.showNavigator,navigatorPosition:e.navigatorPosition,singleFile:e.singleFile,tolerance:e.tolerance,pictureLayer:e.pictureLayer,metafileType:e.metafileType,monochrome:e.monochrome,resolution:e.resolution,outputRange:e.outputRange,outputRangeInverted:e.outputRangeInverted}}return this._optionLabels}get _groupTitle(){this._groupTitleField||(this._groupTitleField={documentRestrictions:culture.Viewer.documentRestrictionsGroup,passwordSecurity:culture.Viewer.passwordSecurityGroup,outputRange:culture.Viewer.outputRangeGroup,documentInfo:culture.Viewer.documentInfoGroup,general:culture.Viewer.generalGroup});return this._groupTitleField}_globalize(){const e=this.hostElement.querySelectorAll(`[${_ExportOptionEditor._optionNameAttr}]`);for(let t=0;t<e.length;t++){const i=e[t];i instanceof HTMLLegendElement?i.innerHTML=this._groupTitle[i.getAttribute(_ExportOptionEditor._optionNameAttr)]:i.innerHTML=this._getOptionLabel(i.getAttribute(_ExportOptionEditor._optionNameAttr))}}dispose(){if(this._clickHandlerTimer){clearTimeout(this._clickHandlerTimer);this._clickHandlerTimer=null}if(this._selectedHandlerTimer){clearTimeout(this._selectedHandlerTimer);this._selectedHandlerTimer=null}if(this._comboBox){this._comboBox.dispose();this._comboBox=null}if(this._boolComboBox){this._boolComboBox.dispose();this._boolComboBox=null}if(this._inputNumber){this._inputNumber.dispose();this._inputNumber=null}super.dispose()}refresh(e=!0){super.refresh(e);if(e){this._optionLabels=null;this._groupTitleField=null;this._globalize()}}}_ExportOptionEditor._optionIdAttr="option-id";_ExportOptionEditor._optionNameAttr="option-name";_ExportOptionEditor._skippedOptions=["shapesWord2007Compatible","sheetName","navigatorPositions"];_ExportOptionEditor._generalGroupName="general";export class _ParametersEditor extends Control{constructor(e){super(e);this._parameters={};this._errors=[];this._errorsVisible=!1;this._savingParam=!1;this.commit=new Event;this.validate=new Event;addClass(this.hostElement,ViewerBaseClsNames.parametersContainer);this._updateErrorsVisible()}_setErrors(e){this._errors=e;this._updateErrorDiv()}get parameters(){return this._parameters}get itemsSource(){return this._itemSources}set itemsSource(e){this._itemSources=e;this._parameters={};this._render();var t=[];(e||[]).forEach(e=>{e.error&&t.push({key:e.name,value:e.error})});this._setErrors(t)}set savingParam(e){this._savingParam=e}_reset(){this._lastEditedParam=null}_setErrorsVisible(e){this._errorsVisible=e;this._updateErrorsVisible()}_updateErrorsVisible(){this._errorsVisible?removeClass(this.hostElement,_ParametersEditor._errorsHiddenCss):addClass(this.hostElement,_ParametersEditor._errorsHiddenCss)}onCommit(){this.commit.raise(this)}onValidate(){this.validate.raise(this);this._setErrorsVisible(!1)}_deferValidate(e,t,i){if(null!=this._validateTimer){clearTimeout(this._validateTimer);this._validateTimer=null}this._savingParam=!0;this._validateTimer=setTimeout(()=>{null!=t&&t();this.onValidate();null!=i&&i();this._lastEditedParam=e;this._validateTimer=null},500)}_updateErrorDiv(){const e=this._errors||[],t=this.hostElement.querySelectorAll(".error");for(let e=0;e<t.length;e++)t[e].parentNode.removeChild(t[e]);for(let t=0;t<e.length;t++){const i=this.hostElement.querySelector(`*[${_ParametersEditor._paramIdAttr}="${e[t].key}"]`),r=e[t].value;if(i){const e=document.createElement("div");e.innerHTML=r;e.className="error";i.appendChild(e)}}}_render(){var e;_removeChildren(this.hostElement,t=>{if(!this._lastEditedParam||t.getAttribute(_ParametersEditor._paramIdAttr)!==this._lastEditedParam)return!0;e=t});if(!this._itemSources)return;this._itemSources.forEach(t=>{if(this._lastEditedParam!==t.name){if(!t.hidden){var i=document.createElement("div"),r=document.createElement("span"),s=null;i.className=ViewerBaseClsNames.parameterContainer;r.className=ViewerBaseClsNames.parameterHead;r.innerHTML=t.prompt||t.name;if(isArray(t.allowedValues))s=this._generateComboEditor(t);else switch(t.dataType){case _ParameterType.Boolean:s=this._generateBoolEditor(t);break;case _ParameterType.DateTime:case _ParameterType.Time:case _ParameterType.Date:s=this._generateDateTimeEditor(t);break;case _ParameterType.Integer:case _ParameterType.Float:s=this._generateNumberEditor(t);break;case _ParameterType.String:s=this._generateStringEditor(t)}if(s){s.className+=" "+ViewerBaseClsNames.parameterControl;i.setAttribute(_ParametersEditor._paramIdAttr,t.name);i.appendChild(r);i.appendChild(s);e?this.hostElement.insertBefore(i,e):this.hostElement.appendChild(i)}}}else{this._lastEditedParam=null;e=null}});var t=document.createElement("input");t.type="button";t.value=culture.Viewer.apply;t.className=ViewerBaseClsNames.applyButton;const clickHandler=()=>{if(this._savingParam)setTimeout(clickHandler,100);else{if(this._validateParameters()){this._errors=[];this.onCommit()}this._setErrorsVisible(!0)}};this.addEventListener(t,"click",clickHandler);this.hostElement.appendChild(t)}refresh(e=!0){super.refresh(e);if(e){this._reset();this._render()}}_validateParameters(){const e=this.hostElement.querySelectorAll("textarea"),t=[],i=this.itemsSource;let r;for(let e=0;e<i.length;e++){const s=i[e];r=this.hostElement.querySelector(`[${_ParametersEditor._paramIdAttr}="${s.name}"]`);null!=s.value&&""!==s.value||s.nullable||s.dataType===_ParameterType.String&&s.allowBlank||this.parameters.hasOwnProperty(s.name)||this.parameters[s.name]||r&&t.push({key:s.name,value:culture.Viewer.nullParameterError})}for(let i=0;i<e.length;i++){const r=e.item(i);let s=!0;switch(parseInt(r.getAttribute("data-type"))){case _ParameterType.Date:case _ParameterType.DateTime:case _ParameterType.Time:s=_ParametersEditor._checkValueType(r.value,isDate);break;case _ParameterType.Float:s=_ParametersEditor._checkValueType(r.value,_ParametersEditor._isFloat);break;case _ParameterType.Integer:s=_ParametersEditor._checkValueType(r.value,isInt)}s||t.push({key:r.parentElement.id,value:culture.Viewer.invalidParameterError})}this._setErrors(t);return t.length<=0}static _isFloat(e){return!isNaN(parseFloat(e))}static _checkValueType(e,t){const i=e.split("\n");for(let e=0;e<i.length;e++)if(!(i[e].trim().length<=0||t(i[e].trim())))return!1;return!0}_generateComboEditor(e){let t;const i=[],r=document.createElement("div");let s,a;const o=[],n=e.allowedValues&&e.allowedValues.length>0,h=n&&e.allowedValues.filter(t=>_isEqual(t.value,e.value)).length>0;if(e.multiValue)t=new _MultiSelectEx(r);else{t=new ComboBox(r,{keyActionPrintCharacters:0,keyActionTab:0});e.nullable?i.push({name:culture.Viewer.parameterNoneItemsSelected,value:null}):!n||null!=e.value&&h||i.push({name:culture.Viewer.selectParameterValue,value:null})}t.isEditable=!1;t.displayMemberPath="name";t.selectedValuePath="value";t.isDisabled=!n;for(let t=0;t<e.allowedValues.length;t++)i.push({name:e.allowedValues[t].key,value:e.allowedValues[t].value});t.itemsSource=i;if(e.multiValue){s=t;if(n){if(e.value){for(let t=0;t<e.value.length;t++)for(let i=0;i<s.itemsSource.length;i++)if(_isEqual(s.itemsSource[i].value,e.value[t])){o.push(s.itemsSource[i]);break}s.checkedItems=o}}else s.checkedItems=[];s.lostFocus.addHandler(()=>{let t=s.checkedItems.length===(e.value||[]).length;if(t)for(let i=0;i<s.checkedItems.length;i++)s.checkedItems[i].value!==e.value[i]&&(t=!1);t||this._deferValidate(e.name,()=>{a=[];for(let e=0;e<s.checkedItems.length;e++)a.push(s.checkedItems[e].value);this._updateParameters(e,a)},()=>{a.length>0&&!e.nullable&&this._validateNullValueOfParameter(r)})})}else{t.selectedValue=n&&h?e.value:null;let i=!1;t.selectedIndexChanged.addHandler(t=>{e.value!==t.selectedValue&&this._deferValidate(e.name,()=>{if(!i){this._updateParameters(e,t.selectedValue);t.selectedValue&&t.itemsSource[0].name===culture.Viewer.selectParameterValue&&setTimeout(()=>{i=!0;var e=t.selectedValue,r=t.selectedIndex;t.itemsSource.shift();t.collectionView.refresh();t.selectedValue=e;t.selectedIndex=r-1;i=!1})}},()=>this._validateNullValueOfParameter(r))})}return r}_updateParameters(e,t){var i;this.itemsSource.some(t=>{if(t.name===e.name){i=t;return!0}return!1});this._parameters[e.name]=i.value=e.value=((e,t)=>t&&isString(e)?e.split(/[\r\n]+/):e)(t,e.multiValue)}_generateBoolEditor(e){var t,i,r=[];if(e.nullable){i=document.createElement("div");(t=new ComboBox(i,{keyActionPrintCharacters:0,keyActionTab:0})).isEditable=!1;t.displayMemberPath="name";t.selectedValuePath="value";r.push({name:"None",value:null});r.push({name:"True",value:!0});r.push({name:"False",value:!1});t.itemsSource=r;t.selectedValue=e.value;t.lostFocus.addHandler(t=>{e.value!==t.selectedValue&&this._deferValidate(e.name,()=>this._updateParameters(e,t.selectedValue))})}else{(i=document.createElement("input")).type="checkbox";i.checked=e.value;this.addEventListener(i,"click",()=>{this._deferValidate(e.name,()=>this._updateParameters(e,i.checked))})}return i}_generateStringEditor(e){var t;if(e.multiValue){t=this._createTextarea(e.value,e.dataType);e.maxLength>0&&(t.maxLength=e.maxLength)}else{(t=document.createElement("input")).type="text";e.value&&(t.value=e.value);e.maxLength>0&&(t.maxLength=e.maxLength)}this._bindTextChangedEvent(t,e,"focusout");return t}_createTextarea(e,t){var i,r=document.createElement("textarea"),s=[];t!==_ParameterType.DateTime&&t!==_ParameterType.Time&&t!==_ParameterType.Date||(i=_ParametersEditor._dateTimeFormat);if(e&&e.length>0)if(i){for(let t=0;t<e.length;t++)s.push(Globalize.formatDate(new Date(e[t]),i));r.value=s.join("\n")}else r.value=e.join("\n");r.wrap="off";r.setAttribute("data-type",t.toString());return r}_bindTextChangedEvent(e,t,i="change,keyup,paste,input"){this.addEventListener(e,i,i=>{if(i.target&&i.target.disabled)return;let r=!1;if(isArray(t.value)){const i=e.value.split("\n");let s=0;for(let e=0;e<i.length;e++)t.value[e]!=i[e]&&(s+=1);r=0===s}t.value===e.value||r||this._deferValidate(t.name,()=>this._updateParameters(t,e.value),()=>{e.value&&!t.nullable&&this._validateNullValueOfParameter(e)})})}_generateNumberEditor(e){var t,i;if(e.multiValue){t=this._createTextarea(e.value,e.dataType);this._bindTextChangedEvent(t,e,"focusout")}else{t=document.createElement("div");(i=new InputNumber(t)).format=e.dataType===_ParameterType.Integer?"n0":"n2";i.isRequired=!e.nullable;e.value&&(i.value=e.dataType===_ParameterType.Integer?parseInt(e.value):parseFloat(e.value));i.lostFocus.addHandler(()=>{e.value!==i.value&&this._deferValidate(e.name,()=>this._updateParameters(e,i.value))})}return t}_generateDateTimeEditor(e){var t,i;if(e.multiValue){(t=this._createTextarea(e.value,e.dataType)).title=_ParametersEditor._dateTimeFormat;this._bindTextChangedEvent(t,e,"focusout")}else{t=document.createElement("div");e.dataType==_ParameterType.Date?i=new InputDate(t):e.dataType==_ParameterType.DateTime?(i=new InputDateTime(t)).timeStep=60:(i=new InputTime(t,{keyActionPrintCharacters:0,keyActionTab:0})).step=60;i.isRequired=!1;null!=e.value?i.value=new Date(e.value):i.value=null;i.isRequired=!e.nullable;i.valueChanged.addHandler(()=>{this._deferValidate(e.name,()=>this._updateParameters(e,i.value))})}return t}_validateNullValueOfParameter(e){const t=this._errors;if(t&&t.length)for(let i=0;i<t.length;i++){if(t[i].key!==e.parentElement.getAttribute(_ParametersEditor._paramIdAttr))continue;const r=e.parentElement.querySelector(".error");if(r){e.parentElement.removeChild(r);t.splice(i,1);break}}}}_ParametersEditor._paramIdAttr="param-id";_ParametersEditor._errorsHiddenCss=ViewerBaseClsNames.parameterHidden;_ParametersEditor._dateTimeFormat="MM/dd/yyyy HH:mm";export function _parseReportExecutionInfo(e){return JSON.parse(e,_statusJsonReviver)}export class _HistoryManager{constructor(){this._items=[{}];this._position=0;this.statusChanged=new Event}_onStatusChanged(){this.statusChanged.raise(this)}get current(){return this._items[this._position]}clear(){this._items=[{}];this._position=0;this._onStatusChanged()}add(){this._items.splice(++this._position);this._items.push({});this._onStatusChanged()}forward(){if(!this.canForward())return null;var e=this._items[++this._position];this._onStatusChanged();return e}backward(){if(!this.canBackward())return null;var e=this._items[--this._position];this._onStatusChanged();return e}canForward(){return this._position<this._items.length-1}canBackward(){return this._position>0}}export var _ArActionKind;!function(e){e.Hyperlink="hyperlink";e.Bookmark="bookmark";e.Drillthrough="drillthrough";e.Sort="sort";e.Toggle="toggle"}(_ArActionKind||(_ArActionKind={}));export var _ArParameterType;!function(e){e[e.String=0]="String";e[e.DateTime=1]="DateTime";e[e.Boolean=2]="Boolean";e[e.Integer=3]="Integer";e[e.Float=4]="Float"}(_ArParameterType||(_ArParameterType={}));export var _ArParameterState;!function(e){e[e.OK=0]="OK";e[e.ExpectValue=1]="ExpectValue";e[e.HasOutstandingDependencies=2]="HasOutstandingDependencies";e[e.ValuesValidationFailed=3]="ValuesValidationFailed";e[e.DynamicValuesUnavailable=4]="DynamicValuesUnavailable"}(_ArParameterState||(_ArParameterState={}));export class _DocumentService{constructor(e,t){this._url="";this._url=e.serviceUrl||"";this._documentPath=e.filePath;this._httpHandler=t}get serviceUrl(){return this._url}get filePath(){return this._documentPath}getStatus(){throw _abstractMethodExceptionText}setPageSettings(e){throw _abstractMethodExceptionText}getBookmark(e){throw _abstractMethodExceptionText}executeCustomAction(e){throw _abstractMethodExceptionText}load(e){throw _abstractMethodExceptionText}dispose(){throw _abstractMethodExceptionText}getOutlines(){throw _abstractMethodExceptionText}renderToFilter(e){throw _abstractMethodExceptionText}search(e){throw _abstractMethodExceptionText}getRenderToFilterUrl(e){throw _abstractMethodExceptionText}getExportedUrl(e){throw _abstractMethodExceptionText}getSupportedExportDescriptions(){throw _abstractMethodExceptionText}getFeatures(){throw _abstractMethodExceptionText}getPingTimeout(){return 100}getFileName(){var e=/([^\\/]+)$/.exec(this.filePath)[1];return e.lastIndexOf(".")>=0?e.substr(0,e.lastIndexOf(".")):e}downloadDataUrl(e){var t=new _Promise;this.downloadBlob(e).then(e=>{var i=new FileReader;i.onloadend=e=>{t.resolve(i.result)};i.readAsDataURL(e)});return t}downloadBlob(e){var t=new _Promise;this.httpRequest(e,{beforeSend:e=>{e.responseType="blob"}}).then(e=>{t.resolve(e.response)});return t}httpRequest(e,t){t=t||{};var i=new _Promise,r=t.error,s=t.success;t.error=e=>{isFunction(r)&&r.call(this,e);i.reject(e)};t.success=e=>{isFunction(s)&&s.call(this,e);i.resolve(e)};_httpRequest(e,this._httpHandler,t);return i}}export class _ReportServiceBase extends _DocumentService{render(){throw _abstractMethodExceptionText}}export class _ReportService extends _ReportServiceBase{constructor(e,t){super(e,t);this._reportName=e.reportName}get isCleared(){return!this._instanceId&&this._status==_ExecutionStatus.cleared}static getReportNames(e,t,i){return _ReportService.getReports(e,t,null,i).then(e=>{if(!e)return null;var t=[];e.items.forEach(e=>{e.type===CatalogItemType.Report&&t.push(e.name)});return t})}static getReports(e,t,i,r){var s=new _Promise;_httpRequest(_joinUrl(e,t),r,{data:i,success:e=>{s.resolve(JSON.parse(e.responseText))},error:e=>s.reject(e)});return s}get reportName(){return this._reportName}getBookmark(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.httpRequest(this._getReportInstancesUrl(_ReportService._bookmarkAction,e)).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}executeCustomAction(e){var t={};t[_ReportService._customActionParam]=e.data;return this.render(t)}getStatus(){var e=new _Promise;this.httpRequest(this._statusLocation).then(t=>{e.resolve(JSON.parse(t.responseText,_statusJsonReviver))});return e}getDocumentStatus(){return this._getReportCache()}_getReportCache(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl()).then(t=>{e.resolve(_parseReportExecutionInfo(t.responseText))});return e}getParameters(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl(_ReportService._parametersAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}_getUrlMainPart(){return _joinUrl(this.serviceUrl,this.filePath,this.reportName)}_getReportUrl(...e){return _joinUrl(this._getUrlMainPart(),_ReportService._reportCommand,e)}_getReportInstancesUrl(...e){return _joinUrl(this._getUrlMainPart(),_ReportService._instancesCommand,this._instanceId,e)}_checkReportController(e){if(null!=this.serviceUrl&&this.filePath){if(!(_strEndsWith(this.filePath,".flxr",!0)||_strEndsWith(this.filePath,".xml",!0))||this.reportName)return!0}e&&e.reject(_ReportService._invalidReportControllerError);return!1}_checkReportInstanceController(e){if(this._checkReportController(e)&&this._instanceId)return!0;e&&e.reject(_ReportService._invalidReportCacheControllerError);return!1}_getError(e){var t=e.responseText;try{t&&(t=JSON.parse(t))}finally{return t}}render(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.httpRequest(this._getReportInstancesUrl(_ReportService._renderAction),{method:"POST",data:e}).then(e=>{var i=202===e.status?{status:_ExecutionStatus.rendering}:_parseReportExecutionInfo(e.responseText);this._status=i.status;t.resolve(i)},e=>{t.reject(this._getError(e))});return t}renderToFilter(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.getRenderToFilterUrl(e).then(e=>{this.httpRequest(e,{cache:!0}).then(e=>{t.resolve(e)},e=>{t.reject(this._getError(e))})});return t}load(e){var t=new _Promise;if(!this._checkReportController(t))return t;this.httpRequest(this._getReportInstancesUrl(),{method:"POST",data:e}).then(e=>{var i=_parseReportExecutionInfo(e.responseText);this._instanceId=i.id;this._status=_ExecutionStatus.loaded;this._statusLocation=i.statusLocation;this._featuresLocation=i.featuresLocation;t.resolve(i)},e=>{t.reject(this._getError(e))});return t}cancel(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;if(this._status!==_ExecutionStatus.rendering){e.reject("Cannot execute cancel when the report is not rendering.");return e}this.httpRequest(this._getReportInstancesUrl(_ReportService._cancelAction),{method:"POST"}).then(t=>{var i=_parseReportExecutionInfo(t.responseText);this._status=i.status.status;e.resolve(i)});return e}dispose(){var e=new _Promise;if(!this._checkReportInstanceController())return e;this.httpRequest(this._getReportInstancesUrl(),{method:"DELETE"}).then(()=>{this._status=_ExecutionStatus.cleared;this._instanceId="";e.resolve()});return e}getOutlines(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl(_ReportService._outlinesAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}getRenderToFilterUrl(e){var t=new _Promise,i=null;if(this._checkReportInstanceController()){i=_appendQueryString(i=_disableCache(i=this._getReportInstancesUrl(_ReportService._exportAction)),e);t.resolve(i)}t.resolve(i);return t}getExportedUrl(e){return this.getRenderToFilterUrl(e)}search(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;this.httpRequest(this._getReportInstancesUrl(_ReportService._searchAction),{data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}setPageSettings(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;var i=this._getReportInstancesUrl(_ReportService._pageSettingsAction);this.httpRequest(i,{method:"PUT",data:e}).then(e=>{t.resolve(JSON.parse(e.responseText,_pageSettingsJsonReviver))},e=>{t.reject(this._getError(e))});return t}setParameters(e){var t=new _Promise;if(!this._checkReportInstanceController(t))return t;Object.keys(e).forEach(t=>{null===e[t]&&(e[t]="");e[t]instanceof Date&&(e[t]=Globalize.formatDate(e[t],"yyyy/MM/dd HH:mm:ss"))});var i=this._getReportInstancesUrl(_ReportService._parametersAction);this.httpRequest(i,{method:"PATCH",data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))},e=>{t.reject(this._getError(e))});return t}getSupportedExportDescriptions(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._getReportInstancesUrl(_ReportService._supportedFormatsAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}getFeatures(){var e=new _Promise;if(!this._checkReportInstanceController(e))return e;this.httpRequest(this._featuresLocation).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}}_ReportService._reportCommand="$report";_ReportService._instancesCommand="$instances";_ReportService._customActionParam="actionString";_ReportService._renderAction="render";_ReportService._searchAction="search";_ReportService._cancelAction="stop";_ReportService._outlinesAction="outlines";_ReportService._exportAction="export";_ReportService._parametersAction="parameters";_ReportService._bookmarkAction="bookmarks";_ReportService._pageSettingsAction="pagesettings";_ReportService._supportedFormatsAction="supportedformats";_ReportService._invalidReportControllerError="Cannot call the service without service url, document path or report name.";_ReportService._invalidReportCacheControllerError="Cannot call the service when service url is not set or the report is not loaded.";export class _DocumentSource{constructor(e,t){this._hasOutlines=!1;this._pageCount=0;this._isLoadCompleted=!1;this._isInstanceCreated=!1;this._isDisposed=!1;this._errors=[];this.pageCountChanged=new Event;this.disposed=new Event;this.pageSettingsChanged=new Event;this.loading=new Event;this.loadCompleted=new Event;this.queryLoadingData=new Event;this._httpHandler=t;this._service=this._createDocumentService(e);this._paginated=e.paginated}onQueryLoadingData(e){this.queryLoadingData.raise(this,e)}_updateIsLoadCompleted(e){if(this._isLoadCompleted!==e){this._isLoadCompleted=e;e&&this.onLoadCompleted()}}_updateIsDisposed(e){if(this._isDisposed!==e){this._isDisposed=e;this.onDisposed()}}_getIsDisposed(){return this._isDisposed}_checkHasOutlines(e){return e.hasOutlines}_checkIsLoadCompleted(e){return e.status===_ExecutionStatus.completed||e.status===_ExecutionStatus.stopped||e.status===_ExecutionStatus.loaded}get encodeRequestParams(){return!0}get executionDateTime(){return this._executionDateTime}get expiredDateTime(){return this._expiredDateTime}get errors(){return this._errors}get isLoadCompleted(){return this._isLoadCompleted}get isInstanceCreated(){return this._isInstanceCreated}get isDisposed(){return this._getIsDisposed()}get features(){return this._features}get pageSettings(){return this._pageSettings}onPageSettingsChanged(e){this.pageSettingsChanged.raise(this,e||new EventArgs)}onLoadCompleted(e){this.loadCompleted.raise(this,e||new EventArgs)}onLoading(e){this.loading.raise(this,e||new EventArgs)}onDisposed(e){this.disposed.raise(this,e||new EventArgs)}setPageSettings(e){return this._innerService.setPageSettings(e).then(e=>this._updatePageSettings(e))}_updatePageSettings(e){this._pageSettings=e;this.onPageSettingsChanged()}get _innerService(){return this._service}get paginated(){return this.pageSettings?this.pageSettings.paginated:this._paginated}get hasThumbnails(){return!0}get hasOutlines(){return this._hasOutlines}get pageCount(){return this._pageCount}get initialPosition(){return this._initialPosition}set initialPosition(e){this._initialPosition=e}get service(){return this._service}getSupportedExportDescriptions(){return this._innerService.getSupportedExportDescriptions()}getBookmark(e){return this._innerService.getBookmark(e)}executeCustomAction(e){return this._innerService.executeCustomAction(e)}getOutlines(){return this._innerService.getOutlines()}getFeatures(){return this._innerService.getFeatures().then(e=>{this._features=e})}dispose(){return this._innerService.dispose().then(()=>this._updateIsDisposed(!0))}load(){this.onLoading();var e={};null!=this._paginated&&(e["pageSettings.paginated"]=this.paginated);var t=new QueryLoadingDataEventArgs(e);this.onQueryLoadingData(t);return this._innerService.load(t.data).then(e=>{this._updateExecutionInfo(e)})}_updateExecutionInfo(e){if(null!=e){this._executionDateTime=this._getExecutionDateTime(e);this._expiredDateTime=this._getExpiredDateTime(e);this._updatePageSettings(e.pageSettings);this._features=e.features;this._isInstanceCreated=null!=e.status&&e.status.status!==_ExecutionStatus.notFound&&e.status.status!==_ExecutionStatus.cleared;this._updateDocumentStatus(e.status)}}_updateDocumentStatus(e){if(e){this._errors=e.errorList;this._initialPosition=e.initialPosition;this._updatePageCount(this._getPageCount(e));this._expiredDateTime=this._getExpiredDateTime(e);this._hasOutlines=this._checkHasOutlines(e);this._updateIsLoadCompleted(this._checkIsLoadCompleted(e))}}_getExecutionDateTime(e){return e.loadedDateTime}_getExpiredDateTime(e){return e.expiredDateTime}_getPageCount(e){return e.pageCount}_updatePageCount(e){if(this._pageCount!==e){this._pageCount=e;this.onPageCountChanged()}}getStatus(){return this._innerService.getStatus().then(e=>{this._updateDocumentStatus(e)})}_createDocumentService(e){throw _DocumentSource._abstractMethodException}onPageCountChanged(e){this.pageCountChanged.raise(this,e||new EventArgs)}export(e){this.getExportedUrl(e).then(t=>{this._innerService.downloadBlob(t).then(t=>{let i=e.format;i.match("bmp|emf|gif|html|jpeg|jpg|png|tif|tiff")&&"application/zip"===t.type&&(i="zip");"zip"===i&&"application/x-emf"===t.type&&(i="emf");saveFile(t,`${this._innerService.getFileName()}.${i}`)})})}print(e){if(isMobile())this.export({format:"pdf"});else{var t=new PrintDocument({title:"Document"});this.renderToFilter({format:"html"}).then(i=>{t.append(i.responseText);t._getDocument().close();window.setTimeout(()=>{this._removeScript(t);this._rotate(t,e);t.print()},100)})}}get httpHandler(){return this._httpHandler}_removeScript(e){var t,i,r=e._getDocument().querySelectorAll("script");for(t=0;t<r.length;t++)(i=r.item(t)).parentElement.removeChild(i)}_rotate(e,t){if(t&&t.length){var i,r,s,a,o,n,h,l=e._getDocument().querySelectorAll("svg");for(i=0;i<l.length;i++)if(r=t[i]){s=l[i];a=document.createElementNS("http://www.w3.org/2000/svg","g");for(;s.hasChildNodes();)a.appendChild(s.firstChild);s.appendChild(a);n=_getRotatedSize(o={width:new _Unit(s.width.baseVal.value),height:new _Unit(s.height.baseVal.value)},r);(h=s.parentNode).style.width=n.width.valueInPixel+"px";h.style.height=n.height.valueInPixel+"px";s.setAttribute("width",n.width.valueInPixel+"px");s.setAttribute("height",n.height.valueInPixel+"px");_transformSvg(l[i],o.width.valueInPixel,o.height.valueInPixel,1,r)}}}renderToFilter(e){return this._innerService.renderToFilter(e)}getRenderToFilterUrl(e){return this._innerService.getRenderToFilterUrl(e)}getExportedUrl(e,t=!1){var i=new _Promise;this._innerService.getExportedUrl(e).then(e=>{var r=new RequestEventArgs(e,null);t&&this.httpHandler.beforeSend(r);i.resolve(r.url)});return i}search(e){return this._innerService.search(e)}}_DocumentSource._abstractMethodException="It is an abstract method, please implement it.";export class _ReportSourceBase extends _DocumentSource{constructor(){super(...arguments);this._status=_ExecutionStatus.notFound;this.statusChanged=new Event}get autoRun(){return!0}get hasParameters(){throw _DocumentSource._abstractMethodException}get status(){return this._status}set status(e){if(e!==this._status){this._status=e;this.onStatusChanged()}}getParameters(){throw _DocumentSource._abstractMethodException}setParameters(e){throw _DocumentSource._abstractMethodException}render(){return this._innerService.render().then(e=>this._updateDocumentStatus(e))}executeCustomAction(e){return this._innerService.executeCustomAction(e).then(e=>this._updateDocumentStatus(e))}onStatusChanged(e){this.statusChanged.raise(this,e)}get _innerService(){return this.service}_updateDocumentStatus(e){e&&(this.status=e.status);super._updateDocumentStatus(e)}}export class _Report extends _ReportSourceBase{constructor(e,t){super(e,t);this._hasParameters=!1}static getReportNames(e,t,i){return _ReportService.getReportNames(e,t,i)}static getReports(e,t,i,r){isBoolean(i)&&(i={recursive:i});return _ReportService.getReports(e,t,i,r)}get reportName(){return this._innerService?this._innerService.reportName:null}get hasParameters(){return this._hasParameters}load(){return super.load()}cancel(){return this._innerService.cancel().then(e=>this._updateDocumentStatus(e))}dispose(){return super.dispose()}setParameters(e){return this._innerService.setParameters(e).then(e=>{this._parameters=e})}getParameters(){return this._innerService.getParameters().then(e=>{this._parameters=e})}_getIsDisposed(){return super._getIsDisposed()||this._innerService.isCleared}_updateExecutionInfo(e){if(null!=e&&!this.isDisposed){this._hasParameters=!!e.hasParameters;super._updateExecutionInfo(e)}}_checkIsLoadCompleted(e){return e.status===_ExecutionStatus.completed||e.status===_ExecutionStatus.stopped}_createDocumentService(e){return new _ReportService(e,this.httpHandler)}get _innerService(){return this.service}}export class _PdfDocumentSource extends _DocumentSource{constructor(){super(...arguments);this._status=_ExecutionStatus.notFound}get status(){return this._status}get _innerService(){return this.service}_createDocumentService(e){return new _PdfDocumentService(e,this.httpHandler)}load(){return super.load()}_updateStatus(e){this._status!==e&&(this._status=e)}getStatus(){var e=new QueryLoadingDataEventArgs;this.onQueryLoadingData(e);return this._innerService.getStatus(e.data).then(e=>this._updateDocumentStatus(e))}renderToFilter(e){var t=new QueryLoadingDataEventArgs;this.onQueryLoadingData(t);return this._innerService.renderToFilter(e,t.data)}_updateDocumentStatus(e){if(null!=e){this._updateStatus(e.status);super._updateDocumentStatus(e)}}}export class _PdfDocumentService extends _DocumentService{_getPdfUrl(...e){return _joinUrl(this.serviceUrl,this.filePath,_PdfDocumentService._pdfCommand,e)}_getPdfStatus(e){var t=new _Promise;if(!this._checkPdfController(t))return t;this.httpRequest(this._getPdfUrl(),{data:e}).then(e=>{var i=_parseExecutionInfo(e.responseText);this._status=_ExecutionStatus.loaded;this._statusLocation=i.statusLocation;this._featuresLocation=i.featuresLocation;t.resolve(i)},e=>{t.reject(e.statusText)});return t}_checkPdfController(e){if(null!=this.serviceUrl&&this.filePath)return!0;e&&e.reject(_PdfDocumentService._invalidPdfControllerError);return!1}dispose(){var e=new _Promise;e.resolve();return e}load(e){return this._getPdfStatus(e)}getStatus(e){var t=new _Promise;this.httpRequest(this._statusLocation,{data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}renderToFilter(e,t){var i=new _Promise;if(!this._checkPdfController(i))return i;this.getRenderToFilterUrl(e).then(e=>{this.httpRequest(e,{data:t,cache:!0}).then(e=>{i.resolve(e)})});return i}getRenderToFilterUrl(e){var t=new _Promise,i=null;this._checkPdfController()&&(i=_appendQueryString(i=_disableCache(i=this._getPdfUrl(_PdfDocumentService._exportAction)),e));t.resolve(i);return t}getExportedUrl(e){return this.getRenderToFilterUrl(e)}getSupportedExportDescriptions(){var e=new _Promise;if(!this._checkPdfController(e))return e;this.httpRequest(this._getPdfUrl(_PdfDocumentService._supportedFormatsAction)).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}getFeatures(){var e=new _Promise;if(!this._checkPdfController(e))return e;this.httpRequest(this._featuresLocation).then(t=>{e.resolve(JSON.parse(t.responseText))});return e}search(e){var t=new _Promise;if(!this._checkPdfController(t))return t;this.httpRequest(this._getPdfUrl(_PdfDocumentService._searchAction),{data:e}).then(e=>{t.resolve(JSON.parse(e.responseText))});return t}}_PdfDocumentService._pdfCommand="$pdf";_PdfDocumentService._exportAction="export";_PdfDocumentService._supportedFormatsAction="supportedformats";_PdfDocumentService._searchAction="search";_PdfDocumentService._invalidPdfControllerError="Cannot call the service when service url is not set or the pdf is not loaded.";export function _parseExecutionInfo(e){return JSON.parse(e,_statusJsonReviver)}export class _SearchManager{constructor(){this._currentIndex=-1;this.currentChanged=new Event;this.searchStarted=new Event;this.searchCompleted=new Event;this.resultsCleared=new Event;this.textChanged=new Event}get current(){return this._currentIndex<0?null:this._searchResult[this._currentIndex]}get currentIndex(){return this._currentIndex}set currentIndex(e){e!==this._currentIndex&&this._getSearchResults().then(()=>{this._currentIndex=e;this._onCurrentChanged()})}get documentSource(){return this._documentSource}set documentSource(e){this._documentSource=e;this.clear()}get matchCase(){return this._matchCase}set matchCase(e){if(this._matchCase!==e){this._matchCase=e;this._clearResults()}}get searchResult(){return this._searchResult}get text(){return this._text}set text(e){if(this._text!==e){this._text=e;this._onTextChanged();this._clearResults()}}get wholeWord(){return this._wholeWord}set wholeWord(e){if(this._wholeWord!==e){this._wholeWord=e;this._clearResults()}}clear(){this._matchCase=!1;this._wholeWord=!1;this._currentIndex=-1;this.text=null}search(e){this._getSearchResults().then(()=>{var t=this._searchResult.length;if(e){this._currentIndex--;this._currentIndex<0&&(this._currentIndex=t-1)}else{this._currentIndex++;this._currentIndex>=t&&(this._currentIndex=0)}this._currentIndex=Math.max(Math.min(this._currentIndex,t-1),0);this._onCurrentChanged()})}_clearResults(){this._currentIndex=-1;this._searchResult=null;this._onResultsCleared()}_getSearchResults(){var e=new _Promise;if(this._searchResult){e.resolve(this._searchResult);return e}if(!this.documentSource){e.reject(culture.Viewer.cannotSearch);return e}if(null==this._text||0===this._text.length)return e;this._onSearchStarted();return this.documentSource.search({text:this.documentSource.encodeRequestParams?encodeURIComponent(this.text):this.text,matchCase:this.matchCase,wholeWord:this.wholeWord}).then(e=>{this._searchResult=e;this._onSearchCompleted()})}_onCurrentChanged(){this.currentChanged.raise(this)}_onSearchStarted(){this.searchStarted.raise(this)}_onSearchCompleted(){this.searchCompleted.raise(this)}_onResultsCleared(){this.resultsCleared.raise(this)}_onTextChanged(){this.textChanged.raise(this)}dispose(){this._documentSource=null;this._searchResult=null}}export class _Page{constructor(e,t,i){this._content=null;this._rotateAngle=_RotateAngle.NoRotate;this._pendingContent=!1;this.linkClicked=new Event;this._documentSource=e;this._index=t;this._size=i}get index(){return this._index}get size(){return this._size}get rotateAngle(){return this._rotateAngle}set rotateAngle(e){this._rotateAngle=e}get content(){return this._content}get pendingContent(){return this._pendingContent}getContent(){let e=this._contentPromise;if(e&&!e.isFinished)return e;this._contentPromise=e=new _Promise;var t=this._documentSource;if(!t){e.reject(culture.Viewer.cannotRenderPageNoDoc);return e}if(this._content){e.resolve(this._content);return e}this._pendingContent=!0;t.renderToFilter({format:"html",paged:t.paginated,outputRange:(this.index+1).toString()}).then(i=>{if(this._documentSource===t){var r=document.createElement("div");setInnerHTMLSafe(r,this._processSvgResponse(this._addGlobalUniqueId(i.responseText)));for(var s=r.querySelector("svg"),a=document.createElementNS("http://www.w3.org/2000/svg","g");s.hasChildNodes();)a.appendChild(s.firstChild);s.appendChild(a);this._size={width:new _Unit(s.width.baseVal.value),height:new _Unit(s.height.baseVal.value)};this._content=s;this._processActionLinks(s,e=>{_addEvent(e,"click",()=>{this._onLinkClicked(new _LinkClickedEventArgs(e))})});this._pendingContent=!1;e.resolve(this._content)}}).catch(()=>{this._pendingContent=!1});return e}_processSvgResponse(e){return e}_extractSize(e){if(e){const t=e.querySelector("svg");if(t)return{width:new _Unit(t.width.baseVal.value),height:new _Unit(t.height.baseVal.value)}}return null}_onLinkClicked(e){this.linkClicked.raise(this,e)}_processActionLinks(e,t){const i=e.querySelectorAll("a");for(let e=0;e<i.length;e++){const r=i.item(e),s=r.href?r.href.baseVal:"";if(s.indexOf("navigate")>0){const e=_Page._bookmarkReg.exec(s);if(e)if(e[1]&&e[1].length>0){r.href.baseVal=_Page._invalidHref;r.setAttribute(_Page._bookmarkAttr,e[1]);t(r)}else r.removeAttribute("xlink:href")}else if(_Page._customActionReg.test(s)){r.href.baseVal=_Page._invalidHref;r.setAttribute(_Page._customActionAttr,s.substr(3));t(r)}}}_addGlobalUniqueId(e){var t=Date.now().toString();return e=(e=e.replace(_Page._idReg,`$1$2${t}$3$4`)).replace(_Page._idReferReg,`$1$2${t}$3$4`)}}_Page._bookmarkReg=/javascript:navigate\(['|"](.*)['|"]\)/;_Page._bookmarkAttr="bookmark";_Page._customActionReg=/^CA:/;_Page._customActionAttr="customAction";_Page._idReg=/(<[^>]+)(id=['|"])(\w+)(['|"])/g;_Page._idReferReg=/(<[^>]+)(url\(#)(\w+)(\))/g;_Page._invalidHref="javascript:void(0)";export class _ArPage extends _Page{_processSvgResponse(e){e=super._processSvgResponse(e);var t=(new DOMParser).parseFromString(e,"text/xml");return e=(new XMLSerializer).serializeToString(t)}_processActionLinks(e,t){var i,r=e.querySelectorAll("rect[arsvg\\:data-action-type]");for(i=0;i<r.length;i++)t(r[i])}}export class _PageViewBase extends Control{constructor(e){super(e);this._startX=null;this._startY=null;this._panMode=!1;this._pageIndex=-1;this._zoomFactor=1;this._zoomMode=ZoomMode.Custom;this._zoomModeUpdating=!1;this._movingPromise=new _Promise;this.pageIndexChanged=new Event;this.zoomFactorChanged=new Event;this.zoomModeChanged=new Event;this.positionChanged=new Event;this.rotateAngleChanged=new Event;this.pageLoaded=new Event;this._zoomFactorChangeInitiated=!1;this._zoomModeChangeInitiated=!1;var t;t=this.getTemplate();this.applyTemplate(ViewerBaseClsNames.pageview,t,this._getTemplateParts());this._fBorderBoxMode="border-box"===getComputedStyle(e).boxSizing;this._init()}static get controlTemplate(){_PageViewBase._ctrlTemplate||(_PageViewBase._ctrlTemplate=`<div class="${ViewerBaseClsNames.pagesWrapper}" wj-part="pages-wrapper"></div>`);return _PageViewBase._ctrlTemplate}static set controlTemplate(e){_PageViewBase._ctrlTemplate=e}_getTemplateParts(){return{_pagesWrapper:"pages-wrapper"}}_getPagesContainer(){return this.hostElement}_init(){this._bindEvents()}dispose(){this._touchManager&&this._touchManager.dispose();super.dispose()}_bindTouchEvents(e){e.touchStart.addHandler(()=>{this.hostElement.focus()});e.panMove.addHandler((t,i)=>{e.hostElement.scrollTop-=i.clientDelta.y;e.hostElement.scrollLeft-=i.clientDelta.x});e.pinch.addHandler(this._zoomByPinch,this)}_initTouchEvents(){var e=this._pagesWrapper.parentElement,t=new _TouchManager(e);this._touchManager=t;this._bindTouchEvents(t)}get _borderBoxMode(){return this._fBorderBoxMode}_zoomByPinch(e,t){t.preventDefault();if(t.type==_TouchEventType.Move){var i=getElementRect(e.contentElement),r=getComputedStyle(e.contentElement),s=parseInt(r.marginTop),a=parseInt(r.marginLeft),o=_pointMove(!1,t.preCenterClient,i.left-a,i.top-s);this._zoom(e.hostElement,t.zoom,o,t.centerClientDelta)}}_getFixedPosition(e){return new Point(_PageViewBase._pageMargin,_PageViewBase._pageMargin+this._getAbovePageCount(e.y)*_PageViewBase._pageMargin)}_getAbovePageCount(e){return 0}_zoom(e,t,i,r){var s=_pointMove(!1,i,e.scrollLeft,e.scrollTop),a=this._getFixedPosition(i),o=this.zoomFactor;this.zoomFactor=this.zoomFactor*t;var n=this.zoomFactor/o,h=new Point((i.x-a.x)*n+a.x,(i.y-a.y)*n+a.y),l=_pointMove(!0,s,r),c=_pointMove(!1,h,l);e.scrollTop=Math.round(c.y);e.scrollLeft=Math.round(c.x)}get pageIndex(){return this._pageIndex}get pages(){return this._pages}set pages(e){this._pages=e;this._reserveViewPage()}get scrollTop(){return this.hostElement.scrollTop}get scrollLeft(){return this.hostElement.scrollLeft}get zoomFactor(){return this._zoomFactor}set zoomFactor(e){e=Math.round(100*Math.max(.05,Math.min(10,e)))/100;if(this._zoomFactor!=e){this._zoomModeChangeInitiated||(this._zoomFactorChangeInitiated=!0);var t=this._zoomFactor,i=this._zoomMode;this._zoomFactor=e;this._updatePageViewTransform();this._zoomModeUpdating||(this._zoomFactor===Math.round(100*this._calcZoomToViewFactor())/100?this.zoomMode=ZoomMode.WholePage:this._zoomFactor===Math.round(100*this._calcZoomToViewWidthFactor())/100?this.zoomMode=ZoomMode.PageWidth:this.zoomMode=ZoomMode.Custom);if(this._zoomFactorChangeInitiated){this._onZoomFactorChanged(t,this.zoomFactor);i!==this.zoomMode&&this._onZoomModeChanged(i,this.zoomMode);this._zoomFactorChangeInitiated=!1}}}get zoomMode(){return this._zoomMode}set zoomMode(e){if(this._zoomMode!=e){this._zoomModeUpdating=!0;this._zoomFactorChangeInitiated||(this._zoomModeChangeInitiated=!0);var t=this._zoomMode,i=this._zoomFactor;this._zoomMode=e;this._calcZoomModeZoom(e);this._zoomModeUpdating=!1;if(this._zoomModeChangeInitiated){this._onZoomModeChanged(t,this.zoomMode);i!==this.zoomFactor&&this._onZoomFactorChanged(i,this.zoomFactor);this._zoomModeChangeInitiated=!1}}}get panMode(){return this._panMode}set panMode(e){this._panMode!=e&&(this._panMode=e)}_bindEvents(){this.addEventListener(document,"mousemove",e=>{null!==this._startX&&null!==this._startY&&this._panning(e)});this.addEventListener(document,"mouseup",()=>{this._stopPanning()});this._initTouchEvents()}_startPanning(e){this._startX=e.screenX;this._startY=e.screenY}_panning(e){var t=this._getPagesContainer();t.scrollLeft+=this._startX-e.screenX;t.scrollTop+=this._startY-e.screenY;this._startX=e.screenX;this._startY=e.screenY}_stopPanning(){this._startX=null;this._startY=null}_onPageIndexChanged(){this.pageIndexChanged.raise(this)}_onZoomFactorChanged(e,t){this.zoomFactorChanged.raise(this,{oldValue:e,newValue:t})}_onZoomModeChanged(e,t){this.zoomModeChanged.raise(this,{oldValue:e,newValue:t})}_onPositionChanged(){this.positionChanged.raise(this)}_onRotateAngleChanged(){this.rotateAngleChanged.raise(this)}_onPageLoaded(e,t){this.pageLoaded.raise(this,new PageLoadedEventArgs(e,t))}_renderViewPage(e,t,i){var r,s=new _Promise;t=t<0?0:t;this._targetRenderPageIndex=t;if(!e){s.reject(culture.Viewer.cannotRenderPageNoViewPage);return s}_removeChildren(e);if(this._pages[t].content){const i=this._pages[t].content;e.appendChild(i);this._setPageTransform(e,t);s.resolve(t);return s}(r=document.createElement("div")).className=ViewerBaseClsNames.loading;r.style.height=e.style.height;r.style.lineHeight=e.style.height;r.innerHTML=culture.Viewer.loading;e.appendChild(r);this._pages[t].pendingContent?s.resolve(t):this._pages[t].getContent().then(r=>{if(this.pages){if(i||this._targetRenderPageIndex===t){const i=r;_removeChildren(e);e.appendChild(i);this._setPageTransform(e,t);this._onPageLoaded(t,e)}s.resolve(t)}}).catch(e=>{r.innerHTML=_getErrorMessage(e)});return s}_reserveViewPage(){throw culture.Viewer.abstractMethodException}_getViewPortHeight(){var e=this._pagesWrapper.currentStyle||window.getComputedStyle(this._pagesWrapper);return this.hostElement.offsetHeight-parseFloat(e.marginBottom)-parseFloat(e.marginTop)}_getViewPortWidth(){var e=this._pagesWrapper.currentStyle||window.getComputedStyle(this._pagesWrapper);return this.hostElement.offsetWidth-parseFloat(e.marginLeft)-parseFloat(e.marginRight)}_setPageTransform(e,t){var i;if(e&&!(t<0)){var r=this._getPageSize(t),s=this._pages[t].rotateAngle;e.style.height=r.height.valueInPixel*this._zoomFactor+"px";e.style.width=r.width.valueInPixel*this._zoomFactor+"px";if(i=e.querySelector("g")){i.parentNode.setAttribute("height",r.height.valueInPixel*this._zoomFactor+"px");i.parentNode.setAttribute("width",r.width.valueInPixel*this._zoomFactor+"px");_transformSvg(i.parentNode,this._pages[t].size.width.valueInPixel,this._pages[t].size.height.valueInPixel,this._zoomFactor,s)}}}_addViewPage(){var e=document.createElement("div");e.className=ViewerBaseClsNames.viewPage;this.addEventListener(e,"mousedown",e=>{this._panMode&&this._startPanning(e)});this.addEventListener(e,"dragstart",e=>{this._panMode&&e.preventDefault()});this._pagesWrapper.appendChild(e);return e}_getPageSize(e){if(e<0||e>=this._pages.length)return{width:new _Unit(1),height:new _Unit(1)};var t=this._pages[e];return _getRotatedSize(t.size,t.rotateAngle)}_render(e){throw culture.Viewer.abstractMethodException}_moveToPagePosition(e){throw culture.Viewer.abstractMethodException}_updatePageViewTransform(){throw culture.Viewer.abstractMethodException}_updatePageIndex(e){if(this.pages){e=this.resolvePageIndex(e);if(this._pageIndex!==e){this._pageIndex=e;this._onPageIndexChanged()}}}moveToPage(e){return this.moveToPosition({pageIndex:e})}resolvePageIndex(e){return Math.min((this.pages||[]).length-1,Math.max(e,0))}moveToPosition(e){this._movingPromise.isFinished||this._movingPromise.cancel();this._movingPromise=new _Promise;var t=e.pageIndex||0,i=this.pageIndex;if(!this.pages||t<0){this._movingPromise.resolve(t);return this._movingPromise}t=this.resolvePageIndex(t);e.pageIndex=t;if(t!==i){this._updatePageIndex(t);this._movingPromise=this._render(t)}else this._movingPromise.resolve(t);return this._movingPromise.then(()=>{if(this.pages){e.samePage=t===i;this._moveToPagePosition(e)}}).then(e=>t).then(()=>{this._calcZoomModeZoom();this._onPositionChanged()})}_calcZoomModeZoom(e){this._zoomModeUpdating=!0;switch(e=null==e?this.zoomMode:e){case ZoomMode.PageWidth:this._zoomToViewWidth();break;case ZoomMode.WholePage:this._zoomToView()}this._zoomModeUpdating=!1}_zoomToView(){this._getPageSize(this.pageIndex)&&(this.zoomFactor=this._calcZoomToViewFactor())}_calcZoomToViewFactor(){const e=this._getViewPortHeight(),t=this._getViewPortWidth(),i=this._getPageSize(this.pageIndex);return Math.min(e/i.height.valueInPixel,t/i.width.valueInPixel)}_zoomToViewWidth(){throw culture.Viewer.abstractMethodException}_calcZoomToViewWidthFactor(){throw culture.Viewer.abstractMethodException}_getTransformedPoint(e,t,i){t/=this.zoomFactor;i/=this.zoomFactor;var r=this.pages[e],s=r.size;switch(r.rotateAngle){case _RotateAngle.Rotation90:{const e=t;t=s.height.valueInPixel-i;i=e;break}case _RotateAngle.Rotation180:t=s.height.valueInPixel-t;i=s.width.valueInPixel-i;break;case _RotateAngle.Rotation270:{const e=t;t=i;i=s.width.valueInPixel-e;break}}return new Point(i,t)}_hitTestPagePosition(e){if(!e||e.pageIndex<0)return null;var t=e.y,i=e.x,r=e.pageIndex;t-=_PageViewBase._pageMargin+_PageViewBase._pageBorderWidth;i-=_PageViewBase._pageMargin+_PageViewBase._pageBorderWidth;var s=this._getTransformedPoint(e.pageIndex,t,i);t=s.y;i=s.x;var a=_pixelToTwip(t),o=_pixelToTwip(i),n=this.pages[r].size;return{pageIndex:r,x:o,y:a,hitWorkingArea:t>=0&&t<=n.height.valueInPixel&&i>=0&&i<=n.width.valueInPixel}}rotatePageTo(e,t){this._pages[e].rotateAngle=t;this._updatePageViewTransform();this._onRotateAngleChanged()}hitTest(e,t){if(this._pointInViewPanelClientArea(e,t)){const i=this._panelViewPntToPageView(e,t);return this._hitTestPagePosition(i)}return null}resetPages(){this._pageIndex=-1;this._pages=null;_removeChildren(this._pagesWrapper);this._addViewPage();this.invalidate()}refresh(e=!0){super.refresh(e);if(!(!this.pages||0==this.pages.length||this.pageIndex<0||this.pageIndex>=this.pages.length)){this._render(this.pageIndex);this._calcZoomModeZoom()}}isPageContentLoaded(e){var t=this.pages;return!!t&&e>=0&&e<t.length&&!!t[e].content}_hitTestPageIndex(e){throw culture.Viewer.abstractMethodException}_pointInViewPanelClientArea(e,t){throw culture.Viewer.abstractMethodException}_panelViewPntToPageView(e,t){throw culture.Viewer.abstractMethodException}}_PageViewBase._pageMargin=30;_PageViewBase._pageBorderWidth=1;_PageViewBase._ctrlTemplate="";export class _ContinuousPageView extends _PageViewBase{constructor(e){super(e);addClass(e,ViewerBaseClsNames.pageViewContinuous)}static get controlTemplate(){_ContinuousPageView._ctrlTemplate||(_ContinuousPageView._ctrlTemplate=_PageViewBase.controlTemplate);return _ContinuousPageView._ctrlTemplate}static set controlTemplate(e){_ContinuousPageView._ctrlTemplate=e}_init(){super._init();this.addEventListener(this.hostElement,"click",()=>{this.hostElement.focus()});this.addEventListener(this.hostElement,"scroll",()=>{this._onPositionChanged();clearTimeout(this._scrollingTimer);this._scrollingTimer=setTimeout(()=>{this._ensurePageIndexPosition()},200)});this.zoomFactorChanged.addHandler(()=>{clearTimeout(this._zoomFactorTimer);this._zoomFactorTimer=setTimeout(()=>{this._ensurePageIndexPosition()},200)})}dispose(){clearTimeout(this._scrollingTimer);clearTimeout(this._zoomFactorTimer);this._disposeBodyStopSwipe&&this._disposeBodyStopSwipe();super.dispose()}_stopSwip(){this._swipeSpeedReducer&&this._swipeSpeedReducer.stop()}_bindTouchEvents(e){super._bindTouchEvents(e);e.touchStart.addHandler(this._stopSwip,this);e.swipe.addHandler((t,i)=>{this._swipeSpeedReducer||(this._swipeSpeedReducer=new _SpeedReducer);this._swipeSpeedReducer.start(i.speed.x,i.speed.y,(t,i)=>{var r=e.hostElement.scrollLeft,s=e.hostElement.scrollTop;e.hostElement.scrollLeft-=t;e.hostElement.scrollTop-=i;r==e.hostElement.scrollLeft&&s==e.hostElement.scrollTop&&this._stopSwip()})});var t=new _TouchManager(document.body,!1),i=this._stopSwip.bind(this);this.addEventListener(document.body,"mousedown",i,!0);t.touchStart.addHandler(i);this._disposeBodyStopSwipe=()=>{this._stopSwip();_removeEvent(document.body,"mousedown",i);t.touchStart.removeHandler(i);t.dispose();this._disposeBodyStopSwipe=null}}_getAbovePageCount(e){return this._hitTestPageIndex(e)}refresh(e){this._stopSwip();super.refresh(e)}_hitTestPageIndex(e){if(!this.pages)return this.pageIndex;for(var t=0,i=0;t<this.pages.length;t++)if(e<(i+=this._getPageSize(t).height.valueInPixel*this.zoomFactor+_PageViewBase._pageMargin)){if(i-e<1)continue;break}return Math.min(t,this.pages.length-1)}_guessPageIndex(){const e=Math.abs(this.hostElement.scrollHeight-this.hostElement.clientHeight-this.hostElement.scrollTop)<=1;return this.pages&&e?this.pages.length-1:this._hitTestPageIndex(this.hostElement.scrollTop)}_render(e){const t=this.pages.length,i=e-_ContinuousPageView._preFetchPageCount,r=e+_ContinuousPageView._preFetchPageCount,s=[],a=r>t-1?t-1:r;for(let e=i<0?0:i;e<=a;e++)s.push(this._renderViewPage(this._pagesWrapper.querySelectorAll("."+ViewerBaseClsNames.viewPage).item(e),e,!0));return new _CompositedPromise(s)}_moveToPagePosition(e){this._stopSwip();let t,i=0,r=0;const s=!e.pageBounds,a=e.pageBounds||{x:0,y:0,width:0,height:0},o=s?0:_PageViewBase._pageMargin,n=this.pages[this.pageIndex];for(let r=0;r<e.pageIndex;r++){t=this._getPageSize(r).height.valueInPixel*this.zoomFactor;i+=t+_PageViewBase._pageMargin;this._borderBoxMode||(i+=2*_PageViewBase._pageBorderWidth)}const h=_getTransformedPosition(a,n.size,s?_RotateAngle.NoRotate:n.rotateAngle,this.zoomFactor);i+=h.y+o+1;r+=h.x+o;r+=this._getPageViewOffsetLeft(e.pageIndex);this.hostElement.scrollTop=i;this.hostElement.scrollLeft=r}_pointInViewPanelClientArea(e,t){return e>=0&&t>=0&&e<this.hostElement.clientWidth&&t<this.hostElement.clientHeight}_panelViewPntToPageView(e,t){let i=this.hostElement.scrollTop+t,r=0;if(this.hostElement.scrollLeft>0)r=this.hostElement.scrollLeft+e;else{const t=this.hostElement.getBoundingClientRect();r=e-(this._pagesWrapper.getBoundingClientRect().left-t.left)+_PageViewBase._pageMargin}const s=this._hitTestPageIndex(i);if(s<0)return null;r-=this._getPageViewOffsetLeft(s);for(let e=0;e<s;e++){i-=this._getPageSize(e).height.valueInPixel*this.zoomFactor+_PageViewBase._pageMargin;this._borderBoxMode||(i-=2*_PageViewBase._pageBorderWidth)}return{x:r,y:i,pageIndex:s}}_reserveViewPage(){_removeChildren(this._pagesWrapper);for(let e=0;e<(this.pages||[]).length;e++){const t=this._addViewPage(),i=this._getPageSize(e);t.style.height=i.height.valueInPixel*this.zoomFactor+"px";t.style.width=i.width.valueInPixel*this.zoomFactor+"px"}}_updatePageViewTransform(){if(!this.pages||!this.pages.length)return;const e=this._pagesWrapper.querySelectorAll("."+ViewerBaseClsNames.viewPage);for(let t=0;t<e.length;t++)this._setPageTransform(e.item(t),t)}_zoomToViewWidth(){this.pages&&0!=this.pages.length&&(this.zoomFactor=this._calcZoomToViewWidthFactor())}_calcZoomToViewWidthFactor(){if(!this.pages||0==this.pages.length)return;const e=this._getViewPortHeight();let t=this._getViewPortWidth(),i=0,r=0;for(let e=0;e<this.pages.length;e++){const t=this._getPageSize(e);t.width.valueInPixel>i&&(i=t.width.valueInPixel);r+=t.height.valueInPixel}t/i>e/r&&(t-=_Scroller.getScrollbarWidth());return t/i}_ensurePageIndexPosition(){var e=this._guessPageIndex();if(this.pageIndex!==e){this._render(e);this._updatePageIndex(e)}}_getPageViewOffsetLeft(e){var t=this._pagesWrapper.querySelectorAll("."+ViewerBaseClsNames.viewPage).item(e);return t?t.offsetLeft-this._pagesWrapper.offsetLeft:0}}_ContinuousPageView._preFetchPageCount=3;_ContinuousPageView._ctrlTemplate="";export class _SinglePageView extends _PageViewBase{constructor(e){super(e);this._innerNavigating=!1;this._virtualScrollMode=!0;addClass(e,ViewerBaseClsNames.pageViewSingle)}static get controlTemplate(){_SinglePageView._ctrlTemplate||(_SinglePageView._ctrlTemplate=`<div class="${ViewerBaseClsNames.pageViewPagesContainer}" wj-part="pages-container" tabindex="0"> <div class="${ViewerBaseClsNames.pagesWrapper}" wj-part="pages-wrapper"></div></div><div class="${ViewerBaseClsNames.pageViewVScroller}" wj-part="vscroller" tabindex="-1"></div> `);return _SinglePageView._ctrlTemplate}static set controlTemplate(e){_SinglePageView._ctrlTemplate=e}_init(){super._init();this._initScroller();this._initEvents()}_initScroller(){new _VScroller(this._vscroller).valueChanged.addHandler(()=>{this._timeoutId=setTimeout(()=>this._doScrollerValueChanged())})}_initEvents(){this.addEventListener(this._pagesContainer,"wheel",e=>{this._doContainerWheel(e)});this.addEventListener(this._pagesContainer,"scroll",()=>{this._doContainerScroll()});this.addEventListener(this._pagesContainer,"keydown",()=>{this._doContainerKeyDown()});this.addEventListener(this._pagesContainer,"click",()=>{this._pagesContainer.focus()})}_bindTouchEvents(e){super._bindTouchEvents(e);this._touchManager=e;this._swipeHandler=(e,t)=>{switch(t.direction){case _TouchDirection.Down:{const e=this.resolvePageIndex(this.pageIndex-1);e!=this.pageIndex&&this.moveToPage(e);break}case _TouchDirection.Up:{const e=this.resolvePageIndex(this.pageIndex+1);e!=this.pageIndex&&this.moveToPage(e);break}}};e.swipe.addHandler(this._swipeHandler)}_getTemplateParts(){return{_pagesWrapper:"pages-wrapper",_pagesContainer:"pages-container",_vscroller:"vscroller"}}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(const e in i){const s=i[e];this[e]=r.querySelector(`[wj-part="${s}"]`);null==this[e]&&r.getAttribute("wj-part")==s&&(this[e]=t);if(null==this[e])throw`Missing template part: "${s}"`}return r}get virtualScrollMode(){return this._virtualScrollMode}set virtualScrollMode(e){if(this._virtualScrollMode!==e){this._virtualScrollMode=e;this.invalidate()}}get _isScrollerVisible(){return this._virtualScrollMode&&this.pages&&this.pages.length>1}get _scroller(){return Control.getControl(this._vscroller)}get _hasPageVScrollBar(){return this._hasScrollbar(this._pagesContainer)}get _hasPageHScrollBar(){return this._hasScrollbar(this._pagesContainer,!0)}_getPagesContainer(){return this._pagesContainer}_getPageHeightWithoutZoom(e){var t=this._pagesContainer.clientHeight,i=this._getPageSize(e).height.valueInPixel+2*_PageViewBase._pageMargin;return Math.max(i,t)}_hasScrollbar(e,t){return t?e.scrollWidth>e.clientWidth:e.scrollHeight>e.clientHeight}_updateScroller(){if(this._isScrollerVisible){var e=this._scroller;e.height=this._pagesContainer.clientHeight;var t=0;for(let e=0;e<this.pages.length;e++)t+=this._getPageHeightWithoutZoom(e);e.max=t;this._updateScrollerValue()}}_updateScrollerValue(){if(this._isScrollerVisible){var e=this.pageIndex;if(!(e<0)){var t=0;this._pagesContainer.scrollTop>0&&(t=this._pagesContainer.scrollTop/(this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight));var i=this._scroller,r=this.pages.length,s=0;for(let t=0;t<e;t++)s+=this._getPageHeightWithoutZoom(t);s+=this._getPageHeightWithoutZoom(e)*t;e>=r-1&&!this._hasPageVScrollBar&&(s=i.max);i.value=s}}}_doScrollerValueChanged(){if(this._isScrollerVisible){for(var e=this._scroller,t=this.pages.length,i=e.value,r=0,s=1;r<t;r++){const e=this._getPageHeightWithoutZoom(r);if(!(i>e)){s=i/e;break}i-=e}r>=t&&(r=t-1);this._innerMoveToPage(r,s)}}_doContainerWheel(e){if(this._isScrollerVisible&&0!=e.deltaY){var t=e.deltaY<0;if(this._hasPageVScrollBar)if(t){if(this._pagesContainer.scrollTop>0)return}else if(this._pagesContainer.scrollTop<this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight)return;t?this._innerMoveToPreviousPageAtBottom(e):this._innerMoveToNextPageAtTop(e)}}_doContainerScroll(){if(this._isScrollerVisible&&this._pagesContainer.scrollTop!=this._desiredPageScrollTop){this._updateScrollerValue();this._onPositionChanged()}}_doContainerKeyDown(){if(this._isScrollerVisible){var e=event;if(this._hasPageVScrollBar)switch(e.keyCode){case Key.PageDown:this._pagesContainer.scrollTop>=this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight&&this._innerMoveToNextPageAtTop(e);break;case Key.PageUp:0==this._pagesContainer.scrollTop&&this._innerMoveToPreviousPageAtBottom(e)}else switch(e.keyCode){case Key.Down:case Key.PageDown:this._innerMoveToNextPageAtTop(e);break;case Key.Up:case Key.PageUp:this._innerMoveToPreviousPageAtBottom(e)}}}_preventContainerScroll(){this._desiredPageScrollTop=this._pagesContainer.scrollTop}_innerMoveToPreviousPageAtBottom(e){if(this.pageIndex>0){e&&e.preventDefault();this._innerMoveToPage(this.pageIndex-1,1);this._updateScrollerValue()}}_innerMoveToNextPageAtTop(e){if(this.pageIndex<this.pages.length-1){e&&e.preventDefault();this._innerMoveToPage(this.pageIndex+1,0);this._updateScrollerValue()}}_innerMoveToPage(e,t){this._innerNavigating=!0;var i={pageIndex:e};this.moveToPosition(i).then(e=>{this._innerMoveToPagePosition(t);this._innerNavigating=!1})}_innerMoveToPagePosition(e){if(this._hasPageVScrollBar){var t=(this._pagesContainer.scrollHeight-this._pagesContainer.clientHeight)*e;this._pagesContainer.scrollTop=t;this._preventContainerScroll()}}moveToPosition(e){var t=super.moveToPosition(e);this._innerNavigating||this._updateScrollerValue();return t}_moveToPagePosition(e){var t=e.pageBounds||{x:0,y:0,width:0,height:0},i=e.pageBounds?_PageViewBase._pageMargin:0,r=this.pages[this.pageIndex],s=_getTransformedPosition(t,r.size,r.rotateAngle,this.zoomFactor);if(!e.samePage){this._pagesContainer.scrollTop=s.y+i;this._pagesContainer.scrollLeft=s.x+i}}_hitTestPageIndex(e){return this.pageIndex}_pointInViewPanelClientArea(e,t){return e>=0&&t>=0&&e<this._pagesContainer.clientWidth&&t<this._pagesContainer.clientHeight}_panelViewPntToPageView(e,t){if(this.pageIndex<0)return null;var i=this._pagesContainer.scrollTop+t,r=0;if(this._pagesContainer.scrollLeft>0)r=this._pagesContainer.scrollLeft+e;else{const t=this._pagesContainer.getBoundingClientRect();r=e-(this._pagesWrapper.getBoundingClientRect().left-t.left)+_PageViewBase._pageMargin}return{x:r,y:i,pageIndex:this.pageIndex}}_render(e){return this._renderViewPage(this._pagesWrapper.querySelector("."+ViewerBaseClsNames.viewPage),e,!1)}_guessPageIndex(){return this.pageIndex}_reserveViewPage(){_removeChildren(this._pagesWrapper);this._addViewPage();this.invalidate()}_updatePageViewTransform(){var e;e=this._pagesWrapper.querySelector("."+ViewerBaseClsNames.viewPage);this._setPageTransform(e,this.pageIndex)}_onPageLoaded(e,t){super._onPageLoaded(e,t);this._updateScroller()}_onZoomFactorChanged(e,t){super._onZoomFactorChanged(e,t);this._updateScroller()}_zoomToViewWidth(){if(!this.pages||0==this.pages.length)return;this._getPageSize(this.pageIndex)&&(this.zoomFactor=this._calcZoomToViewWidthFactor())}_calcZoomToViewWidthFactor(){if(!this.pages||0==this.pages.length)return;const e=this._getViewPortHeight();let t=this._getViewPortWidth();const i=this._getPageSize(this.pageIndex),r=i.height.valueInPixel,s=i.width.valueInPixel;t/s>e/r&&(t-=_Scroller.getScrollbarWidth());return t/s}refresh(e=!0){super.refresh(e);this._isScrollerVisible?addClass(this.hostElement,"virtual"):removeClass(this.hostElement,"virtual");this._updateScroller()}dispose(){if(this._vscroller&&Control.getControl(this._vscroller)){const e=Control.getControl(this._vscroller);e.valueChanged.removeHandler(this._doScrollerValueChanged);e.dispose()}if(this._timeoutId){clearTimeout(this._timeoutId);this._timeoutId=null}this._touchManager&&this._touchManager.swipe.removeHandler(this._swipeHandler);this._pagesContainer=null;this._vscroller=null;this._touchManager=null;super.dispose()}}_SinglePageView._ctrlTemplate="";export class _CompositePageView extends Control{constructor(e){super(e);this._viewMode=ViewMode.Single;this.pageIndexChanged=new Event;this.zoomFactorChanged=new Event;this.zoomModeChanged=new Event;this.positionChanged=new Event;this.rotateAngleChanged=new Event;this.pageLoaded=new Event;this._handlerPageIndexChanged=()=>this.onPageIndexChanged();this._handlerZoomFactorChanged=(e,t)=>this.onZoomFactorChanged(t.oldValue,t.newValue);this._handlerZoomModeChanged=(e,t)=>this.onZoomModeChanged(t.oldValue,t.newValue);this._handlerPositionChanged=()=>this.onPositionChanged();this._handlerRotateAngleChanged=()=>this.onRotateAngleChanged();this._handlerPageLoaded=(e,t)=>this.onPageLoaded(t);var t;t=this.getTemplate();this.applyTemplate(ViewerBaseClsNames.container,t,{_singlePageView:"single-pageview",_continuousPageView:"continuous-pageview"});this._initPageView()}static get controlTemplate(){_CompositePageView._ctrlTemplate||(_CompositePageView._ctrlTemplate=`<div class="${ViewerBaseClsNames.pageview}" wj-part="single-pageview"></div><div class="${ViewerBaseClsNames.pageview}" wj-part="continuous-pageview"></div>`);return _CompositePageView._ctrlTemplate}static set controlTemplate(e){_CompositePageView._ctrlTemplate=e}applyTemplate(e,t,i){var r,s,a=this.hostElement;addClass(a,e);a.appendChild(_toDOMs(t));if(i)for(r in i){s=i[r];this[r]=a.querySelector(`[wj-part="${s}"]`);null==this[r]&&a.getAttribute("wj-part")==s&&(this[r]=t);if(null==this[r])throw`Missing template part: "${s}"`}return a}get pageIndex(){return this._activePageView.pageIndex}get pages(){return this._activePageView.pages}set pages(e){this._activePageView.pages=e}get zoomMode(){return this._activePageView.zoomMode}set zoomMode(e){this._activePageView.zoomMode=e}get zoomFactor(){return this._activePageView.zoomFactor}set zoomFactor(e){this._activePageView.zoomFactor=e}get panMode(){return this._activePageView.panMode}set panMode(e){this._activePageView.panMode=e}get viewMode(){return this._viewMode}set viewMode(e){if(this._viewMode!==e){this._viewMode=e;this._updateActivePageView()}}get scrollTop(){return this._activePageView.scrollTop}get scrollLeft(){return this._activePageView.scrollLeft}get _activePageViewElement(){return this.viewMode===ViewMode.Single?this._singlePageView:this._continuousPageView}onPageIndexChanged(){this.pageIndexChanged.raise(this)}onZoomFactorChanged(e,t){this.zoomFactorChanged.raise(this,{oldValue:e,newValue:t})}onZoomModeChanged(e,t){this.zoomModeChanged.raise(this,{oldValue:e,newValue:t})}onPositionChanged(){this.positionChanged.raise(this)}onRotateAngleChanged(){this.rotateAngleChanged.raise(this)}onPageLoaded(e){this.pageLoaded.raise(this,e)}_updateActivePageView(){var e=this._activePageView.pageIndex,t=this._activePageView.pages,i=this._activePageView.zoomFactor,r=this._activePageView.zoomMode,s=this._activePageView.panMode;this._removePageViewHandlers(this._activePageView);this._activePageView=Control.getControl(this._activePageViewElement);this._activePageView.pages||(this._activePageView.pages=t);this._activePageView.invalidate();this._updatePageViewsVisible();this._activePageView.moveToPage(e);this._activePageView.zoomFactor=i;this._activePageView.zoomMode=r;this._activePageView.panMode=s;this._addPageViewHandlers(this._activePageView)}_initPageView(){this._activePageView=new _SinglePageView(this._singlePageView);this._addPageViewHandlers(this._activePageView);new _ContinuousPageView(this._continuousPageView);this._updatePageViewsVisible()}_addPageViewHandlers(e){this._activePageView.pageIndexChanged.addHandler(this._handlerPageIndexChanged);this._activePageView.zoomFactorChanged.addHandler(this._handlerZoomFactorChanged);this._activePageView.zoomModeChanged.addHandler(this._handlerZoomModeChanged);this._activePageView.positionChanged.addHandler(this._handlerPositionChanged);this._activePageView.rotateAngleChanged.addHandler(this._handlerRotateAngleChanged);this._activePageView.pageLoaded.addHandler(this._handlerPageLoaded)}_removePageViewHandlers(e){e.pageIndexChanged.removeHandler(this._handlerPageIndexChanged);e.zoomFactorChanged.removeHandler(this._handlerZoomFactorChanged);e.zoomModeChanged.removeHandler(this._handlerZoomModeChanged);e.positionChanged.removeHandler(this._handlerPositionChanged);e.rotateAngleChanged.removeHandler(this._handlerRotateAngleChanged);e.pageLoaded.removeHandler(this._handlerPageLoaded)}_updatePageViewsVisible(){if(this.viewMode===ViewMode.Single){removeClass(this._singlePageView,"hidden");hasClass(this._continuousPageView,"hidden")||addClass(this._continuousPageView,"hidden")}else{removeClass(this._continuousPageView,"hidden");hasClass(this._singlePageView,"hidden")||addClass(this._singlePageView,"hidden")}}moveToPage(e){return this._activePageView.moveToPage(e)}moveToPosition(e){return this._activePageView.moveToPosition(e)}rotatePageTo(e,t){this._activePageView.rotatePageTo(e,t)}hitTest(e,t){return this._activePageView.hitTest(e,t)}resetPages(){Control.getControl(this._singlePageView).resetPages();Control.getControl(this._continuousPageView).resetPages()}refresh(e=!0){super.refresh(e);Control.getControl(this._activePageViewElement).invalidate();this._activePageView.refresh()}isPageContentLoaded(e){return this._activePageView.isPageContentLoaded(e)}dispose(){this._removePageViewHandlers(this._activePageView);Control.getControl(this._singlePageView)&&Control.getControl(this._singlePageView).dispose();Control.getControl(this._continuousPageView)&&Control.getControl(this._continuousPageView).dispose();Control.getControl(this._activePageView)&&Control.getControl(this._activePageView).dispose();this._activePageView=null;this._singlePageView=null;this._continuousPageView=null;super.dispose()}}_CompositePageView._ctrlTemplate="";const _isIOS="undefined"!=typeof navigator&&null!=navigator.userAgent.match(/iPhone|iPad|iPod/i),_svgStart='<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 24 24" xml:space="preserve">',_svgEnd="</svg>",_checkedCss=ControlStateClsNames.active,_disabledCss=ControlStateClsNames.disabled;export const _commandTagAttr="command-tag";export function isIOS(){return _isIOS}export function _createSvgBtn(e){var t=_toDOM(_svgStart+e+_svgEnd);addClass(t,InputFormElementsClsNames.svgBtn);var i=document.createElement("a");i.appendChild(t);addClass(i,InputFormElementsClsNames.btn);i.tabIndex=0;return i}export function _checkImageButton(e,t){t?addClass(e,_checkedCss):removeClass(e,_checkedCss)}export function _checkSeparatorShown(e){let t,i,r,s,a=!0;for(let o=0;o<e.children.length;o++){i=e.children[o];t=hasClass(i,UtilitesClsNames.separator);r=hasClass(i,"hidden");if(t||r){if(t){if(a)r||addClass(i,"hidden");else{r&&removeClass(i,"hidden");s=i}a=!0}}else a=!1}a&&s&&addClass(s,"hidden")}export function _disableImageButton(e,t){if(t)addClass(e,_disabledCss);else{removeClass(e,_disabledCss);if(e instanceof HTMLElement){const t=e.querySelectorAll("input[disabled]");for(let e=0;e<t.length;e++)t[e].disabled=!1;const i=e.querySelectorAll("button[disabled]");for(let e=0;e<i.length;e++)i[e].disabled=!1}}}export function _getPositionByHitTestInfo(e){return e?{pageIndex:e.pageIndex,pageBounds:{x:e.x,y:e.y,width:0,height:0}}:{pageIndex:0,pageBounds:{x:0,y:0,width:0,height:0}}}export function _setLandscape(e,t){if(e.landscape!==t){e.landscape=t;var i=e.width;e.width=e.height;e.height=i;var r=e.leftMargin;if(t){e.leftMargin=e.bottomMargin;e.bottomMargin=e.rightMargin;e.rightMargin=e.topMargin;e.topMargin=r}else{e.leftMargin=e.topMargin;e.topMargin=e.rightMargin;e.rightMargin=e.bottomMargin;e.bottomMargin=r}}}export function _showImageButton(e,t){t?removeClass(e,"hidden"):addClass(e,"hidden")}export function _isDisabledImageButton(e){return hasClass(e,_disabledCss)}export function _isCheckedImageButton(e){return hasClass(e,_checkedCss)}export function _toDOM(e){return _toDOMs(e).firstChild}export class _Toolbar extends Control{constructor(e){super(e);this._disposed=!1;this.svgButtonClicked=new Event;var t;t=this.getTemplate();this.applyTemplate(ViewerBaseClsNames.toolbar,t,{_toolbarWrapper:"toolbar-wrapper",_toolbarContainer:"toolbar-container",_toolbarLeft:"toolbar-left",_toolbarRight:"toolbar-right"});this.addEventListener(this._toolbarLeft,"mouseover",()=>{this._scrollLeft()});this.addEventListener(this._toolbarLeft,"mouseout",()=>{this._clearToolbarMoveTimer()});this.addEventListener(this._toolbarRight,"mouseover",()=>{this._scrollRight()});this.addEventListener(this._toolbarRight,"mouseout",()=>{this._clearToolbarMoveTimer()})}static get controlTemplate(){_Toolbar._ctrlTemplate||(_Toolbar._ctrlTemplate=`<div class="${ViewerBaseClsNames.toolbarMove} left" wj-part="toolbar-left"><span class=${GlyphClsNames.left}></span></div><div class="${ViewerBaseClsNames.toolbarContainer}" wj-part="toolbar-container"><div class="${ViewerBaseClsNames.toolbarWrapper} ${InputFormElementsClsNames.btnGroup}" wj-part="toolbar-wrapper"></div></div><div class="${ViewerBaseClsNames.toolbarMove} right" wj-part="toolbar-right"><span class=${GlyphClsNames.right}></span></div>`);return _Toolbar._ctrlTemplate}static set controlTemplate(e){_Toolbar._ctrlTemplate=e}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(const e in i){const s=i[e];this[e]=r.querySelector(`[wj-part="${s}"]`);null==this[e]&&r.getAttribute("wj-part")==s&&(this[e]=t);if(null==this[e])throw`Missing template part: "${s}"`}return r}dispose(){this._disposed=!0;super.dispose()}_clearToolbarMoveTimer(){if(null!=this._toolbarMoveTimer){clearTimeout(this._toolbarMoveTimer);this._toolbarMoveTimer=null}}_scrollRight(){var e=this._toolbarContainer.offsetWidth-this._toolbarWrapper.offsetWidth,t=this._toolbarWrapper.style,i=(t.left?parseInt(t.left):0)-_Toolbar._moveStep;this._checkMoveButtonEnabled();if(!(i<e)){t.left=i+"px";this._toolbarMoveTimer=setTimeout(()=>this._scrollRight(),_Toolbar._moveInterval)}}_scrollLeft(){var e=this._toolbarWrapper.style,t=(e.left?parseInt(e.left):0)+_Toolbar._moveStep;this._checkMoveButtonEnabled();if(!(t>0)){e.left=t+"px";this._toolbarMoveTimer=setTimeout(()=>this._scrollLeft(),_Toolbar._moveInterval)}}_checkMoveButtonEnabled(){const e=this._toolbarLeft.getBoundingClientRect().width,t=this._toolbarWrapper.offsetLeft-e+_Toolbar._moveStep<=0,i=hasClass(this._toolbarLeft,_Toolbar._enabledCss);t?i||addClass(this._toolbarLeft,_Toolbar._enabledCss):i&&removeClass(this._toolbarLeft,_Toolbar._enabledCss);const r=this._toolbarRight.getBoundingClientRect().width,s=this._toolbarContainer.getBoundingClientRect().width-this._toolbarWrapper.getBoundingClientRect().width,a=this._toolbarWrapper.offsetLeft-r-_Toolbar._moveStep>=s,o=hasClass(this._toolbarRight,_Toolbar._enabledCss);a?o||addClass(this._toolbarRight,_Toolbar._enabledCss):o&&removeClass(this._toolbarRight,_Toolbar._enabledCss)}_showToolbarMoveButton(e){var t=e?"visible":"hidden";this._toolbarLeft.style.visibility=t;this._toolbarRight.style.visibility=t;this._checkMoveButtonEnabled()}_globalize(){}resetWidth(){var e=this._toolbarLeft.getBoundingClientRect().width,t=this._toolbarRight.getBoundingClientRect().width,i=this.hostElement.getBoundingClientRect().width;this._toolbarContainer.style.width="1500px";this._toolbarWrapper.style.width="auto";var r=this._toolbarWrapper.getBoundingClientRect().width+2;this._toolbarWrapper.style.width=r+"px";this._toolbarContainer.style.width=i-e-t+"px";var s=e+t+r>i;this._showToolbarMoveButton(s);s||(this._toolbarWrapper.style.left="0px")}addSeparator(){var e=document.createElement("span");e.className=UtilitesClsNames.separator;this._toolbarWrapper.appendChild(e);return e}onSvgButtonClicked(e){this.svgButtonClicked.raise(this,e)}addCustomItem(e,t){isString(e)&&(e=_toDOM(e));null!=t&&e.setAttribute("command-tag",t.toString());this._toolbarWrapper.appendChild(e)}addSvgButton(e,t,i,r){var s=_createSvgBtn(t);s.title=e;s.setAttribute("command-tag",i.toString());this._toolbarWrapper.appendChild(s);["click","keydown"].forEach(e=>{this.addEventListener(s,e,e=>{var t=e||window.event;("keydown"!==t.type||t.keyCode!==Key.Enter)&&"click"!==t.type||_isDisabledImageButton(s)||!r&&_isCheckedImageButton(s)||this.onSvgButtonClicked({commandTag:i})})});return s}refresh(e=!0){super.refresh(e);e&&this._globalize()}}_Toolbar._moveStep=4;_Toolbar._moveInterval=5;_Toolbar._enabledCss="enabled";_Toolbar._ctrlTemplate="";export class _ViewerToolbarBase extends _Toolbar{constructor(e,t){super(e);this._viewer=t;this._initToolbarItems();const update=()=>{this.isDisabled=!this._viewer._getDocumentSource()};this._viewer._documentSourceChanged.addHandler(update);update();this._viewer._viewerActionStatusChanged.addHandler((e,t)=>{var i=t.action,r=this.hostElement.querySelector(`[command-tag="${i.actionType.toString()}"]`);_checkImageButton(r,i.checked);_disableImageButton(r,i.disabled);_showImageButton(r,i.shown);_checkSeparatorShown(this._toolbarWrapper)})}static get controlTemplate(){_ViewerToolbarBase._ctrlTemplate||(_ViewerToolbarBase._ctrlTemplate=_Toolbar.controlTemplate);return _ViewerToolbarBase._ctrlTemplate}static set controlTemplate(e){_ViewerToolbarBase._ctrlTemplate=e}_initToolbarItems(){throw culture.Viewer.abstractMethodException}onSvgButtonClicked(e){super.onSvgButtonClicked(e);this._viewer._executeAction(parseInt(e.commandTag))}get viewer(){return this._viewer}static _initToolbarZoomValue(e,t){var i,r,s,a,o=Control.getControl(e),n=document.createElement("div"),h=ViewerBase._defaultZoomValues;n.className=ViewerBaseClsNames.inputZoom;o.addCustomItem(n,_ViewerActionType.ZoomValue);(i=new ComboBox(n,{keyActionPrintCharacters:0,keyActionTab:0})).deferUpdate(()=>{for(s=0;s<h.length;s++)for(a=s+1;a<h.length;a++)if(h[s].value>h[a].value){r=h[s];h[s]=h[a];h[a]=r}i.itemsSource=h;i.isEditable=!0;i.displayMemberPath="name";i.selectedValuePath="value";i.selectedValue=1});i.selectedIndexChanged.addHandler(()=>{if(i.isDroppedDown){let e=i.selectedValue;if(null==e){const t=i.text.replace(",","");e=parseFloat(t);isNaN(e)&&(e=100);e*=.01}t.zoomFactor=e}});i.textChanged.addHandler(()=>{var e,r=i.text;if(r.length>0){e=ViewerBase._zoomValuesParser(r);isNaN(e)||(t.zoomFactor=.01*e)}});const l=[t.zoomFactor],selectZoomRange=e=>{const t=h.length;if(!t)return[e,e];let i=-1;for(let r=0;r<t;r++)if(h[r].value>e){i=r-1;break}if(-1===i){const e=h[0].value;return[e,e]}if(i===t-1){const e=h[i].value;return[e,e]}return[h[i].value,h[i+1].value]};i.addEventListener(i.hostElement,"wheel",e=>{if(i.containsFocus()&&i.selectedIndex<0){const i=selectZoomRange(t.zoomFactor);t.zoomFactor=i[e.deltaY<0?0:1];e.preventDefault()}});i.addEventListener(i.hostElement,"keydown",e=>{if(i.containsFocus())switch(e.keyCode){case Key.Up:h.map(e=>e.value).indexOf(l[1])<0&&(t.zoomFactor=selectZoomRange(l[1])[0]);break;case Key.Down:h.map(e=>e.value).indexOf(l[0])<0&&(t.zoomFactor=selectZoomRange(l[0])[1]);break;case Key.PageUp:t.zoomFactor=h[0].value;break;case Key.PageDown:t.zoomFactor=h[h.length-1].value}});const c=n.querySelector("."+InputFormElementsClsNames.formControl);i.addEventListener(c,"blur",()=>{i.text=ViewerBase._zoomValuesFormatter(t.zoomFactor)});i.addEventListener(c,"keypress",e=>{["1","2","3","4","5","6","7","8","9","0"].indexOf(e.key)<0&&e.preventDefault()});t.zoomFactorChanged.addHandler(()=>{l.push(t.zoomFactor);l.length>2&&l.splice(0,1);i.text=ViewerBase._zoomValuesFormatter(t.zoomFactor);i.isDroppedDown=!1})}static _initToolbarPageNumberInput(e,t){var i,r=Control.getControl(e),s=document.createElement("div"),a=document.createElement("span"),updatePageNumber=()=>{var e=t._getDocumentSource();e&&null!=e.pageCount&&(i.value=t.pageIndex+1)},updatePageCount=()=>{var e=t._getDocumentSource();if(e&&null!=e.pageCount){a.innerHTML=e.pageCount.toString();i.max=e.pageCount;i.min=Math.min(e.pageCount,1);updatePageNumber()}},sourceChanged=()=>{var e=t._getDocumentSource();if(e){updatePageCount();_addWjHandler(t._documentEventKey,e.pageCountChanged,updatePageCount);_addWjHandler(t._documentEventKey,e.loadCompleted,updatePageCount)}};s.className=ViewerBaseClsNames.pageNumber;r.addCustomItem(s,_ViewerActionType.PageNumber);(i=new InputNumber(s)).format="n0";i.addEventListener(s,"keyup",e=>{(e||window.event).keyCode===Key.Enter&&t.moveToPage(i.value-1)});i.addEventListener(i.inputElement,"blur",()=>{t.moveToPage(i.value-1)});r.addCustomItem('<span class="slash">/</span>');a.className=ViewerBaseClsNames.pageCount;r.addCustomItem(a,_ViewerActionType.PageCountLabel);t.pageIndexChanged.addHandler(updatePageNumber);t._getDocumentSource()&&sourceChanged();t._documentSourceChanged.addHandler(sourceChanged)}}_ViewerToolbarBase._ctrlTemplate="";export class _ViewerMiniToolbar extends _ViewerToolbarBase{static get controlTemplate(){_ViewerMiniToolbar._ctrlTemplate||(_ViewerMiniToolbar._ctrlTemplate=_ViewerToolbarBase.controlTemplate);return _ViewerMiniToolbar._ctrlTemplate}static set controlTemplate(e){_ViewerMiniToolbar._ctrlTemplate=e}_initToolbarItems(){const e=culture.Viewer;this._gPrint=this.addSvgButton(e.print,icons.print,_ViewerActionType.Print);this.addSeparator();this._gPreviousPage=this.addSvgButton(e.previousPage,icons.previousPage,_ViewerActionType.PrePage);this._gNextPage=this.addSvgButton(e.nextPage,icons.nextPage,_ViewerActionType.NextPage);_ViewerToolbarBase._initToolbarPageNumberInput(this.hostElement,this.viewer);this.addSeparator();this._gZoomOut=this.addSvgButton(e.zoomOut,icons.zoomOut,_ViewerActionType.ZoomOut);this._gZoomIn=this.addSvgButton(e.zoomIn,icons.zoomIn,_ViewerActionType.ZoomIn);this._gExitFullScreen=this.addSvgButton(e.exitFullScreen,icons.exitFullScreen,_ViewerActionType.ToggleFullScreen,!0)}_globalize(){var e=culture.Viewer;this._gPrint.title=e.print;this._gPreviousPage.title=e.previousPage;this._gNextPage.title=e.nextPage;this._gZoomOut.title=e.zoomOut;this._gZoomIn.title=e.zoomIn;this._gExitFullScreen.title=e.exitFullScreen}}_ViewerMiniToolbar._ctrlTemplate="";export class _ViewerToolbar extends _ViewerToolbarBase{static get controlTemplate(){_ViewerToolbar._ctrlTemplate||(_ViewerToolbar._ctrlTemplate=_ViewerToolbarBase.controlTemplate);return _ViewerToolbar._ctrlTemplate}static set controlTemplate(e){_ViewerToolbar._ctrlTemplate=e}_globalize(){const e=culture.Viewer;this._gPaginated.title=e.paginated;this._gPrint.title=e.print;this._gExports.title=e.exports;this._gPortrait.title=e.portrait;this._gLandscape.title=e.landscape;this._gPageSetup.title=e.pageSetup;this._gFirstPage.title=e.firstPage;this._gPreviousPage.title=e.previousPage;this._gNextPage.title=e.nextPage;this._gLastPage.title=e.lastPage;this._gBackwardHistory.title=e.backwardHistory;this._gForwardHistory.title=e.forwardHistory;this._gSelectTool.title=e.selectTool;this._gMoveTool.title=e.moveTool;this._gContinuousMode.title=e.continuousMode;this._gSingleMode.title=e.singleMode;this._gWholePage.title=e.wholePage;this._gPageWidth.title=e.pageWidth;this._gZoomOut.title=e.zoomOut;this._gZoomIn.title=e.zoomIn;this._gRubberbandTool.title=e.rubberbandTool;this._gMagnifierTool.title=e.magnifierTool;this._gRotateDocument.title=e.rotateDocument;this._gRotatePage.title=e.rotatePage;this._gFullScreen.title=e.fullScreen}_initToolbarItems(){const e=culture.Viewer;this._gPaginated=this.addSvgButton(e.paginated,icons.paginated,_ViewerActionType.TogglePaginated,!0);this._gPrint=this.addSvgButton(e.print,icons.print,_ViewerActionType.Print);this._gExports=this.addSvgButton(e.exports,icons.exports,_ViewerActionType.ShowExportsPanel);this.addSeparator();this._gPortrait=this.addSvgButton(e.portrait,icons.portrait,_ViewerActionType.Portrait);this._gLandscape=this.addSvgButton(e.landscape,icons.landscape,_ViewerActionType.Landscape);this._gPageSetup=this.addSvgButton(e.pageSetup,icons.pageSetup,_ViewerActionType.ShowPageSetupDialog);this.addSeparator();this._gFirstPage=this.addSvgButton(e.firstPage,icons.firstPage,_ViewerActionType.FirstPage);this._gPreviousPage=this.addSvgButton(e.previousPage,icons.previousPage,_ViewerActionType.PrePage);this._gNextPage=this.addSvgButton(e.nextPage,icons.nextPage,_ViewerActionType.NextPage);this._gLastPage=this.addSvgButton(e.lastPage,icons.lastPage,_ViewerActionType.LastPage);_ViewerToolbarBase._initToolbarPageNumberInput(this.hostElement,this.viewer);this.addSeparator();this._gBackwardHistory=this.addSvgButton(e.backwardHistory,icons.backwardHistory,_ViewerActionType.Backward);this._gForwardHistory=this.addSvgButton(e.forwardHistory,icons.forwardHistory,_ViewerActionType.Forward);this.addSeparator();this._gSelectTool=this.addSvgButton(e.selectTool,icons.selectTool,_ViewerActionType.SelectTool);this._gMoveTool=this.addSvgButton(e.moveTool,icons.moveTool,_ViewerActionType.MoveTool);this._gContinuousMode=this.addSvgButton(e.continuousMode,icons.continuousView,_ViewerActionType.Continuous);this._gSingleMode=this.addSvgButton(e.singleMode,icons.singleView,_ViewerActionType.Single);this.addSeparator();this._gWholePage=this.addSvgButton(e.wholePage,icons.fitWholePage,_ViewerActionType.FitWholePage);this._gPageWidth=this.addSvgButton(e.pageWidth,icons.fitPageWidth,_ViewerActionType.FitPageWidth);this._gZoomOut=this.addSvgButton(e.zoomOut,icons.zoomOut,_ViewerActionType.ZoomOut);this._gZoomIn=this.addSvgButton(e.zoomIn,icons.zoomIn,_ViewerActionType.ZoomIn);this._gRubberbandTool=this.addSvgButton(e.rubberbandTool,icons.rubberbandTool,_ViewerActionType.RubberbandTool);this._gMagnifierTool=this.addSvgButton(e.magnifierTool,icons.magnifierTool,_ViewerActionType.MagnifierTool);this._gRotateDocument=this.addSvgButton(e.rotateDocument,icons.rotateDocument,_ViewerActionType.RotateDocument);this._gRotatePage=this.addSvgButton(e.rotatePage,icons.rotatePage,_ViewerActionType.RotatePage);_ViewerToolbarBase._initToolbarZoomValue(this.hostElement,this.viewer);this._gFullScreen=this.addSvgButton(e.fullScreen,icons.fullScreen,_ViewerActionType.ToggleFullScreen,!0)}}_ViewerToolbar._ctrlTemplate="";export class _SideTabs extends Control{constructor(e){super(e);this._idCounter=0;this._tabPages=[];this._tabPageDic={};this.tabPageActived=new Event;this.tabPageVisibilityChanged=new Event;this.expanded=new Event;this.collapsed=new Event;var t=this.getTemplate();this.applyTemplate(ControlClsNames.hostElement,t,{_headersContainer:ViewerBaseClsNames.headers,_contentsContainer:ViewerBaseClsNames.contents})}static get controlTemplate(){_SideTabs._ctrlTemplate||(_SideTabs._ctrlTemplate=`<ul class="${ViewerBaseClsNames.nav} ${InputFormElementsClsNames.btnGroup}" wj-part="wj-headers"></ul><div class="${ViewerBaseClsNames.tabContent}" wj-part="wj-contents"></div>`);return _SideTabs._ctrlTemplate}static set controlTemplate(e){_SideTabs._ctrlTemplate=e}applyTemplate(e,t,i){var r=this.hostElement;addClass(r,e);r.appendChild(_toDOMs(t));if(i)for(const e in i){const s=i[e];this[e]=r.querySelector(`[wj-part="${s}"]`);null==this[e]&&r.getAttribute("wj-part")==s&&(this[e]=t);if(null==this[e])throw`Missing template part: "${s}"`}return r}get tabPages(){return this._tabPages}getTabPage(e){return this._tabPageDic[e]}getFirstShownTabPage(e){var t;this._tabPages.some(i=>{if(!i.isHidden&&i!==e){t=i;return!0}return!1});return t}get visibleTabPagesCount(){var e=0;this._tabPages.forEach(t=>{t.isHidden||e++});return e}get activedTabPage(){var e;this._tabPages.some(t=>{if(t.isActived){e=t;return!0}return!1});return e}removePage(e){var t;if(t="string"==typeof e?this.getTabPage(e):e){var i=t.id,r=this._tabPages.indexOf(t);if(!(r<0)){this._tabPages.splice(r,1);this._tabPageDic[i]=void 0;if(!this.isCollapsed&&t.isActived){const e=this.getFirstShownTabPage();e?this.active(e):this.collapse()}this._headersContainer.removeChild(t.header);this._contentsContainer.removeChild(t.outContent)}}}addPage(e,t,i){var r=this._getNewTabPageId(),s=document.createElement("li"),a=_toDOM(`<div class="${ViewerBaseClsNames.tabPane}"><div class="${ViewerBaseClsNames.tabTitleWrapper}"><h3 class="${ViewerBaseClsNames.tabtitle}">`+e+`</h3><span class="${UtilitesClsNames.close}">×</span></div>`+`<div class="${ViewerBaseClsNames.tabContentWrapper}"><div class="${ViewerBaseClsNames.tabContentInner}"></div></div></div>`),o=_createSvgBtn(t);s.appendChild(o);i=null==i?this._tabPages.length:i;if((i=Math.min(Math.max(i,0),this._tabPages.length))>=this._tabPages.length){this._headersContainer.appendChild(s);this._contentsContainer.appendChild(a)}else{this._headersContainer.insertBefore(s,this._tabPages[i].header);this._contentsContainer.insertBefore(a,this._tabPages[i].outContent)}this.addEventListener(a.querySelector("."+UtilitesClsNames.close),"click",()=>{this.collapse()});["click","keydown"].forEach(e=>{this.addEventListener(s.querySelector("a"),e,e=>{var t=this.getTabPage(r);if(t){("keydown"===e.type&&e.keyCode===Key.Enter||"click"===e.type)&&this.active(t)}})});var n=new _TabPage(a,s,r);i>=this._tabPages.length?this._tabPages.push(n):this._tabPages.splice(i,0,n);this._tabPageDic[r]=n;if(!this.isCollapsed){this.activedTabPage||this.active(n)}return n}get isCollapsed(){return hasClass(this.hostElement,_SideTabs._collapsedCss)}hide(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&!hasClass(t.header,"hidden")){addClass(t.header,"hidden");this.onTabPageVisibilityChanged(t);this.deactive(t)}}show(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&hasClass(t.header,"hidden")){removeClass(t.header,"hidden");this.onTabPageVisibilityChanged(t);if(!this.isCollapsed){this.activedTabPage||this.active(t)}}}deactive(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&t.isActived){removeClass(t.outContent,_SideTabs._activedCss);_checkImageButton(t.header.querySelector("a"),!1);var i=this.getFirstShownTabPage(t);i?this.active(i):this.collapse()}}active(e){var t="string"==typeof e?this.getTabPage(e):e;if(t&&!t.isActived){this._clearActiveStyles();this.show(t);addClass(t.outContent,_SideTabs._activedCss);_checkImageButton(t.header.querySelector("a"),!0);this.expand();this.onTabPageActived()}}enable(e,t=!0){var i="string"==typeof e?this.getTabPage(e):e;i&&i.enable(t)}enableAll(e=!0){this._tabPages.forEach(t=>{t.enable(e)})}onTabPageActived(){this.tabPageActived.raise(this)}onTabPageVisibilityChanged(e){this.tabPageVisibilityChanged.raise(this,{tabPage:e})}onExpanded(){this.expanded.raise(this)}onCollapsed(){this.collapsed.raise(this)}collapse(){if(!this.isCollapsed){this._clearActiveStyles();addClass(this.hostElement,_SideTabs._collapsedCss);this.onCollapsed()}}expand(){if(this.isCollapsed){removeClass(this.hostElement,_SideTabs._collapsedCss);if(!this.activedTabPage){const e=this.getFirstShownTabPage();e&&this.active(e)}this.onExpanded()}}toggle(){this.isCollapsed?this.expand():this.collapse()}_clearActiveStyles(){this._tabPages.forEach(e=>{removeClass(e.outContent,_SideTabs._activedCss);_checkImageButton(e.header.querySelector("a"),!1)})}_getNewTabPageId(){for(;this._tabPageDic[(this._idCounter++).toString()];);return this._idCounter.toString()}}_SideTabs._activedCss="active";_SideTabs._collapsedCss="collapsed";_SideTabs._ctrlTemplate="";export class _TabPage{constructor(e,t,i){this._header=t;this._outContent=e;this._content=e.querySelector("."+ViewerBaseClsNames.tabContentInner);this._id=i}get isActived(){return hasClass(this.outContent,_SideTabs._activedCss)}get isHidden(){return hasClass(this.header,"hidden")}get id(){return this._id}get header(){return this._header}get content(){return this._content}get outContent(){return this._outContent}enable(e=!0){enable(this._header,e);enable(this._content,e)}format(e){e(this)}}export class _PageSetupEditor extends Control{constructor(e){super(e);this._uiUpdating=!1;var t;assert(null!=ComboBox,"Missing dependency: _PageSetupEditor requires wijmo.input.");t=this.getTemplate();this.applyTemplate(ControlClsNames.hostElement,t,{_divPaperKind:"div-paper-kind",_divOrientation:"div-page-orientation",_divMarginsLeft:"div-margins-left",_divMarginsRight:"div-margins-right",_divMarginsTop:"div-margins-top",_divMarginsBottom:"div-margins-bottom",_gPaperKind:"g-paperkind",_gOrientation:"g-orientation",_gMargins:"g-margins",_gLeft:"g-left",_gRight:"g-right",_gTop:"g-top",_gBottom:"g-bottom"});const i={format:"n2",min:0,max:4,step:.25,valueChanged:this._updateValue.bind(this)};this._numMarginsLeft=new InputNumber(this._divMarginsLeft,i);this._numMarginsRight=new InputNumber(this._divMarginsRight,i);this._numMarginsTop=new InputNumber(this._divMarginsTop,i);this._numMarginsBottom=new InputNumber(this._divMarginsBottom,i);this._cmbPaperKind=new ComboBox(this._divPaperKind,{itemsSource:_enumToArray(_PaperKind),displayMemberPath:"text",selectedValuePath:"value",isEditable:!1,keyActionPrintCharacters:0,keyActionTab:0});this._cmbPaperKind.selectedIndexChanged.addHandler(this._updateValue,this);this._cmbOrientation=new ComboBox(this._divOrientation,{itemsSource:[culture.Viewer.portrait,culture.Viewer.landscape],isEditable:!1,keyActionPrintCharacters:0,keyActionTab:0});this._cmbOrientation.selectedIndexChanged.addHandler(this._updateValue,this);this._globalize()}static get controlTemplate(){_PageSetupEditor._ctrlTemplate||(_PageSetupEditor._ctrlTemplate='<div><div style="padding:12px;"><table style="table-layout:fixed"><tr><td wj-part="g-paperkind"></td><td><div wj-part="div-paper-kind"></div></td></tr><tr><td wj-part="g-orientation"></td><td><div wj-part="div-page-orientation"></div></td></tr></table><fieldset style="margin-top: 12px"><legend wj-part="g-margins"></legend><table style="table-layout:fixed"><tr><td wj-part="g-left"></td><td><div wj-part="div-margins-left"></div></td></tr><tr><td wj-part="g-right"></td><td><div wj-part="div-margins-right"></div></td></tr><tr><td wj-part="g-top"></td><td><div wj-part="div-margins-top"></div></td></tr><tr><td wj-part="g-bottom"></td><td><div wj-part="div-margins-bottom"></div></td></tr></table></fieldset></div></div>');return _PageSetupEditor._ctrlTemplate}static set controlTemplate(e){_PageSetupEditor._ctrlTemplate=e}get pageSettings(){return this._pageSettings}set pageSettings(e){var t=this._clonePageSettings(e);this._pageSettings=t;this._updateUI();this._cmbPaperKind.focus()}_globalize(){var e=culture.Viewer;this._gPaperKind.textContent=e.paperKind;this._gOrientation.textContent=e.orientation;this._gMargins.textContent=e.margins;this._gLeft.textContent=e.left;this._gRight.textContent=e.right;this._gTop.textContent=e.top;this._gBottom.textContent=e.bottom;var t=this._cmbOrientation.selectedIndex;this._cmbOrientation.itemsSource=[culture.Viewer.portrait,culture.Viewer.landscape];this._cmbOrientation.selectedIndex=t}_updateValue(){if(!this._uiUpdating){var e=this.pageSettings;if(e){e.bottomMargin=new _Unit(this._numMarginsBottom.value,_UnitType.Inch);e.leftMargin=new _Unit(this._numMarginsLeft.value,_UnitType.Inch);e.rightMargin=new _Unit(this._numMarginsRight.value,_UnitType.Inch);e.topMargin=new _Unit(this._numMarginsTop.value,_UnitType.Inch);e.paperSize=this._cmbPaperKind.selectedValue;_setLandscape(e,this._cmbOrientation.text===culture.Viewer.landscape);this._updateUI()}}}_clonePageSettings(e){if(!e)return null;var t={};t.height=e.height?new _Unit(e.height):null;t.width=e.width?new _Unit(e.width):null;t.bottomMargin=e.bottomMargin?new _Unit(e.bottomMargin):null;t.leftMargin=e.leftMargin?new _Unit(e.leftMargin):null;t.rightMargin=e.rightMargin?new _Unit(e.rightMargin):null;t.topMargin=e.topMargin?new _Unit(e.topMargin):null;t.landscape=e.landscape;t.paperSize=e.paperSize;return t}_updateUI(){this._uiUpdating=!0;var e=this.pageSettings,setMargin=(e,t)=>{e.value=_Unit.convertValue(t.value,t.units,_UnitType.Inch)};if(e){this._cmbPaperKind.selectedIndex=this._findIndex(this._cmbPaperKind.itemsSource,t=>t.value==e.paperSize);this._cmbOrientation.text=e.landscape?culture.Viewer.landscape:culture.Viewer.portrait;setMargin(this._numMarginsLeft,e.leftMargin);setMargin(this._numMarginsRight,e.rightMargin);setMargin(this._numMarginsTop,e.topMargin);setMargin(this._numMarginsBottom,e.bottomMargin)}this._uiUpdating=!1}_findIndex(e,t){e.length;for(let i=0;i<e.length;i++)if(t(e[i]))return i;return-1}refresh(e=!0){super.refresh(e);e&&this._globalize()}dispose(){this._cmbPaperKind&&this._cmbPaperKind.selectedIndexChanged.removeHandler(this._updateValue,this);this._cmbOrientation&&this._cmbOrientation.selectedIndexChanged.removeHandler(this._updateValue,this);this._numMarginsLeft&&this._numMarginsLeft.dispose();this._numMarginsRight&&this._numMarginsRight.dispose();this._numMarginsTop&&this._numMarginsTop.dispose();this._numMarginsBottom&&this._numMarginsBottom.dispose();this._cmbPaperKind&&this._cmbPaperKind.dispose();this._cmbOrientation&&this._cmbOrientation.dispose();super.dispose()}}_PageSetupEditor._ctrlTemplate="";export class _PageSetupDialog extends Popup{constructor(e){super(e);this.applied=new Event;var t;this.modal=!0;this.hideTrigger=PopupTrigger.None;t=this.getTemplate();this.applyTemplate(`${ControlClsNames.hostElement} ${ControlClsNames.content}`,t,{_gHeader:"g-header",_pageSetupEditorElement:"pagesetup-editor",_btnApply:"btn-apply",_btnCancel:"btn-cancel",_btnClose:"a-close"});this._pageSetupEditor=new _PageSetupEditor(this._pageSetupEditorElement);this._globalize();this._addEvents()}static get controlTemplate(){_PageSetupDialog._ctrlTemplate||(_PageSetupDialog._ctrlTemplate=`<div><div wj-part="g-header" class="${ViewerBaseClsNames.dialogHeader}"><a class="${UtilitesClsNames.hide}" wj-part="a-close" style="float:right;outline:none;text-decoration:none;padding:0px 6px" href="" tabindex="-1" draggable="false">×</a></div><div style="padding:12px;"><div wj-part="pagesetup-editor"></div></div><div class="${ViewerBaseClsNames.dialogFooter}"><a wj-part="btn-apply" class="${UtilitesClsNames.hide} ${InputFormElementsClsNames.btn}" tabindex="-1"></a> <a wj-part="btn-cancel" class="${UtilitesClsNames.hide} ${InputFormElementsClsNames.btn}" tabindex="-1"></a></div></div>`);return _PageSetupDialog._ctrlTemplate}static set controlTemplate(e){_PageSetupDialog._ctrlTemplate=e}get pageSettings(){return this._pageSetupEditor.pageSettings}_globalize(){var e=culture.Viewer;this._gHeader.textContent=e.pageSetup;this._btnApply.textContent=e.ok;this._btnCancel.textContent=e.cancel}_addEvents(){this.addEventListener(this._btnClose,"click",()=>{this.hide()});this.addEventListener(this._btnCancel,"click",()=>{this.hide()});this.addEventListener(this._btnApply,"click",()=>{this._apply();this.hide()})}_apply(){this.onApplied()}onApplied(){this.applied.raise(this)}showWithValue(e){this._pageSetupEditor.pageSettings=e;super.show()}refresh(e=!0){super.refresh(e);if(e){this._globalize();this._pageSetupEditor.refresh()}}dispose(){this._pageSetupEditor.dispose();this._pageSetupEditor=null;super.dispose()}}_PageSetupDialog._ctrlTemplate="";export class _MouseTool extends Control{constructor(e,t,i,r,s,a,o){super(e);this._stopOnClientOut=r;this._css=s;this._activeCss=a;this._visibleCss=o;this._pageView=i;this._viewPanelContainer=t;this._initElement();this._bindEvents()}activate(){if(!this._isActive){this._isActive=!0;addClass(this._viewPanelContainer,this._activeCss)}}deactivate(){if(this._isActive){this._isActive=!1;removeClass(this._viewPanelContainer,this._activeCss)}}reset(){this._innerStop(null)}get isActive(){return this._isActive}get startPnt(){return this._startPnt}get pageView(){return this._pageView}get viewPanelContainer(){return this._viewPanelContainer}_initElement(){this.applyTemplate(this._css,this.getTemplate(),this._getTemplateParts());this._viewPanelContainer.appendChild(this.hostElement)}_innerStop(e){try{this._stop(e)}finally{this._isStarted=!1;this._startPnt=null}}_getTemplateParts(){return null}_onMouseDown(e){var t=this._toClientPoint(e),i=this._testPageWorkingAreaHit(t);if(i&&this.pageView.isPageContentLoaded(i.pageIndex)){void 0!==window.getSelection&&getSelection().removeAllRanges();this._isStarted=!0;this._startPnt=t;this._start(i)}}_onMouseMove(e){if(this._isStarted){var t=this._toClientPoint(e),i=this._testPageWorkingAreaHit(t);i&&this.pageView.isPageContentLoaded(i.pageIndex)?this._move(t,i):this._stopOnClientOut&&this._stop(t)}}_onMouseUp(e){this._isStarted&&this._innerStop(this._toClientPoint(e))}_start(e){addClass(this.hostElement,this._visibleCss)}_move(e,t){}_stop(e){removeClass(this.hostElement,this._visibleCss)}_bindEvents(){this.addEventListener(this._viewPanelContainer,"mousedown",e=>{this._isActive&&this._onMouseDown(e)});this.addEventListener(this._viewPanelContainer,"mousemove",e=>{this._isActive&&this._onMouseMove(e)});this.addEventListener(document,"mouseup",e=>{this._isActive&&this._onMouseUp(e)})}_toClientPoint(e){var t=this._viewPanelContainer.getBoundingClientRect();return new Point(e.clientX-t.left,e.clientY-t.top)}_testPageWorkingAreaHit(e){var t=this._pageView.hitTest(e.x,e.y);return t&&t.hitWorkingArea?t:null}}export class _Rubberband extends _MouseTool{constructor(e,t,i){super(e,t,i,!1,ViewerBaseClsNames.rubberBand,"rubberband-actived","show");this.applied=new Event}_start(e){super._start(e);this.hostElement.style.left=this.startPnt.x+"px";this.hostElement.style.top=this.startPnt.y+"px"}_move(e){if(this.startPnt){this.hostElement.style.width=e.x-this.startPnt.x+"px";this.hostElement.style.height=e.y-this.startPnt.y+"px"}}_stop(e){if(e){const e=this.hostElement.getBoundingClientRect();e.width>5&&e.height>5&&this._onApplied(new _RubberbandOnAppliedEventArgs(new Rect(this.startPnt.x,this.startPnt.y,e.width,e.height)))}this.hostElement.style.width="0px";this.hostElement.style.height="0px";super._stop(e)}_onApplied(e){this.applied.raise(this,e)}}export class _Magnifier extends _MouseTool{constructor(e,t,i){super(e,t,i,!0,ViewerBaseClsNames.magnifier,"magnifier-actived","show");this._Magnification=2;this._currentPageIndex=-1}static get controlTemplate(){_Magnifier._ctrlTemplate||(_Magnifier._ctrlTemplate=`<div wj-part="view-page-div" class="${ViewerBaseClsNames.viewPage}"></div>`);return _Magnifier._ctrlTemplate}static set controlTemplate(e){_Magnifier._ctrlTemplate=e}deactivate(){super.deactivate();this._currentPageIndex=-1}reset(){super.reset();this._currentPageIndex=-1}_getTemplateParts(){return{_viewPageDiv:"view-page-div"}}_bindEvents(){super._bindEvents();var updateViewPage=()=>{if(!(this._currentPageIndex<0)){var e=this.pageView.pages[this._currentPageIndex],t=_getRotatedSize(e.size,e.rotateAngle),i=this._viewPageDiv.querySelector("svg");this._viewPageDiv.style.height=t.height.valueInPixel*this.pageView.zoomFactor*this._Magnification+"px";this._viewPageDiv.style.width=t.width.valueInPixel*this.pageView.zoomFactor*this._Magnification+"px";i.setAttribute("width",this._viewPageDiv.style.width);i.setAttribute("height",this._viewPageDiv.style.height);_transformSvg(i,e.size.width.valueInPixel,e.size.height.valueInPixel,this._Magnification*this.pageView.zoomFactor,e.rotateAngle)}};this.pageView.zoomFactorChanged.addHandler(()=>{updateViewPage()});this.pageView.rotateAngleChanged.addHandler(()=>{updateViewPage()})}_start(e){super._start(e);this._showMagnifer(this.startPnt,e)}_move(e,t){this._showMagnifer(e,t)}_showMagnifer(e,t){var i=this.hostElement.getBoundingClientRect(),r=_getPositionByHitTestInfo(t);this.hostElement.style.left=e.x-i.width/2+"px";this.hostElement.style.top=e.y-i.height/2+"px";this._fillPage(r);this._showHitPosition(r)}_fillPage(e){if(e.pageIndex!==this._currentPageIndex){this._currentPageIndex=e.pageIndex;this.pageView.pages[this._currentPageIndex].getContent().then(e=>{var t=e.cloneNode(!0);this._viewPageDiv.innerHTML="";this._viewPageDiv.appendChild(t);t.setAttribute("width",new _Unit(t.getAttribute("width")).valueInPixel*this._Magnification+"px");t.setAttribute("height",new _Unit(t.getAttribute("height")).valueInPixel*this._Magnification+"px");var i=this.pageView.pages[this._currentPageIndex].size;_transformSvg(t,i.width.valueInPixel,i.height.valueInPixel,this._Magnification*this.pageView.zoomFactor,this.pageView.pages[this._currentPageIndex].rotateAngle);this._viewPageDiv.style.width=t.getAttribute("width");this._viewPageDiv.style.height=t.getAttribute("height")})}}_showHitPosition(e){var t=this.hostElement.getBoundingClientRect(),i=this.pageView.pages[this._currentPageIndex],r=_getTransformedPosition(e.pageBounds,i.size,i.rotateAngle,this.pageView.zoomFactor);this._viewPageDiv.style.left=-r.x*this._Magnification+t.width/2+"px";this._viewPageDiv.style.top=-r.y*this._Magnification+t.height/2+"px"}}_Magnifier._ctrlTemplate="";export class ViewerBase extends Control{constructor(e,t){super(e,t,!0);this._pages=[];this._pageIndex=0;this._mouseMode=MouseMode.SelectTool;this._viewMode=ViewMode.Single;this._needBind=!1;this._historyManager=new _HistoryManager;this._fullScreen=!1;this._miniToolbarPinnedTimer=null;this._autoHeightCalculated=!1;this._searchManager=new _SearchManager;this._thresholdWidth=767;this._historyMoving=!1;this._prohibitAddHistory=!1;this._initialScroll=!1;this._pageMoving=!1;this._devicePixelRatio=window.devicePixelRatio;this._documentSourceChanged=new Event;this.pageIndexChanged=new Event;this.viewModeChanged=new Event;this.mouseModeChanged=new Event;this.fullScreenChanged=new Event;this.zoomFactorChanged=new Event;this.zoomModeChanged=new Event;this.queryLoadingData=new Event;this.beforeSendRequest=new Event;this.pageLoaded=new Event;this._viewerActionStatusChanged=new Event;this._documentEventKey=Date.now().toString();this._init(t)}static get controlTemplate(){ViewerBase._ctrlTemplate||(ViewerBase._ctrlTemplate=`<div class="${ViewerBaseClsNames.outer} ${ControlClsNames.content} with-footer"><div wj-part="toolbar" tabindex="-1"></div><div wj-part="mobile-toolbar"></div><div class="${ViewerBaseClsNames.container}" wj-part="viewer-container"><div class="${ViewerBaseClsNames.leftpanel}" wj-part="viewer-left-panel"><div class="${ViewerBaseClsNames.tabsleft}" wj-part="side-panel"></div></div><div class="${ViewerBaseClsNames.splitter}" wj-part="splitter"><button class="${InputFormElementsClsNames.btn} ${InputFormElementsClsNames.btnDefault}"><span class=${GlyphClsNames.right}></span></button></div><div class="${ViewerBaseClsNames.viewPanelContainer}" wj-part="viewpanel-container"></div></div><div wj-part="mini-toolbar"></div><div class="${ViewerBaseClsNames.searchBar} mobile" wj-part="search-bar"></div><div class="${ViewerBaseClsNames.footer} mobile" class="${ViewerBaseClsNames.footer}" wj-part="viewer-footer"><div wj-part="zoom-bar"></div><span class="${UtilitesClsNames.close}">×</span></div></div>`);return ViewerBase._ctrlTemplate}static set controlTemplate(e){ViewerBase._ctrlTemplate=e}_getProductInfo(){return"QNI5,ViewerBase"}get serviceUrl(){return this._serviceUrl}set serviceUrl(e){if(e!=this._serviceUrl){this._serviceUrl=e;this._needBindDocumentSource();this.invalidate()}}get filePath(){return this._filePath}set filePath(e){if(e!=this._filePath){this._filePath=e;this._needBindDocumentSource();this.invalidate()}}get requestHeaders(){return this._requestHeaders}set requestHeaders(e){this._requestHeaders=e}get thresholdWidth(){return this._thresholdWidth}set thresholdWidth(e){if(e!=this._thresholdWidth){this._thresholdWidth=e;this.invalidate()}}get _innerPaginated(){return this._documentSource&&!this._needBind?this._documentSource.paginated:this._paginated}set _innerPaginated(e){this._documentSource&&!this._needBind?this._setPaginated(e):this._paginated=null==e?null:asBoolean(e);this._setViewerAction(_ViewerActionType.TogglePaginated,!0)}_setTabOrder(e){super._setTabOrder(e);this._updateInnerElementsTabIndex()}_setIsDisabled(e){if((e=asBoolean(e,!0))!=this.isDisabled){const t=this._e;if(t){enable(t,!e);t.tabIndex=this.isDisabled||t.querySelector("input")?-1:this._orgTabIndex;this._updateInnerElementsTabIndex()}}}_updateInnerElementsTabIndex(){const e=this.isDisabled?-1:this._orgTabIndex,t=this._e.querySelectorAll("input, [tabindex], ."+ViewerBaseClsNames.pageview);for(let i=0;i<t.length;i++)t[i].tabIndex=e}invalidate(e=!0){super.invalidate(e);ViewerBase._exportItems=null;this._updateExportTab()}reload(){this._needBindDocumentSource();this.invalidate()}refresh(e=!0){super.refresh(e);if(this._needBind){this._setDocumentSource(this._getSource());this._needBind=!1}if(e){const e=Control.getControl(this._toolbar);e&&e.refresh();const t=Control.getControl(this._miniToolbar);t&&t.refresh();const i=Control.getControl(this._mobileToolbar);i&&i.refresh();const r=Control.getControl(this._zoomBar);r&&r.refresh();const s=Control.getControl(this._searchBar);s&&s.refresh();this._hamburgerMenu&&this._hamburgerMenu.refresh();this._viewMenu&&this._viewMenu.refresh();this._searchOptionsMenu&&this._searchOptionsMenu.refresh();ViewerBase._exportItems=null;this._updateExportTab(!0);this._globalize();this._updateLayout()}this._resetMiniToolbarPosition();this._resetToolbarWidth();this._resetViewPanelContainerWidth();this._autoHeightCalculated=!1}_updateLayout(){this._switchTemplate(this._isMobileTemplate())}_switchTemplate(e){var t=this.hostElement.querySelector("."+ViewerBaseClsNames.outer),i=Control.getControl(this._sidePanel),r=i.getTabPage(this._pageSetupPageId);if(e){addClass(t,"mobile");i.show(r)}else{removeClass(t,"mobile");i.hide(r)}}_getSource(){return this.filePath?new _DocumentSource({serviceUrl:this._serviceUrl,filePath:this._filePath},this):null}_needBindDocumentSource(){this._needBind=!0}_supportsPageSettingActions(){return!1}_isMobileTemplate(){return this.thresholdWidth>this.hostElement.getBoundingClientRect().width}_init(e){this._createChildren();this._autoCalculateHeight();this._resetToolbarWidth();this._resetViewPanelContainerWidth();this._bindEvents();this._initTools();this.deferUpdate(()=>{this.initialize(e)})}_initTools(){this._rubberband=new _Rubberband(document.createElement("div"),this._viewpanelContainer,this._pageView);this._rubberband.applied.addHandler((e,t)=>{var i=t.rect,r=this._pageView.hitTest(i.left,i.top),s=this._viewpanelContainer.getBoundingClientRect();i.width>i.height?this._pageView.zoomFactor*=s.width/i.width:this._pageView.zoomFactor*=s.height/i.height;this._pageView.moveToPosition(_getPositionByHitTestInfo(r))});this._magnifier=new _Magnifier(document.createElement("div"),this._viewpanelContainer,this._pageView)}_globalize(){var e=culture.Viewer;this._gSearchTitle.textContent=e.search;this._gMatchCase.innerHTML=" "+e.matchCase;this._gWholeWord.innerHTML=" "+e.wholeWord;this._gSearchResults.textContent=e.searchResults;this._gThumbnailsTitle.textContent=e.thumbnails;this._gOutlinesTitle.textContent=e.outlines;this._gPageSetupTitle.textContent=e.pageSetup;this._gPageSetupApplyBtn.textContent=e.ok;this._gExportsPageTitle.textContent=e.exports;this._gExportsPageApplyBtn.textContent=e.exportOk;this._gExportFormatTitle.textContent=e.exportFormat}_autoCalculateHeight(){if(this._shouldAutoHeight()){var e=this._viewpanelContainer.style.height;this._viewpanelContainer.style.height="100%";this._viewerContainer.style.height=Math.max(this._viewpanelContainer.getBoundingClientRect().height,ViewerBase._viewpanelContainerMinHeight)+"px";this._viewpanelContainer.style.height=e}}_bindEvents(){this.addEventListener(window,"unload",()=>{this._documentSource&&this._documentSource.dispose()});this.addEventListener(window,"resize",()=>{const e=window.devicePixelRatio;if(this._devicePixelRatio!==e){this._devicePixelRatio=e;this._resetViewPanelContainerWidth()}});this.addEventListener(document,"mousemove",e=>{if(this.fullScreen&&this._miniToolbar){const t=this._checkMiniToolbarVisible(e);if(null!=this._miniToolbarPinnedTimer&&t){clearTimeout(this._miniToolbarPinnedTimer);this._miniToolbarPinnedTimer=null;this._showMiniToolbar(t)}else null==this._miniToolbarPinnedTimer&&this._showMiniToolbar(t)}});this.addEventListener(document,"keydown",e=>{e.keyCode===Key.Escape&&(this.fullScreen=!1)});this._historyManager.statusChanged.addHandler(this._onHistoryManagerStatusUpdated,this);this._onHistoryManagerStatusUpdated();this._pageView.pageIndexChanged.addHandler(()=>{this._initialScroll?this._initialScroll=!1:this._addHistory(!1,!0);this._updatePageIndex(this._pageView.pageIndex)});this._pageView.zoomFactorChanged.addHandler((e,t)=>{this.zoomMode===ZoomMode.Custom&&this._addHistory(!1,!0,{zoomFactor:t.oldValue});this.onZoomFactorChanged(t)});this._pageView.zoomModeChanged.addHandler((e,t)=>{this._addHistory(!1,!0,{zoomMode:t.oldValue});this.onZoomModeChanged(t)});this.viewModeChanged.addHandler((e,t)=>{this._addHistory(!1,!0,{viewMode:t.oldValue,zoomMode:this.zoomMode,zoomFactor:this.zoomFactor},!0)});this._positionChangedTimeout=null;let e=null;this._pageView.positionChanged.addHandler(()=>{if(!this._pageMoving){this._positionChangedTimeout||(e=this._pageIndex);clearTimeout(this._positionChangedTimeout);this._positionChangedTimeout=setTimeout(()=>{e!==this._pageIndex?this._addHistory(!1,!0):this._updateHistoryCurrent(!0);this._positionChangedTimeout=null},ViewerBase._historyTimeout)}});this._pageView.pageLoaded.addHandler((e,t)=>{this.onPageLoaded(t)})}_checkMiniToolbarVisible(e){var t=e.clientX,i=e.clientY,r=this._miniToolbar.getBoundingClientRect(),s=r.left-60,a=r.right+60,o=r.top-60,n=r.bottom+60;return t>=s&&t<=a&&i>=o&&i<=n}_showMiniToolbar(e){var t,i=parseFloat(getComputedStyle(this._miniToolbar,"").opacity),r=this._miniToolbar;t=e?setInterval(()=>{if(i>=.8)window.clearInterval(t);else{i+=.01;r.style.opacity=i.toString()}},1):setInterval(()=>{if(i<0)window.clearInterval(t);else{i-=.01;r.style.opacity=i.toString()}},1)}_goToBookmark(e){this._documentSource&&e.data&&this._documentSource.getBookmark(e.data).then(e=>{e&&this._scrollToPosition(e,!0)})}_executeCustomAction(e){if(this._documentSource&&e.data){this._initialPosition={pageIndex:this._pageIndex,pageBounds:{x:0,y:0,width:0,height:0}};this._resetDocument();this._showViewPanelMessage();this._setDocumentRendering();var t=this._documentSource;this._documentSource.executeCustomAction(e).then(e=>{this._initialPosition=e||this._initialPosition;this._getStatusUtilCompleted(t)}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))})}}_getStatusUtilCompleted(e){!e||e.isLoadCompleted||e.isDisposed||e.getStatus().then(()=>{this._documentSource===e&&setTimeout(()=>this._getStatusUtilCompleted(e),e._innerService.getPingTimeout())}).catch(e=>{this._showViewPanelErrorMessage(e)})}_initChildren(){this._initPageView();this._initToolbar();this._initSidePanel();this._initSplitter();this._initFooter();this._initSearchBar();this._initMiniToolbar()}_initSearchBar(){this._searchBarInstance=new _SearchBar(this._searchBar,this);this._showSearchBar(!1)}_showSearchBar(e){var t=this.hostElement.querySelector("."+ViewerBaseClsNames.outer);if(e){removeClass(this._searchBar,"hidden");addClass(t,"with-searchbar")}else{addClass(this._searchBar,"hidden");removeClass(t,"with-searchbar")}}_initFooter(){this._viewerZoomBarInstance=new _ViewerZoomBar(this._zoomBar,this);this.addEventListener(this._footer.querySelector("."+UtilitesClsNames.close),"click",()=>{this._showFooter(!1)})}_showFooter(e){var t=this.hostElement.querySelector("."+ViewerBaseClsNames.outer);if(e){removeClass(this._footer,"hidden");addClass(t,"with-footer")}else{addClass(this._footer,"hidden");removeClass(t,"with-footer")}this._pageView.refresh()}_createChildren(){var e=this.getTemplate();this.applyTemplate(`${ViewerBaseClsNames.hostElement} ${ControlClsNames.hostElement}`,e,{_viewpanelContainer:"viewpanel-container",_toolbar:"toolbar",_mobileToolbar:"mobile-toolbar",_miniToolbar:"mini-toolbar",_leftPanel:"viewer-left-panel",_sidePanel:"side-panel",_viewerContainer:"viewer-container",_splitter:"splitter",_footer:"viewer-footer",_zoomBar:"zoom-bar",_searchBar:"search-bar"});this._initChildren()}_initPageView(){this._compositePageViewInstance=new _CompositePageView(this._viewpanelContainer);this._compositePageViewInstance.viewMode=this.viewMode}get _pageView(){return Control.getControl(this._viewpanelContainer)}_initSplitter(){this.addEventListener(this._splitter,"click",()=>this._toggleSplitter())}_toggleSplitter(e){var t=GlyphClsNames.left,i=GlyphClsNames.right,r=this._splitter.querySelector("span"),s=Control.getControl(this._sidePanel);if(!0===e){if(hasClass(r,i))return}else if(!1===e){if(hasClass(r,t))return}else e=hasClass(r,t);if(e){s.collapse();r.className=i}else{if(0===s.visibleTabPagesCount)return;r.className=t;s.expand()}this._resetViewPanelContainerWidth()}_resetMiniToolbarPosition(){if(this._miniToolbar){var e=this.hostElement.getBoundingClientRect().width,t=this._miniToolbar.getBoundingClientRect().width;this._miniToolbar.style.left=(e-t)/2+"px"}}_resetToolbarWidth(){Control.getControl(this._toolbar).resetWidth()}_resetViewPanelContainerWidth(){!this._isMobileTemplate()&&this.hostElement.getBoundingClientRect().width<=ViewerBase._narrowWidthThreshold?addClass(this.hostElement,ViewerBase._narrowCss):removeClass(this.hostElement,ViewerBase._narrowCss);var e=this._splitter?this._splitter.getBoundingClientRect().width:0,t=this._leftPanel?this._leftPanel.getBoundingClientRect().width:0;this._viewpanelContainer.style.width=this._viewerContainer.getBoundingClientRect().width-e-t+"px";this._pageView.invalidate()}_shouldAutoHeight(){return("100%"===this.hostElement.style.height||"auto"===this.hostElement.style.height)&&!this.fullScreen}_initSidePanel(){var e=new _SideTabs(this._sidePanel);e.collapse();e.collapsed.addHandler(()=>{this._toggleSplitter(!0)});e.expanded.addHandler(()=>{this._toggleSplitter(!1);var e=this._splitter?this._splitter.getBoundingClientRect().width:0;this._sidePanel.getBoundingClientRect().width+e>this._viewerContainer.getBoundingClientRect().width&&addClass(this._sidePanel,"collapsed")});e.tabPageVisibilityChanged.addHandler((t,i)=>{(!i.tabPage.isHidden&&1==e.visibleTabPagesCount||i.tabPage.isHidden&&0==e.visibleTabPagesCount)&&this._resetViewPanelContainerWidth()});this._initSidePanelThumbnails();this._initSidePanelOutlines();this._initSidePanelSearch();this._initSidePanelExports();this._initSidePanelPageSetup()}_clearPreHightLights(){this._pages.forEach(e=>{var t;if(e.content){t=e.content.querySelectorAll(".highlight");for(let e=0;e<t.length;e++)t.item(e).parentNode.removeChild(t.item(e))}})}_highlightPosition(e,t){var i,r={pageIndex:e,pageBounds:t.length>0?t[0]:null};this._scrollToPosition(r,!0).then(e=>{this._clearPreHightLights();this._pages[this.pageIndex].getContent().then(e=>{i=e.querySelector("g");for(let e=0;e<t.length;e++){const r=document.createElementNS("http://www.w3.org/2000/svg","rect");r.setAttributeNS(null,"x",_twipToPixel(t[e].x).toString());r.setAttributeNS(null,"y",_twipToPixel(t[e].y).toString());r.setAttributeNS(null,"height",_twipToPixel(t[e].height).toString());r.setAttributeNS(null,"width",_twipToPixel(t[e].width).toString());r.setAttributeNS(null,"class","highlight");i.appendChild(r)}})})}_scrollToPosition(e,t){!0===t&&this._addHistory(!0,!1);e.pageIndex=e.pageIndex||0;return this._pageView.moveToPosition(e)}_initSidePanelSearch(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.search,icons.search);this._gSearchTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);const getTabCheckboxes=e=>e.outContent.querySelectorAll('input[type="checkbox"]'),getTabTextInputs=e=>e.outContent.querySelectorAll('input[type="text"]');e.tabPageActived.addHandler(e=>{if(e.activedTabPage===t){const e=getTabCheckboxes(t);e[0].checked=this._searchManager.matchCase;e[1].checked=this._searchManager.wholeWord;getTabTextInputs(t)[0].value=this._searchManager.text}});t.format(i=>{var r=_toDOMs(`<div class="${ViewerBaseClsNames.searchContainer}"><input class="${ViewerBaseClsNames.searchBox}" wj-part="search-box" type="text"/><div class="${InputFormElementsClsNames.btnGroup}"><button class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.searchPre}">`+_createSvgBtn(icons.searchPrevious).innerHTML+"</button>"+`<button class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.searchNext}">`+_createSvgBtn(icons.searchNext).innerHTML+"</button></div></div>"+`<div class="${ViewerBaseClsNames.searchOption}"><label><span wj-part="g-matchCase"> `+culture.Viewer.matchCase+'</span><input type="checkbox" wj-part="match-case" /></label></div>'+`<div class="${ViewerBaseClsNames.searchOption}"><label><span wj-part="g-wholeWord"> `+culture.Viewer.wholeWord+'</span><input type="checkbox" wj-part="whole-word" /></label></div>'+`<h3 wj-part="g-searchResults" class="${ViewerBaseClsNames.searchResult}">`+culture.Viewer.searchResults+"</h3>");this._gMatchCase=r.querySelector('[wj-part="g-matchCase"]');this._gWholeWord=r.querySelector('[wj-part="g-wholeWord"]');this._gSearchResults=r.querySelector('[wj-part="g-searchResults"]');i.outContent.querySelector("."+ViewerBaseClsNames.tabtitleWrapper).appendChild(r);const s=getTabCheckboxes(i);var a=s[0],o=s[1],n=getTabTextInputs(i)[0],h=i.outContent.querySelector("."+ViewerBaseClsNames.searchPre),l=i.outContent.querySelector("."+ViewerBaseClsNames.searchNext);addClass(i.content.parentElement,"search-wrapper");addClass(i.content,ViewerBaseClsNames.searchResultList);var c=new ListBox(i.content),d=!1,u=!1;c.formatItem.addHandler((e,t)=>{var i=t.item,r=t.data,s=document.createElement("div"),a=document.createElement("div");i.innerHTML="";a.innerHTML=r.nearText;a.className=ViewerBaseClsNames.searchText;s.innerHTML="Page "+(r.pageIndex+1);s.className=ViewerBaseClsNames.searchPage;addClass(i,ViewerBaseClsNames.searchItem);i.setAttribute("tabIndex","-1");i.appendChild(a);i.appendChild(s)});c.selectedIndexChanged.addHandler(()=>{this._searchManager.currentIndex=c.selectedIndex});const enableInputs=(e=!0)=>{const i=t.outContent.querySelectorAll("input");for(let t=0;t<i.length;t++)i.item(t).disabled=!e},p=t.outContent.querySelectorAll("input[type=text]")[0];this._searchManager.searchStarted.addHandler(()=>{p&&p.value!==this._searchManager.text&&(p.value=this._searchManager.text);enableInputs(!1)});this._searchManager.searchCompleted.addHandler(()=>{d=!0;this._clearPreHightLights();c.itemsSource=this._searchManager.searchResult;d=!1;enableInputs(!0);this._updateHistoryCurrent()});this._searchManager.currentChanged.addHandler(()=>{if(!d&&!u){var e=this._searchManager.current;if(e){u=!0;c.selectedIndex=this._searchManager.currentIndex;this._highlightPosition(e.pageIndex,e.boundsList);u=!1}}});this._searchManager.resultsCleared.addHandler(()=>{c.itemsSource=null;this._clearPreHightLights()});var update=()=>{this._searchManager.clear();c.itemsSource=null;a.checked=!1;o.checked=!1;n.value="";this._documentSource&&this._documentSource.features&&(!this._documentSource.paginated||this._documentSource.features.textSearchInPaginatedMode)?e.show(i):e.hide(i)};this._documentSourceChanged.addHandler(()=>{this._documentSource&&_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,update);update()});this.addEventListener(a,"click",()=>{this._searchManager.matchCase=a.checked});this.addEventListener(o,"click",()=>{this._searchManager.wholeWord=o.checked});this.addEventListener(n,"input",()=>{this._searchManager.text=n.value});this.addEventListener(n,"keyup",e=>{var t=e||window.event;t.keyCode===Key.Enter&&this._searchManager.search(t.shiftKey)});this.addEventListener(l,"click",()=>this._searchManager.search());this.addEventListener(h,"click",()=>this._searchManager.search(!0))})}_initSidePanelOutlines(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.outlines,icons.outlines);this._gOutlinesTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._outlinesPageId=t.id;t.format(t=>{addClass(t.content,ViewerBaseClsNames.outlinesTree);var i=new FlexGrid(t.content);i.initialize({autoGenerateColumns:!1,columns:[{binding:"caption",width:"*"}],isReadOnly:!0,childItemsPath:"children",allowResizing:AllowResizing.None,headersVisibility:HeadersVisibility.None});i.itemFormatter=(e,t,i,r)=>{var s;s=r.firstElementChild?r.firstElementChild.outerHTML:" ";var a=e.rows[t].dataItem;r.innerHTML=`${s}<a>${a.caption}</a>`};var r=!0;i.selectionChanged.addHandler((t,i)=>{if(!r){var s=i.getRow();if(s){const r=s.dataItem;if(r.position)this._scrollToPosition(r.position,!1);else if(r.target){if(!this._documentSource)return;this._documentSource.getBookmark(r.target).then(e=>{r.position=e;t.getSelectedState(i.row,i.col)!=SelectedState.None&&this._scrollToPosition(e,!1)},()=>{})}this._isMobileTemplate()&&e.collapse()}}});var s=!1,refreshTree=()=>{if(!s&&!e.isCollapsed&&t.isActived&&!t.isHidden){i.refresh();s=!0}},toggleTab=()=>{if(this._documentSource){_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,()=>{if(this._documentSource.hasOutlines)this._documentSource.getOutlines().then(a=>{r=!0;s=!1;i.itemsSource=a;e.show(t);refreshTree();r=!1});else{i.itemsSource=null;e.hide(t)}})}else{i.itemsSource=null;e.hide(t)}};this._documentSourceChanged.addHandler(toggleTab);e.tabPageActived.addHandler(refreshTree);toggleTab()})}_initSidePanelThumbnails(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.thumbnails,icons.thumbnails);this._gThumbnailsTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._thumbnailsPageId=t.id;t.format(t=>{addClass(t.content,ViewerBaseClsNames.thumbnailList);var i=new ListBox(t.content),r=null,s=!1;i.formatItem.addHandler((e,t)=>{var i=t.item,r=t.data;i.innerHTML="";if(this._pageView.pages){var s=document.createElement("div"),a=_toDOM('<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml: space = "preserve" ></svg>'),o=document.createElementNS("http://www.w3.org/2000/svg","g"),n=document.createElementNS("http://www.w3.org/2000/svg","image"),h=document.createElement("div"),l=this._pageView.pages[t.index],c=l.size.height.valueInPixel*ViewerBase._thumbnailWidth/l.size.width.valueInPixel;addClass(i,ViewerBaseClsNames.thumbnailItem);r().then(e=>{n.setAttributeNS("http://www.w3.org/1999/xlink","href",e)});n.setAttribute("x","0");n.setAttribute("y","0");n.setAttribute("width",ViewerBase._thumbnailWidth.toString());n.setAttribute("height",c.toString());addClass(s,ViewerBaseClsNames.pageThumbnail);s.setAttribute("tabIndex","-1");o.appendChild(n);a.appendChild(o);s.appendChild(a);i.appendChild(s);rotateThumb(a,l);h.className="page-index";h.innerHTML=(t.index+1).toString();i.appendChild(h)}});i.selectedIndexChanged.addHandler(()=>{if(!(s||i.selectedIndex<0||i.selectedIndex==this._pageIndex)){this.moveToPage(i.selectedIndex);this._isMobileTemplate()&&e.collapse()}});this.pageIndexChanged.addHandler(()=>{i.selectedIndex=this._pageIndex});var rotateThumb=(e,t)=>{var i=ViewerBase._thumbnailWidth,r=t.size.height.valueInPixel*i/t.size.width.valueInPixel,s=e.parentNode;_transformSvg(e,i,r,1,t.rotateAngle);switch(t.rotateAngle){case _RotateAngle.Rotation90:case _RotateAngle.Rotation270:{const e=r;r=i;i=e;break}}s.style.width=i+"px";s.style.height=r+"px";e.setAttribute("width",i.toString());e.setAttribute("height",r.toString())},createThumbnails=()=>{if(!this._documentSource||!this._documentSource.isLoadCompleted||!this._documentSource.pageCount)return null;var e=[];for(let t=0;t<this._documentSource.pageCount;t++)(t=>{e.push(()=>{var e=new _Promise;this._documentSource.getExportedUrl({format:"png",resolution:50,outputRange:t+1}).then(t=>{this._documentSource&&this._documentSource._innerService&&!this._documentSource.isDisposed||e.resolve(null);this._documentSource._innerService.downloadDataUrl(t).then(t=>{e.resolve(t)},()=>e.resolve(null))},()=>e.resolve(null));return e})})(t);return e},updateItems=()=>{if(!e.isCollapsed&&t.isActived){r=r||createThumbnails();(()=>{t.isActived&&i.itemsSource!==r&&i.deferUpdate(()=>{s=!0;i.itemsSource=r;i.selectedIndex=this._pageIndex;s=!1})})()}},update=()=>{if(this._documentSource&&this._documentSource.hasThumbnails){e.show(t);r=null;updateItems()}else{e.hide(t);i.itemsSource=null}},bindEvents=()=>{if(this._documentSource&&this._documentSource.hasThumbnails){_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,update);_addWjHandler(this._documentEventKey,this._documentSource.pageCountChanged,update);_addWjHandler(this._documentEventKey,this._documentSource.pageSettingsChanged,update);update()}else{e.hide(t);i.itemsSource=null}};this._documentSourceChanged.addHandler(bindEvents);bindEvents();e.tabPageActived.addHandler(()=>{e.activedTabPage.id===this._thumbnailsPageId&&updateItems()});updateItems();this._pageView.rotateAngleChanged.addHandler(()=>{const e=i.hostElement.querySelectorAll("svg");for(let t=0;t<e.length;t++)rotateThumb(e.item(t),this._pageView.pages[t])})})}_initSidePanelExports(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.exports,icons.exports);this._gExportsPageTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._exportsPageId=t.id;t.format(t=>{var i=_toDOMs(`<div class="${ViewerBaseClsNames.exportContainer}"><label wj-part="g-wj-exportformat">`+culture.Viewer.exportFormat+"</label>"+`<div class="${ViewerBaseClsNames.exportFormats}"></div></div>`);t.outContent.querySelector("."+ViewerBaseClsNames.tabtitleWrapper).appendChild(i);this._gExportFormatTitle=t.outContent.querySelector('[wj-part="g-wj-exportformat"]');var r=t.outContent.querySelector("."+ViewerBaseClsNames.exportFormats);new ComboBox(r,{keyActionPrintCharacters:0,keyActionTab:0});addClass(t.content.parentElement,ViewerBaseClsNames.exportFormatsWrapper);var s=document.createElement("div");this._exportOptionEditor=new _ExportOptionEditor(s);t.content.appendChild(s);var a=_toDOMs(`<div class="${ViewerBaseClsNames.exportFormatsFooter}"><a wj-part="btn-apply" class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.applyButton}" tabindex="-1">`+culture.Viewer.exportOk+"</a></div>");t.content.appendChild(a);var o=t.content.querySelector('[wj-part="btn-apply"]');this._gExportsPageApplyBtn=o;this.addEventListener(o,"click",()=>{this._documentSource.export(this._exportOptionEditor.options);e.collapse()})});var i=!0;this._documentSourceChanged.addHandler(()=>{i=!0;this._documentSource&&_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,()=>{i&&this._ensureExportFormatsLoaded().then(()=>{this._updateExportTab();i=null==this._exportFormats})})});e.tabPageActived.addHandler(()=>{i&&e.activedTabPage.id===this._exportsPageId&&this._ensureExportFormatsLoaded().then(()=>{this._updateExportTab();i=null==this._exportFormats})})}_ensureExportFormatsLoaded(){if(!this._exportFormats&&this._documentSource&&!this._documentSource.isDisposed&&this._documentSource.isInstanceCreated)return this._documentSource.getSupportedExportDescriptions().then(e=>{this._exportFormats=e;this._setViewerAction(_ViewerActionType.ShowExportsPanel)});var e=new _Promise;e.resolve();return e}_updateExportTab(e){if(this._exportFormats){var t=Control.getControl(this._sidePanel).getTabPage(this._exportsPageId),i=Control.getControl(t.outContent.querySelector("."+ViewerBaseClsNames.exportFormats)),r=Control.getControl(t.content.firstElementChild);if(e){r.refresh();i.itemsSource&&i.itemsSource.forEach(e=>{e.name=this._exportItemDescriptions[e.format].name});i.refresh()}else{const e=[];this._exportFormats.forEach(t=>{var i=this._exportItemDescriptions[t.format];if(!isIOS()||i.supportIOS){t.name=i.name;e.push(t)}});i.selectedIndexChanged.addHandler(()=>{r.exportDescription=i.selectedItem});i.itemsSource=e;i.displayMemberPath="name";i.selectedValuePath="format";i.selectedIndex=-1}}}_initSidePanelPageSetup(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.pageSetup,icons.pageSetup);this._gPageSetupTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);this._pageSetupPageId=t.id;t.format(t=>{var i=document.createElement("div"),r=new _PageSetupEditor(i);t.content.appendChild(i);addClass(i,ViewerBaseClsNames.pageSetupContainer);var s=_toDOMs(`<div class="${ViewerBaseClsNames.pageSetupFooter}"><a wj-part="btn-apply" class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.applyButton}" tabindex="-1">`+culture.Viewer.ok+"</a></div>");t.content.appendChild(s);var a=t.content.querySelector('[wj-part="btn-apply"]');this._gPageSetupApplyBtn=a;this.addEventListener(a,"click",()=>{this._setPageSettings(r.pageSettings);e.collapse()});var updatePageSettings=()=>{r.pageSettings=this._documentSource.pageSettings},update=()=>{if(this._documentSource){_addWjHandler(this._documentEventKey,this._documentSource.pageSettingsChanged,updatePageSettings);updatePageSettings()}};this._documentSourceChanged.addHandler(update);update()})}_executeAction(e){if(!this._actionIsDisabled(e))switch(e){case _ViewerActionType.TogglePaginated:this._innerPaginated=!this._innerPaginated;break;case _ViewerActionType.Print:this._documentSource&&this._documentSource.print(this._pages.map(e=>e.rotateAngle));break;case _ViewerActionType.ShowExportsPanel:Control.getControl(this._sidePanel).active(this._exportsPageId);break;case _ViewerActionType.Portrait:this._setPageLandscape(!1);break;case _ViewerActionType.Landscape:this._setPageLandscape(!0);break;case _ViewerActionType.ShowPageSetupDialog:this.showPageSetupDialog();break;case _ViewerActionType.FirstPage:this.moveToPage(0);break;case _ViewerActionType.LastPage:this._moveToLastPage();break;case _ViewerActionType.PrePage:this.moveToPage(this._pageIndex-1);break;case _ViewerActionType.NextPage:this.moveToPage(this._pageIndex+1);break;case _ViewerActionType.Backward:this._moveBackwardHistory();break;case _ViewerActionType.Forward:this._moveForwardHistory();break;case _ViewerActionType.SelectTool:this.mouseMode=MouseMode.SelectTool;break;case _ViewerActionType.MoveTool:this.mouseMode=MouseMode.MoveTool;break;case _ViewerActionType.Continuous:this.viewMode=ViewMode.Continuous;break;case _ViewerActionType.Single:this.viewMode=ViewMode.Single;break;case _ViewerActionType.FitPageWidth:this.zoomMode=ZoomMode.PageWidth;break;case _ViewerActionType.FitWholePage:this.zoomMode=ZoomMode.WholePage;break;case _ViewerActionType.ZoomOut:this._zoomBtnClicked(!1,ViewerBase._defaultZoomValues);break;case _ViewerActionType.ZoomIn:this._zoomBtnClicked(!0,ViewerBase._defaultZoomValues);break;case _ViewerActionType.ToggleFullScreen:this.fullScreen=!this.fullScreen;break;case _ViewerActionType.ShowHamburgerMenu:this._hamburgerMenu.showMenu();break;case _ViewerActionType.ShowViewMenu:this._viewMenu.showMenu();break;case _ViewerActionType.ShowSearchBar:this._showSearchBar(hasClass(this._searchBar,"hidden"));this._setViewerAction(_ViewerActionType.ShowSearchBar);break;case _ViewerActionType.ShowThumbnails:Control.getControl(this._sidePanel).active(this._thumbnailsPageId);break;case _ViewerActionType.ShowOutlines:Control.getControl(this._sidePanel).active(this._outlinesPageId);break;case _ViewerActionType.ShowPageSetupPanel:Control.getControl(this._sidePanel).active(this._pageSetupPageId);break;case _ViewerActionType.ShowZoomBar:this._showFooter(!0);break;case _ViewerActionType.SearchPrev:this._searchManager.search(!0);break;case _ViewerActionType.SearchNext:this._searchManager.search();break;case _ViewerActionType.ShowSearchOptions:this._searchOptionsMenu.showMenu(!0);break;case _ViewerActionType.SearchMatchCase:this._searchManager.matchCase=!this._searchManager.matchCase;break;case _ViewerActionType.SearchMatchWholeWord:this._searchManager.wholeWord=!this._searchManager.wholeWord;break;case _ViewerActionType.RubberbandTool:this.mouseMode=MouseMode.RubberbandTool;break;case _ViewerActionType.MagnifierTool:this.mouseMode=MouseMode.MagnifierTool;break;case _ViewerActionType.RotateDocument:this._rotateDocument();break;case _ViewerActionType.RotatePage:this._rotatePage()}}_initSearchOptionsMenu(e){this._searchOptionsMenu=new _SearchOptionsMenu(this,e)}_initHamburgerMenu(e){this._hamburgerMenu=new _HamburgerMenu(this,e)}_initViewMenu(e){this._viewMenu=new _ViewMenu(this,e)}_initToolbar(){new _ViewerToolbar(this._toolbar,this);new _ViewerMobileToolbar(this._mobileToolbar,this)}_clearExportFormats(){this._exportFormats=null}get _exportItemDescriptions(){ViewerBase._exportItems||(ViewerBase._exportItems={pdf:{name:culture.Viewer.pdfExportName,supportIOS:!0},doc:{name:culture.Viewer.docExportName,supportIOS:!1},docx:{name:culture.Viewer.docxExportName,supportIOS:!1},rtf:{name:culture.Viewer.rtfExportName,supportIOS:!1},xlsx:{name:culture.Viewer.xlsxExportName,supportIOS:!0},xls:{name:culture.Viewer.xlsExportName,supportIOS:!0},mhtml:{name:culture.Viewer.mhtmlExportName,supportIOS:!0},html:{name:culture.Viewer.htmlExportName,supportIOS:!0},zip:{name:culture.Viewer.metafileExportName,supportIOS:!1},csv:{name:culture.Viewer.csvExportName,supportIOS:!0},tiff:{name:culture.Viewer.tiffExportName,supportIOS:!0},bmp:{name:culture.Viewer.bmpExportName,supportIOS:!1},emf:{name:culture.Viewer.emfExportName,supportIOS:!1},gif:{name:culture.Viewer.gifExportName,supportIOS:!1},jpeg:{name:culture.Viewer.jpegExportName,suportIOS:!1},jpg:{name:culture.Viewer.jpegExportName,supportIOS:!1},png:{name:culture.Viewer.pngExportName,supportIOS:!1},xml:{name:"XML document",supportIOS:!1}});return ViewerBase._exportItems}_actionIsChecked(e){switch(e){case _ViewerActionType.TogglePaginated:return!0===this._innerPaginated;case _ViewerActionType.Landscape:return!(!this._documentSource||!this._documentSource.pageSettings)&&this._documentSource.pageSettings.landscape;case _ViewerActionType.Portrait:return!(!this._documentSource||!this._documentSource.pageSettings)&&!this._documentSource.pageSettings.landscape;case _ViewerActionType.SelectTool:return this.mouseMode===MouseMode.SelectTool;case _ViewerActionType.MoveTool:return this.mouseMode===MouseMode.MoveTool;case _ViewerActionType.RubberbandTool:return this.mouseMode===MouseMode.RubberbandTool;case _ViewerActionType.MagnifierTool:return this.mouseMode===MouseMode.MagnifierTool;case _ViewerActionType.Continuous:return this.viewMode==ViewMode.Continuous;case _ViewerActionType.Single:return this.viewMode==ViewMode.Single;case _ViewerActionType.ToggleFullScreen:return this.fullScreen;case _ViewerActionType.FitPageWidth:return this.zoomMode==ZoomMode.PageWidth;case _ViewerActionType.FitWholePage:return this.zoomMode==ZoomMode.WholePage;case _ViewerActionType.SearchMatchCase:return this._searchManager.matchCase;case _ViewerActionType.SearchMatchWholeWord:return this._searchManager.wholeWord;case _ViewerActionType.ShowSearchBar:return!hasClass(this._searchBar,"hidden")}return!1}_isDocumentSourceLoaded(){return this._documentSource&&this._documentSource.isLoadCompleted}_actionIsDisabled(e){if(!(this._isDocumentSourceLoaded()&&this._documentSource.pageCount>0))return!0;switch(e){case _ViewerActionType.TogglePaginated:return null==this._innerPaginated;case _ViewerActionType.ShowExportsPanel:return!this._exportFormats||0===this._exportFormats.length;case _ViewerActionType.Landscape:case _ViewerActionType.Portrait:case _ViewerActionType.ShowPageSetupDialog:case _ViewerActionType.ShowPageSetupPanel:return!this._documentSource||!this._documentSource.pageSettings||!this._documentSource.paginated;case _ViewerActionType.FirstPage:case _ViewerActionType.PrePage:return this._pageIndex<=0;case _ViewerActionType.LastPage:case _ViewerActionType.NextPage:return this._pageIndex>=this._documentSource.pageCount-1;case _ViewerActionType.Backward:return!this._historyManager.canBackward();case _ViewerActionType.Forward:return!this._historyManager.canForward();case _ViewerActionType.Continuous:case _ViewerActionType.Single:return!this._documentSource||!this._documentSource.paginated;case _ViewerActionType.ZoomOut:return this.zoomFactor<=ViewerBase._defaultZoomValues[0].value;case _ViewerActionType.ZoomIn:{const e=ViewerBase._defaultZoomValues;return this.zoomFactor>=e[e.length-1].value}}return!1}_actionIsShown(e){var t=this._documentSource?this._documentSource.features:null;switch(e){case _ViewerActionType.TogglePaginated:return t&&t.paginated&&t.nonPaginated;case _ViewerActionType.Landscape:case _ViewerActionType.Portrait:case _ViewerActionType.ShowPageSetupDialog:case _ViewerActionType.ShowPageSetupPanel:return t?t.pageSettings:this._supportsPageSettingActions();case _ViewerActionType.SelectTool:case _ViewerActionType.MoveTool:case _ViewerActionType.MagnifierTool:case _ViewerActionType.RubberbandTool:return!isMobile();case _ViewerActionType.ShowSearchBar:return t&&(!this._documentSource.paginated||t.textSearchInPaginatedMode);case _ViewerActionType.ShowOutlines:return this._documentSource&&this._documentSource.hasOutlines;case _ViewerActionType.ShowThumbnails:return this._documentSource&&this._documentSource.hasThumbnails}return!0}_onViewerActionStatusChanged(e){this._viewerActionStatusChanged.raise(this,e)}_setViewerAction(e,t,i,r){var s={actionType:e,disabled:t||this._actionIsDisabled(e),checked:i||this._actionIsChecked(e),shown:r||this._actionIsShown(e)};this._onViewerActionStatusChanged({action:s})}_updateViewerActions(){this._updatePageSettingsActions();this._updateViewModeActions();this._updateMouseModeActions();this._setViewerAction(_ViewerActionType.ShowExportsPanel)}_updateViewModeActions(){this._setViewerAction(_ViewerActionType.Continuous);this._setViewerAction(_ViewerActionType.Single)}_updatePageSettingsActions(){this._setViewerAction(_ViewerActionType.TogglePaginated);this._setViewerAction(_ViewerActionType.Landscape);this._setViewerAction(_ViewerActionType.Portrait);this._setViewerAction(_ViewerActionType.ShowPageSetupDialog)}_updateMouseModeActions(){this._setViewerAction(_ViewerActionType.SelectTool);this._setViewerAction(_ViewerActionType.MoveTool);this._setViewerAction(_ViewerActionType.MagnifierTool);this._setViewerAction(_ViewerActionType.RubberbandTool)}_updateZoomModeActions(){this._setViewerAction(_ViewerActionType.FitPageWidth);this._setViewerAction(_ViewerActionType.FitWholePage)}_updateZoomFactorActions(){this._setViewerAction(_ViewerActionType.ZoomOut);this._setViewerAction(_ViewerActionType.ZoomIn)}_onPageSettingsUpdated(){this._updatePageSettingsActions();this._updateViewModeActions();this._resetToolbarWidth()}_onPageCountUpdated(){this._updatePageNavActions();this._resetToolbarWidth()}_updatePageNavActions(){this._setViewerAction(_ViewerActionType.FirstPage);this._setViewerAction(_ViewerActionType.LastPage);this._setViewerAction(_ViewerActionType.PrePage);this._setViewerAction(_ViewerActionType.NextPage)}_onHistoryManagerStatusUpdated(){this._setViewerAction(_ViewerActionType.Backward);this._setViewerAction(_ViewerActionType.Forward)}_updateUI(){Object.keys(_ViewerActionType).forEach(e=>{isNaN(e)||this._setViewerAction(_ViewerActionType[_ViewerActionType[e]])});var e=Control.getControl(this._sidePanel);e&&e.enableAll(this._isDocumentSourceLoaded())}_updateViewContainerCursor(){this.mouseMode===MouseMode.MoveTool?hasClass(this._viewpanelContainer,"move")||addClass(this._viewpanelContainer,"move"):hasClass(this._viewpanelContainer,"move")&&removeClass(this._viewpanelContainer,"move")}_updateFullScreenStyle(){var e=document.body;if(this.fullScreen){this._bodyOriginScrollLeft=document.documentElement&&document.documentElement.scrollLeft||e.scrollLeft;this._bodyOriginScrollTop=document.documentElement&&document.documentElement.scrollTop||e.scrollTop;addClass(this.hostElement,"full-screen");addClass(e,"full-screen");this._hostOriginWidth=this.hostElement.style.width;this._hostOriginHeight=this.hostElement.style.height;this.hostElement.style.width="100%";this.hostElement.style.height="100%";window.scrollTo(0,0)}else{removeClass(this.hostElement,"full-screen");removeClass(e,"full-screen");this.hostElement.style.width=this._hostOriginWidth;this.hostElement.style.height=this._hostOriginHeight;if(isNumber(this._bodyOriginScrollLeft)){document.documentElement&&(document.documentElement.scrollLeft=this._bodyOriginScrollLeft);e.scrollLeft=this._bodyOriginScrollLeft}if(isNumber(this._bodyOriginScrollTop)){document.documentElement&&(document.documentElement.scrollTop=this._bodyOriginScrollTop);e.scrollTop=this._bodyOriginScrollTop}}this.refresh()}showPageSetupDialog(){this._pageSetupDialog||this._createPageSetupDialog();this._pageSetupDialog.showWithValue(this._documentSource.pageSettings)}_createPageSetupDialog(){var e=document.createElement("div");e.style.display="none";this.hostElement.appendChild(e);this._pageSetupDialog=new _PageSetupDialog(e);this._pageSetupDialog.applied.addHandler(()=>this._setPageSettings(this._pageSetupDialog.pageSettings))}zoomToView(){_deprecated("zoomToView","zoomMode");this._documentSource&&(this.zoomMode=ZoomMode.WholePage)}zoomToViewWidth(){_deprecated("zoomToViewWidth","zoomMode");this._documentSource&&(this.zoomMode=ZoomMode.PageWidth)}_setPageLandscape(e){var t=this._documentSource.pageSettings;_setLandscape(t,e);this._setPageSettings(t)}_setPaginated(e){var t=this._documentSource.features,i=this._documentSource.pageSettings;if(t&&i&&e!=i.paginated)if(e&&t.paginated){i.paginated=!0;this._setPageSettings(i);this._showSearchBar(!1)}else if(!e&&t.nonPaginated){i.paginated=!1;this._setPageSettings(i)}}_setPageSettings(e){this._showViewPanelMessage();this._setDocumentRendering();return this._documentSource.setPageSettings(e).then(()=>{this._resetDocument();this._reRenderDocument()}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))})}_showViewPanelErrorMessage(e){this._showViewPanelMessage(e,"errormessage")}_showViewPanelMessage(e,t){var i=this._viewpanelContainer.querySelector("."+ViewerBaseClsNames.viewerLoading);if(!i){(i=document.createElement("div")).innerHTML='<span class="verticalalign"></span><span class="textspan"></span>';this._viewpanelContainer.appendChild(i)}i.className=ViewerBaseClsNames.viewerLoading;t&&addClass(i,t);var r=i.querySelector(".textspan");r&&(r.innerHTML=e||culture.Viewer.loading)}_removeViewPanelMessage(){var e=this._viewpanelContainer.querySelector("."+ViewerBaseClsNames.viewerLoading);e&&this._viewpanelContainer.removeChild(e)}_reRenderDocument(){if(this._documentSource){this._showViewPanelMessage();this._documentSource.load()}}_zoomBtnClicked(e,t){let i,r;for(i=0;i<t.length;i++){if(t[i].value>this.zoomFactor){r=i-.5;break}if(t[i].value===this.zoomFactor){r=i;break}}null==r&&(r=t.length-.5);if((!(r<=0)||e)&&!(r>=t.length-1&&e)){r=e?Math.floor(r)+1:Math.ceil(r)-1;this.zoomFactor=t[r].value}}_getDocumentSource(){return this._documentSource}_setDocumentSource(e){this._loadDocument(e).then(()=>{this._documentSource==e&&this._ensureExportFormatsLoaded()})}_loadDocument(e,t=!1,i=!0){var r=new _Promise;if(this._documentSource===e&&!t)return r;this._disposeDocument(i);this._documentSource=e;if(e){_addWjHandler(this._documentEventKey,e.loading,()=>{this._updateUI()},this);_addWjHandler(this._documentEventKey,e.loadCompleted,this._onDocumentSourceLoadCompleted,this);_addWjHandler(this._documentEventKey,e.queryLoadingData,(e,t)=>{this.onQueryLoadingData(t)},this);if(e.isLoadCompleted){this._onDocumentSourceLoadCompleted();this._keepServiceConnection();r.resolve()}else{this._showViewPanelMessage();e.load().then(e=>{this._keepServiceConnection();r.resolve(e)}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))})}}this._onDocumentSourceChanged();return r}_actionElementClicked(e){var t=this._getActionInfo(e);t&&(t.kind===_ActionKind.Bookmark?this._goToBookmark(t):t.kind===_ActionKind.Custom&&this._executeCustomAction(t))}_getActionInfo(e){var t=e.getAttribute(_Page._bookmarkAttr);return t?{kind:_ActionKind.Bookmark,data:t}:(t=e.getAttribute(_Page._customActionAttr))?{kind:_ActionKind.Custom,data:t}:null}_onDocumentSourceLoadCompleted(){var e=this._documentSource.errors;if(this._documentSource.isLoadCompleted){this._removeViewPanelMessage();this._pages.length=0;if(this._documentSource.pageCount<=0){this._updateUI();return}const t={width:this._documentSource.pageSettings.width,height:this._documentSource.pageSettings.height};for(let e=0;e<this._documentSource.pageCount;e++){const i=this._createPage(e,t);i.linkClicked.addHandler((e,t)=>{this._magnifier&&this._magnifier.isActive||this._rubberband&&this._rubberband.isActive||this._actionElementClicked(t.element)});this._pages.push(i)}this._pageView.pages=this._pages;if(!this._autoHeightCalculated){this._autoCalculateHeight();this._autoHeightCalculated=!0}let i=this._documentSource.initialPosition||this._initialPosition;this._documentSource.initialPosition=null;this._initialPosition=null;if(!i||0==i.pageIndex){this._pageIndex=0;i={pageIndex:0}}this._documentSource.paginated||(this.viewMode=ViewMode.Single);this._initialScroll=!0;this._scrollToPosition(i);this._updateHistoryCurrent();if(e&&e.length>0){let t="";for(let i=0;i<e.length;i++)t+=e[i]+"\r\n"}this._updateUI()}}_createPage(e,t){return new _Page(this._documentSource,e,t)}_clearKeepSerConnTimer(){if(null!=this._keepSerConnTimer){clearTimeout(this._keepSerConnTimer);this._keepSerConnTimer=null}}_keepServiceConnection(){this._clearKeepSerConnTimer();var e=this._documentSource;e&&(this._keepSerConnTimer=setTimeout(()=>{this._documentSource===e&&this._documentSource.getStatus().then(()=>this._keepServiceConnection())},this._getExpiredTime()))}_getExpiredTime(){if(this._expiredTime)return this._expiredTime;var e=this._documentSource;if(!e||!e.expiredDateTime||!e.executionDateTime)return 6e3;this._expiredTime=e.expiredDateTime.getTime()-e.executionDateTime.getTime();this._expiredTime=Math.max(this._expiredTime-12e4,0);return this._expiredTime}_disposeDocument(e=!0){if(this._documentSource){_removeAllWjHandlers(this._documentEventKey,this._documentSource.disposed);_removeAllWjHandlers(this._documentEventKey,this._documentSource.pageCountChanged);_removeAllWjHandlers(this._documentEventKey,this._documentSource.pageSettingsChanged);_removeAllWjHandlers(this._documentEventKey,this._documentSource.loadCompleted);_removeAllWjHandlers(this._documentEventKey,this._documentSource.queryLoadingData);e&&this._documentSource.dispose()}this._resetDocument()}_resetDocument(){this._pages.length=0;this._pageView.resetPages();this._pageIndex=0;clearTimeout(this._historyTimer);this._historyManager.clear();this._rubberband&&this._rubberband.reset();this._magnifier&&this._magnifier.reset()}_setDocumentRendering(){this._documentSource._updateIsLoadCompleted(!1)}moveToPage(e){return this._innerMoveToPage(e)}_getCurrentPosition(){return _getPositionByHitTestInfo(this._pageView.hitTest(0,0))}_resolvePageIndex(e){return Math.min(this._documentSource.pageCount-1,Math.max(e,0))}_innerMoveToPage(e){if(this._resolvePageIndex(e)!=this.pageIndex){this._pageMoving=!0;this._addHistory(!1,!0)}this._updatePageIndex(e);return this._pageView.moveToPage(this.pageIndex).then(()=>{this._pageMoving=!1})}_moveToLastPage(){var e=new _Promise;return this._ensureDocumentLoadCompleted(e)?this._innerMoveToPage(this._documentSource.pageCount-1):e}_moveBackwardHistory(){if(this._ensureDocumentLoadCompleted()&&this._historyManager.canBackward()){var e=this._historyManager.backward();this._moveToHistory(e)}}_moveForwardHistory(){if(this._ensureDocumentLoadCompleted()&&this._historyManager.canForward()){var e=this._historyManager.forward();this._moveToHistory(e)}}_moveToHistory(e){if(e){this._historyMoving=!0;this.viewMode=e.viewMode;e.zoomMode===ZoomMode.Custom?this.zoomFactor=e.zoomFactor:this.zoomMode=e.zoomMode;this._scrollToPosition(e.position).then(e=>{this._historyMoving=!1});for(let t=0;t<e.pageAngles.length;t++)this._pageView.rotatePageTo(t,e.pageAngles[t])}}_isPositionEquals(e,t,i){return!this._pageMoving&&(e.pageIndex===t.pageIndex&&(!i||(e.pageBounds==t.pageBounds||null!=e.pageBounds&&null!=t.pageBounds&&(e.pageBounds.x===t.pageBounds.x&&e.pageBounds.y===t.pageBounds.y))))}_isPageAnglesChanged(e){if(e.length!=this._pageView.pages.length)return!0;var t=e.length;for(let i=0;i<t;i++)if(e[i]!==this._pageView.pages[i].rotateAngle)return!0;return!1}_updateHistoryCurrent(e=!1){this._historyManager.current.position=this._getCurrentPosition();if(!e){this._historyManager.current.zoomMode=this.zoomMode;this._historyManager.current.zoomFactor=this.zoomFactor;this._historyManager.current.viewMode=this.viewMode;this._updateCurrentPageAngles(this._historyManager.current)}}_innerAddHistory(e){var t=this._getCurrentPosition(),i=this._historyManager.current;if(!this._isPositionEquals(t,i.position,e)||this.viewMode!==i.viewMode||this.zoomMode!==i.zoomMode||this.zoomFactor!==i.zoomFactor||this._isPageAnglesChanged(i.pageAngles)){i.position=i.position||this._getCurrentPosition();i.viewMode=null==i.viewMode?this.viewMode:i.viewMode;i.zoomMode=null==i.zoomMode?this.zoomMode:i.zoomMode;i.zoomFactor=null==i.zoomFactor?this.zoomFactor:i.zoomFactor;i.pageAngles||this._updateCurrentPageAngles(i);this._historyManager.add();this._updateHistoryCurrent()}}_addHistory(e,t,i,r=!1){if(!(this._prohibitAddHistory||this.isUpdating||this._historyMoving)&&this._isDocumentSourceLoaded()){r&&(this._prohibitAddHistory=!0);if(t){this._mergeHistory(i);null!=this._historyTimer&&clearTimeout(this._historyTimer);this._historyTimer=setTimeout(()=>{this._historyTimer=null;this._innerAddHistory(e);this._prohibitAddHistory=!1},ViewerBase._historyTimeout)}else{this._innerAddHistory(e);this._prohibitAddHistory=!1}}}_updateCurrentPageAngles(e){e.pageAngles||(e.pageAngles=[]);var t=this._pageView.pages.length;for(let i=0;i<t;i++)e.pageAngles[i]=this._pageView.pages[i].rotateAngle}_mergeHistory(e){var t=this._historyManager.current;if(e){null!=e.viewMode&&(t.viewMode=e.viewMode);null!=e.zoomMode&&(t.zoomMode=e.zoomMode);null!=e.zoomFactor&&(t.zoomFactor=e.zoomFactor);if(e.pageAngles){t.pageAngles=[];const i=this._pageView.pages.length;for(let r=0;r<i;r++)t.pageAngles[r]=e.pageAngles[r]}}else{t.viewMode=this.viewMode;t.zoomMode=this.zoomMode;t.zoomFactor=this.zoomFactor;this._updateCurrentPageAngles(t)}}_ensureDocumentLoadCompleted(e){if(!this._documentSource){e&&e.reject("Cannot set page index without document source.");return!1}if(!this._documentSource.isLoadCompleted){e&&e.reject("Cannot set page index when document source is not loaded completely.");return!1}return!0}_updatePageIndex(e){if(this._documentSource){e=Math.min(this._documentSource.pageCount-1,Math.max(e,0));if(this._pageIndex!==e){this._pageIndex=e;this.onPageIndexChanged()}}}_getRotatedAngle(e){switch(e){case _RotateAngle.NoRotate:return _RotateAngle.Rotation90;case _RotateAngle.Rotation90:return _RotateAngle.Rotation180;case _RotateAngle.Rotation180:return _RotateAngle.Rotation270;case _RotateAngle.Rotation270:return _RotateAngle.NoRotate}return _RotateAngle.NoRotate}_rotateDocument(){this._addHistory(!1,!0);var e=this._pageView.pages.length;for(let t=0;t<e;t++)this._pageView.rotatePageTo(t,this._getRotatedAngle(this._pageView.pages[t].rotateAngle))}_rotatePage(){this._addHistory(!1,!0);var e=this._pageView.pages[this._pageIndex];this._pageView.rotatePageTo(this._pageIndex,this._getRotatedAngle(e.rotateAngle))}get zoomMode(){return this._pageView.zoomMode}set zoomMode(e){this._pageView.zoomMode=asEnum(e,ZoomMode)}get zoomFactor(){return this._pageView.zoomFactor}set zoomFactor(e){this._pageView.zoomFactor=e}get viewMode(){return this._viewMode}set viewMode(e){e=asEnum(e,ViewMode);if(this._viewMode!==e){const t=this._viewMode;this._viewMode=e;this.onViewModeChanged(t,e)}}get mouseMode(){return this._mouseMode}set mouseMode(e){if(this._mouseMode!==(e=asEnum(e,MouseMode))){this._mouseMode=e;switch(this._mouseMode){case MouseMode.RubberbandTool:this._rubberband.activate();this._magnifier.deactivate();break;case MouseMode.MagnifierTool:this._magnifier.activate();this._rubberband.deactivate();break;default:this._magnifier.deactivate();this._rubberband.deactivate()}this.onMouseModeChanged()}}get fullScreen(){return this._fullScreen}set fullScreen(e){if(this._fullScreen!==e){this._fullScreen=e;this.onFullScreenChanged()}}get pageIndex(){return this._pageIndex}_initMiniToolbar(){if(!Control.getControl(this._miniToolbar)){new _ViewerMiniToolbar(this._miniToolbar,this);addClass(this._miniToolbar,ViewerBaseClsNames.miniToolbar)}}_pinMiniToolbar(){this._showMiniToolbar(!0);this._miniToolbarPinnedTimer=setTimeout(()=>{this._showMiniToolbar(!1);this._miniToolbarPinnedTimer=null},ViewerBase._miniToolbarPinnedTime)}_onDocumentSourceChanged(){this._clearExportFormats();this._documentSourceChanged.raise(this);this._updateViewerActions();this._onPageSettingsUpdated();this._onPageCountUpdated();this._updateViewModeActions();this._searchManager.documentSource=this._documentSource;if(this._documentSource){_addWjHandler(this._documentEventKey,this._documentSource.pageSettingsChanged,this._onPageSettingsUpdated,this);_addWjHandler(this._documentEventKey,this._documentSource.pageCountChanged,this._onPageCountUpdated,this);_addWjHandler(this._documentEventKey,this._documentSource.loadCompleted,this._onPageCountUpdated,this)}}onPageIndexChanged(e){this.pageIndexChanged.raise(this);this._updatePageNavActions()}onViewModeChanged(e,t){this.viewModeChanged.raise(this,{oldValue:e,newValue:t});this._updateViewModeActions();this._pageView.viewMode=this.viewMode}onMouseModeChanged(e){this.mouseModeChanged.raise(this);if(this.mouseMode!==MouseMode.MoveTool&&this.mouseMode!==MouseMode.SelectTool||!isMobile()){this._updateMouseModeActions();this._updateViewContainerCursor();this._pageView.panMode=this.mouseMode===MouseMode.MoveTool}}onFullScreenChanged(e){this.fullScreenChanged.raise(this);this._setViewerAction(_ViewerActionType.ToggleFullScreen);this._updateFullScreenStyle();this.fullScreen&&this._pinMiniToolbar()}onZoomFactorChanged(e){this.zoomFactorChanged.raise(this,e);this._updateZoomFactorActions();this._updateZoomModeActions()}onZoomModeChanged(e){this.zoomModeChanged.raise(this,e);this._updateZoomModeActions();this._updateZoomFactorActions()}onQueryLoadingData(e){this.queryLoadingData.raise(this,e)}onBeforeSendRequest(e){this.beforeSendRequest.raise(this,e)}onPageLoaded(e){this.pageLoaded.raise(this,e)}beforeSend(e){this.onBeforeSendRequest(e)}dispose(){this._disposeDocument();if(this._rubberband){this._rubberband.dispose();this._rubberband=null}this._clearKeepSerConnTimer();if(this._historyTimer){clearTimeout(this._historyTimer);this._historyTimer=null}if(this._positionChangedTimeout){clearTimeout(this._positionChangedTimeout);this._positionChangedTimeout=null}if(null!=this._historyTimer){clearTimeout(this._historyTimer);this._historyTimer=null}if(this._searchOptionsMenu){this._searchOptionsMenu.dispose();this._searchOptionsMenu=null}if(this._magnifier){this._magnifier.dispose();this._magnifier=null}if(this._pageSetupDialog){this._pageSetupDialog.dispose();this._pageSetupDialog=null}if(this._searchManager){this._searchManager.dispose();this._searchManager=null}if(this._exportOptionEditor){this._exportOptionEditor.dispose();this._exportOptionEditor=null}if(this._compositePageViewInstance){this._compositePageViewInstance.dispose();this._compositePageViewInstance=null}if(this._searchBarInstance){this._searchBarInstance.dispose();this._searchBarInstance=null}if(this._viewerZoomBarInstance){this._viewerZoomBarInstance.dispose();this._viewerZoomBarInstance=null}super.dispose()}}ViewerBase._seperatorHtml=`<div class="${UtilitesClsNames.separator}" style='width:100%;height: 1px;margin: 3px 0;background-color:rgba(0,0,0,.2)'></div>`;ViewerBase._viewpanelContainerMinHeight=300;ViewerBase._miniToolbarPinnedTime=3e3;ViewerBase._narrowCss="narrow";ViewerBase._narrowWidthThreshold=400;ViewerBase._thumbnailWidth=100;ViewerBase._historyTimeout=300;ViewerBase._zoomValuesFormatter=e=>Math.floor(100*e+.5)+" %";ViewerBase._zoomValuesParser=e=>parseFloat(e.replace(" %",""));ViewerBase._defaultZoomValues=[.05,.25,.5,.75,1,2,3,4,8,10].map(e=>({value:e,name:ViewerBase._zoomValuesFormatter(e)}));ViewerBase._ctrlTemplate="";export class PdfViewer extends ViewerBase{constructor(e,t){super(e,t)}static get controlTemplate(){PdfViewer._ctrlTemplate||(PdfViewer._ctrlTemplate=ViewerBase.controlTemplate);return PdfViewer._ctrlTemplate}static set controlTemplate(e){PdfViewer._ctrlTemplate=e}_getProductInfo(){return"QNI5,PdfViewer"}get _innerDocumentSource(){return this._getDocumentSource()}_getSource(){return this.filePath?new _PdfDocumentSource({serviceUrl:this.serviceUrl,filePath:this.filePath},this):null}}PdfViewer._ctrlTemplate="";export class _ViewerMobileToolbarBase extends _ViewerToolbarBase{constructor(e,t){super(e,t);addClass(this.hostElement,"mobile")}static get controlTemplate(){_ViewerMobileToolbarBase._ctrlTemplate||(_ViewerMobileToolbarBase._ctrlTemplate=_ViewerToolbarBase.controlTemplate);return _ViewerMobileToolbarBase._ctrlTemplate}static set controlTemplate(e){_ViewerMobileToolbarBase._ctrlTemplate=e}}_ViewerMobileToolbarBase._ctrlTemplate="";export class _ViewerZoomBar extends _ViewerMobileToolbarBase{constructor(e,t){super(e,t);addClass(this.hostElement,ViewerBaseClsNames.zoomBar)}static get controlTemplate(){_ViewerZoomBar._ctrlTemplate||(_ViewerZoomBar._ctrlTemplate=_ViewerMobileToolbarBase.controlTemplate);return _ViewerZoomBar._ctrlTemplate}static set controlTemplate(e){_ViewerZoomBar._ctrlTemplate=e}_initToolbarItems(){const e=culture.Viewer;this._gZoomOut=this.addSvgButton(e.zoomOut,icons.zoomOut,_ViewerActionType.ZoomOut);_ViewerToolbarBase._initToolbarZoomValue(this.hostElement,this.viewer);this._gZoomIn=this.addSvgButton(e.zoomIn,icons.zoomIn,_ViewerActionType.ZoomIn)}_globalize(){const e=culture.Viewer;this._gZoomOut.title=e.zoomOut;this._gZoomIn.title=e.zoomIn}}_ViewerZoomBar._ctrlTemplate="";export class _ViewerMobileToolbar extends _ViewerMobileToolbarBase{static get controlTemplate(){_ViewerMobileToolbar._ctrlTemplate||(_ViewerMobileToolbar._ctrlTemplate=_ViewerMobileToolbarBase.controlTemplate);return _ViewerMobileToolbar._ctrlTemplate}static set controlTemplate(e){_ViewerMobileToolbar._ctrlTemplate=e}_initToolbarItems(){const e=culture.Viewer;this._gShowHamburgerMenu=this.addSvgButton(e.hamburgerMenu,icons.hamburgerMenu,_ViewerActionType.ShowHamburgerMenu);this.viewer._initHamburgerMenu(this._gShowHamburgerMenu);this._gPrevPage=this.addSvgButton(e.previousPage,icons.previousPage,_ViewerActionType.PrePage);this._gNextPage=this.addSvgButton(e.nextPage,icons.nextPage,_ViewerActionType.NextPage);_ViewerToolbarBase._initToolbarPageNumberInput(this.hostElement,this.viewer);this._gShowViewMenu=this.addSvgButton(e.viewMenu,icons.viewMenu,_ViewerActionType.ShowViewMenu);this.viewer._initViewMenu(this._gShowViewMenu);this._gShowSearchBar=this.addSvgButton(e.showSearchBar,icons.search,_ViewerActionType.ShowSearchBar,!0);this._gFullScreen=this.addSvgButton(e.fullScreen,icons.fullScreen,_ViewerActionType.ToggleFullScreen,!0)}_globalize(){const e=culture.Viewer;this._gShowHamburgerMenu.title=e.hamburgerMenu;this._gPrevPage.title=e.previousPage;this._gNextPage.title=e.nextPage;this._gShowViewMenu.title=e.viewMenu;this._gShowSearchBar.title=e.showSearchBar;this._gFullScreen.title=e.fullScreen}}_ViewerMobileToolbar._ctrlTemplate="";export class _SearchBar extends _ViewerMobileToolbarBase{static get controlTemplate(){_SearchBar._ctrlTemplate||(_SearchBar._ctrlTemplate=_ViewerMobileToolbarBase.controlTemplate);return _SearchBar._ctrlTemplate}static set controlTemplate(e){_SearchBar._ctrlTemplate=e}_initToolbarItems(){const e=culture.Viewer;this._gSearchOptions=this.addSvgButton(e.searchOptions,icons.searchOptions,_ViewerActionType.ShowSearchOptions);this.viewer._initSearchOptionsMenu(this._gSearchOptions);this._initSearchInput();this._initSearchBtnGroups()}_initSearchInput(){var e=_toDOM(`<div class="${ViewerBaseClsNames.searchContainer}"><input class="${ViewerBaseClsNames.searchBox}" wj-part="search-box" type="text"/><div class="${InputFormElementsClsNames.btnGroup}"><button class="${InputFormElementsClsNames.btn} ${ViewerBaseClsNames.btnSearch}">`+_createSvgBtn(icons.search).innerHTML+"</button></div></div>"),t=e.querySelector('input[type="text"]'),i=e.querySelector("."+ViewerBaseClsNames.btnSearch);this.addEventListener(t,"input",()=>{this.viewer._searchManager.text=t.value});this.addEventListener(i,"click",()=>{this.viewer._searchManager.search()});this.viewer._searchManager.searchStarted.addHandler(()=>{t.value!==this.viewer._searchManager.text&&(t.value=this.viewer._searchManager.text);t.disabled=!0});this.viewer._searchManager.searchCompleted.addHandler(()=>{t.disabled=!1});this.viewer._searchManager.textChanged.addHandler(()=>{t.value=this.viewer._searchManager.text});this.addCustomItem(e)}_initSearchBtnGroups(){var e=_toDOM(`<div class="${ViewerBaseClsNames.searchbtnGroups} ${InputFormElementsClsNames.btnGroup} ${ViewerBaseClsNames.toolbarWrapper}"></div>`);const t=culture.Viewer;this._gSearchPrev=this.addSvgButton(t.searchPrev,icons.searchLeft,_ViewerActionType.SearchPrev);this._gSearchNext=this.addSvgButton(t.searchNext,icons.searchRight,_ViewerActionType.SearchNext);e.appendChild(this._gSearchPrev);e.appendChild(this._gSearchNext);this.addCustomItem(e)}_globalize(){const e=culture.Viewer;this._gSearchOptions.title=e.searchOptions;this._gSearchPrev.title=e.searchPrev;this._gSearchNext.title=e.searchNext}}_SearchBar._ctrlTemplate="";export class _ViewerMenuBase extends Menu{constructor(e,t,i){super(document.createElement("div"),i);this.owner=t;this.hostElement.style.display="none";this.owner.appendChild(this.hostElement);this.showDropDownButton=!1;this.itemClicked.addHandler(this._onItemClicked,this);this.formatItem.addHandler(this._formatItem,this);this._viewer=e;this._bindMenuItems();this.displayMemberPath="title";this.selectedValuePath="commandTag";this._viewer._viewerActionStatusChanged.addHandler((e,t)=>{var i=this.dropDown.querySelector(`[command-tag="${t.action.actionType.toString()}"]`);this._updateActionStatusCore(i,t.action)})}static get controlTemplate(){_ViewerMenuBase._ctrlTemplate||(_ViewerMenuBase._ctrlTemplate=Menu.controlTemplate);return _ViewerMenuBase._ctrlTemplate}static set controlTemplate(e){_ViewerMenuBase._ctrlTemplate=e}get viewer(){return this._viewer}_bindMenuItems(){this.itemsSource=this._initItems()}_initItems(){throw culture.Viewer.abstractMethodException}_internalFormatItem(e,t){if(e&&void 0!==e.commandTag){_removeChildren(t);if(e.icon){const i=document.createElement("span");i.appendChild(_createSvgBtn(e.icon));t.insertBefore(i,t.firstChild)}t.setAttribute("command-tag",e.commandTag.toString());this._updateActionStatus(t,e.commandTag)}}_formatItem(e,t){this._internalFormatItem(this.itemsSource[t.index],t.item)}_onItemClicked(e){this._viewer._executeAction(parseInt(e.selectedItem.commandTag))}_updateActionStatus(e,t){this._updateActionStatusCore(e,{actionType:t,checked:this._viewer._actionIsChecked(t),disabled:this._viewer._actionIsDisabled(t),shown:this._viewer._actionIsShown(t)})}_updateActionStatusCore(e,t){_checkImageButton(e,t.checked);_disableImageButton(e,t.disabled);_showImageButton(e,t.shown)}_updateItemsStatus(){var e=this.dropDown.querySelectorAll("[command-tag]");for(let t=0;t<e.length;t++){const i=e[t],r=i.getAttribute("command-tag");null!=r&&this._updateActionStatus(i,parseInt(r))}_checkSeparatorShown(this.dropDown)}refresh(e=!0){super.refresh(e);e&&this._bindMenuItems();this.isDroppedDown&&this.showMenu()}showMenu(e){this.selectedIndex=-1;showPopup(this.dropDown,this.owner,e,!1,!1);this.dropDown.style.color=this._viewer.hostElement.style.color;addClass(this.dropDown,InputFormElementsClsNames.btnGroupVertical);addClass(this.dropDown,ViewerBaseClsNames.viewerMenu);this._updateItemsStatus();this.dropDown.focus()}}_ViewerMenuBase._ctrlTemplate="";export class _SearchOptionsMenu extends _ViewerMenuBase{static get controlTemplate(){_SearchOptionsMenu._ctrlTemplate||(_SearchOptionsMenu._ctrlTemplate=_ViewerMenuBase.controlTemplate);return _SearchOptionsMenu._ctrlTemplate}static set controlTemplate(e){_SearchOptionsMenu._ctrlTemplate=e}_initItems(){var e=[];e.push({title:culture.Viewer.matchCaseMenuItem,commandTag:_ViewerActionType.SearchMatchCase});e.push({title:culture.Viewer.wholeWordMenuItem,commandTag:_ViewerActionType.SearchMatchWholeWord});return e}_internalFormatItem(e,t){super._internalFormatItem(e,t);if(e&&void 0!==e.commandTag){var i=document.createElement("span");i.innerHTML=culture.Viewer.checkMark;addClass(i,"checkIcon");t.insertBefore(i,t.firstChild)}}_updateActionStatus(e,t){super._updateActionStatus(e,t);this.viewer._actionIsChecked(t)?addClass(e,"checked"):removeClass(e,"checked")}}_SearchOptionsMenu._ctrlTemplate="";export class _HamburgerMenu extends _ViewerMenuBase{static get controlTemplate(){_HamburgerMenu._ctrlTemplate||(_HamburgerMenu._ctrlTemplate=_ViewerMenuBase.controlTemplate);return _HamburgerMenu._ctrlTemplate}static set controlTemplate(e){_HamburgerMenu._ctrlTemplate=e}_initItems(){const e=[],t=culture.Viewer;e.push({title:t.thumbnails,icon:icons.thumbnails,commandTag:_ViewerActionType.ShowThumbnails});e.push({title:t.outlines,icon:icons.outlines,commandTag:_ViewerActionType.ShowOutlines});e.push({title:t.exports,icon:icons.exports,commandTag:_ViewerActionType.ShowExportsPanel});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.portrait,icon:icons.portrait,commandTag:_ViewerActionType.Portrait});e.push({title:t.landscape,icon:icons.landscape,commandTag:_ViewerActionType.Landscape});e.push({title:t.pageSetup,icon:icons.pageSetup,commandTag:_ViewerActionType.ShowPageSetupPanel});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.showZoomBar,icon:icons.showZoomBar,commandTag:_ViewerActionType.ShowZoomBar});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.paginated,icon:icons.paginated,commandTag:_ViewerActionType.TogglePaginated});e.push({title:t.print,icon:icons.print,commandTag:_ViewerActionType.Print});e.push({title:ViewerBase._seperatorHtml});e.push({title:t.backwardHistory,icon:icons.backwardHistory,commandTag:_ViewerActionType.Backward});e.push({title:t.forwardHistory,icon:icons.forwardHistory,commandTag:_ViewerActionType.Forward});return e}}_HamburgerMenu._ctrlTemplate="";export class _ViewMenu extends _ViewerMenuBase{static get controlTemplate(){_ViewMenu._ctrlTemplate||(_ViewMenu._ctrlTemplate=_ViewerMenuBase.controlTemplate);return _ViewMenu._ctrlTemplate}static set controlTemplate(e){_ViewMenu._ctrlTemplate=e}_initItems(){var e=[];e.push({title:culture.Viewer.singleMode,icon:icons.singleView,commandTag:_ViewerActionType.Single});e.push({title:culture.Viewer.continuousMode,icon:icons.continuousView,commandTag:_ViewerActionType.Continuous});e.push({title:ViewerBase._seperatorHtml});e.push({title:culture.Viewer.wholePage,icon:icons.fitWholePage,commandTag:_ViewerActionType.FitWholePage});e.push({title:culture.Viewer.pageWidth,icon:icons.fitPageWidth,commandTag:_ViewerActionType.FitPageWidth});return e}}_ViewMenu._ctrlTemplate="";export class _ReportHamburgerMenu extends _HamburgerMenu{static get controlTemplate(){_ReportHamburgerMenu._ctrlTemplate||(_ReportHamburgerMenu._ctrlTemplate=_HamburgerMenu.controlTemplate);return _ReportHamburgerMenu._ctrlTemplate}static set controlTemplate(e){_ReportHamburgerMenu._ctrlTemplate=e}_initItems(){var e=super._initItems();e.splice(2,0,{title:culture.Viewer.parameters,icon:parametersIcon,commandTag:ReportViewer._parameterCommandTag});return e}}_ReportHamburgerMenu._ctrlTemplate="";var _ArReportFormat;!function(e){e[e.Rpx=0]="Rpx";e[e.Rdf=1]="Rdf";e[e.Rdlx=2]="Rdlx"}(_ArReportFormat||(_ArReportFormat={}));export var _ArDocumentFormat;!function(e){e[e.Image=3]="Image";e[e.Pdf=4]="Pdf";e[e.Html=5]="Html";e[e.Word=6]="Word";e[e.Xls=7]="Xls";e[e.Xml=8]="Xml";e[e.Svg=9]="Svg"}(_ArDocumentFormat||(_ArDocumentFormat={}));export var _ArLoadState;!function(e){e[e.NotStarted=0]="NotStarted";e[e.Rendering=1]="Rendering";e[e.Rendered=2]="Rendered";e[e.Cancelling=3]="Cancelling";e[e.Cancelled=4]="Cancelled";e[e.Error=5]="Error"}(_ArLoadState||(_ArLoadState={}));export var _ArErrorCode;!function(e){e[e.InvalidCulture=0]="InvalidCulture";e[e.InvalidVersion=1]="InvalidVersion";e[e.UnknownReportType=2]="UnknownReportType";e[e.NoSuchReport=3]="NoSuchReport";e[e.ParametersNotSet=4]="ParametersNotSet";e[e.RuntimeIsBusy=5]="RuntimeIsBusy";e[e.InternalError=6]="InternalError";e[e.ParameterNotExists=7]="ParameterNotExists";e[e.NoAcceptableFormats=8]="NoAcceptableFormats";e[e.InvalidToken=9]="InvalidToken";e[e.UnsupportedFormat=10]="UnsupportedFormat";e[e.InvalidSetOfParameters=11]="InvalidSetOfParameters";e[e.MethodNotSupported=12]="MethodNotSupported";e[e.NoValidLicenseFound=13]="NoValidLicenseFound"}(_ArErrorCode||(_ArErrorCode={}));export class _ArReportService extends _DocumentService{constructor(){super(...arguments);this._lifeTime=6e5;this._drillthroughData=null;this._canChangeRenderMode=!1;this._uid=Date.now().toString();this._isDisposed=!1;this._hasOutlines=void 0}static StateToStatus(e){switch(e){case _ArLoadState.NotStarted:return _ExecutionStatus.notFound;case _ArLoadState.Rendered:return _ExecutionStatus.completed;case _ArLoadState.Rendering:return _ExecutionStatus.rendering;case _ArLoadState.Cancelled:return _ExecutionStatus.stopped;default:throw"Not supported state: "+e}}static ConvertFormat(e){switch(e){case"doc":case"docx":return _ArDocumentFormat.Word;case"html":return _ArDocumentFormat.Svg;case"mhtml":return _ArDocumentFormat.Html;case"pdf":return _ArDocumentFormat.Pdf;case"svg":return _ArDocumentFormat.Svg;case"tiff":case"png":return _ArDocumentFormat.Image;case"xml":return _ArDocumentFormat.Xml;case"xlsx":case"xls":return _ArDocumentFormat.Xls;default:throw"Not supported format: "+e}}static IsError(e){return!!(e&&e.json&&e.json.Error)}get isDisposed(){return this._isDisposed}get autoRun(){return this._autoRun}get canChangeRenderMode(){return this._canChangeRenderMode}get parameters(){return this._parameters||[]}getStatus(){var e=new _Promise;if(this._isDisposed)return e.resolve({status:_ExecutionStatus.cleared});if(!this._token)return e.resolve({status:_ExecutionStatus.notFound});this._ajax(this.serviceUrl+"/GetStatus",{method:"POST",data:{token:this._token}}).then(t=>{const i=_ArReportService.StateToStatus(t.json.LoadState),r={errorList:t.json.Error?[t.json.Error.Description]:[],pageCount:t.json.AvailablePages,hasOutlines:!!this._hasOutlines,progress:0,status:i};i===_ExecutionStatus.completed&&null==this._hasOutlines?this.getOutlines(!0).then(t=>{r.hasOutlines=this._hasOutlines=(t||[]).length>0;e.resolve(r)}):e.resolve(r)},t=>{e.reject(this._getError(t))});return e}setPageSettings(e){throw _DocumentSource._abstractMethodException}getBookmark(e){const t=new _Promise,i=e.split("|");return t.resolve({pageIndex:parseInt(i[0],10)-1,pageBounds:(e=>{if(e){const t=e.split(" ");return{x:_Unit.convertValue(parseFloat(t[0]),_UnitType.Dip,_UnitType.Twip),y:_Unit.convertValue(parseFloat(t[1]),_UnitType.Dip,_UnitType.Twip)}}})(i[1])})}executeCustomAction(e){switch(e.arKind){case _ArActionKind.Drillthrough:{const t=JSON.parse(e.data);return(new _Promise).resolve(t)}case _ArActionKind.Toggle:return this.processOnClick(e.data);default:return(new _Promise).reject("Not implemented action: "+e.arKind)}}load(e){var t=[];if(e){const i="parameters.";Object.keys(e).forEach(r=>{if(0===r.indexOf(i)){t.push({Name:r.substring(i.length),Value:e[r]});delete e[r]}})}if(this._drillthroughData){t.length&&this._mergeParameters(t,this._drillthroughData.Parameters||[]);return this.loadDrillthroughReport(this._drillthroughData)}var i=new _Promise;this._ajax(this.serviceUrl+"/OpenReport",{method:"POST",data:this._merge(e,{acceptedFormats:[_ArDocumentFormat.Svg],culture:"en-US",lifeTime:this._lifeTime/1e3,reportPath:this.filePath,version:4})}).then(e=>{this._hasDelayedContent=e.json.HasDelayedContent;this._autoRun=!!e.json.AutoRun;this._documentFormat=e.json.DocumentFormat;this._parameters=(e.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e));this._token=e.json.Token;this._isDisposed=!1;const t=new Date,i=new Date(t.getTime()+this._lifeTime);return{expiredDateTime:i,loadedDateTime:t,features:{nonPaginated:!1,paginated:!0,pageSettings:!1,textSearchInPaginatedMode:!0},pageSettings:{height:new _Unit(1056,_UnitType.Dip),width:new _Unit(816,_UnitType.Dip),leftMargin:new _Unit(48,_UnitType.Dip),rightMargin:new _Unit(48,_UnitType.Dip),topMargin:new _Unit(48,_UnitType.Dip),bottomMargin:new _Unit(48,_UnitType.Dip),paginated:!0},status:{errorList:e.json.Error?[e.json.Error.Description]:[],expiredDateTime:i,pageCount:0,progress:0,status:_ExecutionStatus.loaded}}}).then(e=>{this.getReportProperty("ChangeRenderModeSupported").then(r=>{this._canChangeRenderMode=!!r;if(t&&t.length){const r=this._mergeParameters(t,this._parameters);this.setParameters(r).then(t=>{i.resolve(e)})}else i.resolve(e)})}).catch(e=>{i.reject(this._getError(e))});return i}loadDrillthroughReport(e){var t=new _Promise;this._ajax(this.serviceUrl+"/OpenDrillthroughReport",{method:"POST",data:{token:this._token,lifeTime:this._lifeTime/1e3,reportPath:e.ReportName}}).then(i=>{this.dispose(!1).then(()=>{this._hasDelayedContent=i.json.HasDelayedContent;this._autoRun=!!i.json.AutoRun;this._documentFormat=i.json.DocumentFormat;this._parameters=(i.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e));this._token=i.json.Token;this._isDisposed=!1;const r=new Date,s=new Date(r.getTime()+this._lifeTime);var a={expiredDateTime:s,loadedDateTime:r,features:{nonPaginated:!1,paginated:!0,pageSettings:!1,textSearchInPaginatedMode:!0},pageSettings:{height:new _Unit(1056,_UnitType.Dip),width:new _Unit(816,_UnitType.Dip),leftMargin:new _Unit(48,_UnitType.Dip),rightMargin:new _Unit(48,_UnitType.Dip),topMargin:new _Unit(48,_UnitType.Dip),bottomMargin:new _Unit(48,_UnitType.Dip),paginated:!0},status:{errorList:i.json.Error?[i.json.Error.Description]:[],expiredDateTime:s,pageCount:0,progress:0,status:_ExecutionStatus.loaded}};this.getReportProperty("ChangeRenderModeSupported").then(i=>{this._canChangeRenderMode=!!i;isArray(e.Parameters)&&e.Parameters.length?this.setParameters(e.Parameters).then(e=>{t.resolve(a)}):t.resolve(a)})})},e=>{t.reject(this._getError(e))});return t}processOnClick(e){var t=new _Promise;this._ajax(this.serviceUrl+"/ProcessOnClick",{method:"POST",data:{token:this._token,data:{Action:"toggle",Data:e}}}).then(e=>{t.resolve({status:_ExecutionStatus.rendering})},e=>{t.reject(this._getError(e))});return t}getReportProperty(e){return this._ajax(this.serviceUrl+"/GetReportProperty",{method:"POST",data:{token:this._token,propertyName:e}}).then(e=>e.json.Error?null:e.json.PropertyValue).catch(e=>null)}render(e){return this._ajax(this.serviceUrl+"/RunReport",{method:"POST",data:{token:this._token}}).then(e=>{this._isDisposed=!1;return{errorList:e.json.Error?[e.json.Error.Description]:[],status:_ExecutionStatus.rendering}})}setDrillthroughData(e){this._drillthroughData=e}dispose(e=!0){return this._token?this._ajax(this.serviceUrl+"/CloseReport",{method:"POST",async:e,data:{token:this._token}}).then(()=>{this._isDisposed=!0;this._token=null;this._hasOutlines=void 0;return{status:_ExecutionStatus.cleared}}):new _Promise}getOutlines(e=!1){return this._getBookmarks(-1,0,e?1:100,!e)}_getError(e){var t=e;return _ArReportService.IsError(t)?`ErrorCode: "${t.json.Error.ErrorCode}". Description: "${t.json.Error.Description}"`:e.responseText}_getBookmarks(e,t,i,r=!0){var s=new _Promise;this._ajax(this.serviceUrl+"/GetBookmarks",{method:"POST",data:{token:this._token,parentId:e,fromChild:t,count:i}}).then(a=>{var o=(a.json.Bookmarks||[]).map(e=>({caption:e.Name,children:e.ChildrenCount>0?()=>this._getBookmarks(e.ID,0,i):null,position:{pageBounds:{height:_Unit.convertValue(e.Size.Width||0,_UnitType.Inch,_UnitType.Twip),width:_Unit.convertValue(e.Size.Height||0,_UnitType.Inch,_UnitType.Twip),x:_Unit.convertValue(e.Location.X||0,_UnitType.Inch,_UnitType.Twip),y:_Unit.convertValue(e.Location.Y||0,_UnitType.Inch,_UnitType.Twip)},pageIndex:e.Page},target:""})),n=t+o.length;!r||n>=a.json.ChildrenCount||n>=1e5?s.resolve(o):this._getBookmarks(e,n,i).then(e=>{s.resolve(o.concat(e))})});return s}renderToFilter(e){var t=new _Promise;this.getRenderToFilterUrl(e).then(i=>{this._ajax(`${i}&WebViewerControlClientId=${this._uid}${e.outputRange?"&Page="+e.outputRange:""}`,{method:"GET",parseResponse:!1}).then(e=>{t.resolve(e.xhr)},i=>{_ArReportService.IsError(i)&&i.json.Error.ErrorCode==_ArErrorCode.RuntimeIsBusy?setTimeout(()=>this.renderToFilter(e),this.getPingTimeout()):t.reject(i)})});return t}search(e){var t=new _Promise;this._ajax(this.serviceUrl+"/Search",{method:"POST",data:{token:this._token,options:{Text:e.text,MatchCase:e.matchCase,WholeWord:e.wholeWord},startFrom:{PageIndex:-1},numberOfResults:100}}).then(e=>{var i=e.json.SearchResults.map(e=>({nearText:e.DisplayText,positionInNearText:e.TextStart,pageIndex:e.PageIndex,boundsList:[{height:_Unit.convertValue(e.ItemArea.Height||0,_UnitType.Inch,_UnitType.Twip),width:_Unit.convertValue(e.ItemArea.Width||0,_UnitType.Inch,_UnitType.Twip),x:_Unit.convertValue(e.ItemArea.Left||0,_UnitType.Inch,_UnitType.Twip),y:_Unit.convertValue(e.ItemArea.Top||0,_UnitType.Inch,_UnitType.Twip)}]}));t.resolve(i)},e=>t.reject(e));return t}setParameters(e){var t=new _Promise;this._ajax(this.serviceUrl+"/SetParameters",{method:"POST",data:{token:this._token,parametersSetAtClient:(e||[]).map(e=>this._convertToServiceParameter(e))}}).then(e=>{this._parameters=(e.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e));t.resolve(this._parameters)}).catch(e=>{if(_ArReportService.IsError(e)&&e.json.Error.ErrorCode==_ArErrorCode.ParametersNotSet){this._parameters=(e.json.ParameterCollection||[]).map(e=>this._convertFromServiceParameter(e));t.resolve(this._parameters)}else t.reject(e)});return t}validateParameter(e){return this._ajax(this.serviceUrl+"/ValidateParameter",{method:"POST",data:{token:this._token,parametersSetAtClient:this._convertToServiceParameter(e)}}).then(e=>null)}getRenderToFilterUrl(e){var t=new _Promise;this._ajax(this.serviceUrl+"/GetRenderedReportLink",{method:"POST",data:{token:this._token}}).then(e=>{t.resolve(e.json.ReportLink.Uri)},i=>{_ArReportService.IsError(i)&&i.json.Error.ErrorCode==_ArErrorCode.RuntimeIsBusy?setTimeout(()=>this.getRenderToFilterUrl(e),this.getPingTimeout()):t.reject(i)});return t}getExportedUrl(e){var t=_ArReportService.ConvertFormat(e.format),i=(()=>{var i={FileName:this.getFileName()};t==_ArDocumentFormat.Pdf&&(i.EmbedFonts="All");if(t==_ArDocumentFormat.Image){"png"===e.format&&(i.ImageType="PNG");if(e.outputRange){i.StartPage=e.outputRange.toString();i.EndPage=e.outputRange.toString()}if(e.resolution){i.DpiX=e.resolution.toString();i.DpiY=e.resolution.toString()}}e.printing&&t==_ArDocumentFormat.Pdf&&(i.PrintOnOpen=!0);return i})(),r=new _Promise;this._ajax(this.serviceUrl+"/GetExportedReportLink",{method:"POST",data:{token:this._token,format:t,exportingParameters:i,pageRange:null}}).then(t=>{r.resolve(t.json.ReportLink.Uri+(isNumber(e.outputRange)?"&outputRange="+e.outputRange:"")+(e.printing?"":"&Attachment=1"))},t=>{_ArReportService.IsError(t)&&t.json.Error.ErrorCode==_ArErrorCode.RuntimeIsBusy?setTimeout(()=>this.getExportedUrl(e),this.getPingTimeout()):r.reject(t)});return r}getPingTimeout(){return 1e3}getSupportedExportDescriptions(){var e=new _Promise;e.resolve([{name:"TIFF image",format:"tiff"},{name:"Adobe PDF",format:"pdf"},{name:"Web archive (MHTML)",format:"mhtml"},{name:"Microsoft Word",format:"doc"},{name:"Open XML Excel",format:"xlsx"},{name:"XML document",format:"xml"}]);return e}getFeatures(){throw _DocumentSource._abstractMethodException}_ajax(e,t){const i=new _Promise;(t=t||{}).urlEncode=!1;this.httpRequest(e,t).then(e=>{const r={xhr:e};try{e.responseText&&!1!==t.parseResponse&&(r.json=JSON.parse(e.responseText).d);if(r.json&&r.json.Error)throw"";i.resolve(r)}catch(e){i.reject(r)}},e=>{i.reject(e)});return i}_convertFromServiceParameter(e){var cnvrt=(e,t)=>{null!=e&&_ArParameterType.DateTime;return e};e.Value=cnvrt(e.Value,e.ParameterType);e.AvailableValues=(e.AvailableValues||[]).map(t=>({Label:t.Label,Value:cnvrt(t.Value,e.ParameterType)}));return e}_convertToServiceParameter(e){var cnvrt=(e,t)=>{null!=e&&_ArParameterType.DateTime;return e};e.Value=cnvrt(e.Value,e.ParameterType);e.Values&&e.Values.forEach(t=>{t.Value=cnvrt(t.Value,e.ParameterType)});return e}_merge(e,t){if(e&&t){for(const i in e)t[i]=e[i];return t}}_mergeParameters(e,t){var i=[],r=t.map(t=>{var r=t.Name.toLowerCase();i.push(r);var s=e.filter(e=>r===e.Name.toLowerCase());return s.length?(()=>{t.Value=s[0].Value;return t})():t});r.push.apply(r,e.filter(e=>i.indexOf(e.Name.toLowerCase())<0));return r}}export class _ArReportSource extends _ReportSourceBase{get autoRun(){return this._innerService.autoRun}get encodeRequestParams(){return!1}get hasParameters(){var e=this._innerService.parameters;return e&&e.length>0}get hasThumbnails(){return!1}get _innerService(){return this.service}getParameters(){var e=new _Promise,t=this._convertParameters(this._innerService.parameters);return e.resolve(t)}setParameters(e){var t=new _Promise,i=[],r={};this._innerService.parameters.forEach(e=>{r[e.Name]=e});Object.keys(e).forEach(t=>{var s={AllowEmpty:r[t].AllowEmpty,DateOnly:r[t].DateOnly,MultiLine:r[t].MultiLine,MultiValue:r[t].MultiValue,Name:t,Nullable:r[t].Nullable,ParameterType:r[t].ParameterType};i.push(s);s.MultiValue&&isArray(e[t])?s.Values=e[t].map(e=>({Value:e})):s.Value=e[t]});this._innerService.setParameters(i).then(e=>{t.resolve(this._convertParameters(e))});return t}print(e){this.getExportedUrl({format:"pdf",printing:!0},!0).then(e=>{if(e){var t;try{(t=window.open(e,"_blank"))&&t.focus()}catch(t){window.location.assign(e+"&Attachment=1")}}})}_createDocumentService(e){return new _ArReportService(e,this.httpHandler)}_getIsDisposed(){return super._getIsDisposed()||this._innerService.isDisposed}_updateExecutionInfo(e){super._updateExecutionInfo(e)}_checkIsLoadCompleted(e){return e.status===_ExecutionStatus.completed||e.status===_ExecutionStatus.stopped}_convertParameters(e){return e.map(e=>({allowedValues:e.AvailableValues&&e.AvailableValues.length?e.AvailableValues.map(e=>({key:e.Label,value:e.Value})):void 0,allowBlank:e.AllowEmpty,dataType:e.ParameterType===_ArParameterType.Boolean?_ParameterType.Boolean:e.ParameterType===_ArParameterType.DateTime?_ParameterType.DateTime:e.ParameterType===_ArParameterType.Float?_ParameterType.Float:e.ParameterType===_ArParameterType.Integer?_ParameterType.Integer:_ParameterType.String,error:e.ExtendedErrorInfo,hidden:!1,name:e.Name,nullable:!!e.Nullable,maxLength:0,multiValue:e.MultiValue,prompt:e.Prompt,value:e.MultiValue&&e.Values&&e.Values.length?e.Values.map(e=>e.Value):e.Value}))}}export class ReportViewer extends ViewerBase{constructor(e,t){super(e,t);this._initSidePanelParameters()}static get controlTemplate(){ReportViewer._ctrlTemplate||(ReportViewer._ctrlTemplate=ViewerBase.controlTemplate);return ReportViewer._ctrlTemplate}static set controlTemplate(e){ReportViewer._ctrlTemplate=e}_getProductInfo(){return"QNI5,ReportViewer"}get reportName(){return this._reportName}set reportName(e){if(e!=this._reportName){this._reportName=e;this._needBindDocumentSource();this.invalidate()}}get paginated(){return this._innerPaginated}set paginated(e){this._innerPaginated=e}get parameters(){return this._clientParameters}set parameters(e){if(e!=this._clientParameters){this._clientParameters=e;this._needBindDocumentSource();this.invalidate()}}static getReportNames(e,t,i){return _Report.getReportNames(e,t,i)}static getReports(e,t,i,r){return _Report.getReports(e,t,i,r)}onQueryLoadingData(e){this.parameters&&Object.keys(this.parameters).forEach(t=>{e.data["parameters."+t]=this.parameters[t]});super.onQueryLoadingData(e)}_globalize(){super._globalize();var e=culture.Viewer;this._gParameterTitle&&(this._gParameterTitle.textContent=e.parameters)}_executeAction(e){super._executeAction(e);if(!this._actionIsDisabled(e))switch(e){case ReportViewer._parameterCommandTag:Control.getControl(this._sidePanel).active(this._parametersPageId)}}_executeCustomAction(e){if(this._isArReport()&&e.arKind===_ArActionKind.Drillthrough){const t=JSON.parse(e.data),i=this._getDocumentSource();i._innerService.setDrillthroughData(t);i._updateIsLoadCompleted(!1);this._loadDocument(i,!0,!1)}else super._executeCustomAction(e)}_actionIsDisabled(e){switch(e){case ReportViewer._parameterCommandTag:return!this._innerDocumentSource||!this._innerDocumentSource.hasParameters}return super._actionIsDisabled(e)}_initHamburgerMenu(e){this._hamburgerMenu=new _ReportHamburgerMenu(this,e)}_initSidePanelParameters(){var e=Control.getControl(this._sidePanel),t=e.addPage(culture.Viewer.parameters,parametersIcon,2);this._parametersPageId=t.id;this._gParameterTitle=t.outContent.querySelector("."+ViewerBaseClsNames.tabtitle);t.format(t=>{this._paramsEditor=new _ParametersEditor(t.content);this._paramsEditor.commit.addHandler(()=>{if(this._innerDocumentSource&&this._innerDocumentSource.hasParameters){this._showViewPanelMessage();this._innerDocumentSource.setParameters(this._paramsEditor.parameters).then(e=>{var t=e||[],i=t.some(e=>!!e.error);this._paramsEditor._reset();if(i)this._paramsEditor.itemsSource=t;else{this._resetDocument();this._paramsEditor.isDisabled=!0;this._renderDocumentSource()}}).catch(e=>{this._showViewPanelErrorMessage(_getErrorMessage(e))});this._isMobileTemplate()&&e.collapse()}});this._paramsEditor.validate.addHandler(()=>{if(this._innerDocumentSource&&this._innerDocumentSource.hasParameters){this._paramsEditor.isDisabled=!0;this._innerDocumentSource.setParameters(this._paramsEditor.parameters).then(e=>{this._paramsEditor.itemsSource=e;this._paramsEditor.isDisabled=!1;this._paramsEditor.savingParam=!1},()=>{this._paramsEditor.isDisabled=!1;this._paramsEditor.savingParam=!1})}});var updateParametersPanel=()=>{var i=this._innerDocumentSource;i.status===_ExecutionStatus.cleared||i.status===_ExecutionStatus.notFound?_removeChildren(t.content):i.status===_ExecutionStatus.rendering?this._paramsEditor.isDisabled=!0:i.status===_ExecutionStatus.completed&&(this._paramsEditor.isDisabled=!1);const r=i.status===_ExecutionStatus.loaded;(i.status===_ExecutionStatus.completed||r)&&(i.hasParameters?i.getParameters().then(s=>{if(s.filter(e=>!e.hidden).length){e.show(t);e.active(t)}else e.hide(t);if(this._innerDocumentSource==i&&!i.isDisposed){this._paramsEditor.itemsSource=s;if(s.filter(e=>null==e.value&&!e.nullable&&!e.hidden).length){this._showViewPanelMessage(culture.Viewer.requiringParameters);this._updateUI();Control.getControl(this._sidePanel).enable(this._parametersPageId)}else if(r){this._paramsEditor.isDisabled=!0;this._renderDocumentSource()}}}):e.hide(t))},update=()=>{if(this._innerDocumentSource){_addWjHandler(this._documentEventKey,this._innerDocumentSource.statusChanged,updateParametersPanel);updateParametersPanel()}};this._documentSourceChanged.addHandler(update);update()})}get _innerDocumentSource(){return this._getDocumentSource()}_loadDocument(e,t=!1,i=!0){var r=this._innerDocumentSource!==e&&!t,s=super._loadDocument(e,t,i);e&&r&&_addWjHandler(this._documentEventKey,e.statusChanged,this._onDocumentStatusChanged,this);return s}_reRenderDocument(){this._renderDocumentSource()}_onDocumentStatusChanged(){this._innerDocumentSource&&this._innerDocumentSource.status===_ExecutionStatus.loaded&&!this._innerDocumentSource.hasParameters&&this._innerDocumentSource.autoRun&&this._renderDocumentSource()}_renderDocumentSource(){if(this._innerDocumentSource){this._setDocumentRendering();var e=this._innerDocumentSource;e.render().then(()=>this._getStatusUtilCompleted(e))}}_disposeDocument(e=!0){this._innerDocumentSource&&_removeAllWjHandlers(this._documentEventKey,this._innerDocumentSource.statusChanged);super._disposeDocument(e)}_setDocumentRendering(){this._innerDocumentSource.status=_ExecutionStatus.rendering;super._setDocumentRendering()}_getSource(){return this.filePath?this._isArReport()?new _ArReportSource({serviceUrl:this.serviceUrl,filePath:this.filePath},this):new _Report({serviceUrl:this.serviceUrl,filePath:this.filePath,reportName:this.reportName,paginated:this.paginated},this):null}_supportsPageSettingActions(){return!0}refresh(e=!0){super.refresh(e);e&&this._paramsEditor&&this._paramsEditor.refresh()}_isArReport(){return!!this.filePath&&_strEndsWith(this.filePath,".rdlx",!0)}_createPage(e,t){return this._isArReport()?new _ArPage(this._getDocumentSource(),e,t):super._createPage(e,t)}_actionElementClicked(e){if(this._isArReport()){var t=this._getActionInfo(e);t&&t.arKind===_ArActionKind.Hyperlink?window.open(t.data,"_blank"):super._actionElementClicked(e)}else super._actionElementClicked(e)}_getActionInfo(e){if(!this._isArReport())return super._getActionInfo(e);var t=e.attributes["arsvg:data-action-type"].value,i=e.attributes["arsvg:data-action-data"].value.replace(/"/g,'"'),r=e.attributes["arsvg:data-action-page"].value;if(t)switch(t){case _ArActionKind.Bookmark:return{kind:_ActionKind.Bookmark,data:i?`${r}|${i}`:r,arKind:t};default:return{kind:_ActionKind.Custom,data:i,arKind:t}}return null}dispose(){this._innerDocumentSource&&_removeAllWjHandlers(this._documentEventKey,this._innerDocumentSource.statusChanged);this._documentSourceChanged.removeHandler(this._initSidePanelParameters);if(this._paramsEditor&&this._paramsEditor.dispose){this._paramsEditor.dispose();this._paramsEditor=null}this._gParameterTitle=null;super.dispose()}}ReportViewer._parameterCommandTag=99;ReportViewer._ctrlTemplate="";_registerModule("wijmo.viewer",selfModule);
|