The response has been limited to 50k tokens of the smallest files in the repo. You can remove this limitation by removing the max tokens filter.
├── .dockerignore
├── .github
    ├── FUNDING.yml
    ├── ISSUE_TEMPLATE
    │   ├── 希望作者支持某个功能.md
    │   └── 我要反馈问题.md
    └── workflows
    │   ├── build.yml
    │   └── ci.yml
├── .gitignore
├── .style.yapf
├── .vscode
    └── settings.json
├── Dockerfile
├── LICENSE
├── Makefile
├── README.md
├── app
    ├── .editorconfig
    ├── .gitignore
    ├── Makefile
    ├── README.md
    ├── nuxt.config.js
    ├── package-lock.json
    ├── package.json
    ├── public
    │   ├── logo
    │   │   ├── favicon.ico
    │   │   └── link.png
    │   ├── robots.txt
    │   └── static
    │   │   ├── README
    │   │   ├── candle-reader
    │   │       ├── candle-reader.es.js
    │   │       ├── candle-reader.umd.js
    │   │       ├── css
    │   │       │   └── themes.css
    │   │       ├── favicon.ico
    │   │       ├── js
    │   │       │   └── epub-v0.3.88.js
    │   │       └── style.css
    │   │   ├── epubreader
    │   │       ├── README
    │   │       ├── css
    │   │       │   ├── common.css
    │   │       │   ├── main.css
    │   │       │   ├── notedlg.css
    │   │       │   ├── sidebar.css
    │   │       │   └── toolbar.css
    │   │       ├── font
    │   │       │   ├── fontello.eot
    │   │       │   ├── fontello.svg
    │   │       │   ├── fontello.ttf
    │   │       │   └── fontello.woff
    │   │       ├── img
    │   │       │   ├── annotations.svg
    │   │       │   ├── bookmark.svg
    │   │       │   ├── bookmarked.svg
    │   │       │   ├── bookmarks.svg
    │   │       │   ├── favicon.png
    │   │       │   ├── favicon.svg
    │   │       │   ├── info.svg
    │   │       │   ├── loader.gif
    │   │       │   ├── menu.svg
    │   │       │   ├── next.svg
    │   │       │   ├── open-book.svg
    │   │       │   ├── prev.svg
    │   │       │   ├── resize-full.svg
    │   │       │   ├── resize-small.svg
    │   │       │   ├── search-clear.svg
    │   │       │   ├── search.svg
    │   │       │   ├── settings.svg
    │   │       │   ├── toc.svg
    │   │       │   └── upload.svg
    │   │       ├── index.html
    │   │       └── js
    │   │       │   ├── epubreader.js
    │   │       │   ├── epubreader.js.map
    │   │       │   ├── epubreader.min.js
    │   │       │   ├── epubreader.min.js.map
    │   │       │   └── libs
    │   │       │       ├── epub.min.js
    │   │       │       ├── jszip.min.js
    │   │       │       ├── jszip.min.js.LICENSE.txt
    │   │       │       ├── md5.min.js
    │   │       │       └── md5.min.js.LICENSE.txt
    │   │   ├── js
    │   │       └── jquery-1.11.1.min.js
    │   │   ├── pdfjs
    │   │       ├── LICENSE
    │   │       ├── VERSION
    │   │       ├── build
    │   │       │   ├── pdf.js
    │   │       │   ├── pdf.js.map
    │   │       │   ├── pdf.sandbox.js
    │   │       │   ├── pdf.sandbox.js.map
    │   │       │   ├── pdf.worker.js
    │   │       │   └── pdf.worker.js.map
    │   │       └── web
    │   │       │   ├── cmaps
    │   │       │       ├── 78-EUC-H.bcmap
    │   │       │       ├── 78-EUC-V.bcmap
    │   │       │       ├── 78-H.bcmap
    │   │       │       ├── 78-RKSJ-H.bcmap
    │   │       │       ├── 78-RKSJ-V.bcmap
    │   │       │       ├── 78-V.bcmap
    │   │       │       ├── 78ms-RKSJ-H.bcmap
    │   │       │       ├── 78ms-RKSJ-V.bcmap
    │   │       │       ├── 83pv-RKSJ-H.bcmap
    │   │       │       ├── 90ms-RKSJ-H.bcmap
    │   │       │       ├── 90ms-RKSJ-V.bcmap
    │   │       │       ├── 90msp-RKSJ-H.bcmap
    │   │       │       ├── 90msp-RKSJ-V.bcmap
    │   │       │       ├── 90pv-RKSJ-H.bcmap
    │   │       │       ├── 90pv-RKSJ-V.bcmap
    │   │       │       ├── Add-H.bcmap
    │   │       │       ├── Add-RKSJ-H.bcmap
    │   │       │       ├── Add-RKSJ-V.bcmap
    │   │       │       ├── Add-V.bcmap
    │   │       │       ├── Adobe-CNS1-0.bcmap
    │   │       │       ├── Adobe-CNS1-1.bcmap
    │   │       │       ├── Adobe-CNS1-2.bcmap
    │   │       │       ├── Adobe-CNS1-3.bcmap
    │   │       │       ├── Adobe-CNS1-4.bcmap
    │   │       │       ├── Adobe-CNS1-5.bcmap
    │   │       │       ├── Adobe-CNS1-6.bcmap
    │   │       │       ├── Adobe-CNS1-UCS2.bcmap
    │   │       │       ├── Adobe-GB1-0.bcmap
    │   │       │       ├── Adobe-GB1-1.bcmap
    │   │       │       ├── Adobe-GB1-2.bcmap
    │   │       │       ├── Adobe-GB1-3.bcmap
    │   │       │       ├── Adobe-GB1-4.bcmap
    │   │       │       ├── Adobe-GB1-5.bcmap
    │   │       │       ├── Adobe-GB1-UCS2.bcmap
    │   │       │       ├── Adobe-Japan1-0.bcmap
    │   │       │       ├── Adobe-Japan1-1.bcmap
    │   │       │       ├── Adobe-Japan1-2.bcmap
    │   │       │       ├── Adobe-Japan1-3.bcmap
    │   │       │       ├── Adobe-Japan1-4.bcmap
    │   │       │       ├── Adobe-Japan1-5.bcmap
    │   │       │       ├── Adobe-Japan1-6.bcmap
    │   │       │       ├── Adobe-Japan1-UCS2.bcmap
    │   │       │       ├── Adobe-Korea1-0.bcmap
    │   │       │       ├── Adobe-Korea1-1.bcmap
    │   │       │       ├── Adobe-Korea1-2.bcmap
    │   │       │       ├── Adobe-Korea1-UCS2.bcmap
    │   │       │       ├── B5-H.bcmap
    │   │       │       ├── B5-V.bcmap
    │   │       │       ├── B5pc-H.bcmap
    │   │       │       ├── B5pc-V.bcmap
    │   │       │       ├── CNS-EUC-H.bcmap
    │   │       │       ├── CNS-EUC-V.bcmap
    │   │       │       ├── CNS1-H.bcmap
    │   │       │       ├── CNS1-V.bcmap
    │   │       │       ├── CNS2-H.bcmap
    │   │       │       ├── CNS2-V.bcmap
    │   │       │       ├── ETHK-B5-H.bcmap
    │   │       │       ├── ETHK-B5-V.bcmap
    │   │       │       ├── ETen-B5-H.bcmap
    │   │       │       ├── ETen-B5-V.bcmap
    │   │       │       ├── ETenms-B5-H.bcmap
    │   │       │       ├── ETenms-B5-V.bcmap
    │   │       │       ├── EUC-H.bcmap
    │   │       │       ├── EUC-V.bcmap
    │   │       │       ├── Ext-H.bcmap
    │   │       │       ├── Ext-RKSJ-H.bcmap
    │   │       │       ├── Ext-RKSJ-V.bcmap
    │   │       │       ├── Ext-V.bcmap
    │   │       │       ├── GB-EUC-H.bcmap
    │   │       │       ├── GB-EUC-V.bcmap
    │   │       │       ├── GB-H.bcmap
    │   │       │       ├── GB-V.bcmap
    │   │       │       ├── GBK-EUC-H.bcmap
    │   │       │       ├── GBK-EUC-V.bcmap
    │   │       │       ├── GBK2K-H.bcmap
    │   │       │       ├── GBK2K-V.bcmap
    │   │       │       ├── GBKp-EUC-H.bcmap
    │   │       │       ├── GBKp-EUC-V.bcmap
    │   │       │       ├── GBT-EUC-H.bcmap
    │   │       │       ├── GBT-EUC-V.bcmap
    │   │       │       ├── GBT-H.bcmap
    │   │       │       ├── GBT-V.bcmap
    │   │       │       ├── GBTpc-EUC-H.bcmap
    │   │       │       ├── GBTpc-EUC-V.bcmap
    │   │       │       ├── GBpc-EUC-H.bcmap
    │   │       │       ├── GBpc-EUC-V.bcmap
    │   │       │       ├── H.bcmap
    │   │       │       ├── HKdla-B5-H.bcmap
    │   │       │       ├── HKdla-B5-V.bcmap
    │   │       │       ├── HKdlb-B5-H.bcmap
    │   │       │       ├── HKdlb-B5-V.bcmap
    │   │       │       ├── HKgccs-B5-H.bcmap
    │   │       │       ├── HKgccs-B5-V.bcmap
    │   │       │       ├── HKm314-B5-H.bcmap
    │   │       │       ├── HKm314-B5-V.bcmap
    │   │       │       ├── HKm471-B5-H.bcmap
    │   │       │       ├── HKm471-B5-V.bcmap
    │   │       │       ├── HKscs-B5-H.bcmap
    │   │       │       ├── HKscs-B5-V.bcmap
    │   │       │       ├── Hankaku.bcmap
    │   │       │       ├── Hiragana.bcmap
    │   │       │       ├── KSC-EUC-H.bcmap
    │   │       │       ├── KSC-EUC-V.bcmap
    │   │       │       ├── KSC-H.bcmap
    │   │       │       ├── KSC-Johab-H.bcmap
    │   │       │       ├── KSC-Johab-V.bcmap
    │   │       │       ├── KSC-V.bcmap
    │   │       │       ├── KSCms-UHC-H.bcmap
    │   │       │       ├── KSCms-UHC-HW-H.bcmap
    │   │       │       ├── KSCms-UHC-HW-V.bcmap
    │   │       │       ├── KSCms-UHC-V.bcmap
    │   │       │       ├── KSCpc-EUC-H.bcmap
    │   │       │       ├── KSCpc-EUC-V.bcmap
    │   │       │       ├── Katakana.bcmap
    │   │       │       ├── LICENSE
    │   │       │       ├── NWP-H.bcmap
    │   │       │       ├── NWP-V.bcmap
    │   │       │       ├── RKSJ-H.bcmap
    │   │       │       ├── RKSJ-V.bcmap
    │   │       │       ├── Roman.bcmap
    │   │       │       ├── UniCNS-UCS2-H.bcmap
    │   │       │       ├── UniCNS-UCS2-V.bcmap
    │   │       │       ├── UniCNS-UTF16-H.bcmap
    │   │       │       ├── UniCNS-UTF16-V.bcmap
    │   │       │       ├── UniCNS-UTF32-H.bcmap
    │   │       │       ├── UniCNS-UTF32-V.bcmap
    │   │       │       ├── UniCNS-UTF8-H.bcmap
    │   │       │       ├── UniCNS-UTF8-V.bcmap
    │   │       │       ├── UniGB-UCS2-H.bcmap
    │   │       │       ├── UniGB-UCS2-V.bcmap
    │   │       │       ├── UniGB-UTF16-H.bcmap
    │   │       │       ├── UniGB-UTF16-V.bcmap
    │   │       │       ├── UniGB-UTF32-H.bcmap
    │   │       │       ├── UniGB-UTF32-V.bcmap
    │   │       │       ├── UniGB-UTF8-H.bcmap
    │   │       │       ├── UniGB-UTF8-V.bcmap
    │   │       │       ├── UniJIS-UCS2-H.bcmap
    │   │       │       ├── UniJIS-UCS2-HW-H.bcmap
    │   │       │       ├── UniJIS-UCS2-HW-V.bcmap
    │   │       │       ├── UniJIS-UCS2-V.bcmap
    │   │       │       ├── UniJIS-UTF16-H.bcmap
    │   │       │       ├── UniJIS-UTF16-V.bcmap
    │   │       │       ├── UniJIS-UTF32-H.bcmap
    │   │       │       ├── UniJIS-UTF32-V.bcmap
    │   │       │       ├── UniJIS-UTF8-H.bcmap
    │   │       │       ├── UniJIS-UTF8-V.bcmap
    │   │       │       ├── UniJIS2004-UTF16-H.bcmap
    │   │       │       ├── UniJIS2004-UTF16-V.bcmap
    │   │       │       ├── UniJIS2004-UTF32-H.bcmap
    │   │       │       ├── UniJIS2004-UTF32-V.bcmap
    │   │       │       ├── UniJIS2004-UTF8-H.bcmap
    │   │       │       ├── UniJIS2004-UTF8-V.bcmap
    │   │       │       ├── UniJISPro-UCS2-HW-V.bcmap
    │   │       │       ├── UniJISPro-UCS2-V.bcmap
    │   │       │       ├── UniJISPro-UTF8-V.bcmap
    │   │       │       ├── UniJISX0213-UTF32-H.bcmap
    │   │       │       ├── UniJISX0213-UTF32-V.bcmap
    │   │       │       ├── UniJISX02132004-UTF32-H.bcmap
    │   │       │       ├── UniJISX02132004-UTF32-V.bcmap
    │   │       │       ├── UniKS-UCS2-H.bcmap
    │   │       │       ├── UniKS-UCS2-V.bcmap
    │   │       │       ├── UniKS-UTF16-H.bcmap
    │   │       │       ├── UniKS-UTF16-V.bcmap
    │   │       │       ├── UniKS-UTF32-H.bcmap
    │   │       │       ├── UniKS-UTF32-V.bcmap
    │   │       │       ├── UniKS-UTF8-H.bcmap
    │   │       │       ├── UniKS-UTF8-V.bcmap
    │   │       │       ├── V.bcmap
    │   │       │       └── WP-Symbol.bcmap
    │   │       │   ├── compressed.tracemonkey-pldi-09.pdf
    │   │       │   ├── debugger.css
    │   │       │   ├── debugger.js
    │   │       │   ├── images
    │   │       │       ├── annotation-check.svg
    │   │       │       ├── annotation-comment.svg
    │   │       │       ├── annotation-help.svg
    │   │       │       ├── annotation-insert.svg
    │   │       │       ├── annotation-key.svg
    │   │       │       ├── annotation-newparagraph.svg
    │   │       │       ├── annotation-noicon.svg
    │   │       │       ├── annotation-note.svg
    │   │       │       ├── annotation-paperclip.svg
    │   │       │       ├── annotation-paragraph.svg
    │   │       │       ├── annotation-pushpin.svg
    │   │       │       ├── cursor-editorFreeText.svg
    │   │       │       ├── cursor-editorInk.svg
    │   │       │       ├── findbarButton-next.svg
    │   │       │       ├── findbarButton-previous.svg
    │   │       │       ├── loading-dark.svg
    │   │       │       ├── loading-icon.gif
    │   │       │       ├── loading.svg
    │   │       │       ├── secondaryToolbarButton-documentProperties.svg
    │   │       │       ├── secondaryToolbarButton-firstPage.svg
    │   │       │       ├── secondaryToolbarButton-handTool.svg
    │   │       │       ├── secondaryToolbarButton-lastPage.svg
    │   │       │       ├── secondaryToolbarButton-rotateCcw.svg
    │   │       │       ├── secondaryToolbarButton-rotateCw.svg
    │   │       │       ├── secondaryToolbarButton-scrollHorizontal.svg
    │   │       │       ├── secondaryToolbarButton-scrollPage.svg
    │   │       │       ├── secondaryToolbarButton-scrollVertical.svg
    │   │       │       ├── secondaryToolbarButton-scrollWrapped.svg
    │   │       │       ├── secondaryToolbarButton-selectTool.svg
    │   │       │       ├── secondaryToolbarButton-spreadEven.svg
    │   │       │       ├── secondaryToolbarButton-spreadNone.svg
    │   │       │       ├── secondaryToolbarButton-spreadOdd.svg
    │   │       │       ├── toolbarButton-bookmark.svg
    │   │       │       ├── toolbarButton-currentOutlineItem.svg
    │   │       │       ├── toolbarButton-download.svg
    │   │       │       ├── toolbarButton-editorFreeText.svg
    │   │       │       ├── toolbarButton-editorInk.svg
    │   │       │       ├── toolbarButton-menuArrow.svg
    │   │       │       ├── toolbarButton-openFile.svg
    │   │       │       ├── toolbarButton-pageDown.svg
    │   │       │       ├── toolbarButton-pageUp.svg
    │   │       │       ├── toolbarButton-presentationMode.svg
    │   │       │       ├── toolbarButton-print.svg
    │   │       │       ├── toolbarButton-search.svg
    │   │       │       ├── toolbarButton-secondaryToolbarToggle.svg
    │   │       │       ├── toolbarButton-sidebarToggle.svg
    │   │       │       ├── toolbarButton-viewAttachments.svg
    │   │       │       ├── toolbarButton-viewLayers.svg
    │   │       │       ├── toolbarButton-viewOutline.svg
    │   │       │       ├── toolbarButton-viewThumbnail.svg
    │   │       │       ├── toolbarButton-zoomIn.svg
    │   │       │       ├── toolbarButton-zoomOut.svg
    │   │       │       ├── treeitem-collapsed.svg
    │   │       │       └── treeitem-expanded.svg
    │   │       │   ├── locale
    │   │       │       ├── ach
    │   │       │       │   └── viewer.properties
    │   │       │       ├── af
    │   │       │       │   └── viewer.properties
    │   │       │       ├── an
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ar
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ast
    │   │       │       │   └── viewer.properties
    │   │       │       ├── az
    │   │       │       │   └── viewer.properties
    │   │       │       ├── be
    │   │       │       │   └── viewer.properties
    │   │       │       ├── bg
    │   │       │       │   └── viewer.properties
    │   │       │       ├── bn
    │   │       │       │   └── viewer.properties
    │   │       │       ├── bo
    │   │       │       │   └── viewer.properties
    │   │       │       ├── br
    │   │       │       │   └── viewer.properties
    │   │       │       ├── brx
    │   │       │       │   └── viewer.properties
    │   │       │       ├── bs
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ca
    │   │       │       │   └── viewer.properties
    │   │       │       ├── cak
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ckb
    │   │       │       │   └── viewer.properties
    │   │       │       ├── cs
    │   │       │       │   └── viewer.properties
    │   │       │       ├── cy
    │   │       │       │   └── viewer.properties
    │   │       │       ├── da
    │   │       │       │   └── viewer.properties
    │   │       │       ├── de
    │   │       │       │   └── viewer.properties
    │   │       │       ├── dsb
    │   │       │       │   └── viewer.properties
    │   │       │       ├── el
    │   │       │       │   └── viewer.properties
    │   │       │       ├── en-CA
    │   │       │       │   └── viewer.properties
    │   │       │       ├── en-GB
    │   │       │       │   └── viewer.properties
    │   │       │       ├── en-US
    │   │       │       │   └── viewer.properties
    │   │       │       ├── eo
    │   │       │       │   └── viewer.properties
    │   │       │       ├── es-AR
    │   │       │       │   └── viewer.properties
    │   │       │       ├── es-CL
    │   │       │       │   └── viewer.properties
    │   │       │       ├── es-ES
    │   │       │       │   └── viewer.properties
    │   │       │       ├── es-MX
    │   │       │       │   └── viewer.properties
    │   │       │       ├── et
    │   │       │       │   └── viewer.properties
    │   │       │       ├── eu
    │   │       │       │   └── viewer.properties
    │   │       │       ├── fa
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ff
    │   │       │       │   └── viewer.properties
    │   │       │       ├── fi
    │   │       │       │   └── viewer.properties
    │   │       │       ├── fr
    │   │       │       │   └── viewer.properties
    │   │       │       ├── fur
    │   │       │       │   └── viewer.properties
    │   │       │       ├── fy-NL
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ga-IE
    │   │       │       │   └── viewer.properties
    │   │       │       ├── gd
    │   │       │       │   └── viewer.properties
    │   │       │       ├── gl
    │   │       │       │   └── viewer.properties
    │   │       │       ├── gn
    │   │       │       │   └── viewer.properties
    │   │       │       ├── gu-IN
    │   │       │       │   └── viewer.properties
    │   │       │       ├── he
    │   │       │       │   └── viewer.properties
    │   │       │       ├── hi-IN
    │   │       │       │   └── viewer.properties
    │   │       │       ├── hr
    │   │       │       │   └── viewer.properties
    │   │       │       ├── hsb
    │   │       │       │   └── viewer.properties
    │   │       │       ├── hu
    │   │       │       │   └── viewer.properties
    │   │       │       ├── hy-AM
    │   │       │       │   └── viewer.properties
    │   │       │       ├── hye
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ia
    │   │       │       │   └── viewer.properties
    │   │       │       ├── id
    │   │       │       │   └── viewer.properties
    │   │       │       ├── is
    │   │       │       │   └── viewer.properties
    │   │       │       ├── it
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ja
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ka
    │   │       │       │   └── viewer.properties
    │   │       │       ├── kab
    │   │       │       │   └── viewer.properties
    │   │       │       ├── kk
    │   │       │       │   └── viewer.properties
    │   │       │       ├── km
    │   │       │       │   └── viewer.properties
    │   │       │       ├── kn
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ko
    │   │       │       │   └── viewer.properties
    │   │       │       ├── lij
    │   │       │       │   └── viewer.properties
    │   │       │       ├── lo
    │   │       │       │   └── viewer.properties
    │   │       │       ├── locale.properties
    │   │       │       ├── lt
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ltg
    │   │       │       │   └── viewer.properties
    │   │       │       ├── lv
    │   │       │       │   └── viewer.properties
    │   │       │       ├── meh
    │   │       │       │   └── viewer.properties
    │   │       │       ├── mk
    │   │       │       │   └── viewer.properties
    │   │       │       ├── mr
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ms
    │   │       │       │   └── viewer.properties
    │   │       │       ├── my
    │   │       │       │   └── viewer.properties
    │   │       │       ├── nb-NO
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ne-NP
    │   │       │       │   └── viewer.properties
    │   │       │       ├── nl
    │   │       │       │   └── viewer.properties
    │   │       │       ├── nn-NO
    │   │       │       │   └── viewer.properties
    │   │       │       ├── oc
    │   │       │       │   └── viewer.properties
    │   │       │       ├── pa-IN
    │   │       │       │   └── viewer.properties
    │   │       │       ├── pl
    │   │       │       │   └── viewer.properties
    │   │       │       ├── pt-BR
    │   │       │       │   └── viewer.properties
    │   │       │       ├── pt-PT
    │   │       │       │   └── viewer.properties
    │   │       │       ├── rm
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ro
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ru
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sat
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sc
    │   │       │       │   └── viewer.properties
    │   │       │       ├── scn
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sco
    │   │       │       │   └── viewer.properties
    │   │       │       ├── si
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sk
    │   │       │       │   └── viewer.properties
    │   │       │       ├── skr
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sl
    │   │       │       │   └── viewer.properties
    │   │       │       ├── son
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sq
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sr
    │   │       │       │   └── viewer.properties
    │   │       │       ├── sv-SE
    │   │       │       │   └── viewer.properties
    │   │       │       ├── szl
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ta
    │   │       │       │   └── viewer.properties
    │   │       │       ├── te
    │   │       │       │   └── viewer.properties
    │   │       │       ├── tg
    │   │       │       │   └── viewer.properties
    │   │       │       ├── th
    │   │       │       │   └── viewer.properties
    │   │       │       ├── tl
    │   │       │       │   └── viewer.properties
    │   │       │       ├── tr
    │   │       │       │   └── viewer.properties
    │   │       │       ├── trs
    │   │       │       │   └── viewer.properties
    │   │       │       ├── uk
    │   │       │       │   └── viewer.properties
    │   │       │       ├── ur
    │   │       │       │   └── viewer.properties
    │   │       │       ├── uz
    │   │       │       │   └── viewer.properties
    │   │       │       ├── vi
    │   │       │       │   └── viewer.properties
    │   │       │       ├── wo
    │   │       │       │   └── viewer.properties
    │   │       │       ├── xh
    │   │       │       │   └── viewer.properties
    │   │       │       ├── zh-CN
    │   │       │       │   └── viewer.properties
    │   │       │       └── zh-TW
    │   │       │       │   └── viewer.properties
    │   │       │   ├── standard_fonts
    │   │       │       ├── FoxitDingbats.pfb
    │   │       │       ├── FoxitFixed.pfb
    │   │       │       ├── FoxitFixedBold.pfb
    │   │       │       ├── FoxitFixedBoldItalic.pfb
    │   │       │       ├── FoxitFixedItalic.pfb
    │   │       │       ├── FoxitSans.pfb
    │   │       │       ├── FoxitSansBold.pfb
    │   │       │       ├── FoxitSansBoldItalic.pfb
    │   │       │       ├── FoxitSansItalic.pfb
    │   │       │       ├── FoxitSerif.pfb
    │   │       │       ├── FoxitSerifBold.pfb
    │   │       │       ├── FoxitSerifBoldItalic.pfb
    │   │       │       ├── FoxitSerifItalic.pfb
    │   │       │       ├── FoxitSymbol.pfb
    │   │       │       ├── LICENSE_FOXIT
    │   │       │       ├── LICENSE_LIBERATION
    │   │       │       ├── LiberationSans-Bold.ttf
    │   │       │       ├── LiberationSans-BoldItalic.ttf
    │   │       │       ├── LiberationSans-Italic.ttf
    │   │       │       └── LiberationSans-Regular.ttf
    │   │       │   ├── viewer.css
    │   │       │   ├── viewer.html
    │   │       │   ├── viewer.js
    │   │       │   └── viewer.js.map
    │   │   └── readium
    │   │       ├── BSD_license.txt
    │   │       ├── Gruntfile.js
    │   │       ├── README.md
    │   │       ├── css
    │   │           ├── annotations.css
    │   │           ├── bootstrap.css
    │   │           ├── library.css
    │   │           ├── readium_js.css
    │   │           ├── readium_js.css.new
    │   │           ├── settings.css
    │   │           ├── sourcesanspro.css
    │   │           ├── viewer.css
    │   │           ├── viewer.css.modified
    │   │           └── viewer_audio.css
    │   │       ├── embed.html
    │   │       ├── extend_require_config.js
    │   │       ├── fonts
    │   │           ├── glyphicons-halflings-regular.eot
    │   │           ├── glyphicons-halflings-regular.svg
    │   │           ├── glyphicons-halflings-regular.ttf
    │   │           └── glyphicons-halflings-regular.woff
    │   │       ├── grunt
    │   │           ├── aliases.js
    │   │           ├── clean.js
    │   │           ├── concurrent.js
    │   │           ├── copy.js
    │   │           ├── crx.js
    │   │           ├── cssmin.js
    │   │           ├── env.js
    │   │           ├── express.js
    │   │           ├── nodeunit.js
    │   │           ├── requirejs.js
    │   │           ├── run_grunt.js
    │   │           ├── simplemocha.js
    │   │           ├── versioning.js
    │   │           └── watch.js
    │   │       ├── i18n
    │   │           ├── Strings.js
    │   │           └── _locales
    │   │           │   ├── de
    │   │           │       └── messages.json
    │   │           │   ├── en_US
    │   │           │       └── messages.json
    │   │           │   ├── es
    │   │           │       └── messages.json
    │   │           │   ├── fr
    │   │           │       └── messages.json
    │   │           │   ├── id
    │   │           │       └── messages.json
    │   │           │   ├── it
    │   │           │       └── messages.json
    │   │           │   ├── ja
    │   │           │       └── messages.json
    │   │           │   ├── ko
    │   │           │       └── messages.json
    │   │           │   ├── pt_BR
    │   │           │       └── messages.json
    │   │           │   ├── zh_CN
    │   │           │       └── messages.json
    │   │           │   └── zh_TW
    │   │           │       └── messages.json
    │   │       ├── images
    │   │           ├── about_readium_logo.png
    │   │           ├── covers
    │   │           │   ├── cover1.jpg
    │   │           │   ├── cover2.jpg
    │   │           │   ├── cover3.jpg
    │   │           │   ├── cover4.jpg
    │   │           │   ├── cover5.jpg
    │   │           │   ├── cover6.jpg
    │   │           │   ├── cover7.jpg
    │   │           │   └── cover8.jpg
    │   │           ├── epub-touch-icon.png
    │   │           ├── epub_favicon.ico
    │   │           ├── glyphicons_115_text_smaller.png
    │   │           ├── glyphicons_116_text_bigger.png
    │   │           ├── ico_doublepage_up.png
    │   │           ├── ico_singlepage_up.png
    │   │           ├── library_arrow.png
    │   │           ├── margin1_off.png
    │   │           ├── margin4_off.png
    │   │           ├── pagination.svg
    │   │           ├── pagination1.svg
    │   │           ├── partner_logos.png
    │   │           ├── readium-touch-icon.png
    │   │           ├── readium_favicon.png
    │   │           └── readium_logo.png
    │   │       ├── index.html
    │   │       ├── lib
    │   │           ├── Dialogs.js
    │   │           ├── EpubLibrary.js
    │   │           ├── EpubLibraryManager.js
    │   │           ├── EpubReader.js
    │   │           ├── EpubReader.js.modified
    │   │           ├── EpubReaderBackgroundAudioTrack.js
    │   │           ├── EpubReaderMediaOverlays.js
    │   │           ├── Keyboard.js
    │   │           ├── PackageParser.js
    │   │           ├── ReaderSettingsDialog.js
    │   │           ├── ReaderSettingsDialog_Keyboard.js
    │   │           ├── Readium.js
    │   │           ├── ReadiumViewer.js
    │   │           ├── ReadiumViewerLite.js
    │   │           ├── Spinner.js
    │   │           ├── analytics
    │   │           │   └── Analytics.js
    │   │           ├── console_shim.js
    │   │           ├── gestures.js
    │   │           ├── initialize_viewer.js
    │   │           ├── mathjax
    │   │           │   └── MathJax.js
    │   │           ├── migration
    │   │           │   └── MigrationManager.js
    │   │           ├── require.js
    │   │           ├── storage
    │   │           │   ├── EpubUnzipper.js
    │   │           │   ├── RemoteStorageManager.js
    │   │           │   ├── Settings.js
    │   │           │   └── StaticStorageManager.js
    │   │           ├── thirdparty
    │   │           │   ├── URIjs
    │   │           │   │   ├── IPv6.js
    │   │           │   │   ├── SecondLevelDomains.js
    │   │           │   │   ├── URI.js
    │   │           │   │   └── punycode.js
    │   │           │   ├── almond.js
    │   │           │   ├── backbone-0.9.10.js
    │   │           │   ├── bootstrap.min.js
    │   │           │   ├── console_shim.js
    │   │           │   ├── crypto-sha1.js
    │   │           │   ├── deflate.js
    │   │           │   ├── hammer.js
    │   │           │   ├── hgn.js
    │   │           │   ├── hogan.js
    │   │           │   ├── inflate.js
    │   │           │   ├── jath.min.js
    │   │           │   ├── jquery-1.11.0.js
    │   │           │   ├── jquery.hammer.js
    │   │           │   ├── json2.js
    │   │           │   ├── keymaster.js
    │   │           │   ├── remotestorage.js
    │   │           │   ├── screenfull.js
    │   │           │   ├── spin.min.js
    │   │           │   ├── text
    │   │           │   │   ├── LICENSE
    │   │           │   │   ├── README.md
    │   │           │   │   ├── package.json
    │   │           │   │   └── text.js
    │   │           │   ├── underscore-1.4.4.js
    │   │           │   ├── zip-ext.js
    │   │           │   ├── zip-fs.js
    │   │           │   └── zip.js
    │   │           ├── versioning
    │   │           │   ├── PackagedVersioning.js
    │   │           │   └── UnpackagedVersioning.js
    │   │           └── workers
    │   │           │   ├── ContentTransformer.js
    │   │           │   ├── EpubLibraryWriter.js
    │   │           │   ├── Messages.js
    │   │           │   └── WorkerProxy.js
    │   │       ├── logos
    │   │           ├── mini-logo.png
    │   │           ├── readium (no glow).svg
    │   │           ├── readium rotated (no glow).svg
    │   │           ├── readium-rotated.svg
    │   │           └── readium.svg
    │   │       ├── require_config.js
    │   │       ├── simpleviewer2.html
    │   │       └── templates
    │   │           ├── about-dialog.html
    │   │           ├── add-epub-dialog.html
    │   │           ├── details-body.html
    │   │           ├── details-dialog.html
    │   │           ├── empty-library.html
    │   │           ├── library-body.html
    │   │           ├── library-item.html
    │   │           ├── library-navbar.html
    │   │           ├── managed-buttons.html
    │   │           ├── managed-dialog.html
    │   │           ├── progress-dialog.html
    │   │           ├── reader-body-page-btns.html
    │   │           ├── reader-body.html
    │   │           ├── reader-navbar.html
    │   │           ├── reader-navbar.html.modified
    │   │           ├── settings-dialog.html
    │   │           └── settings-keyboard-item.html
    └── src
    │   ├── app.html
    │   ├── assets
    │       ├── css
    │       │   └── fonts.css
    │       └── fonts
    │       │   ├── Roboto-100-cyrillic-ext1.woff2
    │       │   ├── Roboto-100-cyrillic2.woff2
    │       │   ├── Roboto-100-greek-ext3.woff2
    │       │   ├── Roboto-100-greek4.woff2
    │       │   ├── Roboto-100-latin-ext6.woff2
    │       │   ├── Roboto-100-latin7.woff2
    │       │   └── Roboto-100-vietnamese5.woff2
    │   ├── components
    │       ├── AppFooter.vue
    │       ├── AppHeader.vue
    │       ├── AppPress.vue
    │       ├── BookCards.vue
    │       ├── Loading.vue
    │       ├── SSLManager.vue
    │       └── Upload.vue
    │   ├── layouts
    │       ├── default.vue
    │       └── error.vue
    │   ├── pages
    │       ├── ListBook.vue
    │       ├── ListMeta.vue
    │       ├── _meta
    │       │   └── _name.vue
    │       ├── active
    │       │   └── success.vue
    │       ├── admin
    │       │   ├── books.vue
    │       │   ├── imports.vue
    │       │   ├── settings.vue
    │       │   └── users.vue
    │       ├── author.vue
    │       ├── book
    │       │   ├── _bid
    │       │   │   ├── edit.vue
    │       │   │   └── readtxt.vue
    │       │   └── _bookid.vue
    │       ├── hot.vue
    │       ├── index.vue
    │       ├── install.vue
    │       ├── login.vue
    │       ├── logout.vue
    │       ├── nav.vue
    │       ├── opds-readme.vue
    │       ├── publisher.vue
    │       ├── rating.vue
    │       ├── recent.vue
    │       ├── search.vue
    │       ├── series.vue
    │       ├── signup.vue
    │       ├── tag.vue
    │       ├── user
    │       │   ├── detail.vue
    │       │   └── history.vue
    │       └── welcome.vue
    │   ├── plugins
    │       ├── load-plugins.js
    │       └── talebook.js
    │   └── store
    │       └── index.js
