!function(n,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("xmldom"),function(){try{return require("jszip")}catch(n){}}()):"function"==typeof define&&define.amd?define(["xmldom","jszip"],t):"object"==typeof exports?exports.ePub=t(require("xmldom"),function(){try{return require("jszip")}catch(n){}}()):n.ePub=t(n.xmldom,n.jszip)}("undefined"!=typeof self?self:this,function(n,t){return function(n){function t(r){if(i[r])return i[r].exports;var u=i[r]={i:r,l:!1,exports:{}};return n[r].call(u.exports,u,u.exports,t),u.l=!0,u.exports}var i={};return t.m=n,t.c=i,t.d=function(n,i,r){t.o(n,i)||Object.defineProperty(n,i,{configurable:!1,enumerable:!0,get:r})},t.n=function(n){var i=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(i,"a",i),i},t.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},t.p="/dist/",t(t.s=25)}([function(n,t,i){"use strict";function h(){var n=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(t){var i=(n+16*Math.random())%16|0;return n=Math.floor(n/16),("x"==t?i:7&i|8).toString(16)})}function c(n){return!isNaN(parseFloat(n))&&isFinite(n)}function r(n,t,i,u,f){var s,o=u||0,h=f||t.length,e=parseInt(o+(h-o)/2);return i||(i=function(n,t){return t<n?1:n<t?-1:n==t?0:void 0}),h-o<=0?e:(s=i(t[e],n),h-o==1?0<=s?e:e+1:0===s?e:-1===s?r(n,t,i,e,h):r(n,t,i,o,e))}function u(n,t){for(var r,u=n.parentNode.childNodes,f=-1,i=0;i<u.length&&((r=u[i]).nodeType===t&&f++,r!=n);i++);return f}function l(n,t){return new Blob([n],{type:t})}function a(n,t){return void 0!==n.querySelector?n.querySelectorAll(t):n.getElementsByTagName(t)}function v(n,t,i){for(var u=document.createTreeWalker(n,i,null,!1),r=void 0;r=u.nextNode();)t(r)}function f(n,t){if(t(n))return!0;if(n=n.firstChild)do{if(f(n,t))return!0;n=n.nextSibling}while(n)}function e(n){for(var t=[n];n;n=n.parentNode)t.unshift(n);return t}var o;Object.defineProperty(t,"__esModule",{value:!0});o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}();t.uuid=h;t.documentHeight=function(){return Math.max(document.documentElement.clientHeight,document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight)};t.isElement=function(n){return!(!n||1!=n.nodeType)};t.isNumber=c;t.isFloat=function(n){var t=parseFloat(n);return!1===c(n)?!1:"string"==typeof n&&-1<n.indexOf(".")?!0:Math.floor(t)!==t};t.prefixed=function(n){var i=["Webkit","webkit","Moz","O","ms"],r=["-webkit-","-webkit-","-moz-","-o-","-ms-"],u=n[0].toUpperCase()+n.slice(1),f=i.length,t;if("undefined"==typeof document||void 0!==document.body.style[n])return n;for(t=0;t<f;t++)if(void 0!==document.body.style[i[t]+u])return r[t]+n;return n};t.defaults=function(n){for(var r,i,t=1,u=arguments.length;t<u;t++){r=arguments[t];for(i in r)void 0===n[i]&&(n[i]=r[i])}return n};t.extend=function(n){return[].slice.call(arguments,1).forEach(function(t){t&&Object.getOwnPropertyNames(t).forEach(function(i){Object.defineProperty(n,i,Object.getOwnPropertyDescriptor(t,i))})}),n};t.insert=function(n,t,i){var u=r(n,t,i);return t.splice(u,0,n),u};t.locationOf=r;t.indexOfSorted=function n(t,i,r,u,f){var e=u||0,s=f||i.length,o=parseInt(e+(s-e)/2),h;return(r||(r=function(n,t){return t<n?1:n<t?-1:n==t?0:void 0}),s-e<=0)?-1:(h=r(i[o],t),s-e==1)?0===h?o:-1:0===h?o:-1===h?n(t,i,r,o,s):n(t,i,r,e,o)};t.bounds=function(n){var t=window.getComputedStyle(n),i=0,r=0;return["width","paddingRight","paddingLeft","marginRight","marginLeft","borderRightWidth","borderLeftWidth"].forEach(function(n){i+=parseFloat(t[n])||0}),["height","paddingTop","paddingBottom","marginTop","marginBottom","borderTopWidth","borderBottomWidth"].forEach(function(n){r+=parseFloat(t[n])||0}),{height:r,width:i}};t.borders=function(n){var t=window.getComputedStyle(n),i=0,r=0;return["paddingRight","paddingLeft","marginRight","marginLeft","borderRightWidth","borderLeftWidth"].forEach(function(n){i+=parseFloat(t[n])||0}),["paddingTop","paddingBottom","marginTop","marginBottom","borderTopWidth","borderBottomWidth"].forEach(function(n){r+=parseFloat(t[n])||0}),{height:r,width:i}};t.windowBounds=function(){var n=window.innerWidth,t=window.innerHeight;return{top:0,left:0,right:n,bottom:t,width:n,height:t}};t.indexOfNode=u;t.indexOfTextNode=function(n){return u(n,p)};t.indexOfElementNode=function(n){return u(n,y)};t.isXml=function(n){return-1<["xml","opf","ncx"].indexOf(n)};t.createBlob=l;t.createBlobUrl=function(n,t){var i=l(n,t);return s.createObjectURL(i)};t.revokeBlobUrl=function(n){return s.revokeObjectURL(n)};t.createBase64Url=function(n,t){var i;if("string"==typeof n)return i=btoa(encodeURIComponent(n)),"data:"+t+";base64,"+i};t.type=function(n){return Object.prototype.toString.call(n).slice(8,-1)};t.parse=function(n,t,r){var u;return u="undefined"==typeof DOMParser||r?i(16).DOMParser:DOMParser,65279===n.charCodeAt(0)&&(n=n.slice(1)),(new u).parseFromString(n,t)};t.qs=function(n,t){var i;if(!n)throw new Error("No Element Provided");return void 0!==n.querySelector?n.querySelector(t):(i=n.getElementsByTagName(t)).length?i[0]:void 0};t.qsa=a;t.qsp=function(n,t,i){var u,f,r;if(void 0!==n.querySelector){for(r in t+="[",i)t+=r+"~='"+i[r]+"'";return t+="]",n.querySelector(t)}if(u=n.getElementsByTagName(t),f=Array.prototype.slice.call(u,0).filter(function(n){for(var t in i)if(n.getAttribute(t)===i[t])return!0;return!1}))return f[0]};t.sprint=function(n,t){void 0!==(n.ownerDocument||n).createTreeWalker?v(n,t,NodeFilter.SHOW_TEXT):f(n,function(n){n&&3===n.nodeType&&t(n)})};t.treeWalker=v;t.walk=f;t.blob2base64=function(n){return new Promise(function(t){var i=new FileReader;i.readAsDataURL(n);i.onloadend=function(){t(i.result)}})};t.defer=function(){var n=this;this.resolve=null;this.reject=null;this.id=h();this.promise=new Promise(function(t,i){n.resolve=t;n.reject=i});Object.freeze(this)};t.querySelectorByType=function(n,t,i){var r,u;if(void 0!==n.querySelector&&(r=n.querySelector(t+'[*|type="'+i+'"]')),r&&0!==r.length)return r;for(r=a(n,t),u=0;u<r.length;u++)if(r[u].getAttributeNS("http://www.idpf.org/2007/ops","type")===i||r[u].getAttribute("epub:type")===i)return r[u]};t.findChildren=function(n){for(var i,r=[],u=n.childNodes,t=0;t<u.length;t++)i=u[t],1===i.nodeType&&r.push(i);return r};t.parents=e;t.filterChildren=function(n,t,i){for(var r,f=[],e=n.childNodes,u=0;u<e.length;u++)if(r=e[u],1===r.nodeType&&r.nodeName.toLowerCase()===t){if(i)return r;f.push(r)}if(!i)return f};t.getParentByTagName=function(n,t){var i=void 0;if(null!==n&&""!==t)for(i=n.parentNode;1===i.nodeType;){if(i.tagName.toLowerCase()===t)return i;i=i.parentNode}};t.requestAnimationFrame="undefined"!=typeof window&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame);var y=1,p=3,s="undefined"!=typeof URL?URL:"undefined"!=typeof window?window.URL||window.webkitURL||window.mozURL:void 0;t.RangeObject=function(){function n(){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.collapsed=!1;this.commonAncestorContainer=void 0;this.endContainer=void 0;this.endOffset=void 0;this.startContainer=void 0;this.startOffset=void 0}return o(n,[{key:"setStart",value:function(n,t){this.startContainer=n;this.startOffset=t;this.endContainer?this.commonAncestorContainer=this._commonAncestorContainer():this.collapse(!0);this._checkCollapsed()}},{key:"setEnd",value:function(n,t){this.endContainer=n;this.endOffset=t;this.startContainer?(this.collapsed=!1,this.commonAncestorContainer=this._commonAncestorContainer()):this.collapse(!1);this._checkCollapsed()}},{key:"collapse",value:function(n){this.collapsed=!0;n?(this.endContainer=this.startContainer,this.endOffset=this.startOffset,this.commonAncestorContainer=this.startContainer.parentNode):(this.startContainer=this.endContainer,this.startOffset=this.endOffset,this.commonAncestorContainer=this.endOffset.parentNode)}},{key:"selectNode",value:function(n){var t=n.parentNode,i=Array.prototype.indexOf.call(t.childNodes,n);this.setStart(t,i);this.setEnd(t,i+1)}},{key:"selectNodeContents",value:function(n){n.childNodes[n.childNodes-1];var t=3===n.nodeType?n.textContent.length:parent.childNodes.length;this.setStart(n,0);this.setEnd(n,t)}},{key:"_commonAncestorContainer",value:function(n,t){var r=e(n||this.startContainer),u=e(t||this.endContainer),i;if(r[0]==u[0])for(i=0;i<r.length;i++)if(r[i]!=u[i])return r[i-1]}},{key:"_checkCollapsed",value:function(){this.collapsed=this.startContainer===this.endContainer&&this.startOffset===this.endOffset?!0:!1}},{key:"toString",value:function(){}}]),n}()},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),e=function(){function n(t,i,f){var e;if(function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n),this.str="",this.base={},this.spinePos=0,this.range=!1,this.path={},this.start=null,this.end=null,!(this instanceof n))return new n(t,i,f);if("string"==typeof i?this.base=this.parseComponent(i):"object"===(void 0===i?"undefined":u(i))&&i.steps&&(this.base=i),"string"===(e=this.checkType(t)))return this.str=t,r.extend(this,this.parse(t));if("range"===e)return r.extend(this,this.fromRange(t,this.base,f));if("node"===e)return r.extend(this,this.fromNode(t,this.base,f));if("EpubCFI"===e&&t.path)return t;if(t)throw new TypeError("not a valid argument for EpubCFI");return this}return f(n,[{key:"checkType",value:function(t){return this.isCfiString(t)?"string":"object"!==(void 0===t?"undefined":u(t))||"Range"!==r.type(t)&&void 0===t.startContainer?"object"===(void 0===t?"undefined":u(t))&&void 0!==t.nodeType?"node":"object"===(void 0===t?"undefined":u(t))&&t instanceof n&&"EpubCFI":"range"}},{key:"parse",value:function(n){var r,u,i,t={spinePos:-1,range:!1,base:{},path:{},start:null,end:null};return"string"!=typeof n?{spinePos:-1}:(0===n.indexOf("epubcfi(")&&")"===n[n.length-1]&&(n=n.slice(8,n.length-1)),(r=this.getChapterComponent(n))?(t.base=this.parseComponent(r),u=this.getPathComponent(n),t.path=this.parseComponent(u),(i=this.getRange(n))&&(t.range=!0,t.start=this.parseComponent(i[0]),t.end=this.parseComponent(i[1])),t.spinePos=t.base.steps[1].index,t):{spinePos:-1})}},{key:"parseComponent",value:function(n){var u,t={steps:[],terminal:{offset:null,assertion:null}},i=n.split(":"),r=i[0].split("/");return 1<i.length&&(u=i[1],t.terminal=this.parseTerminal(u)),""===r[0]&&r.shift(),t.steps=r.map(function(n){return this.parseStep(n)}.bind(this)),t}},{key:"parseStep",value:function(n){var i,t,r,u,f;if((u=n.match(/\[(.*)\]/))&&u[1]&&(f=u[1]),t=parseInt(n),!isNaN(t))return t%2==0?(i="element",r=t/2-1):(i="text",r=(t-1)/2),{type:i,index:r,id:f||null}}},{key:"parseTerminal",value:function(n){var t,u,i=n.match(/\[(.*)\]/);return i&&i[1]?(t=parseInt(n.split("[")[0]),u=i[1]):t=parseInt(n),r.isNumber(t)||(t=null),{offset:t,assertion:u}}},{key:"getChapterComponent",value:function(n){return n.split("!")[0]}},{key:"getPathComponent",value:function(n){var t=n.split("!");if(t[1])return t[1].split(",")[0]}},{key:"getRange",value:function(n){var t=n.split(",");return 3===t.length&&[t[1],t[2]]}},{key:"getCharecterOffsetComponent",value:function(n){return n.split(":")[1]||""}},{key:"joinSteps",value:function(n){return n?n.map(function(n){var t="";return"element"===n.type&&(t+=2*(n.index+1)),"text"===n.type&&(t+=1+2*n.index),n.id&&(t+="["+n.id+"]"),t}).join("/"):""}},{key:"segmentString",value:function(n){var t="/";return t+=this.joinSteps(n.steps),n.terminal&&null!=n.terminal.offset&&(t+=":"+n.terminal.offset),n.terminal&&null!=n.terminal.assertion&&(t+="["+n.terminal.assertion+"]"),t}},{key:"toString",value:function(){var n="epubcfi(";return n+=this.segmentString(this.base),n+="!",n+=this.segmentString(this.path),this.range&&this.start&&(n+=",",n+=this.segmentString(this.start)),this.range&&this.end&&(n+=",",n+=this.segmentString(this.end)),n+")"}},{key:"compare",value:function(t,i){var u,f,e,o,r;if("string"==typeof t&&(t=new n(t)),"string"==typeof i&&(i=new n(i)),t.spinePos>i.spinePos)return 1;if(t.spinePos<i.spinePos)return-1;for(t.range?(u=t.path.steps.concat(t.start.steps),e=t.start.terminal):(u=t.path.steps,e=t.path.terminal),i.range?(f=i.path.steps.concat(i.start.steps),o=i.start.terminal):(f=i.path.steps,o=i.path.terminal),r=0;r<u.length;r++){if(!u[r])return-1;if(!f[r]||u[r].index>f[r].index)return 1;if(u[r].index<f[r].index)return-1}return u.length<f.length?1:e.offset>o.offset?1:e.offset<o.offset?-1:0}},{key:"step",value:function(n){var t=3===n.nodeType?"text":"element";return{id:n.id,tagName:n.tagName,type:t,index:this.position(n)}}},{key:"filteredStep",value:function(n,t){var r,i=this.filter(n,t);if(i)return r=3===i.nodeType?"text":"element",{id:i.id,tagName:i.tagName,type:r,index:this.filteredPosition(i,t)}}},{key:"pathTo",value:function(n,t,i){for(var f,u={steps:[],terminal:{offset:null,assertion:null}},r=n;r&&r.parentNode&&9!=r.parentNode.nodeType;)(f=i?this.filteredStep(r,i):this.step(r))&&u.steps.unshift(f),r=r.parentNode;return null!=t&&0<=t&&(u.terminal.offset=t,"text"!=u.steps[u.steps.length-1].type&&u.steps.push({type:"text",index:0})),u}},{key:"equalStep",value:function(n,t){return!(!n||!t)&&n.index===t.index&&n.id===t.id&&n.type===t.type}},{key:"fromRange",value:function(n,t,i){var r={range:!1,base:{},path:{},start:null,end:null},o=n.startContainer,l=n.endContainer,e=n.startOffset,h=n.endOffset,s=!1,f,c;if(i&&(s=null!=o.ownerDocument.querySelector("."+i)),"string"==typeof t?(r.base=this.parseComponent(t),r.spinePos=r.base.steps[1].index):"object"===(void 0===t?"undefined":u(t))&&(r.base=t),n.collapsed)s&&(e=this.patchOffset(o,e,i)),r.path=this.pathTo(o,e,i);else{for(r.range=!0,s&&(e=this.patchOffset(o,e,i)),r.start=this.pathTo(o,e,i),s&&(h=this.patchOffset(l,h,i)),r.end=this.pathTo(l,h,i),r.path={steps:[],terminal:null},c=r.start.steps.length,f=0;f<c&&this.equalStep(r.start.steps[f],r.end.steps[f]);f++)f===c-1?r.start.terminal===r.end.terminal&&(r.path.steps.push(r.start.steps[f]),r.range=!1):r.path.steps.push(r.start.steps[f]);r.start.steps=r.start.steps.slice(r.path.steps.length);r.end.steps=r.end.steps.slice(r.path.steps.length)}return r}},{key:"fromNode",value:function(n,t,i){var r={range:!1,base:{},path:{},start:null,end:null};return"string"==typeof t?(r.base=this.parseComponent(t),r.spinePos=r.base.steps[1].index):"object"===(void 0===t?"undefined":u(t))&&(r.base=t),r.path=this.pathTo(n,null,i),r}},{key:"filter",value:function(n,t){var i,e,o,r,u,f=!1;return 3===n.nodeType?(f=!0,o=n.parentNode,i=n.parentNode.classList.contains(t)):(f=!1,i=n.classList.contains(t)),i&&f?(r=o.previousSibling,u=o.nextSibling,r&&3===r.nodeType?e=r:u&&3===u.nodeType&&(e=u),e||n):!(i&&!f)&&n}},{key:"patchOffset",value:function(n,t,i){if(3!=n.nodeType)throw new Error("Anchor must be a text node");var r=n,u=t;for(n.parentNode.classList.contains(i)&&(r=n.parentNode);r.previousSibling;){if(1===r.previousSibling.nodeType){if(!r.previousSibling.classList.contains(i))break;u+=r.previousSibling.textContent.length}else u+=r.previousSibling.textContent.length;r=r.previousSibling}return u}},{key:"normalizedMap",value:function(n,t,i){for(var u,o,f={},e=-1,s=n.length,r=0;r<s;r++)1===(u=n[r].nodeType)&&n[r].classList.contains(i)&&(u=3),0<r&&3===u&&3===o?f[r]=e:t===u&&(e+=1,f[r]=e),o=u;return f}},{key:"position",value:function(n){var t,i;return 1===n.nodeType?((t=n.parentNode.children)||(t=r.findChildren(n.parentNode)),i=Array.prototype.indexOf.call(t,n)):i=(t=this.textNodes(n.parentNode)).indexOf(n),i}},{key:"filteredPosition",value:function(n,t){var i,r;return 1===n.nodeType?(i=n.parentNode.children,r=this.normalizedMap(i,1,t)):(i=n.parentNode.childNodes,n.parentNode.classList.contains(t)&&(i=(n=n.parentNode).parentNode.childNodes),r=this.normalizedMap(i,3,t)),r[Array.prototype.indexOf.call(i,n)]}},{key:"stepsToXpath",value:function(n){var t=[".","*"];return n.forEach(function(n){var i=n.index+1;n.id?t.push("*[position()="+i+" and @id='"+n.id+"']"):"text"===n.type?t.push("text()["+i+"]"):t.push("*["+i+"]")}),t.join("/")}},{key:"stepsToQuerySelector",value:function(n){var t=["html"];return n.forEach(function(n){var i=n.index+1;n.id?t.push("#"+n.id):"text"===n.type||t.push("*:nth-child("+i+")")}),t.join(">")}},{key:"textNodes",value:function(n,t){return Array.prototype.slice.call(n.childNodes).filter(function(n){return 3===n.nodeType||!(!t||!n.classList.contains(t))})}},{key:"walkToNode",value:function(n,t,i){for(var f,o=t||document,u=o.documentElement,s=n.length,e=0;e<s&&("element"===(f=n[e]).type?u=f.id?o.getElementById(f.id):(u.children||r.findChildren(u))[f.index]:"text"===f.type&&(u=this.textNodes(u,i)[f.index]),u);e++);return u}},{key:"findNode",value:function(n,t,i){var u,f,r=t||document;return i||void 0===r.evaluate?u=i?this.walkToNode(n,r,i):this.walkToNode(n,r):(f=this.stepsToXpath(n),u=r.evaluate(f,r,null,XPathResult.FIRST_ORDERED_NODE_TYPE,null).singleNodeValue),u}},{key:"fixMiss",value:function(n,t,i,r){var u,s,e=this.findNode(n.slice(0,-1),i,r),h=e.childNodes,o=this.normalizedMap(h,3,r),c=n[n.length-1].index,f;for(f in o){if(!o.hasOwnProperty(f))return;if(o[f]===c){if(!((s=(u=h[f]).textContent.length)<t)){e=1===u.nodeType?u.childNodes[0]:u;break}t-=s}}return{container:e,offset:t}}},{key:"toRange",value:function(n,t){var u,e,c,s,l,a,v,o,f=n||document,i=this,h=!!t&&null!=f.querySelector("."+t);if(u=void 0!==f.createRange?f.createRange():new r.RangeObject,i.range?(e=i.start,a=i.path.steps.concat(e.steps),s=this.findNode(a,f,h?t:null),c=i.end,v=i.path.steps.concat(c.steps),l=this.findNode(v,f,h?t:null)):(e=i.path,a=i.path.steps,s=this.findNode(i.path.steps,f,h?t:null)),!s)return console.log("No startContainer found for",this.toString()),null;try{null!=e.terminal.offset?u.setStart(s,e.terminal.offset):u.setStart(s,0)}catch(n){o=this.fixMiss(a,e.terminal.offset,f,h?t:null);u.setStart(o.container,o.offset)}if(l)try{null!=c.terminal.offset?u.setEnd(l,c.terminal.offset):u.setEnd(l,0)}catch(n){o=this.fixMiss(v,i.end.terminal.offset,f,h?t:null);u.setEnd(o.container,o.offset)}return u}},{key:"isCfiString",value:function(n){return"string"==typeof n&&0===n.indexOf("epubcfi(")&&")"===n[n.length-1]}},{key:"generateChapterComponent",value:function(n,t,i){var r="/"+2*(n+1)+"/";return r+=2*(parseInt(t)+1),i&&(r+="["+i+"]"),r}},{key:"collapse",value:function(n){this.range&&(this.range=!1,n?(this.path.steps=this.path.steps.concat(this.start.steps),this.path.terminal=this.start.terminal):(this.path.steps=this.path.steps.concat(this.end.steps),this.path.terminal=this.end.terminal))}}]),n}();t.default=e;n.exports=t.default},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.EPUBJS_VERSION="0.3";t.DOM_EVENTS=["keydown","keyup","keypressed","mouseup","mousedown","click","touchend","touchstart"];t.EVENTS={BOOK:{OPEN_FAILED:"openFailed"},CONTENTS:{EXPAND:"expand",RESIZE:"resize",SELECTED:"selected",SELECTED_RANGE:"selectedRange",LINK_CLICKED:"linkClicked"},LOCATIONS:{CHANGED:"changed"},MANAGERS:{RESIZE:"resize",RESIZED:"resized",ORIENTATION_CHANGE:"orientationchange",ADDED:"added",SCROLL:"scroll",SCROLLED:"scrolled"},VIEWS:{AXIS:"axis",LOAD_ERROR:"loaderror",RENDERED:"rendered",RESIZED:"resized",DISPLAYED:"displayed",SHOWN:"shown",HIDDEN:"hidden",MARK_CLICKED:"markClicked"},RENDITION:{STARTED:"started",ATTACHED:"attached",DISPLAYED:"displayed",DISPLAY_ERROR:"displayerror",RENDERED:"rendered",REMOVED:"removed",RESIZED:"resized",ORIENTATION_CHANGE:"orientationchange",LOCATION_CHANGED:"locationChanged",RELOCATED:"relocated",MARK_CLICKED:"markClicked",SELECTED:"selected",LAYOUT:"layout"},LAYOUT:{UPDATED:"updated"}}},function(n,t,i){"use strict";var u,f,e,v,y,o,p,r=i(27),s=i(41),h=Function.prototype.apply,c=Function.prototype.call,w=Object.create,k=Object.defineProperty,b=Object.defineProperties,l=Object.prototype.hasOwnProperty,a={configurable:!0,enumerable:!1,writable:!0};f=function(n,t){var i,r;return s(t),u.call(r=this,n,i=function(){e.call(r,n,i);h.call(t,this,arguments)}),i.__eeOnceListener__=t,this};y={on:u=function(n,t){var i;return s(t),l.call(this,"__ee__")?i=this.__ee__:(i=a.value=w(null),k(this,"__ee__",a),a.value=null),i[n]?"object"==typeof i[n]?i[n].push(t):i[n]=[i[n],t]:i[n]=t,this},once:f,off:e=function(n,t){var u,i,f,r;if((s(t),!l.call(this,"__ee__"))||!(u=this.__ee__)[n])return this;if("object"==typeof(i=u[n]))for(r=0;f=i[r];++r)f!==t&&f.__eeOnceListener__!==t||(2===i.length?u[n]=i[r?0:1]:i.splice(r,1));else i!==t&&i.__eeOnceListener__!==t||delete u[n];return this},emit:v=function(n){var t,r,f,i,u;if(l.call(this,"__ee__")&&(i=this.__ee__[n]))if("object"==typeof i){for(r=arguments.length,u=new Array(r-1),t=1;t<r;++t)u[t-1]=arguments[t];for(i=i.slice(),t=0;f=i[t];++t)h.call(f,this,u)}else switch(arguments.length){case 1:c.call(i,this);break;case 2:c.call(i,this,arguments[1]);break;case 3:c.call(i,this,arguments[1],arguments[2]);break;default:for(r=arguments.length,u=new Array(r-1),t=1;t<r;++t)u[t-1]=arguments[t];h.call(i,this,u)}}};o={on:r(u),once:r(f),off:r(e),emit:r(v)};p=b({},o);n.exports=t=function(n){return null==n?w(p):b(Object(n),o)};t.methods=y},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(6),u=(r=e)&&r.__esModule?r:{"default":r},o=function(){function n(t){var i;!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);-1<t.indexOf("://")&&(t=new URL(t).pathname);i=this.parse(t);this.path=t;this.directory=this.isDirectory(t)?t:i.dir+"/";this.filename=i.base;this.extension=i.ext.slice(1)}return f(n,[{key:"parse",value:function(n){return u.default.parse(n)}},{key:"isAbsolute",value:function(n){return u.default.isAbsolute(n||this.path)}},{key:"isDirectory",value:function(n){return"/"===n.charAt(n.length-1)}},{key:"resolve",value:function(n){return u.default.resolve(this.directory,n)}},{key:"relative",value:function(n){return u.default.relative(this.directory,n)}},{key:"splitPath",value:function(n){return this.splitPathRe.exec(n).slice(1)}},{key:"toString",value:function(){return this.path}}]),n}();t.default=o;n.exports=t.default},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}var e;Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=f(i(4)),u=f(i(6));e=function(){function n(t,i){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);var f=-1<t.indexOf("://"),u=t;if(this.Url=void 0,this.href=t,this.protocol="",this.origin="",this.hash="",this.hash="",this.search="",this.base=i,!f&&!1!==i&&"string"!=typeof i&&window&&window.location&&(this.base=window.location.href),f||this.base)try{this.Url=this.base?new URL(t,this.base):new URL(t);this.href=this.Url.href;this.protocol=this.Url.protocol;this.origin=this.Url.origin;this.hash=this.Url.hash;this.search=this.Url.search;u=this.Url.pathname}catch(t){this.Url=void 0;this.base&&(u=new r.default(this.base).resolve(u))}this.Path=new r.default(u);this.directory=this.Path.directory;this.filename=this.Path.filename;this.extension=this.Path.extension}return o(n,[{key:"path",value:function(){return this.Path}},{key:"resolve",value:function(n){var t;return-1<n.indexOf("://")?n:(t=u.default.resolve(this.directory,n),this.origin+t)}},{key:"relative",value:function(n){return u.default.relative(n,this.directory)}},{key:"toString",value:function(){return this.href}}]),n}();t.default=e;n.exports=t.default},function(n){"use strict";function t(n){if("string"!=typeof n)throw new TypeError("Path must be a string. Received "+n);}function u(n,t){for(var s,e,o,i="",f=-1,u=0,r=0;r<=n.length;++r){if(r<n.length)o=n.charCodeAt(r);else{if(47===o)break;o=47}if(47===o){if(f!==r-1&&1!==u)if(f!==r-1&&2===u){if(i.length<2||46!==i.charCodeAt(i.length-1)||46!==i.charCodeAt(i.length-2))if(2<i.length){for(s=i.length-1,e=s;0<=e&&47!==i.charCodeAt(e);--e);if(e!==s){i=-1===e?"":i.slice(0,e);f=r;u=0;continue}}else if(2===i.length||1===i.length){i="";f=r;u=0;continue}t&&(0<i.length?i+="/..":i="..")}else 0<i.length?i+="/"+n.slice(f+1,r):i=n.slice(f+1,r);f=r;u=0}else 46===o&&-1!==u?++u:u=-1}return i}var r,i;r||(r={cwd:function(){return"/"}});i={resolve:function(){for(var i,o,n="",f=!1,e=arguments.length-1;-1<=e&&!f;e--)0<=e?i=arguments[e]:(void 0===o&&(o=r.cwd()),i=o),t(i),0!==i.length&&(n=i+"/"+n,f=47===i.charCodeAt(0));return n=u(n,!f),f?0<n.length?"/"+n:"/":0<n.length?n:"."},normalize:function(n){if(t(n),0===n.length)return".";var i=47===n.charCodeAt(0),r=47===n.charCodeAt(n.length-1);return 0!==(n=u(n,!i)).length||i||(n="."),0<n.length&&r&&(n+="/"),i?"/"+n:n},isAbsolute:function(n){return t(n),0<n.length&&47===n.charCodeAt(0)},join:function(){var n,u,r;if(0===arguments.length)return".";for(u=0;u<arguments.length;++u)r=arguments[u],t(r),0<r.length&&(void 0===n?n=r:n+="/"+r);return void 0===n?".":i.normalize(n)},relative:function(n,r){var e,v,s;if((t(n),t(r),n===r)||(n=i.resolve(n))===(r=i.resolve(r)))return"";for(e=1;e<n.length&&47===n.charCodeAt(e);++e);for(var c=n.length,l=c-e,f=1;f<r.length&&47===r.charCodeAt(f);++f);for(var a=r.length-f,h=l<a?l:a,o=-1,u=0;u<=h;++u){if(u===h){if(h<a){if(47===r.charCodeAt(f+u))return r.slice(f+u+1);if(0===u)return r.slice(f+u)}else h<l&&(47===n.charCodeAt(e+u)?o=u:0===u&&(o=0));break}if(v=n.charCodeAt(e+u),v!==r.charCodeAt(f+u))break;47===v&&(o=u)}for(s="",u=e+o+1;u<=c;++u)u!==c&&47!==n.charCodeAt(u)||(s+=0===s.length?"..":"/..");return 0<s.length?s+r.slice(f+o):(f+=o,47===r.charCodeAt(f)&&++f,r.slice(f))},_makeLong:function(n){return n},dirname:function(n){if(t(n),0===n.length)return".";for(var u=n.charCodeAt(0),f=47===u,i=-1,e=!0,r=n.length-1;1<=r;--r)if(47===(u=n.charCodeAt(r))){if(!e){i=r;break}}else e=!1;return-1===i?f?"/":".":f&&1===i?"//":n.slice(0,i)},basename:function(n,i){var e,o,h;if(void 0!==i&&"string"!=typeof i)throw new TypeError('"ext" argument must be a string');t(n);var r,f=0,u=-1,s=!0;if(void 0!==i&&0<i.length&&i.length<=n.length){if(i.length===n.length&&i===n)return"";for(e=i.length-1,o=-1,r=n.length-1;0<=r;--r)if(h=n.charCodeAt(r),47===h){if(!s){f=r+1;break}}else-1===o&&(s=!1,o=r+1),0<=e&&(h===i.charCodeAt(e)?-1==--e&&(u=r):(e=-1,u=o));return f===u?u=o:-1===u&&(u=n.length),n.slice(f,u)}for(r=n.length-1;0<=r;--r)if(47===n.charCodeAt(r)){if(!s){f=r+1;break}}else-1===u&&(s=!1,u=r+1);return-1===u?"":n.slice(f,u)},extname:function(n){var e;t(n);for(var i=-1,o=0,u=-1,s=!0,f=0,r=n.length-1;0<=r;--r)if(e=n.charCodeAt(r),47!==e)-1===u&&(s=!1,u=r+1),46===e?-1===i?i=r:1!==f&&(f=1):-1!==i&&(f=-1);else if(!s){o=r+1;break}return-1===i||-1===u||0===f||1===f&&i===u-1&&i===o+1?"":n.slice(i,u)},format:function(n){if(null===n||"object"!=typeof n)throw new TypeError('Parameter "pathObject" must be an object, not '+typeof n);return u="/",i=(t=n).dir||t.root,r=t.base||(t.name||"")+(t.ext||""),i?i===t.root?i+r:i+u+r:r;var u,t,i,r},parse:function(n){var i,c,h,o;if(t(n),i={root:"",dir:"",base:"",ext:"",name:""},0===n.length)return i;h=n.charCodeAt(0);o=47===h;o?(i.root="/",c=1):c=0;for(var u=-1,f=0,r=-1,l=!0,e=n.length-1,s=0;c<=e;--e)if(47!==(h=n.charCodeAt(e)))-1===r&&(l=!1,r=e+1),46===h?-1===u?u=e:1!==s&&(s=1):-1!==u&&(s=-1);else if(!l){f=e+1;break}return-1===u||-1===r||0===s||1===s&&u===r-1&&u===f+1?-1!==r&&(i.base=i.name=0===f&&o?n.slice(1,r):n.slice(f,r)):(0===f&&o?(i.name=n.slice(1,u),i.base=n.slice(1,r)):(i.name=n.slice(f,u),i.base=n.slice(f,r)),i.ext=n.slice(u,r)),0<f?i.dir=n.slice(0,f-1):o&&(i.dir="/"),i},sep:"/",delimiter:":",posix:null};n.exports=i},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}Object.defineProperty(t,"__esModule",{value:!0});t.replaceBase=function(n,t){var i,u,f=t.url,e=-1<f.indexOf("://");n&&(u=r.qs(n,"head"),(i=r.qs(u,"base"))||(i=n.createElement("base"),u.insertBefore(i,u.firstChild)),!e&&window&&window.location&&(f=window.location.origin+f),i.setAttribute("href",f))};t.replaceCanonical=function(n,t){var u,i,f=t.canonical;n&&(u=r.qs(n,"head"),(i=r.qs(u,"link[rel='canonical']"))?i.setAttribute("href",f):((i=n.createElement("link")).setAttribute("rel","canonical"),i.setAttribute("href",f),u.appendChild(i)))};t.replaceMeta=function(n,t){var u,i,f=t.idref;n&&(u=r.qs(n,"head"),(i=r.qs(u,"link[property='dc.identifier']"))?i.setAttribute("content",f):((i=n.createElement("meta")).setAttribute("name","dc.identifier"),i.setAttribute("content",f),u.appendChild(i)))};t.replaceLinks=function(n,t){var i=n.querySelectorAll("a[href]");if(i.length)for(var e=r.qs(n.ownerDocument,"base"),o=e?e.getAttribute("href"):void 0,s=function(n){var r=n.getAttribute("href"),u,i;0!==r.indexOf("mailto:")&&(u=-1<r.indexOf("://"),i=new f.default(r,o),u?n.setAttribute("target","_blank"):n.onclick=function(){return i&&i.hash?t(i.Path.path+i.hash):t(i?i.Path.path:r),!1})}.bind(this),u=0;u<i.length;u++)s(i[u])};t.substitute=function(n,t,i){return t.forEach(function(t,r){t&&i[r]&&(n=n.replace(new RegExp(t,"g"),i[r]))}),n};var r=i(0),f=u(i(5));u(i(4))},function(Xm,Ym){var Zm=function(){return this}();try{Zm=Zm||Function("return this")()||eval("this")}catch(t){"object"==typeof window&&(Zm=window)}Xm.exports=Zm},function(n,t,i){"use strict";var r=i(34)();n.exports=function(n){return n!==r&&null!==n}},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.context=t||this;this.hooks=[]}return i(n,[{key:"register",value:function(){for(var t,n=0;n<arguments.length;++n)if("function"==typeof arguments[n])this.hooks.push(arguments[n]);else for(t=0;t<arguments[n].length;++t)this.hooks.push(arguments[n][t])}},{key:"trigger",value:function(){var t=arguments,i=this.context,n=[];return this.hooks.forEach(function(r){var u=r.apply(i,t);u&&"function"==typeof u.then&&n.push(u)}),Promise.all(n)}},{key:"list",value:function(){return this.hooks}},{key:"clear",value:function(){return this.hooks=[]}}]),n}();t.default=r;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var u,r=i(0),f=i(4),e=(u=f)&&u.__esModule?u:{"default":u};t.default=function(n,t,i,u){var s,h="undefined"!=typeof window&&window.URL,l=h?"blob":"arraybuffer",o=new r.defer,f=new XMLHttpRequest,c=XMLHttpRequest.prototype;for(s in"overrideMimeType"in c||Object.defineProperty(c,"overrideMimeType",{value:function(){}}),i&&(f.withCredentials=!0),f.onreadystatechange=function(){var n,i;if(this.readyState===XMLHttpRequest.DONE)if(n=!1,""!==this.responseType&&"document"!==this.responseType||(n=this.responseXML),200===this.status||0===this.status||n){if(!this.response&&!n)return o.reject({status:this.status,message:"Empty Response",stack:(new Error).stack}),o.promise;if(403===this.status)return o.reject({status:this.status,response:this.response,message:"Forbidden",stack:(new Error).stack}),o.promise;i=n?this.responseXML:r.isXml(t)?r.parse(this.response,"text/xml"):"xhtml"==t?r.parse(this.response,"application/xhtml+xml"):"html"==t||"htm"==t?r.parse(this.response,"text/html"):"json"==t?JSON.parse(this.response):"blob"==t?h?this.response:new Blob([this.response]):this.response;o.resolve(i)}else o.reject({status:this.status,message:this.response,stack:(new Error).stack})},f.onerror=function(n){o.reject(n)},f.open("GET",n,!0),u)f.setRequestHeader(s,u[s]);return"json"==t&&f.setRequestHeader("Accept","application/json"),t||(t=new e.default(n).extension),"blob"==t&&(f.responseType=l),r.isXml(t)&&f.overrideMimeType("text/xml"),"binary"==t&&(f.responseType="arraybuffer"),f.send(),o.promise};n.exports=t.default},function(n,t,i){"use strict";function f(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var u,r,e;Object.defineProperty(t,"__esModule",{value:!0});t.Task=void 0;u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}();r=i(0);e=function(){function n(t){f(this,n);this._q=[];this.context=t;this.tick=r.requestAnimationFrame;this.running=!1;this.paused=!1}return u(n,[{key:"enqueue",value:function(){var i,t,n=[].shift.call(arguments),u=arguments;if(!n)throw new Error("No Task Provided");return t="function"==typeof n?{task:n,args:u,deferred:i=new r.defer,promise:i.promise}:{promise:n},this._q.push(t),0!=this.paused||this.running||this.run(),t.promise}},{key:"dequeue",value:function(){var n,i,t;return!this._q.length||this.paused?((n=new r.defer).deferred.resolve(),n.promise):(i=(n=this._q.shift()).task)?(t=i.apply(this.context,n.args))&&"function"==typeof t.then?t.then(function(){n.deferred.resolve.apply(this.context,arguments)}.bind(this),function(){n.deferred.reject.apply(this.context,arguments)}.bind(this)):(n.deferred.resolve.apply(this.context,t),n.promise):n.promise?n.promise:void 0}},{key:"dump",value:function(){for(;this._q.length;)this.dequeue()}},{key:"run",value:function(){var n=this;return this.running||(this.running=!0,this.defered=new r.defer),this.tick.call(window,function(){n._q.length?n.dequeue().then(function(){this.run()}.bind(n)):(n.defered.resolve(),n.running=void 0)}),1==this.paused&&(this.paused=!1),this.defered.promise}},{key:"flush",value:function(){return this.running?this.running:this._q.length?(this.running=this.dequeue().then(function(){return this.running=void 0,this.flush()}.bind(this)),this.running):void 0}},{key:"clear",value:function(){this._q=[]}},{key:"length",value:function(){return this._q.length}},{key:"pause",value:function(){this.paused=!0}},{key:"stop",value:function(){this._q=[];this.running=!1;this.paused=!0}}]),n}();t.default=e;t.Task=function n(t,i,r){return f(this,n),function(){var i=this,n=arguments||[];return new Promise(function(u,f){n.push(function(n,t){!n&&t?f(t):u(n)});t.apply(r||i,n)})}}},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}Object.defineProperty(t,"__esModule",{value:!0});var c=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),l=e(i(3)),r=i(0),f=e(i(1)),o=e(i(19)),a=i(7),u=i(2);var s="undefined"!=typeof navigator,v=s&&/Chrome/.test(navigator.userAgent),y=s&&!v&&/AppleWebKit/.test(navigator.userAgent),h=function(){function n(t,i,r,e){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.epubcfi=new f.default;this.document=t;this.documentElement=this.document.documentElement;this.content=i||this.document.body;this.window=this.document.defaultView;this._size={width:0,height:0};this.sectionIndex=e||0;this.cfiBase=r||"";this.epubReadingSystem("epub.js",u.EPUBJS_VERSION);this.listeners()}return c(n,[{key:"width",value:function(n){var t=this.content;return n&&r.isNumber(n)&&(n+="px"),n&&(t.style.width=n),this.window.getComputedStyle(t).width}},{key:"height",value:function(n){var t=this.content;return n&&r.isNumber(n)&&(n+="px"),n&&(t.style.height=n),this.window.getComputedStyle(t).height}},{key:"contentWidth",value:function(n){var t=this.content||this.document.body;return n&&r.isNumber(n)&&(n+="px"),n&&(t.style.width=n),this.window.getComputedStyle(t).width}},{key:"contentHeight",value:function(n){var t=this.content||this.document.body;return n&&r.isNumber(n)&&(n+="px"),n&&(t.style.height=n),this.window.getComputedStyle(t).height}},{key:"textWidth",value:function(){var n=void 0,i=this.document.createRange(),u=this.content||this.document.body,t=r.borders(u);return i.selectNodeContents(u),n=i.getBoundingClientRect().width,t&&t.width&&(n+=t.width),Math.round(n)}},{key:"textHeight",value:function(){var n=void 0,t=this.document.createRange(),i=this.content||this.document.body,u=r.borders(i);return t.selectNodeContents(i),(n=t.getBoundingClientRect().height)&&u.height&&(n+=u.height),Math.round(n)}},{key:"scrollWidth",value:function(){return this.documentElement.scrollWidth}},{key:"scrollHeight",value:function(){return this.documentElement.scrollHeight}},{key:"overflow",value:function(n){return n&&(this.documentElement.style.overflow=n),this.window.getComputedStyle(this.documentElement).overflow}},{key:"overflowX",value:function(n){return n&&(this.documentElement.style.overflowX=n),this.window.getComputedStyle(this.documentElement).overflowX}},{key:"overflowY",value:function(n){return n&&(this.documentElement.style.overflowY=n),this.window.getComputedStyle(this.documentElement).overflowY}},{key:"css",value:function(n,t,i){var r=this.content||this.document.body;return t&&r.style.setProperty(n,t,i?"important":""),this.window.getComputedStyle(r)[n]}},{key:"viewport",value:function(n){var t,u=this.document.querySelector("meta[name='viewport']"),f={width:void 0,height:void 0,scale:void 0,minimum:void 0,maximum:void 0,scalable:void 0},i=[];if(u&&u.hasAttribute("content")){var e=u.getAttribute("content"),o=e.match(/width\s*=\s*([^,]*)/),s=e.match(/height\s*=\s*([^,]*)/),h=e.match(/initial-scale\s*=\s*([^,]*)/),c=e.match(/minimum-scale\s*=\s*([^,]*)/),l=e.match(/maximum-scale\s*=\s*([^,]*)/),a=e.match(/user-scalable\s*=\s*([^,]*)/);o&&o.length&&void 0!==o[1]&&(f.width=o[1]);s&&s.length&&void 0!==s[1]&&(f.height=s[1]);h&&h.length&&void 0!==h[1]&&(f.scale=h[1]);c&&c.length&&void 0!==c[1]&&(f.minimum=c[1]);l&&l.length&&void 0!==l[1]&&(f.maximum=l[1]);a&&a.length&&void 0!==a[1]&&(f.scalable=a[1])}return t=r.defaults(n||{},f),n&&(t.width&&i.push("width="+t.width),t.height&&i.push("height="+t.height),t.scale&&i.push("initial-scale="+t.scale),"no"===t.scalable?(i.push("minimum-scale="+t.scale),i.push("maximum-scale="+t.scale),i.push("user-scalable="+t.scalable)):(t.scalable&&i.push("user-scalable="+t.scalable),t.minimum&&i.push("minimum-scale="+t.minimum),t.maximum&&i.push("minimum-scale="+t.maximum)),u||((u=this.document.createElement("meta")).setAttribute("name","viewport"),this.document.querySelector("head").appendChild(u)),u.setAttribute("content",i.join(", ")),this.window.scrollTo(0,0)),t}},{key:"expand",value:function(){this.emit(u.EVENTS.CONTENTS.EXPAND)}},{key:"listeners",value:function(){this.imageLoadListeners();this.mediaQueryListeners();this.addEventListeners();this.addSelectionListeners();this.resizeListeners();this.linksHandler()}},{key:"removeListeners",value:function(){this.removeEventListeners();this.removeSelectionListeners();clearTimeout(this.expanding)}},{key:"resizeCheck",value:function(){var n=this.textWidth(),t=this.textHeight();n==this._size.width&&t==this._size.height||(this._size={width:n,height:t},this.onResize&&this.onResize(this._size),this.emit(u.EVENTS.CONTENTS.RESIZE,this._size))}},{key:"resizeListeners",value:function(){clearTimeout(this.expanding);requestAnimationFrame(this.resizeCheck.bind(this));this.expanding=setTimeout(this.resizeListeners.bind(this),350)}},{key:"transitionListeners",value:function(){var n=this.content;n.style.transitionProperty="font, font-size, font-size-adjust, font-stretch, font-variation-settings, font-weight, width, height";n.style.transitionDuration="0.001ms";n.style.transitionTimingFunction="linear";n.style.transitionDelay="0";this.document.addEventListener("transitionend",this.resizeCheck.bind(this))}},{key:"mediaQueryListeners",value:function(){for(var n,t,r=this.document.styleSheets,u=function(n){n.matches&&!this._expanding&&setTimeout(this.expand.bind(this),1)}.bind(this),i=0;i<r.length;i+=1){try{n=r[i].cssRules}catch(r){return}if(!n)return;for(t=0;t<n.length;t+=1)n[t].media&&this.window.matchMedia(n[t].media.mediaText).addListener(u)}}},{key:"resizeObservers",value:function(){var n=this;this.observer=new MutationObserver(function(){n.resizeCheck()});this.observer.observe(this.document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})}},{key:"imageLoadListeners",value:function(){for(var n,i=this.document.querySelectorAll("img"),t=0;t<i.length;t++)void 0!==(n=i[t]).naturalWidth&&0===n.naturalWidth&&(n.onload=this.expand.bind(this))}},{key:"fontLoadListeners",value:function(){this.document&&this.document.fonts&&this.document.fonts.ready.then(function(){this.resizeCheck()}.bind(this))}},{key:"root",value:function(){return this.document?this.document.documentElement:null}},{key:"locationOf",value:function(n,t){var i,o={left:0,top:0},r,u,e,h,s;if(!this.document)return o;if(this.epubcfi.isCfiString(n)){if(r=new f.default(n).toRange(this.document,t),r)if(r.startContainer.nodeType===Node.ELEMENT_NODE)i=r.startContainer.getBoundingClientRect(),o.left=i.left,o.top=i.top;else if(y){u=r.startContainer;e=new Range;try{1===u.nodeType?i=u.getBoundingClientRect():r.startOffset+2<u.length?(e.setStart(u,r.startOffset),e.setEnd(u,r.startOffset+2),i=e.getBoundingClientRect()):0<r.startOffset-2?(e.setStart(u,r.startOffset-2),e.setEnd(u,r.startOffset),i=e.getBoundingClientRect()):i=u.parentNode.getBoundingClientRect()}catch(n){console.error(n,n.stack)}}else i=r.getBoundingClientRect()}else"string"==typeof n&&-1<n.indexOf("#")&&(h=n.substring(n.indexOf("#")+1),s=this.document.getElementById(h),s&&(i=s.getBoundingClientRect()));return i&&(o.left=i.left,o.top=i.top),o}},{key:"addStylesheet",value:function(n){return new Promise(function(t){var i,r=!1;this.document?(i=this.document.querySelector("link[href='"+n+"']"))?t(!0):((i=this.document.createElement("link")).type="text/css",i.rel="stylesheet",i.href=n,i.onload=i.onreadystatechange=function(){r||this.readyState&&"complete"!=this.readyState||(r=!0,setTimeout(function(){t(!0)},1))},this.document.head.appendChild(i)):t(!1)}.bind(this))}},{key:"addStylesheetRules",value:function(n){var u,t,o="epubjs-inserted-css",i,s,c,e;if(this.document&&n&&0!==n.length)if((u=this.document.getElementById("#"+o))||((u=this.document.createElement("style")).id=o),this.document.head.appendChild(u),t=u.sheet,"[object Array]"===Object.prototype.toString.call(n))for(i=0,s=n.length;i<s;i++){var f=1,r=n[i],l=n[i][0],h="";for("[object Array]"===Object.prototype.toString.call(r[1][0])&&(r=r[1],f=0),c=r.length;f<c;f++)e=r[f],h+=e[0]+":"+e[1]+(e[2]?" !important":"")+";\n";t.insertRule(l+"{"+h+"}",t.cssRules.length)}else Object.keys(n).forEach(function(i){var r=n[i],u;Array.isArray(r)?r.forEach(function(n){var r=Object.keys(n).map(function(t){return t+":"+n[t]}).join(";");t.insertRule(i+"{"+r+"}",t.cssRules.length)}):(u=Object.keys(r).map(function(n){return n+":"+r[n]}).join(";"),t.insertRule(i+"{"+u+"}",t.cssRules.length))})}},{key:"addScript",value:function(n){return new Promise(function(t){var i,r=!1;this.document?((i=this.document.createElement("script")).type="text/javascript",i.async=!0,i.src=n,i.onload=i.onreadystatechange=function(){r||this.readyState&&"complete"!=this.readyState||(r=!0,setTimeout(function(){t(!0)},1))},this.document.head.appendChild(i)):t(!1)}.bind(this))}},{key:"addClass",value:function(n){var t;this.document&&(t=this.content||this.document.body)&&t.classList.add(n)}},{key:"removeClass",value:function(n){var t;this.document&&(t=this.content||this.document.body)&&t.classList.remove(n)}},{key:"addEventListeners",value:function(){this.document&&u.DOM_EVENTS.forEach(function(n){this.document.addEventListener(n,this.triggerEvent.bind(this),!1)},this)}},{key:"removeEventListeners",value:function(){this.document&&u.DOM_EVENTS.forEach(function(n){this.document.removeEventListener(n,this.triggerEvent,!1)},this)}},{key:"triggerEvent",value:function(n){this.emit(n.type,n)}},{key:"addSelectionListeners",value:function(){this.document&&this.document.addEventListener("selectionchange",this.onSelectionChange.bind(this),!1)}},{key:"removeSelectionListeners",value:function(){this.document&&this.document.removeEventListener("selectionchange",this.onSelectionChange,!1)}},{key:"onSelectionChange",value:function(){this.selectionEndTimeout&&clearTimeout(this.selectionEndTimeout);this.selectionEndTimeout=setTimeout(function(){var n=this.window.getSelection();this.triggerSelectedEvent(n)}.bind(this),250)}},{key:"triggerSelectedEvent",value:function(n){var t,i;n&&0<n.rangeCount&&((t=n.getRangeAt(0)).collapsed||(i=new f.default(t,this.cfiBase).toString(),this.emit(u.EVENTS.CONTENTS.SELECTED,i),this.emit(u.EVENTS.CONTENTS.SELECTED_RANGE,t)))}},{key:"range",value:function(n,t){return new f.default(n).toRange(this.document,t)}},{key:"cfiFromRange",value:function(n,t){return new f.default(n,this.cfiBase,t).toString()}},{key:"cfiFromNode",value:function(n,t){return new f.default(n,this.cfiBase,t).toString()}},{key:"map",value:function(n){var t=new o.default(n);return t.section()}},{key:"size",value:function(n,t){var i={scale:1,scalable:"no"};this.layoutStyle("scrolling");0<=n&&(this.width(n),i.width=n,this.css("padding","0 "+n/12+"px"));0<=t&&(this.height(t),i.height=t);this.css("margin","0");this.css("box-sizing","border-box");this.viewport(i)}},{key:"columns",value:function(n,t,i,u){var f=r.prefixed("column-axis"),e=r.prefixed("column-gap"),o=r.prefixed("column-width"),s=r.prefixed("column-fill"),h=0===this.writingMode().indexOf("vertical")?"vertical":"horizontal";this.layoutStyle("paginated");"rtl"===this.content.dir&&this.direction("rtl");this.width(n);this.height(t);this.viewport({width:n,height:t,scale:1,scalable:"no"});this.css("overflow-y","hidden");this.css("margin","0",!0);"vertical"===h?(this.css("padding-top",u/2+"px",!0),this.css("padding-bottom",u/2+"px",!0),this.css("padding-left","20px"),this.css("padding-right","20px")):(this.css("padding-top","20px"),this.css("padding-bottom","20px"),this.css("padding-left",u/2+"px",!0),this.css("padding-right",u/2+"px",!0));this.css("box-sizing","border-box");this.css("max-width","inherit");this.css(f,"horizontal");this.css(s,"auto");this.css(e,u+"px");this.css(o,i+"px")}},{key:"scaler",value:function(n,t,i){var u="scale("+n+")",r="";this.css("transform-origin","top left");(0<=t||0<=i)&&(r=" translate("+(t||0)+"px, "+(i||0)+"px )");this.css("transform",u+r)}},{key:"fit",value:function(n,t){var i=this.viewport(),r=n/parseInt(i.width),u=t/parseInt(i.height),f=r<u?r:u,e=(t-i.height*f)/2;this.layoutStyle("paginated");this.width(n);this.height(t);this.overflow("hidden");this.scaler(f,0,e);this.css("background-color","transparent")}},{key:"direction",value:function(n){this.documentElement&&(this.documentElement.style.direction=n)}},{key:"mapPage",value:function(n,t,i,r,u){return new o.default(t,u).page(this,n,i,r)}},{key:"linksHandler",value:function(){var n=this;a.replaceLinks(this.content,function(t){n.emit(u.EVENTS.CONTENTS.LINK_CLICKED,t)})}},{key:"writingMode",value:function(n){var t=r.prefixed("writing-mode");return n&&this.documentElement&&(this.documentElement.style[t]=n),this.window.getComputedStyle(this.documentElement)[t]||""}},{key:"layoutStyle",value:function(n){return n&&(this._layoutStyle=n,navigator.epubReadingSystem.layoutStyle=this._layoutStyle),this._layoutStyle||"paginated"}},{key:"epubReadingSystem",value:function(n,t){return navigator.epubReadingSystem={name:n,version:t,layoutStyle:this.layoutStyle(),hasFeature:function(n){switch(n){case"dom-manipulation":case"layout-changes":case"touch-events":case"mouse-events":case"keyboard-events":return!0;case"spine-scripting":default:return!1}}},navigator.epubReadingSystem}},{key:"destroy",value:function(){this.observer&&this.observer.disconnect();this.document.removeEventListener("transitionend",this.resizeCheck);this.removeListeners()}}],[{key:"listenedEvents",get:function(){return u.DOM_EVENTS}}]),n}();l.default(h.prototype);t.default=h;n.exports=t.default},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}var e;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),h=f(i(3)),u=i(0),o=f(i(19)),c=f(i(12)),l=f(i(56)),a=f(i(66)),r=i(2);e=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.name="default";this.View=t.view;this.request=t.request;this.renditionQueue=t.queue;this.q=new c.default(this);this.settings=u.extend(this.settings||{},{infinite:!0,hidden:!1,width:void 0,height:void 0,axis:void 0,flow:"scrolled",ignoreClass:""});u.extend(this.settings,t.settings||{});this.viewSettings={ignoreClass:this.settings.ignoreClass,axis:this.settings.axis,flow:this.settings.flow,layout:this.layout,method:this.settings.method,width:0,height:0,forceEvenPages:!0};this.rendered=!1}return s(n,[{key:"render",value:function(n,t){var i=n.tagName;i&&("body"==i.toLowerCase()||"html"==i.toLowerCase())&&(this.fullsize=!0);this.fullsize&&(this.settings.overflow="visible",this.overflow=this.settings.overflow);this.settings.size=t;this.stage=new l.default({width:t.width,height:t.height,overflow:this.overflow,hidden:this.settings.hidden,axis:this.settings.axis,fullsize:this.fullsize,direction:this.settings.direction});this.stage.attachTo(n);this.container=this.stage.getContainer();this.views=new a.default(this.container);this._bounds=this.bounds();this._stageSize=this.stage.size();this.viewSettings.width=this._stageSize.width;this.viewSettings.height=this._stageSize.height;this.stage.onResize(this.onResized.bind(this));this.stage.onOrientationChange(this.onOrientationChange.bind(this));this.addEventListeners();this.layout&&this.updateLayout();this.rendered=!0}},{key:"addEventListeners",value:function(){window.addEventListener("unload",function(){this.destroy()}.bind(this));(this.fullsize?window:this.container).addEventListener("scroll",this.onScroll.bind(this))}},{key:"removeEventListeners",value:function(){(this.fullsize?window:this.container).removeEventListener("scroll",this.onScroll.bind(this))}},{key:"destroy",value:function(){clearTimeout(this.orientationTimeout);clearTimeout(this.resizeTimeout);clearTimeout(this.afterScrolled);this.clear();this.removeEventListeners();this.stage.destroy();this.rendered=!1}},{key:"onOrientationChange",value:function(){var n=window.orientation;this.resize();clearTimeout(this.orientationTimeout);this.orientationTimeout=setTimeout(function(){this.orientationTimeout=void 0;this.resize();this.emit(r.EVENTS.MANAGERS.ORIENTATION_CHANGE,n)}.bind(this),500)}},{key:"onResized",value:function(){this.resize()}},{key:"resize",value:function(n,t){var i=this.stage.size(n,t);this.winBounds=u.windowBounds();this.orientationTimeout&&this.winBounds.width===this.winBounds.height?this._stageSize=void 0:this._stageSize&&this._stageSize.width===i.width&&this._stageSize.height===i.height||(this._stageSize=i,this._bounds=this.bounds(),this.clear(),this.viewSettings.width=this._stageSize.width,this.viewSettings.height=this._stageSize.height,this.updateLayout(),this.emit(r.EVENTS.MANAGERS.RESIZED,{width:this._stageSize.width,height:this._stageSize.height}))}},{key:"createView",value:function(n){return new this.View(n,this.viewSettings)}},{key:"display",value:function(n,t){var f=new u.defer,e=f.promise,i,r,o,s;return((t===n.href||u.isNumber(t))&&(t=void 0),i=this.views.find(n),i&&n)?(r=i.offset(),"ltr"===this.settings.direction?this.scrollTo(r.left,r.top,!0):(o=i.width(),this.scrollTo(r.left+o,r.top,!0)),t&&(s=i.locationOf(t),this.moveTo(s)),f.resolve(),e):(this.clear(),this.add(n).then(function(n){if(t){var i=n.locationOf(t);this.moveTo(i)}}.bind(this),function(n){f.reject(n)}).then(function(){var t;if("pre-paginated"===this.layout.name&&1<this.layout.divisor&&(t=n.next()))return this.add(t)}.bind(this)).then(function(){this.views.show();f.resolve()}.bind(this)),e)}},{key:"afterDisplayed",value:function(n){this.emit(r.EVENTS.MANAGERS.ADDED,n)}},{key:"afterResized",value:function(n){this.emit(r.EVENTS.MANAGERS.RESIZE,n.section)}},{key:"moveTo",value:function(n){var t=0,i=0;this.isPaginated?(t=Math.floor(n.left/this.layout.delta)*this.layout.delta)+this.layout.delta>this.container.scrollWidth&&(t=this.container.scrollWidth-this.layout.delta):i=n.top;this.scrollTo(t,i,!0)}},{key:"add",value:function(n){var i=this,t=this.createView(n);return this.views.append(t),t.onDisplayed=this.afterDisplayed.bind(this),t.onResize=this.afterResized.bind(this),t.on(r.EVENTS.VIEWS.AXIS,function(n){i.updateAxis(n)}),t.display(this.request)}},{key:"append",value:function(n){var i=this,t=this.createView(n);return this.views.append(t),t.onDisplayed=this.afterDisplayed.bind(this),t.onResize=this.afterResized.bind(this),t.on(r.EVENTS.VIEWS.AXIS,function(n){i.updateAxis(n)}),t.display(this.request)}},{key:"prepend",value:function(n){var i=this,t=this.createView(n);return t.on(r.EVENTS.VIEWS.RESIZED,function(n){i.counter(n)}),this.views.prepend(t),t.onDisplayed=this.afterDisplayed.bind(this),t.onResize=this.afterResized.bind(this),t.on(r.EVENTS.VIEWS.AXIS,function(n){i.updateAxis(n)}),t.display(this.request)}},{key:"counter",value:function(n){"vertical"===this.settings.axis?this.scrollBy(0,n.heightDelta,!0):this.scrollBy(n.widthDelta,0,!0)}},{key:"next",value:function(){var n,t=this.settings.direction;if(this.views.length)return!this.isPaginated||"horizontal"!==this.settings.axis||t&&"ltr"!==t?this.isPaginated&&"horizontal"===this.settings.axis&&"rtl"===t?(this.scrollLeft=this.container.scrollLeft,0<this.container.scrollLeft?this.scrollBy(this.layout.delta,0,!0):n=this.views.last().section.next()):this.isPaginated&&"vertical"===this.settings.axis?(this.scrollTop=this.container.scrollTop,this.container.scrollTop+this.container.offsetHeight<this.container.scrollHeight?this.scrollBy(0,this.layout.height,!0):n=this.views.last().section.next()):n=this.views.last().section.next():(this.scrollLeft=this.container.scrollLeft,this.container.scrollLeft+this.container.offsetWidth+this.layout.delta<=this.container.scrollWidth?this.scrollBy(this.layout.delta,0,!0):n=this.views.last().section.next()),n?(this.clear(),this.append(n).then(function(){var t;if("pre-paginated"===this.layout.name&&1<this.layout.divisor&&(t=n.next()))return this.append(t)}.bind(this),function(n){displaying.reject(n)}).then(function(){this.views.show()}.bind(this))):void 0}},{key:"prev",value:function(){var n,t=this.settings.direction;if(this.views.length)return!this.isPaginated||"horizontal"!==this.settings.axis||t&&"ltr"!==t?this.isPaginated&&"horizontal"===this.settings.axis&&"rtl"===t?(this.scrollLeft=this.container.scrollLeft,this.container.scrollLeft+this.container.offsetWidth+this.layout.delta<=this.container.scrollWidth?this.scrollBy(-this.layout.delta,0,!0):n=this.views.first().section.prev()):this.isPaginated&&"vertical"===this.settings.axis?(this.scrollTop=this.container.scrollTop,0<this.container.scrollTop?this.scrollBy(0,-this.layout.height,!0):n=this.views.first().section.prev()):n=this.views.first().section.prev():(this.scrollLeft=this.container.scrollLeft,0<this.container.scrollLeft?this.scrollBy(-this.layout.delta,0,!0):n=this.views.first().section.prev()),n?(this.clear(),this.prepend(n).then(function(){var t;if("pre-paginated"===this.layout.name&&1<this.layout.divisor&&(t=n.prev()))return this.prepend(t)}.bind(this),function(n){displaying.reject(n)}).then(function(){this.isPaginated&&"horizontal"===this.settings.axis&&("rtl"===this.settings.direction?this.scrollTo(0,0,!0):this.scrollTo(this.container.scrollWidth-this.layout.delta,0,!0));this.views.show()}.bind(this))):void 0}},{key:"current",value:function(){var n=this.visible();return n.length?n[n.length-1]:null}},{key:"clear",value:function(){this.views&&(this.views.hide(),this.scrollTo(0,0,!0),this.views.clear())}},{key:"currentLocation",value:function(){return this.location="vertical"===this.settings.axis?this.scrolledLocation():this.paginatedLocation(),this.location}},{key:"scrolledLocation",value:function(){var r=this,f=this.visible(),t=this.container.getBoundingClientRect(),n=t.height<window.innerHeight?t.height:window.innerHeight,u=0,i=0;return this.fullsize&&(u=window.scrollY),f.map(function(f){var l=f.section,v=l.index,y=l.href,p=f.position(),h=f.height(),e=u+t.top-p.top+i,o=e+n-i,s,a;h<o&&(i=(o=h)-e);var w=r.layout.count(h,n).pages,b=Math.ceil(e/n),c=[],k=Math.ceil(o/n);for(c=[],s=b;s<=k;s++)a=s+1,c.push(a);return{index:v,href:y,pages:c,totalPages:w,mapping:r.mapping.page(f.contents,f.section.cfiBase,e,o)}})}},{key:"paginatedLocation",value:function(){var n=this,i=this.visible(),r=this.container.getBoundingClientRect(),t=0;return this.fullsize&&(t=window.scrollX),i.map(function(i){var h=i.section,y=h.index,p=h.href,w=(i.offset().left,i.position().left),b=i.width(),o=t+r.left-w+0,c=o+n.layout.width-0,k=n.mapping.page(i.contents,i.section.cfiBase,o,c),s=n.layout.count(b).pages,u=Math.floor(o/n.layout.pageWidth),l=[],f=Math.floor(c/n.layout.pageWidth),a,e,v;for((u<0&&(u=0,f+=1),"rtl"===n.settings.direction)&&(a=u,u=s-f,f=s-a),e=u+1;e<=f;e++)v=e,l.push(v);return{index:y,href:p,pages:l,totalPages:s,mapping:k}})}},{key:"isVisible",value:function(n,t,i,r){var u=n.position(),f=r||this.bounds();return"horizontal"===this.settings.axis&&u.right>f.left-t&&u.left<f.right+i||"vertical"===this.settings.axis&&u.bottom>f.top-t&&u.top<f.bottom+i}},{key:"visible",value:function(){for(var n,u=this.bounds(),i=this.views.displayed(),f=i.length,r=[],t=0;t<f;t++)n=i[t],!0===this.isVisible(n,0,0,u)&&r.push(n);return r}},{key:"scrollBy",value:function(n,t,i){var r="rtl"===this.settings.direction?-1:1;i&&(this.ignore=!0);this.fullsize?window.scrollBy(n*r,t*r):(n&&(this.container.scrollLeft+=n*r),t&&(this.container.scrollTop+=t));this.scrolled=!0}},{key:"scrollTo",value:function(n,t,i){i&&(this.ignore=!0);this.fullsize?window.scrollTo(n,t):(this.container.scrollLeft=n,this.container.scrollTop=t);this.scrolled=!0}},{key:"onScroll",value:function(){var n=void 0,t=void 0;this.fullsize?(n=window.scrollY,t=window.scrollX):(n=this.container.scrollTop,t=this.container.scrollLeft);this.scrollTop=n;this.scrollLeft=t;this.ignore?this.ignore=!1:(this.emit(r.EVENTS.MANAGERS.SCROLL,{top:n,left:t}),clearTimeout(this.afterScrolled),this.afterScrolled=setTimeout(function(){this.emit(r.EVENTS.MANAGERS.SCROLLED,{top:this.scrollTop,left:this.scrollLeft})}.bind(this),20))}},{key:"bounds",value:function(){var n;return n=this.stage.bounds(),n}},{key:"applyLayout",value:function(n){this.layout=n;this.updateLayout()}},{key:"updateLayout",value:function(){this.stage&&(this._stageSize=this.stage.size(),this.isPaginated?(this.layout.calculate(this._stageSize.width,this._stageSize.height,this.settings.gap),this.settings.offset=this.layout.delta):this.layout.calculate(this._stageSize.width,this._stageSize.height),this.viewSettings.width=this.layout.width,this.viewSettings.height=this.layout.height,this.setLayout(this.layout))}},{key:"setLayout",value:function(n){this.viewSettings.layout=n;this.mapping=new o.default(n.props,this.settings.direction,this.settings.axis);this.views&&this.views.forEach(function(t){t&&t.setLayout(n)})}},{key:"updateAxis",value:function(n,t){this.isPaginated||(n="vertical");(t||n!==this.settings.axis)&&(this.settings.axis=n,this.stage&&this.stage.axis(n),this.viewSettings.axis=n,this.mapping&&(this.mapping=new o.default(this.layout.props,this.settings.direction,this.settings.axis)),this.layout&&("vertical"===n?this.layout.spread("none"):this.layout.spread(this.layout.settings.spread)))}},{key:"updateFlow",value:function(n){var t="paginated"===n||"auto"===n;this.isPaginated=t;"scrolled-doc"!==n&&"scrolled-continuous"!==n&&"scrolled"!==n||this.updateAxis("vertical");this.viewSettings.flow=n;this.overflow=this.settings.overflow?this.settings.overflow:t?"hidden":"auto";this.updateLayout()}},{key:"getContents",value:function(){var n=[];return this.views&&this.views.forEach(function(t){var i=t&&t.contents;i&&n.push(i)}),n}},{key:"direction",value:function(){var n=0<arguments.length&&void 0!==arguments[0]?arguments[0]:"ltr";this.settings.direction=n;this.stage&&this.stage.direction(n);this.viewSettings.direction=n;this.updateLayout()}},{key:"isRendered",value:function(){return this.rendered}}]),n}();h.default(e.prototype);t.default=e;n.exports=t.default},function(n){n.exports=function(n){var t=typeof n;return null!=n&&("object"==t||"function"==t)}},function(t){t.exports=n},function(n){"use strict";var t={application:{ecmascript:["es","ecma"],javascript:"js",ogg:"ogx",pdf:"pdf",postscript:["ps","ai","eps","epsi","epsf","eps2","eps3"],"rdf+xml":"rdf",smil:["smi","smil"],"xhtml+xml":["xhtml","xht"],xml:["xml","xsl","xsd","opf","ncx"],zip:"zip","x-httpd-eruby":"rhtml","x-latex":"latex","x-maker":["frm","maker","frame","fm","fb","book","fbdoc"],"x-object":"o","x-shockwave-flash":["swf","swfl"],"x-silverlight":"scr","epub+zip":"epub","font-tdpfr":"pfr","inkml+xml":["ink","inkml"],json:"json","jsonml+json":"jsonml","mathml+xml":"mathml","metalink+xml":"metalink",mp4:"mp4s","omdoc+xml":"omdoc",oxps:"oxps","vnd.amazon.ebook":"azw",widget:"wgt","x-dtbook+xml":"dtb","x-dtbresource+xml":"res","x-font-bdf":"bdf","x-font-ghostscript":"gsf","x-font-linux-psf":"psf","x-font-otf":"otf","x-font-pcf":"pcf","x-font-snf":"snf","x-font-ttf":["ttf","ttc"],"x-font-type1":["pfa","pfb","pfm","afm"],"x-font-woff":"woff","x-mobipocket-ebook":["prc","mobi"],"x-mspublisher":"pub","x-nzb":"nzb","x-tgif":"obj","xaml+xml":"xaml","xml-dtd":"dtd","xproc+xml":"xpl","xslt+xml":"xslt","internet-property-stream":"acx","x-compress":"z","x-compressed":"tgz","x-gzip":"gz"},audio:{flac:"flac",midi:["mid","midi","kar","rmi"],mpeg:["mpga","mpega","mp2","mp3","m4a","mp2a","m2a","m3a"],mpegurl:"m3u",ogg:["oga","ogg","spx"],"x-aiff":["aif","aiff","aifc"],"x-ms-wma":"wma","x-wav":"wav",adpcm:"adp",mp4:"mp4a",webm:"weba","x-aac":"aac","x-caf":"caf","x-matroska":"mka","x-pn-realaudio-plugin":"rmp",xm:"xm",mid:["mid","rmi"]},image:{gif:"gif",ief:"ief",jpeg:["jpeg","jpg","jpe"],pcx:"pcx",png:"png","svg+xml":["svg","svgz"],tiff:["tiff","tif"],"x-icon":"ico",bmp:"bmp",webp:"webp","x-pict":["pic","pct"],"x-tga":"tga","cis-cod":"cod"},text:{"cache-manifest":["manifest","appcache"],css:"css",csv:"csv",html:["html","htm","shtml","stm"],mathml:"mml",plain:["txt","text","brf","conf","def","list","log","in","bas"],richtext:"rtx","tab-separated-values":"tsv","x-bibtex":"bib"},video:{mpeg:["mpeg","mpg","mpe","m1v","m2v","mp2","mpa","mpv2"],mp4:["mp4","mp4v","mpg4"],quicktime:["qt","mov"],ogg:"ogv","vnd.mpegurl":["mxu","m4u"],"x-flv":"flv","x-la-asf":["lsf","lsx"],"x-mng":"mng","x-ms-asf":["asf","asx","asr"],"x-ms-wm":"wm","x-ms-wmv":"wmv","x-ms-wmx":"wmx","x-ms-wvx":"wvx","x-msvideo":"avi","x-sgi-movie":"movie","x-matroska":["mpv","mkv","mk3d","mks"],"3gpp2":"3g2",h261:"h261",h263:"h263",h264:"h264",jpeg:"jpgv",jpm:["jpm","jpgm"],mj2:["mj2","mjp2"],"vnd.ms-playready.media.pyv":"pyv","vnd.uvvu.mp4":["uvu","uvvu"],"vnd.vivo":"viv",webm:"webm","x-f4v":"f4v","x-m4v":"m4v","x-ms-vob":"vob","x-smv":"smv"}},i=function(){var n,i,r,u,f={};for(n in t)if(t.hasOwnProperty(n))for(i in t[n])if(t[n].hasOwnProperty(i))if("string"==typeof(r=t[n][i]))f[r]=n+"/"+i;else for(u=0;u<r.length;u++)f[r[u]]=n+"/"+i;return f}();n.exports={lookup:function(n){return n&&i[n.split(".").pop().toLowerCase()]||"text/plain"}}},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}var o;Object.defineProperty(t,"__esModule",{value:!0});var h="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},c=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),l=u(i(3)),e=i(0),f=u(i(10)),s=u(i(1)),a=u(i(12)),v=u(i(50)),y=u(i(51)),p=u(i(13)),w=u(i(52)),r=i(2),b=u(i(20)),k=u(i(14)),d=u(i(24));o=function(){function n(t,i){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.settings=e.extend(this.settings||{},{width:null,height:null,ignoreClass:"",manager:"default",view:"iframe",flow:null,layout:null,spread:null,minSpreadWidth:800,stylesheet:null,script:null});e.extend(this.settings,i);"object"===h(this.settings.manager)&&(this.manager=this.settings.manager);this.book=t;this.hooks={};this.hooks.display=new f.default(this);this.hooks.serialize=new f.default(this);this.hooks.content=new f.default(this);this.hooks.unloaded=new f.default(this);this.hooks.layout=new f.default(this);this.hooks.render=new f.default(this);this.hooks.show=new f.default(this);this.hooks.content.register(this.handleLinks.bind(this));this.hooks.content.register(this.passEvents.bind(this));this.hooks.content.register(this.adjustImages.bind(this));this.book.spine.hooks.content.register(this.injectIdentifier.bind(this));this.settings.stylesheet&&this.book.spine.hooks.content.register(this.injectStylesheet.bind(this));this.settings.script&&this.book.spine.hooks.content.register(this.injectScript.bind(this));this.themes=new y.default(this);this.annotations=new w.default(this);this.epubcfi=new s.default;this.q=new a.default(this);this.location=void 0;this.q.enqueue(this.book.opened);this.starting=new e.defer;this.started=this.starting.promise;this.q.enqueue(this.start)}return c(n,[{key:"setManager",value:function(n){this.manager=n}},{key:"requireManager",value:function(n){return"string"==typeof n&&"default"===n?k.default:"string"==typeof n&&"continuous"===n?d.default:n}},{key:"requireView",value:function(n){return"string"==typeof n&&"iframe"===n?b.default:n}},{key:"start",value:function(){this.manager||(this.ViewManager=this.requireManager(this.settings.manager),this.View=this.requireView(this.settings.view),this.manager=new this.ViewManager({view:this.View,queue:this.q,request:this.book.load.bind(this.book),settings:this.settings}));this.direction(this.book.package.metadata.direction);this.settings.globalLayoutProperties=this.determineLayoutProperties(this.book.package.metadata);this.flow(this.settings.globalLayoutProperties.flow);this.layout(this.settings.globalLayoutProperties);this.manager.on(r.EVENTS.MANAGERS.ADDED,this.afterDisplayed.bind(this));this.manager.on(r.EVENTS.MANAGERS.REMOVED,this.afterRemoved.bind(this));this.manager.on(r.EVENTS.MANAGERS.RESIZED,this.onResized.bind(this));this.manager.on(r.EVENTS.MANAGERS.ORIENTATION_CHANGE,this.onOrientationChange.bind(this));this.manager.on(r.EVENTS.MANAGERS.SCROLLED,this.reportLocation.bind(this));this.emit(r.EVENTS.RENDITION.STARTED);this.starting.resolve()}},{key:"attachTo",value:function(n){return this.q.enqueue(function(){this.manager.render(n,{width:this.settings.width,height:this.settings.height});this.emit(r.EVENTS.RENDITION.ATTACHED)}.bind(this))}},{key:"display",value:function(n){return this.displaying&&this.displaying.resolve(),this.q.enqueue(this._display,n)}},{key:"_display",value:function(n){var i=this,u,t,f;if(this.book)return this.epubcfi.isCfiString(n),t=new e.defer,f=t.promise,this.displaying=t,this.book.locations.length()&&e.isFloat(n)&&(n=this.book.locations.cfiFromPercentage(parseFloat(n))),(u=this.book.spine.get(n))?(this.manager.display(u,n).then(function(){t.resolve(u);i.displaying=void 0;i.emit(r.EVENTS.RENDITION.DISPLAYED,u);i.reportLocation()},function(n){i.emit(r.EVENTS.RENDITION.DISPLAY_ERROR,n)}),f):(t.reject(new Error("No Section Found")),f)}},{key:"afterDisplayed",value:function(n){var t=this;n.on(r.EVENTS.VIEWS.MARK_CLICKED,function(i,r){return t.triggerMarkEvent(i,r,n)});this.hooks.render.trigger(n,this).then(function(){n.contents?t.hooks.content.trigger(n.contents,t).then(function(){t.emit(r.EVENTS.RENDITION.RENDERED,n.section,n)}):t.emit(r.EVENTS.RENDITION.RENDERED,n.section,n)})}},{key:"afterRemoved",value:function(n){var t=this;this.hooks.unloaded.trigger(n,this).then(function(){t.emit(r.EVENTS.RENDITION.REMOVED,n.section,n)})}},{key:"onResized",value:function(n){this.emit(r.EVENTS.RENDITION.RESIZED,{width:n.width,height:n.height});this.location&&this.location.start&&this.display(this.location.start.cfi)}},{key:"onOrientationChange",value:function(n){this.emit(r.EVENTS.RENDITION.ORIENTATION_CHANGE,n)}},{key:"moveTo",value:function(n){this.manager.moveTo(n)}},{key:"resize",value:function(n,t){n&&(this.settings.width=n);t&&(this.settings.height=t);this.manager.resize(n,t)}},{key:"clear",value:function(){this.manager.clear()}},{key:"next",value:function(){return this.q.enqueue(this.manager.next.bind(this.manager)).then(this.reportLocation.bind(this))}},{key:"prev",value:function(){return this.q.enqueue(this.manager.prev.bind(this.manager)).then(this.reportLocation.bind(this))}},{key:"determineLayoutProperties",value:function(n){var t=this.settings.layout||n.layout||"reflowable",i=this.settings.spread||n.spread||"auto",r=this.settings.orientation||n.orientation||"auto",u=this.settings.flow||n.flow||"auto",f=n.viewport||"",e=this.settings.minSpreadWidth||n.minSpreadWidth||800,o=this.settings.direction||n.direction||"ltr";return(0===this.settings.width||0<this.settings.width)&&(0===this.settings.height||this.settings.height),{layout:t,spread:i,orientation:r,flow:u,viewport:f,minSpreadWidth:e,direction:o}}},{key:"flow",value:function(n){var t=n;"scrolled"!==n&&"scrolled-doc"!==n&&"scrolled-continuous"!==n||(t="scrolled");"auto"!==n&&"paginated"!==n||(t="paginated");this.settings.flow=n;this._layout&&this._layout.flow(t);this.manager&&this._layout&&this.manager.applyLayout(this._layout);this.manager&&this.manager.updateFlow(t);this.manager&&this.manager.isRendered()&&this.location&&(this.manager.clear(),this.display(this.location.start.cfi))}},{key:"layout",value:function(n){var t=this;return n&&(this._layout=new v.default(n),this._layout.spread(n.spread,this.settings.minSpreadWidth),this._layout.on(r.EVENTS.LAYOUT.UPDATED,function(n,i){t.emit(r.EVENTS.RENDITION.LAYOUT,n,i)})),this.manager&&this._layout&&this.manager.applyLayout(this._layout),this._layout}},{key:"spread",value:function(n,t){this._layout.spread(n,t);this.manager.isRendered()&&this.manager.updateLayout()}},{key:"direction",value:function(n){this.settings.direction=n||"ltr";this.manager&&this.manager.direction(this.settings.direction);this.manager&&this.manager.isRendered()&&this.location&&(this.manager.clear(),this.display(this.location.start.cfi))}},{key:"reportLocation",value:function(){return this.q.enqueue(function(){requestAnimationFrame(function(){var n=this.manager.currentLocation(),t;if(n&&n.then&&"function"==typeof n.then)n.then(function(n){var t=this.located(n);t&&t.start&&t.end&&(this.location=t,this.emit(r.EVENTS.RENDITION.LOCATION_CHANGED,{index:this.location.start.index,href:this.location.start.href,start:this.location.start.cfi,end:this.location.end.cfi,percentage:this.location.start.percentage}),this.emit(r.EVENTS.RENDITION.RELOCATED,this.location))}.bind(this));else if(n){if(t=this.located(n),!t||!t.start||!t.end)return;this.location=t;this.emit(r.EVENTS.RENDITION.LOCATION_CHANGED,{index:this.location.start.index,href:this.location.start.href,start:this.location.start.cfi,end:this.location.end.cfi,percentage:this.location.start.percentage});this.emit(r.EVENTS.RENDITION.RELOCATED,this.location)}}.bind(this))}.bind(this))}},{key:"currentLocation",value:function(){var n=this.manager.currentLocation();if(n&&n.then&&"function"==typeof n.then)n.then(function(n){return this.located(n)}.bind(this));else if(n)return this.located(n)}},{key:"located",value:function(n){var e,o;if(!n.length)return{};var r=n[0],i=n[n.length-1],t={start:{index:r.index,href:r.href,cfi:r.mapping.start,displayed:{page:r.pages[0]||1,total:r.totalPages}},end:{index:i.index,href:i.href,cfi:i.mapping.end,displayed:{page:i.pages[i.pages.length-1]||1,total:i.totalPages}}},u=this.book.locations.locationFromCfi(r.mapping.start),f=this.book.locations.locationFromCfi(i.mapping.end);return null!=u&&(t.start.location=u,t.start.percentage=this.book.locations.percentageFromLocation(u)),null!=f&&(t.end.location=f,t.end.percentage=this.book.locations.percentageFromLocation(f)),e=this.book.pageList.pageFromCfi(r.mapping.start),o=this.book.pageList.pageFromCfi(i.mapping.end),-1!=e&&(t.start.page=e),-1!=o&&(t.end.page=o),i.index===this.book.spine.last().index&&t.end.displayed.page>=t.end.displayed.total&&(t.atEnd=!0),r.index===this.book.spine.first().index&&1===t.start.displayed.page&&(t.atStart=!0),t}},{key:"destroy",value:function(){this.manager&&this.manager.destroy();this.book=void 0}},{key:"passEvents",value:function(n){var t=this;p.default.listenedEvents.forEach(function(i){n.on(i,function(i){return t.triggerViewEvent(i,n)})});n.on(r.EVENTS.CONTENTS.SELECTED,function(i){return t.triggerSelectedEvent(i,n)})}},{key:"triggerViewEvent",value:function(n,t){this.emit(n.type,n,t)}},{key:"triggerSelectedEvent",value:function(n,t){this.emit(r.EVENTS.RENDITION.SELECTED,n,t)}},{key:"triggerMarkEvent",value:function(n,t,i){this.emit(r.EVENTS.RENDITION.MARK_CLICKED,n,t,i)}},{key:"getRange",value:function(n,t){var i=new s.default(n),r=this.manager.visible().filter(function(n){if(i.spinePos===n.index)return!0});if(r.length)return r[0].contents.range(i,t)}},{key:"adjustImages",value:function(n){if("pre-paginated"===this._layout.name)return new Promise(function(n){n()});var t=n.window.getComputedStyle(n.content,null),i=n.content.offsetHeight-(parseFloat(t.paddingTop)+parseFloat(t.paddingBottom));return n.addStylesheetRules({img:{"max-width":(this._layout.columnWidth?this._layout.columnWidth+"px":"100%")+"!important","max-height":i+"px!important","object-fit":"contain","page-break-inside":"avoid","break-inside":"avoid"},svg:{"max-width":(this._layout.columnWidth?this._layout.columnWidth+"px":"100%")+"!important","max-height":i+"px!important","page-break-inside":"avoid","break-inside":"avoid"}}),new Promise(function(n){setTimeout(function(){n()},1)})}},{key:"getContents",value:function(){return this.manager?this.manager.getContents():[]}},{key:"views",value:function(){var n=this.manager?this.manager.views:void 0;return n||[]}},{key:"handleLinks",value:function(n){var t=this;n&&n.on(r.EVENTS.CONTENTS.LINK_CLICKED,function(n){var i=t.book.path.relative(n);t.display(i)})}},{key:"injectStylesheet",value:function(n){var t=n.createElement("link");t.setAttribute("type","text/css");t.setAttribute("rel","stylesheet");t.setAttribute("href",this.settings.stylesheet);n.getElementsByTagName("head")[0].appendChild(t)}},{key:"injectScript",value:function(n){var t=n.createElement("script");t.setAttribute("type","text/javascript");t.setAttribute("src",this.settings.script);t.textContent=" ";n.getElementsByTagName("head")[0].appendChild(t)}},{key:"injectIdentifier",value:function(n){var i=this.book.package.metadata.identifier,t=n.createElement("meta");t.setAttribute("name","dc.relation.ispartof");i&&t.setAttribute("content",i);n.getElementsByTagName("head")[0].appendChild(t)}}]),n}();l.default(o.prototype);t.default=o;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(1),u=(r=e)&&r.__esModule?r:{"default":r},o=function(){function n(t,i,r,u){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.layout=t;this.horizontal="horizontal"===r;this.direction=i||"ltr";this._dev=u}return f(n,[{key:"section",value:function(n){var t=this.findRanges(n);return this.rangeListToCfiList(n.section.cfiBase,t)}},{key:"page",value:function(n,t,i,r){var f,o=!(!n||!n.document)&&n.document.body;if(o){if(f=this.rangePairToCfiPair(t,{start:this.findStart(o,i,r),end:this.findEnd(o,i,r)}),!0===this._dev){var e=n.document,h=new u.default(f.start).toRange(e),c=new u.default(f.end).toRange(e),l=e.defaultView.getSelection(),s=e.createRange();l.removeAllRanges();s.setStart(h.startContainer,h.startOffset);s.setEnd(c.endContainer,c.endOffset);l.addRange(s)}return f}}},{key:"walk",value:function(n,t){var i,r,u,f,e;if(!n||n.nodeType!==Node.TEXT_NODE){for(i=function(n){return 0<n.data.trim().length?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT},r=i,r.acceptNode=i,e=document.createTreeWalker(n,NodeFilter.SHOW_TEXT,r,!1);(u=e.nextNode())&&!(f=t(u)););return f}}},{key:"findRanges",value:function(n){for(var i,r,u=[],o=n.contents.scrollWidth(),s=Math.ceil(o/this.layout.spreadWidth)*this.layout.divisor,f=this.layout.columnWidth,e=this.layout.gap,t=0;t<s.pages;t++)i=(f+e)*t,r=f*(t+1)+e*t,u.push({start:this.findStart(n.document.body,i,r),end:this.findEnd(n.document.body,i,r)});return u}},{key:"findStart",value:function(n,t,i){for(var e,o,r=this,u=[n],f=n;u.length;)if(e=u.shift(),o=this.walk(e,function(n){var o,s,h,c,e;if(e=r.getBounds(n),r.horizontal&&"ltr"===r.direction){if((o=r.horizontal?e.left:e.top,s=r.horizontal?e.right:e.bottom,t<=o&&o<=i)||t<s)return n;f=n;u.push(n)}else if(r.horizontal&&"rtl"===r.direction){if((o=e.left,(s=e.right)<=i&&t<=s)||o<i)return n;f=n;u.push(n)}else{if((h=e.top,c=e.bottom,t<=h&&h<=i)||t<c)return n;f=n;u.push(n)}}))return this.findTextStartRange(o,t,i);return this.findTextStartRange(f,t,i)}},{key:"findEnd",value:function(n,t,i){for(var e,o,u=this,f=[n],r=n;f.length;)if(e=f.shift(),o=this.walk(e,function(n){var o,s,h,c,e;if(e=u.getBounds(n),u.horizontal&&"ltr"===u.direction){if(o=Math.round(e.left),s=Math.round(e.right),i<o&&r)return r;if(i<s)return n;r=n;f.push(n)}else if(u.horizontal&&"rtl"===u.direction){if(o=Math.round(u.horizontal?e.left:e.top),(s=Math.round(u.horizontal?e.right:e.bottom))<t&&r)return r;if(o<t)return n;r=n;f.push(n)}else{if(h=Math.round(e.top),c=Math.round(e.bottom),i<h&&r)return r;if(i<c)return n;r=n;f.push(n)}}))return this.findTextEndRange(o,t,i);return this.findTextEndRange(r,t,i)}},{key:"findTextStartRange",value:function(n,t,i){for(var r,u,f=this.splitTextNodeIntoRanges(n),e=0;e<f.length;e++)if(u=(r=f[e]).getBoundingClientRect(),this.horizontal&&"ltr"===this.direction){if(t<=u.left)return r}else if(this.horizontal&&"rtl"===this.direction){if(u.right<=i)return r}else if(t<=u.top)return r;return f[0]}},{key:"findTextEndRange",value:function(n,t,i){for(var r,f,u,e,s,c,l,o=this.splitTextNodeIntoRanges(n),h=0;h<o.length;h++){if(u=(f=o[h]).getBoundingClientRect(),this.horizontal&&"ltr"===this.direction){if(e=u.left,s=u.right,i<e&&r)return r;if(i<s)return f}else if(this.horizontal&&"rtl"===this.direction){if(e=u.left,(s=u.right)<t&&r)return r;if(e<t)return f}else{if(c=u.top,l=u.bottom,i<c&&r)return r;if(i<l)return f}r=f}return o[o.length-1]}},{key:"splitTextNodeIntoRanges",value:function(n,t){var i,u=[],f=(n.textContent||"").trim(),e=n.ownerDocument,o=t||" ",r=f.indexOf(o);if(-1===r||n.nodeType!=Node.TEXT_NODE)return(i=e.createRange()).selectNodeContents(n),[i];for((i=e.createRange()).setStart(n,0),i.setEnd(n,r),u.push(i),i=!1;-1!=r;)0<(r=f.indexOf(o,r+1))&&(i&&(i.setEnd(n,r),u.push(i)),(i=e.createRange()).setStart(n,r+1));return i&&(i.setEnd(n,f.length),u.push(i)),u}},{key:"rangePairToCfiPair",value:function(n,t){var i=t.start,r=t.end;return i.collapse(!0),r.collapse(!1),{start:new u.default(i,n).toString(),end:new u.default(r,n).toString()}}},{key:"rangeListToCfiList",value:function(n,t){for(var r,u=[],i=0;i<t.length;i++)r=this.rangePairToCfiPair(n,t[i]),u.push(r);return u}},{key:"getBounds",value:function(n){var t=void 0,i;return n.nodeType==Node.TEXT_NODE?(i=document.createRange(),i.selectNodeContents(n),t=i.getBoundingClientRect()):t=n.getBoundingClientRect(),t}},{key:"axis",value:function(n){return n&&(this.horizontal="horizontal"===n),this.horizontal}}]),n}();t.default=o;n.exports=t.default},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),h=e(i(3)),r=i(0),c=e(i(1)),l=e(i(13)),u=i(2),f=i(53);o=function(){function n(t,i){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.settings=r.extend({ignoreClass:"",axis:i.layout&&"scrolled"===i.layout.props.flow?"vertical":"horizontal",direction:void 0,width:0,height:0,layout:void 0,globalLayoutProperties:{},method:void 0},i||{});this.id="epubjs-view-"+r.uuid();this.section=t;this.index=t.index;this.element=this.container(this.settings.axis);this.added=!1;this.displayed=!1;this.rendered=!1;this.fixedWidth=0;this.fixedHeight=0;this.epubcfi=new c.default;this.layout=this.settings.layout;this.pane=void 0;this.highlights={};this.underlines={};this.marks={}}return s(n,[{key:"container",value:function(n){var t=document.createElement("div");return t.classList.add("epub-view"),t.style.height="0px",t.style.width="0px",t.style.overflow="hidden",t.style.position="relative",t.style.display="block",t.style.flex=n&&"horizontal"==n?"none":"initial",t}},{key:"create",value:function(){return this.iframe||(this.element||(this.element=this.createContainer()),this.iframe=document.createElement("iframe"),this.iframe.id=this.id,this.iframe.scrolling="no",this.iframe.style.overflow="hidden",this.iframe.seamless="seamless",this.iframe.style.border="none",this.iframe.setAttribute("enable-annotation","true"),this.resizing=!0,this.element.style.visibility="hidden",this.iframe.style.visibility="hidden",this.iframe.style.width="0",this.iframe.style.height="0",this._width=0,this._height=0,this.element.setAttribute("ref",this.index),this.element.appendChild(this.iframe),this.added=!0,this.elementBounds=r.bounds(this.element),this.supportsSrcdoc="srcdoc"in this.iframe?!0:!1,this.settings.method||(this.settings.method=this.supportsSrcdoc?"srcdoc":"write")),this.iframe}},{key:"render",value:function(n){return this.create(),this.size(),this.sectionRender||(this.sectionRender=this.section.render(n)),this.sectionRender.then(function(n){return this.load(n)}.bind(this)).then(function(){var t=this,n;return this.layout.format(this.contents),n=0===this.contents.writingMode().indexOf("vertical")?"vertical":"horizontal",this.setAxis(n),this.emit(u.EVENTS.VIEWS.AXIS,n),this.addListeners(),new Promise(function(n){t.expand();n()})}.bind(this),function(n){return this.emit(u.EVENTS.VIEWS.LOAD_ERROR,n),new Promise(function(t,i){i(n)})}.bind(this)).then(function(){this.emit(u.EVENTS.VIEWS.RENDERED,this.section)}.bind(this))}},{key:"reset",value:function(){this.iframe&&(this.iframe.style.width="0",this.iframe.style.height="0",this._width=0,this._height=0,this._textWidth=void 0,this._contentWidth=void 0,this._textHeight=void 0,this._contentHeight=void 0);this._needsReframe=!0}},{key:"size",value:function(n,t){var i=n||this.settings.width,r=t||this.settings.height;"pre-paginated"===this.layout.name?this.lock("both",i,r):"horizontal"===this.settings.axis?this.lock("height",i,r):this.lock("width",i,r);this.settings.width=i;this.settings.height=r}},{key:"lock",value:function(n,t,i){var u,f=r.borders(this.element);u=this.iframe?r.borders(this.iframe):{width:0,height:0};"width"==n&&r.isNumber(t)&&(this.lockedWidth=t-f.width-u.width);"height"==n&&r.isNumber(i)&&(this.lockedHeight=i-f.height-u.height);"both"===n&&r.isNumber(t)&&r.isNumber(i)&&(this.lockedWidth=t-f.width-u.width,this.lockedHeight=i-f.height-u.height);this.displayed&&this.iframe&&this.expand()}},{key:"expand",value:function(){var i,n=this.lockedWidth,t=this.lockedHeight;this.iframe&&!this._expanding&&(this._expanding=!0,"pre-paginated"===this.layout.name?(n=this.layout.columnWidth,t=this.layout.height):"horizontal"===this.settings.axis?(0<(n=this.contents.textWidth())%this.layout.pageWidth&&(n=Math.ceil(n/this.layout.pageWidth)*this.layout.pageWidth),this.settings.forceEvenPages&&(i=n/this.layout.delta,1<this.layout.divisor&&"reflowable"===this.layout.name&&0<i%2&&(n+=this.layout.gap+this.layout.columnWidth))):"vertical"===this.settings.axis&&(t=this.contents.textHeight()),(this._needsReframe||n!=this._width||t!=this._height)&&this.reframe(n,t),this._expanding=!1)}},{key:"reframe",value:function(n,t){var i;r.isNumber(n)&&(this.element.style.width=n+"px",this.iframe.style.width=n+"px",this._width=n);r.isNumber(t)&&(this.element.style.height=t+"px",this.iframe.style.height=t+"px",this._height=t);i={width:n,height:t,widthDelta:this.prevBounds?n-this.prevBounds.width:n,heightDelta:this.prevBounds?t-this.prevBounds.height:t};this.pane&&this.pane.render();this.onResize(this,i);this.emit(u.EVENTS.VIEWS.RESIZED,i);this.prevBounds=i;this.elementBounds=r.bounds(this.element)}},{key:"load",value:function(n){var t=new r.defer,i=t.promise;if(!this.iframe)return t.reject(new Error("No Iframe Available")),i;if(this.iframe.onload=function(n){this.onLoad(n,t)}.bind(this),"blobUrl"===this.settings.method)this.blobUrl=r.createBlobUrl(n,"application/xhtml+xml"),this.iframe.src=this.blobUrl;else if("srcdoc"===this.settings.method)this.iframe.srcdoc=n;else{if(this.document=this.iframe.contentDocument,!this.document)return t.reject(new Error("No Document Available")),i;this.iframe.contentDocument.open();this.iframe.contentDocument.write(n);this.iframe.contentDocument.close()}return i}},{key:"onLoad",value:function(n,t){var i=this,r;this.window=this.iframe.contentWindow;this.document=this.iframe.contentDocument;this.contents=new l.default(this.document,this.document.body,this.section.cfiBase,this.section.index);this.rendering=!1;r=this.document.querySelector("link[rel='canonical']");r?r.setAttribute("href",this.section.canonical):((r=this.document.createElement("link")).setAttribute("rel","canonical"),r.setAttribute("href",this.section.canonical),this.document.querySelector("head").appendChild(r));this.contents.on(u.EVENTS.CONTENTS.EXPAND,function(){i.displayed&&i.iframe&&(i.expand(),i.contents&&i.layout.format(i.contents))});this.contents.on(u.EVENTS.CONTENTS.RESIZE,function(){i.displayed&&i.iframe&&(i.expand(),i.contents&&i.layout.format(i.contents))});t.resolve(this.contents)}},{key:"setLayout",value:function(n){this.layout=n;this.contents&&(this.layout.format(this.contents),this.expand())}},{key:"setAxis",value:function(n){"scrolled"===this.layout.props.flow&&(n="vertical");this.settings.axis=n;this.element.style.flex="horizontal"==n?"none":"initial";this.size()}},{key:"addListeners",value:function(){}},{key:"removeListeners",value:function(){}},{key:"display",value:function(n){var t=new r.defer;return this.displayed?t.resolve(this):this.render(n).then(function(){this.emit(u.EVENTS.VIEWS.DISPLAYED,this);this.onDisplayed(this);this.displayed=!0;t.resolve(this)}.bind(this),function(n){t.reject(n,this)}),t.promise}},{key:"show",value:function(){this.element.style.visibility="visible";this.iframe&&(this.iframe.style.visibility="visible");this.emit(u.EVENTS.VIEWS.SHOWN,this)}},{key:"hide",value:function(){this.element.style.visibility="hidden";this.iframe.style.visibility="hidden";this.stopExpanding=!0;this.emit(u.EVENTS.VIEWS.HIDDEN,this)}},{key:"offset",value:function(){return{top:this.element.offsetTop,left:this.element.offsetLeft}}},{key:"width",value:function(){return this._width}},{key:"height",value:function(){return this._height}},{key:"position",value:function(){return this.element.getBoundingClientRect()}},{key:"locationOf",value:function(n){this.iframe.getBoundingClientRect();var t=this.contents.locationOf(n,this.settings.ignoreClass);return{left:t.left,top:t.top}}},{key:"onDisplayed",value:function(){}},{key:"onResize",value:function(){}},{key:"bounds",value:function(n){return!n&&this.elementBounds||(this.elementBounds=r.bounds(this.element)),this.elementBounds}},{key:"highlight",value:function(n){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=arguments[2],h=this,o=3<arguments.length&&void 0!==arguments[3]?arguments[3]:"epubjs-hl",c=4<arguments.length&&void 0!==arguments[4]?arguments[4]:{},s,t;if(this.contents){var l=Object.assign({fill:"yellow","fill-opacity":"0.3","mix-blend-mode":"multiply"},c),a=this.contents.range(n),e=function(){h.emit(u.EVENTS.VIEWS.MARK_CLICKED,n,r)};return r.epubcfi=n,this.pane||(this.pane=new f.Pane(this.iframe,this.element)),s=new f.Highlight(a,o,r,l),t=this.pane.addMark(s),this.highlights[n]={mark:t,element:t.element,listeners:[e,i]},t.element.setAttribute("ref",o),t.element.addEventListener("click",e),t.element.addEventListener("touchstart",e),i&&(t.element.addEventListener("click",i),t.element.addEventListener("touchstart",i)),t}}},{key:"underline",value:function(n){var r=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},i=arguments[2],h=this,o=3<arguments.length&&void 0!==arguments[3]?arguments[3]:"epubjs-ul",c=4<arguments.length&&void 0!==arguments[4]?arguments[4]:{},s,t;if(this.contents){var l=Object.assign({stroke:"black","stroke-opacity":"0.3","mix-blend-mode":"multiply"},c),a=this.contents.range(n),e=function(){h.emit(u.EVENTS.VIEWS.MARK_CLICKED,n,r)};return r.epubcfi=n,this.pane||(this.pane=new f.Pane(this.iframe,this.element)),s=new f.Underline(a,o,r,l),t=this.pane.addMark(s),this.underlines[n]={mark:t,element:t.element,listeners:[e,i]},t.element.setAttribute("ref",o),t.element.addEventListener("click",e),t.element.addEventListener("touchstart",e),i&&(t.element.addEventListener("click",i),t.element.addEventListener("touchstart",i)),t}}},{key:"mark",value:function(n){var w=this,f=1<arguments.length&&void 0!==arguments[1]?arguments[1]:{},e=arguments[2],i,a,t;if(this.contents){if(n in this.marks)return this.marks[n];if(i=this.contents.range(n),i){var r=i.commonAncestorContainer,y=1===r.nodeType?r:r.parentNode,s=function(){w.emit(u.EVENTS.VIEWS.MARK_CLICKED,n,f)};i.collapsed&&1===r.nodeType?(i=new Range).selectNodeContents(r):i.collapsed&&(i=new Range).selectNodeContents(y);var h=void 0,c=void 0,l=void 0;if("pre-paginated"===this.layout.name||"horizontal"!==this.settings.axis)a=i.getBoundingClientRect(),h=a.top,c=a.right;else for(var p=i.getClientRects(),o=void 0,v=0;v!=p.length;v++)o=p[v],(!l||o.left<l)&&(c=(l=o.left)+this.layout.columnWidth-this.layout.gap,h=o.top);return t=this.document.createElement("a"),t.setAttribute("ref","epubjs-mk"),t.style.position="absolute",t.style.top=h+"px",t.style.left=c+"px",t.dataset.epubcfi=n,f&&Object.keys(f).forEach(function(n){t.dataset[n]=f[n]}),e&&(t.addEventListener("click",e),t.addEventListener("touchstart",e)),t.addEventListener("click",s),t.addEventListener("touchstart",s),this.element.appendChild(t),this.marks[n]={element:t,listeners:[s,e]},y}}}},{key:"unhighlight",value:function(n){var t=void 0;n in this.highlights&&(t=this.highlights[n],this.pane.removeMark(t.mark),t.listeners.forEach(function(n){n&&t.element.removeEventListener("click",n)}),delete this.highlights[n])}},{key:"ununderline",value:function(n){var t=void 0;n in this.underlines&&(t=this.underlines[n],this.pane.removeMark(t.mark),t.listeners.forEach(function(n){n&&t.element.removeEventListener("click",n)}),delete this.underlines[n])}},{key:"unmark",value:function(n){var t=void 0;n in this.marks&&(t=this.marks[n],this.element.removeChild(t.element),t.listeners.forEach(function(n){n&&t.element.removeEventListener("click",n)}),delete this.marks[n])}},{key:"destroy",value:function(){var n,t,i;for(n in this.highlights)this.unhighlight(n);for(t in this.underlines)this.ununderline(t);for(i in this.marks)this.unmark(i);this.blobUrl&&r.revokeBlobUrl(this.blobUrl);this.displayed&&(this.displayed=!1,this.removeListeners(),this.stopExpanding=!0,this.element.removeChild(this.iframe),this.iframe=void 0,this.contents=void 0,this._textWidth=null,this._textHeight=null,this._width=null,this._height=null)}}]),n}();h.default(o.prototype);t.default=o;n.exports=t.default},function(n,t,i){var f=i(15),r=i(58),u=i(60),e=Math.max,o=Math.min;n.exports=function(n,t,i){function k(t){var i=c,r=l;return c=l=void 0,v=t,a=n.apply(r,i)}function nt(n){var i=n-h;return void 0===h||t<=i||i<0||p&&y<=n-v}function w(){var u,n,i=r();if(nt(i))return tt(i);s=setTimeout(w,(n=t-((u=i)-h),p?o(n,y-(u-v)):n))}function tt(n){return s=void 0,b&&c?k(n):(c=l=void 0,a)}function d(){var n,i=r(),u=nt(i);if(c=arguments,l=this,h=i,u){if(void 0===s)return v=n=h,s=setTimeout(w,t),g?k(n):a;if(p)return s=setTimeout(w,t),k(h)}return void 0===s&&(s=setTimeout(w,t)),a}var c,l,y,a,s,h,v=0,g=!1,p=!1,b=!0;if("function"!=typeof n)throw new TypeError("Expected a function");return t=u(t)||0,f(i)&&(g=!!i.leading,y=(p="maxWait"in i)?e(u(i.maxWait)||0,t):y,b="trailing"in i?!!i.trailing:b),d.cancel=function(){void 0!==s&&clearTimeout(s);c=h=l=s=void(v=0)},d.flush=function(){return void 0===s?a:tt(r())},d}},function(n,t,i){var r=i(59),u="object"==typeof self&&self&&self.Object===Object&&self,f=r||u||Function("return this")();n.exports=f},function(n,t,i){var r=i(22).Symbol;n.exports=r},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),f=e(i(14)),u=i(2),h=e(i(21));o=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);var i=function(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?n:t}(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,t));return i.name="continuous",i.settings=r.extend(i.settings||{},{infinite:!0,overflow:void 0,axis:void 0,flow:"scrolled",offset:500,offsetDelta:250,width:void 0,height:void 0}),r.extend(i.settings,t.settings||{}),"undefined"!=t.settings.gap&&0===t.settings.gap&&(i.settings.gap=t.settings.gap),i.viewSettings={ignoreClass:i.settings.ignoreClass,axis:i.settings.axis,flow:i.settings.flow,layout:i.layout,width:0,height:0,forceEvenPages:!1},i.scrollTop=0,i.scrollLeft=0,i}return function(n,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}(n,f.default),s(n,[{key:"display",value:function(n,t){return f.default.prototype.display.call(this,n,t).then(function(){return this.fill()}.bind(this))}},{key:"fill",value:function(n){var i=this,t=n||new r.defer;return this.q.enqueue(function(){return i.check()}).then(function(n){n?i.fill(t):t.resolve()}),t.promise}},{key:"moveTo",value:function(n){var t=0,i=0;this.isPaginated?(t=Math.floor(n.left/this.layout.delta)*this.layout.delta,this.settings.offset):(i=n.top,n.top,this.settings.offset);(0<t||0<i)&&this.scrollBy(t,i,!0)}},{key:"afterResized",value:function(n){this.emit(u.EVENTS.MANAGERS.RESIZE,n.section)}},{key:"removeShownListeners",value:function(n){n.onDisplayed=function(){}}},{key:"add",value:function(n){var i=this,t=this.createView(n);return this.views.append(t),t.on(u.EVENTS.VIEWS.RESIZED,function(){t.expanded=!0}),t.on(u.EVENTS.VIEWS.AXIS,function(n){i.updateAxis(n)}),t.onDisplayed=this.afterDisplayed.bind(this),t.onResize=this.afterResized.bind(this),t.display(this.request)}},{key:"append",value:function(n){var t=this.createView(n);return t.on(u.EVENTS.VIEWS.RESIZED,function(){t.expanded=!0}),this.views.append(t),t.onDisplayed=this.afterDisplayed.bind(this),t}},{key:"prepend",value:function(n){var i=this,t=this.createView(n);return t.on(u.EVENTS.VIEWS.RESIZED,function(n){i.counter(n);t.expanded=!0}),this.views.prepend(t),t.onDisplayed=this.afterDisplayed.bind(this),t}},{key:"counter",value:function(n){"vertical"===this.settings.axis?this.scrollBy(0,n.heightDelta,!0):this.scrollBy(n.widthDelta,0,!0)}},{key:"update",value:function(n){for(var s,t,h=this.bounds(),e=this.views.all(),c=e.length,l=[],o=void 0!==n?n:this.settings.offset||0,i=new r.defer,u=[],f=0;f<c;f++)(t=e[f],!0===this.isVisible(t,o,o,h))?(t.displayed?t.show():(s=t.display(this.request).then(function(n){n.show()},function(){t.hide()}),u.push(s)),l.push(t)):(this.q.enqueue(t.destroy.bind(t)),clearTimeout(this.trimTimeout),this.trimTimeout=setTimeout(function(){this.q.enqueue(this.trim.bind(this))}.bind(this),250));return u.length?Promise.all(u).catch(function(n){i.reject(n)}):(i.resolve(),i.promise)}},{key:"check",value:function(n,t){var i=this,s=new r.defer,e=[],u="horizontal"===this.settings.axis,f=this.settings.offset||0,v;n&&u&&(f=n);t&&!u&&(f=t);var h=this._bounds,o="rtl"===this.settings.direction,y=u&&o?-1:1,c=u?this.scrollLeft:this.scrollTop*y,p=u?Math.floor(h.width):h.height,l=function(){var n=i.views.first(),t=n&&n.section.prev();t&&e.push(i.prepend(t))},a=function(){var n=i.views.last(),t=n&&n.section.next();t&&e.push(i.append(t))};return(u?this.container.scrollWidth:this.container.scrollHeight)<=c+p+f&&(u&&o?l():a()),c-f<0&&(u&&o?a():l()),v=e.map(function(n){return n.displayed}),e.length?Promise.all(v).then(function(){if("pre-paginated"===i.layout.name&&i.layout.props.spread)return i.check()}).then(function(){return i.update(f)},function(n){return n}):(this.q.enqueue(function(){this.update()}.bind(this)),s.resolve(!1),s.promise)}},{key:"trim",value:function(){for(var n,f=new r.defer,t=this.views.displayed(),o=t[0],s=t[t.length-1],h=this.views.indexOf(o),c=this.views.indexOf(s),i=this.views.slice(0,h),e=this.views.slice(c+1),u=0;u<i.length-1;u++)this.erase(i[u],i);for(n=1;n<e.length;n++)this.erase(e[n]);return f.resolve(),f.promise}},{key:"erase",value:function(n,t){var i,r,u;this.settings.height?(i=this.container.scrollTop,r=this.container.scrollLeft):(i=window.scrollY,r=window.scrollX);u=n.bounds();this.views.remove(n);t&&("vertical"===this.settings.axis?this.scrollTo(0,i-u.height,!0):this.scrollTo(r-Math.floor(u.width),0,!0))}},{key:"addEventListeners",value:function(){window.addEventListener("unload",function(){this.ignore=!0;this.destroy()}.bind(this));this.addScrollListeners()}},{key:"addScrollListeners",value:function(){var n;this.tick=r.requestAnimationFrame;this.settings.height?(this.prevScrollTop=this.container.scrollTop,this.prevScrollLeft=this.container.scrollLeft):(this.prevScrollTop=window.scrollY,this.prevScrollLeft=window.scrollX);this.scrollDeltaVert=0;this.scrollDeltaHorz=0;this.settings.height?(n=this.container,this.scrollTop=this.container.scrollTop,this.scrollLeft=this.container.scrollLeft):(n=window,this.scrollTop=window.scrollY,this.scrollLeft=window.scrollX);n.addEventListener("scroll",this.onScroll.bind(this));this._scrolled=h.default(this.scrolled.bind(this),30);this.didScroll=!1}},{key:"removeEventListeners",value:function(){(this.settings.height?this.container:window).removeEventListener("scroll",this.onScroll.bind(this))}},{key:"onScroll",value:function(){var n=void 0,t=void 0,i="rtl"===this.settings.direction?-1:1;this.settings.height?(n=this.container.scrollTop,t=this.container.scrollLeft):(n=window.scrollY*i,t=window.scrollX*i);this.scrollTop=n;this.scrollLeft=t;this.ignore?this.ignore=!1:this._scrolled();this.scrollDeltaVert+=Math.abs(n-this.prevScrollTop);this.scrollDeltaHorz+=Math.abs(t-this.prevScrollLeft);this.prevScrollTop=n;this.prevScrollLeft=t;clearTimeout(this.scrollTimeout);this.scrollTimeout=setTimeout(function(){this.scrollDeltaVert=0;this.scrollDeltaHorz=0}.bind(this),150);this.didScroll=!1}},{key:"scrolled",value:function(){this.q.enqueue(function(){this.check()}.bind(this));this.emit(u.EVENTS.MANAGERS.SCROLL,{top:this.scrollTop,left:this.scrollLeft});clearTimeout(this.afterScrolled);this.afterScrolled=setTimeout(function(){this.emit(u.EVENTS.MANAGERS.SCROLLED,{top:this.scrollTop,left:this.scrollLeft})}.bind(this))}},{key:"next",value:function(){this.settings.direction;var n="pre-paginated"===this.layout.props.name&&this.layout.props.spread?2*this.layout.props.delta:this.layout.props.delta;this.views.length&&(this.isPaginated&&"horizontal"===this.settings.axis?this.scrollBy(n,0,!0):this.scrollBy(0,this.layout.height,!0),this.q.enqueue(function(){this.check()}.bind(this)))}},{key:"prev",value:function(){this.settings.direction;var n="pre-paginated"===this.layout.props.name&&this.layout.props.spread?2*this.layout.props.delta:this.layout.props.delta;this.views.length&&(this.isPaginated&&"horizontal"===this.settings.axis?this.scrollBy(-n,0,!0):this.scrollBy(0,-this.layout.height,!0),this.q.enqueue(function(){this.check()}.bind(this)))}},{key:"updateAxis",value:function(n,t){this.isPaginated||(n="vertical");(t||n!==this.settings.axis)&&(this.settings.axis=n,this.stage&&this.stage.axis(n),this.viewSettings.axis=n,this.mapping&&this.mapping.axis(n),this.layout&&("vertical"===n?this.layout.spread("none"):this.layout.spread(this.layout.settings.spread)),this.settings.infinite="vertical"===n)}}]),n}();t.default=o;n.exports=t.default},function(n,t,i){"use strict";(function(r){function u(n){return n&&n.__esModule?n:{"default":n}}function f(n,t){return new e.default(n,t)}Object.defineProperty(t,"__esModule",{value:!0});var e=u(i(26)),s=u(i(18)),h=u(i(1)),c=u(i(13)),l=function(n){var t,i;if(n&&n.__esModule)return n;if(t={},null!=n)for(i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i]);return t.default=n,t}(i(0)),o=i(2);i(69);u(i(20));u(i(14));u(i(24));f.VERSION=o.EPUBJS_VERSION;void 0!==r&&(r.EPUBJS_VERSION=o.EPUBJS_VERSION);f.Book=e.default;f.Rendition=s.default;f.Contents=c.default;f.CFI=h.default;f.utils=l;t.default=f;n.exports=t.default}).call(t,i(8))},function(n,t,i){"use strict";function r(n){return n&&n.__esModule?n:{"default":n}}Object.defineProperty(t,"__esModule",{value:!0});var k=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),d=r(i(3)),u=i(0),f=r(i(5)),s=r(i(4)),g=r(i(42)),nt=r(i(44)),tt=r(i(45)),h=r(i(46)),e=r(i(47)),it=r(i(48)),o=r(i(49)),rt=r(i(18)),ut=r(i(67)),ft=r(i(11)),et=r(i(1)),c=i(2);var l="META-INF/container.xml",a="binary",v="base64",y="epub",p="opf",w="json",ot="directory",b=function(){function n(t,i){var r=this;!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);void 0===i&&"string"!=typeof t&&t instanceof Blob==!1&&(i=t,t=void 0);this.settings=u.extend(this.settings||{},{requestMethod:void 0,requestCredentials:void 0,requestHeaders:void 0,encoding:void 0,replacements:void 0,canonical:void 0,openAs:void 0});u.extend(this.settings,i);this.opening=new u.defer;this.opened=this.opening.promise;this.isOpen=!1;this.loading={manifest:new u.defer,spine:new u.defer,metadata:new u.defer,cover:new u.defer,navigation:new u.defer,pageList:new u.defer,resources:new u.defer};this.loaded={manifest:this.loading.manifest.promise,spine:this.loading.spine.promise,metadata:this.loading.metadata.promise,cover:this.loading.cover.promise,navigation:this.loading.navigation.promise,pageList:this.loading.pageList.promise,resources:this.loading.resources.promise};this.ready=Promise.all([this.loaded.manifest,this.loaded.spine,this.loaded.metadata,this.loaded.cover,this.loaded.navigation,this.loaded.resources]);this.isRendered=!1;this.request=this.settings.requestMethod||ft.default;this.spine=new g.default;this.locations=new nt.default(this.spine,this.load.bind(this));this.navigation=void 0;this.pageList=void 0;this.url=void 0;this.path=void 0;this.archived=!1;this.archive=void 0;this.resources=void 0;this.rendition=void 0;this.container=void 0;this.packaging=void 0;t&&this.open(t,this.settings.openAs).catch(function(){var n=new Error("Cannot load book at "+t);r.emit(c.EVENTS.BOOK.OPEN_FAILED,n)})}return k(n,[{key:"open",value:function(n,t){var i,r=t||this.determineType(n);return r===a?(this.archived=!0,this.url=new f.default("/",""),i=this.openEpub(n)):r===v?(this.archived=!0,this.url=new f.default("/",""),i=this.openEpub(n,r)):r===y?(this.archived=!0,this.url=new f.default("/",""),i=this.request(n,"binary").then(this.openEpub.bind(this))):r==p?(this.url=new f.default(n),i=this.openPackaging(this.url.Path.toString())):r==w?(this.url=new f.default(n),i=this.openManifest(this.url.Path.toString())):(this.url=new f.default(n),i=this.openContainer(l).then(this.openPackaging.bind(this))),i}},{key:"openEpub",value:function(n,t){var i=this;return this.unarchive(n,t||this.settings.encoding).then(function(){return i.openContainer(l)}).then(function(n){return i.openPackaging(n)})}},{key:"openContainer",value:function(n){var t=this;return this.load(n).then(function(n){return t.container=new tt.default(n),t.resolve(t.container.packagePath)})}},{key:"openPackaging",value:function(n){var t=this;return this.path=new s.default(n),this.load(n).then(function(n){return t.packaging=new h.default(n),t.unpack(t.packaging)})}},{key:"openManifest",value:function(n){var t=this;return this.path=new s.default(n),this.load(n).then(function(n){return t.packaging=new h.default,t.packaging.load(n),t.unpack(t.packaging)})}},{key:"load",value:function(n){var t;return this.archived?(t=this.resolve(n),this.archive.request(t)):(t=this.resolve(n),this.request(t,null,this.settings.requestCredentials,this.settings.requestHeaders))}},{key:"resolve",value:function(n,t){if(n){var i=n;return-1<n.indexOf("://")?n:(this.path&&(i=this.path.resolve(n)),0!=t&&this.url&&(i=this.url.resolve(i)),i)}}},{key:"canonical",value:function(n){return n?this.settings.canonical?this.settings.canonical(n):this.resolve(n,!0):""}},{key:"determineType",value:function(n){var t;return"base64"===this.settings.encoding?v:"string"!=typeof n?a:(t=new f.default(n).path().extension)?"epub"===t?y:"opf"===t?p:"json"===t?w:void 0:ot}},{key:"unpack",value:function(n){var t=this;this.package=n;this.spine.unpack(this.package,this.resolve.bind(this),this.canonical.bind(this));this.resources=new it.default(this.package.manifest,{archive:this.archive,resolver:this.resolve.bind(this),request:this.request.bind(this),replacements:this.settings.replacements||(this.archived?"blobUrl":"base64")});this.loadNavigation(this.package).then(function(){t.loading.navigation.resolve(t.navigation)});this.package.coverPath&&(this.cover=this.resolve(this.package.coverPath));this.loading.manifest.resolve(this.package.manifest);this.loading.metadata.resolve(this.package.metadata);this.loading.spine.resolve(this.spine);this.loading.cover.resolve(this.cover);this.loading.resources.resolve(this.resources);this.loading.pageList.resolve(this.pageList);this.isOpen=!0;this.archived||this.settings.replacements&&"none"!=this.settings.replacements?this.replacements().then(function(){t.opening.resolve(t)}).catch(function(n){console.error(n)}):this.opening.resolve(this)}},{key:"loadNavigation",value:function(n){var t=this,i=n.navPath||n.ncxPath,r=n.toc;return r?new Promise(function(i){t.navigation=new e.default(r);n.pageList&&(t.pageList=new o.default(n.pageList));i(t.navigation)}):i?this.load(i,"xml").then(function(n){return t.navigation=new e.default(n),t.pageList=new o.default(n),t.navigation}):new Promise(function(n){t.navigation=new e.default;t.pageList=new o.default;n(t.navigation)})}},{key:"section",value:function(n){return this.spine.get(n)}},{key:"renderTo",value:function(n,t){return this.rendition=new rt.default(this,t),this.rendition.attachTo(n),this.rendition}},{key:"setRequestCredentials",value:function(n){this.settings.requestCredentials=n}},{key:"setRequestHeaders",value:function(n){this.settings.requestHeaders=n}},{key:"unarchive",value:function(n,t){return this.archive=new ut.default,this.archive.open(n,t)}},{key:"coverUrl",value:function(){var n=this;return this.loaded.cover.then(function(){return n.archived?n.resources.get(n.cover):n.cover})}},{key:"replacements",value:function(){var n=this;return this.spine.hooks.serialize.register(function(t,i){i.output=n.resources.substitute(t,i.url)}),this.resources.replacements().then(function(){return n.resources.replaceCss()})}},{key:"getRange",value:function(n){var i=new et.default(n),t=this.spine.get(i.spinePos),r=this.load.bind(this);return t?t.load(r).then(function(){return i.toRange(t.document)}):new Promise(function(n,t){t("CFI could not be found")})}},{key:"key",value:function(n){var t=n||this.package.metadata.identifier||this.url.filename;return"epubjs:"+c.EPUBJS_VERSION+":"+t}},{key:"destroy",value:function(){this.opened=void 0;this.loading=void 0;this.loaded=void 0;this.ready=void 0;this.isOpen=!1;this.isRendered=!1;this.spine&&this.spine.destroy();this.locations&&this.locations.destroy();this.pageList&&this.pageList.destroy();this.archive&&this.archive.destroy();this.resources&&this.resources.destroy();this.container&&this.container.destroy();this.packaging&&this.packaging.destroy();this.rendition&&this.rendition.destroy();this.spine=void 0;this.locations=void 0;this.pageList=void 0;this.archive=void 0;this.resources=void 0;this.container=void 0;this.packaging=void 0;this.rendition=void 0;this.navigation=void 0;this.url=void 0;this.path=void 0;this.archived=!1}}]),n}();d.default(b.prototype);t.default=b;n.exports=t.default},function(n,t,i){"use strict";var u=i(28),f=i(36),e=i(37),r=i(38);(n.exports=function(n,t){var e,o,s,i,h;return arguments.length<2||"string"!=typeof n?(i=t,t=n,n=null):i=arguments[2],null==n?(e=s=!0,o=!1):(e=r.call(n,"c"),o=r.call(n,"e"),s=r.call(n,"w")),h={value:t,configurable:e,enumerable:o,writable:s},i?u(f(i),h):h}).gs=function(n,t,i){var s,h,o,c;return"string"!=typeof n?(o=i,i=t,t=n,n=null):o=arguments[3],null==t?t=void 0:e(t)?null==i?i=void 0:e(i)||(o=i,i=void 0):(o=t,t=i=void 0),null==n?h=!(s=!0):(s=r.call(n,"c"),h=r.call(n,"e")),c={get:t,set:i,configurable:s,enumerable:h},o?u(f(o),c):c}},function(n,t,i){"use strict";n.exports=i(29)()?Object.assign:i(30)},function(n){"use strict";n.exports=function(){var n,t=Object.assign;return"function"==typeof t&&(t(n={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),n.foo+n.bar+n.trzy==="razdwatrzy")}},function(n,t,i){"use strict";var r=i(31),u=i(35),f=Math.max;n.exports=function(n,t){var i,e,o,s=f(arguments.length,2);for(n=Object(u(n)),o=function(r){try{n[r]=t[r]}catch(r){i||(i=r)}},e=1;e<s;++e)t=arguments[e],r(t).forEach(o);if(void 0!==i)throw i;return n}},function(n,t,i){"use strict";n.exports=i(32)()?Object.keys:i(33)},function(n){"use strict";n.exports=function(){try{return Object.keys("primitive"),!0}catch(n){return!1}}},function(n,t,i){"use strict";var r=i(9),u=Object.keys;n.exports=function(n){return u(r(n)?Object(n):n)}},function(n){"use strict";n.exports=function(){}},function(n,t,i){"use strict";var r=i(9);n.exports=function(n){if(!r(n))throw new TypeError("Cannot use null or undefined");return n}},function(n,t,i){"use strict";var r=i(9),u=Array.prototype.forEach,f=Object.create;n.exports=function(){var n=f(null);return u.call(arguments,function(t){r(t)&&function(n,t){var i;for(i in n)t[i]=n[i]}(Object(t),n)}),n}},function(n){"use strict";n.exports=function(n){return"function"==typeof n}},function(n,t,i){"use strict";n.exports=i(39)()?String.prototype.contains:i(40)},function(n){"use strict";var t="razdwatrzy";n.exports=function(){return"function"==typeof t.contains&&!0===t.contains("dwa")&&!1===t.contains("foo")}},function(n){"use strict";var t=String.prototype.indexOf;n.exports=function(n){return-1<t.call(this,n,arguments[1])}},function(n){"use strict";n.exports=function(n){if("function"!=typeof n)throw new TypeError(n+" is not a function");return n}},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),f=u(i(1)),e=u(i(10)),h=u(i(43)),r=i(7);o=function(){function n(){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.spineItems=[];this.spineByHref={};this.spineById={};this.hooks={};this.hooks.serialize=new e.default;this.hooks.content=new e.default;this.hooks.content.register(r.replaceBase);this.hooks.content.register(r.replaceCanonical);this.hooks.content.register(r.replaceMeta);this.epubcfi=new f.default;this.loaded=!1;this.items=void 0;this.manifest=void 0;this.spineNodeIndex=void 0;this.baseUrl=void 0;this.length=void 0}return s(n,[{key:"unpack",value:function(n,t,i){var r=this;this.items=n.spine;this.manifest=n.manifest;this.spineNodeIndex=n.spineNodeIndex;this.baseUrl=n.baseUrl||n.basePath||"";this.length=this.items.length;this.items.forEach(function(n,u){var e,f=r.manifest[n.idref];n.index=u;n.cfiBase=r.epubcfi.generateChapterComponent(r.spineNodeIndex,n.index,n.idref);n.href&&(n.url=t(n.href,!0),n.canonical=i(n.href));f&&(n.href=f.href,n.url=t(n.href,!0),n.canonical=i(n.href),f.properties.length&&n.properties.push.apply(n.properties,f.properties));"yes"===n.linear?(n.prev=function(){for(var i,t=n.index;0<t;){if(i=this.get(t-1),i&&i.linear)return i;t-=1}}.bind(r),n.next=function(){for(var i,t=n.index;t<this.spineItems.length-1;){if(i=this.get(t+1),i&&i.linear)return i;t+=1}}.bind(r)):(n.prev=function(){},n.next=function(){});e=new h.default(n,r.hooks);r.append(e)});this.loaded=!0}},{key:"get",value:function(n){var t=0,i;if(void 0===n)for(;t<this.spineItems.length;){if(i=this.spineItems[t],i&&i.linear)break;t+=1}else this.epubcfi.isCfiString(n)?t=new f.default(n).spinePos:"number"==typeof n||!1===isNaN(n)?t=n:"string"==typeof n&&0===n.indexOf("#")?t=this.spineById[n.substring(1)]:"string"==typeof n&&(n=n.split("#")[0],t=this.spineByHref[n]||this.spineByHref[encodeURI(n)]);return this.spineItems[t]||null}},{key:"append",value:function(n){var t=this.spineItems.length;return n.index=t,this.spineItems.push(n),this.spineByHref[decodeURI(n.href)]=t,this.spineByHref[encodeURI(n.href)]=t,this.spineByHref[n.href]=t,this.spineById[n.idref]=t}},{key:"prepend",value:function(n){return this.spineByHref[n.href]=0,this.spineById[n.idref]=0,this.spineItems.forEach(function(n,t){n.index=t}),0}},{key:"remove",value:function(n){var t=this.spineItems.indexOf(n);if(-1<t)return delete this.spineByHref[n.href],delete this.spineById[n.idref],this.spineItems.splice(t,1)}},{key:"each",value:function(){return this.spineItems.forEach.apply(this.spineItems,arguments)}},{key:"first",value:function(){var t=0,n;do{if(n=this.get(t),n&&n.linear)return n;t+=1}while(t<this.spineItems.length)}},{key:"last",value:function(){var t=this.spineItems.length-1,n;do{if(n=this.get(t),n&&n.linear)return n;t-=1}while(0<=t)}},{key:"destroy",value:function(){this.each(function(n){return n.destroy()});this.spineItems=void 0;this.spineByHref=void 0;this.spineById=void 0;this.hooks.serialize.clear();this.hooks.content.clear();this.hooks=void 0;this.epubcfi=void 0;this.loaded=!1;this.items=void 0;this.manifest=void 0;this.spineNodeIndex=void 0;this.baseUrl=void 0;this.length=void 0}}]),n}();t.default=o;n.exports=t.default},function(n,t,i){"use strict";function e(n){return n&&n.__esModule?n:{"default":n}}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),u=e(i(1)),f=e(i(10)),h=i(7);o=function(){function n(t,i){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.idref=t.idref;this.linear="yes"===t.linear;this.properties=t.properties;this.index=t.index;this.href=t.href;this.url=t.url;this.canonical=t.canonical;this.next=t.next;this.prev=t.prev;this.cfiBase=t.cfiBase;i?this.hooks=i:(this.hooks={},this.hooks.serialize=new f.default(this),this.hooks.content=new f.default(this));this.document=void 0;this.contents=void 0;this.output=void 0}return s(n,[{key:"load",value:function(n){var u=n||this.request||i(11),t=new r.defer,f=t.promise;return this.contents?t.resolve(this.contents):u(this.url).then(function(n){return this.document=n,this.contents=n.documentElement,this.hooks.content.trigger(this.document,this)}.bind(this)).then(function(){t.resolve(this.contents)}.bind(this)).catch(function(n){t.reject(n)}),f}},{key:"base",value:function(){return h.replaceBase(this.document,this)}},{key:"render",value:function(n){var t=new r.defer,u=t.promise;return this.output,this.load(n).then(function(n){var t=0<=("undefined"!=typeof navigator&&navigator.userAgent||"").indexOf("Trident"),r=new("undefined"==typeof XMLSerializer||t?i(16).XMLSerializer:XMLSerializer);return this.output=r.serializeToString(n),this.output}.bind(this)).then(function(){return this.hooks.serialize.trigger(this.output,this)}.bind(this)).then(function(){t.resolve(this.output)}.bind(this)).catch(function(n){t.reject(n)}),u}},{key:"find",value:function(n){var t=this,i=[],u=n.toLowerCase(),f=function(n){for(var o,r,f,h=n.textContent.toLowerCase(),e=t.document.createRange(),s=-1;-1!=r;)-1!=(r=h.indexOf(u,s+1))&&((e=t.document.createRange()).setStart(n,r),e.setEnd(n,r+u.length),o=t.cfiFromRange(e),f=n.textContent.length<150?n.textContent:"..."+(f=n.textContent.substring(r-75,r+75))+"...",i.push({cfi:o,excerpt:f})),s=r};return r.sprint(t.document,function(n){f(n)}),i}},{key:"reconcileLayoutSettings",value:function(n){var t={layout:n.layout,spread:n.spread,orientation:n.orientation};return this.properties.forEach(function(n){var u,f,i=n.replace("rendition:",""),r=i.indexOf("-");-1!=r&&(u=i.slice(0,r),f=i.slice(r+1),t[u]=f)}),t}},{key:"cfiFromRange",value:function(n){return new u.default(n,this.cfiBase).toString()}},{key:"cfiFromElement",value:function(n){return new u.default(n,this.cfiBase).toString()}},{key:"unload",value:function(){this.document=void 0;this.contents=void 0;this.output=void 0}},{key:"destroy",value:function(){this.unload();this.hooks.serialize.clear();this.hooks.content.clear();this.hooks=void 0;this.idref=void 0;this.linear=void 0;this.properties=void 0;this.index=void 0;this.href=void 0;this.url=void 0;this.next=void 0;this.prev=void 0;this.cfiBase=void 0}}]),n}();t.default=o;n.exports=t.default},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}var e;Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),u=i(0),s=f(i(12)),r=f(i(1)),h=i(2),c=f(i(3));e=function(){function n(t,i,u){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.spine=t;this.request=i;this.pause=u||100;this.q=new s.default(this);this.epubcfi=new r.default;this._locations=[];this.total=0;this.break=150;this._current=0;this.currentLocation="";this._currentCfi="";this.processingTimeout=void 0}return o(n,[{key:"generate",value:function(n){return n&&(this.break=n),this.q.pause(),this.spine.each(function(n){n.linear&&this.q.enqueue(this.process.bind(this),n)}.bind(this)),this.q.run().then(function(){return this.total=this._locations.length-1,this._currentCfi&&(this.currentLocation=this._currentCfi),this._locations}.bind(this))}},{key:"createRange",value:function(){return{startContainer:void 0,startOffset:void 0,endContainer:void 0,endOffset:void 0}}},{key:"process",value:function(n){return n.load(this.request).then(function(t){var i=new u.defer,r=this.parse(t,n.cfiBase);return this._locations=this._locations.concat(r),n.unload(),this.processingTimeout=setTimeout(function(){return i.resolve(r)},this.pause),i.promise}.bind(this))}},{key:"parse",value:function(n,t,i){var f,o,s=[],l=n.ownerDocument,a=u.qs(l,"body"),e=0,h=i||this.break,c;return(u.sprint(a,function(n){var c,u=n.length,i=0,l;if(0===n.textContent.trim().length)return!1;for(0==e&&((f=this.createRange()).startContainer=n,f.startOffset=0),u<(c=h-e)&&(e+=u,i=u);i<u;)(c=h-e,0===e&&(i+=1,(f=this.createRange()).startContainer=n,f.startOffset=i),u<=i+c)?(e+=u-i,i=u):(i+=c,f.endContainer=n,f.endOffset=i,l=new r.default(f,t).toString(),s.push(l),e=0);o=n}.bind(this)),f&&f.startContainer&&o)&&(f.endContainer=o,f.endOffset=o.length,c=new r.default(f,t).toString(),s.push(c),e=0),s}},{key:"locationFromCfi",value:function(n){var t;return r.default.prototype.isCfiString(n)&&(n=new r.default(n)),0===this._locations.length?-1:(t=u.locationOf(n,this._locations,this.epubcfi.compare))>this.total?this.total:t}},{key:"percentageFromCfi",value:function(n){if(0===this._locations.length)return null;var t=this.locationFromCfi(n);return this.percentageFromLocation(t)}},{key:"percentageFromLocation",value:function(n){return n&&this.total?n/this.total:0}},{key:"cfiFromLocation",value:function(n){var t=-1;return"number"!=typeof n&&(n=parseInt(n)),0<=n&&n<this._locations.length&&(t=this._locations[n]),t}},{key:"cfiFromPercentage",value:function(n){var i,t;return(1<n&&console.warn("Normalize cfiFromPercentage value to between 0 - 1"),1<=n)?(t=new r.default(this._locations[this.total]),t.collapse(),t.toString()):(i=Math.ceil(this.total*n),this.cfiFromLocation(i))}},{key:"load",value:function(n){return this._locations="string"==typeof n?JSON.parse(n):n,this.total=this._locations.length-1,this._locations}},{key:"save",value:function(){return JSON.stringify(this._locations)}},{key:"getCurrent",value:function(){return this._current}},{key:"setCurrent",value:function(n){var t;if("string"==typeof n)this._currentCfi=n;else{if("number"!=typeof n)return;this._current=n}0!==this._locations.length&&("string"==typeof n?(t=this.locationFromCfi(n),this._current=t):t=n,this.emit(h.EVENTS.LOCATIONS.CHANGED,{percentage:this.percentageFromLocation(t)}))}},{key:"length",value:function(){return this._locations.length}},{key:"destroy",value:function(){this.spine=void 0;this.request=void 0;this.pause=void 0;this.q.stop();this.q=void 0;this.epubcfi=void 0;this._locations=void 0;this.total=void 0;this.break=void 0;this._current=void 0;this.currentLocation=void 0;this._currentCfi=void 0;clearTimeout(this.processingTimeout)}},{key:"currentLocation",get:function(){return this._current},set:function(n){this.setCurrent(n)}}]),n}();c.default(e.prototype);t.default=e;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),f=i(6),e=(r=f)&&r.__esModule?r:{"default":r},o=i(0),s=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.packagePath="";this.directory="";this.encoding="";t&&this.parse(t)}return u(n,[{key:"parse",value:function(n){var t;if(!n)throw new Error("Container File Not Found");if(!(t=o.qs(n,"rootfile")))throw new Error("No RootFile Found");this.packagePath=t.getAttribute("full-path");this.directory=e.default.dirname(this.packagePath);this.encoding=n.xmlEncoding}},{key:"destroy",value:function(){this.packagePath=void 0;this.directory=void 0;this.encoding=void 0}}]),n}();t.default=s;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),f=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.manifest={};this.navPath="";this.ncxPath="";this.coverPath="";this.spineNodeIndex=0;this.spine=[];this.metadata={};t&&this.parse(t)}return u(n,[{key:"parse",value:function(n){var u,i,t;if(!n)throw new Error("Package File Not Found");if(!(u=r.qs(n,"metadata")))throw new Error("No Metadata Found");if(!(i=r.qs(n,"manifest")))throw new Error("No Manifest Found");if(!(t=r.qs(n,"spine")))throw new Error("No Spine Found");return this.manifest=this.parseManifest(i),this.navPath=this.findNavPath(i),this.ncxPath=this.findNcxPath(i,t),this.coverPath=this.findCoverPath(n),this.spineNodeIndex=r.indexOfElementNode(t),this.spine=this.parseSpine(t,this.manifest),this.metadata=this.parseMetadata(u),this.metadata.direction=t.getAttribute("page-progression-direction"),{metadata:this.metadata,spine:this.spine,manifest:this.manifest,navPath:this.navPath,ncxPath:this.ncxPath,coverPath:this.coverPath,spineNodeIndex:this.spineNodeIndex}}},{key:"parseMetadata",value:function(n){var t={};return t.title=this.getElementText(n,"title"),t.creator=this.getElementText(n,"creator"),t.description=this.getElementText(n,"description"),t.pubdate=this.getElementText(n,"date"),t.publisher=this.getElementText(n,"publisher"),t.identifier=this.getElementText(n,"identifier"),t.language=this.getElementText(n,"language"),t.rights=this.getElementText(n,"rights"),t.modified_date=this.getPropertyText(n,"dcterms:modified"),t.layout=this.getPropertyText(n,"rendition:layout"),t.orientation=this.getPropertyText(n,"rendition:orientation"),t.flow=this.getPropertyText(n,"rendition:flow"),t.viewport=this.getPropertyText(n,"rendition:viewport"),t}},{key:"parseManifest",value:function(n){var t={},i=r.qsa(n,"item");return Array.prototype.slice.call(i).forEach(function(n){var r=n.getAttribute("id"),u=n.getAttribute("href")||"",f=n.getAttribute("media-type")||"",i=n.getAttribute("properties")||"";t[r]={href:u,type:f,properties:i.length?i.split(" "):[]}}),t}},{key:"parseSpine",value:function(n){var t=[],i=r.qsa(n,"itemref");return Array.prototype.slice.call(i).forEach(function(n,i){var u=n.getAttribute("idref"),r=n.getAttribute("properties")||"",f=r.length?r.split(" "):[],e={idref:u,linear:n.getAttribute("linear")||"yes",properties:f,index:i};t.push(e)}),t}},{key:"findNavPath",value:function(n){var t=r.qsp(n,"item",{properties:"nav"});return!!t&&t.getAttribute("href")}},{key:"findNcxPath",value:function(n,t){var u,i=r.qsp(n,"item",{"media-type":"application/x-dtbncx+xml"});return i||(u=t.getAttribute("toc"))&&(i=n.getElementById(u)),!!i&&i.getAttribute("href")}},{key:"findCoverPath",value:function(n){var t,f,i,u;return"2.0"===r.qs(n,"package").getAttribute("version")?(t=r.qsp(n,"meta",{name:"cover"}),t)?(f=t.getAttribute("content"),i=n.getElementById(f),i?i.getAttribute("href"):""):!1:(u=r.qsp(n,"item",{properties:"cover-image"}),u?u.getAttribute("href"):"")}},{key:"getElementText",value:function(n,t){var r,i=n.getElementsByTagNameNS("http://purl.org/dc/elements/1.1/",t);return i&&0!==i.length&&(r=i[0]).childNodes.length?r.childNodes[0].nodeValue:""}},{key:"getPropertyText",value:function(n,t){var i=r.qsp(n,"meta",{property:t});return i&&i.childNodes.length?i.childNodes[0].nodeValue:""}},{key:"load",value:function(n){var t=this;return this.metadata=n.metadata,this.spine=n.spine.map(function(n,t){return n.index=t,n}),n.resources.forEach(function(n,i){(t.manifest[i]=n).rel&&"cover"===n.rel[0]&&(t.coverPath=n.href)}),this.spineNodeIndex=0,this.toc=n.toc.map(function(n){return n.label=n.title,n}),{metadata:this.metadata,spine:this.spine,manifest:this.manifest,navPath:this.navPath,ncxPath:this.ncxPath,coverPath:this.coverPath,spineNodeIndex:this.spineNodeIndex,toc:this.toc}}},{key:"destroy",value:function(){this.manifest=void 0;this.navPath=void 0;this.ncxPath=void 0;this.coverPath=void 0;this.spineNodeIndex=void 0;this.spine=void 0;this.metadata=void 0}}]),n}();t.default=f;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),f=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.toc=[];this.tocByHref={};this.tocById={};this.landmarks=[];this.landmarksByType={};this.length=0;t&&this.parse(t)}return u(n,[{key:"parse",value:function(n){var t=n.nodeType,i=void 0,u=void 0;t&&(i=r.qs(n,"html"),u=r.qs(n,"ncx"));t?i?(this.toc=this.parseNav(n),this.landmarks=this.parseLandmarks(n)):u&&(this.toc=this.parseNcx(n)):this.toc=this.load(n);this.length=0;this.unpack(this.toc)}},{key:"unpack",value:function(n){for(var t,i=0;i<n.length;i++)(t=n[i]).href&&(this.tocByHref[t.href]=i),t.id&&(this.tocById[t.id]=i),this.length++,t.subitems.length&&this.unpack(t.subitems)}},{key:"get",value:function(n){var t;return n?(0===n.indexOf("#")?t=this.tocById[n.substring(1)]:n in this.tocByHref&&(t=this.tocByHref[n]),this.toc[t]):this.toc}},{key:"landmark",value:function(n){var t;return n?(t=this.landmarksByType[n],this.landmarks[t]):this.landmarks}},{key:"parseNav",value:function(n){var i,t,e=r.querySelectorByType(n,"nav","toc"),u=e?r.qsa(e,"li"):[],o=u.length,s={},f=[];if(!u||0===o)return f;for(i=0;i<o;++i)(t=this.navItem(u[i]))&&((s[t.id]=t).parent?s[t.parent].subitems.push(t):f.push(t));return f}},{key:"navItem",value:function(n){var f=n.getAttribute("id")||void 0,u=r.filterChildren(n,"a",!0);if(u){var e=u.getAttribute("href")||"",o=u.textContent||"",t=r.getParentByTagName(n,"li"),i=void 0;for(t&&(i=t.getAttribute("id"));!i&&t;)(t=r.getParentByTagName(t,"li"))&&(i=t.getAttribute("id"));return{id:f,href:e,label:o,subitems:[],parent:i}}}},{key:"parseLandmarks",value:function(n){var t,i,e=r.querySelectorByType(n,"nav","landmarks"),u=e?r.qsa(e,"li"):[],o=u.length,f=[];if(!u||0===o)return f;for(t=0;t<o;++t)(i=this.landmarkItem(u[t]))&&(f.push(i),this.landmarksByType[i.type]=t);return f}},{key:"landmarkItem",value:function(n){var t=r.filterChildren(n,"a",!0),i;if(t)return i=t.getAttributeNS("http://www.idpf.org/2007/ops","type")||void 0,{href:t.getAttribute("href")||"",label:t.textContent||"",type:i}}},{key:"parseNcx",value:function(n){var i,t,u=r.qsa(n,"navPoint"),e=u.length,o={},f=[];if(!u||0===e)return f;for(i=0;i<e;++i)(o[(t=this.ncxItem(u[i])).id]=t).parent?o[t.parent].subitems.push(t):f.push(t);return f}},{key:"ncxItem",value:function(n){var i,f=n.getAttribute("id")||!1,e=r.qs(n,"content").getAttribute("src"),u=r.qs(n,"navLabel"),o=u.textContent?u.textContent:"",t=n.parentNode;return t&&"navPoint"===t.nodeName&&(i=t.getAttribute("id")),{id:f,href:e,label:o,subitems:[],parent:i}}},{key:"load",value:function(n){var t=this;return n.map(function(n){return n.label=n.title,n.subitems=n.children?t.load(n.children):[],n})}},{key:"forEach",value:function(n){return this.toc.forEach(n)}}]),n}();t.default=f;n.exports=t.default},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}var o;Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),f=i(7),r=i(0),h=u(i(5)),c=u(i(17)),e=u(i(4)),l=u(i(6));o=function(){function n(t,i){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.settings={replacements:i&&i.replacements||"base64",archive:i&&i.archive,resolver:i&&i.resolver,request:i&&i.request};this.manifest=t;this.resources=Object.keys(t).map(function(n){return t[n]});this.replacementUrls=[];this.html=[];this.assets=[];this.css=[];this.urls=[];this.cssUrls=[];this.split();this.splitUrls()}return s(n,[{key:"split",value:function(){this.html=this.resources.filter(function(n){if("application/xhtml+xml"===n.type||"text/html"===n.type)return!0});this.assets=this.resources.filter(function(n){if("application/xhtml+xml"!==n.type&&"text/html"!==n.type)return!0});this.css=this.resources.filter(function(n){if("text/css"===n.type)return!0})}},{key:"splitUrls",value:function(){this.urls=this.assets.map(function(n){return n.href}.bind(this));this.cssUrls=this.css.map(function(n){return n.href})}},{key:"createUrl",value:function(n){var i=new h.default(n),t=c.default.lookup(i.filename);return this.settings.archive?this.settings.archive.createUrl(n,{base64:"base64"===this.settings.replacements}):"base64"===this.settings.replacements?this.settings.request(n,"blob").then(function(n){return r.blob2base64(n)}).then(function(n){return r.createBase64Url(n,t)}):this.settings.request(n,"blob").then(function(n){return r.createBlobUrl(n,t)})}},{key:"replacements",value:function(){var n=this,t;return"none"===this.settings.replacements?new Promise(function(n){n(this.urls)}.bind(this)):(t=this.urls.map(function(t){var i=n.settings.resolver(t);return n.createUrl(i).catch(function(n){return console.error(n),null})}),Promise.all(t).then(function(t){return n.replacementUrls=t.filter(function(n){return"string"==typeof n}),t}))}},{key:"replaceCss",value:function(n,t){var i=[];return n=n||this.settings.archive,t=t||this.settings.resolver,this.cssUrls.forEach(function(r){var u=this.createCssFile(r,n,t).then(function(n){var t=this.urls.indexOf(r);-1<t&&(this.replacementUrls[t]=n)}.bind(this));i.push(u)}.bind(this)),Promise.all(i)}},{key:"createCssFile",value:function(n){var i=this,u,t,o;return l.default.isAbsolute(n)?new Promise(function(n){n()}):(t=this.settings.resolver(n),u=this.settings.archive?this.settings.archive.getText(t):this.settings.request(t,"text"),o=this.urls.map(function(n){var r=i.settings.resolver(n);return new e.default(t).relative(r)}),u?u.then(function(n){return n=f.substitute(n,o,i.replacementUrls),"base64"===i.settings.replacements?r.createBase64Url(n,"text/css"):r.createBlobUrl(n,"text/css")},function(){return new Promise(function(n){n()})}):new Promise(function(n){n()}))}},{key:"relativeTo",value:function(n,t){return t=t||this.settings.resolver,this.urls.map(function(i){var r=t(i);return new e.default(n).relative(r)}.bind(this))}},{key:"get",value:function(n){var t=this.urls.indexOf(n);if(-1!==t)return this.replacementUrls.length?new Promise(function(n){n(this.replacementUrls[t])}.bind(this)):this.createUrl(n)}},{key:"substitute",value:function(n,t){var i;return i=t?this.relativeTo(t):this.urls,f.substitute(n,i,this.replacementUrls)}},{key:"destroy",value:function(){this.settings=void 0;this.manifest=void 0;this.resources=void 0;this.replacementUrls=void 0;this.html=void 0;this.assets=void 0;this.css=void 0;this.urls=void 0;this.cssUrls=void 0}}]),n}();t.default=o;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var u,f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(1),o=(u=e)&&u.__esModule?u:{"default":u},r=i(0),s=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.pages=[];this.locations=[];this.epubcfi=new o.default;this.firstPage=0;this.lastPage=0;this.totalPages=0;this.toc=void 0;this.ncx=void 0;t&&(this.pageList=this.parse(t));this.pageList&&this.pageList.length&&this.process(this.pageList)}return f(n,[{key:"parse",value:function(n){var t=r.qs(n,"html");return r.qs(n,"ncx"),t?this.parseNav(n):void 0}},{key:"parseNav",value:function(n){var t,f,e=r.querySelectorByType(n,"nav","page-list"),i=e?r.qsa(e,"li"):[],o=i.length,u=[];if(!i||0===o)return u;for(t=0;t<o;++t)f=this.item(i[t]),u.push(f);return u}},{key:"item",value:function(n){var i,u,f=r.qs(n,"a"),t=f.getAttribute("href")||"",o=f.textContent||"",e=parseInt(o);return-1!=t.indexOf("epubcfi")?(u=(i=t.split("#"))[0],{cfi:1<i.length&&i[1],href:t,packageUrl:u,page:e}):{href:t,page:e}}},{key:"process",value:function(n){n.forEach(function(n){this.pages.push(n.page);n.cfi&&this.locations.push(n.cfi)},this);this.firstPage=parseInt(this.pages[0]);this.lastPage=parseInt(this.pages[this.pages.length-1]);this.totalPages=this.lastPage-this.firstPage}},{key:"pageFromCfi",value:function(n){var i=-1,t;return 0===this.locations.length?-1:(t=r.indexOfSorted(n,this.locations,this.epubcfi.compare),-1!=t?i=this.pages[t]:void 0!==(i=0<=(t=r.locationOf(n,this.locations,this.epubcfi.compare))-1?this.pages[t-1]:this.pages[0])||(i=-1),i)}},{key:"cfiFromPage",value:function(n){var i=-1,t;return"number"!=typeof n&&(n=parseInt(n)),t=this.pages.indexOf(n),-1!=t&&(i=this.locations[t]),i}},{key:"pageFromPercentage",value:function(n){return Math.round(this.totalPages*n)}},{key:"percentageFromPage",value:function(n){var t=(n-this.firstPage)/this.totalPages;return Math.round(1e3*t)/1e3}},{key:"percentageFromCfi",value:function(n){var t=this.pageFromCfi(n);return this.percentageFromPage(t)}},{key:"destroy",value:function(){this.pages=void 0;this.locations=void 0;this.epubcfi=void 0;this.pageList=void 0;this.toc=void 0;this.ncx=void 0}}]),n}();t.default=s;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(0),o=i(2),s=i(3),h=(r=s)&&r.__esModule?r:{"default":r},u=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.settings=t;this.name=t.layout||"reflowable";this._spread="none"!==t.spread;this._minSpreadWidth=t.minSpreadWidth||800;this._evenSpreads=t.evenSpreads||!1;this._flow="scrolled"===t.flow||"scrolled-continuous"===t.flow||"scrolled-doc"===t.flow?"scrolled":"paginated";this.width=0;this.height=0;this.spreadWidth=0;this.delta=0;this.columnWidth=0;this.gap=0;this.divisor=1;this.props={name:this.name,spread:this._spread,flow:this._flow,width:0,height:0,spreadWidth:0,delta:0,columnWidth:0,gap:0,divisor:1}}return f(n,[{key:"flow",value:function(n){return void 0!==n&&(this._flow="scrolled"===n||"scrolled-continuous"===n||"scrolled-doc"===n?"scrolled":"paginated",this.update({flow:this._flow})),this._flow}},{key:"spread",value:function(n,t){return n&&(this._spread="none"!==n,this.update({spread:this._spread})),0<=t&&(this._minSpreadWidth=t),this._spread}},{key:"calculate",value:function(n,t,i){var e,o,s,h,u=1,f=i||0,r=n,l=t,c=Math.floor(r/12);u=this._spread&&r>=this._minSpreadWidth?2:1;"reflowable"!==this.name||"paginated"!==this._flow||0<=i||(f=c%2==0?c:c-1);"pre-paginated"===this.name&&(f=0);s=1<u?(e=r/u-f)+f:e=r;"pre-paginated"===this.name&&1<u&&(r=e);o=e*u+f;h=r;this.width=r;this.height=l;this.spreadWidth=o;this.pageWidth=s;this.delta=h;this.columnWidth=e;this.gap=f;this.divisor=u;this.update({width:r,height:l,spreadWidth:o,pageWidth:s,delta:h,columnWidth:e,gap:f,divisor:u})}},{key:"format",value:function(n){return"pre-paginated"===this.name?n.fit(this.columnWidth,this.height):"paginated"===this._flow?n.columns(this.width,this.height,this.columnWidth,this.gap):n.size(this.width,null)}},{key:"count",value:function(n,t){var i=void 0,r=void 0;return"pre-paginated"===this.name?r=i=1:"paginated"===this._flow?(t=t||this.delta,r=(i=Math.ceil(n/t))*this.divisor):(t=t||this.height,r=i=Math.ceil(n/t)),{spreads:i,pages:r}}},{key:"update",value:function(n){var i=this,t;(Object.keys(n).forEach(function(t){i.props[t]===n[t]&&delete n[t]}),0<Object.keys(n).length)&&(t=e.extend(this.props,n),this.emit(o.EVENTS.LAYOUT.UPDATED,t,n))}}]),n}();h.default(u.prototype);t.default=u;n.exports=t.default},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r,u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),e=i(5),o=(r=e)&&r.__esModule?r:{"default":r},s=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.rendition=t;this._themes={"default":{rules:{},url:"",serialized:""}};this._overrides={};this._current="default";this._injected=[];this.rendition.hooks.content.register(this.inject.bind(this));this.rendition.hooks.content.register(this.overrides.bind(this))}return f(n,[{key:"register",value:function(){if(0!==arguments.length)return 1===arguments.length&&"object"===u(arguments[0])?this.registerThemes(arguments[0]):1===arguments.length&&"string"==typeof arguments[0]?this.default(arguments[0]):2===arguments.length&&"string"==typeof arguments[1]?this.registerUrl(arguments[0],arguments[1]):2===arguments.length&&"object"===u(arguments[1])?this.registerRules(arguments[0],arguments[1]):void 0}},{key:"default",value:function(n){if(n)return"string"==typeof n?this.registerUrl("default",n):"object"===(void 0===n?"undefined":u(n))?this.registerRules("default",n):void 0}},{key:"registerThemes",value:function(n){for(var t in n)n.hasOwnProperty(t)&&("string"==typeof n[t]?this.registerUrl(t,n[t]):this.registerRules(t,n[t]))}},{key:"registerUrl",value:function(n,t){var i=new o.default(t);this._themes[n]={url:i.toString()};this._injected[n]&&this.update(n)}},{key:"registerRules",value:function(n,t){this._themes[n]={rules:t};this._injected[n]&&this.update(n)}},{key:"select",value:function(n){var t=this._current;this._current=n;this.update(n);this.rendition.getContents().forEach(function(i){i.removeClass(t);i.addClass(n)})}},{key:"update",value:function(n){var t=this;this.rendition.getContents().forEach(function(i){t.add(n,i)})}},{key:"inject",value:function(n){var i,u=[],r=this._themes,t;for(t in r)r.hasOwnProperty(t)&&(t===this._current||"default"===t)&&(((i=r[t]).rules&&0<Object.keys(i.rules).length||i.url&&-1===u.indexOf(i.url))&&this.add(t,n),this._injected.push(t));"default"!=this._current&&n.addClass(this._current)}},{key:"add",value:function(n,t){var i=this._themes[n];i&&t&&(i.url?t.addStylesheet(i.url):i.serialized||i.rules&&(t.addStylesheetRules(i.rules),i.injected=!0))}},{key:"override",value:function(n,t,i){var r=this,u=this.rendition.getContents();this._overrides[n]={value:t,priority:!0===i};u.forEach(function(t){t.css(n,r._overrides[n].value,r._overrides[n].priority)})}},{key:"overrides",value:function(n){var i=this._overrides,t;for(t in i)i.hasOwnProperty(t)&&n.css(t,i[t].value,i[t].priority)}},{key:"fontSize",value:function(n){this.override("font-size",n)}},{key:"font",value:function(n){this.override("font-family",n,!0)}},{key:"destroy",value:function(){this.rendition=void 0;this._themes=void 0;this._overrides=void 0;this._current=void 0;this._injected=void 0}}]),n}();t.default=s;n.exports=t.default},function(n,t,i){"use strict";function f(n){return n&&n.__esModule?n:{"default":n}}function e(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var o,r;Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),s=f(i(3)),h=f(i(1));o=function(){function n(t){e(this,n);this.rendition=t;this.highlights=[];this.underlines=[];this.marks=[];this._annotations={};this._annotationsBySectionIndex={};this.rendition.hooks.render.register(this.inject.bind(this));this.rendition.hooks.unloaded.register(this.clear.bind(this))}return u(n,[{key:"add",value:function(n,t,i,u,f,e){var c=encodeURI(t),o=new h.default(t).spinePos,s=new r({type:n,cfiRange:t,data:i,sectionIndex:o,cb:u,className:f,styles:e});return this._annotations[c]=s,o in this._annotationsBySectionIndex?this._annotationsBySectionIndex[o].push(c):this._annotationsBySectionIndex[o]=[c],this.rendition.views().forEach(function(n){s.sectionIndex===n.index&&s.attach(n)}),s}},{key:"remove",value:function(n,t){var u=this,r=encodeURI(n),i;if(r in this._annotations){if(i=this._annotations[r],t&&i.type!==t)return;this.rendition.views().forEach(function(n){u._removeFromAnnotationBySectionIndex(i.sectionIndex,r);i.sectionIndex===n.index&&i.detach(n)});delete this._annotations[r]}}},{key:"_removeFromAnnotationBySectionIndex",value:function(n,t){this._annotationsBySectionIndex[n]=this._annotationsAt(n).filter(function(n){return n!==t})}},{key:"_annotationsAt",value:function(n){return this._annotationsBySectionIndex[n]}},{key:"highlight",value:function(n,t,i,r,u){this.add("highlight",n,t,i,r,u)}},{key:"underline",value:function(n,t,i,r,u){this.add("underline",n,t,i,r,u)}},{key:"mark",value:function(n,t,i){this.add("mark",n,t,i)}},{key:"each",value:function(){return this._annotations.forEach.apply(this._annotations,arguments)}},{key:"inject",value:function(n){var i=this,t=n.index;t in this._annotationsBySectionIndex&&this._annotationsBySectionIndex[t].forEach(function(t){i._annotations[t].attach(n)})}},{key:"clear",value:function(n){var i=this,t=n.index;t in this._annotationsBySectionIndex&&this._annotationsBySectionIndex[t].forEach(function(t){i._annotations[t].detach(n)})}},{key:"show",value:function(){}},{key:"hide",value:function(){}}]),n}();r=function(){function n(t){var i=t.type,r=t.cfiRange,u=t.data,f=t.sectionIndex,o=t.cb,s=t.className,h=t.styles;e(this,n);this.type=i;this.cfiRange=r;this.data=u;this.sectionIndex=f;this.mark=void 0;this.cb=o;this.className=s;this.styles=h}return u(n,[{key:"update",value:function(n){this.data=n}},{key:"attach",value:function(n){var i=this.cfiRange,r=this.data,u=this.type,f=(this.mark,this.cb),e=this.className,o=this.styles,t=void 0;return"highlight"===u?t=n.highlight(i,r,f,e,o):"underline"===u?t=n.underline(i,r,f,e,o):"mark"===u&&(t=n.mark(i,r,f)),this.mark=t}},{key:"detach",value:function(n){var i=this.cfiRange,r=this.type,t=void 0;return n&&("highlight"===r?t=n.unhighlight(i):"underline"===r?t=n.ununderline(i):"mark"===r&&(t=n.unmark(i))),this.mark=void 0,t}},{key:"text",value:function(){}}]),n}();s.default(r.prototype);t.default=o;n.exports=t.default},function(n,t,i){"use strict";function o(n){return n&&n.__esModule?n:{"default":n}}function s(n,t){if(!n)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==(void 0===t?"undefined":e(t))&&"function"!=typeof t?n:t}function h(n,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(void 0===t?"undefined":e(t)));n.prototype=Object.create(t&&t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}});t&&(Object.setPrototypeOf?Object.setPrototypeOf(n,t):n.__proto__=t)}function f(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}var e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},c,l;Object.defineProperty(t,"__esModule",{value:!0});t.Underline=t.Highlight=t.Mark=t.Pane=void 0;var u=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=o(i(54)),a=o(i(55));t.Pane=function(){function n(t){var i=1<arguments.length&&void 0!==arguments[1]?arguments[1]:document.body;f(this,n);this.target=t;this.element=r.default.createElement("svg");this.marks=[];this.element.style.position="absolute";this.element.setAttribute("pointer-events","none");a.default.proxyMouse(this.target,this.marks);this.container=i;this.container.appendChild(this.element);this.render()}return u(n,[{key:"addMark",value:function(n){var t=r.default.createElement("g");return this.element.appendChild(t),n.bind(t,this.container),this.marks.push(n),n.render(),n}},{key:"removeMark",value:function(n){var t=this.marks.indexOf(n),i;-1!==t&&(i=n.unbind(),this.element.removeChild(i),this.marks.splice(t,1))}},{key:"render",value:function(){var n,t,i,o,u,f,c,r;n=this.element;i=this.target;o=this.container;u=o.getBoundingClientRect();f=i.getBoundingClientRect();t={top:f.top-u.top,left:f.left-u.left,height:i.scrollHeight,width:i.scrollWidth};n.style.setProperty("top",t.top+"px","important");n.style.setProperty("left",t.left+"px","important");n.style.setProperty("height",t.height+"px","important");n.style.setProperty("width",t.width+"px","important");var e=!0,s=!1,h=void 0;try{for(r=this.marks[Symbol.iterator]();!(e=(c=r.next()).done);e=!0)c.value.render()}catch(n){s=!0;h=n}finally{try{!e&&r.return&&r.return()}finally{if(s)throw h;}}}}]),n}();c=t.Mark=function(){function n(){f(this,n);this.element=null}return u(n,[{key:"bind",value:function(n,t){this.element=n;this.container=t}},{key:"unbind",value:function(){var n=this.element;return this.element=null,n}},{key:"render",value:function(){}},{key:"dispatchEvent",value:function(n){this.element&&this.element.dispatchEvent(n)}},{key:"getBoundingClientRect",value:function(){return this.element.getBoundingClientRect()}},{key:"getClientRects",value:function(){for(var t=[],n=this.element.firstChild;n;)t.push(n.getBoundingClientRect()),n=n.nextSibling;return t}},{key:"filteredRanges",value:function(){var n=Array.from(this.range.getClientRects());return n.filter(function(t){for(var r,u,i=0;i<n.length;i++){if(n[i]===t)return!0;if(r=n[i],(u=t).right<=r.right&&u.left>=r.left&&u.top>=r.top&&u.bottom<=r.bottom)return!1}return!0})}}]),n}();l=t.Highlight=function(){function n(t,i,r,u){f(this,n);var e=s(this,(n.__proto__||Object.getPrototypeOf(n)).call(this));return e.range=t,e.className=i,e.data=r||{},e.attributes=u||{},e}return h(n,c),u(n,[{key:"bind",value:function(t,i){var r;for(r in function t(n,i,r){var u,f,e;return(null===n&&(n=Function.prototype),u=Object.getOwnPropertyDescriptor(n,i),void 0===u)?(f=Object.getPrototypeOf(n),null===f?void 0:t(f,i,r)):"value"in u?u.value:(e=u.get,void 0!==e?e.call(r):void 0)}(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"bind",this).call(this,t,i),this.data)this.data.hasOwnProperty(r)&&(this.element.dataset[r]=this.data[r]);for(r in this.attributes)this.attributes.hasOwnProperty(r)&&this.element.setAttribute(r,this.attributes[r]);this.className&&this.element.classList.add(this.className)}},{key:"render",value:function(){for(var t,n;this.element.firstChild;)this.element.removeChild(this.element.firstChild);for(var u=this.element.ownerDocument.createDocumentFragment(),f=this.filteredRanges(),e=this.element.getBoundingClientRect(),o=this.container.getBoundingClientRect(),i=0,s=f.length;i<s;i++)t=f[i],n=r.default.createElement("rect"),n.setAttribute("x",t.left-e.left+o.left),n.setAttribute("y",t.top-e.top+o.top),n.setAttribute("height",t.height),n.setAttribute("width",t.width),u.appendChild(n);this.element.appendChild(u)}}]),n}();t.Underline=function(){function n(t,i,r,u){return f(this,n),s(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,t,i,r,u))}return h(n,l),u(n,[{key:"render",value:function(){for(var n,i,t;this.element.firstChild;)this.element.removeChild(this.element.firstChild);for(var e=this.element.ownerDocument.createDocumentFragment(),s=this.filteredRanges(),u=this.element.getBoundingClientRect(),f=this.container.getBoundingClientRect(),o=0,h=s.length;o<h;o++)n=s[o],i=r.default.createElement("rect"),i.setAttribute("x",n.left-u.left+f.left),i.setAttribute("y",n.top-u.top+f.top),i.setAttribute("height",n.height),i.setAttribute("width",n.width),i.setAttribute("fill","none"),t=r.default.createElement("line"),t.setAttribute("x1",n.left-u.left+f.left),t.setAttribute("x2",n.left-u.left+f.left+n.width),t.setAttribute("y1",n.top-u.top+f.top+n.height-1),t.setAttribute("y2",n.top-u.top+f.top+n.height-1),t.setAttribute("stroke-width",1),t.setAttribute("stroke","black"),t.setAttribute("stroke-linecap","square"),e.appendChild(i),e.appendChild(t);this.element.appendChild(e)}}]),n}()},function(n,t){"use strict";function i(n){return document.createElementNS("http://www.w3.org/2000/svg",n)}Object.defineProperty(t,"__esModule",{value:!0});t.createElement=i;t.default={createElement:i}},function(n,t){"use strict";function i(n,t){function o(i){for(var f=t.length-1;0<=f;f--){var e=t[f],o=i.clientX,s=i.clientY;if(i.touches&&i.touches.length&&(o=i.touches[0].clientX,s=i.touches[0].clientY),u(e,n,o,s)){e.dispatchEvent(r(i));break}}}var f,i,e;if("iframe"===n.nodeName||"IFRAME"===n.nodeName)try{this.target=n.contentDocument}catch(f){this.target=n}else this.target=n;for(f=["mouseup","mousedown","click","touchstart"],i=0;i<f.length;i++)e=f[i],this.target.addEventListener(e,function(n){return o(n)},!1)}function r(n){var t=Object.assign({},n,{bubbles:!1}),i;try{return new MouseEvent(n.type,t)}catch(r){return i=document.createEvent("MouseEvents"),i.initMouseEvent(n.type,!1,t.cancelable,t.view,t.detail,t.screenX,t.screenY,t.clientX,t.clientY,t.ctrlKey,t.altKey,t.shiftKey,t.metaKey,t.button,t.relatedTarget),i}}function u(n,t,i,r){function e(n,t,i){var r=n.top-f.top,u=n.left-f.left,e=r+n.height,o=u+n.width;return r<=i&&u<=t&&i<e&&t<o}var f=t.getBoundingClientRect();if(!e(n.getBoundingClientRect(),i,r))return!1;for(var o=n.getClientRects(),u=0,s=o.length;u<s;u++)if(e(o[u],i,r))return!0;return!1}Object.defineProperty(t,"__esModule",{value:!0});t.proxyMouse=i;t.clone=r;t.default={proxyMouse:i}},function(n,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var u,f=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),e=i(57),o=(u=e)&&u.__esModule?u:{"default":u},s=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.settings=t||{};this.id="epubjs-container-"+r.uuid();this.container=this.create(this.settings);this.settings.hidden&&(this.wrapper=this.wrap(this.container))}return f(n,[{key:"create",value:function(n){var u=n.height,f=n.width,e=n.overflow||!1,o=n.axis||"vertical",i=n.direction,t;return n.height&&r.isNumber(n.height)&&(u=n.height+"px"),n.width&&r.isNumber(n.width)&&(f=n.width+"px"),t=document.createElement("div"),t.id=this.id,t.classList.add("epub-container"),t.style.wordSpacing="0",t.style.lineHeight="0",t.style.verticalAlign="top",t.style.position="relative","horizontal"===o&&(t.style.display="flex",t.style.flexDirection="row",t.style.flexWrap="nowrap"),f&&(t.style.width=f),u&&(t.style.height=u),e&&(t.style.overflow=e),i&&(t.dir=i,t.style.direction=i),i&&this.settings.fullsize&&(document.body.style.direction=i),t}},{key:"wrap",value:function(n){var t=document.createElement("div");return t.style.visibility="hidden",t.style.overflow="hidden",t.style.width="0",t.style.height="0",t.appendChild(n),t}},{key:"getElement",value:function(n){var t;if(r.isElement(n)?t=n:"string"==typeof n&&(t=document.getElementById(n)),!t)throw new Error("Not an Element");return t}},{key:"attachTo",value:function(n){var i,t=this.getElement(n);if(t)return i=this.settings.hidden?this.wrapper:this.container,t.appendChild(i),this.element=t}},{key:"getContainer",value:function(){return this.container}},{key:"onResize",value:function(n){r.isNumber(this.settings.width)&&r.isNumber(this.settings.height)||(this.resizeFunc=o.default(n,50),window.addEventListener("resize",this.resizeFunc,!1))}},{key:"onOrientationChange",value:function(n){this.orientationChangeFunc=n;window.addEventListener("orientationchange",this.orientationChangeFunc,!1)}},{key:"size",value:function(n,t){var i;null===n&&(i=this.element.getBoundingClientRect()).width&&(n=Math.floor(i.width),this.container.style.width=n+"px");null===t&&(i=i||this.element.getBoundingClientRect()).height&&(t=i.height,this.container.style.height=i.height+"px");r.isNumber(n)||(i=this.container.getBoundingClientRect(),n=Math.floor(i.width));r.isNumber(t)||(t=(i=i||this.container.getBoundingClientRect()).height);this.containerStyles=window.getComputedStyle(this.container);this.containerPadding={left:parseFloat(this.containerStyles["padding-left"])||0,right:parseFloat(this.containerStyles["padding-right"])||0,top:parseFloat(this.containerStyles["padding-top"])||0,bottom:parseFloat(this.containerStyles["padding-bottom"])||0};var f=r.windowBounds(),u=window.getComputedStyle(document.body),e=parseFloat(u["padding-left"])||0,o=parseFloat(u["padding-right"])||0,s=parseFloat(u["padding-top"])||0,h=parseFloat(u["padding-bottom"])||0;return n||(n=f.width-e-o),!this.settings.fullsize&&t||(t=f.height-s-h),{width:n-this.containerPadding.left-this.containerPadding.right,height:t-this.containerPadding.top-this.containerPadding.bottom}}},{key:"bounds",value:function(){var n=void 0;return"visible"!==this.container.style.overflow&&(n=this.container&&this.container.getBoundingClientRect()),n&&n.width&&n.height?n:r.windowBounds()}},{key:"getSheet",value:function(){var n=document.createElement("style");return n.appendChild(document.createTextNode("")),document.head.appendChild(n),n.sheet}},{key:"addStyleRules",value:function(n,t){var r="#"+this.id+" ",i="";this.sheet||(this.sheet=this.getSheet());t.forEach(function(n){for(var t in n)n.hasOwnProperty(t)&&(i+=t+":"+n[t]+";")});this.sheet.insertRule(r+n+" {"+i+"}",0)}},{key:"axis",value:function(n){"horizontal"===n?(this.container.style.display="flex",this.container.style.flexDirection="row",this.container.style.flexWrap="nowrap"):this.container.style.display="block"}},{key:"direction",value:function(n){this.container&&(this.container.dir=n,this.container.style.direction=n);this.settings.fullsize&&(document.body.style.direction=n)}},{key:"destroy",value:function(){this.element&&(this.settings.hidden?this.wrapper:this.container,this.element.contains(this.container)&&this.element.removeChild(this.container),window.removeEventListener("resize",this.resizeFunc),window.removeEventListener("orientationChange",this.orientationChangeFunc))}}]),n}();t.default=s;n.exports=t.default},function(n,t,i){var r=i(21),u=i(15);n.exports=function(n,t,i){var f=!0,e=!0;if("function"!=typeof n)throw new TypeError("Expected a function");return u(i)&&(f="leading"in i?!!i.leading:f,e="trailing"in i?!!i.trailing:e),r(n,t,{leading:f,maxWait:t,trailing:e})}},function(n,t,i){var r=i(22);n.exports=function(){return r.Date.now()}},function(n,t,i){(function(t){var i="object"==typeof t&&t&&t.Object===Object&&t;n.exports=i}).call(t,i(8))},function(n,t,i){var r=i(15),u=i(61),f=/^\s+|\s+$/g,e=/^[-+]0x[0-9a-f]+$/i,o=/^0b[01]+$/i,s=/^0o[0-7]+$/i,h=parseInt;n.exports=function(n){var t,i;return"number"==typeof n?n:u(n)?NaN:(r(n)&&(t="function"==typeof n.valueOf?n.valueOf():n,n=r(t)?t+"":t),"string"!=typeof n)?0===n?n:+n:(n=n.replace(f,""),i=o.test(n),i||s.test(n)?h(n.slice(2),i?2:8):e.test(n)?NaN:+n)}},function(n,t,i){var r=i(62),u=i(65);n.exports=function(n){return"symbol"==typeof n||u(n)&&"[object Symbol]"==r(n)}},function(n,t,i){var r=i(23),f=i(63),e=i(64),u=r?r.toStringTag:void 0;n.exports=function(n){return null==n?void 0===n?"[object Undefined]":"[object Null]":u&&u in Object(n)?f(n):e(n)}},function(n,t,i){var u=i(23),f=Object.prototype,e=f.hasOwnProperty,o=f.toString,r=u?u.toStringTag:void 0;n.exports=function(n){var u=e.call(n,r),f=n[r],t,i;try{t=!(n[r]=void 0)}catch(n){}return i=o.call(n),t&&(u?n[r]=f:delete n[r]),i}},function(n){var t=Object.prototype.toString;n.exports=function(n){return t.call(n)}},function(n){n.exports=function(n){return null!=n&&"object"==typeof n}},function(n,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=function(){function n(t){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.container=t;this._views=[];this.length=0;this.hidden=!1}return i(n,[{key:"all",value:function(){return this._views}},{key:"first",value:function(){return this._views[0]}},{key:"last",value:function(){return this._views[this._views.length-1]}},{key:"indexOf",value:function(n){return this._views.indexOf(n)}},{key:"slice",value:function(){return this._views.slice.apply(this._views,arguments)}},{key:"get",value:function(n){return this._views[n]}},{key:"append",value:function(n){return this._views.push(n),this.container&&this.container.appendChild(n.element),this.length++,n}},{key:"prepend",value:function(n){return this._views.unshift(n),this.container&&this.container.insertBefore(n.element,this.container.firstChild),this.length++,n}},{key:"insert",value:function(n,t){return this._views.splice(t,0,n),this.container&&(t<this.container.children.length?this.container.insertBefore(n.element,this.container.children[t]):this.container.appendChild(n.element)),this.length++,n}},{key:"remove",value:function(n){var t=this._views.indexOf(n);-1<t&&this._views.splice(t,1);this.destroy(n);this.length--}},{key:"destroy",value:function(n){n.displayed&&n.destroy();this.container&&this.container.removeChild(n.element);n=null}},{key:"forEach",value:function(){return this._views.forEach.apply(this._views,arguments)}},{key:"clear",value:function(){var t,i=this.length,n;if(this.length){for(n=0;n<i;n++)t=this._views[n],this.destroy(t);this._views=[];this.length=0}}},{key:"find",value:function(n){for(var t,r=this.length,i=0;i<r;i++)if((t=this._views[i]).displayed&&t.section.index==n.index)return t}},{key:"displayed",value:function(){for(var t,i=[],r=this.length,n=0;n<r;n++)(t=this._views[n]).displayed&&i.push(t);return i}},{key:"show",value:function(){for(var t,i=this.length,n=0;n<i;n++)(t=this._views[n]).displayed&&t.show();this.hidden=!1}},{key:"hide",value:function(){for(var t,i=this.length,n=0;n<i;n++)(t=this._views[n]).displayed&&t.hide();this.hidden=!0}}]),n}();t.default=r;n.exports=t.default},function(n,t,i){"use strict";function u(n){return n&&n.__esModule?n:{"default":n}}var e;Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function n(n,t){for(var i,r=0;r<t.length;r++)i=t[r],i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(n,i.key,i)}return function(t,i,r){return i&&n(t.prototype,i),r&&n(t,r),t}}(),r=i(0),s=u(i(11)),f=u(i(17)),h=u(i(4));e=function(){function n(){!function(n,t){if(!(n instanceof t))throw new TypeError("Cannot call a class as a function");}(this,n);this.zip=void 0;this.urlCache={};this.checkRequirements()}return o(n,[{key:"checkRequirements",value:function(){try{if("undefined"==typeof JSZip){var n=i(68);this.zip=new n}else this.zip=new JSZip}catch(n){throw new Error("JSZip lib not loaded");}}},{key:"open",value:function(n,t){return this.zip.loadAsync(n,{base64:t})}},{key:"openUrl",value:function(n,t){return s.default(n,"binary").then(function(n){return this.zip.loadAsync(n,{base64:t})}.bind(this))}},{key:"request",value:function(n,t){var u,i=new r.defer,f=new h.default(n);return t||(t=f.extension),(u="blob"==t?this.getBlob(n):this.getText(n))?u.then(function(n){var r=this.handleResponse(n,t);i.resolve(r)}.bind(this)):i.reject({message:"File not found in the epub: "+n,stack:(new Error).stack}),i.promise}},{key:"handleResponse",value:function(n,t){return"json"==t?JSON.parse(n):r.isXml(t)?r.parse(n,"text/xml"):"xhtml"==t?r.parse(n,"application/xhtml+xml"):"html"==t||"htm"==t?r.parse(n,"text/html"):n}},{key:"getBlob",value:function(n,t){var r=window.decodeURIComponent(n.substr(1)),i=this.zip.file(r);if(i)return t=t||f.default.lookup(i.name),i.async("uint8array").then(function(n){return new Blob([n],{type:t})})}},{key:"getText",value:function(n){var i=window.decodeURIComponent(n.substr(1)),t=this.zip.file(i);if(t)return t.async("string").then(function(n){return n})}},{key:"getBase64",value:function(n,t){var r=window.decodeURIComponent(n.substr(1)),i=this.zip.file(r);if(i)return t=t||f.default.lookup(i.name),i.async("base64").then(function(n){return"data:"+t+";base64,"+n})}},{key:"createUrl",value:function(n,t){var f,i,u=new r.defer,e=window.URL||window.webkitURL||window.mozURL,o=t&&t.base64;return n in this.urlCache?u.resolve(this.urlCache[n]):(o?(i=this.getBase64(n))&&i.then(function(t){this.urlCache[n]=t;u.resolve(t)}.bind(this)):(i=this.getBlob(n))&&i.then(function(t){f=e.createObjectURL(t);this.urlCache[n]=f;u.resolve(f)}.bind(this)),i||u.reject({message:"File not found in the epub: "+n,stack:(new Error).stack})),u.promise}},{key:"revokeUrl",value:function(n){var i=window.URL||window.webkitURL||window.mozURL,t=this.urlCache[n];t&&i.revokeObjectURL(t)}},{key:"destroy",value:function(){var t=window.URL||window.webkitURL||window.mozURL,n;for(n in this.urlCache)t.revokeObjectURL(n);this.zip=void 0;this.urlCache={}}}]),n}();t.default=e;n.exports=t.default},function(n){if(void 0===t){var i=new Error('Cannot find module "jszip"');throw i.code="MODULE_NOT_FOUND",i;}n.exports=t},function(n,t,i){"use strict";(function(n,i){var r,e,o,u,f,s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n};f=function(n){function y(n){return void 0!==i[n]}function h(){a.call(this);this._isInvalid=!0}function c(n){return""==n&&h.call(this),n.toLowerCase()}function l(n){var t=n.charCodeAt(0);return 32<t&&t<127&&-1==[34,35,60,62,63,96].indexOf(t)?n:encodeURIComponent(n)}function r(n,r,f){function v(n){ot.push(n)}var g,nt,a=r||"scheme start",w=0,s="",ft=!1,tt=!1,ot=[],e,it,b,d,k,rt,ut,et;n:for(;(n[w-1]!=t||0==w)&&!this._isInvalid;){e=n[w];switch(a){case"scheme start":if(!e||!o.test(e)){if(r){v("Invalid scheme.");break n}s="";a="no scheme";continue}s+=e.toLowerCase();a="scheme";break;case"scheme":if(e&&p.test(e))s+=e.toLowerCase();else{if(":"!=e){if(r){if(t==e)break n;v("Code point not allowed in scheme: "+e);break n}s="";w=0;a="no scheme";continue}if(this._scheme=s,s="",r)break n;y(this._scheme)&&(this._isRelative=!0);a="file"==this._scheme?"relative":this._isRelative&&f&&f._scheme==this._scheme?"relative or authority":this._isRelative?"authority first slash":"scheme data"}break;case"scheme data":"?"==e?(this._query="?",a="query"):"#"==e?(this._fragment="#",a="fragment"):t!=e&&"\t"!=e&&"\n"!=e&&"\r"!=e&&(this._schemeData+=l(e));break;case"no scheme":if(f&&y(f._scheme)){a="relative";continue}v("Missing scheme.");h.call(this);break;case"relative or authority":if("/"!=e||"/"!=n[w+1]){v("Expected /, got: "+e);a="relative";continue}a="authority ignore slashes";break;case"relative":if(this._isRelative=!0,"file"!=this._scheme&&(this._scheme=f._scheme),t==e){this._host=f._host;this._port=f._port;this._path=f._path.slice();this._query=f._query;this._username=f._username;this._password=f._password;break n}if("/"==e||"\\"==e)"\\"==e&&v("\\ is an invalid code point."),a="relative slash";else if("?"==e)this._host=f._host,this._port=f._port,this._path=f._path.slice(),this._query="?",this._username=f._username,this._password=f._password,a="query";else{if("#"!=e){it=n[w+1];b=n[w+2];"file"==this._scheme&&o.test(e)&&(":"==it||"|"==it)&&(t==b||"/"==b||"\\"==b||"?"==b||"#"==b)||(this._host=f._host,this._port=f._port,this._username=f._username,this._password=f._password,this._path=f._path.slice(),this._path.pop());a="relative path";continue}this._host=f._host;this._port=f._port;this._path=f._path.slice();this._query=f._query;this._fragment="#";this._username=f._username;this._password=f._password;a="fragment"}break;case"relative slash":if("/"!=e&&"\\"!=e){"file"!=this._scheme&&(this._host=f._host,this._port=f._port,this._username=f._username,this._password=f._password);a="relative path";continue}"\\"==e&&v("\\ is an invalid code point.");a="file"==this._scheme?"file host":"authority ignore slashes";break;case"authority first slash":if("/"!=e){v("Expected '/', got: "+e);a="authority ignore slashes";continue}a="authority second slash";break;case"authority second slash":if(a="authority ignore slashes","/"!=e){v("Expected '/', got: "+e);continue}break;case"authority ignore slashes":if("/"!=e&&"\\"!=e){a="authority";continue}v("Expected authority, got: "+e);break;case"authority":if("@"==e){for(ft&&(v("@ already seen."),s+="%40"),ft=!0,d=0;d<s.length;d++)k=s[d],"\t"!=k&&"\n"!=k&&"\r"!=k?":"!=k||null!==this._password?(rt=l(k),null!==this._password?this._password+=rt:this._username+=rt):this._password="":v("Invalid whitespace in authority.");s=""}else{if(t==e||"/"==e||"\\"==e||"?"==e||"#"==e){w-=s.length;s="";a="host";continue}s+=e}break;case"file host":if(t==e||"/"==e||"\\"==e||"?"==e||"#"==e){2!=s.length||!o.test(s[0])||":"!=s[1]&&"|"!=s[1]?(0==s.length||(this._host=c.call(this,s),s=""),a="relative path start"):a="relative path";continue}"\t"==e||"\n"==e||"\r"==e?v("Invalid whitespace in file host."):s+=e;break;case"host":case"hostname":if(":"!=e||tt){if(t==e||"/"==e||"\\"==e||"?"==e||"#"==e){if(this._host=c.call(this,s),s="",a="relative path start",r)break n;continue}"\t"!=e&&"\n"!=e&&"\r"!=e?("["==e?tt=!0:"]"==e&&(tt=!1),s+=e):v("Invalid code point in host/hostname: "+e)}else if(this._host=c.call(this,s),s="",a="port","hostname"==r)break n;break;case"port":if(/[0-9]/.test(e))s+=e;else{if(t==e||"/"==e||"\\"==e||"?"==e||"#"==e||r){if(""!=s&&(ut=parseInt(s,10),ut!=i[this._scheme]&&(this._port=ut+""),s=""),r)break n;a="relative path start";continue}"\t"==e||"\n"==e||"\r"==e?v("Invalid code point in port: "+e):h.call(this)}break;case"relative path start":if("\\"==e&&v("'\\' not allowed in path."),a="relative path","/"!=e&&"\\"!=e)continue;break;case"relative path":t!=e&&"/"!=e&&"\\"!=e&&(r||"?"!=e&&"#"!=e)?"\t"!=e&&"\n"!=e&&"\r"!=e&&(s+=l(e)):("\\"==e&&v("\\ not allowed in relative path."),(et=u[s.toLowerCase()])&&(s=et),".."==s?(this._path.pop(),"/"!=e&&"\\"!=e&&this._path.push("")):"."==s&&"/"!=e&&"\\"!=e?this._path.push(""):"."!=s&&("file"==this._scheme&&0==this._path.length&&2==s.length&&o.test(s[0])&&"|"==s[1]&&(s=s[0]+":"),this._path.push(s)),s="","?"==e?(this._query="?",a="query"):"#"==e&&(this._fragment="#",a="fragment"));break;case"query":r||"#"!=e?t!=e&&"\t"!=e&&"\n"!=e&&"\r"!=e&&(this._query+=(void 0,32<(nt=(g=e).charCodeAt(0))&&nt<127&&-1==[34,35,60,62,96].indexOf(nt)?g:encodeURIComponent(g))):(this._fragment="#",a="fragment");break;case"fragment":t!=e&&"\t"!=e&&"\n"!=e&&"\r"!=e&&(this._fragment+=e)}w++}}function a(){this._scheme="";this._schemeData="";this._username="";this._password=null;this._host="";this._port="";this._path=[];this._query="";this._fragment="";this._isInvalid=!1;this._isRelative=!1}function f(n,t){void 0===t||t instanceof f||(t=new f(String(t)));this._url=n;a.call(this);var i=n.replace(/^[ \t\r\n\f]+|[ \t\r\n\f]+$/g,"");r.call(this,i,null,t)}var v=!1,s,i,u,e;if(!n.forceJURL)try{s=new URL("b","http://a");s.pathname="c%20d";v="http://a/c%20d"===s.href}catch(n){}if(v)return n.URL;i=Object.create(null);i.ftp=21;i.file=0;i.gopher=70;i.http=80;i.https=443;i.ws=80;i.wss=443;u=Object.create(null);u["%2e"]=".";u[".%2e"]="..";u["%2e."]="..";u["%2e%2e"]="..";var t=void 0,o=/[a-zA-Z]/,p=/[a-zA-Z0-9\+\-\.]/;return f.prototype={toString:function(){return this.href},get href(){if(this._isInvalid)return this._url;var n="";return""==this._username&&null==this._password||(n=this._username+(null!=this._password?":"+this._password:"")+"@"),this.protocol+(this._isRelative?"//"+n+this.host:"")+this.pathname+this._query+this._fragment},set href(n){a.call(this);r.call(this,n)},get protocol(){return this._scheme+":"},set protocol(n){this._isInvalid||r.call(this,n+":","scheme start")},get host(){return this._isInvalid?"":this._port?this._host+":"+this._port:this._host},set host(n){!this._isInvalid&&this._isRelative&&r.call(this,n,"host")},get hostname(){return this._host},set hostname(n){!this._isInvalid&&this._isRelative&&r.call(this,n,"hostname")},get port(){return this._port},set port(n){!this._isInvalid&&this._isRelative&&r.call(this,n,"port")},get pathname(){return this._isInvalid?"":this._isRelative?"/"+this._path.join("/"):this._schemeData},set pathname(n){!this._isInvalid&&this._isRelative&&(this._path=[],r.call(this,n,"relative path start"))},get search(){return this._isInvalid||!this._query||"?"==this._query?"":this._query},set search(n){!this._isInvalid&&this._isRelative&&((this._query="?")==n[0]&&(n=n.slice(1)),r.call(this,n,"query"))},get hash(){return this._isInvalid||!this._fragment||"#"==this._fragment?"":this._fragment},set hash(n){this._isInvalid||((this._fragment="#")==n[0]&&(n=n.slice(1)),r.call(this,n,"fragment"))},get origin(){var n;if(this._isInvalid||!this._scheme)return"";switch(this._scheme){case"file":return"file://";case"data":case"javascript":case"mailto":return"null"}return(n=this.host)?this._scheme+"://"+n:""}},e=n.URL,e&&(f.createObjectURL=function(){return e.createObjectURL.apply(e,arguments)},f.revokeObjectURL=function(n){e.revokeObjectURL(n)}),f};(u=void 0)||(u=window||n);"object"===s(i)&&i.exports?i.exports=f(u):(e=[],void 0===(o="function"==typeof(r=f)?r.apply(t,e):r)||(i.exports=o))}).call(t,i(8),i(70)(n))},function(n){n.exports=function(n){return n.webpackPolyfill||(n.deprecate=function(){},n.paths=[],n.children||(n.children=[]),Object.defineProperty(n,"loaded",{enumerable:!0,get:function(){return n.l}}),Object.defineProperty(n,"id",{enumerable:!0,get:function(){return n.i}}),n.webpackPolyfill=1),n}}])})