valaxy 0.15.10 → 0.15.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/valaxy.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  'use strict'
3
3
 
4
- const { run } = require('../dist/node/cli.cjs')
4
+ const { run } = require('../dist/node/cli/index.cjs')
5
5
 
6
6
  function main() {
7
7
  run()
package/bin/valaxy.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  'use strict'
3
3
 
4
- import { run } from '../dist/node/cli.mjs'
4
+ import { run } from '../dist/node/cli/index.mjs'
5
5
 
6
6
  function main() {
7
7
  run()
package/client/App.vue CHANGED
@@ -108,5 +108,5 @@ onBeforeMount(() => {
108
108
  <ValaxyThemeApp />
109
109
  <ValaxyAddons />
110
110
  <ValaxyUserApp />
111
- <router-view />
111
+ <RouterView />
112
112
  </template>
@@ -20,7 +20,7 @@ const isExternalLink = computed(() => {
20
20
  <slot />
21
21
  <div v-if="showExternalIcon" class="icon-link inline-block" i-ri-arrow-right-up-line />
22
22
  </a>
23
- <router-link v-else v-bind="$attrs" :to="link">
23
+ <RouterLink v-else v-bind="$attrs" :to="link">
24
24
  <slot />
25
- </router-link>
25
+ </RouterLink>
26
26
  </template>
@@ -65,7 +65,7 @@ useVanillaLazyLoad()
65
65
  <slot v-if="frontmatter.end !== undefined" name="end">
66
66
  <div m="y-4" class="end flex justify-center items-center">
67
67
  <hr class="line inline-flex" w="full" m="!y-2">
68
- <span p="x-4" font="serif bold" class="whitespace-nowrap">
68
+ <span p="x-4" font="bold" class="whitespace-nowrap">
69
69
  {{ frontmatter.end ? 'Q.E.D.' : 'To Be Continued.' }}
70
70
  </span>
71
71
  <hr class="line inline-flex" w="full" m="!y-2">
@@ -7,9 +7,9 @@ withDefaults(defineProps<{
7
7
  </script>
8
8
 
9
9
  <template>
10
- <transition name="fade">
10
+ <Transition name="fade">
11
11
  <div v-if="show" class="va-overlay" />
12
- </transition>
12
+ </Transition>
13
13
  </template>
14
14
 
15
15
  <style lang="scss">
@@ -48,14 +48,14 @@ function jumpTo(page: number) {
48
48
 
49
49
  <template>
50
50
  <nav class="pagination">
51
- <router-link v-if="curPage !== 1" class="page-number" :to="jumpTo(curPage - 1)" aria-label="prev">
51
+ <RouterLink v-if="curPage !== 1" class="page-number" :to="jumpTo(curPage - 1)" aria-label="prev">
52
52
  <div i-ri-arrow-left-s-line />
53
- </router-link>
53
+ </RouterLink>
54
54
 
55
55
  <template v-for="i in totalPages">
56
- <router-link v-if="showPage(i)" :key="i" class="page-number" :class="curPage === i && 'active'" :to="jumpTo(i)">
56
+ <RouterLink v-if="showPage(i)" :key="i" class="page-number" :class="curPage === i && 'active'" :to="jumpTo(i)">
57
57
  {{ i }}
58
- </router-link>
58
+ </RouterLink>
59
59
  <span v-else-if="i === curPage - surLen" :key="`prev-space-${i}`" class="space" disabled>
60
60
  ...
61
61
  </span>
@@ -64,9 +64,9 @@ function jumpTo(page: number) {
64
64
  </span>
65
65
  </template>
66
66
 
67
- <router-link v-if="curPage !== totalPages" class="page-number" :to="jumpTo(curPage + 1)" aria-label="next">
67
+ <RouterLink v-if="curPage !== totalPages" class="page-number" :to="jumpTo(curPage + 1)" aria-label="next">
68
68
  <div i-ri-arrow-right-s-line />
69
- </router-link>
69
+ </RouterLink>
70
70
  </nav>
71
71
  </template>
72
72
 
@@ -0,0 +1,6 @@
1
+ <template>
2
+ <div>
3
+ <h1>DevTools</h1>
4
+ <p>DevTools</p>
5
+ </div>
6
+ </template>
@@ -2,3 +2,40 @@ import { useDark, useToggle } from '@vueuse/core'
2
2
 
3
3
  export const isDark = useDark()
4
4
  export const toggleDark = useToggle(isDark)
5
+
6
+ export function toggleDarkWithTransition(event: MouseEvent, options: { duration?: number; easing?: EffectTiming['easing'] } = {}) {
7
+ // @ts-expect-error startViewTransition is not defined
8
+ if (!document.startViewTransition) {
9
+ toggleDark()
10
+ return
11
+ }
12
+
13
+ const x = event.clientX
14
+ const y = event.clientY
15
+ const endRadius = Math.hypot(
16
+ Math.max(x, innerWidth - x),
17
+ Math.max(y, innerHeight - y),
18
+ )
19
+
20
+ // @ts-expect-error startViewTransition is not defined
21
+ const transition = document.startViewTransition(() => {
22
+ toggleDark()
23
+ })
24
+
25
+ transition.ready.then(() => {
26
+ const clipPath = [
27
+ `circle(0px at ${x}px ${y}px)`,
28
+ `circle(${endRadius}px at ${x}px ${y}px)`,
29
+ ]
30
+ document.documentElement.animate(
31
+ {
32
+ clipPath: isDark.value ? clipPath.reverse() : clipPath,
33
+ },
34
+ {
35
+ duration: options.duration || 300,
36
+ easing: options.easing || 'ease-in',
37
+ pseudoElement: isDark.value ? '::view-transition-old(root)' : '::view-transition-new(root)',
38
+ },
39
+ )
40
+ })
41
+ }
@@ -12,7 +12,7 @@ const { back } = useBack()
12
12
  404
13
13
  </div>
14
14
 
15
- <router-view />
15
+ <RouterView />
16
16
 
17
17
  <div>
18
18
  <button class="btn rounded-full" p="x-6 y-2" text="sm" m="3 t8" :title="t('button.back')" @click="back">
@@ -4,7 +4,7 @@ import { asAny } from 'valaxy'
4
4
  </script>
5
5
 
6
6
  <template>
7
- <router-view v-slot="{ Component }">
7
+ <RouterView v-slot="{ Component }">
8
8
  <Component :is="asAny(Component)">
9
9
  <template #main-header>
10
10
  <slot name="main-header" />
@@ -35,5 +35,5 @@ import { asAny } from 'valaxy'
35
35
  <slot name="footer" />
36
36
  </template>
37
37
  </Component>
38
- </router-view>
38
+ </RouterView>
39
39
  </template>
@@ -49,7 +49,7 @@ post:
49
49
  view_link: 查看链接
50
50
  read_more: 阅读更多
51
51
  cover: 封面
52
- time_warning: 本文最后更新于 {ago},文中所描述的信息可能已发生改变。
52
+ time_warning: 本文最后更新于{ago},文中所描述的信息可能已发生改变。
53
53
  copyright:
54
54
  author: 本文作者
55
55
  link: 本文链接
@@ -6,6 +6,8 @@ const router = useRouter()
6
6
  const route = useRoute()
7
7
 
8
8
  onBeforeMount(() => {
9
+ router.push('/')
10
+
9
11
  // compatible for post url ends with slash
10
12
  if (route.path !== '/' && route.path.endsWith('/'))
11
13
  router.replace(route.path.slice(0, -1))
@@ -21,3 +21,26 @@
21
21
  opacity: 0;
22
22
  }
23
23
  }
24
+
25
+ // dark toggle
26
+ // transition
27
+ ::view-transition-old(root),
28
+ ::view-transition-new(root) {
29
+ animation: none;
30
+ mix-blend-mode: normal;
31
+ }
32
+
33
+ /* 进入dark模式和退出dark模式时,两个图像的位置顺序正好相反 */
34
+ .dark::view-transition-old(root) {
35
+ z-index: 9999;
36
+ }
37
+ .dark::view-transition-new(root) {
38
+ z-index: 1;
39
+ }
40
+
41
+ ::view-transition-old(root) {
42
+ z-index: 1;
43
+ }
44
+ ::view-transition-new(root) {
45
+ z-index: 9999;
46
+ }