├── conf
    ├── nginx
    │   ├── server-side-render.conf
    │   ├── ssl.crt
    │   ├── ssl.key
    │   └── talebook.conf
    └── supervisor
    │   ├── server-side-render.conf
    │   └── talebook.conf
├── docker-compose.yml
├── docker
    ├── book
    │   ├── 1.epub
    │   ├── 10.mobi
    │   ├── 11.azw3
    │   ├── 12.txt
    │   ├── 13.pdf
    │   ├── 2.epub
    │   ├── 3.epub
    │   ├── 4.epub
    │   ├── 5.epub
    │   ├── 6.epub
    │   ├── 7.epub
    │   ├── 8.epub
    │   └── 9.epub
    └── start.sh
├── document
    ├── Development.zh_CN.md
    ├── README.zh_CN.md
    └── screenshot.png
├── features.md
├── kubernetes
    ├── douban-rs-api-deployment.yaml
    ├── douban-rs-api-service.yaml
    ├── talebook-claim0-persistentvolumeclaim.yaml
    ├── talebook-deployment.yaml
    └── talebook-service.yaml
├── pyproject.xml
├── requirements.txt
├── server.py
├── tests
    ├── .gitignore
    ├── __init__.py
    ├── cases
    │   ├── big-metadata.db
    │   ├── book.txt
    │   ├── import.mobi
    │   ├── metadata.db
    │   ├── new.epub
    │   ├── old.epub
    │   ├── ssl.crt
    │   ├── ssl.key
    │   ├── title_has_0x00.pdf
    │   └── users.db
    ├── library
    │   ├── 严歌苓
    │   │   └── 芳华 (7)
    │   │   │   ├── cover.jpg
    │   │   │   └── 芳华 - 严歌苓.epub
    │   ├── 五味太郎
    │   │   └── 鳄鱼怕怕牙医怕怕 (5)
    │   │   │   ├── cover.jpg
    │   │   │   └── 鳄鱼怕怕牙医怕怕 - 五味太郎.pdf
    │   ├── 刘醒龙
    │   │   └── 天行者 (8)
    │   │   │   ├── cover.jpg
    │   │   │   └── 天行者 - 刘醒龙.epub
    │   ├── 加西亚·马尔克斯
    │   │   └── 百年孤独 (1)
    │   │   │   ├── Bai Nian Gu Du - Jia Xi Ya _Ma Er Ke Si.mobi
    │   │   │   ├── cover.jpg
    │   │   │   └── 百年孤独 - 加西亚·马尔克斯.epub
    │   ├── 安徒生
    │   │   └── 安徒生童话 (3)
    │   │   │   ├── cover.jpg
    │   │   │   └── 安徒生童话 - 安徒生.mobi
    │   ├── 海明威
    │   │   └── 老人与海 (10)
    │   │   │   ├── cover.jpg
    │   │   │   └── 老人与海 - 海明威.epub
    │   ├── 笛福
    │   │   └── 鲁滨孙历险记 (9)
    │   │   │   ├── cover.jpg
    │   │   │   └── 鲁滨孙历险记 - 笛福.epub
    │   ├── 纳尔逊·曼德拉
    │   │   └── 漫漫自由路 (2)
    │   │   │   ├── cover.jpg
    │   │   │   └── 漫漫自由路 - 纳尔逊·曼德拉.txt
    │   ├── 艾森·拉塞尔
    │   │   └── 麦肯锡方法 (4)
    │   │   │   ├── cover.jpg
    │   │   │   └── 麦肯锡方法 - 艾森·拉塞尔.azw3
    │   ├── 蘅塘退士
    │   │   └── 唐诗三百首 (6)
    │   │   │   ├── cover.jpg
    │   │   │   └── 唐诗三百首 - 蘅塘退士.epub
    │   ├── 詹姆斯·巴里
    │   │   └── 彼得·潘 (13)
    │   │   │   ├── cover.jpg
    │   │   │   └── 彼得·潘 - 詹姆斯·巴里.epub
    │   ├── 陀思妥耶夫斯基
    │   │   └── 罪与罚 (11)
    │   │   │   ├── cover.jpg
    │   │   │   └── 罪与罚 - 陀思妥耶夫斯基.epub
    │   └── 韩寒
    │   │   └── 他的国 (12)
    │   │       ├── cover.jpg
    │   │       └── 他的国 - 韩寒.epub
    ├── run.py
    ├── test_admin.py
    ├── test_baike.py
    ├── test_douban.py
    ├── test_main.py
    ├── test_models.py
    ├── test_scan.py
    ├── test_service.py
    ├── test_ssl_crt.py
    ├── test_txt.py
    ├── test_upload.py
    ├── test_utils.py
    └── test_youshu.py
├── tools
    ├── kgbook.com
    │   └── spider.py
    ├── mebook-spider.py
    ├── orzbook-spider.py
    ├── run-spider.sh
    ├── spider.py
    ├── tools.py
    ├── update.sh
    └── watch-settings-and-reload-nginx.sh
└── webserver
    ├── __init__.py
    ├── constants.py
    ├── handlers
        ├── __init__.py
        ├── admin.py
        ├── base.py
        ├── book.py
        ├── files.py
        ├── meta.py
        ├── opds.py
        ├── scan.py
        └── user.py
    ├── loader.py
    ├── main.py
    ├── models.py
    ├── plugins
        ├── __init__.py
        ├── meta
        │   ├── __init__.py
        │   ├── baike
        │   │   ├── __init__.py
        │   │   ├── api.py
        │   │   └── baidubaike
        │   │   │   ├── __init__.py
        │   │   │   ├── baidubaike.py
        │   │   │   └── baiduexception.py
        │   ├── douban.py
        │   └── youshu
        │   │   ├── __init__.py
        │   │   └── api.py
        └── parser
        │   ├── __init__.py
        │   └── txt.py
    ├── resources
        ├── book
        │   ├── creader.html
        │   ├── epubjs.html
        │   └── readium.html
        ├── calibre
        │   └── default_cover.jpg
        └── index.html
    ├── services
        ├── __init__.py
        ├── async_service.py
        ├── autofill.py
        ├── convert.py
        ├── extract.py
        ├── mail.py
        └── scan.py
    ├── settings.py
    ├── social_routes.py
    ├── utils.py
    └── version.py


/.dockerignore:
--------------------------------------------------------------------------------
1 | .git
2 | app/.env
3 | app/dist
4 | app/.nuxt
5 | app/node_modules
6 | 


--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 | 
3 | github: [talebook]
4 | custom: ["https://paypal.me/rexliao"]
5 | 


--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/希望作者支持某个功能.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | name: 希望作者支持某个功能
 3 | about: 产品特性建议
 4 | title: ''
 5 | labels: feature
 6 | assignees: ''
 7 | 
 8 | ---
 9 | 
10 | # 背景:什么情况下需要这个功能
11 | 比如说:现在阅读TXT文件时很难受,所以希望作者优化
12 | 
13 | # 需求:想要做成什么样子
14 | 比如说:建议参考某某软件的样子,做一个类似的TXT阅读器;功能可以简单些,最关键是识别出目录,可以每次点击「下一章」进行阅读。
15 | 参考的地址:xxxx
16 | 
17 | # 示意图
18 | 用 [腾讯文档的流程图](https://docs.qq.com/flowchart/) 绘制示意图,或者 贴一下其他类似软件的截图
19 | 


--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/我要反馈问题.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | name: 我要反馈问题
 3 | about: 反馈问题,寻求帮助
 4 | title: ''
 5 | labels: bug
 6 | assignees: ''
 7 | 
 8 | ---
 9 | 
10 | # 问题描述
11 | 几句话简要描述问题
12 | 
13 | # 问题环境
14 | - 版本号:例如v3.6.1
15 | - URL:出现异常时的URL
16 | - 运行系统:NAS/DOCKER/网站等
17 | - 访问设备:Windows/Linux/Mac/iPhone12/Android9等
18 | - 浏览器版本:例如 Chrome 版本 120.0.6099.109
19 | - 书籍信息:如果是特定的书异常,请提供「书名」和「作者名」
20 | 
21 | # 复现步骤
22 | 1. 先做啥
23 | 2. 再做啥
24 | 3. 看到报错XXX
25 | 
26 | # 截图
27 | 请上传报错的截图
28 | 
29 | # 报错信息
30 | 把系统上提示的报错信息文字版粘贴出来
31 | 
32 | # 日志
33 | 请上传 `talebook.log` 文件,或截取日志中 提示 `Exceptions` 的部分
34 | 
35 | # 书籍文件
36 | 如果是特定某本书出现异常,请上传该书籍文件
37 | 
38 | # 其他
39 | 如果是比较复杂的问题,可以把整个书库 `/books/library/metadata.db` 数据库文件上传,以便作者复现异常场景
40 | 


--------------------------------------------------------------------------------
/.style.yapf:
--------------------------------------------------------------------------------
 1 | [style]
 2 | column_limit=127
 3 | based_on_style=google
 4 | 
 5 | [flake8]
 6 | ignore =
 7 |     ;W503 line break before binary operator
 8 |     W503,
 9 |     ;E203 whitespace before ':'
10 |     E203,
11 |     ; whitespace after ':'
12 |     ;E241,
13 |     ;multiple imports on one line
14 |     E401,
15 |     ;bare 'except'
16 |     E722,
17 |     C901,
18 |     E402,
19 | 
20 | 
21 | ; exclude file
22 | exclude =
23 |     .tox,
24 |     .git,
25 |     __pycache__,
26 |     build,
27 |     dist,
28 |     *.pyc,
29 |     *.egg-info,
30 |     .cache,
31 |     .eggs
32 | 
33 | max-complexity = 10
34 | max-line-length = 127
35 | 


--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "python.testing.pytestArgs": [
 3 |         "webserver"
 4 |     ],
 5 |     "python.testing.unittestEnabled": true,
 6 |     "python.testing.pytestEnabled": false,
 7 |     "python.formatting.provider": "black",
 8 |     "python.testing.unittestArgs": [
 9 |         "-v",
10 |         "-s",
11 |         "./tests",
12 |         "-p",
13 |         "test*.py"
14 |     ]
15 | }


--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
 1 | BSD 2-Clause License
 2 | 
 3 | Copyright (c) 2022, Rex
 4 | All rights reserved.
 5 | 
 6 | Redistribution and use in source and binary forms, with or without
 7 | modification, are permitted provided that the following conditions are met:
 8 | 
 9 | 1. Redistributions of source code must retain the above copyright notice, this
10 |    list of conditions and the following disclaimer.
11 | 
12 | 2. Redistributions in binary form must reproduce the above copyright notice,
13 |    this list of conditions and the following disclaimer in the documentation
14 |    and/or other materials provided with the distribution.
15 | 
16 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
20 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 | 


--------------------------------------------------------------------------------
/app/.editorconfig:
--------------------------------------------------------------------------------
 1 | # editorconfig.org
 2 | root = true
 3 | 
 4 | [*]
 5 | indent_style = space
 6 | indent_size = 2
 7 | end_of_line = lf
 8 | charset = utf-8
 9 | trim_trailing_whitespace = true
10 | insert_final_newline = true
11 | 
12 | [*.md]
13 | trim_trailing_whitespace = false
14 | 


--------------------------------------------------------------------------------
/app/Makefile:
--------------------------------------------------------------------------------
1 | 
2 | all:
3 | 	NODE_OPTIONS=--openssl-legacy-provider npm run build-spa
4 | 


--------------------------------------------------------------------------------
/app/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |   "name": "talebook",
 3 |   "version": "1.0.0",
 4 |   "private": true,
 5 |   "scripts": {
 6 |     "dev": "nuxt",
 7 |     "build": "nuxt build",
 8 |     "build-spa": "nuxt build --spa",
 9 |     "start": "nuxt start",
10 |     "generate": "nuxt generate"
11 |   },
12 |   "dependencies": {
13 |     "core-js": "^3.19.3",
14 |     "nuxt": "^2.15.8",
15 |     "vue": "^2.6.14",
16 |     "vue-cookies": "^1.7.4",
17 |     "vue-server-renderer": "^2.6.14",
18 |     "vue-template-compiler": "^2.6.14",
19 |     "vuetify": "^2.6.10",
20 |     "webpack": "^4.46.0"
21 |   },
22 |   "devDependencies": {
23 |     "@mdi/font": "^6.5.95",
24 |     "@nuxtjs/google-analytics": "^2.4.0",
25 |     "@nuxtjs/google-fonts": "^1.3.0",
26 |     "@nuxtjs/vuetify": "^1.12.3",
27 |     "connect-logger": "^0.0.1",
28 |     "material-design-icons-iconfont": "^6.4.1"
29 |   }
30 | }
31 | 


--------------------------------------------------------------------------------
/app/public/logo/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/logo/favicon.ico


--------------------------------------------------------------------------------
/app/public/logo/link.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/logo/link.png


--------------------------------------------------------------------------------
/app/public/robots.txt:
--------------------------------------------------------------------------------
 1 | User-agent: *
 2 | Disallow: /login
 3 | 
 4 | User-agent: SemrushBot
 5 | Disallow: /
 6 | 
 7 | User-agent: YandexBot
 8 | Disallow: /
 9 | 
10 | User-agent: AhrefsBot
11 | Disallow: /
12 | 
13 | User-agent: MJ12bot
14 | Disallow: /
15 | 
16 | User-agent: Exabot
17 | Disallow: /
18 | 
19 | 


--------------------------------------------------------------------------------
/app/public/static/README:
--------------------------------------------------------------------------------
1 | This dir is for tornado
2 | 


--------------------------------------------------------------------------------
/app/public/static/candle-reader/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/candle-reader/favicon.ico


--------------------------------------------------------------------------------
/app/public/static/epubreader/README:
--------------------------------------------------------------------------------
1 | https://github.com/intity/epubreader-js
2 | 


--------------------------------------------------------------------------------
/app/public/static/epubreader/css/toolbar.css:
--------------------------------------------------------------------------------
 1 | #toolbar {
 2 | 	height: 58px;
 3 | 	margin: 0;
 4 | 	padding: 0;
 5 | 	z-index: 10;
 6 | 	display: grid;
 7 | 	position: relative;
 8 | }
 9 | 
