From 195e7d7fe9754d5be7e4e0348e0874dbbf472892 Mon Sep 17 00:00:00 2001 From: troyeguo <13820674+troyeguo@users.noreply.github.com> Date: Sat, 27 Nov 2021 18:24:37 +0800 Subject: [PATCH] fix bug Former-commit-id: 9269a6c1772b0dc7579613eccd0838aad41fb878 --- public/lib/kookit/kookit.umd.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/lib/kookit/kookit.umd.js b/public/lib/kookit/kookit.umd.js index 0dead27f..8972e388 100644 --- a/public/lib/kookit/kookit.umd.js +++ b/public/lib/kookit/kookit.umd.js @@ -10,4 +10,4 @@ column-fill: auto; column-gap: 88px; column-count: 12; - column-width: ${(t.offsetWidth-88)/("double"===e?2:1)}px;`)};let ti=!1;const ei=(t,e,i,r,n)=>{0{if(Math.abs(t.scrollHeight-t.scrollTop-t.clientHeight)<10&&Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10)si(t,e,i,r)})(t,e,i,r),window.frames[0].document.body.scrollLeft+=t.offsetWidth+88)},ii=(t,e,i,r)=>{var n=s.getKookitConfig("chapterTitle"),o=Ze.findIndex(e,{label:n});0!==o&&-1!==o&&n&&(s.setKookitConfig("chapterTitle",e[o-1].label),s.setKookitConfig("text","prevChapter"),ri(e[o-1].label,i,t,r))},ri=(t="",e,i,r)=>{window.frames[0].document.body.innerHTML="";let n=Ze.findIndex(e,{title:t});n=-1===n?0:n,window.frames[0].document.body.innerHTML=e[n].text,s.setKookitConfig("chapterTitle",e[n].title),Qe(i,r),(()=>{var r,t=document.getElementsByTagName("iframe")[0];if(t){let i=t.contentDocument;if(i){let t,e;for(r of i.getElementsByTagName("img")){var n=r.parentElement;r.width&&r.height?r.height/r.width>n.clientHeight/n.clientWidth?(t=n.clientHeight,e=t*r.width/r.height):(e=n.clientWidth,t=e*r.height/r.width):e=n.clientWidth,r.setAttribute("style",`max-width: ${e}px;max-height:${t}px`)}}}})(),ni(i,r)},ni=(e,i,r="",n="0")=>{let o=r||s.getKookitConfig("text")||"";if(o){let t=Array.from(window.frames[0].document.body.querySelectorAll("h1,h2,h3,h4,p"));r=t.filter((t,e)=>t.innerText===o&&e===parseInt(s.getKookitConfig("count")||n))[0];"scroll"!==i?window.frames[0].document.body.scrollTo(o&&r?r.offsetLeft:"prevChapter"===o?window.frames[0].document.body.scrollWidth:0,0):e.scrollTo(0,o&&r?r.offsetTop:0)}else("scroll"!==i?window.frames[0].document.body:e).scrollTo(0,0)},oi=(i,r)=>{if(!ti){var t=Array.from(window.frames[0].document.body.querySelectorAll("h1,h2,h3,h4,p,img")).filter(t=>ai(i,t,r)&&t.innerText.trim()),n=t["scroll"===r?Math.floor(t.length/2):0];let e=0;var o=Array.from(window.frames[0].document.body.querySelectorAll("h1,h2,h3,h4,p,img"));for(let t=0;t{ti=!1},100)}},si=(t,e,i,r)=>{var n=s.getKookitConfig("chapterTitle"),n=Ze.findIndex(e,{label:n});n!==e.length-1&&-1!==n&&(s.setKookitConfig("chapterTitle",e[n+1].label),s.setKookitConfig("text",""),ri(e[n+1].label,i,t,r))},ai=(t,e,i)=>{var r=!1,n=e.getBoundingClientRect();return"scroll"!==i&&(e.innerText.trim()||e.id&&"IMG"===e.tagName)?r=0<=(i=n.left)&&i<=t.offsetWidth:(e.innerText.trim()||e.id&&"IMG"===e.tagName)&&(r=(n=n.top)>=t.scrollTop&&n<=t.scrollTop+t.offsetHeight),r};class hi{constructor(t){this.bookStr=t,this.chapterList=[],this.chapterDocList=[]}getChapterDoc(){var e=-1")?this.bookStr.split(""):this.bookStr.split("
");let n=[],o=[],i="";for(let t=0;t{var e=0(!e&&(t.innerText.trim().startsWith("第")&&i(t.innerText.trim())||t.innerText.trim().startsWith("Chapter")||t.innerText.trim().startsWith("CHAPTER"))&&(e=!0),a(t.innerText.trim(),e))))}getChapterDoc(){if(0 ");for(let t=0;tthis.chapterList.length&&0===t&&(e=Math.floor(9e5*Math.random())+1e5,this.chapterList.unshift({label:"Forword#"+t,id:"title"+e,href:"#title"+e,subitems:[]})),this.chapterDocList.push({title:this.chapterList[t].label,text:i[t]});return this.chapterDocList}}function ci(t){return t instanceof ArrayBuffer&&(t=new Uint8Array(t)),new TextDecoder("utf-8").decode(t)}var ui=new DOMParser;class fi{constructor(t){this.capacity=t,this.fragment_list=[],this.imageArray=[],this.cur_fragment=new di(t),this.fragment_list.push(this.cur_fragment)}write(t){this.cur_fragment.write(t)||(this.cur_fragment=new di(this.capacity),this.fragment_list.push(this.cur_fragment),this.cur_fragment.write(t))}get(t){for(var e=0;e=this.capacity)&&(this.buffer[this.size]=t,this.size+=1,!0)}full(){return this.size===this.capacity}get(t){return this.buffer[t]}}class mi{constructor(t){this.render_image=(o,s)=>new Promise((i,e)=>{var r=o[s],t=+r.getAttribute("recindex"),n=this.read_image(t-1),t=new FileReader;t.onload=t=>{var e;r.src=null===(e=t.target)||void 0===e?void 0:e.result,i(null===(t=t.target)||void 0===t?void 0:t.result)},t.onerror=function(t){e(t)},t.readAsDataURL(n)}),this.view=new DataView(t),this.buffer=this.view.buffer,this.offset=0,this.header=null}parse(){}getUint8(){var t=this.view.getUint8(this.offset);return this.offset+=1,t}getUint16(){var t=this.view.getUint16(this.offset);return this.offset+=2,t}getUint32(){var t=this.view.getUint32(this.offset);return this.offset+=4,t}getStr(t){var e=ci(this.buffer.slice(this.offset,this.offset+t));return this.offset+=t,e}skip(t){this.offset+=t}setoffset(t){this.offset=t}get_record_extrasize(t,e){for(var i,r,n,o=t.length-1,s=0,a=15;0>3&2047,h=3+(7&s),l=r.size();for(let t=0;tn(this,void 0,void 0,function*(){this.load();var t=this.read_text(),t=ui.parseFromString(t,"text/html").documentElement,e=t.getElementsByTagName("img");for(let t=0;tpagebreak").filter(t=>t.trim());for(let t=0;tthis.chapterList.length&&0===t&&(e=Math.floor(9e5*Math.random())+1e5,this.chapterList.unshift({label:"Forword#"+t,id:"title"+e,href:"#title"+e,subitems:[]})),this.chapterDocList.push({title:this.chapterList[t].label,text:i[t]});return this.chapterDocList}}class gi{constructor(){this.callbacks={},this.callbacks.base={}}on(t,e){const i=this;if(void 0===t||""===t)return console.warn("wrong names"),!1;if(void 0===e)return console.warn("wrong callback"),!1;const r=this.resolveNames(t);return r.forEach(function(t){t=i.resolveName(t);i.callbacks[t.namespace]instanceof Object||(i.callbacks[t.namespace]={}),i.callbacks[t.namespace][t.value]instanceof Array||(i.callbacks[t.namespace][t.value]=[]),i.callbacks[t.namespace][t.value].push(e)}),this}off(t){const r=this;if(void 0===t||""===t)return console.warn("wrong name"),!1;const e=this.resolveNames(t);return e.forEach(function(t){var e=r.resolveName(t);if("base"!==e.namespace&&""===e.value)delete r.callbacks[e.namespace];else if("base"===e.namespace)for(const i in r.callbacks)r.callbacks[i]instanceof Object&&r.callbacks[i][e.value]instanceof Array&&(delete r.callbacks[i][e.value],0===Object.keys(r.callbacks[i]).length&&delete r.callbacks[i]);else r.callbacks[e.namespace]instanceof Object&&r.callbacks[e.namespace][e.value]instanceof Array&&(delete r.callbacks[e.namespace][e.value],0===Object.keys(r.callbacks[e.namespace]).length&&delete r.callbacks[e.namespace])}),this}trigger(t,e=[]){if(void 0===t||""===t)return console.warn("wrong name"),!1;const i=this;const r=e instanceof Array?e:[];let n=this.resolveNames(t);n=this.resolveName(n[0]),setTimeout(()=>{if("base"===n.namespace)for(const t in i.callbacks){if(i.callbacks[t]instanceof Object&&i.callbacks[t][n.value]instanceof Array)i.callbacks[t][n.value].forEach(function(t){t.apply(i,r)});else if(this.callbacks[n.namespace]instanceof Object){if(""===n.value)return console.warn("wrong name"),this;i.callbacks[n.namespace][n.value].forEach(function(t){t.apply(i,r)})}return null}},100)}resolveNames(t){let e=t;return e=e.replace(/[^a-zA-Z0-9 ,/.]/g,""),e=e.replace(/[,/]+/g," "),e=e.split(" "),e}resolveName(t){const e={};var i=t.split(".");return e.original=t,e.value=i[0],e.namespace="base",1n(this,void 0,void 0,function*(){var t=new Image;t.onload=function(){i(t.height/t.width)};let e;e="cbr"===this.format?this.zip.decompress(this.fileNameList[0]):"cbt"===this.format?this.zip[Ze.findLastIndex(this.zip,{name:this.fileNameList[0]})].buffer:yield this.zip.file(this.fileNameList[0]).async("arraybuffer"),t.src="data:"+bi[this.extension.toLowerCase()]+";base64,"+this.base64ArrayBuffer(e)}))}renderComic(){window.frames[0].document.body.innerHTML=this.bookDoc.outerHTML}renderImage(e){return n(this,void 0,void 0,function*(){if(this.extension=this.fileNameList[0].split(".").reverse()[0],!window.frames[0].document.getElementById(e+"").src){let t;t="cbr"===this.format?this.zip.decompress(this.fileNameList[e]):"cbt"===this.format?this.zip[Ze.findLastIndex(this.zip,{name:this.fileNameList[e]})].buffer:yield this.zip.file(this.fileNameList[e]).async("arraybuffer"),window.frames[0].document.getElementById(e+"")&&(window.frames[0].document.getElementById(e+"").src="data:"+bi[this.extension.toLowerCase()]+";base64,"+this.base64ArrayBuffer(t))}})}base64ArrayBuffer(t){for(var e,i="",r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=new Uint8Array(t),o=n.byteLength,t=o%3,s=o-t,a=0;a>18]+r[(258048&e)>>12]+r[(4032&e)>>6]+r[63&e];return 1==t?i+=r[(252&(e=n[s]))>>2]+r[(3&e)<<4]+"==":2==t&&(i+=r[(64512&(e=n[s]<<8|n[1+s]))>>10]+r[(1008&e)>>4]+r[(15&e)<<2]+"="),i}}const yi=(t,e)=>{0{var r=i||parseInt(s.getKookitConfig("count"))||0;r?(i=Array.from(window.frames[0].document.body.querySelectorAll("img"))[r],"scroll"!==e?window.frames[0].document.body.scrollTo(r&&i?i.offsetLeft:0,0):t.scrollTo(0,r&&i?i.offsetTop:0)):("scroll"!==e?window.frames[0].document.body:t).scrollTo(0,0)};window.e=window.eval,window.a=window.atob,t.Azw3Render=class{constructor(t,e){this.azw3Buffer=t,this.mode=e,this.chapterList=[],this.chapterDocList=[],this.bookStr="",this.element=""}renderTo(r){return n(this,void 0,void 0,function*(){return new Promise((i,t)=>n(this,void 0,void 0,function*(){if(yield f()){var e=(yield new mi(this.azw3Buffer).render()).outerHTML;this.bookStr=e,this.element=r;let t=new li(this.bookStr);this.chapterList=t.getChapter(),this.chapterDocList=t.getChapterDoc();e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),Ye(r,this.mode),ri(e,this.chapterDocList,this.element,this.mode),i()}else i()}))})}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}record(){oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},t.ComicRender=class extends gi{constructor(t,e,i,r){super(),this.mode=i,this.format=r,this.zip=e,this.dataSource=t,this.element="",this.parser="",this.chapterList=[],this.largestId=parseInt(s.getKookitConfig("count"))||0}renderTo(o,s=0){return new Promise((t,e)=>n(this,void 0,void 0,function*(){if(yield f()){this.element=o,Xe(o),this.parser=new vi(this.dataSource,this.zip,this.mode,this.element,this.format),this.chapterList=this.parser.getChapter(),this.parser.renderComic(),this.renderImage(s);var i,r=yield this.parser.getImgRatio(),n=window.frames[0].document.getElementById(s+"").clientWidth*r;let e=window.frames[0].document.getElementsByTagName("img");for(let t=0;tthis.element.clientHeight?(e[t].style.height=this.element.clientHeight+"px",e[t].style.width=this.element.clientHeight/r+"px",e[t].style.paddingLeft=(this.element.clientWidth-("single"===this.mode?0:88))/2/i-this.element.clientHeight/r/2+"px"):(e[t].style.height=n+"px",e[t].style.marginTop=this.element.clientHeight/2-n/2+"px"));Ye(o,this.mode),Qe(o,this.mode),this.trigger("rendered"),t()}else t()}))}renderImage(e){var i=e+4n(this,void 0,void 0,function*(){if(yield f()){var e=(yield new mi(this.mobiBuffer).render()).outerHTML;this.bookStr=e,this.element=r;let t=new hi(this.bookStr);this.chapterDocList=t.getChapterDoc(),this.chapterList=t.getChapter();e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),Ye(r,this.mode),ri(e,this.chapterDocList,this.element,this.mode),i()}else i()}))}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}record(){oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},t.StrRender=class{constructor(t,e){this.bookStr=t,this.mode=e,this.chapterList=[],this.chapterDocList=[],this.element=""}renderTo(r){return new Promise((i,t)=>n(this,void 0,void 0,function*(){if(yield f()){this.element=r;let t=new li(this.bookStr);this.chapterList=t.getChapter(),this.chapterDocList=t.getChapterDoc();var e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),ri(e,this.chapterDocList,this.element,this.mode),Ye(r,this.mode),i()}else i()}))}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}record(){oi(this.element,this.mode)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},t.TxtRender=class extends gi{constructor(t,e,i="utf-8"){super(),this.txtBuffer=t,this.encoding=i,this.mode=e,this.chapterList=[],this.chapterDocList=[],this.bookStr="",this.element=""}renderTo(r){return new Promise((i,t)=>n(this,void 0,void 0,function*(){if(yield f()){var e=(t=>{let e="",i=!1;var r;for(r of t.split("\n"))r.trim()&&(a(r.trim(),i)?((r.trim().startsWith("第")||r.trim().startsWith("Chapter")||r.trim().startsWith("CHAPTER"))&&(i=!0),e+=`

