valaxy-theme-yun 0.26.12 → 0.27.0

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.
@@ -1,4 +1,5 @@
1
1
  <script lang="ts" setup>
2
+ import { normalizeRepositoryUrl } from '@valaxyjs/utils'
2
3
  import { useSiteConfig, useValaxyConfig, useValaxyDark, useValaxyI18n } from 'valaxy'
3
4
  import pkg from 'valaxy/package.json' with { type: 'json' }
4
5
  import { capitalize, computed } from 'vue'
@@ -31,12 +32,20 @@ const isThisYear = computed(() => {
31
32
  return year === themeConfig.value.footer.since
32
33
  })
33
34
 
34
- const poweredHtml = computed(() => t('footer.powered', [`<a href="${pkg.repository.url}" target="_blank" rel="noopener">Valaxy</a> <span class="op-60">v${pkg.version}</span>`]))
35
+ const poweredHtml = computed(() => t('footer.powered', [`<a href="${normalizeRepositoryUrl(pkg.repository.url)}" target="_blank" rel="noopener">Valaxy</a> <span class="op-60">v${pkg.version}</span>`]))
35
36
  const footerIcon = computed(() => themeConfig.value.footer.icon || {
36
- url: pkg.repository.url,
37
+ url: normalizeRepositoryUrl(pkg.repository.url),
37
38
  name: 'i-ri-cloud-line',
38
39
  title: pkg.name,
39
40
  })
41
+
42
+ const policeCode = computed(() => {
43
+ const police = themeConfig.value.footer.beian?.police
44
+ if (!police)
45
+ return ''
46
+ const match = police.match(/(\d+)/)
47
+ return match ? match[1] : ''
48
+ })
40
49
  </script>
41
50
 
42
51
  <template>
@@ -52,6 +61,23 @@ const footerIcon = computed(() => themeConfig.value.footer.icon || {
52
61
  <a href="https://beian.miit.gov.cn/" target="_blank" rel="noopener">
53
62
  {{ themeConfig.footer.beian.icp }}
54
63
  </a>
64
+
65
+ <template v-if="themeConfig.footer.beian?.police && policeCode">
66
+ <span mx-2>|</span>
67
+ <a
68
+ :href="`https://beian.mps.gov.cn/#/query/webSearch?code=${policeCode}`"
69
+ target="_blank"
70
+ rel="noreferrer"
71
+ class="inline-flex items-center justify-center gap-1"
72
+ >
73
+ <img
74
+ src="https://beian.mps.gov.cn/web/assets/logo01.6189a29f.png"
75
+ alt="备案图标"
76
+ class="w-4 h-4 inline-block"
77
+ >
78
+ {{ themeConfig.footer.beian.police }}
79
+ </a>
80
+ </template>
55
81
  </div>
56
82
 
57
83
  <div class="copyright flex justify-center items-center gap-2" p="1">
@@ -82,7 +108,7 @@ const footerIcon = computed(() => themeConfig.value.footer.icon || {
82
108
  <span>
83
109
  <span>{{ t('footer.theme') }}</span>
84
110
  <span mx-1>-</span>
85
- <a :href="themeConfig.pkg.repository.url" :title="themeConfig.pkg.name" target="_blank">{{ capitalize(config.theme) }}</a>
111
+ <a :href="normalizeRepositoryUrl(themeConfig.pkg.repository.url)" :title="themeConfig.pkg.name" target="_blank">{{ capitalize(config.theme) }}</a>
86
112
  <span class="ml-1 op-60">v{{ themeConfig.pkg.version }}</span>
87
113
  </span>
88
114
  </div>
@@ -20,7 +20,7 @@ useSchemaOrg([
20
20
  ])
21
21
 
22
22
  const route = useRoute()
23
- const photos = computed(() => route.meta.frontmatter.photos || [])
23
+ const photos = computed(() => route.meta.frontmatter?.photos || [])
24
24
 
25
25
  const runtimeConfig = useRuntimeConfig()
26
26
 
package/node/config.ts CHANGED
@@ -72,6 +72,7 @@ export const defaultThemeConfig: ThemeConfig = {
72
72
  beian: {
73
73
  enable: false,
74
74
  icp: '',
75
+ police: '',
75
76
  },
76
77
  },
77
78
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "valaxy-theme-yun",
3
3
  "type": "module",
4
- "version": "0.26.12",
4
+ "version": "0.27.0",
5
5
  "author": {
6
6
  "email": "me@yunyoujun.cn",
7
7
  "name": "YunYouJun",
@@ -25,15 +25,15 @@
25
25
  "@ctrl/tinycolor": "^4.2.0",
26
26
  "@explosions/fireworks": "^0.2.0",
27
27
  "@iconify-json/ant-design": "^1.2.5",
28
- "@iconify-json/simple-icons": "^1.2.63",
28
+ "@iconify-json/simple-icons": "^1.2.69",
29
29
  "@vueuse/motion": "^3.0.3",
30
- "animejs": "^4.2.2",
30
+ "animejs": "^4.3.5",
31
31
  "gsap": "^3.14.2",
32
32
  "primevue": "^4.5.4"
33
33
  },
34
34
  "devDependencies": {
35
35
  "@types/animejs": "^3.1.13",
36
- "valaxy": "0.26.12",
36
+ "valaxy": "0.27.0",
37
37
  "valaxy-addon-waline": "0.2.1"
38
38
  },
39
39
  "scripts": {
package/types/index.d.ts CHANGED
@@ -245,6 +245,12 @@ export interface ThemeConfig extends DefaultTheme.Config {
245
245
  * 苏ICP备xxxxxxxx号
246
246
  */
247
247
  icp: string
248
+ /**
249
+ * 公安网备案号
250
+ * 苏公网安备xxxxxxxx号
251
+ * https://beian.mps.gov.cn/
252
+ */
253
+ police: string
248
254
  }
249
255
  }>
250
256