10 | #toolbar .menu-1 {
11 | 	display: flex;
12 | 	grid-column: 1;
13 | 	justify-content: left;
14 | }
15 | 
16 | #toolbar .menu-2 {
17 | 	display: flex;
18 | 	grid-column: 2;
19 | 	justify-content: right;
20 | }
21 | 
22 | #toolbar .box {
23 | 	width: 58px;
24 | 	height: 36px;
25 | }
26 | 
27 | #toolbar #btn-p.box,
28 | #toolbar #btn-n.box {
29 | 	display: none;
30 | }
31 | 
32 | /**
33 |  * iPhone 5 : 320 x 568
34 |  */
35 | @media
36 | only screen and (width: 320px) and (orientation: portrait),
37 | only screen and (height: 320px) and (orientation: landscape) {
38 | 	#toolbar {
39 | 		height: 52px;
40 | 	}
41 | 
42 | 	#toolbar .box {
43 | 		width: 52px;
44 | 		height: 30px;
45 | 	}
46 | }


--------------------------------------------------------------------------------
/app/public/static/epubreader/font/fontello.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/epubreader/font/fontello.eot


--------------------------------------------------------------------------------
/app/public/static/epubreader/font/fontello.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/epubreader/font/fontello.ttf


--------------------------------------------------------------------------------
/app/public/static/epubreader/font/fontello.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/epubreader/font/fontello.woff


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/bookmark.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    width="24"
 4 |    height="24"
 5 |    viewBox="0 0 24 24"
 6 |    version="1.1"
 7 |    id="svg8"
 8 |    xmlns="http://www.w3.org/2000/svg"
 9 |    xmlns:svg="http://www.w3.org/2000/svg"
10 |    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
11 |    xmlns:cc="http://creativecommons.org/ns#"
12 |    xmlns:dc="http://purl.org/dc/elements/1.1/">
13 |   <defs
14 |      id="defs2" />
15 |   <metadata
16 |      id="metadata5">
17 |     <rdf:RDF>
18 |       <cc:Work
19 |          rdf:about="">
20 |         <dc:format>image/svg+xml</dc:format>
21 |         <dc:type
22 |            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23 |       </cc:Work>
24 |     </rdf:RDF>
25 |   </metadata>
26 |   <path
27 |      style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
28 |      d="M 17.999954,19 V 6.0005715 c 0.0055,-0.5404808 -0.486177,-1.0065668 -1.05965,-1.0005132 l -9.8805431,9.4e-6 C 6.4867076,4.9938621 5.9945296,5.4592827 6.000046,6.0005812 L 6.0000596,19 12.000008,15.870311 Z"
29 |      id="path2" />
30 |   <path
31 |      style="fill:none;stroke:none;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
32 |      d="M 0,24 H 24 V 0 H 0 Z"
33 |      id="path1" />
34 | </svg>
35 | 


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/bookmarked.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    width="24"
 4 |    height="24"
 5 |    viewBox="0 0 24 24"
 6 |    version="1.1"
 7 |    id="svg8"
 8 |    xmlns="http://www.w3.org/2000/svg"
 9 |    xmlns:svg="http://www.w3.org/2000/svg"
10 |    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
11 |    xmlns:cc="http://creativecommons.org/ns#"
12 |    xmlns:dc="http://purl.org/dc/elements/1.1/">
13 |   <defs
14 |      id="defs2" />
15 |   <metadata
16 |      id="metadata5">
17 |     <rdf:RDF>
18 |       <cc:Work
19 |          rdf:about="">
20 |         <dc:format>image/svg+xml</dc:format>
21 |         <dc:type
22 |            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23 |       </cc:Work>
24 |     </rdf:RDF>
25 |   </metadata>
26 |   <path
27 |      style="fill:#000000;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
28 |      d="M 17.999952,19.000197 V 6.0004752 C 18.005564,5.4599824 17.51378,4.9938857 16.940305,4.9999393 l -9.8805441,9.6e-6 C 6.4867083,4.9937431 5.9945302,5.459174 6.000046,6.0004848 l 1.38e-5,12.9997122 5.9999452,-3.129762 z"
29 |      id="path2" />
30 |   <path
31 |      style="fill:none;stroke:none;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
32 |      d="M 0,24 H 24 V 0 H 0 Z"
33 |      id="path1" />
34 | </svg>
35 | 


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/epubreader/img/favicon.png


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/favicon.svg:
--------------------------------------------------------------------------------
1 | <svg height="16" viewBox="-3 -3.01 544.84 544.86" width="16" xmlns="http://www.w3.org/2000/svg"><path d="m269.4 438.74-169.3-169.34 169.3-169.3 56.46 56.43-112.9 112.87 56.45 56.45 169.33-169.3-147.5-147.5c-12.04-12.06-31.58-12.06-43.63 0l-238.58 238.55c-12.03 12.06-12.03 31.6 0 43.65l238.57 238.55c12.05 12.05 31.6 12.05 43.63 0l238.57-238.56c12.04-12.05 12.04-31.6 0-43.63l-34.64-34.61z" fill="#86b918"/></svg>


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/loader.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/epubreader/img/loader.gif


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/next.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    width="24"
 4 |    height="24"
 5 |    viewBox="0 0 24 24"
 6 |    version="1.1"
 7 |    id="svg8"
 8 |    xmlns="http://www.w3.org/2000/svg"
 9 |    xmlns:svg="http://www.w3.org/2000/svg"
10 |    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
11 |    xmlns:cc="http://creativecommons.org/ns#"
12 |    xmlns:dc="http://purl.org/dc/elements/1.1/">
13 |   <defs
14 |      id="defs2" />
15 |   <metadata
16 |      id="metadata5">
17 |     <rdf:RDF>
18 |       <cc:Work
19 |          rdf:about="">
20 |         <dc:format>image/svg+xml</dc:format>
21 |         <dc:type
22 |            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23 |       </cc:Work>
24 |     </rdf:RDF>
25 |   </metadata>
26 |   <path
27 |      style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
28 |      d="M 12,19 19,12 12,4.9999999"
29 |      id="path3" />
30 |   <path
31 |      style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
32 |      d="M 4.9999999,12 H 19"
33 |      id="path2" />
34 |   <path
35 |      style="fill:none;stroke:none;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
36 |      d="M 0,24 H 24 V 0 H 0 Z"
37 |      id="path1" />
38 | </svg>
39 | 


--------------------------------------------------------------------------------
/app/public/static/epubreader/img/search-clear.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    width="24"
 4 |    height="24"
 5 |    viewBox="0 0 24 24"
 6 |    version="1.1"
 7 |    id="svg8"
 8 |    xmlns="http://www.w3.org/2000/svg"
 9 |    xmlns:svg="http://www.w3.org/2000/svg"
10 |    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
11 |    xmlns:cc="http://creativecommons.org/ns#"
12 |    xmlns:dc="http://purl.org/dc/elements/1.1/">
13 |   <defs
14 |      id="defs2" />
15 |   <metadata
16 |      id="metadata5">
17 |     <rdf:RDF>
18 |       <cc:Work
19 |          rdf:about="">
20 |         <dc:format>image/svg+xml</dc:format>
21 |         <dc:type
22 |            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
23 |       </cc:Work>
24 |     </rdf:RDF>
25 |   </metadata>
26 |   <path
27 |      style="fill:none;stroke:#000000;stroke-width:2;stroke-dasharray:none;stroke-linecap:round"
28 |      d="M 18,6 C 6,18 6,18 6,18"
29 |      id="path2" />
30 |   <path
31 |      style="fill:none;stroke:#000000;stroke-width:2;stroke-dasharray:none;stroke-linecap:round"
32 |      d="M 6,6 18,18"
33 |      id="path1" />
34 |   <path
35 |      style="fill:none;stroke:none;stroke-width:0;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
36 |      d="M 0,24 H 24 V 0 H 0 Z"
37 |      id="path4" />
38 | </svg>
39 | 


--------------------------------------------------------------------------------
/app/public/static/epubreader/index.html:
--------------------------------------------------------------------------------
 1 | <!DOCTYPE html>
 2 | <html>
 3 | 
 4 | <head>
 5 | 	<title></title>
 6 | 
 7 | 	<meta charset="utf-8">
 8 | 	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
 9 | 	<meta http-equiv="Permissions-Policy" content="interest-cohort=()">
10 | 	<meta name="description" content="">
11 | 	<meta name="viewport" content="width=device-width, user-scalable=no">
12 | 	<meta name="apple-mobile-web-app-capable" content="yes">
13 | 
14 | 	<link rel="icon" type="image/png" href="img/favicon.png">
15 | 	<link rel="stylesheet" href="css/main.css">
16 | 
17 | 	<!-- Libs -->
18 | 	<script src="js/libs/jszip.min.js"></script>
19 | 	<script src="js/libs/md5.min.js"></script>
20 | 	<script src="js/libs/epub.min.js"></script>
21 | 
22 | 	<!-- Reader -->
23 | 	<script type="module">
24 | 		import { Reader } from "./js/epubreader.min.js"
25 | 		const url = new URL(window.location)
26 | 		const path = url.searchParams.get("bookPath") || "https://s3.amazonaws.com/moby-dick/"
27 | 		window.onload = (e) => new Reader(path)
28 | 	</script>
29 | </head>
30 | 
31 | <body>
32 | </body>
33 | 
34 | </html>


--------------------------------------------------------------------------------
/app/public/static/epubreader/js/libs/jszip.min.js.LICENSE.txt:
--------------------------------------------------------------------------------
 1 | /*!
 2 | 
 3 | JSZip v3.10.1 - A JavaScript class for generating and reading zip files
 4 | <http://stuartk.com/jszip>
 5 | 
 6 | (c) 2009-2016 Stuart Knightley <stuart [at] stuartk.com>
 7 | Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/main/LICENSE.markdown.
 8 | 
 9 | JSZip uses the library pako released under the MIT license :
10 | https://github.com/nodeca/pako/blob/main/LICENSE
11 | */
12 | 


--------------------------------------------------------------------------------
/app/public/static/epubreader/js/libs/md5.min.js.LICENSE.txt:
--------------------------------------------------------------------------------
 1 | /**
 2 |  * [js-md5]{@link https://github.com/emn178/js-md5}
 3 |  *
 4 |  * @namespace md5
 5 |  * @version 0.7.3
 6 |  * @author Chen, Yi-Cyuan [emn178@gmail.com]
 7 |  * @copyright Chen, Yi-Cyuan 2014-2017
 8 |  * @license MIT
 9 |  */
10 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/VERSION:
--------------------------------------------------------------------------------
1 | 3.3.122
2 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78ms-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78ms-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/78ms-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/78ms-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/83pv-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/83pv-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/90ms-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/90ms-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/90ms-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/90ms-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/90msp-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/90msp-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/90msp-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/90msp-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/90pv-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/90pv-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/90pv-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/90pv-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Add-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Add-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Add-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Add-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Add-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Add-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Add-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Add-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-0.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-0.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-1.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-1.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-3.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-3.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-4.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-4.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-5.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-5.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-6.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-6.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-UCS2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-CNS1-UCS2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-0.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-0.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-1.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-1.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-3.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-3.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-4.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-4.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-5.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-5.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-GB1-UCS2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-GB1-UCS2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-0.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-0.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-1.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-1.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-3.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-3.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-4.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-4.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-5.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-5.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-6.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-6.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-UCS2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Japan1-UCS2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-0.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-0.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-1.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-1.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-UCS2.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Adobe-Korea1-UCS2.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/B5pc-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/B5pc-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/B5pc-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/B5pc-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/CNS-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/CNS-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/CNS-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/CNS-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/CNS1-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/CNS1-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/CNS1-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/CNS1-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/CNS2-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/CNS2-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/CNS2-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/CNS2-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/ETHK-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/ETHK-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/ETHK-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/ETHK-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/ETen-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/ETen-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/ETen-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/ETen-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/ETenms-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/ETenms-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/ETenms-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/ETenms-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Ext-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Ext-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Ext-RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Ext-RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Ext-RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Ext-RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Ext-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Ext-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GB-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GB-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GB-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GB-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GB-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GB-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GB-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GB-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBK-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBK-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBK-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBK-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBK2K-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBK2K-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBK2K-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBK2K-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBKp-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBKp-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBKp-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBKp-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBT-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBT-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBT-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBT-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBT-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBT-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBT-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBT-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBTpc-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBTpc-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBTpc-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBTpc-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBpc-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBpc-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/GBpc-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/GBpc-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKdla-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKdla-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKdla-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKdla-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKdlb-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKdlb-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKdlb-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKdlb-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKgccs-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKgccs-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKgccs-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKgccs-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKm314-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKm314-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKm314-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKm314-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKm471-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKm471-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKm471-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKm471-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKscs-B5-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKscs-B5-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/HKscs-B5-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/HKscs-B5-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Hankaku.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Hankaku.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Hiragana.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Hiragana.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSC-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSC-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSC-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSC-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSC-Johab-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSC-Johab-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSC-Johab-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSC-Johab-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSCms-UHC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSCms-UHC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSCms-UHC-HW-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSCms-UHC-HW-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSCms-UHC-HW-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSCms-UHC-HW-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSCms-UHC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSCms-UHC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSCpc-EUC-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSCpc-EUC-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/KSCpc-EUC-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/KSCpc-EUC-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Katakana.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Katakana.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/NWP-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/NWP-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/NWP-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/NWP-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/RKSJ-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/RKSJ-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/RKSJ-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/RKSJ-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/Roman.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/Roman.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UCS2-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UCS2-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UCS2-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UCS2-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UTF16-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UTF16-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UTF16-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UTF16-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UTF8-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UTF8-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniCNS-UTF8-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniCNS-UTF8-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UCS2-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UCS2-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UCS2-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UCS2-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UTF16-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UTF16-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UTF16-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UTF16-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UTF8-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UTF8-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniGB-UTF8-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniGB-UTF8-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-HW-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-HW-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-HW-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-HW-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UCS2-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UTF16-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UTF16-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UTF16-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UTF16-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UTF8-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UTF8-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS-UTF8-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS-UTF8-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF16-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF16-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF16-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF16-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF8-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF8-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF8-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJIS2004-UTF8-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISPro-UCS2-HW-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISPro-UCS2-HW-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISPro-UCS2-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISPro-UCS2-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISPro-UTF8-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISPro-UTF8-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISX0213-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISX0213-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISX0213-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISX0213-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISX02132004-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISX02132004-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniJISX02132004-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniJISX02132004-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UCS2-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UCS2-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UCS2-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UCS2-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UTF16-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UTF16-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UTF16-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UTF16-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UTF32-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UTF32-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UTF32-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UTF32-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UTF8-H.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UTF8-H.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/UniKS-UTF8-V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/UniKS-UTF8-V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/V.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/V.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/cmaps/WP-Symbol.bcmap:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/cmaps/WP-Symbol.bcmap


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/compressed.tracemonkey-pldi-09.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/compressed.tracemonkey-pldi-09.pdf


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-check.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    xmlns="http://www.w3.org/2000/svg"
 4 |    width="40"
 5 |    height="40"
 6 |    viewBox="0 0 40 40">
 7 |   <path
 8 |      d="M 1.5006714,23.536225 6.8925879,18.994244 14.585721,26.037937 34.019683,4.5410479 38.499329,9.2235032 14.585721,35.458952 z"
 9 |      id="path4"
10 |      style="fill:#ffff00;fill-opacity:1;stroke:#000000;stroke-width:1.25402856;stroke-opacity:1" />
11 | </svg>
12 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-comment.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    xmlns="http://www.w3.org/2000/svg"
 4 |    height="40"
 5 |    width="40"
 6 |    viewBox="0 0 40 40">
 7 |   <rect
 8 |      style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
 9 |      width="33.76017"
10 |      height="33.76017"
11 |      x="3.119915"
12 |      y="3.119915" />
13 |   <path
14 |      d="m 20.677967,8.54499 c -7.342801,0 -13.295293,4.954293 -13.295293,11.065751 0,2.088793 0.3647173,3.484376 1.575539,5.150563 L 6.0267418,31.45501 13.560595,29.011117 c 2.221262,1.387962 4.125932,1.665377 7.117372,1.665377 7.3428,0 13.295291,-4.954295 13.295291,-11.065753 0,-6.111458 -5.952491,-11.065751 -13.295291,-11.065751 z"
15 |      style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.93031836;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"/>
16 | </svg>
17 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-insert.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    xmlns="http://www.w3.org/2000/svg"
 4 |    width="64"
 5 |    height="64"
 6 |    viewBox="0 0 64 64">
 7 |   <path
 8 |      d="M 32.003143,1.4044602 57.432701,62.632577 6.5672991,62.627924 z"
 9 |      style="fill:#ffff00;fill-opacity:0.94117647;fill-rule:nonzero;stroke:#000000;stroke-width:1.00493038;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
10 | </svg>
11 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-newparagraph.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    xmlns="http://www.w3.org/2000/svg"
 4 |    width="64"
 5 |    height="64"
 6 |    viewBox="0 0 64 64">
 7 |   <path
 8 |      d="M 32.003143,10.913072 57.432701,53.086929 6.567299,53.083723 z"
 9 |      id="path2985"
10 |      style="fill:#ffff00;fill-opacity:0.94117647;fill-rule:nonzero;stroke:#000000;stroke-width:0.83403099;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
11 | </svg>
12 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-noicon.svg:
--------------------------------------------------------------------------------
1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 | <svg
3 |    xmlns="http://www.w3.org/2000/svg"
4 |    width="40"
5 |    height="40"
6 |    viewBox="0 0 40 40">
7 | </svg>
8 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-note.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    xmlns="http://www.w3.org/2000/svg"
 4 |    width="40"
 5 |    height="40"
 6 |    viewBox="0 0 40 40">
 7 |   <rect
 8 |      width="36.075428"
 9 |      height="31.096582"
10 |      x="1.962286"
11 |      y="4.4517088"
12 |      id="rect4"
13 |      style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.23004246;stroke-opacity:1" />
14 |   <rect
15 |      width="27.96859"
16 |      height="1.5012145"
17 |      x="6.0157046"
18 |      y="10.285"
19 |      id="rect6"
20 |      style="fill:#000000;fill-opacity:1;stroke:none" />
21 |   <rect
22 |      width="27.96859"
23 |      height="0.85783684"
24 |      x="6.0157056"
25 |      y="23.21689"
26 |      id="rect8"
27 |      style="fill:#000000;fill-opacity:1;stroke:none" />
28 |   <rect
29 |      width="27.96859"
30 |      height="0.85783684"
31 |      x="5.8130345"
32 |      y="28.964394"
33 |      id="rect10"
34 |      style="fill:#000000;fill-opacity:1;stroke:none" />
35 |   <rect
36 |      width="27.96859"
37 |      height="0.85783684"
38 |      x="6.0157046"
39 |      y="17.426493"
40 |      id="rect12"
41 |      style="fill:#000000;fill-opacity:1;stroke:none" />
42 | </svg>
43 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-paperclip.svg:
--------------------------------------------------------------------------------
1 | <!-- This Source Code Form is subject to the terms of the Mozilla Public
2 |    - License, v. 2.0. If a copy of the MPL was not distributed with this
3 |    - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
4 | <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="40" width="40">
5 |   <path d="M9 3.5a1.5 1.5 0 0 0-3-.001v7.95C6 12.83 7.12 14 8.5 14s2.5-1.17 2.5-2.55V5.5a.5.5 0 0 1 1 0v6.03C11.955 13.427 10.405 15 8.5 15S5.044 13.426 5 11.53V3.5a2.5 2.5 0 0 1 5 0v7.003a1.5 1.5 0 0 1-3-.003v-5a.5.5 0 0 1 1 0v5a.5.5 0 0 0 1 0Z"/>
6 | </svg>
7 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-paragraph.svg:
--------------------------------------------------------------------------------
 1 | <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 2 | <svg
 3 |    xmlns="http://www.w3.org/2000/svg"
 4 |    width="40"
 5 |    height="40"
 6 |    viewBox="0 0 40 40">
 7 |   <rect
 8 |      width="33.76017"
 9 |      height="33.76017"
