├── .gitignore ├── client ├── .gitignore ├── .vscode │ └── extensions.json ├── index.html ├── package.json ├── pnpm-lock.yaml ├── public │ ├── docx │ │ ├── docx-preview.js │ │ ├── index.html │ │ ├── jszip.min.js │ │ └── polyfill.min.js │ ├── epub │ │ ├── epub.js │ │ ├── examples.css │ │ ├── index.html │ │ └── jszip.min.js │ ├── md │ │ └── index.html │ ├── pdfjs │ │ ├── LICENSE │ │ ├── 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 │ └── spinner.css ├── src │ ├── App.vue │ ├── api.js │ ├── assets │ │ ├── loading.svg │ │ └── send.svg │ ├── main.js │ ├── style.css │ ├── utils.js │ └── views │ │ ├── AddLink.vue │ │ └── Upload.vue ├── start └── vite.config.js ├── docker-compose.yml ├── preview.png ├── readme.md └── server ├── consts.py ├── database.db ├── db_docs.py ├── db_init.py ├── db_msg.py ├── doc_util.py ├── download_website.py ├── main.py ├── requirements.txt └── start /.gitignore: -------------------------------------------------------------------------------- 1 | server/data 2 | server/database.db 3 | client/.pnpm-store/ 4 | 5 | server/__pycache__/ 6 | -------------------------------------------------------------------------------- /client/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /client/.vscode/extensions.json: -------------------------------------------------------------------------------- 1 | { 2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"] 3 | } 4 | -------------------------------------------------------------------------------- /client/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | ChatDoc 8 | 9 | 10 | 11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /client/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "client", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite --host", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "@element-plus/icons-vue": "^2.1.0", 13 | "@tato30/vue-pdf": "^1.3.4", 14 | "element-plus": "^2.3.1", 15 | "normalize.css": "^8.0.1", 16 | "vite-svg-loader": "^4.0.0", 17 | "vue": "^3.2.47", 18 | "vue-pdf": "^4.3.0" 19 | }, 20 | "devDependencies": { 21 | "@vitejs/plugin-vue": "^4.1.0", 22 | "sass": "^1.60.0", 23 | "vite": "^4.2.0" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /client/public/docx/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Document 9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 35 | 36 | -------------------------------------------------------------------------------- /client/public/docx/polyfill.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t():"function"==typeof define&&define.amd?define(t):t()}(0,function(){"use strict";function e(e){var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){return t.reject(n)})})}function t(e){return new this(function(t,n){function r(e,n){if(n&&("object"==typeof n||"function"==typeof n)){var f=n.then;if("function"==typeof f)return void f.call(n,function(t){r(e,t)},function(n){o[e]={status:"rejected",reason:n},0==--i&&t(o)})}o[e]={status:"fulfilled",value:n},0==--i&&t(o)}if(!e||"undefined"==typeof e.length)return n(new TypeError(typeof e+" "+e+" is not iterable(cannot read property Symbol(Symbol.iterator))"));var o=Array.prototype.slice.call(e);if(0===o.length)return t([]);for(var i=o.length,f=0;o.length>f;f++)r(f,o[f])})}function n(e,t){this.name="AggregateError",this.errors=e,this.message=t||""}function r(e){var t=this;return new t(function(r,o){if(!e||"undefined"==typeof e.length)return o(new TypeError("Promise.any accepts an array"));var i=Array.prototype.slice.call(e);if(0===i.length)return o();for(var f=[],u=0;i.length>u;u++)try{t.resolve(i[u]).then(r)["catch"](function(e){f.push(e),f.length===i.length&&o(new n(f,"All promises were rejected"))})}catch(c){o(c)}})}function o(e){return!(!e||"undefined"==typeof e.length)}function i(){}function f(e){if(!(this instanceof f))throw new TypeError("Promises must be constructed via new");if("function"!=typeof e)throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=undefined,this._deferreds=[],s(e,this)}function u(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,f._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var r;try{r=n(e._value)}catch(o){return void a(t.promise,o)}c(t.promise,r)}else(1===e._state?c:a)(t.promise,e._value)})):e._deferreds.push(t)}function c(e,t){try{if(t===e)throw new TypeError("A promise cannot be resolved with itself.");if(t&&("object"==typeof t||"function"==typeof t)){var n=t.then;if(t instanceof f)return e._state=3,e._value=t,void l(e);if("function"==typeof n)return void s(function(e,t){return function(){e.apply(t,arguments)}}(n,t),e)}e._state=1,e._value=t,l(e)}catch(r){a(e,r)}}function a(e,t){e._state=2,e._value=t,l(e)}function l(e){2===e._state&&0===e._deferreds.length&&f._immediateFn(function(){e._handled||f._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;n>t;t++)u(e,e._deferreds[t]);e._deferreds=null}function s(e,t){var n=!1;try{e(function(e){n||(n=!0,c(t,e))},function(e){n||(n=!0,a(t,e))})}catch(r){if(n)return;n=!0,a(t,r)}}n.prototype=Error.prototype;var d=setTimeout;f.prototype["catch"]=function(e){return this.then(null,e)},f.prototype.then=function(e,t){var n=new this.constructor(i);return u(this,new function(e,t,n){this.onFulfilled="function"==typeof e?e:null,this.onRejected="function"==typeof t?t:null,this.promise=n}(e,t,n)),n},f.prototype["finally"]=e,f.all=function(e){return new f(function(t,n){function r(e,o){try{if(o&&("object"==typeof o||"function"==typeof o)){var u=o.then;if("function"==typeof u)return void u.call(o,function(t){r(e,t)},n)}i[e]=o,0==--f&&t(i)}catch(c){n(c)}}if(!o(e))return n(new TypeError("Promise.all accepts an array"));var i=Array.prototype.slice.call(e);if(0===i.length)return t([]);for(var f=i.length,u=0;i.length>u;u++)r(u,i[u])})},f.any=r,f.allSettled=t,f.resolve=function(e){return e&&"object"==typeof e&&e.constructor===f?e:new f(function(t){t(e)})},f.reject=function(e){return new f(function(t,n){n(e)})},f.race=function(e){return new f(function(t,n){if(!o(e))return n(new TypeError("Promise.race accepts an array"));for(var r=0,i=e.length;i>r;r++)f.resolve(e[r]).then(t,n)})},f._immediateFn="function"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){d(e,0)},f._unhandledRejectionFn=function(e){void 0!==console&&console&&console.warn("Possible Unhandled Promise Rejection:",e)};var p=function(){if("undefined"!=typeof self)return self;if("undefined"!=typeof window)return window;if("undefined"!=typeof global)return global;throw Error("unable to locate global object")}();"function"!=typeof p.Promise?p.Promise=f:(p.Promise.prototype["finally"]||(p.Promise.prototype["finally"]=e),p.Promise.allSettled||(p.Promise.allSettled=t),p.Promise.any||(p.Promise.any=r))}); 2 | -------------------------------------------------------------------------------- /client/public/epub/examples.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | background: #fafafa; 4 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 5 | color: #333; 6 | 7 | position: absolute; 8 | height: 100%; 9 | width: 100%; 10 | min-height: 800px; 11 | } 12 | 13 | #title { 14 | width: 900px; 15 | min-height: 18px; 16 | margin: 10px auto; 17 | text-align: center; 18 | font-size: 16px; 19 | color: #E2E2E2; 20 | font-weight: 400; 21 | } 22 | 23 | #title:hover { 24 | color: #777; 25 | } 26 | 27 | #viewer.spreads { 28 | width: 900px; 29 | height: 600px; 30 | box-shadow: 0 0 4px #ccc; 31 | border-radius: 5px; 32 | padding: 0; 33 | position: relative; 34 | margin: 10px auto; 35 | background: white url('ajax-loader.gif') center center no-repeat; 36 | top: calc(50vh - 400px); 37 | } 38 | 39 | #viewer.spreads .epub-view > iframe { 40 | background: white; 41 | } 42 | 43 | #viewer.scrolled { 44 | overflow: hidden; 45 | width: 800px; 46 | margin: 0 auto; 47 | position: relative; 48 | background: url('ajax-loader.gif') center center no-repeat; 49 | 50 | } 51 | 52 | #viewer.scrolled .epub-container { 53 | background: white; 54 | box-shadow: 0 0 4px #ccc; 55 | margin: 10px; 56 | padding: 20px; 57 | } 58 | 59 | #viewer.scrolled .epub-view > iframe { 60 | background: white; 61 | } 62 | 63 | #prev { 64 | left: 0; 65 | } 66 | 67 | #next { 68 | right: 0; 69 | } 70 | 71 | #toc { 72 | display: block; 73 | margin: 10px auto; 74 | } 75 | 76 | @media (min-width: 1000px) { 77 | #viewer.spreads:after { 78 | position: absolute; 79 | width: 1px; 80 | border-right: 1px #000 solid; 81 | height: 90%; 82 | z-index: 1; 83 | left: 50%; 84 | margin-left: -1px; 85 | top: 5%; 86 | opacity: .15; 87 | box-shadow: -2px 0 15px rgba(0, 0, 0, 1); 88 | content: ""; 89 | } 90 | 91 | #viewer.spreads.single:after { 92 | display: none; 93 | } 94 | 95 | #prev { 96 | left: 40px; 97 | } 98 | 99 | #next { 100 | right: 40px; 101 | } 102 | } 103 | 104 | .arrow { 105 | position: fixed; 106 | top: 50%; 107 | margin-top: -32px; 108 | font-size: 64px; 109 | color: #E2E2E2; 110 | font-family: arial, sans-serif; 111 | font-weight: bold; 112 | cursor: pointer; 113 | -webkit-user-select: none; 114 | -moz-user-select: none; 115 | user-select: none; 116 | text-decoration: none; 117 | } 118 | 119 | .navlink { 120 | margin: 14px; 121 | display: block; 122 | text-align: center; 123 | text-decoration: none; 124 | color: #ccc; 125 | } 126 | 127 | .arrow:hover, .navlink:hover { 128 | color: #777; 129 | } 130 | 131 | .arrow:active, .navlink:hover { 132 | color: #000; 133 | } 134 | 135 | #book-wrapper { 136 | width: 480px; 137 | height: 640px; 138 | overflow: hidden; 139 | border: 1px solid #ccc; 140 | margin: 28px auto; 141 | background: #fff; 142 | border-radius: 0 5px 5px 0; 143 | position: absolute; 144 | } 145 | 146 | #book-viewer { 147 | width: 480px; 148 | height: 660px; 149 | margin: -30px auto; 150 | -moz-box-shadow: inset 10px 0 20px rgba(0,0,0,.1); 151 | -webkit-box-shadow: inset 10px 0 20px rgba(0,0,0,.1); 152 | box-shadow: inset 10px 0 20px rgba(0,0,0,.1); 153 | } 154 | 155 | #book-viewer iframe { 156 | padding: 40px 40px; 157 | } 158 | 159 | #controls { 160 | position: absolute; 161 | bottom: 16px; 162 | left: 50%; 163 | width: 400px; 164 | margin-left: -200px; 165 | text-align: center; 166 | display: none; 167 | } 168 | 169 | #controls > input[type=range] { 170 | width: 400px; 171 | } 172 | 173 | #navigation { 174 | width: 400px; 175 | height: 100vh; 176 | position: absolute; 177 | overflow: auto; 178 | top: 0; 179 | left: 0; 180 | background: #777; 181 | -webkit-transition: -webkit-transform .25s ease-out; 182 | -moz-transition: -moz-transform .25s ease-out; 183 | -ms-transition: -moz-transform .25s ease-out; 184 | transition: transform .25s ease-out; 185 | 186 | } 187 | 188 | #navigation.fixed { 189 | position: fixed; 190 | } 191 | 192 | #navigation h1 { 193 | width: 200px; 194 | font-size: 16px; 195 | font-weight: normal; 196 | color: #fff; 197 | margin-bottom: 10px; 198 | } 199 | 200 | #navigation h2 { 201 | font-size: 14px; 202 | font-weight: normal; 203 | color: #B0B0B0; 204 | margin-bottom: 20px; 205 | } 206 | 207 | #navigation ul { 208 | padding-left: 36px; 209 | margin-left: 0; 210 | margin-top: 12px; 211 | margin-bottom: 12px; 212 | width: 340px; 213 | } 214 | 215 | #navigation ul li { 216 | list-style: decimal; 217 | margin-bottom: 10px; 218 | color: #cccddd; 219 | font-size: 12px; 220 | padding-left: 0; 221 | margin-left: 0; 222 | } 223 | 224 | #navigation ul li a { 225 | color: #ccc; 226 | text-decoration: none; 227 | } 228 | 229 | #navigation ul li a:hover { 230 | color: #fff; 231 | text-decoration: underline; 232 | } 233 | 234 | #navigation ul li a.active { 235 | color: #fff; 236 | } 237 | 238 | #navigation #cover { 239 | display: block; 240 | margin: 24px auto; 241 | } 242 | 243 | #navigation #closer { 244 | position: absolute; 245 | top: 0; 246 | right: 0; 247 | padding: 12px; 248 | color: #cccddd; 249 | width: 24px; 250 | } 251 | 252 | #navigation.closed { 253 | -webkit-transform: translate(-400px, 0); 254 | -moz-transform: translate(-400px, 0); 255 | -ms-transform: translate(-400px, 0); 256 | } 257 | 258 | svg { 259 | display: block; 260 | } 261 | 262 | .close-x { 263 | stroke: #cccddd; 264 | fill: transparent; 265 | stroke-linecap: round; 266 | stroke-width: 5; 267 | } 268 | 269 | .close-x:hover { 270 | stroke: #fff; 271 | } 272 | 273 | #opener { 274 | position: absolute; 275 | top: 0; 276 | left: 0; 277 | padding: 10px; 278 | stroke: #E2E2E2; 279 | fill: #E2E2E2; 280 | 281 | } 282 | 283 | #opener:hover { 284 | stroke: #777; 285 | fill: #777; 286 | } 287 | -------------------------------------------------------------------------------- /client/public/epub/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 150 | 151 | 152 | 153 | -------------------------------------------------------------------------------- /client/public/md/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | Marked in the browser 7 | 8 | 9 | 10 |
11 | 12 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78ms-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78ms-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/78ms-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/78ms-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/83pv-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/83pv-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/90ms-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/90ms-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/90ms-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/90ms-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/90msp-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/90msp-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/90msp-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/90msp-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/90pv-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/90pv-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/90pv-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/90pv-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Add-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Add-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Add-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Add-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Add-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Add-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Add-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Add-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-0.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-0.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-1.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-1.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-3.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-3.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-4.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-4.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-5.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-5.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-6.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-6.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-CNS1-UCS2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-CNS1-UCS2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-0.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-0.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-1.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-1.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-3.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-3.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-4.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-4.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-5.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-5.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-GB1-UCS2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-GB1-UCS2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-0.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-0.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-1.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-1.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-3.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-3.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-4.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-4.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-5.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-5.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-6.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-6.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Japan1-UCS2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Japan1-UCS2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Korea1-0.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Korea1-0.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Korea1-1.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Korea1-1.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Korea1-2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Korea1-2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Adobe-Korea1-UCS2.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Adobe-Korea1-UCS2.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/B5pc-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/B5pc-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/B5pc-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/B5pc-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/CNS-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/CNS-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/CNS-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/CNS-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/CNS1-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/CNS1-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/CNS1-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/CNS1-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/CNS2-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/CNS2-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/CNS2-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/CNS2-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/ETHK-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/ETHK-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/ETHK-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/ETHK-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/ETen-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/ETen-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/ETen-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/ETen-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/ETenms-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/ETenms-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/ETenms-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/ETenms-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Ext-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Ext-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Ext-RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Ext-RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Ext-RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Ext-RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Ext-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Ext-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GB-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GB-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GB-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GB-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GB-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GB-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GB-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GB-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBK-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBK-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBK-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBK-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBK2K-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBK2K-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBK2K-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBK2K-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBKp-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBKp-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBKp-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBKp-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBT-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBT-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBT-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBT-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBT-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBT-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBT-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBT-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBTpc-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBTpc-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBTpc-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBTpc-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBpc-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBpc-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/GBpc-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/GBpc-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKdla-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKdla-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKdla-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKdla-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKdlb-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKdlb-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKdlb-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKdlb-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKgccs-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKgccs-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKgccs-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKgccs-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKm314-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKm314-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKm314-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKm314-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKm471-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKm471-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKm471-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKm471-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKscs-B5-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKscs-B5-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/HKscs-B5-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/HKscs-B5-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Hankaku.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Hankaku.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Hiragana.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Hiragana.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSC-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSC-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSC-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSC-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSC-Johab-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSC-Johab-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSC-Johab-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSC-Johab-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSCms-UHC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSCms-UHC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSCms-UHC-HW-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSCms-UHC-HW-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSCms-UHC-HW-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSCms-UHC-HW-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSCms-UHC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSCms-UHC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSCpc-EUC-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSCpc-EUC-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/KSCpc-EUC-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/KSCpc-EUC-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Katakana.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Katakana.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/LICENSE: -------------------------------------------------------------------------------- 1 | %%Copyright: ----------------------------------------------------------- 2 | %%Copyright: Copyright 1990-2009 Adobe Systems Incorporated. 3 | %%Copyright: All rights reserved. 4 | %%Copyright: 5 | %%Copyright: Redistribution and use in source and binary forms, with or 6 | %%Copyright: without modification, are permitted provided that the 7 | %%Copyright: following conditions are met: 8 | %%Copyright: 9 | %%Copyright: Redistributions of source code must retain the above 10 | %%Copyright: copyright notice, this list of conditions and the following 11 | %%Copyright: disclaimer. 12 | %%Copyright: 13 | %%Copyright: Redistributions in binary form must reproduce the above 14 | %%Copyright: copyright notice, this list of conditions and the following 15 | %%Copyright: disclaimer in the documentation and/or other materials 16 | %%Copyright: provided with the distribution. 17 | %%Copyright: 18 | %%Copyright: Neither the name of Adobe Systems Incorporated nor the names 19 | %%Copyright: of its contributors may be used to endorse or promote 20 | %%Copyright: products derived from this software without specific prior 21 | %%Copyright: written permission. 22 | %%Copyright: 23 | %%Copyright: THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 24 | %%Copyright: CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 25 | %%Copyright: INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 26 | %%Copyright: MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 27 | %%Copyright: DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 28 | %%Copyright: CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 29 | %%Copyright: SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 30 | %%Copyright: NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 31 | %%Copyright: LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 32 | %%Copyright: HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33 | %%Copyright: CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 34 | %%Copyright: OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 35 | %%Copyright: SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 36 | %%Copyright: ----------------------------------------------------------- 37 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/NWP-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/NWP-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/NWP-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/NWP-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/RKSJ-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/RKSJ-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/RKSJ-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/RKSJ-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/Roman.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/Roman.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UCS2-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UCS2-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UCS2-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UCS2-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UTF16-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UTF16-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UTF16-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UTF16-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UTF8-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UTF8-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniCNS-UTF8-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniCNS-UTF8-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UCS2-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UCS2-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UCS2-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UCS2-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UTF16-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UTF16-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UTF16-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UTF16-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UTF8-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UTF8-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniGB-UTF8-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniGB-UTF8-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UCS2-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UCS2-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UCS2-HW-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UCS2-HW-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UCS2-HW-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UCS2-HW-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UCS2-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UCS2-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UTF16-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UTF16-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UTF16-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UTF16-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UTF8-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UTF8-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS-UTF8-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS-UTF8-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS2004-UTF16-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS2004-UTF16-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS2004-UTF16-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS2004-UTF16-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS2004-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS2004-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS2004-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS2004-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS2004-UTF8-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS2004-UTF8-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJIS2004-UTF8-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJIS2004-UTF8-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISPro-UCS2-HW-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISPro-UCS2-HW-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISPro-UCS2-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISPro-UCS2-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISPro-UTF8-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISPro-UTF8-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISX0213-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISX0213-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISX0213-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISX0213-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISX02132004-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISX02132004-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniJISX02132004-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniJISX02132004-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UCS2-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UCS2-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UCS2-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UCS2-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UTF16-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UTF16-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UTF16-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UTF16-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UTF32-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UTF32-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UTF32-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UTF32-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UTF8-H.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UTF8-H.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/UniKS-UTF8-V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/UniKS-UTF8-V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/V.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/V.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/cmaps/WP-Symbol.bcmap: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/cmaps/WP-Symbol.bcmap -------------------------------------------------------------------------------- /client/public/pdfjs/web/compressed.tracemonkey-pldi-09.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/compressed.tracemonkey-pldi-09.pdf -------------------------------------------------------------------------------- /client/public/pdfjs/web/debugger.css: -------------------------------------------------------------------------------- 1 | /* Copyright 2014 Mozilla Foundation 2 | * 3 | * Licensed under the Apache License, Version 2.0 (the "License"); 4 | * you may not use this file except in compliance with the License. 5 | * You may obtain a copy of the License at 6 | * 7 | * http://www.apache.org/licenses/LICENSE-2.0 8 | * 9 | * Unless required by applicable law or agreed to in writing, software 10 | * distributed under the License is distributed on an "AS IS" BASIS, 11 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | * See the License for the specific language governing permissions and 13 | * limitations under the License. 14 | */ 15 | 16 | #PDFBug, 17 | #PDFBug input, 18 | #PDFBug button, 19 | #PDFBug select { 20 | font: message-box; 21 | } 22 | #PDFBug { 23 | background-color: rgba(255, 255, 255, 1); 24 | border: 1px solid rgba(102, 102, 102, 1); 25 | position: fixed; 26 | top: 32px; 27 | right: 0; 28 | bottom: 0; 29 | font-size: 10px; 30 | padding: 0; 31 | width: 300px; 32 | } 33 | #PDFBug .controls { 34 | background: rgba(238, 238, 238, 1); 35 | border-bottom: 1px solid rgba(102, 102, 102, 1); 36 | padding: 3px; 37 | } 38 | #PDFBug .panels { 39 | bottom: 0; 40 | left: 0; 41 | overflow: auto; 42 | position: absolute; 43 | right: 0; 44 | top: 27px; 45 | } 46 | #PDFBug .panels > div { 47 | padding: 5px; 48 | } 49 | #PDFBug button.active { 50 | font-weight: bold; 51 | } 52 | .debuggerShowText, 53 | .debuggerHideText:hover { 54 | background-color: rgba(255, 255, 0, 1); 55 | } 56 | #PDFBug .stats { 57 | font-family: courier; 58 | font-size: 10px; 59 | white-space: pre; 60 | } 61 | #PDFBug .stats .title { 62 | font-weight: bold; 63 | } 64 | #PDFBug table { 65 | font-size: 10px; 66 | white-space: pre; 67 | } 68 | #PDFBug table.showText { 69 | border-collapse: collapse; 70 | text-align: center; 71 | } 72 | #PDFBug table.showText, 73 | #PDFBug table.showText tr, 74 | #PDFBug table.showText td { 75 | border: 1px solid black; 76 | padding: 1px; 77 | } 78 | #PDFBug table.showText td.advance { 79 | color: grey; 80 | } 81 | 82 | #viewer.textLayer-visible .textLayer { 83 | opacity: 1; 84 | } 85 | 86 | #viewer.textLayer-visible .canvasWrapper { 87 | background-color: rgba(128, 255, 128, 1); 88 | } 89 | 90 | #viewer.textLayer-visible .canvasWrapper canvas { 91 | mix-blend-mode: screen; 92 | } 93 | 94 | #viewer.textLayer-visible .textLayer span { 95 | background-color: rgba(255, 255, 0, 0.1); 96 | color: rgba(0, 0, 0, 1); 97 | border: solid 1px rgba(255, 0, 0, 0.5); 98 | box-sizing: border-box; 99 | } 100 | 101 | #viewer.textLayer-visible .textLayer span[aria-owns] { 102 | background-color: rgba(255, 0, 0, 0.3); 103 | } 104 | 105 | #viewer.textLayer-hover .textLayer span:hover { 106 | background-color: rgba(255, 255, 255, 1); 107 | color: rgba(0, 0, 0, 1); 108 | } 109 | 110 | #viewer.textLayer-shadow .textLayer span { 111 | background-color: rgba(255, 255, 255, 0.6); 112 | color: rgba(0, 0, 0, 1); 113 | } 114 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-check.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 11 | 12 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-comment.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 13 | 16 | 17 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-help.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 10 | 16 | 18 | 21 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-insert.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 10 | 11 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-key.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 11 | 12 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-newparagraph.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 11 | 12 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-noicon.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-note.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 14 | 21 | 28 | 35 | 42 | 43 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-paperclip.svg: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-paragraph.svg: -------------------------------------------------------------------------------- 1 | 2 | 7 | 13 | 16 | 17 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/annotation-pushpin.svg: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/cursor-editorFreeText.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/cursor-editorInk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/findbarButton-next.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/findbarButton-previous.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/loading-dark.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/loading-icon.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/images/loading-icon.gif -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/loading.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-documentProperties.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-firstPage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-handTool.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-lastPage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-rotateCcw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-rotateCw.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-scrollHorizontal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-scrollPage.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-scrollVertical.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-scrollWrapped.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-selectTool.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-spreadEven.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-spreadNone.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/secondaryToolbarButton-spreadOdd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-bookmark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-currentOutlineItem.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-download.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-editorFreeText.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-editorInk.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-menuArrow.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-openFile.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-pageDown.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-pageUp.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-presentationMode.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-print.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-search.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-secondaryToolbarToggle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-sidebarToggle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-viewAttachments.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-viewLayers.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-viewOutline.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-viewThumbnail.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-zoomIn.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/toolbarButton-zoomOut.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/treeitem-collapsed.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/images/treeitem-expanded.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/lo/viewer.properties: -------------------------------------------------------------------------------- 1 | # Copyright 2012 Mozilla Foundation 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # Main toolbar buttons (tooltips and alt text for images) 16 | previous.title=ຫນ້າກ່ອນຫນ້າ 17 | previous_label=ກ່ອນຫນ້າ 18 | next.title=ຫນ້າຖັດໄປ 19 | next_label=ຖັດໄປ 20 | 21 | # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. 22 | page.title=ຫນ້າ 23 | # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number 24 | # representing the total number of pages in the document. 25 | of_pages=ຈາກ {{pagesCount}} 26 | # LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" 27 | # will be replaced by a number representing the currently visible page, 28 | # respectively a number representing the total number of pages in the document. 29 | page_of_pages=({{pageNumber}} ຈາກ {{pagesCount}}) 30 | 31 | zoom_out.title=ຂະຫຍາຍອອກ 32 | zoom_out_label=ຂະຫຍາຍອອກ 33 | zoom_in.title=ຂະຫຍາຍເຂົ້າ 34 | zoom_in_label=ຂະຫຍາຍເຂົ້າ 35 | zoom.title=ຂະຫຍາຍ 36 | presentation_mode.title=ສັບປ່ຽນເປັນໂຫມດການນຳສະເຫນີ 37 | presentation_mode_label=ໂຫມດການນຳສະເຫນີ 38 | open_file.title=ເປີດໄຟລ໌ 39 | open_file_label=ເປີດ 40 | print.title=ພິມ 41 | print_label=ພິມ 42 | download.title=ດາວໂຫລດ 43 | download_label=ດາວໂຫລດ 44 | bookmark.title=ມຸມມອງປະຈຸບັນ (ສຳເນົາ ຫລື ເປີດໃນວິນໂດໃຫມ່) 45 | bookmark_label=ມຸມມອງປະຈຸບັນ 46 | 47 | # Secondary toolbar and context menu 48 | tools.title=ເຄື່ອງມື 49 | tools_label=ເຄື່ອງມື 50 | first_page.title=ໄປທີ່ຫນ້າທຳອິດ 51 | first_page_label=ໄປທີ່ຫນ້າທຳອິດ 52 | last_page.title=ໄປທີ່ຫນ້າສຸດທ້າຍ 53 | last_page_label=ໄປທີ່ຫນ້າສຸດທ້າຍ 54 | page_rotate_cw.title=ຫມູນຕາມເຂັມໂມງ 55 | page_rotate_cw_label=ຫມູນຕາມເຂັມໂມງ 56 | page_rotate_ccw.title=ຫມູນທວນເຂັມໂມງ 57 | page_rotate_ccw_label=ຫມູນທວນເຂັມໂມງ 58 | 59 | 60 | 61 | 62 | # Document properties dialog box 63 | document_properties_file_name=ຊື່ໄຟລ໌: 64 | document_properties_file_size=ຂະຫນາດໄຟລ໌: 65 | # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" 66 | # will be replaced by the PDF file size in kilobytes, respectively in bytes. 67 | # LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" 68 | # will be replaced by the PDF file size in megabytes, respectively in bytes. 69 | # LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" 70 | # will be replaced by the creation/modification date, and time, of the PDF file. 71 | document_properties_page_size_unit_inches=in 72 | document_properties_page_size_unit_millimeters=mm 73 | document_properties_page_size_orientation_portrait=ລວງຕັ້ງ 74 | document_properties_page_size_orientation_landscape=ລວງນອນ 75 | document_properties_page_size_name_a3=A3 76 | document_properties_page_size_name_a4=A4 77 | document_properties_page_size_name_letter=ຈົດໝາຍ 78 | document_properties_page_size_name_legal=ຂໍ້ກົດຫມາຍ 79 | # LOCALIZATION NOTE (document_properties_page_size_dimension_string): 80 | # "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by 81 | # the size, respectively their unit of measurement and orientation, of the (current) page. 82 | # LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): 83 | # "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by 84 | # the size, respectively their unit of measurement, name, and orientation, of the (current) page. 85 | # LOCALIZATION NOTE (document_properties_linearized): The linearization status of 86 | # the document; usually called "Fast Web View" in English locales of Adobe software. 87 | document_properties_close=ປິດ 88 | 89 | # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by 90 | # a numerical per cent value. 91 | print_progress_close=ຍົກເລີກ 92 | 93 | # Tooltips and alt text for side panel toolbar buttons 94 | # (the _label strings are alt text for the buttons, the .title strings are 95 | # tooltips) 96 | toggle_sidebar.title=ເປີດ/ປິດແຖບຂ້າງ 97 | toggle_sidebar_label=ເປີດ/ປິດແຖບຂ້າງ 98 | document_outline_label=ເຄົ້າຮ່າງເອກະສານ 99 | findbar_label=ຄົ້ນຫາ 100 | 101 | # Thumbnails panel item (tooltip and alt text for images) 102 | # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page 103 | # number. 104 | # LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page 105 | # number. 106 | 107 | # Find panel button title and messages 108 | find_input.title=ຄົ້ນຫາ 109 | # LOCALIZATION NOTE (find_match_count): The supported plural forms are 110 | # [one|two|few|many|other], with [other] as the default value. 111 | # "{{current}}" and "{{total}}" will be replaced by a number representing the 112 | # index of the currently active find result, respectively a number representing 113 | # the total number of matches in the document. 114 | # LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are 115 | # [zero|one|two|few|many|other], with [other] as the default value. 116 | # "{{limit}}" will be replaced by a numerical value. 117 | 118 | # Error panel labels 119 | error_more_info=ຂໍ້ມູນເພີ່ມເຕີມ 120 | error_less_info=ຂໍ້ມູນນ້ອຍລົງ 121 | error_close=ປິດ 122 | # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be 123 | # replaced by the PDF.JS version and build ID. 124 | # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an 125 | # english string describing the error. 126 | # LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack 127 | # trace. 128 | # LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename 129 | # LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number 130 | rendering_error=ມີຂໍ້ຜິດພາດເກີດຂື້ນຂະນະທີ່ກຳລັງເຣັນເດີຫນ້າ. 131 | 132 | # Predefined zoom values 133 | # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a 134 | # numerical scale value. 135 | 136 | loading_error=ມີຂໍ້ຜິດພາດເກີດຂື້ນຂະນະທີ່ກຳລັງໂຫລດ PDF. 137 | invalid_file_error=ໄຟລ໌ PDF ບໍ່ຖືກຕ້ອງຫລືເສຍຫາຍ. 138 | 139 | # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. 140 | # "{{type}}" will be replaced with an annotation type from a list defined in 141 | # the PDF spec (32000-1:2008 Table 169 – Annotation types). 142 | # Some common types are e.g.: "Check", "Text", "Comment", "Note" 143 | password_ok=ຕົກລົງ 144 | password_cancel=ຍົກເລີກ 145 | 146 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/locale.properties: -------------------------------------------------------------------------------- 1 | [ach] 2 | @import url(ach/viewer.properties) 3 | 4 | [af] 5 | @import url(af/viewer.properties) 6 | 7 | [an] 8 | @import url(an/viewer.properties) 9 | 10 | [ar] 11 | @import url(ar/viewer.properties) 12 | 13 | [ast] 14 | @import url(ast/viewer.properties) 15 | 16 | [az] 17 | @import url(az/viewer.properties) 18 | 19 | [be] 20 | @import url(be/viewer.properties) 21 | 22 | [bg] 23 | @import url(bg/viewer.properties) 24 | 25 | [bn] 26 | @import url(bn/viewer.properties) 27 | 28 | [bo] 29 | @import url(bo/viewer.properties) 30 | 31 | [br] 32 | @import url(br/viewer.properties) 33 | 34 | [brx] 35 | @import url(brx/viewer.properties) 36 | 37 | [bs] 38 | @import url(bs/viewer.properties) 39 | 40 | [ca] 41 | @import url(ca/viewer.properties) 42 | 43 | [cak] 44 | @import url(cak/viewer.properties) 45 | 46 | [ckb] 47 | @import url(ckb/viewer.properties) 48 | 49 | [cs] 50 | @import url(cs/viewer.properties) 51 | 52 | [cy] 53 | @import url(cy/viewer.properties) 54 | 55 | [da] 56 | @import url(da/viewer.properties) 57 | 58 | [de] 59 | @import url(de/viewer.properties) 60 | 61 | [dsb] 62 | @import url(dsb/viewer.properties) 63 | 64 | [el] 65 | @import url(el/viewer.properties) 66 | 67 | [en-CA] 68 | @import url(en-CA/viewer.properties) 69 | 70 | [en-GB] 71 | @import url(en-GB/viewer.properties) 72 | 73 | [en-US] 74 | @import url(en-US/viewer.properties) 75 | 76 | [eo] 77 | @import url(eo/viewer.properties) 78 | 79 | [es-AR] 80 | @import url(es-AR/viewer.properties) 81 | 82 | [es-CL] 83 | @import url(es-CL/viewer.properties) 84 | 85 | [es-ES] 86 | @import url(es-ES/viewer.properties) 87 | 88 | [es-MX] 89 | @import url(es-MX/viewer.properties) 90 | 91 | [et] 92 | @import url(et/viewer.properties) 93 | 94 | [eu] 95 | @import url(eu/viewer.properties) 96 | 97 | [fa] 98 | @import url(fa/viewer.properties) 99 | 100 | [ff] 101 | @import url(ff/viewer.properties) 102 | 103 | [fi] 104 | @import url(fi/viewer.properties) 105 | 106 | [fr] 107 | @import url(fr/viewer.properties) 108 | 109 | [fur] 110 | @import url(fur/viewer.properties) 111 | 112 | [fy-NL] 113 | @import url(fy-NL/viewer.properties) 114 | 115 | [ga-IE] 116 | @import url(ga-IE/viewer.properties) 117 | 118 | [gd] 119 | @import url(gd/viewer.properties) 120 | 121 | [gl] 122 | @import url(gl/viewer.properties) 123 | 124 | [gn] 125 | @import url(gn/viewer.properties) 126 | 127 | [gu-IN] 128 | @import url(gu-IN/viewer.properties) 129 | 130 | [he] 131 | @import url(he/viewer.properties) 132 | 133 | [hi-IN] 134 | @import url(hi-IN/viewer.properties) 135 | 136 | [hr] 137 | @import url(hr/viewer.properties) 138 | 139 | [hsb] 140 | @import url(hsb/viewer.properties) 141 | 142 | [hu] 143 | @import url(hu/viewer.properties) 144 | 145 | [hy-AM] 146 | @import url(hy-AM/viewer.properties) 147 | 148 | [hye] 149 | @import url(hye/viewer.properties) 150 | 151 | [ia] 152 | @import url(ia/viewer.properties) 153 | 154 | [id] 155 | @import url(id/viewer.properties) 156 | 157 | [is] 158 | @import url(is/viewer.properties) 159 | 160 | [it] 161 | @import url(it/viewer.properties) 162 | 163 | [ja] 164 | @import url(ja/viewer.properties) 165 | 166 | [ka] 167 | @import url(ka/viewer.properties) 168 | 169 | [kab] 170 | @import url(kab/viewer.properties) 171 | 172 | [kk] 173 | @import url(kk/viewer.properties) 174 | 175 | [km] 176 | @import url(km/viewer.properties) 177 | 178 | [kn] 179 | @import url(kn/viewer.properties) 180 | 181 | [ko] 182 | @import url(ko/viewer.properties) 183 | 184 | [lij] 185 | @import url(lij/viewer.properties) 186 | 187 | [lo] 188 | @import url(lo/viewer.properties) 189 | 190 | [lt] 191 | @import url(lt/viewer.properties) 192 | 193 | [ltg] 194 | @import url(ltg/viewer.properties) 195 | 196 | [lv] 197 | @import url(lv/viewer.properties) 198 | 199 | [meh] 200 | @import url(meh/viewer.properties) 201 | 202 | [mk] 203 | @import url(mk/viewer.properties) 204 | 205 | [mr] 206 | @import url(mr/viewer.properties) 207 | 208 | [ms] 209 | @import url(ms/viewer.properties) 210 | 211 | [my] 212 | @import url(my/viewer.properties) 213 | 214 | [nb-NO] 215 | @import url(nb-NO/viewer.properties) 216 | 217 | [ne-NP] 218 | @import url(ne-NP/viewer.properties) 219 | 220 | [nl] 221 | @import url(nl/viewer.properties) 222 | 223 | [nn-NO] 224 | @import url(nn-NO/viewer.properties) 225 | 226 | [oc] 227 | @import url(oc/viewer.properties) 228 | 229 | [pa-IN] 230 | @import url(pa-IN/viewer.properties) 231 | 232 | [pl] 233 | @import url(pl/viewer.properties) 234 | 235 | [pt-BR] 236 | @import url(pt-BR/viewer.properties) 237 | 238 | [pt-PT] 239 | @import url(pt-PT/viewer.properties) 240 | 241 | [rm] 242 | @import url(rm/viewer.properties) 243 | 244 | [ro] 245 | @import url(ro/viewer.properties) 246 | 247 | [ru] 248 | @import url(ru/viewer.properties) 249 | 250 | [sat] 251 | @import url(sat/viewer.properties) 252 | 253 | [sc] 254 | @import url(sc/viewer.properties) 255 | 256 | [scn] 257 | @import url(scn/viewer.properties) 258 | 259 | [sco] 260 | @import url(sco/viewer.properties) 261 | 262 | [si] 263 | @import url(si/viewer.properties) 264 | 265 | [sk] 266 | @import url(sk/viewer.properties) 267 | 268 | [skr] 269 | @import url(skr/viewer.properties) 270 | 271 | [sl] 272 | @import url(sl/viewer.properties) 273 | 274 | [son] 275 | @import url(son/viewer.properties) 276 | 277 | [sq] 278 | @import url(sq/viewer.properties) 279 | 280 | [sr] 281 | @import url(sr/viewer.properties) 282 | 283 | [sv-SE] 284 | @import url(sv-SE/viewer.properties) 285 | 286 | [szl] 287 | @import url(szl/viewer.properties) 288 | 289 | [ta] 290 | @import url(ta/viewer.properties) 291 | 292 | [te] 293 | @import url(te/viewer.properties) 294 | 295 | [tg] 296 | @import url(tg/viewer.properties) 297 | 298 | [th] 299 | @import url(th/viewer.properties) 300 | 301 | [tl] 302 | @import url(tl/viewer.properties) 303 | 304 | [tr] 305 | @import url(tr/viewer.properties) 306 | 307 | [trs] 308 | @import url(trs/viewer.properties) 309 | 310 | [uk] 311 | @import url(uk/viewer.properties) 312 | 313 | [ur] 314 | @import url(ur/viewer.properties) 315 | 316 | [uz] 317 | @import url(uz/viewer.properties) 318 | 319 | [vi] 320 | @import url(vi/viewer.properties) 321 | 322 | [wo] 323 | @import url(wo/viewer.properties) 324 | 325 | [xh] 326 | @import url(xh/viewer.properties) 327 | 328 | [zh-CN] 329 | @import url(zh-CN/viewer.properties) 330 | 331 | [zh-TW] 332 | @import url(zh-TW/viewer.properties) 333 | 334 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/meh/viewer.properties: -------------------------------------------------------------------------------- 1 | # Copyright 2012 Mozilla Foundation 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # Main toolbar buttons (tooltips and alt text for images) 16 | previous.title=Página yata 17 | 18 | # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. 19 | # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number 20 | # representing the total number of pages in the document. 21 | # LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" 22 | # will be replaced by a number representing the currently visible page, 23 | # respectively a number representing the total number of pages in the document. 24 | 25 | zoom.title=Nasa´a ka´nu/Nasa´a luli 26 | open_file_label=Síne 27 | 28 | # Secondary toolbar and context menu 29 | 30 | 31 | 32 | 33 | # Document properties dialog box 34 | # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" 35 | # will be replaced by the PDF file size in kilobytes, respectively in bytes. 36 | # LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" 37 | # will be replaced by the PDF file size in megabytes, respectively in bytes. 38 | # LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" 39 | # will be replaced by the creation/modification date, and time, of the PDF file. 40 | document_properties_date_string={{date}}, {{time}} 41 | # LOCALIZATION NOTE (document_properties_page_size_dimension_string): 42 | # "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by 43 | # the size, respectively their unit of measurement and orientation, of the (current) page. 44 | document_properties_page_size_dimension_string={{width}} × {{height}} {{unit}} ({{orientation}}) 45 | # LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): 46 | # "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by 47 | # the size, respectively their unit of measurement, name, and orientation, of the (current) page. 48 | document_properties_page_size_dimension_name_string={{width}} × {{height}} {{unit}} ({{name}}, {{orientation}}) 49 | # LOCALIZATION NOTE (document_properties_linearized): The linearization status of 50 | # the document; usually called "Fast Web View" in English locales of Adobe software. 51 | document_properties_linearized_yes=Kuvi 52 | document_properties_close=Nakasɨ 53 | 54 | # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by 55 | # a numerical per cent value. 56 | print_progress_percent={{progress}}% 57 | print_progress_close=Nkuvi-ka 58 | 59 | # Tooltips and alt text for side panel toolbar buttons 60 | # (the _label strings are alt text for the buttons, the .title strings are 61 | # tooltips) 62 | findbar_label=Nánuku 63 | 64 | # Thumbnails panel item (tooltip and alt text for images) 65 | # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page 66 | # number. 67 | # LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page 68 | # number. 69 | 70 | # Find panel button title and messages 71 | find_input.title=Nánuku 72 | # LOCALIZATION NOTE (find_match_count): The supported plural forms are 73 | # [one|two|few|many|other], with [other] as the default value. 74 | # "{{current}}" and "{{total}}" will be replaced by a number representing the 75 | # index of the currently active find result, respectively a number representing 76 | # the total number of matches in the document. 77 | find_match_count={[ plural(total) ]} 78 | # LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are 79 | # [zero|one|two|few|many|other], with [other] as the default value. 80 | # "{{limit}}" will be replaced by a numerical value. 81 | find_match_count_limit={[ plural(limit) ]} 82 | 83 | # Error panel labels 84 | error_close=Nakasɨ 85 | # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be 86 | # replaced by the PDF.JS version and build ID. 87 | error_version_info=PDF.js v{{version}} (build: {{build}}) 88 | # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an 89 | # english string describing the error. 90 | # LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack 91 | # trace. 92 | # LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename 93 | # LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number 94 | 95 | # Predefined zoom values 96 | # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a 97 | # numerical scale value. 98 | page_scale_percent={{scale}}% 99 | 100 | # Loading indicator messages 101 | 102 | # LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be 103 | # replaced by the modification date, and time, of the annotation. 104 | annotation_date_string={{date}}, {{time}} 105 | 106 | # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. 107 | # "{{type}}" will be replaced with an annotation type from a list defined in 108 | # the PDF spec (32000-1:2008 Table 169 – Annotation types). 109 | # Some common types are e.g.: "Check", "Text", "Comment", "Note" 110 | password_cancel=Nkuvi-ka 111 | 112 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/mk/viewer.properties: -------------------------------------------------------------------------------- 1 | # Copyright 2012 Mozilla Foundation 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # Main toolbar buttons (tooltips and alt text for images) 16 | previous.title=Претходна страница 17 | previous_label=Претходна 18 | next.title=Следна страница 19 | next_label=Следна 20 | 21 | # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. 22 | # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number 23 | # representing the total number of pages in the document. 24 | # LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" 25 | # will be replaced by a number representing the currently visible page, 26 | # respectively a number representing the total number of pages in the document. 27 | 28 | zoom_out.title=Намалување 29 | zoom_out_label=Намали 30 | zoom_in.title=Зголемување 31 | zoom_in_label=Зголеми 32 | zoom.title=Променување на големина 33 | presentation_mode.title=Премини во презентациски режим 34 | presentation_mode_label=Презентациски режим 35 | open_file.title=Отворање датотека 36 | open_file_label=Отвори 37 | print.title=Печатење 38 | print_label=Печати 39 | download.title=Преземање 40 | download_label=Преземи 41 | bookmark.title=Овој преглед (копирај или отвори во нов прозорец) 42 | bookmark_label=Овој преглед 43 | 44 | # Secondary toolbar and context menu 45 | tools.title=Алатки 46 | 47 | 48 | 49 | 50 | # Document properties dialog box 51 | # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" 52 | # will be replaced by the PDF file size in kilobytes, respectively in bytes. 53 | # LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" 54 | # will be replaced by the PDF file size in megabytes, respectively in bytes. 55 | # LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" 56 | # will be replaced by the creation/modification date, and time, of the PDF file. 57 | # LOCALIZATION NOTE (document_properties_page_size_dimension_string): 58 | # "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by 59 | # the size, respectively their unit of measurement and orientation, of the (current) page. 60 | # LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): 61 | # "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by 62 | # the size, respectively their unit of measurement, name, and orientation, of the (current) page. 63 | # LOCALIZATION NOTE (document_properties_linearized): The linearization status of 64 | # the document; usually called "Fast Web View" in English locales of Adobe software. 65 | 66 | # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by 67 | # a numerical per cent value. 68 | print_progress_close=Откажи 69 | 70 | # Tooltips and alt text for side panel toolbar buttons 71 | # (the _label strings are alt text for the buttons, the .title strings are 72 | # tooltips) 73 | toggle_sidebar.title=Вклучи странична лента 74 | toggle_sidebar_label=Вклучи странична лента 75 | thumbs.title=Прикажување на икони 76 | thumbs_label=Икони 77 | findbar.title=Најди во документот 78 | findbar_label=Најди 79 | 80 | # Thumbnails panel item (tooltip and alt text for images) 81 | # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page 82 | # number. 83 | thumb_page_title=Страница {{page}} 84 | # LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page 85 | # number. 86 | thumb_page_canvas=Икона од страница {{page}} 87 | 88 | # Find panel button title and messages 89 | find_previous.title=Најди ја предходната појава на фразата 90 | find_previous_label=Претходно 91 | find_next.title=Најди ја следната појава на фразата 92 | find_next_label=Следно 93 | find_highlight=Означи сѐ 94 | find_match_case_label=Токму така 95 | find_reached_top=Барањето стигна до почетокот на документот и почнува од крајот 96 | find_reached_bottom=Барањето стигна до крајот на документот и почнува од почеток 97 | find_not_found=Фразата не е пронајдена 98 | 99 | # Error panel labels 100 | error_more_info=Повеќе информации 101 | error_less_info=Помалку информации 102 | error_close=Затвори 103 | # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be 104 | # replaced by the PDF.JS version and build ID. 105 | error_version_info=PDF.js v{{version}} (build: {{build}}) 106 | # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an 107 | # english string describing the error. 108 | error_message=Порака: {{message}} 109 | # LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack 110 | # trace. 111 | error_stack=Stack: {{stack}} 112 | # LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename 113 | error_file=Датотека: {{file}} 114 | # LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number 115 | error_line=Линија: {{line}} 116 | rendering_error=Настана грешка при прикажувањето на страницата. 117 | 118 | # Predefined zoom values 119 | page_scale_width=Ширина на страница 120 | page_scale_fit=Цела страница 121 | page_scale_auto=Автоматска големина 122 | page_scale_actual=Вистинска големина 123 | # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a 124 | # numerical scale value. 125 | 126 | loading_error=Настана грешка при вчитувањето на PDF-от. 127 | invalid_file_error=Невалидна или корумпирана PDF датотека. 128 | missing_file_error=Недостасува PDF документ. 129 | 130 | # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. 131 | # "{{type}}" will be replaced with an annotation type from a list defined in 132 | # the PDF spec (32000-1:2008 Table 169 – Annotation types). 133 | # Some common types are e.g.: "Check", "Text", "Comment", "Note" 134 | password_cancel=Откажи 135 | 136 | printing_not_supported=Предупредување: Печатењето не е целосно поддржано во овој прелистувач. 137 | printing_not_ready=Предупредување: PDF документот не е целосно вчитан за печатење. 138 | web_fonts_disabled=Интернет фонтовите се оневозможени: не може да се користат вградените PDF фонтови. 139 | 140 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/scn/viewer.properties: -------------------------------------------------------------------------------- 1 | # Copyright 2012 Mozilla Foundation 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # Main toolbar buttons (tooltips and alt text for images) 16 | 17 | # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. 18 | # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number 19 | # representing the total number of pages in the document. 20 | # LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" 21 | # will be replaced by a number representing the currently visible page, 22 | # respectively a number representing the total number of pages in the document. 23 | 24 | zoom_out.title=Cchiù nicu 25 | zoom_out_label=Cchiù nicu 26 | zoom_in.title=Cchiù granni 27 | zoom_in_label=Cchiù granni 28 | 29 | # Secondary toolbar and context menu 30 | 31 | 32 | 33 | 34 | # Document properties dialog box 35 | # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" 36 | # will be replaced by the PDF file size in kilobytes, respectively in bytes. 37 | # LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" 38 | # will be replaced by the PDF file size in megabytes, respectively in bytes. 39 | # LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" 40 | # will be replaced by the creation/modification date, and time, of the PDF file. 41 | # LOCALIZATION NOTE (document_properties_page_size_dimension_string): 42 | # "{{width}}", "{{height}}", {{unit}}, and {{orientation}} will be replaced by 43 | # the size, respectively their unit of measurement and orientation, of the (current) page. 44 | # LOCALIZATION NOTE (document_properties_page_size_dimension_name_string): 45 | # "{{width}}", "{{height}}", {{unit}}, {{name}}, and {{orientation}} will be replaced by 46 | # the size, respectively their unit of measurement, name, and orientation, of the (current) page. 47 | # LOCALIZATION NOTE (document_properties_linearized): The linearization status of 48 | # the document; usually called "Fast Web View" in English locales of Adobe software. 49 | document_properties_linearized=Vista web lesta: 50 | document_properties_linearized_yes=Se 51 | 52 | # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by 53 | # a numerical per cent value. 54 | print_progress_close=Sfai 55 | 56 | # Tooltips and alt text for side panel toolbar buttons 57 | # (the _label strings are alt text for the buttons, the .title strings are 58 | # tooltips) 59 | 60 | # Thumbnails panel item (tooltip and alt text for images) 61 | # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page 62 | # number. 63 | # LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page 64 | # number. 65 | 66 | # Find panel button title and messages 67 | # LOCALIZATION NOTE (find_match_count): The supported plural forms are 68 | # [one|two|few|many|other], with [other] as the default value. 69 | # "{{current}}" and "{{total}}" will be replaced by a number representing the 70 | # index of the currently active find result, respectively a number representing 71 | # the total number of matches in the document. 72 | # LOCALIZATION NOTE (find_match_count_limit): The supported plural forms are 73 | # [zero|one|two|few|many|other], with [other] as the default value. 74 | # "{{limit}}" will be replaced by a numerical value. 75 | 76 | # Error panel labels 77 | # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be 78 | # replaced by the PDF.JS version and build ID. 79 | # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an 80 | # english string describing the error. 81 | # LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack 82 | # trace. 83 | # LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename 84 | # LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number 85 | 86 | # Predefined zoom values 87 | page_scale_width=Larghizza dâ pàggina 88 | # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a 89 | # numerical scale value. 90 | 91 | # Loading indicator messages 92 | 93 | # LOCALIZATION NOTE (annotation_date_string): "{{date}}" and "{{time}}" will be 94 | # replaced by the modification date, and time, of the annotation. 95 | 96 | # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. 97 | # "{{type}}" will be replaced with an annotation type from a list defined in 98 | # the PDF spec (32000-1:2008 Table 169 – Annotation types). 99 | # Some common types are e.g.: "Check", "Text", "Comment", "Note" 100 | password_cancel=Sfai 101 | 102 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/uz/viewer.properties: -------------------------------------------------------------------------------- 1 | # Copyright 2012 Mozilla Foundation 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # Main toolbar buttons (tooltips and alt text for images) 16 | previous.title=Oldingi sahifa 17 | previous_label=Oldingi 18 | next.title=Keyingi sahifa 19 | next_label=Keyingi 20 | 21 | # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. 22 | # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number 23 | # representing the total number of pages in the document. 24 | of_pages=/{{pagesCount}} 25 | # LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" 26 | # will be replaced by a number representing the currently visible page, 27 | # respectively a number representing the total number of pages in the document. 28 | 29 | zoom_out.title=Kichiklashtirish 30 | zoom_out_label=Kichiklashtirish 31 | zoom_in.title=Kattalashtirish 32 | zoom_in_label=Kattalashtirish 33 | zoom.title=Masshtab 34 | presentation_mode.title=Namoyish usuliga oʻtish 35 | presentation_mode_label=Namoyish usuli 36 | open_file.title=Faylni ochish 37 | open_file_label=Ochish 38 | print.title=Chop qilish 39 | print_label=Chop qilish 40 | download.title=Yuklab olish 41 | download_label=Yuklab olish 42 | bookmark.title=Joriy koʻrinish (nusxa oling yoki yangi oynada oching) 43 | bookmark_label=Joriy koʻrinish 44 | 45 | # Secondary toolbar and context menu 46 | tools.title=Vositalar 47 | tools_label=Vositalar 48 | first_page.title=Birinchi sahifaga oʻtish 49 | first_page_label=Birinchi sahifaga oʻtish 50 | last_page.title=Soʻnggi sahifaga oʻtish 51 | last_page_label=Soʻnggi sahifaga oʻtish 52 | page_rotate_cw.title=Soat yoʻnalishi boʻyicha burish 53 | page_rotate_cw_label=Soat yoʻnalishi boʻyicha burish 54 | page_rotate_ccw.title=Soat yoʻnalishiga qarshi burish 55 | page_rotate_ccw_label=Soat yoʻnalishiga qarshi burish 56 | 57 | 58 | # Document properties dialog box 59 | document_properties.title=Hujjat xossalari 60 | document_properties_label=Hujjat xossalari 61 | document_properties_file_name=Fayl nomi: 62 | document_properties_file_size=Fayl hajmi: 63 | # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" 64 | # will be replaced by the PDF file size in kilobytes, respectively in bytes. 65 | document_properties_kb={{size_kb}} KB ({{size_b}} bytes) 66 | # LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" 67 | # will be replaced by the PDF file size in megabytes, respectively in bytes. 68 | document_properties_mb={{size_mb}} MB ({{size_b}} bytes) 69 | document_properties_title=Nomi: 70 | document_properties_author=Muallifi: 71 | document_properties_subject=Mavzusi: 72 | document_properties_keywords=Kalit so‘zlar 73 | document_properties_creation_date=Yaratilgan sanasi: 74 | document_properties_modification_date=O‘zgartirilgan sanasi 75 | # LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" 76 | # will be replaced by the creation/modification date, and time, of the PDF file. 77 | document_properties_date_string={{date}}, {{time}} 78 | document_properties_creator=Yaratuvchi: 79 | document_properties_producer=PDF ishlab chiqaruvchi: 80 | document_properties_version=PDF versiyasi: 81 | document_properties_page_count=Sahifa soni: 82 | document_properties_close=Yopish 83 | 84 | # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by 85 | # a numerical per cent value. 86 | 87 | # Tooltips and alt text for side panel toolbar buttons 88 | # (the _label strings are alt text for the buttons, the .title strings are 89 | # tooltips) 90 | toggle_sidebar.title=Yon panelni yoqib/oʻchirib qoʻyish 91 | toggle_sidebar_label=Yon panelni yoqib/oʻchirib qoʻyish 92 | document_outline_label=Hujjat tuzilishi 93 | attachments.title=Ilovalarni ko‘rsatish 94 | attachments_label=Ilovalar 95 | thumbs.title=Nishonchalarni koʻrsatish 96 | thumbs_label=Nishoncha 97 | findbar.title=Hujjat ichidan topish 98 | 99 | # Thumbnails panel item (tooltip and alt text for images) 100 | # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page 101 | # number. 102 | thumb_page_title={{page}} sahifa 103 | # LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page 104 | # number. 105 | thumb_page_canvas={{page}} sahifa nishonchasi 106 | 107 | # Find panel button title and messages 108 | find_previous.title=Soʻzlardagi oldingi hodisani topish 109 | find_previous_label=Oldingi 110 | find_next.title=Iboradagi keyingi hodisani topish 111 | find_next_label=Keyingi 112 | find_highlight=Barchasini ajratib koʻrsatish 113 | find_match_case_label=Katta-kichik harflarni farqlash 114 | find_reached_top=Hujjatning boshigacha yetib keldik, pastdan davom ettiriladi 115 | find_reached_bottom=Hujjatning oxiriga yetib kelindi, yuqoridan davom ettirladi 116 | find_not_found=Soʻzlar topilmadi 117 | 118 | # Error panel labels 119 | error_more_info=Koʻproq ma`lumot 120 | error_less_info=Kamroq ma`lumot 121 | error_close=Yopish 122 | # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be 123 | # replaced by the PDF.JS version and build ID. 124 | error_version_info=PDF.js v{{version}} (build: {{build}}) 125 | # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an 126 | # english string describing the error. 127 | error_message=Xabar: {{message}} 128 | # LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack 129 | # trace. 130 | error_stack=Toʻplam: {{stack}} 131 | # LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename 132 | error_file=Fayl: {{file}} 133 | # LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number 134 | error_line=Satr: {{line}} 135 | rendering_error=Sahifa renderlanayotganda xato yuz berdi. 136 | 137 | # Predefined zoom values 138 | page_scale_width=Sahifa eni 139 | page_scale_fit=Sahifani moslashtirish 140 | page_scale_auto=Avtomatik masshtab 141 | page_scale_actual=Haqiqiy hajmi 142 | # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a 143 | # numerical scale value. 144 | page_scale_percent={{scale}}% 145 | 146 | loading_error=PDF yuklanayotganda xato yuz berdi. 147 | invalid_file_error=Xato yoki buzuq PDF fayli. 148 | missing_file_error=PDF fayl kerak. 149 | unexpected_response_error=Kutilmagan server javobi. 150 | 151 | # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. 152 | # "{{type}}" will be replaced with an annotation type from a list defined in 153 | # the PDF spec (32000-1:2008 Table 169 – Annotation types). 154 | # Some common types are e.g.: "Check", "Text", "Comment", "Note" 155 | text_annotation_type.alt=[{{type}} Annotation] 156 | password_label=PDF faylni ochish uchun parolni kiriting. 157 | password_invalid=Parol - notoʻgʻri. Qaytadan urinib koʻring. 158 | password_ok=OK 159 | 160 | printing_not_supported=Diqqat: chop qilish bruzer tomonidan toʻliq qoʻllab-quvvatlanmaydi. 161 | printing_not_ready=Diqqat: PDF fayl chop qilish uchun toʻliq yuklanmadi. 162 | web_fonts_disabled=Veb shriftlar oʻchirilgan: ichki PDF shriftlardan foydalanib boʻlmmaydi. 163 | 164 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/locale/wo/viewer.properties: -------------------------------------------------------------------------------- 1 | # Copyright 2012 Mozilla Foundation 2 | # 3 | # Licensed under the Apache License, Version 2.0 (the "License"); 4 | # you may not use this file except in compliance with the License. 5 | # You may obtain a copy of the License at 6 | # 7 | # http://www.apache.org/licenses/LICENSE-2.0 8 | # 9 | # Unless required by applicable law or agreed to in writing, software 10 | # distributed under the License is distributed on an "AS IS" BASIS, 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | # See the License for the specific language governing permissions and 13 | # limitations under the License. 14 | 15 | # Main toolbar buttons (tooltips and alt text for images) 16 | previous.title=Xët wi jiitu 17 | previous_label=Bi jiitu 18 | next.title=Xët wi ci topp 19 | next_label=Bi ci topp 20 | 21 | # LOCALIZATION NOTE (page.title): The tooltip for the pageNumber input. 22 | # LOCALIZATION NOTE (of_pages): "{{pagesCount}}" will be replaced by a number 23 | # representing the total number of pages in the document. 24 | # LOCALIZATION NOTE (page_of_pages): "{{pageNumber}}" and "{{pagesCount}}" 25 | # will be replaced by a number representing the currently visible page, 26 | # respectively a number representing the total number of pages in the document. 27 | 28 | zoom_out.title=Wàññi 29 | zoom_out_label=Wàññi 30 | zoom_in.title=Yaatal 31 | zoom_in_label=Yaatal 32 | zoom.title=Yambalaŋ 33 | presentation_mode.title=Wañarñil ci anamu wone 34 | presentation_mode_label=Anamu Wone 35 | open_file.title=Ubbi benn dencukaay 36 | open_file_label=Ubbi 37 | print.title=Móol 38 | print_label=Móol 39 | download.title=Yeb yi 40 | download_label=Yeb yi 41 | bookmark.title=Wone bi taxaw (duppi walla ubbi palanteer bu bees) 42 | bookmark_label=Wone bi feeñ 43 | 44 | # Secondary toolbar and context menu 45 | 46 | 47 | # Document properties dialog box 48 | # LOCALIZATION NOTE (document_properties_kb): "{{size_kb}}" and "{{size_b}}" 49 | # will be replaced by the PDF file size in kilobytes, respectively in bytes. 50 | # LOCALIZATION NOTE (document_properties_mb): "{{size_mb}}" and "{{size_b}}" 51 | # will be replaced by the PDF file size in megabytes, respectively in bytes. 52 | document_properties_title=Bopp: 53 | # LOCALIZATION NOTE (document_properties_date_string): "{{date}}" and "{{time}}" 54 | # will be replaced by the creation/modification date, and time, of the PDF file. 55 | 56 | # LOCALIZATION NOTE (print_progress_percent): "{{progress}}" will be replaced by 57 | # a numerical per cent value. 58 | 59 | # Tooltips and alt text for side panel toolbar buttons 60 | # (the _label strings are alt text for the buttons, the .title strings are 61 | # tooltips) 62 | thumbs.title=Wone nataal yu ndaw yi 63 | thumbs_label=Nataal yu ndaw yi 64 | findbar.title=Gis ci biir jukki bi 65 | findbar_label=Wut 66 | 67 | # Thumbnails panel item (tooltip and alt text for images) 68 | # LOCALIZATION NOTE (thumb_page_title): "{{page}}" will be replaced by the page 69 | # number. 70 | thumb_page_title=Xët {{page}} 71 | # LOCALIZATION NOTE (thumb_page_canvas): "{{page}}" will be replaced by the page 72 | # number. 73 | thumb_page_canvas=Wiñet bu xët {{page}} 74 | 75 | # Find panel button title and messages 76 | find_previous.title=Seet beneen kaddu bu ni mel te jiitu 77 | find_previous_label=Bi jiitu 78 | find_next.title=Seet beneen kaddu bu ni mel 79 | find_next_label=Bi ci topp 80 | find_highlight=Melaxal lépp 81 | find_match_case_label=Sàmm jëmmalin wi 82 | find_reached_top=Jot nañu ndorteel xët wi, kontine dale ko ci suuf 83 | find_reached_bottom=Jot nañu jeexitalu xët wi, kontine ci ndorte 84 | find_not_found=Gisiñu kaddu gi 85 | 86 | # Error panel labels 87 | error_more_info=Xibaar yu gën bari 88 | error_less_info=Xibaar yu gën bari 89 | # LOCALIZATION NOTE (error_version_info): "{{version}}" and "{{build}}" will be 90 | # replaced by the PDF.JS version and build ID. 91 | # LOCALIZATION NOTE (error_message): "{{message}}" will be replaced by an 92 | # english string describing the error. 93 | error_message=Bataaxal: {{message}} 94 | # LOCALIZATION NOTE (error_stack): "{{stack}}" will be replaced with a stack 95 | # trace. 96 | error_stack=Juug: {{stack}} 97 | # LOCALIZATION NOTE (error_file): "{{file}}" will be replaced with a filename 98 | error_file=Dencukaay: {{file}} 99 | # LOCALIZATION NOTE (error_line): "{{line}}" will be replaced with a line number 100 | error_line=Rëdd : {{line}} 101 | rendering_error=Am njumte bu am bi xët bi di wonewu. 102 | 103 | # Predefined zoom values 104 | page_scale_width=Yaatuwaay bu mët 105 | page_scale_fit=Xët lëmm 106 | page_scale_auto=Yambalaŋ ci saa si 107 | page_scale_actual=Dayo bi am 108 | # LOCALIZATION NOTE (page_scale_percent): "{{scale}}" will be replaced by a 109 | # numerical scale value. 110 | 111 | loading_error=Am na njumte ci yebum dencukaay PDF bi. 112 | invalid_file_error=Dencukaay PDF bi baaxul walla mu sankar. 113 | 114 | # LOCALIZATION NOTE (text_annotation_type.alt): This is used as a tooltip. 115 | # "{{type}}" will be replaced with an annotation type from a list defined in 116 | # the PDF spec (32000-1:2008 Table 169 – Annotation types). 117 | # Some common types are e.g.: "Check", "Text", "Comment", "Note" 118 | text_annotation_type.alt=[Karmat {{type}}] 119 | password_ok=OK 120 | password_cancel=Neenal 121 | 122 | printing_not_supported=Artu: Joowkat bii nanguwul lool mool. 123 | 124 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitDingbats.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitDingbats.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitFixed.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitFixed.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitFixedBold.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitFixedBold.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitFixedBoldItalic.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitFixedBoldItalic.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitFixedItalic.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitFixedItalic.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSans.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSans.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSansBold.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSansBold.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSansBoldItalic.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSansBoldItalic.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSansItalic.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSansItalic.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSerif.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSerif.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSerifBold.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSerifBold.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSerifBoldItalic.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSerifBoldItalic.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSerifItalic.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSerifItalic.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/FoxitSymbol.pfb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/FoxitSymbol.pfb -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/LICENSE_FOXIT: -------------------------------------------------------------------------------- 1 | // Copyright 2014 PDFium Authors. All rights reserved. 2 | // 3 | // Redistribution and use in source and binary forms, with or without 4 | // modification, are permitted provided that the following conditions are 5 | // met: 6 | // 7 | // * Redistributions of source code must retain the above copyright 8 | // notice, this list of conditions and the following disclaimer. 9 | // * Redistributions in binary form must reproduce the above 10 | // copyright notice, this list of conditions and the following disclaimer 11 | // in the documentation and/or other materials provided with the 12 | // distribution. 13 | // * Neither the name of Google Inc. nor the names of its 14 | // contributors may be used to endorse or promote products derived from 15 | // this software without specific prior written permission. 16 | // 17 | // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18 | // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19 | // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20 | // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21 | // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22 | // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23 | // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24 | // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25 | // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 | // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/LICENSE_LIBERATION: -------------------------------------------------------------------------------- 1 | Digitized data copyright (c) 2010 Google Corporation 2 | with Reserved Font Arimo, Tinos and Cousine. 3 | Copyright (c) 2012 Red Hat, Inc. 4 | with Reserved Font Name Liberation. 5 | 6 | This Font Software is licensed under the SIL Open Font License, 7 | Version 1.1. 8 | 9 | This license is copied below, and is also available with a FAQ at: 10 | http://scripts.sil.org/OFL 11 | 12 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 13 | 14 | PREAMBLE The goals of the Open Font License (OFL) are to stimulate 15 | worldwide development of collaborative font projects, to support the font 16 | creation efforts of academic and linguistic communities, and to provide 17 | a free and open framework in which fonts may be shared and improved in 18 | partnership with others. 19 | 20 | The OFL allows the licensed fonts to be used, studied, modified and 21 | redistributed freely as long as they are not sold by themselves. 22 | The fonts, including any derivative works, can be bundled, embedded, 23 | redistributed and/or sold with any software provided that any reserved 24 | names are not used by derivative works. The fonts and derivatives, 25 | however, cannot be released under any other type of license. The 26 | requirement for fonts to remain under this license does not apply to 27 | any document created using the fonts or their derivatives. 28 | 29 | 30 | 31 | DEFINITIONS 32 | "Font Software" refers to the set of files released by the Copyright 33 | Holder(s) under this license and clearly marked as such. 34 | This may include source files, build scripts and documentation. 35 | 36 | "Reserved Font Name" refers to any names specified as such after the 37 | copyright statement(s). 38 | 39 | "Original Version" refers to the collection of Font Software components 40 | as distributed by the Copyright Holder(s). 41 | 42 | "Modified Version" refers to any derivative made by adding to, deleting, 43 | or substituting ? in part or in whole ? 44 | any of the components of the Original Version, by changing formats or 45 | by porting the Font Software to a new environment. 46 | 47 | "Author" refers to any designer, engineer, programmer, technical writer 48 | or other person who contributed to the Font Software. 49 | 50 | 51 | PERMISSION & CONDITIONS 52 | 53 | Permission is hereby granted, free of charge, to any person obtaining a 54 | copy of the Font Software, to use, study, copy, merge, embed, modify, 55 | redistribute, and sell modified and unmodified copies of the Font 56 | Software, subject to the following conditions: 57 | 58 | 1) Neither the Font Software nor any of its individual components,in 59 | Original or Modified Versions, may be sold by itself. 60 | 61 | 2) Original or Modified Versions of the Font Software may be bundled, 62 | redistributed and/or sold with any software, provided that each copy 63 | contains the above copyright notice and this license. These can be 64 | included either as stand-alone text files, human-readable headers or 65 | in the appropriate machine-readable metadata fields within text or 66 | binary files as long as those fields can be easily viewed by the user. 67 | 68 | 3) No Modified Version of the Font Software may use the Reserved Font 69 | Name(s) unless explicit written permission is granted by the 70 | corresponding Copyright Holder. This restriction only applies to the 71 | primary font name as presented to the users. 72 | 73 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font 74 | Software shall not be used to promote, endorse or advertise any 75 | Modified Version, except to acknowledge the contribution(s) of the 76 | Copyright Holder(s) and the Author(s) or with their explicit written 77 | permission. 78 | 79 | 5) The Font Software, modified or unmodified, in part or in whole, must 80 | be distributed entirely under this license, and must not be distributed 81 | under any other license. The requirement for fonts to remain under 82 | this license does not apply to any document created using the Font 83 | Software. 84 | 85 | 86 | 87 | TERMINATION 88 | This license becomes null and void if any of the above conditions are not met. 89 | 90 | 91 | 92 | DISCLAIMER 93 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 94 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF 95 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 96 | OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE 97 | COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 98 | INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL 99 | DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 100 | FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER 101 | DEALINGS IN THE FONT SOFTWARE. 102 | 103 | -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/LiberationSans-Bold.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/LiberationSans-Bold.ttf -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/LiberationSans-BoldItalic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/LiberationSans-BoldItalic.ttf -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/LiberationSans-Italic.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/LiberationSans-Italic.ttf -------------------------------------------------------------------------------- /client/public/pdfjs/web/standard_fonts/LiberationSans-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/client/public/pdfjs/web/standard_fonts/LiberationSans-Regular.ttf -------------------------------------------------------------------------------- /client/public/spinner.css: -------------------------------------------------------------------------------- 1 | .spinner { 2 | margin: 100px auto; 3 | width: 50px; 4 | height: 60px; 5 | text-align: center; 6 | font-size: 10px; 7 | } 8 | 9 | .spinner > div { 10 | background-color: #FE3C71; 11 | height: 100%; 12 | width: 6px; 13 | display: inline-block; 14 | -webkit-animation: stretchDelay 1.2s infinite ease-in-out; 15 | animation: stretchDelay 1.2s infinite ease-in-out; 16 | } 17 | 18 | .spinner .rect2 { 19 | -webkit-animation-delay: -1.1s; 20 | animation-delay: -1.1s; 21 | } 22 | 23 | .spinner .rect3 { 24 | -webkit-animation-delay: -1.0s; 25 | animation-delay: -1.0s; 26 | } 27 | 28 | .spinner .rect4 { 29 | -webkit-animation-delay: -0.9s; 30 | animation-delay: -0.9s; 31 | } 32 | 33 | .spinner .rect5 { 34 | -webkit-animation-delay: -0.8s; 35 | animation-delay: -0.8s; 36 | } 37 | 38 | @-webkit-keyframes stretchDelay { 39 | 0%, 40%, 100% { 40 | -webkit-transform: scaleY(0.4) 41 | } 42 | 20% { 43 | -webkit-transform: scaleY(1.0) 44 | } 45 | } 46 | 47 | @keyframes stretchDelay { 48 | 0%, 40%, 100% { 49 | transform: scaleY(0.4); 50 | -webkit-transform: scaleY(0.4); 51 | } 52 | 20% { 53 | transform: scaleY(1.0); 54 | -webkit-transform: scaleY(1.0); 55 | } 56 | } -------------------------------------------------------------------------------- /client/src/api.js: -------------------------------------------------------------------------------- 1 | function err(message) { 2 | ElMessage.error(message) 3 | } 4 | 5 | function myFetch(input, init) { 6 | return new Promise((resolve, reject) => { 7 | fetch(input, init).then(res => { 8 | json = resolve(res.json()) 9 | if (json.code != 0) { 10 | err(json.message) 11 | reject(new Error(json.message)) 12 | } else { 13 | resolve(json) 14 | } 15 | }).catch(err => { 16 | reject(err) 17 | }) 18 | }) 19 | } 20 | 21 | export async function fetchDcoList() { 22 | return new Promise((resolve, reject) => { 23 | myFetch("/api/my_docs").then(res => resolve(res)).catch(e => reject(e)) 24 | }) 25 | } 26 | 27 | export async function fetchQuery(doc_id, query) { 28 | return new Promise((resolve, reject) => { 29 | myFetch("/api/ask/" + doc_id + "?question=" + query).then(res => resolve(res)).catch(e => reject(e)) 30 | }) 31 | } 32 | 33 | export async function fetchMsg(doc_id) { 34 | return new Promise((resolve, reject) => { 35 | myFetch("/api/msg/" + doc_id).then(res => resolve(res)).catch(e => reject(e)) 36 | }) 37 | } 38 | 39 | export async function fetchDelDoc(doc_id) { 40 | return new Promise((resolve, reject) => { 41 | myFetch("/api/del/" + doc_id, { method: "DELETE" }).then(res => resolve(res)).catch(e => reject(e)) 42 | }) 43 | } 44 | 45 | export async function fetchAddLink(link) { 46 | return new Promise((resolve, reject) => { 47 | myFetch("/api/add_link", { 48 | method: "POST", 49 | body: JSON.stringify({ link: link }), 50 | headers: { 51 | "Content-Type": "application/json", 52 | } 53 | }).then(res => resolve(res)).catch(e => reject(e)) 54 | }) 55 | } -------------------------------------------------------------------------------- /client/src/assets/loading.svg: -------------------------------------------------------------------------------- 1 | 11 | 20 | 27 | 28 | -------------------------------------------------------------------------------- /client/src/assets/send.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /client/src/main.js: -------------------------------------------------------------------------------- 1 | import { createApp } from 'vue' 2 | import ElementPlus from 'element-plus' 3 | import 'normalize.css/normalize.css' 4 | import 'element-plus/dist/index.css' 5 | import './style.css' 6 | import 'element-plus/theme-chalk/dark/css-vars.css' 7 | import App from './App.vue' 8 | 9 | const app = createApp(App) 10 | app.use(ElementPlus) 11 | app.mount('#app') 12 | -------------------------------------------------------------------------------- /client/src/style.css: -------------------------------------------------------------------------------- 1 | html, 2 | body { 3 | height: 100%; 4 | padding: 0; 5 | margin: 0; 6 | } 7 | 8 | #app { 9 | height: 100%; 10 | padding: 0; 11 | margin: 0; 12 | } 13 | 14 | ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ 15 | color: #A8ABB2; 16 | opacity: 1; /* Firefox */ 17 | } 18 | 19 | :-ms-input-placeholder { /* Internet Explorer 10-11 */ 20 | color: #A8ABB2; 21 | } 22 | 23 | ::-ms-input-placeholder { /* Microsoft Edge */ 24 | color: #A8ABB2; 25 | } -------------------------------------------------------------------------------- /client/src/utils.js: -------------------------------------------------------------------------------- 1 | export function formatByteSize(byteSize) { 2 | if (byteSize == 0) { 3 | return '-' 4 | } 5 | const kilobyte = 1024; 6 | const megabyte = kilobyte * 1024; 7 | 8 | if (byteSize < kilobyte) { 9 | return byteSize + ' B'; 10 | } else if (byteSize < megabyte) { 11 | return (byteSize / kilobyte).toFixed(1) + ' KB'; 12 | } else { 13 | return (byteSize / megabyte).toFixed(1) + ' MB'; 14 | } 15 | } 16 | 17 | export function docState(state) { 18 | switch (state) { 19 | case 0: 20 | return '' 21 | case 1: 22 | return 'doing' 23 | case 2: 24 | return 'done' 25 | } 26 | } 27 | 28 | export function nameWithoutExt(name) { 29 | return name.slice(0, name.lastIndexOf('.')) 30 | } 31 | 32 | export function docType(doc) { 33 | if (doc['doc_type'] == "application/pdf") { 34 | return 'pdf' 35 | } 36 | if (doc['doc_type'] == "application/epub+zip") { 37 | return 'epub' 38 | } 39 | if (doc['doc_type'] == "text/plain") { 40 | return 'txt' 41 | } 42 | if (doc['doc_type'] == "text/markdown") { 43 | return 'md' 44 | } 45 | if (doc['doc_type'] == "application/vnd.openxmlformats-officedocument.wordprocessingml.document") { 46 | return 'docx' 47 | } 48 | if (doc['doc_type'] == "web") { 49 | return 'web' 50 | } 51 | } 52 | 53 | export function docUrl(doc) { 54 | let base = location.origin 55 | if (import.meta.env.DEV) { 56 | base = `http://${location.hostname}:8000` 57 | } 58 | 59 | if (doc['doc_type'] == "application/pdf") { 60 | return "pdfjs/web/viewer.html?file=" + decodeURIComponent(`${base}/static/${doc.doc_id}/${doc.doc_name}`) 61 | } 62 | if (doc['doc_type'] == "application/epub+zip") { 63 | return "epub/index.html?url=" + decodeURIComponent(`${base}/static/${doc.doc_id}/${doc.doc_name}`) 64 | } 65 | if (doc['doc_type'] == "text/markdown") { 66 | return "md/index.html?url=" + decodeURIComponent(`${base}/static/${doc.doc_id}/${doc.doc_name}`) 67 | } 68 | if (doc['doc_type'] == "text/plain") { 69 | return `${base}/static/${doc.doc_id}/${doc.doc_name}` 70 | } 71 | if (doc['doc_type'] == "application/vnd.openxmlformats-officedocument.wordprocessingml.document") { 72 | return "docx/index.html?url=" + decodeURIComponent(`${base}/static/${doc.doc_id}/${doc.doc_name}`) 73 | } 74 | if (doc['doc_type'] == "web") { 75 | return doc.doc_name 76 | } 77 | 78 | } 79 | 80 | export function showLastMessage(after) { 81 | setTimeout(() => { 82 | const element = document.getElementsByClassName('message-item'); 83 | element.length > 0 && element[element.length - 1].scrollIntoView({ 84 | block: 'center', // 值有start,center,end,nearest,当前显示在视图区域中间 85 | behavior: 'smooth' // 值有auto,instant,smooth,缓动动画(当前是慢速的) 86 | }) 87 | }, after || 100) 88 | } -------------------------------------------------------------------------------- /client/src/views/AddLink.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 26 | -------------------------------------------------------------------------------- /client/src/views/Upload.vue: -------------------------------------------------------------------------------- 1 | 9 | -------------------------------------------------------------------------------- /client/start: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | pnpm i 4 | pnpm dev -------------------------------------------------------------------------------- /client/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import vue from '@vitejs/plugin-vue' 3 | import svgLoader from 'vite-svg-loader' 4 | import { resolve } from 'path' 5 | // https://vitejs.dev/config/ 6 | export default defineConfig({ 7 | plugins: [vue(), svgLoader()], 8 | resolve: { 9 | alias: { 10 | '@': resolve('src'), 11 | } 12 | }, 13 | server: { 14 | proxy: { 15 | "/api": { 16 | target: "http://127.0.0.1:8000", 17 | changeOrigin: true, 18 | rewrite: path => path.replace(RegExp("/api"), ''), 19 | } 20 | } 21 | } 22 | }) 23 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3.1' 2 | services: 3 | backend: 4 | container_name: chatdoc-backend 5 | image: python:3.9-slim 6 | command: 7 | - /bin/sh 8 | - -c 9 | - | 10 | pip install --upgrade pip 11 | cd /data 12 | ./start '{OPEN_AI_KEY}' 13 | volumes: 14 | - ./server:/data 15 | frontend: 16 | image: node 17 | container_name: chatdoc-frontend 18 | ports: 19 | - '5173:5173' 20 | links: 21 | - backend 22 | volumes: 23 | - ./client:/data 24 | command: 25 | - /bin/sh 26 | - -c 27 | - | 28 | npm install -g pnpm 29 | cd /data 30 | ./start -------------------------------------------------------------------------------- /preview.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/preview.png -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | # ChatDoc 2 | 3 | 一个使用 `openai` 与文档对话的例子, 目前支持的文档类型 `.pdf`, `.epub`, `.md`, `.txt`, `.docx`, `web` 4 | 5 | ![preview](./preview.png) 6 | 7 | ## 启动后端 8 | 9 | ```shell 10 | # my local python version 3.9.7 11 | cd server 12 | ./start {OPEN_AI_KEY} 13 | ``` 14 | 15 | ## 启动前端 16 | 17 | ```shell 18 | # my local node version v16.11.0 19 | cd client 20 | ./start 21 | ``` 22 | 23 | ## Docker 24 | 25 | ```shell 26 | # 请先替换 docker-compose.yml 中的 OPEN_AI_KEY 27 | docker-compose up 28 | ``` 29 | -------------------------------------------------------------------------------- /server/consts.py: -------------------------------------------------------------------------------- 1 | BASE_DIR = "data" -------------------------------------------------------------------------------- /server/database.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/daodao97/chatdoc/5da9cff137cdc67f27e8209bf6ec96c50c3c8d0e/server/database.db -------------------------------------------------------------------------------- /server/db_docs.py: -------------------------------------------------------------------------------- 1 | import sqlite3 2 | import calendar 3 | import time 4 | 5 | class Docs: 6 | 7 | def __init__(self, uid: int, doc_id: str, doc_name: str, doc_type: str, size : int = 0, state : int = 0, create_at: int = 0, update_at: int = 0, id : int = 0): 8 | self.uid = uid 9 | self.doc_id = doc_id 10 | self.doc_name = doc_name 11 | self.doc_type = doc_type 12 | self.state = state 13 | self.size = size 14 | self.create_at = create_at 15 | self.update_at = update_at 16 | 17 | ts = calendar.timegm(time.gmtime()) 18 | if self.create_at == 0: 19 | self.create_at = ts 20 | if self.update_at == 0: 21 | self.update_at = ts 22 | 23 | self.__conn = sqlite3.connect('database.db') 24 | self.__cursor = self.__conn.cursor() 25 | 26 | # 将对象插入到数据库中 27 | def insert(self): 28 | docs = self.get_by_doc_id(self.doc_id) 29 | if docs != None : 30 | return 31 | print('size', self.size) 32 | self.__cursor.execute('INSERT INTO docs (uid, doc_id, doc_name, doc_type, size, state, create_at, update_at) VALUES (?, ?, ?, ?, ?, ?, ?, ?)', 33 | (self.uid, self.doc_id, self.doc_name, self.doc_type, self.size, self.state, self.create_at, self.update_at)) 34 | self.__conn.commit() 35 | 36 | # 从数据库中删除对象 37 | def delete(self): 38 | self.__cursor.execute('DELETE FROM docs WHERE doc_id = ?', (self.doc_id,)) 39 | self.__conn.commit() 40 | 41 | # 更新对象在数据库中的信息 42 | def update(self): 43 | self.__cursor.execute('UPDATE docs SET uid = ?, doc_name = ?, doc_type = ?, size = ?, state = ?, create_at = ?, update_at = ? WHERE doc_id = ?', 44 | (self.uid, self.doc_name, self.doc_type, self.size, self.state, self.create_at, self.update_at, self.doc_id)) 45 | self.__conn.commit() 46 | 47 | # 从数据库中获取所有对象 48 | @staticmethod 49 | def get_all(): 50 | conn = sqlite3.connect('database.db') 51 | cur = conn.cursor() 52 | cur.execute('SELECT id,uid,doc_id,doc_name,doc_type,size,state FROM docs') 53 | rows = cur.fetchall() 54 | cur.close() 55 | conn.close() 56 | return [{"id": row[0], "uid": row[1], "doc_id": row[2], "doc_name": row[3], "doc_type": row[4], "size": row[5], "state": row[6]} for row in rows] 57 | 58 | # 从数据库中获取指定doc_id的对象 59 | @staticmethod 60 | def get_by_doc_id(doc_id): 61 | conn = sqlite3.connect('database.db') 62 | cur = conn.cursor() 63 | cur.execute('SELECT id,uid,doc_id,doc_name,doc_type,size,state FROM docs WHERE doc_id = ?', (doc_id,)) 64 | row = cur.fetchone() 65 | cur.close() 66 | conn.close() 67 | if row is not None: 68 | return {"id": row[0], "uid": row[1], "doc_id": row[2], "doc_name": row[3], "doc_type": row[4],"size": row[5], "state": row[6]} 69 | else: 70 | return None 71 | 72 | @staticmethod 73 | def del_by_doc_id(doc_id): 74 | conn = sqlite3.connect('database.db') 75 | cur = conn.cursor() 76 | cur.execute('DELETE FROM docs WHERE doc_id = ?', (doc_id,)) 77 | cur.close() 78 | conn.commit() 79 | conn.close() 80 | 81 | def __str__(self): 82 | return f"Doc(uid={self.uid}, doc_id='{self.doc_id}', doc_name='{self.doc_name}', doc_type='{self.doc_type}', state={self.state}, create_at={self.create_at}, update_at={self.update_at})" 83 | -------------------------------------------------------------------------------- /server/db_init.py: -------------------------------------------------------------------------------- 1 | import sqlite3 2 | import os 3 | 4 | os.remove("database.db") 5 | 6 | table_docs = """ 7 | create table if not exists docs 8 | ( 9 | id integer primary key autoincrement, 10 | uid integer default 0 not null, 11 | doc_id text default '' not null unique, 12 | doc_name text default '' not null, 13 | doc_type text default '' not null, 14 | state integer default 0 not null, -- 1 解析文本成功, 2 构建所有成功 15 | size integer default 0 not null, 16 | create_at integer default 0 not null, 17 | update_at integer default 0 not null 18 | ); 19 | """ 20 | 21 | table_msg = """ 22 | create table if not exists messages 23 | ( 24 | id integer primary key autoincrement, 25 | uid integer default 0 not null, 26 | doc_id text default '' not null, 27 | role text default '' not null, 28 | content text default '' not null, 29 | create_at integer not null 30 | ); 31 | """ 32 | 33 | con = sqlite3.connect("database.db") 34 | 35 | cur = con.cursor() 36 | 37 | cur.execute(table_docs) 38 | cur.execute(table_msg) 39 | 40 | res = cur.execute("SELECT name FROM sqlite_master") 41 | 42 | result = res.fetchall() 43 | 44 | print(result) -------------------------------------------------------------------------------- /server/db_msg.py: -------------------------------------------------------------------------------- 1 | import sqlite3 2 | import calendar 3 | import time 4 | import json 5 | 6 | class Msg: 7 | 8 | def __init__(self, uid: int, doc_id: str, role: str, content, create_at: int = 0): 9 | self.uid = uid 10 | self.doc_id = doc_id 11 | self.role = role 12 | if role == 'chatdoc': 13 | self.content = content.response 14 | else: 15 | self.content = content 16 | self.create_at = create_at 17 | 18 | ts = calendar.timegm(time.gmtime()) 19 | if self.create_at == 0: 20 | self.create_at = ts 21 | 22 | self.__conn = sqlite3.connect('database.db') 23 | self.__cursor = self.__conn.cursor() 24 | 25 | # 将对象插入到数据库中 26 | def insert(self): 27 | self.__cursor.execute('INSERT INTO messages (uid, doc_id, role, content, create_at) VALUES (?, ?, ?, ?, ?)', 28 | (self.uid, self.doc_id, self.role, self.content, self.create_at)) 29 | self.__conn.commit() 30 | 31 | # 从数据库中删除对象 32 | def delete(self): 33 | self.__cursor.execute( 34 | 'DELETE FROM messages WHERE doc_id = ?', (self.doc_id,)) 35 | self.__conn.commit() 36 | 37 | # 从数据库中获取指定doc_id的对象 38 | @staticmethod 39 | def get_by_doc_id(doc_id, uid): 40 | conn = sqlite3.connect('database.db') 41 | cur = conn.cursor() 42 | cur.execute( 43 | 'SELECT uid, doc_id, role, content, create_at FROM messages WHERE doc_id = ? and uid = ?', (doc_id, uid)) 44 | rows = cur.fetchall() 45 | cur.close() 46 | conn.close() 47 | if rows is not None: 48 | return [{"uid": row[0], "doc_id": row[1], "role": row[2], "content": row[3] if row[2] == 'user' else row[3]} for row in rows] 49 | else: 50 | return None 51 | -------------------------------------------------------------------------------- /server/doc_util.py: -------------------------------------------------------------------------------- 1 | from PyPDF2 import PdfReader 2 | import sys 3 | import os 4 | import logging 5 | from llama_index import SimpleDirectoryReader, GPTSimpleVectorIndex, QuestionAnswerPrompt, QueryMode, LLMPredictor 6 | from consts import BASE_DIR 7 | import ebooklib 8 | from ebooklib import epub 9 | from epub2txt import epub2txt 10 | from langchain.chat_models import ChatOpenAI 11 | from llama_index import download_loader 12 | import docx2txt 13 | 14 | logging.basicConfig(stream=sys.stdout, level=logging.INFO) 15 | logging.getLogger().addHandler(logging.StreamHandler(stream=sys.stdout)) 16 | 17 | llm_predictor = LLMPredictor(llm=ChatOpenAI( 18 | temperature=0.2, model_name="gpt-3.5-turbo")) 19 | CJKPDFReader = download_loader("CJKPDFReader") 20 | SimpleWebPageReader = download_loader("SimpleWebPageReader") 21 | 22 | QUESTION_ANSWER_PROMPT_TMPL_2 = """ 23 | You are an AI assistant providing helpful advice. You are given the following extracted parts of a long document and a question. Provide a conversational answer based on the context provided. 24 | If you can't find the answer in the context below, just say "Hmm, I'm not sure." Don't try to make up an answer. 25 | If the question is not related to the context, politely respond that you are tuned to only answer questions that are related to the context. 26 | Context information is below. 27 | ========= 28 | {context_str} 29 | ========= 30 | {query_str} 31 | """ 32 | 33 | QA_PROMPT_TMPL = ( 34 | "Context information is below. \n" 35 | "---------------------\n" 36 | "{context_str}" 37 | "\n---------------------\n" 38 | "{query_str}\n" 39 | ) 40 | 41 | 42 | class Doc: 43 | def __init__( 44 | self, 45 | doc_id: str, 46 | filename: str = "" 47 | ) -> None: 48 | self.dir_name = doc_id 49 | 50 | full_dir = os.path.join(BASE_DIR, self.dir_name) 51 | if not os.path.exists(full_dir): 52 | os.makedirs(full_dir) 53 | 54 | self.filename = filename 55 | self.file_path = os.path.join(BASE_DIR, self.dir_name, filename) 56 | self.data_file = os.path.join(BASE_DIR, self.dir_name, "data.txt") 57 | self.index_file = os.path.join(BASE_DIR, self.dir_name, "index.json") 58 | 59 | async def save(self, content: bytes): 60 | with open(self.file_path, "wb") as f: 61 | f.write(content) 62 | 63 | def build_txt(self, doc_type: str): 64 | if doc_type == 'application/epub+zip': 65 | self.extract_epub() 66 | if doc_type == 'application/pdf': 67 | self.extract_pdf() 68 | if doc_type == 'text/plain' or doc_type == 'text/markdown': 69 | self.data_file = self.file_path 70 | if doc_type == 'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 71 | self.extra_docx() 72 | 73 | def extract_epub(self): 74 | res = epub2txt(self.file_path) 75 | with open(self.data_file, "a") as file: 76 | for i in range(len(res)): 77 | file.write(res[i]) 78 | 79 | def extract_pdf(self): 80 | reader = PdfReader(self.file_path) 81 | print("total pages ", len(reader.pages)) 82 | with open(self.data_file, "a") as file: 83 | for i in range(len(reader.pages)): 84 | page = reader.pages[i] 85 | text = page.extract_text() 86 | file.write(text) 87 | 88 | def extra_docx(self): 89 | res = docx2txt.process(self.file_path) 90 | with open(self.data_file, "a") as file: 91 | file.write(res) 92 | 93 | def build_index(self, doc_type: str): 94 | if doc_type == 'web': 95 | self.build_web() 96 | return 97 | 98 | documents = SimpleDirectoryReader( 99 | input_files=[self.data_file]).load_data() 100 | index = GPTSimpleVectorIndex(documents) 101 | index.save_to_disk(self.index_file) 102 | 103 | def build_web(self): 104 | loader = SimpleWebPageReader() 105 | documents = loader.load_data(urls=[self.filename]) 106 | index = GPTSimpleVectorIndex(documents) 107 | index.save_to_disk(self.index_file) 108 | 109 | def query(self, question: str): 110 | print("query2", self.index_file, self.file_path) 111 | loader = CJKPDFReader() 112 | index_file = self.index_file 113 | 114 | if os.path.exists(index_file) == False: 115 | documents = loader.load_data(file=self.file_path) 116 | index = GPTSimpleVectorIndex(documents) 117 | index.save_to_disk(index_file) 118 | else: 119 | index = GPTSimpleVectorIndex.load_from_disk(index_file) 120 | 121 | QUESTION_ANSWER_PROMPT = QuestionAnswerPrompt( 122 | QUESTION_ANSWER_PROMPT_TMPL_2) 123 | 124 | return index.query( 125 | query_str=question, 126 | llm_predictor=llm_predictor, 127 | text_qa_template=QUESTION_ANSWER_PROMPT, 128 | # response_mode="tree_summarize", 129 | similarity_top_k=3, 130 | ) 131 | 132 | def query2(self, question: str): 133 | print("query2", self.index_file, self.file_path) 134 | loader = CJKPDFReader() 135 | index_file = self.index_file 136 | 137 | if os.path.exists(index_file) == False: 138 | documents = loader.load_data(file=self.file_path) 139 | index = GPTSimpleVectorIndex(documents) 140 | index.save_to_disk(index_file) 141 | else: 142 | index = GPTSimpleVectorIndex.load_from_disk(index_file) 143 | 144 | QUESTION_ANSWER_PROMPT = QuestionAnswerPrompt( 145 | QUESTION_ANSWER_PROMPT_TMPL_2) 146 | 147 | return index.query( 148 | query_str=question, 149 | llm_predictor=llm_predictor, 150 | text_qa_template=QUESTION_ANSWER_PROMPT, 151 | response_mode="tree_summarize", 152 | similarity_top_k=3, 153 | ) 154 | -------------------------------------------------------------------------------- /server/download_website.py: -------------------------------------------------------------------------------- 1 | import os 2 | import shutil 3 | import requests 4 | from bs4 import BeautifulSoup 5 | 6 | url = "https://www.jianshu.com/p/474f4713753ct" 7 | response = requests.get(url) 8 | 9 | # 创建目录 10 | path = "example" 11 | if not os.path.exists(path): 12 | os.mkdir(path) 13 | 14 | # 解析 HTML 页面 15 | soup = BeautifulSoup(response.text, "html.parser") 16 | 17 | # 保存 HTML 页面 18 | with open(f"{path}/index.html", "w") as f: 19 | f.write(soup.prettify()) 20 | 21 | # 保存 CSS 文件 22 | for link in soup.find_all("link"): 23 | if link.get("rel") == ["stylesheet"]: 24 | css_url = link.get("href") 25 | css_response = requests.get(css_url) 26 | css_path = f"{path}/{css_url.split('/')[-1]}" 27 | with open(css_path, "wb") as f: 28 | f.write(css_response.content) 29 | 30 | # 保存 JavaScript 文件 31 | for script in soup.find_all("script"): 32 | if script.get("src"): 33 | js_url = script.get("src") 34 | js_response = requests.get(js_url) 35 | js_path = f"{path}/{js_url.split('/')[-1]}" 36 | with open(js_path, "wb") as f: 37 | f.write(js_response.content) 38 | 39 | # 复制所有图片文件 40 | for img in soup.find_all("img"): 41 | img_url = img.get("src") 42 | img_response = requests.get(img_url) 43 | img_path = f"{path}/{img_url.split('/')[-1]}" 44 | with open(img_path, "wb") as f: 45 | f.write(img_response.content) 46 | 47 | # 复制所有媒体文件 48 | for source in soup.find_all("source"): 49 | media_url = source.get("src") 50 | media_response = requests.get(media_url) 51 | media_path = f"{path}/{media_url.split('/')[-1]}" 52 | with open(media_path, "wb") as f: 53 | f.write(media_response.content) 54 | 55 | # 复制所有字体文件 56 | for font in soup.find_all("link"): 57 | if font.get("rel") == ["stylesheet"] and "font" in font.get("href"): 58 | font_url = font.get("href") 59 | font_response = requests.get(font_url) 60 | font_path = f"{path}/{font_url.split('/')[-1]}" 61 | with open(font_path, "wb") as f: 62 | f.write(font_response.content) 63 | 64 | # 复制所有其他文件 65 | for link in soup.find_all("link"): 66 | if not link.get("rel") == ["stylesheet"]: 67 | file_url = link.get("href") 68 | if file_url and "." in file_url: 69 | file_extension = file_url.split(".")[-1] 70 | if file_extension not in ["css", "js"]: 71 | file_response = requests.get(file_url) 72 | file_path = f"{path}/{file_url.split('/')[-1]}" 73 | with open(file_path, "wb") as f: 74 | f.write(file_response.content) 75 | -------------------------------------------------------------------------------- /server/main.py: -------------------------------------------------------------------------------- 1 | from fastapi import FastAPI, File, UploadFile, BackgroundTasks 2 | import time 3 | from doc_util import Doc 4 | import hashlib 5 | from db_docs import Docs 6 | from db_msg import Msg 7 | from fastapi.staticfiles import StaticFiles 8 | from starlette.middleware.cors import CORSMiddleware 9 | import uvicorn 10 | from pydantic import BaseModel 11 | 12 | app = FastAPI() 13 | origins = ["http://127.0.0.1", "http://localhost:5173", "http://10.23.172.12:5173"] 14 | 15 | app.add_middleware( 16 | CORSMiddleware, 17 | allow_origins=["*"], # 设置允许的origins来源 18 | allow_credentials=True, 19 | allow_methods=["*"], # 设置允许跨域的http方法,比如 get、post、put等。 20 | allow_headers=["*"]) # 允许跨域的headers,可以用来鉴别来源等作用。 21 | 22 | 23 | app.mount("/static", StaticFiles(directory="data"), name="static") 24 | 25 | 26 | @app.get("/my_docs") 27 | async def handle(): 28 | docs = Docs.get_all() 29 | return {"data": docs} 30 | 31 | 32 | @app.delete("/del/{doc_id}") 33 | async def handle(doc_id): 34 | Docs.del_by_doc_id(doc_id=doc_id) 35 | return {"data": "success"} 36 | 37 | 38 | @app.post("/upload") 39 | async def handle(background_task: BackgroundTasks, file: UploadFile = File(...)): 40 | start = time.time() 41 | try: 42 | size = file.size 43 | data = await file.read() 44 | doc_id = hashlib.md5(data).hexdigest() 45 | doc = Doc(doc_id=doc_id, filename=file.filename) 46 | await doc.save(content=data) 47 | Docs(uid=0, doc_id=doc_id, doc_name=file.filename, doc_type=file.content_type, size=size).insert() 48 | background_task.add_task(file_task, doc_id) 49 | return {"message": "success", 'time': time.time() - start, 'filename': file.filename} 50 | except Exception as e: 51 | return {"message": str(e), 'time': time.time() - start, 'filename': file.filename} 52 | 53 | class AddLink(BaseModel): 54 | link : str 55 | 56 | @app.post("/add_link") 57 | async def handle(background_task: BackgroundTasks,link: AddLink): 58 | start = time.time() 59 | try: 60 | print(link) 61 | doc_id = hashlib.md5(link.link.encode('utf8')).hexdigest() 62 | Docs(uid=0, doc_id=doc_id, doc_name=link.link, doc_type='web', size=0).insert() 63 | background_task.add_task(file_task, doc_id) 64 | return {"message": "success", 'time': time.time() - start} 65 | except Exception as e: 66 | return {"message": str(e), 'time': time.time() - start} 67 | 68 | 69 | @app.get("/ask/{doc_id}") 70 | async def handle(doc_id, question): 71 | try: 72 | res = Docs.get_by_doc_id(doc_id=doc_id) 73 | doc = Doc(doc_id=doc_id,filename=res['doc_name']) 74 | Msg(uid=0, doc_id=doc_id, role="user", content=question).insert() 75 | res = doc.query(question=question) 76 | Msg(uid=0, doc_id=doc_id, role="chatdoc", content=res).insert() 77 | return {"data": res, "doc_id": doc_id} 78 | except Exception as e: 79 | return {"message": str(e), "code": 500} 80 | 81 | 82 | @app.get("/msg/{doc_id}") 83 | async def handle(doc_id): 84 | res = Msg.get_by_doc_id(doc_id=doc_id, uid=0) 85 | return {"data": res, "doc_id": doc_id} 86 | 87 | 88 | def file_task(doc_id: str): 89 | res = Docs.get_by_doc_id(doc_id=doc_id) 90 | if res == None: 91 | return 92 | 93 | doc = Doc(doc_id=res['doc_id'], filename=res['doc_name']) 94 | doc.build_txt(res['doc_type']) 95 | res['state'] = 1 96 | Docs(**res).update() 97 | 98 | doc.build_index(res["doc_type"]) 99 | res['state'] = 2 100 | Docs(**res).update() 101 | 102 | 103 | if __name__ == '__main__': 104 | uvicorn.run('main:app', host="0.0.0.0", reload=True) 105 | -------------------------------------------------------------------------------- /server/requirements.txt: -------------------------------------------------------------------------------- 1 | beautifulsoup4==4.12.0 2 | EbookLib==0.17.1 3 | epub2txt==0.1.1 4 | fastapi==0.95.0 5 | langchain==0.0.123 6 | llama_index==0.4.38 7 | pydantic==1.10.7 8 | PyPDF2==3.0.1 9 | requests==2.28.2 10 | starlette==0.26.1 11 | uvicorn==0.21.1 12 | docx2txt==0.8 13 | -------------------------------------------------------------------------------- /server/start: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | set -e 3 | 4 | echo "Starting Python server..." 5 | mkdir -p data 6 | pip install -r requirements.txt 7 | OPENAI_API_KEY=$1 python3 main.py --------------------------------------------------------------------------------