${r}

`):e+=`

${r}

`);return e})(new TextDecoder(this.encoding).decode(this.txtBuffer));this.bookStr=e,this.element=r;let t=new pi(this.bookStr);this.chapterList=t.getChapter(),this.chapterDocList=t.getChapterDoc();e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),Ye(r,this.mode),ri(e,this.chapterDocList,this.element,this.mode),this.trigger("rendered"),i()}else i()}))}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}record(){oi(this.element,this.mode)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},Object.defineProperty(t,"__esModule",{value:!0})}); + column-width: ${(t.offsetWidth-88)/("double"===e?2:1)}px;`)};let ti=!1;const ei=(t,e,i,r,n)=>{0{if(Math.abs(t.scrollHeight-t.scrollTop-t.clientHeight)<10&&Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10)si(t,e,i,r)})(t,e,i,r),window.frames[0].document.body.scrollLeft+=t.offsetWidth+88)},ii=(t,e,i,r)=>{var n=s.getKookitConfig("chapterTitle"),o=Ze.findIndex(e,{label:n});0!==o&&-1!==o&&n&&(s.setKookitConfig("chapterTitle",e[o-1].label),s.setKookitConfig("text","prevChapter"),ri(e[o-1].label,i,t,r))},ri=(t="",e,i,r)=>{window.frames[0].document.body.innerHTML="";let n=Ze.findIndex(e,{title:t});n=-1===n?0:n,window.frames[0].document.body.innerHTML=e[n].text,s.setKookitConfig("chapterTitle",e[n].title),Qe(i,r),(()=>{var r,t=document.getElementsByTagName("iframe")[0];if(t){let i=t.contentDocument;if(i){let t,e;for(r of i.getElementsByTagName("img")){var n=r.parentElement;r.width&&r.height?r.height/r.width>n.clientHeight/n.clientWidth?(t=n.clientHeight,e=t*r.width/r.height):(e=n.clientWidth,t=e*r.height/r.width):e=n.clientWidth,r.setAttribute("style",`max-width: ${e}px;max-height:${t}px`)}}}})(),ni(i,r)},ni=(e,i,r="",n="0")=>{let o=r||s.getKookitConfig("text")||"";if(o){let t=Array.from(window.frames[0].document.body.querySelectorAll("h1,h2,h3,h4,p"));r=t.filter((t,e)=>t.innerText===o&&e===parseInt(s.getKookitConfig("count")||n))[0];"scroll"!==i?window.frames[0].document.body.scrollTo(o&&r?r.offsetLeft:"prevChapter"===o?window.frames[0].document.body.scrollWidth:0,0):e.scrollTo(0,o&&r?r.offsetTop:0)}else("scroll"!==i?window.frames[0].document.body:e).scrollTo(0,0)},oi=(i,r)=>{if(!ti){var t=Array.from(window.frames[0].document.body.querySelectorAll("h1,h2,h3,h4,p,img")).filter(t=>ai(i,t,r)&&t.innerText.trim()),n=t["scroll"===r?Math.floor(t.length/2):0];let e=0;var o=Array.from(window.frames[0].document.body.querySelectorAll("h1,h2,h3,h4,p,img"));for(let t=0;t{ti=!1},100)}},si=(t,e,i,r)=>{var n=s.getKookitConfig("chapterTitle"),n=Ze.findIndex(e,{label:n});n!==e.length-1&&-1!==n&&(s.setKookitConfig("chapterTitle",e[n+1].label),s.setKookitConfig("text",""),ri(e[n+1].label,i,t,r))},ai=(t,e,i)=>{var r=!1,n=e.getBoundingClientRect();return"scroll"!==i&&(e.innerText.trim()||e.id&&"IMG"===e.tagName)?r=0<=(i=n.left)&&i<=t.offsetWidth:(e.innerText.trim()||e.id&&"IMG"===e.tagName)&&(r=(n=n.top)>=t.scrollTop&&n<=t.scrollTop+t.offsetHeight),r};class hi{constructor(t){this.bookStr=t,this.chapterList=[],this.chapterDocList=[]}getChapterDoc(){var e=-1")?this.bookStr.split(""):this.bookStr.split("
");let n=[],o=[],i="";for(let t=0;t{var e=0(!e&&(t.innerText.trim().startsWith("第")&&i(t.innerText.trim())||t.innerText.trim().startsWith("Chapter")||t.innerText.trim().startsWith("CHAPTER"))&&(e=!0),a(t.innerText.trim(),e))))}getChapterDoc(){if(0 ");for(let t=0;tthis.chapterList.length&&0===t&&(e=Math.floor(9e5*Math.random())+1e5,this.chapterList.unshift({label:"Forword#"+t,id:"title"+e,href:"#title"+e,subitems:[]})),this.chapterDocList.push({title:this.chapterList[t].label,text:i[t]});return this.chapterDocList}}class ci{constructor(){this.callbacks={},this.callbacks.base={}}on(t,e){const i=this;if(void 0===t||""===t)return console.warn("wrong names"),!1;if(void 0===e)return console.warn("wrong callback"),!1;const r=this.resolveNames(t);return r.forEach(function(t){t=i.resolveName(t);i.callbacks[t.namespace]instanceof Object||(i.callbacks[t.namespace]={}),i.callbacks[t.namespace][t.value]instanceof Array||(i.callbacks[t.namespace][t.value]=[]),i.callbacks[t.namespace][t.value].push(e)}),this}off(t){const r=this;if(void 0===t||""===t)return console.warn("wrong name"),!1;const e=this.resolveNames(t);return e.forEach(function(t){var e=r.resolveName(t);if("base"!==e.namespace&&""===e.value)delete r.callbacks[e.namespace];else if("base"===e.namespace)for(const i in r.callbacks)r.callbacks[i]instanceof Object&&r.callbacks[i][e.value]instanceof Array&&(delete r.callbacks[i][e.value],0===Object.keys(r.callbacks[i]).length&&delete r.callbacks[i]);else r.callbacks[e.namespace]instanceof Object&&r.callbacks[e.namespace][e.value]instanceof Array&&(delete r.callbacks[e.namespace][e.value],0===Object.keys(r.callbacks[e.namespace]).length&&delete r.callbacks[e.namespace])}),this}trigger(t,e=[]){if(void 0===t||""===t)return console.warn("wrong name"),!1;const i=this;const r=e instanceof Array?e:[];let n=this.resolveNames(t);n=this.resolveName(n[0]),setTimeout(()=>{if("base"===n.namespace)for(const t in i.callbacks){if(i.callbacks[t]instanceof Object&&i.callbacks[t][n.value]instanceof Array)i.callbacks[t][n.value].forEach(function(t){t.apply(i,r)});else if(this.callbacks[n.namespace]instanceof Object){if(""===n.value)return console.warn("wrong name"),this;i.callbacks[n.namespace][n.value].forEach(function(t){t.apply(i,r)})}return null}},100)}resolveNames(t){let e=t;return e=e.replace(/[^a-zA-Z0-9 ,/.]/g,""),e=e.replace(/[,/]+/g," "),e=e.split(" "),e}resolveName(t){const e={};var i=t.split(".");return e.original=t,e.value=i[0],e.namespace="base",1=this.capacity)&&(this.buffer[this.size]=t,this.size+=1,!0)}full(){return this.size===this.capacity}get(t){return this.buffer[t]}}class pi{constructor(t){this.render_image=(o,s)=>new Promise((i,e)=>{var r=o[s],t=+r.getAttribute("recindex"),n=this.read_image(t-1),t=new FileReader;t.onload=t=>{var e;r.src=null===(e=t.target)||void 0===e?void 0:e.result,i(null===(t=t.target)||void 0===t?void 0:t.result)},t.onerror=function(t){e(t)},t.readAsDataURL(n)}),this.view=new DataView(t),this.buffer=this.view.buffer,this.offset=0,this.header=null}parse(){}getUint8(){var t=this.view.getUint8(this.offset);return this.offset+=1,t}getUint16(){var t=this.view.getUint16(this.offset);return this.offset+=2,t}getUint32(){var t=this.view.getUint32(this.offset);return this.offset+=4,t}getStr(t){var e=ui(this.buffer.slice(this.offset,this.offset+t));return this.offset+=t,e}skip(t){this.offset+=t}setoffset(t){this.offset=t}get_record_extrasize(t,e){for(var i,r,n,o=t.length-1,s=0,a=15;0>3&2047,h=3+(7&s),l=r.size();for(let t=0;tn(this,void 0,void 0,function*(){this.load();var t=this.read_text(),t=fi.parseFromString(t,"text/html").documentElement,e=t.getElementsByTagName("img");for(let t=0;tpagebreak").filter(t=>t.trim());for(let t=0;tthis.chapterList.length&&0===t&&(e=Math.floor(9e5*Math.random())+1e5,this.chapterList.unshift({label:"Forword#"+t,id:"title"+e,href:"#title"+e,subitems:[]})),this.chapterDocList.push({title:this.chapterList[t].label,text:i[t]});return this.chapterDocList}}const bi={svg:"image/svg+xml",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",zip:"application/zip",rar:"application/x-rar-compressed","7z":"application/x-7z-compressed",tar:"application/x-tar",html:"text/html",htm:"text/html",xml:"text/xml",xhtml:"application/xhtml+xml"};class vi{constructor(t,e,i,r,n){this.fileNameList=t,this.zip=e,this.bookStr="",this.format=n,this.bookDoc=null,this.mode=i,this.chapterList=[],this.extension=this.fileNameList[0].split(".").reverse()[0],this.element=r,this.getBookStr()}getBookStr(){let i=document.createElement("div");var r="single"===this.mode?1:2;for(let e=0;en(this,void 0,void 0,function*(){var t=new Image;t.onload=function(){i(t.height/t.width)};let e;e="cbr"===this.format?this.zip.decompress(this.fileNameList[0]):"cbt"===this.format?this.zip[Ze.findLastIndex(this.zip,{name:this.fileNameList[0]})].buffer:yield this.zip.file(this.fileNameList[0]).async("arraybuffer"),t.src="data:"+bi[this.extension.toLowerCase()]+";base64,"+this.base64ArrayBuffer(e)}))}renderComic(){window.frames[0].document.body.innerHTML=this.bookDoc.outerHTML}renderImage(e){return n(this,void 0,void 0,function*(){if(this.extension=this.fileNameList[0].split(".").reverse()[0],!window.frames[0].document.getElementById(e+"").src){let t;t="cbr"===this.format?this.zip.decompress(this.fileNameList[e]):"cbt"===this.format?this.zip[Ze.findLastIndex(this.zip,{name:this.fileNameList[e]})].buffer:yield this.zip.file(this.fileNameList[e]).async("arraybuffer"),window.frames[0].document.getElementById(e+"")&&(window.frames[0].document.getElementById(e+"").src="data:"+bi[this.extension.toLowerCase()]+";base64,"+this.base64ArrayBuffer(t))}})}base64ArrayBuffer(t){for(var e,i="",r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=new Uint8Array(t),o=n.byteLength,t=o%3,s=o-t,a=0;a>18]+r[(258048&e)>>12]+r[(4032&e)>>6]+r[63&e];return 1==t?i+=r[(252&(e=n[s]))>>2]+r[(3&e)<<4]+"==":2==t&&(i+=r[(64512&(e=n[s]<<8|n[1+s]))>>10]+r[(1008&e)>>4]+r[(15&e)<<2]+"="),i}}const yi=(t,e)=>{0{var r=i||parseInt(s.getKookitConfig("count"))||0;r?(i=Array.from(window.frames[0].document.body.querySelectorAll("img"))[r],"scroll"!==e?window.frames[0].document.body.scrollTo(r&&i?i.offsetLeft:0,0):t.scrollTo(0,r&&i?i.offsetTop:0)):("scroll"!==e?window.frames[0].document.body:t).scrollTo(0,0)};window.e=window.eval,window.a=window.atob,t.Azw3Render=class extends ci{constructor(t,e){super(),this.azw3Buffer=t,this.mode=e,this.chapterList=[],this.chapterDocList=[],this.bookStr="",this.element=""}renderTo(r){return n(this,void 0,void 0,function*(){return new Promise((i,t)=>n(this,void 0,void 0,function*(){if(yield f()){var e=(yield new pi(this.azw3Buffer).render()).outerHTML;this.bookStr=e,this.element=r;let t=new li(this.bookStr);this.chapterList=t.getChapter(),this.chapterDocList=t.getChapterDoc();e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),Ye(r,this.mode),ri(e,this.chapterDocList,this.element,this.mode),this.trigger("rendered"),i()}else i()}))})}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}record(){oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},t.ComicRender=class extends ci{constructor(t,e,i,r){super(),this.mode=i,this.format=r,this.zip=e,this.dataSource=t,this.element="",this.parser="",this.chapterList=[],this.largestId=parseInt(s.getKookitConfig("count"))||0}renderTo(o,s=0){return new Promise((t,e)=>n(this,void 0,void 0,function*(){if(yield f()){this.element=o,Xe(o),this.parser=new vi(this.dataSource,this.zip,this.mode,this.element,this.format),this.chapterList=this.parser.getChapter(),this.parser.renderComic(),this.renderImage(s);var i,r=yield this.parser.getImgRatio(),n=window.frames[0].document.getElementById(s+"").clientWidth*r;let e=window.frames[0].document.getElementsByTagName("img");for(let t=0;tthis.element.clientHeight?(e[t].style.height=this.element.clientHeight+"px",e[t].style.width=this.element.clientHeight/r+"px",e[t].style.paddingLeft=(this.element.clientWidth-("single"===this.mode?0:88))/2/i-this.element.clientHeight/r/2+"px"):(e[t].style.height=n+"px",e[t].style.marginTop=this.element.clientHeight/2-n/2+"px"));Ye(o,this.mode),Qe(o,this.mode),this.trigger("rendered"),t()}else t()}))}renderImage(e){var i=e+4n(this,void 0,void 0,function*(){if(yield f()){var e=(yield new pi(this.mobiBuffer).render()).outerHTML;this.bookStr=e,this.element=r;let t=new hi(this.bookStr);this.chapterDocList=t.getChapterDoc(),this.chapterList=t.getChapter();e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),Ye(r,this.mode),ri(e,this.chapterDocList,this.element,this.mode),this.trigger("rendered"),i()}else i()}))}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}record(){oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},t.StrRender=class extends ci{constructor(t,e){super(),this.bookStr=t,this.mode=e,this.chapterList=[],this.chapterDocList=[],this.element=""}renderTo(r){return new Promise((i,t)=>n(this,void 0,void 0,function*(){if(yield f()){this.element=r;let t=new li(this.bookStr);this.chapterList=t.getChapter(),this.chapterDocList=t.getChapterDoc();var e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),ri(e,this.chapterDocList,this.element,this.mode),Ye(r,this.mode),this.trigger("rendered"),i()}else i()}))}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}record(){oi(this.element,this.mode)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},t.TxtRender=class extends ci{constructor(t,e,i="utf-8"){super(),this.txtBuffer=t,this.encoding=i,this.mode=e,this.chapterList=[],this.chapterDocList=[],this.bookStr="",this.element=""}renderTo(r){return new Promise((i,t)=>n(this,void 0,void 0,function*(){if(yield f()){var e=(t=>{let e="",i=!1;var r;for(r of t.split("\n"))r.trim()&&(a(r.trim(),i)?((r.trim().startsWith("第")||r.trim().startsWith("Chapter")||r.trim().startsWith("CHAPTER"))&&(i=!0),e+=`

${r}

`):e+=`

${r}

`);return e})(new TextDecoder(this.encoding).decode(this.txtBuffer));this.bookStr=e,this.element=r;let t=new gi(this.bookStr);this.chapterList=t.getChapter(),this.chapterDocList=t.getChapterDoc();e=s.getKookitConfig("chapterTitle")||this.chapterDocList[0].title;Xe(r),Ye(r,this.mode),ri(e,this.chapterDocList,this.element,this.mode),this.trigger("rendered"),i()}else i()}))}getChapter(){return this.chapterList}goToChapter(t){ri(t,this.chapterDocList,this.element,this.mode)}goToPosition(t,e,i){ri(e,this.chapterDocList,this.element,this.mode),ni(this.element,this.mode,t,i)}record(){oi(this.element,this.mode)}prev(){"scroll"===this.mode||0===window.frames[0].document.body.scrollLeft?ii(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,1),oi(this.element,this.mode)}next(){Math.abs(window.frames[0].document.body.scrollWidth-window.frames[0].document.body.scrollLeft-window.frames[0].document.body.clientWidth)<10||"scroll"===this.mode?si(this.element,this.chapterList,this.chapterDocList,this.mode):ei(this.element,this.chapterList,this.chapterDocList,this.mode,-1),oi(this.element,this.mode)}getPosition(){return{text:s.getKookitConfig("text"),chapterTitle:s.getKookitConfig("chapterTitle"),count:s.getKookitConfig("count")}}setStyle(t){window.frames[0].document.body.setAttribute("style",t+window.frames[0].document.body.getAttribute("style"))}},Object.defineProperty(t,"__esModule",{value:!0})});