10 |      x="3.119915"
11 |      y="3.119915"
12 |      style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
13 |   <path
14 |      d="m 17.692678,34.50206 0,-16.182224 c -1.930515,-0.103225 -3.455824,-0.730383 -4.57593,-1.881473 -1.12011,-1.151067 -1.680164,-2.619596 -1.680164,-4.405591 0,-1.992435 0.621995,-3.5796849 1.865988,-4.7617553 1.243989,-1.1820288 3.06352,-1.7730536 5.458598,-1.7730764 l 9.802246,0 0,2.6789711 -2.229895,0 0,26.3251486 -2.632515,0 0,-26.3251486 -3.45324,0 0,26.3251486 z"
15 |      style="font-size:29.42051125px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1.07795751;stroke-opacity:1;font-family:Arial;-inkscape-font-specification:Arial" />
16 | </svg>
17 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/annotation-pushpin.svg:
--------------------------------------------------------------------------------
1 | <!-- This Source Code Form is subject to the terms of the Mozilla Public
2 |    - License, v. 2.0. If a copy of the MPL was not distributed with this
3 |    - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
4 | <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" height="40" width="40">
5 |   <path d="M8.156 12.5a.99.99 0 0 0 .707-.294l.523-2.574L10.5 8.499l1.058-1.04 2.65-.601a.996.996 0 0 0 0-1.414l-3.657-3.658a.996.996 0 0 0-1.414 0l-.523 2.576L7.5 5.499 6.442 6.535l-2.65.6a.996.996 0 0 0 0 1.413l3.657 3.658a.999.999 0 0 0 .707.295z"/>
6 |   <path d="M9.842.996c-.386 0-.77.146-1.06.44a.5.5 0 0 0-.136.251l-.492 2.43-1.008 1.03-.953.933-2.511.566a.5.5 0 0 0-.243.133 1.505 1.505 0 0 0-.002 2.123l1.477 1.477-2.768 2.767a.5.5 0 0 0 0 .707.5.5 0 0 0 .708 0l2.767-2.767 1.475 1.474a1.494 1.494 0 0 0 2.123-.002.5.5 0 0 0 .135-.254l.492-2.427 1.008-1.024.953-.937 2.511-.57a.5.5 0 0 0 .243-.132c.586-.58.583-1.543.002-2.125l-3.659-3.656A1.501 1.501 0 0 0 9.842.996Zm.05 1.025a.394.394 0 0 1 .305.12l3.658 3.657c.18.18.141.432.002.627l-2.41.545a.5.5 0 0 0-.24.131L10.15 8.142a.5.5 0 0 0-.007.006L9.029 9.283a.5.5 0 0 0-.133.25l-.48 2.36c-.082.053-.165.109-.26.109a.492.492 0 0 1-.353-.149L4.145 8.195c-.18-.18-.141-.432-.002-.627l2.41-.545a.5.5 0 0 0 .238-.13L7.85 5.857a.5.5 0 0 0 .007-.008l1.114-1.138a.5.5 0 0 0 .133-.25l.472-2.323a.619.619 0 0 1 .317-.117Z"/>
7 | </svg>
8 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/cursor-editorFreeText.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M12 2.75H12.5V2.25V1V0.5H12H10.358C9.91165 0.5 9.47731 0.625661 9.09989 0.860442L9.09886 0.861087L8 1.54837L6.89997 0.860979L6.89911 0.860443C6.5218 0.625734 6.08748 0.5 5.642 0.5H4H3.5V1V2.25V2.75H4H5.642C5.66478 2.75 5.6885 2.75641 5.71008 2.76968C5.71023 2.76977 5.71038 2.76986 5.71053 2.76995L6.817 3.461C6.81704 3.46103 6.81709 3.46105 6.81713 3.46108C6.81713 3.46108 6.81713 3.46108 6.81714 3.46109C6.8552 3.48494 6.876 3.52285 6.876 3.567V8V12.433C6.876 12.4771 6.85523 12.515 6.81722 12.5389C6.81715 12.5389 6.81707 12.539 6.817 12.539L5.70953 13.23C5.70941 13.2301 5.70929 13.2302 5.70917 13.2303C5.68723 13.2438 5.6644 13.25 5.641 13.25H4H3.5V13.75V15V15.5H4H5.642C6.08835 15.5 6.52269 15.3743 6.90011 15.1396L6.90086 15.1391L8 14.4526L9.10003 15.14L9.10089 15.1406C9.47831 15.3753 9.91265 15.501 10.359 15.501H12H12.5V15.001V13.751V13.251H12H10.358C10.3352 13.251 10.3115 13.2446 10.2899 13.2313C10.2897 13.2312 10.2896 13.2311 10.2895 13.231L9.183 12.54C9.18298 12.54 9.18295 12.54 9.18293 12.54C9.18291 12.5399 9.18288 12.5399 9.18286 12.5399C9.14615 12.5169 9.125 12.4797 9.125 12.434V8V3.567C9.125 3.52266 9.14603 3.48441 9.18364 3.4606C9.18377 3.46052 9.1839 3.46043 9.18404 3.46035L10.2895 2.76995C10.2896 2.76985 10.2898 2.76975 10.2899 2.76966C10.3119 2.75619 10.3346 2.75 10.358 2.75H12Z" fill="black" stroke="white"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/cursor-editorInk.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M0.0189877 13.6645L0.612989 10.4635C0.687989 10.0545 0.884989 9.6805 1.18099 9.3825L9.98199 0.5805C10.756 -0.1925 12.015 -0.1945 12.792 0.5805L14.42 2.2085C15.194 2.9835 15.194 4.2435 14.42 5.0185L5.61599 13.8215C5.31999 14.1165 4.94599 14.3125 4.53799 14.3875L1.33599 14.9815C1.26599 14.9935 1.19799 15.0005 1.12999 15.0005C0.832989 15.0005 0.544988 14.8835 0.330988 14.6695C0.0679874 14.4055 -0.0490122 14.0305 0.0189877 13.6645Z" fill="white"/>
3 | <path d="M0.0189877 13.6645L0.612989 10.4635C0.687989 10.0545 0.884989 9.6805 1.18099 9.3825L9.98199 0.5805C10.756 -0.1925 12.015 -0.1945 12.792 0.5805L14.42 2.2085C15.194 2.9835 15.194 4.2435 14.42 5.0185L5.61599 13.8215C5.31999 14.1165 4.94599 14.3125 4.53799 14.3875L1.33599 14.9815C1.26599 14.9935 1.19799 15.0005 1.12999 15.0005C0.832989 15.0005 0.544988 14.8835 0.330988 14.6695C0.0679874 14.4055 -0.0490122 14.0305 0.0189877 13.6645ZM12.472 5.1965L13.632 4.0365L13.631 3.1885L11.811 1.3675L10.963 1.3685L9.80299 2.5285L12.472 5.1965ZM4.31099 13.1585C4.47099 13.1285 4.61799 13.0515 4.73399 12.9345L11.587 6.0815L8.91899 3.4135L2.06599 10.2655C1.94899 10.3835 1.87199 10.5305 1.84099 10.6915L1.36699 13.2485L1.75199 13.6335L4.31099 13.1585Z" fill="black"/>
4 | </svg>
5 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/findbarButton-next.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M10.999 8.352L5.534 13.818C5.41551 13.9303 5.25786 13.9918 5.09466 13.9895C4.93146 13.9872 4.77561 13.9212 4.66033 13.8057C4.54505 13.6902 4.47945 13.5342 4.47752 13.3709C4.47559 13.2077 4.53748 13.0502 4.65 12.932L9.585 7.998L4.651 3.067C4.53862 2.94864 4.47691 2.79106 4.47903 2.62786C4.48114 2.46466 4.54692 2.30874 4.66233 2.19333C4.77774 2.07792 4.93366 2.01215 5.09686 2.01003C5.26006 2.00792 5.41763 2.06962 5.536 2.182L11 7.647L10.999 8.352Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/findbarButton-previous.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M5.001 8.352L10.466 13.818C10.5845 13.9303 10.7421 13.9918 10.9053 13.9895C11.0685 13.9872 11.2244 13.9212 11.3397 13.8057C11.4549 13.6902 11.5205 13.5342 11.5225 13.3709C11.5244 13.2077 11.4625 13.0502 11.35 12.932L6.416 7.999L11.349 3.067C11.4614 2.94864 11.5231 2.79106 11.521 2.62786C11.5189 2.46466 11.4531 2.30874 11.3377 2.19333C11.2223 2.07792 11.0663 2.01215 10.9031 2.01003C10.7399 2.00792 10.5824 2.06962 10.464 2.182L5 7.647L5.001 8.352Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/loading-icon.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/images/loading-icon.gif


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-documentProperties.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8 1.5C4.41015 1.5 1.5 4.41015 1.5 8C1.5 11.5899 4.41015 14.5 8 14.5C11.5899 14.5 14.5 11.5899 14.5 8C14.5 4.41015 11.5899 1.5 8 1.5ZM0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8ZM8.75 4V5.5H7.25V4H8.75ZM8.75 12V7H7.25V12H8.75Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-firstPage.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M14 3.5H2V5H14V3.5ZM8 8.811L12.939 13.75L14.001 12.689L8.531 7.219C8.238 6.926 7.763 6.926 7.47 7.219L2 12.689L3.061 13.75L8 8.811Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-handTool.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M7.75 2.125C7.75 1.78021 8.03021 1.5 8.375 1.5C8.71979 1.5 9 1.78021 9 2.125V3.125V8H10.5V3.125C10.5 2.78021 10.7802 2.5 11.125 2.5C11.4698 2.5 11.75 2.78021 11.75 3.125V4.625V8H13.25V4.625C13.25 4.28021 13.5302 4 13.875 4C14.2198 4 14.5 4.28021 14.5 4.625V12.0188L13.3802 13.6628C13.2954 13.7872 13.25 13.9344 13.25 14.085V16H14.75V14.3162L15.8698 12.6722C15.9546 12.5478 16 12.4006 16 12.25V4.625C16 3.45179 15.0482 2.5 13.875 2.5C13.6346 2.5 13.4035 2.53996 13.188 2.6136C12.959 1.68724 12.1219 1 11.125 1C10.8235 1 10.5366 1.06286 10.2768 1.17618C9.9281 0.478968 9.20726 0 8.375 0C7.54274 0 6.8219 0.478968 6.47323 1.17618C6.21337 1.06286 5.9265 1 5.625 1C4.45179 1 3.5 1.95179 3.5 3.125V7.25317C2.66504 6.54282 1.41035 6.58199 0.621672 7.37067C-0.208221 8.20056 -0.208221 9.54644 0.621672 10.3763L0.62188 10.3765L5.499 15.2498V16H6.999V14.939C6.999 14.74 6.9199 14.5491 6.77912 14.4085L1.68233 9.31567C1.43823 9.07156 1.43823 8.67544 1.68233 8.43133C1.92644 8.18722 2.32257 8.18722 2.56667 8.43133L3.71967 9.58433C3.93417 9.79883 4.25676 9.863 4.53701 9.74691C4.81727 9.63082 5 9.35735 5 9.054V3.125C5 2.78021 5.28022 2.5 5.625 2.5C5.96921 2.5 6.24906 2.77927 6.25 3.12326V8H7.75L7.75 3.125L7.75 3.12178V2.125Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-lastPage.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8 8.189L12.939 3.25L14 4.311L8.531 9.781C8.238 10.074 7.763 10.074 7.47 9.781L2 4.311L3.061 3.25L8 8.189ZM14 13.5V12H2V13.5H14Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-rotateCcw.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M3.4105 4.83612L4.77001 6.19601C5.06701 6.49201 4.85701 7.00001 4.43701 7.00001H0.862006C0.602006 7.00001 0.391006 6.78901 0.391006 6.52901V2.95401C0.391006 2.53401 0.899006 2.32401 1.19601 2.62101L2.32796 3.75328C3.67958 1.78973 5.9401 0.5 8.5 0.5C12.636 0.5 16 3.864 16 8C16 12.136 12.636 15.5 8.5 15.5C4.704 15.5 1.566 12.663 1.075 9H2.59C3.068 11.833 5.532 14 8.5 14C11.809 14 14.5 11.309 14.5 8C14.5 4.691 11.809 2 8.5 2C6.35262 2 4.46893 3.13503 3.4105 4.83612Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-rotateCw.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M12.5895 4.83613L11.23 6.19601C10.933 6.49201 11.143 7.00001 11.563 7.00001H15.138C15.398 7.00001 15.609 6.78901 15.609 6.52901V2.95401C15.609 2.53401 15.101 2.32401 14.804 2.62101L13.672 3.75328C12.3204 1.78973 10.0599 0.5 7.5 0.5C3.364 0.5 0 3.864 0 8C0 12.136 3.364 15.5 7.5 15.5C11.296 15.5 14.434 12.663 14.925 9H13.41C12.932 11.833 10.468 14 7.5 14C4.191 14 1.5 11.309 1.5 8C1.5 4.691 4.191 2 7.5 2C9.64738 2 11.5311 3.13503 12.5895 4.83613Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-scrollHorizontal.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M3 3.78C3 2.7621 2.13279 2.11834 1.25 2.01476V2H1V3.5C1.18133 3.5 1.32279 3.5609 1.40708 3.63029C1.48961 3.69823 1.5 3.75458 1.5 3.78V11.72C1.5 11.7454 1.48961 11.8018 1.40708 11.8697C1.32279 11.9391 1.18133 12 1 12V13.5H1.25V13.4852C2.13279 13.3817 3 12.7379 3 11.72V3.78ZM10.5 4C10.5 3.72386 10.2761 3.5 10 3.5H6.5C6.22386 3.5 6 3.72386 6 4V11.5C6 11.7761 6.22386 12 6.5 12H10C10.2761 12 10.5 11.7761 10.5 11.5V4ZM10 2C11.1046 2 12 2.89543 12 4V11.5C12 12.6046 11.1046 13.5 10 13.5H6.5C5.39543 13.5 4.5 12.6046 4.5 11.5V4C4.5 2.89543 5.39543 2 6.5 2H10ZM15.5 2H15.25V2.01476C14.3672 2.11834 13.5 2.7621 13.5 3.78V11.72C13.5 12.7379 14.3672 13.3817 15.25 13.4852V13.5H15.5V12C15.3187 12 15.1772 11.9391 15.0929 11.8697C15.0104 11.8018 15 11.7454 15 11.72V3.78C15 3.75458 15.0104 3.69823 15.0929 3.63029C15.1772 3.5609 15.3187 3.5 15.5 3.5V2Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-scrollPage.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M3.5 2C3.5 1.72421 3.72421 1.5 4 1.5H12C12.2758 1.5 12.5 1.72421 12.5 2V14C12.5 14.2758 12.2758 14.5 12 14.5H4C3.72421 14.5 3.5 14.2758 3.5 14V2ZM4 0C2.89579 0 2 0.895786 2 2V14C2 15.1042 2.89579 16 4 16H12C13.1042 16 14 15.1042 14 14V2C14 0.895786 13.1042 0 12 0H4ZM5.89301 6H7.25V10H5.89301C5.54301 10 5.36801 10.423 5.61501 10.67L7.72101 12.776C7.87401 12.929 8.12301 12.929 8.27601 12.776L10.383 10.669C10.63 10.422 10.455 9.99902 10.105 9.99902H8.75V6H10.106C10.456 6 10.632 5.577 10.383 5.331L8.27601 3.224C8.12301 3.071 7.87401 3.071 7.72101 3.224L5.61501 5.33C5.36801 5.577 5.54301 6 5.89301 6Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-scrollVertical.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M2 1V1.25H2.01476C2.11834 2.13279 2.7621 3 3.78 3H11.72C12.7379 3 13.3817 2.13279 13.4852 1.25H13.5V1H12C12 1.18133 11.9391 1.32279 11.8697 1.40708C11.8018 1.48961 11.7454 1.5 11.72 1.5H3.78C3.75458 1.5 3.69823 1.48961 3.63029 1.40708C3.5609 1.32279 3.5 1.18133 3.5 1H2ZM4 6C3.72386 6 3.5 6.22386 3.5 6.5V10C3.5 10.2761 3.72386 10.5 4 10.5H11.5C11.7761 10.5 12 10.2761 12 10V6.5C12 6.22386 11.7761 6 11.5 6H4ZM2 6.5C2 5.39543 2.89543 4.5 4 4.5H11.5C12.6046 4.5 13.5 5.39543 13.5 6.5V10C13.5 11.1046 12.6046 12 11.5 12H4C2.89543 12 2 11.1046 2 10V6.5ZM3.78 13.5C2.7621 13.5 2.11834 14.3672 2.01476 15.25H2V15.5H3.5C3.5 15.3187 3.5609 15.1772 3.63029 15.0929C3.69823 15.0104 3.75458 15 3.78 15H11.72C11.7454 15 11.8018 15.0104 11.8697 15.0929C11.9391 15.1772 12 15.3187 12 15.5H13.5V15.25H13.4852C13.3817 14.3672 12.7379 13.5 11.72 13.5H3.78Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-scrollWrapped.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M2.5 1C2.5 1.27579 2.72421 1.5 3 1.5H5C5.27579 1.5 5.5 1.27579 5.5 1H7C7 2.10421 6.10421 3 5 3H3C1.89579 3 1 2.10421 1 1H2.5ZM2.5 6C2.5 5.72421 2.72421 5.5 3 5.5H5C5.27579 5.5 5.5 5.72421 5.5 6V10C5.5 10.2758 5.27579 10.5 5 10.5H3C2.72421 10.5 2.5 10.2758 2.5 10V6ZM3 4C1.89579 4 1 4.89579 1 6V10C1 11.1042 1.89579 12 3 12H5C6.10421 12 7 11.1042 7 10V6C7 4.89579 6.10421 4 5 4H3ZM10 6C10 5.72421 10.2242 5.5 10.5 5.5H12.5C12.7758 5.5 13 5.72421 13 6V10C13 10.2758 12.7758 10.5 12.5 10.5H10.5C10.2242 10.5 10 10.2758 10 10V6ZM10.5 4C9.39579 4 8.5 4.89579 8.5 6V10C8.5 11.1042 9.39579 12 10.5 12H12.5C13.6042 12 14.5 11.1042 14.5 10V6C14.5 4.89579 13.6042 4 12.5 4H10.5ZM3 14.5C2.72421 14.5 2.5 14.7242 2.5 15H1C1 13.8958 1.89579 13 3 13H5C6.10421 13 7 13.8958 7 15H5.5C5.5 14.7242 5.27579 14.5 5 14.5H3ZM10 15C10 14.7242 10.2242 14.5 10.5 14.5H12.5C12.7758 14.5 13 14.7242 13 15H14.5C14.5 13.8958 13.6042 13 12.5 13H10.5C9.39579 13 8.5 13.8958 8.5 15H10ZM10.5 1.5C10.2242 1.5 10 1.27579 10 1H8.5C8.5 2.10421 9.39579 3 10.5 3H12.5C13.6042 3 14.5 2.10421 14.5 1H13C13 1.27579 12.7758 1.5 12.5 1.5H10.5Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-selectTool.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M0.371588 2.93131C-0.203366 1.33422 1.3342 -0.20335 2.93129 0.371603L2.93263 0.372085L12.0716 3.68171C12.0718 3.68178 12.0714 3.68163 12.0716 3.68171C13.4459 4.17758 13.8478 5.9374 12.8076 6.9776L11.8079 7.97727L14.6876 10.8569C15.4705 11.6398 15.4705 12.9047 14.6876 13.6876L13.6476 14.7276C12.8647 15.5105 11.5998 15.5105 10.8169 14.7276L7.93725 11.8479L6.97758 12.8076C5.93739 13.8478 4.17779 13.4465 3.68192 12.0722C3.68184 12.072 3.682 12.0724 3.68192 12.0722L0.371588 2.93131ZM1.78292 2.42323C1.78298 2.4234 1.78286 2.42305 1.78292 2.42323L5.09281 11.5629C5.21725 11.9082 5.65728 12.0066 5.91692 11.7469L7.93725 9.72661L11.8776 13.6669C12.0747 13.864 12.3898 13.864 12.5869 13.6669L13.6269 12.6269C13.824 12.4298 13.824 12.1147 13.6269 11.9176L9.68659 7.97727L11.7469 5.91694C12.0066 5.65729 11.9081 5.21727 11.5629 5.09283L11.5619 5.09245L2.42321 1.78293C2.42304 1.78287 2.42339 1.783 2.42321 1.78293C2.02067 1.63847 1.63846 2.02069 1.78292 2.42323Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-spreadEven.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path fill-rule="evenodd" d="M2 3.5C1.72421 3.5 1.5 3.72421 1.5 4V12.5C1.5 12.7758 1.72421 13 2 13H7.25V3.5H2ZM14 13H8.75V3.5H14C14.2758 3.5 14.5 3.72421 14.5 4V12.5C14.5 12.7758 14.2758 13 14 13ZM0 4C0 2.89579 0.895786 2 2 2H14C15.1042 2 16 2.89579 16 4V12.5C16 13.6042 15.1042 14.5 14 14.5H2C0.895786 14.5 0 13.6042 0 12.5V4ZM10 6.5H11.5V7.5H10V9H11.5V10H10V11.5H12.25C12.6642 11.5 13 11.1642 13 10.75V5.75C13 5.33579 12.6642 5 12.25 5H10V6.5ZM4.5 6.5H3V5H5.25C5.66421 5 6 5.33579 6 5.75V7.75C6 8.03408 5.8395 8.29378 5.58541 8.42082L4.5 8.96353V10H6V11.5H3.75C3.33579 11.5 3 11.1642 3 10.75V8.5C3 8.21592 3.1605 7.95622 3.41459 7.82918L4.5 7.28647V6.5Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-spreadNone.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M4 1.5C3.72421 1.5 3.5 1.72421 3.5 2V14C3.5 14.2758 3.72421 14.5 4 14.5H12C12.2758 14.5 12.5 14.2758 12.5 14V2C12.5 1.72421 12.2758 1.5 12 1.5H4ZM2 2C2 0.895786 2.89579 0 4 0H12C13.1042 0 14 0.895786 14 2V14C14 15.1042 13.1042 16 12 16H4C2.89579 16 2 15.1042 2 14V2Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/secondaryToolbarButton-spreadOdd.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M1.5 4C1.5 3.72421 1.72421 3.5 2 3.5H7.25V13H2C1.72421 13 1.5 12.7758 1.5 12.5V4ZM8.75 13V3.5H14C14.2758 3.5 14.5 3.72421 14.5 4V12.5C14.5 12.7758 14.2758 13 14 13H8.75ZM2 2C0.895786 2 0 2.89579 0 4V12.5C0 13.6042 0.895786 14.5 2 14.5H14C15.1042 14.5 16 13.6042 16 12.5V4C16 2.89579 15.1042 2 14 2H2ZM4.75 5H3V6.5H4V11.5H5.5V5.75C5.5 5.33579 5.16421 5 4.75 5ZM10 6.5H11.5V7.28647L10.4146 7.82918C10.1605 7.95622 10 8.21592 10 8.5V10.75C10 11.1642 10.3358 11.5 10.75 11.5H13V10H11.5V8.96353L12.5854 8.42082C12.8395 8.29378 13 8.03408 13 7.75V5.75C13 5.33579 12.6642 5 12.25 5H10V6.5Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-bookmark.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M2 3.5C1.72421 3.5 1.5 3.72421 1.5 4V12C1.5 12.2758 1.72421 12.5 2 12.5H14C14.2758 12.5 14.5 12.2758 14.5 12V4C14.5 3.72421 14.2758 3.5 14 3.5H2ZM0 4C0 2.89579 0.895786 2 2 2H14C15.1042 2 16 2.89579 16 4V12C16 13.1042 15.1042 14 14 14H2C0.895786 14 0 13.1042 0 12V4ZM8.75 8.75H7.25V7.25H8.75V8.75ZM8.00001 4.625C5.91142 4.625 4.14736 5.94291 3.45159 7.77847L3.36761 8L3.45159 8.22153C4.14736 10.0571 5.91142 11.375 8.00001 11.375C10.0886 11.375 11.8527 10.0571 12.5484 8.22153L12.6324 8L12.5484 7.77847C11.8527 5.94291 10.0886 4.625 8.00001 4.625ZM8.00001 10.125C6.53912 10.125 5.28508 9.25455 4.71282 8C5.28508 6.74545 6.53912 5.875 8.00001 5.875C9.4609 5.875 10.7149 6.74545 11.2872 8C10.7149 9.25455 9.4609 10.125 8.00001 10.125Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-currentOutlineItem.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M10.803 4.74998V6.02436C10.803 6.39302 10.3571 6.57793 10.0967 6.31753L7.87716 4.098C7.71566 3.93649 7.71566 3.67434 7.87716 3.51283L10.0967 1.29329C10.3571 1.0329 10.8036 1.21722 10.8036 1.58588V3.24998H15V4.74998H10.803ZM8 1.24998H3V2.74998H6.5L8 1.24998ZM6.5 5.24998H3V6.74998H8L6.5 5.24998ZM3 13.25H15V14.75H3V13.25ZM6 9.24998H15V10.75H6V9.24998ZM1.5 5.24998H0V6.74998H1.5V5.24998ZM0 13.25H1.5V14.75H0V13.25ZM1.5 1.24998H0V2.74998H1.5V1.24998ZM3 9.24998H4.5V10.75H3V9.24998Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-download.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M9.79407 7.31811H7.86307C7.41807 7.31811 7.19407 7.85711 7.50907 8.17211L10.1911 10.8541C10.3861 11.0491 10.7031 11.0491 10.8981 10.8541L13.5801 8.17211C13.8951 7.85711 13.6721 7.31811 13.2261 7.31811H11.2941V4.38211H11.2961V3.13211H11.2941V2.30811H9.79407V3.13211H9.79107V4.38211H9.79507V7.31811H9.79407Z" fill="black"/>
3 | <path d="M14 3.13208H12.796V4.38208H14C14.345 4.38208 14.625 4.66208 14.625 5.00708V13.0071C14.625 13.3521 14.345 13.6321 14 13.6321H2C1.655 13.6321 1.375 13.3521 1.375 13.0071V3.00708C1.375 2.66208 1.655 2.38208 2 2.38208H5.643C5.82 2.38208 5.989 2.45808 6.108 2.58908L7.536 4.17508C7.654 4.30708 7.823 4.38208 8 4.38208H8.291V3.13208H8.278L7.036 1.75208C6.681 1.35808 6.173 1.13208 5.642 1.13208H2C0.966 1.13208 0.125 1.97308 0.125 3.00708V13.0071C0.125 14.0411 0.966 14.8821 2 14.8821H14C15.034 14.8821 15.875 14.0411 15.875 13.0071V5.00708C15.875 3.97308 15.034 3.13208 14 3.13208Z" fill="black"/>
4 | </svg>
5 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-editorFreeText.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8.625 2.942C8.625 2.725 8.735 2.527 8.918 2.412L10.026 1.72C10.126 1.658 10.24 1.625 10.358 1.625H12V0.375H10.358C10.006 0.375 9.663 0.474 9.364 0.66L8.256 1.353C8.161 1.412 8.081 1.488 8 1.562C7.918 1.488 7.839 1.412 7.744 1.353L6.635 0.66C6.336 0.474 5.993 0.375 5.642 0.375H4V1.625H5.642C5.759 1.625 5.874 1.658 5.974 1.72L7.082 2.412C7.266 2.527 7.376 2.725 7.376 2.942V8V13.058C7.376 13.275 7.266 13.473 7.082 13.588L5.973 14.28C5.873 14.342 5.759 14.375 5.641 14.375H4V15.625H5.642C5.994 15.625 6.337 15.526 6.636 15.34L7.744 14.648C7.84 14.588 7.919 14.512 8 14.439C8.081 14.512 8.161 14.588 8.256 14.648L9.365 15.341C9.664 15.527 10.007 15.626 10.359 15.626H12V14.376H10.358C10.241 14.376 10.126 14.343 10.026 14.281L8.918 13.589C8.734 13.474 8.625 13.276 8.625 13.059V8V2.942Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-editorInk.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M2.49913 12.6251C2.61913 12.6251 2.73913 12.6051 2.85713 12.5661L6.29013 11.4201L13.2891 4.4221C14.0191 3.6911 14.0191 2.5011 13.2891 1.7701L12.2291 0.710098C11.4971 -0.0199023 10.3091 -0.0199023 9.57713 0.710098L2.57813 7.7091L1.43313 11.1451C1.29813 11.5511 1.40213 11.9931 1.70513 12.2951C1.92113 12.5101 2.20613 12.6251 2.49913 12.6251ZM10.4611 1.5951C10.7031 1.3511 11.1021 1.3511 11.3441 1.5951L12.4051 2.6561C12.6491 2.8991 12.6491 3.2961 12.4051 3.5391L11.3401 4.6051L9.39513 2.6601L10.4611 1.5951ZM3.67013 8.3851L8.51013 3.5451L10.4541 5.4891L5.61413 10.3301L2.69713 11.3031L3.67013 8.3851Z" fill="black"/>
3 | <path d="M14.8169 13.314L13.0229 13.862C12.3309 14.073 11.5909 14.111 10.8859 13.968L8.80391 13.551C7.58491 13.308 6.29791 13.48 5.18491 14.036C3.95291 14.652 2.46691 14.412 1.49191 13.436L1.44091 13.385L0.60791 14.321C1.46291 15.175 2.59991 15.625 3.75291 15.625C4.42891 15.625 5.10991 15.471 5.74391 15.153C6.60891 14.721 7.60891 14.586 8.55891 14.777L10.6409 15.194C11.5509 15.376 12.5009 15.327 13.3879 15.056L15.1819 14.508L14.8169 13.314Z" fill="black"/>
4 | </svg>
5 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-menuArrow.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8.23336 10.4664L11.8474 6.85339C11.894 6.8071 11.931 6.75203 11.9563 6.69136C11.9816 6.63069 11.9946 6.56562 11.9946 6.49989C11.9946 6.43417 11.9816 6.3691 11.9563 6.30843C11.931 6.24776 11.894 6.19269 11.8474 6.14639C11.7536 6.05266 11.6264 6 11.4939 6C11.3613 6 11.2341 6.05266 11.1404 6.14639L7.99236 9.29339L4.84736 6.14739C4.75305 6.05631 4.62675 6.00592 4.49566 6.00706C4.36456 6.0082 4.23915 6.06078 4.14645 6.15348C4.05374 6.24619 4.00116 6.37159 4.00002 6.50269C3.99888 6.63379 4.04928 6.76009 4.14036 6.85439L7.75236 10.4674L8.23336 10.4664Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-openFile.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M10.4287 1.08398C10.5111 1.02905 10.608 0.999824 10.707 1H14.7L15 1.3V5.293C15 5.39194 14.9706 5.48864 14.9156 5.57088C14.8606 5.65311 14.7824 5.71718 14.691 5.75498C14.5996 5.79277 14.499 5.80259 14.402 5.78319C14.3049 5.76379 14.2159 5.71605 14.146 5.646L12.973 4.473L12.692 4.192L9.067 7.817C8.94923 7.93347 8.79034 7.99888 8.6247 7.99907C8.45907 7.99925 8.30003 7.93421 8.182 7.818C8.06518 7.70036 7.99962 7.54129 7.99962 7.3755C7.99962 7.20971 8.06518 7.05065 8.182 6.933L11.807 3.308L10.353 1.854C10.2829 1.78407 10.2351 1.6949 10.2158 1.59779C10.1964 1.50068 10.2063 1.40001 10.2442 1.30854C10.2821 1.21707 10.3464 1.13891 10.4287 1.08398ZM7.81694 2.06694C7.69973 2.18415 7.54076 2.25 7.375 2.25H2.85L2.25 2.85V13.15L2.85 13.75H13.15L13.75 13.15V8.625C13.75 8.45924 13.8158 8.30027 13.9331 8.18306C14.0503 8.06585 14.2092 8 14.375 8C14.5408 8 14.6997 8.06585 14.8169 8.18306C14.9342 8.30027 15 8.45924 15 8.625V13C15 13.5304 14.7893 14.0391 14.4142 14.4142C14.0391 14.7893 13.5304 15 13 15H3C2.46957 15 1.96086 14.7893 1.58579 14.4142C1.21071 14.0391 1 13.5304 1 13V3C1 2.46957 1.21071 1.96086 1.58579 1.58579C1.96086 1.21071 2.46957 1 3 1H7.375C7.54076 1 7.69973 1.06585 7.81694 1.18306C7.93415 1.30027 8 1.45924 8 1.625C8 1.79076 7.93415 1.94973 7.81694 2.06694Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-pageDown.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8.35176 10.9989L13.8178 5.53391C13.876 5.47594 13.9222 5.40702 13.9537 5.33113C13.9851 5.25524 14.0013 5.17387 14.0012 5.0917C14.0011 5.00954 13.9848 4.9282 13.9531 4.85238C13.9215 4.77656 13.8751 4.70775 13.8168 4.64991C13.6991 4.53309 13.5401 4.46753 13.3743 4.46753C13.2085 4.46753 13.0494 4.53309 12.9318 4.64991L7.99776 9.58491L3.06776 4.65091C2.9494 4.53853 2.79183 4.47682 2.62863 4.47894C2.46542 4.48106 2.3095 4.54683 2.19409 4.66224C2.07868 4.77765 2.01291 4.93357 2.01079 5.09677C2.00868 5.25997 2.07039 5.41754 2.18276 5.53591L7.64776 10.9999L8.35176 10.9989Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-pageUp.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8.35179 5.001L13.8178 10.466C13.876 10.524 13.9222 10.5929 13.9537 10.6688C13.9852 10.7447 14.0013 10.826 14.0012 10.9082C14.0011 10.9904 13.9848 11.0717 13.9531 11.1475C13.9215 11.2234 13.8751 11.2922 13.8168 11.35C13.6991 11.4668 13.5401 11.5324 13.3743 11.5324C13.2085 11.5324 13.0494 11.4668 12.9318 11.35L7.99879 6.416L3.06679 11.349C2.94842 11.4614 2.79085 11.5231 2.62765 11.521C2.46445 11.5189 2.30853 11.4531 2.19312 11.3377C2.07771 11.2223 2.01193 11.0663 2.00982 10.9031C2.0077 10.7399 2.06941 10.5824 2.18179 10.464L7.64779 5L8.35179 5.001Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-presentationMode.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M1.5 3C1.5 2.72421 1.72421 2.5 2 2.5H14C14.2758 2.5 14.5 2.72421 14.5 3V11C14.5 11.2758 14.2758 11.5 14 11.5H2C1.72421 11.5 1.5 11.2758 1.5 11V3ZM2 1C0.895786 1 0 1.89579 0 3V11C0 12.1042 0.895786 13 2 13H2.64979L1.35052 15.2499L2.64949 16L4.38194 13H11.6391L13.3715 16L14.6705 15.2499L13.3712 13H14C15.1042 13 16 12.1042 16 11V3C16 1.89579 15.1042 1 14 1H2ZM5.79501 4.64401V9.35601C5.79501 9.85001 6.32901 10.159 6.75701 9.91401L10.88 7.55801C11.312 7.31201 11.312 6.68901 10.88 6.44201L6.75701 4.08601C6.32801 3.84101 5.79501 4.15001 5.79501 4.64401Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-print.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M13 4H12V2C12 1.46957 11.7893 0.960859 11.4142 0.585786C11.0391 0.210714 10.5304 0 10 0L6 0C5.46957 0 4.96086 0.210714 4.58579 0.585786C4.21071 0.960859 4 1.46957 4 2V4H3C2.46957 4 1.96086 4.21071 1.58579 4.58579C1.21071 4.96086 1 5.46957 1 6V11C1 11.5304 1.21071 12.0391 1.58579 12.4142C1.96086 12.7893 2.46957 13 3 13H4V14C4 14.5304 4.21071 15.0391 4.58579 15.4142C4.96086 15.7893 5.46957 16 6 16H10C10.5304 16 11.0391 15.7893 11.4142 15.4142C11.7893 15.0391 12 14.5304 12 14V13H13C13.5304 13 14.0391 12.7893 14.4142 12.4142C14.7893 12.0391 15 11.5304 15 11V6C15 5.46957 14.7893 4.96086 14.4142 4.58579C14.0391 4.21071 13.5304 4 13 4V4ZM10.75 14.15L10.15 14.75H5.85L5.25 14.15V10H10.75V14.15ZM10.75 4H5.25V1.85L5.85 1.25H10.15L10.75 1.85V4V4ZM13 7.6L12.6 8H11.4L11 7.6V6.4L11.4 6H12.6L13 6.4V7.6Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-search.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M10.089 10.973L13.934 14.817C13.9918 14.8754 14.0605 14.9218 14.1364 14.9534C14.2122 14.9851 14.2936 15.0013 14.3757 15.0012C14.4579 15.0011 14.5392 14.9847 14.6149 14.9529C14.6907 14.9211 14.7594 14.8746 14.817 14.816C14.875 14.7579 14.921 14.6889 14.9523 14.613C14.9836 14.5372 14.9997 14.4559 14.9996 14.3738C14.9995 14.2917 14.9833 14.2104 14.9518 14.1346C14.9203 14.0588 14.8741 13.99 14.816 13.932L10.983 10.1L10.989 9.67299C11.489 8.96674 11.8152 8.15249 11.9413 7.29642C12.0674 6.44034 11.9897 5.5666 11.7145 4.74621C11.4394 3.92582 10.9745 3.18192 10.3578 2.57498C9.74104 1.96804 8.98979 1.51519 8.16509 1.25322C7.34039 0.991255 6.46551 0.927572 5.61157 1.06735C4.75763 1.20712 3.94871 1.54641 3.25057 2.05764C2.55243 2.56887 1.98476 3.23761 1.59371 4.0095C1.20265 4.7814 0.999236 5.63468 1 6.49999C1 7.95868 1.57946 9.35763 2.61091 10.3891C3.64236 11.4205 5.04131 12 6.5 12C7.689 12 8.788 11.62 9.687 10.978L10.089 10.973V10.973ZM6.5 10.75C4.157 10.75 2.25 8.84299 2.25 6.49999C2.25 4.15699 4.157 2.24999 6.5 2.24999C8.843 2.24999 10.75 4.15699 10.75 6.49999C10.75 8.84299 8.843 10.75 6.5 10.75Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-secondaryToolbarToggle.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M2.53406 13.818L7.99906 8.35203L8.00006 7.64703L2.53606 2.18203C2.41769 2.06965 2.26012 2.00795 2.09692 2.01006C1.93372 2.01218 1.7778 2.07795 1.66239 2.19336C1.54698 2.30877 1.48121 2.46469 1.47909 2.62789C1.47697 2.79109 1.53868 2.94867 1.65106 3.06703L6.58506 7.99803L1.65006 12.932C1.53754 13.0503 1.47565 13.2078 1.47758 13.371C1.47951 13.5342 1.54511 13.6902 1.66039 13.8057C1.77567 13.9213 1.93152 13.9872 2.09472 13.9895C2.25792 13.9918 2.41557 13.9303 2.53406 13.818ZM8.53406 13.818L13.9991 8.35203L14.0001 7.64703L8.53606 2.18203C8.4177 2.06965 8.26012 2.00795 8.09692 2.01006C7.93372 2.01218 7.7778 2.07795 7.66239 2.19336C7.54698 2.30877 7.48121 2.46469 7.47909 2.62789C7.47697 2.79109 7.53868 2.94867 7.65106 3.06703L12.5851 7.99803L7.65006 12.932C7.53754 13.0503 7.47565 13.2078 7.47758 13.371C7.47951 13.5342 7.54511 13.6902 7.66039 13.8057C7.77567 13.9213 7.93152 13.9872 8.09472 13.9895C8.25792 13.9918 8.41557 13.9303 8.53406 13.818Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-viewAttachments.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M3.5 3.75C3.5 1.67879 5.17879 0 7.25 0C9.32121 0 11 1.67879 11 3.75V10.25C11 11.4922 9.99221 12.5 8.75 12.5C7.50779 12.5 6.5 11.4922 6.5 10.25V3.5H8V10.25C8 10.6638 8.33621 11 8.75 11C9.16379 11 9.5 10.6638 9.5 10.25V3.75C9.5 2.50721 8.49279 1.5 7.25 1.5C6.00721 1.5 5 2.50721 5 3.75V10.75C5 12.8208 6.67921 14.5 8.75 14.5C10.8208 14.5 12.5 12.8208 12.5 10.75V3.5H14V10.75C14 13.6492 11.6492 16 8.75 16C5.85079 16 3.5 13.6492 3.5 10.75V3.75Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-viewLayers.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M8.36645 2.34562C8.13878 2.21813 7.86122 2.21813 7.63355 2.34562L1.38355 5.84562C1.14669 5.97826 1 6.22853 1 6.5C1 6.77147 1.14669 7.02174 1.38355 7.15438L7.63355 10.6544C7.86122 10.7819 8.13878 10.7819 8.36645 10.6544L14.6165 7.15438C14.8533 7.02174 15 6.77147 15 6.5C15 6.22853 14.8533 5.97826 14.6165 5.84562L8.36645 2.34562ZM8 9.14041L3.28499 6.5L8 3.85959L12.715 6.5L8 9.14041ZM1.63647 9.0766L7.99999 12.6404L14.3255 9.09761L15.0585 10.4063L8.36649 14.1543C8.13881 14.2818 7.86122 14.2819 7.63353 14.1543L0.903534 10.3853L1.63647 9.0766Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-viewOutline.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M3 1.25H15V2.75H3V1.25ZM15 5.25H3V6.75H15V5.25ZM15 13.25H3V14.75H15V13.25ZM15 9.25H6V10.75H15V9.25ZM0 5.25H1.5V6.75H0V5.25ZM1.5 13.25H0V14.75H1.5V13.25ZM0 1.25H1.5V2.75H0V1.25ZM4.5 9.25H3V10.75H4.5V9.25Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-viewThumbnail.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M3.5 2C3.5 1.72421 3.72421 1.5 4 1.5H5.25C5.52579 1.5 5.75 1.72421 5.75 2V5.25C5.75 5.52579 5.52579 5.75 5.25 5.75H4C3.72421 5.75 3.5 5.52579 3.5 5.25V2ZM4 0C2.89579 0 2 0.895786 2 2V5.25C2 6.35421 2.89579 7.25 4 7.25H5.25C6.35421 7.25 7.25 6.35421 7.25 5.25V2C7.25 0.895786 6.35421 0 5.25 0H4ZM3.5 10.75C3.5 10.4742 3.72421 10.25 4 10.25H5.25C5.52579 10.25 5.75 10.4742 5.75 10.75V14C5.75 14.2758 5.52579 14.5 5.25 14.5H4C3.72421 14.5 3.5 14.2758 3.5 14V10.75ZM4 8.75C2.89579 8.75 2 9.64579 2 10.75V14C2 15.1042 2.89579 16 4 16H5.25C6.35421 16 7.25 15.1042 7.25 14V10.75C7.25 9.64579 6.35421 8.75 5.25 8.75H4ZM10.75 1.5C10.4742 1.5 10.25 1.72421 10.25 2V5.25C10.25 5.52579 10.4742 5.75 10.75 5.75H12C12.2758 5.75 12.5 5.52579 12.5 5.25V2C12.5 1.72421 12.2758 1.5 12 1.5H10.75ZM8.75 2C8.75 0.895786 9.64579 0 10.75 0H12C13.1042 0 14 0.895786 14 2V5.25C14 6.35421 13.1042 7.25 12 7.25H10.75C9.64579 7.25 8.75 6.35421 8.75 5.25V2ZM10.25 10.75C10.25 10.4742 10.4742 10.25 10.75 10.25H12C12.2758 10.25 12.5 10.4742 12.5 10.75V14C12.5 14.2758 12.2758 14.5 12 14.5H10.75C10.4742 14.5 10.25 14.2758 10.25 14V10.75ZM10.75 8.75C9.64579 8.75 8.75 9.64579 8.75 10.75V14C8.75 15.1042 9.64579 16 10.75 16H12C13.1042 16 14 15.1042 14 14V10.75C14 9.64579 13.1042 8.75 12 8.75H10.75Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-zoomIn.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M7.00488 9.75V14C7.00488 14.1658 7.07073 14.3247 7.18794 14.4419C7.30515 14.5592 7.46412 14.625 7.62988 14.625C7.79564 14.625 7.95461 14.5592 8.07183 14.4419C8.18904 14.3247 8.25488 14.1658 8.25488 14V9.75L8.75488 9.25H13.0049C13.1706 9.25 13.3296 9.18415 13.4468 9.06694C13.564 8.94973 13.6299 8.79076 13.6299 8.625C13.6299 8.45924 13.564 8.30027 13.4468 8.18306C13.3296 8.06585 13.1706 8 13.0049 8H8.75488L8.25488 7.5V3.25C8.25488 3.08424 8.18904 2.92527 8.07183 2.80806C7.95461 2.69085 7.79564 2.625 7.62988 2.625C7.46412 2.625 7.30515 2.69085 7.18794 2.80806C7.07073 2.92527 7.00488 3.08424 7.00488 3.25V7.5L6.50488 8H2.25488C2.08912 8 1.93015 8.06585 1.81294 8.18306C1.69573 8.30027 1.62988 8.45924 1.62988 8.625C1.62988 8.79076 1.69573 8.94973 1.81294 9.06694C1.93015 9.18415 2.08912 9.25 2.25488 9.25H6.39188L7.00488 9.75Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/toolbarButton-zoomOut.svg:
--------------------------------------------------------------------------------
1 | <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
2 | <path d="M13.375 9.25C13.5408 9.25 13.6997 9.18415 13.8169 9.06694C13.9342 8.94973 14 8.79076 14 8.625C14 8.45924 13.9342 8.30027 13.8169 8.18306C13.6997 8.06585 13.5408 8 13.375 8H2.625C2.45924 8 2.30027 8.06585 2.18306 8.18306C2.06585 8.30027 2 8.45924 2 8.625C2 8.79076 2.06585 8.94973 2.18306 9.06694C2.30027 9.18415 2.45924 9.25 2.625 9.25H13.375Z" fill="black"/>
3 | </svg>
4 | 


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/treeitem-collapsed.svg:
--------------------------------------------------------------------------------
1 | <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M13 9L6 5v8z"/></svg>


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/images/treeitem-expanded.svg:
--------------------------------------------------------------------------------
1 | <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16"><path d="M10 13l4-7H6z"/></svg>


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitDingbats.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitDingbats.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitFixed.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitFixed.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitFixedBold.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitFixedBold.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitFixedBoldItalic.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitFixedBoldItalic.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitFixedItalic.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitFixedItalic.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSans.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSans.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSansBold.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSansBold.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSansBoldItalic.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSansBoldItalic.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSansItalic.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSansItalic.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSerif.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSerif.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSerifBold.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSerifBold.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSerifBoldItalic.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSerifBoldItalic.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSerifItalic.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSerifItalic.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/FoxitSymbol.pfb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/FoxitSymbol.pfb


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/LiberationSans-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/LiberationSans-Bold.ttf


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/LiberationSans-BoldItalic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/LiberationSans-BoldItalic.ttf


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/LiberationSans-Italic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/LiberationSans-Italic.ttf


