remove test svelte project
This commit is contained in:
26
.gitignore
vendored
26
.gitignore
vendored
@@ -1,27 +1,3 @@
|
|||||||
# Logs
|
|
||||||
logs
|
|
||||||
*.log
|
|
||||||
npm-debug.log*
|
|
||||||
yarn-debug.log*
|
|
||||||
yarn-error.log*
|
|
||||||
pnpm-debug.log*
|
|
||||||
lerna-debug.log*
|
|
||||||
|
|
||||||
node_modules
|
|
||||||
dist
|
|
||||||
dist-ssr
|
|
||||||
*.local
|
|
||||||
|
|
||||||
# Editor directories and files
|
|
||||||
.vscode/*
|
|
||||||
!.vscode/extensions.json
|
|
||||||
.idea
|
|
||||||
.DS_Store
|
|
||||||
*.suo
|
|
||||||
*.ntvs*
|
|
||||||
*.njsproj
|
|
||||||
*.sln
|
|
||||||
*.sw?
|
|
||||||
|
|
||||||
.vscode
|
.vscode
|
||||||
.direnv
|
.direnv
|
||||||
|
svelte
|
||||||
|
|||||||
61
flake.lock
generated
61
flake.lock
generated
@@ -1,61 +0,0 @@
|
|||||||
{
|
|
||||||
"nodes": {
|
|
||||||
"flake-utils": {
|
|
||||||
"inputs": {
|
|
||||||
"systems": "systems"
|
|
||||||
},
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1731533236,
|
|
||||||
"narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=",
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"rev": "11707dc2f618dd54ca8739b309ec4fc024de578b",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "numtide",
|
|
||||||
"repo": "flake-utils",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"nixpkgs": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1780243769,
|
|
||||||
"narHash": "sha256-x5UQuRsH3MqI0U9afaXSNqzTPSeZlRLvFAav2Ux1pNw=",
|
|
||||||
"owner": "nixos",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"rev": "331800de5053fcebacf6813adb5db9c9dca22a0c",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nixos",
|
|
||||||
"ref": "nixos-unstable",
|
|
||||||
"repo": "nixpkgs",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
|
||||||
"inputs": {
|
|
||||||
"flake-utils": "flake-utils",
|
|
||||||
"nixpkgs": "nixpkgs"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"systems": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1681028828,
|
|
||||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-systems",
|
|
||||||
"repo": "default",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": "root",
|
|
||||||
"version": 7
|
|
||||||
}
|
|
||||||
22
flake.nix
22
flake.nix
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
description = "Development environment for VSSM Web UI Dashboard";
|
|
||||||
|
|
||||||
inputs = {
|
|
||||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
||||||
flake-utils.url = "github:numtide/flake-utils";
|
|
||||||
};
|
|
||||||
|
|
||||||
outputs = { self, nixpkgs, flake-utils }:
|
|
||||||
flake-utils.lib.eachDefaultSystem (system:
|
|
||||||
let
|
|
||||||
pkgs = import nixpkgs { inherit system; };
|
|
||||||
in
|
|
||||||
{
|
|
||||||
devShells.default = pkgs.mkShell {
|
|
||||||
nativeBuildInputs = with pkgs; [
|
|
||||||
nodejs_22
|
|
||||||
pnpm
|
|
||||||
];
|
|
||||||
};
|
|
||||||
});
|
|
||||||
}
|
|
||||||
13
index.html
13
index.html
@@ -1,13 +0,0 @@
|
|||||||
<!doctype html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
||||||
<title>vssm_web</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<div id="app"></div>
|
|
||||||
<script type="module" src="/src/main.js"></script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,33 +0,0 @@
|
|||||||
{
|
|
||||||
"compilerOptions": {
|
|
||||||
"moduleResolution": "bundler",
|
|
||||||
"target": "ESNext",
|
|
||||||
"module": "ESNext",
|
|
||||||
/**
|
|
||||||
* svelte-preprocess cannot figure out whether you have
|
|
||||||
* a value or a type, so tell TypeScript to enforce using
|
|
||||||
* `import type` instead of `import` for Types.
|
|
||||||
*/
|
|
||||||
"verbatimModuleSyntax": true,
|
|
||||||
"isolatedModules": true,
|
|
||||||
"resolveJsonModule": true,
|
|
||||||
/**
|
|
||||||
* To have warnings / errors of the Svelte compiler at the
|
|
||||||
* correct position, enable source maps by default.
|
|
||||||
*/
|
|
||||||
"sourceMap": true,
|
|
||||||
"esModuleInterop": true,
|
|
||||||
"types": ["vite/client"],
|
|
||||||
"skipLibCheck": true,
|
|
||||||
/**
|
|
||||||
* Typecheck JS in `.svelte` and `.js` files by default.
|
|
||||||
* Disable this if you'd like to use dynamic types.
|
|
||||||
*/
|
|
||||||
"checkJs": true
|
|
||||||
},
|
|
||||||
/**
|
|
||||||
* Use global.d.ts instead of compilerOptions.types
|
|
||||||
* to avoid limiting type declarations.
|
|
||||||
*/
|
|
||||||
"include": ["src/**/*.d.ts", "src/**/*.js", "src/**/*.svelte"]
|
|
||||||
}
|
|
||||||
20
package.json
20
package.json
@@ -1,20 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "vssm_web",
|
|
||||||
"private": true,
|
|
||||||
"version": "0.0.0",
|
|
||||||
"type": "module",
|
|
||||||
"scripts": {
|
|
||||||
"dev": "vite",
|
|
||||||
"build": "vite build",
|
|
||||||
"preview": "vite preview"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@sveltejs/vite-plugin-svelte": "^7.1.2",
|
|
||||||
"@tailwindcss/vite": "^4.3.0",
|
|
||||||
"autoprefixer": "^10.5.0",
|
|
||||||
"postcss": "^8.5.15",
|
|
||||||
"svelte": "^5.55.5",
|
|
||||||
"tailwindcss": "^4.3.0",
|
|
||||||
"vite": "^8.0.12"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
977
pnpm-lock.yaml
generated
977
pnpm-lock.yaml
generated
@@ -1,977 +0,0 @@
|
|||||||
lockfileVersion: '9.0'
|
|
||||||
|
|
||||||
settings:
|
|
||||||
autoInstallPeers: true
|
|
||||||
excludeLinksFromLockfile: false
|
|
||||||
|
|
||||||
importers:
|
|
||||||
|
|
||||||
.:
|
|
||||||
devDependencies:
|
|
||||||
'@sveltejs/vite-plugin-svelte':
|
|
||||||
specifier: ^7.1.2
|
|
||||||
version: 7.1.2(svelte@5.56.2)(vite@8.0.16(jiti@2.7.0))
|
|
||||||
'@tailwindcss/vite':
|
|
||||||
specifier: ^4.3.0
|
|
||||||
version: 4.3.0(vite@8.0.16(jiti@2.7.0))
|
|
||||||
autoprefixer:
|
|
||||||
specifier: ^10.5.0
|
|
||||||
version: 10.5.0(postcss@8.5.15)
|
|
||||||
postcss:
|
|
||||||
specifier: ^8.5.15
|
|
||||||
version: 8.5.15
|
|
||||||
svelte:
|
|
||||||
specifier: ^5.55.5
|
|
||||||
version: 5.56.2
|
|
||||||
tailwindcss:
|
|
||||||
specifier: ^4.3.0
|
|
||||||
version: 4.3.0
|
|
||||||
vite:
|
|
||||||
specifier: ^8.0.12
|
|
||||||
version: 8.0.16(jiti@2.7.0)
|
|
||||||
|
|
||||||
packages:
|
|
||||||
|
|
||||||
'@emnapi/core@1.10.0':
|
|
||||||
resolution: {integrity: sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==}
|
|
||||||
|
|
||||||
'@emnapi/runtime@1.10.0':
|
|
||||||
resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==}
|
|
||||||
|
|
||||||
'@emnapi/wasi-threads@1.2.1':
|
|
||||||
resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==}
|
|
||||||
|
|
||||||
'@jridgewell/gen-mapping@0.3.13':
|
|
||||||
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
|
|
||||||
|
|
||||||
'@jridgewell/remapping@2.3.5':
|
|
||||||
resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
|
|
||||||
|
|
||||||
'@jridgewell/resolve-uri@3.1.2':
|
|
||||||
resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
|
|
||||||
engines: {node: '>=6.0.0'}
|
|
||||||
|
|
||||||
'@jridgewell/sourcemap-codec@1.5.5':
|
|
||||||
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
|
|
||||||
|
|
||||||
'@jridgewell/trace-mapping@0.3.31':
|
|
||||||
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
|
|
||||||
|
|
||||||
'@napi-rs/wasm-runtime@1.1.4':
|
|
||||||
resolution: {integrity: sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==}
|
|
||||||
peerDependencies:
|
|
||||||
'@emnapi/core': ^1.7.1
|
|
||||||
'@emnapi/runtime': ^1.7.1
|
|
||||||
|
|
||||||
'@oxc-project/types@0.133.0':
|
|
||||||
resolution: {integrity: sha512-KzkdCd6Uxqnf6l3HOw1xfatAlUURA0g14cvBYFyJ5SaNOQbOUvBr9PKArcPcrNIeRsBdgcUzOGrhKveVpvOIGA==}
|
|
||||||
|
|
||||||
'@rolldown/binding-android-arm64@1.0.3':
|
|
||||||
resolution: {integrity: sha512-454rs7jHngixp/NMxd5srYD57OnzSlZ/eFTETjORQHLwJG1lRtmNOJcBerZlfu4GjKqeq8aCCIQrMdHyhI51Hw==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [android]
|
|
||||||
|
|
||||||
'@rolldown/binding-darwin-arm64@1.0.3':
|
|
||||||
resolution: {integrity: sha512-PcAhP+ynjURNyy8SKGl5DQP94aGuB/7JrXJb/t7P+hanXvQVMWzUvRRhBAcg/lNRadBhoUPqSoP4xw5tR/KBEA==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
'@rolldown/binding-darwin-x64@1.0.3':
|
|
||||||
resolution: {integrity: sha512-9YpfeUvSE2RS7wysJ81uOZkXJz7f7Q55H2Gvp3VEw/EsahqDtrphrZ0EwDLK5vvKOzaCrBsjF8JmnMLcUt78Gg==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
'@rolldown/binding-freebsd-x64@1.0.3':
|
|
||||||
resolution: {integrity: sha512-yB1IlAsSNHncV6SCTL27/MVGR5htvQsoGxIv5KMGXALp+Ll1wYsn+x98M9MW7qa+NdSbvrrY7ANI4wLJ0n1e6g==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [freebsd]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-arm-gnueabihf@1.0.3':
|
|
||||||
resolution: {integrity: sha512-Yi30IVAAfLUCy2MseFjbB1jAMDl1VMCAas5StnYp8da9+CKvMd2H2cbEjWcw5NPaPqzvYkVIaF1nNUG+b7u/sw==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm]
|
|
||||||
os: [linux]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-arm64-gnu@1.0.3':
|
|
||||||
resolution: {integrity: sha512-jsO7R8To+AdlYgUmN5sHSCZbfhtMBkO0WUx8iORQnPcMMdgr7qM2DQmMwgabs3GhNztdmoKkMKQFHD6DTMCIQw==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-arm64-musl@1.0.3':
|
|
||||||
resolution: {integrity: sha512-VWkUHwWriDciit80wleYwKILoR/KMvxh/IdwS/paX+ZgpuRpCrKLUdadJbc0NpBEiyhpYawsJ73j9aCvOH+f7Q==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [musl]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-ppc64-gnu@1.0.3':
|
|
||||||
resolution: {integrity: sha512-5f1laC0SlIR0yDbFCd8acUhvJIag6N3zC5P7oUPN6wX0aOma+uKJ0wBDH5aq7I1PVI2ttTlhJwzwRIBnLiSGEg==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [ppc64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-s390x-gnu@1.0.3':
|
|
||||||
resolution: {integrity: sha512-Iq4ko0r4XsgbrF/LunNgHtAGLRRVE2kXonAXQ/MV0mC6jQpMOhW1SvtZja2EhC/kd05++bP78dsqBeIQyYJ6Yg==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [s390x]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-x64-gnu@1.0.3':
|
|
||||||
resolution: {integrity: sha512-B8m6tD5+/N5FeNQFbKlLA/2yVq9ycQP1SeedyEYYKWBNR3ZQbkvIUcNnDNM03lO1l5F2roiiFJGgvoLLyZXtSg==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-x64-musl@1.0.3':
|
|
||||||
resolution: {integrity: sha512-pSdpdUJHkuCxun9LE7jvgUB9qsRgaiyNNCX7m/AvHTcq67AiT/Yhoxvw5zPfhrM8k/BfP8ce/hMOpthKDpEUow==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [musl]
|
|
||||||
|
|
||||||
'@rolldown/binding-openharmony-arm64@1.0.3':
|
|
||||||
resolution: {integrity: sha512-OXXS3RKJgX2uLwM+gYyuH5omcH8fL1LJs96pZGgtetVCahON57+d4SJHzTgZiOjxgGkSnpXpOsWuPDGAKAigEg==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [openharmony]
|
|
||||||
|
|
||||||
'@rolldown/binding-wasm32-wasi@1.0.3':
|
|
||||||
resolution: {integrity: sha512-JTtb8BWFynicNSoPrehsCzBtOKjZ6jhMiPFEmOiuXg1Fl8dn2KHQob+GuPSGR0dryQa1PQJbzjF3dqO/whhjLg==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [wasm32]
|
|
||||||
|
|
||||||
'@rolldown/binding-win32-arm64-msvc@1.0.3':
|
|
||||||
resolution: {integrity: sha512-gEdFFEN70A/jxb2svrWsN3aDL7OUtmvlOy+6fa2jxG8K0wQ1ZbdeLGnidov6Yu5/733dI5ySfzFlQ/cb0bSz1g==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [win32]
|
|
||||||
|
|
||||||
'@rolldown/binding-win32-x64-msvc@1.0.3':
|
|
||||||
resolution: {integrity: sha512-eXB7CHuaQdqmJcc3koCNtNPmT/bj2gc999kUFgBxG8Ac0NdgXc4rkCHhqrgrhN3zddvvvrgzj1e90SuSfmyIXA==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [win32]
|
|
||||||
|
|
||||||
'@rolldown/pluginutils@1.0.1':
|
|
||||||
resolution: {integrity: sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==}
|
|
||||||
|
|
||||||
'@sveltejs/acorn-typescript@1.0.10':
|
|
||||||
resolution: {integrity: sha512-4WfKk68eTih+MiJD4fSbxN7E8kVBmTMPWHUPYjvl2N0rMs53YLTT8/YjKU5Dtnz5LqDjl7LEw4U7lXR2W3J5WA==}
|
|
||||||
peerDependencies:
|
|
||||||
acorn: ^8.9.0
|
|
||||||
|
|
||||||
'@sveltejs/vite-plugin-svelte@7.1.2':
|
|
||||||
resolution: {integrity: sha512-DrUBA2UXRfDmUX/ZTiEopd3X40yavsJF1FX2RygcuIScHL7o5YX1fMvoYnDhjeJQC4weCOklirpNWlcb2NiSeA==}
|
|
||||||
engines: {node: ^20.19 || ^22.12 || >=24}
|
|
||||||
peerDependencies:
|
|
||||||
svelte: ^5.46.4
|
|
||||||
vite: ^8.0.0-beta.7 || ^8.0.0
|
|
||||||
|
|
||||||
'@tailwindcss/node@4.3.0':
|
|
||||||
resolution: {integrity: sha512-aFb4gUhFOgdh9AXo4IzBEOzBkkAxm9VigwDJnMIYv3lcfXCJVesNfbEaBl4BNgVRyid92AmdviqwBUBRKSeY3g==}
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-android-arm64@4.3.0':
|
|
||||||
resolution: {integrity: sha512-TJPiq67tKlLuObP6RkwvVGDoxCMBVtDgKkLfa/uyj7/FyxvQwHS+UOnVrXXgbEsfUaMgiVvC4KbJnRr26ho4Ng==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [android]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-darwin-arm64@4.3.0':
|
|
||||||
resolution: {integrity: sha512-oMN/WZRb+SO37BmUElEgeEWuU8E/HXRkiODxJxLe1UTHVXLrdVSgfaJV7pSlhRGMSOiXLuxTIjfsF3wYvz8cgQ==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-darwin-x64@4.3.0':
|
|
||||||
resolution: {integrity: sha512-N6CUmu4a6bKVADfw77p+iw6Yd9Q3OBhe0veaDX+QazfuVYlQsHfDgxBrsjQ/IW+zywL8mTrNd0SdJT/zgtvMdA==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-freebsd-x64@4.3.0':
|
|
||||||
resolution: {integrity: sha512-zDL5hBkQdH5C6MpqbK3gQAgP80tsMwSI26vjOzjJtNCMUo0lFgOItzHKBIupOZNQxt3ouPH7RPhvNhiTfCe5CQ==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [freebsd]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-arm-gnueabihf@4.3.0':
|
|
||||||
resolution: {integrity: sha512-R06HdNi7A7OEoMsf6d4tjZ71RCWnZQPHj2mnotSFURjNLdBC+cIgXQ7l81CqeoiQftjf6OOblxXMInMgN2VzMA==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [arm]
|
|
||||||
os: [linux]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-arm64-gnu@4.3.0':
|
|
||||||
resolution: {integrity: sha512-qTJHELX8jetjhRQHCLilkVLmybpzNQAtaI/gaoVoidn/ufbNDbAo8KlK2J+yPoc8wQxvDxCmh/5lr8nC1+lTbg==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-arm64-musl@4.3.0':
|
|
||||||
resolution: {integrity: sha512-Z6sukiQsngnWO+l39X4pPbiWT81IC+PLKF+PHxIlyZbGNb9MODfYlXEVlFvej5BOZInWX01kVyzeLvHsXhfczQ==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [musl]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-x64-gnu@4.3.0':
|
|
||||||
resolution: {integrity: sha512-DRNdQRpSGzRGfARVuVkxvM8Q12nh19l4BF/G7zGA1oe+9wcC6saFBHTISrpIcKzhiXtSrlSrluCfvMuledoCTQ==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-x64-musl@4.3.0':
|
|
||||||
resolution: {integrity: sha512-Z0IADbDo8bh6I7h2IQMx601AdXBLfFpEdUotft86evd/8ZPflZe9COPO8Q1vw+pfLWIUo9zN/JGZvwuAJqduqg==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [musl]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-wasm32-wasi@4.3.0':
|
|
||||||
resolution: {integrity: sha512-HNZGOUxEmElksYR7S6sC5jTeNGpobAsy9u7Gu0AskJ8/20FR9GqebUyB+HBcU/ax6BHuiuJi+Oda4B+YX6H1yA==}
|
|
||||||
engines: {node: '>=14.0.0'}
|
|
||||||
cpu: [wasm32]
|
|
||||||
bundledDependencies:
|
|
||||||
- '@napi-rs/wasm-runtime'
|
|
||||||
- '@emnapi/core'
|
|
||||||
- '@emnapi/runtime'
|
|
||||||
- '@tybys/wasm-util'
|
|
||||||
- '@emnapi/wasi-threads'
|
|
||||||
- tslib
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-win32-arm64-msvc@4.3.0':
|
|
||||||
resolution: {integrity: sha512-Pe+RPVTi1T+qymuuRpcdvwSVZjnll/f7n8gBxMMh3xLTctMDKqpdfGimbMyioqtLhUYZxdJ9wGNhV7MKHvgZsQ==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [win32]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-win32-x64-msvc@4.3.0':
|
|
||||||
resolution: {integrity: sha512-Mvrf2kXW/yeW/OTezZlCGOirXRcUuLIBx/5Y12BaPM7wJoryG6dfS/NJL8aBPqtTEx/Vm4T4vKzFUcKDT+TKUA==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [win32]
|
|
||||||
|
|
||||||
'@tailwindcss/oxide@4.3.0':
|
|
||||||
resolution: {integrity: sha512-F7HZGBeN9I0/AuuJS5PwcD8xayx5ri5GhjYUDBEVYUkexyA/giwbDNjRVrxSezE3T250OU2K/wp/ltWx3UOefg==}
|
|
||||||
engines: {node: '>= 20'}
|
|
||||||
|
|
||||||
'@tailwindcss/vite@4.3.0':
|
|
||||||
resolution: {integrity: sha512-t6J3OrB5Fc0ExuhohouH0fWUGMYL6PTLhW+E7zIk/pdbnJARZDCwjBznFnkh5ynRnIRSI4YjtTH0t6USjJISrw==}
|
|
||||||
peerDependencies:
|
|
||||||
vite: ^5.2.0 || ^6 || ^7 || ^8
|
|
||||||
|
|
||||||
'@tybys/wasm-util@0.10.2':
|
|
||||||
resolution: {integrity: sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==}
|
|
||||||
|
|
||||||
'@types/estree@1.0.9':
|
|
||||||
resolution: {integrity: sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==}
|
|
||||||
|
|
||||||
'@types/trusted-types@2.0.7':
|
|
||||||
resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
|
|
||||||
|
|
||||||
acorn@8.16.0:
|
|
||||||
resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==}
|
|
||||||
engines: {node: '>=0.4.0'}
|
|
||||||
hasBin: true
|
|
||||||
|
|
||||||
aria-query@5.3.1:
|
|
||||||
resolution: {integrity: sha512-Z/ZeOgVl7bcSYZ/u/rh0fOpvEpq//LZmdbkXyc7syVzjPAhfOa9ebsdTSjEBDU4vs5nC98Kfduj1uFo0qyET3g==}
|
|
||||||
engines: {node: '>= 0.4'}
|
|
||||||
|
|
||||||
autoprefixer@10.5.0:
|
|
||||||
resolution: {integrity: sha512-FMhOoZV4+qR6aTUALKX2rEqGG+oyATvwBt9IIzVR5rMa2HRWPkxf+P+PAJLD1I/H5/II+HuZcBJYEFBpq39ong==}
|
|
||||||
engines: {node: ^10 || ^12 || >=14}
|
|
||||||
hasBin: true
|
|
||||||
peerDependencies:
|
|
||||||
postcss: ^8.1.0
|
|
||||||
|
|
||||||
axobject-query@4.1.0:
|
|
||||||
resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
|
|
||||||
engines: {node: '>= 0.4'}
|
|
||||||
|
|
||||||
baseline-browser-mapping@2.10.33:
|
|
||||||
resolution: {integrity: sha512-bA6+tcSLpz2tIEdDXZPpPTIuxBcC4+w6SieaYyfigIa4h8GlFxbA17v22Vx3JUtuZQj9SgOsnbK+aTBzyDyEuw==}
|
|
||||||
engines: {node: '>=6.0.0'}
|
|
||||||
hasBin: true
|
|
||||||
|
|
||||||
browserslist@4.28.2:
|
|
||||||
resolution: {integrity: sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==}
|
|
||||||
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
|
||||||
hasBin: true
|
|
||||||
|
|
||||||
caniuse-lite@1.0.30001793:
|
|
||||||
resolution: {integrity: sha512-iwSsYWaCOoh26cV8NwNRViHlrfUvYsHDfRVcbtmw0Kg6PJIZZXwMkj1442FYLBGkeUf1juAsU3DTfxW579mrPA==}
|
|
||||||
|
|
||||||
clsx@2.1.1:
|
|
||||||
resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
|
|
||||||
engines: {node: '>=6'}
|
|
||||||
|
|
||||||
deepmerge@4.3.1:
|
|
||||||
resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
|
|
||||||
engines: {node: '>=0.10.0'}
|
|
||||||
|
|
||||||
detect-libc@2.1.2:
|
|
||||||
resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
|
|
||||||
engines: {node: '>=8'}
|
|
||||||
|
|
||||||
devalue@5.8.1:
|
|
||||||
resolution: {integrity: sha512-4CXDYRBGqN+57wVJkuXBYmpAVUSg3L6JAQa/DFqm238G73E1wuyc/JhGQJzN7vUf/CMphYau2zXbfWzDR5aTEw==}
|
|
||||||
|
|
||||||
electron-to-chromium@1.5.368:
|
|
||||||
resolution: {integrity: sha512-7RckJJK4uESJF9PxvfMWd3TGqIiieUTG4HxnKaKuIpGbcr+r2ZEB3g2gAhCP3Fqm42vJSzLfgab9eva/C4/XVw==}
|
|
||||||
|
|
||||||
enhanced-resolve@5.22.2:
|
|
||||||
resolution: {integrity: sha512-0rxICaFZ7NQho/sHely2bvOPRP0Eu2B0NZ9zM54YvRvWMn7jfz3DmnOZDR9LlXDdDcqntAVc6Hfy4gr/tdH/Ag==}
|
|
||||||
engines: {node: '>=10.13.0'}
|
|
||||||
|
|
||||||
escalade@3.2.0:
|
|
||||||
resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
|
|
||||||
engines: {node: '>=6'}
|
|
||||||
|
|
||||||
esm-env@1.2.2:
|
|
||||||
resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==}
|
|
||||||
|
|
||||||
esrap@2.2.11:
|
|
||||||
resolution: {integrity: sha512-gPdx+I+BjYEinNMQaBXFjbaJVyoPMU4ZODg5mE+M4DqVG9VusAVHHjcBX+zqyITlI0DIARwDMMzZwAWj36dRoQ==}
|
|
||||||
peerDependencies:
|
|
||||||
'@typescript-eslint/types': ^8.2.0
|
|
||||||
peerDependenciesMeta:
|
|
||||||
'@typescript-eslint/types':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
fdir@6.5.0:
|
|
||||||
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
|
|
||||||
engines: {node: '>=12.0.0'}
|
|
||||||
peerDependencies:
|
|
||||||
picomatch: ^3 || ^4
|
|
||||||
peerDependenciesMeta:
|
|
||||||
picomatch:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
fraction.js@5.3.4:
|
|
||||||
resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==}
|
|
||||||
|
|
||||||
fsevents@2.3.3:
|
|
||||||
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
|
|
||||||
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
graceful-fs@4.2.11:
|
|
||||||
resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
|
|
||||||
|
|
||||||
is-reference@3.0.3:
|
|
||||||
resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==}
|
|
||||||
|
|
||||||
jiti@2.7.0:
|
|
||||||
resolution: {integrity: sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==}
|
|
||||||
hasBin: true
|
|
||||||
|
|
||||||
lightningcss-android-arm64@1.32.0:
|
|
||||||
resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [android]
|
|
||||||
|
|
||||||
lightningcss-darwin-arm64@1.32.0:
|
|
||||||
resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
lightningcss-darwin-x64@1.32.0:
|
|
||||||
resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [darwin]
|
|
||||||
|
|
||||||
lightningcss-freebsd-x64@1.32.0:
|
|
||||||
resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [freebsd]
|
|
||||||
|
|
||||||
lightningcss-linux-arm-gnueabihf@1.32.0:
|
|
||||||
resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [arm]
|
|
||||||
os: [linux]
|
|
||||||
|
|
||||||
lightningcss-linux-arm64-gnu@1.32.0:
|
|
||||||
resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
lightningcss-linux-arm64-musl@1.32.0:
|
|
||||||
resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [musl]
|
|
||||||
|
|
||||||
lightningcss-linux-x64-gnu@1.32.0:
|
|
||||||
resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [glibc]
|
|
||||||
|
|
||||||
lightningcss-linux-x64-musl@1.32.0:
|
|
||||||
resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [linux]
|
|
||||||
libc: [musl]
|
|
||||||
|
|
||||||
lightningcss-win32-arm64-msvc@1.32.0:
|
|
||||||
resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [arm64]
|
|
||||||
os: [win32]
|
|
||||||
|
|
||||||
lightningcss-win32-x64-msvc@1.32.0:
|
|
||||||
resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
cpu: [x64]
|
|
||||||
os: [win32]
|
|
||||||
|
|
||||||
lightningcss@1.32.0:
|
|
||||||
resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==}
|
|
||||||
engines: {node: '>= 12.0.0'}
|
|
||||||
|
|
||||||
locate-character@3.0.0:
|
|
||||||
resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==}
|
|
||||||
|
|
||||||
magic-string@0.30.21:
|
|
||||||
resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
|
|
||||||
|
|
||||||
nanoid@3.3.12:
|
|
||||||
resolution: {integrity: sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==}
|
|
||||||
engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
|
|
||||||
hasBin: true
|
|
||||||
|
|
||||||
node-releases@2.0.47:
|
|
||||||
resolution: {integrity: sha512-Uzmd6LXpouKo8EUK68IjH4+E01w/hXyV3R3g/geCJo+rXLNfh1xucB+LOzYEOQPSiUK3h/xZf0cQGcSsmyL2Og==}
|
|
||||||
engines: {node: '>=18'}
|
|
||||||
|
|
||||||
obug@2.1.2:
|
|
||||||
resolution: {integrity: sha512-AWGB9WFcRXOQs48Z/udjI5ZcZMHXwX8XPByNpOydgcGsDLIzjGizhoMWJyKAWze7AVW/2W1i+/gPX4YtKe5cyg==}
|
|
||||||
engines: {node: '>=12.20.0'}
|
|
||||||
|
|
||||||
picocolors@1.1.1:
|
|
||||||
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
|
|
||||||
|
|
||||||
picomatch@4.0.4:
|
|
||||||
resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==}
|
|
||||||
engines: {node: '>=12'}
|
|
||||||
|
|
||||||
postcss-value-parser@4.2.0:
|
|
||||||
resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
|
|
||||||
|
|
||||||
postcss@8.5.15:
|
|
||||||
resolution: {integrity: sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==}
|
|
||||||
engines: {node: ^10 || ^12 || >=14}
|
|
||||||
|
|
||||||
rolldown@1.0.3:
|
|
||||||
resolution: {integrity: sha512-i00lAJ2ks1BYr7rjNjKC7BcqAS7nVfiT3QX1SI5aY+AFHblCmaUf9OE9dbdzDvW6dJxbi2ZCZiy9v3CcwOiX3g==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
hasBin: true
|
|
||||||
|
|
||||||
source-map-js@1.2.1:
|
|
||||||
resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
|
|
||||||
engines: {node: '>=0.10.0'}
|
|
||||||
|
|
||||||
svelte@5.56.2:
|
|
||||||
resolution: {integrity: sha512-1lDf8TLqpxyAt3xgybfytWPJQbaUD6TiDgpiCLH0BKrKEwzecB9pjuNVnEJMpzH018xUzo6oxheK2HT0oa2RoQ==}
|
|
||||||
engines: {node: '>=18'}
|
|
||||||
|
|
||||||
tailwindcss@4.3.0:
|
|
||||||
resolution: {integrity: sha512-y6nxMGB1nMW9R6k96e5gdIFzcfL/gTJRNaqGes1YvkLnPVXzWgbqFF2yLC0T8G774n24cx3Pe8XrKoniCOAH+Q==}
|
|
||||||
|
|
||||||
tapable@2.3.3:
|
|
||||||
resolution: {integrity: sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A==}
|
|
||||||
engines: {node: '>=6'}
|
|
||||||
|
|
||||||
tinyglobby@0.2.17:
|
|
||||||
resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==}
|
|
||||||
engines: {node: '>=12.0.0'}
|
|
||||||
|
|
||||||
tslib@2.8.1:
|
|
||||||
resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
|
|
||||||
|
|
||||||
update-browserslist-db@1.2.3:
|
|
||||||
resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==}
|
|
||||||
hasBin: true
|
|
||||||
peerDependencies:
|
|
||||||
browserslist: '>= 4.21.0'
|
|
||||||
|
|
||||||
vite@8.0.16:
|
|
||||||
resolution: {integrity: sha512-h9bXPmJichP5fLmVQo3PyaGSDE2n3aPuomeAlVRm0JLmt4rY6zmPKd59HYI4LNW8oTK7tlTsuC7l/m7awx9Jcw==}
|
|
||||||
engines: {node: ^20.19.0 || >=22.12.0}
|
|
||||||
hasBin: true
|
|
||||||
peerDependencies:
|
|
||||||
'@types/node': ^20.19.0 || >=22.12.0
|
|
||||||
'@vitejs/devtools': ^0.1.18
|
|
||||||
esbuild: ^0.27.0 || ^0.28.0
|
|
||||||
jiti: '>=1.21.0'
|
|
||||||
less: ^4.0.0
|
|
||||||
sass: ^1.70.0
|
|
||||||
sass-embedded: ^1.70.0
|
|
||||||
stylus: '>=0.54.8'
|
|
||||||
sugarss: ^5.0.0
|
|
||||||
terser: ^5.16.0
|
|
||||||
tsx: ^4.8.1
|
|
||||||
yaml: ^2.4.2
|
|
||||||
peerDependenciesMeta:
|
|
||||||
'@types/node':
|
|
||||||
optional: true
|
|
||||||
'@vitejs/devtools':
|
|
||||||
optional: true
|
|
||||||
esbuild:
|
|
||||||
optional: true
|
|
||||||
jiti:
|
|
||||||
optional: true
|
|
||||||
less:
|
|
||||||
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.1.3:
|
|
||||||
resolution: {integrity: sha512-ub4okH7Z5KLjb6hDyjqrGXqWtWvoYdU3IGm/NorpgHncKoLTCfRIbvlhBm7r0YstIaQRYlp4yEbFqDcKSzXSSg==}
|
|
||||||
peerDependencies:
|
|
||||||
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
|
|
||||||
peerDependenciesMeta:
|
|
||||||
vite:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
zimmerframe@1.1.4:
|
|
||||||
resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==}
|
|
||||||
|
|
||||||
snapshots:
|
|
||||||
|
|
||||||
'@emnapi/core@1.10.0':
|
|
||||||
dependencies:
|
|
||||||
'@emnapi/wasi-threads': 1.2.1
|
|
||||||
tslib: 2.8.1
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@emnapi/runtime@1.10.0':
|
|
||||||
dependencies:
|
|
||||||
tslib: 2.8.1
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@emnapi/wasi-threads@1.2.1':
|
|
||||||
dependencies:
|
|
||||||
tslib: 2.8.1
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@jridgewell/gen-mapping@0.3.13':
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/sourcemap-codec': 1.5.5
|
|
||||||
'@jridgewell/trace-mapping': 0.3.31
|
|
||||||
|
|
||||||
'@jridgewell/remapping@2.3.5':
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/gen-mapping': 0.3.13
|
|
||||||
'@jridgewell/trace-mapping': 0.3.31
|
|
||||||
|
|
||||||
'@jridgewell/resolve-uri@3.1.2': {}
|
|
||||||
|
|
||||||
'@jridgewell/sourcemap-codec@1.5.5': {}
|
|
||||||
|
|
||||||
'@jridgewell/trace-mapping@0.3.31':
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/resolve-uri': 3.1.2
|
|
||||||
'@jridgewell/sourcemap-codec': 1.5.5
|
|
||||||
|
|
||||||
'@napi-rs/wasm-runtime@1.1.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)':
|
|
||||||
dependencies:
|
|
||||||
'@emnapi/core': 1.10.0
|
|
||||||
'@emnapi/runtime': 1.10.0
|
|
||||||
'@tybys/wasm-util': 0.10.2
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@oxc-project/types@0.133.0': {}
|
|
||||||
|
|
||||||
'@rolldown/binding-android-arm64@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-darwin-arm64@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-darwin-x64@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-freebsd-x64@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-arm-gnueabihf@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-arm64-gnu@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-arm64-musl@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-ppc64-gnu@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-s390x-gnu@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-x64-gnu@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-linux-x64-musl@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-openharmony-arm64@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-wasm32-wasi@1.0.3':
|
|
||||||
dependencies:
|
|
||||||
'@emnapi/core': 1.10.0
|
|
||||||
'@emnapi/runtime': 1.10.0
|
|
||||||
'@napi-rs/wasm-runtime': 1.1.4(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-win32-arm64-msvc@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/binding-win32-x64-msvc@1.0.3':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@rolldown/pluginutils@1.0.1': {}
|
|
||||||
|
|
||||||
'@sveltejs/acorn-typescript@1.0.10(acorn@8.16.0)':
|
|
||||||
dependencies:
|
|
||||||
acorn: 8.16.0
|
|
||||||
|
|
||||||
'@sveltejs/vite-plugin-svelte@7.1.2(svelte@5.56.2)(vite@8.0.16(jiti@2.7.0))':
|
|
||||||
dependencies:
|
|
||||||
deepmerge: 4.3.1
|
|
||||||
magic-string: 0.30.21
|
|
||||||
obug: 2.1.2
|
|
||||||
svelte: 5.56.2
|
|
||||||
vite: 8.0.16(jiti@2.7.0)
|
|
||||||
vitefu: 1.1.3(vite@8.0.16(jiti@2.7.0))
|
|
||||||
|
|
||||||
'@tailwindcss/node@4.3.0':
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/remapping': 2.3.5
|
|
||||||
enhanced-resolve: 5.22.2
|
|
||||||
jiti: 2.7.0
|
|
||||||
lightningcss: 1.32.0
|
|
||||||
magic-string: 0.30.21
|
|
||||||
source-map-js: 1.2.1
|
|
||||||
tailwindcss: 4.3.0
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-android-arm64@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-darwin-arm64@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-darwin-x64@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-freebsd-x64@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-arm-gnueabihf@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-arm64-gnu@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-arm64-musl@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-x64-gnu@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-linux-x64-musl@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-wasm32-wasi@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-win32-arm64-msvc@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide-win32-x64-msvc@4.3.0':
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@tailwindcss/oxide@4.3.0':
|
|
||||||
optionalDependencies:
|
|
||||||
'@tailwindcss/oxide-android-arm64': 4.3.0
|
|
||||||
'@tailwindcss/oxide-darwin-arm64': 4.3.0
|
|
||||||
'@tailwindcss/oxide-darwin-x64': 4.3.0
|
|
||||||
'@tailwindcss/oxide-freebsd-x64': 4.3.0
|
|
||||||
'@tailwindcss/oxide-linux-arm-gnueabihf': 4.3.0
|
|
||||||
'@tailwindcss/oxide-linux-arm64-gnu': 4.3.0
|
|
||||||
'@tailwindcss/oxide-linux-arm64-musl': 4.3.0
|
|
||||||
'@tailwindcss/oxide-linux-x64-gnu': 4.3.0
|
|
||||||
'@tailwindcss/oxide-linux-x64-musl': 4.3.0
|
|
||||||
'@tailwindcss/oxide-wasm32-wasi': 4.3.0
|
|
||||||
'@tailwindcss/oxide-win32-arm64-msvc': 4.3.0
|
|
||||||
'@tailwindcss/oxide-win32-x64-msvc': 4.3.0
|
|
||||||
|
|
||||||
'@tailwindcss/vite@4.3.0(vite@8.0.16(jiti@2.7.0))':
|
|
||||||
dependencies:
|
|
||||||
'@tailwindcss/node': 4.3.0
|
|
||||||
'@tailwindcss/oxide': 4.3.0
|
|
||||||
tailwindcss: 4.3.0
|
|
||||||
vite: 8.0.16(jiti@2.7.0)
|
|
||||||
|
|
||||||
'@tybys/wasm-util@0.10.2':
|
|
||||||
dependencies:
|
|
||||||
tslib: 2.8.1
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
'@types/estree@1.0.9': {}
|
|
||||||
|
|
||||||
'@types/trusted-types@2.0.7': {}
|
|
||||||
|
|
||||||
acorn@8.16.0: {}
|
|
||||||
|
|
||||||
aria-query@5.3.1: {}
|
|
||||||
|
|
||||||
autoprefixer@10.5.0(postcss@8.5.15):
|
|
||||||
dependencies:
|
|
||||||
browserslist: 4.28.2
|
|
||||||
caniuse-lite: 1.0.30001793
|
|
||||||
fraction.js: 5.3.4
|
|
||||||
picocolors: 1.1.1
|
|
||||||
postcss: 8.5.15
|
|
||||||
postcss-value-parser: 4.2.0
|
|
||||||
|
|
||||||
axobject-query@4.1.0: {}
|
|
||||||
|
|
||||||
baseline-browser-mapping@2.10.33: {}
|
|
||||||
|
|
||||||
browserslist@4.28.2:
|
|
||||||
dependencies:
|
|
||||||
baseline-browser-mapping: 2.10.33
|
|
||||||
caniuse-lite: 1.0.30001793
|
|
||||||
electron-to-chromium: 1.5.368
|
|
||||||
node-releases: 2.0.47
|
|
||||||
update-browserslist-db: 1.2.3(browserslist@4.28.2)
|
|
||||||
|
|
||||||
caniuse-lite@1.0.30001793: {}
|
|
||||||
|
|
||||||
clsx@2.1.1: {}
|
|
||||||
|
|
||||||
deepmerge@4.3.1: {}
|
|
||||||
|
|
||||||
detect-libc@2.1.2: {}
|
|
||||||
|
|
||||||
devalue@5.8.1: {}
|
|
||||||
|
|
||||||
electron-to-chromium@1.5.368: {}
|
|
||||||
|
|
||||||
enhanced-resolve@5.22.2:
|
|
||||||
dependencies:
|
|
||||||
graceful-fs: 4.2.11
|
|
||||||
tapable: 2.3.3
|
|
||||||
|
|
||||||
escalade@3.2.0: {}
|
|
||||||
|
|
||||||
esm-env@1.2.2: {}
|
|
||||||
|
|
||||||
esrap@2.2.11:
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/sourcemap-codec': 1.5.5
|
|
||||||
|
|
||||||
fdir@6.5.0(picomatch@4.0.4):
|
|
||||||
optionalDependencies:
|
|
||||||
picomatch: 4.0.4
|
|
||||||
|
|
||||||
fraction.js@5.3.4: {}
|
|
||||||
|
|
||||||
fsevents@2.3.3:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
graceful-fs@4.2.11: {}
|
|
||||||
|
|
||||||
is-reference@3.0.3:
|
|
||||||
dependencies:
|
|
||||||
'@types/estree': 1.0.9
|
|
||||||
|
|
||||||
jiti@2.7.0: {}
|
|
||||||
|
|
||||||
lightningcss-android-arm64@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-darwin-arm64@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-darwin-x64@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-freebsd-x64@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-linux-arm-gnueabihf@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-linux-arm64-gnu@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-linux-arm64-musl@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-linux-x64-gnu@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-linux-x64-musl@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-win32-arm64-msvc@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss-win32-x64-msvc@1.32.0:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
lightningcss@1.32.0:
|
|
||||||
dependencies:
|
|
||||||
detect-libc: 2.1.2
|
|
||||||
optionalDependencies:
|
|
||||||
lightningcss-android-arm64: 1.32.0
|
|
||||||
lightningcss-darwin-arm64: 1.32.0
|
|
||||||
lightningcss-darwin-x64: 1.32.0
|
|
||||||
lightningcss-freebsd-x64: 1.32.0
|
|
||||||
lightningcss-linux-arm-gnueabihf: 1.32.0
|
|
||||||
lightningcss-linux-arm64-gnu: 1.32.0
|
|
||||||
lightningcss-linux-arm64-musl: 1.32.0
|
|
||||||
lightningcss-linux-x64-gnu: 1.32.0
|
|
||||||
lightningcss-linux-x64-musl: 1.32.0
|
|
||||||
lightningcss-win32-arm64-msvc: 1.32.0
|
|
||||||
lightningcss-win32-x64-msvc: 1.32.0
|
|
||||||
|
|
||||||
locate-character@3.0.0: {}
|
|
||||||
|
|
||||||
magic-string@0.30.21:
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/sourcemap-codec': 1.5.5
|
|
||||||
|
|
||||||
nanoid@3.3.12: {}
|
|
||||||
|
|
||||||
node-releases@2.0.47: {}
|
|
||||||
|
|
||||||
obug@2.1.2: {}
|
|
||||||
|
|
||||||
picocolors@1.1.1: {}
|
|
||||||
|
|
||||||
picomatch@4.0.4: {}
|
|
||||||
|
|
||||||
postcss-value-parser@4.2.0: {}
|
|
||||||
|
|
||||||
postcss@8.5.15:
|
|
||||||
dependencies:
|
|
||||||
nanoid: 3.3.12
|
|
||||||
picocolors: 1.1.1
|
|
||||||
source-map-js: 1.2.1
|
|
||||||
|
|
||||||
rolldown@1.0.3:
|
|
||||||
dependencies:
|
|
||||||
'@oxc-project/types': 0.133.0
|
|
||||||
'@rolldown/pluginutils': 1.0.1
|
|
||||||
optionalDependencies:
|
|
||||||
'@rolldown/binding-android-arm64': 1.0.3
|
|
||||||
'@rolldown/binding-darwin-arm64': 1.0.3
|
|
||||||
'@rolldown/binding-darwin-x64': 1.0.3
|
|
||||||
'@rolldown/binding-freebsd-x64': 1.0.3
|
|
||||||
'@rolldown/binding-linux-arm-gnueabihf': 1.0.3
|
|
||||||
'@rolldown/binding-linux-arm64-gnu': 1.0.3
|
|
||||||
'@rolldown/binding-linux-arm64-musl': 1.0.3
|
|
||||||
'@rolldown/binding-linux-ppc64-gnu': 1.0.3
|
|
||||||
'@rolldown/binding-linux-s390x-gnu': 1.0.3
|
|
||||||
'@rolldown/binding-linux-x64-gnu': 1.0.3
|
|
||||||
'@rolldown/binding-linux-x64-musl': 1.0.3
|
|
||||||
'@rolldown/binding-openharmony-arm64': 1.0.3
|
|
||||||
'@rolldown/binding-wasm32-wasi': 1.0.3
|
|
||||||
'@rolldown/binding-win32-arm64-msvc': 1.0.3
|
|
||||||
'@rolldown/binding-win32-x64-msvc': 1.0.3
|
|
||||||
|
|
||||||
source-map-js@1.2.1: {}
|
|
||||||
|
|
||||||
svelte@5.56.2:
|
|
||||||
dependencies:
|
|
||||||
'@jridgewell/remapping': 2.3.5
|
|
||||||
'@jridgewell/sourcemap-codec': 1.5.5
|
|
||||||
'@sveltejs/acorn-typescript': 1.0.10(acorn@8.16.0)
|
|
||||||
'@types/estree': 1.0.9
|
|
||||||
'@types/trusted-types': 2.0.7
|
|
||||||
acorn: 8.16.0
|
|
||||||
aria-query: 5.3.1
|
|
||||||
axobject-query: 4.1.0
|
|
||||||
clsx: 2.1.1
|
|
||||||
devalue: 5.8.1
|
|
||||||
esm-env: 1.2.2
|
|
||||||
esrap: 2.2.11
|
|
||||||
is-reference: 3.0.3
|
|
||||||
locate-character: 3.0.0
|
|
||||||
magic-string: 0.30.21
|
|
||||||
zimmerframe: 1.1.4
|
|
||||||
transitivePeerDependencies:
|
|
||||||
- '@typescript-eslint/types'
|
|
||||||
|
|
||||||
tailwindcss@4.3.0: {}
|
|
||||||
|
|
||||||
tapable@2.3.3: {}
|
|
||||||
|
|
||||||
tinyglobby@0.2.17:
|
|
||||||
dependencies:
|
|
||||||
fdir: 6.5.0(picomatch@4.0.4)
|
|
||||||
picomatch: 4.0.4
|
|
||||||
|
|
||||||
tslib@2.8.1:
|
|
||||||
optional: true
|
|
||||||
|
|
||||||
update-browserslist-db@1.2.3(browserslist@4.28.2):
|
|
||||||
dependencies:
|
|
||||||
browserslist: 4.28.2
|
|
||||||
escalade: 3.2.0
|
|
||||||
picocolors: 1.1.1
|
|
||||||
|
|
||||||
vite@8.0.16(jiti@2.7.0):
|
|
||||||
dependencies:
|
|
||||||
lightningcss: 1.32.0
|
|
||||||
picomatch: 4.0.4
|
|
||||||
postcss: 8.5.15
|
|
||||||
rolldown: 1.0.3
|
|
||||||
tinyglobby: 0.2.17
|
|
||||||
optionalDependencies:
|
|
||||||
fsevents: 2.3.3
|
|
||||||
jiti: 2.7.0
|
|
||||||
|
|
||||||
vitefu@1.1.3(vite@8.0.16(jiti@2.7.0)):
|
|
||||||
optionalDependencies:
|
|
||||||
vite: 8.0.16(jiti@2.7.0)
|
|
||||||
|
|
||||||
zimmerframe@1.1.4: {}
|
|
||||||
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 9.3 KiB |
@@ -1,24 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<symbol id="bluesky-icon" viewBox="0 0 16 17">
|
|
||||||
<g clip-path="url(#bluesky-clip)"><path fill="#08060d" d="M7.75 7.735c-.693-1.348-2.58-3.86-4.334-5.097-1.68-1.187-2.32-.981-2.74-.79C.188 2.065.1 2.812.1 3.251s.241 3.602.398 4.13c.52 1.744 2.367 2.333 4.07 2.145-2.495.37-4.71 1.278-1.805 4.512 3.196 3.309 4.38-.71 4.987-2.746.608 2.036 1.307 5.91 4.93 2.746 2.72-2.746.747-4.143-1.747-4.512 1.702.189 3.55-.4 4.07-2.145.156-.528.397-3.691.397-4.13s-.088-1.186-.575-1.406c-.42-.19-1.06-.395-2.741.79-1.755 1.24-3.64 3.752-4.334 5.099"/></g>
|
|
||||||
<defs><clipPath id="bluesky-clip"><path fill="#fff" d="M.1.85h15.3v15.3H.1z"/></clipPath></defs>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="discord-icon" viewBox="0 0 20 19">
|
|
||||||
<path fill="#08060d" d="M16.224 3.768a14.5 14.5 0 0 0-3.67-1.153c-.158.286-.343.67-.47.976a13.5 13.5 0 0 0-4.067 0c-.128-.306-.317-.69-.476-.976A14.4 14.4 0 0 0 3.868 3.77C1.546 7.28.916 10.703 1.231 14.077a14.7 14.7 0 0 0 4.5 2.306q.545-.748.965-1.587a9.5 9.5 0 0 1-1.518-.74q.191-.14.372-.293c2.927 1.369 6.107 1.369 8.999 0q.183.152.372.294-.723.437-1.52.74.418.838.963 1.588a14.6 14.6 0 0 0 4.504-2.308c.37-3.911-.63-7.302-2.644-10.309m-9.13 8.234c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.894 0 1.614.82 1.599 1.82.001 1-.705 1.82-1.6 1.82m5.91 0c-.878 0-1.599-.82-1.599-1.82 0-.998.705-1.82 1.6-1.82.893 0 1.614.82 1.599 1.82 0 1-.706 1.82-1.6 1.82"/>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="documentation-icon" viewBox="0 0 21 20">
|
|
||||||
<path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="m15.5 13.333 1.533 1.322c.645.555.967.833.967 1.178s-.322.623-.967 1.179L15.5 18.333m-3.333-5-1.534 1.322c-.644.555-.966.833-.966 1.178s.322.623.966 1.179l1.534 1.321"/>
|
|
||||||
<path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M17.167 10.836v-4.32c0-1.41 0-2.117-.224-2.68-.359-.906-1.118-1.621-2.08-1.96-.599-.21-1.349-.21-2.848-.21-2.623 0-3.935 0-4.983.369-1.684.591-3.013 1.842-3.641 3.428C3 6.449 3 7.684 3 10.154v2.122c0 2.558 0 3.838.706 4.726q.306.383.713.671c.76.536 1.79.64 3.581.66"/>
|
|
||||||
<path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M3 10a2.78 2.78 0 0 1 2.778-2.778c.555 0 1.209.097 1.748-.047.48-.129.854-.503.982-.982.145-.54.048-1.194.048-1.749a2.78 2.78 0 0 1 2.777-2.777"/>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="github-icon" viewBox="0 0 19 19">
|
|
||||||
<path fill="#08060d" fill-rule="evenodd" d="M9.356 1.85C5.05 1.85 1.57 5.356 1.57 9.694a7.84 7.84 0 0 0 5.324 7.44c.387.079.528-.168.528-.376 0-.182-.013-.805-.013-1.454-2.165.467-2.616-.935-2.616-.935-.349-.91-.864-1.143-.864-1.143-.71-.48.051-.48.051-.48.787.051 1.2.805 1.2.805.695 1.194 1.817.857 2.268.649.064-.507.27-.857.49-1.052-1.728-.182-3.545-.857-3.545-3.87 0-.857.31-1.558.8-2.104-.078-.195-.349-1 .077-2.078 0 0 .657-.208 2.14.805a7.5 7.5 0 0 1 1.946-.26c.657 0 1.328.092 1.946.26 1.483-1.013 2.14-.805 2.14-.805.426 1.078.155 1.883.078 2.078.502.546.799 1.247.799 2.104 0 3.013-1.818 3.675-3.558 3.87.284.247.528.714.528 1.454 0 1.052-.012 1.896-.012 2.156 0 .208.142.455.528.377a7.84 7.84 0 0 0 5.324-7.441c.013-4.338-3.48-7.844-7.773-7.844" clip-rule="evenodd"/>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="social-icon" viewBox="0 0 20 20">
|
|
||||||
<path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M12.5 6.667a4.167 4.167 0 1 0-8.334 0 4.167 4.167 0 0 0 8.334 0"/>
|
|
||||||
<path fill="none" stroke="#aa3bff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.35" d="M2.5 16.667a5.833 5.833 0 0 1 8.75-5.053m3.837.474.513 1.035c.07.144.257.282.414.309l.93.155c.596.1.736.536.307.965l-.723.73a.64.64 0 0 0-.152.531l.207.903c.164.715-.213.991-.84.618l-.872-.52a.63.63 0 0 0-.577 0l-.872.52c-.624.373-1.003.094-.84-.618l.207-.903a.64.64 0 0 0-.152-.532l-.723-.729c-.426-.43-.289-.864.306-.964l.93-.156a.64.64 0 0 0 .412-.31l.513-1.034c.28-.562.735-.562 1.012 0"/>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="x-icon" viewBox="0 0 19 19">
|
|
||||||
<path fill="#08060d" fill-rule="evenodd" d="M1.893 1.98c.052.072 1.245 1.769 2.653 3.77l2.892 4.114c.183.261.333.48.333.486s-.068.089-.152.183l-.522.593-.765.867-3.597 4.087c-.375.426-.734.834-.798.905a1 1 0 0 0-.118.148c0 .01.236.017.664.017h.663l.729-.83c.4-.457.796-.906.879-.999a692 692 0 0 0 1.794-2.038c.034-.037.301-.34.594-.675l.551-.624.345-.392a7 7 0 0 1 .34-.374c.006 0 .93 1.306 2.052 2.903l2.084 2.965.045.063h2.275c1.87 0 2.273-.003 2.266-.021-.008-.02-1.098-1.572-3.894-5.547-2.013-2.862-2.28-3.246-2.273-3.266.008-.019.282-.332 2.085-2.38l2-2.274 1.567-1.782c.022-.028-.016-.03-.65-.03h-.674l-.3.342a871 871 0 0 1-1.782 2.025c-.067.075-.405.458-.75.852a100 100 0 0 1-.803.91c-.148.172-.299.344-.99 1.127-.304.343-.32.358-.345.327-.015-.019-.904-1.282-1.976-2.808L6.365 1.85H1.8zm1.782.91 8.078 11.294c.772 1.08 1.413 1.973 1.425 1.984.016.017.241.02 1.05.017l1.03-.004-2.694-3.766L7.796 5.75 5.722 2.852l-1.039-.004-1.039-.004z" clip-rule="evenodd"/>
|
|
||||||
</symbol>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 4.9 KiB |
166
src/App.svelte
166
src/App.svelte
@@ -1,166 +0,0 @@
|
|||||||
<script>
|
|
||||||
import { onMount } from 'svelte';
|
|
||||||
import { fetchInstances, toggleInstanceStatus, createInstance } from './lib/api';
|
|
||||||
import InstanceList from './lib/components/InstanceList.svelte';
|
|
||||||
import InstanceDetail from './lib/components/InstanceDetail.svelte';
|
|
||||||
|
|
||||||
let instances = [];
|
|
||||||
let connectionError = null;
|
|
||||||
let processingTargets = {};
|
|
||||||
let activeFocusedInstance = null;
|
|
||||||
|
|
||||||
let showCreateForm = false;
|
|
||||||
let newName = '';
|
|
||||||
let newVersion = '1.22.3';
|
|
||||||
let newPort = '42420';
|
|
||||||
let isCreating = false;
|
|
||||||
let createError = null;
|
|
||||||
|
|
||||||
async function syncTelemetry() {
|
|
||||||
try {
|
|
||||||
instances = await fetchInstances();
|
|
||||||
connectionError = null;
|
|
||||||
|
|
||||||
if (activeFocusedInstance) {
|
|
||||||
const freshSnapshot = instances.find(i => i.name === activeFocusedInstance.name);
|
|
||||||
if (freshSnapshot) activeFocusedInstance = freshSnapshot;
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
console.error(err);
|
|
||||||
connectionError = "Unable to connect to VSSM Daemon.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function handlePowerToggle(name, currentStatus) {
|
|
||||||
processingTargets[name] = true;
|
|
||||||
try {
|
|
||||||
await toggleInstanceStatus(name, currentStatus);
|
|
||||||
await syncTelemetry();
|
|
||||||
} catch (err) {
|
|
||||||
alert(`Operation Failed: ${err.message}`);
|
|
||||||
} finally {
|
|
||||||
processingTargets[name] = false;
|
|
||||||
processingTargets = processingTargets;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function handleCreateServer() {
|
|
||||||
if (!newName.trim() || !newVersion.trim() || !newPort) {
|
|
||||||
createError = "All fields are required.";
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
isCreating = true;
|
|
||||||
createError = null;
|
|
||||||
|
|
||||||
try {
|
|
||||||
await createInstance(newName.trim(), newVersion.trim(), newPort);
|
|
||||||
newName = '';
|
|
||||||
showCreateForm = false;
|
|
||||||
await syncTelemetry();
|
|
||||||
} catch (err) {
|
|
||||||
createError = err.message;
|
|
||||||
} finally {
|
|
||||||
isCreating = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
onMount(() => {
|
|
||||||
syncTelemetry();
|
|
||||||
const interval = setInterval(syncTelemetry, 4000);
|
|
||||||
return () => clearInterval(interval);
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<main class="min-h-screen bg-stone-900 bg-[radial-gradient(ellipse_at_top,_var(--tw-gradient-stops))] from-emerald-950 to-stone-950 text-stone-100 p-6 select-none">
|
|
||||||
|
|
||||||
<header class="border-b border-stone-700/60 pb-4 mb-6 flex justify-between items-center">
|
|
||||||
<div>
|
|
||||||
<h1 class="text-xl font-serif font-bold tracking-wide text-amber-100/90">VSSM Dashboard</h1>
|
|
||||||
<p class="text-xs text-stone-400 mt-1">VintageStory Server Manager</p>
|
|
||||||
</div>
|
|
||||||
<div class="flex gap-3">
|
|
||||||
{#if !activeFocusedInstance}
|
|
||||||
<button
|
|
||||||
on:click={() => { showCreateForm = !showCreateForm; createError = null; }}
|
|
||||||
class="border border-amber-800 bg-amber-950/20 hover:bg-amber-900/30 text-amber-200 px-4 py-1.5 text-xs uppercase tracking-wider transition-colors cursor-pointer rounded shadow-sm">
|
|
||||||
{showCreateForm ? 'Cancel' : 'New Instance'}
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
on:click={syncTelemetry}
|
|
||||||
class="border border-stone-600 bg-stone-800/60 hover:bg-stone-700 hover:text-amber-100 px-4 py-1.5 text-xs uppercase tracking-wider transition-colors cursor-pointer rounded shadow-sm">
|
|
||||||
Refresh Status
|
|
||||||
</button>
|
|
||||||
{/if}
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
{#if connectionError}
|
|
||||||
<div class="bg-red-900/20 border border-red-700/40 text-red-200 p-3 text-xs mb-6 rounded flex items-center gap-2">
|
|
||||||
<span class="w-2 h-2 rounded-full bg-red-500"></span>
|
|
||||||
{connectionError}
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
{#if showCreateForm && !activeFocusedInstance}
|
|
||||||
<div class="mb-6 p-4 border border-stone-700/60 bg-stone-900/80 rounded shadow-md backdrop-blur-sm animate-fade-in">
|
|
||||||
<h2 class="text-sm font-bold text-amber-200 uppercase tracking-wide mb-4">Setup New Server Instance</h2>
|
|
||||||
|
|
||||||
{#if createError}
|
|
||||||
<div class="bg-red-900/20 border border-red-800/40 text-red-300 p-2.5 text-xs mb-4 rounded">
|
|
||||||
{createError}
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
<form on:submit|preventDefault={handleCreateServer} class="grid grid-cols-1 md:grid-cols-4 gap-4 items-end">
|
|
||||||
<div>
|
|
||||||
<label class="block text-xs text-stone-400 mb-1.5 uppercase">Server Name</label>
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
bind:value={newName}
|
|
||||||
placeholder="e.g., survival-hub"
|
|
||||||
disabled={isCreating}
|
|
||||||
class="w-full border border-stone-700 bg-stone-950/60 p-2 text-xs rounded focus:outline-none focus:border-stone-500 text-stone-100" />
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<label class="block text-xs text-stone-400 mb-1.5 uppercase">Game Version</label>
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
bind:value={newVersion}
|
|
||||||
placeholder="e.g., 1.19.8"
|
|
||||||
disabled={isCreating}
|
|
||||||
class="w-full border border-stone-700 bg-stone-950/60 p-2 text-xs rounded focus:outline-none focus:border-stone-500 text-stone-100" />
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<label class="block text-xs text-stone-400 mb-1.5 uppercase">Network Port</label>
|
|
||||||
<input
|
|
||||||
type="number"
|
|
||||||
bind:value={newPort}
|
|
||||||
placeholder="42420"
|
|
||||||
disabled={isCreating}
|
|
||||||
class="w-full border border-stone-700 bg-stone-950/60 p-2 text-xs rounded focus:outline-none focus:border-stone-500 text-stone-100 font-mono" />
|
|
||||||
</div>
|
|
||||||
<div>
|
|
||||||
<button
|
|
||||||
type="submit"
|
|
||||||
disabled={isCreating}
|
|
||||||
class="w-full border border-emerald-800 bg-emerald-950/30 hover:bg-emerald-900/40 text-emerald-200 font-bold py-2 text-xs uppercase rounded transition-colors disabled:opacity-50 cursor-pointer shadow-sm">
|
|
||||||
{isCreating ? 'Downloading & Creating...' : 'Create Instance'}
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
{#if activeFocusedInstance}
|
|
||||||
<InstanceDetail
|
|
||||||
instance={activeFocusedInstance}
|
|
||||||
onBack={() => activeFocusedInstance = null} />
|
|
||||||
{:else}
|
|
||||||
<InstanceList
|
|
||||||
{instances}
|
|
||||||
{processingTargets}
|
|
||||||
onPowerToggle={handlePowerToggle}
|
|
||||||
onSelectInstance={(target) => activeFocusedInstance = target} />
|
|
||||||
{/if}
|
|
||||||
</main>
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
@import "tailwindcss";
|
|
||||||
@@ -1,56 +0,0 @@
|
|||||||
const DAEMON_URL = 'http://127.0.0.1:12345';
|
|
||||||
|
|
||||||
export async function fetchInstances() {
|
|
||||||
const res = await fetch(`${DAEMON_URL}/instances/list`);
|
|
||||||
if (!res.ok) {
|
|
||||||
throw new Error(`Daemon returned status code: ${res.status}`);
|
|
||||||
}
|
|
||||||
return await res.json();
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function toggleInstanceStatus(name, currentStatus) {
|
|
||||||
const action = currentStatus === 'RUNNING' ? 'stop' : 'start';
|
|
||||||
const res = await fetch(`${DAEMON_URL}/instances/${action}?name=${encodeURIComponent(name)}`, {
|
|
||||||
method: 'POST'
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!res.ok) {
|
|
||||||
const errorText = await res.text();
|
|
||||||
throw new Error(errorText || `Action '${action}' failed`);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function sendServerCommand(name, commandString) {
|
|
||||||
const res = await fetch(`${DAEMON_URL}/instances/command?name=${encodeURIComponent(name)}`, {
|
|
||||||
method: 'POST',
|
|
||||||
headers: { 'Content-Type': 'application/json' },
|
|
||||||
body: JSON.stringify({ command: commandString })
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!res.ok) {
|
|
||||||
const errorText = await res.text();
|
|
||||||
throw new Error(errorText || "Failed to route command to target instance");
|
|
||||||
}
|
|
||||||
|
|
||||||
return await res.text();
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function fetchServerLogs(name) {
|
|
||||||
const res = await fetch(`${DAEMON_URL}/instances/logs?name=${encodeURIComponent(name)}`);
|
|
||||||
if (!res.ok) {
|
|
||||||
throw new Error("Failed to sync engine logs");
|
|
||||||
}
|
|
||||||
return await res.json();
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function createInstance(name, version, port) {
|
|
||||||
const res = await fetch(`${DAEMON_URL}/instances/create?name=${encodeURIComponent(name)}&version=${encodeURIComponent(version)}&port=${parseInt(port)}`, {
|
|
||||||
method: 'POST'
|
|
||||||
});
|
|
||||||
|
|
||||||
if (!res.ok) {
|
|
||||||
const errText = await res.text();
|
|
||||||
throw new Error(errText || "Failed to create server instance");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,139 +0,0 @@
|
|||||||
<script>
|
|
||||||
import { onMount } from 'svelte';
|
|
||||||
import { sendServerCommand, fetchServerLogs } from '../api';
|
|
||||||
|
|
||||||
export let instance;
|
|
||||||
export let onBack;
|
|
||||||
|
|
||||||
let textCommandBuffer = '';
|
|
||||||
let terminalLogs = [];
|
|
||||||
let isSending = false;
|
|
||||||
let terminalContainer;
|
|
||||||
|
|
||||||
function logsAreEqual(arr1, arr2) {
|
|
||||||
if (arr1.length !== arr2.length) return false;
|
|
||||||
for (let i = 0; i < arr1.length; i++) {
|
|
||||||
if (arr1[i] !== arr2[i]) return false;
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
async function syncLogs() {
|
|
||||||
try {
|
|
||||||
const logs = await fetchServerLogs(instance.name);
|
|
||||||
if (!logsAreEqual(logs, terminalLogs)) {
|
|
||||||
terminalLogs = logs;
|
|
||||||
autoScrollToBottom();
|
|
||||||
}
|
|
||||||
} catch (err) {
|
|
||||||
console.error("Failed to get logs:", err);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function autoScrollToBottom() {
|
|
||||||
if (terminalContainer) {
|
|
||||||
setTimeout(() => {
|
|
||||||
terminalContainer.scrollTop = terminalContainer.scrollHeight;
|
|
||||||
}, 0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async function executeConsoleSubmit() {
|
|
||||||
if (!textCommandBuffer.trim() || isSending) return;
|
|
||||||
|
|
||||||
const commandToDispatch = textCommandBuffer.trim();
|
|
||||||
textCommandBuffer = '';
|
|
||||||
isSending = true;
|
|
||||||
|
|
||||||
try {
|
|
||||||
await sendServerCommand(instance.name, commandToDispatch);
|
|
||||||
await syncLogs();
|
|
||||||
} catch (err) {
|
|
||||||
terminalLogs = [...terminalLogs, `[ERROR]: ${err.message}`];
|
|
||||||
autoScrollToBottom();
|
|
||||||
} finally {
|
|
||||||
isSending = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
onMount(() => {
|
|
||||||
syncLogs();
|
|
||||||
const logInterval = setInterval(syncLogs, 1000);
|
|
||||||
return () => clearInterval(logInterval);
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<div class="space-y-6">
|
|
||||||
<div class="flex items-center gap-4">
|
|
||||||
<button
|
|
||||||
on:click={onBack}
|
|
||||||
class="border border-stone-600 bg-stone-800/60 hover:bg-stone-700 text-stone-200 px-3 py-1 text-xs uppercase transition-colors cursor-pointer rounded shadow-sm">
|
|
||||||
← Back to Server List
|
|
||||||
</button>
|
|
||||||
<div class="h-4 w-px bg-stone-700"></div>
|
|
||||||
<div class="text-sm text-stone-300">
|
|
||||||
Active Server: <span class="text-amber-200 font-bold">{instance.name}</span>
|
|
||||||
<span class="text-xs text-stone-400">({instance.version})</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="grid grid-cols-1 lg:grid-cols-3 gap-6">
|
|
||||||
|
|
||||||
<div class="lg:col-span-2 flex flex-col h-[450px] border border-stone-700/60 bg-stone-900/60 rounded shadow-md overflow-hidden">
|
|
||||||
<div class="bg-stone-800/80 border-b border-stone-700/60 px-4 py-2 text-xs flex justify-between items-center select-none text-stone-300">
|
|
||||||
<span class="font-medium">Live Server Console</span>
|
|
||||||
<span class="text-xs font-medium px-1.5 py-0.5 rounded {instance.status === 'RUNNING' ? 'text-emerald-300 bg-emerald-900/30' : 'text-stone-400 bg-stone-800'}">
|
|
||||||
{instance.status}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div
|
|
||||||
bind:this={terminalContainer}
|
|
||||||
class="flex-1 p-4 overflow-y-auto text-xs space-y-1 bg-stone-950/40 text-stone-200 font-mono select-text selection:bg-stone-700">
|
|
||||||
{#if terminalLogs.length === 0}
|
|
||||||
<div class="text-stone-500 italic">[Waiting for log output...]</div>
|
|
||||||
{:else}
|
|
||||||
{#each terminalLogs as line}
|
|
||||||
<div class="whitespace-pre-wrap break-all leading-relaxed opacity-90">{line}</div>
|
|
||||||
{/each}
|
|
||||||
{/if}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<form
|
|
||||||
on:submit|preventDefault={executeConsoleSubmit}
|
|
||||||
class="border-t border-stone-700/60 bg-stone-800/40 flex items-center">
|
|
||||||
<span class="pl-4 text-stone-400 text-xs select-none">></span>
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
bind:value={textCommandBuffer}
|
|
||||||
disabled={instance.status !== 'RUNNING' || isSending}
|
|
||||||
placeholder={instance.status === 'RUNNING' ? "Type a command and press Enter..." : "Console is read-only while server is offline."}
|
|
||||||
class="w-full bg-transparent px-3 py-3 text-xs text-stone-100 placeholder-stone-500 focus:outline-none disabled:cursor-not-allowed" />
|
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="border border-stone-700/60 bg-stone-900/40 rounded p-4 space-y-4 shadow-md backdrop-blur-sm">
|
|
||||||
<h3 class="text-xs font-bold uppercase tracking-wider text-stone-300 border-b border-stone-700/60 pb-2">
|
|
||||||
Operations
|
|
||||||
</h3>
|
|
||||||
|
|
||||||
<div class="space-y-3">
|
|
||||||
<button class="w-full text-left border border-stone-600 bg-stone-800/50 text-xs p-3 hover:bg-stone-800 transition-all rounded shadow-sm group">
|
|
||||||
<div class="font-bold text-stone-200 group-hover:text-amber-200">Configure Server</div>
|
|
||||||
<div class="text-[10px] text-stone-400 mt-0.5">Edit operational settings and ports.</div>
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<button class="w-full text-left border border-stone-600 bg-stone-800/50 text-xs p-3 hover:bg-stone-800 transition-all rounded shadow-sm group">
|
|
||||||
<div class="font-bold text-stone-200 group-hover:text-amber-200">Trigger Backup</div>
|
|
||||||
<div class="text-[10px] text-stone-400 mt-0.5">Save a zip archive of current world data.</div>
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<button class="w-full text-left border border-amber-900/40 bg-amber-950/10 text-xs p-3 rounded shadow-sm hover:bg-amber-950/20 group">
|
|
||||||
<div class="font-bold text-amber-300">Delete Instance</div>
|
|
||||||
<div class="text-[10px] text-amber-400/70 mt-0.5">Remove files and configs permanently from disk.</div>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
<script>
|
|
||||||
export let instances = [];
|
|
||||||
export let processingTargets = {};
|
|
||||||
export let onPowerToggle;
|
|
||||||
export let onSelectInstance;
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<div class="border border-stone-700/60 bg-stone-900/60 rounded backdrop-blur-sm shadow-md overflow-hidden">
|
|
||||||
<table class="w-full text-left border-collapse">
|
|
||||||
<thead>
|
|
||||||
<tr class="border-b border-stone-700/60 bg-stone-800/50 text-xs text-stone-300 uppercase tracking-wider">
|
|
||||||
<th class="p-4 font-medium">Instance ID</th>
|
|
||||||
<th class="p-4 font-medium">Engine Version</th>
|
|
||||||
<th class="p-4 font-medium">Network Port</th>
|
|
||||||
<th class="p-4 font-medium">Runtime Status</th>
|
|
||||||
<th class="p-4 font-medium text-right">Controls</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody class="divide-y divide-stone-800/60 text-sm">
|
|
||||||
{#if instances.length === 0}
|
|
||||||
<tr>
|
|
||||||
<td colspan="5" class="p-8 text-center text-stone-400 text-xs italic">
|
|
||||||
No server instances found in your configuration.
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
{:else}
|
|
||||||
{#each instances as inst}
|
|
||||||
<tr
|
|
||||||
on:click={() => onSelectInstance(inst)}
|
|
||||||
class="hover:bg-stone-800/40 transition-colors cursor-pointer">
|
|
||||||
<td class="p-4 font-bold text-amber-200 hover:underline">{inst.name}</td>
|
|
||||||
<td class="p-4 text-stone-300">{inst.version}</td>
|
|
||||||
<td class="p-4 text-stone-300 font-mono text-xs">{inst.port}</td>
|
|
||||||
<td class="p-4">
|
|
||||||
<span class="inline-flex items-center gap-1.5 text-xs font-medium px-2.5 py-0.5 rounded
|
|
||||||
{inst.status === 'RUNNING' ? 'bg-emerald-900/40 text-emerald-200 border border-emerald-800/40' : 'bg-stone-800 text-stone-400 border border-stone-700/40'}">
|
|
||||||
<span class="w-1.5 h-1.5 rounded-full {inst.status === 'RUNNING' ? 'bg-emerald-400' : 'bg-stone-500'}"></span>
|
|
||||||
{inst.status}
|
|
||||||
</span>
|
|
||||||
</td>
|
|
||||||
<td class="p-4 text-right" on:click|stopPropagation>
|
|
||||||
<button
|
|
||||||
disabled={processingTargets[inst.name]}
|
|
||||||
on:click={() => onPowerToggle(inst.name, inst.status)}
|
|
||||||
class="w-24 text-center border text-xs font-bold py-1 rounded transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed shadow-sm
|
|
||||||
{inst.status === 'RUNNING'
|
|
||||||
? 'border-amber-900/50 bg-amber-950/20 text-amber-300 hover:bg-amber-900/30'
|
|
||||||
: 'border-emerald-800/60 bg-emerald-900/20 text-emerald-200 hover:bg-emerald-800/40'}">
|
|
||||||
{processingTargets[inst.name] ? '...' : inst.status === 'RUNNING' ? 'STOP' : 'START'}
|
|
||||||
</button>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
{/each}
|
|
||||||
{/if}
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
</div>
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
import { mount } from 'svelte'
|
|
||||||
import './app.css'
|
|
||||||
import App from './App.svelte'
|
|
||||||
|
|
||||||
const app = mount(App, {
|
|
||||||
target: document.getElementById('app'),
|
|
||||||
})
|
|
||||||
|
|
||||||
export default app
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
/** @type {import("@sveltejs/vite-plugin-svelte").SvelteConfig} */
|
|
||||||
export default {}
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
import { defineConfig } from 'vite'
|
|
||||||
import { svelte } from '@sveltejs/vite-plugin-svelte'
|
|
||||||
import tailwindcss from '@tailwindcss/vite'
|
|
||||||
|
|
||||||
// https://vite.dev/config/
|
|
||||||
export default defineConfig({
|
|
||||||
plugins: [
|
|
||||||
tailwindcss(),
|
|
||||||
svelte()
|
|
||||||
],
|
|
||||||
})
|
|
||||||
Reference in New Issue
Block a user