From 9db321b19af951f871446e15c64637c1428bb88a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20=C5=BDingor?= Date: Wed, 19 Feb 2025 20:58:18 +0100 Subject: [PATCH] Pogress --- .gitignore | 2 + bun.lockb | Bin 61268 -> 65106 bytes pnpm-lock.yaml | 1466 -------------------------------------- src/App.tsx | 23 +- src/components/Error.tsx | 31 + src/lib/discord.ts | 16 +- src/lib/lizzy.ts | 64 +- src/views/InfoView.tsx | 45 +- src/views/LoginView.tsx | 3 +- 9 files changed, 109 insertions(+), 1541 deletions(-) delete mode 100644 pnpm-lock.yaml create mode 100644 src/components/Error.tsx diff --git a/.gitignore b/.gitignore index a547bf3..50c8dda 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,5 @@ dist-ssr *.njsproj *.sln *.sw? + +.env diff --git a/bun.lockb b/bun.lockb index d843b7e41bafcfe26ca86d54b6aeae055149b2f8..503d75a8244645ec26bf7b618ec357e189a9d6ee 100755 GIT binary patch delta 12216 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 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml deleted file mode 100644 index e66ca7e..0000000 --- a/pnpm-lock.yaml +++ /dev/null @@ -1,1466 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - dependencies: - '@tailwindcss/vite': - specifier: ^4.0.0 - version: 4.0.0(vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1)) - solid-js: - specifier: ^1.9.4 - version: 1.9.4 - tailwindcss: - specifier: ^4.0.0 - version: 4.0.0 - devDependencies: - '@fontsource/rajdhani': - specifier: ^5.1.1 - version: 5.1.1 - prettier: - specifier: ^3.4.2 - version: 3.4.2 - prettier-plugin-tailwindcss: - specifier: ^0.6.11 - version: 0.6.11(prettier@3.4.2) - tailwind-merge: - specifier: ^2.6.0 - version: 2.6.0 - typescript: - specifier: ~5.7.3 - version: 5.7.3 - vite: - specifier: ^6.0.11 - version: 6.0.11(jiti@2.4.2)(lightningcss@1.29.1) - vite-plugin-solid: - specifier: ^2.11.0 - version: 2.11.0(solid-js@1.9.4)(vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1)) - -packages: - - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - - '@babel/code-frame@7.26.2': - resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.26.5': - resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.26.7': - resolution: {integrity: sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.26.5': - resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.26.5': - resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.18.6': - resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.25.9': - resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.26.0': - resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-plugin-utils@7.26.5': - resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.25.9': - resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.25.9': - resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.25.9': - resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.26.7': - resolution: {integrity: sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.26.7': - resolution: {integrity: sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-syntax-jsx@7.25.9': - resolution: {integrity: sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/template@7.25.9': - resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.26.7': - resolution: {integrity: sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.26.7': - resolution: {integrity: sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==} - engines: {node: '>=6.9.0'} - - '@esbuild/aix-ppc64@0.24.2': - resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.24.2': - resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.24.2': - resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.24.2': - resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.24.2': - resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.24.2': - resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.24.2': - resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.24.2': - resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.24.2': - resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.24.2': - resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.24.2': - resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.24.2': - resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.24.2': - resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.24.2': - resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.24.2': - resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.24.2': - resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.24.2': - resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-arm64@0.24.2': - resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.24.2': - resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-arm64@0.24.2': - resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.24.2': - resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - - '@esbuild/sunos-x64@0.24.2': - resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.24.2': - resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.24.2': - resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.24.2': - resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - - '@fontsource/rajdhani@5.1.1': - resolution: {integrity: sha512-aAe194s86x7ALPmOcfWtFZk1tnJjPKcyvkfCIv6SsOO2+yd1u57uhGV4wwhXRB357X03zW0v7EUEarU51FFmiA==} - - '@jridgewell/gen-mapping@0.3.8': - resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.2': - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.2.1': - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/sourcemap-codec@1.5.0': - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} - - '@jridgewell/trace-mapping@0.3.25': - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - - '@rollup/rollup-android-arm-eabi@4.32.0': - resolution: {integrity: sha512-G2fUQQANtBPsNwiVFg4zKiPQyjVKZCUdQUol53R8E71J7AsheRMV/Yv/nB8giOcOVqP7//eB5xPqieBYZe9bGg==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.32.0': - resolution: {integrity: sha512-qhFwQ+ljoymC+j5lXRv8DlaJYY/+8vyvYmVx074zrLsu5ZGWYsJNLjPPVJJjhZQpyAKUGPydOq9hRLLNvh1s3A==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-darwin-arm64@4.32.0': - resolution: {integrity: sha512-44n/X3lAlWsEY6vF8CzgCx+LQaoqWGN7TzUfbJDiTIOjJm4+L2Yq+r5a8ytQRGyPqgJDs3Rgyo8eVL7n9iW6AQ==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.32.0': - resolution: {integrity: sha512-F9ct0+ZX5Np6+ZDztxiGCIvlCaW87HBdHcozUfsHnj1WCUTBUubAoanhHUfnUHZABlElyRikI0mgcw/qdEm2VQ==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-freebsd-arm64@4.32.0': - resolution: {integrity: sha512-JpsGxLBB2EFXBsTLHfkZDsXSpSmKD3VxXCgBQtlPcuAqB8TlqtLcbeMhxXQkCDv1avgwNjF8uEIbq5p+Cee0PA==} - cpu: [arm64] - os: [freebsd] - - '@rollup/rollup-freebsd-x64@4.32.0': - resolution: {integrity: sha512-wegiyBT6rawdpvnD9lmbOpx5Sph+yVZKHbhnSP9MqUEDX08G4UzMU+D87jrazGE7lRSyTRs6NEYHtzfkJ3FjjQ==} - cpu: [x64] - os: [freebsd] - - '@rollup/rollup-linux-arm-gnueabihf@4.32.0': - resolution: {integrity: sha512-3pA7xecItbgOs1A5H58dDvOUEboG5UfpTq3WzAdF54acBbUM+olDJAPkgj1GRJ4ZqE12DZ9/hNS2QZk166v92A==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.32.0': - resolution: {integrity: sha512-Y7XUZEVISGyge51QbYyYAEHwpGgmRrAxQXO3siyYo2kmaj72USSG8LtlQQgAtlGfxYiOwu+2BdbPjzEpcOpRmQ==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.32.0': - resolution: {integrity: sha512-r7/OTF5MqeBrZo5omPXcTnjvv1GsrdH8a8RerARvDFiDwFpDVDnJyByYM/nX+mvks8XXsgPUxkwe/ltaX2VH7w==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-musl@4.32.0': - resolution: {integrity: sha512-HJbifC9vex9NqnlodV2BHVFNuzKL5OnsV2dvTw6e1dpZKkNjPG6WUq+nhEYV6Hv2Bv++BXkwcyoGlXnPrjAKXw==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-loongarch64-gnu@4.32.0': - resolution: {integrity: sha512-VAEzZTD63YglFlWwRj3taofmkV1V3xhebDXffon7msNz4b14xKsz7utO6F8F4cqt8K/ktTl9rm88yryvDpsfOw==} - cpu: [loong64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.32.0': - resolution: {integrity: sha512-Sts5DST1jXAc9YH/iik1C9QRsLcCoOScf3dfbY5i4kH9RJpKxiTBXqm7qU5O6zTXBTEZry69bGszr3SMgYmMcQ==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.32.0': - resolution: {integrity: sha512-qhlXeV9AqxIyY9/R1h1hBD6eMvQCO34ZmdYvry/K+/MBs6d1nRFLm6BOiITLVI+nFAAB9kUB6sdJRKyVHXnqZw==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.32.0': - resolution: {integrity: sha512-8ZGN7ExnV0qjXa155Rsfi6H8M4iBBwNLBM9lcVS+4NcSzOFaNqmt7djlox8pN1lWrRPMRRQ8NeDlozIGx3Omsw==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.32.0': - resolution: {integrity: sha512-VDzNHtLLI5s7xd/VubyS10mq6TxvZBp+4NRWoW+Hi3tgV05RtVm4qK99+dClwTN1McA6PHwob6DEJ6PlXbY83A==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-musl@4.32.0': - resolution: {integrity: sha512-qcb9qYDlkxz9DxJo7SDhWxTWV1gFuwznjbTiov289pASxlfGbaOD54mgbs9+z94VwrXtKTu+2RqwlSTbiOqxGg==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-win32-arm64-msvc@4.32.0': - resolution: {integrity: sha512-pFDdotFDMXW2AXVbfdUEfidPAk/OtwE/Hd4eYMTNVVaCQ6Yl8et0meDaKNL63L44Haxv4UExpv9ydSf3aSayDg==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.32.0': - resolution: {integrity: sha512-/TG7WfrCAjeRNDvI4+0AAMoHxea/USWhAzf9PVDFHbcqrQ7hMMKp4jZIy4VEjk72AAfN5k4TiSMRXRKf/0akSw==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.32.0': - resolution: {integrity: sha512-5hqO5S3PTEO2E5VjCePxv40gIgyS2KvO7E7/vvC/NbIW4SIRamkMr1hqj+5Y67fbBWv/bQLB6KelBQmXlyCjWA==} - cpu: [x64] - os: [win32] - - '@tailwindcss/node@4.0.0': - resolution: {integrity: sha512-tfG2uBvo6j6kDIPmntxwXggCOZAt7SkpAXJ6pTIYirNdk5FBqh/CZZ9BZPpgcl/tNFLs6zc4yghM76sqiELG9g==} - - '@tailwindcss/oxide-android-arm64@4.0.0': - resolution: {integrity: sha512-EAhjU0+FIdyGPR+7MbBWubLLPtmOu+p7c2egTTFBRk/n//zYjNvVK0WhcBK5Y7oUB5mo4EjA2mCbY7dcEMWSRw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [android] - - '@tailwindcss/oxide-darwin-arm64@4.0.0': - resolution: {integrity: sha512-hdz4xnSWS11cIp+7ye+3dGHqs0X33z+BXXTtgPOguDWVa+TdXUzwxonklSzf5wlJFuot3dv5eWzhlNai0oYYQg==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - - '@tailwindcss/oxide-darwin-x64@4.0.0': - resolution: {integrity: sha512-+dOUUaXTkPKKhtUI9QtVaYg+MpmLh2CN0dHohiYXaBirEyPMkjaT0zbRgzQlNnQWjCVVXPQluIEb0OMEjSTH+Q==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - - '@tailwindcss/oxide-freebsd-x64@4.0.0': - resolution: {integrity: sha512-CJhGDhxnrmu4SwyC62fA+wP24MhA/TZlIhRHqg1kRuIHoGoVR2uSSm1qxTxU37tSSZj8Up0q6jsBJCAP4k7rgQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [freebsd] - - '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.0': - resolution: {integrity: sha512-Wy7Av0xzXfY2ujZBcYy4+7GQm25/J1iHvlQU2CfwdDCuPWfIjYzR6kggz+uVdSJyKV2s64znchBxRE8kV4uXSA==} - engines: {node: '>= 10'} - cpu: [arm] - os: [linux] - - '@tailwindcss/oxide-linux-arm64-gnu@4.0.0': - resolution: {integrity: sha512-srwBo2l6pvM0swBntc1ucuhGsfFOLkqPRFQ3dWARRTfSkL1U9nAsob2MKc/n47Eva/W9pZZgMOuf7rDw8pK1Ew==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@tailwindcss/oxide-linux-arm64-musl@4.0.0': - resolution: {integrity: sha512-abhusswkduYWuezkBmgo0K0/erGq3M4Se5xP0fhc/0dKs0X/rJUYYCFWntHb3IGh3aVzdQ0SXJs93P76DbUqtw==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@tailwindcss/oxide-linux-x64-gnu@4.0.0': - resolution: {integrity: sha512-hGtRYIUEx377/HlU49+jvVKKwU1MDSKYSMMs0JFO2Wp7LGxk5+0j5+RBk9NFnmp/lbp32yPTgIOO5m1BmDq36A==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@tailwindcss/oxide-linux-x64-musl@4.0.0': - resolution: {integrity: sha512-7xgQgSAThs0I14VAgmxpJnK6XFSZBxHMGoDXkLyYkEnu+8WRQMbCP93dkCUn2PIv+Q+JulRgc00PJ09uORSLXQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@tailwindcss/oxide-win32-arm64-msvc@4.0.0': - resolution: {integrity: sha512-qEcgTIPcWY5ZE7f6VxQ/JPrSFMcehzVIlZj7sGE3mVd5YWreAT+Fl1vSP8q2pjnWXn0avZG3Iw7a2hJQAm+fTQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - - '@tailwindcss/oxide-win32-x64-msvc@4.0.0': - resolution: {integrity: sha512-bqT0AY8RXb8GMDy28JtngvqaOSB2YixbLPLvUo6I6lkvvUwA6Eqh2Tj60e2Lh7O/k083f8tYiB0WEK4wmTI7Jg==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - - '@tailwindcss/oxide@4.0.0': - resolution: {integrity: sha512-W3FjpJgy4VV1JiL7iBYDf2n/WkeDg1Il+0Q7eWnqPyvkPPCo/Mbwc5BiaT7dfBNV6tQKAhVE34rU5xl8pSl50w==} - engines: {node: '>= 10'} - - '@tailwindcss/vite@4.0.0': - resolution: {integrity: sha512-4uukMiU9gHui8KMPMdWic5SP1O/tmQ1NFSRNrQWmcop5evAVl/LZ6/LuWL3quEiecp2RBcRWwqJrG+mFXlRlew==} - peerDependencies: - vite: ^5.2.0 || ^6 - - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} - - '@types/babel__generator@7.6.8': - resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} - - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - - '@types/babel__traverse@7.20.6': - resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==} - - '@types/estree@1.0.6': - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - - babel-plugin-jsx-dom-expressions@0.39.5: - resolution: {integrity: sha512-dwyVkszHRsZCXfFusu3xq1DJS7twhgLrjEpMC1gtTfJG1xSrMMKWWhdl1SFFFNXrvYDsoHiRxSbku/TzLxHNxg==} - peerDependencies: - '@babel/core': ^7.20.12 - - babel-preset-solid@1.9.3: - resolution: {integrity: sha512-jvlx5wDp8s+bEF9sGFw/84SInXOA51ttkUEroQziKMbxplXThVKt83qB6bDTa1HuLNatdU9FHpFOiQWs1tLQIg==} - peerDependencies: - '@babel/core': ^7.0.0 - - browserslist@4.24.4: - resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - caniuse-lite@1.0.30001695: - resolution: {integrity: sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - - debug@4.4.0: - resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - detect-libc@1.0.3: - resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} - engines: {node: '>=0.10'} - hasBin: true - - electron-to-chromium@1.5.88: - resolution: {integrity: sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==} - - enhanced-resolve@5.18.0: - resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==} - engines: {node: '>=10.13.0'} - - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - - esbuild@0.24.2: - resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} - engines: {node: '>=18'} - hasBin: true - - escalade@3.2.0: - resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} - engines: {node: '>=6'} - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - html-entities@2.3.3: - resolution: {integrity: sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA==} - - is-what@4.1.16: - resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==} - engines: {node: '>=12.13'} - - jiti@2.4.2: - resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} - hasBin: true - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - jsesc@3.1.0: - resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} - engines: {node: '>=6'} - hasBin: true - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - lightningcss-darwin-arm64@1.29.1: - resolution: {integrity: sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [darwin] - - lightningcss-darwin-x64@1.29.1: - resolution: {integrity: sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [darwin] - - lightningcss-freebsd-x64@1.29.1: - resolution: {integrity: sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [freebsd] - - lightningcss-linux-arm-gnueabihf@1.29.1: - resolution: {integrity: sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==} - engines: {node: '>= 12.0.0'} - cpu: [arm] - os: [linux] - - lightningcss-linux-arm64-gnu@1.29.1: - resolution: {integrity: sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - - lightningcss-linux-arm64-musl@1.29.1: - resolution: {integrity: sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [linux] - - lightningcss-linux-x64-gnu@1.29.1: - resolution: {integrity: sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - - lightningcss-linux-x64-musl@1.29.1: - resolution: {integrity: sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [linux] - - lightningcss-win32-arm64-msvc@1.29.1: - resolution: {integrity: sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==} - engines: {node: '>= 12.0.0'} - cpu: [arm64] - os: [win32] - - lightningcss-win32-x64-msvc@1.29.1: - resolution: {integrity: sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==} - engines: {node: '>= 12.0.0'} - cpu: [x64] - os: [win32] - - lightningcss@1.29.1: - resolution: {integrity: sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==} - engines: {node: '>= 12.0.0'} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - merge-anything@5.1.7: - resolution: {integrity: sha512-eRtbOb1N5iyH0tkQDAoQ4Ipsp/5qSR79Dzrz8hEPxRX10RWWR/iQXdoKmBSRCThY1Fh5EhISDtpSc93fpxUniQ==} - engines: {node: '>=12.13'} - - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - - nanoid@3.3.8: - resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - node-releases@2.0.19: - resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} - - parse5@7.2.1: - resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==} - - picocolors@1.1.1: - resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - - postcss@8.5.1: - resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==} - engines: {node: ^10 || ^12 || >=14} - - prettier-plugin-tailwindcss@0.6.11: - resolution: {integrity: sha512-YxaYSIvZPAqhrrEpRtonnrXdghZg1irNg4qrjboCXrpybLWVs55cW2N3juhspVJiO0JBvYJT8SYsJpc8OQSnsA==} - engines: {node: '>=14.21.3'} - peerDependencies: - '@ianvs/prettier-plugin-sort-imports': '*' - '@prettier/plugin-pug': '*' - '@shopify/prettier-plugin-liquid': '*' - '@trivago/prettier-plugin-sort-imports': '*' - '@zackad/prettier-plugin-twig': '*' - prettier: ^3.0 - prettier-plugin-astro: '*' - prettier-plugin-css-order: '*' - prettier-plugin-import-sort: '*' - prettier-plugin-jsdoc: '*' - prettier-plugin-marko: '*' - prettier-plugin-multiline-arrays: '*' - prettier-plugin-organize-attributes: '*' - prettier-plugin-organize-imports: '*' - prettier-plugin-sort-imports: '*' - prettier-plugin-style-order: '*' - prettier-plugin-svelte: '*' - peerDependenciesMeta: - '@ianvs/prettier-plugin-sort-imports': - optional: true - '@prettier/plugin-pug': - optional: true - '@shopify/prettier-plugin-liquid': - optional: true - '@trivago/prettier-plugin-sort-imports': - optional: true - '@zackad/prettier-plugin-twig': - optional: true - prettier-plugin-astro: - optional: true - prettier-plugin-css-order: - optional: true - prettier-plugin-import-sort: - optional: true - prettier-plugin-jsdoc: - optional: true - prettier-plugin-marko: - optional: true - prettier-plugin-multiline-arrays: - optional: true - prettier-plugin-organize-attributes: - optional: true - prettier-plugin-organize-imports: - optional: true - prettier-plugin-sort-imports: - optional: true - prettier-plugin-style-order: - optional: true - prettier-plugin-svelte: - optional: true - - prettier@3.4.2: - resolution: {integrity: sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==} - engines: {node: '>=14'} - hasBin: true - - rollup@4.32.0: - resolution: {integrity: sha512-JmrhfQR31Q4AuNBjjAX4s+a/Pu/Q8Q9iwjWBsjRH1q52SPFE2NqRMK6fUZKKnvKO6id+h7JIRf0oYsph53eATg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - seroval-plugins@1.2.0: - resolution: {integrity: sha512-hULTbfzSe81jGWLH8TAJjkEvw6JWMqOo9Uq+4V4vg+HNq53hyHldM9ZOfjdzokcFysiTp9aFdV2vJpZFqKeDjQ==} - engines: {node: '>=10'} - peerDependencies: - seroval: ^1.0 - - seroval@1.2.0: - resolution: {integrity: sha512-GURoU99ko2UiAgUC3qDCk59Jb3Ss4Po8VIMGkG8j5PFo2Q7y0YSMP8QG9NuL/fJCoTz9V1XZUbpNIMXPOfaGpA==} - engines: {node: '>=10'} - - solid-js@1.9.4: - resolution: {integrity: sha512-ipQl8FJ31bFUoBNScDQTG3BjN6+9Rg+Q+f10bUbnO6EOTTf5NGerJeHc7wyu5I4RMHEl/WwZwUmy/PTRgxxZ8g==} - - solid-refresh@0.6.3: - resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==} - peerDependencies: - solid-js: ^1.3 - - source-map-js@1.2.1: - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} - engines: {node: '>=0.10.0'} - - tailwind-merge@2.6.0: - resolution: {integrity: sha512-P+Vu1qXfzediirmHOC3xKGAYeZtPcV9g76X+xg2FD4tYgR71ewMA35Y3sCz3zhiN/dwefRpJX0yBcgwi1fXNQA==} - - tailwindcss@4.0.0: - resolution: {integrity: sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ==} - - tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - - typescript@5.7.3: - resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} - engines: {node: '>=14.17'} - hasBin: true - - update-browserslist-db@1.1.2: - resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - validate-html-nesting@1.2.2: - resolution: {integrity: sha512-hGdgQozCsQJMyfK5urgFcWEqsSSrK63Awe0t/IMR0bZ0QMtnuaiHzThW81guu3qx9abLi99NEuiaN6P9gVYsNg==} - - vite-plugin-solid@2.11.0: - resolution: {integrity: sha512-G+NiwDj4EAeUE0wt3Ur9f+Lt9oMUuLd0FIxYuqwJSqRacKQRteCwUFzNy8zMEt88xWokngQhiFjfJMhjc1fDXw==} - peerDependencies: - '@testing-library/jest-dom': ^5.16.6 || ^5.17.0 || ^6.* - solid-js: ^1.7.2 - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 - peerDependenciesMeta: - '@testing-library/jest-dom': - optional: true - - vite@6.0.11: - resolution: {integrity: sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg==} - engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 - jiti: '>=1.21.0' - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.16.0 - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - '@types/node': - optional: true - jiti: - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - tsx: - optional: true - yaml: - optional: true - - vitefu@1.0.5: - resolution: {integrity: sha512-h4Vflt9gxODPFNGPwp4zAMZRpZR7eslzwH2c5hn5kNZ5rhnKyRJ50U+yGCdc2IRaBs8O4haIgLNGrV5CrpMsCA==} - peerDependencies: - vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 - peerDependenciesMeta: - vite: - optional: true - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - -snapshots: - - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 - - '@babel/code-frame@7.26.2': - dependencies: - '@babel/helper-validator-identifier': 7.25.9 - js-tokens: 4.0.0 - picocolors: 1.1.1 - - '@babel/compat-data@7.26.5': {} - - '@babel/core@7.26.7': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.5 - '@babel/helper-compilation-targets': 7.26.5 - '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7) - '@babel/helpers': 7.26.7 - '@babel/parser': 7.26.7 - '@babel/template': 7.25.9 - '@babel/traverse': 7.26.7 - '@babel/types': 7.26.7 - convert-source-map: 2.0.0 - debug: 4.4.0 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.26.5': - dependencies: - '@babel/parser': 7.26.7 - '@babel/types': 7.26.7 - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.1.0 - - '@babel/helper-compilation-targets@7.26.5': - dependencies: - '@babel/compat-data': 7.26.5 - '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.4 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-module-imports@7.18.6': - dependencies: - '@babel/types': 7.26.7 - - '@babel/helper-module-imports@7.25.9': - dependencies: - '@babel/traverse': 7.26.7 - '@babel/types': 7.26.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.7)': - dependencies: - '@babel/core': 7.26.7 - '@babel/helper-module-imports': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.26.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-plugin-utils@7.26.5': {} - - '@babel/helper-string-parser@7.25.9': {} - - '@babel/helper-validator-identifier@7.25.9': {} - - '@babel/helper-validator-option@7.25.9': {} - - '@babel/helpers@7.26.7': - dependencies: - '@babel/template': 7.25.9 - '@babel/types': 7.26.7 - - '@babel/parser@7.26.7': - dependencies: - '@babel/types': 7.26.7 - - '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.7)': - dependencies: - '@babel/core': 7.26.7 - '@babel/helper-plugin-utils': 7.26.5 - - '@babel/template@7.25.9': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.7 - '@babel/types': 7.26.7 - - '@babel/traverse@7.26.7': - dependencies: - '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.5 - '@babel/parser': 7.26.7 - '@babel/template': 7.25.9 - '@babel/types': 7.26.7 - debug: 4.4.0 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.26.7': - dependencies: - '@babel/helper-string-parser': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 - - '@esbuild/aix-ppc64@0.24.2': - optional: true - - '@esbuild/android-arm64@0.24.2': - optional: true - - '@esbuild/android-arm@0.24.2': - optional: true - - '@esbuild/android-x64@0.24.2': - optional: true - - '@esbuild/darwin-arm64@0.24.2': - optional: true - - '@esbuild/darwin-x64@0.24.2': - optional: true - - '@esbuild/freebsd-arm64@0.24.2': - optional: true - - '@esbuild/freebsd-x64@0.24.2': - optional: true - - '@esbuild/linux-arm64@0.24.2': - optional: true - - '@esbuild/linux-arm@0.24.2': - optional: true - - '@esbuild/linux-ia32@0.24.2': - optional: true - - '@esbuild/linux-loong64@0.24.2': - optional: true - - '@esbuild/linux-mips64el@0.24.2': - optional: true - - '@esbuild/linux-ppc64@0.24.2': - optional: true - - '@esbuild/linux-riscv64@0.24.2': - optional: true - - '@esbuild/linux-s390x@0.24.2': - optional: true - - '@esbuild/linux-x64@0.24.2': - optional: true - - '@esbuild/netbsd-arm64@0.24.2': - optional: true - - '@esbuild/netbsd-x64@0.24.2': - optional: true - - '@esbuild/openbsd-arm64@0.24.2': - optional: true - - '@esbuild/openbsd-x64@0.24.2': - optional: true - - '@esbuild/sunos-x64@0.24.2': - optional: true - - '@esbuild/win32-arm64@0.24.2': - optional: true - - '@esbuild/win32-ia32@0.24.2': - optional: true - - '@esbuild/win32-x64@0.24.2': - optional: true - - '@fontsource/rajdhani@5.1.1': {} - - '@jridgewell/gen-mapping@0.3.8': - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.1.2': {} - - '@jridgewell/set-array@1.2.1': {} - - '@jridgewell/sourcemap-codec@1.5.0': {} - - '@jridgewell/trace-mapping@0.3.25': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 - - '@rollup/rollup-android-arm-eabi@4.32.0': - optional: true - - '@rollup/rollup-android-arm64@4.32.0': - optional: true - - '@rollup/rollup-darwin-arm64@4.32.0': - optional: true - - '@rollup/rollup-darwin-x64@4.32.0': - optional: true - - '@rollup/rollup-freebsd-arm64@4.32.0': - optional: true - - '@rollup/rollup-freebsd-x64@4.32.0': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.32.0': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.32.0': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.32.0': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.32.0': - optional: true - - '@rollup/rollup-linux-loongarch64-gnu@4.32.0': - optional: true - - '@rollup/rollup-linux-powerpc64le-gnu@4.32.0': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.32.0': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.32.0': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.32.0': - optional: true - - '@rollup/rollup-linux-x64-musl@4.32.0': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.32.0': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.32.0': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.32.0': - optional: true - - '@tailwindcss/node@4.0.0': - dependencies: - enhanced-resolve: 5.18.0 - jiti: 2.4.2 - tailwindcss: 4.0.0 - - '@tailwindcss/oxide-android-arm64@4.0.0': - optional: true - - '@tailwindcss/oxide-darwin-arm64@4.0.0': - optional: true - - '@tailwindcss/oxide-darwin-x64@4.0.0': - optional: true - - '@tailwindcss/oxide-freebsd-x64@4.0.0': - optional: true - - '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.0': - optional: true - - '@tailwindcss/oxide-linux-arm64-gnu@4.0.0': - optional: true - - '@tailwindcss/oxide-linux-arm64-musl@4.0.0': - optional: true - - '@tailwindcss/oxide-linux-x64-gnu@4.0.0': - optional: true - - '@tailwindcss/oxide-linux-x64-musl@4.0.0': - optional: true - - '@tailwindcss/oxide-win32-arm64-msvc@4.0.0': - optional: true - - '@tailwindcss/oxide-win32-x64-msvc@4.0.0': - optional: true - - '@tailwindcss/oxide@4.0.0': - optionalDependencies: - '@tailwindcss/oxide-android-arm64': 4.0.0 - '@tailwindcss/oxide-darwin-arm64': 4.0.0 - '@tailwindcss/oxide-darwin-x64': 4.0.0 - '@tailwindcss/oxide-freebsd-x64': 4.0.0 - '@tailwindcss/oxide-linux-arm-gnueabihf': 4.0.0 - '@tailwindcss/oxide-linux-arm64-gnu': 4.0.0 - '@tailwindcss/oxide-linux-arm64-musl': 4.0.0 - '@tailwindcss/oxide-linux-x64-gnu': 4.0.0 - '@tailwindcss/oxide-linux-x64-musl': 4.0.0 - '@tailwindcss/oxide-win32-arm64-msvc': 4.0.0 - '@tailwindcss/oxide-win32-x64-msvc': 4.0.0 - - '@tailwindcss/vite@4.0.0(vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1))': - dependencies: - '@tailwindcss/node': 4.0.0 - '@tailwindcss/oxide': 4.0.0 - lightningcss: 1.29.1 - tailwindcss: 4.0.0 - vite: 6.0.11(jiti@2.4.2)(lightningcss@1.29.1) - - '@types/babel__core@7.20.5': - dependencies: - '@babel/parser': 7.26.7 - '@babel/types': 7.26.7 - '@types/babel__generator': 7.6.8 - '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.20.6 - - '@types/babel__generator@7.6.8': - dependencies: - '@babel/types': 7.26.7 - - '@types/babel__template@7.4.4': - dependencies: - '@babel/parser': 7.26.7 - '@babel/types': 7.26.7 - - '@types/babel__traverse@7.20.6': - dependencies: - '@babel/types': 7.26.7 - - '@types/estree@1.0.6': {} - - babel-plugin-jsx-dom-expressions@0.39.5(@babel/core@7.26.7): - dependencies: - '@babel/core': 7.26.7 - '@babel/helper-module-imports': 7.18.6 - '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.7) - '@babel/types': 7.26.7 - html-entities: 2.3.3 - parse5: 7.2.1 - validate-html-nesting: 1.2.2 - - babel-preset-solid@1.9.3(@babel/core@7.26.7): - dependencies: - '@babel/core': 7.26.7 - babel-plugin-jsx-dom-expressions: 0.39.5(@babel/core@7.26.7) - - browserslist@4.24.4: - dependencies: - caniuse-lite: 1.0.30001695 - electron-to-chromium: 1.5.88 - node-releases: 2.0.19 - update-browserslist-db: 1.1.2(browserslist@4.24.4) - - caniuse-lite@1.0.30001695: {} - - convert-source-map@2.0.0: {} - - csstype@3.1.3: {} - - debug@4.4.0: - dependencies: - ms: 2.1.3 - - detect-libc@1.0.3: {} - - electron-to-chromium@1.5.88: {} - - enhanced-resolve@5.18.0: - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - - entities@4.5.0: {} - - esbuild@0.24.2: - optionalDependencies: - '@esbuild/aix-ppc64': 0.24.2 - '@esbuild/android-arm': 0.24.2 - '@esbuild/android-arm64': 0.24.2 - '@esbuild/android-x64': 0.24.2 - '@esbuild/darwin-arm64': 0.24.2 - '@esbuild/darwin-x64': 0.24.2 - '@esbuild/freebsd-arm64': 0.24.2 - '@esbuild/freebsd-x64': 0.24.2 - '@esbuild/linux-arm': 0.24.2 - '@esbuild/linux-arm64': 0.24.2 - '@esbuild/linux-ia32': 0.24.2 - '@esbuild/linux-loong64': 0.24.2 - '@esbuild/linux-mips64el': 0.24.2 - '@esbuild/linux-ppc64': 0.24.2 - '@esbuild/linux-riscv64': 0.24.2 - '@esbuild/linux-s390x': 0.24.2 - '@esbuild/linux-x64': 0.24.2 - '@esbuild/netbsd-arm64': 0.24.2 - '@esbuild/netbsd-x64': 0.24.2 - '@esbuild/openbsd-arm64': 0.24.2 - '@esbuild/openbsd-x64': 0.24.2 - '@esbuild/sunos-x64': 0.24.2 - '@esbuild/win32-arm64': 0.24.2 - '@esbuild/win32-ia32': 0.24.2 - '@esbuild/win32-x64': 0.24.2 - - escalade@3.2.0: {} - - fsevents@2.3.3: - optional: true - - gensync@1.0.0-beta.2: {} - - globals@11.12.0: {} - - graceful-fs@4.2.11: {} - - html-entities@2.3.3: {} - - is-what@4.1.16: {} - - jiti@2.4.2: {} - - js-tokens@4.0.0: {} - - jsesc@3.1.0: {} - - json5@2.2.3: {} - - lightningcss-darwin-arm64@1.29.1: - optional: true - - lightningcss-darwin-x64@1.29.1: - optional: true - - lightningcss-freebsd-x64@1.29.1: - optional: true - - lightningcss-linux-arm-gnueabihf@1.29.1: - optional: true - - lightningcss-linux-arm64-gnu@1.29.1: - optional: true - - lightningcss-linux-arm64-musl@1.29.1: - optional: true - - lightningcss-linux-x64-gnu@1.29.1: - optional: true - - lightningcss-linux-x64-musl@1.29.1: - optional: true - - lightningcss-win32-arm64-msvc@1.29.1: - optional: true - - lightningcss-win32-x64-msvc@1.29.1: - optional: true - - lightningcss@1.29.1: - dependencies: - detect-libc: 1.0.3 - optionalDependencies: - lightningcss-darwin-arm64: 1.29.1 - lightningcss-darwin-x64: 1.29.1 - lightningcss-freebsd-x64: 1.29.1 - lightningcss-linux-arm-gnueabihf: 1.29.1 - lightningcss-linux-arm64-gnu: 1.29.1 - lightningcss-linux-arm64-musl: 1.29.1 - lightningcss-linux-x64-gnu: 1.29.1 - lightningcss-linux-x64-musl: 1.29.1 - lightningcss-win32-arm64-msvc: 1.29.1 - lightningcss-win32-x64-msvc: 1.29.1 - - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - - merge-anything@5.1.7: - dependencies: - is-what: 4.1.16 - - ms@2.1.3: {} - - nanoid@3.3.8: {} - - node-releases@2.0.19: {} - - parse5@7.2.1: - dependencies: - entities: 4.5.0 - - picocolors@1.1.1: {} - - postcss@8.5.1: - dependencies: - nanoid: 3.3.8 - picocolors: 1.1.1 - source-map-js: 1.2.1 - - prettier-plugin-tailwindcss@0.6.11(prettier@3.4.2): - dependencies: - prettier: 3.4.2 - - prettier@3.4.2: {} - - rollup@4.32.0: - dependencies: - '@types/estree': 1.0.6 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.32.0 - '@rollup/rollup-android-arm64': 4.32.0 - '@rollup/rollup-darwin-arm64': 4.32.0 - '@rollup/rollup-darwin-x64': 4.32.0 - '@rollup/rollup-freebsd-arm64': 4.32.0 - '@rollup/rollup-freebsd-x64': 4.32.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.32.0 - '@rollup/rollup-linux-arm-musleabihf': 4.32.0 - '@rollup/rollup-linux-arm64-gnu': 4.32.0 - '@rollup/rollup-linux-arm64-musl': 4.32.0 - '@rollup/rollup-linux-loongarch64-gnu': 4.32.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.32.0 - '@rollup/rollup-linux-riscv64-gnu': 4.32.0 - '@rollup/rollup-linux-s390x-gnu': 4.32.0 - '@rollup/rollup-linux-x64-gnu': 4.32.0 - '@rollup/rollup-linux-x64-musl': 4.32.0 - '@rollup/rollup-win32-arm64-msvc': 4.32.0 - '@rollup/rollup-win32-ia32-msvc': 4.32.0 - '@rollup/rollup-win32-x64-msvc': 4.32.0 - fsevents: 2.3.3 - - semver@6.3.1: {} - - seroval-plugins@1.2.0(seroval@1.2.0): - dependencies: - seroval: 1.2.0 - - seroval@1.2.0: {} - - solid-js@1.9.4: - dependencies: - csstype: 3.1.3 - seroval: 1.2.0 - seroval-plugins: 1.2.0(seroval@1.2.0) - - solid-refresh@0.6.3(solid-js@1.9.4): - dependencies: - '@babel/generator': 7.26.5 - '@babel/helper-module-imports': 7.25.9 - '@babel/types': 7.26.7 - solid-js: 1.9.4 - transitivePeerDependencies: - - supports-color - - source-map-js@1.2.1: {} - - tailwind-merge@2.6.0: {} - - tailwindcss@4.0.0: {} - - tapable@2.2.1: {} - - typescript@5.7.3: {} - - update-browserslist-db@1.1.2(browserslist@4.24.4): - dependencies: - browserslist: 4.24.4 - escalade: 3.2.0 - picocolors: 1.1.1 - - validate-html-nesting@1.2.2: {} - - vite-plugin-solid@2.11.0(solid-js@1.9.4)(vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1)): - dependencies: - '@babel/core': 7.26.7 - '@types/babel__core': 7.20.5 - babel-preset-solid: 1.9.3(@babel/core@7.26.7) - merge-anything: 5.1.7 - solid-js: 1.9.4 - solid-refresh: 0.6.3(solid-js@1.9.4) - vite: 6.0.11(jiti@2.4.2)(lightningcss@1.29.1) - vitefu: 1.0.5(vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1)) - transitivePeerDependencies: - - supports-color - - vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1): - dependencies: - esbuild: 0.24.2 - postcss: 8.5.1 - rollup: 4.32.0 - optionalDependencies: - fsevents: 2.3.3 - jiti: 2.4.2 - lightningcss: 1.29.1 - - vitefu@1.0.5(vite@6.0.11(jiti@2.4.2)(lightningcss@1.29.1)): - optionalDependencies: - vite: 6.0.11(jiti@2.4.2)(lightningcss@1.29.1) - - yallist@3.1.1: {} diff --git a/src/App.tsx b/src/App.tsx index b7827f1..0437ff4 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,10 +1,15 @@ -import { createSignal, Show, Suspense } from "solid-js"; +import { createEffect, createResource, ErrorBoundary, Show, Suspense } from "solid-js"; import { LoginView } from "./views/LoginView"; import { InfoView } from "./views/InfoView"; import { Dots } from "./components/Dots"; +import { fetchMemberInfo } from "./lib/lizzy"; +import { fetchCurrentUser } from "./lib/discord"; +import { AppError } from "./components/Error"; export function App() { - const [token, _setToken] = createSignal("e"); + const [user, { refetch }] = createResource(fetchCurrentUser); + const [info] = createResource(() => user.state === "ready" && user()?.id, fetchMemberInfo); + const error = () => user.error || info.error; return ( <> @@ -14,11 +19,15 @@ export function App() { - Loading...}> - }> - - - + }> + }> + Loading...}> + }> + + + + + ); } diff --git a/src/components/Error.tsx b/src/components/Error.tsx new file mode 100644 index 0000000..fc544b5 --- /dev/null +++ b/src/components/Error.tsx @@ -0,0 +1,31 @@ +import { Show } from "solid-js"; + +export interface AppErrorProps { + error: unknown; + retry?: () => void; +} + +export function AppError(props: AppErrorProps) { + return ( +
+

Error fetching data

+ +

+ + Make sure you're connected to the internet and that no extension is blocking cookies! + +

+ + {props.error?.toString()} + + + + +
+ ); +} diff --git a/src/lib/discord.ts b/src/lib/discord.ts index 2c92708..8802a07 100644 --- a/src/lib/discord.ts +++ b/src/lib/discord.ts @@ -4,7 +4,15 @@ export interface DiscordUser { global_name?: string; } -export const discordData: DiscordUser = { - id: "a", - username: "zhincore", -}; +export async function fetchCurrentUser(): Promise { + const response = await fetch(`https://discord.com/api/v10/users/@me`, { + mode: "cors", + credentials: "include", + }); + + if (!response.ok) { + return; + } + + return await response.json(); +} diff --git a/src/lib/lizzy.ts b/src/lib/lizzy.ts index e587717..c2d7163 100644 --- a/src/lib/lizzy.ts +++ b/src/lib/lizzy.ts @@ -7,52 +7,26 @@ export interface Warning { export interface LizzyMemberInfo { DiscordId: string; - Status: "Warn" | "Kick" | "Ban"; - WarningLevel: number; - WarningCount: number; - LastWarning: string; // ISO 8601 date string - LastReason: string; + Status: "Warn" | "Kick" | "Ban" | null; + WarningLevel: number | null; + WarningCount: number | null; + LastWarning: string | null; // ISO 8601 date string + LastReason: string | null; Resolved: boolean; - Warnings: Warning[]; + Warnings?: Warning[]; } -export const data: LizzyMemberInfo = await fetch("http://localhost:3000/api/web/user/moderation/697882016892321843") - .then((response) => response) - .then((res) => res.json()) - .catch((error) => console.error(error)); +export const LOGIN_URL = `${import.meta.env.VITE_API_URL}/auth/login`; -// export const data: LizzyMemberInfo = { -// DiscordId: "879182739817238123", -// Status: "Warned", -// WarningLevel: 3, -// WarningCount: 14, -// LastWarning: "2021-10-10T12:00:00Z", -// LastReason: "Because they've been a dick.", -// Resolve: null, -// Warnings: [ -// { -// ID: 1, -// IssuedTime: "2021-10-10T12:00:00Z", -// Reason: "Because", -// Issuer: "Manfred", -// }, -// { -// ID: 2, -// IssuedTime: "2021-10-10T12:00:00Z", -// Reason: "Because", -// Issuer: "Gustaf", -// }, -// { -// ID: 3, -// IssuedTime: "2021-10-10T12:00:00Z", -// Reason: "Because", -// Issuer: "Zhin", -// }, -// { -// ID: 4, -// IssuedTime: "2021-10-10T12:00:00Z", -// Reason: "Because", -// Issuer: "Everyone", -// }, -// ], -// }; +export async function fetchMemberInfo(userId: string): Promise { + const response = await fetch(`${import.meta.env.VITE_API_URL}/api/web/user/moderation/${userId}`, { + mode: "cors", + credentials: "include", + }); + + if (!response.ok) { + throw new Error(`Unexpected response code ${response.status}`); + } + + return await response.json(); +} diff --git a/src/views/InfoView.tsx b/src/views/InfoView.tsx index 233ac01..9b2e53c 100644 --- a/src/views/InfoView.tsx +++ b/src/views/InfoView.tsx @@ -1,48 +1,53 @@ -import { createResource, For, Show } from "solid-js"; -import { data } from "../lib/lizzy"; +import { For, Show } from "solid-js"; import { DataRow } from "../components/DataRow"; -import { discordData } from "../lib/discord"; +import { DiscordUser } from "../lib/discord"; +import { LizzyMemberInfo } from "../lib/lizzy"; +import { ParentProps } from "solid-js/types/server/rendering.js"; -export function InfoView() { - console.log(data); - - const [info] = createResource(() => data); - const [user] = createResource(() => discordData); +export interface InfoViewProps { + user: DiscordUser; + info: LizzyMemberInfo; +} +export function InfoView(props: InfoViewProps) { return ( <>

- Logged in as {user()?.global_name || user()?.username}. + Logged in as {props.user.global_name || props.user.username}.

- - - + + +
{ info()?.LastWarning ? new Date(info()?.LastWarning || 0).toLocaleString() : ""}} + value={ + Never}> + {(lastWarning) => } + + } /> - +
- +

Warnings

    - + {(warning) => (