--------------------------------------------------------------------------------
/app/public/static/pdfjs/web/standard_fonts/LiberationSans-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/pdfjs/web/standard_fonts/LiberationSans-Regular.ttf


--------------------------------------------------------------------------------
/app/public/static/readium/css/annotations.css:
--------------------------------------------------------------------------------
 1 | /* The z-index is to ensure that the bookmark is accessible even if it's overlayed on a highlight/underline of some type */
 2 | .comment {
 3 |     background-image : url("/images/comment_clickable_icon.png");
 4 |     background-repeat : no-repeat;
 5 |     opacity : 0.5;
 6 |     z-index : 10; 
 7 | }
 8 | .hover-comment {
 9 |     background-image : url("/images/comment_clickable_icon.png");
10 |     background-repeat : no-repeat;
11 |     opacity : 1.0;
12 |     z-index : 10;
13 | }
14 | 
15 | .bookmark {
16 |     position : fixed;
17 |     top : "0px";
18 |     right : "0px";
19 |     background-color: red;
20 | }
21 | 
22 | .highlight {
23 |     position: absolute;
24 |     opacity: 0.2;
25 |     background-color: red;
26 | }
27 | 
28 | .hover-highlight {
29 |     position: absolute;
30 |     opacity: 0.4;
31 |     background-color: red;
32 | }
33 | 
34 | .underline-range {
35 |     position: absolute;
36 | }
37 | 
38 | .underline-range > .underline {
39 |     position: relative;
40 |     height: 15%;
41 |     opacity: 0.2;
42 |     background-color: red;
43 | }
44 | 
45 | .underline-range > .hover-underline {
46 |     position: relative;
47 |     height: 15%;
48 |     opacity: 0.4;
49 |     background-color: red;
50 | }
51 | 
52 | .underline-range > .transparent-part {
53 |     position: relative;
54 |     height: 85%;
55 |     background-color: transparent;
56 | }


--------------------------------------------------------------------------------
/app/public/static/readium/embed.html:
--------------------------------------------------------------------------------
1 | <!DOCTYPE html>
2 | <html>
3 | 	<body>
4 | 		<iframe width="600" height="400" src="simpleviewer.html?epub=epub_content/moby_dick&amp;embedded=true" style="border:1px #ddd solid;" allowfullscreen mozallowfullscreen webkitallowfullscreen></iframe>
5 | 		<div></div>
6 | 		<iframe width="600" height="400" src="simpleviewer.html?epub=epub_content/page-blanche&amp;embedded=true" style="border:1px #ddd solid;" allowfullscreen mozallowfullscreen webkitallowfullscreen></iframe>
7 | 	</body>
8 | </html>


--------------------------------------------------------------------------------
/app/public/static/readium/extend_require_config.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | require.config({
15 | 	config : {
16 |     	'EpubReader' : {
17 |             'useSimpleLoader' : false // the cloud reader cannot pre-process HTML content documents and may need to load zipped EPUBs too.
18 |     	}
19 |     }
20 | });
21 | 


--------------------------------------------------------------------------------
/app/public/static/readium/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/fonts/glyphicons-halflings-regular.eot


--------------------------------------------------------------------------------
/app/public/static/readium/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/fonts/glyphicons-halflings-regular.ttf


--------------------------------------------------------------------------------
/app/public/static/readium/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/fonts/glyphicons-halflings-regular.woff


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/clean.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | 'use strict';
15 | 
16 | module.exports = function(grunt) {
17 | 
18 |     return {
19 |         chromeApp: ['build/chrome-app'],
20 |         cloudReader: ['build/cloud-reader']
21 |     };
22 | };
23 | 


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/concurrent.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | 'use strict';
15 | 
16 | module.exports = function(grunt) {
17 | 
18 |     return {
19 |         serverwatch: {
20 |             tasks: ['runserver', 'watch:readiumjs'],
21 |             options: {
22 |                 logConcurrentOutput: true
23 |             }
24 |         }
25 |     };
26 | };
27 | 


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/crx.js:
--------------------------------------------------------------------------------
 1 | 'use strict';
 2 | 
 3 | module.exports = function(grunt) {
 4 | 	return {
 5 | 		chromeApp : {
 6 | 			 "src": "build/chrome-app",
 7 |       		 "dest": "build/Readium.crx",
 8 |       		 privateKey: 'tests/test.pem'
 9 | 		}
10 | 	}
11 | }


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/env.js:
--------------------------------------------------------------------------------
 1 | 'use strict';
 2 | 
 3 | module.exports = function(grunt) {
 4 | 
 5 |     return {
 6 |         chromeApp:{
 7 |         	MODE: 'chromeApp'
 8 |         },
 9 |       	ff:{
10 |       		MODE: 'firefox'
11 |       	},
12 |       	ie: {
13 |       		MODE: 'internet explorer'
14 |       	},
15 |       	chrome:{
16 |       		MODE: 'chrome'
17 |       	},
18 |       	sauce:{
19 |       		USE_SAUCE: 'true'
20 |       	}
21 |     };
22 | };


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/express.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | 'use strict';
15 | 
16 | module.exports = function(grunt) {
17 | 
18 |     var path = require('path');
19 |     
20 |     return {
21 |         dev: {
22 |             options: {
23 |                 port: 8080,
24 |                 bases: process.cwd() //path.resolve(__dirname)
25 |             }
26 |         },
27 |         test : {
28 |             options: {
29 |                 port: 8080,
30 |                 bases: process.cwd() + '/build/cloud-reader'//path.resolve(__dirname)
31 |             }
32 |         }
33 |         
34 |     };
35 | };
36 | 


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/nodeunit.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | 'use strict';
15 | 
16 | module.exports = function(grunt) {
17 | 
18 |     return {
19 |         chromeApp: ['chrome-app/tests/tests.js']
20 |     };
21 | };
22 | 


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/run_grunt.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | 'use strict';
15 | 
16 | module.exports = function(grunt) {
17 | 
18 |     return {
19 |         readiumjs: {
20 |             options: {
21 |                 cwd: 'readium-js'
22 |             },
23 |             src: 'readium-js/Gruntfile.js'
24 |         }
25 |     };
26 | };
27 | 


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/simplemocha.js:
--------------------------------------------------------------------------------
 1 | 'use strict';
 2 | 
 3 | module.exports = function(grunt) {
 4 | 	return {
 5 | 		options: {
 6 | 	      timeout: 180000,
 7 | 	      ui: 'bdd'
 8 | 	    },
 9 | 
10 | 	    all: { src: ['tests/tests.js'] }
11 | 	}
12 | }


--------------------------------------------------------------------------------
/app/public/static/readium/grunt/watch.js:
--------------------------------------------------------------------------------
 1 | //  Copyright (c) 2014 Readium Foundation and/or its licensees. All rights reserved.
 2 | //  
 3 | //  Redistribution and use in source and binary forms, with or without modification, 
 4 | //  are permitted provided that the following conditions are met:
 5 | //  1. Redistributions of source code must retain the above copyright notice, this 
 6 | //  list of conditions and the following disclaimer.
 7 | //  2. Redistributions in binary form must reproduce the above copyright notice, 
 8 | //  this list of conditions and the following disclaimer in the documentation and/or 
 9 | //  other materials provided with the distribution.
10 | //  3. Neither the name of the organization nor the names of its contributors may be 
11 | //  used to endorse or promote products derived from this software without specific 
12 | //  prior written permission.
13 | 
14 | 'use strict';
15 | 
16 | module.exports = function(grunt) {
17 | 
18 |     return {
19 |         readiumjs: {
20 |             files: ['readium-js/**/*.js', '!readium-js/out/Readium.js', '!readium-js/**/node_modules/**'],
21 |             tasks: ['update-readium']
22 |         }
23 |     };
24 | };
25 | 


--------------------------------------------------------------------------------
/app/public/static/readium/images/about_readium_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/about_readium_logo.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover1.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover2.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover3.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover4.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover5.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover6.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover7.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/covers/cover8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/covers/cover8.jpg


--------------------------------------------------------------------------------
/app/public/static/readium/images/epub-touch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/epub-touch-icon.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/epub_favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/epub_favicon.ico


