From 51ef838add5dc8533b51e567e2208525c397cd9d Mon Sep 17 00:00:00 2001 From: niyyzf Date: Thu, 31 Jul 2025 18:31:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20lucide-svelte=20=E5=92=8C?= =?UTF-8?q?=20svelte-masonry=20=E4=BE=9D=E8=B5=96=EF=BC=8C=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=20svelte.config.js=20=E4=BB=A5=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E6=96=B0=E7=BB=84=E4=BB=B6=E8=B7=AF=E5=BE=84=EF=BC=8C=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20Docker=20=E6=9E=84=E5=BB=BA=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=20BottomBar=20=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E5=88=B0=E5=B8=83=E5=B1=80=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/docker-build.yml | 14 +-- bun.lock | 6 + package.json | 4 +- src/lib/components/AddReviewCardForm.svelte | 119 ++++++++++++++++++++ src/lib/components/layout/BottomBar.svelte | 46 ++++++++ src/lib/stores/ReviewCardStore.ts | 33 ++++++ src/lib/types/review.ts | 32 ++++++ src/routes/+layout.svelte | 2 + src/routes/list/+page.svelte | 117 +++++++++++++++++++ svelte.config.js | 3 +- 10 files changed, 366 insertions(+), 10 deletions(-) create mode 100644 src/lib/components/AddReviewCardForm.svelte create mode 100644 src/lib/components/layout/BottomBar.svelte create mode 100644 src/lib/stores/ReviewCardStore.ts create mode 100644 src/lib/types/review.ts create mode 100644 src/routes/list/+page.svelte diff --git a/.gitea/workflows/docker-build.yml b/.gitea/workflows/docker-build.yml index 4868e3d..fd9a5b8 100644 --- a/.gitea/workflows/docker-build.yml +++ b/.gitea/workflows/docker-build.yml @@ -12,11 +12,6 @@ jobs: - name: 释放内存 run: docker system prune -a -f - - name: 设置 Docker Buildx - run: | - docker buildx create --use --name builder - docker buildx inspect --bootstrap - - name: 拉取自定义 checkout action run: git clone http://114.67.155.184:3000//niyyzf/checkout.git ./.actions/checkout @@ -27,7 +22,10 @@ jobs: persist-credentials: false max-attempts: 5 - - name: 构建并部署 + - name: 构建 Docker 镜像 + run: docker build --cache-from type=gha --cache-to type=gha,mode=max -t watch-stock-list:latest . + + - name: 启动/重启服务(Docker Compose) run: | - chmod +x build-docker.sh - ./build-docker.sh \ No newline at end of file + docker compose down || true + docker compose up -d --force-recreate \ No newline at end of file diff --git a/bun.lock b/bun.lock index d7d3f60..7a62428 100644 --- a/bun.lock +++ b/bun.lock @@ -5,6 +5,8 @@ "name": "watch-stock-list", "dependencies": { "@sveltejs/adapter-node": "^5.2.13", + "lucide-svelte": "^0.532.0", + "svelte-masonry": "^0.1.5", }, "devDependencies": { "@internationalized/date": "^3.8.1", @@ -450,6 +452,8 @@ "lodash.merge": ["lodash.merge@4.6.2", "", {}, "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="], + "lucide-svelte": ["lucide-svelte@0.532.0", "", { "peerDependencies": { "svelte": "^3 || ^4 || ^5.0.0-next.42" } }, "sha512-UMhuyPuzmJB0/2xwdhOW3NRK7vuVpqxIvHiH/bhQTu0vsvRw59YbLC65kS6fierPr7FckFV5Y/y/aUAVUZgGhA=="], + "magic-string": ["magic-string@0.30.17", "", { "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } }, "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA=="], "memoize": ["memoize@10.1.0", "", { "dependencies": { "mimic-function": "^5.0.1" } }, "sha512-MMbFhJzh4Jlg/poq1si90XRlTZRDHVqdlz2mPyGJ6kqMpyHUyVpDd5gpFAvVehW64+RA1eKE9Yt8aSLY7w2Kgg=="], @@ -530,6 +534,8 @@ "svelte-check": ["svelte-check@4.3.0", "", { "dependencies": { "@jridgewell/trace-mapping": "^0.3.25", "chokidar": "^4.0.1", "fdir": "^6.2.0", "picocolors": "^1.0.0", "sade": "^1.7.4" }, "peerDependencies": { "svelte": "^4.0.0 || ^5.0.0-next.0", "typescript": ">=5.0.0" }, "bin": { "svelte-check": "bin/svelte-check" } }, "sha512-Iz8dFXzBNAM7XlEIsUjUGQhbEE+Pvv9odb9+0+ITTgFWZBGeJRRYqHUUglwe2EkLD5LIsQaAc4IUJyvtKuOO5w=="], + "svelte-masonry": ["svelte-masonry@0.1.5", "", { "peerDependencies": { "svelte": "^4.0.0" } }, "sha512-ZMtALHVbvriGcLODSdoeRaI0SvbmNEW6puG/Zs2tUP7hK0e/TLrxGTAAtNDinI/8DJhUJUCnAsP5xsTmebLwbw=="], + "svelte-sonner": ["svelte-sonner@1.0.5", "", { "dependencies": { "runed": "^0.28.0" }, "peerDependencies": { "svelte": "^5.0.0" } }, "sha512-9dpGPFqKb/QWudYqGnEz93vuY+NgCEvyNvxoCLMVGw6sDN/3oVeKV1xiEirW2E1N3vJEyj5imSBNOGltQHA7mg=="], "svelte-toolbelt": ["svelte-toolbelt@0.9.3", "", { "dependencies": { "clsx": "^2.1.1", "runed": "^0.29.0", "style-to-object": "^1.0.8" }, "peerDependencies": { "svelte": "^5.30.2" } }, "sha512-HCSWxCtVmv+c6g1ACb8LTwHVbDqLKJvHpo6J8TaqwUme2hj9ATJCpjCPNISR1OCq2Q4U1KT41if9ON0isINQZw=="], diff --git a/package.json b/package.json index 279e8d8..8ba38c1 100644 --- a/package.json +++ b/package.json @@ -41,6 +41,8 @@ "vite": "^7.0.4" }, "dependencies": { - "@sveltejs/adapter-node": "^5.2.13" + "@sveltejs/adapter-node": "^5.2.13", + "lucide-svelte": "^0.532.0", + "svelte-masonry": "^0.1.5" } } diff --git a/src/lib/components/AddReviewCardForm.svelte b/src/lib/components/AddReviewCardForm.svelte new file mode 100644 index 0000000..36fffbf --- /dev/null +++ b/src/lib/components/AddReviewCardForm.svelte @@ -0,0 +1,119 @@ + + +{#if open} +
+
+

添加复盘卡片

+
+
+ + +
+
+ +