/ * *
* @ licstart The following is the entire license notice for the
* Javascript code in this page
*
* Copyright 2019 Mozilla Foundation
*
* Licensed under the Apache License , Version 2.0 ( the "License" ) ;
* you may not use this file except in compliance with the License .
* You may obtain a copy of the License at
*
* http : //www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing , software
* distributed under the License is distributed on an "AS IS" BASIS ,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND , either express or implied .
* See the License for the specific language governing permissions and
* limitations under the License .
*
* @ licend The above is the entire license notice for the
* Javascript code in this page
* /
"use strict" ;
Object . defineProperty ( exports , "__esModule" , {
value : true
} ) ;
exports . PDFViewer = void 0 ;
var _base _viewer = require ( "./base_viewer" ) ;
var _pdf = require ( "../pdf" ) ;
function _typeof ( obj ) { if ( typeof Symbol === "function" && typeof Symbol . iterator === "symbol" ) { _typeof = function _typeof ( obj ) { return typeof obj ; } ; } else { _typeof = function _typeof ( obj ) { return obj && typeof Symbol === "function" && obj . constructor === Symbol && obj !== Symbol . prototype ? "symbol" : typeof obj ; } ; } return _typeof ( obj ) ; }
function _classCallCheck ( instance , Constructor ) { if ( ! ( instance instanceof Constructor ) ) { throw new TypeError ( "Cannot call a class as a function" ) ; } }
function _defineProperties ( target , props ) { for ( var i = 0 ; i < props . length ; i ++ ) { var descriptor = props [ i ] ; descriptor . enumerable = descriptor . enumerable || false ; descriptor . configurable = true ; if ( "value" in descriptor ) descriptor . writable = true ; Object . defineProperty ( target , descriptor . key , descriptor ) ; } }
function _createClass ( Constructor , protoProps , staticProps ) { if ( protoProps ) _defineProperties ( Constructor . prototype , protoProps ) ; if ( staticProps ) _defineProperties ( Constructor , staticProps ) ; return Constructor ; }
function _possibleConstructorReturn ( self , call ) { if ( call && ( _typeof ( call ) === "object" || typeof call === "function" ) ) { return call ; } return _assertThisInitialized ( self ) ; }
function _assertThisInitialized ( self ) { if ( self === void 0 ) { throw new ReferenceError ( "this hasn't been initialised - super() hasn't been called" ) ; } return self ; }
function _get ( target , property , receiver ) { if ( typeof Reflect !== "undefined" && Reflect . get ) { _get = Reflect . get ; } else { _get = function _get ( target , property , receiver ) { var base = _superPropBase ( target , property ) ; if ( ! base ) return ; var desc = Object . getOwnPropertyDescriptor ( base , property ) ; if ( desc . get ) { return desc . get . call ( receiver ) ; } return desc . value ; } ; } return _get ( target , property , receiver || target ) ; }
function _superPropBase ( object , property ) { while ( ! Object . prototype . hasOwnProperty . call ( object , property ) ) { object = _getPrototypeOf ( object ) ; if ( object === null ) break ; } return object ; }
function _getPrototypeOf ( o ) { _getPrototypeOf = Object . setPrototypeOf ? Object . getPrototypeOf : function _getPrototypeOf ( o ) { return o . _ _proto _ _ || Object . getPrototypeOf ( o ) ; } ; return _getPrototypeOf ( o ) ; }
function _inherits ( subClass , superClass ) { if ( typeof superClass !== "function" && superClass !== null ) { throw new TypeError ( "Super expression must either be null or a function" ) ; } subClass . prototype = Object . create ( superClass && superClass . prototype , { constructor : { value : subClass , writable : true , configurable : true } } ) ; if ( superClass ) _setPrototypeOf ( subClass , superClass ) ; }
function _setPrototypeOf ( o , p ) { _setPrototypeOf = Object . setPrototypeOf || function _setPrototypeOf ( o , p ) { o . _ _proto _ _ = p ; return o ; } ; return _setPrototypeOf ( o , p ) ; }
var PDFViewer =
/*#__PURE__*/
function ( _BaseViewer ) {
_inherits ( PDFViewer , _BaseViewer ) ;
function PDFViewer ( ) {
_classCallCheck ( this , PDFViewer ) ;
return _possibleConstructorReturn ( this , _getPrototypeOf ( PDFViewer ) . apply ( this , arguments ) ) ;
}
_createClass ( PDFViewer , [ {
key : "_scrollIntoView" ,
value : function _scrollIntoView ( _ref ) {
var pageDiv = _ref . pageDiv ,
_ref$pageSpot = _ref . pageSpot ,
pageSpot = _ref$pageSpot === void 0 ? null : _ref$pageSpot ,
_ref$pageNumber = _ref . pageNumber ,
pageNumber = _ref$pageNumber === void 0 ? null : _ref$pageNumber ;
if ( ! pageSpot && ! this . isInPresentationMode ) {
var left = pageDiv . offsetLeft + pageDiv . clientLeft ;
var right = left + pageDiv . clientWidth ;
var _this$container = this . container ,
scrollLeft = _this$container . scrollLeft ,
clientWidth = _this$container . clientWidth ;
if ( this . _isScrollModeHorizontal || left < scrollLeft || right > scrollLeft + clientWidth ) {
pageSpot = {
left : 0 ,
top : 0
} ;
}
}
_get ( _getPrototypeOf ( PDFViewer . prototype ) , "_scrollIntoView" , this ) . call ( this , {
pageDiv : pageDiv ,
pageSpot : pageSpot ,
pageNumber : pageNumber
} ) ;
}
} , {
key : "_getVisiblePages" ,
value : function _getVisiblePages ( ) {
if ( this . isInPresentationMode ) {
return this . _getCurrentVisiblePage ( ) ;
}
return _get ( _getPrototypeOf ( PDFViewer . prototype ) , "_getVisiblePages" , this ) . call ( this ) ;
}
} , {
key : "_updateHelper" ,
value : function _updateHelper ( visiblePages ) {
if ( this . isInPresentationMode ) {
return ;
}
var currentId = this . _currentPageNumber ;
var stillFullyVisible = false ;
var _iteratorNormalCompletion = true ;
var _didIteratorError = false ;
var _iteratorError = undefined ;
try {
for ( var _iterator = visiblePages [ Symbol . iterator ] ( ) , _step ; ! ( _iteratorNormalCompletion = ( _step = _iterator . next ( ) ) . done ) ; _iteratorNormalCompletion = true ) {
var page = _step . value ;
if ( page . percent < 100 ) {
break ;
}
if ( page . id === currentId ) {
stillFullyVisible = true ;
break ;
}
}
} catch ( err ) {
_didIteratorError = true ;
_iteratorError = err ;
} finally {
try {
if ( ! _iteratorNormalCompletion && _iterator [ "return" ] != null ) {
_iterator [ "return" ] ( ) ;
}
} finally {
if ( _didIteratorError ) {
throw _iteratorError ;
}
}
}
if ( ! stillFullyVisible ) {
currentId = visiblePages [ 0 ] . id ;
}
this . _setCurrentPageNumber ( currentId ) ;
}
} , {
key : "_setDocumentViewerElement" ,
get : function get ( ) {
return ( 0 , _pdf . shadow ) ( this , '_setDocumentViewerElement' , this . viewer ) ;
}
} ] ) ;
return PDFViewer ;
} ( _base _viewer . BaseViewer ) ;
exports . PDFViewer = PDFViewer ;