--------------------------------------------------------------------------------
/app/public/static/readium/images/glyphicons_115_text_smaller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/glyphicons_115_text_smaller.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/glyphicons_116_text_bigger.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/glyphicons_116_text_bigger.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/ico_doublepage_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/ico_doublepage_up.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/ico_singlepage_up.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/ico_singlepage_up.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/library_arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/library_arrow.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/margin1_off.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/margin1_off.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/margin4_off.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/margin4_off.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/partner_logos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/partner_logos.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/readium-touch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/readium-touch-icon.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/readium_favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/readium_favicon.png


--------------------------------------------------------------------------------
/app/public/static/readium/images/readium_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/images/readium_logo.png


--------------------------------------------------------------------------------
/app/public/static/readium/lib/ReadiumViewerLite.js:
--------------------------------------------------------------------------------
 1 | require(['jquery', 'EpubReader'], function($, EpubReader){
 2 | 	var getQueryParamData = function(){
 3 |         var query = window.location.search;
 4 |         if (query && query.length){
 5 |             query = query.substring(1);
 6 |         }
 7 |         data = {};
 8 |         if (query.length){
 9 |             var keyParams = query.split('&');
10 |             for (var x = 0; x < keyParams.length; x++)
11 |             {
12 |                 var keyVal = keyParams[x].split('=');
13 |                 if(keyVal.length > 1){
14 |                     data[keyVal[0]] = keyVal[1];
15 |                 }
16 |                 
17 |             }
18 | 
19 |         }
20 |         return data;
21 |     }
22 | 
23 |     $(function(){
24 |     	//var epubUrl = getQueryParamData();
25 |     	//EpubReader.loadUI(data);
26 |     });
27 | });
28 | 


--------------------------------------------------------------------------------
/app/public/static/readium/lib/Spinner.js:
--------------------------------------------------------------------------------
 1 | define(['spin'], function(Spinner){
 2 | 	var opts = {
 3 |       lines: 17, // The number of lines to draw
 4 |       length: 0, // The length of each line
 5 |       width: 10, // The line thickness
 6 |       radius: 48, // The radius of the inner circle
 7 |       corners: 1, // Corner roundness (0..1)
 8 |       rotate: 0, // The rotation offset
 9 |       direction: 1, // 1: clockwise, -1: counterclockwise
10 |       color: '#000', // #rgb or #rrggbb or array of colors
11 |       speed: 1, // Rounds per second
12 |       trail: 66, // Afterglow percentage
13 |       shadow: false, // Whether to render a shadow
14 |       hwaccel: false, // Whether to use hardware acceleration
15 |       className: 'spinner', // The CSS class to assign to the spinner
16 |       zIndex: 2e9, // The z-index (defaults to 2000000000)
17 |       top: 'auto', // Top position relative to parent in px
18 |       left: 'auto' // Left position relative to parent in px
19 |     };
20 |     return new Spinner(opts);
21 | });


--------------------------------------------------------------------------------
/app/public/static/readium/lib/analytics/Analytics.js:
--------------------------------------------------------------------------------
1 | define(function(){
2 | 	return{
3 | 		trackView : function(){},
4 | 		sendEvent : function(){}
5 | 	}
6 | });


--------------------------------------------------------------------------------
/app/public/static/readium/lib/console_shim.js:
--------------------------------------------------------------------------------
 1 | /*
 2 | This code is required to IE for console shim
 3 | */
 4 | 
 5 | (function(){
 6 |     "use strict";
 7 | 
 8 |     if (!console["debug"]) console.debug = console.log;
 9 |     if (!console["info"]) console.info = console.log;
10 |     if (!console["warn"]) console.warn = console.log;
11 |     if (!console["error"]) console.error = console.log;
12 | })();


--------------------------------------------------------------------------------
/app/public/static/readium/lib/migration/MigrationManager.js:
--------------------------------------------------------------------------------
1 | define(function(){
2 | 
3 | 	return{
4 | 		checkIfNeedsMigration : function(callback){
5 | 			callback(false);
6 | 		}
7 | 	}
8 | });


--------------------------------------------------------------------------------
/app/public/static/readium/lib/storage/StaticStorageManager.js:
--------------------------------------------------------------------------------
 1 | define([], function(){
 2 | 	var StaticStorageManager = {
 3 | 		
 4 | 		saveFile : function(path, blob, success, error){
 5 | 			success()
 6 | 		},
 7 | 		
 8 | 		deleteFile : function(path, success, error){
 9 | 			success();
10 | 			
11 | 		},
12 | 
13 | 		getPathUrl : function(path){
14 | 			if (path == '/epub_library.json')
15 | 			{
16 | 				return 'epub_content/epub_library.json';
17 | 			}
18 | 			return path;
19 | 		},
20 | 		initStorage: function(success, error){
21 | 			success();
22 | 		}
23 | 	}
24 | 	return StaticStorageManager;
25 | });
26 | 


--------------------------------------------------------------------------------
/app/public/static/readium/lib/thirdparty/console_shim.js:
--------------------------------------------------------------------------------
 1 | /*
 2 | This code is required to IE for console shim
 3 | */
 4 | 
 5 | (function(){
 6 |     "use strict";
 7 | 
 8 |     if (!console["debug"]) console.debug = console.log;
 9 |     if (!console["info"]) console.info = console.log;
10 |     if (!console["warn"]) console.warn = console.log;
11 |     if (!console["error"]) console.error = console.log;
12 | })();


--------------------------------------------------------------------------------
/app/public/static/readium/lib/thirdparty/jath.min.js:
--------------------------------------------------------------------------------
1 | (function(){function f(a,b,c){c===void 0&&(c=b);if(h(a)==="array"){var e=[];if(a[0]!=null)if(g=="msie"){b.setProperty("SelectionLanguage","XPath");for(var c=c.selectNodes(a[0]),d;d=c.nextNode();)e.push(f(a[1],b,d))}else if(g=="node"){c=c.find(a[0]);for(d=0;d<c.length;d++)e.push(f(a[1],b,c[d]))}else for(c=b.evaluate(a[0],c,Jath.resolver,XPathResult.ANY_TYPE,null);d=c.iterateNext();)e.push(f(a[1],b,d));else for(d=1;d<a.length;d++)e.push(f(a[d],b,c));a=e}else if(h(a)==="object"){d={};for(e in a)d[e]=
2 | f(a[e],b,c);a=d}else e=c,g=="msie"?(b.setProperty("SelectionLanguage","XPath"),a=h(a)=="string"&&a.substring(0,1)!=Jath.literalChar?e.selectSingleNode(a).text:a.substring(1)):g=="node"?(require("sys").puts(a),a=e.get(a).text()):a=h(a)=="string"&&a[0]!=Jath.literalChar?b.evaluate(a,e,Jath.resolver,XPathResult.STRING_TYPE,null).stringValue:a.substring(1);return a}function h(a){var b=typeof a;b==="object"&&(a?typeof a.length==="number"&&!a.propertyIsEnumerable("length")&&typeof a.splice==="function"&&
3 | (b="array"):b="null");return b}Jath={};Jath.parse=f;Jath.resolver=null;Jath.literalChar=":";var g;typeof WScript!="undefined"?g="msie":typeof process!="undefined"?(g="node",require("libxmljs"),exports.parse=f):g=navigator.userAgent.toLowerCase().indexOf("msie")>-1?"msie":"standards"})();
4 | 


--------------------------------------------------------------------------------
/app/public/static/readium/lib/thirdparty/text/package.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "name": "text",
 3 |     "version": "2.0.6",
 4 |     "description": "An AMD loader plugin for loading text resources.",
 5 |     "categories": [
 6 |         "Loader plugins"
 7 |     ],
 8 |     "main": "text.js",
 9 |     "github": "https://github.com/requirejs/text",
10 |     "bugs": {
11 |         "web": "https://github.com/requirejs/text/issues"
12 |     },
13 |     "repositories": [
14 |         {
15 |             "type": "git",
16 |             "url": "https://github.com/requirejs/text.git"
17 |         }
18 |     ],
19 |     "licenses": [
20 |         {
21 |             "type": "MIT",
22 |             "url": "http://www.opensource.org/licenses/mit-license.php"
23 |         },
24 |         {
25 |             "type": "BSD New",
26 |             "url": "http://opensource.org/licenses/BSD-3-Clause"
27 |         }
28 |     ],
29 |     "volo": {
30 |         "url": "https://raw.github.com/requirejs/text/{version}/text.js"
31 |     }
32 | }
33 | 


--------------------------------------------------------------------------------
/app/public/static/readium/lib/versioning/PackagedVersioning.js:
--------------------------------------------------------------------------------
 1 | define(['text!viewer-version', 'Readium'], function(versionTxt, Readium){
 2 | 	var version = JSON.parse(versionTxt);
 3 | 
 4 | 	var PackagedVersioning = {
 5 | 		getVersioningInfo : function(callback){
 6 | 			var versionInfo = {};
 7 | 			var readiumVersion = Readium.version;
 8 |             versionInfo.viewer = version
 9 |             versionInfo.readiumJs = readiumVersion.readiumJs;
10 |             versionInfo.readiumSharedJs = readiumVersion.readiumSharedJs
11 | 			callback(versionInfo);
12 | 		}
13 | 
14 | 	}
15 | 	return PackagedVersioning;
16 | });


--------------------------------------------------------------------------------
/app/public/static/readium/lib/versioning/UnpackagedVersioning.js:
--------------------------------------------------------------------------------
 1 | define(['jquery', 'Readium'], function($, Readium){
 2 | 	var UnpackagedVersioning = {
 3 | 		getVersioningInfo: function(callback){
 4 | 
 5 | 			var obj = {
 6 | 				release: false,
 7 | 				clean: false,
 8 | 				devMode: true
 9 | 			}
10 | 			var readiumVersion = Readium.version,
11 | 				versionInfo = {};
12 |             versionInfo.viewer = obj;
13 |             versionInfo.readiumJs = readiumVersion.readiumJs;
14 |             versionInfo.readiumSharedJs = readiumVersion.readiumSharedJs;
15 | 
16 | 
17 | 			$.get('package.json', function(data){
18 | 				obj.version = data.version;
19 | 				obj.chromeVersion = '2.' + data.version.substring(2);
20 | 				
21 | 				if (obj.sha){
22 | 					callback(versionInfo);
23 | 				}
24 | 			})
25 | 		}
26 | 		
27 | 	}
28 | 	return UnpackagedVersioning;
29 | });
30 | 


--------------------------------------------------------------------------------
/app/public/static/readium/lib/workers/Messages.js:
--------------------------------------------------------------------------------
 1 | define(function(){
 2 | 	return {
 3 | 		// window -> worker messages
 4 | 		IMPORT_ZIP : 0,
 5 | 		OVERWRITE_CONTINUE : 1,
 6 | 		FIND_PACKAGE_RESPONSE: 2,
 7 | 		PARSE_PACKAGE_RESPONSE: 3,
 8 | 		DELETE_EPUB : 4,
 9 | 		IMPORT_DIR : 5,
10 | 		IMPORT_URL: 6,
11 | 		MIGRATE: 7,
12 | 		OVERWRITE_SIDE_BY_SIDE: 8,
13 | 
14 | 		// worker -> window messages
15 | 		SUCCESS : 100,
16 | 		PROGRESS : 101,
17 | 		ERROR : 102,
18 | 		OVERWRITE : 103,
19 | 		FIND_PACKAGE : 104,
20 | 		PARSE_PACKAGE: 105,
21 | 
22 | 
23 | 		PROGRESS_EXTRACTING : 200,
24 | 		PROGRESS_WRITING: 201,
25 | 		PROGRESS_DELETING: 202,
26 | 		PROGRESS_MIGRATING: 203,
27 | 
28 | 		ERROR_STORAGE : 300,
29 | 		ERROR_EPUB : 301,
30 | 		ERROR_AJAX : 302,
31 | 
32 | 	}
33 | });


--------------------------------------------------------------------------------
/app/public/static/readium/logos/mini-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/public/static/readium/logos/mini-logo.png


--------------------------------------------------------------------------------
/app/public/static/readium/simpleviewer2.html:
--------------------------------------------------------------------------------
 1 | <!DOCTYPE html>
 2 | <html>
 3 | <head>
 4 |     <meta charset="utf-8">
 5 |     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6 | 
 7 |     <link href="images/readium_favicon.png" rel="shortcut icon"/>
 8 |     <link href="images/readium-touch-icon.png" rel="apple-touch-icon"/>
 9 |     <link rel="stylesheet" type="text/css" href="css/bootstrap.css">
10 |     <link rel="stylesheet" type="text/css" href="css/viewer.css">
11 |     <link rel="stylesheet" type="text/css" href="css/readium_js.css">
12 | 
13 |     <!--
14 |     <script data-main="lib/ReadiumViewerLite.js" src="lib/require.js" type="text/javascript"></script>
15 |     <script src="require_config.js" type="text/javascript"></script>
16 |     <script src="extend_require_config.js" type="text/javascript"></script>
17 |     -->
18 | 
19 |     </head>
20 | 
21 |     <!-- This is all application-specific HTML -->
22 |     <body>
23 |         <nav class="navbar" role="banner" aria-label="{{Strings.i18n_toolbar}}"></nav>
24 |         <div id="app-container"></div>
25 |     </body>
26 | 
27 | </html>
28 | 


--------------------------------------------------------------------------------
/app/public/static/readium/templates/details-dialog.html:
--------------------------------------------------------------------------------
 1 | <div id="details-dialog" class="modal fade details-dialog" tabindex="-1">
 2 |   <div class="modal-dialog">
 3 |     <div class="modal-content">
 4 |       <div class="modal-body">
 5 |         <p>Loading Details...</p>
 6 |         <progress></progress>
 7 |       </div>
 8 |     </div><!-- /.modal-content -->
 9 |   </div><!-- /.modal-dialog -->
10 | </div><!-- /.modal -->


--------------------------------------------------------------------------------
/app/public/static/readium/templates/empty-library.html:
--------------------------------------------------------------------------------
1 | <div class="pull-right">
2 | 	<div id="empty-message">
3 | 		{{strings.i18n_add_items}}
4 | 	</div>
5 | 	<img id="empty-message-arrow" src="images/library_arrow.png" alt="">
6 | </div>


--------------------------------------------------------------------------------
/app/public/static/readium/templates/library-body.html:
--------------------------------------------------------------------------------
1 | <div class="row library-items" role="main">
2 | </div>


--------------------------------------------------------------------------------
/app/public/static/readium/templates/library-navbar.html:
--------------------------------------------------------------------------------
 1 | <div class="btn-group navbar-left">
 2 |     <button id="aboutButt1" tabindex="1" type="button" class="btn icon-logo" data-toggle="modal" data-target="#about-dialog" title="{{strings.about}}" aria-label="{{strings.about}}"></button>
 3 | </div>
 4 | <div class="btn-group navbar-right">
 5 | 	<button tabindex="1" type="button" class="btn icon-thumbnails" title="{{strings.thumbnail_view}}" aria-label="{{strings.thumbnail_view}}">
 6 | 		<span class="glyphicon glyphicon-th" aria-hidden="true"></span>
 7 | 	</button>
 8 | 	<button tabindex="1" type="button" class="btn icon-list-view" title="{{strings.list_view}}" aria-label="{{strings.list_view}}">
 9 | 		<span class="glyphicon glyphicon-align-justify" aria-hidden="true"></span>
10 | 	</button>
11 |     <button id="addbutt" tabindex="1" type="button" class="btn icon-add-epub" title="{{strings.i18n_add_book}}" aria-label="{{strings.i18n_add_book}}" data-toggle="modal" data-target="#add-epub-dialog">
12 |     	<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
13 |     </button>
14 |     <button id="settbutt1" tabindex="1" type="button" class="btn icon-settings" title="{{strings.settings}} [{{keyboard.ShowSettingsModal}}]" aria-label="{{strings.settings}} [{{keyboard.ShowSettingsModal}}]" accesskey="{{keyboard.accesskeys.ShowSettingsModal}}" data-toggle="modal" data-target="#settings-dialog">
15 |     	<span class="glyphicon glyphicon-cog" aria-hidden="true"></span>
16 |     </button>
17 | </div>


