Skip to content

Commit 01d43e2

Browse files
committed
feat: add useDemoItems & delete unrelated components
1 parent 8cc591d commit 01d43e2

11 files changed

Lines changed: 38 additions & 269 deletions

File tree

theme/components/ListDemos.vue

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
<script setup lang="ts">
22
import { breakpointsTailwind, useBreakpoints } from '@vueuse/core'
33
import { computed } from 'vue'
4-
import { demoItems } from '../pages/data'
4+
import { useDemoItems } from '../composables'
5+
6+
const demoItems = useDemoItems()
57
68
const breakpoints = useBreakpoints(breakpointsTailwind)
79

theme/components/PersonalIntroduction.vue

Lines changed: 0 additions & 41 deletions
This file was deleted.

theme/components/ServicesOverview.vue

Lines changed: 0 additions & 20 deletions
This file was deleted.

theme/components/SkillsList.vue

Lines changed: 0 additions & 36 deletions
This file was deleted.

theme/components/ThemeSectionTitle.vue

Lines changed: 0 additions & 14 deletions
This file was deleted.

theme/components/WebVitals.vue

Lines changed: 0 additions & 87 deletions
This file was deleted.

theme/components/WorkGallery.vue

Lines changed: 0 additions & 40 deletions
This file was deleted.

theme/composables/data.ts

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import { usePageList } from 'valaxy'
2+
import { computed } from 'vue'
3+
4+
const video = import.meta.glob(`@valaxy-blog/pages/demos/*.mp4`, { eager: true, query: '?url', import: 'default' })
5+
6+
// HACK: There should be a better way to do this, or it should be encapsulated...
7+
const baseUrl = Object.keys(video)[0].match(/^.*(?=\/demos)/)![0]
8+
9+
export function useDemoItems() {
10+
const pageList = usePageList()
11+
const posts = computed(() => pageList.value.filter(i =>
12+
i.path?.startsWith('/demos')
13+
&& i.path !== '/demos'
14+
&& !i.path?.endsWith('.html')
15+
&& i.date
16+
&& (!i.hide || i.hide === 'index'),
17+
))
18+
19+
const demoItems = posts.value.map(post => ({
20+
title: post.title,
21+
link: post.link ?? post.path,
22+
date: post.date,
23+
excerpt: post.excerpt,
24+
// https://github.com/vitejs/vite/issues/14102
25+
// src: (await import(/* @vite-ignore */ `/pages${post.path}.mp4?url`)).default as unknown,
26+
src: video[`${baseUrl}${post.path}.mp4`] as string,
27+
}))
28+
.filter(item => item.date !== 'index')
29+
// .sort((a, b) => b.date!.localeCompare(a.date!))
30+
.sort((a, b) => new Date(b.date!).getTime() - new Date(a.date!).getTime())
31+
32+
return demoItems
33+
}

theme/composables/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
export * from './config'
2+
export * from './data'

theme/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "valaxy-theme-antfu",
3-
"version": "0.0.4",
3+
"version": "0.0.5",
44
"packageManager": "pnpm@9.5.0",
55
"author": {
66
"email": "wrxinyue@foxmail.com",

0 commit comments

Comments
 (0)