Update Jimp and add WASM plugins (#3784) * Update jimp, use WASM format plugins * Fix Jimp import path in thumbnails endpoint * Fix size variable * Add fetch patch to handle file URLs * Fix JPEG thumbnailing * Enhance fetch patch to validate file paths and support specific extensions * Add default msBmp format * Update jsconfig * Update JPEG color space in thumbnail generation to YCbCr * Install jimp plugins explicitly * Refactor fetch patch utility functions
Signed| @@ -2,7 +2,7 @@ | ||
| 2 | 2 | "compilerOptions": { |
| 3 | 3 | "module": "ESNext", |
| 4 | 4 | "target": "ES2023", |
| 5 | 5 | "moduleResolution": "NodeBundler", |
| 6 | 6 | "strictNullChecks": true, |
| 7 | 7 | "strictFunctionTypes": true, |
| 8 | 8 | "checkJs": true, |
| @@ -14,6 +14,26 @@ | ||
| 14 | 14 | "@agnai/sentencepiece-js": "^1.1.1", |
| 15 | 15 | "@agnai/web-tokenizers": "^0.1.3", |
| 16 | 16 | "@iconfu/svg-inject": "^1.2.3", |
| 17 | + "@jimp/core": "^1.6.0", | |
| 18 | + "@jimp/js-bmp": "^1.6.0", | |
| 19 | + "@jimp/js-gif": "^1.6.0", | |
| 20 | + "@jimp/js-tiff": "^1.6.0", | |
| 21 | + "@jimp/plugin-circle": "^1.6.0", | |
| 22 | + "@jimp/plugin-color": "^1.6.0", | |
| 23 | + "@jimp/plugin-contain": "^1.6.0", | |
| 24 | + "@jimp/plugin-cover": "^1.6.0", | |
| 25 | + "@jimp/plugin-crop": "^1.6.0", | |
| 26 | + "@jimp/plugin-displace": "^1.6.0", | |
| 27 | + "@jimp/plugin-fisheye": "^1.6.0", | |
| 28 | + "@jimp/plugin-flip": "^1.6.0", | |
| 29 | + "@jimp/plugin-mask": "^1.6.0", | |
| 30 | + "@jimp/plugin-quantize": "^1.6.0", | |
| 31 | + "@jimp/plugin-rotate": "^1.6.0", | |
| 32 | + "@jimp/plugin-threshold": "^1.6.0", | |
| 33 | + "@jimp/wasm-avif": "^1.6.0", | |
| 34 | + "@jimp/wasm-jpeg": "^1.6.0", | |
| 35 | + "@jimp/wasm-png": "^1.6.0", | |
| 36 | + "@jimp/wasm-webp": "^1.6.0", | |
| 17 | 37 | "@mozilla/readability": "^0.6.0", |
| 18 | 38 | "@popperjs/core": "^2.11.8", |
| 19 | 39 | "@zeldafan0225/ai_horde": "^5.2.0", |
| @@ -46,7 +66,6 @@ | ||
| 46 | 66 | "ip-regex": "^5.0.0", |
| 47 | 67 | "ipaddr.js": "^2.2.0", |
| 48 | 68 | "is-docker": "^3.0.0", |
| 49 | - "jimp": "^0.22.10", | |
| 50 | 69 | "localforage": "^1.10.0", |
| 51 | 70 | "lodash": "^4.17.21", |
| 52 | 71 | "mime-types": "^2.1.35", |
| @@ -428,7 +447,55 @@ | ||
| 428 | 447 | "@jimp/custom": ">=0.3.5" |
| 429 | 448 | } |
| 430 | 449 | }, |
| 450 | + "node_modules/@jimp/bmp/node_modules/@jimp/utils": { | |
| 451 | + "version": "0.22.12", | |
| 452 | + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", | |
| 453 | + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", | |
| 454 | + "license": "MIT", | |
| 455 | + "dependencies": { | |
| 456 | + "regenerator-runtime": "^0.13.3" | |
| 457 | + } | |
| 458 | + }, | |
| 431 | 459 | "node_modules/@jimp/core": { |
| 460 | + "version": "1.6.0", | |
| 461 | + "resolved": "https://registry.npmjs.org/@jimp/core/-/core-1.6.0.tgz", | |
| 462 | + "integrity": "sha512-EQQlKU3s9QfdJqiSrZWNTxBs3rKXgO2W+GxNXDtwchF3a4IqxDheFX1ti+Env9hdJXDiYLp2jTRjlxhPthsk8w==", | |
| 463 | + "license": "MIT", | |
| 464 | + "dependencies": { | |
| 465 | + "@jimp/file-ops": "1.6.0", | |
| 466 | + "@jimp/types": "1.6.0", | |
| 467 | + "@jimp/utils": "1.6.0", | |
| 468 | + "await-to-js": "^3.0.0", | |
| 469 | + "exif-parser": "^0.1.12", | |
| 470 | + "file-type": "^16.0.0", | |
| 471 | + "mime": "3" | |
| 472 | + }, | |
| 473 | + "engines": { | |
| 474 | + "node": ">=18" | |
| 475 | + } | |
| 476 | + }, | |
| 477 | + "node_modules/@jimp/core/node_modules/mime": { | |
| 478 | + "version": "3.0.0", | |
| 479 | + "resolved": "https://registry.npmjs.org/mime/-/mime-3.0.0.tgz", | |
| 480 | + "integrity": "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==", | |
| 481 | + "license": "MIT", | |
| 482 | + "bin": { | |
| 483 | + "mime": "cli.js" | |
| 484 | + }, | |
| 485 | + "engines": { | |
| 486 | + "node": ">=10.0.0" | |
| 487 | + } | |
| 488 | + }, | |
| 489 | + "node_modules/@jimp/custom": { | |
| 490 | + "version": "0.22.12", | |
| 491 | + "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.22.12.tgz", | |
| 492 | + "integrity": "sha512-xcmww1O/JFP2MrlGUMd3Q78S3Qu6W3mYTXYuIqFq33EorgYHV/HqymHfXy9GjiCJ7OI+7lWx6nYFOzU7M4rd1Q==", | |
| 493 | + "license": "MIT", | |
| 494 | + "dependencies": { | |
| 495 | + "@jimp/core": "^0.22.12" | |
| 496 | + } | |
| 497 | + }, | |
| 498 | + "node_modules/@jimp/custom/node_modules/@jimp/core": { | |
| 432 | 499 | "version": "0.22.12", |
| 433 | 500 | "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.22.12.tgz", |
| 434 | 501 | "integrity": "sha512-l0RR0dOPyzMKfjUW1uebzueFEDtCOj9fN6pyTYWWOM/VS4BciXQ1VVrJs8pO3kycGYZxncRKhCoygbNr8eEZQA==", |
| @@ -444,13 +511,67 @@ | ||
| 444 | 511 | "tinycolor2": "^1.6.0" |
| 445 | 512 | } |
| 446 | 513 | }, |
| 447 | 514 | "node_modules/@jimp/custom/node_modules/@jimp/utils": { |
| 448 | 515 | "version": "0.22.12", |
| 449 | 516 | "resolved": "https://registry.npmjs.org/@jimp/customutils/-/customutils-0.22.12.tgz", |
| 450 | 517 | "integrity": "sha512-xcmww1O/JFP2MrlGUMd3Q78S3Qu6W3mYTXYuIqFq33EorgYHVyJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/HqymHfXy9GjiCJ7OI+7lWx6nYFOzU7M4rd1QnMKXk8TrSwAE71zt716Q==", |
| 451 | 518 | "license": "MIT", |
| 452 | 519 | "dependencies": { |
| 453 | 520 | "@jimp/coreregenerator-runtime": "^0.2213.123" |
| 521 | + } | |
| 522 | + }, | |
| 523 | + "node_modules/@jimp/custom/node_modules/buffer": { | |
| 524 | + "version": "5.7.1", | |
| 525 | + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", | |
| 526 | + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", | |
| 527 | + "funding": [ | |
| 528 | + { | |
| 529 | + "type": "github", | |
| 530 | + "url": "https://github.com/sponsors/feross" | |
| 531 | + }, | |
| 532 | + { | |
| 533 | + "type": "patreon", | |
| 534 | + "url": "https://www.patreon.com/feross" | |
| 535 | + }, | |
| 536 | + { | |
| 537 | + "type": "consulting", | |
| 538 | + "url": "https://feross.org/support" | |
| 539 | + } | |
| 540 | + ], | |
| 541 | + "license": "MIT", | |
| 542 | + "dependencies": { | |
| 543 | + "base64-js": "^1.3.1", | |
| 544 | + "ieee754": "^1.1.13" | |
| 545 | + } | |
| 546 | + }, | |
| 547 | + "node_modules/@jimp/custom/node_modules/pixelmatch": { | |
| 548 | + "version": "4.0.2", | |
| 549 | + "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz", | |
| 550 | + "integrity": "sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==", | |
| 551 | + "license": "ISC", | |
| 552 | + "dependencies": { | |
| 553 | + "pngjs": "^3.0.0" | |
| 554 | + }, | |
| 555 | + "bin": { | |
| 556 | + "pixelmatch": "bin/pixelmatch" | |
| 557 | + } | |
| 558 | + }, | |
| 559 | + "node_modules/@jimp/custom/node_modules/pngjs": { | |
| 560 | + "version": "3.4.0", | |
| 561 | + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", | |
| 562 | + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", | |
| 563 | + "license": "MIT", | |
| 564 | + "engines": { | |
| 565 | + "node": ">=4.0.0" | |
| 566 | + } | |
| 567 | + }, | |
| 568 | + "node_modules/@jimp/file-ops": { | |
| 569 | + "version": "1.6.0", | |
| 570 | + "resolved": "https://registry.npmjs.org/@jimp/file-ops/-/file-ops-1.6.0.tgz", | |
| 571 | + "integrity": "sha512-Dx/bVDmgnRe1AlniRpCKrGRm5YvGmUwbDzt+MAkgmLGf+jvBT75hmMEZ003n9HQI/aPnm/YKnXjg/hOpzNCpHQ==", | |
| 572 | + "license": "MIT", | |
| 573 | + "engines": { | |
| 574 | + "node": ">=18" | |
| 454 | 575 | } |
| 455 | 576 | }, |
| 456 | 577 | "node_modules/@jimp/gif": { |
| @@ -467,6 +588,15 @@ | ||
| 467 | 588 | "@jimp/custom": ">=0.3.5" |
| 468 | 589 | } |
| 469 | 590 | }, |
| 591 | + "node_modules/@jimp/gif/node_modules/@jimp/utils": { | |
| 592 | + "version": "0.22.12", | |
| 593 | + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", | |
| 594 | + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", | |
| 595 | + "license": "MIT", | |
| 596 | + "dependencies": { | |
| 597 | + "regenerator-runtime": "^0.13.3" | |
| 598 | + } | |
| 599 | + }, | |
| 470 | 600 | "node_modules/@jimp/jpeg": { |
| 471 | 601 | "version": "0.22.12", |
| 472 | 602 | "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.22.12.tgz", |
| @@ -480,186 +610,237 @@ | ||
| 480 | 610 | "@jimp/custom": ">=0.3.5" |
| 481 | 611 | } |
| 482 | 612 | }, |
| 483 | 613 | "node_modules/@jimp/plugin-blitjpeg/node_modules/@jimp/utils": { |
| 484 | 614 | "version": "0.22.12", |
| 485 | 615 | "resolved": "https://registry.npmjs.org/@jimp/plugin-blitutils/-/plugin-blitutils-0.22.12.tgz", |
| 486 | 616 | "integrity": "sha512-xslz2ZoFZOPLY8EZ4dC29m168BtDx95D6K80TzgUi8gqT7LY6CsajWO0FAxDwHz6h0eomHMfyGX0stspBrTKnQyJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", |
| 487 | 617 | "license": "MIT", |
| 488 | 618 | "dependencies": { |
| 489 | 619 | "@jimp/utilsregenerator-runtime": "^0.2213.123" |
| 490 | - }, | |
| 491 | - "peerDependencies": { | |
| 492 | - "@jimp/custom": ">=0.3.5" | |
| 493 | 620 | } |
| 494 | 621 | }, |
| 495 | 622 | "node_modules/@jimp/pluginjs-blurbmp": { |
| 496 | 623 | "version": "01.226.120", |
| 497 | 624 | "resolved": "https://registry.npmjs.org/@jimp/pluginjs-blurbmp/-/pluginjs-blurbmp-01.226.120.tgz", |
| 498 | 625 | "integrity": "sha512-S0vJADTuh1Q9F+cXAwFPlrKWzDj2F9tFU6Q5PC/9JAbUvaaDuivpyWuImEKXVz5PUZw2NbpuSHjwssbTpOZ8F13iJX4uwe3yzLyBDXupR3SnL3htU7S3KEs4e6rjDP6gNEOXRFsWs6YD3hXuXd50jd8ummy+q2WSwuGkr8wi+Gw==", |
| 499 | 626 | "license": "MIT", |
| 500 | 627 | "dependencies": { |
| 501 | 628 | "@jimp/utilscore": "^01.226.120", |
| 629 | + "@jimp/types": "1.6.0", | |
| 630 | + "@jimp/utils": "1.6.0", | |
| 631 | + "bmp-ts": "^1.0.9" | |
| 502 | 632 | }, |
| 503 | 633 | "peerDependenciesengines": { |
| 504 | 634 | "@jimp/customnode": ">=0.3.518" |
| 505 | 635 | } |
| 506 | 636 | }, |
| 507 | 637 | "node_modules/@jimp/pluginjs-circlegif": { |
| 508 | 638 | "version": "01.226.120", |
| 509 | 639 | "resolved": "https://registry.npmjs.org/@jimp/pluginjs-circlegif/-/pluginjs-circlegif-01.226.120.tgz", |
| 510 | 640 | "integrity": "sha512-SWVXx1yiuj5jZtMijqUfvVOJBwOifFn0918ou4ftoHgegc5aHWW5dZbYPjvC9fLpvz7oSlptNl2Sxr1zwofjTgN9CZPHOrJTsAUoWkWZstLPpwT5AwJ0wge+47+ix3++SdSL/H2QzyMqxbcDYNFe4MoI5MIhATfb0/dl/wmX221g==", |
| 511 | 641 | "license": "MIT", |
| 512 | 642 | "dependencies": { |
| 513 | 643 | "@jimp/utilscore": "^01.226.120", |
| 644 | + "@jimp/types": "1.6.0", | |
| 645 | + "gifwrap": "^0.10.1", | |
| 646 | + "omggif": "^1.0.10" | |
| 514 | 647 | }, |
| 515 | 648 | "peerDependenciesengines": { |
| 516 | 649 | "@jimp/customnode": ">=0.3.518" |
| 517 | 650 | } |
| 518 | 651 | }, |
| 519 | 652 | "node_modules/@jimp/pluginjs-colorjpeg": { |
| 520 | 653 | "version": "01.226.120", |
| 521 | 654 | "resolved": "https://registry.npmjs.org/@jimp/pluginjs-colorjpeg/-/pluginjs-colorjpeg-01.226.120.tgz", |
| 522 | 655 | "integrity": "sha512-xImhTE5BpS8xa+mAN6j4sMRWaUgUDLoaGHhJhpC+r7SKKErYDR0WQV4yCE4gP6vgFDqeusblf5Pok6B2DUiMXplH8RhIKAryj1yn+N0gozD0F3Ka1LUSaMXrn7ZIA007SIAQ0khM1Uptxmpku/0MfbClx2r7pnJv9gWpAEJdMVA==", |
| 523 | 656 | "license": "MIT", |
| 524 | 657 | "dependencies": { |
| 525 | 658 | "@jimp/utilscore": "^01.226.120", |
| 526 | 659 | "tinycolor2@jimp/types": "^1.6.0", |
| 660 | + "jpeg-js": "^0.4.4" | |
| 527 | 661 | }, |
| 528 | 662 | "peerDependenciesengines": { |
| 529 | 663 | "@jimp/customnode": ">=0.3.518" |
| 530 | 664 | } |
| 531 | 665 | }, |
| 532 | 666 | "node_modules/@jimp/pluginjs-containpng": { |
| 533 | 667 | "version": "01.226.120", |
| 534 | 668 | "resolved": "https://registry.npmjs.org/@jimp/pluginjs-containpng/-/pluginjs-containpng-01.226.120.tgz", |
| 535 | 669 | "integrity": "sha512-Eo3DmfixJw3N79lWk8q/0SDYbqmKt1xSTJ69yy8XLYQj9svoBbyRpSnHR+n9hOw5pKXytHwUW6nU4u1wegHNoQAbQHScy3hDDgMRNfG0tPjL88AV6qKAILGReIa3ATpW5QFjBKpisvUaOqhzJ7Reic1oawx3Riyv152gaPfqsBVg==", |
| 536 | 670 | "license": "MIT", |
| 537 | 671 | "dependencies": { |
| 538 | 672 | "@jimp/utilscore": "^01.226.120", |
| 673 | + "@jimp/types": "1.6.0", | |
| 674 | + "pngjs": "^7.0.0" | |
| 539 | 675 | }, |
| 540 | 676 | "peerDependenciesengines": { |
| 541 | 677 | "@jimp/customnode": ">=0.3.518", |
| 542 | - "@jimp/plugin-blit": ">=0.3.5", | |
| 543 | - "@jimp/plugin-resize": ">=0.3.5", | |
| 544 | - "@jimp/plugin-scale": ">=0.3.5" | |
| 545 | 678 | } |
| 546 | 679 | }, |
| 547 | 680 | "node_modules/@jimp/pluginjs-covertiff": { |
| 548 | 681 | "version": "01.226.120", |
| 549 | 682 | "resolved": "https://registry.npmjs.org/@jimp/pluginjs-covertiff/-/pluginjs-covertiff-01.226.120.tgz", |
| 550 | 683 | "integrity": "sha512-z0w/1xH/vzhReR8/knZkpTNx7KO+E8a7fnasQ2wHG5ze6y5oL2dhH1UufNua8gLQXlv8/W56adijj3h0ZQUOiun3mXUv79zYEAKvE0O+4nJ1brhSd233HBJCo01BXArP7EhgtKvWJOZfRzdZSNv0Pu1rKtgM72qgtwe2tFvyw==", |
| 551 | 684 | "license": "MIT", |
| 552 | 685 | "dependencies": { |
| 553 | 686 | "@jimp/utilscore": "^01.226.120", |
| 687 | + "@jimp/types": "1.6.0", | |
| 688 | + "utif2": "^4.1.0" | |
| 554 | 689 | }, |
| 555 | 690 | "peerDependenciesengines": { |
| 556 | 691 | "@jimp/customnode": ">=0.3.518", |
| 557 | - "@jimp/plugin-crop": ">=0.3.5", | |
| 558 | - "@jimp/plugin-resize": ">=0.3.5", | |
| 559 | - "@jimp/plugin-scale": ">=0.3.5" | |
| 560 | 692 | } |
| 561 | 693 | }, |
| 562 | 694 | "node_modules/@jimp/plugin-cropblit": { |
| 563 | 695 | "version": "01.226.120", |
| 564 | 696 | "resolved": "https://registry.npmjs.org/@jimp/plugin-cropblit/-/plugin-cropblit-01.226.120.tgz", |
| 565 | 697 | "integrity": "sha512-FNuUN0OVzRCozx8XSgP9MyLGMxNHHJMFtM+LJuFjn1mu3k0VQxrzqbN06yIl46TVejhyAhcq5gLzqmSCHvlcBVwuRWl1csi7qilnSK8uxK4RJMSuVeBiO1AY0+7APnfUbQNZm6hCe0CCFv1Iyw1D/Dhb8ph8fQgm5mwM0eSxgVA==", |
| 566 | 698 | "license": "MIT", |
| 567 | 699 | "dependencies": { |
| 568 | 700 | "@jimp/utilstypes": "^01.226.120", |
| 701 | + "@jimp/utils": "1.6.0", | |
| 702 | + "zod": "^3.23.8" | |
| 569 | 703 | }, |
| 570 | 704 | "peerDependenciesengines": { |
| 571 | 705 | "@jimp/customnode": ">=0.3.518" |
| 572 | 706 | } |
| 573 | 707 | }, |
| 574 | 708 | "node_modules/@jimp/plugin-displaceblur": { |
| 575 | 709 | "version": "01.226.120", |
| 576 | 710 | "resolved": "https://registry.npmjs.org/@jimp/plugin-displaceblur/-/plugin-displaceblur-01.226.120.tgz", |
| 577 | 711 | "integrity": "sha512-qpRM8JRicxfK6aPPqKZA6+GzBwUIitiHaZw0QrJ64Ygd3zrM7iic1OTwUCb0g/rN5y+AsTc7BXrUnmdEsT3IfuCXCJJNs8SZzP0MkZ1eTvuwK9ZidCuMo4+37k2x7QcyCvmKXY4haUrSIsBug4S3CAJ3xkzCidRwYXB5CyGZTw==", |
| 578 | 712 | "license": "MIT", |
| 713 | + "peer": true, | |
| 579 | 714 | "dependencies": { |
| 580 | 715 | "@jimp/utilscore": "^01.226.120", |
| 716 | + "@jimp/utils": "1.6.0" | |
| 581 | 717 | }, |
| 582 | 718 | "peerDependenciesengines": { |
| 583 | 719 | "@jimp/customnode": ">=0.3.518" |
| 584 | 720 | } |
| 585 | 721 | }, |
| 586 | 722 | "node_modules/@jimp/plugin-dithercircle": { |
| 587 | 723 | "version": "01.226.120", |
| 588 | 724 | "resolved": "https://registry.npmjs.org/@jimp/plugin-dithercircle/-/plugin-dithercircle-01.226.120.tgz", |
| 589 | 725 | "integrity": "sha512-jYgGdSdSKl1UUEanX8A85v4+QUmxt1Gp+PE8vHFwlamaKk89sLtdMKAXfDp3HNaG30SPZW6AQ7dtAtTnoRKorRi+PXQe7eVE3eNeSZX4inCq63EHL7cX580dMqkoC3ZLw5yCJjKqXRgkewS5bvj8DEh87Ko1ydJfzqS3P2tdWw==", |
| 590 | 726 | "license": "MIT", |
| 591 | 727 | "dependencies": { |
| 592 | 728 | "@jimp/utilstypes": "^01.226.120", |
| 729 | + "zod": "^3.23.8" | |
| 593 | 730 | }, |
| 594 | 731 | "peerDependenciesengines": { |
| 595 | 732 | "@jimp/customnode": ">=0.3.518" |
| 596 | 733 | } |
| 597 | 734 | }, |
| 598 | 735 | "node_modules/@jimp/plugin-fisheyecolor": { |
| 599 | 736 | "version": "01.226.120", |
| 600 | 737 | "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheyecolor/-/plugin-fisheyecolor-01.226.120.tgz", |
| 601 | 738 | "integrity": "sha512-LGuUTsFgJ5q8IVCpkBsxIXM+fOp6KBKrmLkX4LfyCy8IIsROwoUvsUPKzutSqMJnsm3JGDW2eOmWIS/jJpPaeaishjlxvczjgII45XOXTrsyfblyMZg3a9eAo0P7VPH4+QCrvyNQwaYatbAIamSIN1YzxmO3DkIZXzRjFSz1SA==", |
| 602 | 739 | "license": "MIT", |
| 603 | 740 | "dependencies": { |
| 604 | 741 | "@jimp/utilscore": "^01.226.120", |
| 742 | + "@jimp/types": "1.6.0", | |
| 743 | + "@jimp/utils": "1.6.0", | |
| 744 | + "tinycolor2": "^1.6.0", | |
| 745 | + "zod": "^3.23.8" | |
| 605 | 746 | }, |
| 606 | 747 | "peerDependenciesengines": { |
| 607 | 748 | "@jimp/customnode": ">=0.3.518" |
| 608 | 749 | } |
| 609 | 750 | }, |
| 610 | 751 | "node_modules/@jimp/plugin-flipcontain": { |
| 611 | 752 | "version": "01.226.120", |
| 612 | 753 | "resolved": "https://registry.npmjs.org/@jimp/plugin-flipcontain/-/plugin-flipcontain-01.226.120.tgz", |
| 613 | 754 | "integrity": "sha512-m251Rop7GN8W0YooN/rF9LWk6kNclngyjIJsn+Vdq/VXHToGQ6EGveOSTSQaX2Isi9f9lCDLxtQg9bB4yOBOxtY9IPAtEfES8J1n9Ddx+inBIb7nlaLLxnvHX8QXhGBYT1/QTU/JYkGaAkIGoPnyYvmLEDqMz2SGihqlpqfzQ==", |
| 614 | 755 | "license": "MIT", |
| 615 | 756 | "dependencies": { |
| 616 | 757 | "@jimp/utilscore": "^01.226.120", |
| 758 | + "@jimp/plugin-blit": "1.6.0", | |
| 759 | + "@jimp/plugin-resize": "1.6.0", | |
| 760 | + "@jimp/types": "1.6.0", | |
| 761 | + "@jimp/utils": "1.6.0", | |
| 762 | + "zod": "^3.23.8" | |
| 617 | 763 | }, |
| 618 | 764 | "peerDependenciesengines": { |
| 619 | 765 | "@jimp/customnode": ">=0.3.518", |
| 620 | - "@jimp/plugin-rotate": ">=0.3.5" | |
| 621 | 766 | } |
| 622 | 767 | }, |
| 623 | 768 | "node_modules/@jimp/plugin-gaussiancover": { |
| 624 | 769 | "version": "01.226.120", |
| 625 | 770 | "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussiancover/-/plugin-gaussiancover-01.226.120.tgz", |
| 626 | 771 | "integrity": "sha512-sBfbzoOmJ6FczfG2PquiK84NtVGeScw97JsCC3rpQv1PHVWyW+uqWFF53+n3c8Y0P2HWlUjflEla2hIow0h6yqSC269YUJ8HC3Q/vWShvhgMpCi2V55sMlbkkTTx4zPvd8mWZlC0ykrNDeAy9IJegrQ7v5E99rJwmQu25lygKLA==", |
| 627 | 772 | "license": "MIT", |
| 628 | 773 | "dependencies": { |
| 629 | 774 | "@jimp/utilscore": "^01.226.120", |
| 775 | + "@jimp/plugin-crop": "1.6.0", | |
| 776 | + "@jimp/plugin-resize": "1.6.0", | |
| 777 | + "@jimp/types": "1.6.0", | |
| 778 | + "zod": "^3.23.8" | |
| 630 | 779 | }, |
| 631 | 780 | "peerDependenciesengines": { |
| 632 | 781 | "@jimp/customnode": ">=0.3.518" |
| 633 | 782 | } |
| 634 | 783 | }, |
| 635 | 784 | "node_modules/@jimp/plugin-invertcrop": { |
| 636 | 785 | "version": "01.226.120", |
| 637 | 786 | "resolved": "https://registry.npmjs.org/@jimp/plugin-invertcrop/-/plugin-invertcrop-01.226.120.tgz", |
| 638 | 787 | "integrity": "sha512-NKqZkEhvs+6rwxdB21USdySCUDI+7OCR6PYijaA/iizXXodpxOGvT/smd/lxeXsZ/empHmFFFJ/FaXcYh19Tm04dGDaXcNF/dN5nm6GFa393eDIzbi1smBqkUPTE+xQpRwSWMAf01D5OC3ZWB+xZsNla93BDS9iCkLHA8wang==", |
| 639 | 788 | "license": "MIT", |
| 640 | 789 | "dependencies": { |
| 641 | 790 | "@jimp/utilscore": "^01.226.120", |
| 791 | + "@jimp/types": "1.6.0", | |
| 792 | + "@jimp/utils": "1.6.0", | |
| 793 | + "zod": "^3.23.8" | |
| 642 | 794 | }, |
| 643 | 795 | "peerDependenciesengines": { |
| 644 | 796 | "@jimp/customnode": ">=0.3.518" |
| 645 | 797 | } |
| 646 | 798 | }, |
| 647 | 799 | "node_modules/@jimp/plugin-maskdisplace": { |
| 648 | 800 | "version": "01.226.120", |
| 649 | 801 | "resolved": "https://registry.npmjs.org/@jimp/plugin-maskdisplace/-/plugin-maskdisplace-01.226.120.tgz", |
| 650 | 802 | "integrity": "sha512-4AWZg4Y10X9qwr5F+DomtpUA099jRV8IEZUfn1wLv6Bo5ME356XSACEF55485j5nGdiyJ9hYzjQP9nGgxNJaZ4SAOqpd+nem4NRJC7L/82vxzLCgXKTxvNvBcNmJjT9yS1LAAmiJGdWKXG63/NAk5sFaIeD7SQ0Occ26uIng5Q==", |
| 651 | 803 | "license": "MIT", |
| 652 | 804 | "dependencies": { |
| 653 | 805 | "@jimp/utilstypes": "^01.226.120", |
| 806 | + "@jimp/utils": "1.6.0", | |
| 807 | + "zod": "^3.23.8" | |
| 654 | 808 | }, |
| 655 | 809 | "peerDependenciesengines": { |
| 656 | 810 | "@jimp/customnode": ">=0.3.518" |
| 657 | 811 | } |
| 658 | 812 | }, |
| 659 | 813 | "node_modules/@jimp/plugin-normalizefisheye": { |
| 814 | + "version": "1.6.0", | |
| 815 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-1.6.0.tgz", | |
| 816 | + "integrity": "sha512-E5QHKWSCBFtpgZarlmN3Q6+rTQxjirFqo44ohoTjzYVrDI6B6beXNnPIThJgPr0Y9GwfzgyarKvQuQuqCnnfbA==", | |
| 817 | + "license": "MIT", | |
| 818 | + "dependencies": { | |
| 819 | + "@jimp/types": "1.6.0", | |
| 820 | + "@jimp/utils": "1.6.0", | |
| 821 | + "zod": "^3.23.8" | |
| 822 | + }, | |
| 823 | + "engines": { | |
| 824 | + "node": ">=18" | |
| 825 | + } | |
| 826 | + }, | |
| 827 | + "node_modules/@jimp/plugin-flip": { | |
| 828 | + "version": "1.6.0", | |
| 829 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-1.6.0.tgz", | |
| 830 | + "integrity": "sha512-/+rJVDuBIVOgwoyVkBjUFHtP+wmW0r+r5OQ2GpatQofToPVbJw1DdYWXlwviSx7hvixTWLKVgRWQ5Dw862emDg==", | |
| 831 | + "license": "MIT", | |
| 832 | + "dependencies": { | |
| 833 | + "@jimp/types": "1.6.0", | |
| 834 | + "zod": "^3.23.8" | |
| 835 | + }, | |
| 836 | + "engines": { | |
| 837 | + "node": ">=18" | |
| 838 | + } | |
| 839 | + }, | |
| 840 | + "node_modules/@jimp/plugin-gaussian": { | |
| 660 | 841 | "version": "0.22.12", |
| 661 | 842 | "resolved": "https://registry.npmjs.org/@jimp/plugin-normalizegaussian/-/plugin-normalizegaussian-0.22.12.tgz", |
| 662 | 843 | "integrity": "sha512-0So0rexQivnWgnhacX4cfkM2223YdExnJTTy6d06WbkfZk5alHUx8MM3yEzwoCN0ErO7oyqEWRnEkGCsBfbzoOmJ6FczfG2PquiK84NtVGeScw97JsCC3rpQv1PHVWyW+As1FtAuqWFF53+n3c8Y0P2HWlUjflEla2h/vWShvhg==", |
| 663 | 844 | "license": "MIT", |
| 664 | 845 | "dependencies": { |
| 665 | 846 | "@jimp/utils": "^0.22.12" |
| @@ -668,24 +849,40 @@ | ||
| 668 | 849 | "@jimp/custom": ">=0.3.5" |
| 669 | 850 | } |
| 670 | 851 | }, |
| 671 | 852 | "node_modules/@jimp/plugin-printgaussian/node_modules/@jimp/utils": { |
| 672 | 853 | "version": "0.22.12", |
| 673 | 854 | "resolved": "https://registry.npmjs.org/@jimp/plugin-printutils/-/plugin-printutils-0.22.12.tgz", |
| 674 | 855 | "integrity": "sha512-c7TnhHlxm87DJeSnwr/XOLjJU/whoiKYY7r21SbuJ5nuH+7a78EW1teOaj5gEr2wYEd7QtkFqGlmyGXYyJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/YclyQnMKXk8TrSwAE71zt716Q==", |
| 675 | 856 | "license": "MIT", |
| 676 | 857 | "dependencies": { |
| 677 | 858 | "@jimp/utilsregenerator-runtime": "^0.2213.123", |
| 678 | - "load-bmfont": "^1.4.1" | |
| 859 | + } | |
| 860 | + }, | |
| 861 | + "node_modules/@jimp/plugin-hash": { | |
| 862 | + "version": "1.6.0", | |
| 863 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-hash/-/plugin-hash-1.6.0.tgz", | |
| 864 | + "integrity": "sha512-wWzl0kTpDJgYVbZdajTf+4NBSKvmI3bRI8q6EH9CVeIHps9VWVsUvEyb7rpbcwVLWYuzDtP2R0lTT6WeBNQH9Q==", | |
| 865 | + "license": "MIT", | |
| 866 | + "dependencies": { | |
| 867 | + "@jimp/core": "1.6.0", | |
| 868 | + "@jimp/js-bmp": "1.6.0", | |
| 869 | + "@jimp/js-jpeg": "1.6.0", | |
| 870 | + "@jimp/js-png": "1.6.0", | |
| 871 | + "@jimp/js-tiff": "1.6.0", | |
| 872 | + "@jimp/plugin-color": "1.6.0", | |
| 873 | + "@jimp/plugin-resize": "1.6.0", | |
| 874 | + "@jimp/types": "1.6.0", | |
| 875 | + "@jimp/utils": "1.6.0", | |
| 876 | + "any-base": "^1.1.0" | |
| 679 | 877 | }, |
| 680 | 878 | "peerDependenciesengines": { |
| 681 | 879 | "@jimp/customnode": ">=0.3.518", |
| 682 | - "@jimp/plugin-blit": ">=0.3.5" | |
| 683 | 880 | } |
| 684 | 881 | }, |
| 685 | 882 | "node_modules/@jimp/plugin-resizeinvert": { |
| 686 | 883 | "version": "0.22.12", |
| 687 | 884 | "resolved": "https://registry.npmjs.org/@jimp/plugin-resizeinvert/-/plugin-resizeinvert-0.22.12.tgz", |
| 688 | 885 | "integrity": "sha512-3NyTPlPbTnGKDIbaBgQ3HbE6wXbAlFfxHVERmrbqAi8R3r6fQPxpCauA8UVDnieg5eo04D0T8nnnNIXN+6rwxdB+7OCR6PYijaA/iizXXodpxOGvT/ismd/sXglxeXsZ/empHmFFFJ/FaXcYh19Tm04dGDaXcNF/dN5nm6+xQ==", |
| 689 | 886 | "license": "MIT", |
| 690 | 887 | "dependencies": { |
| 691 | 888 | "@jimp/utils": "^0.22.12" |
| @@ -694,19 +891,91 @@ | ||
| 694 | 891 | "@jimp/custom": ">=0.3.5" |
| 695 | 892 | } |
| 696 | 893 | }, |
| 697 | 894 | "node_modules/@jimp/plugin-rotateinvert/node_modules/@jimp/utils": { |
| 698 | 895 | "version": "0.22.12", |
| 699 | 896 | "resolved": "https://registry.npmjs.org/@jimp/plugin-rotateutils/-/plugin-rotateutils-0.22.12.tgz", |
| 700 | 897 | "integrity": "sha512-9YNEt7BPAFfTls2FGfKBVgwwLUuKqy+E8bDGGEsOqHtbuhbshVGxN2WMZaD4gh5IDWvR+emmmPPWGgaYNYt1gAyJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", |
| 898 | + "license": "MIT", | |
| 899 | + "dependencies": { | |
| 900 | + "regenerator-runtime": "^0.13.3" | |
| 901 | + } | |
| 902 | + }, | |
| 903 | + "node_modules/@jimp/plugin-mask": { | |
| 904 | + "version": "1.6.0", | |
| 905 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-1.6.0.tgz", | |
| 906 | + "integrity": "sha512-Cwy7ExSJMZszvkad8NV8o/Z92X2kFUFM8mcDAhNVxU0Q6tA0op2UKRJY51eoK8r6eds/qak3FQkXakvNabdLnA==", | |
| 907 | + "license": "MIT", | |
| 908 | + "dependencies": { | |
| 909 | + "@jimp/types": "1.6.0", | |
| 910 | + "zod": "^3.23.8" | |
| 911 | + }, | |
| 912 | + "engines": { | |
| 913 | + "node": ">=18" | |
| 914 | + } | |
| 915 | + }, | |
| 916 | + "node_modules/@jimp/plugin-normalize": { | |
| 917 | + "version": "0.22.12", | |
| 918 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.22.12.tgz", | |
| 919 | + "integrity": "sha512-0So0rexQivnWgnhacX4cfkM2223YdExnJTTy6d06WbkfZk5alHUx8MM3yEzwoCN0ErO7oyqEWRnEkGC+As1FtA==", | |
| 701 | 920 | "license": "MIT", |
| 702 | 921 | "dependencies": { |
| 703 | 922 | "@jimp/utils": "^0.22.12" |
| 704 | 923 | }, |
| 705 | 924 | "peerDependencies": { |
| 706 | 925 | "@jimp/custom": ">=0.3.5", |
| 707 | - "@jimp/plugin-blit": ">=0.3.5", | |
| 926 | + } | |
| 708 | - "@jimp/plugin-crop": ">=0.3.5", | |
| 927 | + }, | |
| 709 | - "@jimp/plugin-resize": ">=0.3.5" | |
| 928 | + "node_modules/@jimp/plugin-normalize/node_modules/@jimp/utils": { | |
| 929 | + "version": "0.22.12", | |
| 930 | + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", | |
| 931 | + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", | |
| 932 | + "license": "MIT", | |
| 933 | + "dependencies": { | |
| 934 | + "regenerator-runtime": "^0.13.3" | |
| 935 | + } | |
| 936 | + }, | |
| 937 | + "node_modules/@jimp/plugin-quantize": { | |
| 938 | + "version": "1.6.0", | |
| 939 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-quantize/-/plugin-quantize-1.6.0.tgz", | |
| 940 | + "integrity": "sha512-EmzZ/s9StYQwbpG6rUGBCisc3f64JIhSH+ncTJd+iFGtGo0YvSeMdAd+zqgiHpfZoOL54dNavZNjF4otK+mvlg==", | |
| 941 | + "license": "MIT", | |
| 942 | + "dependencies": { | |
| 943 | + "image-q": "^4.0.0", | |
| 944 | + "zod": "^3.23.8" | |
| 945 | + }, | |
| 946 | + "engines": { | |
| 947 | + "node": ">=18" | |
| 948 | + } | |
| 949 | + }, | |
| 950 | + "node_modules/@jimp/plugin-resize": { | |
| 951 | + "version": "1.6.0", | |
| 952 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-1.6.0.tgz", | |
| 953 | + "integrity": "sha512-uSUD1mqXN9i1SGSz5ov3keRZ7S9L32/mAQG08wUwZiEi5FpbV0K8A8l1zkazAIZi9IJzLlTauRNU41Mi8IF9fA==", | |
| 954 | + "license": "MIT", | |
| 955 | + "dependencies": { | |
| 956 | + "@jimp/core": "1.6.0", | |
| 957 | + "@jimp/types": "1.6.0", | |
| 958 | + "zod": "^3.23.8" | |
| 959 | + }, | |
| 960 | + "engines": { | |
| 961 | + "node": ">=18" | |
| 962 | + } | |
| 963 | + }, | |
| 964 | + "node_modules/@jimp/plugin-rotate": { | |
| 965 | + "version": "1.6.0", | |
| 966 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-1.6.0.tgz", | |
| 967 | + "integrity": "sha512-JagdjBLnUZGSG4xjCLkIpQOZZ3Mjbg8aGCCi4G69qR+OjNpOeGI7N2EQlfK/WE8BEHOW5vdjSyglNqcYbQBWRw==", | |
| 968 | + "license": "MIT", | |
| 969 | + "dependencies": { | |
| 970 | + "@jimp/core": "1.6.0", | |
| 971 | + "@jimp/plugin-crop": "1.6.0", | |
| 972 | + "@jimp/plugin-resize": "1.6.0", | |
| 973 | + "@jimp/types": "1.6.0", | |
| 974 | + "@jimp/utils": "1.6.0", | |
| 975 | + "zod": "^3.23.8" | |
| 976 | + }, | |
| 977 | + "engines": { | |
| 978 | + "node": ">=18" | |
| 710 | 979 | } |
| 711 | 980 | }, |
| 712 | 981 | "node_modules/@jimp/plugin-scale": { |
| @@ -722,6 +991,15 @@ | ||
| 722 | 991 | "@jimp/plugin-resize": ">=0.3.5" |
| 723 | 992 | } |
| 724 | 993 | }, |
| 994 | + "node_modules/@jimp/plugin-scale/node_modules/@jimp/utils": { | |
| 995 | + "version": "0.22.12", | |
| 996 | + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", | |
| 997 | + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", | |
| 998 | + "license": "MIT", | |
| 999 | + "dependencies": { | |
| 1000 | + "regenerator-runtime": "^0.13.3" | |
| 1001 | + } | |
| 1002 | + }, | |
| 725 | 1003 | "node_modules/@jimp/plugin-shadow": { |
| 726 | 1004 | "version": "0.22.12", |
| 727 | 1005 | "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.22.12.tgz", |
| @@ -736,18 +1014,30 @@ | ||
| 736 | 1014 | "@jimp/plugin-resize": ">=0.3.5" |
| 737 | 1015 | } |
| 738 | 1016 | }, |
| 739 | 1017 | "node_modules/@jimp/plugin-thresholdshadow/node_modules/@jimp/utils": { |
| 740 | 1018 | "version": "0.22.12", |
| 741 | 1019 | "resolved": "https://registry.npmjs.org/@jimp/plugin-thresholdutils/-/plugin-thresholdutils-0.22.12.tgz", |
| 742 | 1020 | "integrity": "sha512-4x5GrQr1a/9L0paBC/MZZJjjgjxLYrqSmWd+e+QfAEPvmRxdRoQ5uKEuNgXnm9yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/weHQBTnQBQsOY2iFja+XGAwnMKXk8TrSwAE71zt716Q==", |
| 743 | 1021 | "license": "MIT", |
| 744 | 1022 | "dependencies": { |
| 745 | 1023 | "@jimp/utilsregenerator-runtime": "^0.2213.123" |
| 1024 | + } | |
| 1025 | + }, | |
| 1026 | + "node_modules/@jimp/plugin-threshold": { | |
| 1027 | + "version": "1.6.0", | |
| 1028 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-1.6.0.tgz", | |
| 1029 | + "integrity": "sha512-M59m5dzLoHOVWdM41O8z9SyySzcDn43xHseOH0HavjsfQsT56GGCC4QzU1banJidbUrePhzoEdS42uFE8Fei8w==", | |
| 1030 | + "license": "MIT", | |
| 1031 | + "dependencies": { | |
| 1032 | + "@jimp/core": "1.6.0", | |
| 1033 | + "@jimp/plugin-color": "1.6.0", | |
| 1034 | + "@jimp/plugin-hash": "1.6.0", | |
| 1035 | + "@jimp/types": "1.6.0", | |
| 1036 | + "@jimp/utils": "1.6.0", | |
| 1037 | + "zod": "^3.23.8" | |
| 746 | 1038 | }, |
| 747 | 1039 | "peerDependenciesengines": { |
| 748 | 1040 | "@jimp/customnode": ">=0.3.518", |
| 749 | - "@jimp/plugin-color": ">=0.8.0", | |
| 750 | - "@jimp/plugin-resize": ">=0.8.0" | |
| 751 | 1041 | } |
| 752 | 1042 | }, |
| 753 | 1043 | "node_modules/@jimp/plugins": { |
| @@ -783,6 +1073,222 @@ | ||
| 783 | 1073 | "@jimp/custom": ">=0.3.5" |
| 784 | 1074 | } |
| 785 | 1075 | }, |
| 1076 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-blit": { | |
| 1077 | + "version": "0.22.12", | |
| 1078 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.22.12.tgz", | |
| 1079 | + "integrity": "sha512-xslz2ZoFZOPLY8EZ4dC29m168BtDx95D6K80TzgUi8gqT7LY6CsajWO0FAxDwHz6h0eomHMfyGX0stspBrTKnQ==", | |
| 1080 | + "license": "MIT", | |
| 1081 | + "dependencies": { | |
| 1082 | + "@jimp/utils": "^0.22.12" | |
| 1083 | + }, | |
| 1084 | + "peerDependencies": { | |
| 1085 | + "@jimp/custom": ">=0.3.5" | |
| 1086 | + } | |
| 1087 | + }, | |
| 1088 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-blur": { | |
| 1089 | + "version": "0.22.12", | |
| 1090 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.22.12.tgz", | |
| 1091 | + "integrity": "sha512-S0vJADTuh1Q9F+cXAwFPlrKWzDj2F9t/9JAbUvaaDuivpyWuImEKXVz5PUZw2NbpuSHjwssbTpOZ8F13iJX4uw==", | |
| 1092 | + "license": "MIT", | |
| 1093 | + "dependencies": { | |
| 1094 | + "@jimp/utils": "^0.22.12" | |
| 1095 | + }, | |
| 1096 | + "peerDependencies": { | |
| 1097 | + "@jimp/custom": ">=0.3.5" | |
| 1098 | + } | |
| 1099 | + }, | |
| 1100 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-circle": { | |
| 1101 | + "version": "0.22.12", | |
| 1102 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.22.12.tgz", | |
| 1103 | + "integrity": "sha512-SWVXx1yiuj5jZtMijqUfvVOJBwOifFn0918ou4ftoHgegc5aHWW5dZbYPjvC9fLpvz7oSlptNl2Sxr1zwofjTg==", | |
| 1104 | + "license": "MIT", | |
| 1105 | + "dependencies": { | |
| 1106 | + "@jimp/utils": "^0.22.12" | |
| 1107 | + }, | |
| 1108 | + "peerDependencies": { | |
| 1109 | + "@jimp/custom": ">=0.3.5" | |
| 1110 | + } | |
| 1111 | + }, | |
| 1112 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-color": { | |
| 1113 | + "version": "0.22.12", | |
| 1114 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.22.12.tgz", | |
| 1115 | + "integrity": "sha512-xImhTE5BpS8xa+mAN6j4sMRWaUgUDLoaGHhJhpC+r7SKKErYDR0WQV4yCE4gP+N0gozD0F3Ka1LUSaMXrn7ZIA==", | |
| 1116 | + "license": "MIT", | |
| 1117 | + "dependencies": { | |
| 1118 | + "@jimp/utils": "^0.22.12", | |
| 1119 | + "tinycolor2": "^1.6.0" | |
| 1120 | + }, | |
| 1121 | + "peerDependencies": { | |
| 1122 | + "@jimp/custom": ">=0.3.5" | |
| 1123 | + } | |
| 1124 | + }, | |
| 1125 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-contain": { | |
| 1126 | + "version": "0.22.12", | |
| 1127 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.22.12.tgz", | |
| 1128 | + "integrity": "sha512-Eo3DmfixJw3N79lWk8q/0SDYbqmKt1xSTJ69yy8XLYQj9svoBbyRpSnHR+n9hOw5pKXytHwUW6nU4u1wegHNoQ==", | |
| 1129 | + "license": "MIT", | |
| 1130 | + "dependencies": { | |
| 1131 | + "@jimp/utils": "^0.22.12" | |
| 1132 | + }, | |
| 1133 | + "peerDependencies": { | |
| 1134 | + "@jimp/custom": ">=0.3.5", | |
| 1135 | + "@jimp/plugin-blit": ">=0.3.5", | |
| 1136 | + "@jimp/plugin-resize": ">=0.3.5", | |
| 1137 | + "@jimp/plugin-scale": ">=0.3.5" | |
| 1138 | + } | |
| 1139 | + }, | |
| 1140 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-cover": { | |
| 1141 | + "version": "0.22.12", | |
| 1142 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.22.12.tgz", | |
| 1143 | + "integrity": "sha512-z0w/1xH/v/knZkpTNx+E8a7fnasQ2wHG5ze6y5oL2dhH1UufNua8gLQXlv8/W56+4nJ1brhSd233HBJCo01BXA==", | |
| 1144 | + "license": "MIT", | |
| 1145 | + "dependencies": { | |
| 1146 | + "@jimp/utils": "^0.22.12" | |
| 1147 | + }, | |
| 1148 | + "peerDependencies": { | |
| 1149 | + "@jimp/custom": ">=0.3.5", | |
| 1150 | + "@jimp/plugin-crop": ">=0.3.5", | |
| 1151 | + "@jimp/plugin-resize": ">=0.3.5", | |
| 1152 | + "@jimp/plugin-scale": ">=0.3.5" | |
| 1153 | + } | |
| 1154 | + }, | |
| 1155 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-crop": { | |
| 1156 | + "version": "0.22.12", | |
| 1157 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.22.12.tgz", | |
| 1158 | + "integrity": "sha512-FNuUN0OVzRCozx8XSgP9MyLGMxNHHJMFt+LJuFjn1mu3k0VQxrzqbN06yIl46TVejhyAhcq5gLzqmSCHvlcBVw==", | |
| 1159 | + "license": "MIT", | |
| 1160 | + "dependencies": { | |
| 1161 | + "@jimp/utils": "^0.22.12" | |
| 1162 | + }, | |
| 1163 | + "peerDependencies": { | |
| 1164 | + "@jimp/custom": ">=0.3.5" | |
| 1165 | + } | |
| 1166 | + }, | |
| 1167 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-displace": { | |
| 1168 | + "version": "0.22.12", | |
| 1169 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.22.12.tgz", | |
| 1170 | + "integrity": "sha512-qpRM8JRicxfK6aPPqKZA6+GzBwUIitiHaZw0QrJ64Ygd3+AsTc7BXr+37k2x7QcyCvmKXY4haUrSIsBug4S3CA==", | |
| 1171 | + "license": "MIT", | |
| 1172 | + "dependencies": { | |
| 1173 | + "@jimp/utils": "^0.22.12" | |
| 1174 | + }, | |
| 1175 | + "peerDependencies": { | |
| 1176 | + "@jimp/custom": ">=0.3.5" | |
| 1177 | + } | |
| 1178 | + }, | |
| 1179 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-dither": { | |
| 1180 | + "version": "0.22.12", | |
| 1181 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.22.12.tgz", | |
| 1182 | + "integrity": "sha512-jYgGdSdSKl1UUEanX8A85v4+QUm+PE8vHFwlamaKk89s+PXQe7eVE3eNeSZX4inCq63EHL7cX580dMqkoC3ZLw==", | |
| 1183 | + "license": "MIT", | |
| 1184 | + "dependencies": { | |
| 1185 | + "@jimp/utils": "^0.22.12" | |
| 1186 | + }, | |
| 1187 | + "peerDependencies": { | |
| 1188 | + "@jimp/custom": ">=0.3.5" | |
| 1189 | + } | |
| 1190 | + }, | |
| 1191 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-fisheye": { | |
| 1192 | + "version": "0.22.12", | |
| 1193 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.22.12.tgz", | |
| 1194 | + "integrity": "sha512-LGuUTsFg+fOp6KBKrmLkX4LfyCy8IIsROwoUvsUPKzutSqMJnsm3JGDW2eOmWIS/jJpPaeaishjlxvczjgII+Q==", | |
| 1195 | + "license": "MIT", | |
| 1196 | + "dependencies": { | |
| 1197 | + "@jimp/utils": "^0.22.12" | |
| 1198 | + }, | |
| 1199 | + "peerDependencies": { | |
| 1200 | + "@jimp/custom": ">=0.3.5" | |
| 1201 | + } | |
| 1202 | + }, | |
| 1203 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-flip": { | |
| 1204 | + "version": "0.22.12", | |
| 1205 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.22.12.tgz", | |
| 1206 | + "integrity": "sha512-m251Rop7GN8W0Yo/rF9LWk6kNclngyjIJs/VXHToGQ6EGveOSTSQaX2Isi9f9lCDLxt+inBIb7nlaLLxnvHX8Q==", | |
| 1207 | + "license": "MIT", | |
| 1208 | + "dependencies": { | |
| 1209 | + "@jimp/utils": "^0.22.12" | |
| 1210 | + }, | |
| 1211 | + "peerDependencies": { | |
| 1212 | + "@jimp/custom": ">=0.3.5", | |
| 1213 | + "@jimp/plugin-rotate": ">=0.3.5" | |
| 1214 | + } | |
| 1215 | + }, | |
| 1216 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-mask": { | |
| 1217 | + "version": "0.22.12", | |
| 1218 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.22.12.tgz", | |
| 1219 | + "integrity": "sha512-4AWZg+DomtpUA099jRV8IEZUfn1wLv6+nem4NRJC7L/82vxzLCgXKTxvNvBcNmJjT9yS1LAAmiJGdWKXG63/NA==", | |
| 1220 | + "license": "MIT", | |
| 1221 | + "dependencies": { | |
| 1222 | + "@jimp/utils": "^0.22.12" | |
| 1223 | + }, | |
| 1224 | + "peerDependencies": { | |
| 1225 | + "@jimp/custom": ">=0.3.5" | |
| 1226 | + } | |
| 1227 | + }, | |
| 1228 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-print": { | |
| 1229 | + "version": "0.22.12", | |
| 1230 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.22.12.tgz", | |
| 1231 | + "integrity": "sha512-c7TnhHlxm87DJeSnwr/XOLjJU/whoiKYY7r21SbuJ5nuH+7a78EW1teOaj5gEr2wYEd7QtkFqGlmyGXY/YclyQ==", | |
| 1232 | + "license": "MIT", | |
| 1233 | + "dependencies": { | |
| 1234 | + "@jimp/utils": "^0.22.12", | |
| 1235 | + "load-bmfont": "^1.4.1" | |
| 1236 | + }, | |
| 1237 | + "peerDependencies": { | |
| 1238 | + "@jimp/custom": ">=0.3.5", | |
| 1239 | + "@jimp/plugin-blit": ">=0.3.5" | |
| 1240 | + } | |
| 1241 | + }, | |
| 1242 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-resize": { | |
| 1243 | + "version": "0.22.12", | |
| 1244 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.22.12.tgz", | |
| 1245 | + "integrity": "sha512-3NyTPlPbTnGKDIbaBgQ3HbE6wXbAlFfxHVERmrbqAi8R3r6fQPxpCauA8UVDnieg5eo04D0T8nnnNIX//i/sXg==", | |
| 1246 | + "license": "MIT", | |
| 1247 | + "dependencies": { | |
| 1248 | + "@jimp/utils": "^0.22.12" | |
| 1249 | + }, | |
| 1250 | + "peerDependencies": { | |
| 1251 | + "@jimp/custom": ">=0.3.5" | |
| 1252 | + } | |
| 1253 | + }, | |
| 1254 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-rotate": { | |
| 1255 | + "version": "0.22.12", | |
| 1256 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.22.12.tgz", | |
| 1257 | + "integrity": "sha512-9YNEt7BPAFfTls2FGfKBVgwwLUuKqy+E8bDGGEsOqHtbuhbshVGxN2WMZaD4gh5IDWvR+emmmPPWGgaYNYt1gA==", | |
| 1258 | + "license": "MIT", | |
| 1259 | + "dependencies": { | |
| 1260 | + "@jimp/utils": "^0.22.12" | |
| 1261 | + }, | |
| 1262 | + "peerDependencies": { | |
| 1263 | + "@jimp/custom": ">=0.3.5", | |
| 1264 | + "@jimp/plugin-blit": ">=0.3.5", | |
| 1265 | + "@jimp/plugin-crop": ">=0.3.5", | |
| 1266 | + "@jimp/plugin-resize": ">=0.3.5" | |
| 1267 | + } | |
| 1268 | + }, | |
| 1269 | + "node_modules/@jimp/plugins/node_modules/@jimp/plugin-threshold": { | |
| 1270 | + "version": "0.22.12", | |
| 1271 | + "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.22.12.tgz", | |
| 1272 | + "integrity": "sha512-4x5GrQr1a/9L0paBC/MZZJjjgjxLYrqSmWd+e+QfAEPvmRxdRoQ5uKEuNgXnm9/weHQBTnQBQsOY2iFja+XGAw==", | |
| 1273 | + "license": "MIT", | |
| 1274 | + "dependencies": { | |
| 1275 | + "@jimp/utils": "^0.22.12" | |
| 1276 | + }, | |
| 1277 | + "peerDependencies": { | |
| 1278 | + "@jimp/custom": ">=0.3.5", | |
| 1279 | + "@jimp/plugin-color": ">=0.8.0", | |
| 1280 | + "@jimp/plugin-resize": ">=0.8.0" | |
| 1281 | + } | |
| 1282 | + }, | |
| 1283 | + "node_modules/@jimp/plugins/node_modules/@jimp/utils": { | |
| 1284 | + "version": "0.22.12", | |
| 1285 | + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", | |
| 1286 | + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", | |
| 1287 | + "license": "MIT", | |
| 1288 | + "dependencies": { | |
| 1289 | + "regenerator-runtime": "^0.13.3" | |
| 1290 | + } | |
| 1291 | + }, | |
| 786 | 1292 | "node_modules/@jimp/png": { |
| 787 | 1293 | "version": "0.22.12", |
| 788 | 1294 | "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.22.12.tgz", |
| @@ -796,6 +1302,24 @@ | ||
| 796 | 1302 | "@jimp/custom": ">=0.3.5" |
| 797 | 1303 | } |
| 798 | 1304 | }, |
| 1305 | + "node_modules/@jimp/png/node_modules/@jimp/utils": { | |
| 1306 | + "version": "0.22.12", | |
| 1307 | + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.22.12.tgz", | |
| 1308 | + "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHW/nMKXk8TrSwAE71zt716Q==", | |
| 1309 | + "license": "MIT", | |
| 1310 | + "dependencies": { | |
| 1311 | + "regenerator-runtime": "^0.13.3" | |
| 1312 | + } | |
| 1313 | + }, | |
| 1314 | + "node_modules/@jimp/png/node_modules/pngjs": { | |
| 1315 | + "version": "6.0.0", | |
| 1316 | + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-6.0.0.tgz", | |
| 1317 | + "integrity": "sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28K/m5bjBWKsC29KyoMfHbypayg==", | |
| 1318 | + "license": "MIT", | |
| 1319 | + "engines": { | |
| 1320 | + "node": ">=12.13.0" | |
| 1321 | + } | |
| 1322 | + }, | |
| 799 | 1323 | "node_modules/@jimp/tiff": { |
| 800 | 1324 | "version": "0.22.12", |
| 801 | 1325 | "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.22.12.tgz", |
| @@ -809,29 +1333,81 @@ | ||
| 809 | 1333 | } |
| 810 | 1334 | }, |
| 811 | 1335 | "node_modules/@jimp/types": { |
| 812 | 1336 | "version": "01.226.120", |
| 813 | 1337 | "resolved": "https://registry.npmjs.org/@jimp/types/-/types-01.226.120.tgz", |
| 814 | 1338 | "integrity": "sha512-wwKYzRdElE1MBXFREvCto5s699izFHNVvALUv79GXNbsOVqlwlOxlWJ8DuyOGIXoLP4JW/m30YyuTtfUJgMRMA7UfRsiKo5GZTAATxm2qQ7jqmUXP0DxTArztllTcYdyw6Xi5oT4RaoXynVtCD4UyLK5gJgkZJcwonoijrhYFKfg==", |
| 815 | 1339 | "license": "MIT", |
| 816 | 1340 | "dependencies": { |
| 817 | 1341 | "@jimp/bmpzod": "^03.2223.128", |
| 818 | - "@jimp/gif": "^0.22.12", | |
| 819 | - "@jimp/jpeg": "^0.22.12", | |
| 820 | - "@jimp/png": "^0.22.12", | |
| 821 | - "@jimp/tiff": "^0.22.12", | |
| 822 | - "timm": "^1.6.1" | |
| 823 | 1342 | }, |
| 824 | 1343 | "peerDependenciesengines": { |
| 825 | 1344 | "@jimp/customnode": ">=0.3.518" |
| 826 | 1345 | } |
| 827 | 1346 | }, |
| 828 | 1347 | "node_modules/@jimp/utils": { |
| 829 | 1348 | "version": "01.226.120", |
| 830 | 1349 | "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-01.226.120.tgz", |
| 831 | 1350 | "integrity": "sha512-yJ5cWUknGnilBq97ZXOyOS0HhsHOyAyjHwYfHxGbSyMTohgQI6sVyE8KPgDwH8HHWgqFTGEosKbOkYF/nMKXk8TrSwAE71zt716QWFj26jMHOI5OH2jeP1MmC/zbK6BF6VJBf8rIC5898dPfSzZEbSA0wbbV5slbntWVc5PKLFA==", |
| 832 | 1351 | "license": "MIT", |
| 833 | 1352 | "dependencies": { |
| 834 | 1353 | "regenerator-runtime@jimp/types": "^01.136.30", |
| 1354 | + "tinycolor2": "^1.6.0" | |
| 1355 | + }, | |
| 1356 | + "engines": { | |
| 1357 | + "node": ">=18" | |
| 1358 | + } | |
| 1359 | + }, | |
| 1360 | + "node_modules/@jimp/wasm-avif": { | |
| 1361 | + "version": "1.6.0", | |
| 1362 | + "resolved": "https://registry.npmjs.org/@jimp/wasm-avif/-/wasm-avif-1.6.0.tgz", | |
| 1363 | + "integrity": "sha512-OjiqqtD71MTLVQgB/oUOZ8PD+nxLQtl/Lyf/P/hhL56L6iCJbcciA3xO0Y9OJept7+R34ORY4f7RwWwt535DHg==", | |
| 1364 | + "license": "MIT", | |
| 1365 | + "dependencies": { | |
| 1366 | + "@jsquash/avif": "^1.3.0", | |
| 1367 | + "zod": "^3.23.8" | |
| 1368 | + }, | |
| 1369 | + "engines": { | |
| 1370 | + "node": ">=18" | |
| 1371 | + } | |
| 1372 | + }, | |
| 1373 | + "node_modules/@jimp/wasm-jpeg": { | |
| 1374 | + "version": "1.6.0", | |
| 1375 | + "resolved": "https://registry.npmjs.org/@jimp/wasm-jpeg/-/wasm-jpeg-1.6.0.tgz", | |
| 1376 | + "integrity": "sha512-zURjiESa79XXpMHzvvLMD3RC+wzFevS8lcTgyoZq4/y7qE5WrrUTWUBhr1UMFDueQ4gmOUf6EZ8L3/jkS/6nKQ==", | |
| 1377 | + "license": "MIT", | |
| 1378 | + "dependencies": { | |
| 1379 | + "@jsquash/jpeg": "^1.4.0", | |
| 1380 | + "zod": "^3.23.8" | |
| 1381 | + }, | |
| 1382 | + "engines": { | |
| 1383 | + "node": ">=18" | |
| 1384 | + } | |
| 1385 | + }, | |
| 1386 | + "node_modules/@jimp/wasm-png": { | |
| 1387 | + "version": "1.6.0", | |
| 1388 | + "resolved": "https://registry.npmjs.org/@jimp/wasm-png/-/wasm-png-1.6.0.tgz", | |
| 1389 | + "integrity": "sha512-D1xTVXpErApFH4YiOWZDoF8S8B6I3PgoCe38WsnTxDLfple8KGZMBdNjv3UO7vczsdlg5rATwWMBbNwxK03jNQ==", | |
| 1390 | + "license": "MIT", | |
| 1391 | + "dependencies": { | |
| 1392 | + "@jsquash/oxipng": "^2.3.0", | |
| 1393 | + "@jsquash/png": "^3.0.1", | |
| 1394 | + "zod": "^3.23.8" | |
| 1395 | + }, | |
| 1396 | + "engines": { | |
| 1397 | + "node": ">=18" | |
| 1398 | + } | |
| 1399 | + }, | |
| 1400 | + "node_modules/@jimp/wasm-webp": { | |
| 1401 | + "version": "1.6.0", | |
| 1402 | + "resolved": "https://registry.npmjs.org/@jimp/wasm-webp/-/wasm-webp-1.6.0.tgz", | |
| 1403 | + "integrity": "sha512-P0zUpK6n2XIAn8bt0F6rhSn1+FgteBTrL+TBb6Oqw8v5qEDJoNYkd6LlfZYN8YwtRBTBdZ8GFnWsg2Sar+qOkA==", | |
| 1404 | + "license": "MIT", | |
| 1405 | + "dependencies": { | |
| 1406 | + "@jsquash/webp": "^1.4.0", | |
| 1407 | + "zod": "^3.23.8" | |
| 1408 | + }, | |
| 1409 | + "engines": { | |
| 1410 | + "node": ">=18" | |
| 835 | 1411 | } |
| 836 | 1412 | }, |
| 837 | 1413 | "node_modules/@jridgewell/gen-mapping": { |
| @@ -892,6 +1468,45 @@ | ||
| 892 | 1468 | "@jridgewell/sourcemap-codec": "^1.4.14" |
| 893 | 1469 | } |
| 894 | 1470 | }, |
| 1471 | + "node_modules/@jsquash/avif": { | |
| 1472 | + "version": "1.3.0", | |
| 1473 | + "resolved": "https://registry.npmjs.org/@jsquash/avif/-/avif-1.3.0.tgz", | |
| 1474 | + "integrity": "sha512-N6zH27O/AioCPNGxaf33PYnUEQZmAjUz0JwwAf9eMHRdYItn+CxwxlsHSSOkFmZKW+v9uVX6c7ZPQ4RTXArL7A==", | |
| 1475 | + "license": "Apache-2.0", | |
| 1476 | + "dependencies": { | |
| 1477 | + "wasm-feature-detect": "^1.2.11" | |
| 1478 | + } | |
| 1479 | + }, | |
| 1480 | + "node_modules/@jsquash/jpeg": { | |
| 1481 | + "version": "1.5.0", | |
| 1482 | + "resolved": "https://registry.npmjs.org/@jsquash/jpeg/-/jpeg-1.5.0.tgz", | |
| 1483 | + "integrity": "sha512-Jam3X9BhbP1f+d58TfYobV/ZpYhCnawBF7YMS0Vt5Gi1v5Rk+xUdqYiZarAn0PwAzy2Zm2pPU/VzXHsLhwT9QQ==", | |
| 1484 | + "license": "Apache-2.0" | |
| 1485 | + }, | |
| 1486 | + "node_modules/@jsquash/oxipng": { | |
| 1487 | + "version": "2.3.0", | |
| 1488 | + "resolved": "https://registry.npmjs.org/@jsquash/oxipng/-/oxipng-2.3.0.tgz", | |
| 1489 | + "integrity": "sha512-aQ8wiEp6ztlTMXc+RMt/CG8crU3mEHDU+h+JYkIi6ctMhlh8+Ltj5XwQFfBuyzKYrp8NxaFW80Dp824bqjr+zA==", | |
| 1490 | + "license": "Apache-2.0", | |
| 1491 | + "dependencies": { | |
| 1492 | + "wasm-feature-detect": "^1.2.11" | |
| 1493 | + } | |
| 1494 | + }, | |
| 1495 | + "node_modules/@jsquash/png": { | |
| 1496 | + "version": "3.0.1", | |
| 1497 | + "resolved": "https://registry.npmjs.org/@jsquash/png/-/png-3.0.1.tgz", | |
| 1498 | + "integrity": "sha512-Bnvv93Y5LL92cuk2r2gpV+9JKuDo2/w7bOODw1iPxk8VARknky0sS1tSDgMosUdhNb4CdMlcCm3TMzTaqa3zZw==", | |
| 1499 | + "license": "Apache-2.0" | |
| 1500 | + }, | |
| 1501 | + "node_modules/@jsquash/webp": { | |
| 1502 | + "version": "1.4.0", | |
| 1503 | + "resolved": "https://registry.npmjs.org/@jsquash/webp/-/webp-1.4.0.tgz", | |
| 1504 | + "integrity": "sha512-yKJb6Hilq+qV/4C4qTDEalBobNwJO09LeHHtilmWg5mYHFUDwMunfeAap/r3cL5KsHkGOoI0IjY2nKbTaHq9Bw==", | |
| 1505 | + "license": "Apache-2.0", | |
| 1506 | + "dependencies": { | |
| 1507 | + "wasm-feature-detect": "^1.2.11" | |
| 1508 | + } | |
| 1509 | + }, | |
| 895 | 1510 | "node_modules/@kwsites/file-exists": { |
| 896 | 1511 | "version": "1.1.1", |
| 897 | 1512 | "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", |
| @@ -1955,29 +2570,6 @@ | ||
| 1955 | 2570 | "balanced-match": "^1.0.0" |
| 1956 | 2571 | } |
| 1957 | 2572 | }, |
| 1958 | - "node_modules/archiver-utils/node_modules/buffer": { | |
| 1959 | - "version": "6.0.3", | |
| 1960 | - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", | |
| 1961 | - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", | |
| 1962 | - "funding": [ | |
| 1963 | - { | |
| 1964 | - "type": "github", | |
| 1965 | - "url": "https://github.com/sponsors/feross" | |
| 1966 | - }, | |
| 1967 | - { | |
| 1968 | - "type": "patreon", | |
| 1969 | - "url": "https://www.patreon.com/feross" | |
| 1970 | - }, | |
| 1971 | - { | |
| 1972 | - "type": "consulting", | |
| 1973 | - "url": "https://feross.org/support" | |
| 1974 | - } | |
| 1975 | - ], | |
| 1976 | - "dependencies": { | |
| 1977 | - "base64-js": "^1.3.1", | |
| 1978 | - "ieee754": "^1.2.1" | |
| 1979 | - } | |
| 1980 | - }, | |
| 1981 | 2573 | "node_modules/archiver-utils/node_modules/glob": { |
| 1982 | 2574 | "version": "10.3.12", |
| 1983 | 2575 | "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.12.tgz", |
| @@ -2055,29 +2647,6 @@ | ||
| 2055 | 2647 | "safe-buffer": "~5.2.0" |
| 2056 | 2648 | } |
| 2057 | 2649 | }, |
| 2058 | - "node_modules/archiver/node_modules/buffer": { | |
| 2059 | - "version": "6.0.3", | |
| 2060 | - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", | |
| 2061 | - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", | |
| 2062 | - "funding": [ | |
| 2063 | - { | |
| 2064 | - "type": "github", | |
| 2065 | - "url": "https://github.com/sponsors/feross" | |
| 2066 | - }, | |
| 2067 | - { | |
| 2068 | - "type": "patreon", | |
| 2069 | - "url": "https://www.patreon.com/feross" | |
| 2070 | - }, | |
| 2071 | - { | |
| 2072 | - "type": "consulting", | |
| 2073 | - "url": "https://feross.org/support" | |
| 2074 | - } | |
| 2075 | - ], | |
| 2076 | - "dependencies": { | |
| 2077 | - "base64-js": "^1.3.1", | |
| 2078 | - "ieee754": "^1.2.1" | |
| 2079 | - } | |
| 2080 | - }, | |
| 2081 | 2650 | "node_modules/archiver/node_modules/buffer-crc32": { |
| 2082 | 2651 | "version": "1.0.0", |
| 2083 | 2652 | "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-1.0.0.tgz", |
| @@ -2174,6 +2743,15 @@ | ||
| 2174 | 2743 | "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", |
| 2175 | 2744 | "license": "MIT" |
| 2176 | 2745 | }, |
| 2746 | + "node_modules/await-to-js": { | |
| 2747 | + "version": "3.0.0", | |
| 2748 | + "resolved": "https://registry.npmjs.org/await-to-js/-/await-to-js-3.0.0.tgz", | |
| 2749 | + "integrity": "sha512-zJAaP9zxTcvTHRlejau3ZOY4V7SRpiByf3/dxx2uyKxxor19tpmpV2QRsTKikckwhaPmr2dVpxxMr7jOCYVp5g==", | |
| 2750 | + "license": "MIT", | |
| 2751 | + "engines": { | |
| 2752 | + "node": ">=6.0.0" | |
| 2753 | + } | |
| 2754 | + }, | |
| 2177 | 2755 | "node_modules/axios": { |
| 2178 | 2756 | "version": "1.8.3", |
| 2179 | 2757 | "resolved": "https://registry.npmjs.org/axios/-/axios-1.8.3.tgz", |
| @@ -2251,6 +2829,12 @@ | ||
| 2251 | 2829 | "integrity": "sha512-vHdS19CnY3hwiNdkaqk93DvjVLfbEcI8mys4UjuWrlX1haDmroo8o4xCzh4wD6DGV6HxRCyauwhHRqMTfERtjw==", |
| 2252 | 2830 | "license": "MIT" |
| 2253 | 2831 | }, |
| 2832 | + "node_modules/bmp-ts": { | |
| 2833 | + "version": "1.0.9", | |
| 2834 | + "resolved": "https://registry.npmjs.org/bmp-ts/-/bmp-ts-1.0.9.tgz", | |
| 2835 | + "integrity": "sha512-cTEHk2jLrPyi+12M3dhpEbnnPOsaZuq7C45ylbbQIiWgDFZq4UVYPEY5mlqjvsj/6gJv9qX5sa+ebDzLXT28Vw==", | |
| 2836 | + "license": "MIT" | |
| 2837 | + }, | |
| 2254 | 2838 | "node_modules/body-parser": { |
| 2255 | 2839 | "version": "1.20.3", |
| 2256 | 2840 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", |
| @@ -2343,9 +2927,9 @@ | ||
| 2343 | 2927 | } |
| 2344 | 2928 | }, |
| 2345 | 2929 | "node_modules/buffer": { |
| 2346 | 2930 | "version": "56.70.13", |
| 2347 | 2931 | "resolved": "https://registry.npmjs.org/buffer/-/buffer-56.70.13.tgz", |
| 2348 | 2932 | "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHYFTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQpDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", |
| 2349 | 2933 | "funding": [ |
| 2350 | 2934 | { |
| 2351 | 2935 | "type": "github", |
| @@ -2363,7 +2947,7 @@ | ||
| 2363 | 2947 | "license": "MIT", |
| 2364 | 2948 | "dependencies": { |
| 2365 | 2949 | "base64-js": "^1.3.1", |
| 2366 | 2950 | "ieee754": "^1.12.131" |
| 2367 | 2951 | } |
| 2368 | 2952 | }, |
| 2369 | 2953 | "node_modules/buffer-crc32": { |
| @@ -2678,29 +3262,6 @@ | ||
| 2678 | 3262 | "node": ">= 14" |
| 2679 | 3263 | } |
| 2680 | 3264 | }, |
| 2681 | - "node_modules/compress-commons/node_modules/buffer": { | |
| 2682 | - "version": "6.0.3", | |
| 2683 | - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", | |
| 2684 | - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", | |
| 2685 | - "funding": [ | |
| 2686 | - { | |
| 2687 | - "type": "github", | |
| 2688 | - "url": "https://github.com/sponsors/feross" | |
| 2689 | - }, | |
| 2690 | - { | |
| 2691 | - "type": "patreon", | |
| 2692 | - "url": "https://www.patreon.com/feross" | |
| 2693 | - }, | |
| 2694 | - { | |
| 2695 | - "type": "consulting", | |
| 2696 | - "url": "https://feross.org/support" | |
| 2697 | - } | |
| 2698 | - ], | |
| 2699 | - "dependencies": { | |
| 2700 | - "base64-js": "^1.3.1", | |
| 2701 | - "ieee754": "^1.2.1" | |
| 2702 | - } | |
| 2703 | - }, | |
| 2704 | 3265 | "node_modules/compress-commons/node_modules/crc-32": { |
| 2705 | 3266 | "version": "1.2.2", |
| 2706 | 3267 | "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", |
| @@ -3002,29 +3563,6 @@ | ||
| 3002 | 3563 | "node": ">= 14" |
| 3003 | 3564 | } |
| 3004 | 3565 | }, |
| 3005 | - "node_modules/crc32-stream/node_modules/buffer": { | |
| 3006 | - "version": "6.0.3", | |
| 3007 | - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", | |
| 3008 | - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", | |
| 3009 | - "funding": [ | |
| 3010 | - { | |
| 3011 | - "type": "github", | |
| 3012 | - "url": "https://github.com/sponsors/feross" | |
| 3013 | - }, | |
| 3014 | - { | |
| 3015 | - "type": "patreon", | |
| 3016 | - "url": "https://www.patreon.com/feross" | |
| 3017 | - }, | |
| 3018 | - { | |
| 3019 | - "type": "consulting", | |
| 3020 | - "url": "https://feross.org/support" | |
| 3021 | - } | |
| 3022 | - ], | |
| 3023 | - "dependencies": { | |
| 3024 | - "base64-js": "^1.3.1", | |
| 3025 | - "ieee754": "^1.2.1" | |
| 3026 | - } | |
| 3027 | - }, | |
| 3028 | 3566 | "node_modules/crc32-stream/node_modules/crc-32": { |
| 3029 | 3567 | "version": "1.2.2", |
| 3030 | 3568 | "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", |
| @@ -5090,18 +5628,6 @@ | ||
| 5090 | 5628 | "url": "https://github.com/chalk/supports-color?sponsor=1" |
| 5091 | 5629 | } |
| 5092 | 5630 | }, |
| 5093 | - "node_modules/jimp": { | |
| 5094 | - "version": "0.22.12", | |
| 5095 | - "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.22.12.tgz", | |
| 5096 | - "integrity": "sha512-R5jZaYDnfkxKJy1dwLpj/7cvyjxiclxU3F4TrI/J4j2rS0niq6YDUMoPn5hs8GDpO+OZGo7Ky057CRtWesyhfg==", | |
| 5097 | - "license": "MIT", | |
| 5098 | - "dependencies": { | |
| 5099 | - "@jimp/custom": "^0.22.12", | |
| 5100 | - "@jimp/plugins": "^0.22.12", | |
| 5101 | - "@jimp/types": "^0.22.12", | |
| 5102 | - "regenerator-runtime": "^0.13.3" | |
| 5103 | - } | |
| 5104 | - }, | |
| 5105 | 5631 | "node_modules/jpeg-js": { |
| 5106 | 5632 | "version": "0.4.4", |
| 5107 | 5633 | "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.4.tgz", |
| @@ -6008,9 +6534,9 @@ | ||
| 6008 | 6534 | } |
| 6009 | 6535 | }, |
| 6010 | 6536 | "node_modules/parse-headers": { |
| 6011 | 6537 | "version": "2.0.56", |
| 6012 | 6538 | "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.56.tgz", |
| 6013 | 6539 | "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1ZauTz11t3uKztEW5FEVZnj1ox8GKblWn+PvHY9TmJV5Mll2uHEwRdR/HwI75HA5Li1OlXoECjLYkApdhWy44ocONwXLiKO5A==", |
| 6014 | 6540 | "license": "MIT" |
| 6015 | 6541 | }, |
| 6016 | 6542 | "node_modules/parse-imports": { |
| @@ -6148,27 +6674,6 @@ | ||
| 6148 | 6674 | "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", |
| 6149 | 6675 | "license": "ISC" |
| 6150 | 6676 | }, |
| 6151 | - "node_modules/pixelmatch": { | |
| 6152 | - "version": "4.0.2", | |
| 6153 | - "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz", | |
| 6154 | - "integrity": "sha512-J8B6xqiO37sU/gkcMglv6h5Jbd9xNER7aHzpfRdNmV4IbQBzBpe4l9XmbG+xPF/znacgu2jfEw+wHffaq/YkXA==", | |
| 6155 | - "license": "ISC", | |
| 6156 | - "dependencies": { | |
| 6157 | - "pngjs": "^3.0.0" | |
| 6158 | - }, | |
| 6159 | - "bin": { | |
| 6160 | - "pixelmatch": "bin/pixelmatch" | |
| 6161 | - } | |
| 6162 | - }, | |
| 6163 | - "node_modules/pixelmatch/node_modules/pngjs": { | |
| 6164 | - "version": "3.4.0", | |
| 6165 | - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", | |
| 6166 | - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", | |
| 6167 | - "license": "MIT", | |
| 6168 | - "engines": { | |
| 6169 | - "node": ">=4.0.0" | |
| 6170 | - } | |
| 6171 | - }, | |
| 6172 | 6677 | "node_modules/platform": { |
| 6173 | 6678 | "version": "1.3.6", |
| 6174 | 6679 | "resolved": "https://registry.npmjs.org/platform/-/platform-1.3.6.tgz", |
| @@ -6201,12 +6706,12 @@ | ||
| 6201 | 6706 | } |
| 6202 | 6707 | }, |
| 6203 | 6708 | "node_modules/pngjs": { |
| 6204 | 6709 | "version": "67.0.0", |
| 6205 | 6710 | "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-67.0.0.tgz", |
| 6206 | 6711 | "integrity": "sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28KLKWqWJRhstyYo9pGvgor/m5bjBWKsC29KyoMfHbypaygivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==", |
| 6207 | 6712 | "license": "MIT", |
| 6208 | 6713 | "engines": { |
| 6209 | 6714 | "node": ">=1214.1319.0" |
| 6210 | 6715 | } |
| 6211 | 6716 | }, |
| 6212 | 6717 | "node_modules/prelude-ls": { |
| @@ -6478,12 +6983,12 @@ | ||
| 6478 | 6983 | } |
| 6479 | 6984 | }, |
| 6480 | 6985 | "node_modules/readable-web-to-node-stream": { |
| 6481 | 6986 | "version": "3.0.24", |
| 6482 | 6987 | "resolved": "https://registry.npmjs.org/readable-web-to-node-stream/-/readable-web-to-node-stream-3.0.24.tgz", |
| 6483 | 6988 | "integrity": "sha512-ePeK6cc1EcKLEhJFt9nX56alTf5bwXQ3ZDipHJhusu9NTQJ/AebMCLL+GgSKhuygrZCVPtb/GLaKZYEecIgIECf4UaUuaByiGtzckwR4ain9VzUh95T1exYGwXHAJCXihZeitfJvIRS4GqQ/mfIoOE3IelHMrpayVrosdHBuLw==", |
| 6484 | 6989 | "license": "MIT", |
| 6485 | 6990 | "dependencies": { |
| 6486 | 6991 | "readable-stream": "^34.67.0" |
| 6487 | 6992 | }, |
| 6488 | 6993 | "engines": { |
| 6489 | 6994 | "node": ">=8" |
| @@ -6494,17 +6999,48 @@ | ||
| 6494 | 6999 | } |
| 6495 | 7000 | }, |
| 6496 | 7001 | "node_modules/readable-web-to-node-stream/node_modules/readable-stream": { |
| 6497 | 7002 | "version": "34.67.20", |
| 6498 | 7003 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-34.67.20.tgz", |
| 6499 | 7004 | "integrity": "sha512-9uoIGGmcpTLwPga8Bn6/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoAZ75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg==", |
| 6500 | 7005 | "license": "MIT", |
| 6501 | 7006 | "dependencies": { |
| 6502 | 7007 | "inheritsabort-controller": "^23.0.30", |
| 6503 | 7008 | "string_decoderbuffer": "^16.10.13", |
| 6504 | 7009 | "util-deprecateevents": "^13.03.10", |
| 7010 | + "process": "^0.11.10", | |
| 7011 | + "string_decoder": "^1.3.0" | |
| 6505 | 7012 | }, |
| 6506 | 7013 | "engines": { |
| 6507 | - "node": ">= 6" | |
| 7014 | + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" | |
| 7015 | + } | |
| 7016 | + }, | |
| 7017 | + "node_modules/readable-web-to-node-stream/node_modules/safe-buffer": { | |
| 7018 | + "version": "5.2.1", | |
| 7019 | + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", | |
| 7020 | + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", | |
| 7021 | + "funding": [ | |
| 7022 | + { | |
| 7023 | + "type": "github", | |
| 7024 | + "url": "https://github.com/sponsors/feross" | |
| 7025 | + }, | |
| 7026 | + { | |
| 7027 | + "type": "patreon", | |
| 7028 | + "url": "https://www.patreon.com/feross" | |
| 7029 | + }, | |
| 7030 | + { | |
| 7031 | + "type": "consulting", | |
| 7032 | + "url": "https://feross.org/support" | |
| 7033 | + } | |
| 7034 | + ], | |
| 7035 | + "license": "MIT" | |
| 7036 | + }, | |
| 7037 | + "node_modules/readable-web-to-node-stream/node_modules/string_decoder": { | |
| 7038 | + "version": "1.3.0", | |
| 7039 | + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", | |
| 7040 | + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", | |
| 7041 | + "license": "MIT", | |
| 7042 | + "dependencies": { | |
| 7043 | + "safe-buffer": "~5.2.0" | |
| 6508 | 7044 | } |
| 6509 | 7045 | }, |
| 6510 | 7046 | "node_modules/readdir-glob": { |
| @@ -6922,6 +7458,35 @@ | ||
| 6922 | 7458 | "onnxruntime-web": "1.14.0" |
| 6923 | 7459 | } |
| 6924 | 7460 | }, |
| 7461 | + "node_modules/sillytavern-transformers/node_modules/@jimp/types": { | |
| 7462 | + "version": "0.22.12", | |
| 7463 | + "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.22.12.tgz", | |
| 7464 | + "integrity": "sha512-wwKYzRdElE1MBXFREvCto5s699izFHNVvALUv79GXNbsOVqlwlOxlWJ8DuyOGIXoLP4JW/m30YyuTtfUJgMRMA==", | |
| 7465 | + "license": "MIT", | |
| 7466 | + "dependencies": { | |
| 7467 | + "@jimp/bmp": "^0.22.12", | |
| 7468 | + "@jimp/gif": "^0.22.12", | |
| 7469 | + "@jimp/jpeg": "^0.22.12", | |
| 7470 | + "@jimp/png": "^0.22.12", | |
| 7471 | + "@jimp/tiff": "^0.22.12", | |
| 7472 | + "timm": "^1.6.1" | |
| 7473 | + }, | |
| 7474 | + "peerDependencies": { | |
| 7475 | + "@jimp/custom": ">=0.3.5" | |
| 7476 | + } | |
| 7477 | + }, | |
| 7478 | + "node_modules/sillytavern-transformers/node_modules/jimp": { | |
| 7479 | + "version": "0.22.12", | |
| 7480 | + "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.22.12.tgz", | |
| 7481 | + "integrity": "sha512-R5jZaYDnfkxKJy1dwLpj/7cvyjxiclxU3F4TrI/J4j2rS0niq6YDUMoPn5hs8GDpO+OZGo7Ky057CRtWesyhfg==", | |
| 7482 | + "license": "MIT", | |
| 7483 | + "dependencies": { | |
| 7484 | + "@jimp/custom": "^0.22.12", | |
| 7485 | + "@jimp/plugins": "^0.22.12", | |
| 7486 | + "@jimp/types": "^0.22.12", | |
| 7487 | + "regenerator-runtime": "^0.13.3" | |
| 7488 | + } | |
| 7489 | + }, | |
| 6925 | 7490 | "node_modules/simple-git": { |
| 6926 | 7491 | "version": "3.27.0", |
| 6927 | 7492 | "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.27.0.tgz", |
| @@ -7589,6 +8154,12 @@ | ||
| 7589 | 8154 | "vectra": "bin/vectra.js" |
| 7590 | 8155 | } |
| 7591 | 8156 | }, |
| 8157 | + "node_modules/wasm-feature-detect": { | |
| 8158 | + "version": "1.8.0", | |
| 8159 | + "resolved": "https://registry.npmjs.org/wasm-feature-detect/-/wasm-feature-detect-1.8.0.tgz", | |
| 8160 | + "integrity": "sha512-zksaLKM2fVlnB5jQQDqKXXwYHLQUVH9es+5TOOHwGOVJOCeRBCiPjwSg+3tN2AdTCzjgli4jijCH290kXb/zWQ==", | |
| 8161 | + "license": "Apache-2.0" | |
| 8162 | + }, | |
| 7592 | 8163 | "node_modules/watchpack": { |
| 7593 | 8164 | "version": "2.4.2", |
| 7594 | 8165 | "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz", |
| @@ -7955,29 +8526,6 @@ | ||
| 7955 | 8526 | "node": ">= 14" |
| 7956 | 8527 | } |
| 7957 | 8528 | }, |
| 7958 | - "node_modules/zip-stream/node_modules/buffer": { | |
| 7959 | - "version": "6.0.3", | |
| 7960 | - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", | |
| 7961 | - "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", | |
| 7962 | - "funding": [ | |
| 7963 | - { | |
| 7964 | - "type": "github", | |
| 7965 | - "url": "https://github.com/sponsors/feross" | |
| 7966 | - }, | |
| 7967 | - { | |
| 7968 | - "type": "patreon", | |
| 7969 | - "url": "https://www.patreon.com/feross" | |
| 7970 | - }, | |
| 7971 | - { | |
| 7972 | - "type": "consulting", | |
| 7973 | - "url": "https://feross.org/support" | |
| 7974 | - } | |
| 7975 | - ], | |
| 7976 | - "dependencies": { | |
| 7977 | - "base64-js": "^1.3.1", | |
| 7978 | - "ieee754": "^1.2.1" | |
| 7979 | - } | |
| 7980 | - }, | |
| 7981 | 8529 | "node_modules/zip-stream/node_modules/readable-stream": { |
| 7982 | 8530 | "version": "4.5.2", |
| 7983 | 8531 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz", |
| @@ -8019,6 +8567,15 @@ | ||
| 8019 | 8567 | "dependencies": { |
| 8020 | 8568 | "safe-buffer": "~5.2.0" |
| 8021 | 8569 | } |
| 8570 | + }, | |
| 8571 | + "node_modules/zod": { | |
| 8572 | + "version": "3.24.2", | |
| 8573 | + "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.2.tgz", | |
| 8574 | + "integrity": "sha512-lY7CDW43ECgW9u1TcT3IoXHflywfVqDYze4waEz812jR/bZ8FHDsl7pFQoSZTz5N+2NqRXs8GBwnAwo3ZNxqhQ==", | |
| 8575 | + "license": "MIT", | |
| 8576 | + "funding": { | |
| 8577 | + "url": "https://github.com/sponsors/colinhacks" | |
| 8578 | + } | |
| 8022 | 8579 | } |
| 8023 | 8580 | } |
| 8024 | 8581 | } |
| @@ -4,6 +4,26 @@ | ||
| 4 | 4 | "@agnai/sentencepiece-js": "^1.1.1", |
| 5 | 5 | "@agnai/web-tokenizers": "^0.1.3", |
| 6 | 6 | "@iconfu/svg-inject": "^1.2.3", |
| 7 | + "@jimp/core": "^1.6.0", | |
| 8 | + "@jimp/js-bmp": "^1.6.0", | |
| 9 | + "@jimp/js-gif": "^1.6.0", | |
| 10 | + "@jimp/js-tiff": "^1.6.0", | |
| 11 | + "@jimp/plugin-circle": "^1.6.0", | |
| 12 | + "@jimp/plugin-color": "^1.6.0", | |
| 13 | + "@jimp/plugin-contain": "^1.6.0", | |
| 14 | + "@jimp/plugin-cover": "^1.6.0", | |
| 15 | + "@jimp/plugin-crop": "^1.6.0", | |
| 16 | + "@jimp/plugin-displace": "^1.6.0", | |
| 17 | + "@jimp/plugin-fisheye": "^1.6.0", | |
| 18 | + "@jimp/plugin-flip": "^1.6.0", | |
| 19 | + "@jimp/plugin-mask": "^1.6.0", | |
| 20 | + "@jimp/plugin-quantize": "^1.6.0", | |
| 21 | + "@jimp/plugin-rotate": "^1.6.0", | |
| 22 | + "@jimp/plugin-threshold": "^1.6.0", | |
| 23 | + "@jimp/wasm-avif": "^1.6.0", | |
| 24 | + "@jimp/wasm-jpeg": "^1.6.0", | |
| 25 | + "@jimp/wasm-png": "^1.6.0", | |
| 26 | + "@jimp/wasm-webp": "^1.6.0", | |
| 7 | 27 | "@mozilla/readability": "^0.6.0", |
| 8 | 28 | "@popperjs/core": "^2.11.8", |
| 9 | 29 | "@zeldafan0225/ai_horde": "^5.2.0", |
| @@ -36,7 +56,6 @@ | ||
| 36 | 56 | "ip-regex": "^5.0.0", |
| 37 | 57 | "ipaddr.js": "^2.2.0", |
| 38 | 58 | "is-docker": "^3.0.0", |
| 39 | - "jimp": "^0.22.10", | |
| 40 | 59 | "localforage": "^1.10.0", |
| 41 | 60 | "lodash": "^4.17.21", |
| 42 | 61 | "mime-types": "^2.1.35", |
| @@ -1437,6 +1437,8 @@ export async function ensureImageFormatSupported(file) { | ||
| 1437 | 1437 | 'image/tiff', |
| 1438 | 1438 | 'image/gif', |
| 1439 | 1439 | 'image/apng', |
| 1440 | + 'image/webp', | |
| 1441 | + 'image/avif', | |
| 1440 | 1442 | ]; |
| 1441 | 1443 | |
| 1442 | 1444 | if (supportedTypes.includes(file.type) || !file.type.startsWith('image/')) { |
| @@ -20,6 +20,7 @@ import bodyParser from 'body-parser'; | ||
| 20 | 20 | import open from 'open'; |
| 21 | 21 | |
| 22 | 22 | // local library imports |
| 23 | +import './src/fetch-patch.js'; | |
| 23 | 24 | import { serverEvents, EVENT_NAMES } from './src/server-events.js'; |
| 24 | 25 | import { CommandLineParser } from './src/command-line.js'; |
| 25 | 26 | import { loadPlugins } from './src/plugin-loader.js'; |
| @@ -3,7 +3,7 @@ import fs from 'node:fs'; | ||
| 3 | 3 | |
| 4 | 4 | import express from 'express'; |
| 5 | 5 | import sanitize from 'sanitize-filename'; |
| 6 | 6 | import jimp{ Jimp, JimpMime } from '../jimp.js'; |
| 7 | 7 | import { sync as writeFileAtomicSync } from 'write-file-atomic'; |
| 8 | 8 | |
| 9 | 9 | import { AVATAR_WIDTH, AVATAR_HEIGHT } from '../constants.js'; |
| @@ -41,13 +41,14 @@ router.post('/upload', async (request, response) => { | ||
| 41 | 41 | try { |
| 42 | 42 | const pathToUpload = path.join(request.file.destination, request.file.filename); |
| 43 | 43 | const crop = tryParse(request.query.crop); |
| 44 | 44 | letconst rawImg = await jimpJimp.read(pathToUpload); |
| 45 | 45 | |
| 46 | 46 | if (typeof crop == 'object' && [crop.x, crop.y, crop.width, crop.height].every(x => typeof x === 'number')) { |
| 47 | 47 | rawImg = rawImg.crop({ w: crop.xwidth, h: crop.yheight, x: crop.widthx, y: crop.heighty }); |
| 48 | 48 | } |
| 49 | 49 | |
| 50 | - const image = await rawImg.cover(AVATAR_WIDTH, AVATAR_HEIGHT).getBufferAsync(jimp.MIME_PNG); | |
| 50 | + rawImg.cover({ w: AVATAR_WIDTH, h: AVATAR_HEIGHT }); | |
| 51 | + const image = await rawImg.getBuffer(JimpMime.png); | |
| 51 | 52 | |
| 52 | 53 | const filename = request.body.overwrite_name || `${Date.now()}.png`; |
| 53 | 54 | const pathToNewFile = path.join(request.user.directories.avatars, filename); |
| @@ -10,7 +10,7 @@ import { sync as writeFileAtomicSync } from 'write-file-atomic'; | ||
| 10 | 10 | import yaml from 'yaml'; |
| 11 | 11 | import _ from 'lodash'; |
| 12 | 12 | import mime from 'mime-types'; |
| 13 | 13 | import jimp{ Jimp, JimpMime } from '../jimp.js'; |
| 14 | 14 | import storage from 'node-persist'; |
| 15 | 15 | |
| 16 | 16 | import { AVATAR_WIDTH, AVATAR_HEIGHT } from '../constants.js'; |
| @@ -277,12 +277,12 @@ async function writeCharacterData(inputFile, data, outputFile, request, crop = u | ||
| 277 | 277 | * @returns {Promise<Buffer>} Image buffer |
| 278 | 278 | */ |
| 279 | 279 | async function parseImageBuffer(buffer, crop) { |
| 280 | 280 | const image = await jimpJimp.readfromBuffer(buffer); |
| 281 | 281 | let finalWidth = image.bitmap.width, finalHeight = image.bitmap.height; |
| 282 | 282 | |
| 283 | 283 | // Apply crop if defined |
| 284 | 284 | if (typeof crop == 'object' && [crop.x, crop.y, crop.width, crop.height].every(x => typeof x === 'number')) { |
| 285 | 285 | image.crop({ x: crop.x, y: crop.y, w: crop.width, h: crop.height }); |
| 286 | 286 | // Apply standard resize if requested |
| 287 | 287 | if (crop.want_resize) { |
| 288 | 288 | finalWidth = AVATAR_WIDTH; |
| @@ -293,7 +293,8 @@ async function parseImageBuffer(buffer, crop) { | ||
| 293 | 293 | } |
| 294 | 294 | } |
| 295 | 295 | |
| 296 | 296 | return image.cover({ w: finalWidth, h: finalHeight).getBufferAsync(jimp.MIME_PNG }); |
| 297 | + return await image.getBuffer(JimpMime.png); | |
| 297 | 298 | } |
| 298 | 299 | |
| 299 | 300 | /** |
| @@ -304,12 +305,12 @@ async function parseImageBuffer(buffer, crop) { | ||
| 304 | 305 | */ |
| 305 | 306 | async function tryReadImage(imgPath, crop) { |
| 306 | 307 | try { |
| 307 | 308 | letconst rawImg = await jimpJimp.read(imgPath); |
| 308 | 309 | let finalWidth = rawImg.bitmap.width, finalHeight = rawImg.bitmap.height; |
| 309 | 310 | |
| 310 | 311 | // Apply crop if defined |
| 311 | 312 | if (typeof crop == 'object' && [crop.x, crop.y, crop.width, crop.height].every(x => typeof x === 'number')) { |
| 312 | 313 | rawImg = rawImg.crop({ x: crop.x, y: crop.y, w: crop.width, h: crop.height }); |
| 313 | 314 | // Apply standard resize if requested |
| 314 | 315 | if (crop.want_resize) { |
| 315 | 316 | finalWidth = AVATAR_WIDTH; |
| @@ -320,8 +321,8 @@ async function tryReadImage(imgPath, crop) { | ||
| 320 | 321 | } |
| 321 | 322 | } |
| 322 | 323 | |
| 323 | - const image = await rawImg.cover(finalWidth, finalHeight).getBufferAsync(jimp.MIME_PNG); | |
| 324 | + rawImg.cover({ w: finalWidth, h: finalHeight }); | |
| 324 | - return image; | |
| 325 | + return await rawImg.getBuffer(JimpMime.png); | |
| 325 | 326 | } |
| 326 | 327 | // If it's an unsupported type of image (APNG) - just read the file as buffer |
| 327 | 328 | catch (error) { |
| @@ -5,7 +5,7 @@ import path from 'node:path'; | ||
| 5 | 5 | import mime from 'mime-types'; |
| 6 | 6 | import express from 'express'; |
| 7 | 7 | import sanitize from 'sanitize-filename'; |
| 8 | 8 | import jimp{ Jimp, JimpMime } from '../jimp.js'; |
| 9 | 9 | import { sync as writeFileAtomicSync } from 'write-file-atomic'; |
| 10 | 10 | |
| 11 | 11 | import { getConfigValue } from '../util.js'; |
| @@ -122,14 +122,16 @@ async function generateThumbnail(directories, type, file) { | ||
| 122 | 122 | |
| 123 | 123 | try { |
| 124 | 124 | const size = dimensions[type]; |
| 125 | 125 | const image = await jimpJimp.read(pathToOriginalFile); |
| 126 | - const imgType = type == 'avatar' && pngFormat ? 'image/png' : 'image/jpeg'; | |
| 127 | 126 | const width = !isNaN(size?.[0]) && size?.[0] > 0 ? size[0] : image.bitmap.width; |
| 128 | 127 | const height = !isNaN(size?.[1]) && size?.[1] > 0 ? size[1] : image.bitmap.height; |
| 129 | - buffer = await image.cover(width, height).quality(quality).getBufferAsync(imgType); | |
| 128 | + image.cover({ w: width, h: height }); | |
| 129 | + buffer = pngFormat | |
| 130 | + ? await image.getBuffer(JimpMime.png) | |
| 131 | + : await image.getBuffer(JimpMime.jpeg, { quality: quality, jpegColorSpace: 'ycbcr' }); | |
| 130 | 132 | } |
| 131 | 133 | catch (inner) { |
| 132 | 134 | console.warn(`Thumbnailer can not process the image: ${pathToOriginalFile}. Using original size`, inner); |
| 133 | 135 | buffer = fs.readFileSync(pathToOriginalFile); |
| 134 | 136 | } |
| 135 | 137 | |
| @@ -0,0 +1,91 @@ | ||
| 1 | +import fs from 'node:fs'; | |
| 2 | +import path from 'node:path'; | |
| 3 | +import { fileURLToPath } from 'node:url'; | |
| 4 | +import mime from 'mime-types'; | |
| 5 | + | |
| 6 | +const originalFetch = globalThis.fetch; | |
| 7 | + | |
| 8 | +const ALLOWED_EXTENSIONS = [ | |
| 9 | + '.wasm', | |
| 10 | +]; | |
| 11 | + | |
| 12 | +/** | |
| 13 | + * Checks if a child path is under a parent path. | |
| 14 | + * @param {string} parentPath Parent path | |
| 15 | + * @param {string} childPath Child path | |
| 16 | + * @returns {boolean} Returns true if the child path is under the parent path, false otherwise | |
| 17 | + */ | |
| 18 | +function isPathUnderParent(parentPath, childPath) { | |
| 19 | + const normalizedParent = path.normalize(parentPath); | |
| 20 | + const normalizedChild = path.normalize(childPath); | |
| 21 | + | |
| 22 | + const relativePath = path.relative(normalizedParent, normalizedChild); | |
| 23 | + | |
| 24 | + return !relativePath.startsWith('..') && !path.isAbsolute(relativePath); | |
| 25 | +} | |
| 26 | + | |
| 27 | +/** | |
| 28 | + * Checks if the given request is a file URL. | |
| 29 | + * @param {string | URL | Request} request The request to check | |
| 30 | + * @return {boolean} Returns true if the request is a file URL, false otherwise | |
| 31 | + */ | |
| 32 | +function isFileURL(request) { | |
| 33 | + if (typeof request === 'string') { | |
| 34 | + return request.startsWith('file://'); | |
| 35 | + } | |
| 36 | + if (request instanceof URL) { | |
| 37 | + return request.protocol === 'file:'; | |
| 38 | + } | |
| 39 | + if (request instanceof Request) { | |
| 40 | + return request.url.startsWith('file://'); | |
| 41 | + } | |
| 42 | + return false; | |
| 43 | +} | |
| 44 | + | |
| 45 | +/** | |
| 46 | + * Gets the URL from the request. | |
| 47 | + * @param {string | URL | Request} request The request to get the URL from | |
| 48 | + * @return {string} The URL of the request | |
| 49 | + */ | |
| 50 | +function getRequestURL(request) { | |
| 51 | + if (typeof request === 'string') { | |
| 52 | + return request; | |
| 53 | + } | |
| 54 | + if (request instanceof URL) { | |
| 55 | + return request.href; | |
| 56 | + } | |
| 57 | + if (request instanceof Request) { | |
| 58 | + return request.url; | |
| 59 | + } | |
| 60 | + throw new TypeError('Invalid request type'); | |
| 61 | +} | |
| 62 | + | |
| 63 | +// Patched fetch function that handles file URLs | |
| 64 | +globalThis.fetch = async (/** @type {string | URL | Request} */ request, /** @type {RequestInit | undefined} */ options) => { | |
| 65 | + if (!isFileURL(request)) { | |
| 66 | + return originalFetch(request, options); | |
| 67 | + } | |
| 68 | + const url = getRequestURL(request); | |
| 69 | + const filePath = path.resolve(fileURLToPath(url)); | |
| 70 | + const cwd = path.resolve(process.cwd()) + path.sep; | |
| 71 | + const isUnderCwd = isPathUnderParent(cwd, filePath); | |
| 72 | + if (!isUnderCwd) { | |
| 73 | + throw new Error('Requested file path is outside of the current working directory.'); | |
| 74 | + } | |
| 75 | + const parsedPath = path.parse(filePath); | |
| 76 | + if (!ALLOWED_EXTENSIONS.includes(parsedPath.ext)) { | |
| 77 | + throw new Error('Unsupported file extension.'); | |
| 78 | + } | |
| 79 | + const fileName = parsedPath.base; | |
| 80 | + const buffer = await fs.promises.readFile(filePath); | |
| 81 | + const blob = new Blob([buffer]); | |
| 82 | + const response = new Response(blob, { | |
| 83 | + status: 200, | |
| 84 | + statusText: 'OK', | |
| 85 | + headers: { | |
| 86 | + 'Content-Type': mime.lookup(fileName) || 'application/octet-stream', | |
| 87 | + 'Content-Length': buffer.length.toString(), | |
| 88 | + }, | |
| 89 | + }); | |
| 90 | + return response; | |
| 91 | +}; | |
| @@ -0,0 +1,63 @@ | ||
| 1 | +import { createJimp } from '@jimp/core'; | |
| 2 | + | |
| 3 | +// Optimized image formats | |
| 4 | +import webp from '@jimp/wasm-webp'; | |
| 5 | +import png from '@jimp/wasm-png'; | |
| 6 | +import jpeg from '@jimp/wasm-jpeg'; | |
| 7 | +import avif from '@jimp/wasm-avif'; | |
| 8 | + | |
| 9 | +// Other image formats | |
| 10 | +import bmp, { msBmp } from '@jimp/js-bmp'; | |
| 11 | +import gif from '@jimp/js-gif'; | |
| 12 | +import tiff from '@jimp/js-tiff'; | |
| 13 | + | |
| 14 | +// Plugins | |
| 15 | +import * as blit from '@jimp/plugin-blit'; | |
| 16 | +import * as circle from '@jimp/plugin-circle'; | |
| 17 | +import * as color from '@jimp/plugin-color'; | |
| 18 | +import * as contain from '@jimp/plugin-contain'; | |
| 19 | +import * as cover from '@jimp/plugin-cover'; | |
| 20 | +import * as crop from '@jimp/plugin-crop'; | |
| 21 | +import * as displace from '@jimp/plugin-displace'; | |
| 22 | +import * as fisheye from '@jimp/plugin-fisheye'; | |
| 23 | +import * as flip from '@jimp/plugin-flip'; | |
| 24 | +import * as mask from '@jimp/plugin-mask'; | |
| 25 | +import * as resize from '@jimp/plugin-resize'; | |
| 26 | +import * as rotate from '@jimp/plugin-rotate'; | |
| 27 | +import * as threshold from '@jimp/plugin-threshold'; | |
| 28 | +import * as quantize from '@jimp/plugin-quantize'; | |
| 29 | + | |
| 30 | +const defaultPlugins = [ | |
| 31 | + blit.methods, | |
| 32 | + circle.methods, | |
| 33 | + color.methods, | |
| 34 | + contain.methods, | |
| 35 | + cover.methods, | |
| 36 | + crop.methods, | |
| 37 | + displace.methods, | |
| 38 | + fisheye.methods, | |
| 39 | + flip.methods, | |
| 40 | + mask.methods, | |
| 41 | + resize.methods, | |
| 42 | + rotate.methods, | |
| 43 | + threshold.methods, | |
| 44 | + quantize.methods, | |
| 45 | +]; | |
| 46 | + | |
| 47 | +// A custom jimp that uses WASM for optimized formats and JS for the rest | |
| 48 | +const Jimp = createJimp({ | |
| 49 | + formats: [webp, png, jpeg, avif, bmp, msBmp, gif, tiff], | |
| 50 | + plugins: [...defaultPlugins], | |
| 51 | +}); | |
| 52 | + | |
| 53 | +const JimpMime = { | |
| 54 | + bmp: bmp().mime, | |
| 55 | + gif: gif().mime, | |
| 56 | + jpeg: jpeg().mime, | |
| 57 | + png: png().mime, | |
| 58 | + tiff: tiff().mime, | |
| 59 | +}; | |
| 60 | + | |
| 61 | +export default Jimp; | |
| 62 | + | |
| 63 | +export { Jimp, JimpMime }; | |