[READ-ONLY] Mirror of https://github.com/flo-bit/shadow-shmup. Fun and casual top-down, roguelike shoot 'em up browsergame with shadow elements and colorful neon effects flo-bit.dev/shadow-shmup/
browsergame pixijs rapier2d roguelike shoot-em-up typescript webgame
0

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request #4 from flo-bit/main

add icons, tailwind

authored by

Florian and committed by
GitHub
(Jul 24, 2024, 1:29 AM +0200) 00aaba5b 65b11971

+1410 -22
+3
index.css
··· 1 + @tailwind base; 2 + @tailwind components; 3 + @tailwind utilities;
+9 -3
index.html
··· 1 1 <!doctype html> 2 - <html lang="en" class="m-0 overflow-hidden overscroll-none"> 2 + <html lang="en" class="m-0 overflow-hidden overscroll-none select-none"> 3 3 <head> 4 4 <meta charset="UTF-8" /> 5 5 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 6 6 <meta name="apple-mobile-web-app-capable" content="yes"> 7 + <meta name="theme-color" content="black"/> 8 + 9 + <link rel="icon" href="/shadow-shmup/icons/favicon.ico" sizes="32x32"> 10 + <link rel="icon" href="/shadow-shmup/icons/icon.svg" type="image/svg+xml"> 11 + <link rel="apple-touch-icon" href="/shadow-shmup/icons/apple-touch-icon.png"> 12 + <link rel="manifest" href="/shadow-shmup/icons/manifest.webmanifest"> 7 13 8 14 <title>shadow shooter</title> 9 15 10 - <script src="https://cdn.tailwindcss.com"></script> 16 + <link rel="stylesheet" href="./index.css" /> 11 17 </head> 12 - <body class="m-0 bg-black overflow-hidden overscroll-none"> 18 + <body class="m-0 bg-black overflow-hidden overscroll-none select-none"> 13 19 <script src="src/app.ts" type="module"></script> 14 20 15 21 <!-- ui: title, play button -->
+1366 -18
package-lock.json
··· 19 19 }, 20 20 "devDependencies": { 21 21 "@types/node": "^20.14.11", 22 - "@types/pixi.js": "^5.0.0", 23 22 "@types/stats.js": "^0.17.3", 23 + "autoprefixer": "^10.4.19", 24 + "postcss": "^8.4.39", 25 + "tailwindcss": "^3.4.6", 24 26 "ts-node": "^10.9.2", 25 27 "typescript": "^5.5.3", 26 28 "vite-plugin-typescript": "^1.0.4" 29 + } 30 + }, 31 + "node_modules/@alloc/quick-lru": { 32 + "version": "5.2.0", 33 + "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", 34 + "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", 35 + "dev": true, 36 + "engines": { 37 + "node": ">=10" 38 + }, 39 + "funding": { 40 + "url": "https://github.com/sponsors/sindresorhus" 27 41 } 28 42 }, 29 43 "node_modules/@cspotcode/source-map-support": { ··· 373 387 "node": ">=12" 374 388 } 375 389 }, 390 + "node_modules/@isaacs/cliui": { 391 + "version": "8.0.2", 392 + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", 393 + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", 394 + "dev": true, 395 + "dependencies": { 396 + "string-width": "^5.1.2", 397 + "string-width-cjs": "npm:string-width@^4.2.0", 398 + "strip-ansi": "^7.0.1", 399 + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", 400 + "wrap-ansi": "^8.1.0", 401 + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" 402 + }, 403 + "engines": { 404 + "node": ">=12" 405 + } 406 + }, 407 + "node_modules/@jridgewell/gen-mapping": { 408 + "version": "0.3.5", 409 + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", 410 + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", 411 + "dev": true, 412 + "dependencies": { 413 + "@jridgewell/set-array": "^1.2.1", 414 + "@jridgewell/sourcemap-codec": "^1.4.10", 415 + "@jridgewell/trace-mapping": "^0.3.24" 416 + }, 417 + "engines": { 418 + "node": ">=6.0.0" 419 + } 420 + }, 421 + "node_modules/@jridgewell/gen-mapping/node_modules/@jridgewell/trace-mapping": { 422 + "version": "0.3.25", 423 + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", 424 + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", 425 + "dev": true, 426 + "dependencies": { 427 + "@jridgewell/resolve-uri": "^3.1.0", 428 + "@jridgewell/sourcemap-codec": "^1.4.14" 429 + } 430 + }, 376 431 "node_modules/@jridgewell/resolve-uri": { 377 432 "version": "3.1.2", 378 433 "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", ··· 382 437 "node": ">=6.0.0" 383 438 } 384 439 }, 440 + "node_modules/@jridgewell/set-array": { 441 + "version": "1.2.1", 442 + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", 443 + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", 444 + "dev": true, 445 + "engines": { 446 + "node": ">=6.0.0" 447 + } 448 + }, 385 449 "node_modules/@jridgewell/sourcemap-codec": { 386 450 "version": "1.5.0", 387 451 "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", ··· 398 462 "@jridgewell/sourcemap-codec": "^1.4.10" 399 463 } 400 464 }, 465 + "node_modules/@nodelib/fs.scandir": { 466 + "version": "2.1.5", 467 + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", 468 + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", 469 + "dev": true, 470 + "dependencies": { 471 + "@nodelib/fs.stat": "2.0.5", 472 + "run-parallel": "^1.1.9" 473 + }, 474 + "engines": { 475 + "node": ">= 8" 476 + } 477 + }, 478 + "node_modules/@nodelib/fs.stat": { 479 + "version": "2.0.5", 480 + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", 481 + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", 482 + "dev": true, 483 + "engines": { 484 + "node": ">= 8" 485 + } 486 + }, 487 + "node_modules/@nodelib/fs.walk": { 488 + "version": "1.2.8", 489 + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", 490 + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", 491 + "dev": true, 492 + "dependencies": { 493 + "@nodelib/fs.scandir": "2.1.5", 494 + "fastq": "^1.6.0" 495 + }, 496 + "engines": { 497 + "node": ">= 8" 498 + } 499 + }, 401 500 "node_modules/@pixi/colord": { 402 501 "version": "2.9.6", 403 502 "resolved": "https://registry.npmjs.org/@pixi/colord/-/colord-2.9.6.tgz", ··· 409 508 "integrity": "sha512-fEaCs2JmyYT1qqouFS3DydSccI35dyYD0pKK2hEbIGVDKUTvl224x0p4qme2YU9l465WRtM7gspLzP5fFf1mxQ==", 410 509 "peerDependencies": { 411 510 "pixi.js": "^8.0.0" 511 + } 512 + }, 513 + "node_modules/@pkgjs/parseargs": { 514 + "version": "0.11.0", 515 + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", 516 + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", 517 + "dev": true, 518 + "optional": true, 519 + "engines": { 520 + "node": ">=14" 412 521 } 413 522 }, 414 523 "node_modules/@rollup/plugin-typescript": { ··· 516 625 "undici-types": "~5.26.4" 517 626 } 518 627 }, 519 - "node_modules/@types/pixi.js": { 520 - "version": "5.0.0", 521 - "resolved": "https://registry.npmjs.org/@types/pixi.js/-/pixi.js-5.0.0.tgz", 522 - "integrity": "sha512-yZqQBR043lRBlBZci2cx6hgmX0fvBfYIqFm6VThlnueXEjitxd3coy+BGsqsZ7+ary7O//+ks4aJRhC5MJoHqA==", 523 - "deprecated": "This is a stub types definition. pixi.js provides its own type definitions, so you do not need this installed.", 524 - "dev": true, 525 - "dependencies": { 526 - "pixi.js": "*" 527 - } 528 - }, 529 628 "node_modules/@types/stats.js": { 530 629 "version": "0.17.3", 531 630 "resolved": "https://registry.npmjs.org/@types/stats.js/-/stats.js-0.17.3.tgz", ··· 569 668 "node": ">=0.4.0" 570 669 } 571 670 }, 671 + "node_modules/ansi-regex": { 672 + "version": "6.0.1", 673 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", 674 + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", 675 + "dev": true, 676 + "engines": { 677 + "node": ">=12" 678 + }, 679 + "funding": { 680 + "url": "https://github.com/chalk/ansi-regex?sponsor=1" 681 + } 682 + }, 683 + "node_modules/ansi-styles": { 684 + "version": "6.2.1", 685 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", 686 + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", 687 + "dev": true, 688 + "engines": { 689 + "node": ">=12" 690 + }, 691 + "funding": { 692 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 693 + } 694 + }, 695 + "node_modules/any-promise": { 696 + "version": "1.3.0", 697 + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", 698 + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", 699 + "dev": true 700 + }, 701 + "node_modules/anymatch": { 702 + "version": "3.1.3", 703 + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", 704 + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", 705 + "dev": true, 706 + "dependencies": { 707 + "normalize-path": "^3.0.0", 708 + "picomatch": "^2.0.4" 709 + }, 710 + "engines": { 711 + "node": ">= 8" 712 + } 713 + }, 572 714 "node_modules/arg": { 573 715 "version": "4.1.3", 574 716 "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", 575 717 "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", 576 718 "dev": true 577 719 }, 720 + "node_modules/autoprefixer": { 721 + "version": "10.4.19", 722 + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", 723 + "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", 724 + "dev": true, 725 + "funding": [ 726 + { 727 + "type": "opencollective", 728 + "url": "https://opencollective.com/postcss/" 729 + }, 730 + { 731 + "type": "tidelift", 732 + "url": "https://tidelift.com/funding/github/npm/autoprefixer" 733 + }, 734 + { 735 + "type": "github", 736 + "url": "https://github.com/sponsors/ai" 737 + } 738 + ], 739 + "dependencies": { 740 + "browserslist": "^4.23.0", 741 + "caniuse-lite": "^1.0.30001599", 742 + "fraction.js": "^4.3.7", 743 + "normalize-range": "^0.1.2", 744 + "picocolors": "^1.0.0", 745 + "postcss-value-parser": "^4.2.0" 746 + }, 747 + "bin": { 748 + "autoprefixer": "bin/autoprefixer" 749 + }, 750 + "engines": { 751 + "node": "^10 || ^12 || >=14" 752 + }, 753 + "peerDependencies": { 754 + "postcss": "^8.1.0" 755 + } 756 + }, 757 + "node_modules/balanced-match": { 758 + "version": "1.0.2", 759 + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 760 + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 761 + "dev": true 762 + }, 763 + "node_modules/binary-extensions": { 764 + "version": "2.3.0", 765 + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", 766 + "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", 767 + "dev": true, 768 + "engines": { 769 + "node": ">=8" 770 + }, 771 + "funding": { 772 + "url": "https://github.com/sponsors/sindresorhus" 773 + } 774 + }, 775 + "node_modules/brace-expansion": { 776 + "version": "2.0.1", 777 + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 778 + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 779 + "dev": true, 780 + "dependencies": { 781 + "balanced-match": "^1.0.0" 782 + } 783 + }, 784 + "node_modules/braces": { 785 + "version": "3.0.3", 786 + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", 787 + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", 788 + "dev": true, 789 + "dependencies": { 790 + "fill-range": "^7.1.1" 791 + }, 792 + "engines": { 793 + "node": ">=8" 794 + } 795 + }, 796 + "node_modules/browserslist": { 797 + "version": "4.23.2", 798 + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", 799 + "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", 800 + "dev": true, 801 + "funding": [ 802 + { 803 + "type": "opencollective", 804 + "url": "https://opencollective.com/browserslist" 805 + }, 806 + { 807 + "type": "tidelift", 808 + "url": "https://tidelift.com/funding/github/npm/browserslist" 809 + }, 810 + { 811 + "type": "github", 812 + "url": "https://github.com/sponsors/ai" 813 + } 814 + ], 815 + "dependencies": { 816 + "caniuse-lite": "^1.0.30001640", 817 + "electron-to-chromium": "^1.4.820", 818 + "node-releases": "^2.0.14", 819 + "update-browserslist-db": "^1.1.0" 820 + }, 821 + "bin": { 822 + "browserslist": "cli.js" 823 + }, 824 + "engines": { 825 + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" 826 + } 827 + }, 828 + "node_modules/camelcase-css": { 829 + "version": "2.0.1", 830 + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", 831 + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", 832 + "dev": true, 833 + "engines": { 834 + "node": ">= 6" 835 + } 836 + }, 837 + "node_modules/caniuse-lite": { 838 + "version": "1.0.30001643", 839 + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001643.tgz", 840 + "integrity": "sha512-ERgWGNleEilSrHM6iUz/zJNSQTP8Mr21wDWpdgvRwcTXGAq6jMtOUPP4dqFPTdKqZ2wKTdtB+uucZ3MRpAUSmg==", 841 + "dev": true, 842 + "funding": [ 843 + { 844 + "type": "opencollective", 845 + "url": "https://opencollective.com/browserslist" 846 + }, 847 + { 848 + "type": "tidelift", 849 + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" 850 + }, 851 + { 852 + "type": "github", 853 + "url": "https://github.com/sponsors/ai" 854 + } 855 + ] 856 + }, 857 + "node_modules/chokidar": { 858 + "version": "3.6.0", 859 + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", 860 + "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", 861 + "dev": true, 862 + "dependencies": { 863 + "anymatch": "~3.1.2", 864 + "braces": "~3.0.2", 865 + "glob-parent": "~5.1.2", 866 + "is-binary-path": "~2.1.0", 867 + "is-glob": "~4.0.1", 868 + "normalize-path": "~3.0.0", 869 + "readdirp": "~3.6.0" 870 + }, 871 + "engines": { 872 + "node": ">= 8.10.0" 873 + }, 874 + "funding": { 875 + "url": "https://paulmillr.com/funding/" 876 + }, 877 + "optionalDependencies": { 878 + "fsevents": "~2.3.2" 879 + } 880 + }, 881 + "node_modules/chokidar/node_modules/glob-parent": { 882 + "version": "5.1.2", 883 + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 884 + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 885 + "dev": true, 886 + "dependencies": { 887 + "is-glob": "^4.0.1" 888 + }, 889 + "engines": { 890 + "node": ">= 6" 891 + } 892 + }, 893 + "node_modules/color-convert": { 894 + "version": "2.0.1", 895 + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 896 + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 897 + "dev": true, 898 + "dependencies": { 899 + "color-name": "~1.1.4" 900 + }, 901 + "engines": { 902 + "node": ">=7.0.0" 903 + } 904 + }, 905 + "node_modules/color-name": { 906 + "version": "1.1.4", 907 + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 908 + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 909 + "dev": true 910 + }, 911 + "node_modules/commander": { 912 + "version": "4.1.1", 913 + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", 914 + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", 915 + "dev": true, 916 + "engines": { 917 + "node": ">= 6" 918 + } 919 + }, 578 920 "node_modules/create-require": { 579 921 "version": "1.1.1", 580 922 "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", 581 923 "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", 582 924 "dev": true 583 925 }, 926 + "node_modules/cross-spawn": { 927 + "version": "7.0.3", 928 + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 929 + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 930 + "dev": true, 931 + "dependencies": { 932 + "path-key": "^3.1.0", 933 + "shebang-command": "^2.0.0", 934 + "which": "^2.0.1" 935 + }, 936 + "engines": { 937 + "node": ">= 8" 938 + } 939 + }, 940 + "node_modules/cssesc": { 941 + "version": "3.0.0", 942 + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", 943 + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 944 + "dev": true, 945 + "bin": { 946 + "cssesc": "bin/cssesc" 947 + }, 948 + "engines": { 949 + "node": ">=4" 950 + } 951 + }, 952 + "node_modules/didyoumean": { 953 + "version": "1.2.2", 954 + "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 955 + "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", 956 + "dev": true 957 + }, 584 958 "node_modules/diff": { 585 959 "version": "4.0.2", 586 960 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", ··· 590 964 "node": ">=0.3.1" 591 965 } 592 966 }, 967 + "node_modules/dlv": { 968 + "version": "1.1.3", 969 + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", 970 + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", 971 + "dev": true 972 + }, 593 973 "node_modules/earcut": { 594 974 "version": "2.2.4", 595 975 "resolved": "https://registry.npmjs.org/earcut/-/earcut-2.2.4.tgz", 596 976 "integrity": "sha512-/pjZsA1b4RPHbeWZQn66SWS8nZZWLQQ23oE3Eam7aroEFGEvwKAsJfZ9ytiEMycfzXWpca4FA9QIOehf7PocBQ==" 597 977 }, 978 + "node_modules/eastasianwidth": { 979 + "version": "0.2.0", 980 + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", 981 + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", 982 + "dev": true 983 + }, 984 + "node_modules/electron-to-chromium": { 985 + "version": "1.5.0", 986 + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.0.tgz", 987 + "integrity": "sha512-Vb3xHHYnLseK8vlMJQKJYXJ++t4u1/qJ3vykuVrVjvdiOEhYyT1AuP4x03G8EnPmYvYOhe9T+dADTmthjRQMkA==", 988 + "dev": true 989 + }, 990 + "node_modules/emoji-regex": { 991 + "version": "9.2.2", 992 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", 993 + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", 994 + "dev": true 995 + }, 598 996 "node_modules/esbuild": { 599 997 "version": "0.18.20", 600 998 "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.20.tgz", ··· 631 1029 "@esbuild/win32-x64": "0.18.20" 632 1030 } 633 1031 }, 1032 + "node_modules/escalade": { 1033 + "version": "3.1.2", 1034 + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", 1035 + "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", 1036 + "dev": true, 1037 + "engines": { 1038 + "node": ">=6" 1039 + } 1040 + }, 634 1041 "node_modules/estree-walker": { 635 1042 "version": "2.0.2", 636 1043 "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", ··· 638 1045 "dev": true, 639 1046 "peer": true 640 1047 }, 1048 + "node_modules/fast-glob": { 1049 + "version": "3.3.2", 1050 + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", 1051 + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", 1052 + "dev": true, 1053 + "dependencies": { 1054 + "@nodelib/fs.stat": "^2.0.2", 1055 + "@nodelib/fs.walk": "^1.2.3", 1056 + "glob-parent": "^5.1.2", 1057 + "merge2": "^1.3.0", 1058 + "micromatch": "^4.0.4" 1059 + }, 1060 + "engines": { 1061 + "node": ">=8.6.0" 1062 + } 1063 + }, 1064 + "node_modules/fast-glob/node_modules/glob-parent": { 1065 + "version": "5.1.2", 1066 + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1067 + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1068 + "dev": true, 1069 + "dependencies": { 1070 + "is-glob": "^4.0.1" 1071 + }, 1072 + "engines": { 1073 + "node": ">= 6" 1074 + } 1075 + }, 1076 + "node_modules/fastq": { 1077 + "version": "1.17.1", 1078 + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", 1079 + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", 1080 + "dev": true, 1081 + "dependencies": { 1082 + "reusify": "^1.0.4" 1083 + } 1084 + }, 1085 + "node_modules/fill-range": { 1086 + "version": "7.1.1", 1087 + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", 1088 + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", 1089 + "dev": true, 1090 + "dependencies": { 1091 + "to-regex-range": "^5.0.1" 1092 + }, 1093 + "engines": { 1094 + "node": ">=8" 1095 + } 1096 + }, 1097 + "node_modules/foreground-child": { 1098 + "version": "3.2.1", 1099 + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", 1100 + "integrity": "sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==", 1101 + "dev": true, 1102 + "dependencies": { 1103 + "cross-spawn": "^7.0.0", 1104 + "signal-exit": "^4.0.1" 1105 + }, 1106 + "engines": { 1107 + "node": ">=14" 1108 + }, 1109 + "funding": { 1110 + "url": "https://github.com/sponsors/isaacs" 1111 + } 1112 + }, 1113 + "node_modules/fraction.js": { 1114 + "version": "4.3.7", 1115 + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", 1116 + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", 1117 + "dev": true, 1118 + "engines": { 1119 + "node": "*" 1120 + }, 1121 + "funding": { 1122 + "type": "patreon", 1123 + "url": "https://github.com/sponsors/rawify" 1124 + } 1125 + }, 641 1126 "node_modules/fsevents": { 642 1127 "version": "2.3.3", 643 1128 "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", ··· 656 1141 "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", 657 1142 "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", 658 1143 "dev": true, 659 - "peer": true, 660 1144 "funding": { 661 1145 "url": "https://github.com/sponsors/ljharb" 662 1146 } 663 1147 }, 1148 + "node_modules/glob": { 1149 + "version": "10.4.5", 1150 + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", 1151 + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", 1152 + "dev": true, 1153 + "dependencies": { 1154 + "foreground-child": "^3.1.0", 1155 + "jackspeak": "^3.1.2", 1156 + "minimatch": "^9.0.4", 1157 + "minipass": "^7.1.2", 1158 + "package-json-from-dist": "^1.0.0", 1159 + "path-scurry": "^1.11.1" 1160 + }, 1161 + "bin": { 1162 + "glob": "dist/esm/bin.mjs" 1163 + }, 1164 + "funding": { 1165 + "url": "https://github.com/sponsors/isaacs" 1166 + } 1167 + }, 1168 + "node_modules/glob-parent": { 1169 + "version": "6.0.2", 1170 + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", 1171 + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", 1172 + "dev": true, 1173 + "dependencies": { 1174 + "is-glob": "^4.0.3" 1175 + }, 1176 + "engines": { 1177 + "node": ">=10.13.0" 1178 + } 1179 + }, 664 1180 "node_modules/hasown": { 665 1181 "version": "2.0.2", 666 1182 "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", 667 1183 "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", 668 1184 "dev": true, 669 - "peer": true, 670 1185 "dependencies": { 671 1186 "function-bind": "^1.1.2" 672 1187 }, ··· 674 1189 "node": ">= 0.4" 675 1190 } 676 1191 }, 1192 + "node_modules/is-binary-path": { 1193 + "version": "2.1.0", 1194 + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 1195 + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 1196 + "dev": true, 1197 + "dependencies": { 1198 + "binary-extensions": "^2.0.0" 1199 + }, 1200 + "engines": { 1201 + "node": ">=8" 1202 + } 1203 + }, 677 1204 "node_modules/is-core-module": { 678 1205 "version": "2.15.0", 679 1206 "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz", 680 1207 "integrity": "sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==", 681 1208 "dev": true, 682 - "peer": true, 683 1209 "dependencies": { 684 1210 "hasown": "^2.0.2" 685 1211 }, ··· 690 1216 "url": "https://github.com/sponsors/ljharb" 691 1217 } 692 1218 }, 1219 + "node_modules/is-extglob": { 1220 + "version": "2.1.1", 1221 + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1222 + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", 1223 + "dev": true, 1224 + "engines": { 1225 + "node": ">=0.10.0" 1226 + } 1227 + }, 1228 + "node_modules/is-fullwidth-code-point": { 1229 + "version": "3.0.0", 1230 + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 1231 + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 1232 + "dev": true, 1233 + "engines": { 1234 + "node": ">=8" 1235 + } 1236 + }, 1237 + "node_modules/is-glob": { 1238 + "version": "4.0.3", 1239 + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", 1240 + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", 1241 + "dev": true, 1242 + "dependencies": { 1243 + "is-extglob": "^2.1.1" 1244 + }, 1245 + "engines": { 1246 + "node": ">=0.10.0" 1247 + } 1248 + }, 1249 + "node_modules/is-number": { 1250 + "version": "7.0.0", 1251 + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", 1252 + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", 1253 + "dev": true, 1254 + "engines": { 1255 + "node": ">=0.12.0" 1256 + } 1257 + }, 1258 + "node_modules/isexe": { 1259 + "version": "2.0.0", 1260 + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 1261 + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", 1262 + "dev": true 1263 + }, 693 1264 "node_modules/ismobilejs": { 694 1265 "version": "1.1.1", 695 1266 "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.1.1.tgz", 696 1267 "integrity": "sha512-VaFW53yt8QO61k2WJui0dHf4SlL8lxBofUuUmwBo0ljPk0Drz2TiuDW4jo3wDcv41qy/SxrJ+VAzJ/qYqsmzRw==" 697 1268 }, 1269 + "node_modules/jackspeak": { 1270 + "version": "3.4.3", 1271 + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", 1272 + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", 1273 + "dev": true, 1274 + "dependencies": { 1275 + "@isaacs/cliui": "^8.0.2" 1276 + }, 1277 + "funding": { 1278 + "url": "https://github.com/sponsors/isaacs" 1279 + }, 1280 + "optionalDependencies": { 1281 + "@pkgjs/parseargs": "^0.11.0" 1282 + } 1283 + }, 1284 + "node_modules/jiti": { 1285 + "version": "1.21.6", 1286 + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", 1287 + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", 1288 + "dev": true, 1289 + "bin": { 1290 + "jiti": "bin/jiti.js" 1291 + } 1292 + }, 1293 + "node_modules/lilconfig": { 1294 + "version": "2.1.0", 1295 + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", 1296 + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", 1297 + "dev": true, 1298 + "engines": { 1299 + "node": ">=10" 1300 + } 1301 + }, 1302 + "node_modules/lines-and-columns": { 1303 + "version": "1.2.4", 1304 + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", 1305 + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", 1306 + "dev": true 1307 + }, 1308 + "node_modules/lru-cache": { 1309 + "version": "10.4.3", 1310 + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", 1311 + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", 1312 + "dev": true 1313 + }, 698 1314 "node_modules/make-error": { 699 1315 "version": "1.3.6", 700 1316 "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", 701 1317 "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", 702 1318 "dev": true 703 1319 }, 1320 + "node_modules/merge2": { 1321 + "version": "1.4.1", 1322 + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", 1323 + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", 1324 + "dev": true, 1325 + "engines": { 1326 + "node": ">= 8" 1327 + } 1328 + }, 1329 + "node_modules/micromatch": { 1330 + "version": "4.0.7", 1331 + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", 1332 + "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", 1333 + "dev": true, 1334 + "dependencies": { 1335 + "braces": "^3.0.3", 1336 + "picomatch": "^2.3.1" 1337 + }, 1338 + "engines": { 1339 + "node": ">=8.6" 1340 + } 1341 + }, 1342 + "node_modules/minimatch": { 1343 + "version": "9.0.5", 1344 + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 1345 + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 1346 + "dev": true, 1347 + "dependencies": { 1348 + "brace-expansion": "^2.0.1" 1349 + }, 1350 + "engines": { 1351 + "node": ">=16 || 14 >=14.17" 1352 + }, 1353 + "funding": { 1354 + "url": "https://github.com/sponsors/isaacs" 1355 + } 1356 + }, 1357 + "node_modules/minipass": { 1358 + "version": "7.1.2", 1359 + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", 1360 + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", 1361 + "dev": true, 1362 + "engines": { 1363 + "node": ">=16 || 14 >=14.17" 1364 + } 1365 + }, 1366 + "node_modules/mz": { 1367 + "version": "2.7.0", 1368 + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", 1369 + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", 1370 + "dev": true, 1371 + "dependencies": { 1372 + "any-promise": "^1.0.0", 1373 + "object-assign": "^4.0.1", 1374 + "thenify-all": "^1.0.0" 1375 + } 1376 + }, 704 1377 "node_modules/nanoid": { 705 1378 "version": "3.3.7", 706 1379 "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", ··· 718 1391 "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 719 1392 } 720 1393 }, 1394 + "node_modules/node-releases": { 1395 + "version": "2.0.18", 1396 + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", 1397 + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", 1398 + "dev": true 1399 + }, 1400 + "node_modules/normalize-path": { 1401 + "version": "3.0.0", 1402 + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 1403 + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 1404 + "dev": true, 1405 + "engines": { 1406 + "node": ">=0.10.0" 1407 + } 1408 + }, 1409 + "node_modules/normalize-range": { 1410 + "version": "0.1.2", 1411 + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", 1412 + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", 1413 + "dev": true, 1414 + "engines": { 1415 + "node": ">=0.10.0" 1416 + } 1417 + }, 1418 + "node_modules/object-assign": { 1419 + "version": "4.1.1", 1420 + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 1421 + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", 1422 + "dev": true, 1423 + "engines": { 1424 + "node": ">=0.10.0" 1425 + } 1426 + }, 1427 + "node_modules/object-hash": { 1428 + "version": "3.0.0", 1429 + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", 1430 + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", 1431 + "dev": true, 1432 + "engines": { 1433 + "node": ">= 6" 1434 + } 1435 + }, 1436 + "node_modules/package-json-from-dist": { 1437 + "version": "1.0.0", 1438 + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", 1439 + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", 1440 + "dev": true 1441 + }, 721 1442 "node_modules/parse-svg-path": { 722 1443 "version": "0.1.2", 723 1444 "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", 724 1445 "integrity": "sha512-JyPSBnkTJ0AI8GGJLfMXvKq42cj5c006fnLz6fXy6zfoVjJizi8BNTpu8on8ziI1cKy9d9DGNuY17Ce7wuejpQ==" 1446 + }, 1447 + "node_modules/path-key": { 1448 + "version": "3.1.1", 1449 + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 1450 + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 1451 + "dev": true, 1452 + "engines": { 1453 + "node": ">=8" 1454 + } 725 1455 }, 726 1456 "node_modules/path-parse": { 727 1457 "version": "1.0.7", 728 1458 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 729 1459 "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 1460 + "dev": true 1461 + }, 1462 + "node_modules/path-scurry": { 1463 + "version": "1.11.1", 1464 + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", 1465 + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", 730 1466 "dev": true, 731 - "peer": true 1467 + "dependencies": { 1468 + "lru-cache": "^10.2.0", 1469 + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" 1470 + }, 1471 + "engines": { 1472 + "node": ">=16 || 14 >=14.18" 1473 + }, 1474 + "funding": { 1475 + "url": "https://github.com/sponsors/isaacs" 1476 + } 732 1477 }, 733 1478 "node_modules/picocolors": { 734 1479 "version": "1.0.1", ··· 740 1485 "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", 741 1486 "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", 742 1487 "dev": true, 743 - "peer": true, 744 1488 "engines": { 745 1489 "node": ">=8.6" 746 1490 }, ··· 748 1492 "url": "https://github.com/sponsors/jonschlinkert" 749 1493 } 750 1494 }, 1495 + "node_modules/pify": { 1496 + "version": "2.3.0", 1497 + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 1498 + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", 1499 + "dev": true, 1500 + "engines": { 1501 + "node": ">=0.10.0" 1502 + } 1503 + }, 1504 + "node_modules/pirates": { 1505 + "version": "4.0.6", 1506 + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", 1507 + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", 1508 + "dev": true, 1509 + "engines": { 1510 + "node": ">= 6" 1511 + } 1512 + }, 751 1513 "node_modules/pixi-filters": { 752 1514 "version": "6.0.4", 753 1515 "resolved": "https://registry.npmjs.org/pixi-filters/-/pixi-filters-6.0.4.tgz", ··· 807 1569 "node": "^10 || ^12 || >=14" 808 1570 } 809 1571 }, 1572 + "node_modules/postcss-import": { 1573 + "version": "15.1.0", 1574 + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", 1575 + "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", 1576 + "dev": true, 1577 + "dependencies": { 1578 + "postcss-value-parser": "^4.0.0", 1579 + "read-cache": "^1.0.0", 1580 + "resolve": "^1.1.7" 1581 + }, 1582 + "engines": { 1583 + "node": ">=14.0.0" 1584 + }, 1585 + "peerDependencies": { 1586 + "postcss": "^8.0.0" 1587 + } 1588 + }, 1589 + "node_modules/postcss-js": { 1590 + "version": "4.0.1", 1591 + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", 1592 + "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", 1593 + "dev": true, 1594 + "dependencies": { 1595 + "camelcase-css": "^2.0.1" 1596 + }, 1597 + "engines": { 1598 + "node": "^12 || ^14 || >= 16" 1599 + }, 1600 + "funding": { 1601 + "type": "opencollective", 1602 + "url": "https://opencollective.com/postcss/" 1603 + }, 1604 + "peerDependencies": { 1605 + "postcss": "^8.4.21" 1606 + } 1607 + }, 1608 + "node_modules/postcss-load-config": { 1609 + "version": "4.0.2", 1610 + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", 1611 + "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", 1612 + "dev": true, 1613 + "funding": [ 1614 + { 1615 + "type": "opencollective", 1616 + "url": "https://opencollective.com/postcss/" 1617 + }, 1618 + { 1619 + "type": "github", 1620 + "url": "https://github.com/sponsors/ai" 1621 + } 1622 + ], 1623 + "dependencies": { 1624 + "lilconfig": "^3.0.0", 1625 + "yaml": "^2.3.4" 1626 + }, 1627 + "engines": { 1628 + "node": ">= 14" 1629 + }, 1630 + "peerDependencies": { 1631 + "postcss": ">=8.0.9", 1632 + "ts-node": ">=9.0.0" 1633 + }, 1634 + "peerDependenciesMeta": { 1635 + "postcss": { 1636 + "optional": true 1637 + }, 1638 + "ts-node": { 1639 + "optional": true 1640 + } 1641 + } 1642 + }, 1643 + "node_modules/postcss-load-config/node_modules/lilconfig": { 1644 + "version": "3.1.2", 1645 + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", 1646 + "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", 1647 + "dev": true, 1648 + "engines": { 1649 + "node": ">=14" 1650 + }, 1651 + "funding": { 1652 + "url": "https://github.com/sponsors/antonk52" 1653 + } 1654 + }, 1655 + "node_modules/postcss-nested": { 1656 + "version": "6.2.0", 1657 + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", 1658 + "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", 1659 + "dev": true, 1660 + "funding": [ 1661 + { 1662 + "type": "opencollective", 1663 + "url": "https://opencollective.com/postcss/" 1664 + }, 1665 + { 1666 + "type": "github", 1667 + "url": "https://github.com/sponsors/ai" 1668 + } 1669 + ], 1670 + "dependencies": { 1671 + "postcss-selector-parser": "^6.1.1" 1672 + }, 1673 + "engines": { 1674 + "node": ">=12.0" 1675 + }, 1676 + "peerDependencies": { 1677 + "postcss": "^8.2.14" 1678 + } 1679 + }, 1680 + "node_modules/postcss-selector-parser": { 1681 + "version": "6.1.1", 1682 + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.1.tgz", 1683 + "integrity": "sha512-b4dlw/9V8A71rLIDsSwVmak9z2DuBUB7CA1/wSdelNEzqsjoSPeADTWNO09lpH49Diy3/JIZ2bSPB1dI3LJCHg==", 1684 + "dev": true, 1685 + "dependencies": { 1686 + "cssesc": "^3.0.0", 1687 + "util-deprecate": "^1.0.2" 1688 + }, 1689 + "engines": { 1690 + "node": ">=4" 1691 + } 1692 + }, 1693 + "node_modules/postcss-value-parser": { 1694 + "version": "4.2.0", 1695 + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", 1696 + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", 1697 + "dev": true 1698 + }, 810 1699 "node_modules/prettier": { 811 1700 "version": "3.3.3", 812 1701 "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz", ··· 821 1710 "url": "https://github.com/prettier/prettier?sponsor=1" 822 1711 } 823 1712 }, 1713 + "node_modules/queue-microtask": { 1714 + "version": "1.2.3", 1715 + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", 1716 + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", 1717 + "dev": true, 1718 + "funding": [ 1719 + { 1720 + "type": "github", 1721 + "url": "https://github.com/sponsors/feross" 1722 + }, 1723 + { 1724 + "type": "patreon", 1725 + "url": "https://www.patreon.com/feross" 1726 + }, 1727 + { 1728 + "type": "consulting", 1729 + "url": "https://feross.org/support" 1730 + } 1731 + ] 1732 + }, 1733 + "node_modules/read-cache": { 1734 + "version": "1.0.0", 1735 + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", 1736 + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", 1737 + "dev": true, 1738 + "dependencies": { 1739 + "pify": "^2.3.0" 1740 + } 1741 + }, 1742 + "node_modules/readdirp": { 1743 + "version": "3.6.0", 1744 + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 1745 + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 1746 + "dev": true, 1747 + "dependencies": { 1748 + "picomatch": "^2.2.1" 1749 + }, 1750 + "engines": { 1751 + "node": ">=8.10.0" 1752 + } 1753 + }, 824 1754 "node_modules/resolve": { 825 1755 "version": "1.22.8", 826 1756 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", 827 1757 "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", 828 1758 "dev": true, 829 - "peer": true, 830 1759 "dependencies": { 831 1760 "is-core-module": "^2.13.0", 832 1761 "path-parse": "^1.0.7", ··· 839 1768 "url": "https://github.com/sponsors/ljharb" 840 1769 } 841 1770 }, 1771 + "node_modules/reusify": { 1772 + "version": "1.0.4", 1773 + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", 1774 + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", 1775 + "dev": true, 1776 + "engines": { 1777 + "iojs": ">=1.0.0", 1778 + "node": ">=0.10.0" 1779 + } 1780 + }, 842 1781 "node_modules/rollup": { 843 1782 "version": "3.29.4", 844 1783 "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz", ··· 854 1793 "fsevents": "~2.3.2" 855 1794 } 856 1795 }, 1796 + "node_modules/run-parallel": { 1797 + "version": "1.2.0", 1798 + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", 1799 + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", 1800 + "dev": true, 1801 + "funding": [ 1802 + { 1803 + "type": "github", 1804 + "url": "https://github.com/sponsors/feross" 1805 + }, 1806 + { 1807 + "type": "patreon", 1808 + "url": "https://www.patreon.com/feross" 1809 + }, 1810 + { 1811 + "type": "consulting", 1812 + "url": "https://feross.org/support" 1813 + } 1814 + ], 1815 + "dependencies": { 1816 + "queue-microtask": "^1.2.2" 1817 + } 1818 + }, 1819 + "node_modules/shebang-command": { 1820 + "version": "2.0.0", 1821 + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 1822 + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 1823 + "dev": true, 1824 + "dependencies": { 1825 + "shebang-regex": "^3.0.0" 1826 + }, 1827 + "engines": { 1828 + "node": ">=8" 1829 + } 1830 + }, 1831 + "node_modules/shebang-regex": { 1832 + "version": "3.0.0", 1833 + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 1834 + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 1835 + "dev": true, 1836 + "engines": { 1837 + "node": ">=8" 1838 + } 1839 + }, 1840 + "node_modules/signal-exit": { 1841 + "version": "4.1.0", 1842 + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", 1843 + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", 1844 + "dev": true, 1845 + "engines": { 1846 + "node": ">=14" 1847 + }, 1848 + "funding": { 1849 + "url": "https://github.com/sponsors/isaacs" 1850 + } 1851 + }, 857 1852 "node_modules/source-map-js": { 858 1853 "version": "1.2.0", 859 1854 "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", ··· 867 1862 "resolved": "https://registry.npmjs.org/stats.js/-/stats.js-0.17.0.tgz", 868 1863 "integrity": "sha512-hNKz8phvYLPEcRkeG1rsGmV5ChMjKDAWU7/OJJdDErPBNChQXxCo3WZurGpnWc6gZhAzEPFad1aVgyOANH1sMw==" 869 1864 }, 1865 + "node_modules/string-width": { 1866 + "version": "5.1.2", 1867 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", 1868 + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", 1869 + "dev": true, 1870 + "dependencies": { 1871 + "eastasianwidth": "^0.2.0", 1872 + "emoji-regex": "^9.2.2", 1873 + "strip-ansi": "^7.0.1" 1874 + }, 1875 + "engines": { 1876 + "node": ">=12" 1877 + }, 1878 + "funding": { 1879 + "url": "https://github.com/sponsors/sindresorhus" 1880 + } 1881 + }, 1882 + "node_modules/string-width-cjs": { 1883 + "name": "string-width", 1884 + "version": "4.2.3", 1885 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 1886 + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 1887 + "dev": true, 1888 + "dependencies": { 1889 + "emoji-regex": "^8.0.0", 1890 + "is-fullwidth-code-point": "^3.0.0", 1891 + "strip-ansi": "^6.0.1" 1892 + }, 1893 + "engines": { 1894 + "node": ">=8" 1895 + } 1896 + }, 1897 + "node_modules/string-width-cjs/node_modules/ansi-regex": { 1898 + "version": "5.0.1", 1899 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 1900 + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 1901 + "dev": true, 1902 + "engines": { 1903 + "node": ">=8" 1904 + } 1905 + }, 1906 + "node_modules/string-width-cjs/node_modules/emoji-regex": { 1907 + "version": "8.0.0", 1908 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 1909 + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 1910 + "dev": true 1911 + }, 1912 + "node_modules/string-width-cjs/node_modules/strip-ansi": { 1913 + "version": "6.0.1", 1914 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 1915 + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1916 + "dev": true, 1917 + "dependencies": { 1918 + "ansi-regex": "^5.0.1" 1919 + }, 1920 + "engines": { 1921 + "node": ">=8" 1922 + } 1923 + }, 1924 + "node_modules/strip-ansi": { 1925 + "version": "7.1.0", 1926 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", 1927 + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", 1928 + "dev": true, 1929 + "dependencies": { 1930 + "ansi-regex": "^6.0.1" 1931 + }, 1932 + "engines": { 1933 + "node": ">=12" 1934 + }, 1935 + "funding": { 1936 + "url": "https://github.com/chalk/strip-ansi?sponsor=1" 1937 + } 1938 + }, 1939 + "node_modules/strip-ansi-cjs": { 1940 + "name": "strip-ansi", 1941 + "version": "6.0.1", 1942 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 1943 + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1944 + "dev": true, 1945 + "dependencies": { 1946 + "ansi-regex": "^5.0.1" 1947 + }, 1948 + "engines": { 1949 + "node": ">=8" 1950 + } 1951 + }, 1952 + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { 1953 + "version": "5.0.1", 1954 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 1955 + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 1956 + "dev": true, 1957 + "engines": { 1958 + "node": ">=8" 1959 + } 1960 + }, 1961 + "node_modules/sucrase": { 1962 + "version": "3.35.0", 1963 + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", 1964 + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", 1965 + "dev": true, 1966 + "dependencies": { 1967 + "@jridgewell/gen-mapping": "^0.3.2", 1968 + "commander": "^4.0.0", 1969 + "glob": "^10.3.10", 1970 + "lines-and-columns": "^1.1.6", 1971 + "mz": "^2.7.0", 1972 + "pirates": "^4.0.1", 1973 + "ts-interface-checker": "^0.1.9" 1974 + }, 1975 + "bin": { 1976 + "sucrase": "bin/sucrase", 1977 + "sucrase-node": "bin/sucrase-node" 1978 + }, 1979 + "engines": { 1980 + "node": ">=16 || 14 >=14.17" 1981 + } 1982 + }, 870 1983 "node_modules/supports-preserve-symlinks-flag": { 871 1984 "version": "1.0.0", 872 1985 "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", 873 1986 "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", 874 1987 "dev": true, 875 - "peer": true, 876 1988 "engines": { 877 1989 "node": ">= 0.4" 878 1990 }, ··· 880 1992 "url": "https://github.com/sponsors/ljharb" 881 1993 } 882 1994 }, 1995 + "node_modules/tailwindcss": { 1996 + "version": "3.4.6", 1997 + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.6.tgz", 1998 + "integrity": "sha512-1uRHzPB+Vzu57ocybfZ4jh5Q3SdlH7XW23J5sQoM9LhE9eIOlzxer/3XPSsycvih3rboRsvt0QCmzSrqyOYUIA==", 1999 + "dev": true, 2000 + "dependencies": { 2001 + "@alloc/quick-lru": "^5.2.0", 2002 + "arg": "^5.0.2", 2003 + "chokidar": "^3.5.3", 2004 + "didyoumean": "^1.2.2", 2005 + "dlv": "^1.1.3", 2006 + "fast-glob": "^3.3.0", 2007 + "glob-parent": "^6.0.2", 2008 + "is-glob": "^4.0.3", 2009 + "jiti": "^1.21.0", 2010 + "lilconfig": "^2.1.0", 2011 + "micromatch": "^4.0.5", 2012 + "normalize-path": "^3.0.0", 2013 + "object-hash": "^3.0.0", 2014 + "picocolors": "^1.0.0", 2015 + "postcss": "^8.4.23", 2016 + "postcss-import": "^15.1.0", 2017 + "postcss-js": "^4.0.1", 2018 + "postcss-load-config": "^4.0.1", 2019 + "postcss-nested": "^6.0.1", 2020 + "postcss-selector-parser": "^6.0.11", 2021 + "resolve": "^1.22.2", 2022 + "sucrase": "^3.32.0" 2023 + }, 2024 + "bin": { 2025 + "tailwind": "lib/cli.js", 2026 + "tailwindcss": "lib/cli.js" 2027 + }, 2028 + "engines": { 2029 + "node": ">=14.0.0" 2030 + } 2031 + }, 2032 + "node_modules/tailwindcss/node_modules/arg": { 2033 + "version": "5.0.2", 2034 + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", 2035 + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", 2036 + "dev": true 2037 + }, 2038 + "node_modules/thenify": { 2039 + "version": "3.3.1", 2040 + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", 2041 + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", 2042 + "dev": true, 2043 + "dependencies": { 2044 + "any-promise": "^1.0.0" 2045 + } 2046 + }, 2047 + "node_modules/thenify-all": { 2048 + "version": "1.6.0", 2049 + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", 2050 + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", 2051 + "dev": true, 2052 + "dependencies": { 2053 + "thenify": ">= 3.1.0 < 4" 2054 + }, 2055 + "engines": { 2056 + "node": ">=0.8" 2057 + } 2058 + }, 2059 + "node_modules/to-regex-range": { 2060 + "version": "5.0.1", 2061 + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", 2062 + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", 2063 + "dev": true, 2064 + "dependencies": { 2065 + "is-number": "^7.0.0" 2066 + }, 2067 + "engines": { 2068 + "node": ">=8.0" 2069 + } 2070 + }, 2071 + "node_modules/ts-interface-checker": { 2072 + "version": "0.1.13", 2073 + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", 2074 + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", 2075 + "dev": true 2076 + }, 883 2077 "node_modules/ts-node": { 884 2078 "version": "10.9.2", 885 2079 "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", ··· 942 2136 "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", 943 2137 "devOptional": true 944 2138 }, 2139 + "node_modules/update-browserslist-db": { 2140 + "version": "1.1.0", 2141 + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", 2142 + "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", 2143 + "dev": true, 2144 + "funding": [ 2145 + { 2146 + "type": "opencollective", 2147 + "url": "https://opencollective.com/browserslist" 2148 + }, 2149 + { 2150 + "type": "tidelift", 2151 + "url": "https://tidelift.com/funding/github/npm/browserslist" 2152 + }, 2153 + { 2154 + "type": "github", 2155 + "url": "https://github.com/sponsors/ai" 2156 + } 2157 + ], 2158 + "dependencies": { 2159 + "escalade": "^3.1.2", 2160 + "picocolors": "^1.0.1" 2161 + }, 2162 + "bin": { 2163 + "update-browserslist-db": "cli.js" 2164 + }, 2165 + "peerDependencies": { 2166 + "browserslist": ">= 4.21.0" 2167 + } 2168 + }, 2169 + "node_modules/util-deprecate": { 2170 + "version": "1.0.2", 2171 + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 2172 + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 2173 + "dev": true 2174 + }, 945 2175 "node_modules/v8-compile-cache-lib": { 946 2176 "version": "3.0.1", 947 2177 "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", ··· 1018 2248 "integrity": "sha512-cdbBUNR850AEoMd5nvLmnyeq63CSfoP1ctD/L2vLk/5+wsgAPlAVAzUK5nGKWO/jtehNlrSSHLteN+gFQw7VOA==", 1019 2249 "peerDependencies": { 1020 2250 "vite": "^2 || ^3 || ^4" 2251 + } 2252 + }, 2253 + "node_modules/which": { 2254 + "version": "2.0.2", 2255 + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 2256 + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 2257 + "dev": true, 2258 + "dependencies": { 2259 + "isexe": "^2.0.0" 2260 + }, 2261 + "bin": { 2262 + "node-which": "bin/node-which" 2263 + }, 2264 + "engines": { 2265 + "node": ">= 8" 2266 + } 2267 + }, 2268 + "node_modules/wrap-ansi": { 2269 + "version": "8.1.0", 2270 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", 2271 + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", 2272 + "dev": true, 2273 + "dependencies": { 2274 + "ansi-styles": "^6.1.0", 2275 + "string-width": "^5.0.1", 2276 + "strip-ansi": "^7.0.1" 2277 + }, 2278 + "engines": { 2279 + "node": ">=12" 2280 + }, 2281 + "funding": { 2282 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 2283 + } 2284 + }, 2285 + "node_modules/wrap-ansi-cjs": { 2286 + "name": "wrap-ansi", 2287 + "version": "7.0.0", 2288 + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 2289 + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 2290 + "dev": true, 2291 + "dependencies": { 2292 + "ansi-styles": "^4.0.0", 2293 + "string-width": "^4.1.0", 2294 + "strip-ansi": "^6.0.0" 2295 + }, 2296 + "engines": { 2297 + "node": ">=10" 2298 + }, 2299 + "funding": { 2300 + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 2301 + } 2302 + }, 2303 + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { 2304 + "version": "5.0.1", 2305 + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 2306 + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 2307 + "dev": true, 2308 + "engines": { 2309 + "node": ">=8" 2310 + } 2311 + }, 2312 + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { 2313 + "version": "4.3.0", 2314 + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 2315 + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 2316 + "dev": true, 2317 + "dependencies": { 2318 + "color-convert": "^2.0.1" 2319 + }, 2320 + "engines": { 2321 + "node": ">=8" 2322 + }, 2323 + "funding": { 2324 + "url": "https://github.com/chalk/ansi-styles?sponsor=1" 2325 + } 2326 + }, 2327 + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { 2328 + "version": "8.0.0", 2329 + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 2330 + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 2331 + "dev": true 2332 + }, 2333 + "node_modules/wrap-ansi-cjs/node_modules/string-width": { 2334 + "version": "4.2.3", 2335 + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 2336 + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 2337 + "dev": true, 2338 + "dependencies": { 2339 + "emoji-regex": "^8.0.0", 2340 + "is-fullwidth-code-point": "^3.0.0", 2341 + "strip-ansi": "^6.0.1" 2342 + }, 2343 + "engines": { 2344 + "node": ">=8" 2345 + } 2346 + }, 2347 + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { 2348 + "version": "6.0.1", 2349 + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 2350 + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 2351 + "dev": true, 2352 + "dependencies": { 2353 + "ansi-regex": "^5.0.1" 2354 + }, 2355 + "engines": { 2356 + "node": ">=8" 2357 + } 2358 + }, 2359 + "node_modules/yaml": { 2360 + "version": "2.4.5", 2361 + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.4.5.tgz", 2362 + "integrity": "sha512-aBx2bnqDzVOyNKfsysjA2ms5ZlnjSAW2eG3/L5G/CSujfjLJTJsEw1bGw8kCf04KodQWk1pxlGnZ56CRxiawmg==", 2363 + "dev": true, 2364 + "bin": { 2365 + "yaml": "bin.mjs" 2366 + }, 2367 + "engines": { 2368 + "node": ">= 14" 1021 2369 } 1022 2370 }, 1023 2371 "node_modules/yn": {
+3
package.json
··· 23 23 "devDependencies": { 24 24 "@types/node": "^20.14.11", 25 25 "@types/stats.js": "^0.17.3", 26 + "autoprefixer": "^10.4.19", 27 + "postcss": "^8.4.39", 28 + "tailwindcss": "^3.4.6", 26 29 "ts-node": "^10.9.2", 27 30 "typescript": "^5.5.3", 28 31 "vite-plugin-typescript": "^1.0.4"
+6
postcss.config.js
··· 1 + export default { 2 + plugins: { 3 + tailwindcss: {}, 4 + autoprefixer: {}, 5 + }, 6 + }
public/icons/apple-touch-icon.png

This is a binary file and will not be displayed.

public/icons/favicon.ico

This is a binary file and will not be displayed.

public/icons/icon-192.png

This is a binary file and will not be displayed.

public/icons/icon-512.png

This is a binary file and will not be displayed.

+1
public/icons/icon.svg
··· 1 + <svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" fill="none"><path fill="#E11D48" d="M10 10h100v100H10z"/><ellipse cx="85" cy="45" fill="#fff" rx="20" ry="16"/><ellipse cx="35" cy="45" fill="#fff" rx="20" ry="16"/><circle cx="35" cy="45" r="12" fill="#000"/><circle cx="85" cy="45" r="12" fill="#000"/></svg>
+14
public/icons/manifest.webmanifest
··· 1 + { 2 + "icons": [ 3 + { 4 + "src": "/shadow-shmup/icons/icon-192.png", 5 + "type": "image/png", 6 + "sizes": "192x192" 7 + }, 8 + { 9 + "src": "/shadow-shmup/icons/icon-512.png", 10 + "type": "image/png", 11 + "sizes": "512x512" 12 + } 13 + ] 14 + }
-1
src/controls.ts
··· 4 4 constructor() { 5 5 window.addEventListener('keydown', (e) => { 6 6 this.keys[e.key.toLowerCase()] = true; 7 - console.log(this.keys); 8 7 }); 9 8 window.addEventListener('keyup', (e) => { 10 9 this.keys[e.key.toLowerCase()] = false;
+8
tailwind.config.js
··· 1 + /** @type {import('tailwindcss').Config} */ 2 + export default { 3 + content: ['./index.html', './src/**/*.{js,ts,jsx,tsx}'], 4 + theme: { 5 + extend: {} 6 + }, 7 + plugins: [] 8 + };