--------------------------------------------------------------------------------
/app/public/static/readium/templates/managed-buttons.html:
--------------------------------------------------------------------------------
1 | {{#buttons}}
2 | <button type="button" class="btn btn-default {{#classes}}{{.}} {{/classes}}" {{#dismiss}} data-dismiss="modal" {{/dismiss}}>{{text}}</button>
3 | {{/buttons}}


--------------------------------------------------------------------------------
/app/public/static/readium/templates/managed-dialog.html:
--------------------------------------------------------------------------------
 1 | <div class="modal fade" id="managed-dialog" tabindex="-1" role="dialog" aria-labelledby="managed-label">
 2 |     <div class="modal-dialog">
 3 |         <div class="modal-content">
 4 |             <div class="modal-header">
 5 |                 <button type="button" class="close" data-dismiss="modal" aria-label="close" title="close"><span aria-hidden="true">&times;<span></button>
 6 |                 <h4 class="modal-title" id="managed-label"></h4>
 7 |             </div>
 8 |             <div class="modal-body">
 9 |             </div>
10 |             <div class="modal-footer">
11 |             </div>
12 |         </div>
13 |         <!-- /.modal-content --> 
14 |     </div><!-- /.modal-dialog -->
15 | </div>
16 | <!-- /.modal -->


--------------------------------------------------------------------------------
/app/public/static/readium/templates/progress-dialog.html:
--------------------------------------------------------------------------------
1 | <div class="progress progress-striped active">
2 |   <div class="progress-bar"  role="progressbar" aria-valuenow="1" aria-valuemin="1" aria-valuemax="100" style="width: 1%">
3 |     <!-- <span class="progress-message sr-only">{{message}}</span> -->
4 |   </div>
5 | </div>
6 | <div class="progress-message">{{message}}</div>
7 | 


--------------------------------------------------------------------------------
/app/public/static/readium/templates/reader-body.html:
--------------------------------------------------------------------------------
 1 | <div id="readium-toc-body"
 2 | aria-label="{{strings.toc}}"
 3 | role="navigation"
 4 | >
 5 | </div>
 6 | 
 7 | <div id="reading-area" role="main">  
 8 |   <div id="epub-reader-container">
 9 |     <div id="epub-reader-frame">
10 |     </div>
11 |   </div>
12 |   
13 |   <div id="readium-page-btns" role="region" aria-label="{{strings.i18n_page_navigation}}">
14 |   <!-- page left/right buttons inserted here when EPUB is loaded (page progression direction) -->
15 |   </div>
16 |   
17 | </div>


--------------------------------------------------------------------------------
/app/public/static/readium/templates/reader-navbar.html:
--------------------------------------------------------------------------------
 1 | <div class="btn-group navbar-left">
 2 |     <button id="tocButt" tabindex="1" tabindex="1" type="button" class="btn icon-toc" title="{{strings.toc}} [{{keyboard.TocShowHideToggle}}]" aria-label="{{strings.toc}} [{{keyboard.TocShowHideToggle}}]" accesskey="{{keyboard.accesskeys.TocShowHideToggle}}">
 3 |         <span class="glyphicon glyphicon-list" aria-hidden="true"></span>
 4 |     </button>
 5 | </div>
 6 | <div class="btn-group navbar-right">
 7 |     <button id="settbutt1" tabindex="1" type="button" class="btn icon-settings" data-toggle="modal" data-target="#settings-dialog" title="{{strings.settings}} [{{keyboard.ShowSettingsModal}}]" aria-label="{{strings.settings}} [{{keyboard.ShowSettingsModal}}]" accesskey="{{keyboard.accesskeys.ShowSettingsModal}}">
 8 |         <span class="glyphicon glyphicon-cog" aria-hidden="true"></span>
 9 |     </button>
10 |     <!--
11 |     <button style="display: block" tabindex="1" id="buttFullScreenToggle" type="button" class="btn icon-full-screen" title="{{strings.enter_fullscreen}} [{{keyboard.FullScreenToggle}}]" aria-label="{{strings.enter_fullscreen}} [{{keyboard.FullScreenToggle}}]" accesskey="{{keyboard.accesskeys.FullScreenToggle}}">
12 |         <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span>
13 |     </button>
14 |     -->
15 | </div>
16 | 
17 | 
18 | 


--------------------------------------------------------------------------------
/app/public/static/readium/templates/reader-navbar.html.modified:
--------------------------------------------------------------------------------
 1 | <div class="btn-group navbar-left">
 2 |     <button id="tocButt" tabindex="1" tabindex="1" type="button" class="btn icon-toc" title="{{strings.toc}} [{{keyboard.TocShowHideToggle}}]" aria-label="{{strings.toc}} [{{keyboard.TocShowHideToggle}}]" accesskey="{{keyboard.accesskeys.TocShowHideToggle}}">
 3 |         <span class="glyphicon glyphicon-list" aria-hidden="true"></span>
 4 |     </button>
 5 | </div>
 6 | <div class="btn-group navbar-right">
 7 |     <button id="settbutt1" tabindex="1" type="button" class="btn icon-settings" data-toggle="modal" data-target="#settings-dialog" title="{{strings.settings}} [{{keyboard.ShowSettingsModal}}]" aria-label="{{strings.settings}} [{{keyboard.ShowSettingsModal}}]" accesskey="{{keyboard.accesskeys.ShowSettingsModal}}">
 8 |         <span class="glyphicon glyphicon-cog" aria-hidden="true"></span>
 9 |     </button>
10 |     <!--
11 |     <button style="display: block" tabindex="1" id="buttFullScreenToggle" type="button" class="btn icon-full-screen" title="{{strings.enter_fullscreen}} [{{keyboard.FullScreenToggle}}]" aria-label="{{strings.enter_fullscreen}} [{{keyboard.FullScreenToggle}}]" accesskey="{{keyboard.accesskeys.FullScreenToggle}}">
12 |         <span class="glyphicon glyphicon-resize-full" aria-hidden="true"></span>
13 |     </button>
14 |     -->
15 | </div>
16 | 
17 | 
18 | 


--------------------------------------------------------------------------------
/app/public/static/readium/templates/settings-keyboard-item.html:
--------------------------------------------------------------------------------
 1 | {{#name}}
 2 | <li>
 3 | <label id="label_{{name}}">{{i18n}}<br/><span>{{name}}</span></label>
 4 | <input id="{{name}}" name="{{name}}" class="keyboardInput" type="text"  placeholder="{{shortcut}}" value="{{shortcut}}" aria-labelledbyxxx="label_{{name}}" aria-label="{{i18n}}" title="{{i18n}}"></input>
 5 | <button class="resetKey captureKeyboardShortcut" role="button" data-key="{{name}}"  title="{{strings.i18n_reset_key}} ({{def}})" aria-label="{{strings.i18n_reset_key}} ({{def}})"><span aria-hidden="true">&#8855;</span></button>
 6 | <span id="duplicate_keyboard_shortcut" aria-hidden="true">{{strings.i18n_duplicate_keyboard_shortcut}}</span>
 7 | <span id="invalid_keyboard_shortcut" aria-hidden="true">{{strings.i18n_invalid_keyboard_shortcut}}</span>
 8 | </li>
 9 | {{/name}}
10 | {{^name}}
11 | <li id="resetAllKeys{{id}}" class="resetAllKeys">
12 | <button class="resetKey" role="button"  title="{{strings.i18n_reset_key_all}}" aria-label="{{strings.i18n_reset_key_all}}"><span aria-hidden="true">{{strings.i18n_reset_key_all}}  &#8855;</span></button>
13 | </li>
14 | {{/name}}
15 | 


--------------------------------------------------------------------------------
/app/src/app.html:
--------------------------------------------------------------------------------
 1 | <!DOCTYPE html>
 2 | <html lang="en">
 3 | 
 4 | <head>
 5 |   {{ HEAD }}
 6 | </head>
 7 | 
 8 | <body>
 9 |   {{ APP }}
10 | </body>
11 | 
12 | </html>
13 | 


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-cyrillic-ext1.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-cyrillic-ext1.woff2


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-cyrillic2.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-cyrillic2.woff2


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-greek-ext3.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-greek-ext3.woff2


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-greek4.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-greek4.woff2


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-latin-ext6.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-latin-ext6.woff2


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-latin7.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-latin7.woff2


--------------------------------------------------------------------------------
/app/src/assets/fonts/Roboto-100-vietnamese5.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/app/src/assets/fonts/Roboto-100-vietnamese5.woff2


--------------------------------------------------------------------------------
/app/src/components/AppFooter.vue:
--------------------------------------------------------------------------------
 1 | <template>
 2 |     <v-row>
 3 |         <v-col cols=12 class='text-center'>
 4 |             <v-divider class='mt-10 mb-3' ></v-divider>
 5 |             <p class='mb-0 text-center footer-text' v-html="footer_text"></p>
 6 |             <p>
 7 |             <v-btn small text target="_blank" href="https://github.com/talebook/talebook">Github</v-btn>
 8 |             | <v-btn small text target="_blank" href="https://hub.docker.com/r/talebook/talebook">Docker</v-btn>
 9 |             | <v-btn small text target="_blank" href="http://talebook.org">Project</v-btn>
10 |             </p>
11 |         </v-col>
12 |     </v-row>
13 | </template>
14 | 
15 | <script>
16 | export default {
17 |     name: 'AppFooter',
18 |     computed: {
19 |         footer_text: function() {
20 |             if ( this.$store.state.sys.footer != undefined ) {
21 |                 return this.$store.state.sys.footer;
22 |             }
23 |             return this.footer;
24 |         },
25 |     },
26 |     data: () => ({
27 |         footer: "本站基于Calibre构建,感谢开源界的力量。所有资源搜集于互联网,如有侵权请邮件联系。",
28 |     })
29 | }
30 | </script>
31 | 
32 | <style>
33 | 
34 | </style>
35 | 


--------------------------------------------------------------------------------
/app/src/components/Loading.vue:
--------------------------------------------------------------------------------
 1 | <template>
 2 |     <div v-show="$store.state.loading" class="loading-page">
 3 |         <v-progress-circular indeterminate size=128 color="deep-orange lighten-2"></v-progress-circular>
 4 |     </div>
 5 | </template>
 6 | 
 7 | <script>
 8 | export default {
 9 |     data: () => ({
10 |     }),
11 | };
12 | </script>
13 | 
14 | <style scoped>
15 | .loading-page {
16 |     position: fixed;
17 |     top: 0;
18 |     left: 0;
19 |     right: 0;
20 |     bottom: 0;
21 |     z-index: 1;
22 |     background: white;
23 |     text-align: center;
24 |     padding-top: 200px;
25 |     font-size: 30px;
26 |     font-family: sans-serif;
27 | }
28 | </style>
29 | 


--------------------------------------------------------------------------------
/app/src/layouts/error.vue:
--------------------------------------------------------------------------------
 1 | <template>
 2 |   <v-app dark>
 3 |     <h1 v-if="error.statusCode === 404">
 4 |       {{ pageNotFound }}
 5 |     </h1>
 6 |     <h1 v-else>
 7 |       {{ otherError }}
 8 |     </h1>
 9 |     <NuxtLink to="/"> Home page </NuxtLink>
10 |   </v-app>
11 | </template>
12 | 
13 | <script>
14 | export default {
15 |   name: "EmptyLayout",
16 |   layout: "empty",
17 | 
18 |   props: {
19 |     error: {
20 |       type: Object,
21 |       default: null,
22 |     },
23 |   },
24 |   created() {
25 |     //this.$store.commit("puremode", true);
26 |   },
27 | 
28 |   data() {
29 |     return {
30 |       pageNotFound: "404 Not Found",
31 |       otherError: "An error occurred",
32 |     };
33 |   },
34 |   head() {
35 |     const title = this.error.statusCode === 404 ? this.pageNotFound : this.otherError;
36 |     return {
37 |       title,
38 |     };
39 |   },
40 | };
41 | </script>
42 | 
43 | <style scoped>
44 | h1 {
45 |   font-size: 20px;
46 | }
47 | .msg {
48 |   text-align: center;
49 | }
50 | </style>
51 | 
52 | 


--------------------------------------------------------------------------------
/app/src/pages/_meta/_name.vue:
--------------------------------------------------------------------------------
 1 | <script>
 2 |  // don't create a template for the section
 3 | import ListBook from '~/pages/ListBook.vue'
 4 | ListBook.head = function() {
 5 |     var name = decodeURIComponent(this.$route.params.name);
 6 |     var titles = {
 7 |         tag: `"${name}”标签的书籍`,
 8 |         series: `${name}丛书`,
 9 |         rating: `${name}星书籍`,
10 |         author: `${name}的著作`,
11 |         publisher: `${name}出版的书籍`,
12 |     }
13 |     var meta = this.$route.path.split("/")[1];
14 |     if ( titles[meta] !== undefined ) {
15 |         return {
16 |             title: titles[meta]
17 |         }
18 |     }
19 |     return {}
20 | }
21 | export default ListBook
22 | </script>
23 | 


--------------------------------------------------------------------------------
/app/src/pages/active/success.vue:
--------------------------------------------------------------------------------
 1 | <template>
 2 | <v-row justify=center class='fill-center'>
 3 |     <v-col xs=12 sm=8 md=4>
 4 |         <v-card class="elevation-12">
 5 |             <v-toolbar dark color="primary">
 6 |                 <v-toolbar-title align-center >激活成功</v-toolbar-title>
 7 |             </v-toolbar>
 8 |             <v-card-text>
 9 |                 <p class="mt-12 mb-8 text-center">
10 |                 你已成功激活账号,请前往首页浏览吧!
11 |                 </p>
12 |             </v-card-text>
13 | 
14 |             <v-card-actions>
15 |                 <v-spacer></v-spacer>
16 |                 <v-btn to="/" color="primary">Go</v-btn>
17 |                 <v-spacer></v-spacer>
18 |             </v-card-actions>
19 | 
20 |         </v-card>
21 |     </v-col>
22 | </v-row>
23 | </template>
24 | 
25 | <script>
26 | export default {
27 |     created() {
28 |         this.$store.commit('navbar', false);
29 |     },
30 |     data: () => ({
31 |     }),
32 |     head: () => ({
33 |         title: '激活成功',
34 |     }),
35 | }
36 | </script>
37 | 
38 | 


--------------------------------------------------------------------------------
/app/src/pages/author.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListMeta from '~/pages/ListMeta.vue'
4 | export default ListMeta
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/hot.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListBook from '~/pages/ListBook.vue'
4 | export default ListBook
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/logout.vue:
--------------------------------------------------------------------------------
 1 | <template>
 2 |     <v-row justify=center class='fill-center'>
 3 |       <v-col xs=12 sm=8 md=4>
 4 |         <v-card class="elevation-12">
 5 |             <v-toolbar dark color="blue-grey">
 6 |                 <v-toolbar-title></v-toolbar-title>
 7 |             </v-toolbar>
 8 |             <v-card-text>
 9 |                 <div class="text-center title primary--text">
10 |                     <p class="pt-8">{{msg}}</p>
11 |                 </div>
12 |             </v-card-text>
13 |             <v-card-actions>
14 |                 <v-spacer></v-spacer>
15 |                 <v-btn class="mb-4" rounded color="primary" href="/">返回首页</v-btn>
16 |                 <v-spacer></v-spacer>
17 |             </v-card-actions>
18 |         </v-card>
19 |           </v-col>
20 |         </v-row>
21 | </template>
22 | 
23 | <script>
24 | export default {
25 |     created() {
26 |         this.$store.commit("navbar", false);
27 |         this.logout();
28 |     },
29 |     data: () => ({
30 |         msg: "您已退出登录。",
31 |     }),
32 |     head: () => ({
33 |         title: "已退出登录"
34 |     }),
35 |     methods: {
36 |         logout: function() {
37 |             this.$backend('/user/sign_out')
38 |             .then( rsp => {
39 |                 this.msg = rsp.msg;
40 |             });
41 |         }
42 |     },
43 | }
44 | </script>
45 | 
46 | 


--------------------------------------------------------------------------------
/app/src/pages/nav.vue:
--------------------------------------------------------------------------------
 1 | <template>
 2 |     <v-row>
 3 |         <template v-for="nav in navs">
 4 |         <v-col cols=12 :key="nav.legend">
 5 |             <h2>{{nav.legend}}</h2>
 6 |             <v-btn rounded small class="ma-1" v-for="item in nav.tags" :to="'/tag/'+encodeURIComponent(item.name)" :key="item.name" outlined :color="item.count != 0 ? 'primary': 'grey'" >
 7 |                 {{item.name}}
 8 |                 <span v-if="item.count">&nbsp;({{item.count}})</span>
 9 |             </v-btn>
10 |         </v-col>
11 |         </template>
12 |     </v-row>
13 | </template>
14 | 
15 | <script>
16 | export default {
17 |     components: {
18 |     },
19 |     computed: {
20 |     },
21 |     data: () => ({
22 |         navs: [],
23 |     }),
24 |     head: () => ({
25 |         title: "书籍索引"
26 |     }),
27 |     async asyncData({ params, app, res }) {
28 |         if ( res !== undefined ) {
29 |             res.setHeader('Cache-Control', 'no-cache');
30 |         }
31 |         return app.$backend("/book/nav");
32 |     },
33 |     created() {
34 |         this.$store.commit('navbar', true);
35 |     },
36 | }
37 | </script>
38 | 


--------------------------------------------------------------------------------
/app/src/pages/publisher.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListMeta from '~/pages/ListMeta.vue'
4 | export default ListMeta
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/rating.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListMeta from '~/pages/ListMeta.vue'
4 | export default ListMeta
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/recent.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListBook from '~/pages/ListBook.vue'
4 | export default ListBook
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/search.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListBook from '~/pages/ListBook.vue'
4 | export default ListBook
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/series.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListMeta from '~/pages/ListMeta.vue'
4 | export default ListMeta
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/pages/tag.vue:
--------------------------------------------------------------------------------
1 | <script>
2 |  // don't create a template for the section
3 | import ListMeta from '~/pages/ListMeta.vue'
4 | export default ListMeta
5 | </script>
6 | 


--------------------------------------------------------------------------------
/app/src/plugins/load-plugins.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | 
3 | import VueCookies from 'vue-cookies'
4 | Vue.use(VueCookies)
5 | 
6 | //import talebook from "~/plugins/talebook.js"
7 | //Vue.use(talebook)
8 | 


--------------------------------------------------------------------------------
/app/src/store/index.js:
--------------------------------------------------------------------------------
 1 | export const state = () => ({
 2 |     nav: true, loading: true, count: 0, user: {
 3 |         is_admin: false, is_login: false, nickname: "", kindle_email: "", avatar: "",
 4 |     }, alert: {
 5 |         to: "", msg: "", type: "", show: false,
 6 |     }, sys: {
 7 |         socials: [], allow: {},
 8 |     },
 9 |     site_title: "首页",
10 |     site_title_template: "%s | talebook"
11 | })
12 | 
13 | export const mutations = {
14 |     loading(state) {
15 |         state.loading = true;
16 |     }, loaded(state) {
17 |         state.loading = false;
18 |     }, /*
19 |     puremode(state, pure) {
20 |         if (pure) {
21 |             state.nav = false;
22 |         } else {
23 |             state.nav = true;
24 |         }
25 |     },
26 |     */
27 |     navbar(state, nav) {
28 |         state.nav = nav;
29 |     }, increment(state) {
30 |         state.count++
31 |     }, login(state, data) {
32 |         if (data != undefined) {
33 |             state.sys = data.sys;
34 |             state.user = data.user;
35 |         }
36 |     }, alert(state, v) {
37 |         state.alert.to = v.to;
38 |         state.alert.type = v.type;
39 |         state.alert.msg = v.msg;
40 |         state.alert.show = true;
41 |     }, close_alert(state) {
42 |         state.alert.show = false;
43 |     }, set_title(state, v) {
44 |         state.site_title_template = ' %s | ' + v;
45 |     }
46 | }
47 | 


--------------------------------------------------------------------------------
/conf/nginx/ssl.crt:
--------------------------------------------------------------------------------
 1 | -----BEGIN CERTIFICATE-----
 2 | MIIDmzCCAoMCFCkWPftwNTF1nPgVrdtdA8kiXN4KMA0GCSqGSIb3DQEBCwUAMIGJ
 3 | MQswCQYDVQQGEwJDTjEQMA4GA1UECAwHQmVpamluZzEQMA4GA1UEBwwHQmVpamlu
 4 | ZzERMA8GA1UECgwIdGFsZWJvb2sxETAPBgNVBAsMCHRhbGVib29rMREwDwYDVQQD
 5 | DAhkZW1vLmNvbTEdMBsGCSqGSIb3DQEJARYOYWRtaW5AZGVtby5jb20wHhcNMjIw
 6 | MjIzMTYxODI0WhcNMzIwMjIxMTYxODI0WjCBiTELMAkGA1UEBhMCQ04xEDAOBgNV
 7 | BAgMB0JlaWppbmcxEDAOBgNVBAcMB0JlaWppbmcxETAPBgNVBAoMCHRhbGVib29r
 8 | MREwDwYDVQQLDAh0YWxlYm9vazERMA8GA1UEAwwIZGVtby5jb20xHTAbBgkqhkiG
 9 | 9w0BCQEWDmFkbWluQGRlbW8uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
10 | CgKCAQEAzEKyzZqzW2Hs2f7YrfROG3hDOrYTk/TCZvVDncTr3uL2C06V/U43z9t3
11 | 6eU6bB9UJA0xpanzFYR1XNZ0gum/ACSgCRi1Jv3wxvL2DBrc4ETexEi7rccTKTLV
12 | umW24YzI9vDEwN6RTJqlM1KNRazPuu2NjJa8HCsYosv7w+ig3P0bf8dae+SSXxST
13 | V43b+j79xTnWtYnxWu9+l0xNBho3B/hDWKE5uS45nTzrudQEf/o5i+D4yI1TNVEc
14 | Uh/rGUTDsPgHKQNpZ/EGXapHD5/Tvwg14InbNkSKc4kT0yC3Qts6ZfUDNWV1kg24
15 | 67/W/ufqaa3tcDVjASCiKZWwvYSbxwIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBZ
16 | AxknMcxIX1h48SlwPPaTs+GlduYzNUMkxUFGDf7tVYsqMuLNgVTAXCqgU40J6wGW
17 | e1un09diptsT3jT5V92avzT0HPYwDEYcXj8m13uTbFQ3bYDHVsRD3j/H5C0CasFb
18 | /NJiRXwtBUahNYYSdWZ3PHm3bm8obOu+rxbfFJq0backNELxwB9JODE6bfaMzXLw
19 | HYS04GhOLz/N2R/urOw0CCWZatB8SG0UmA5ybjotO3KjIBC3aNRHFwLrkrc7OHOB
20 | ZXtX8GYyOdWjdIYLPGZ7ej0ra8dWA4r6CvY0UbyVia1miWpa1qjRO5pKpyz4g096
21 | 2yL8tWd0fjNFe5YQSXXC
22 | -----END CERTIFICATE-----
23 | 


--------------------------------------------------------------------------------
/conf/supervisor/server-side-render.conf:
--------------------------------------------------------------------------------
 1 | [group:talebook]
 2 | programs=tornado,nginx,nodejs
 3 | 
 4 | [program:tornado]
 5 | command=gosu talebook:talebook python3 server.py --with-library=/data/books/library --port=8000 --host=127.0.0.1 --logging=debug --log-file-prefix=/data/log/talebook.log
 6 | directory=/var/www/talebook
 7 | autorestart=true
 8 | redirect_stderr=true
 9 | stdout_logfile=/dev/fd/1
10 | stdout_logfile_maxbytes=0
11 | 
12 | [program:nginx]
13 | command = /usr/sbin/nginx -g 'daemon off;'
14 | autostart=true
15 | autorestart=unexpected
16 | 
17 | [program:nodejs]
18 | command=gosu talebook:talebook npm run start
19 | directory=/var/www/talebook/app
20 | autorestart=true
21 | redirect_stderr=true
22 | stdout_logfile=/data/log/nodejs.log
23 | 
24 | 


--------------------------------------------------------------------------------
/conf/supervisor/talebook.conf:
--------------------------------------------------------------------------------
 1 | [group:talebook]
 2 | programs=tornado,nginx
 3 | 
 4 | [program:tornado]
 5 | command=gosu talebook:talebook python3 server.py --with-library=/data/books/library --port=8000 --host=127.0.0.1 --logging=debug --log-file-prefix=/data/log/talebook.log
 6 | directory=/var/www/talebook
 7 | autorestart=true
 8 | redirect_stderr=true
 9 | stdout_logfile=/dev/fd/1
10 | stdout_logfile_maxbytes=0
11 | 
12 | [program:nginx]
13 | command = /usr/sbin/nginx -g 'daemon off;'
14 | autostart=true
15 | autorestart=unexpected
16 | 
17 | 


--------------------------------------------------------------------------------
/docker-compose.yml:
--------------------------------------------------------------------------------
 1 | version: "2.4"
 2 | 
 3 | services:
 4 | 
 5 |   # main service
 6 |   talebook:
 7 |     restart: always
 8 |     image: talebook/talebook
 9 |     volumes:
10 |       - /tmp/demo:/data
11 |     ports:
12 |       - "8080:80"
13 |       - "8443:443"
14 |     environment:
15 |       - PUID=1000
16 |       - PGID=1000
17 |       - TZ=Asia/Shanghai
18 |     depends_on:
19 |       - douban-rs-api
20 | 
21 |   # optional, for meta plugins
22 |   # please set "http://douban-rs-api" in settings
23 |   douban-rs-api:
24 |     restart: always
25 |     image: ghcr.io/cxfksword/douban-api-rs
26 | 


--------------------------------------------------------------------------------
/docker/book/1.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/1.epub


--------------------------------------------------------------------------------
/docker/book/10.mobi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/10.mobi


--------------------------------------------------------------------------------
/docker/book/11.azw3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/11.azw3


--------------------------------------------------------------------------------
/docker/book/12.txt:
--------------------------------------------------------------------------------
 1 | 《清风徐徐》
 2 | 作者:无名氏
 3 | 简介: 这是一本好书,本内容仅作为演示而已
 4 | 
 5 | 第一章 演示
 6 | 
 7 | 刘畊宏willliu
 8 | 
 9 | 4-13 09:29
10 | 
11 | 来自 微博视频号
12 | 
13 | 讓你/妳對《本草綱目》改觀的一組健身燃脂操,
14 | 
15 | 讓你/妳脫離…小腹婆、大肚腩…肥油 咔咔掉,
16 | 
17 | 讓你/妳練出 人魚線、馬甲線,迎接美好的夏天!
18 | 
19 | 
20 | 


--------------------------------------------------------------------------------
/docker/book/13.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/13.pdf


--------------------------------------------------------------------------------
/docker/book/2.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/2.epub


--------------------------------------------------------------------------------
/docker/book/3.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/3.epub


--------------------------------------------------------------------------------
/docker/book/4.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/4.epub


--------------------------------------------------------------------------------
/docker/book/5.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/5.epub


--------------------------------------------------------------------------------
/docker/book/6.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/6.epub


--------------------------------------------------------------------------------
/docker/book/7.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/7.epub


--------------------------------------------------------------------------------
/docker/book/8.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/8.epub


--------------------------------------------------------------------------------
/docker/book/9.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/docker/book/9.epub


--------------------------------------------------------------------------------
/document/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/document/screenshot.png


--------------------------------------------------------------------------------
/kubernetes/douban-rs-api-deployment.yaml:
--------------------------------------------------------------------------------
 1 | apiVersion: apps/v1
 2 | kind: Deployment
 3 | metadata:
 4 |   annotations:
 5 |     kompose.cmd: kompose convert
 6 |     kompose.version: 1.24.0 (4a2a0458)
 7 |   labels:
 8 |     io.kompose.service: douban-rs-api
 9 |   name: douban-rs-api
10 | spec:
11 |   replicas: 1
12 |   selector:
13 |     matchLabels:
14 |       io.kompose.service: douban-rs-api
15 |   strategy: {}
16 |   template:
17 |     metadata:
18 |       annotations:
19 |         kompose.cmd: kompose convert
20 |         kompose.version: 1.24.0 (4a2a0458)
21 |       labels:
22 |         io.kompose.service: douban-rs-api
23 |     spec:
24 |       containers:
25 |         - image: ghcr.io/cxfksword/douban-api-rs
26 |           name: douban-rs-api
27 |           ports:
28 |             - containerPort: 80
29 |       restartPolicy: Always
30 | 


--------------------------------------------------------------------------------
/kubernetes/douban-rs-api-service.yaml:
--------------------------------------------------------------------------------
 1 | apiVersion: v1
 2 | kind: Service
 3 | metadata:
 4 |   annotations:
 5 |     kompose.cmd: kompose convert
 6 |     kompose.version: 1.24.0 (4a2a0458)
 7 |   creationTimestamp: null
 8 |   labels:
 9 |     io.kompose.service: douban-rs-api
10 |   name: douban-rs-api
11 | spec:
12 |   ports:
13 |     - name: "80"
14 |       port: 80
15 |       targetPort: 80
16 |   selector:
17 |     io.kompose.service: douban-rs-api
18 | status:
19 |   loadBalancer: {}
20 | 


--------------------------------------------------------------------------------
/kubernetes/talebook-claim0-persistentvolumeclaim.yaml:
--------------------------------------------------------------------------------
 1 | apiVersion: v1
 2 | kind: PersistentVolumeClaim
 3 | metadata:
 4 |   labels:
 5 |     io.kompose.service: talebook-claim0
 6 |   name: talebook-claim0
 7 | spec:
 8 |   accessModes:
 9 |     - ReadWriteOnce
10 |   resources:
11 |     requests:
12 |       storage: 100Gi


--------------------------------------------------------------------------------
/kubernetes/talebook-deployment.yaml:
--------------------------------------------------------------------------------
 1 | apiVersion: apps/v1
 2 | kind: Deployment
 3 | metadata:
 4 |   annotations:
 5 |     kompose.cmd: kompose convert
 6 |     kompose.version: 1.24.0 (4a2a0458)
 7 |   creationTimestamp: null
 8 |   labels:
 9 |     io.kompose.service: talebook
10 |   name: talebook
11 | spec:
12 |   replicas: 1
13 |   selector:
14 |     matchLabels:
15 |       io.kompose.service: talebook
16 |   strategy:
17 |     type: Recreate
18 |   template:
19 |     metadata:
20 |       annotations:
21 |         kompose.cmd: kompose convert
22 |         kompose.version: 1.24.0 (4a2a0458)
23 |       creationTimestamp: null
24 |       labels:
25 |         io.kompose.service: talebook
26 |     spec:
27 |       containers:
28 |         - image: talebook/talebook
29 |           name: talebook
30 |           ports:
31 |             - containerPort: 80
32 |             - containerPort: 443
33 |           resources: {}
34 |           volumeMounts:
35 |             - mountPath: /data
36 |               name: talebook-claim0
37 |       restartPolicy: Always
38 |       volumes:
39 |         - name: talebook-claim0
40 |           persistentVolumeClaim:
41 |             claimName: talebook-claim0
42 | status: {}
43 | 


--------------------------------------------------------------------------------
/kubernetes/talebook-service.yaml:
--------------------------------------------------------------------------------
 1 | apiVersion: v1
 2 | kind: Service
 3 | metadata:
 4 |   annotations:
 5 |     kompose.cmd: kompose convert
 6 |     kompose.version: 1.24.0 (4a2a0458)
 7 |   creationTimestamp: null
 8 |   labels:
 9 |     io.kompose.service: talebook
10 |   name: talebook
11 | spec:
12 |   ports:
13 |     - name: "80"
14 |       port: 80
15 |       targetPort: 80
16 |     - name: "443"
17 |       port: 443
18 |       targetPort: 443
19 |   selector:
20 |     io.kompose.service: talebook
21 | status:
22 |   loadBalancer: {}
23 | 


--------------------------------------------------------------------------------
/pyproject.xml:
--------------------------------------------------------------------------------
1 | [tool.black]
2 | line-length = 120
3 | 


--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
 1 | jinja2==3.1.4
 2 | social-auth-core==4.5.1
 3 | social-auth-app-tornado==1.0.0
 4 | social-auth-storage-sqlalchemy==1.1.0
 5 | tornado==6.4.2
 6 | bs4
 7 | chardet
 8 | 
 9 | # build-in support for MYSQL
10 | pymysql
11 | pytest==7.4.4
12 | flake8
13 | 


--------------------------------------------------------------------------------
/server.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env python3
 2 | 
 3 | """
 4 | This is the standard runscript for all of calibre's tools.
 5 | Do not modify it unless you know what you are doing.
 6 | """
 7 | 
 8 | import os
 9 | import sys
10 | 
11 | import webserver.main
12 | 
13 | sys.exit(webserver.main.main())
14 | 


--------------------------------------------------------------------------------
/tests/.gitignore:
--------------------------------------------------------------------------------
1 | users.db
2 | library/
3 | 


--------------------------------------------------------------------------------
/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/__init__.py


--------------------------------------------------------------------------------
/tests/cases/big-metadata.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/big-metadata.db


--------------------------------------------------------------------------------
/tests/cases/book.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/book.txt


--------------------------------------------------------------------------------
/tests/cases/import.mobi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/import.mobi


--------------------------------------------------------------------------------
/tests/cases/metadata.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/metadata.db


--------------------------------------------------------------------------------
/tests/cases/new.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/new.epub


--------------------------------------------------------------------------------
/tests/cases/old.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/old.epub


--------------------------------------------------------------------------------
/tests/cases/ssl.crt:
--------------------------------------------------------------------------------
 1 | -----BEGIN CERTIFICATE-----
 2 | MIIDmzCCAoMCFCkWPftwNTF1nPgVrdtdA8kiXN4KMA0GCSqGSIb3DQEBCwUAMIGJ
 3 | MQswCQYDVQQGEwJDTjEQMA4GA1UECAwHQmVpamluZzEQMA4GA1UEBwwHQmVpamlu
 4 | ZzERMA8GA1UECgwIdGFsZWJvb2sxETAPBgNVBAsMCHRhbGVib29rMREwDwYDVQQD
 5 | DAhkZW1vLmNvbTEdMBsGCSqGSIb3DQEJARYOYWRtaW5AZGVtby5jb20wHhcNMjIw
 6 | MjIzMTYxODI0WhcNMzIwMjIxMTYxODI0WjCBiTELMAkGA1UEBhMCQ04xEDAOBgNV
 7 | BAgMB0JlaWppbmcxEDAOBgNVBAcMB0JlaWppbmcxETAPBgNVBAoMCHRhbGVib29r
 8 | MREwDwYDVQQLDAh0YWxlYm9vazERMA8GA1UEAwwIZGVtby5jb20xHTAbBgkqhkiG
 9 | 9w0BCQEWDmFkbWluQGRlbW8uY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
10 | CgKCAQEAzEKyzZqzW2Hs2f7YrfROG3hDOrYTk/TCZvVDncTr3uL2C06V/U43z9t3
11 | 6eU6bB9UJA0xpanzFYR1XNZ0gum/ACSgCRi1Jv3wxvL2DBrc4ETexEi7rccTKTLV
12 | umW24YzI9vDEwN6RTJqlM1KNRazPuu2NjJa8HCsYosv7w+ig3P0bf8dae+SSXxST
13 | V43b+j79xTnWtYnxWu9+l0xNBho3B/hDWKE5uS45nTzrudQEf/o5i+D4yI1TNVEc
14 | Uh/rGUTDsPgHKQNpZ/EGXapHD5/Tvwg14InbNkSKc4kT0yC3Qts6ZfUDNWV1kg24
15 | 67/W/ufqaa3tcDVjASCiKZWwvYSbxwIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQBZ
16 | AxknMcxIX1h48SlwPPaTs+GlduYzNUMkxUFGDf7tVYsqMuLNgVTAXCqgU40J6wGW
17 | e1un09diptsT3jT5V92avzT0HPYwDEYcXj8m13uTbFQ3bYDHVsRD3j/H5C0CasFb
18 | /NJiRXwtBUahNYYSdWZ3PHm3bm8obOu+rxbfFJq0backNELxwB9JODE6bfaMzXLw
19 | HYS04GhOLz/N2R/urOw0CCWZatB8SG0UmA5ybjotO3KjIBC3aNRHFwLrkrc7OHOB
20 | ZXtX8GYyOdWjdIYLPGZ7ej0ra8dWA4r6CvY0UbyVia1miWpa1qjRO5pKpyz4g096
21 | 2yL8tWd0fjNFe5YQSXXC
22 | -----END CERTIFICATE-----
23 | 


--------------------------------------------------------------------------------
/tests/cases/title_has_0x00.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/title_has_0x00.pdf


--------------------------------------------------------------------------------
/tests/cases/users.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/cases/users.db


--------------------------------------------------------------------------------
/tests/library/严歌苓/芳华 (7)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/严歌苓/芳华 (7)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/严歌苓/芳华 (7)/芳华 - 严歌苓.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/严歌苓/芳华 (7)/芳华 - 严歌苓.epub


--------------------------------------------------------------------------------
/tests/library/五味太郎/鳄鱼怕怕牙医怕怕 (5)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/五味太郎/鳄鱼怕怕牙医怕怕 (5)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/五味太郎/鳄鱼怕怕牙医怕怕 (5)/鳄鱼怕怕牙医怕怕 - 五味太郎.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/五味太郎/鳄鱼怕怕牙医怕怕 (5)/鳄鱼怕怕牙医怕怕 - 五味太郎.pdf


--------------------------------------------------------------------------------
/tests/library/刘醒龙/天行者 (8)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/刘醒龙/天行者 (8)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/刘醒龙/天行者 (8)/天行者 - 刘醒龙.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/刘醒龙/天行者 (8)/天行者 - 刘醒龙.epub


--------------------------------------------------------------------------------
/tests/library/加西亚·马尔克斯/百年孤独 (1)/Bai Nian Gu Du - Jia Xi Ya _Ma Er Ke Si.mobi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/加西亚·马尔克斯/百年孤独 (1)/Bai Nian Gu Du - Jia Xi Ya _Ma Er Ke Si.mobi


--------------------------------------------------------------------------------
/tests/library/加西亚·马尔克斯/百年孤独 (1)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/加西亚·马尔克斯/百年孤独 (1)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/加西亚·马尔克斯/百年孤独 (1)/百年孤独 - 加西亚·马尔克斯.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/加西亚·马尔克斯/百年孤独 (1)/百年孤独 - 加西亚·马尔克斯.epub


--------------------------------------------------------------------------------
/tests/library/安徒生/安徒生童话 (3)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/安徒生/安徒生童话 (3)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/安徒生/安徒生童话 (3)/安徒生童话 - 安徒生.mobi:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/安徒生/安徒生童话 (3)/安徒生童话 - 安徒生.mobi


--------------------------------------------------------------------------------
/tests/library/海明威/老人与海 (10)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/海明威/老人与海 (10)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/海明威/老人与海 (10)/老人与海 - 海明威.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/海明威/老人与海 (10)/老人与海 - 海明威.epub


--------------------------------------------------------------------------------
/tests/library/笛福/鲁滨孙历险记 (9)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/笛福/鲁滨孙历险记 (9)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/笛福/鲁滨孙历险记 (9)/鲁滨孙历险记 - 笛福.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/笛福/鲁滨孙历险记 (9)/鲁滨孙历险记 - 笛福.epub


--------------------------------------------------------------------------------
/tests/library/纳尔逊·曼德拉/漫漫自由路 (2)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/纳尔逊·曼德拉/漫漫自由路 (2)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/纳尔逊·曼德拉/漫漫自由路 (2)/漫漫自由路 - 纳尔逊·曼德拉.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/纳尔逊·曼德拉/漫漫自由路 (2)/漫漫自由路 - 纳尔逊·曼德拉.txt


--------------------------------------------------------------------------------
/tests/library/艾森·拉塞尔/麦肯锡方法 (4)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/艾森·拉塞尔/麦肯锡方法 (4)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/艾森·拉塞尔/麦肯锡方法 (4)/麦肯锡方法 - 艾森·拉塞尔.azw3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/艾森·拉塞尔/麦肯锡方法 (4)/麦肯锡方法 - 艾森·拉塞尔.azw3


--------------------------------------------------------------------------------
/tests/library/蘅塘退士/唐诗三百首 (6)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/蘅塘退士/唐诗三百首 (6)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/蘅塘退士/唐诗三百首 (6)/唐诗三百首 - 蘅塘退士.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/蘅塘退士/唐诗三百首 (6)/唐诗三百首 - 蘅塘退士.epub


--------------------------------------------------------------------------------
/tests/library/詹姆斯·巴里/彼得·潘 (13)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/詹姆斯·巴里/彼得·潘 (13)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/詹姆斯·巴里/彼得·潘 (13)/彼得·潘 - 詹姆斯·巴里.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/詹姆斯·巴里/彼得·潘 (13)/彼得·潘 - 詹姆斯·巴里.epub


--------------------------------------------------------------------------------
/tests/library/陀思妥耶夫斯基/罪与罚 (11)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/陀思妥耶夫斯基/罪与罚 (11)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/陀思妥耶夫斯基/罪与罚 (11)/罪与罚 - 陀思妥耶夫斯基.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/陀思妥耶夫斯基/罪与罚 (11)/罪与罚 - 陀思妥耶夫斯基.epub


--------------------------------------------------------------------------------
/tests/library/韩寒/他的国 (12)/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/韩寒/他的国 (12)/cover.jpg


--------------------------------------------------------------------------------
/tests/library/韩寒/他的国 (12)/他的国 - 韩寒.epub:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/tests/library/韩寒/他的国 (12)/他的国 - 韩寒.epub


--------------------------------------------------------------------------------
/tests/run.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/python3
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | import sys, os
 5 | sys.path.append(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))
 6 | 
 7 | from tests.test_baike import *
 8 | from tests.test_douban import *
 9 | from tests.test_main import *
10 | from tests.test_models import *
11 | from tests.test_upload import *
12 | from tests.test_ssl_crt import *
13 | from tests.test_scan import *
14 | from tests.test_admin import *
15 | from tests.test_utils import *
16 | from tests.test_youshu import *
17 | import unittest
18 | 
19 | if __name__ == "__main__":
20 |     unittest.main()
21 | 


--------------------------------------------------------------------------------
/tests/test_admin.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env python3
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | from unittest import mock
 5 | from tests.test_main import TestWithUserLogin, setUpModule as init
 6 | 
 7 | def setUpModule():
 8 |     init()
 9 | 
10 | class TestAdmin(TestWithUserLogin):
11 |     def test_book_list(self):
12 |         d = self.json("/api/admin/book/list?sort=id&num=10")
13 |         self.assertEqual(d["err"], "ok")
14 |         self.assertEqual(len(d["items"]), 10)
15 | 


--------------------------------------------------------------------------------
/tests/test_models.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env python3
 2 | 
 3 | 
 4 | import json
 5 | import logging
 6 | import unittest
 7 | 
 8 | from webserver import models
 9 | 
10 | 
11 | class TestUser(unittest.TestCase):
12 |     def test_shrink_extra_size(self):
13 |         n = 1024
14 |         a = models.Reader()
15 |         a.extra = {}
16 |         a.extra["download_history"] = [{"id": 123, "title": "name", "timestamp": 1643347670}] * n
17 |         a.shrink_column_extra()
18 |         self.assertLess(len(json.dumps(a.extra)), 32 * 1024)
19 | 
20 |     def test_shrink_extra_size2(self):
21 |         n = 200
22 |         a = models.Reader()
23 |         a.extra = {}
24 |         a.extra["download_history"] = [{"id": 123, "title": "name", "timestamp": 1643347670}] * n
25 |         a.shrink_column_extra()
26 |         # should not shrink
27 |         self.assertEqual(len(a.extra["download_history"]), n)
28 | 
29 | 
30 | if __name__ == "__main__":
31 |     logging.basicConfig(
32 |         level=logging.DEBUG,
33 |         format="%(levelname)5s %(pathname)s:%(lineno)d %(message)s",
34 |     )
35 |     unittest.main()
36 | 


--------------------------------------------------------------------------------
/tests/test_service.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env python3
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | from tests.test_main import TestWithUserLogin, setUpModule as init, testdir
 5 | from webserver.services.convert import ConvertService
 6 | from webserver.services.extract import ExtractService
 7 | 
 8 | 
 9 | def setUpModule():
10 |     init()
11 | 
12 | class TestConvert(TestWithUserLogin):
13 |     def test_convert(self):
14 |         fin = testdir + "/cases/old.epub"
15 |         fout = "/tmp/output.mobi"
16 |         flog = "/tmp/output.log"
17 |         ok = ConvertService().do_ebook_convert(fin, fout, flog)
18 |         self.assertEqual(ok, True)
19 | 
20 | class TestExtract(TestWithUserLogin):
21 |     def test_convert(self):
22 |         bid = 666
23 |         fpath = testdir + "/cases/book.txt"
24 |         ok = ExtractService().parse_txt_content(bid, fpath)
25 |         self.assertEqual(ok, True)
26 | 
27 | 


--------------------------------------------------------------------------------
/tests/test_utils.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env pytest
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | 
 5 | import unittest
 6 | 
 7 | from webserver.utils import compare_books_by_rating_or_id
 8 | 
 9 | 
10 | class TestUtils(unittest.TestCase):
11 |     def test_compare_by_rating_or_id(self):
12 |         cases = [
13 |             [1, {"id": 2}, {"id": 1}],
14 |             [1, {"rating": 2}, {"rating": None}],
15 |             [1, {"rating": 2}, {"rating": 0}],
16 |             [1, {"rating": 2}, {}],
17 |             [1, {"rating": 2}, {"id": 2}],
18 |             [1, {"rating": 2, "id": 2}, {"rating": 2, "id": 1}],
19 |             [1, {"rating": 0, "id": 2}, {"rating": 0, "id": 1}],
20 |             [1, {"rating": 0, "id": 2}, {"rating": None, "id": 1}],
21 |             [1, {"rating": 0, "id": 2}, {"id": 1}],
22 |         ]
23 |         for val, a, b in cases:
24 |             self.assertEqual(val, compare_books_by_rating_or_id(a, b), "compare %s > %s" % (a, b))
25 |             self.assertEqual(-1 * val, compare_books_by_rating_or_id(b, a), "compare %s > %s" % (b, a))
26 | 


--------------------------------------------------------------------------------
/tools/run-spider.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | 
 4 | date
 5 | 
 6 | /data/code/my-calibre-server/tools/spider.py
 7 | 
 8 | cnt=`ls /data1/download/weiphone.com/ | wc -l`
 9 | if [ $cnt -eq 0 ]; then
10 |     exit 0;
11 | fi
12 | 
13 | for f in /data1/download/weiphone.com/*; do
14 |     echo "## Import $f"
15 |     calibredb add --with-library /data/books/library/ "$f"
16 |     mv "$f" /data1/download/feng.com/;
17 | done
18 | 
19 | 


--------------------------------------------------------------------------------
/tools/update.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | 
 4 | if [ $# != 2 ]; then
 5 |     echo "not 2"
 6 |     exit 0
 7 | fi
 8 | bid=$1
 9 | isbn=$2
10 | 
11 | echo -n "udpate book=${bid} to ISBN[${isbn}] (yes/no) ? "
12 | read x
13 | if [[ "$x" = "y" ]]; then
14 |     set -x
15 |     calibredb set_metadata --with-library /data/books/library/ -f identifiers:isbn:$isbn $bid
16 |     curl -d "exam_id=$bid" http://www.talebook.org/book/$bid/update -sv
17 |     calibredb show_metadata --with-library /data/books/library/ $bid
18 |     echo
19 | fi
20 | 
21 | 


--------------------------------------------------------------------------------
/tools/watch-settings-and-reload-nginx.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | NGINX_CONF=/etc/nginx/conf.d/calibre-webserver.conf
 4 | WATCH_DIR=/data/demo/books/settings/
 5 | WATCH_CONF="$WATCH_DIR/auto.py"
 6 | 
 7 | SCRIPT="
 8 | import sys;
 9 | sys.path.append('$WATCH_DIR');
10 | import auto;
11 | val='$NGINX_CLIENT_MAX_BODY_SIZE';
12 | print(auto.settings.get('NGINX_CLIENT_MAX_BODY_SIZE', val));
13 | "
14 | 
15 | update_nginx_conf() {
16 |     export NGINX_CLIENT_MAX_BODY_SIZE=$1
17 |     envsubst '${NGINX_CLIENT_MAX_BODY_SIZE}' < "${NGINX_CONF}.template" > "${NGINX_CONF}"
18 |     service nginx reload
19 | }
20 | 
21 | 
22 | # init
23 | val=$(python -c "$SCRIPT")
24 | update_nginx_conf $val
25 | 
26 | # watch and update env
27 | while inotifywait -qe modify "$WATCH_CONF"; do
28 |     n=$(python -c "$SCRIPT")
29 |     if [ "$val" = "$n" ]; then
30 |         continue
31 |     fi
32 |     val=$n
33 |     update_nginx_conf $val
34 | done
35 | 


--------------------------------------------------------------------------------
/webserver/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/webserver/__init__.py


--------------------------------------------------------------------------------
/webserver/constants.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/python
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | 
 5 | CHROME_HEADERS = {
 6 |     "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.6",
 7 |     "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
 8 |     "User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)"
 9 |                   + "Chrome/66.0.3359.139 Safari/537.36",
10 | }
11 | 


--------------------------------------------------------------------------------
/webserver/handlers/__init__.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/python
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | 
 5 | def routes():
 6 |     from . import book
 7 |     from . import user
 8 |     from . import meta
 9 |     from . import files
10 |     from . import opds
11 |     from . import admin
12 |     from . import scan
13 | 
14 |     routes = []
15 |     routes += admin.routes()
16 |     routes += scan.routes()
17 |     routes += opds.routes()
18 |     routes += book.routes()
19 |     routes += user.routes()
20 |     routes += meta.routes()
21 |     routes += files.routes()
22 |     return routes
23 | 


--------------------------------------------------------------------------------
/webserver/plugins/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/webserver/plugins/__init__.py


--------------------------------------------------------------------------------
/webserver/plugins/meta/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/webserver/plugins/meta/__init__.py


--------------------------------------------------------------------------------
/webserver/plugins/meta/baike/__init__.py:
--------------------------------------------------------------------------------
1 | from .api import BaiduBaikeApi, KEY, BAIKE_ISBN  # noqa: F401
2 | 


--------------------------------------------------------------------------------
/webserver/plugins/meta/baike/baidubaike/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/webserver/plugins/meta/baike/baidubaike/__init__.py


--------------------------------------------------------------------------------
/webserver/plugins/meta/youshu/__init__.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python3
2 | # -*- coding: UTF-8 -*-
3 | from .api import YoushuApi, KEY, YOUSHU_ISBN  # noqa: F401
4 | 
5 | """
6 | Youshu.me metadata plugin for Talebook
7 | """
8 | 


--------------------------------------------------------------------------------
/webserver/plugins/parser/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/webserver/plugins/parser/__init__.py


--------------------------------------------------------------------------------
/webserver/resources/book/creader.html:
--------------------------------------------------------------------------------
 1 | <!DOCTYPE html>
 2 | <html lang="en">
 3 | <head>
 4 |   <meta charset="UTF-8" />
 5 |   <meta name="mobile-web-app-capable" content="yes">
 6 |   <meta name="apple-mobile-web-app-capable" content="yes" />
 7 |   <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" />
 8 |   <title>秉烛夜读</title>
 9 | 
10 |   <base href="{{RES}}/static/candle-reader/" />
11 | 
12 |   <link rel="icon" href="/favicon.ico" />
13 |   <link rel="preconnect" href="https://fonts.gstatic.com/" crossorigin="anonymous">
14 |   <link rel="preload" as="style" onload="this.rel='stylesheet'" href="https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap">
15 |   <link rel="stylesheet" crossorigin href="style.css">
16 | 
17 |   <script src="js/epub-v0.3.88.js"></script>
18 |   <script  type="module">
19 |     import { Reader } from "./candle-reader.es.js"
20 |     new Reader('#app', {
21 |       debug: false,
22 |       server: "{{CANDLE_READER_SERVER}}",
23 |       themes_css: "{{RES}}/static/candle-reader/css/themes.css",
24 |       book_url: "{{RES}}{{epub_dir}}/",
25 |       display: "",
26 |     })
27 |   </script>
28 | </head>
29 | <body>
30 |   <div id="app"></div>
31 | </body>
32 | </html>
33 | 


--------------------------------------------------------------------------------
/webserver/resources/book/epubjs.html:
--------------------------------------------------------------------------------
 1 | <!DOCTYPE html>
 2 | <html>
 3 | 
 4 | <head>
 5 | 	<title></title>
 6 |     <base href="{{RES}}/static/epubreader/" />
 7 | 
 8 | 	<meta charset="utf-8">
 9 | 	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
10 | 	<meta http-equiv="Permissions-Policy" content="interest-cohort=()">
11 | 	<meta name="description" content="">
12 | 	<meta name="viewport" content="width=device-width, user-scalable=no">
13 | 	<meta name="apple-mobile-web-app-capable" content="yes">
14 | 
15 | 	<link rel="icon" type="image/png" href="{{IMG}}/get/thumb_144_144/{{book.id}}.png?t={{book.timestamp}}">
16 | 	<link rel="stylesheet" href="css/main.css">
17 | 
18 | 	<!-- Libs -->
19 | 	<script src="js/libs/jszip.min.js"></script>
20 | 	<script src="js/libs/md5.min.js"></script>
21 | 	<script src="js/libs/epub.min.js"></script>
22 | 
23 | 	<!-- Reader -->
24 | 	<script type="module">
25 | 		import { Reader } from "./js/epubreader.min.js"
26 |         const path = "{{RES}}{{epub_dir}}/";
27 |         window.onload = (e) => new Reader(path, { openbook: false, annotations: false, arrows: "content" });
28 | 	</script>
29 | </head>
30 | 
31 | <body>
32 | </body>
33 | 
34 | </html>
35 | 


--------------------------------------------------------------------------------
/webserver/resources/calibre/default_cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/talebook/talebook/6e81ae20a1dcdbc4ac10c1ae7e0621097cdcc45a/webserver/resources/calibre/default_cover.jpg


--------------------------------------------------------------------------------
/webserver/resources/index.html:
--------------------------------------------------------------------------------
1 | <!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no,minimal-ui"><meta name=apple-mobile-web-app-capable content=yes><meta name=apple-mobile-web-app-status-bar-style content=black><meta name=Keywords content="在线阅读 电子书 下载 推送 kindle epub mobi"><meta name=description content=这是个安静读书的地方。在线阅读Epub/Mobi/Pdf/Azw3等格式的电子书,也支持下载或推送到Kindle设备里。><link rel=icon href=/favicon.ico><title>Calibre Webserver</title><link rel=stylesheet href=/fonts/roboto.css><link rel=stylesheet href=/fonts/material_icons.css><link href=/css/app.ec95c433.css rel=preload as=style><link href=/css/chunk-vendors.101850f3.css rel=preload as=style><link href=/js/app.8f0ca9a8.js rel=preload as=script><link href=/js/chunk-vendors.ef207656.js rel=preload as=script><link href=/css/chunk-vendors.101850f3.css rel=stylesheet><link href=/css/app.ec95c433.css rel=stylesheet></head><body><div id=app></div><script async src="//tajs.qq.com/stats?sId=29043744" charset=UTF-8></script><script async src="https://www.googletagmanager.com/gtag/js?id=UA-45286404-1"></script><script>window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments)}; gtag('js', new Date()); gtag('config', 'UA-45286404-1');</script><script src=/js/chunk-vendors.ef207656.js></script><script src=/js/app.8f0ca9a8.js></script></body></html>


--------------------------------------------------------------------------------
/webserver/services/__init__.py:
--------------------------------------------------------------------------------
1 | from .async_service import AsyncService  # noqa F401


--------------------------------------------------------------------------------
/webserver/services/extract.py:
--------------------------------------------------------------------------------
 1 | #!/usr/bin/env python3
 2 | # -*- coding: UTF-8 -*-
 3 | 
 4 | import json
 5 | import os
 6 | import logging
 7 | import traceback
 8 | 
 9 | from webserver import loader
10 | from webserver.services import AsyncService
11 | from webserver.plugins.parser.txt import TxtParser
12 | 
13 | CONF = loader.get_settings()
14 | 
15 | 
16 | class ExtractService(AsyncService):
17 |     @AsyncService.register_service
18 |     def parse_txt_content(self, bid, fpath):
19 |         '''从TXT文件中提取目录并存储为json'''
20 |         outDir = os.path.join(CONF["extract_path"], str(bid))  # 解压后的目录
21 |         content_path = os.path.join(outDir, "content.json")
22 |         if os.path.isfile(content_path):
23 |             logging.info(f"书籍<{bid}>已转换, {content_path} exists")
24 |             return False
25 | 
26 |         if not os.path.exists(outDir):
27 |             os.mkdir(outDir)
28 | 
29 |         try:
30 |             ret = TxtParser().parse(fpath)
31 |             content = json.dumps(ret, ensure_ascii=False)
32 |             with open(content_path, 'w', encoding="utf8") as f:
33 |                 f.write(content)
34 |                 return True
35 |         except Exception as e:
36 |             logging.info(f"TXT convert error: {e}")
37 |             logging.error(traceback.format_exc())
38 |             return False
39 | 


--------------------------------------------------------------------------------
/webserver/social_routes.py:
--------------------------------------------------------------------------------
 1 | 
 2 | from tornado.web import url
 3 | from social_tornado.handlers import AuthHandler, CompleteHandler, DisconnectHandler
 4 | 
 5 | SOCIAL_AUTH_ROUTES = [
 6 |     url(r'/auth/login/(?P<backend>[^/]+)/?', AuthHandler, name='begin'),
 7 |     url(r'/auth/complete/(?P<backend>[^/]+).do', CompleteHandler, name='complete'),
 8 |     url(r'/auth/disconnect/(?P<backend>[^/]+)/?', DisconnectHandler,
 9 |         name='disconnect'),
10 |     url(r'/auth/disconnect/(?P<backend>[^/]+)/(?P<association_id>\d+)/?',
11 |         DisconnectHandler, name='disconect_individual'),
12 | ]
13 | 


--------------------------------------------------------------------------------
/webserver/version.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | # -*- coding: UTF-8 -*-
3 | 
4 | VERSION = "2.0.0-62-60"
5 | 


--------------------------------------------------------------------------------