Skip to content

Commit 931f08e

Browse files
committed
Add Swiper integration for app previews and update deployment workflow
1 parent b236f82 commit 931f08e

File tree

4 files changed

+53
-7
lines changed

4 files changed

+53
-7
lines changed

.github/workflows/deploy.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,19 @@ jobs:
6262
)
6363
mkdir -p .vitepress/dist/apps
6464
mv GUI.for.SingBox/frontend/dist .vitepress/dist/apps/gfs
65-
mv public/fakeruntime.js .vitepress/dist/apps/gfs
65+
cp public/fakeruntime.js .vitepress/dist/apps/gfs
6666
sed -i '/<title>/a <script src="./fakeruntime.js"></script>' .vitepress/dist/apps/gfs/index.html
6767
68+
git clone --depth=1 https://github.com/GUI-for-Cores/GUI.for.Clash.git
69+
(
70+
cd GUI.for.Clash/frontend
71+
pnpm install && pnpm build-only
72+
)
73+
mkdir -p .vitepress/dist/apps
74+
mv GUI.for.Clash/frontend/dist .vitepress/dist/apps/gfc
75+
cp public/fakeruntime.js .vitepress/dist/apps/gfc
76+
sed -i '/<title>/a <script src="./fakeruntime.js"></script>' .vitepress/dist/apps/gfc/index.html
77+
6878
- name: Upload artifact
6979
uses: actions/upload-pages-artifact@v3
7080
with:

.vitepress/theme/components/HomeLayout.vue

Lines changed: 29 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,51 @@
11
<script setup>
22
import DefaultTheme from "vitepress/theme";
3+
import { Navigation, Pagination } from "swiper/modules";
4+
import { Swiper, SwiperSlide } from "swiper/vue";
5+
import "swiper/css";
6+
import "swiper/css/navigation";
7+
import "swiper/css/pagination";
8+
9+
const modules = [Navigation, Pagination];
310
</script>
411

512
<template>
613
<DefaultTheme.Layout>
714
<template #home-features-before>
815
<div class="app-preview">
9-
<iframe src="/apps/gfs/"></iframe>
16+
<Swiper
17+
:slides-per-view="1"
18+
:modules="modules"
19+
:pagination="{ clickable: true }"
20+
navigation
21+
>
22+
<SwiperSlide class="swiper-slide">
23+
<iframe src="/apps/gfs/"></iframe>
24+
</SwiperSlide>
25+
<SwiperSlide class="swiper-slide">
26+
<iframe src="/apps/gfc/"></iframe>
27+
</SwiperSlide>
28+
</Swiper>
1029
</div>
1130
</template>
1231
</DefaultTheme.Layout>
1332
</template>
1433

1534
<style scoped>
1635
.app-preview {
17-
display: flex;
18-
align-items: center;
19-
justify-content: center;
20-
padding: 0 0 40px 0;
36+
width: 60%;
37+
margin: 0 auto;
38+
.swiper-slide {
39+
display: flex;
40+
justify-content: center;
41+
align-items: center;
42+
padding: 40px;
43+
}
2144
iframe {
2245
width: 800px;
2346
height: 540px;
2447
border: none;
25-
border-radius: 8px;
48+
border-radius: 12px;
2649
overflow: hidden;
2750
box-shadow: 0 0 16px rgba(0, 0, 0, 0.4);
2851
}

package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,8 @@
1717
"license": "ISC",
1818
"devDependencies": {
1919
"vitepress": "1.5.0"
20+
},
21+
"dependencies": {
22+
"swiper": "^11.2.1"
2023
}
2124
}

pnpm-lock.yaml

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)