unvendor: Replace epubjs
| @@ -60,7 +60,6 @@ module.exports = { | |||
| 60 | toastr: 'readonly', | 60 | toastr: 'readonly', |
| 61 | Readability: 'readonly', | 61 | Readability: 'readonly', |
| 62 | isProbablyReaderable: 'readonly', | 62 | isProbablyReaderable: 'readonly', |
| 63 | ePub: 'readonly', | ||
| 64 | diff_match_patch: 'readonly', | 63 | diff_match_patch: 'readonly', |
| 65 | SillyTavern: 'readonly', | 64 | SillyTavern: 'readonly', |
| 66 | }, | 65 | }, |
| @@ -25,6 +25,7 @@ | |||
| 25 | "cors": "^2.8.5", | 25 | "cors": "^2.8.5", |
| 26 | "csrf-csrf": "^2.2.3", | 26 | "csrf-csrf": "^2.2.3", |
| 27 | "dompurify": "^3.1.7", | 27 | "dompurify": "^3.1.7", |
| 28 | "epubjs": "^0.3.93", | ||
| 28 | "express": "^4.21.0", | 29 | "express": "^4.21.0", |
| 29 | "form-data": "^4.0.0", | 30 | "form-data": "^4.0.0", |
| 30 | "fuse.js": "^7.0.0", | 31 | "fuse.js": "^7.0.0", |
| @@ -1260,6 +1261,16 @@ | |||
| 1260 | "@types/node": "*" | 1261 | "@types/node": "*" |
| 1261 | } | 1262 | } |
| 1262 | }, | 1263 | }, |
| 1264 | "node_modules/@types/localforage": { | ||
| 1265 | "version": "0.0.34", | ||
| 1266 | "resolved": "https://registry.npmjs.org/@types/localforage/-/localforage-0.0.34.tgz", | ||
| 1267 | "integrity": "sha512-tJxahnjm9dEI1X+hQSC5f2BSd/coZaqbIl1m3TCl0q9SVuC52XcXfV0XmoCU1+PmjyucuVITwoTnN8OlTbEXXA==", | ||
| 1268 | "deprecated": "This is a stub types definition for localforage (https://github.com/localForage/localForage). localforage provides its own type definitions, so you don't need @types/localforage installed!", | ||
| 1269 | "license": "MIT", | ||
| 1270 | "dependencies": { | ||
| 1271 | "localforage": "*" | ||
| 1272 | } | ||
| 1273 | }, | ||
| 1263 | "node_modules/@types/lodash": { | 1274 | "node_modules/@types/lodash": { |
| 1264 | "version": "4.17.10", | 1275 | "version": "4.17.10", |
| 1265 | "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.10.tgz", | 1276 | "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.10.tgz", |
| @@ -1618,6 +1629,15 @@ | |||
| 1618 | "@xtuc/long": "4.2.2" | 1629 | "@xtuc/long": "4.2.2" |
| 1619 | } | 1630 | } |
| 1620 | }, | 1631 | }, |
| 1632 | "node_modules/@xmldom/xmldom": { | ||
| 1633 | "version": "0.7.13", | ||
| 1634 | "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.13.tgz", | ||
| 1635 | "integrity": "sha512-lm2GW5PkosIzccsaZIz7tp8cPADSIlIHWDFTR1N0SzfinhhYgeIQjFMz4rYzanCScr3DqQLeomUDArp6MWKm+g==", | ||
| 1636 | "license": "MIT", | ||
| 1637 | "engines": { | ||
| 1638 | "node": ">=10.0.0" | ||
| 1639 | } | ||
| 1640 | }, | ||
| 1621 | "node_modules/@xtuc/ieee754": { | 1641 | "node_modules/@xtuc/ieee754": { |
| 1622 | "version": "1.2.0", | 1642 | "version": "1.2.0", |
| 1623 | "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", | 1643 | "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", |
| @@ -2859,6 +2879,17 @@ | |||
| 2859 | "node": ">= 0.8" | 2879 | "node": ">= 0.8" |
| 2860 | } | 2880 | } |
| 2861 | }, | 2881 | }, |
| 2882 | "node_modules/core-js": { | ||
| 2883 | "version": "3.38.1", | ||
| 2884 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz", | ||
| 2885 | "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==", | ||
| 2886 | "hasInstallScript": true, | ||
| 2887 | "license": "MIT", | ||
| 2888 | "funding": { | ||
| 2889 | "type": "opencollective", | ||
| 2890 | "url": "https://opencollective.com/core-js" | ||
| 2891 | } | ||
| 2892 | }, | ||
| 2862 | "node_modules/core-util-is": { | 2893 | "node_modules/core-util-is": { |
| 2863 | "version": "1.0.3", | 2894 | "version": "1.0.3", |
| 2864 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", | 2895 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", |
| @@ -3035,6 +3066,19 @@ | |||
| 3035 | "url": "https://github.com/sponsors/fb55" | 3066 | "url": "https://github.com/sponsors/fb55" |
| 3036 | } | 3067 | } |
| 3037 | }, | 3068 | }, |
| 3069 | "node_modules/d": { | ||
| 3070 | "version": "1.0.2", | ||
| 3071 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz", | ||
| 3072 | "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==", | ||
| 3073 | "license": "ISC", | ||
| 3074 | "dependencies": { | ||
| 3075 | "es5-ext": "^0.10.64", | ||
| 3076 | "type": "^2.7.2" | ||
| 3077 | }, | ||
| 3078 | "engines": { | ||
| 3079 | "node": ">=0.12" | ||
| 3080 | } | ||
| 3081 | }, | ||
| 3038 | "node_modules/data-uri-to-buffer": { | 3082 | "node_modules/data-uri-to-buffer": { |
| 3039 | "version": "6.0.2", | 3083 | "version": "6.0.2", |
| 3040 | "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", | 3084 | "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-6.0.2.tgz", |
| @@ -3316,6 +3360,23 @@ | |||
| 3316 | "url": "https://github.com/fb55/entities?sponsor=1" | 3360 | "url": "https://github.com/fb55/entities?sponsor=1" |
| 3317 | } | 3361 | } |
| 3318 | }, | 3362 | }, |
| 3363 | "node_modules/epubjs": { | ||
| 3364 | "version": "0.3.93", | ||
| 3365 | "resolved": "https://registry.npmjs.org/epubjs/-/epubjs-0.3.93.tgz", | ||
| 3366 | "integrity": "sha512-c06pNSdBxcXv3dZSbXAVLE1/pmleRhOT6mXNZo6INKmvuKpYB65MwU/lO7830czCtjIiK9i+KR+3S+p0wtljrw==", | ||
| 3367 | "license": "BSD-2-Clause", | ||
| 3368 | "dependencies": { | ||
| 3369 | "@types/localforage": "0.0.34", | ||
| 3370 | "@xmldom/xmldom": "^0.7.5", | ||
| 3371 | "core-js": "^3.18.3", | ||
| 3372 | "event-emitter": "^0.3.5", | ||
| 3373 | "jszip": "^3.7.1", | ||
| 3374 | "localforage": "^1.10.0", | ||
| 3375 | "lodash": "^4.17.21", | ||
| 3376 | "marks-pane": "^1.0.9", | ||
| 3377 | "path-webpack": "0.0.3" | ||
| 3378 | } | ||
| 3379 | }, | ||
| 3319 | "node_modules/es-define-property": { | 3380 | "node_modules/es-define-property": { |
| 3320 | "version": "1.0.0", | 3381 | "version": "1.0.0", |
| 3321 | "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", | 3382 | "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", |
| @@ -3343,6 +3404,46 @@ | |||
| 3343 | "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", | 3404 | "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", |
| 3344 | "license": "MIT" | 3405 | "license": "MIT" |
| 3345 | }, | 3406 | }, |
| 3407 | "node_modules/es5-ext": { | ||
| 3408 | "version": "0.10.64", | ||
| 3409 | "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz", | ||
| 3410 | "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==", | ||
| 3411 | "hasInstallScript": true, | ||
| 3412 | "license": "ISC", | ||
| 3413 | "dependencies": { | ||
| 3414 | "es6-iterator": "^2.0.3", | ||
| 3415 | "es6-symbol": "^3.1.3", | ||
| 3416 | "esniff": "^2.0.1", | ||
| 3417 | "next-tick": "^1.1.0" | ||
| 3418 | }, | ||
| 3419 | "engines": { | ||
| 3420 | "node": ">=0.10" | ||
| 3421 | } | ||
| 3422 | }, | ||
| 3423 | "node_modules/es6-iterator": { | ||
| 3424 | "version": "2.0.3", | ||
| 3425 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", | ||
| 3426 | "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==", | ||
| 3427 | "license": "MIT", | ||
| 3428 | "dependencies": { | ||
| 3429 | "d": "1", | ||
| 3430 | "es5-ext": "^0.10.35", | ||
| 3431 | "es6-symbol": "^3.1.1" | ||
| 3432 | } | ||
| 3433 | }, | ||
| 3434 | "node_modules/es6-symbol": { | ||
| 3435 | "version": "3.1.4", | ||
| 3436 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz", | ||
| 3437 | "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==", | ||
| 3438 | "license": "ISC", | ||
| 3439 | "dependencies": { | ||
| 3440 | "d": "^1.0.2", | ||
| 3441 | "ext": "^1.7.0" | ||
| 3442 | }, | ||
| 3443 | "engines": { | ||
| 3444 | "node": ">=0.12" | ||
| 3445 | } | ||
| 3446 | }, | ||
| 3346 | "node_modules/escalade": { | 3447 | "node_modules/escalade": { |
| 3347 | "version": "3.2.0", | 3448 | "version": "3.2.0", |
| 3348 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", | 3449 | "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", |
| @@ -3525,6 +3626,21 @@ | |||
| 3525 | "dev": true, | 3626 | "dev": true, |
| 3526 | "license": "MIT" | 3627 | "license": "MIT" |
| 3527 | }, | 3628 | }, |
| 3629 | "node_modules/esniff": { | ||
| 3630 | "version": "2.0.1", | ||
| 3631 | "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz", | ||
| 3632 | "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==", | ||
| 3633 | "license": "ISC", | ||
| 3634 | "dependencies": { | ||
| 3635 | "d": "^1.0.1", | ||
| 3636 | "es5-ext": "^0.10.62", | ||
| 3637 | "event-emitter": "^0.3.5", | ||
| 3638 | "type": "^2.7.2" | ||
| 3639 | }, | ||
| 3640 | "engines": { | ||
| 3641 | "node": ">=0.10" | ||
| 3642 | } | ||
| 3643 | }, | ||
| 3528 | "node_modules/espree": { | 3644 | "node_modules/espree": { |
| 3529 | "version": "9.6.1", | 3645 | "version": "9.6.1", |
| 3530 | "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", | 3646 | "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", |
| @@ -3608,6 +3724,16 @@ | |||
| 3608 | "node": ">= 0.6" | 3724 | "node": ">= 0.6" |
| 3609 | } | 3725 | } |
| 3610 | }, | 3726 | }, |
| 3727 | "node_modules/event-emitter": { | ||
| 3728 | "version": "0.3.5", | ||
| 3729 | "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", | ||
| 3730 | "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==", | ||
| 3731 | "license": "MIT", | ||
| 3732 | "dependencies": { | ||
| 3733 | "d": "1", | ||
| 3734 | "es5-ext": "~0.10.14" | ||
| 3735 | } | ||
| 3736 | }, | ||
| 3611 | "node_modules/event-target-shim": { | 3737 | "node_modules/event-target-shim": { |
| 3612 | "version": "5.0.1", | 3738 | "version": "5.0.1", |
| 3613 | "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", | 3739 | "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", |
| @@ -3701,6 +3827,15 @@ | |||
| 3701 | ], | 3827 | ], |
| 3702 | "license": "MIT" | 3828 | "license": "MIT" |
| 3703 | }, | 3829 | }, |
| 3830 | "node_modules/ext": { | ||
| 3831 | "version": "1.7.0", | ||
| 3832 | "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz", | ||
| 3833 | "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==", | ||
| 3834 | "license": "ISC", | ||
| 3835 | "dependencies": { | ||
| 3836 | "type": "^2.7.2" | ||
| 3837 | } | ||
| 3838 | }, | ||
| 3704 | "node_modules/fast-deep-equal": { | 3839 | "node_modules/fast-deep-equal": { |
| 3705 | "version": "3.1.3", | 3840 | "version": "3.1.3", |
| 3706 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", | 3841 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", |
| @@ -4944,6 +5079,27 @@ | |||
| 4944 | "graceful-fs": "^4.1.6" | 5079 | "graceful-fs": "^4.1.6" |
| 4945 | } | 5080 | } |
| 4946 | }, | 5081 | }, |
| 5082 | "node_modules/jszip": { | ||
| 5083 | "version": "3.10.1", | ||
| 5084 | "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.10.1.tgz", | ||
| 5085 | "integrity": "sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==", | ||
| 5086 | "license": "(MIT OR GPL-3.0-or-later)", | ||
| 5087 | "dependencies": { | ||
| 5088 | "lie": "~3.3.0", | ||
| 5089 | "pako": "~1.0.2", | ||
| 5090 | "readable-stream": "~2.3.6", | ||
| 5091 | "setimmediate": "^1.0.5" | ||
| 5092 | } | ||
| 5093 | }, | ||
| 5094 | "node_modules/jszip/node_modules/lie": { | ||
| 5095 | "version": "3.3.0", | ||
| 5096 | "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", | ||
| 5097 | "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", | ||
| 5098 | "license": "MIT", | ||
| 5099 | "dependencies": { | ||
| 5100 | "immediate": "~3.0.5" | ||
| 5101 | } | ||
| 5102 | }, | ||
| 4947 | "node_modules/keygrip": { | 5103 | "node_modules/keygrip": { |
| 4948 | "version": "1.1.0", | 5104 | "version": "1.1.0", |
| 4949 | "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", | 5105 | "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", |
| @@ -5090,6 +5246,12 @@ | |||
| 5090 | "node": "14 || >=16.14" | 5246 | "node": "14 || >=16.14" |
| 5091 | } | 5247 | } |
| 5092 | }, | 5248 | }, |
| 5249 | "node_modules/marks-pane": { | ||
| 5250 | "version": "1.0.9", | ||
| 5251 | "resolved": "https://registry.npmjs.org/marks-pane/-/marks-pane-1.0.9.tgz", | ||
| 5252 | "integrity": "sha512-Ahs4oeG90tbdPWwAJkAAoHg2lRR8lAs9mZXETNPO9hYg3AkjUJBKi1NQ4aaIQZVGrig7c/3NUV1jANl8rFTeMg==", | ||
| 5253 | "license": "MIT" | ||
| 5254 | }, | ||
| 5093 | "node_modules/md5": { | 5255 | "node_modules/md5": { |
| 5094 | "version": "2.3.0", | 5256 | "version": "2.3.0", |
| 5095 | "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", | 5257 | "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", |
| @@ -5303,6 +5465,12 @@ | |||
| 5303 | "node": ">= 0.4.0" | 5465 | "node": ">= 0.4.0" |
| 5304 | } | 5466 | } |
| 5305 | }, | 5467 | }, |
| 5468 | "node_modules/next-tick": { | ||
| 5469 | "version": "1.1.0", | ||
| 5470 | "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", | ||
| 5471 | "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", | ||
| 5472 | "license": "ISC" | ||
| 5473 | }, | ||
| 5306 | "node_modules/node-domexception": { | 5474 | "node_modules/node-domexception": { |
| 5307 | "version": "1.0.0", | 5475 | "version": "1.0.0", |
| 5308 | "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", | 5476 | "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", |
| @@ -5783,6 +5951,12 @@ | |||
| 5783 | "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", | 5951 | "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==", |
| 5784 | "license": "MIT" | 5952 | "license": "MIT" |
| 5785 | }, | 5953 | }, |
| 5954 | "node_modules/path-webpack": { | ||
| 5955 | "version": "0.0.3", | ||
| 5956 | "resolved": "https://registry.npmjs.org/path-webpack/-/path-webpack-0.0.3.tgz", | ||
| 5957 | "integrity": "sha512-AmeDxedoo5svf7aB3FYqSAKqMxys014lVKBzy1o/5vv9CtU7U4wgGWL1dA2o6MOzcD53ScN4Jmiq6VbtLz1vIQ==", | ||
| 5958 | "license": "MIT" | ||
| 5959 | }, | ||
| 5786 | "node_modules/peek-readable": { | 5960 | "node_modules/peek-readable": { |
| 5787 | "version": "4.1.0", | 5961 | "version": "4.1.0", |
| 5788 | "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", | 5962 | "resolved": "https://registry.npmjs.org/peek-readable/-/peek-readable-4.1.0.tgz", |
| @@ -6499,6 +6673,12 @@ | |||
| 6499 | "node": ">= 0.4" | 6673 | "node": ">= 0.4" |
| 6500 | } | 6674 | } |
| 6501 | }, | 6675 | }, |
| 6676 | "node_modules/setimmediate": { | ||
| 6677 | "version": "1.0.5", | ||
| 6678 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", | ||
| 6679 | "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==", | ||
| 6680 | "license": "MIT" | ||
| 6681 | }, | ||
| 6502 | "node_modules/setprototypeof": { | 6682 | "node_modules/setprototypeof": { |
| 6503 | "version": "1.2.0", | 6683 | "version": "1.2.0", |
| 6504 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", | 6684 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", |
| @@ -7033,6 +7213,12 @@ | |||
| 7033 | "node": ">=0.6.x" | 7213 | "node": ">=0.6.x" |
| 7034 | } | 7214 | } |
| 7035 | }, | 7215 | }, |
| 7216 | "node_modules/type": { | ||
| 7217 | "version": "2.7.3", | ||
| 7218 | "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz", | ||
| 7219 | "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==", | ||
| 7220 | "license": "ISC" | ||
| 7221 | }, | ||
| 7036 | "node_modules/type-check": { | 7222 | "node_modules/type-check": { |
| 7037 | "version": "0.4.0", | 7223 | "version": "0.4.0", |
| 7038 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", | 7224 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", |
| @@ -15,6 +15,7 @@ | |||
| 15 | "cors": "^2.8.5", | 15 | "cors": "^2.8.5", |
| 16 | "csrf-csrf": "^2.2.3", | 16 | "csrf-csrf": "^2.2.3", |
| 17 | "dompurify": "^3.1.7", | 17 | "dompurify": "^3.1.7", |
| 18 | "epubjs": "^0.3.93", | ||
| 18 | "express": "^4.21.0", | 19 | "express": "^4.21.0", |
| 19 | "form-data": "^4.0.0", | 20 | "form-data": "^4.0.0", |
| 20 | "fuse.js": "^7.0.0", | 21 | "fuse.js": "^7.0.0", |
| @@ -7,7 +7,6 @@ declare var showdownKatex; | |||
| 7 | declare var SVGInject; | 7 | declare var SVGInject; |
| 8 | declare var Readability; | 8 | declare var Readability; |
| 9 | declare var isProbablyReaderable; | 9 | declare var isProbablyReaderable; |
| 10 | declare var ePub; | ||
| 11 | declare var ai; | 10 | declare var ai; |
| 12 | 11 | ||
| 13 | declare var SillyTavern: { | 12 | declare var SillyTavern: { |
| @@ -9,6 +9,7 @@ import localforage from 'localforage'; | |||
| 9 | import Handlebars from 'handlebars'; | 9 | import Handlebars from 'handlebars'; |
| 10 | import css from '@adobe/css-tools'; | 10 | import css from '@adobe/css-tools'; |
| 11 | import Bowser from 'bowser'; | 11 | import Bowser from 'bowser'; |
| 12 | import ePub from 'epubjs'; | ||
| 12 | 13 | ||
| 13 | /** | 14 | /** |
| 14 | * Expose the libraries to the 'window' object. | 15 | * Expose the libraries to the 'window' object. |
| @@ -49,6 +50,7 @@ export default { | |||
| 49 | Handlebars, | 50 | Handlebars, |
| 50 | css, | 51 | css, |
| 51 | Bowser, | 52 | Bowser, |
| 53 | ePub, | ||
| 52 | }; | 54 | }; |
| 53 | 55 | ||
| 54 | export { | 56 | export { |
| @@ -59,4 +61,5 @@ export { | |||
| 59 | Handlebars, | 61 | Handlebars, |
| 60 | css, | 62 | css, |
| 61 | Bowser, | 63 | Bowser, |
| 64 | ePub, | ||
| 62 | }; | 65 | }; |
| @@ -1,4 +1,4 @@ | |||
| 1 | import { DOMPurify } from '../lib.js'; | 1 | import { DOMPurify, ePub } from '../lib.js'; |
| 2 | 2 | ||
| 3 | import { getContext } from './extensions.js'; | 3 | import { getContext } from './extensions.js'; |
| 4 | import { characters, getRequestHeaders, this_chid } from '../script.js'; | 4 | import { characters, getRequestHeaders, this_chid } from '../script.js'; |
| @@ -1563,32 +1563,6 @@ export async function extractTextFromMarkdown(blob) { | |||
| 1563 | } | 1563 | } |
| 1564 | 1564 | ||
| 1565 | export async function extractTextFromEpub(blob) { | 1565 | export async function extractTextFromEpub(blob) { |
| 1566 | async function initEpubJs() { | ||
| 1567 | const epubScript = new Promise((resolve, reject) => { | ||
| 1568 | const epubScript = document.createElement('script'); | ||
| 1569 | epubScript.async = true; | ||
| 1570 | epubScript.src = 'lib/epub.min.js'; | ||
| 1571 | epubScript.onload = resolve; | ||
| 1572 | epubScript.onerror = reject; | ||
| 1573 | document.head.appendChild(epubScript); | ||
| 1574 | }); | ||
| 1575 | |||
| 1576 | const jszipScript = new Promise((resolve, reject) => { | ||
| 1577 | const jszipScript = document.createElement('script'); | ||
| 1578 | jszipScript.async = true; | ||
| 1579 | jszipScript.src = 'lib/jszip.min.js'; | ||
| 1580 | jszipScript.onload = resolve; | ||
| 1581 | jszipScript.onerror = reject; | ||
| 1582 | document.head.appendChild(jszipScript); | ||
| 1583 | }); | ||
| 1584 | |||
| 1585 | return Promise.all([epubScript, jszipScript]); | ||
| 1586 | } | ||
| 1587 | |||
| 1588 | if (!('ePub' in window)) { | ||
| 1589 | await initEpubJs(); | ||
| 1590 | } | ||
| 1591 | |||
| 1592 | const book = ePub(blob); | 1566 | const book = ePub(blob); |
| 1593 | await book.ready; | 1567 | await book.ready; |
| 1594 | const sectionPromises = []; | 1568 | const sectionPromises = []; |